BiocParallel/DESCRIPTION0000644000175100017510000000451412607610201015630 0ustar00biocbuildbiocbuildPackage: BiocParallel Type: Package Title: Bioconductor facilities for parallel evaluation Version: 1.4.0 Authors@R: c( person("Bioconductor Package Maintainer", email="maintainer@bioconductor.org", role="cre"), person("Martin", "Morgan", role="aut"), person("Valerie", "Obenchain", role="aut"), person("Michel", "Lang", email="michellang@gmail.com", role="aut"), person("Ryan", "Thompson", email="rct@thompsonclan.org", role="aut")) Description: This package provides modified versions and novel implementation of functions for parallel evaluation, tailored to use with Bioconductor objects. biocViews: Infrastructure License: GPL-2 | GPL-3 Depends: methods Imports: futile.logger, parallel, snow Suggests: BiocGenerics, tools, foreach, BatchJobs, BBmisc, doParallel, Rmpi, GenomicRanges, RNAseqData.HNRNPC.bam.chr14, Rsamtools, GenomicAlignments, ShortRead, codetools, RUnit, BiocStyle, knitr Collate.unix: AllGenerics.R BiocParallelParam-class.R ErrorHandling.R bpbackend-methods.R bpisup-methods.R bplapply-methods.R bpmapply-methods.R bpiterate-methods.R bpschedule-methods.R bpstart-methods.R bpstop-methods.R bpvec-methods.R bpvectorize-methods.R bpworkers-methods.R bpaggregate-methods.R bpvalidate.R SnowParam-class.R MulticoreParam-class.R register.R SerialParam-class.R DoparParam-class.R SnowParam-utils.R BatchJobsParam-class.R progress.R utilities.R unix/pvec.R unix/mclapply.R unix/zzz.R Collate.windows: AllGenerics.R BiocParallelParam-class.R ErrorHandling.R bpbackend-methods.R bpisup-methods.R bplapply-methods.R bpmapply-methods.R bpiterate-methods.R bpschedule-methods.R bpstart-methods.R bpstop-methods.R bpvec-methods.R bpvectorize-methods.R bpworkers-methods.R bpaggregate-methods.R bpvalidate.R SnowParam-class.R MulticoreParam-class.R register.R SerialParam-class.R DoparParam-class.R SnowParam-utils.R BatchJobsParam-class.R progress.R utilities.R windows/zzz.R VignetteBuilder: knitr NeedsCompilation: no Packaged: 2015-10-15 02:33:37 UTC; biocbuild Author: Bioconductor Package Maintainer [cre], Martin Morgan [aut], Valerie Obenchain [aut], Michel Lang [aut], Ryan Thompson [aut] Maintainer: Bioconductor Package Maintainer BiocParallel/NAMESPACE0000644000175100017510000000430612607264437015360 0ustar00biocbuildbiocbuildimport(methods) import(futile.logger) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Export S4 classes ### exportClass( BiocParallelParam, MulticoreParam, SnowParam, DoparParam, SerialParam, BatchJobsParam ) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Export non-generic functions ### export( MulticoreParam, SnowParam, DoparParam, SerialParam, BatchJobsParam, ## register register, registered, bpparam, ## error handlers bpresume, bplasterror, ## helpers multicoreWorkers, snowWorkers, bpvalidate, bpok, bpslaveLoop, bprunMPIslave ) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Export S4 generics and methods defined in BiocParallel ### export( bplapply, bpvec, bpvectorize, bpmapply, bpaggregate, bpiterate, ## bp-controls bpworkers, "bpworkers<-", bpbackend, "bpbackend<-", bptasks, "bptasks<-", bpjobname, "bpjobname<-", bpstart, bpstop, bpisup, bpcatchErrors, "bpcatchErrors<-", bpstopOnError, "bpstopOnError<-", bpprogressbar, "bpprogressbar<-", bpRNGseed, "bpRNGseed<-", bptimeout, "bptimeout<-", bplog, "bplog<-", bplogdir, "bplogdir<-", bpthreshold, "bpthreshold<-", bpresultdir, "bpresultdir<-", ## schedule bpschedule ) ### Same list as above. exportMethods( bplapply, bpvec, bpvectorize, bpmapply, bpaggregate, bpiterate, ## bp-controls bpworkers, "bpworkers<-", bpbackend, "bpbackend<-", bptasks, "bptasks<-", bpjobname, "bpjobname<-", bpstart, bpstop, bpisup, bpcatchErrors, "bpcatchErrors<-", bpstopOnError, "bpstopOnError<-", bpprogressbar, "bpprogressbar<-", bpRNGseed, "bpRNGseed<-", bptimeout, "bptimeout<-", bplog, "bplog<-", bplogdir, "bplogdir<-", bpthreshold, "bpthreshold<-", bpresultdir, "bpresultdir<-", ## schedule bpschedule ) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Export S4 methods for generics not defined in BiocParallel ### exportMethods( show ) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Export S3 methods ### export(`print.remote-error`) BiocParallel/NEWS0000644000175100017510000000433012607264437014635 0ustar00biocbuildbiocbuildCHANGES IN VERSION 1.2.0 ------------------------ NEW FEATURES o Add support for iterative REDUCE in .bpiterate_serial() o Refactor BiocParallelParam class: - add 'log', 'tasks', 'threshold', 'logdir', 'resultdir' fields - 'tasks' is used by SnowParam and MulticoreParam only o MulticoreParam now uses SnowParam(..., type=FORK) o Add bpvalidate() MODIFICATIONS o Add check to bipiterate() for Windows o Invoke REDUCE without '...' in .bpiterate_serial() o Update README and bpvec() man page o Change default BPPARAM to SnowParam() for Windows o Update bpiterate() man pages for Windows o Add note to vignette re: module load in template file from Thomas Girke o SnowParam: - bpmapply() now dispatches to bplapply() - remove BPRESUME - logging, gc ouput on worker - write results or logs to file - new error handling with futile.logger o Lighten the NAMESPACE by importing only parallel, snow o Modify which params are registered at load time: - Windows: SnowParam(), SerialParam() - Non-Windows: MulticoreParam(), SnowParam(), SerialParam() o bpvalidate() looks for symbols in 'fun' environment, NAMESPACE of loaded libraries, and the search path BUG FIXES o Bug fix in bpiterate_multicore(); update doc examples o Bug fix in bpiterate() in ordering results from Martin o Bug fix in .bpiterate_serial() when REDUCE is given CHANGES IN VERSION 1.0.0 ------------------------ NEW FEATURES o Add vignette sections for cluster managers, AMI o Add bpiterate generic and methods o Add REDUCE to bpiterate() o Add 'reduce.in.order' to bpiterate() MODIFICATIONS o Update vignette examples, reorganize sections o Allow 'workers' in BiocParallelParam to be character or integer o Enhance bpresume() man page; add examples o Enhance register() man page; add examples o Improve default registration for SnowParam: - max 8 cores - use detectcores() / mc.cores if available o Modify .convertToSimpleError() to convert NULL to NA_character_ BUG FIXES o Fix recursion problem for BPPARAM as list o Modify bpaggregate() to run in parallel BiocParallel/R/0000755000175100017510000000000012607264442014333 5ustar00biocbuildbiocbuildBiocParallel/R/AllGenerics.R0000644000175100017510000000651712607264437016663 0ustar00biocbuildbiocbuildsetGeneric("bplapply", signature=c("X", "BPPARAM"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) standardGeneric("bplapply")) setGeneric("bpmapply", signature=c("FUN", "BPPARAM"), function(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) standardGeneric("bpmapply")) setGeneric("bpiterate", signature=c("ITER", "FUN", "BPPARAM"), function(ITER, FUN, ..., BPPARAM=bpparam()) standardGeneric("bpiterate")) setGeneric("bpvec", signature=c("X", "BPPARAM"), function(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) standardGeneric("bpvec")) setGeneric("bpvectorize", function(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) standardGeneric("bpvectorize")) setGeneric("bpaggregate", signature=c("x", "BPPARAM"), function(x, ..., BPREDO=list(), BPPARAM=bpparam()) standardGeneric("bpaggregate")) setGeneric("bpworkers", function(x, ...) standardGeneric("bpworkers")) setGeneric("bpworkers<-", function(x, ..., value) standardGeneric("bpworkers<-")) setGeneric("bptasks", function(x, ...) standardGeneric("bptasks")) setGeneric("bptasks<-", function(x, ..., value) standardGeneric("bptasks<-")) setGeneric("bpjobname", function(x, ...) standardGeneric("bpjobname")) setGeneric("bpjobname<-", function(x, ..., value) standardGeneric("bpjobname<-")) ## errors setGeneric("bpcatchErrors", function(x, ...) standardGeneric("bpcatchErrors")) setGeneric("bpcatchErrors<-", function(x, ..., value) standardGeneric("bpcatchErrors<-")) setGeneric("bpstopOnError", function(x, ...) standardGeneric("bpstopOnError")) setGeneric("bpstopOnError<-", function(x, ..., value) standardGeneric("bpstopOnError<-")) setGeneric("bpprogressbar", function(x, ...) standardGeneric("bpprogressbar")) setGeneric("bpprogressbar<-", function(x, ..., value) standardGeneric("bpprogressbar<-")) setGeneric("bpRNGseed", function(x, ...) standardGeneric("bpRNGseed")) setGeneric("bpRNGseed<-", function(x, ..., value) standardGeneric("bpRNGseed<-")) setGeneric("bptimeout", function(x, ...) standardGeneric("bptimeout")) setGeneric("bptimeout<-", function(x, ..., value) standardGeneric("bptimeout<-")) setGeneric("bplog", function(x, ...) standardGeneric("bplog")) setGeneric("bplog<-", function(x, ..., value) standardGeneric("bplog<-")) setGeneric("bplogdir", function(x, ...) standardGeneric("bplogdir")) setGeneric("bplogdir<-", function(x, ..., value) standardGeneric("bplogdir<-")) setGeneric("bpthreshold", function(x, ...) standardGeneric("bpthreshold")) setGeneric("bpthreshold<-", function(x, ..., value) standardGeneric("bpthreshold<-")) ## results setGeneric("bpresultdir", function(x, ...) standardGeneric("bpresultdir")) setGeneric("bpresultdir<-", function(x, ..., value) standardGeneric("bpresultdir<-")) ## control setGeneric("bpstart", function(x, ...) standardGeneric("bpstart")) setGeneric("bpstop", function(x, ...) standardGeneric("bpstop")) setGeneric("bpisup", function(x, ...) standardGeneric("bpisup")) setGeneric("bpbackend", function(x, ...) standardGeneric("bpbackend")) setGeneric("bpbackend<-", function(x, ..., value) standardGeneric("bpbackend<-")) ## scheduling setGeneric("bpschedule", function(x, ...) standardGeneric("bpschedule")) BiocParallel/R/BatchJobsParam-class.R0000644000175100017510000001475712607264442020417 0ustar00biocbuildbiocbuild### ========================================================================= ### BatchJobsParam objects ### ------------------------------------------------------------------------- ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Constructor ### .BatchJobsParam <- setRefClass("BatchJobsParam", contains="BiocParallelParam", fields=list( reg.pars="list", submit.pars="list", conf.pars="list", cleanup="logical"), methods=list( initialize = function(..., conf.pars=list(), workers=NA_integer_) { callSuper(...) ## save user config and reset it on exit prev.config <- getConfig() on.exit(do.call(setConfig, prev.config)) if (!is.null(conf.pars$conffile)) loadConfig(conf.pars$conffile) new.conf <- unclass(do.call(setConfig, conf.pars[setdiff(names(conf.pars), "conffile")])) x_workers <- if (is.na(workers)) { getNumberCPUs <- function(conf) { x <- environment(new.conf$cluster.functions$submitJob)$workers vapply(x, "[[", integer(1L), "ncpus") } cf.name <- new.conf$cluster.functions$name if (is.null(cf.name)) { NA_integer_ } else { switch(cf.name, Multicore=getNumberCPUs(new.conf), SSH=sum(getNumberCPUs(new.conf)), NA_integer_) } } else as.integer(workers) initFields(workers=x_workers, conf.pars=new.conf) }, show = function() { ## TODO more output callSuper() cat(" bpjobname:", bpjobname(.self), "; bpworkers:", bpworkers(.self), "; bpisup:", bpisup(.self), "\n", sep="") cat(" bpstopOnError:", bpstopOnError(.self), "; bpprogressbar:", bpprogressbar(.self), "\n", sep="") cat(" cleanup:", .self$cleanup, "\n", sep="") }) ) BatchJobsParam <- function(workers=NA_integer_, catch.errors=TRUE, cleanup=TRUE, work.dir=getwd(), stop.on.error=FALSE, seed=NULL, resources=NULL, conffile=NULL, cluster.functions=NULL, progressbar=TRUE, jobname = "BPJOB", ...) { if (!catch.errors) warning("'catch.errors' has been deprecated") if (!"package:BatchJobs" %in% search()) { tryCatch({ attachNamespace("BatchJobs") }, error=function(err) { stop(conditionMessage(err), ": BatchJobsParam class objects require the 'BatchJobs' package") }) } not_null <- Negate(is.null) reg.pars <- Filter(not_null, list(seed=seed, work.dir=work.dir)) submit.pars <- Filter(not_null, list(resources=resources)) conf.pars <- Filter(not_null, list(conffile=conffile, cluster.functions=cluster.functions)) .BatchJobsParam(reg.pars=reg.pars, submit.pars=submit.pars, conf.pars=conf.pars, workers=workers, catch.errors=catch.errors, cleanup=cleanup, stop.on.error=stop.on.error, progressbar=progressbar, jobname=jobname, ...) } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - control ### setMethod(bpschedule, "BatchJobsParam", function(x, ...) { !getOption("BatchJobs.on.slave", FALSE) }) setMethod(bpisup, "BatchJobsParam", function(x, ...) TRUE) setMethod(bpbackend, "BatchJobsParam", function(x, ...) getConfig()) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - evaluation ### setMethod(bplapply, c("ANY", "BatchJobsParam"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) if (length(BPREDO)) { if (all(idx <- !bpok(BPREDO))) stop("no error detected in 'BPREDO'") if (length(BPREDO) != length(X)) stop("Cannot resume: length mismatch in arguments") message("Resuming previous calculation ... ") X <- X[idx] } nms <- names(X) if (!length(X)) return(list()) if (!bpschedule(BPPARAM)) return(bplapply(X, FUN, ..., BPPARAM=SerialParam())) ## turn progressbar on/off prev.pb <- getOption("BBmisc.ProgressBar.style") options(BBmisc.ProgressBar.style=c("off", "text")[bpprogressbar(BPPARAM)+1L]) on.exit(options(BBmisc.ProgressBar.style=prev.pb)) ## create registry, handle cleanup file.dir <- file.path(BPPARAM$reg.pars$work.dir, tempfile("BiocParallel_tmp_", "")) pars <- c(list(id=bpjobname(BPPARAM), file.dir=file.dir, skip=FALSE), BPPARAM$reg.pars) reg <- suppressMessages(do.call("makeRegistry", pars)) if (BPPARAM$cleanup) on.exit(unlink(file.dir, recursive=TRUE), add=TRUE) ## switch config prev.config <- getConfig() on.exit(setConfig(conf=prev.config), add=TRUE) setConfig(conf=BPPARAM$conf.pars) ## error handling; sanity check if (BPPARAM$catch.errors) FUN <- .composeTry(FUN) if (BPPARAM$stop.on.error && BPPARAM$catch.errors) { txt <- strwrap("options 'stop.on.error' and 'catch.errors' are both set, but are mutually exclusive; disabling 'stop.on.error'", indent=4, exdent=4) warning(paste(txt, collapse="\n")) } ## package args for batchMap wrap <- function(.x, .FUN, .MoreArgs) { do.call(.FUN, c(list(.x), .MoreArgs)) } ## define jobs and submit, possibly chunked ids <- suppressMessages(batchMap(reg, fun=wrap, X, more.args=list(.FUN=FUN, .MoreArgs=list(...)))) pars <- c(list(reg=reg), BPPARAM$submit.pars) if (is.na(BPPARAM$workers)) pars$ids <- ids else pars$ids <- BBmisc::chunk(ids, n.chunks=BPPARAM$workers, shuffle=TRUE) suppressMessages(do.call(submitJobs, pars)) # wait for the jobs to terminate waitForJobs(reg, ids, timeout=Inf, stop.on.error=(BPPARAM$stop.on.error && !BPPARAM$catch.errors)) ## FIXME: pass USE.NAMES? res <- loadResults(reg, ids, use.names="none") if (!is.null(res)) { names(res) <- nms } if (length(BPREDO)) { BPREDO[idx] <- res BPREDO } else res }) setMethod(bpiterate, c("ANY", "ANY", "BatchJobsParam"), function(ITER, FUN, ..., BPPARAM=bpparam()) { stop(paste0("bpiterate not supported for BatchJobsParam")) }) BiocParallel/R/BiocParallelParam-class.R0000644000175100017510000000750012607264442021075 0ustar00biocbuildbiocbuild### ========================================================================= ### BiocParallelParam objects ### ------------------------------------------------------------------------- .BiocParallelParam <- setRefClass("BiocParallelParam", contains="VIRTUAL", fields=list( workers="ANY", tasks="integer", jobname="character", catch.errors="logical", ## deprecated stop.on.error="logical", progressbar="logical"), methods=list( initialize = function(..., workers=0, tasks=0L, jobname="BPJOB", catch.errors=TRUE, ## deprecated stop.on.error=FALSE, progressbar=FALSE) { initFields(workers=workers, tasks=tasks, jobname=jobname, catch.errors=catch.errors, stop.on.error=stop.on.error, progressbar=progressbar) callSuper(...) }, show = function() { cat("class:", class(.self), "\n") }) ) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Validity ### setValidity("BiocParallelParam", function(object) { msg <- NULL ## workers and tasks workers <- bpworkers(object) if (is.numeric(workers)) if (length(workers) != 1L || workers < 0) msg <- c(msg, "'workers' must be integer(1) and >= 0") tasks <- bptasks(object) if (!is.numeric(tasks)) msg <- c(msg, "bptasks(BPPARAM) must be an integer") if (length(tasks) > 1L) msg <- c(msg, "length(bpwtasks(BPPARAM)) must be == 1") if (is.character(workers)) { if (length(workers) < 1L) msg <- c(msg, "length(bpworkers(BPPARAM)) must be > 0") if (tasks > 0L && tasks < workers) msg <- c(msg, "number of tasks is less than number of workers") } ## error handling if (!.isTRUEorFALSE(bpcatchErrors(object))) msg <- c(msg, "'catch.errors' must be TRUE or FALSE") if (!.isTRUEorFALSE(bpstopOnError(object))) msg <- c(msg, "'bpstopOnError(BPPARAM)' must be logical(1)") if (is.null(msg)) TRUE else msg }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Getters / Setters ### setMethod(bpworkers, "BiocParallelParam", function(x, ...) { x$workers }) setMethod(bptasks, "BiocParallelParam", function(x, ...) { x$tasks }) setReplaceMethod("bptasks", c("BiocParallelParam", "numeric"), function(x, ..., value) { x$tasks <- as.integer(value) x }) setMethod(bpjobname, "BiocParallelParam", function(x, ...) { x$jobname }) setReplaceMethod("bpjobname", c("BiocParallelParam", "character"), function(x, ..., value) { x$jobname <- value x }) setMethod("bpstopOnError", "BiocParallelParam", function(x, ...) { x$stop.on.error }) setReplaceMethod("bpstopOnError", c("BiocParallelParam", "logical"), function(x, ..., value) { x$stop.on.error <- value validObject(x) x }) setMethod("bpcatchErrors", "BiocParallelParam", function(x, ...) { x$catch.errors }) setReplaceMethod("bpcatchErrors", c("BiocParallelParam", "logical"), function(x, ..., value) { x$catch.errors <- value x }) setMethod("bpprogressbar", "BiocParallelParam", function(x, ...) { x$progressbar }) setReplaceMethod("bpprogressbar", c("BiocParallelParam", "logical"), function(x, ..., value) { x$progressbar <- value x }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Helpers ### ## taken from S4Vectors .isTRUEorFALSE <- function (x) { is.logical(x) && length(x) == 1L && !is.na(x) } bpok <- function(x) { if (is.null(x)) x else if (!is.list(x)) stop("'x' must be a list") else sapply(x, function(elt) !is(elt, "condition")) } BiocParallel/R/DoparParam-class.R0000644000175100017510000000543412607264437017621 0ustar00biocbuildbiocbuild### ========================================================================= ### DoparParam objects ### ------------------------------------------------------------------------- ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Constructor ### .DoparParam <- setRefClass("DoparParam", contains="BiocParallelParam", fields=list(), methods=list( show = function() { callSuper() cat(" bpworkers:", bpworkers(.self), "; bpisup:", bpisup(.self), "\n", sep="") }) ) DoparParam <- function(catch.errors=TRUE) { if (!catch.errors) warning("'catch.errors' has been deprecated") if (!"package:foreach" %in% search()) { tryCatch({ attachNamespace("foreach") }, error=function(err) { stop(conditionMessage(err), ": DoparParam class objects require the 'foreach' package") }) } .DoparParam(catch.errors=catch.errors) } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - control ### setMethod(bpworkers, "DoparParam", function(x, ...) { if (bpisup(x)) getDoParWorkers() else 0L }) setMethod(bpisup, "DoparParam", function(x, ...) { if ("package:foreach" %in% search() && getDoParRegistered() && (getDoParName() != "doSEQ") && getDoParWorkers() > 1L) { TRUE } else { FALSE } }) setReplaceMethod("bpstopOnError", c("DoparParam", "logical"), function(x, ..., value) { if (value) stop("'stop.on.error == TRUE' not implemented for DoparParam") }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - evaluation ### setMethod(bplapply, c("ANY", "DoparParam"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) if (length(BPREDO)) { if (all(idx <- !bpok(BPREDO))) stop("no error detected in 'BPREDO'") if (length(BPREDO) != length(X)) stop("length(BPREDO) must equal length(X)") message("Resuming previous calculation ... ") X <- X[idx] } nms <- names(X) if (!bpisup(BPPARAM)) return(bplapply(X, FUN=FUN, ..., BPPARAM=SerialParam())) if (bpcatchErrors(BPPARAM)) FUN <- .composeTry(FUN) i <- NULL handle <- ifelse(bpcatchErrors(BPPARAM), "pass", "stop") res <- foreach(i=seq_along(X), .errorhandling=handle) %dopar% { FUN(X[[i]], ...) } if (!is.null(res)) { names(res) <- nms } if (length(BPREDO)) { BPREDO[idx] <- res BPREDO } else res }) setMethod(bpiterate, c("ANY", "ANY", "DoparParam"), function(ITER, FUN, ..., BPPARAM=bpparam()) { stop(paste0("bpiterate not supported for DoparParam")) }) BiocParallel/R/ErrorHandling.R0000644000175100017510000000413012607264437017216 0ustar00biocbuildbiocbuild### ========================================================================= ### Error handling ### ------------------------------------------------------------------------- bplasterror <- function() { .Deprecated(msg = "bplasterror has been deprecated") } bpresume <- function(expr) { .Deprecated(msg = "bpresume has been deprecated") } ## .try() functions .try <- function(expr) { handler_warning <- function(w) { w } handler_error <- function(e) { success <<- FALSE call <- sapply(sys.calls(), deparse) e <- structure(e, class = c("remote-error", "condition"), traceback = capture.output(traceback(call))) invokeRestart("abort", e) } handler_abort <- function(e) e withRestarts(withCallingHandlers(expr, warning=handler_warning, error=handler_error), abort=handler_abort) } .try_log <- function(expr) { handler_warning = function(w) { flog.warn("%s", w) } handler_error = function(e) { success <<- FALSE call <- sapply(sys.calls(), deparse) flog.error("%s", e) e <- structure(e, class = c("remote-error", "condition"), traceback = capture.output(traceback(call))) invokeRestart("abort", e) } handler_abort = function(e) e withRestarts(withCallingHandlers(expr, warning=handler_warning, error=handler_error), abort=handler_abort) } .composeTry <- function(FUN, log=FALSE, timeout=Inf) { FUN <- match.fun(FUN) if (log) logFUN <- .try_log else logFUN <- .try function(...) { setTimeLimit(timeout, timeout, TRUE) on.exit(setTimeLimit(Inf, Inf, FALSE)) logFUN(FUN(...)) } } `print.remote-error` = function(x, ...) { NextMethod(x) cat("traceback() available as 'attr(x, \"traceback\")'\n") } BiocParallel/R/MulticoreParam-class.R0000644000175100017510000000756012607264442020515 0ustar00biocbuildbiocbuild### ========================================================================= ### MulticoreParam objects ### ------------------------------------------------------------------------- multicoreWorkers <- function() { cores <- if (.Platform$OS.type == "windows") { 1L } else { max(1L, parallel::detectCores() - 2L) } getOption("mc.cores", cores) } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Constructor ### .MulticoreParam <- setRefClass("MulticoreParam", contains="SnowParam", fields=list(), methods=list( show = function() { callSuper() }) ) MulticoreParam <- function(workers=multicoreWorkers(), tasks=0L, catch.errors=TRUE, stop.on.error=FALSE, progressbar=FALSE, RNGseed=NULL, timeout=Inf, log=FALSE, threshold="INFO", logdir=NA_character_, resultdir=NA_character_, jobname = "BPJOB", ...) { if (.Platform$OS.type == "windows") warning(paste0("MulticoreParam not supported on Windows. ", "Use SnowParam instead.")) if (!catch.errors) warning("'catch.errors' has been deprecated") args <- c(list(spec=workers, type="FORK"), list(...)) .MulticoreParam(.clusterargs=args, cluster=.NULLcluster(), .controlled=TRUE, workers=as.integer(workers), tasks=as.integer(tasks), catch.errors=catch.errors, stop.on.error=stop.on.error, progressbar=progressbar, RNGseed=RNGseed, timeout=timeout, log=log, threshold=.THRESHOLD(threshold), logdir=logdir, resultdir=resultdir, jobname=jobname) } setValidity("MulticoreParam", function(object) { msg <- NULL txt <- function(fmt, flds) sprintf(fmt, paste(sQuote(flds), collapse=", ")) fields <- names(.paramFields(.MulticoreParam)) FUN <- function(i, x) length(x[[i]]) isScalar <- sapply(fields, FUN, object) == 1L if (!all(isScalar)) msg <- c(msg, txt("%s must be length 1", fields[!isScalar])) FUN <- function(i, x) is.na(x[[i]]) isNA <- sapply(fields[isScalar], FUN, object) if (any(isNA)) msg <- c(msg, txt("%s must be length 1", fields[isNA])) if (!is.null(msg)) msg else TRUE }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - control ### setReplaceMethod("bpworkers", c("MulticoreParam", "numeric"), function(x, ..., value) { value <- as.integer(value) if (value > multicoreWorkers()) stop("'value' exceeds available workers detected by multicoreWorkers()") x$workers <- value x$.clusterargs$spec <- value x }) setMethod(bpschedule, "MulticoreParam", function(x, ...) { if (.Platform$OS.type == "windows") FALSE else TRUE }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - evaluation ### setMethod(bpvec, c("ANY", "MulticoreParam"), function(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) AGGREGATE <- match.fun(AGGREGATE) if (!length(X)) return(list()) if (!bpschedule(BPPARAM)) return(bpvec(X, FUN, ..., AGGREGATE=AGGREGATE, BPREDO=BPREDO, BPPARAM=SerialParam())) if (bplog(BPPARAM) || bpstopOnError(BPPARAM)) FUN <- .composeTry(FUN, TRUE) else FUN <- .composeTry(FUN, FALSE) if (length(BPREDO)) { if (all(idx <- !bpok(BPREDO))) stop("no error detected in 'BPREDO'") if (length(BPREDO) != length(X)) stop("length(BPREDO) must equal length(X)") message("Resuming previous calculation ... ") res <- pvec(X[idx], FUN, ..., AGGREGATE=AGGREGATE, mc.cores=bpworkers(BPPARAM)) BPREDO[id] <- res BPREDO } pvec(X, FUN, ..., AGGREGATE=AGGREGATE, mc.cores=bpworkers(BPPARAM)) }) BiocParallel/R/SerialParam-class.R0000644000175100017510000001120512607264442017760 0ustar00biocbuildbiocbuild### ========================================================================= ### SerialParam objects ### ------------------------------------------------------------------------- ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Constructor ### .SerialParam <- setRefClass("SerialParam", contains="BiocParallelParam", fields=list( log="logical", threshold="ANY"), methods=list( initialize = function(..., log=FALSE, threshold="INFO") { initFields(log=log, threshold=threshold) callSuper(...) }, show = function() { callSuper() cat(" bplog:", bplog(.self), "; bpthreshold:", names(bpthreshold(.self)), "\n", sep="") cat(" bpcatchErrors:", bpcatchErrors(.self), "\n", sep="") }) ) SerialParam <- function(catch.errors=FALSE, log=FALSE, threshold="INFO") { x <- .SerialParam(workers=1L, catch.errors=catch.errors, log=log, threshold=.THRESHOLD(threshold)) validObject(x) x } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - control ### setMethod(bpworkers, "SerialParam", function(x, ...) 1L) setMethod(bpisup, "SerialParam", function(x, ...) TRUE) setMethod("bplog", "SerialParam", function(x, ...) { x$log }) setReplaceMethod("bplog", c("SerialParam", "logical"), function(x, ..., value) { x$log <- value validObject(x) x }) setMethod("bpthreshold", "SerialParam", function(x, ...) { x$threshold }) setReplaceMethod("bpthreshold", c("SerialParam", "character"), function(x, ..., value) { nms <- c("TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL") if (!value %in% nms) stop(paste0("'value' must be one of ", paste(sQuote(nms), collapse=", "))) x$threshold <- .THRESHOLD(value) x }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - evaluation ### setMethod(bplapply, c("ANY", "SerialParam"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { if (!length(X)) return(list()) FUN <- match.fun(FUN) if (length(BPREDO)) { if (all(idx <- !bpok(BPREDO))) stop("no error detected in 'BPREDO'") if (length(BPREDO) != length(X)) stop("length(BPREDO) must equal length(X)") message("Resuming previous calculation ... ") X <- X[idx] } ## logging if (bplog(BPPARAM)) { if (!"package:futile.logger" %in% search()) { tryCatch({ attachNamespace("futile.logger") }, error=function(err) { msg <- "logging requires the 'futile.logger' package" stop(conditionMessage(err), msg) }) } flog.info("loading futile.logger package") flog.threshold(bpthreshold(BPPARAM)) FUN <- .composeTry(FUN, TRUE) } else if (bpcatchErrors(BPPARAM)) { FUN <- .composeTry(FUN, FALSE) } res <- lapply(X, FUN, ...) if (length(BPREDO)) { BPREDO[idx] <- res BPREDO } else res }) .bpiterate_serial <- function(ITER, FUN, ..., REDUCE, init) { ITER <- match.fun(ITER) FUN <- match.fun(FUN) N_GROW <- 100L n <- 0 result <- vector("list", n) if (!missing(init)) result[[1]] <- init i <- 0L repeat { if(is.null(dat <- ITER())) break else value <- FUN(dat, ...) if (missing(REDUCE)) { i <- i + 1L if (i > n) { n <- n + N_GROW length(result) <- n } result[[i]] <- value } else { if (length(result)) result[[1]] <- REDUCE(result[[1]], unlist(value)) else result[[1]] <- value } } length(result) <- ifelse(i == 0L, 1, i) result } setMethod(bpiterate, c("ANY", "ANY", "SerialParam"), function(ITER, FUN, ..., BPPARAM=bpparam()) { ITER <- match.fun(ITER) FUN <- match.fun(FUN) if (bplog(BPPARAM)) { if (!"package:futile.logger" %in% search()) { tryCatch({ attachNamespace("futile.logger") }, error=function(err) { msg <- "logging requires the 'futile.logger' package" stop(conditionMessage(err), msg) }) } flog.info("loading futile.logger package") flog.threshold(bpthreshold(BPPARAM)) FUN <- .composeTry(FUN, TRUE) } else FUN <- .composeTry(FUN, FALSE) .bpiterate_serial(ITER, FUN, ...) }) BiocParallel/R/SnowParam-class.R0000644000175100017510000003440712607264437017504 0ustar00biocbuildbiocbuild### ========================================================================= ### SnowParam objects ### ------------------------------------------------------------------------- ## 11 February, 2014 -- this is a hack: import'ing ## parallel::stopCluster and then library(snow) overwrites ## parallel::stopCluster.default with snow::stopCluster.default, ## resulting in incorrect dispatch to snow::sendData stopCluster <- parallel::stopCluster makeCluster <- parallel::makeCluster ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Constructor ### snowWorkers <- function() { cores <- max(1L, parallel::detectCores() - 2L) getOption("mc.cores", cores) } setOldClass(c("NULLcluster", "cluster")) .NULLcluster <- function() { cl <- list() class(cl) <- c("NULLcluster", "cluster") cl } .SnowParam <- setRefClass("SnowParam", contains="BiocParallelParam", fields=list( cluster="cluster", .clusterargs="list", .controlled="logical", RNGseed="ANY", timeout="numeric", log="logical", threshold="ANY", logdir="character", resultdir="character"), methods=list( initialize = function(..., .clusterargs=list(spec=0, type="SOCK"), .controlled=TRUE, RNGseed=NULL, timeout=Inf, log=FALSE, threshold="INFO", logdir=NA_character_, resultdir=NA_character_) { initFields(.clusterargs=.clusterargs, .controlled=.controlled, RNGseed=RNGseed, timeout=timeout, log=log, threshold=threshold, logdir=logdir, resultdir=resultdir) callSuper(...) }, show = function() { callSuper() cat(" bpjobname:", bpjobname(.self), "; bpworkers:", bpworkers(.self), "; bptasks:", bptasks(.self), "; bptimeout:", bptimeout(.self), "; bpRNGseed:", bpRNGseed(.self), "; bpisup:", bpisup(.self), "\n", sep="") cat(" bplog:", bplog(.self), "; bpthreshold:", names(bpthreshold(.self)), "; bplogdir:", bplogdir(.self), "\n", sep="") cat(" bpstopOnError:", bpstopOnError(.self), "; bpprogressbar:", bpprogressbar(.self), "\n", sep="") cat(" bpresultdir:", bpresultdir(.self), "\n", sep="") cat("cluster type:", .clusterargs$type, "\n") }) ) SnowParam <- function(workers=snowWorkers(), type=c("SOCK", "MPI", "FORK"), tasks=0L, catch.errors=TRUE, stop.on.error=FALSE, progressbar=FALSE, RNGseed=NULL, timeout=Inf, log=FALSE, threshold="INFO", logdir=NA_character_, resultdir=NA_character_, jobname = "BPJOB", ...) { type <- match.arg(type) if (!catch.errors) warning("'catch.errors' has been deprecated") if (!type %in% c("SOCK", "MPI", "FORK")) stop("type must be one of 'SOCK', 'MPI' or 'FORK'") if (any(type %in% c("MPI", "FORK")) && is(workers, "character")) stop("'workers' must be integer(1) when 'type' is MPI or FORK") args <- c(list(spec=workers, type=type), list(...)) x <- .SnowParam(.clusterargs=args, cluster=.NULLcluster(), .controlled=TRUE, workers=workers, tasks=as.integer(tasks), catch.errors=catch.errors, stop.on.error=stop.on.error, progressbar=progressbar, RNGseed=RNGseed, timeout=timeout, log=log, threshold=.THRESHOLD(threshold), logdir=logdir, resultdir=resultdir, jobname=jobname) validObject(x) x } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Validity ### .valid.SnowParam.log <- function(object) { msg <- NULL threshold <- bpthreshold(object) if (length(threshold) != 1L) msg <- c(msg, "'bpthreshold(BPPARAM)' must be character(1)") nms <- c("TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL") if (!names(threshold) %in% nms) msg <- c(msg, "'bpthreshold(BPPARAM)' must be one of ", paste(sQuote(nms), collapse=", ")) if (!.isTRUEorFALSE(bplog(object))) msg <- c(msg, "'bplog(BPPARAM)' must be logical(1)") dir <- bplogdir(object) if (length(dir) > 1L || !is(dir, "character")) msg <- c(msg, "'bplogdir(BPPARAM)' must be character(1)") if (!is.na(dir) && !bplog(object)) msg <- c(msg, "'log' must be TRUE when 'logdir' is given") msg } .valid.SnowParam.result <- function(object) { msg <- NULL dir <- bpresultdir(object) if (length(dir) > 1L || !is(dir, "character")) msg <- c(msg, "'bpresultdir(BPPARAM)' must be character(1)") msg } setValidity("SnowParam", function(object) { msg <- NULL if (!.isTRUEorFALSE(.controlled(object))) msg <- c(msg, "'.controlled' must be TRUE or FALSE") if (.controlled(object)) { if (bpworkers(object) != object$.clusterargs$spec) msg <- c(msg, "'bpworkers(BPPARAM)' must equal BPPARAM$.clusterargs$spec") msg <- c(msg, .valid.SnowParam.log(object), .valid.SnowParam.result(object)) } if (is.null(msg)) TRUE else msg }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Getters / Setters ### setReplaceMethod("bpworkers", c("SnowParam", "numeric"), function(x, ..., value) { value <- as.integer(value) if (value > snowWorkers()) stop("'value' exceeds available workers detected by snowWorkers()") x$workers <- value x$.clusterargs$spec <- value x }) setMethod(bpRNGseed, "SnowParam", function(x, ...) { x$RNGseed }) setReplaceMethod("bpRNGseed", c("SnowParam", "ANY"), function(x, ..., value) { if (!is.null(value)) value <- as.integer(value) x$RNGseed <- value x }) setMethod(bptimeout, "SnowParam", function(x, ...) { x$timeout }) setReplaceMethod("bptimeout", c("SnowParam", "numeric"), function(x, ..., value) { if (!is.null(value)) value <- as.integer(value) x$timeout <- value x }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - control ### setMethod(bpstart, "SnowParam", function(x, lenX = bpworkers(x), ...) { if (!.controlled(x)) stop("'bpstart' not available; instance from outside BiocParallel?") if (bpisup(x)) stop("cluster already started") if (!"package:parallel" %in% search()) { tryCatch({ attachNamespace("parallel") }, error=function(err) { stop(conditionMessage(err), "SnowParam objects require the 'parallel' package") }) } ## 'X' has been split into tasks - start minimum number of workers. if (lenX > 0) { cargs <- x$.clusterargs cargs$spec <- min(bpworkers(x), lenX) } else stop("cluster not started; no workers specified") ## FORK (useRscript not relevant) if (x$.clusterargs$type == "FORK") { bpbackend(x) <- do.call(.bpmakeForkCluster, c(list(nnodes=cargs$spec), cargs)) ## SOCK, MPI } else { cargs$snowlib <- find.package("BiocParallel") if (!is.null(cargs$useRscript)) { if (!cargs$useRscript) cargs$scriptdir <- find.package("BiocParallel") } bpbackend(x) <- do.call(makeCluster, cargs) } ## logging if (bplog(x)) { .initiateLogging(x) } ## random numbers if (!is.null(bpRNGseed(x))) { tryCatch({ clusterSetRNGStream(bpbackend(x), bpRNGseed(x)) }, error = function(err) { bpstop(x) stop(conditionMessage(err), ": problem setting RNG stream") }) } ## timeout if (is.finite(timeout <- bptimeout(x))) { tryCatch({ clusterExport(bpbackend(x), "timeout", env=environment()) }, error = function(err) { bpstop(x) stop(conditionMessage(err), ": problem setting worker timeout") }) } invisible(x) }) setMethod(bpstop, "SnowParam", function(x, ...) { if (!.controlled(x)) stop("'bpstop' not available; instance from outside BiocParallel?") if (!bpisup(x)) return(invisible(x)) tryCatch(stopCluster(bpbackend(x)), error=function(err) { txt <- sprintf("failed to stop %s cluster: %s", sQuote(class(bpbackend(x))[[1]]), conditionMessage(err)) stop(paste(strwrap(txt, exdent=2), collapse="\n"), call.=FALSE) }) bpbackend(x) <- .NULLcluster() invisible(x) }) setMethod(bpisup, "SnowParam", function(x, ...) { length(bpbackend(x)) != 0L }) setMethod(bpbackend, "SnowParam", function(x, ...) { x$cluster }) setReplaceMethod("bpbackend", c("SnowParam", "cluster"), function(x, ..., value) { x$cluster <- value x }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Methods - evaluation ### setMethod(bplapply, c("ANY", "SnowParam"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { if (!length(X)) return(list()) FUN <- match.fun(FUN) if (!bpschedule(BPPARAM) || length(X) == 1L) { param <- SerialParam(catch.errors=bpcatchErrors(BPPARAM), log=bplog(BPPARAM), threshold=bpthreshold(BPPARAM)) return(bplapply(X, FUN, ..., BPPARAM=param)) } if (length(BPREDO)) { if (all(idx <- !bpok(BPREDO))) stop("no error detected in 'BPREDO'") if (length(BPREDO) != length(X)) stop("length(BPREDO) must equal length(X)") message("Resuming previous calculation ... ") X <- X[idx] } nms <- names(X) if (bplog(BPPARAM) || bpstopOnError(BPPARAM)) FUN <- .composeTry(FUN, TRUE, bptimeout(BPPARAM)) else FUN <- .composeTry(FUN, FALSE, bptimeout(BPPARAM)) ## split into tasks X <- .splitX(X, bpworkers(BPPARAM), bptasks(BPPARAM)) ## start / stop cluster if (!bpisup(BPPARAM)) { BPPARAM <- bpstart(BPPARAM, length(X)) on.exit(bpstop(BPPARAM), TRUE) } ## progress bar progress <- .progress(active=bpprogressbar(BPPARAM)) progress$init(length(X)) on.exit(progress$term(), TRUE) argfun <- function(i) c(list(X[[i]]), list(FUN=FUN), list(...)) res <- bpdynamicClusterApply(bpbackend(BPPARAM), lapply, length(X), argfun, BPPARAM, progress) if (!is.null(res)) { res <- do.call(unlist, list(res, recursive=FALSE)) names(res) <- nms } if (length(BPREDO)) { BPREDO[idx] <- res BPREDO } else res }) setMethod(bpiterate, c("ANY", "ANY", "SnowParam"), function(ITER, FUN, ..., BPPARAM=bpparam()) { ITER <- match.fun(ITER) FUN <- match.fun(FUN) if (!bpschedule(BPPARAM)) return(bpiterate(ITER, FUN, ..., BPPARAM=SerialParam())) if (bplog(BPPARAM) || bpstopOnError(BPPARAM)) FUN <- .composeTry(FUN, TRUE, bptimeout(BPPARAM)) else FUN <- .composeTry(FUN, FALSE, bptimeout(BPPARAM)) ## start / stop cluster if (!bpisup(BPPARAM)) { BPPARAM <- bpstart(BPPARAM) on.exit(bpstop(BPPARAM), TRUE) } bpdynamicClusterIterate(bpbackend(BPPARAM), FUN, ITER, ..., BPPARAM=BPPARAM) }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Getters / Setters ### .controlled <- function(x) { x$.controlled } setMethod("bplog", "SnowParam", function(x, ...) { x$log }) setReplaceMethod("bplog", c("SnowParam", "logical"), function(x, ..., value) { if (x$.controlled) { x$log <- value if (bpisup(x)) { bpstop(x) bpstart(x) } x } else { stop("'bplog' not available; instance from outside BiocParallel?") } }) .THRESHOLD <- function(xx) { if (!is.null(names(xx))) xx <- names(xx) switch(xx, "FATAL"=futile.logger::FATAL, "ERROR"=futile.logger::ERROR, "WARN"=futile.logger::WARN, "INFO"=futile.logger::INFO, "DEBUG"=futile.logger::DEBUG, "TRACE"=futile.logger::TRACE, xx) } setMethod("bpthreshold", "SnowParam", function(x, ...) { x$threshold }) setReplaceMethod("bpthreshold", c("SnowParam", "character"), function(x, ..., value) { nms <- c("TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL") if (!value %in% nms) stop(paste0("'value' must be one of ", paste(sQuote(nms), collapse=", "))) x$threshold <- .THRESHOLD(value) x }) setMethod("bplogdir", "SnowParam", function(x, ...) { x$logdir }) setReplaceMethod("bplogdir", c("SnowParam", "character"), function(x, ..., value) { if (!length(value)) value <- NA_character_ x$logdir <- value if (is.null(msg <- .valid.SnowParam.log(x))) x else stop(msg) }) setMethod("bpresultdir", "SnowParam", function(x, ...) { x$resultdir }) setReplaceMethod("bpresultdir", c("SnowParam", "character"), function(x, ..., value) { x$resultdir <- value if (is.null(msg <- .valid.SnowParam.result(x))) x }) ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Coercion methods for SOCK and MPI clusters ### ### parallel::SOCKcluster types setOldClass(c("SOCKcluster", "cluster")) stopCluster.SOCKcluster <- parallel:::stopCluster.default setAs("SOCKcluster", "SnowParam", function(from) { .clusterargs <- list(spec=length(from), type=sub("cluster$", "", class(from)[1L])) .SnowParam(.clusterargs=.clusterargs, cluster=from, .controlled=FALSE, workers=length(from)) }) ### MPIcluster setOldClass(c("spawnedMPIcluster", "MPIcluster", "cluster")) setAs("spawnedMPIcluster", "SnowParam", function(from) { .clusterargs <- list(spec=length(from), type=sub("cluster", "", class(from)[1L])) .SnowParam(.clusterargs=.clusterargs, cluster=from, .controlled=FALSE, workers=length(from)) }) BiocParallel/R/SnowParam-utils.R0000644000175100017510000003426612607264437017542 0ustar00biocbuildbiocbuild### ========================================================================= ### Low-level cluster utilities ### ------------------------------------------------------------------------- ### Support for SOCK, MPI and FORK connections. ### Derived from snow version 0.3-13 by Luke Tierney ### Derived from parallel version 2.16.0 by R Core Team ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### Worker loop used by SOCK, MPI and FORK when log=TRUE. ### Error handling is done in .composeTry_log. bpslaveLoop <- function(master) { repeat tryCatch({ msg <- parallel:::recvData(master) buffer <<- NULL ## futile.logger buffer success <<- TRUE ## modified by .try_log() if (msg$type == "DONE") { closeNode(master) break; } else if (msg$type == "EXEC") { ## need local handler for worker read/send errors handler <- function(e) { success <<- FALSE structure(conditionMessage(e), class=c("remote-error", "try-error")) } file <- textConnection("sout", "w", local=TRUE) sink(file, type="message") sink(file, type="output") gc(reset=TRUE) t1 <- proc.time() value <- tryCatch(do.call(msg$data$fun, msg$data$args), error=handler) t2 <- proc.time() node <- Sys.info()["nodename"] sink(NULL, type="message") sink(NULL, type="output") close(file) value <- list(type = "VALUE", value = value, success = success, time = t2 - t1, tag = msg$data$tag, log = buffer, gc = gc(), node = node, sout = sout) parallel:::sendData(master, value) } }, interrupt = function(e) NULL) } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### snow::MPI ### bprunMPIslave <- function() { comm <- 1 intercomm <- 2 mpi.comm.get.parent(intercomm) mpi.intercomm.merge(intercomm,1,comm) mpi.comm.set.errhandler(comm) mpi.comm.disconnect(intercomm) bpslaveLoop(makeMPImaster(comm)) mpi.comm.disconnect(comm) mpi.quit() } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### parallel::FORK ### .bpmakeForkCluster <- function (nnodes = getOption("mc.cores", 2L), ...) { nnodes <- as.integer(nnodes) if (is.na(nnodes) || nnodes < 1L) stop("'nnodes' must be >= 1") parallel:::.check_ncores(nnodes) cl <- vector("list", nnodes) for (i in seq_along(cl)) cl[[i]] <- .bpnewForkNode(..., rank = i) class(cl) <- c("SOCKcluster", "cluster") cl } .bpnewForkNode <- function(..., options = parallel:::defaultClusterOptions, rank) { getClusterOption <- parallel:::getClusterOption options <- parallel:::addClusterOptions(options, list(...)) outfile <- getClusterOption("outfile", options) port <- getClusterOption("port", options) timeout <- getClusterOption("timeout", options) renice <- getClusterOption("renice", options) environment(bpslaveLoop) <- getNamespace('parallel') f <- mcfork() if (inherits(f, "masterProcess")) { # the slave on.exit(mcexit(1L, structure("fatal error in wrapper code", class = "try-error"))) # closeStdout() master <- "localhost" makeSOCKmaster <- function(master, port, timeout) { port <- as.integer(port) ## maybe use `try' and sleep/retry if first time fails? con <- socketConnection(master, port = port, blocking = TRUE, open = "a+b", timeout = timeout) structure(list(con = con), class = "SOCK0node") } parallel:::sinkWorkerOutput(outfile) msg <- sprintf("starting worker pid=%d on %s at %s\n", Sys.getpid(), paste(master, port, sep = ":"), format(Sys.time(), "%H:%M:%OS3")) cat(msg) ## allow this to quit when the loop is done. tools::pskill(Sys.getpid(), tools::SIGUSR1) if(!is.na(renice) && renice) ## ignore 0 tools::psnice(Sys.getpid(), renice) bpslaveLoop(makeSOCKmaster(master, port, timeout)) mcexit(0L) } con <- socketConnection("localhost", port = port, server = TRUE, blocking = TRUE, open = "a+b", timeout = timeout) structure(list(con = con, host = "localhost", rank = rank), class = c("forknode", "SOCK0node")) } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### logs and results ### .initiateLogging <- function(BPPARAM) { level <- bpthreshold(BPPARAM) cat("loading futile.logger on workers\n") cl <- bpbackend(BPPARAM) clusterExport(cl, c(buffer=NULL)) .bufferload <- function(i, level) { tryCatch({ attachNamespace("futile.logger") flog.threshold(level) fun <- function(line) buffer <<- c(buffer, line) flog.appender(fun, 'ROOT') }, error = function(e) e ) } ok <- parallel::clusterApply(cl, seq_along(cl), .bufferload, level=level) if (any(sapply(ok, function(j) !is.null(j)))) { bpstop(cl) stop(conditionMessage(ok[[1]]), "problem loading futile.logger on workers") } } .bpwriteLog <- function(con, d) { .log_internal <- function() { message("############### LOG OUTPUT ###############") message(sprintf("Task: %i", d$value$tag)) message(sprintf("Node: %s", d$node)) message(sprintf("Timestamp: %s", Sys.time())) message(sprintf("Success: %s", d$value$success)) message("Task duration: ") print(d$value$time) message("Memory used: ") print(d$value$gc) message("Log messages:") message(d$value$log) message("stderr and stdout:") print(noquote(d$value$sout)) } if (!is.null(con)) { sink(con, type = "message") sink(con, type = "output") .log_internal() sink(NULL, type = "message") sink(NULL, type = "output") close(con) } else .log_internal() } ### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ### bpdynamicClusterApply() and bpdynamicClusterIterate() ### ## These functions are used by all cluster types (SOCK, MPI, FORK) ## and run on the master. Both enable logging, writing logs/results ## to files and 'stop on error'. The 'cl' argument is an active cluster; ## starting and stopping of 'cl' is done outside these functions, eg, ## bplapply, bpmapply etc.. .clear_cluster <- function(cl, sjobs) { tryCatch({ setTimeLimit(30, 30, TRUE) on.exit(setTimeLimit(Inf, Inf, FALSE)) while (any(sjobs == "running")) { d <- parallel:::recvOneData(cl) sjobs[d$value$tag] <- "done" } }, error=function(e) { stop("failed to stop cluster workers: ", conditionmessage(e)) }) } ## bpdynamicClusterApply(): ## derived from snow::dynamicClusterApply. bpdynamicClusterApply <- function(cl, fun, n, argfun, BPPARAM, progress) { ## result output if (!is.na(resdir <- bpresultdir(BPPARAM))) BatchJobs:::checkDir(resdir) ## setup logging if (bplog(BPPARAM)) { if (!is.na(logdir <- bplogdir(BPPARAM))) BatchJobs:::checkDir(logdir) else con <- NULL } parallel:::checkCluster(cl) p <- length(cl) val <- vector("list", n) sjobs <- character() if (n > 0 && p > 0) { ## initial load submit <- function(node, job) parallel:::sendCall(cl[[node]], fun, argfun(job), tag = job) for (i in 1:min(n, p)) { submit(i, i) sjobs[i] <- "running" } for (i in 1:n) { ## collect d <- parallel:::recvOneData(cl) value <- d$value$value njob <- d$value$tag val[[njob]] <- value sjobs[njob] <- "done" progress$step() ## logging if (bplog(BPPARAM)) { if (!is.na(logdir)) { lfile <- paste0(logdir, "/", bpjobname(BPPARAM), ".task", d$value$tag, ".log") con <- file(lfile, open="w") } .bpwriteLog(con, d) } else if (length(msg <- d$value$sout)) { cat(paste(msg, collapse="\n"), "\n") } ## write results if (!is.na(resdir)) { rfile <- paste0(resdir, "/", bpjobname(BPPARAM), ".task", d$value$tag, ".Rda") save(value, file=rfile) } ## stop on error ## let running jobs finish, do not re-load if (bpstopOnError(BPPARAM) && !d$value$success) { .clear_cluster(cl, sjobs) message(paste("error in task ", d$value$tag)) break } else { ## re-load j <- i + min(n, p) if (j <= n) { submit(d$node, j) sjobs[j] <- "running" } } } } ## return results if (!is.na(resdir)) NULL else val } ## bpdynamicClusterIterate(): ## Derived from snow::dynamicClusterApply and parallel::mclapply. ## - length of 'X' is unknown (defined by ITER()) ## - results not pre-allocated; list grows each iteration if no REDUCE ## - args wrapped in arglist with different chunks from ITER() .reduce_while_done <- function(ss, REDUCE) { while (ss$sjobs[ss$rindex] == "done") { ss$val <- REDUCE(ss$val, ss$rjobs[[ss$rindex]]) ss$rjobs[[ss$rindex]] <- NA if (ss$rindex == length(ss$sjobs)) break ss$rindex <- ss$rindex + 1 } ss } .reduce <- function(ss, njob, reduce.in.order, success, REDUCE) { if (success && !missing(REDUCE)) { if (reduce.in.order) { if (njob == 1) { if (length(ss$val)) ss$val <- REDUCE(ss$val, ss$rjobs[[njob]]) else ss$val <- ss$rjobs[[njob]] ss$rjobs[[njob]] <- NA ss$rindex <- ss$rindex + 1 ss <- .reduce_while_done(ss, REDUCE) } else if (njob == ss$rindex) { ss <- .reduce_while_done(ss, REDUCE) } } else { if (length(ss$val)) ss$val <- REDUCE(ss$val, unlist(ss$rjobs[[njob]])) else ss$val <- unlist(ss$rjobs[[njob]]) } } ss } bpdynamicClusterIterate <- function(cl, fun, ITER, REDUCE, init, reduce.in.order=FALSE, BPPARAM, ...) { if (missing(REDUCE) && reduce.in.order) stop("REDUCE must be provided when 'reduce.in.order = TRUE'") if (missing(REDUCE) && !missing(init)) stop("REDUCE must be provided when 'init' is given") ## result output if (!is.na(resdir <- bpresultdir(BPPARAM))) BatchJobs:::checkDir(resdir) ## setup logging if (bplog(BPPARAM)) { if (!is.na(logdir <- bplogdir(BPPARAM))) BatchJobs:::checkDir(logdir) else con <- NULL } parallel:::checkCluster(cl) p <- length(cl) ss <- list(sjobs = character(), ## job status ('running', 'done') rjobs = list(), ## non-reduced result rindex = 1, ## reducer index val = if (missing(init)) list() else init) ## result ## initial load inextdata <- NULL for (i in 1:p) { if (is.null(inextdata <- ITER())) { if (i == 1) { warning("first invocation of 'ITER()' returned NULL") return(list()) } else { break } } else { ss$sjobs[i] <- "running" arglist <- c(list(inextdata), list(...)) parallel:::sendCall(cl[[i]], fun, arglist, tag = i) } } repeat { ## collect d <- parallel:::recvOneData(cl) njob <- d$value$tag ss$rjobs[[njob]] <- d$value$value ss$sjobs[njob] <- "done" ## logging if (bplog(BPPARAM)) { if (!is.na(logdir)) { lfile <- paste0(logdir, "/", bpjobname(BPPARAM), ".task", d$value$tag, ".log") con <- file(lfile, open="w") } .bpwriteLog(con, d) } else if (length(msg <- d$value$sout)) { cat(paste(msg, collapse="\n"), "\n") } ## reduce ## FIXME: if any worker has an error - can't reduce ## should return ss$rjobs success <- d$value$success ss <- .reduce(ss, njob, reduce.in.order, success, REDUCE) ## write result if (!is.na(resdir)) { rfile <- paste0(resdir, "/", bpjobname(BPPARAM), ".task", d$value$tag, ".Rda") if (missing(REDUCE)) save(ss$rjobs, file=rfile) else save(ss$val, file=rfile) } ## stop on error ## let running jobs finish, do not re-load if (bpstopOnError(BPPARAM) && !success) { .clear_cluster(cl, ss$sjobs) message(paste("error in task ", d$value$tag)) break } else { ## re-load if (!is.null(inextdata <- ITER())) { i <- i + 1 ss$sjobs[i] <- "running" arglist <- c(list(inextdata), list(...)) parallel:::sendCall(cl[[d$node]], fun, arglist, tag = i) } else { if ((length(ss$sjobs) == 0) || (all(ss$sjobs == "done"))) break } } } ## return results if (!is.na(resdir)) { NULL } else { if (missing(REDUCE)) ss$rjobs else list(ss$val) } } BiocParallel/R/bpaggregate-methods.R0000644000175100017510000000577712607264437020413 0ustar00biocbuildbiocbuild### ========================================================================= ### bpaggregate methods ### ------------------------------------------------------------------------- ## All params use bpaggregate,data.frame,BiocParallelParam. ## bpaggretate() dispatches to bplapply() where errors and ## logging are handled. setMethod("bpaggregate", c("ANY", "missing"), function(x, ..., BPREDO=list(), BPPARAM=bpparam()) { bpaggregate(x, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) }) setMethod("bpaggregate", c("matrix", "BiocParallelParam"), function(x, by, FUN, ..., simplify=TRUE, BPREDO=list(), BPPARAM=bpparam()) { if (!is.data.frame(x)) x <- as.data.frame(x) bpaggregate(x, by, FUN, ..., simplify=simplify, BPREDO=BPREDO, BPPARAM=BPPARAM) }) setMethod("bpaggregate", c("data.frame", "BiocParallelParam"), function(x, by, FUN, ..., simplify=TRUE, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) if (!is.data.frame(x)) x <- as.data.frame(x) if (!is.list(by)) stop("'by' must be a list") by <- lapply(by, as.factor) wrapper <- function(.ind, .x, .AGGRFUN, ..., .simplify) { sapply(.x[.ind,, drop=FALSE], .AGGRFUN, ..., simplify=.simplify) } ind <- Filter(length, split(seq_len(nrow(x)), by)) grp <- rep(seq_along(ind), sapply(ind, length)) grp <- grp[match(seq_len(nrow(x)), unlist(ind))] res <- bplapply(ind, wrapper, .x=x, .AGGRFUN=FUN, .simplify=simplify, BPREDO=BPREDO, BPPARAM=BPPARAM) res <- do.call(rbind, lapply(res, rbind)) if (is.null(names(by)) && length(by)) { names(by) <- sprintf("Group.%i", seq_along(by)) } else { ind <- which(!nzchar(names(by))) names(by)[ind] <- sprintf("Group.", ind) } tab <- as.data.frame(lapply(by, as.character), stringsAsFactors=FALSE) tab <- tab[match(sort(unique(grp)), grp),, drop=FALSE] rownames(tab) <- rownames(res) <- NULL tab <- cbind(tab, res) names(tab) <- c(names(by), names(x)) tab }) setMethod("bpaggregate", c("formula", "BiocParallelParam"), function (x, data, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { if (length(x) != 3L) stop("Formula 'x' must have both left and right hand sides") m <- match.call(expand.dots=FALSE) if (is.matrix(eval(m$data, parent.frame()))) m$data <- as.data.frame(data) m$... <- m$FUN <- m$BPPARAM <- NULL m[[1L]] <- as.name("model.frame") if (x[[2L]] == ".") { rhs <- as.list(attr(terms(x[-2L]), "variables")[-1]) lhs <- as.call(c(quote(cbind), setdiff(lapply(names(data), as.name), rhs))) x[[2L]] <- lhs m[[2L]] <- x } mf <- eval(m, parent.frame()) if (is.matrix(mf[[1L]])) { lhs <- as.data.frame(mf[[1L]]) bpaggregate(lhs, mf[-1L], FUN=FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) } else bpaggregate(mf[1L], mf[-1L], FUN=FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) }) BiocParallel/R/bpbackend-methods.R0000644000175100017510000000040112607264442020023 0ustar00biocbuildbiocbuildsetMethod(bpbackend, "missing", function(x, ...) { x <- registered()[[1]] bpbackend(x, ...) }) setReplaceMethod("bpbackend", c("missing", "ANY"), function(x, ..., value) { x <- registered()[[1]] bpbackend(x, ...) <- value x }) BiocParallel/R/bpisup-methods.R0000644000175100017510000000023012607264437017420 0ustar00biocbuildbiocbuildsetMethod(bpisup, "ANY", function(x, ...) FALSE) setMethod(bpisup, "missing", function(x, ...) { x <- registered()[[1]] bpisup(x, ...) }) BiocParallel/R/bpiterate-methods.R0000644000175100017510000000121012607264442020070 0ustar00biocbuildbiocbuild### ========================================================================= ### bpiterate methods ### ------------------------------------------------------------------------- ## All params have dedicated bpiterate() methods. setMethod(bpiterate, c("ANY", "ANY", "missing"), function(ITER, FUN, ..., BPPARAM=bpparam()) { ITER <- match.fun(ITER) FUN <- match.fun(FUN) bpiterate(ITER, FUN, ..., BPPARAM=BPPARAM) }) setMethod(bpiterate, c("ANY", "ANY", "BiocParallelParam"), function(ITER, FUN, ..., BPPARAM=bpparam()) { ITER <- match.fun(ITER) FUN <- match.fun(FUN) bpiterate(ITER, FUN, ..., BPPARAM=BPPARAM) }) BiocParallel/R/bplapply-methods.R0000644000175100017510000000205112607264437017744 0ustar00biocbuildbiocbuild### ========================================================================= ### bplapply methods ### ------------------------------------------------------------------------- ## All params have dedicated bplapply methods. setMethod(bplapply, c("ANY", "missing"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) bplapply(X, FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) }) setMethod(bplapply, c("ANY", "list"), function(X, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) if (!all(vapply(BPPARAM, is, logical(1), "BiocParallelParam"))) stop("All elements in 'BPPARAM' must be BiocParallelParam objects") if (length(BPPARAM) == 0L) stop("'length(BPPARAM)' must be > 0") myFUN <- if (length(BPPARAM) > 1L) { if (length(param <- BPPARAM[-1]) == 1L) function(...) FUN(..., BPPARAM=param[[1]]) else function(...) FUN(..., BPPARAM=param) } else FUN bplapply(X, myFUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM[[1]]) }) BiocParallel/R/bpmapply-methods.R0000644000175100017510000000350312607264437017750 0ustar00biocbuildbiocbuild### ========================================================================= ### bpmapply methods ### ------------------------------------------------------------------------- ## bpmapply() dispatches to bplapply() where errors and logging are handled. setMethod(bpmapply, c("ANY", "BiocParallelParam"), function(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) { ## re-package for lapply ddd <- .getDotsForMapply(...) if (!length(ddd) || !length(ddd[[1L]])) return(list()) FUN <- match.fun(FUN) wrap <- function(.i, .FUN, .ddd, .MoreArgs) { dots <- lapply(.ddd, `[`, .i) .mapply(.FUN, dots, .MoreArgs)[[1L]] } res <- bplapply(X=seq_along(ddd[[1L]]), wrap, .FUN=FUN, .ddd=ddd, .MoreArgs=MoreArgs, BPREDO=BPREDO, BPPARAM=BPPARAM) .simplify(.rename(res, ddd, USE.NAMES=USE.NAMES), SIMPLIFY) }) setMethod(bpmapply, c("ANY", "missing"), function(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) bpmapply(FUN, ..., BPPARAM=BPPARAM) }) setMethod(bpmapply, c("ANY", "list"), function(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) if (!all(vapply(BPPARAM, is, logical(1), "BiocParallelParam"))) stop("All elements in 'BPPARAM' must be BiocParallelParam objects") if (length(BPPARAM) == 0L) stop("'length(BPPARAM)' must be > 0") myFUN <- if (length(BPPARAM) > 1L) { if (length(param <- BPPARAM[-1]) == 1L) function(...) FUN(..., BPPARAM=param[[1]]) else function(...) FUN(..., BPPARAM=param) } else FUN bpmapply(myFUN, ..., BPPARAM=BPPARAM[[1L]]) }) BiocParallel/R/bpschedule-methods.R0000644000175100017510000000024312607264437020240 0ustar00biocbuildbiocbuildsetMethod(bpschedule, "ANY", function(x, ...) TRUE) setMethod(bpschedule, "missing", function(x, ...) { x <- registered()[[1]] bpschedule(x, ...) }) BiocParallel/R/bpstart-methods.R0000644000175100017510000000024112607264437017577 0ustar00biocbuildbiocbuildsetMethod(bpstart, "ANY", function(x, ...) invisible(x)) setMethod(bpstart, "missing", function(x, ...) { x <- registered()[[1]] bpstart(x, ...) }) BiocParallel/R/bpstop-methods.R0000644000175100017510000000023712607264437017434 0ustar00biocbuildbiocbuildsetMethod(bpstop, "ANY", function(x, ...) invisible(x)) setMethod(bpstop, "missing", function(x, ...) { x <- registered()[[1]] bpstop(x, ...) }) BiocParallel/R/bpvalidate.R0000644000175100017510000000431212607264437016575 0ustar00biocbuildbiocbuildbpvalidate <- function(fun) { if (typeof(fun) != "closure") stop("'fun' must be a closure") unknown <- codetools::findGlobals(fun) f_env <- environment(fun) ## 'fun' environment is NAMESPACE if (length(unknown) && isNamespace(f_env)) { f_ls <- c(getNamespaceImports(f_env), setNames(list(ls(f_env, all.names=TRUE)), getNamespaceName(f_env))) f_symbols <- unique(unlist(f_ls, use.names=FALSE)) unknown <- unknown[!unknown %in% f_symbols] } ## 'fun' body loads libraries warn <- err <- NULL if (any(c("require", "library") %in% unknown)) { xx <- withCallingHandlers(tryCatch({ dep <- deparse(fun) i <- grepl("library", dep, fixed=TRUE) | grepl("require", dep, fixed=TRUE) sapply(dep[i], function(elt) { pkg <- gsub(")", "", strsplit(elt, "(", fixed=TRUE)[[1]][2]) unknown %in% getNamespaceExports(pkg) }) }, error=function(e) { err <<- append(err, conditionMessage(e)) NULL }), warning=function(w) { warn <<- append(warn, conditionMessage(w)) invokeRestart("muffleWarning") }) if (!is.null(warn) || !is.null(err)) { msg <- "attempt to load library failed:\n" stop(sprintf(msg, paste(c(warn, err), collapse="\n "))) } unknown <- unknown[rowSums(xx) == 0L] } ## look in search path inpath <- list() if (length(unknown)) { inpath <- .foundInPath(unknown) unknown <- setdiff(unknown, names(inpath)) inpath <- .filterDefaultPackages(inpath) } if (length(unknown)) warning("function references unknown symbol(s)") list(inPath=inpath, unknown=unknown) } .foundInPath <- function(symbols) { loc <- Map(function(elt) head(find(elt), 1), symbols) Filter(function(elt) length(elt) != 0, loc) } .filterDefaultPackages <- function(symbols) { defaults <- paste0("package:", c("stats", "graphics", "grDevices", "utils", "datasets", "methods", "Autoloads", "base")) Filter(function(elt) !elt %in% defaults, symbols) } BiocParallel/R/bpvec-methods.R0000644000175100017510000000274312607264437017230 0ustar00biocbuildbiocbuild### ========================================================================= ### bpvec methods ### ------------------------------------------------------------------------- ## MulticoreParam has a dedicated bpvec() method all others use ## bpvec,ANY,BiocParallelParam. bpvec() dispatches to bplapply() ## where errors and logging are handled. setMethod(bpvec, c("ANY", "missing"), function(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) AGGREGATE <- match.fun(AGGREGATE) bpvec(X, FUN, ..., AGGREGATE=AGGREGATE, BPREDO=BPREDO, BPPARAM=BPPARAM) }) setMethod(bpvec, c("ANY", "BiocParallelParam"), function(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) AGGREGATE <- match.fun(AGGREGATE) if (is.na(bpworkers(BPPARAM))) stop("'bpworkers' must be set in your backend to use bpvec") ## pvec parellelizes execution of a function on vector elements ## by splitting the vector and submitting each part to one core. ## This is equivalent to saying length(X) is evenly divided over ## available cores which is the (default) behavior of bplapply() ## for SnowParam and MulticoreParam when tasks = 0. if (is(BPPARAM, "DoparParam") || is(BPPARAM, "BatchJobsParam")) X <- .splitX(X, bpworkers(BPPARAM), 0) else if (bptasks(BPPARAM) != 0) bptasks(BPPARAM) <- 0 ans <- bplapply(X, FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) do.call(AGGREGATE, ans) }) BiocParallel/R/bpvectorize-methods.R0000644000175100017510000000061512607264442020455 0ustar00biocbuildbiocbuildsetMethod(bpvectorize, c("ANY", "ANY"), function(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) function(...) bpvec(FUN=FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) }) setMethod(bpvectorize, c("ANY", "missing"), function(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) { FUN <- match.fun(FUN) bpvectorize(FUN, ..., BPREDO=BPREDO, BPPARAM=BPPARAM) }) BiocParallel/R/bpworkers-methods.R0000644000175100017510000000015312607264437020140 0ustar00biocbuildbiocbuildsetMethod(bpworkers, "missing", function(x, ...) { x <- registered()[[1]] bpworkers(x, ...) }) BiocParallel/R/progress.R0000644000175100017510000000162012607264437016325 0ustar00biocbuildbiocbuild### ========================================================================= ### progress bar ### ------------------------------------------------------------------------- ## derived from plyr::progress_text() .progress <- function(style = 3, active = TRUE, ...) { ntasks <- 0 txt <- NULL max <- 0 if (active) { list( init = function(x) { txt <<- txtProgressBar(max = x, style = style, ...) setTxtProgressBar(txt, 0) max <<- x }, step = function() { ntasks <<- ntasks + 1 setTxtProgressBar(txt, ntasks) if (ntasks == max) cat("\n") }, term = function() close(txt) ) } else { list( init = function(x) NULL, step = function() NULL, term = function() NULL ) } } BiocParallel/R/register.R0000644000175100017510000000261312607264437016310 0ustar00biocbuildbiocbuild### ========================================================================= ### .registry object ### ------------------------------------------------------------------------- .registry <- setRefClass(".BiocParallelRegistry", fields=list( bpparams = "list"), methods=list( register = function(BPPARAM, default = TRUE) { BPPARAM <- eval(BPPARAM) if ((!length(BPPARAM) == 1) || !is(BPPARAM, "BiocParallelParam")) stop("'BPPARAM' must be a 'BiocParallelParam' instance") .self$bpparams[[class(BPPARAM)]] <- BPPARAM if (default) { idx <- match(class(BPPARAM), names(.self$bpparams)) .self$bpparams <- c(.self$bpparams[idx], .self$bpparams[-idx]) } invisible(registered()) }, registered = function(bpparamClass) { if (missing(bpparamClass)) bpparams else bpparams[[bpparamClass]] }) )$new() # Singleton register <- .registry$register registered <- .registry$registered bpparam <- function(bpparamClass) { if (missing(bpparamClass)) bpparamClass <- names(registered())[1] default <- registered()[[bpparamClass]] result <- getOption(bpparamClass, default) if (is.null(result)) stop("BPPARAM '", bpparamClass, "' not registered() or in names(options())") result } BiocParallel/R/unix/0000755000175100017510000000000012607264437015322 5ustar00biocbuildbiocbuildBiocParallel/R/unix/mclapply.R0000644000175100017510000001631112607264437017270 0ustar00biocbuildbiocbuild# File src/library/parallel/R/unix/mclapply.R # Part of the R package, http://www.R-project.org # # Copyright (C) 1995-2012 The R Core Team # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # A copy of the GNU General Public License is available at # http://www.r-project.org/Licenses/ ### Derived from parallel version 2.16.0 by R Core Team ### Derived from multicore version 0.1-6 by Simon Urbanek .cleanup <- function(jobs, mc.cleanup) { ## kill children if cleanup is requested if (length(jobs) && mc.cleanup) { ## first take care of uncollected children mccollect(children(jobs), FALSE) mckill(children(jobs), if (is.integer(mc.cleanup)) mc.cleanup else tools::SIGTERM) mccollect(children(jobs), FALSE, timeout=4) } if (length(jobs)) { ## just in case there are zombies mccollect(children(jobs), FALSE, timeout=4) } } mclapply <- function(X, FUN, ..., mc.preschedule = TRUE, mc.set.seed = TRUE, mc.silent = FALSE, mc.cores = getOption("mc.cores", 2L), mc.cleanup = TRUE, mc.allow.recursive = TRUE) { env <- parent.frame() cores <- as.integer(mc.cores) if(cores < 1L) stop("'mc.cores' must be >= 1") if (isChild() && !isTRUE(mc.allow.recursive)) return(lapply(X = X, FUN = FUN, ...)) if(mc.set.seed) mc.reset.stream() jobs <- list() on.exit(.cleanup(jobs, mc.cleanup)) if (!mc.preschedule) { # sequential (non-scheduled) FUN <- match.fun(FUN) if (length(X) <= cores) { # we can use one-shot parallel jobs <- lapply(seq_along(X), function(i) mcparallel(FUN(X[[i]], ...), mc.set.seed = mc.set.seed, silent = mc.silent)) res <- mccollect(jobs) if (length(res) == length(X)) names(res) <- names(X) has.errors <- sum(sapply(res, inherits, "try-error")) } else { # more complicated, we have to wait for jobs selectively sx <- seq_along(X) res <- vector("list", length(sx)) names(res) <- names(X) ent <- rep(FALSE, length(X)) # values entered (scheduled) fin <- rep(FALSE, length(X)) # values finished jobid <- seq_len(cores) jobs <- lapply(jobid, function(i) mcparallel(FUN(X[[i]], ...), mc.set.seed = mc.set.seed, silent = mc.silent)) jobsp <- processID(jobs) ent[jobid] <- TRUE has.errors <- 0L while (!all(fin)) { s <- selectChildren(jobs, 0.5) if (is.null(s)) break # no children -> no hope if (is.integer(s)) for (ch in s) { ji <- which(jobsp == ch)[1] ci <- jobid[ji] r <- readChild(ch) if (is.raw(r)) { child.res <- unserialize(r) if (inherits(child.res, "try-error")) has.errors <- has.errors + 1L ## we can't just assign it since a NULL ## assignment would remove it from the list if (!is.null(child.res)) res[[ci]] <- child.res } else { fin[ci] <- TRUE if (!all(ent)) { # still something to do, # spawn a new job nexti <- which(!ent)[1] jobid[ji] <- nexti jobs[[ji]] <- mcparallel(FUN(X[[nexti]], ...), mc.set.seed = mc.set.seed, silent = mc.silent) jobsp[ji] <- processID(jobs[[ji]]) ent[nexti] <- TRUE } } } } } if (has.errors) warning(gettextf("%d function calls resulted in an error", has.errors), domain = NA) return(res) } ## mc.preschedule = TRUE from here on. if (length(X) < cores) cores <- length(X) if (cores < 2L) return(lapply(X = X, FUN = FUN, ...)) sindex <- lapply(seq_len(cores), function(i) seq(i, length(X), by = cores)) ch <- list() res <- vector("list", length(X)) names(res) <- names(X) cp <- rep(0L, cores) fin <- rep(FALSE, cores) dr <- rep(FALSE, cores) inner.do <- function(core) { f <- mcfork() if (isTRUE(mc.set.seed)) mc.advance.stream() if (inherits(f, "masterProcess")) { # this is the child process on.exit(mcexit(1L, structure("fatal error in wrapper code", class="try-error"))) if (isTRUE(mc.set.seed)) mc.set.stream() if (isTRUE(mc.silent)) closeStdout() S <- X[sindex[[core]]] sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE)) mcexit(0L) } jobs[[core]] <<- ch[[core]] <<- f cp[core] <<- f$pid NULL } job.res <- lapply(seq_len(cores), inner.do) ac <- cp[cp > 0] has.errors <- integer(0) while (!all(fin)) { s <- selectChildren(ac, 1) if (is.null(s)) break # no children -> no hope we get anything if (is.integer(s)) for (ch in s) { a <- readChild(ch) if (is.integer(a)) { core <- which(cp == a) fin[core] <- TRUE } else if (is.raw(a)) { core <- which(cp == attr(a, "pid")) job.res[[core]] <- ijr <- unserialize(a) if (inherits(ijr, "try-error")) has.errors <- c(has.errors, core) dr[core] <- TRUE } } } for (i in seq_len(cores)) res[sindex[[i]]] <- job.res[[i]] if (length(has.errors)) { if (length(has.errors) == cores) warning("all scheduled cores encountered errors in user code") else warning(sprintf(ngettext(has.errors, "scheduled core %s encountered error in user code, all values of the job will be affected", "scheduled cores %s encountered errors in user code, all values of the jobs will be affected"), paste(has.errors, collapse = ", ")), domain = NA) } res } BiocParallel/R/unix/pvec.R0000644000175100017510000000356012607264437016406 0ustar00biocbuildbiocbuild# File src/library/parallel/R/unix/pvec.R # Part of the R package, http://www.R-project.org # # Copyright (C) 1995-2012 The R Core Team # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # A copy of the GNU General Public License is available at # http://www.r-project.org/Licenses/ ### Derived from parallel version 2.16.0 by R Core Team ### Derived from multicore version 0.1-6 by Simon Urbanek pvec <- function(v, FUN, ..., AGGREGATE=c, mc.set.seed = TRUE, mc.silent = FALSE, mc.cores = getOption("mc.cores", 2L), mc.cleanup = TRUE, mc.preschedule=FALSE, num.chunks, chunk.size) { env <- parent.frame() cores <- as.integer(mc.cores) if(cores < 1L) stop("'mc.cores' must be >= 1") if(cores == 1L) return(FUN(v, ...)) if(mc.set.seed) mc.reset.stream() n <- length(v) if (missing(num.chunks)) { if (missing(chunk.size)) { num.chunks <- cores mc.preschedule <- TRUE } else { num.chunks <- ceiling(n/chunk.size) } } si <- .splitIndices(n, num.chunks) si <- si[sapply(si, length) != 0] res0 <- mclapply(si, function(i) FUN(v[i], ...), mc.set.seed=mc.set.seed, mc.silent=mc.silent, mc.cores=mc.cores, mc.cleanup=mc.cleanup, mc.preschedule=mc.preschedule) do.call(AGGREGATE, res0) } BiocParallel/R/unix/zzz.R0000644000175100017510000000316712607264437016311 0ustar00biocbuildbiocbuild## compatibility; used in mclapply, pvec ## lazy, to avoid caching stale versions children <- function(...) parallel:::children(...) closeStdout <- function(...) parallel:::closeStdout(...) isChild <- function(...) parallel:::isChild(...) mc.advance.stream <- function(...) parallel:::mc.advance.stream(...) mc.set.stream <- function(...) parallel:::mc.set.stream(...) mcexit <- function(...) parallel:::mcexit(...) mcfork <- function(...) parallel:::mcfork(...) mckill <- function(...) parallel:::mckill(...) mc.reset.stream <- function(...) parallel::mc.reset.stream(...) mcparallel <- function(...) parallel::mcparallel(...) mccollect <- function(...) parallel::mccollect(...) processID <-function(...) parallel:::processID(...) readChild <- function(...) parallel:::readChild(...) selectChildren <- function(...) parallel:::selectChildren(...) sendMaster <- function(...) parallel:::sendMaster(...) setLoadActions(.registerDefaultParams = function(nmspc) { tryCatch({ ## these fail under complex conditions, e.g., loading a data ## set with a class defined in a package that imports ## BiocParallel if ((parallel::detectCores() - 2L) > 1L) { register(getOption("MulticoreParam", MulticoreParam()), TRUE) register(getOption("SnowParam", SnowParam()), FALSE) register(getOption("SerialParam", SerialParam()), FALSE) } else register(getOption("SerialParam", SerialParam()), TRUE) }, error=function(err) { message("'BiocParallel' did not register default ", "BiocParallelParams:\n ", conditionMessage(err)) NULL }) }) BiocParallel/R/utilities.R0000644000175100017510000000336112607264437016500 0ustar00biocbuildbiocbuild.paramFields <- function(generator) { result <- generator$fields() result[setdiff(names(result), names(.BiocParallelParam$fields()))] } .splitIndices <- function (nx, ncl) { ## derived from parallel i <- seq_len(nx) if (ncl <= 1L || nx <= 1L) # allow nx, nc == 0 i else { fuzz <- min((nx - 1L)/1000, 0.4 * nx/ncl) breaks <- seq(1 - fuzz, nx + fuzz, length = ncl + 1L) si <- structure(split(i, cut(i, breaks)), names = NULL) si[sapply(si, length) != 0] } } .splitX <- function(X, workers, tasks) { if (tasks == 1 || length(X) == 1L) return(list(X)) else if (tasks == 0) idx <- .splitIndices(length(X), workers) else idx <- .splitIndices(length(X), min(tasks, length(X))) relist(X, idx) } .rename <- function(results, dots, USE.NAMES=FALSE) { if (USE.NAMES && length(dots)) { if (is.null(names(dots[[1L]]))) { if(is.character(dots[[1L]])) names(results) <- dots[[1L]] } else { names(results) <- names(dots[[1L]]) } } results } .simplify <- function(results, SIMPLIFY=FALSE) { if (SIMPLIFY && length(results)) return(simplify2array(results)) results } .getDotsForMapply <- function(...) { ddd <- list(...) if (!length(ddd)) return(list()) len <- vapply(ddd, length, integer(1L)) if (!all(len == len[1L])) { max.len <- max(len) if (max.len && any(len == 0L)) stop("zero-length and non-zero length inputs cannot be mixed") if (any(max.len %% len)) warning("Longer argument not a multiple of length of vector") ddd <- lapply(ddd, rep_len, length.out=max.len) } return(ddd) } BiocParallel/R/windows/0000755000175100017510000000000012607264437016031 5ustar00biocbuildbiocbuildBiocParallel/R/windows/zzz.R0000644000175100017510000000156112607264437017014 0ustar00biocbuildbiocbuildmclapply <- parallel::mclapply .bpiterate <- function(ITER, FUN, ...) bpiterate(ITER, FUN, ..., BPPARAM=SerialParam()) isChild <- function() { FALSE } pvec <- function(..., AGGREGATE, mc.preschedule, num.chunks, chunk.size) { parallel::pvec(...) } setLoadActions(.registerDefaultParams = function(nmspc) { tryCatch({ ## these fail under complex conditions, e.g., loading a data ## set with a class defined in a package that imports ## BiocParallel if ((parallel::detectCores() - 2L) > 1L) { register(getOption("SnowParam", SnowParam()), TRUE) register(getOption("SerialParam", SerialParam()), FALSE) } else register(getOption("SerialParam", SerialParam()), TRUE) }, error=function(err) { message("'BiocParallel' did not register default BiocParallelParams") NULL }) }) BiocParallel/README.md0000644000175100017510000000134712607264437015422 0ustar00biocbuildbiocbuildBiocParallel ============ Bioconductor facilities for parallel evaluation (experimental) Possible TODO ------------- + map/reduce-like function + bpforeach? + Abstract scheduler + lazy DoparParam + SnowParam support for setSeed, recursive, cleanup + subset SnowParam DONE ---- + encapsulate arguments as ParallelParam() + Standardize signatures + Make functions generics + parLapply-like function + Short vignette + elaborate SnowParam for SnowSocketParam, SnowForkParam, SnowMpiParam, ... + MulticoreParam on Windows github notes ------------ + commit one-liners with names git log --pretty=format:"- %h %an: %s" TO FIX ------------- + DoparParam does not pass foreach args (specifically access to .options.nws for chunking) BiocParallel/build/0000755000175100017510000000000012607610201015215 5ustar00biocbuildbiocbuildBiocParallel/build/BiocParallel.pdf0000644000175100017510000056424512607610142020265 0ustar00biocbuildbiocbuild%PDF-1.5 %ÐÔÅØ 83 0 obj << /Length 1183 /Filter /FlateDecode >> stream xÚíXKsÛ6¾ûWðVrÆDHðÝ›§N2‰ë‘Õ\ÒΔ"a H°$hמþø. €¢,‰²3éL§ÎÅÂk÷ÛÇ·XÂŽ±2ãâÄ9ð;[œ¼úÉó ì 0ı¸aˆpì!ŽPèÅÆ"7>›W–ë˜iö%]ËÆcþ>£<“«uÊa?X¿-Þƒ®Àp]”ît1¡o€ò;íªŸ3Á—¤–j\ÿT°ã†Á²Þ¬%!;M¶ú;,*³Vä›÷y,Œ$;ö<ØÑŽÚ‘)8%°Èq5˜›T°i4E8Òh]x™·à²røF’2*(iÔšÞ¬T,åŒX80o»?)kSAy9m±D[ü À@OÝì‘íEÈM´Í.ò‘3‰$ÎI“Õ´GpH¡j Åš6Úﳪšw9º¥¹ŽOÁsú«ã`’Ëùm·/½R'ÒRm•R¶?À:S . òpgnOK M‹Š‘‚”B†µå7*m™‰ê''GY¤”ñZ›*xo„³ ß6Ê×;*Ör´Ë¾üƒd¢AÇ’ž8ÛI_‚¦O–™”Ü5SÙð#Å®ÎÆ»ò¦NQƒm=]Jp úf¤lÈ’9¸‹«6–Žþ-ºïïœG¸ç¤"e>í¦‹×׸k¾+°íŸ”ã¼+*^‹I/A8î™›VPFã«©O·¤¦ øs7í³Ô:¶åºx†Ó¹.HIjš5š¦œ3=Š“4[«Ù,Ùú=_êÝÙ¬ Mv*‹ Ì{¾Øœsy©n97/*ª†€Ì šÍÓÌÖÛ—–˜g ùó<)z{9¿¼z–i²u=4…y“ÊÐq…ŠBR²«e­ûz ©š“4WóŒçdìîÜòó—’ŠÓMé]‹{FÔü lÕÏ­º×œ±TÔ–ô¯É+0D‘7ô‡3Æt^Ð|cÍ8žz\ØK›áØ›ºæõ[¸÷-W°ØgÇs¡im'gY-áríšÔ‰­Ø¯•,+Ú´Õî*K«ŠÝï®×÷Üm SB±+Þdk’·lߎHk±o™WÇÐä]Ÿí « ¸OéÃÈ».&¼–¡©›c0éj·"h\YŽ}Þ©f@óŽjõZ•ø$~l™ Tßîþ¾+|Ú@|­ 0àOzˆ'çn{»Öu—Ö ×Âeж!B›y§ªÿÆ 2^é¬ìÇ虤Ÿn\ì7¤Ø×Ôå-sÞåzº'F>Š“ä_*Opü½>¿a}†ÿ…ú þõ)+¤Ãk¾®ÔäGçª$BYKYNêÉRÃ(Œ‡N84]8®> stream xÚíYKsÛ6¾ëWpr’fL>;m§öÔÎÔc7®-÷âø@‘„„$TŒëüú.P%Y#·J/ÕEx-voX®°3s°ó~p>œ^2߉QÐÀO‚1b^à„F>£Î8s‡tô4¾:½ôØ !£…qlZ’ó¤NçWrRÝŽˆ?LTR¸ižT•Þ9ÀVÜš,—FŠ=hC=gM¢æ*©ùÈõ|2D#×ÇøØli¼8þ{´ 3†_Œ"Gé¡éÞ½8.a £5ZÓÂK(¢áR y²Xä/Z GÀª…”@Èn-°N …ÕBxDúðÓ=@~>:À¡¶§>ªtγ&‡Ç!>>AÞßù/# ïz.²öiöýøûá”ì­H®x:r#ÿVÚˆÞ¦Z*ñ|":¾C {ÃOñ^©ÑÏr‘¨õ —EÞî·ÁMö²ö›&¯E*߀ÜcÿÛ§`?i<¤û囊kpg¢‚/`Èp‚àAÜé~Áýž+‘ä¶î?Þ^ÞïRêüòyñ€#âÛúé%óVko,D‘9.¥Èó£…_ÊŒÿiwo•àa‚ÂeÍõ}éb<øc@Zz²¬#ú,F˜ùNZ Ÿ°“Áâ°cqä<·¤…ã`ê1èçÎýà·“ãÕb¥‡W‹•£À#ŽO \Æ·•H!Ó[0¡<ç¹»HÒÏÉŒ¯U!=¯Ç„¢8"ËB&l—eÖè´näRpøi’Š\Ô‚WvÜ-@Òš«–dfÚøý%É›¤²l¥nGÇ(ðß„Š)Õz[Jµ^!Ú¬ˆW©‹¥ô-VЫö‚‘Ⱥáx.ÚK†Ã83P²½˜È¸].d&>bLy¦ÇÁФª¹–")3Ó)ÍÞ– 7S¢Xä¼àem`jçäÔ´Ó¦LëŽMЭ¤–@‡4Õ<ÛOÒÆÕWm# Aqg-룖:9¤.™IÓ67gQÏMoSùrò 2ü ™ xß…4zºt aÁׂª<^¾=¢Nefç¦Jö"s¾ÃY×}…Qᥙ/áÜQŸ÷(Ø×ÊŽö`'[‘ˆ"íÃq6Ò7¨çR}Ä>®à‡ühÎZßA8„Dª¯ à¡y1,ḟ7‰Ã%·©âO'úÓ „5U‹ÒÒ g#Ø^ZÒ¤©;ÒßG„°.H¸Yý0áe:Oºý–x‹é݈tÞE„뤜™^Ç\÷ï^’ÒôÆsY,*Y®Ð,YÈ bËry)‚‘m–ÚBO¬¡ÇßˉŸ&«Û}ˆ,?¾³h1‹ÐoÉ!!@#ëÿ)½úÒ®H~Q&“œo†jñuvÀ¿m;YšÂ‚êrð¢ÚF€eô0œÒnÐW±%Á°›‚x’™™6ÂŒŽ‡ï¶„¡Wº«2rÑEc=( M‘”`f™™œ‹ÙÜ]p¡æSË&»nÀÙfÝašjkœÑûEׇjý!­]·­5„úf¥cÓ³TŸá'&åJõ:âJIU™™L3¾{¸èhrž”Íb˲¾"H‹AvïžZÊ„êm™ñú9Ó'ÐÁѲ®j¹@²4èQ_ž]ßw¨¸†eñׇëë~4 ºÊJ6*åÕrsYN§B{Ê+ë :ÐZy™wʵ†¤a²«I¢^Cñ“œ”`}½åwç·WÎßY „Ыïøå_V“è endstream endobj 165 0 obj << /Length 2754 /Filter /FlateDecode >> stream xÚ½ZmoÜ6þž_±è'è²’(QRq.¹&½NZØÎ§ö>p%zW^¶¢7ýõ7Ã!µ’,¯íÜ!0°¢(¾Ípæ™gHû›ýÆßüôâÕÍ‹ïÞD|“±L„bss» |ŸñHl᳘‡››bó›÷Jöùám»Ó¿^±';YoóJj}ñŸ›·ß½áñ¤ä –ˆF7=96yáÛé m4i»u·a‚•ÔåewøÞ~¨UÓëY÷å–îO—žn¶AÆðǹk»ª›°ùm…aâ•M¯öªûÝý~‚A‚Ö–ÅN÷C½Sݬ4ôÚ[|rï ³àg2û–žEyÆÞ§²PÔ¸—ú£m‚Ó*¶gßâkê©J‘¬æcÙØq¶ãï¾vº§Z ÊIA9[\1(0ciÀAì€eqL+ű qá:\3-qÎÒT8±vÇJÕçp;\C£%3êNõwJ5ìbÜû¥¡ÚwCÕ—yÛ)z•MA…ëëc!öv2'E5…FÁ3±ÔÔªP·øM ššƒ„ g OæʪºØò ðäEè{ŸPϲ¬ä®RXzM[(ëË"³>lZËFîUA &ÀCáéjèjSN¼ëŸ^“¨Ø)¯Ý[Z¨1Œð“Ô©gblK5‚i'£g‚AXƃl.!I¿´ï€Eâd/W&Ãw-P"°ŸZɦlöôÒdïJ¨-0©ÆZ6V¢eó5ËÆJõç +=ëÍW{Sý 0îk¥¬œ°ú0µbZuÖlLvÅT¡9i–†æã*æ„°£ŠÁÈåᥛ=ŸŠW÷!Ãgá©§™` XÓ‰¦x6î9ÚøÓg,MF·Óî.{DÔsÓÅ —?*à¶Eø‰}¯&/ƒRÙ@e-û²wœ4›| Áü€–ál,GPgªëÚû $à U»/sY=$ßTì,È|ƒ‚ø,øO]6Š^Üði0g[•d`Tw;49J¢é§ÕÊ~Cg}†®3Á²,[ø‡T½v8ñÝA©wÎU‚ßsUƒ)eO¥»²?PIZð1J¶Ušžºm›yMÛXøÂÅ‚âQTAQ߃ÑÜPªÉåQÕ¤¥ñ@캤á/VKME Û_™¡ø›ŒƒÑúî¬Vƒ”‰`仪Í?Ú)ïe~ bß•û=ŒÈÒMe§4 •k•ÂtM¯Î0^206Üí(sã6»Ëlt Ø>-&ý8E±¿Æ‘`< ÿæêÃë5÷€b86:ï¢AÄŹ‹V€ÝÃq•Â<ß;GG¦wJöʾôª>¶„í$·-;•÷mWºïÎq÷W"S²4 §ÁÁ‘Š“B€øÞÏk4%à,óG;›(b1 qÊhé”È+x”xZõTXÝC³”?¶‡!‡ž"ƒ?‰á¨xfaª™î°BvöK§ê ô'ü1\*o»¶¶kt# ã«lYR»‘ï‹æb D Э?_ˆ•+|à3¤Ì’-SZÓE–2Ÿ;øæååõª2RPÆH0³B'PG×vºÜlq§òÖx3”•+­¥ÙŘçЗUù·å h¸Q/ÈBƒ³`7žzú¨òRVôâ"‡¬ÊÞ|ϼcGšú]P£í9z((Nbïæ"ªCß:`4‘ˆji_`PØG¨Ý—aTŒ;/|ƒ¤OÐ W­,®”ó ”Š›‘? ˆh:X&0ñ_|u6h-á,î€K†Q:éO‡#-0îdÞ?’=q€žxôßÇõÌr$Ý•Áª‰6é© ‰ç‰ðÞ·½kfø+•Lò€wpÙÑζҰDUŒ®’$ W‘y×jì€8m}zIöƒU)åôµ¼¥ªÏí@ƒVT#é½À+w˜ˆ =ÚÚiLCº±é$õ1—MƒÌ,J _ýbó¡ë(¯ƒÇÎi‚Ùv›×Õ¼/–#Ú]­ñh–¥á${À±ÎGÚeRä³àÄØ÷(gé4Lè‹§…ÇPd,H²™™‚ùP_¢WK ûeAòÆÄ 4¥,3L3ï2M•¦"oÓCÞ°Â5Φ¬ ?àÖ¶%NX4RÕ¹D€O‰÷Ãô|ˆbø‚Ñœ¹»çA£(š¾K!îhmÖžÆÌ‚D†‚•‚Ȥñ@Ð%¡óÔ‚)YË’ƒ %J +Ï1„$d ­!VoJKˆ“ÅAÏåƒXˆp ú){ç0FÙS¬AÞ®è“Ö°ŠâÔ\½ÿ‰QÕõs¼&ˆ2&NXËê‰!MÓYvˆSSvHë¶l!·&‹C”IæøŒ ²&§3ˆ——kÛBô–àòUI2g$=_Šq>‚ºC«•oÃÑE:» åßOÈvƒ4f"á3¬€T : ÷bšÁ Ð6ÚÈCâcöîº4ðÌ… t ",¸ UZ‚±+§§YÍç£ÔÚ˜p\O=<ˆÏøóNìÙà‰k‹8™ï2.cu—!ÉK¢ð‘]†@Zá‹Ð:Ùí1xM´`¢•B 5ã¾/¹LÞ6Ø`?t6³5¦ãF…\œßþD˜86óö¶¬ÔÿÑ|¸úÖÃHxJzä@FŒmCy’p™O÷äâ'®åÁ–‘¡`ç_†ŒæÃhùë¬æi,:*=уM²N[Y•nÝÖLÅœD ÈÙ‹êÜ–Žï|Z .áãnF,ޏK͹,;ñƒÑBP•5‡Ño\ÿkôÛ[CŸ¡T2óe|·“R› ¥£¯ƒ¶lLX½$tMïÖ°¨ÈÔôí›'-¸ý˜´„Ó¤YYô+»ÆÎK!—ç ü¾X˜ ô[5›0L›M˜Kàç6µEAŠñÝâ9:nËÌ’'ªž ~uô÷e¦wòË ŸÌ2ÃR¯‡#NaXð#K  à&Â7îát¦špK(->'.‡¯æ¶ ;E]«ql›šï ¦:èÞýïÈq–Ë%_ræe}‚i#ïÚÑ¡×3z\Â[ ÎayfTS²Y$” éˆPóê¾l¬ ´®¡íÑ=dtT†í¦]rAÏ+ûu’¹ú)hvû0`ßWºy~óê×·¿¼úæ fÌ5Ç{Gï|YåÔAN71úÛYÎYÙ¬²iû)°“-ot³ˆ–¦,ôùôÜín}sƒÛÝ Û4ǜĚéÀÜáÝVí¬éÆÈt€ZZáwö£¶WŽöoïŠR´#t.XÚˆn—â°J:ꫵ‹èK=¢ S¾Sý¡-ôèÈÈÅ! ݶUÕ¢Ôwti¯Õ•¹¦tN Õe}¤+i;ø¥±…£ê0o fÒö+Ú|8µNLüã.îq÷À4PùÂÎ,¼ƒªŽk÷G¹Wß?ãÀ!‚ ”œ.zÖîü—´8Ò:9åxò\ÑÔ{vGÝË®?{¥‰ì ' §µÇ³§(Ù4ürJ=|•y:©¦ø{d§úÇöì¡„q’…Öá" ÈÀéL¨Ñ.Ô<ÓùÞqVöLåR6{+ KŒ (Š-®\´ œÌ§–eÕ·ß×f¼ Fúç«X¹Æ¹‘y}óâ¿uÍ endstream endobj 2 0 obj << /Type /ObjStm /N 100 /First 798 /Length 1861 /Filter /FlateDecode >> stream xÚíYKo9¾ëWð89 Å*²ø‚& ¼;‹ °sØÃYîuËjAMfý|Õj=ì¤;ÒÌa6Ev±ø±ÞÕMÆ1âM4)šbˆñç ò†]6 û`(NX̆s4LÆ3˜Ç3ãc1Ï΀C ¬8tÅ› É€*Ä`|2â°7ß@F„FàYŽAf¢Ã¬˜¨œ‰`rxLâ`À/%pÊ&;<'“½Œ"›¬{Ådp‰¸ a(¦€ur¦d6Éãn¸] :f“#NÀ͉rS\ši”ôÖz$d! õú~RŠÎ@”[( P¹ü#2Tp˜J€"dÇyTÄpÀF,±€°4 iâzÂ+§ã:žHU °s*â¬À½ñBŠbŒ!òT¬b.ª5—LpޤèUÈÌØ©º%.<‹ëâ‡è ´À›ú ʺ ¡©xÜJ‚›ø„Ⱥ¢ÊLº"&$Òè-E]Á®ìtd½€š42"5ˆ•“ÇEeèU¿˜°‹S-@WBz O‚×+Ø– r–¤@a’ƒÚ(v•Ä#Â1Q Õj#ýƒöª6XLÀ$ØDÔ°ŠÜ˜x‚y4ݧx&À¸.AUÉK½~mÆWfü·úCmÆïÌ—ÿYØ7³zú~²šÌçÕÜ^ÞMÖír2}˜ÜW–^™Ÿ~ýpJñcûìÕ×yM6Óÿ¨o×JþØr›Î'ëõ׊›g¯¾‰«›Ýs¢>Ž·ËÉýýªºŸlW;YêÚ3ÛT«';Ú….úùd¹œÿ~$ßÍ»¨ŸQ?öR×GÊú¡‹j=ýXÝmç'÷+];þ;™Ïîž\r¿Ò¹£šžWÓºM½šý¯zB½[úúžwõr²êTøñiŸ¦ÝÎ7³i½ª:ù<¥èã똭¡òýÎýüëÔWÕj6é¶×“Ç}g^-êOÝ<ö»8ÌwÕgëvÔ¿èä šk¤ g.Íøb¶¹Qº×¯Gã¿/+3~ïßÖ‹MµØ¬‘Š”p4¾¬Öõv5­Öšš•_«»ÙäMýÙ\;MºE,#äå@6—›ø¬ÀYkGýóbQƒÝµ&'=¹©òn(Íp3z¥Ù3_mo7ÍüŸ³ÅÃhü¦^ÝU«æPw3þûø—ñÛkj&Šrº1×â¢mrWH6!‡ yër+m(t?›çB[jÀãFfÃbð åˆ!`ˆ.ö6!©0x†Ò!¼"‘´ØYqÜ!žb8±Øýû7ÔÖC¯)yPf,¶óùM)Jm`+HÐCÓ¢P²eÉÚ xOs« Ô‰9µ®æQyåýïlŠk~cËøýªž^UÜïÝ…¨>ož;Ã3¿$â玩eÇ÷xfÞÊͺ)»Ë–»–Ý%ÊÙ¹«–w»‘Ú‘ÛÑ·chGiÇØŽé%Ü=y²!…ƒ‰¥1u›XÒÌÉ¢MËtGOKœ­ ¹Ñð\²Ž'"Pê‰8ăc@! oOG ÎÃÛC?<†ÌÖçcĉ…,º— 2<†ä bIJí þ‡‡ Éæp4It 6æ>“Þ-b+ñh’QIz’ ƒ÷Ö—c1€nÜRè+†wÍÈø¡"›SO„âpM—Q ð%+}ÅoRPˆå#'Ô©‚ÞÐr[}´Ç £ô˜¤Þ$jã*Ñ"QkúUÁ‚Є¢>a#Ft,%˜€ì!üõH­­É²í¶ŸUgšÏ-ÏžÐîë(ñÅê{¹ ÆX$ŸGŠCò”3‰=8Óy´>k ~-£¦ÌD/A,„Ê6üŸø/EŒ:5:>˜2}éT'ýÆIô½¨ß7'ˆ¾l¤ý €0‰ßÕŠDù¢‰þ»Z}_ºëÚN#´óÐÎ¥í<¤í<¤í<¤í<¤í<¤í<¤í<$µcËOZ~±å[~‘‡ìP8G›õÕmDIê Hƒ–‡ÞöÄÚéÇíâa¸ˆï½Vùˆr]|Åz{û8Ûè;Ûá Áò´0L‘T¡À>£ •N(‡·©ÃeÁ ši ³ŒðÌÑ7x¢gôLÝ@6«1TärÄ ÈÀœÒ71Ü.WÕzûX „еÁHŒh¹OchC?i¡X߉c^Oî.›—¢C Å£6ЬTµQ†±fÔ%Z+ êîDs_m>Ý £d›Ù„è ƒØŒ’‹ ¨ÔŠ('Õ È2ˆˆèŽ,úe ‰#4¼ØbíOõ`½0%ý†L& ó¢ŸòØ:¡¼oõåùÅv1ÝÌêÅ€€Bp„`‰š úñ«ØÂÜãFŸêÕCµ jé¬ß[(ÌÐ[9Êz3YmŒn0”˜O€ ¼I<H½Ç.Â`À©‚Êç›0fëírH›EíÄ>dä½pŒÛÉô¡ZÂÊ)CûO endstream endobj 189 0 obj << /Length 1381 /Filter /FlateDecode >> stream xÚ½WKsÛ6¾ëWpœ 5 ðá©¶cwš‰;n¤ž’(–ØR¤Â‡í\òÛ»xñaQ©œ¦¹H ˆýv±o—ØZ[Øúuv¹œÞxÌŠPäßZÞ[.ÆÈ£¾ø1XËÔú`Óù§åÛÓê z.E>F¹ÌÊänî2;®â<ç¹Yo$ëZÌ°Ö *éÉ1P Ħ\p>wÃöE^—#ñ†â¡å¡å¸!òC%¿æÍ•Ðü3|"­3– «N`ÛU·_Ÿú(êou_Vʈ8M³&+‹8WÏ;®_Ë;òi? Ír ¤ã2D\m]Å×Y-Ä÷M @ö,¨¸ð¨’ÊŠõ·ÌPd[kOfE/%<¡žøœ0ûAüÄy‹KêkŒƒäciˆ 0`ʸë§x»Ëy=žÉp…èÓ.\„‹*¬ÝÜaÛ¿8êÿ2n’ÍÛrUËp‰ îªr]ñº^ÅÕùÍŻŵ ! ;.F‹Òj—Ç»]þE¹g.~­ëÏU£——wwï/nÏwCâ¢È Ä«Wêàïe£U[œMé2k‘­bñ­ Þ4úIÆ@,†ù#žùYHoOÁÞ·E=öÇ6þ›_å­ˆþM[$B°^¼ûóý­ÌﯧuÞV[Ô@8NùE&Ë¿y™j%Jº7ÊÎ…M‡ M:Ë8i¨—ÄÆhÛ™”íB¶¢pìùë"RÃH‘Ùõröyæ‚$¶ÜŽÙd°+ÙÎ>|ÂV /yQh=Ê£[‹º. €í°•[‹ÙSZÒ瘄à²>u-†CDM™ì±Ï$'R:Â!( ]pü32䨲©’ìªx¶Þª‚.Wñ¤©{€†ò}‰T£ ‚²ßU¾áuRe;“Ö0fÛ1e/7|‚@áÆlÔg†¾œ`Ð0€wYÕ´Š·‰bHµ¬›²âzˆÔÃdÝVª$aÓëÉUÒ„JFüIlÉËOâ‡'­¢Oèh}UŽL\(`~øƒìe:%’Š Ž ìhWo‹ç¬€ÚK'= "¸kN‹¢|<äJQèuMäõ˜4î›·mÞd øãž¡À ÆóÊ!¼¨Çs(…4.Ò `(Wâwªß”àýC¨ÌC¡Û¡NÃ9^!ãx, ©ÆŠQô 5Ù"¨öè›jhâ,¯¿cx92Ë™glÊDކ¾ÝlD¯Ù ëawËV&ÿa)ÓN>n²d£·@¼RËád!ÞhN‘«9©"ËSÈtꆢn+/˜ÈÖk¦²_Ù9Îþ²Ð øª/€³c\EE5A±—™(Ml§Ð¬ªL]£á©2cË·eõERåvµ cÖ9ZLzˆFì»*JVoâê¿Û£¡GöW‘{ö$ž¶¹1I?ʦoÖ2 –½göóXfë˃¤ðFQõô™°úóùùÿ«´gpa ‚ažŠþæxºèâò ÑtÅ%ÞmÊ. U~Xæy)¾!zcʶ\Q6Jú„°ç“îЧ0'÷ݽcr1Òwcü9JtTÑ/Ò6æèŸ¢rÿƒëWÙ³ìOQ7àÔI}æ¾LþPÆ{ endstream endobj 233 0 obj << /Length 3321 /Filter /FlateDecode >> stream xÚÍZK“㶾ﯘÊIJY0^|­c§Öήc—¸ìqœª8Šâh¸K‘ Iíxÿ}ºÑøH£Ùø@ì_?A~³¿á7_¿øòöŧo´ºÉXËøæöîFpΔŽo’˜³HÉ›ÛÝÍ¿V_VmñÃZD«¼Ë뺬]ÿ°)ê¼ï×ÿ¾ýöÓ7*šÑ!’(^äˆ|ùï~|õ}€™J˜Š<³ª'Êy€¢ˆ â9¸3@ù‡ö‘0‘(÷E»}[ ÊpÁi#3Á¢,Âê2+Ãíñ¡íÞ•]ÿ+øoŸ¬7‘ˆWŒ1x!€Ëý“À†"ÆSí&üOÔ_¨ƒ´¤G]Õ å¾ì¶8C1’L¥^¾m:ÎÒÄÓ,îAîÅ@TÏÕ,ÉüÙz£T´úºÌ1§Séª9¶eG}b ‡áË¢ˆ4ù¡ÄOµZµwØjK¶#Äáéa-8Pz‡ 9ótuë&÷å0~@¡²ûÓñØvCi)ܵöýO Ü«:½Ï«ïOõPmWŽpý|¾ô¶©?¬ãhu…2*¸ ;„ yÿÎã#ÉÄ|$ ‹Er }`h29¢o¤m(òÚPû>¯Oe€ ZH­²K(LYég Pg,SÀ$:FÀÀùeBÚÌé㈙ug_â–,–dv5™‰9a%ÑÚ˜æm»]kN'´Ø†–°Q·ªsâ)ã™—ùáÔDw[N؈U_äu¾«ŽQ(œ}iWóÅçÔòïun‚±ÚûÓ¡lú:?몴¯‡6°t©4Ë¿,@óÃ9ƒ©Ó©Í@€?&·Q‘bôg¢uà é&{s…ºðYh©0éMÐ_ÚcÞ£ÖŠ«èòRÁaÄ<õ#ŠûoÛmÕïó5ô= š ©jUG]² =À tm^ÜÛY-µ» 缯v @ŸKçR«š½sw¦AÒó¡u¯²©m±–á—uÊÍ2¾Ú•¿r.û”SC„ñ¹Ÿ÷°‚ÚNTÖÔ3{H„›twjŠ¡jûÉÉl•hŽP€‰ÅhWjDè‡ãM.»G©&„çnFÚ£¶ TXß+»°Ô«ìæÑhСd@\ðìPÜÉõfËJ¥dOTê¾[ÚQ4 eÿ ùjˆ„ü„… Y0-õŠûSó}U”èÕ/÷eµTL¦~»dã6q¯>ÿœZRP…Ì  ð®¼CHå ¸hŠC 9pºzcÆFÁ&<òÑ‘âÀöÃL|$v•.Œñpòí!ìo”pæÐ¨É¨zð´«ú¡«¶¨·§¡ S@Ô$²‹[J˜NÄ诈2ÊËðú­:äCY ‰¯ÊÿœòÚÆÅöôÌDqœÍ÷ø*°&ðK㊼ÇZz–„EŸù{°ñAK’V,V_Ð#§§]U ù`¢%¤( †‡v0ë…1/q&’€r†¸çk!„ác‰yC³»¼Ù[æw]{ AAFVÆ’ÙÇ;V4;Ö—O!J½Ç"¯Žò0‹¹H­åô†ìjÆ£2fmšÈÔe³î=äxQÀQЧð"§zUz<–uIJ~–~œ²4½ž¼Û@îð~‡@¸+;ÏåñÖ-%”™^8mcaÀ39x@Ç‹D©ð’“”é1D/YŽ>Ühª¡Û÷ŽU>gªF * fhªOƒV¶Øó²¥oŽˆC0GO­T/WÚ{²Fܰ¼<´"gÉ"–$ñÜŸ F0¶RO*z ¾LÍL*ä Õ¾ÐjzGÑêUÓ‚è:zUä}I½³Ý°£µŠŸ·„‰­1+™¯h>ø`ð„½SoB›ók)͹=V•Õ yyÊÄí²\Lò™µj¤ÒÉÄ‹$Ö‹$ÎEb7ïì<%íè]”™z‰Î.rê‘¥§~W§ @ØUÎwõa´;œ&Lï¾¹}ýcèL Æñró×¥’±b"UËT²ònð¥Î/¥’ÃËK9^œßAÝî+%ŸÌñÔ´(*õ.¨_Xh—ÓB• š by÷¬„šÃÉ+†hC{¼N 18êË©îï$†öøl)WpÕ½cÛ÷Õ¶.¯ (¢KxTýÉËEóè’\ ÃB,ÑX„û±ÈL¬n×·—=Dd - ™@|0rÂÎX™4V Gm"‡f¬ªómm'›ä;Ö¡Á`¡|¹¶Œ"9fS&Â%3JåMÚžº­Ñ o6CÅ„LR&™ÍC¥•”ɱ~ã4¾·lM†Lƒ9X¢˜¾*Ó`¤÷€ùih!¼ÅMÔ,#TJâD•¥ŒÃÕ+°¤,Ž–ï£ô4TøBžÀÒkjª/•Fq—K_0«Q>Sê.",~a{¾ø39ÖU^bÍI»Ú&àÏ”º½!…†ÎÑ®ƒ%V°¶cìë:=ÍR%'Š¢U¼ú[;ŒÁ)lV0.K_î­©¡È>¢R¶ ]UšDΔ@vŸÙ8» F2%÷@êïÛ‡ïAAÛ)(þÁnágÎKð â’lÜÈUzc&ä( Ìû0·Í;–˜« `âõD"–´,Yb "Û³ˆA1¥“¢ýF e‹›œ£¸°ÅMnñ‚#Ó ŒS`ŠÃeCæÌŒ™âoƒÓFLtÑ•[¸s*Ý:Š‚ÅÎr…±Žy¶Ú‰¡Î¢Ú9…P®(Ä£Ê\ë ôó !Ð(½„ÆÛv‹××yûT³8U—P¡Y–Nl씺µ!ÀÀØhÏÛ=-Q¾¤À Â$ÓºaøJ!2='–ùÕ¢È2&ÑBKÅx”Ç×ÝZF… ¢ÏºLPÇåïq+¨¯»Œÿß.cI——‚Ö•AŽíxusý”ÉÑê)““ŽàújÁ™mM޾hràýå{Â4 Ågç4ò‘׉ãÕWx¡ÜÖ=Ù" P±-ÍŠ©™™¦$“´¨âùi?,âXŸYQi£r¥š¢=ër(ý´þT}Èñ%#³« D²’E™wC;àЪƿÒIÈ)!&p;ÔSBÇo&Ð&`p² $B›€ ­#¦Æ €;àçʾ»ºÙ†nüùuèС+'. e¾²Õ}mÄwrNšWfð*†òp$Éâxc;íi€OÜçÍWîÓmk6=/’DB ŠàÝÉD”–ûÆUHÍ*g¥“ñ\åD,JÄçÄ‚×àÞ ¿yõÝO!y€3Ìx<•Gä‚1èXS*­™AWŠçžû…äv¼oÍÈdÄÓÀbBGÐÂ~Nò¾²ï,¸%]{"$ˆƒ±¨Ñ9b"[0–6uWx0”¡à žPo›Ö½1òC5Æà "÷áÞ}åZÚt&·4°-í X娛2Èôˆb©VfúÅ;X[ÂÓ_²=ûäi…œÇÁo‡ÄÕ¸oÚ‡+4!LÅ[3È M‰1°ÀYüÌU`%+/íñï±æ>ÆDê’¿€|qŒÃ»ˆGwù˜ù ä‚þÛóþ‚ƒL_Îçãñ¶í#ü…̦þBò˜ ÜUß óv-VF+¡ß›‚¹Ž8eZ/®ë¨èHŽÃÖÝþq9€þ]ákòáR‡f(FŸ—ˆÑ=àîÐ1¶;´ ÓÍïšÖöÙP×.'T½£ÒÙ‹f,ü&êœ ”±|yU¸Ö)¸…R’v´ÈœÕG¯4Z}|2¾D ±°ï4Ñ;g|´FˆNGú óC¦±³ª¦¨O;S2ÆG#>œHB1YÊ&Éøê禮¨þþLg¿‰µ½ÕÉYñÙ=2JH*‚Wà‹³ˆ{•œç*f‚³ddfŠìæÎG6õÚ¦0%=¹IÕŠ%Ëz³Ã¿´¿6AkðorÆ3J$Óc2w½#•î,è#…Nw2áÿB;TÐOÒÐd?ux1³ºÒz'‡?\Ô­«Íe Ó\Ícˆ1Pƒ9ñ‡GVÁ:R2.þÀc«Ìÿ—I’ÙŸ[¨–qýß—ó/_¿7®µ>™c ¥VQÊDMS+åÌ¡ûH©]L­À0_•Xer~Átƒ™&JÉ3S«D%ËÔj£S¾zs2‡ÍìÚÂüû`„áRH-3ø9KBnbèKêNÊ øHø€ŽUŒ¿…aD1ØÑCn‡xؘ[ka XfðÏÁ;CðØÓŸâ^³›If~©kÿ†ù‚ïË✢&ϧvþú …Ñé¢ îRµ 0›PÎ÷û®Ü‡i/ éÙëÛÿ¡ˆ­ endstream endobj 245 0 obj << /Length 1220 /Filter /FlateDecode >> stream xÚÕW[oÚH~çWXíÂT¦s·½RT‘-‰R…$ ¤êªíÃ`ðÊÆÔ6Mòï÷Œ=vp „vÙ]­"âñ0sîç;Ø™;Ø9oŽ[oϘp|äK*ñÌ!#Æ¥ãJŒ£Îxê|nËÎ×ñ‡·gœmd’!*ˆ)ŽLVj>Ou‡ˆö¼#Ú*׿N [EOŸ oë2Æv™Ó¥®Ù¬dÆjµŠ¾`Ïn¯Þtºã6BÈ®Iª{é<;¹º½¼´{£‹ÁÍåÅÙ'ãámßîÝŽúèª7èªMŸÂîéÍMoØœLV+•ªØ(1Ÿ¦Ã¿.aÈ'ne]T[÷ „ YZ)j+ GÑô]ûÔ˜Uïü|Ø?ïû'Ýùiµ²Ræ:…Lš›ãþpö¿ïbQ>s«íÞŠª\Q+Ô:߬:Ž|@ÍäQQr/túkYïÆ`p˜{U¹_,;]*pN—‹ ™ÚÕDGI‡ŠömšÍ:w4WÝ3Öü]Ê\Ädu,ÌJÁj‡@"æ~-0L‚ˆDéÈ<ã¢=h4{#™ü©ƒ=­fRÎçsHœD`A! [$wEƪ ?1ÈxnKÄ}¯¼Ôë€;ë|‘¤æj¶/_ lò@·‡¤•2PiÚ<tˆWBÝRËi¹øØ!„´U¤ÓЦèz¢—ÁB…K´Ëb£¦°ÖÖæHÛk½(K^@µf ‚došü…RñDü!ÏIÍk¹nEÞC\Ö•7Z&wunŸÓÌ¡~häÇi¼ZCÌæåk¼i˜åi8éP“m£ë8IJœ®Èõ¡cˆ@ž{<Ÿë(@ós)¢Ô?Ô±l¡Ò½þxIHó±ý9Uy°øL²#ùsæ ûE´Î”­{ÁBO×P×Ù¿ãÖû`öE—E óÃ]‚Z‹'.ýp]j]ð×=*zÙQOlù°L–Ý•Å×r§ <÷æŸÀ»d¹ P|†YTú÷*^E:Û‹' $ö@ äR• ƒç:ÿ-R™ÁQüjk¼ªàÕÌ\uõÌ}ýÚNVãžYèʦâ-3°gïjȱc÷]³_«Ýíª/¦X 벸×Ë (‹â­zfëI¦s;Ö“™Eaà:öRj JŶ:v‡(‚$û|ÙgØC@Um—ë,HÃUUÌ?8”Ç‹Š®<Ò–âÑì›ïEˤÙchfVÙ ãa¯oÏeª99òX¨Ýsß5„”7ûô6Ss}x“6ãÜG2Ù¬ý/Ÿ±þcÛ`Vu`Η*_§ÚR=oS 0Pî׬ð—lo#בzó )lʦ~í±}²!*a3ûB„øIÚn@€PÙtz3ì¿¿>‰€‰T,þ0Žb¬8j²÷ÅÚ8Œf`ž>,ÜÌGÜu÷‡ÛÀü xOŒ¶­Å,œgÕïá2Îÿë Ä (ìýaÑ{… û£/|„˜5úâˆþ Á´ø HU_Ç endstream endobj 270 0 obj << /Length 2097 /Filter /FlateDecode >> stream xÚÅY[ã¶~ß_aLŠTÖ ER·$St{A l²˜´(’<Ð2m«£‹—’33(úßs/’åÑx<éC±˜ER‡‡ß¹}¤él3£³¯Þܼúæ½à³Œd1‹g7ëYH)á"ž%1%g³›Õìç`¹“›Vó0 6ó(šÿzó÷oÞóèàKAc’Ä äšoœòŠº…`z0wÁÓÔL^pè ûÉW_Í¥ÁgaŸ•ê¶Íʶ׶¶ØÔ²Ûk§‚H•炈,ö*üÙM9\Y, ý„«þõº*Ú¶¨7Ò"A’,:%lf‚°¶†$‹âZ€éÑû×VqBˆk½ùtýîí—eÑv8þÂ~äÓÕõÕÇËån'µ¬ü(þ9ÄÅhùLH9;]éyHƒÍ¾Ru׎ð?~m…)‰S+çþÈv#;'1@Ø›ùj– q?a%;IÖ°™IŸÉH ?õõsöªd§‹û 9œž¤~º ‹h í\§Ú—’œtÈ0á$åƒ ‘ˆœ%^Ä‚øhTl…A³¶=k´‰Ì»F·¶¤š wÛ"ßNl9¤!‰âÄ žÚoBhÒO(œÜvWÝwÐf";xÉå²Tvìn«ê)K%$Ó—¬ôX²8ËØÄÍŒ4µuÂ3ñ¬¹¸MÚ«}Ú°< ‹˜3¬ôüÿøøwÎ5í=iŸ„A–ŒOÛG$lä Æñ'  =ú.&¦BI49Zƒûðx íûŸ~8Ù÷û:¶jwÍÎÃ<ŽžYÞ‰E,$ÙØuµ*puYºu!}¦}úô¹cÒM9¡|Ø…ÝòÑZ V&ÄyHbÉ¢tŒd[Tà$ëä ¿aÊÁ©:ÛDkÏC"z×½¹þéÝ”òÐdј­´­² ­ ×¶ýÛœ#(÷ªµïö&r„~˜=ƒl…÷KÞei.Ý¢Ž_(eje{ö¾p:ð¤3 Ùæõ#”cÎú{t™ÔZžÄ8ÎHÂÿP¶qNéªú Óšsϳ÷ˆÉ&îA|S4ù' e©J|V§TH2$’ºíd+«ÆJuJWEhCsŽ#;'Üv/e~»PõÊŽYß$€¡PÐÉr$_Y]Þ۷ƘÐZíµ“O…>åK"/ȃŽ$ëKòPŽÂ°O†¦´O#¬¯j™š}·ÛcfQAJ§(¡•ð©K1x{'wˆ?&1)MÎ 1°µi.ÿ­òïq)ä$I²gøeÇ­l€?9·àQ„ ;v ãxmí~ %¹µ/2Ͻ2¹Ž Kz°{tLÀŽÉ¸ ELÄ@ãìåHelñ¡\-¢”o‘ð±ùv_ßzUŒ«£‚¶åÕéæa°u£w¨Z£oñ¡0d¦ ’T„ÏTø”ð¡^ ¤Â&TñÅç1¤¥pŒ¨‹ÏÖ”'d#>üä œL‘œÏÚù¨èc}‰‰á»7pÊyÈ‚õÀeáÍÊÒŒ¢”ÚuºÁvW袳m[&Ï«î!úkÚ‡Ö(¸Ÿªr r6Ð=S‹ìº^o¨ôSv\n\ÿrΠ>w/ÐŽbòâ/×NŒO²,¨޹rºÇ£RÑ•Þ3‰#1öŒiÈ œÓÔ˜dâ&rÂp•p˜!¦£Érr4¸­¿”Âo´r_u†ý áP…!TÈvÉÚÍ^íNvùÖεeÉóX]Fð,g…Ðá@žÇôŠšã%^5¸ò䊓eðȼ Êë™[¹ð1'dÓò ãð„v”\'V‰‰`Êâb¾´ç»‰¬0©ÉòÈÁÅ€­®Êýcž1sy¢Bå [!!ë›?+õ‡ò3܆œçàpœNŠ“›Jà|A³ñž®æHŽÁ€ï[xîRwÞÞ{ºÅûÛÚÊ"‰Ù+nÙ5o9æD„l¸‘)Ê®ù¶ê€hndý×õ6×9ö)B†ÄObÀh‰ Ÿw÷ÎhêôMæˆ ¥ 1 Hø4]¬í + ¡‰­¾ì mîh¯[YuMSZ Íį¿6醃>1¦| ´QæËPÿáU7U‘_•Ŧ6üÚ_ׂþcÓßÉÐÊápá½.í”ïînû¡íTEÖ@ÛQø…ºï0/Üí0¼‡d)+ÿîÒõåE¯þ…w€d¤²¹N/ö9—õY}òÍw[ÙÙ‘KûÈëRnz*¹ûrqx#}¼ÎFmI+¹ú0‚‡®Ë^XúÒßt÷ò Béø'kµk´SÏäXûûx²mÉm|Ù˲èìËÒ=µ¬7î“|ß5ëõ·SªÛ¡cíw¨1u —ªÞt[ì}ž‚ÁÊúJ«î¦[)±Rê\ÍYrö÷n6ü÷ëX¹?¾òcYlJÖѲ%CÂŽ*·ãùºÇÁ¯þŽCd/íp0mÙ£¹À8NƱòßÉ,ðîæÕï#¬‡ endstream endobj 282 0 obj << /Length 2429 /Filter /FlateDecode >> stream xÚÝYÝÛ6ß¿B@N>¬YJ¤¾ÜÃæ²=´Hs¹dƒÃ¡-PÙ¦m5¶ä裋ýïo†3”%Y»›-îélH Éáp8?Ž¥·ó¤÷«×wWß~¯"/YÆÞÝÖ ¤JÇ^K©Ð»Ûx?ûéâ×»¿ý^«ÁD•Ä"M5°±SV§¢5uÞœz%™ÿíÝÕ—«ºÒ άC-B©½õñêç_¥·Á=ÊRïÞN=z:DÛIïà}¼úWÏoÚZùµÊHëÀKd"Â0|J8X©G+C‘¥;ÐûE*ý¼^‘Ÿæ°X†‘ô‘%µEU©ZÒÿÈö+gjQn Ì=%nkIew\¹iÕ–ÚMÞæÔ[#Û}W~n¬³š‹³HÈP½DstÃzæ†ãX‹,Lé´oL³®‹“=ÕPG]´œzË ©Œf<±(‹$‹œZy^³XY‚º‹ü?ð?T RPØNô‡$§?»pK-é{kÒíÿ"#iÄN\ƒjeê×f]Õ›Æ1æÜT ,LÎBÿ6_ïñ@ޒϰåfŸ¹hpAæŸêjmšÆlèsõÀä¼vv_÷h$UýSóJÛܵÍC¹Þ×UYu@7"JÒqðÍO§C᮳½Æ|é ß)ûÂ4à›¯S¬E)ªzcê™­@P}®u¯›Æ´}~¶íÝ|g}º½0% ©3¶%ý'lé+$VŽÀª´”þÛjW@FÍh;ÍdQ/ç5}²µØ>E£jÉb:馡S¾iÚutÏšÁÕŽ±öå{f‘“¹áÃÑw<ÚæÍg^yoÜ3 ±‘É.éÚù e9¹>¹ºy›‡æ‘šùØÜ&5ó`_UÝãµyÇŒÈÖ½~,«ûÇ ¦N¾ö`Cê, IÏùÑ=ÇãÃåDéGLá^È% ‚1Ü{KBŠÕå*Á_WÝn‘-!±+?—•­D—4ÐW2M• h¹ø£ô+À5ÚoäoŠæ”·\–8ònÑú‡ úI¾‘E^ØœJ•^*¥„Æ¢®àÙz44¯IŒ¾Å!_Ù¢GïåJÇ2O iž¼”òfp¼K¤NÎ@ý¯è[sºûŒÃ)`9›A K>Ð Â$ƒóOnÒ‡²Y›…] ›h=-šŸà©Ô V}é [†sN«?ž)®%©þÇ3å~ŸhxIEíŠWöûžÄ¿7ùf̉~–XÆ}M ‰_ºüP´ôqìÐÌùóEâg}^ºÛî0yÊÑâAA}ã\CkÆ…µ‘£ á`Ê]»³¡éöîê¿ðxž4 endstream endobj 185 0 obj << /Type /ObjStm /N 100 /First 878 /Length 1523 /Filter /FlateDecode >> stream xÚíYßO9~Ï_áÇöÅkŸ¢ªPÄ]OW 'Ý]Åö!jÈ¢tíß·¡@€¨KU'E"²=|ëù<3;öxm´Ê(EYÑFåŒG›”ómV®8´Ey‡q2ÊgŽ ‚qÎ*ŠQ€$±[ŒJ1([¬ÊÓQ9`lU1:U<†Ù«R8†&ã(€j“)!X8$І)“²b):‰ÄeáS â‚Q¹c± O ד)&8J +$J—kbºõRÉÃJ "sÖlÉ®&ƒ³`-Xµ 9Q"ÔGŒã\˜Ùzâ(á/•P³Ø„9ÛŒ9ۢđ3ì(ŽœÅ*ñä,˜Ù'ê ³@E gŠHÎTÉY "J "‘3$‰œ*28 'Í´s¦ðQ'p¸ÃÌÎ+g4ç, å KR*õÀ¸€GÂ#pˆ ;IQ.7ˆj÷Vy“Ã@¼(Ovð¶wÝ4QÁI…kC'`%5ï %ˆ³àé*´˜ÊGp“€éb¢Ó%ñ H &δ9̧gZOù× þ í‰ aä:š(z|¢ƒ ‘¾Cð#Bì@ý¡sv²*Oà :Ä)`-ŒýSÅÎ )¢C>xi¢#DOôô/xÇàí`8T‡_ÏUmÍfíbP\/ºñ“ÙçAµÝÎOšùGƒWÒU¿Uï«wm7TûÍh¡>ÂìZƒºhÆL¬ì±è"Ø–Uu ª_ÛÃVU;êÕþ§™>>?®GŸ›ÙÉPïŸÔ§úµzóf€¿{Œ¢€€Qöš‚MN¬ÊZ«S`Ømø‰èòÑõªºEU[Ãa§¡Ú-&í¬:¨þÜÏß«³z2]´¿œMF§ÍtZÏÆoÇéQ{öú†Ý4ÂWFí«ê¯¿ÿAæÐ.I`áƳËéôhÖ³{¯|Ô ŒÀÂz|O° žíFŠÕ°Ò*x·-:Ÿí"j-â°{l1†äzÕ÷ +]öñ~1µp€ ª½y;:hàUííìªê°ù²PG«žÝ«ÇÍ z=ÍlqÁ<ÆÇé΋ör>j.º|Љ>4'“z»ý¢º%h†uöVçÇîÕsL¡ŠíзVûjÝÆ~×Acö<éƬÚû`Ÿðêù°oÀð¼oÀðwÁ‘çÖØŒò~`T0:›°îpuû<µzÐzøp…Ê0}ÂI‹õ;'-SO9i±`ë{ÒZÁ~ï¤õ ØÆ¤ªÇŸ{`î™Ñ»0ã²Æ¹€nV°dÄvÙ–eëÍUk¯Ú¥Uެ•]½Y‡èGyˆvM¼øÐ¦ 4 A£d\[¾ÌÚ±”úlmÙöãT$댲[PÅ”àòÜZ*.§‹É¨7/ÅÇŠ.¨»¯ùˆÓ9…µ|¶ëÅèô÷öøâ…øø’à"Ç;-mPô“À+®å³Óž×ó—â’Qü[ÏÛ1mxÙQD[›×‡M3ŸÔÓg&#d!ˆ]É -¼‚¡ÏkÉÔãñ¼׋æ6&ß¿¸_Á^—ƒˆõlVÁ†~`nVYz‚]Œ:gy °¤ìÿØàu釕„û®{ìÜ+»õÊ–s³scyeú¤ý'™{ûOÌÙ$¥»P\n,¼\¶þª Wm¼jÓsn@Þ!Ûóæ3áå ¼5¤UÈxyËú,{19;ŸN>}•z>¯¿>c2ÁFÈ+þ­Nˆç ²=x%ÑѮ߷'íˆym:mž=¿«-¢ÉKÒ!.óZ ™ß?´Oöqùí‰Þ2N›xÍÄ{¤£ìDó Èü¦‚ÈàdîxïœÝ¨ô¸oΨðº8‹“«á÷Š„\$hïããï›gí|\ÏÞ~:ÍGýÕÛfÞá÷Þncoî'¥#Ü Ð“û6üû‚}ÖwÏîk±ˆ´dÝ£ú«ÓM¦½4ëf¹—u³ybÖMå9³é·ìå¢×†_É®²—ÆV\x|öú\Ü– endstream endobj 301 0 obj << /Length 1543 /Filter /FlateDecode >> stream xÚ­WmoÛ6þž_áµ@g5Kê]Å ,i,C–ŽÓ}h‹A–)›+-¹zI— ûï;¾É¢£(Û)òx¼{ž»#‰Gë,Ž^zî(Fqà£E6"#× Fa€‘ï:£Åjôq¼Ü±š–IM'Ÿ?¿:uýÎ( P'Ec!r„µ~PŽ;²S7ФðÔ Å Zr¾˜Í{;ŠBßè­hy;!þ˜V“©ãf§ÚtÓä_ôX‘‰6¯’zBƉúhòšq5_o¨êÐ|Õ]Ñ™ù„±ÃuŸiµ%MÒ Õ+@µTûmÃÒÚ,¯õ’Ú,©›2×ë/o..pÜV>M A±ï+Ï. Àuê’¬í 5£ ¡å"‚[¡jS4|¥´¦ 7bëB* Õ˜0ÐŒ Œ×MR®8­*5-@Ræiy³]ÒR ¶“lKµ¼A 1óO<<¾U_&K‰Fà¢0ò4²<Éj¡Úñ±Âåkõ¥(‚Ž"ÏWvY3Š<Ô!qxxNo.{ $!òÜ6à$û 4Ùí8£zKž´!‘ä #–¿Ó´6ûûb/Q_22aˆoàFÑò®ÏÊ8F^ôѺNk¥vÖõì, Q·®ü0‰qÂjåç>Oí=" 2•hRŽ{Œa ϘÁYU÷§°:´PËS•luÓ|]k$“ê€Nf]®Ût÷e\ÉV% X#zxüë†æ=6;®/#N4Ÿ½»y;뱢Š£ÃHh*Þt÷žFŽô“€:²ô RˆVè­7E)¨d´ü~>L‚ÇiÉ4vï—4O7 Ë•:$*• Mwç÷Šs ×wÓÛ„ñºx}[(E?f›´LQQ®ê»m—ãÁ¡á§†GQ`ç5Õfóªèà ]‚<߯â“ãø*àEÒyݽï|„¼ %|¹»¥éŸpz¹q[l³Bé.)Î)©>Õy•ÖEÉþ4‘“&äÒ3åLUñÇ=òÁ<k¢'óè„é•6M´Û!× ’нçÚŠÖáU[]î ß’ãvÏ««ãùñ/}Ń3ý‘÷‘Ø™?û#ÙîàŒŒvëÂÀkÓ?D¡¾?=>¤±¸H¨NÙä¯å ‹AÃÙªƒ‰ej^ÔO4%ýÚ°’ŠîÊr]\U!)øâ…T#3к4Ý…—Çýú>ôÓåüòê-Z&[”nJâÝSu`QGËÍ‹-K9[ç[š×ÕX{ ´žÓd%Ö˜µö/}ñ Pd(&‘ÛôI~}&šÎõíY~Ô›²hÖõ‘¨æ"Kv2Æé¦§µµkÊå…¦c]—0N;ªIq“ÓÔÜZ£nz.älû.ø¾Í°½ˆ·63ïå«k¨”=º<ñ&‰‡TÉ^{`çimêI²=míV76}!'q§²uÆ•àSÕÄ÷o@ÜéùÅìúãGòù³Eœ†u™ÙÊ´)"j3QWÅØÞuùùF5.?s%xˆ.0EE—ºBì_ÜFd›³š%\Abે‚Ïæ¶}Ètä³&OE¹GCº0Ø›‡Fw¥™‘ ¬•ç…Þ¤\72ÿ,Ñ/Ъ'‰Ï¦ìÝR¶È'…øTwuÑ3×J+jª–‘"; ª×õ6çÆmAÐ2;¬MPÉc¸3YªVENm§Ç׳NJúw¬z¿£rY[ Û­{}¡hÃTVh¹nÀuèuÁ±¿k—pÇ6Â=¬å‚!*Þ¢†ÈÞñ• ¼WgÖ¹Ñuf.uy=й÷éN@|ño¨JyQÑá=;l›ó›^6åSüA×ÿV‹)¯´>…Ř-= ¨[RB;_ÄëXeEÑ´y(@n+ŠUJºnSÚ$ Ë!hU÷æIY0›À³y’¯©$î™,«Ïta<ßO@ ‰i ' Û><§»¥“`2^šŠ·2%ï@àÁ×lqô=¿ endstream endobj 310 0 obj << /Length 1121 /Filter /FlateDecode >> stream xÚµX[oÛ6~ϯÐÚk™ÕÕ’ƒõÁÍâ!Cº¶ó´ %Ñ6‰RHj‰7ô¿”HY”åË€$/’LžïðÜ?ƶ֖mýrñiyñaæÖLÆîØZ®,Ƕç­plƒÀs­ejýþαßÿ¹üõÃÌ÷:;½p ¢È8õž¸ÄQÈ‘Üza+Bƶ"!3ö¥ÌÈó€Z#7”@hRTDȾ¶ýî§Qó\U$ḠØMLÙÍï´Àê æã_©ÖrªçY#Ç“`ÒAÿò7¢,™D{¬Ý6Rû˜¬ŠÿB 7W¥öZ“T1Òñ­^²…YŽ0/j~|û¶‘¿!˜c˜áPóÍ7ê¥qXA–îBÞ,¯ç¦Gb˜ß( iF¼jÏt@ñR+"Ukÿ«æ™l*òÀ´…¼¢¥JrŽ IœÝÉ5©ð© ˆ2#^ר3êå””GV‘TIµËšÿtw7O?«êœ§ü;G#|*¶Í$©>U ÿ©PžÐ*S®Â|£t\ÿ|u}ùòj˜üŸ@4öˆ¬Ê_3J£ù²¸-pÕøT0iQ­Uô`ó˜MË© 1ÎÐ1¬—=míÐÔ°@ªPSÈa§¨`´©\ç`Óö£N wÜîD·ýÔ–n—÷yzÀ06 !È·PoÀý2™AÆ\ôå¼íjuÛªCûðÅp1ÌJ3ÛE†žá䙯lË8ÊŒŽü²Û³í¸gÛžyíà}$ÏÞqó U%Làé Ø‡ <N¢³a›‚ò¹mCñ‘àüË ÜÍG7Þ}Óû«¬7Ý…£A©œ ̶ ³6¥DSv¿a_¯ ‰¡Mø3sªà¯Dbèj„d¨ó äÝÉÇ ¢?äv¥!fè¾Óܱ;zÝÂ06ípÁH‚°çpY#7†ÕCÌjõÈÎáPi¡g–™Mo×C +~!Ñ¿ÃìK‰ºŠÚØÕZz%Z˜{;tË5[YׂÁ㻇Ï$M1OѳµI ¹õ·ûÛÛã¼o›¥¦[¶ei߆#jÈ’|ÛÖrÊ”jÄÙ·g1ܬ`è„ÒNõY—óûÁJ³QÝZeLáI‘Ú'Æ&Ptgn©kI‹1ffnËrHEQö uˆîrœë}&j<ë¶¢¶&IEÙ qmTmÏ»¡ ÜK\øÎØÄlðå%‡q†X‡l§NôïSÌ8ÅqU{¡©þèog·G=[:Ÿ±/Hñt”#º{-:<óJÄŒ©ÞÒæ£7%‘õ½ÞÔåu]dƒ.wÝCå²Ï­†z¢ØQa•F/qó÷-]´È{n4‚)2.éÉÛÇ‘}¶Ž\ÅP ŽQØ«"“WmLÖ=»ùº£tõ *å lË;f™'ú`¥•®Öå…¨Èî?ôózyñb8LÏ endstream endobj 320 0 obj << /Length 1744 /Filter /FlateDecode >> stream xÚÍX[oÛ6~÷¯Ö‡É@Ì’âE°bH×tè€vYâlº>È6íh±%G’Cÿû/’%‡vœ¶Àö$Y<><üÎå;‡8X8øyðre35óíÃÀí©–*_Ôמ͢IÙÆ"¶5çÃcèœØÄ¦ A " µ9wŽÎ}†ŒÛ |;@1Þže¥êëbVÙ,IK—.é0Âá' Qš-ÓÉRŸ(dÓøÚ ”ªÞ”¹}·rË[Êe>ób)Ñ"´ÌªÚ#XHÚ(4A óÚ¢nÞ6R—( IüXF[œ­ÅÎò»Ìzw 3#”‹ y½xª”Cš¶>õ±A‚œmÝ2¢2AQÄ g6äªJÊ[:Ž(%Lÿê–Mïé@5po¡–ˆ€Ä~íñö—þ›æŽ>]½ØR”YíQ$)!}Bºd )êðs,\”ŽJ³EžB|)çYÙ= eàÚ68¾÷8¿—B§ïþ³k¶a$ šbÁwˆ@j„›J'e8œmJ£_UºÓlÚÍTc Ûw€”VÀÛsBóÃä£='EÛ@ógA"¡!ÜEN"¼mÆì*g³ÎlmóDY<äN—ß­™k¸+h•óB§æçªªÑ)Vh t>¤­@¦K :Éɱ•ÚL{•Âññ1î±61× t;x𡉰ØÔ뮕Œ‡ó²Xy” ˜Tí(IA3$Ø=re70Ž€«ÂP¼Íuo#”q üvµ»Òã–á×*· ©}4gÓÙ­©Ü‰3ZI.2›ÐR¸B·›õÀs¢ À­'¾`l¥Tl!*nüˆEÒµÁ.›ÈÚhÃdÚÒ ÍïíWU–E©SBÏåuZݸÿYVR•wÆÔ”­bH¼Rem‡u}AÁIûÍc–7ÜY7SkQf‹¬¥¡RU›¥»wÜíôKfIs…Sƒ+«=×7}NÚ¹¾¹TÊ?¬Gq‹Xu]ܽµ½Ú?M~öñˆã6Lú“¬òú·ëû4´8 Z oUƒf Çý뀻÷wo¥l 1mêÜwæ¸g–`ˆn¨2¢o‡HÖ߇Id¯¾ØãH°9òuß<ÏÆƒ±” endstream endobj 340 0 obj << /Length 1707 /Filter /FlateDecode >> stream xÚÅXßoÛ6~Ï_!´³˜%)J"‹˜»%C‡$Íç¡hû ËŒ­E?\IŽ— ûßw)Y´e×CìÅ¢èãñx÷ÝÝGagî`çדw““7®ç$|ê;“‡`Œ\æ;‘çRg2s> ~™üö悹I7 ˆ ôÔ2Óe.—ɳ’<ÁF?(g%£f͈jR¯= ‰7Q•ñ_ÿ£0‰VIXÅyV"k ðŒ‡¸¯£žâÅNó.Σc™z¦‡NÆDw÷dyYÆÓD6£ÉJ å&‘±­)`­ 77ãÛñ•Áƒ@h8Ê 0±sþg˜.0àV6gË8hôY›âÆÕºÊE¾¾’P)fªJàWÓ¥ú«¦f€’%H±×¯‡#ãA%33ËÇR•ò–àzm=€¶¥‰‘®Ì÷×z0“á*©ôK!çqYÉBG½7øjl" OØ6MÃèq$³Ò¯?ç)¬’úeW #¥Žúô<¬Œ•?Žô&"Wu°§Í©þ®ƒÔ%KC*Ë2œËÚ•ë¼xŒ³ù«ÍºÆN‚»®ë1¤üZT›=•À¨o·úÖ6l‚qÚ¥mç““¯'¤Î!Ò¶'&$¶¥'Ÿ¾`gÿj˜áκ–LFÀZ%HâÜü¾ru ´«)è3â°€!¸ÛcÖBŠo‹êÍCi/TmÑ`¨SP«%ñã:ƒÉÓ&taWÏNíSD!Wÿñu‡g=ž¹qf²ôYFE¼T6ìé½¶‹ìÞÛuÎVÕ`ùn[]”T¬kÁ–FhûœÊ²]]€ª€¶2*#i 1-JHD î–‰LeV•ú¯Þrp„…h B};1$Xkµê<T ©Õ–2ʳ™w6TÑn¦Kc\ž) ø`œ)<ëÙêy)õ°PËMÿ€þc’‡î0ô]¥ðe‘«SÝ:ŒŠ:÷ 7ïÒ2NBh*b4Lêpƒd!«U‘éqÛPõÚÖ}Á |è†-ˆh}£PcZhÀÁàb@ ÆéuÁ_W ¬ó@=¦˜tåj|)†™i 4Cº1?µ)iÝŽ& ”ª¦-6Ôù[ôÓÆI?›ÿq/°ÙĽjXÇS »b¹P×]Ï.Yªñ@µ1}RÈŒà !Çż<»¾¿¼4swï¯n.ß_|<›ÜÞŸ›¹û»st=¾:¿3“u¯…maW+xïnnÏùp¦P ¶TÝÍh0ŒëlºT¬!mþí4S£Žº@lˆM"î˜~jh›æ©¸`Ígâyv¥A'ïúèm1ý¡ÀV"ޝ?ž¦1pËlÞ£Íc(Þ!ep ½‹Ú^y(ìsøv`Œ¯_& ÿcz/ Ûz1C>æãA™º3zßßûæ’xD¢|_> stream xÚÍX]oÛ6}÷¯ÒˆYR¢(iX1$H:dhÚ,I7 Md™¶…È’'JͲ¢ÿ}—_²åÐ^²ía‰yxïá彇ÆÞÂÃÞ£ÓÛÑë·4ôR”²€y·s`ŒBʼ˜a…w;ó>ùÓu}?þ|ûÓë·a´5–b‚â€Ô Ê!#l íðñÖœI˜„rÒ$ˆeŸžzsqyõîâío€Åb†Ò$°‹]̵=ì‘ ²#n¯?ž;lD ³ƒÚ%O‚û ]Ùê÷‡¢,õÛÔ|Åj]w|¦{:QT c.ü¡Äk¤Õúõú‰×$Œ#vU 7 ²¦É9ÍR‡=Ãhgè±$DIL¼ a(Œ#=åãÍ9zry~ó¥¶ÊV|vØ1‚¡qŒjøÓ««“ë“Ëç»uRÁ‚ià×붨«¬|þæE±¨ß„Ӣί²&+K^Êçê IŒ¢4¶S‹J´Y•smȌˀªdA;4„Á‡µA×ÝÓ,¿Ÿðj¦¿µµéårY $LPEðBP™Mï„ ÓY×h|xçã ò¿ÈYÙe’„ôúátzu}~öá¤;C‰Ñþ(”…hݡơTÏÁÊüºk׌$ùó¦^9À!kѸÔéz•­×å£+w(HS;ð¡h—fŠëêFw¬ê†ë·ù˜`?+JE.´yÉW¼jOBœø¿.y¥?dúa}“»D!ç%Ã]* K"Qè!‘¯âpRÄXK›Ø¥.EIÒGë±(BaÈ69S;l@Ìzz´©Ì­âPZ: •é^Þ4u#ŽeˆR¿ÍĽ™—) a@Ã›Îø˜©–câW‚7-`k¶pžîU©!Œû¼R7Å¢y+Ëd|¡Û‘œRÉPrbSqÎx ;)öT¬Dî[Špj‹çRá”qO˜XÖ—¼]Ö3ñÕá7Í3áþ4ÌeБ¢l6+LšRí•Æ’ÌâÀçh\Kd`܇ˆžôƒ]ÿGøèH*ri•ºŽ ¸Ìb… Ô]R)Ü&ËÍ«¿Œ!EAváÿ‚×gTµnãiÊ÷-6<N‡Àç˜ENƲÔ‹$OX¶^êÙe‘/¹‰Ów™ÍÇ2m@Bù0㼞™ð΄y¶mSLÇ4ĦužÉT þ°>#¯òòoÉ ¬è WÒ3Ã#%÷OYwRŠÚIÓ¾å¢Ñ±» ˆv žáj‚(K6‰í φDŒÂMmVGOZo«ï±n꼜·mþ´ôçY™w¥*¡bXCA…E(‘Q´]5ÿo^ª:Ȧzn<«…(¦%·Ži%ÀMœÕ.ÙH1Ý”œ^ríî …Óx8`((Yl²IõÈó?2Â\ –¯TmûÝ— óÛÑï#¢Òé/í4Žzùjôé3öfð °!Ë%Þƒ¹ò(ˆª˜ÊÜPz7£Ÿ÷ž6ýÃÀP\`%ÜI ×L̆êqû”ÒE’&½¾¹~VÜVºˆy•DíÝPip‚Û¢vã0öµ¸Ûï8Ib |^à¹òp¤z0¸ðõ÷Ì3.ò¦PwÆRú/”>V¿-åºJtyÎ…˜wFÜéjm×T²ÒÈÖž[[¶J]¹ïš£J99t  @Ãg\˜¢`}R}w‹.HqÌ^`O¶€³ºÈZî‹bQeÎÁF$ VéRîŠÞá˜(ïP¾?EL׎kç-3¤ýòòÊã¼9$1ÛÞËVÝ£\܆ãe&U¡(öGnÓŒƒQžv[±O8E7ßëë endstream endobj 372 0 obj << /Length 1821 /Filter /FlateDecode >> stream xÚ­XYsÛ6~ϯÐ4¥:!€‡HOÛ'‘[wb'ãÈÎ$}€)HbB‘*Iùè¯ï.¼dúèLü`.ÁÅbïý >YOøä·o/^ŸxÁ$fq(ÃÉb5œ3Ï'³³À““ÅròÙþôïůO|¯ÇéÅ‚E"9†çjW|C®ÜÊÁ~Ýmø]9ÃEÚuY©µl{è §óž8#Ä©œÅ2èTøÂ~ ÿ …®ôX,1¼|9uÎwzWê¤ÖË£†K­˜RWû­FQúvWö¥ ù2UÕº, dá Û¡Ý­¦1óDL[Ë©àÎÉëêQóÌFÿ‰ˆÅ3’s{èñ~(g!‹#ÙÄçlÊà0WÜ)u½/s½¤·UYl‰RôHT–U6ò%À§>ºÈÿ”©Ý.»³Ö÷uð}y­ì@ÝTWú“à!W„ hÚ‚x¾‘ÇS× }GOEàÜb«´Èq-@KÌóJO©]=•sÿT¶Wlê†ïœ®ì–å-Êtæ*£eq"o0Œª"®å^÷ò4ßíëþŸ;¯FüyWø1b~6VV›bŸAì<1žÛb™~á\’ •1>lT¹$5KËš¥Û´V5x¦¢c æaK§ÂÉö s¢ö•¶g‘?€h<`ÖR“À—T$KB¼ƒ8`FmÕ¨¹l¤"Q©­¥Tuð© +°Ø7)€…^§“ßéZ¥ÙS¥5p±'$]¿º¾H $L>›öaZ4Š ëµõ ‰FB;ãý™ëjë [ êeÆDØò_£ÿ Qåx›Kçd:óã÷Ÿætâ £€z¨9ïhõkqUÑr½Q5­•¦úMÁ{˜˜í6ó•â1Arh\a[b·#ZƒãŬaHÛÃuÿlJO†L€ Ÿ¥Um㼯Mɘü¸Q&¼®ó<Øx ÛFhǪ³Ft’¶JzJì]ëdDŠ.þ1j½.õºÒˆ°`Æd§SQŽõhÎfQ<Ð Ò(ýwTœÏfq0Þ¤qÂPrØ–. šØõ²c~$F,ì’"Qu²aV©ûQ =Ìü^•݈£†‰Ó—óq"6À©tØG‹®ð™à4]æÕ>I …¯ö[ÐUóÒA APb$}°4–ÏB ÐL<Ñù$'Á4-„“.Á—vÒÑŠ‰çý#£ˆýz"tú„\O@®b/…éaf žÐެšJn»29LÆ3€É¸Pc"ÈP"¡Qf&,8ïŽÖ-BÀO¦•‡‡ó¿ôº³ëùÂ9Í1Û3]Ûﻢ´éû‹­Rûâ+ÌóâŠhrghÝ"ì²|â>à[É™ä~ç[[¨Ouaã_îœÜuÓ Ñ,%“$hªœ¡RÍ jà[Zì›Ýùr Ýß÷w é†]¯Ñ…1Ò{nŸk±?•‘muHu­ßšÕû­W/+=æ^픃•cEšIÚ œ$’•@´£éÕÈ)!œ°W’V$$ÛJ2¶%àù1Ìäƒv[ªD_©ä› ù'm}OˆPaúV£`2&¶—Dhf ªÇ¨ÕºgU tz Ð5w¥Ð^ºÎÒd£í½æ½Êׯˆœž”wÓ€°Q?«þ4±S™.Sk̇+ÃT‚Í#†1·V?ÿ²‹ª#ž%K 'âæ>ÞÜcÝïó×V>Ü¥ƒxxÄ[JDÒd:zŒû;+$…I†Áoîè¹Ô+ea%x+êy+”l¶MýÇ6õ;Ÿùˆ¼?vÒÀQô˜4¤èÕ3S×P˜[Fñ´H>ª‹Îð¹¥åâê+@³ªÀg\xÖ»ÖôOyqcv`úßå7]ÚS~¡‡üà1â´ÓÕˆeÅ£8~ÊOþwõSxè§ºÍ ©¬£Ò,sWÊ஦ÕbgjoMfµJ·Ø­ˆ®‹½„Â]Pø³ñä\¦ˆºKó5½›VÙ&6‘[À9j­ÙX’ﺠýìÒóéȼ¢çÀy}cÿà¦ÍÏ‹šˆrŸÖ߯ö³®†úõ}‡·,| «ÒõMñƒ¥=ÔÀÒÕ?emÉ7?_Ÿ ÞYsGžwžlÒznòí¤(/ô¶¨µaÀίÍ=ØFóÈâv,¤À"·1Ê‹¥¥ve±Ü'Mv4Ic\{Ôðæn€¤LËTZ Nq/l¬düÃ+9­¬öy‚PªùAè3VOó|‰6ôãòàTš/^üv _ endstream endobj 385 0 obj << /Length 1338 /Filter /FlateDecode >> stream xÚíXKoã6¾ûW¨ÙC ⊤žE{Hš¤@E½‰ Z¦-!²¤¥¤:ù÷;IY²{³ØÞšDIÙo^Gv¬•åXL.g“÷7.µ"ùÄ·fK ;¢®o¾ƒ‘*ôS¯~ ¤ýcþÆ·Ð kí~̲¸ÉXùx*þ#\c®Ï>Æ*Ñ-ie¡œÛ×C|FÑ1>éèkÍã„åi¥ÛØÐK-ÒÕŠ CóÝ:l¦4_éÚÙ¶ªZË!'µ,S<¬a‹!_ñ£OPà{ß—ËéíõÕ_ß—¤ ]±Z;É3¾æyÝõÓ.Ën4aê®hrý,×/×\¬@° I"ŸŽà¶3KÁÿM‹¦D ìü®Ø³a>$å™&×oò‚€2€F®¹f­rÒ?;L†òÿ„7 7éóN¤Ó¼ltñ,ºò2&»qÕ5ØÑìÔÅ sà‘Æ:¬£DwÿϺXŽ+‹ië[°Ë°%7}ÐA-€:ÒÜ $ÛZ4PûñßÖã¶ì;E›j”@) ÉQu4S¨(ÛÔFÃ`jMþ õ¦–T ¶/Ô›&׳ɗ DŽ…»‰™º¹˜ZñzòðèX x ™D¦ÍM+º¶\ ÜìJW2ënò±›’w¯j,wúc9¸é»Ø¢¢úccyæv[ ŠBlâwŸaïTo³‰Ââ3âœ>Ù\r§|2= %»JA¶®¸ ªÿ-·žQw䃃 O¼âU,ÒRÎ×¶.>A€l¡ÔnÿTi×–M·Cˆº•,,¯u’ê'%[iQÙ/òšæŸ‡6<õ ã–$Z%K³U@³ñL߉BŽ …ô7RßI["$€0ô Bix̵}W‡…`\Ý-YóϺ|B¦V¹€,;§«F¶‡½DÇüy§ |(AbJðB¦¡eæªf*Îúð$-·Øî÷=äáŽ#.Ó"žêè·'ÝÈWiè#?èÆ®8cUÁ!à+G+t®ÁÂ? -±²ÌòvÏOº‡tÝóX1 Á;»¯¹ìG0†ußby[¶ëóC¦\…”|‡)›b‘ §gz¯€Ê>nR{ãÛ~Îl-bƒ Ï0ôóHªädûù®{t®Ûo¶]unºS]7I'j3ÓííQ& ¾”UÍ YÅõèM¶JÅù·Ç‰ëâ`û-°‚fƒá¡à»×U:w[üšwšŠ/Ðþ/%ýÔ¸2.„/@Ø×Mý†6[,RI~LS”$ôдºŽgÉEÂÊ(¯|^'Å¢B£ÄGÂW7nr° endstream endobj 294 0 obj << /Type /ObjStm /N 100 /First 876 /Length 1769 /Filter /FlateDecode >> stream xÚíYM7½ëWð_Ø,ÖÉÅ X;†“ ðxM dEv„ÕHœÿ}^µäÙ·FûâƒÀfu‘ýXU|U¤ˆ9¤+‘@-Ô†žXÐj â} 9{¿„lÞ¯Éû-°¢ßR$£Ü“x?ixß8(»~ Š99¥PR†\C•ŠÖ¥äŠ%±Kj \ ª9dqb¤’L|Dìëw † ÜÂð ü">½¸·‹K$ˆæ<@Q·²`¹•Ó˜[v÷àÁ­ KYá÷Ê`ERkî£AÜÌ*Y±z Àe o¨( ÃÀªG-hqcá3Z1”€ÝRòE0=[ÆâÅí`$.6°bmû´«›˜ºûyµœœO×áeè~~ú,t/¦®ÃõW_¼¿œâÅøítÔ}ÓÅú ÔÖƒuϧWËw«Éôª§ä^ôÓô·ÙøÉòÏð2A X‰Ó{е½Âׯ+LáܺQ¼X,1ãË>G8$Ï›¶lÛÍR?BÔuO–«ß¦«þSéU÷C÷c÷:àÂWn‚UQãX’s €n8§è$bYcѽów¯×˜³û×lñßîñÙYÿ…îñd=[.ºóîßÏôß7ãÙ|½üÇË×ÓÅä÷ñ?ßü>YMârõö€í¶7ôï†J}ç*·˜A\j-Šy®³HæT‰°p¤{ÿŸ‡îûå‹e@ø|óüÍ"¾¾üc:yNŽB <›R$¤5‰È<c>¾¼œ¿$hù%Ãe ¯R£ìEòd¶œ ÎÆóùtîíÅMHØs^– ¥ã[º×;1Õ†)­ñЙG¯ª)«Û£î¥‰[Ôp‹3nÒĉ™ÒÇÌàÙ=˜áæÚÛ0wÌÇ/7ß].ÕãˆÐëU‡Ä[Ð^­nZý" ñÒq9ë!K[¹Ëè|4£Û–Á78ý ¿iuÛÚq%.ê³E!´~:ï&AÅÓÁ%îÅúeíxñ%® Ûø™úT)Ž£PwsÚÅ䡊K3EÞãëbÛ€bŸ½Ú6iÑü m[ãš!·ú%ò¶iìoUj‰ä7 1nH‹iÉ}±3çð9‡wEARF‘;LÙü J•½ê@]9HY@pZDY‘➸2ì\Ú@ÌŒ¬Sh SNI¬×é·H}/õŸ€îí.ÝëAtÏÖ>¦{ÞÒ¼n xÝÒ½né~ ÙoAOXгvƒJ2,¨•q”ÄÙ¡\a{wîÕìâr>{ó>W«ñ‰ j„”5‹fým7Zõ«Ó¨%ÉzZ•6uõ¶žV®¤z·iDá§8ë7¿Ug‹ÍïÈIYúr (˜¾^§@éÏ@ü¹S  PkÒë(ê~i÷¿æÑÒîLØêdÔ½r÷¿¶†)#ýЮÊ]÷d” Ãt³O<EÆÁÆe‚™Ó®óÃñÊ–#ó ¯¼þŸOî›BJ¾“BJºO ¹±ô2ü£[ºŸ¬œv)[ö’w˜n=4„W LApö‹:a¥p|qPõŽg+Y”MPûŸ†›–¶m>i1PQÀ¤8n³ÿÃý}gxœ>÷RêOïæëÙd¹šž8õŠqıx‹FÉÏ6úI4ç‹åÿN]4‰þÇ; r/rJd°š#c8nÿùóéòr¼:µQ2*¤þñÈ'ÿ÷Ýn€[¬î¯VÓ·³«õtõÈ_|]ü[ endstream endobj 398 0 obj << /Length 1446 /Filter /FlateDecode >> stream xÚ­WKÛ6¾ûWèÅ.b†/½‚¨7ÝH»ív×ii²DÛBdQÕ#»‹¢ÿ½Ã—lÙZ× z1é9œù8óÍ{{?N®–“—o™ïÅ(hà-×Á1xa€‘Ϩ·Ì¼SÌ>.ß½|ËÙÁJbÄ£ôè5«êóŒúӤȳ¤jýÛSà~°qîvÎi¨„fÿ¢Mò¢lÜ+àøÐFØJbäƒ9öè&ÝŠ¬+„1sàOPH}ge-Ú®.›ì§ÓÄ …ÜäiRü‰}Là‡i^f mór£þ“éÃV´[Q›03“*©“¢…ù'†öÊÒÈ›­ìŠÌÌešvVKÒÕí6·U2/[d½`ÄÚ9¦ÖïßgJIщÿ4Šæ' Q+ÐÔÐbImæÀQ»áª•¦Ý‹lêÚ­¬æÆ|܃ahyp“Ôp=Æ„YÏH4ÝÌúÒ(C!(Á^ ºìô!N¨ósØÊW»v'ëMR~¿Þ¦uŠ`~Í«(‡DaNÇ(û(æG·w/„±}Q4rÔe3F‘vÁNïþó^¯r™ÞÚ¨TãîœñQˆHØÛ¾–öB+Ù4ùª°ö¹€6äÚ²j û€y )ŽâˆžE‰Ä!Šâ#”®“]Uˆæ€FB>šà8äUÜÝ—òA¤þ¨´¹1ž~3›û0,ïÞ_«ƒA9ÈQìÇcŠnº¢ÍSY‹^Ý«ó÷ÚÞ.~¾¿6SE j|–‘;ƒƒÑúŒÊ¬ønnÆÓC\Úœ7®²^1ÿ·Š¤ªŠ'Í„¯è ³zÝ•©¢2%Í­¬Ú;÷·ÖD€É! .0„œ ¢öÏÇüãN3ÃkûÏJ¯now‹›×UÏ×ËÉ_¢s…ô…ŒCîQɇØËàøXyzåÎãJWYPx÷“ßž.],‡¹Öœx ¢? z·?AÎ[)$q ±TT.%Ô¿9§Ød¢šdbF ¤ˆBVºéöBŽ×B-R‹m=┨z„§"íL)R‹r;fyÓÖùJ-èZ‘õáèû–ðàÓóÈ2`Ïø_­é7øH¿Á°4ö]/Фu^i«¿ª´ÞÀÙÒåVÔµÔu£u§«»š8¤Í?QÎ8°a^Ër'ÊÖ–Ã2³Q$uºµü™´vÖJW"SeŽžwei)ÜÖ§Ý ®þâúù¾I6ârB¼(•¡à­K¥jŽŽ*8Džn:…Ãyj~ÎÛõÁ™çêSVåø½8ŒWö+NúIÙ'²QHcSŠŒCüë»OzI´Aüã¾G†ku§y¸6cb†½Gª!L“ÒˆWÂŒugy9ØvœÅZhóVk:‰Yµ@]¶@DJ1Þÿúæ'ó!-ºò¡ya8Ù? …?”>UµTSð †2hœÒm^ ÝÉ¡±æ @ÐݼΦ'f=-R~²gèNÚÖ[ NÓ„£½‰¢é(ú6ÇÄÜqQÁ{^PÐÐÈÊÜ¡túËŒùÓÅÍõý­"ì…²à͵µG‘ïc%ë¶9´â,àà³8Ú^¤ÈWuRçŽr ™dŽòrć#ξԃC~J © È€ßÎsVž¬ùúÉ)Rþ= Ëöƒ]ÛÀÚcÝ©¬Ä™†‘BP„û ¸Ä¥±Ðš³˜ BÜE<º0ÂöÏVjêª5{ÐxÚ5ú@¢q€Ñð‰þxPzÕ—*iŽVÇ.T@aõ­™¬%»¼x2+#*½v…±³ö°¹qm΃?á0e]W/ÍûÕ\vú jH_ï[Íš®Rì¹·­®~#o[­ÕŽŽ;œ"WI3æVè#æ÷¯òZñ±Û‡éþéþbD?ì¡®’6ݾ“«fìõÁQÄèŪîvUþœAÁQ†‰6E£uš¦y_~ endstream endobj 413 0 obj << /Length 1758 /Filter /FlateDecode >> stream xÚÍXÝÛ6 ¿¿"À^ qýmçö²ë–+: ía öÒ8ÅVã)°Kóß%;r|é:tÀîáôa’"EòG*Þd3ñ&ooÞ,o^ßGádîΓ ™,×ßóÜ0J&iâ¹qL–Åä³³Ú?OƒØaUY°–OÿZþþú>ŒÏ¸"ÏwÓ D*r?E’ObFà‰Îxfa"Ó,HqX[Þ´¥ØLgAì9{–?± §Åú ò¶”¢±dôðýÀ ãN‘å™}ßábyÎsYK±ã¢ÅÍÀ‘kúÈh0Ъà_HŒ³aÆhèÃF6ÜYúN%Y¡Ù¶ü‚<Æ]AÛxÛÊ3=aµ:Ñ(ØNÿâÅÞîT0ñiKÖ4ªûº¯Ê|6ꀶ:‘õ$cÿ´¹½½=—…W½¦Qù[Ý … à…; h8Ë ñc¸Ch,wÜ›&sn ï/á6Ur‡ä'Xž]'¬Îá–¥Þ¦ËÇhˆ4E«ˆÓhƒ(žÅ¾›}4BAzEÉÜyÃsv@Œ½ÐÀNÏà—*Ù¼H'llÙ4@IàÍÁ„›Fæ˜Õ­»ÃE‡ŠçØ÷ª;½?{4N ~{˜(hB… `dU™Ì{ôÇR rm% i»CÓš¬´â ‚´G€’N˜ fÌuã*ÊŸ¸%€íö ÉhÞþFœ:ìlLŽS­­A˜\„eª+EË5¹Á˜j-à‘ãŃ*¹×aˆœµ>…Cçݚغ³¯:H’„tPªÀÙ5mí$H§šÊT΄Búڤख>æLÐ畦®• ǺlÉV%Ì´“µ¦­ÊͶ=rüOkYï´¸í´ì ogÄ$VP‰¶ë6¤F*±&šÓn%«æ…à²Ú•ÑH§¨èðÇ@ãчH²\ÜRwyg0úne {¹‹¡ÿñ"CZH“j懺†X0nBÌ”8]»¸àu™SÑÔÇ^æp©nèÐþ­dÕ¿ÔùY°‰Xœ¹I¦m¿±yŸ;;ª’õÒX@ßÈO ‘qYÅÅ» œÚÊÒl`¹ÒÎäǬÐôXŠ [ÖnóxOBªXv¥!;b@« %E¾@)µ©>ÏbÆœ€À‚ÙjÐ*…~DvªM4Ç.âp¡4Bºã–לöúWÇn- ^j\·åECj}2õH™%Ù ó©™ œ†³:ßÒ|¯ÍQ-rËYA Ò?èyúr‡«‹b_-4s³•‡JÏ¡I\¶ŸhµÒÒú´¤“ûÃFÒ{4mL—ÀZˆ þz¦cÁܶÁõX8 )ygÊBgÞvŠ­G§Kfí¶Q¯¶•¶õq,ÙØnGóÑ(¶³ÿnŠe·ÝʸF5mÿÞ³º5Eð=(íÿfЏLÂÜ„x“déé(Ò‚$tã46°ceÕÊÛ] …bÃÄ/ëm^ç.̯7u©ë{ @œAZ2êùqÅE¾eåwè7Ý(ú=K¤õÓE"‹\?<¿¥z‘×I÷^ H,÷-tÓ2ê³K‚AL"ãÃ|2•¬Ÿ~"Ì™ýˆ¿.›=¸‚Ì>`ix\t¥VëÞ±ÏÿCýtA·ø€IŠ“ú nÇ4©ÊUÍê=yž6&k^¸T/=œñ¯ýlsÕÛéa†3LsUšã¤è–ižËJŽë×÷¤âBŸz¯_eÿ€år/r*#Óá­‰ÙUóXm׿Làœê»ec[—ûï·ñA¿<ß hi«Æ4¸e! ä=w÷·X~|nÌ¯äÆ±Aü²ãÞöjÁ×¥0ÞÄ`ùr`Á–=ó…k~myÖQÒte} E¸°~p‚ô²²ÄwÕW•î¦W”ž6m_wU6âƒóÊEwá,LüŒ^Å…}BÐ3VÄ 6‚¼{κ£Ø¾XÞü ¤~¹þ endstream endobj 421 0 obj << /Length 1428 /Filter /FlateDecode >> stream xÚÕXÝoÛ6÷_! ³‡˜•H}˃ƒ&ÁŠ6óbèÐõ–h‡«L©úH– ûßw”(F²Ç Ša{,JÇ»ãÝï~Ç‹mm,Ûº-G¯/ˆgE(ò±o-×–cÛˆ¸¾ø6ò¶–‰õiì„“ÏË·¯/\Ò“$aˆƒžFf•ßNoÌb):²•Øc[!ìñ]¹gJ»Ù4%ð;íÖW¯&S϶Çï2šp±i)_´à¬üA*eSÇF‘ ·ü$”gaÏ öQÔ¹õúÞ÷ÂEnH:u-ƒ'@Á‡´È§ ˆ³ZTgtû›íÙðç´Þñ²ý]§t³aI» êe-¾ˆìN´Ç›z!Â!²q­‘ýqªÕ"®x&¤™uzÒ¾D5&¥žÆm2TÓ÷mjÑ©I²HSžÐŠ5Òà€–‡ `EN8ÌÀá“‹¬j¶æ¢ ÊóË4[Ñô\ܪÐ%°­KµoÅÚßœ–e/‚ A•rZlê-JOV(Í4Qé-å)]¥j¹ºW¸ëƒ°ºa}4Þ£áP§ ?#MÍâ¯G³¥,É­×%ÝVY––ý¼4³›ì¥?•î9äA‡§ ñ£5j¨+‚\ïèâÌiA·¦ ÇÈuü§ªS th4‚Pçø.+¾”9;@ÔÕ†û¬2“[¶0žÃ=ä1î!GkiA9ú@®ë˜‹b˜èJf* .D!òŸôÀýÆiê˜qÅ4ÂÖ€ðÄ Ù†džˆ‹9­nÌ­"Œ¢£iþî†Ç7ŠH¥Š¼‹‘säyõFÔ`ì(¤]1qË‹LìÓ%ïmo¯‘­žÃ/m^Ô¶ˆ©Æ™Ë/-íÐÍiÙ¾¼€gùŽ—ï¹¨ËEU¡Ÿ^ÌÞ-Î¥…Ǩ¥©‚ñg››oDŸ']‘ÃÉNsu>E¨CÇñ)9À§ÿ1rdä)y•Þï³]×iòÐ;`wUK»Š-¶4öÅPn„ˆãí5O÷¸ä÷óóÿ‚ûTc]vÕgEÁÊ<¡Žišê¶Óö*ÿÞD\Äi0±c ߎþ :„ºåb¾GØÌ”W35ÜŠÕùRšçi“Å5OYy¢ëî§I½9›Ïg׳÷§ ¸^kžÂ}/G_G8g[Žypä¡Èö­x;úôÙ¶øÙB$ ­»Ftk¹ŽƒW'µ£_ô˜³ûÛÌUÞ\'ö¡;ã@>žFÉþ¼äva…NÅù$”E%ç,@“HÅž=%UVð?eµÊ5“€¿š6xüÀÐEç·]ø(ae;j\|Ãʸà¹6¾ÝЄ€‡…6Ù‰ÊÎhŠCäùz$“¸àâ}}ÄAa ~ñáÊ  ìy‘¾?Ȫ"~0.ëUɪ²]dkƒnÏCA¤aÿÑ Ùí' µªfBfä¾]T÷9ÓÚßÕïAƒµ0@^à²&¯i^ŸÉ¥>ÀF6ÁÞøŽ%€ùã¼ÈLÀ]!1ÙÙÓ‘M™Øt—¥a"†:h'E>r‰¾,}z*:Ê9*L>aà@3áa*ÿø’M€O=US[VÝdIÙV-˜z˜`¨5ôÉÌ8Šu¥@Áªºªž¹´VŸx§Ìà¥øÈ!ÚͶ ¾ŒÈ&eâ¥Fé¶h¿Ö²mÊG=[ô-@¸Qp4ò5Påû××ßA©ã= JERåÇŽ&¦) wd µOå½Z5¸%Ý0#¼„у¿{׃Ùååõùåly~ëvp}þæçÓ”—U7ûì4ŠUÞuy{ïžJ SÛÔÂí 4}éiJ¾ÄtË쇤#CÏ|$…³«_OÎxË&Ù~>hÅ}v¡¥‡‡ôˆâ";ô†¥òü€6ÿ´µ u éÅ1ÞÃ4ªô&! endstream endobj 435 0 obj << /Length 2508 /Filter /FlateDecode >> stream xÚYYÛÈ~÷¯`"V/ûâáÀHÆXÛHïö$qàõ%µ$®%RKR;™üúTu5›Ç´4šÀ³y¨X]ÇW_£›íMtóþÅ›»?¾Sò&cY,â›»Í "&U|“ÄÓRÜÜ­o¾Î–Ç?æ\ÏÌjþíîï?¾“zðq–¤ Í>É3|äEääƒðhðìB¦^H¸ÆúÉ?Ì:ŠfŸ¦ÝUkZoªšM±-óöTÒ@¥C•¥b*‹;þä¾X±,åÝ·?ÿûå¡hš¢Ü¤iÅ’L_¶à™b"°à,Ó±·‘YýéèËKRùÝ?~v+Ƙ[ݾÿéíûÛ»·¯W/Qò ± •$i’ôæã§·?ýòz_4-ʃ?î~þæãÇÛO·^/ǼÎÝ]üsžQ#k'$\d,Òm¾žóh¶=LÙ6#_M“]ó7‚HΗ‰ŸG1‘Ä`oáí]bð<ÌBG³jù›Yµ´¶ÞÅÅý®XíhIÞofçBBDz7ïM¹mw€ÄݦI÷ØË3ÑàµûŠéa¸¼$Åòr%8KµþP~$L%þe9°•VŽ{ƒ>0kv1cDœ±8CÛ'ŒËŒÄ@h]oþ» Y3>³9•«¶¨Ê-à7F[‘þK·üxÜfM'ÝÍæ´l D9|z{3{©_žòÁ6R)Ó*!)÷ Æž¡ëuÛÏ÷nW$©O«¡}HI/Çùeò.[Q꺭 ´dzânÏØÑ|!yÒûÕžµùwÄ#êeÑaëØ#Ò›ìPlw-½‡ÀGŽ ([ÄI6.̾ʬó6wÉ ÅÓ4—3ÑåÓ(]ý}fêYutèB?„,½©ñ÷´üôèõ*f\d˜7Eµúè‡K¤ i¯AQ6m^R†iˆ¥ÖÔ‡¢t0 m¾ØÅ ál™¯¾/Lis5Æ\µæÅPË4GMW NMWÖ§ÚÊǵ™ áÿåûSŽV¸ÞêjH‡žcóǫ̧«P¸ À3n("å³êÔO-­mÖ>s¦…'–†£9‰÷ÏX„µ\LÁÊR !gÅ Pl誩k€$h"…êÖ|w¿#š‹ÚÔ§’~Iðe÷Ú˜º5þ¬‹î,b±[Êf‡%1u±-<=puŠ…8wFä’8·‹àŸL ^ ³í)Wp,›;ı> (¨à½k<,MÄA ²ldVÀ*#zÄ`ŠѣÍ4åÀ]±wz»ëDwÍ®×EsÌÛÕθ{Ö‡Jž©ÑR>õùq.‰€ŒjýˆµZñTS틬Û`áAªCd]Ž=| Ë·ÆºÄqç&ˆMJzíiQðÔœñD_ì)N+§žpØ(¶ÆšÞäM)õlUW•Q:ôEÖi¶¡#ÓbÕ={†¶b&™ºD¿&eÏúwyKòÖ„†tN¦†EOÕ$ö´S;{& …Àã®4XÚ?Œï+hÏ—{CW§€¥u—™±§®xÑZ®Ý#nVõw<˜áRŠxö7o|‘™Ø“ÝõfX W˺Ò7F-Yš‰ÑöØ=¬¸èƒIš Š.ž©•ÓR¦@ ›Ïeu.ÀTæ“?Ü¿B¼˜Ø5i¯³ae7ÆífsªmrØ “m]ÙAh¢ëÈî6ù]@5”Çi&Úchî„{|yªßnwuuÚºÑBw€˜så­DE$X½e–†ºŒ.ˆ³ÏÆ•Š¿„‚bR¤}¼œ{‹ßÆÙ¨S„ §Z‡x„MÔ‹±má{<ܸ½7Áš“=Õ7cgy ØCª'£&æêŠøWÐ÷ÃAD6ÔÑÂI ¨¥Ð,ÊgK¥D¨E•œ)ÍŸhÎa»Éh¼šçQvEœ‹N‚¡™¤,Ñâ–.d ÏÄh ¦kûd,f÷;&í# I“+§{ºáÙhbù±Îà²õGõÜêl¶$}áks*±{‰ò¼\”¶Â[¶êâ5Ïg.ü®ë¼ìzÓ©îöÔ@O+7&ù]Û –ª$d˜{…`éϸ\W”-|VVîîÚ©ޱM£œœmç ÍI]4\´êÁCþƒ½¡À¸Þëâ n/Í.GoþQØÍÆ|Öݲ٤S ¡‚E7ãù*š²Xâ¯^½: Ôy·¨îKâÙª%¡%ˆõÓŒ|£‡¼$yG Õn¼«NûõxjŒ»ªÑ ü„¦g8F ®)Øeq U:›´Yÿœg©“ù­»ÎÔÜ×:ÐU× ˆKè%£l‚D_úÏAçàZ ¾%ÀߨÜõÓ”3™Gð3~ÕhÌ`6äfÛiý4¿¨íPÇ ñqvjŽŒ;Çt,5ªÝt|®>@z.†>TD³æH×IKìÌ Ggnùxt#jŠ>"‹}[½:´ÖÛ¼üëf·ªW Ö—J\(¦¥Ô¤x¿Œ†«jÝ}qfÌÛ¶.Jw¡]”×Ïüð­Qïþ.áÎ*IŸ‡dñ‘§œh5þè™êí¾©Î|¼FÛñ÷Àa;§±ý”Ôsê²~ÐÁ™kÿ¥ä eNôxZûÌ©)OäcÝhä›3séÛHJÔ£àúÉô£Ð5[QÆÛ_÷ýÀS±2Fi¿;ón¡C*'!»ãÛ»ÿê= Ý endstream endobj 448 0 obj << /Length 1681 /Filter /FlateDecode >> stream xÚÅXÛŽÛ6}÷WÍCe`ÍP¼èR4›&)P iš8(Š4²DÛÂZ—è’­Sôß;CR²´+;Ù¢ha"©ápx8sf(êìêü¸xº^<~Á¥‘Èg¾³Þ:¥„ ß |J$gÎ:uÞ»Œ.?¬züBð‘$÷%^z´Ì¦ú´ô¤«’¶¬³Ï ',¨]Ö£™«~êŠ8h<ÿ#Ϋƒj&3Ï=Áê„0ÙÚêÐYy hdt5ûòö¥j÷eÚüN%ýŒSÉ7ÐôP;hX1D`–~ôh¹’”º­*l#nnÓÄéÞwŹWf(‰•šömÖîM+¶ò¸8šÖ&NnVª°’ê rU´V*®•i4•J²mú¬a%‘Œ¦†m¬Æ§¯__¿¹~I– Ýʼ,ÙT‡¸ªÇ9ÛÎnñû•yÂ@Òfeûü¤ÒÃêÉçS ¹jšx§4¬·e}“» °cÙæcÝž£ÀjNå_³sM«rÒf¹^«VMwh§¶ëSíèjØ.vÎ"«]ìùzñqáu¼Áí¥”„ú‘“ä‹÷¨“ÂKÐAx:·Z4w„ç‘":çíâ—³.ªc ¼t[`‰/ øÕåùc‚„aøÀ éˆÒa@Xdùà™j’:«†åïSÀ”¸€ ¡}¦wºmm1²ý;¡«Ô¼ö«{=\Ã@M#†hùô¢ˆQι{] ÌñŽvC¦c×à’ ‘¶ýÅ»WFfºÃ€Hõ2Il­Ü(Y܇Ð ü¨MZºÆœ­ðܪ.Ñ–OYªmå‘›!a£ß—ÝŒ {„î®CÊ2#gÈCØNÕvé‰A(Yåí^õb”ÕM{_‹áÝÇvÙx!‡¬rPÅxí>œqjÅâ"Ñåù$ðUïg´„û¢¹N=˜œ„âÌTáîŠ!ZpUÝ0»‡F­Ú®.l,-Xg_•Û9 ˜qþ¥s00=wŠç®ŸIY$1¤.ø[st*˜YŒ…xƒ“%3K‰1Ç+0IÝ, „@àp¼ç°w˜¾>oÏ­¸G†èo€‡¥uBÈUŸß<öó“CÖèÔ2ÊË6;>ÙTèÏyÿv’õ9 àM“ë[a·9~“EÊÚ¦çlÀvµ²x†cã¹ "ò{¸¾|‚çõ«ß®à?£ …Á%=60d0õÇÿ­ÿ¬Øšcä>¶ªÕôPÅeŸõm‰ÒX^¶Ñ.hlô&Äö;5¨Ü-+k­™ ?:õÎé›oî­/"ú—?ÍÊäµ-Gñ™_2¯ ýĬhÚ¸H”1#U­ªó¬ÐñÇ$ëK4>ÔºføtGÇw€¤¹¤âÍ—S®ïë-Ô´Ò®¶úé YüÐ1õ<„ÄçŠ<â‚ ³ØŒ3Åm/1 t(€ÑÚªÓüÎÝm]æ3Ê}€ƒÊÑŸñÍõÎ#¶5'ô*…2K`Ñ€yYÛs§Èô·|Ó1~pÅøu¯ {<’ÝIípEã¾4;Ö-¤B|î2s4xW+쫹+¶ˆïtw±‹ô}wÈ)3(ï¤gS•7sZ8ÌÉw­©Æµ°¥3ZŠ žm¦§êº¬1=p€Ç~¤Âqýµª;»G{%Bg¦DRŠD‹ª‡ Ãé»Àp“cÝeë˜Ï& ™­Ož¯fŠ… endstream endobj 464 0 obj << /Length 1845 /Filter /FlateDecode >> stream xÚXëoÛ6ÿž¿ÂÀ¾Ø@Ìz+Û€¥h:`@»,I×m?Ðmk•%U¤“¥Ãþ÷Ýñ¡‡«¸I <ÒäÝñ^üèl3£³_O^Üžœ½ üYJÒÈ‹f·ë£”øA4‹#JBß›Ýæ³÷ó—uÃÛ« ç¼å»eVr)o;{凃³e$N€±>ä1ÜrB­(Ø ö.íæ¥ãš•#/J9:78?”Åà(KHJ™9z»‹¥ÄóVÈ}©NæõÚhÐÁÉÐ'¾ç;-WÍÈTÝ_ÄĘxaêöÒˆà†ûz_eª¨+³x_¨­Y—Ŧâjߊ áŒQ’€Ë‘2!•$ ·çGÕ· –Ì7û¨”4Kª6¢Uw[‰|J?nôƒûñ#æc$ C#İé,±)*^šÙXè××IEÔÝæÕÛ7ß¼ ™àæ6¼¸ºº¸¾x=ÁÈAï‘/@ýÔ×j]·†€Xåe)ìÄ çwø—{Žö Æ,HÁ¹0F„Å6ßmE5¡ /ñ¾SCn“4cMï·E¶5dU›q'Ô¶¶7rrñR¯rý@C*ȆœÚý'4Cû™@£¸'WAžµµìÒîg%_•¶>f5<0ÓŽOÆ>¿X`hCµ˜ÒeÄS½o˜\?ðʾÝÖ»FõO(‰µÑœ–üÚœQB"¿{èvp UŸ·™úEYVP’*R·›£ïti.æjAŸZ©‹RÖ\ê þ /Õyö[&¼ü‡ïšRL‚I‘ #B-­HÀÔêÜÈÏ-DkHéü§¥uB»6h/éøÁŒ¹Xs (pâb«øÒ‡9b(ÈAvìœÑÎé—·'ŸO˜vë0Và3 Øe»“÷é,‡ñÓdv¯·îf„g ËÙÍÉ^Þ¹C¤ 8@ ÓxäÆ nhÀ`ÄÀ¾Ë—UŸ –̨Á+ ó».ÅlY× Éváǰ' óM!•0Sûœå¨“!W<ìû´`À±ÊXÀc —z†å´…Fáæ˜ù1ƒ7'pTfmÑ8ï>†â£æÓî½GÒ-¬‚"7óB6\!ðé¸à¬nD«­)û3ðÒÚjO;Ã! †ëŒ¦Zícl'Ô TÍʱ€¢)8ˆwq<¨… °äñ¤R÷VÂΧ'écu¡NÌŸ CDÛÖ­4Ù÷³n¯ß^ðÅ´fÖ-še`¿O³‘.C.³÷Pd¼x^Ö›"ã¥ÎûG°9€S¯JÉÁRãXsÎÚ•0Ó¢2#ošòaYÆÁfÍai¦ºz ûBÃg ÃàJßVM©å{wý”$!ÂB#ø~ € rÛtøn@|Œ» {æÍ?ï e(“@á;ç36×F¶KÒŒ²Ö¨g°R£‘ô( †·¸Öh%ÝDjnŽ•¨2Þ@c8Ø Í¡9¶\Ne€Ý%àþR3²¨žnÛÐ#!ë°•jZ‚-b=ø)ëì“i»$tgÑêRì,p;^û€Þ‰lË«BîÌÔÆã*CãÆUc¹Œƒ[{×Bó+k¡ÈKcnx-jRõT gÒ>¦ïTzÙw(Óe'bÐkxãÚsü›Á“ªÍTã°˜uØ23 ŒÍWÂŒ®ëd®{`ЀðÖ-ºµª®–ý:v»¢@ÿ–Û+ûB2HþŠw7­­Àû-WVô ÄkXG!«;*êC9â9öTð`úÓÈÄglØ5«y}óæ÷wSpïrݾ F†Ü7MÝ*+qtU˜Û«B—4Õ3²Ð'IšôÒ¯ÜÓ7á F’¾«K]Õú£ j3͉¼4$ÉÁ—Ž^Q0Où¯{~¨1ü¤ !‘Øs‹»ßµXðSÞ‡¼=´ß­DkhSR cqKÝél…‹É/ ±Oh_#¾“i ›g£}5r#{õ0!f Í?”yoœ¾¡^¢åߪ &‹GÞ®$ Qâ÷É ’hߨÉó!I‡M¶Ǿ™ôlïŠM%”Mr›ð‡³û„•C«mÛO¥:`é’Gž?½ƒ‚f>Õ•fô9b«Ts~v–µÐ=µº•˜7mý7´ØL݋ՙ½‡<³÷>swéVH“¯âÀ½ÿi¥{Y endstream endobj 393 0 obj << /Type /ObjStm /N 100 /First 876 /Length 1771 /Filter /FlateDecode >> stream xÚíYMo7½ëWð˜Ê%‡3üŒ N·Z °S ­áƒ¬¬c7²Vå4ù÷}³’¿í„–å4‡ŒåRo‡Ã™Ç!íC2΄ ³ brÁK2>à-g㓾C„÷â ÅŒ§7ÁôãOô=Nq ›è"ÞŤH°‘Mq ïÅñ†3¥` çw¬9Úã}ÐF#© ã‰ü€ aÐ;4” §6lzfôxØQ > ÏøÀg&4ðUQ¢ž y¡{ACéø¨ÓÃà>£‘ÕŽ7ìf̤S D}€ÑIà𜠿R„˜Ð“\0`”X{0B*ŠÁ9(˜Ép«{üÀÿø¨8²ŸÁãÁ‚ þNAH_…Þ‹ŒfätôÞºSËEçˆ7v:ztj¤¿‡~íIúb`B¼xGA7ãó¤ÄÔ‰1Ž.nÑüeXàΞ…ÀT!í™’´GŒ8¯±шX?LM4ˆt}$¨uÁOŒPb '>b𗤼¤);Ñ!’Ô|ô&z€=&{ÊðL„#`9¢‘À.&ËÀX–(Q{ЉÁ€™ ¡ãàëä´Cý”¢=ÁĬnLˆÞœa8a„B}L£‘“ |¢+_ЈړMò®w ½G`ðLêÃ)Ýø amƒæµÙ ™‘rÛ¦ùãÏ¿«mR –‘w“Óñxoðüù­Xï\ì­NïÀŽl„÷Ö¦\,–¸ËÎz$~ÑaCºÆb«›ÌÍÆ†i¶¸W–Åg[ªoyÙFÄ{HÀò%kVŸ½¨½ QsêÛ0ݼu£vnvMóöõ–iÞµŸçæ|Ôw_¦-~~hÍ+0h'ó¨S?â ÙnOºÓÙ¨=é«ïú­}4|Ù}6»RÄb.cÅrÙÃhÃL˜÷ðÍɤƒÅ]£J«”TiõyA4/»ÙûvÖ›v{Í/Í›æ^ ½{Jf„Yøì¬*5âÃ&¨$Ôͦ)ؘ#p;§ûsØl~=š|l676úšÍÑü¨›4;ÍïÛoôïÉñðh<ïžϻهáäÅÁáh6²h?±Û¸-íšÞðíT}ÿrNÕ'‹å“ÈV÷rl´C’X—Úì—{Ç4?wï:ƒhy²}0±/º¼8Û±>Ÿš BQ%Õ§âeìYô%f+$uàˆ.R*ÁŒ —PÆ6a3UrÆi±wÕ±»XÝSÖ¬òQ‡¥‚åFÐ×Y°&•,PØÃ]òqE1®Hɹ.\—’ õXQ1x1ÈeÅЊäAŠ¡‘RÒ‚hñLVŽ¢{7Ò2/„C 0ÊÐ~DÝø63ÔEVPF.™‰ˆÕ©}êöÛÉèp¸jK C) •-Zc÷j‹rÍÆ”ÖK ñ®åp­¸]Á^E´R*Á¨í-¢r+û—Õ‚ð¾{öI·jž‘¿™ge•<»4]rõ>¿Œ½PºˆÚ'>X°G8ÿŸƒ9Cp+½á‹·Ê½Õù{wäF…pŸb¦ëRM Jz"\<—Ò–ÒüòI_‘ð{XZtëqKBA´Š ”¬×Š ÕBè¯Pb­Xz8+ê-À²%(f¤©Å¢àÔ‘Ï™ªú!/˜Þî¬é§vt§V­‰=Gëu^ŠÕ¿‡l—î$±?§Óñ—õÁ›Q¥ç¡”J^Cè¬ÌÈ{›„{&zuå 5§äêõQ] õ§õ+ØóB>Á+!Ö9p”:0!]ˆ+-Sp6:®÷åÝõÝüA‡ê‡K-ß8Gë-Óä–y½ŠÃ)ê%! zI —ç9KZGÉʧT½¯«A¾Ç)õV°ˆô¹ò`ºRËù^`†WˆkÁâJoüŒ3Ä£œ¯¤ÈªiùFZDzhZ,Èò’šÞÔ.žËŠD–I\V$ѯ3BÌ6à|3iå¡÷è¨rÙİdž;Óh§ ×½‘ êôj˜œõz#í‹-zg¼uòµMök[}M)$¶èù5’íÿƒ ÕÛkA<ºï] ÍFóóÃîxzÒMFãád½ÕBÊ#°õæ…ô?X¹’ûÿ”Xrô+l‡Å+Î HLŠÁ¦¬›R¾ø;‰ÌgkäÀrÁA´ˆMé›ö§³öäô¸}HÐ\­z¯V3ZõP’ú˜9œÏ§Ïšf4CœÌ~šÎº¿a^#¦ù§Ýo¦ÃÑGˆÐIsÐÍÚáè°ùtôaÒÎç=vúþàÚ]D õ[Øeì7·°ÛÀQ°Gª‹¢9T‚qr©T‚µö±Œc !?X%L\üüCsè7·:0vÀP™(”]µ,P­ÂpZ×EÜ=n¿ÿÝÙ´! endstream endobj 493 0 obj << /Length 1522 /Filter /FlateDecode >> stream xÚ½X[oœF~÷¯@É +…ÉÌ0ܬF­“8‘*¹r­òä…Ù]`ÈqÜ_ß3XX³nܨ•%sΜË7sn‹ƒ·g/×gÏßø“ $¤¡³Þ:cä³Ð‰BŒŸ:ëÜùàRºú´þõùæO8}Ê )ÈÑ2%q0„îÏ›¦hûÆâ8ÅÂg(“$’s !ü¡Ø‘ ACÞ( gJD¢pØ»in…üÌå½|0UÇ@?f”g߯Š;ä ªíRÙ=¤hî×#Ñ©"Ñ<¤‡&(†Èýa‡†ãù¯õ¨¸‚˜ú?ÎȪúÉ{HYÀP”?®ì+Ï„Ø!SXöÅ„â'ðB²ÊŠ⬇Ì"U°µ*>þM†¹‚ÛZØúqÙ™Äîn…¥6ÂP¤UþZò¾¿¡O¥J‹²çUW ¹Kë_¶ûLfè‹qL´Œ™‡ï¸Í&e+Nø63䨷ï^©6@ôäe!²k›ÈÕ³z2@vŒ QÂÆ…”ikwžª:¥å¡*T\ÕÓ%(M|¨3»¼A䬚Jn ó‚ ŒBDïY0-ç:Ÿ6c¬b†è[ åpÔÿÔP,ºaÍšya ¥×@H©ôß™(B”{ÎŒ¥ödu,ÞÊÔ4½ä£;öëænVLZ¥j‚ÅbD%¶ivÝ.¿¥ªt.×éÅ›ƒÀ 7χ‰,*OŸ®¼c÷7ÑBöõùX21”ÌÄ2šÏo ٜõÐo©y0RoC¦Ô/·E·7Ôг,¨)‹Lå „\ Q0ÜÿcæÁ‚×SNL§ìª>±¾6F;$Sý4´:µë”ŽMS¦MSj‹È9ÁÏÌæö‹ì,ùòúúâæâêEsZdÖGî×vGs7•ˆûF[)9ߦ0\¼Xßüqy €á°/ë\ížžù˜•/×g_ΈN dœs¨Ÿ GNV}ø„>‚pä'±s«Y+‡AÁèƒÒywöûÉû¨‡©y2¬BF ¦2J'‡$ÆfBè´˜]Ö馴1X)QÈZù‘{e=€M3 ¼Ç”ÓPàQ? 3?²…ù‘DÂÛ×¼ÍdÑŒê9½­ubñ13ÙD‘¾;,™<¤VÔ¡VÆl\üÅÍJ ™ºä†+UÓëØV_ªá0ÌÇCŒ«K3žZ7O5éÔÞûSù17ƒA»Ô’ë’ªJáØzŒæ¼7Íò4|@JŠ=K¶”8k“Ö¨ûj£‹Ðbkž·*³ƒtà¥Ý±IM6W|ª:‘†I“àŠ¸¦ÊÁJ{¡Z.e˜uÝŒvñcȽlîú‹GWÔå¡ m„ìô:q‰YT~Û°§Œº»RltgºØHC5’oa®õÔÈÌ”³+Å!\¿;+Þ*CJOû!tªùÀ …8žN=Ö$a0QuQõ•qÖHøDÝÝxŽDl˜¡¤Ž¥w<#õCÄÖþô·7ë†úªí=Ìt Þµ”}²ÙþJm{à…Ð[ÑÔK´œ+þiÆ¢ÿ endstream endobj 510 0 obj << /Length 2155 /Filter /FlateDecode >> stream xÚ­iÓFô;¿"j?àHd:‡Ï•¨´”¥m·B[‰VÈq&‰[ÇŽ<”ß÷æplgöŠ„<™yóîs–ζ3:ûùѳå£^„b–‘,æñl¹™1J‰ãYS >[®gïƒ_ŽUWM+_ÏYäm¾_U®Ôü¯å«^ˆhp?¤Œ$) ×¹@GÔ’Øp»°À žàž¹òNå[9ºuÛ8§CΑ`„ÑÈ úþûù"¢4(šZuí±èšÑÂÕc$‹&`‹üs÷¹ cSÝ ^þ¤ýÔ´ÿÈV´OÍgï ~7‡ÿÙsÜåêŸñzýDSKB’ð1ÇEÞ;"Û¶™Y¾yweª®9¦6P# —×o¯žø4qh›m+•ZåÞzýææg%åzt~óîúÚÉQîesìFÇ/ë—\Õlo%Ó퀑]S }÷òæÅ¯ßY¸¾.ÇŒÞ\~(v`…¢“í/MÀ †¸çžÞû»YÕù^Žé?{ýê×gŽBZP“YX3 Ã9ÖZv²°*q®ñú¡¹~›ƒÙ…Ž”Œ¤¡½{ÙÎ ¶Ç½¬;ugèyBŽe„YÒõ7fï!çIPÖÜÊÙb¾†©ƒñŒ$Ì¥Ž›ã~%ÁN<A³Á/>!Ÿ@?@ˆÌ¡Hƒçrƒ9h@ø®1ðyU™ TŒ²{sNƒsy¬¬òU% DnÑZí¾¬Áǵa#†MǦZ}6ÜuÁI ǽ1úOšì¹¤xK9X2É‘#´ †„ øÆ$–“.&jެæxL}&,Xî@‚†Amõ.¨Ñ;îÙô„˃;ƒ™‡Ô0¦Š”ÄY_>æÕQzÁ¬†:V!±’†Bn~ª"¯òÖ¬Q<,A[ÇÅO™8õ„bl'zMúH ËìöËî&$™R™Õº)´óç]ÙØC$žÄZJý»•RÊÑ= ˜«²Þ¢GáV¡½Oj@Q°9Ö‚<Ò$PÇb×#;Wæ$M¬U~8TŸ=úÄîÍúă*Ò•:DûÛ…œÄ¢weÙà#"KƒK‘$ÓÞ`V¨½ƒÎÃSÈu%ÖÇRi=â‘] âñ(ؙȩ?<Ì$$‰{^ÀXj3•e¡ÖÁ«bw¬/¨93n n> fU$¿ïdíá‚'=%ëòa–OŸâ7 ¨/’9\rw0êÖ§ddêû9!°K’»eãÐh%‡Y¯Û5únè”A&Ôû²{žÎà{h”*M’ƒ_ ÈÖìËöZkŒG„¥áØñ´!ð,{"ìÒ#uFB6V®7#0Þ n’4æ°£-œ?šŸÔüRY”’:¿Ã¾‘:Qü›céE@—׆¨4èÜ”¿ÍcšœETäµjózkqnÚfot$bp¬‰Š˜Ñ)º©<¡ö„„²û eíàhScU‚×èèÛ VÒgú›‰¡+Yo»Ý̱&>˜=Wæ…E)+iƒhyñÇ)¤©ìk¥_—t‹l‘Š ò8"Q<©ÑçúðzªÎ ¾  ,œ‚pí å„Ò;ã7Ãð5h•r”ò1Mq*º†¦þNÍlEë•Sô­|rÐG³/`Ôx6£„±x¬NÕÛTÛ¾¹ÏïìQ½ö©MzJ{w¤qjJ›âÊm ­ÔúžN)lj’q«4–&³èÈçb’¥}3òüêõ›«Ÿ.uJX^='~7ŽOÝ L#%ü»ú.(ƒ°ºªmï‰*u±©™…¢“ßí¤çT{Ò{ÞÖ­îQK}–îÔjχ“N’a'ù‰°açiì ñ[)êó(º¯Ýµ8GÜ'Ó ¯üÛyuØÍ/=ýâ±­r%×c9 ej/..Ü¥¦!ý·ëSÌ—‰æꯙkÔ×’·z6" 68öãª×ЬãSšý­¬e«^(€L6ÂQÝt¾º¥$9õj8õû‚%t¡¡í´auªé&u'Œ¤bÒ¶ë лäÊh_Ø2¦÷Z(­²º¸(*dûVv Â·]+ó=‚¤=¨Pš_N ¸î[X+}Ó;‘÷žkŠÛy²»×™mRÏnö‰Ägp`L¶eqŸÁ£¨Ï;˹€Ùd¯GŽD»lY›µ’ES¯•épôÖ ö?™Ù%µ.'ÓŽ{ffI`rÞ*ÙY¹=„ä ^ü¼Ü¹º ¢“ï@ƒ£.4†…j×ö´µ`#íâBÉÎIt]îË®Åа¹½¿jtƒ·½S§P¡O tq8ú ½fÒëÑ_²Àn1; B0y)¹öM^ ¡YâR”DN²pRT_nÌÛ¹Ù•}ì§PêzØ¢Ú72rf½œÏ:ç/ÍØIV‹Ü¼ ê¹Z9NZã#µÙÿTvÐbîÌ=¤;|›Õç-††{)a!„t$¢Ó™©sÚQuŠÆ}üåÁƒo†“À‰¿½Àí-ÔѯÈÞ§wÊ W¹êïhÀöϵáÅ5ý3¨.þ¶D Þ tsTßösj·6Ç®¬$AIÍ”7á"I%{‘‚“Øc|VfµäÁjÀ©ƒóÀÏ¢4@I+ÉD”@óßJ|Çÿ<1õ.bº² X¶4Ôf=è⨌(Ìc3Y'¶óVšíVšGU@I¦c]wl{]»îWukµ/wàÓô·9Œè£þ¾Pá€dPë¹?=Ó4õVSxª5¥ŸÆš:C£õcv{-à¶Mù1'<šüu"·Þ(ÒQ¦‚Ôwo> stream xÚ•Z_“Ó8çSLñ”\­-ْͰÀÕ±Ü-ÅÅÃî=8Žfâűs¶ÃÀ·¿nuK¶3ÎìPc¹%·¤Vÿùu+ÑÕíUtõÏ'¯®ŸüôV¥W¹ÈµÔW×7Wq •è+£#‘*yu½»úc%“õ¯ßýô6Q“‘J&"Ñø¸1ÿ>ÕCU¶ý°ŽÓUчMY}_>‰x>ÿVÑ„ÕFEÚñÚHƒDâøW»mŠƒ1¸úc“HiVåf(Ûý¥Q bZá|/ ì%U~…ïÚíz£t¼r\]kصªžžÇÎm³³;ÐÒ³no©Q4ÜÓÙþT¯a½þE²¶½Xot¢V¯íÍ:ŽVÈ$°‡õ]m´ÊÄW›8yšÒºž¾úðî·WOÅl£ç2Zä(N…Œ }(Äù7³íó'¼û—»]5TmSÔëLamÝ:ÎV·§ƒm†žHG8.Ü8¶aãÄþ‰ìªÃ¨ùñÞâb™Á¢2?Ó¡øb©O=œÎùò’é–¤T\‹8ÏéÓ×v(ªúQ:ómâLèì\ýPõ”ÁH'Að¸e¯N´áD®nÚŽH=¨ãÕÁÚî; (ÛÃñ4TÍ-œ±ŠÌêh 2ì-5ömËì©dI¸?mÙÙbð3ßUÞík~ä´â™®Ld‹šðl½1*Y ß–Z/ž¾ýíã¯O/ÙDj„IƒVÜtí5Ô¸ß_„ÊD–Æ~ôd[×¶^à›(‘Fé8°üRÜZ´PþÝàzÕ´ÍÕmY¡ÅØ,_åšÄ…]»‰å8‹‘`Äq”ÍÅМ[”©JãU‹ÜAcïð»¶û‚ÛõÔéÌ:w$v¨g×@ß~_Ølœ*EyÐc¯RŸ+pD_j– ­ƒrឌ^Ýí«rOÓW¼/ÀçÏqAåð pùº¡)…ß¾ÚHÞ¾fe/Ê=ì…ÍÖék)z8M†'ø#‚»è½Ý[nô}uÛx{/èу~×<`.Ðuš®hM‘óB©aË{‰'¨V¨tÔÀ+vEÓÛn J?:lß?&$º-¸Õ06¹PYP¯CyƒR"‹Få>5%º<âLž`ȇSS•`<ýÖwÖºqLÌ{.~¬Dœ™¹òqȶ¢3ð( BêïÛ’úê*Û¦±nE½XÚ¤N„–Éc6 ŠÀ£¶k­NU½ëiN·[˜ ¿(ôð²3ñ‰ôx_5§o¼Dï­^ñ–Ðn8â<q$sqô§#ž´Ýµ§¹Y½²en>M´× h9Π$( 8EÄÆ‡¶¯¾Qs[8¬’Ô)‰ïgƒÉ‡@ƒ§EŽ;¢¸­Ãóó:‹kvíZ¦«»ž—õy|_èÑ|3 #‘Îfa|.ûóŸ8œ¥jð©ÎÃ='ÎŽ{(ìÞS )Ìè^~·]UÔ—þ=–a,û 7©ŸÂE&Xšýß©ÂU}Å?E 8€€C%åÏQ0ÉÜõ°zÿ˜Ë¸@ø …Љ·í&ñîk[ó炜HäI°™ë Þc „Àî˽€¹Ú®_ÈZjã» Uïü‚؇n³.®`DO²cË\H“B¬4c¡½B‘êYpJ½¦…ó ÜE~TìáHhéÍŽèK†ŠÐ\Jh”pœöŸ"u8uìâuˆȃM ÉND?Ø~\üÔÄ!–÷ó“„DAÄÚRÞçŸR¦¡Ø @~öøsˆ¢É9¤Ñë7>¾ùåå:ŽãÕõ›×äÙ¤LÆàÞÓûÝÞ‚’wô¸6 FB(N·û‰N Ð˜H ™0*ÌN+™I¤å ”ö¢w¨0½äf2Ȧ‣®?~z³„Í )Ó Š@ö¤"꞊(Îj®"øÚp£= ð‰ÿ¼lí?ݶN”^;„ä/Qznñ,Ƨ²DqsªkTI¸¶4¯Œg’ˆ.I"ÖÚó°Ë·/ßÿ¾$ H.óñøŸÑäº`â¿0•CŠsjØã€15 (˜Þ·¦æA[ׇȦ„Žäü½eF'à.W{纡ART¯mêï3È/§ßE¡ñÌ™L  j7­ïqDÕþ)è­é+¾Ó̽ ¶v_ øZµÝ’#Rv¹ÝÞú„¯#¯ïÚ²÷ÏèÕŠ[H-Žüš‰Ô#2•OS‡%^pÄYÐ7íÝ#lb™Ëù t8^ZN"2°ý™3…И|î¶ÈõC{mCmÉŸ‘˜ 7´Æ®­ñHš8,ãϨ¤ä@AÖ<²¸¡\› õzm3¬"ŽEGx£A[4Ù%[” l!Ö?ì–LÀéW¥R‘Åg˜Ð;%³‰ãÁ7çΰ1÷& k:£7Á!¤áËéHOWA6 ª–;‚ÜØïòH`FRqd“‚=þ=Þ%9{fhœyfìÂÈr{✓Ü;ŽIc”½±G›læ4pîÖÁ0hŽŠWy–¬„P¡>òŽé<ªoH§6ƒ«?6)8øe°†”3Û[—…|»7+#ÒûÙšÔ>÷ôR,Ìc03 ×í-$tõ)zb¦Õʯ(ÈÅœ8tÂ…@lU<çÛµIVNÜë9 ^ÀDûs`|ÖG£Pæ÷Ne£29ÓR%N¤®£jÐ~pD*â(øÌoK¥aFwè28`‡‰^¯êªˆ ¨\‡mÿ(ŽGg–@¤s…nyÑ ¯{ß/)@d„%½=ÖÄl±f¤Çá½æYe8¿ë¹ø¶ÇÃ%žó¨ó`ö±P¦ò|aA‘nÿ.ç€9Ô/ùV ɼ™è'ø!È©_ÀÃD—\mšˆH…læB-$Ñ%oNCU[˶ÂNš«³º(j–’¦g ¬­põn¤9óËRBYz^ã=Mb° çú Ûí ™„ÔaƒXuº@€ÎÄ…t8Ć^*~.ï4“BÅéì4’ 8¸Ú~ì‹Ð(‹#x`àm‹ ó^‘ÀgO/[BZõæÑðWõûL#P›|–Ç|+‚‘E½ªƒ-ôM•°â™/¿±O.J®Þ EÿÅ—ë(öœã`±é[0gä<ÀfÍu}vI.]u`Ðy:¿„H–ö>[ØÑûâÇ„5ÀaÈë4ÄV(JL­GcÍ_èg×z‡5œ2Š ­(Åû¬bð&Ÿ°ÂBÀ«pHð+îPquc`äµÒsÏÝ^{Ð}&áÁãs A¯e~9gÉŒ0*sð=.óoÈÒ³Ê5¬«çe„ì¸ ƒÕ wâ¦Å9o^òõ¾õ i7‡ª®ŠŽ7ïR~ÏeÁI))ò< 0¾«õDöãÝÑ™ŠÌyÐ\_¸º'¬"WrVè.ÈM1k«g’ËSgS-Æ£n·”ó¶‘¼ëRˆTã]Yd¼\ƒ‰÷¨áˆÇr‘àtòÿ|zÿ~É]åÂäaîŸiê#àvЂ¯ÕŽ«lrû¤J¨É^wÕ’DáhU>C$HK|{¾ZE5…!Ï<¶wO÷Vê~t‹Š­›ÅÐkhêG¨Â?ÌÕ|¿•ö8øTµàÖ«ª-ýÕ²Ë8©àÑ$Ülð­G{;z»z²Äwë‹v*©çÞÐa1™'Ì0Wc9%O8ïpSãÝÂôrz{Ìú¡*¹Ÿ öL 7‹@sÕré¯(¡HÝ©Á‚q7‰ÁC»¯¦¹}¨Ë"1~9)q±H“ËsT$oKŒInØáÅõG,TzÆn-&Ó4²lw–¨vb§Âãõˆ—ˆ©gå º3·vû(~Í.–&*H`ÒQî&¡Ðg<@Bo!ÁÜq67ô• cxRPÃ>t¯3FtÌ@!½ÁÌ9sˆ¼ã”ŠÁ€Ã˜Ù˜â;OØvµhõbU•Ï?÷çŸãÝ>¸æ-Wã-O5ús|ÔÛµ¤Á9ß?Æ)‘ÁcD—sð'Â%W–¹^1#嫟ž~ à2•ðC…Ü8º•°Ç?ý]v á ¿ØöÏ7×OþÒÈá endstream endobj 522 0 obj << /Length 2529 /Filter /FlateDecode >> stream xÚµYÝoÛ8ï_aôåd æŠ"¥à‡¤—ée“ÂIчÛÃB–i[[[ $¹éþ÷7üÒ‡M«îÞíƒAjLÉ™ùÍ ‡ád= '·o®žßütÃè$A '|ò¼šà0D”ñ‰à!Š(™ÇÃf*$.a¯ƒüAÌKƒÛ~ü® )/|1ÈãÖ™ƒ&¼Z@!m·:ßÐéHécæEIç™véùÞ ñxˆ!Ñå ^CbŒhŒ‡ç2S€{adp_®×Z¿Z …Ýž–†¶ÙÚë–Ž¶‘.L  §,£à秈'ÄYªó]Ê­~ØòPŒÀÎÜË|R‰ï,〽fªWøûÌ´_Óí^ú   pÒy‡Ã"¸U!ž†(´BªY;‚ÖŸ¢|UºÓL ½4dY¤‹­£I•ž|³3Ý­ÿI0ÂQ2„¢rëÚoø2QÈ Û¤òÔi ÿ¢I@Š1……wcjeª=i!¬Ó¹Në´E(º§v„Ѱœé¨EÏKÂØŠ…¹ÛÞŠ…’q±$I<ŽÜ݇ܭX`-ŠGÄê…2bÅÂ##έX¸K¢5E{xè­Ü öBÛ ÐMæ:³ÂÄBÈŸ|èˆí®’£èˆÿtÀfe•gÿtP„Ë:‹­ ÀÝâ´ @Tp4n,Š:pœ­ú¹V?´§ds„;Ï¢´s«}u]¬L[;B{±ì¹IM/MëܤêoM¼õê•Cr&Îq{BðÅç…]Á§Ø¥?<´¯¿ÈýqÈÚXró6nC"£c!b· ãZŽ»‡ümL„%tLdl$&B>Ax?&FÔÆDBLL„ÖÄD‚mLÊÖeNê£]Ý«XÆëœù©€áæ†ØW’U0Ü{µ‚¡õ"fÐVí­bLµœ@„ia¢Š(:5ƒt=Dµ…Œ¡C¬,Ý$¶µ¡-!ö„¤Ðþ>ó¢›ã·uÜÕV{¸H¤DêÍv¹@œ·:zI³/éZ^t1v(µ_ ¡ÏóË) ƒ÷×ðÁÞ¯§èÿ¼¾šBût{@W7»Òç)&ap98 _ÏçŠõã¼Gw±Rý3,¸œB¾Æb‚*SxîØp.‘^» ÏWNàk¾loÒÅÒgl 10¶ŸU±Èw±…uBÖËÐm‰ .€ywÛswjUžhoÔ†Ò,µÎƒY(IqÖVkÚ„„Œå¤ÖÆ''ż;ý¿MKˆÍJÉHVŠ#†´Ÿ—Ð6+Å6+uÉ:Ç.+Å}´©O›šö˜™éÆðjä5™$F!cC“KTÈQ¢Bm¢BOÅ1ÞÉò\ÀEÉâl§ÒM‹(è[ı0 ž¤z)idPm'V–Ú/&V|@•©zœQ=u2y<Ŧ"ÛÐkÞlŒl‡n°µÒ7Cþðxå@…­‘öDÑq×%¶+›L›¢y|Þèiã«w¸ó'-p»J¤'Ù:ö!Î!ž8³qeÍÚúµJºg,žut±±Wþ^'k€·~…Óè®}ÞB ïŠÛ¼öU1tÉxY ƒÁ0ÈîGËbWb̤+‡éç@U+·?T‹»råVnT˜Ú—!-¤­‹yN WÂÑ:XŒº”HX¹?ˆÁ}‘q~Œö­ÀÕÁ ˆÍÃÊà$¾QLÛ]åeöÑ>EžZ2†-']áÓÊë¾YfežGT²£\àÀ¶ì£‹MúÚcí®ºN¹gEfŸTT=;—ýÚ½’xj7G,õsØ ¦èwŽóJ?‚õ‹t§J?½²xÇ{¤ðs¼Ç™HGõ]dÿóU?~v^ï|v»õ @ûUØúÜDÐ×Ïoþ DJ¸ endstream endobj 535 0 obj << /Length 1564 /Filter /FlateDecode >> stream xÚµX[sÚ8~ϯ`¦/0STI¾g6³K¦$›Nh2 ÙËl÷Aؼµ-Æ2Iúï÷È’ 6šådY:7}ç;GàÞ¢‡{×g—Ó³W–Ó PàR·7÷ÆÈ²ÝžçbäX´7zÿô©;øwúéÕmm­´¨l—‚œrÍdq(r~? NŸå,† “Rí<ÃF(³·D +Cê©I-i†\J‘ËóÁÐ"¸?Îóñû" ©ƒû¿³,JâlѼ¥ áß¹¾–|“D7èK÷Cq=5ã‰P§ÿb<Å[R<‘ÊÍWý¾¡¸õ‚Xj¬C˜bSo7b*Zr= Ù¤^.fÿñ°@ƒ¡ëúýGÎ[®üÚe8A¾åV.c*UI“}*}Y›3M™ ØŠ-Œš9lƒ£³|äc âKPà8zCÄ 'R”Èô/˜(¹²êhÑžÓk˜o£Àl¹Ä`c¶ Y. ä vðëûÁÐÁ¸‚GÒáÁ6rqÆ÷qÒŠð>¥àRË/CýûÌ’5ïtÌÅrürá´PYˆÕ]VJýYv·U°»ˆÄ¢Èñ$¢‹,ßœæ„KÕiø<€oÀŠŽö³bYZg9’}."Ô®A|?zM:âxÄ€Ãí4iè!Û ¾? ) 6Ôiè€ÝWë$Ñz"®Sž:8å”J•Ò;“åÜ: Õ ©“ˆÂ;6m&Ëy3$_i…™-“R TRV‡#¹yÛEÄÂoj¶JÙj•|ëŠa€|‡l ·Wd€llo&'èl>ó°CT‹»o—¼Œß®DÛCµª•PYöˤY‘l±Èù¢[¨c#/¨£ó]T7´|_&LƒíôI©l¾zú Ûš2Ìh¨å yñùéöÖÌ=ÞLîoo®þ¾˜>®bz—º0™®ÀÕ©êŽÆ ëëªa³Í.uoÐO\eô³úªÚÁföô€žàrÐêw¼UÇëJ4˜áÃá]ªÛÆ'1“Gkæ÷>Ç^âbYíZÖ-Ã%Ö€|ÙrËÇÈ ¼“»õQfŽºär7äq—`gá²å‚ dâÑÓ£ Ò†%Ç}ðõ2‘ ¥Mé NÝ«·¹yüÊÒUÂåAºiˆ]»&h8ÇÈz÷NwÃÓ|Ê‹Œjg0Ü`‚¦ @µ„"›Ç‹u^:}~hˉ­‚¦= ^SE«Ž–sr½Z‰¼æi w°H 7 ,‘~žª~G t­ÕãyÌ“Hò¢Qä"ÑE%#ŠŸcY^K‰sóšÉ¯Òô{\Ýìõpiþ3o±X”Ù¢Tµ; =ç`lyÊtÐ^nšÊæÿÍÐU ç¡íÛçà7 ¹4QøœÕÕáØÒ›c !÷‹ê\4'4¶¤ì5N×f{†ÆÍóîEä_ ÷í L¤ªbg•†™±/­œþS˨Üî ۾Ňy¥£ÍÎ+gD”v¼­ÿBkᤠ‚„ê®GŒÎ;c<=û‡·zO endstream endobj 545 0 obj << /Length 1202 /Filter /FlateDecode >> stream xÚÅXÛOë6篨8ÒRkâ8I4@‚iv§ÓŽ´íÁ¤N›4îl—‹¦ó¿;¶Ó$¸i hðÓ|÷ï÷]o0xƒ.&'W$ ‰üh0ÉÐó ¢Á8ò@ˆüÁd:øóèzUˆ<¥ŒÜÃð3¼¥æüøïÉÏ'W(lðãX ¯ý±"9ðŒ:©ËÄ’6 íÅHü±â×,wË‚ÎþòBïn¹TšäBÏ;úa¤Ÿ“Ûß/•X)r=„‰åd„KK§9ëå?h£·ùsi·*~¥³Y^ÎNûhÞØ —§ÌI©óÄÜ¡ÄQdóü½¡hf7AŒ,Ì©wvÖNbGlÃ>±ê4¶bN´¸ʾÆõ?+n~Åú‘®¸  }æ)Ë—BŸJòRŸ/ršÞȬ)*ȨŒ’DšØw#æØÈ!%¾+ˆQ^è´Ê©9¤)á†BPý¤Òz¦ÿÐ;cžÀ"ç²Ø8¨Q  Ég„÷Á3ã8#bÅJb•ŧó޾”.–Öx†×6IÿLlp.j—2jÞËPµýÉò2çsЦŸ\Pò#ì ¤lå‚Ý… [ð¸ÇÅÊÄfáa üØßYø£º~@—Ã>`´ ä5ÁC^GzÎèCËöÌJ™š¡C‹ÁîËÌö_ovn0E¿èZòÇ㪈ÜÈ•…âh2 µ…{º€^ïBon-4EÄe¦8/HŠU³qúÀ‹ß3¼ dɇ6¤…“˜ w>øœ®Ši³™˜(dbÝH+"޲ÿܼ𹺗*éü!9-U~\Ïïÿ*f(Q„:VçÙº¡?¶ç ìå7v~zâ Š˜à×íßÛ¬¥_Õß™Fj®ç›¤ÕË­Ê«cÛ̂˛G3a[¯¾šˆvÂõxîï9ÉQÓ8[­.â}´£]´ó™P¼‡W?j†¸iL…¬>{¶¼²p·Á}ñ¤ŸS’a¹:ævÝ»²Ì”ú¤.Ü0P;s1ïTD½Ã*Ÿ,ª9ªvzÆ·¬wÆ>¾$iž=¬tBœuÚëß¿#çýËnOµç)-¹`«TØŽ0‚LO¹7ìVÙ¯ofo÷аÎÍ3ã7U©Œ=^.‹'ÅÿyX7sº¸¹9¿=¿>k^¶-¿fÞ¾$XÝÈ«É  Vg/hŠUslu–ß“n.ê±»J+H*ìvh×7l·¸‚è;Ç(–"†n¬þFM°Uyº!•¿½W1AKCóª|¶ÐáÈmS`!÷k ¼äÚ4§™Ï€Ñi!—åTq4£° KÿÕñ—xÝÄôm˜¿÷ÒÙmm;][ 0«¼õÞI}_®¼Áîûbý¹ÀUÛê3H²÷²«ëPïW±\Ù‚ åSá¯ã=Ç÷Öõg}U—,e­É[r;0äµÎÔ30t¶yNvïY“óO¿@p;Å/ QçÒ¥×䟅Å}© ÷²Ô+Ku EjfXäƒqîÛã½f?lV†e³§uå»5ËM_ض5¿÷í—õHû¼œ|~£© endstream endobj 552 0 obj << /Length 1546 /Filter /FlateDecode >> stream xÚÅXYoÛF~ׯ ’‡Z€µ!—wÐ<8¾€".\YA ¤AA‘+‰5Å¥—K þ÷½xÈ´ä´Ac?ì’œ{¾Ù‘m­-Ûºž|\LÞ]¹¾£8ÀµXYŽm#× ¬0°‘ïbk‘Y_Np4ýºøåÝ•çö(Ý#Ûñ¤adêø'ë¼æ„ ꉭeÀ1ÛŠàXà‰c37ðä¹/uúíÛéÌ·í“KÆ(SÛMRfE^®ß nÀiæØ(öã!ýìûüØA± Eü¾!¥6?êÙáú( cýOš¢o©‡¼È55§¢%"ÒÀçìüáb'w† ¯•r‹ùçKµã¢6£)©õwFxÃJý赦´¾Iôs«ðvˆü8w»Ï7ŒîJÔs”Ü]}º»<Õ¬‹BmRº­žðœ¶ú0­rÂ9ÙVœdF½©Æó¤8”ŒÔMÁ÷J³[v-×j»Ëù¦gi­5_Pµn©a$aÅ“zÈÈtæ,áä*m²|µ"Œ”©~ε[hÃÁ§{Ôe³]ót5’NŒQF¯N5žÔ÷õŒ‘çßœb5áZcí%òÐè˜Ì0ŽP¨pØ)ׯ’5ð‚£)mQ’š´(È–”|˜å¬)+ #! Š'ÍàOÛ·/È*T/–d“<榆¢ é‡Kˆš¤yÌ32æ…®sÌ4ï?9gxòHJ“úôѤ掲{&;Cë$h†Cëæý²¬Xn@ÝXÛ–x^¦E“å¦@Ûœ‘õ9 ýËJa«È~ž©õ¤å)”ï­ø&‚MÉjÛjñô—!$÷)ª¶v>_$UU< t;±:šã¾£oôÞÕ«'‰Ì”ÿÇÛÛ³ùÙÍ@¬¶¬/y¬!Dbß‹(÷£¼(»ÀKn݇²ÿ_¿î«Òw÷^*ŸCkósYÑ{¡™ä¥*¤ÜË\|`ÈH#îºöÊøLO½Á’ö"‰Æ#©T¹Ç2ç;ß–Æ`m•M·Ï;Ûš”„Éæÿ£ïsÇ5tJKÎhQ˜ëDò±6«zâk{Ñü×ëšó‘+¦ƒÜãwÂЬrRdH7æÐE^è;y±éz»±Ê¼©’º6ï X‹êû‹÷ï«ÅýþŽpÐúŽ3r š»MnkS“z¯P>˜ùȉœWûî2mž›ß̯u™®©¶¶ýdP ,_6\cÀÁ–]Kƒ÷úö–)u{»Ú¨†Ææ•lÏäIÙÂнÀM¯ªÉÃ_pÛe¥›¹zhÁ±‡¨«¦LE)м;VR&•êÓ¾r'—‹ÉÃDÄÕ¶œvÆtÅ …­t;ùòÕ¶2ø 7ެ¤ÜZž—YK…u7ù­)÷W9ÇBšôæXðCà9PCPv‹ôãó©78ˆQÜ¥àM’—<7xìCÞ¨e]Ð%\åžMÝð„L=[ξìI½‰ <&y‘, ¢—I:ÅöÉýŒˆon§‘˜[Äì,Rëe_ÙÜÞ¿ÅWj¶÷Ff{z0ÚéÉû‚Ô)Ë+‰{}·tîþ>AŠÅƒ.òøçZ˜ºmÆÔêQ (1TB®ßTÉZ“ŠÒß’,ë¿€CL­ ‘Ž„m¢H»_ÌéaXÁ¥Òõ©xŽúJÉz£…fd5uÀÕ²7 –+#  ©-(OßW–íä8+b=ØàPïçù¸"S’nà07Dn{µ¦Ë¿IÊWé_ÎëÂ6qû×9!ÝáwEX#Í·ÌYì píÆñb áä±0>ë°\öÂj*EÔº¶íÔ ÃrÜùðìŽÜs9M²œÐZ^:ÑáÅ(ù¾íBݾÝgLÄvݨ+Ô!ûØÝ‹ãKÃjÜuå3‘#rŽ©y"'~¬û€X“‘Ä |ä;q›89Mou•?’BQ€‚°Í¡T8F$;XLÐjeáE[[f;f­І;h´šC&1Œ íß"ùÝdzWÒÝQQž‡"ÿ Q3×ñ‡iuA!—ŽËŒQäô~Ëåj·Kí endstream endobj 565 0 obj << /Length 2342 /Filter /FlateDecode >> stream xÚ­Y[sÛ6~÷¯Ð´/ÔŒ…à½ÛÌ®ÛM:½xšIÜÍC³3¥$Èæ†"U’ªëþúžƒ9v¶é¤q=8—ï|á‹Û_|{ñõÍů¢p‘³<‘Éâf·œ³0JiÂYÊÅÍvñKЪ¥ˆƒÛ²ëU»üïÍ÷_¼ ãÉšˆ –f°¡ž,sœrÁÍöÎá“5«0 qÑJ¦ØGK·jW«ÞY?;+MXžI{Öuña)x –+‘ó ¿+;Û2]°#N°»Î„È"&óÐnöuÙl^mQUªÂß½çªYÂâ4¶+vMKÇtÇu§~;ªº§oµ”qð;þ¯¨ŽE_6u÷ÏåJÂÈw;B‚ÒóÔnûêêÇ·/=‡Ëˆå|˜u‰3@"a"•‹•,cÓ÷—1\¼]Š,¸=îµh؃*ÂßCUlÔÖÌ2còªAÙïUgmÙ´eÿ`¾š®Ä;±™¡\K­P¾,!¹Ö‡*ö›ªèº§[ùݪ—à0(‡êà&—ËU$"»{íŸôø%‚ºØ›þfgÆa¢Gë1gyø<óg,J‡} }Â{sÅn™‘ì½”á5ø\¹"#É0gO\#mšV½FÁñ0XÁ&¶ãiÐ7ø›kEß­êÛÒ8,@»a÷®möfV¬Cµ}X&qÀ@ ЉQ!L(ÖFƒ¡AA«« -­1œUUöd³Ý„ÏüLµÖ‡Êºë‹z£:×Í@òc[«-3ÚŒ¦.’Gä"€"ÏiË«¾(«î †8Ö"c¹iév_‘ºJ€žŒÄ‘‚>éÂØÆžu±ù°RõÖÌ»/û;jmšú=çòöØê8¦ÙÚ‹ÜÞL×@`Шû¢@n%Íܺµ²h©E- !äTüÿSKóAhä(#\=Ýwb Ì¿iß5í€ Ìî=*H™Œ5­Ol¢Ø{«S³µ/mIÀ×Á—’ >ôÓ•õme’?îuIͦ®¼˜Ác–ŒÄiЛWm’…|PÛ˜FF9F0€¹”³¾¡Ü 9þcÙ¢ÅT@Í7'¤6ˆÆ ñfôsÉ$W”¾þŸÚô(jNñ© "ŽØAé[·U³.*j7 ‰¹¤ô„×z“8Ì¡©· qêB¾bÈœà ãC$'ƒ ¬db³=¶h7h¸èŸ¤£Œ´(#b²æ&KB”D¡<‰§GüÓâ,xt¹£_À~ýKz0cIÓԦĜ‡"Ù1NL2„Y©ÌU7…YØ){±cg¹—L‰H³/ÿ,Œâ5ñ?¶ZÁš÷EÛ¯ŽúšP5É% uµ—"Be3  {sh›]Y)Ú$,“^±R¤Ü3‡9o¨,aò™%÷#G¡à.€¾øíØôê´{î ^d(…ýë+*RHñ×´’ãBpö$Á2(6Ú*‚Ü:ïNCT„–&4Ç2,êÜ7[r„ŽFK‹€¨<ì‚æ{rà/`ùXA=7ò嘢Êz&²²—F8Ô£M­ÆòK‚‚oÔôHŠÖUlî u{8(j‘—ÃàÚt˜ò†>J3h¨^ê£ö!8Ô™$%€¾ìjJë7o~ö•–1äÝ4ó®K2kMdïõåA ýGÑ­–!@3Á²ÜÕˆfTÍŽK'EŒ4µŽ°% v¨‡ŠËÔ¸ê=¹Uëßt¬ã@ÙÏÖL k¡$:«°4œÄºÕ×¹Z<Œ³‰Âœ+ÐuÆQÂŒÅ2sÕ2D)¢~ÕF·Õù¯ÔþÝä̵¢”Í™uíÞÌjxP#ó\“{+òGð>ŠX6ft(Gçæ¥ p"¾[¤h¿£ àwÊá;³ÃÈB"ëãÐ;{¯ybÖÏ%K>9ë‹8cŸ ™d1ùÖˆGF”KøŒiûâRØ’[*”E›IØÂÒ1ÔðzèõB“¯õ¾Ä1–Fƒ·ÎßU>Ýãùb$/xæ@^ôã‘™¬,b]Í­†³ÈH€c‡³’õ߀-Ë?žØNóÙc)Œ &¢Ä©TÌ+`={´Å¸ùl|¯qÀ–3žlÙJ1Uôi„ÈYK'¡Î>¢ü÷åã?K ŒZ¶'¼ŸoÒÓÀÀÀ#9cÿ—öÕFÇqÙ•ëJ;ï¥S˜w’Áù)ö#0Ù·Þ¬ÌñêŒJõW ãÛS=áS’™Õãspr8–?‰(Ü&¥ 5І÷®/ÏBÉ‘}Òæ¥¹Ö¾ì°þ2§ÔiTÅn¤¹œQ ýP÷I†á.¹3’ûßcÂÄ[<6±ÇÄWÎÚ#nù {ȱD·öðÄ” vd©SWKãØß5-Fï²Ï}Y¼†¦æë†²Ù265ÃTã:;a’2ÍÓ$•„à'Cê›/÷ý¾io‹ú_»»M»aÐ~,Y È>ñø`íE ¥yÅ®Þ*c§«ªk¼÷buíbγ3íÖô`Jÿ–€Øcäà¹<ɃÏ)Ÿ¥yFÞ’>®+ÐQš…®®^þQì•êΨÉÊ ‘$‰¬‚ ÉRSŸ¾\Åœ«¿åÏð4Ì!üs÷]šaƒµ}xlòß+Ž4‚‹ûűÿ¢çÈÆ|¹yÖ깈\œðÂEŽnõV@3ÇpóQ ÂKü^«M³Gßs–ÖêÞ9Ê+>¾íMvþjE¿ÎƒŠ)ÉQÃKsš® 'Ÿ½ýé›>›êA—¹ÚÒ¨f¾|\#gÁïåÍÅ_&Ò²d endstream endobj 581 0 obj << /Length 1384 /Filter /FlateDecode >> stream xÚÍWÝoÛ6÷_!´/2±"õ]`Ò­6´]ÖxØCÛY¢-®²¤Rr‚ì¯ßIÉ’b»i¶K‘’"÷}¿»¸ÖÖr­Ÿ¯V‹W^`%$ Yh­6u]âù¡…. mf¯ôâõjñe°åZt€;?Š ó#+Û->|r­.7ñ’غS¤;˧”D€€®UZ7‹ßX›¯ SéF˜ †>µü×ó&xy+ý F’xÀÚ×UºÆ¡xöó»«_‡ÞvÒ8ªuº”è|¹íY#Og2hb͘õÁ¡‹Ð‘¥¥ˆ‘v“¬dÀ0U›Â%6”£&~aÏQh¼ˆûnîT^É ¨[òp"{Åvh× º~fHÈþ±!ðz =AŸC¸gZy¨UV@^eP’gõò0bq¯×­Kïá!›”7sþÑuYÅͱ¨ÌD:ÉȨ0Šz¶›}'JNÐR.hú‚õÑô(ØM ñèçÜg]-ŸRŽ ¡œý/Jrì LŒÂÁ/”9 YìÁŒNýƒ¶0uï%` ï…vjÖzý'Ï:Ü æð FµjàÆš!qÓ# ’?ÄiÃrcV(:y'Zí&,ÅQMXØÃzŸF·à‰-¹µúíûQ™v?GÌÊc걄ÄÁГ//Ë÷òus˳sb»çÓ”º !•'iú–wE·ßÔ†ƒ¾ ƒ¯½ãU–5FæNÕ§Dö–W»¬Õ©äúXì`rEôÆP«›*×7 —ö95ïò:Û¨#cŽç]aøÁÔ )ÜÔUn$‡vÁËæXƒm°/:Œ%6Ö'[rq|„ƒÓ¿_7wµüÌu˜yǸR¯'ÅryùøØ&ÄF±I9å|߇ c“ø>NT@79ˆí¾9›G`V?)]cä´]*»³uÂ䉂ü± ú› r˜çé„Ä\%¤ºòí5ŽhûN_çµ^Õ_(¸)R¼¾Å Zÿ…}&"PY&ÙÌ|x÷fŽ9wø dè7ëîý #øß*Sí endstream endobj 506 0 obj << /Type /ObjStm /N 100 /First 888 /Length 1921 /Filter /FlateDecode >> stream xÚíYÛn#¹}×Wðq÷…Í*‹d`,2L²AXØ ÉÀ²F»cŒ¬6$9»û÷9Õ’5òEã–ÕÎAlRÕÕäaÝxØ”Ê.8)ÑQ.hÅER´ÉIŠhÕ¥RÑf—²R\QA["'58"IŽ„Å@#©‚$R!x.Uñ8â­šÑÉ®G‰1~Å8I‹KÐUŠ.Œ§ ‚@@L‚³”CJ¹š`K4LUŠIðzeà¯x«f†¤:9»Œ×ÐaÇŒ9¦a¶9Cq)Ž%ÇBPÙqЦŒŽ–€t2 :‚ŽâcÀ’!ÁX\3 „Ç10”a¡4¡£0#…Q‚4—°üÈ‚)€2 —¸º˜$: ¥H.Á8‘]¬6{„+ÈFŽ>aÙÂ¡Ž ¥p‚/ÃŽIàŽ(&atà¡aa3|‚T T ¨€Ô •ðV6ÌoÂÒYÀÄ QÌ·Ñ0aq`‚¸›RÄH[„!1Ÿ%[,Dø‡éÜß­Qcá9:¶,[H®æuüÕd(ªÓ` NÙ^WrÚͧì´Ã¤êT]I³Ólþ‡5@$-¶¬Œ×K¨Œ×+™NDÿ&ÎÁÐaÕ™ÍÛÐ˱“ˆËÚ)'—Õì·æ¬4J¡\º¸W“ £ƒç³‚!ë¨% T˜L’бõ#}J4« J“ b¥ÑÉɨyÿÛõÔ5?ŽžŽš7í|5¯–ðADBžŽšÓé²½YL¦Ë.ª;ÑÓ—ã×í¯îC€–óIW„|©ç#Œ´Àp9¯Õ_Íç-FüÐ¥7$]z¯Û´iuÓæM[6m]·5tíùè»ïvw㎚³›‹U÷û¯—óÏ£æu»ø8]tÈÂyóçæûæÍê~ØZ&+÷Còp›ûZE‰=#…•£/%Aí•;9qÍ™kþÔ¾o]óÖ}súÓÜ_\ÿÒ.>OËo` ƒ$%O0ôJeo±ñ4”åj¼X > òHdõ•¥öz8‘«¯´ƒCÉ[­}ÇåòfH*>#Ãnq‘× =p\Œ'Ÿ§óÃAû%¢—ûC9ñ§ÇËO~@HY|´Ê¶„‚‹ ÐÑ¿¦“½(››°£í´T‚GY´*í•:†ì±Zµõø|»’n!Í«““n†æÕduÙΛ³æo§ßÛß7WãËÙªýÃÕêª]ü<žÿñ§O“ÅÄ£ÿílo±ÌŽ“œºæïÿø§«Õ[áÌ9z+Só›Ùì|Ÿ.…°V¸ûU/eÕàQ{éZɵè§lu¹çÀ’ÈWí90Ç굯-R¦Z| ù¿r§\¢§{–{‡}ºK²w›üz»lÞ¡‚ÅÍ®Í~ŠFÓíÐUZ︭ùqÑNΦÈ/p€·ï\ó~úëêþV{$ ÷ɱØgƒ/K7ªÜ7Ûîè>•m*ƒízÚoÔ»†Ü±ð^£‚PlXʳmªlJrᲃĀÄ)2{cã9€1Ç 7ál *uo῞¾™Ý,WÓÅnù7ßÜÚ¯Ówu·U³’'þC“ã®ïvz|r0?p$‡C™8ßO¦þvÚÕÝÚ)E¼ÔOpŒé¥Ìà#v‚;4“öxà¹FéÑc|ŽÑw²‡×XíˆÜµ1lZÚ´ü•ìêÏgŒá)Žq·|çi#›Ãò™ã2Ÿ°{Û·Šˆ0ª`~TÔìUÆ“KÞOùÎæí/°ïøj8ò¹…‹·Ï LÁ× 6(KÙ åõx5ùô—öbùRxP3vBE 8Éǽ2íÅó¶½/^ " »U펓‘2L$û½4]\Žg°XÆGé_wvuŸÜ”SV;‰«öSN¶épO"Gê©"ØuOvr.$C±³ç–?yXþ$¹çHOßZì¥8û*uÌrÓÃ-6…#«½¬ÝaßøÖm”;Z141yû\) â’‘£‘™yonþp3[]NÚÅtàR!}Î[8`ôÝW†§à¼DA¯‰=B%Ç¢ž¢AÃoŠP ÜtYJPpZðŸáu¹f¯ét±[øöSf°Œ¾ˆ)%_G¯wòý¿‚öéú§ÇÒ¾´)iCûtCûtCû”‡, “·Ûäc jwC^¢]€iñþè}ÙN,øg³élà„„ãá|»#bƒàL&°]¹D_8ÿ.’ø ¾)9€o¢…EA• ¡ŠéúÓõˆ:ʾ¥ë%4v%󿇮ƒð!†ì<"{9Øy¿3r <ÓZV"ô6¨<µ$Lý”%ÚÙ‚ú)ã$à튱—2WØý””ýÞçÛB ]®Gº¼.dv¹neÓ¦M«›6[ðÖ‡û¬Ù]Î#‡‰ìÂ<~5—/®gãëëÙo2"ž¶8n’OãøÚ5ÆáWoT}±]‘1-تW³¢_Iþ£·‘(®Ý=û *‡8=dà»7T«Ròâ8Kícà;Q+)v‹#kw„ìƒãU–úWÎ]Ým1Ì8Àо„2ì[{Ãø_Pþ7¨¡ºy endstream endobj 597 0 obj << /Length 1328 /Filter /FlateDecode >> stream xÚ­WÛnÛ8}÷Wî‹ T,©»Š °I7)ÒæâMô¡[´LÛÚJ¢JÉÉf¿~‡©’#gS y°(’sfæÌðPÁÖÆÂÖûÉÉbòæÌ÷¬%¡Z‹µE0FžZQˆQà¹Öbe}¶oK>sûa>#M-œ4§u=û²øðæÌ zæ>&(Š[ÙyDn™`ã öú½½ŽÙ츑œÓ&dzۻfËÅ_8À5ü 1zX}¿`HŒÂX£\RÑdåÌqì’‹‰íÍ B/5Š[ ÌðF"ú¸‡zÈ'n›IA³¼áo‹¦àbCËß×ÛT¤ÆÏ&…á¸!"±g¸dLÇuœ×ü@jƒ@öRÛ°æ$_Ò3=Éx:‡‚ä9Ë峘¶„íóã‡(ñ“65p¢‚ «UÖd¼¤¹~¯$k˜YVef5Òˆƒ°œÒ! B+Ø&«¥õHg¸ÐWî““=¥­²ró\ú¥³ÜՆȶЕ!B¿1Ù±÷ò‡æ;*s4Y KbÖ D§ÿТÊY=ZÑjÅú]µ"¨–¯±ª™`lÿæèç-dIu©dÛj’C0J‚D[Õ­]*}”;—UN«*Wcò–àׯþ.3<™ÏoŽ/* zxYݳô…­½KPBL÷½z¥7^ñFÄ®|;æ¨íék$iãoÅÖt—7G‹›»Ó'.£¡ËÓr%­ûž;u8]L¾Oˆ:ɤ“°ƒ®@µÓbòù ¶V°àÈKbëAm-,Ÿ€þa+·n',²ÖÉÁ©„dCŸX~BnÙ|˜õ±ß'þÀÞEILÚópZÒe.ûÙtñÕ8´KÖ q÷cËõÚb„mÒ‘]deVì =«³íX¯Ñr5Øö(ŠºÍ+hôaf« Mó@"8a0äá@¶òH¯F|'‘ž+©¢ÉM£7d"æ†4·Ú]M7ìå×ãðÐz œ^0÷jÓˆ]Úp1vÚmÎ þº;ă;dO—%º×5à‘¹ŸžsC5;R7æôöúÝÇ©™ž^ÎÏ»ñÙõÍÇ©¶‘¾ýÅÄßÓTZºÄÆ<¥MºEL.ju¶×rÃ+_-je`zv|q{úzÀ“ùþªß@Ñë%µP㛫÷5“ÝÖ[¿º»hÃi²‚ñ]3X>/ׯÇÊ’óÍA7ÍÙò|èhz~uvÝæ«lèÕñ×t •‚ó ¾ŽúTøbø;5÷7_– ñCÿ'ó×'m=€ÿFLÙz}ó£;™H³=™Ik¶æT5žl±4ßÉ'b¿uÉsGCÔ}(Ù º³… @k†·Gä×§{à²y"ðéñ`x°ÿ endstream endobj 646 0 obj << /Length 2914 /Filter /FlateDecode >> stream xÚ¥ZéÛ6ÿž¿Âè—È@ÍJ¤¨c€ÈY$Í1Hf· ´‹­lsl%²dHrÒü÷û’–lÍÕ"@DSÔãã;~ïà„³Í,œýòèÙÕ£Ÿ^)=ËEžÈdvu=‹ÂP¨8™¥I(´’³«õì÷@Éù¯Þüô*Vƒ•*Ž„ 3 Ck>ÕÍ\êàÛå<ÒAѻŪ*º?|Úí`¯x@aáH,dŠ“Lèi;Â`sØ™º~ú†Â!ë@(ÊD’1oMûÅ´c ³ß±”iPÖ½Ù˜öP‡üññÆ‚¹H#wº÷‡ÝÒ´ó…ÌUÐ\ãSßOذ‘˜/b•/Ì5N‡ ¸§õ}Ã닪â‰UÓšÎÎÍe|EÁeU,+Ã+ ûzmzÓîÊÚ¬‘ÃÙBK‘JF«bé@“h–8yè è\gqpÙt]I6ˆïÙ*«š*®+À/3eki&dz—%(¡¤—,žd}t:mZÔë‰2MåØðß]¾ž„Èãx`ͨ’×5œ»XóVãÉq*BåuñäÕ‡S'•JJ·¤7%Ðë<ÞÁKtúKÄÅ ’ @Ê<ßf:2À]£Û)º/gH§ïtÉ Äi\mÑÂ8¨-ô©¡çx?îÝ»ÏÍr‡Ìý,ç>T|E«š²ˆÊKvw@‡Â-–†w(øg·*ª¢å1½tã¸øù‰õÑ01 àÈb·Äì°ˆ”ÈTÄÓ¯GTªƒ~[v…–¹È¼Zœ ¥)Ô‡ŽÐî&B±ÉÑ9L¿¢ ‘OÑx„B¡4ŒëQäkÙ‘-ˆú%–¢àhGWøÏ3©HÏ ‚Rf“ËBMñö^^móEÔ`¬[&X˜™VÑXŠ¿mM=—@¶#*°ÕÇy8ùàx’ÿLŠ0¼Õm3åC¯e²]çv*Æ{ªc¸å=éyâ_<Ér¦‘“ó|JG*ó0ÊAR%c“î¼JI:têsi_Mæs™áínq}uLJ‹l妆Lj}{’e`7:µIRêê…~µ¦m›ö¬,™'çvß//?¾|þ” àêå 1mÅÉ1o©šM ¡þ¶Œ "ÄÀ«^Ö¶ðC‘:×$fÁ­½ó0¬3ó^´G¹m «ï(;¢2,*“¹c×7{ÑÔ,˜Ó2Âò'ÂjYfÉÔ‘¾=E=8Å\ë;2]GsÄí¾m6PÆvËâŒWùÏyuÔùîA¤¶,:³Ÿ’¥öââÂ}ô?NEÿê=Â<ìhßÿÒ®ôÿVÃ+rícÈ'C)©Jƒk¬_qQk Á ÆÉf`~cjÓRª‹… äþ áUÝôSa!φËû½};Å å ÿ$‚6džÑ1–3rC]“©“„œ^AÊRt,}e£͵RMuqaËÚO¦~ê[E,ÉüR{@ÿœpìSwôeçCÃ0Ñq–˱íìî4æÉŠ¿Ü™æÐO*3m¹ºKáZËcɯ *ÙQ±‘’É–5;³jêug«l˜¹q³Ž«–Ìš¼9Åpœãj% VÍn_™ÞnPØ—Þ`5I.¡btqC+Aà;Ðä(s‹Y±í¼baŽ´sèié݉ޖ»²÷]Z[Øï— å/øõd=!CˆÐƒ–Ñþ0%HÈ1ÕútÈŠ‘DÇj®Î¬§;TažN•'«?R)òø$¨¾¾æòµwU7 ûàëÏÐå®+ðê©¢0Šàœ¹)Ë:ç/ËgµÄ ‘¹¢î'-ÛHÍóßÊë)þ±¸+6¶,<hÑ5\›2ŠaC(=GGt2ã8G†J9(*÷ñÀþÔq’àë Äч ·Í.@^¦Û6Õ~+yïT2öÏ[æÅ%Ž<¢ÝJŽê›º/ÇtëúЗ•xR׋7£b‘êô~Í(¥¤H&4³.Ï¢sü Væ Ãb;ÓY€'­¨©SÈý[êÌ~Ÿ'½‹DÅ.lÁR [´ b3Õ·X!cÊ4-²Fl ­áéÖ,ØŠ%N˹þÐzY»ì·ë×àj7`Ðç¡ê'$õ@ƒQÞëß`o ë#&Må~v&)Hê­¤ð-IŠºcI‘!ùð¬—N[ÈO¤ú¤A[XkTÙ©€< œ8U&åÏÔ,?›ULê²³íâ¡|ÚìâW·/Væv@£“hìÄŸ›%vï'#òýmW«‘FTÑ äëyDH Ï}kö¦¦-høÉvšpOœ¤aû½õ4þX ï<ûááF+„¸éôt½.1€•­a4´)´‹ÿ¬L& ÿD6kq~<¿ëL“‘‡Ê]ñÅÞ±NãUƒPpÚ{;Õ dÉàÎLËeº[—ê.©]Ò !(Ú. MÈS=¾Õ{†×à#“”ZۿÀ7ƒ«³¯XèIPô½Ùí{–ºv½¶í£/9žéA~„_ð§z˜Á´S:Ò@W·LY¿ÅyHC#ws}VÄ1˜^^=ú?°aL endstream endobj 652 0 obj << /Length 3606 /Filter /FlateDecode >> stream xÚZÝsÛ6Ï_áÉËÉ7J$H¦“¹IR§“^¾Æv'íM‡¢ ‹ EêHªnþûÛÅ.øeÈMïÁ& `?»Tpqw\üøäÕí“ïÞDê"™–úâvwP‘¾Ht b%/n·¿¬nêæRÆ«ûO—a¼ÊÛü°.ª¼ë.ÿsûÓwoT]_½~y†áêöê /×RF«­éM{(kÓQÿ~oú½i©ÃØvÞl(Øût·ïy°ÞR£5ý©­ ÷îË~ǺXóIÖa(²8¦ó4¼Ò°¬;U}'.×*ˆWŸ÷¦¦ÛÌo’Cw›Û럯ðÜ—=5ˆ+‘Z5µå ehLÖ€aù™™(@ÕÛä7–ƒ¨ÚßãHDi•VÛlÍî2 V9¬ Ùç—2XýQÂöx­`¡´;˜LGРºwíâ œ´{F]#îÄ3ŸøB%’@9ÁPPSy$¨2‘Æá(Á‡´@Äé0¡«›ûo° ?é&ìšÖäÅÞwœH¤:sóÄÌM“Z$IüR"ËÒÿÃu}sMMÍçÏ%ßÐÛ¦B‘&jâ°'_%%‡$Í3ó]Oó YÓ[§m «ˆ%Ñ’³¯Ñ“ôœ-Ê®ê¿í–`+<¥µ¥b‘†ÑBÓØñ(™Nö¬;ÃÆÜ›(™L½ N`[ ÎéHϾa25Ï*ë¢:mËúŽß#óq%ŽAÒëìè òíÞ(ÊØ3Ccá™ñÕ%zCnOœ3vëecäõ‡‹ÛYD&9 Ü»Á+cs T|ÊÙ@K Þe£fU&;¦ni¤Ó›ÁÅ/ëü-©ÀR§´ˆ3Û›/èßþ´ÁÚc”‰kwª d!œO»`ÜQ'÷ì“(¦Ã⪹+‹¼Â½ÎlýéÁOü\1EoÙ¡ÑÍæ=µJÞóÍe­¬:ØîÎÍ 0ÑnIŒÏXããÈ’h!uö@*k•Ê™–&AdYj_”5ÚGÄ" Ÿù§çž)`·ášx$—ã#\Ue×ÓÀ` 0ºk›ÃlÚæøÏüx´f ƒ$Pè† úºçùO‚D¨‘Ó›cEÄ<"˜;Fç5gÄÖ*¿é9û6ÇÃ9šó¨#î[ESÚÊT†’Ñ"ˆ=ºgò|¹n±…#à9ת…–ÉD=Á élõIpÎÓÆ‘àˆ¼¨÷ÚW‹`D’»S_VFà±Í™¨g“hmc<èi“¢§œ-ßZ·cÖúàI1(E%„Ñ´_ðaZ„vQfa=¼¶÷B"àNÖ¬ïÀUÏåe= ¨L¨W÷m þ°¦NÉOÿMS)Tÿ›fA4Á4H¤n](6ŠüNÅÆèmP¿C¾+°ì©s0Å>¯ËîÀ4j^ÕwÏ82ÌæXypÑàaˆTë¾<0ÖB×T #_Y8Š.Ñ ¡²¼ûB-;Nq`âgor¦ìpœØ´{$h1´ŽÎ!p¥½ÙŠ¢ŸOèðï9$\VE†Ø‚˜K™ xªülç¯æSCB1h+rñ!)0?™dRà}¤b€!ƒ[±BÅÓq‘ÏJÏ=¿v Üîó Ÿü z-³ó)KšˆDÅ3cŽ ¾ Çc‰8[œ«ãc 7Ø–.HPmö&v[lïæ#ßîGns(«2oùò *'¥$ˆ0 ¼óyU@ÇzÂûË0]ÝUdÌS@æ¸<ä_ÌëêÔõ^ëÛ‚Àɹ9ãÆ˜´•µ5‰Êÿp+°ÅpÔ ò¶²Þ6gQ] *oÕÑ^æ¿'üË+N¤ÿŽD¬“%§›øùÝ;Ÿ»ÊD’ {O[¶ƒüQ Å]}Ð'VBMîº-}Ѫlˆ‘†èvùÁx 1B.<¶sON HÀG;϶óFîLCSƒj!ZpÓ nöga޽ËTsn½*›Â•®lÂiG1š˜nv. IìíªÉ=îV°+‡ÜPI=÷†ŠÉ,b‚™«)0Hi‡ÝÞäÛm‰Ð5¯èm‡É@×—¿'Ä„or9˜CÓ~¥±Sg˜ŒÍ`„C µ§CÆÝ(mWMS{¶¢¡†¯!ç$6iryvxG‚„Á»cd¦q{}«Ÿ¯8âÀÔÁ\šfÍÖШ™XÆ)wp=à£Ã"êÈcuCÛú1ýøŽâ—E¿žj ‰G¾ ·¡/q:ùå–g{û‚¢bÂXžÔðº×!3ŒÞ`âœZ@ÞòÊÄ`ÂaL`ؘü+o0mjÑõÚ[!ùgNþÙjM.ù@똷 D§ ý9öô¶ i0ôhgžÚç„ÑjênL‘3]È‘{tdc¨'ñ"ã Ò¶öT6pçàs½ÂJíO,<×1¥Å<Ǧí;—b²Ž#d©¥§Àò1 .a¿0]u6ûÚá- J6užÚ÷(”‡tJ©z\‰·vETma¡Š9ÁÐÆÐs³Ø±¢Ç…4yp?ZOÐt¬ k=Mè‡ÕN‘ö¸°£ÒJD2œóÿ3œPk’Py$IÝÝiÐ&0¸mjC#œñ%®^C‡ÜFf;˜óBr––®uHønÀ¦` :“«G.{Ø—6¯…ùCàZh`(R,üÖ™GC8ÿ:Ä)‘ޱc—sì¢%•VüÔ®$# Ešj‹Ë8QÉ4³+K¬ õí‰ øÆ=É–&sA!ly§i;o=âdœL³ås·…l9ÉÒÇo»V€i"•-ÓåÇî Ig2Öã7Äp  þ©!¶pÔ&‹ N‡ËHîLmZ!ž?VC !CG”øŽYx>á'*Ïi@¬Ñ_ˆðL:`²›º¹?G D¨÷Ö_*÷‰@I9Ü ÝݰMw[»ª›©\”Ý82fX-9¢O¤¶Ø¹ª±‚n‡Ù›b¼W£ùpi§:jS$B\ÁßôÖ2M’ˆ-M+mó¢®™m,ï NíQ÷cEØ '›‡Û©8êw¼Œ«DÐòV‰Â,a#“ͳRÏ‚xBÏVjüŠ ìèú· µnøƒŠb¡Ã…¯¥¢“ž–Iôšµ% ¢A[°=ZõÑã“¿TÈ@ìcÕþt·wC +xjNó.Ÿ/‘ð`¬ ]øñ ?U*ÒÑäï÷e±ŽÆE}-Ò@/#}×Q¡ˆ²S|:í}þœµíÆô°ïåºðŠ)¬=ÈݳÊsÞ Z4±ÓŽOAeª`õîúWÅé+0]«õë÷×?²yjHÞ—iøà´ÒdtZÐfQ5Ü% -À¥¶Ü é%0HªÅbH⎔ úÙñ¥)Å|$H¾5~!¤¯Þú²ZÌÌ¢ø[ä W”Ù$×#!êX„‹‹£~*Õ”–B+!t#iÉž;·È2Ñ!Ã}•~Â`%q—ÅµÄ ¬m¥Š>Žß—Y–¸×–,€ã”nqjíJr ÓØzÈnQ)qXÛ˜1úrÉe7Œw¦2§ÙÚ™&Ù‘Q'H\Xu¹1<ý_>3L ¥’¿§âk·j&®!o=P.cÕªÏ˪óVð>|Ä,îöê9Îÿ‚ž eùtóñõ¿ý…»$Ëwà:“•Óùª Ôñç#| ŽB‘Dуڴ-‰5® iÖ ÌÅQìÌÎÓ0õáÈ0Ýà躢-gP8üP¨áë™þ‹P#gîèš(ûtŒ\>‡¨…kPg¥>,žsRÍÆ æ 9g=Iþ¨”OM=0ÊvÈþ ’[I^ÌV¹M` óá¼v¿ Á1-¾ùæH‚áKðhŒÙÄuš‚®aËÛþ*3lBUFÙ ¨(GÞ×4îû±Òò¹4XiB°Æd/`#–îáÖ—Oª¾ø{…Ï4îªÏèMÿõh^ØRÄSçS~úþÓÛ§<-Mª@Íiïxîì·QËZ3Ï™ÿà`:ÉÖ;Ý.àï u›Ü? Û.²Lßc€p*ËûÓ×oëÛaYŸRơݾ©æ´Ÿ¾ýðæ£ã '<³½_þVìùhÔon›1‡yl*ŽýÞl¨:9ÝòÕ§Ÿ>¾r{ !Î|&u žoLž³Ækþ°8ó·×6…äôIžÍæwk7Øn f^À(Al‘7à©U¼úL½9ˆÓ¿O^ÙŽMä#ö‰ö-ú½t°RXyQ„™Tc†ÙõyÛûQ¡Œ“GQÄP—GÔŠ%20îÀj6ã)@íËöýˆ(:Œ#„O³ä,o‡ß,1 Ï|vˆA@cô}ü³ƒ'÷}P{J!.¤áÔݼt ýsâÀ;÷áðL=ªó:¥×eÄyõÛeÅl©¥{Ã^X—õ%YêÑ_ à‘ï·ÌôãoÊ¥¾ŒŸ`È „÷âW·Oþ3c&´ endstream endobj 658 0 obj << /Length 2147 /Filter /FlateDecode >> stream xÚíYÝs㸠ß¿ÂöÌšÇo‰7·ÓqZ'Í5Éfgî:½>È2cûV–<’œìý÷Eê3²Ö¹fŸÚ'R0 €~HãÑf„GW.–~¸db¤’TŽ–O#‚1b\Ž<‰‘`t´\þ5f|òïåÏ?\rÖXÉ8A ûÀ§Xó'*Æ/÷"ÆAì§ad™Ùø;qÝ8âÇ)#>b0ŸRÏ-ãÕá&›TgÙ*HÃý8™JEÇ!ø$VµÎ!$´Ôì£S¾)J"âyå‚× ¾…Ÿ¦v|¢£îEAe¡JV?N¦Óñ•Î'S0ã8I형„|«íäÙX«`jé‰u¬¢’¦-¿æF,Ø„rDèhJRBXq¥Þ“)x ÚO„£žó †”ª|ê0`v¦*îYîk;=œ9F²6e”lva#’Îá ù„•Po€tƒø>ò)‰DŒ”^û=YÅÁ^—1!0ˆ Ÿ#éÆGª^ÐænãÁ0ñ`Æ“ñ€AöñÀ¶ñ`,hâÁŒYI(âÁL@œ¡gZEqD½®UwW™ÖëÊ*Œ[EÕﳊ¤øµUšÜU˜E‰`dÀ*QÖD ã%T kéPb&Ö*E¯íì©\”ñ:ÙÛñq¿ÒŽ¾Ñ±Nƒ© 茸§ÚhÉ“¸&éòý±Êêt¾;6Û¸´£€XE€'"@ $ˆŽ.D%gç}`^xÆS¦ó!Ûª$|éœïûÖù0f%Á:&YÐ;–)ÒÌA™Í.ÞôºUrä{ü ¿zžìø8¯œ„>¿N£È÷I;¼ÎÍ}ümþ•y]ïæ[ÈúÛ$ªP.9ð±’{lØÇ~½ ËßUCQTCÎOãœxˆSÙp5ÌUCJm5„ÑVCJ\5Šó£ý¨¤÷º•sÄë<}JS@‘"~ÛEνPÏ ÷ÂØ [ØÁ*k„[èfÂ\§CŽ•ªK’,O‹ÃÉ“cÝ&Ø0‡ Ä2Äù³©õ:Ê,m uÓ¸H~ð¹‹ë=ý‘NXVOÇ|idL ¹±GWIYùè„_‚þÑæMÆ$â]«ýF)[.fŽÇÃÿhSž¡ÿm~1÷xÕ¡_ß]~î~™ŠÇ³Å]‡>_, ëÏ‹½¬“æ÷ˉÇdz !d¼œ(6žÝLÀfñ™ É×ùq½«ÚIÎýøx _·^mÿs‹Ãß`‡su2b•„jB‡*á²$QÖ ¤Ì’@°á¤ÃôA#ï#Ìy;†úªaa®aa§*š¬my.à„]À©p… b¨s8ŽÕøA@J®›‹2·1uÔw>u檭™;‘mç).gÖ@Òêô²ËÍ:,œÁ1Üuó«%Ûjñðû›9¬FdŽAxõ#)¾YõMÝï:‹ÈD6ÿ²-ô>ý°g>òxCU(öõ€z­raxPµxãÎ$¯Ì=øI¸!´"¥Bmªóc—)£DnuÅÌë»Ä¥¹ ëKÌп1\eæhgS|00¥¢ÕÅ ފhÏCDÐâ%Gp÷’3 CÐ I3w+¾€Öcªc§n˜Äy:—D'’L[ SoÂe~¹6ç’^}u “µ¶¤•ŽìÛTω=دÎòµ¯ú#ÉÚþ–½U ’]ó9ìåÞ<ƒõE4Éu$«ß!‹˜ÚYâAëÖ Øÿ¥/íÕ€T .vIhDE‘ŽN‰ôÁ¯µrûÀë©¿u½ö ó̃]ц‚ņRHÈN‚³òò[zö¬ú`Z ¸!)ñ2{¿$éfïù˜Ó(ŒMî9¯4M}Z²îý+Ⱦœ©*˜W÷:g¼;ռߦ(t©îÖÜ,Òü„¢¯yàW»“Ã[7Cöp»wÙñð§E¯ 7@jøNáÐä>ü¶×Îj®y\ gµyj³˜»Áü:·ÈÜÿŸÓþçrZäáâ!97¯u^ÏÈ]o˃ |ÕûÏqÁô{©Ýñ2èLÍ«w„·:ß&ë ‚ÏæMùκûO!O•—hå—ÈÒ òÜR«dq?[Ìn{ Æ<¸$²s/áÎ]Ãâô±|…@.äøòEöë$<îáng SHµ(Q~û†vŒC³"³¿Øè%vL{§L"lb'«;~s± \£iðX:&Óî×¾ @0fWÈ}p8Dô™O!_4®†'Y*Äqó]æ½>ë°ï†ÁÞDà ·ÆËú®dÆ~½¾e´‚OP¶Ì}<)A ›Mª7ýLt&J¼í1šÁ&ó?\‘çDÛQÈ—wæ9Íf 7»MR=K7Ù§»Ç›G{¸¾½¿¹¾ügñZ4ßæènv;(©†è@ôiu0ѵ7BL²xCUÚýê2™ÕRTZŠÿBiÄ·dÌ®®ó«Ùrþ)|/©.fÌÆëå|ñ=XÅR³(¬ƒ> stream xÚÅXMsÛ6½ûWhœC¥™ÀïLsˆS»ã4ždl·=4=P$1¦@Zö¿ïâƒ)S²Ó¸©2 »ûo߯£å~=:½9:9÷½Q‚’†£›Åˆ`Œ—o&Sàñ§zÅDÏFÇV×/3$FQ3ådJ<†ýfñ¹ÍXaИð}Ü1y>hÿ!?¢í‚\“é€)"ì'íJÈàæ³ÊÜPÎ"äQ¯]Ég_YV£= {.¦ÄKÅd#œc@®øæ ð=|wžâÐfýK.«"}Û¬=FD(ŽéŒÈ$‘H˜Ðf¿ý&D4‰ÆW¬nD©ÁY ÐsA|™gi¡Üìñ päÖß©RX\Xç“È¿ûx}f<.¸°®KµòÁL¾ò™¨^¥µ &›¢fs3ËK·MÿfB€¥ £Ç( Oð•nO"wÎY×·Ú6šz4D^ d"%A`Ó’ËÚp‚7uÕØñìa?ïCØD­ÇÓœgŠ%EÁŠèBŠhè/š2«snKW6Ùʺ‘C~™ç¶Î€½UU< …š&ŽŒb¨V1èP²µµÞg ê-œ-{$}Q󨀿Ì(ðͺ÷DŒÄãLaª‚'ª‚R”@áõ.•Šª Áׯ' ¤x|ì òx öPHH·Nb<~/XZ3 I†Ô‡]ОSö€yËFSöÆ®Šs¿‡ÀC1qGyýéýoYÑÈš‰AˆÂ8~ê4IâtJVé¦dóËÏûªFôÁ÷[ÝÒyQÊ:-3f2ÓY››IîšMÛ6Ø’Ú*ÉÒ²ämåØ&Ƅۯ¥BÉ«ŠÍ‡icÕä4¯¬.¾›À¦ú¥P\í±k¯¼„PZ—\3u9± ¤ª¯´aþ1!„ŒÓ‚‰Ü¢ø4ce¶Jór0d®-ƒkf·½+$?X»UG4esll}õÚ¹[ô8#?t,l™ï9ù¾8,Ú“L‰¶Ù•—Kóe¥hÏ”s¬ê ÔòÁíl$ë“¢jÕOϘºyÜ©´hR%vý¾8šÅ8é7ÀGh1|º‘PS3¼:œƒKÐù<スâÝ—í4™&R’ñ5è¿KF O®RÑòxÍÖ\<ìà‰1 “Èâñ_ ÏiZg«ÐN_Ï&¯Wí¹™0ð²›7@yyÖËÓ/øò$¤X‹ýçC‚,…nÚ‡7ü(¢/áJ&-žÆý;a(y9}ªd†Äœb¯¯g÷éº*˜|~ÏÁ`è·"IAp¨}—¼z5ÒÄãéËüè+†Ücè7Iß°Ú 2^.òe#4è7‡¶¼pTº 4äž‹mã×SÙTµ4³9(¥Ègniê +†¥%2óuûTƒö† Æ‹œsy#d£¼0“ºµ1Ïïr©ïŒÚâÂþ9•·òµ›´® —ˆý Üù—ºZÔDµ¹ÞíMÙÄÊÅ:5šÝå³ªÚæèçéN꺯‹};»G÷c8792á ›€5Ÿç<›wSózA—É…ÜÉL›8 ½ÌŒJ½ 2¤b¶±éÐ{Èn®~?Þiò5ÏÅÁýÇ'ë‡+½Rž÷ ÅÏÎʨȆ(?¼wþ¹bVûü¸#U^Ï_wAÿÉ݈·+àEw_ºÆÜÛ·ýCÜ1ë'È#Á!³jä®íŽX.nYK;}Òt´E ½•·’‰¼²%¥X’Û"î¾]µL“žëd8÷æ1­‹½LgJñ‡ë»Sv#·Õ¡ÿϤ‡_[õ…+z ²–g9´â&eºdÕÊÕ§Ðÿ‡hë3µŽu;îûS2Y°º TßÅøln6i^;H‹V× U}<‹¼Ìå "ÓÅ• {&Ï&<×Lùþó¼îÑãZÛø½%ºùE†Sä“ð)’»›Üez%ø¦û&¥î-½Xîþ»°é÷‡·MàÖÔ"-±=©uÌ5pWdò¶~#ïû!è|·½¯ìtv[œ§,K•Ø ’P„ãÿ3²`¬j/#[•4l±çADoXIäŠ7ż+&6 ‹z«¬—‘¡ûîÙÍÑ?¹_Þ8 endstream endobj 678 0 obj << /Length 1087 /Filter /FlateDecode >> stream xÚÍX[oÛ6~ϯR`s›E]ƒõ!’Ûº‰‡ØöÀÈ´­U5’® ûï#ER–dÙV²$["J:çã¹~<²ë,×ùîärzòöN’Ð éÜ® :Qè‚yÎtæü:BáÙïÓïß^û¨!‰|KœJæ® g^0ÚÜœÁ`„^MÒs®O\³DpX"„¾B˜ U/R°èãÙ$pÝÑ7}…çHaHý tA$Zj¾.ÚròA*2ZüæîùêÇUÊPâ#ÔFÈæZ¢RÐËwïÌžCôï8à9!¥ð*;›»Lo¾Òw_éKjŸŽõ½Z* ½½L…;zóF¿Ú`VdÅb¯5_ª7€8 Û¯þÖ$çD¯xî ñ\ê@Ô4Ž~Ò»÷ ?fwtp÷Xò?™Pº§×>œj…¸i aŒ²Cöy%èA@³…½|Ð×™ãu.ôMN •í7јÏÉçš™*ÍŒ5÷›L,õJ,M\îK‰¦S>ÙªæDÂú «Ž=3êÆ>^’4›?˜Z‘7:.N€Z™–ýÚH4{Ò~Œ¬€4È$h[Ÿ=¨¾bIPÕ*²YÑñ<¥l ʀɎ/Óãwêø¾,¯´Û^ÒÎæF=V‘Cã:-;vïkPv\–ùƒÒÿ8®¹Ä¬.on.n/Þ·ÐŒMÀ¾‚ùeIŒ£øI1ëfb–±/ɱȇ[”+Žl×ë"ûLº)YÎñ‚ ÌÌcF¤$dfä©õPÇ-ËɹÎ`ÃvçÚÈüDM7°uq¾''•¿*'Íh·2/Ȫ42/šÛ&`žq”—\›Ökæ±Â¸*fJ£…c*“çù;Ä#ïq·\Æ—$ÇÏi<³Q•ßÑÒ5¶í”¦lk óVaVyk´eOy1}4¸!µý=é«jxW¶û°ê/ö€ïÃþ¸Wõ×ñžãÏÖõzÕ-KYë€È¬¸=7þ ÷¦/X€q/ÕÈu2œ³¦w?@p;ÃO Q jl¦Ëy1Ú Ë.>DÀe©÷\–êŠÔe¡¢0èÏä"†/´´õÝ b ™éÑĶýî©9©d4•#F“ºy›¹9µsJÍåÅî€ïF H¢þ°ÛíÅ’ÑMþ]µCó”áRõ„ºBƒx*6ôÔ¬íàê+ »£üÎy¦)ôÿZ×?Þ™ÊÀyn?VåZTcj÷ÃBñ™>ÍQ.“$2œ÷•B' ƒF†œÚégûuV9Ì_¬vªì+fOy þºÕÔ5å@‘}+³WŽ÷%ýTå­Þºûu:¶£Y l9cncFr²"…Íâ6GmäjOª´I¬:`ë7){½šžü ¬T endstream endobj 682 0 obj << /Length 499 /Filter /FlateDecode >> stream xÚ­T[kÛ0~ϯôa ̪dù"‡í¡m`¬#$~ëÆðEiÌlË“dBÿ}%KÞì5„ j0çñï;Ù<6‹Ûtq}À$ò#F’ q„`H|–àq¹oùÊ—§í ‡ËLdWÔ™”«ïéçë{NÒ„aL5÷GbY §¦¥ ëJ X[˜øØ¦\]­¼¡¥÷6Ñ×ÚF0 “¹Ä.kKÞX¿í›œ ë?±–‰LU¼]_Jã } Lÿ·BWÒÚ‚·Jðºf¥O•:ZO™ÝV@'ð} #½~·®w2]Rú°ûº‘L“¿f"ê_"2^<«K8´îù1Ažrz{„gÝvú ŽgŠg"Óý×ëuQ÷R1±gJW½W‚eÍ¥mžŽUáfÕK&ÿLmp¾œi™†Süϳ»+úg&¼O»å——Ë]¨QÖ)+©D•÷ŠI;8š@#t¶94,çÃi˜Qq‡üðWn`pv!cK›wf°®Øžµú¯pÚšão(Dä½»²îŠ ÁGkâ˜$Aj>·‚¼«³®«Ÿ d¿~Ô¬5nÞ¸ø©ëµAç”°yØ¡o óD5ÐÛɶ\ EM±·ÛíÍîæaVØ„uö£í]ºx  H‡ endstream endobj 756 0 obj << /Length 1276 /Filter /FlateDecode >> stream xÚí[Koã6¾çWè˜d.Ÿ" ô²iwÝ¢4¾›=(²â•-C²ÛíþúR–l‹2EI¶¼qâ  5œù8óqfÈ@gê@çã¬=oÆWo?ê` ¸àÈ?8B@¨çxœªŸ&ÎçëŸç“ðë›/ãOÛ/ß~@Ô‘@zØË¿‚ΈA€Êáw’|´’Í*ƒ(«¡ë1ã7^'‹((R! ÃùHÌU¿”CƒØÏ²0+RX‘8BP© ^ ¾‰’à?õã8Œóçl´þÜ B0¾™Ä-ÍS@8ineñúçÇ+çó3xMkÔT)ÄUuù)Yø©] .‡¨‡Yµ(å­µðd!õ×U¼Œ‚$ íªH ò·ª`«*¥¼* ·aù-Ë"(ðvnÒA ­j”ò4DnçÉ¿-ë¢"¢—È#©” :I4_†éƒ„-a²à~ñO,“4ú´`Ê|Iûø´Ú_ÀyBógþlrÜuò­áYðNV±w5‘>Ó3;ð…¼ºËûq4iXøÞ xà•3L­v_ û/²;])O³= §Q¦¼~€…ÇÂêLí@ü¤T7 —É$ëíç”<óœa"ð”ðŽÝráûÓ°š:Ò¾B*‡§<Ï5×ÉI¹ÈžZƒ7kSm¾ªÌÓ—`ìd¯'áqLK¢î!™w~mÄ]ájËÑz÷jì…k)N/[¶ó»ï~ûËEYͧ£¢ÎKöìÔ„êväv,D`³ùÃøK<(ïÝ}‡¹(t žò¤³Uì_2õgMY„1€ê•)¤¸ØGjæ/Óèë…»EÛ»W9]8Ÿ4Õ£èØ½›´•pèèΞK®{dÌj¶.›‚ñ¡ýn¸»¤~ß~·Vh OVu¶;Ôá&\*ljCcb>©ÔË{í¤Ò‚î4aˆðš9Uòl²U&»ÎêШ{¶º‹T{¶yióµÀ&*ýadÚæ8À¼K{„Ÿƒ?PÙæ•VEb·µqWõïåñ¨’ݹ·¿ÿøK¯ò³±WV-á)y5¯õ^¹UCfËî©|æ9±l3Àû4MÒ첤Äw¨âž9BÆMùR¡Øw7N¦Qàǯn“_—ÈV Ó…€G‚žª €ÛßC´Ü~¬ÜÆ1ª;„‹—Óf`0Aëi`n|÷ÔÆ{‘¦ƒqHÃå% kPžI·E ]pY¼¶Zê€ÔîÒ KóU½ï3u)רT/ø^™ÿy@­_¶Ú»=òßm0˜©ò¨üç¢ßË|?¾ú½e*P endstream endobj 594 0 obj << /Type /ObjStm /N 100 /First 878 /Length 1649 /Filter /FlateDecode >> stream xÚíYQo7 ~÷¯Ðcû¢“H‰’† XÚ"[‡ (’ØäÁMÝ6hbŽtÿ~Ïlë4vz‰Ý—!@SI<Þ§O$%‘g’à‚˵¹”]nÁá_nÑENhÉÅÒв#Â}‹ã¢ãêú¯J¦QnÕ Æ¹5WRt‚+UÐFWãâjÑ!¹Fú˜]'CTAF'« $t’J*:Muš‹ÄÄ€N…$*[R èrQ ƒST “¨È9¨È99Y"È¢l#Eé‹òÉX”1¹*erUÎ0è¨ÈM9ƒåLåLåL°[TÎÐQÎ@'RÎLè(g†Y9ÃðXŸJ²£¤œñ&%åÌ@Vƒ 9ƒ3eH²rfurN˜B”³>.àœpŠr†›¨ê\ s58URq O$UtàNIÍ1‘>Jè$9:æBè°ã·KÆ£õQFG œƒcu‘€< àÔ˜G‚øâŠ‘`IÜàjB󬯭©qtÀJ“ˆ$—XW!õuqIQ¥—j#ÁJRM¹T«>ÂëU‚×[Q ‚:NQЕ uؤSà/3|.p ŒÊ#©ì#êŠÍ1iÁJ3B’¬ÎSe5hRIÑe«rUrøO©T(ì%i:‚ ÄPF{{£î¹;ÎU7Ý¡ëþúûD|ðŒpI)ú°éÕùùÉèɓە9øŠuR†G<¼8L—’ؘƒ”)±× 0H9–à¢æšòÁlºp{{®;@´Ã€ý[ˆÏˆ ²v#|al;l’垆½´´îå|vz4Y¸c×½|~àºW“O ÷e¢Wÿ~œàÁøÝdÔ=ä“éâ[£}ÔN.gWóÓÉe¿[zÑ“7gã§³Oî¸? [ö,p«¯í³ç€@ÐR}:ñ¸?•Ò73÷ÏGÝÓÙüÍdÞC†“î×îE÷ 3'Jâìc ¾`‹ ^|Á†çPçs¨¦|FµƒÂÍkñÅ9–Vt‚ü®dèí÷ö;rÝ/³W3ó?:|;õã“gçW—‹Éü±»–±i74c»¦û½Œm­2qõZÝ5mßèuÔ®-låôL7œžÃ}œ¾²ô‡ÛtU÷‹™bö!ÔaÊ1)r¼óNºnÇUo¿“r½iTÙÖ¨åF-kŽ'¼” Sfª~e¤¬•+SÛ®ݺþi7Œ.eËãK–\õʲÍÖÊ.µ¨µ™~·iÕ¸ˆP®¶Öúʪ•²ñXûãê|qv:›O°€ñÅêɶ#>•|È_褆 .§tžŽ§ï›½¾üQtD| ¢ß a¦äRß8näó|öq<ÿQ\rÀ¥ß-Á)gpƒBÝÈåh2?Ÿß £[Jêð½ªûÝh2wßSÎ 4Š TNÅ7IÔÎÞ|Þ#ýѸÛÚåæ¡]¶=´ËÀCûΟî¶_n½yñ×»]ü5}»ÜïºÜa×óöË-ùFr[rºÏrWn‡j·Ak‹µÕÚ¶l-EÓ/×Ë–¬µÛ¥ÙíÒ Ï i†× ¯-ñJÖFkÉZ¶6Y›­k‹µÕZˆ /ž9¦DÃ3ËŽJ4¼hxÑðÈðÈðÈðÈðÈðÈðÈðÈðÈðÈðØðØðØðØðØðØðØðØðØðØð’á%ÃK†gÅJI†g)|I†— /^2¼lx–ž–eN½«ì@‹† Óˆ^ä¿ce_Cÿ‹š‘Ö^9ý>íîÚ£À¸ú+6 ý½ zÓŸ¦4CI·p ¸CľêÏIU¼þNG C°’T| Ú¥%°bR.É'l¢€c"Tòn!Áa‡YHëC—…> stream xÚí[[o›H~÷¯à±+ÙÓ¹_¤¾lÕ6jµªÖ­Ú>›uØ…`Ójÿý†Ø€‡[ Ä8VÙ²†3s¾ùÎuh­,h]M^Ï'/ßQb) 8æÖüo Aå–à0‚­ùÒúþâýõ›·_ÿø9ÿðòa™Á" ¤–´ETtÊeÑ! ˜h ¾h¡>­ö\†Ëô" œ8<@ÆKày53¬’ €b‚4¶ªêP‰K8¤Ètq«?ÚÈ/d‰¡òìõÚûÏ4{Bƒé‹>(¹{ŽÖ”OÍõH|ì ªnÔB”/>Ú- é¯xg[¨raÛoT}÷F½OA`5© L™9õøB¨Uþ’%ð¡ÈŽ£5ª.N%„ˆ*8†(F…Hë⇟-žmÊA@H›äv¢©þ¨ãT@I6—A ¶ðC„kï$N„¢p\°ÙPvÜ.äçòoTÒc·sHD:o ƒ°$±—¼aÿšL,Îb:W—T«K€¤‡©i°2¬ëWÉ6Š6kdãûØPÁˆAç~->+¼ I—¸ãàP—It€0âÑ_»gTg cMO´E´*é»3Ñ¡ÒHbF¥³&1Õ¿¸ Û»˜F‚ÌÃ^öˆËÈŒdéš$Å€P<þ¸uŽ©„YíËqpsTóÒñ»K¢y`h½¤ŠgüB ÏÓàDñ³°b1@×y­Ô+Iqòo{>¤¶¸q}·¿»áÑÊdúþÑ%°ì’lqÑ’!þ°ܼb$E?ÿi!- KÔÜJòöãËÏT^a;Ö±1v‘n‡ÎÊ ÷Z X6®µ÷8¯Ã`:Qtc‡:ž¶bèéNÄ2û¾‡bç<&ŒLt1—¤Ï”0Æç® ³qSG#uïmÌ5Ú¶‰ÉÎ 7—€Ó"MvŠ÷P¥zÍš)Ò L0º®¹@e÷\¼B¥š ”²¡çZm´Ìð_JÁÕj3´b&J˜oõµn]ÐÙŽ®uÄÅþ|}9Îò˜+Œ§ÎlmöB–èÝÙÆ( =…£ôªâ¹%‡Š_˜:¿û»ŸÞGžýËy6ÉÀNùhqë,ï=ãëKqÛ’´qǬúý¥D^!ô<, n>U4 P©v(¯[ÞÕçtë*±šª„FEÙôuaq_³åå—‘S)Àqׄkº’”„p)5ê{’XÓÓnéAûîJ²Gt%w˜|Ô9¼»B§'¶äË–ÇÑ%öàÁú¹Eôhc‡ÓäH®Ž¾‡ÝÉ-÷Ê’×]&'G×]Õ÷¸ÞJ&µÇõ¸6üi¿Á$`œIU”ŸU«5Áã£4éá=âÝÊ3²K=±v}”ŒëŠ ‡4ûŒÎ_#wß=ÁäÜ[ÏÅÏ·óÉÿý  endstream endobj 758 0 obj << /Type /ObjStm /N 100 /First 916 /Length 2560 /Filter /FlateDecode >> stream xÚ½[M«\¹Ý÷¯Ð2Ù¨U¥*•f`>pHÀŒ½Hb¼˜Ì<ÂÁoðØ0ù÷9ç>ÝîxáîÍ}cÝîÖ-•ê[õÚÐTR5I­-ik=ÕÑ1¶ä•¿Gj¿÷ƒ¿4Ï¥$)>ð IdÈ)Š‚’¾Ió†Kâ“=IZ’n|+’Œ®xèIE#©Z¤’´æˆ$ueQ`³ŠojÒL  x³–ÊÉ-U ”HµÎé©ZÅ¢2Rõ()´¤Jt¡’j¯~ Uì¶aQ­ÉÊàƒ%SAõdµ Z2|+’5|Ø¿…sòHÖ(ƒS^@,ª$·STM®sÀ\7@ˆjÉÝ9Ç“·FUð¸ "ùàÞ·î[jŠ}‡á ªaŽIjí¦8°-À‘Æß?·Î½ùȽYý“¨64~ÀY¹ïŽ7Ž<ßÆè§ ¸­^陋᩠Ž*Üð€ŸÁ´Ô•[÷šúp,…m’Á‚i£’hÓ4¬×S€Ôh<äfil˜š§Ñ¹QR„X E°»hOØ4K1tlòÆ-””Æ=aËRz)§ˆ\àyà-ÁÏxr"L¬X¢‰ek`wX-°†øàXCxÜѱ†tÇ}ê=@FíXC·½ãìD+Ͻc uOt¬¡ | ðB”ÿD_t(ça %èá-©ZêÐ<Èm jdìôâÅéüæ¿¿>¤ó×ïß?~<_ú×Çíó_~ÿŸÓù›Ç?=|x[ ¸åÝùÏ翜¿}+Û‡Óùû‡?¦·Ò,óļFª]Ëç=ÊÞæ}^¼Hç×éü§Ç7éü]úï?üû!‹ü1}õÕ ÿŽa½ç!ßAØÙ$n€ÐA„ebÀÚ:0P§{d˜™üx àG£xïÂñõ- í@ 6@æÍ5,œ4HÔ¦,Cqo€èÏ V²BÁ.á%Ãè}„BkÏF\ZVºóÜaM[®c|„Ɉ‘ ¬•š;NᱬõËŽdƒbi :$w˜K­` «”Gq¤rXcøùÌ0A¥dšïÚGîC¾ ¢Ê30©Ž6jÉö½6ÏpÔ78q¼vV¹ÒzËR€·ÌÔ‘ÂQÎC†ûâp;‰H.§­–\ÔT(‚5L耀°è‚axpàw1h{µ˜ .jqD=ÐiiW˜E,û`£ÐII!ňºD-tcR؇&WFK/‹0ø€èV[dÆÒÄÒë–d„äkùài¬W>ÀD!ªXc¢Àó„Ë*|x¿h†zÍ:|˜Š±cÐ ~Â8ò(ÌŽ+…·`Ö|ƒ<ƒËº€˜¾û>ˆz|uÁ yÒ}šJ.ÆTðÁTý>ˆ#e¢õÌÄD/qþ] ZT øi-Œ^ß3vÄ÷ô&>üˆCá¹"åÕÒ2ë-´,ž¨ Û_Z«@AY„öd·ºÔŸ¶¢Ø {(%ð¡ê)”’¡D²$Žán›( oÈ´ š¢Hü‰¢ê²CEØRåŠÁëb>ÀcF3;˜m/kbJSH¤ôÔ€¡ƒFk=„•½\ñ¡B­äð Lÿ™q+‡tgåFx Ã¨ÐcAtÇ ¥µ¸‹áÈ”ÓT±y‚ä1jr„V°Õ²õ5Ù?ìsfÖ›@8Y<†çT`Á!É-3y$àœºZòÊB˜'£ãDxïÀvÃ@èq +ƒ¼zp¡e„f ¦d…ÌßÔkÃÆ@ˆ…Ri ‡1:°t Èš„ÃaŠÈV¦dáߥæÒY¦lÙÖJ¥!ràUÍ.•¬êR™4 Ä,r‘IƒŒö[†ò9d’u°áq‘IÑحrÐ3ÈdoU/2ɺX‰¾F&wFT$ZÆ…µ‹uk±cP&Ý~Å`…²Ca²}5RU˜|ÆR Ê’X¿ %‹3%ªGvE(¹…u“c+ˆÈ­"Ä‘!D xé~Å0Ø»Ž !ö8æbÆ1÷QŽ”Á¦x5ÞòvŸÕ3/9™F,Êr.BYe˰.BiÈzB–:--Áxþâ´˜qŽKÝ–t„’l ˜nKFEžS׺-&|¼§ßƒ7MjkãZ&|¼IBˆ½õ| ßëá‹â{ì¿sÑ™ðY@ `µï&|Ÿ+çwém m.éûtþû?þ™ÆÈ•ÝØ¡AÕßúå—w_š+¥l“òéõI¯Oz}Òë“^ŸôæiÅ<vslã˜ôƤ7&½1éIoLzcÒ“Þ˜ôƽ^ÊeŽ:Ç:G›£Ï±Í1æØç8éɤ'“žLz2éɤ7å¬Oë2éɤ'“žNz:é餧“žNz:é餧“žNz:éÕ'z{FR˰L§ŒÜÁØß£)¥¯ ÷ëÜ`õ©éå:7„éÝšû}ÞÏ4ãÖeK¦ù ¼Qj¼ï¿•L=„ŽjuÁ€0Îc¬ÅPuëº`° ¾èZ …ùܸb¶øR ÞáœM/œuòk1 Ÿ-ŒVw pÒ¾Föë\Ö¹hQ÷ë\g¡|ô5Wóš„e.çͼ&qÄMÅ×Îûõ>;y¿ÞwÄc)ØŒWäÊ0²¦ÔÂàTXXf»í~oÆàUuIR+ζ¿BØ[óî@ÏИ·CØûÑî@8´]šÈÞØ 8ª-‚¿‡áH> eãz³Áà„#¹½Áàa6ÜÈ#/“GAÜÒ·¾Ì­÷gÚiÖ!oöþ*;m™ýŽ¡6dø¾›žúÿÞ²÷EÝÓe±ú‹è ¦Áº!Ï”eÍܳ¿€8a§ú´“5œâºö8*’R×X®Lº‚ùa×`®*2 [%˜¬÷m-‚–]daktK]Ô´ÝRñopè·}kµà_áTp¤·Uí»ùÞV‹$ªŠ°ÎØï=7YT‹ÝSNöÿô­ƒø)çd»^mm]s±¶Uc‘[m=a… A¦È9méaÞßéõ0˜Šk¬= Vc7ᜇA×î}ÕYô\”ßÀ{;0Æ“îƒÍÚ—˜Œ°–áå…LÆm™v²¿U„ÕÙ°FØSI8nU¥¯þGPÄ# endstream endobj 924 0 obj << /Length 1391 /Filter /FlateDecode >> stream xÚí[[o›H~ϯà±+ÙÓ¹3Hû²i“U»êE¥îª»³1 6àF»¿¾ƒf<Ü Ä‰cå+‚Ã9ß|ç2ç кµ õûÅåäâõ5a–޹5ù×BB¹esÁÖdj}{Eá/ÿLÞ¿¾¦¤p'ØÌ‘rÖ÷¼ûøöêÏì¶ ˜ —÷ÃÂýãíclgÿÜ<ö}™¤Ñr#^Q;@±•>Ê%Ë? ¬8{Áæç—õ{háA ·ÏM#åÙèÀ7ìžÃ¸êÙ/ÒõVâÊ`ÛÜ# °|hVE0Á€Ø»Eû²íÒE@ÐúË ò>»±†~˜]çc/t“Ä ! ˜] ëšÉ¶› b}c_ÑJÛ#€ š¯pjôÛÇ¿Æs?ES’^ Éçp;48©0ºtSoö>úžl´îU~*޲_ý¢‚«Q¡ „¨¼–n<"ÙehØÒu!ê T –pÛè2ó I‚ÅíÙmvˆÜ,¢ûøñ º”ØÈi€…h©£Áø´¸Šã(~™´À$FûúŸ=G…è×ñ‹,ö 3 £ÛÀsÃMlë!žQ*R*u“;“†Ä„¹´=–ö0n6þx+˜a ¹Tr“ÓÙ÷qI,ôø‘Ûo³‹ÕÜïL“5L³ØOfQhÂÙòÎ&QÄnWÇâž ¯+c‰œ–>º‘lp‡ Eáe˜ ¸èX Òs*PyÙ»¼‡ˆ1–ré"T´‰¥OÓE¨tHJÙ ãhÈ#o&/^êÇg)"´]ÙAñyN‚4˜ûÑ*í¥yª†KDZ÷‹áç–‘Š‡1„³ÊƒW[à ѡYýyZŒ`:0?Ü0˜º©oP€Jói¡â•äò4ýá{¦Q#ä]§tNݨw}Rç qª®Mo“1‘h£ƒ¾’?1ÛMNÑæT[››ÓaÞšïãtnû^6qlÝ™hïò+âT÷äèÚzëXØ—aQ;NBHq›Ë8rkV Ñš5CÒ°§Òìù¶òwý¥8»Uî˜.B:± •" mÆëÇi{¾ÇÍÃ]ñA³Œ¡ú•Gu^…Ìqû¸ÇÂE^Í7ÑÞlµ¸ë»‹ZºQRÊ? QÐ}®ÉÔëÕÂKƒhaÚéuÌÁÛŸJÕò$¨¨æE~ìù£›Ooþð6Z¶.èø‰tåÈ´LÙìSvK²tïþôÃçw/œ,ð0ÞÆGU·á°Á»4˜ÿ Q÷ Ü9°š.ž˜ÐšM:CÔzi›z·Ïx*zŒ§Û™³Ñò¢ªæÀfjäò”ÒàÖOï§G. #t—Ë𿾿-}ðåj€‚k #wúÅ¿ ’46é•É9hÂe4Ϧ—Åu›»w~^FušÔT­¦ÃÇ \ÛŸÖ ´Ìð'²Åjo>0q{9GPÏö¹Wê›b¥ãzaÇzÜ£±DÝÓ¬á’'¤ó·ê|ðÑcTbø1kv<£fÕDŽÆ­>‹?N£Ç˜ýkú>¦Ã†åÚ«ë¥hß½•ËSƒÝV•¯¥“–Ç%í'،ӯW“‹Ÿ`éýý endstream endobj 838 0 obj << /Type /ObjStm /N 100 /First 918 /Length 2607 /Filter /FlateDecode >> stream xÚ½[ËŽ\·Ý÷Wp™lجY¶%@°¼H"háȃÀˆ¡1ôœ¿Ï©;u»•…{ä C¼ÓÃ.ž[¬Ça±fL)­Œ©…D0Zán{‘éG1!Œ^zWŒsûÌ[+SF*Ô:ã Ñ”“7$6|‘j1× ™O<ôBƒcò(ä¦xðBÓcÎ,LäÅ©fƒd¢Ââ‚.ld''6ÅdÒÂÃcÐNŠ9€Û‹Ò(B#æx¡˜3‹¨bQnEl`S‘•PÄ•N΂·1G‹R‹9VËã¡Ål<Œ¢ÖbŽíð<‹ŽŽµ uhÆÚj‚9øµµÑO’züŠŠÍ¨øuoP·CÝ!Þe–.†µ´•®k)AÛ¡(àî#¥˜ìŽÉŠMhä'ÇÛ2Â'½ EA5C)&cãLc2v«H†BG¨Ö-öRãaÛücªÁ·lÃÔOnBã[añ^±‹#Þ+P:ì¼1:  ïT&ã‡5L‰ÄÛN‹„áÌnóßœ#^°÷2g¼ ÔG­ÅŠXðb1}âI°o½¶óFØ™9æ3µ¦2`i-ÞÑL­Mç“c ÿÅ<±Æ<¬AöUàwò°õ0 |N°hÁ)L8TáXƒ› ôJL¡ Ç,­( XâXƒ-ô&î3æa Žív˜<ñ¶çxe’ŸòIáÚãð¸p£¡±Í ;÷Ó³g§ó÷ÿþ宜¿~÷îþãéüêÓ?>n?ÿù§wÿ:¿¹ÿãÝû× ®ÛÞœÿxþÓùÛ×´ýp:w÷öcy 'ª&ñæ­68˨:·÷ª0cÌûº<{VίÊù÷ßß—óóò»_~øç]ú}ùê«þÿÿAHÇ¢PÈàY¡?³*,yh«Âôۈà$uŽð«^¯PÌÄ êƵÄÄb°“>¥ŠF”pȇ/6bd X¶~ ¢´ C«öˆ0³ÂèÐQ >ѭ׉#6«Qd—Q¥Û r¤Mì TÓ&¤*¢}7ƒMÜØöA¸WØ’¼qA' ñ° ¶ÇÇoƒÐã1XØ'bçCëµ/†0áæ\Õt-ç@R¸`0¯œk0ô^yÝ2Ø&˜E,®F_¯U=Â( UP-ðœVƒúS6PÖž‰ {½!0 kHÓ×*B"²ü®uC  µÙ1Qê¯uH½™Á„0œñÁ± `Aà#Õ€ØdàÈ`ß0Jì rg°¥mOÌe ¤+­D–€U†Bàž8h`‹Œf€„^Œ’F¹CF)mT妔¸6škÖ) 4»"ÄGõUÜ6Ã8Km8kíaJx·®Šéžb\ãØ´»§t¹idGR[ªä¤>,`x°Á"V@<8 H½D|rXDœê¹ß¶ˆ' × Ž?@&÷p- Ÿ»­U#wÄ9N>Q/½¾áŸÌÇ îÄ— Á=Ž\cUöÌíÐàöpÌ>ƒW±Å‰«/Êž °pË ‡E f<ŠáÈ͈ ¨Q:ÛA€WIÿE´# 6,¢„ (8r9|$Êt¬H#¾–ä3Î6QEÚI>Sœ<} †tOÂá'àKœ¢Ð‡Ñ’8¥±ñ°BÂáFƒW!ƒ¨‡ÒL±5¤nß p—ไù E›‘4b/‘í4â,‘=/¯~ÕÊwåü׿ý½„EM[­>Ê»O?ÿüfŸûâþÝÇMæ‹m]yøÖ ‰ b>kÔ#mÿA£L¹ý ç—ïïß¾ºôr~ùüE9÷ëÇò濵ñOço±ÐÝ»ÊÄNãëñÎî?½{ñÃG¹ûñ§¾¹ÿµlZ2l¨SõÈ/x¥{JØôü‹Gu3 E-ûa”çè-Çœ§9OsžjŽ–cÏqäè9¦ âÀf%rÅ[® `›3Zqäi¦#BŒ ¦†<öVyd„£Ÿ¯f!ck6} Ä‘©‹ÀëGÖð·þjG¼Újø³Ê‹ØK1 ”ÕâR+ >á󛇚宿Êу»ëA¸_¤‰½0¶Ý#|V{ô¼acøùV ª¯m»ÿÂØÍ¶Ê§À•±Ù¯ÀñÀíÖ`Øï\»ó5÷žã>¹Úš[ßh\Œ.ÿÁÔ¬ÞDpèï`ÑýA‚УJhOÐñ<à:/m!dÛÔ–Þ¶víÛÚûmkô÷[ŸŸ¢Ë*þbäÒå˹Öè!o| ùSÈ/7¾½!{®½ñµh‹iŸ÷ù‚ç/*›k¦K‹òytÎÁ8G”æ:ˆÄ”Ež±7Ù2§_»×p.:ñYëÛÑß'<+«ìͯm†ÐnÉ—^%kË‹z•ö¦Jûø›³KSåCoáâÎÎ8·Ï@XKW5LowjŠHÕ:]þ2¹¬²Ž%¹Ç]$ª„Wãïðæ)ÑA*ÅsMÏó-æè[ï÷C´Œ>däö/‰–ÿ–oíî endstream endobj 957 0 obj << /Length 722 /Filter /FlateDecode >> stream xÚÕWMoÛ0 ½çWøØªoÉ× í°†5@t;¸‰ÚsêBvWôߎÌJý‘Ôò€! D>>>‘|œÌ擳K΂…’Ê`~Œã2P#Áh0_·'Ÿ¾œ_|ÿðs~uvÉDm3Ç) –6»8)¶Lpe ãÚÞiµyJUñ_yä)²Q’˜¤Á6 ‘dkû´2 ?¤[x(—ß6Žx õîí†Ä‘†§„ Pˆ ’sdÍ:ÍÍÔX›Úœã£W”åÁXàjkÝ CŒì(šÅéâksñ]OI”e áH¨í9°Mš8ÛꊂÛ)ø„w²A$A¢qéøm ž ,a50;$ìDa3Vð<Àáæˆ5q–;šbˆØÃäø(VìÆ©îŒPp¤Bá2¾Ð,d!(b˜×dÑ+9—°·*>@bÚ_À¡†€ÝŒ^Gåmhð_140©²+§ÅN:¸Ð/²ét!GwÁDwöBT,¹¾IŸ«W…¨£±6½îÊXÍ^kqÔIÍ<G†»«#×HbÚ|¬ƒc–úRÙspd«ôåtå‹ÕUz—•xÖ&_¥ËÖkïœ?¨w¹æÛrSiÄsUéID„P·—”Ôú­Bü7s=n3ßpržÂÔ5ŽDj¦Û¨P!R˜x¾º´{ò$ô¡›¸øüœäñ"µf>öÌÿÛ+óÞ;sý˜¾ŒCÇ_Ë­ê€nOBÏL°>uDñ^8Y¼~JâûWY½6€ c¦‡ö[5ú\BØÑÍd—¦¦_ùb{{ïOŸâé0Žõ Óê8éJžk[!Fé1‡Ãn,õ=‰õ]X˜Ä”j‰»uskËp•=·€Š›Ôþ26ó3 {ãßgÁdÀ?ß«—Ïwë8/¦Ã¦¢í‚ ›ô¿¤¹û²ÌmSå†Y,äÜ7ÿ%lo¨éû^Ì'Û¤Œ0 endstream endobj 970 0 obj << /Length1 2909 /Length2 15915 /Length3 0 /Length 17375 /Filter /FlateDecode >> stream xÚœ·TœÛ¶%Œw‡Epî‚»»»S¸»»»w ÜÝ%¸»[p tåž÷çÞ×÷?z0 j®½d®¹×Þß9‰¬ÝWCk}#ak =#7@ h` ´·¶ÔsУs3cµ€¬L,ðääŠf–Fÿsž\ÙÈÎÞÌÈý·§€‘žÈ"¨ç PpÄA¿\&6n&n&6ó?ü¬í¸Rf¦zF–S=;#xrkW;3SnÀß_TÔ @Fv:P4óG€¼ž)@ÒÈÉÌøoTÆfvö@=+#zK½¿¾ð™Xé™YÒX[Qü ™˜þJøïU]AÔ,Aÿú¤·¶3ùßE²üŸˆSYÙÿËÈçh`oHodèHMÿoë’fF@{#C€#ÐÐÈ  & 0mÀò/;È b4²ihÐwüÙ!a£?•™9X˜T¦6Ü âŒÿ,ÑÛÓ¨Aâ  ¬­¬Œ€öðLŒC3€¾‘‰žáO*EW#ÀÐÈø/,¥ç`gæÐ`¤gdd0þùùû›HCk ¥ë›»4HVƒŠüWIÚÿ12»ñó[»ÜtL6F.' ÀóßÓÉê™ýÆ·@1 ±5à¿i:Úü7u§¿f @õ¯Y£ü{*ikzª·Òddc4ýaúÿ9üŸ&æOì?·þŸ ÿ{tþ{\þµö÷Äü#ÿstþµúŸóÇ™^Táÿ6+|þC òÿ_'çÿù´ü?žÿý©ø¿ŸaGKËÍÕ?† ðgØþs„õ¬Ì,]ÿ‡ïŸÁüOW£¿¸Ê™8ZêýÏL ÿšJο˜ƒˆÎW ‰å߃jf/læbd(kæ`` 0Ö³´7úË®ô§ K3 ‘¬µ½ÙŸ‹4ÿlŒÿ±¦hjf`4²·ü×’Ðð?èšMÌlì=;;=WxFЙefc¸3Ì@™\F. Ú ô@kPÀÆÑÁ$üŸ#ÃÂ`øúÇôb0ð¿!6ƒÀb0¾!ƒÐâ0¿!.ƒÈ߈•À ú†˜ boˆÀ þ†@\$Þˆ‹äq‘zC .ÒoÄEæ ¸Èþ@º1È¿!Pu…7ª®ø†@Õ•Þ¨žÊÕS}C zj#v§Þ+Фکÿ6rZѳ70í³¥¡ÑßfÐÕ2;Ù™Ù[¼‰"¥çð–”Pÿ "ôõ ,ìAçÐô-=¨+};=#K#ã·H.–ÿ²þuØþ&Ïõ—ÙÂÈáßÜÙ™þ¶ÿ{;¨[ƒ¿3ˆµ%h\ÿî‚ùÅÊê€và­yPï†Ö– £ó¶¢ð¦3ÈÁèß*2ÿY·uÝ×\ ,õ¬þ¶p€”0~‹9›9ý#éŸekÇ·š “7‘AË&^,ŒþáêãMSЭÄ`êjcjôÖ(Èdö†@´ÍßhÞö$Òyf–ÎðßË EÿÑ hù­3(tòߨ‚°£•þŸGšÉ?¸€$²~# JhýNP{6oô쌀ÿ>ÿeü÷½f5^3ë·íã gûÆær4²ÿ×…õ7ç?6kÐ+ˆþ[Óœ ã›¶œ .ÞúgþƒŒœþ!-3ÈÛôfñ7 ÿ>㜠fÿà ¢ï`jgô³êÒÁùMNPÇ·‰Uü×cÃÞÀÚî:öÉé Tt~C „o„8A]ßÄéëöV”ÅÍÈî¯Úÿv98Ú$vø×û èæþollz<¹À/ÎYð˜×´ÞW}%p¦Ûg^yŠ’^9­fyI¶`-EÅÌXTYs ×)Ç¢ >;uVÕby›¥¸l.$¢lBóÿvbüVBtv ƒš 0ô DÃÇŽé­¤àìÔÅ÷l¤û:!óm °TS\+¼„Â7Ž“pØKo‹Q£¶M™yÚ©‰zÑS”ýÁ†U¯}QPvlÚŠ1{ê‹Ø±ˆÝ1¤ívxÜuÈo Þ /¡xÁÇQ¶8TfQ!ÓÝw}R KŸÄšÁMŸ4p—ì›ðð—ýª2IÓSJ4ð ·Ç7íú®˜ü¡›:dìc™HzÁ=ÄãÑQÌÓµ±v=lê;À%$„˜rU7 Fc\Þ*AÒ85Eb\SÄC–:3È©* šª%Q”e!8΃IùÙ4…üXaÁ{ÉÊÛǙѪèqmAU!V £w$m;«(ÿ÷6éyAyÕùÂÚ´w–\ºõE$v,t‹ÀΙ€ôŒz¶Ë1I2ù$•h•S8´äâQZö…>ŠJF_ʧ&\W¬‰QVð=mÛŠŠòkë«`29Ü ÇF?¤ÅƒÞ_¥Ò±B`*›RàÉ…r!_Œ‹^<Œ"»Wóf¤ÄÓ 4í˜LŒb¡€û‚¨—•þ§,r–RºÚymÏ3‘ðtÂôÅ€õÚÒÍæë¾ö+Œ¥>–ØcOq8¬ÄÑ@®›¬•û¨Š`ó¤Åø_V‡”í,CËß2Y„r[/h[?Q8†òNѳ\JìkÃY‡ûmEëd©![Å>Ù0ɧ5lM÷Uåh«&B©N,¤œH¾ðu-dù`ýÄ N˜#~åcB.n>N/:ªj§Ð¹0š(ºVE‡Š˜Ò·/¹ûTçVÇÅŠK-–¤GNÞx_)¶åŠÛ˜÷{ÍB\.Ú6“âÁ ÅœÃ]Cö_Ëœu°9üõa<ëj"Æ‚Úæãù$‡`Ú}ï­Ò-Y÷ô$öÞÇê88¥×Èå0œÇGûž"…À”ñ©§eå£l 5¶Ã‡%%+þCëÊ>ð<š%U3Édânëø/¹Gæ h£ƒfüËq—öˆåø‡ký¸…m@a‡’&.NGŒ¸ ÷æË.„šeÊñ‚)ßù½Æwbî| ãËK=£ÔÏ£²‚‹¡­•cnôئÁ¿h†í‘Ê•‘ÉmÒ}ŒÜèŸÀ{PgZ-+ï8SÕ $°©ÃzRxí?ù¹¤ÆtŸ8¿R5Ȇû¨>ÎÄѸVBh˜Å¡£'Œ&¡ÖvÈT¢pÜÖ÷â$¾H¦m=QJí—ꋨg6ChÚ!MÕû)7#P%¿9@tóêÞ™5fd§£ÜÄ«¼nfV>)bÔêÊ¡E½òˆ˜Æw&`“ùøZn{ï†T×­„Û€_^¼£> „ @ÅãOÙ˜Sý\÷ ­f÷Úd©9ŽH(²fkZP?ÔãBòe\ª²îÛDd‡ÂGûì[ÉþË‚Ðtæìž2©ÆïЏFŠ˜¡7ì)43pz£:LÀ$¡õûv^©“~Œåœ`Åýûù…þrtJ3zQòè+ƒ‘«MYQ5»‘­¨}/µ¬ÐnqG ]Ç­Ï"qwî3Ì5|¾\‚«…•kÞ›ï;÷+ŸFt¥áÏ×c¡£PÅïÝŠ³rüd…ñ¸éwˆ×ÂÊN?yå¾×"oºn")Ö÷ >M ÀüV€¨à#p»–ΪN%tI þ’èKt¯ºâÑ6ZÑyÀI¨„§ƒ˜è‡Qí!+ºønt.bdæ¢pVEíəжõú8]lŽ€‘šÜ?¼hC¤ÆH‘ÆH'Û–%«ðÖ"ôè[#gŽ9Äé’”í¡½qå…Ç¥ã`AX°3÷ò!ûÓ˜.Ln.µ¸Y›†¬ÏS@€\ –±#[”†ŠÆcI‘jmðG‡ß›ð×ãŽ~$w¦ónÓšm‚ªÊcíf©Z.H Äù-·'¿Kè€rØ5ìrŒqFNåBbHˆy¯×“xxª’:Ð{§*ý³ðÜù“M•’Œ˜Î1€öòKOŽ[d¹ßhˇÔ4}åe(e/Ÿð¾äŒtÿÏ=ÃÄ÷¿ø QF®Þ¯ÏŽø “¾ïý@¶ÅÈØçàï,ûiABË~šCJéË´~›‰ž¾Æï¹ú«ð¯?t4{`´š­,¦ ‰Å1šSÍ“¦ 0¯¸ÌÙ…>­PÊÁ67!DDŽ i›!³ô±¬0LËE^ܲ7FŸ‹}(%²B”mÄ~~Ùlç¸)DaŒ:Ržé—ésR“prÈŒâ¼Q5•´³"FpAèuaï„¶6s/Îêø*±Ž'6P‘‰Ðb¢-á"ÕNonHÞhºá åµ}ào¿œ³uÁ´ÙUZÏY8ÿ°C­ÉwíHÙó…ñ4ç[] ±Œ; ~ÒO­‡âÖ±èHo;F5æªûF«y‰´ÓßÊ븃"?`ŠWËÕƒëÓ]\¹~tÕ¨ºˆÓÄÈ%ä“$¿V>›á }¿8VšÆ|vî k»î@Ž’£˜b{]ó?Žþ€ãDšò vá$}oäæ+¿Y̎ɘuX¹#D^FžIÊRïÐRgF¸ÚU~ÓT ËÒëS*@…Ï0—'lFÝb7Õ#T èü)_ÄfÏìá—ò’æö„$EÔr¦™!»$-¥Š‡ÅÄ%p´ú²¢·§V$ú±_Uê ~ßÎB"$Aôtä#õ†²E¯8âçÃëb¾w(U¸ˆ%–+nÕFü·«›/A›Hã´j›;¹ó)Vx—ˆ°e½§®½**s³Í•…FÌGDÞÁs]ª¡£ £²’¨}ðnÆ1ë‡ØíK…äÍÅ[‡k.Ò „%c]×Oá64¾z¯Í± n’#Fº#žÊ²ý ¹üãœsëcºDR¾¡þÓgõL:›k"ÇýÜëŽ1~üØáb¶¡ªT6lœ>g9п·¿•ú&?·1¬M|õõ›ÔxvnÊMoi×EyºÉ°tÎo¿=7­È’$? “ ôäPeqK 0´¥¬(Ž£¬d÷ µ‰¥Ê¨«Ä>"ò'ÖŸ“+EnÖ V6Þô7à¡¿_÷+挹ʿåXSãàÙûÜÏ-9çáÀúþ%&*†(‹‡«οaúT‘-E–6A~†Â·¿®˜`‚eõž3RuðcÆ3uÅÈ7§n½AÙ`FÆkRĪRYûršÆ3úÓ ¸9_ª‰ xÃá5f5spµÒ¸ø¡¯V¦™fËM7ý>ŸO>×ÛZaÊ¡ýúúÂþ½o[íÒá+1ƒ0ŒBi67ܸï¶3Gó·„'Ìx¯S‘ê„lÂKj‘ÈÐCçÆº·HjÅosÄ8ŸCÒ"qNÿÚiÂ׊¹¤WD7§ø¼KÔ˾‹ÉhÅ¿}Û P|~²_}KCêŸò¯øÍè|7ãð~ñšj4æ›—J#üâB›†œIÙp¤[IÉ|îÎkÒn›û#›;kTÐ~ï…,y“Þtcù–aüò31WÊJàë¹°?ðÀÎ+:89f7žq‡ñ…êcšÏ#oösb^C›Á·lóÄHñ³;ð’Š¥gG"U¤†¥-_“¼Úî‰~E>€g©™*u¢C5¦T(Q±¹¼ë=:ñÑÄÁ×AÆS¬Ýè`®¯v£ ?¹=1|¬(Qksi£íR澆™”w›ÒGýl•1Šäüök]³4ÎÎ'À£Û¯/°7}ÎÖŒ¾Ìú%ƒo§ìþ¼Aç¤-¿%ôôqk®à#S'÷<VB\ ûvõ1 /R#¹—Š8ÞáÈÃÓ{¢_Oû>{6ˆëÌÊÈ¢^:Ü„ßÕÕ@Å8Ò÷µg½^öݶ¥>µü"õ ›zZ‹æ¼ƒÛ‰¾[yî¿Ì5ª» Ÿ.‡x·?'Œûƒy=ŽuÄr9X¢“å~Ã#öR{Êù¦Œú hS  ³Ypø×;k!Ú$ÞGÔâgA| dŒQŒì„ú´—÷QPåÖ#ÓÎQýóm® a)kD…ï7 ;"¼1uæ k×\Ê&Ã:йm[Q<é6Fc1zˆ¿vîzÀ$:šHЈtšæâVSdø)Ÿu‹/š³gÀÓΚ fˆT-eQž|pyå“,Úðü"êOl¾g¥BÀ³Õ‰ù}-¯¤Žd?X¥€ã!&—`Užò­LŠÙ¤¶UÓ© øñœ'—0hÈyŠOLŠš²-„ÙÙÏXñ9í­Êo2|­<ý*¿…}ú))8$ݼõ!D9ø¼!lúQÒ€C|¡Ê°E{ìÁvÝ,nÚÊÓ Uˆ…%À:˜?*Y+m=@ SB¥Õ_}ß` yR¶ž©Ð:ÔBº9C?! RáM Yyá;ʾ‘´jý´BíøÆŸ„CòáÑH‹=wÙ‰¨UĺIY”&Èëgë@KeÕE¤'_š»w_ÈäÉË`]zå-Èž„…›”ƒ`0åùLÁªnË-øîL‹£œç·¦cã©IÖšHFßË›èÁ PÑOªúU⿤_Oì@©¸D¤QcQYz@!”°¯Új?¿@¯¬×ë#gÉ¢'˜Cä/#iµ(Q#±3{À²Âª'¦(8´,¸yvå"Xêüd£€®‹aŠ=0Ä|ÖØDøÜ²xrÄa7ž¿™NøO¡W¼ (oH%3‘ÁûîÂy_>èž›(ý •h€GŸ+6 ·3=g‘ÛqÕp÷D–üý;Û6ú£ƒŽÍkçÜÕI•O}9×!_LІõ\+˜[ùùÔ×ú‚Ã*Ü_:ÝåœêgÞ½¡¸Ëò¤B*’eÍØ‰ŸÃ;n𨠭ÊM}¼ƒèpÀÞ­\%aîz€éa_‰EÓåÂSw쬯I™ ðû­Ñ4%‡õi÷(šÙõ>AÞ%M¸mnŹ4úø‡:n´IbZc'“©ÏÔõ滑%0Rà K¼7ówª ‰å ˆñ” ¬¦wò-GI¥ý²‚t.¢«h¥y›À>Nm^h­ƒf&R¥Â¦ZûZ8Çîp'¹S™åHL%µÿØö@ 6´Ì¤–(%çœö…™‡ÛлáhµÂpOÆ5FŽLº˜å¨­ñUî9c²Ü@…|5›)í>×wxØ!!ÞTÖ,®—fµŒÐ¾›û§u¶€'U+EØa²E™+LDÛ?£ ¬J_@œ+NŸ¦_ûjíÞ\ ˜r°cl@&€9îüe”ŠÞ\øŸŒøO–úÈi’yâ<Jy«ÍhšW*AAÃ,Ç‚x–Rȹ¿Ï¨ÜX,„Ã'›HHwšÅ_ÇÕ8ë¬ãÚ“c„)Ù!´n]§4 Í]¿ˆ‡Æ¨½› /òtñøÊ}[$NbC­+[<½C²•=zLóȰïϺ1X“¹Œ+'6»Þ²>]Á-Ôù?mße½øC·âÌ&• kµÚâ3tƒ}wh^&æD9Ù>¢¬"g>òÃeOª–98çBÎòÖ«ªH¼ợ"½$“~o‹Š‘hQÍ(ßOo«E낸C!¤­ÔrÖQüá*Á–O<Ü”¿|r«ÐRÙN˜°(4™°Ó{žËqÌ!ÅJL™Ö¬œïÕ.¥|Ã=ªSÏ×4Æœàø3éEj©éA xvÝPR¥úÓò1Ž B uòõëÞM#umXJhQJîã.Ó§pn‚'Á`þ1ËbSao%L&ÒÞ]7^hžãÐÄà.tƦ DTõB] ’À8¼·§¼öÛÅcÏælpžuØìþ~/jŽˆÛç’°AÓÚDô™CóóRÄ×°³Sù¥™©È-þ©x/:’ð –#zp«Ïc·cU=~1$ô-—ÊSÚÈK•O žhD;ì'ºÄœþïøÙ†r\&9¹=I °©s`g§k#;W‘Ãl©#ÉX±È°ö“šORÜ,‡:î7Ôe#¯×S-ý+õ—È,†±Ž.­6øØ(fzM„h$JhÔT#\IØeD%!ªÞà×Ì^Ѽ´î}b‘ S¸ð#y ÕTAê˳ äû’ê=  Û4b팒_5Ю‰ûÝ'A®ÿû\ñü1å÷m+O¹¾‰_NxNÚ@¹Œ^dµéʚ̴µþôBнH2/—­™¶ÿZ«ìSœ+ƒÑôê­Z³<ºv¶1bzh'x# ª›)ëð|PÑRýe€JâñÚ„F;¬ß„¿\ÛD“T¸v}A³Ð{z[–5{gåû>‡ƒ›Â‹éz]Žk¨„EMéx2ÎrKÌÕî{®V¶Š¡ÞJš+¯BÙ»‰‡*þ. `½h_žÔîÏq°à´u©5_ŸW–Z˜ø‡ÎïÈøÃ^éÝF+CFA"1óyb5¦\Ø’)ÁIÇR; âN'üh¶`ФºÓ>‡›½¤~IOÑ~á5Äv˜üéøðÓ¥¬¦p+÷­8Ë;»Tïg¯*‚b% µ‡o=~Æbî»crB:N“,ðëÆŒþÀÃv{è²ý1žçÔ!<’2¸ƒÞ¼(bË}Ev+KëkO95ÒÆÓÀ’aÑuMÜóGa ‚Û@©1ü¾­ÛDÔà­JT¬X®€^·8]m]ÂâæÙUŠýõݽã 0¯¡ú£ Ÿœ†«;EAS•nOnÑèRm!cí“ÅVzdÃ9¹‡âÈ].šTráó{²†jKÇo¢¯Ok˜–®y¤Þ娦¦—¤Aðr÷¦è„dÙììÀö\õ½jA1c’’ÑlϤIúšvƒw?Ä`Y·ê\ï½aFÅ}¦d9Z+Bˆ¤+úQ<-¤í%bÕÐ"²F øø¯ {Äðn{ò–®I6ÈÕOZ_¦ &¢÷7 µpL»©=Eо÷ò1ø<Àm°ÛÌ2¯z.Z7<·VYÒôÓvïË2,cçhï¨Ø{(ìà‰óC}(ŬŠ9 ƨþFÖvîAÅr_-Є]`ÛpÒLÃ{Û>û£|›Ë¯[OõõqÖ¨\¥è2@Ÿ†¾Å´ˆ„¨…“t7\æPô‰'‡qt¿Ö%¡Ìr»•aœÒÞ¬‘TéßEU .õßlTZ­ú‘!¦Éù¬²ä7„ÑÐ^$3å?t‡K*nèXIoÄ‹ËÖPî@/P‚IEÎðWR† ŽÆF¼p2†ö[î›§ët¤îõÆCªo[[+¤µhº*œ”=;àqgº P½«fo±ë`q{ù2ŠWªq1s¬ú ¡€IãƒK’ĈŠ3ïwX¦wj‰¡B>žy4:¡Úºûhê.1ž¡B\Ðxvã1ÇòÎLmÔ³¾N¹Á£¸+„×k%Å¡ÝæÄ:ƒC¦lÍŠ0#ç™d=ûYáüº¾áÊÒZõ´¹€ÍTZ¯ Þqr¶ÇŽË¿2%Ì/Ö°³8×i|9bÒ…Aê^3ÁÚQ,;LâIÂYEb?^\S¨ˆ+êñÁW&‚ó—*$ãï½rìéãœ;PÍ ŸžehSéÎy ¡RäÂ8Æ_ýqC€€ް;¥¬ö· _@‡m 7ÜŽýVÃÍã'à'°ë1Á¢[ߟa³så^ú²JÌM&>PÁˆb±«êy,” ™sPÉ*ghè€ÌåöÆ|ì§Y2‘¨>Ùq´“·ú -[’U¾g Wnk`ÇèÌ#=&ǯÞrHütå[¨jloxt-V¬gÁ­s‹*Žæ¯VŽB@²D ýv<äÒ®Öt¸;p",ÿ!´âGd!Õj°•±¯²i¡Ö-7wàíß³!§3v*›ÐèÏÍXg8š±ç~Þßcªé»w£×躼u"\oí&Üàú\Ý’ ×+¬ÎvŒ7Ž0ýå‹DÁöºjj¿ý òi ÇØí4¾6<ÝþÒsçAóÆfãhè“øÜzŸ[\©›ò"Ʊpg¢pt®—^¸•žÃZ ;o¿¶F 4+Œ<™Œc9ƒ‹tQ…ÙITÅEhµ·e|#ä{X(Ç4­q%a¢ô^$¶•Ø>.µºhðñ?‘ËÜÚuÒ£VàºOkcËO÷yzÈð¥LO8Cßçµöð Ž. ØñgîµËw©¡åõ6ĸTISáY¥JEœ#g’¤*º;P±[8èkÎDcÓ/–Eû”eWo“¨d#ÒEIa}½¸Ï!dRɆàͺ´9bØŸša<°ŸÓµB;>dp|84©ì«íÝÃÓ"Î=׃Rõ>\H L·úŽbT4 G&øÎ¥ÝwZƒCP¢¼"x"•‡¥ÔV6òÓ|ÑàØØ6S¦Ö“ö7ñÑ53=\ÌZ¥Úé ëÆU[ëV—sЬù doVR,¯#‰Â5 –]ÀzOhošÉÙ”mšmh±Z¹\_¶Oež¯3,Ü=ÚlÎT…v3n†5#} nßDï]zÌÀºƒÎJ(ÙOeÏßÜÕ++ ¥Ë ‡žòŸZ¹3Õ‰–M^¿«ïr¦äÔõ¾/6Þ”…?®ªÜÙ.X¤uuçÒËo@°ûˆŒš±Sa%É^¿Ûón-,‡Ï‹ûþ´9üÞ3„t’NcnØM#éñ)+wyÿ¼ÿçRü|<òp½ß q érÌ­—Ÿ¢°k’^K{Ø…Îà•°5„–@ãNx 7#ä+OËS}PCQø •øWÌ@i‡½ø‰F?Ëä¸B ÌŒWµPŽlRéÇȽÃSÅ®žÚd ¶ú.KUÑÙ=íþãë>Jv¢®Í±ÚFŒÕ øôqìÙ¬Û‚²„úñ>ï H:¦,¾&†W‹::ý•ˆ“ªeQÇ µ6Ëêv¶¨Úö¯bs&àS„€¼˜ÄŽÔLóÐêrbÉ/"°êù,¥”à¡âç×î{Í–ödb<2ãtÒñÊ~™ÎÉ¥qME9ì2éûȰWÑsLënÓ[Ô•W#Ï¥ÕéaÊ÷E8±pxÊZM­“Œkâðyš™˜D”Šb6zæNå6ظþ°Ö1iBèÔð±y¯Ü®ªŒºÅ! ,ö3çH½LØÙ†2£ayu¡€„q±©A#¼„6=‹¦‹´O>%P'>a¹ ÑÒ|t9ð´òå­ØÏÛÄ™›B·Mo2p&”K[ûºÖ›\ˆ¡ gèŽã"]Ë Ëß:º`gžÁ•ï-ŒŽ†kl{1Ö"T%]æg5ãr´Ljµì¼žtR+ð.—]b›üô°KRt :LlX ‹£+¬YóÝ“o4Vô“»ðÁœíðÿÜÀtWê8EýÞmuÈ10ø0Z!øüÊUDÙG4ž ‘~˜ ê15m» 4'o¹¢ð¤AfCg–HJ•\;€E¸ ²)þýŸ3gAéz™ŽTN"]ÕuM‚é8Z‘Ø<-‹UçwŒ‚ç-Tf¬´bõ’÷xDk.âÌãe—]°1Pî-4Jw~Vº”òÒñÂß’æO.•HF"iÒgJ‚ó™+9a{þ|¢·X§½@¯IìÙ~èÁ˜Dôôƒè©Œ-Û|ÙÆ¯ðÓÚ±uA¯™Ñ%Ù½’è¼}¼ží®ýÈñ“Òï¥ÇaFÎ#Õ¨—Ô°» _÷¬ŸJî¯†Û qÓóŒR~/]-}_™Æ´µ,è;…Þ¬èÙ²Óßtî÷Ö®¸Àˆ‚?–“Â+52—œ®‡ @¥,™ûiFA½Ð0oE»mžtM'Ì÷AI3ÈÚƺê*©¹÷üÌŒŠ€8u€y–=yä4'Q7o·ðÅ[B2COÜÆuÏ¢±-ÂÙݪ­(rÜÕªüüÊ´ÿ=—äø0/£EܾFÌð+væŒùÅü”qÂ`\d›AlÊe1ÃiT!̾¯å›Nãu¨ÿv¿Á϶㠳)î‚ôÚÂó‰ â¦<‘¸‚ A ƒFtËvòH„¯› i÷V€KÂZ’ªíMîm¬ÂÇ¢Ëz\›²®CÍSGT2‚GÀ·º ìqøˆçöµ¦ÈNCèÆ;CµæWÄ~¶ÙÈ/B''»àGÝ%Ÿ´P-摃7~íŠÚár OXóúŸ›2ºŒ§ŸWSsäÇ_uL6×lu¡iÊ•m,xév¯ê“SİØËʺÐs[ !‡~tý¡ I?K5½{{„¥×F{¶¹FÂÀ…•—t;^Œ!!ÇÃç˜"æøAi,žWNqCŸO³FÊù@lD‡†£ñZÁùô89K XM¹¬4±H äý(Ç×}Ÿ‰os:ÖL­VojÇ´ß]­E¥†fÁG½› ‹UÁ0,‘f äùÖ›;ð°mËÑ1Mè}DüɆ7z‘~,´u<ÑpJg…·äØÊáÔK~üD‹Ò Ãx—Ì“³ÖEU‡B¤ˆP¥$¯}*°×XJL , åaQ·p¬°.ñ!øSNµ‹µÀOuº´ªåêmS"p¤º·}<¦ù¦ü98ŒÐ0Y|ß»0X‰ dHviáŒöú„åóu=ÍX ]§=|nüËD>4Ú ÁÈãj¹œšñr·À+?´ ^]ü‚±òÌÉQXž0~ÀS V\RC= Ä?+E¥Ê,Ôô—¬ˆ;ß_ó§ îË®šôBtU%nz‚…~ajœL²ãX÷‰›Îk×.†&¹ï‚›Ij2?àÍËŠ•wç©.É߬’ƒÚÒg%:ænRÝzA™l5å=ÔOñðÕ"æIv|ìmÀ¥žÓZÁD¡•ñhiðáëÑ8~bÝÒ*ð;/¢| õèHÚ¼ÉëÓïÍÒH`íØÆ*Œ™%{Ýê@%ƒóãm©tõä±úïŽ[ç|šzØÑu6Çd¢ÚHð“xßâºoï1‰öÞË&Â:möp39Ô¬íW¿ ¹F¶×‰?Ýžß Øu 'ŒYÅd5ï^ù1DÖý(kp8±²nv ÿÜ‘ÎPäÄz^‘.RVׇq:ç ;HoðT•¤ê¦™ýÌÿWiñÆeWtmtùxS!ñ\¹p ·Á@ÍŠÃ¥¦ŽÏ×:©ÃÑŸC[‹õÅ’õç"“ž(ì(‡ 6£åžrSznE¼.¬Y‚²ƒ…pýˆ<©ÝrCé„XùWN3^Ѧ•ÚôRÖ¼~\U1”Ö¹Ô'ÙáÃkþ´£"¤AxHšƒmc>c=ß…Ç“På-Àd*€"¬®&Úc_Kø´Å’B¶¦Y£å§ºuïs(ìÛÀE©h=ÔêE@jÕÈUîfªo74À~ÀjÒ4÷)¬Êú׬Ä!MäÊ5Ñ3%B…_“ú³yÕªG¢ò⩸ã ð¯£šß8¦ã-ÐÂDb‰š±öigÄSzàÈK¹L~Üiæg@B÷[·êØ­™°Ù½Ê†r­Œ«Ø {†@šGƒ ±ƒêW¤CÄ¿¤ÌQœ9® ®¹ü±4Y’_FC…®üÒ<{ïkè0¨ÈcôŒàãRÙj‹„¡”ÐGùWv¾¼KÐvfñä‡VQd¯f/ø(ÿ¤Úï´ö>¥žRáY”ÖÒúØÙVäÃÎ’ðɲHvXâ®±î + ðÒÄeVˆ_`õ*Iºàîëtd°óojµaªn5‰»ŒN±ØáL(Ö!Ÿ_ˆÆŠc梀ÌE¼ ‹ô)K4{©X[æßÚÒ&¬G˜ºu³2û8wæõݲ}OÛ·|‰ÿ¨I€YÉÄZ {LÄd»‘ÛÔ hµEªÞÏ õ Œ¿jʪ§\™Ö*]„ïûf™Õ“+ݬÍD‘(*´üÂ2ò”¨“:’x¥Ïu#þ.õÝ3ǰ¥N`.N~,@è1h7åø[œŠxV]W‰ž‡£y%ÖEc#t >„øŠ{©`–$}\ ´ãµž$2×ée¡Ä÷±) Z­A ¦_iÐ ‡ Éw,õ÷¼­]Üjq!#L~¨¥û7pç'BÕØÍÝÁ{䮨êéþ^81šB¦´Ÿî^L±å*§,ךˆÕ ‰·uHâNóPšÄ—nK™«¾G|bQÂ÷ÄTwOÜ1] vöžæc¦÷™,ꮦ?/Q­é}£‚îH—*ûér<;³ŠÁ\q(ì;“' >rª+¿2ñŸ3LgÂP!é¿æðÜ7º~rÓÖ ¹K˽³á–fÍÚ ­£âZ×cûe7¨à—žÖqfYL­Ÿ€=A| 5üFæ¼›vv¶]TÍ.+nh€ù#sì‰Q kœ(³KɬáÌgƒÑ5¥ujà3À#ÙÑçg0A4ßM-“¾Ü&ÍvŸ£<ôçw™FÜhå8û‚ª6c ðµC1!N›ÞæÅ‹Ø'màý¿6Å7Š+£‘½*\m{E÷ØËjå%ÈÁBµ#ÓŒEÏdR&Žpµ=Æ£)ð+"´7¯œ¬'3ôêddÛ­:Ï´QNù”Ÿ :@)°Fp§9"…Ö5Hw´ZpîR¡ÒÛƒ‡Ý&¼úxJ¥YãÖ°Äõ5Ž‘ø?S|@`“°Ðè/0eŸÑ7~íîÑdÔX#M¤Yi>„“~‡÷[6ýö—h1XVõåÅx"3O÷ÜEáËç4ÖEyj ¡Ý=Óºëá|w _¯{é)!Ø–Á‡àrƒÉŽ~>æ¹ÄQ2¼¸[2Ù-•±kJiM†Q˜¸ALœ6êú“}ep–êæœÉÛš‚«þí’®‹ uÏ«ßÒNž>èQ;ëìµpa1pÎVÂwQ k#1+–ÇÒÐ}BNrÇYFµåå¶Bƒb÷Ù{šð>gJiãÎ 0 cöÜŽ—Š-ú™qTÇùò{¿Å¸T1†J{Fd÷g¤×FëB$Ôõ«îi0iš«ã1&?ø‚–ÆÅcždÈA¬Rm|º•ïî³wB+®Ÿk¡ Ð}V’˜ëeÛ»“>œ+Ör¡ï‡£Ød‡„ä›}Ë]àLž„qÐcÌ“î€MT^—ú7ö^A[p`fýŽÂ\„â–vªµjmf] í+4Ü2jLlÒ®í~/ôÅã4{ñaEqå«¢±·@ ò±ø;\±–öºœ\ôM)9kbGÞo=ý«ã-OxàO¦[4I~Æj¢˜"6‡§vTÎÑ{²¶Î×f·•1.q0NޤNb£PŸŸB3êr¤±Ÿ¦¿ç¹°@¨É û#úᥞâvÓáΪép' n‚³ciŸ;r©díï³ëÃ{QÉ&Ξ¡-„HíäÊQ®_*È>aJ¬˜ðÝ4î²O¯çzü²ƒ˜¤¡Æ¯_ ,wzчTÝZ‘ttÊt·ÌÅ_óÚ Àą̃wPk¾jgʳOÎèq—©)Í(¬ î 2Š¡¹Ý^?–0sÙ¥A n‘âÆÝ`Bo±WXià_ˆ/¨^¿06YÁKG}曌ͤC:ãœö‹$fÐùFën#ŽòÎ9ÜBét鞺Q°XQôE[J(þ¥ó¦”#%Qö6rdHxä²zyë&&‘rzH+d| ®ýOÍT-¶Gë3?/DOã 8C6UЉø”jâªÀ»À£¬Î~ý€e@j0 ŒˆŸ»+5xOˆJbÝìŽvëÕ5£^Ê+ МiS–ÅÖb혤Ü=äÿŠUî>¬b°çŠ~‚3¢fVÇùQyü7ÄÕ­.™D€Ê¢É —Á/fá…ßÔw ‡îÑC§H'_~&61 äž°w‘ƒ“Þ¹˜‰· i²íeAÛ/AµÒÕÇ—‘+ÞÖ¡Ò½NÁ.ÜÔt“øØc’Þ% öýhêgöÈÝ·bÍ\2RŒªgí÷jä›ÈÉg¨"=9úåéÕq9ZCâéû÷æÌòßez*i ›îíìù…m¾Ñi\L¶œdm8M y¶—ø ÷aÂâj-¶£Ê{í÷¥KXÆëŠÈ# xî]Ò°‹)’ÜÕòdimDQæjçUÔßE›Çß¶´õÛ a°AzXÄhPf~>ü„¢¢ýMpW„”VÅüómá‚æ‚ÅàF(W*£ =²4ùeâ,Ø^[É#¶p8°¥M¬µf€Š4G_ ·ƒ»Hk±O$Aºní<*-éô} Ê®é"®*Ï@¯Š¿˜ sEaÂm=É‚Ëp#“ÇøAñ'n'ðÅíBæ ãt«kL]Ðû}2·'Á•g{Œí4®\²N7×ÊÆk8›9[š£ßºÇl”K»|Ãöóbº¿J4ébø¤š*Æ­ò¶cÌbÉ¡®ïé$%&NÂ+£:1X©\ƒ-ÑÏ¡°Œ‰&>ÎÜßÍ´{Yðc0³™ñéøË0Þ¬0T €…š)V¡îÖùièÐCŽý.¦ä°ùD½0;?\÷QuzVè³óõõ8ØiÉ™Ôx\›*1K'í‹©_ÉʈzÝC­bß“Á—9V/5t3¼ÛŽƒe’¿›Ýžir´>?6?{–0£•öpéð>õòÒ»† tz×D:·×y†òI‘óç UãK¸Œ‘øðë¡$éòs€a!EZ2“ÛsÐ<àÛ(7’Y¶—n9$fe´¸Y"µÀû_s¤Ã]Ô9GC:ÇDBþ%íµR€Ip­ÎÍåïý4àòÁˆGhYð®úÛ|¢-`«„39ÓçÕãO{6ð@5½ÄÜ:ßOÈU¿;¿h}aÄB¦R)o$Rm`Ös[‘B¨¿’ûýå¤ÂˆÞÊØ·ßà@ßôK ¾šØ(i1a¸ BõAO?bZÚ¾`FÕ*ħ“„¾×²’Š]‘“×”j‰WDºr !îÔlÌóÅãRB·iâõÒ’Ä’+¡H2›¯åSBNf.¢òòÐr/B¨¢<Ú éUÉÎ.¥_Êc!Š›™‹¿±ú9D¦dpö¬ò8K#Ùž¯rÆ÷ˆ>'xoÄ0À•„Ô²¸õ¬#}ƒúÒØó}`®Þ/Qw s;¤¨$ýÀ£H’ë'‘Oe¶ˆùùû‹@ Ÿ©µi´—Í]és|±é»;Ž]¯µÏ,ÙÃ1{Ây)ßSørCŠ&áKÓ\ÂÝðYÜrhÜÎ4}ù4œ Ž£÷w\•T}>ÎH Pýl;æ“‘¶¥RŸÅìò%®–M]^å©wei^5-Ž´ä–µu1q€Í¼û¡laY†q) ˜ ]N/ÉþRÊм=ld/žÑ¹>³ß#´m‘ŒMvmªX˜ŽÏr½õ‘í“DÜâbz–Õ´6-t=bmpzZÒ;„èR$,°Ï Ô¥+A"ƒï+Œ±ðȸk2Ô·¾—¿BÇ\¡yó´UŒ|t{hù®<¢Å=òÑPÚœ>ÊÖº©~bD3;Û/@‹’É/Yµ/ªŒI,r“{Vµ§-{ èá—Ò— Þz³ýy›RÃÖ>½ß¿>ûdŒÓ}K_ãÁá»hæO 'Ã÷¯à±„ûß%=æTNôctQ¢Q.ì` >1ûf°ú¯hµÊ£¼’ÉïßðK Ò·ð»„oêÑ\ÒM~âªLéF,q…âì¼ç²ñ‚5†«›<'ïÚ^»gwZëõ,%mŒÛ®0Qo_!ñc`ÊZÚzÇ$½šØ:p¨ ÉðÂÀ]X´ÄµH&NÊ42ŸuΕ”›Ö‘ùéˆsÆI[ó'#ÉbµÝeKG}0 áCY?Ïil¶¹<¢Â5'²?«üT°}¡íÇcêw©»jŸEµ`÷c&-¹¾™Šd»bñÉø AÅñ=û£.:‰¡{ühõâØâ:J¾,Ý­.rÍXÙ·åóuWñÀêsS‡sùëZ¶íR¢Œ‘g-¥‰÷Xœƒé,k{ñÉ^¢*íÖJæmËèa±|6› _eøÎª˜ù±ß>îçTDj·ÏöB®5Gy½#áÈ” -¤Z½–B±í«d´‚)ݯÞcó'¨gÕ†?+ÒÝEÖÜxÚ6†LÍéfµ{®P·,HHø¢-þnªâ³î•ÞÄ&ÕfrU²*ïq?%kŸ4¸–$ÛUÉÏÙr£RŠMò}_ Äêß'R·º @ð ¡—Â_®ži/KܸxT0•¿Þ¹Òª¯„]×}t—„0 S=3A_ïŠïªšÛÜ÷c3€ú€Ü"RÕõ8 âEd:½Ó#\f¬Œ|¯¤oxÈ ;(踵C³³>x›œ_g ̂ݖÞt1„¢W-g]TÃѰ^£DL¬n)â˜v†w'öPi^n¢óæõÐ\.ÄïR,û1ÅP¢åép·Kw$ÁSq=h¯WlþÕ±#Ù  ój£øÉryT¡„tú˜ø²˜¯àr´ßÜ5²MŒ n™¿0Ч ê—î+e¹–öô{É.¶ ´VGWˆn8Žq»¹' Ìw¾“qH_Ù&‹Æz ﮾ƒE¾¦ÜV×AÖætoûúe ·.¨ªäQ¢üÇ.d.9ßEŽœ$âdžqL‘ß1.š®ÄÀÇÙv¡ëb —KŽõDF4zãM(—[¤Ž|Þ*w9V£ œ?:+ë]fÄØ¢';ÒL5Q« L9oB²¼)ÂÇí9ܬ|_‚O%ÅNK<¤½D%—šêN-8EÝšQþ£Z­ÛÄ"Þ nóØPŸŠa Þ¥>ЇÍÔotÈ mŠI_³‡È=¹‡}ìÏIO êÆD¼h™qµQVT„þl*šé¸ëÒAå–Ìǰ¹·².jdœs)ý'J?çØh+¿r­Ê+0Ô•<µ”1¾Gÿ¹Ë®­•ù‰[7y]V)í†Ûòª5±¢FתL¯˜ø*E~ìÔgÃc³„@¤þšÇJÍ»‘Ò‘µ{'ßÝÙ4{x$ˆ‡ŒÏä)nrÐã ºV ðŠòþœ¨rO(·ÂV¼—Jâù’:zÇÙ˜foðkïxæ±D…ßd0bJü,wéHƒv™Æ”'ßU‹ôÞNlx ÕN²_®øà½Î:¬§KüQ :ÐÓZî±X®$ÿt{/Nâò°|ÙßùZ¦ =× M4U£—D ë±&ê‘À\È£¶øžSÓªN='¿Ä’&›H_‰-âàŸèëGâ6ƒOØu€f“ß¡Jõ_k†âeToàø‚1êôT¸"ôÇE¾rJÄêyË7[^½tîöpóS®~:îÁL/«!dl.y ŸM0ضçÑao)[›ÉâÂØø6Ø%“;o×ùŽ?!X,/1ù,(gá˜h6ßI±ŽZ= w™Bq®¶­ÿ=Å&­O–Ãc­çX5£ú…¯efKa"aŽEÛ5§ÌùlL¦ ËÆáz² &,/s Ràû|-"E 0Æï=Í¢K)¾ ¯þù‡Ù0­Ôw^ýEý°-Åøroa®oÌ[/$“±a+&åµ 6ÔŠQËC ˆG¤GÒϘézç¯fuåh+ sÂ0>z¹®è~—­…Ÿ9æŸÜS­BÏŒíX§Æj‚_#©ŽžžVô¦ìb™:á”b7WánF{˜RŒ`‘š+•çˆEžF Æ2MuæúŸÜI`µö¸D‡Ž*Ê9z¨¹½ˆC9Ú³Ä[ÐòR7‡àOµÎ=î}¿…~G…yæqÈŠ±’ËE›5ªÅ`(”xtdzìµ4•bÕèþßP7<²¸ôÔ´™õi]†¶(ã>Ïd–Q:±˜(‰i„êÜ8ü^O/¥Qà ÐA°n,Fä!߯rÒ»4V]Z¦Ñfù‚÷•w/ߢO¨áÌKÐÆ›´>|HDx¦»AyÀ@}ïûYåÝ×UM÷½Ä9o½ÁgÔGãàþ_ñ²V+uð±IBI—ã^p»)Ü~@&N×Oe¸•g6 Ò5V}žzh}gxM±A´§Ð}Çûf É$u¦×^n:â ž®éòùÏ2Âãrc¤–aÉèîÊìRCt³8Îé«,·.Oq~pÚ•í áoÖìZeèZ‚˼ÁL*:?G ê£:tdúdÏ$’pûùöÜAsÉöÝšñË\:Ä aÄ(¦Á†ó JÃBî´XIN-ûõó´ h Ô)>–9·L*v¦°ŽÍ·ý0ÒÁÐpÚl—ÈôÝU/i=q=± ÿ <Ò‹3†±¾z!MMÂsqÖ…?û@@N/ËQ£Lã'–À–@õ ? žyånšCã…ÖÈÿòEV¢—‚JâÅ툣-… dž Ù“ë  Ú‰¼|€xiEnWÎP…Íq ÌÆo"f„7ϳW¤<_u*“âKÅÛ.OÐÔ1ò«?½™r¬sƒ»r¸øÖõ{hÈ¿aPW²®´#üb°Á#ã`I5&°.ž¦ˆy™?/%ýC$¶¶)×Þ÷ ƒKyœ¨â‰´|„tÍïß}¡x³¢Wàö&8»C=•âÛ<ǽ~WÛ©Bèˆ7R˜ß“]ŠªWÖ¢ŒØ¤…Å?¶“use;DÐÎWãÈ(ßëxpªqÎüZ “ïÃq ÅãÆ˜žË FÌ×n-8T“(¼QþLVÕ«=LÿàßLàg›o¯‰~ FT7^Ϊ!g’ø"ó¿ðþVoL B“Àa¾Õ;…‰*£¿t~?WÞÓídH9Ã.¯ ÜÛS©H jÛSõTË$½„L=B´ ×0g£0Í'6#©›ÒwX¢ûÁÁ‘ï‰v;¶#Yo€nô  –8ØË–o…yGÑ~(<uW”®.†¼GG5 .˜z± Úº?áù?MÌøƒ€·î=ÎÆË;–yúÅ,º(²…¬°~ZpjîB`1®§ü(L—S?–ÜO2™¬úîE0£–ÿXö•C?t>éòúÃfö뮥Ù0B ‰/oÕkQÛo-ܦª=x4hŽ”Uäg.K¸ˆh5ç\Ä—Çþ((£ÆgŸêæ±½WÁùxP›À\€ ½j°µÉ–”ö1ÏÅ ÌÁP\žËH0æRy4®Ý‹ÇÊí"ý;•;´7ð÷LLø-"Jê½ÊÑ“¬}‹Ú?F±lý.¿,.ºýBòíh—ŽÚгaÎØÛì&8™ôsQÜñ8V¾œñuáÃðÓh²K¦O!ÞÎü0ItýPãý?|äá£ãôœyؤà )׸£ ÑϾÒâ´ØTÊxX[=æy+gÝc¯ãí JÛŽí+Êý¥ŽWÉ@§€ÊÓxÄ—ZFA%. Øá?ªG¤¾?¦{ endstream endobj 972 0 obj << /Length1 1408 /Length2 6039 /Length3 0 /Length 6998 /Filter /FlateDecode >> stream xÚxTSëÒ6Ò¤#H7 ½& ½wÞAjHB‚$t^¥7éJé]©Ò¤(]zQA¾èñÜ{Ïýÿµ¾oe­d¿3Ï̼Ï;Ïì½W8Ù Œ• (˜: ‰ ¥*ºÆ– EH89Màìo; §Ì G!¥ÿ¡âc°6U0 ÔE!÷<($. ’"@ Ôß@”‡4@ì‡t…÷PHš„SåîëwrÆ`ëü} àð@RR¿ÃJn08Œè‚1Î07lE0FAà0Œï?RðÈ:c0îÒÂÂÞÞÞB`7´ÊÃIžWà Ç8Œ`h˜‡ øE vƒý¡&D 0q†£ÿr£1Þ`k@À!0$≄Â<Øêc-€¾; ùXç/€àÏá@B ¥ûý+ù;  ÜÜÁH_8Ò àGÀúê:BŒŒ„þ‚h6ì†#ÀXÀï­ƒêJ†0–á~hˆÜƒBÿ8 ÿJƒ=f5$TåæCbÐ$¿ö§ ÷€A°çî+ü§¹®H”7Òÿï•# uüEêé.lŠ„?ð„i©þÁ`M$ÿ¶9Á01 ”¸¸{€ù@œ…0ñu‡ývþ6c9ú»£ÜŽX°@¸# ûCâ{ÁOX ÿ:þ¹"P8p€9Á‘$ÿÎŽ5ÃÿZcûï÷X±ò€¿>ÿº²Á* ŠB"|ÿ ÿÝbaS5­û–æü(ÿË©¬Œòø ŠH¥Ä$þ3Ï¿Nàoö¿­`øŸÝýGF-¤# õ ìéýMÄë2xþŒ /àŸôPX=Ã<ÿ–¿5P Á~þÏCð;äÿ§ý_YþWùÿ÷ŽÔ=ˆß~ž¿ÿìGøþA`õì‰ÁΆ. ;!Èÿ†šÃþh]îéöß^- ;#JH'¬ÎAw…€wÿ²ÃÑêpÔŽ8ÿ¥¥¿›­€#a(4ü×}þ—;zWì½mÙo ;Yÿ¬«†„  ¿FPDLöðû’`€]‰üAØY…Â|~K ,„Da°!,Ç@€#ʃäWcEÂ`4–3íŠíƒó/'É? @<=<°3ø[ Øê¯< æƒÌÏ¢ 2á./Â;Îk•˜¼?,-wÅ$YöG‹a¸Þ=ñwÖ!ÌÖ˜z l­¦yl0W99ÀÄ÷õ|ÌÇúUnÈb†fG­Uy_°pèÛÑ+'+Åè4.ñ8f•j/Ù…ÂÞ ßŠ;Õ|ö"B¢Gtýù—g—]èõûRÛ7@É)%[&^)¿k÷‘%Ç2fØÒš2ÚÃ*ÓÓDËtü÷<áL¹#Žá›ïªUBÖðǯsú‹i÷ÖˆWGÒ0Üô»Ç–?’2È@›œ{¯Ã¥,vªRžžÄÎPìɵˆg/±øcºh =yPÔ³ÑIO%ä†þÃ7Mžõ(±Y¹üžÅCf»µ“oÂdô-)1ε9”9k 8§Ã™{5¢ˆ‚^|:VA}×û+ÝiTiÙ™¥îBSáÃ0QÛ/ôçöñÙÉ ›t9„äà§§ÊâV÷Gó… Ùt #'ž›Ë²çÈ¡“§ýðJ‹Û©Èã–×Ã=Qû(ޝ,´S!IÙÛ}[ÉÍZb§o©ÌøÔÄ1uÚïPÝv¼‰ù‰ÓAFùøí]2÷¥æ&ØÍD) M¨Þ™è¬ãdê[JG(OS’Ó¸~-gy¾P%þæ‰\h‹\ºd0ðáû‰ýkª†;‰”u«7 {¾]·MrðØ!²Õ.èºïl_ªÇ}s7 Þ´t±¡l9²/1»X üÓ4ÈŽ¦ì¡ucü„“õãÆ½ ¥úèûˆ˜´î© U»§oX:ï$0g¾œØéíäN_÷Ñlü~Š¿Oã0¬!=È^Œ¨lJkSù8@cj5Öé8n!òèyãØtüdu&sw-ÄÝv£QoÏýGÅeU5÷\„”èjµn0—”?>i´Y*Ù‰$5x¢1Td)„ãìØD²†PÐ^ +Ú¶âxÔKUÿ]Ã}ÿ´—ù#M[³ð½A?È^q¨ºä/ÑŸ„-ôÅ_û*¡ºë¾>Ü^·1À¤ªÛJmyw©ô(²…ªÈ2qæM‘…ھΥȪHëêÖr”fº? è–ÏÃÍ¡-îîO†€vÙùéws½Û,FÙji‡%»Y­‰Ó¸Ç?¸ÒV3·Õ¯è¬ƒt¨pœAÏYÕóJªÇù£d*ç6€’â÷=°ZZÙeÍ^ù­)=ûÖ¤Ñîu/#•ô¹bü\CUgòiE;üAº‘\ŠNWjºxGĺ’Ö¹-nE}–÷|6M TkHÓÏ•r&æó#‰5v(dÇxØÔ@«ÞÑ_{¬|ÍAúuÔ²¦£pWxÇëUâ¸Uaë9ÖNýBÅí,ͰÈTjÙEî„{OGÞy%Ï p4°;›–ê*×o+,§ºó͆Kx‘¿»%÷Þ„\Õ HU|¦—"f»/šcò¹^Ò±-ÀèkXÖªÏÞ@V”˜þ2ÅIA®Aúì{Š‘ßSš£#ÇMÿ¨ [*UçDzkEþYY+Êé#[³ß_Ìç£E¹UŽ|WjíŸO?W´°J¦Ö!%p‡1|¹¦}q×U_îÖîÏJÅYS@JÙ„ÀG”Ú£Å[_\qßfñ‘K=À³Z`#Ø9ûÞ<6·1mjµ}ÇÑÌ÷ùèІJ‘ž¸ÖŒnå %œ´²bË›Ífò¹/Lv„»\õu~¢~™.¤Ó˜½P&q#ýÂÓÇ8†DIì0K\YŽê}‘ò}–É*QuVbÝx{ÄäY90Á¨`P ôäÀbÁtÿ#æl8ùµËrxÌ9ô~µaúÓŒ™^y(Ξ3'ú[Åæ~>§õݲÞ3ºÐµÏUf kcƒaÝàòl›ã …RÜÝCL!"5Ó™R<ùJ?Ú«Ç®”ÀhóM½T’1ÀÏ`—ÍÐýŒøUÓY«‡øYÇ+™âúûÝk^s¬R®¤¾T tš)¾î2ŒªCïV©. » Ü é}£p›ª9~* 육°ÅÞlu£âñ#ÅF_š[¥¯:ßòu&¨Ý™Û(†rWõ~îflm"}-‚#ÌÔàί›8-Ç— =£€*|¬³ Å§á ³ ‹è;sÕ3o´|¹«>'»¡XŸ±éZÿ¾—pÉh—gafÜVdŽ“ˆ«tq¹ãÞŽ7F±‰p CM¿Þ)¿Ë`ø¹¶:¼Ð7& 5qÁë6õÿäg¬}ij„·/æñRt¶ß WŸ²Ðmcæ"ð.4aÙ‘ó* ›^z_×Ù5ÄIKvȾäÛ4‚ •n%½ŒKãX¯åYk5›9XŠÕ(«BH„j;2™ßô[ô(°Û•û¡ÁîÏ]qw$ÒBPÂÓMß›^¹Çà'ü¡¾iÞoJ§÷~x@kŒê5Ö»‚ß–j»îM±Œ÷¿·) .GUE׿^f˜kQZKk}Õ‰AtÕi^Zᘄø Çt‹X" bøžÀ`å‰%Ž%]8Þ® Qô¬çš ^ ¢²D8{üDï^(eîgHCe¯™¼›š:Æïh]r ? »Xzåâk’ÒÛhæ6øåñ2ÃÒ7N*à ÉGÉ{s/Û²¯Iù]oÿl­²$܇yØ–ÜŸy½Å·ûX*nÀc|FëQ!Ê¥ÆtWû”ÆÇ¥°MˆX€`ôœßT;û‴W+¡ª³gxO4ä¬É@‰:î8ìä–°ì\"€ ÏÉã $BâøÔÄî<†F~'w¥`ZWr.•"bT*C¡9'3¤){5ç˜)ƒ„6…Õ˘˜†ZG€E£Üå¶X\!vfo©3#C7¹AðØÚ¬›ûá×{Q¨ÅÚº•Œ+»ý-¥© ÑÒCÚÍneV³ã‡ûRjEmtI.r$l•yþÞ×kì(ÄDÏŠÕ¿:Mw×ßÍSÎÚXËÙQ*«¤^î|ðb|„âöÒËÅÉ»„±¬QÏ’&¾‚ž8Ò¿%®:˜5î/?^í¸ÎüÄãY©UòÇW^öŸH;ë~Äß:îò9Óà¸*` /Þ ,l»ñ&­¹ìÖ‡ñ.õѬ4Hm]vr¨}õ+G¶[×nótV¯{ôÅI¶ñ(ÎÏ?Êö#ƒ´t*öêqi¹=ÎÿøTÞ‚íµ[:ì`Xq AGn~Å>e¦¢¹qž'ùÖõÖLòuYßó\=O2páVqYg¿PÉÀ.F¯¡¸/!ò‚²ÅUIË&Š÷–î9EP“qÑ—+ËŒyd#ch<AVâ WŸmË`2÷D‡b…þ‚«y(@vi¬ÿÙã³.ÖIÆÝZê«­ù þ4yup“láC_n·´l–éfˆ”;›]n©aÇÂÉw‰^ŽFÃÞòõLyrÜþ²Ñ—.6 ÔÈ#Q ù{…~ óª»Árzç×:d,ñþn9XòȳÏKòm<êu-ó=G­Äžã|Åh®ö%ªz¯´žÛ< &ídJ¢Ý†>ñWK¡.î}ä2ϰœE%ÄAk¶¼î̈É=õsåpuå°¹»]C‹¿ql)ü^CÙ®‚ož¡x8rôC4ïô±ûm„aÍ“TÃ/Y1øËe´ÂîGמ0›¤>èRŸ”Ä·û9£D•Òܦ1|KxUä¦àÏå'#;ÓOâv¸j—x3N×°ûô€›îòE°É5ä!F–i&ÎõP˜H¡\Ä7dÜñ¸µf7}y¥èÜ÷Ïj=ç‚e)[‡!k®0 ½äÓz츮\É_5ãñhOmiÏ 3¹à¤¯Íoø”ã;Ç ¹›ŒŸBßå*lAE!¼”6¢Œä[3Ì38œ|ºšÌ½ŒY›Åù2*Ч˙ׇ<Ü;jA7]. Ô©)»£!hLú®÷ÙŠŠuF›;/~5ï)ÁÏ\»ÛÙTE¼u3<­ßsŠoèê¶‘4Ö‡“=ðâjª>SYú,ª‡Ó¤s]ïmbàéŸL‡îh¯=7ÈÄ/˜W]^húèqú‰é¹{»öXd$eÇ”eL‚FXÉ“~J‡21eë4È8¹J½¢æ±ÔLŠCØ??ù*c?C»þEi‚HSºáù“eKMPjãJ»æ ‹wØ ‘­åd6¹Éõ²·šªó‡fŒ ¾“[o,rªËµ‡ö (GœÎŸjhÏ8×?Ôk°jÁ×¶ÛŠV!Ú7¡ó[œr$^'–ÎH‹»¹fûTVÍÞãî¸\þÈahDL@J¸d]Lµ¢'âêX>ByÞ“Í ¢Üj8ôZÞê>Ò~o;½(ªð.1¾\÷Ðæ›´9ƒÌM*¯ÛI”™×-Vd®‡+ßN!Ž)µ I2XÖ’Q(`3y ºÑŒ¦ÛÁ;5µY{–"7iûóÆeŠXÃËØ``]Œ¼¯\M$ßjˆƒ ^×C[²NL?“’G]!‚»é¼¿$ýâèšõñÙ\Á³NîvX¡A*—C{ê©á'£ítwáh2žU¦Ù“—}³^æûãôŒ¯Î‘ý‹•‡õ Ý÷ÂÚ…SÔÙÅM…jòë¸Çü´ §Ã ìÃÓ•“rÛ!èÍÅÝ0Ô=›åwlo¼/Äõ? >ÊÆl‰Qí™­Œ”×óWQ7WU¿¼`‘ˆ­7E‡f?Ÿ-ð]ÿ<Ü—JhR§"v¡áá´bJÐG)ö†#1êqW@mbcw,ÑÃôks’ù·È kt½>/ñ¸Ü”†­.ÈÆ‹»96c6ý†¸oÌé#ôç’£ÝÈ…âž&TïYuÝšÈDéɺÜùBô“;t½¯TM3GþR&ð6Å~„µnPd–Gz–X§p¹Js?ë.«v´S~yÿƳžòu Ÿ\“ª4À 7ø”s@;ÀÞP;ðSÑëÕCOÕÈÜÔòÀ#®àË>I)¡ËÙÒöuF/eZ7¿éXI4BêØ¢Õ@~étL¬¥¾.­ÐƒI›K"06Õƒ »ˆ¨¸YªÔ—q5ÿîZ\TÞ‰;bQÃöâ+K ].m¬ié‹wzï%uPP—÷èw䢔Qò¤Yw˜2&1ÜéPZ)~5‰º}½5¢,hœ¤¿Íaœ[kžpÃÊüöw ´ÅPF/†G–¸‘–§?o{£ÜiŽ7³Ø²Ôú ò$ÔPôã}.R+‡Õì9¯œR•cóâÆúç ¾&Ë(Û&ê—§Š~ëæS¾!Zæ‰lÇãh^Ò ߺ*°Ó'€ý´Kr;“ãå’}h  ­¡p_ñgÝzXp¾ÂÜ«Á¡­©ÚÆk¬”;Îkx6±%ûÝÄ—›í[•v["²“ç£üø”;枊Z«ñܺh†{…?ËõŸqê&k….n’aJç¼Â"g¬[…V'{uÍÔi‡bWcü®ZŸEÌ¥ä3Ë›”ç}MÇ¢˜¨¦Ê«¶B—ŠÈ’ÞöÒ†/Ç_“fI ‡¬h§ub p,©iëyçPb®´K?Sïpj¦XãTùŒ£kÐ>»Åšù²êÚT«kQs×GwKo´ÞŸ ÀqXœt64¿OHŽ7vž»¹ölX®l탷Þç¼z0¢B:†ã\_lÉ`-Ü»×n"F ˦½(31Ânûyò›ÓƒŸRÀ:Gµwv¹ŸÃŽwB9®èÝ•‘íÕXbýoÛöÔÃD¥î)™þ-KeZâ·T2´/Uð„½kóÜnV~6~ËñÜð뤊ÎqÑQr O¦7ñ§®–õ–Åœë\dÙÃ×ÔRåG#šdìñ)úI½~pžß^¨1±Ú…ÌØì…ÂpcÙ5›2ºÄ/U„ûÆîc¼|f¤=¡†Étž÷}ín¾0²§V TõÞuFì1ÔHiÇž§?BÑ?I¹|÷~ôšü÷äšu_Å/ýW­¦Ë߉~ÿ¥Ð«)3ñÏØ—õUv(G°qù$¶í_W,z»—N$-Äßé¹¶eÓ3Šû…=3èŒÛóëp-›ü{ÑÀ†ø[½Omgž§ÑóÎd ú7ë'¶ÖêÏ~¡4*ëi ðy½±Mt;Ú°ŸèØ[Ùi"y¥ãÒø²=?‡ý]"ÇaÿÔO¦µ.SËwÆZíÝõW#[1îe®º¤ÍŠŠ=0®—ODÓ3½Ã1ã³/}œ,!»¼ÂîFƒç‹ó/+ØéE=I2Õ`)bçü}óµèÒû‡ÜŒD7ëZKO2?­;D¾`<Þ¯5FP¸ôŸ’ý½p(ƒWr ÑhûYëÝ,Œ _¿X=£SÛ"X…™‰LQÉéÞBÑðÞ ¹4ûôLzŠÑt^d²E~ýîu*;E·¡yÛ“0ýË“Éä»|ú~?Ú„ -G.´JK®‹¥ssã4‰;[rÛÔi–ôY §ç¯÷·”ÄÃZKê±é¹ ob³–ÉlÀh¡=¾õ&mõ€I©¤«Ñ&9Ö)ÆOìnKÖ*§kO<*½ õ|0}k<Ϊ‹y97{ìÊz6¼HF}˜i–3íù7çÍPøP™àÊçÌM\ù8¯+•ò´zí]©êΑ¾Þ>9 _Ãú;ĺûâK¦ßN"hðj}ó~f~'=7¦¾ÎpÿÛfÊ ÑœBûRK}˜w:-*WñÙUÒªu©}•}-êˆåÓìf¶]ÊAj©3Åä‰3š5]¯Š¾„¨,ÿX¢h(¯´)~¢õ–{çÓVüd{Óøë΋Î5bà‹#¶¢ÅCÿrc ÀJ­úd†Qe´r£Žä:o͸…<ÙÔ/BZ“•}{WÈuÒkgàÄ9–Í&§º±ºð4ÞÿA…ÃòÕ§Ú“ÍÔÜÜ…ÙÈ”æ®Bª„cd‚Tãž‘h\V=å—èô„†4Ê6?ŒÀÕ:;µ a9•µ]fP*®:öA.ûHcR5‘=t ‚/éW›²ãÁe£ñ!8ìçÚw Ç]:a#V°ÑðYýVè‘« endstream endobj 974 0 obj << /Length1 1166 /Length2 1528 /Length3 0 /Length 2255 /Filter /FlateDecode >> stream xÚuSyÄM“ûc¢‹í޼qÜ›ëFoæ;—‡«ù©©nÝi¼r‡C|4Ù¥§©§¿Eošg†ÑsÜ™eþ—3¬Û^šŒvmÇì;üÔUvÙshAéh¨…³ë =ÆVÄ0Éd,Lù$v•†±ié±²™«ž(‘}·ip•§à·ŠFûµ7BÔ¦´}ÚÞÎÝ·òÓ>÷ü­~Y½ÞºÅ%—Y¤¤ö­Z’Ê—,ãÐbJà 6ïøõ>+T—žØ–o¥Æ·h¼mq»Žf÷.“^ÙLk É7Æ©‹=Ãø@ÇÑKõ·¬¯é8ÞÅÒàu¬SñfÛúŠóòÍ1R_Mûý=cÕ-6Íõwî0/b{ꃺêKã‚1s{oG4ÿç*oðyð°E¥b©JÀ¼$äÔîMqTäܳ ^ŒÈ‹ÇöÛ{d×ÚE‘iÇ— U­Ó‡’ÊwææÌ˜ÿ,ÏDÙÊZûz­åô¥ôÒÑK‰FÿSfOF|×õYùäéÑé+ªNúBÝ.Øù~™¦²«%OJT2Ƈê­R*G·ÈµàÑðy ¥ME–ƒ/ÖˆJ–…_,Jµä,1ë¸1¯o† ÕôSaKàœS«NÆŽãj=ùžO;ú3ÇÞg0úÒÏ&vôò€äüíéj:G­üUŽŸÚ±S~,w–'Ù JCöXd§_ÒÞœlL}±8#óÊòІ>oâôNÛ®óI(býAõoñW ¶ªÈùðWƒôÌÛç4áÒ^KŒxEábÞèŒÊ‹š&ü{ÁrËQŒosd՜۽­¿oÙo°«fîºduö¶Î½«øòÙ³³4eakStO¥ÑŒ¢ò3ªŠÚ>lh<­£U ª¤µÍÈèÏpQÚÜ I]B).<‡SŠ@ý¥µf¯ç* ˆç÷7W/wÔÑ Ë‰ÇÕb¤\Ã35}j²„ªøò`NTÀ æ>Íó8ï3\&‡-f-R 5W œEPãetl“;eѦñc;Òž”étUý¢®G£nÏbß&…CãÞ;'¢©¤×¤Üôù‡áµëCiúù»ª# ×¶uR{ÅÄCäÒÊY ûYˆ`p¬ {6äÖ Ü“æw!%†#ªî!ÞËÛ„Aññˆ†äô#+Šv»Ï²® ¼Óík™nÖzÁ=ãQÖHõ¬¶$È‘“öêibdúÑ´ŒÒûÝÕýgÍ¥Ú»­´CŸéó~¼ªû÷Xî\‡¸ŠÎdZnÏõú$¨‘áëai&2“‘¯ºªÏõô¡?:™s€z®l5áQ´UÙfaHh°»^hL3ô.pZž½ç‰!'5ü Ny¨ÏíÕògE%|L'¾MCw3_w<æŒWÔÁpFGá!?J÷›?Œ½»vnÜ4P´ ŸœÖ©7…k’:ùï¦Æ,¯ëQ{é;±4ÝèC™@Íûp²EEœi÷Lyótg†â¿ñ6nœ endstream endobj 976 0 obj << /Length1 1626 /Length2 12802 /Length3 0 /Length 13640 /Filter /FlateDecode >> stream xÚ­uctäý–nÒ±í¤S±Ý±mÛªŠítlÛNÇ6;6:VÇêŽmtpó¾gfάsç~™{>ÔZÿígïgÿvQ(©2íM@öv. ,ŒÌ<K[Wg{[{n9yÐð¡g‡§ u»XÚÛ‰»€xš @ d `e°pssÃSDí<,Í-\Ôê*š4ttôÿÔüå0ñüOËG¤³¥¹€òãà dcï` ²sùHñ¿T. €™¥  ª¨¤-­  –TPH‚ì@NÆ6%WKS€œ¥)ÈÎD0³wØüC˜ÚÛ-ÿjÍ™ñ#—°3Ààì2µüy˜‚þ2Ñ@N¶–ÎÎßKg€¹“±ËÇ \ì–v¦6®À¿|èÍìÿäàdÿáaûaûH¦dïìâlêdéàø¨ª$&ñœ.Æ.Õv¶ü0ìÍ><ö¦®µô·í#͇ÕÅØÒÎàòpù«– ´tv°1öü¨ý‘ÌÁÉòo®Î–væÿD@p™;m@ÎÎi>rÿ5ö øoÝ;8Øxþmÿ·×a°tqÙ˜1³°~Ô4uù¨mniÏô×®HÛ™ÙX˜ÿ¡º:ü§Í äô÷€¨ÿÚšÆ@{;OdϤ`ïòQ@ý¿c™ñßGò¿â ÁÿzÿÿÈýWŽþÛ#þÿ}ÏÿšZÂÕÆFÁØöcþqcGÆØðqgr€¿«íÿblkiãùÿ úWoMÐ?ЊØÛÿÕ&íbü1a;óZ˜™ÿ¡´t–°ô•,]L-fÆ6óú[¯n9ÙXÚ>xý{¤f汩YXšZÛýEû?L ;à¿Âÿ êoðLZªÚb¢tÿÃqýÛQéc \Ô<>°ýG+òöÀÿþJ#"bïðb`áà0°}aùx{€¸9˜}þ‡’'bù§,oìâdéÐýè›™åïîÿã÷OIÿ_ÒˆÛ™ÚÿZUc;àǦý—â/³©«“ÓÁ?þ®ÿSþ{çA )üÊ’½)o°UzV†KNÞð„˜n/ ÄpˆCi£ZQ}_zø6w¥ÑKmcÓÏ[»çâ±ÃëoÚ½Ñ^lªžTÐù7B2š¾´ ÊNº½@&ƒR¤ŒÍh¯‹¹-Hf½ eƒ’h¢©6'Ø‹2·Lò{d_Ó´†8¬NÔ&0ôºÂãʤÇ{ªÁ±‘ᡞ+¨¾ßt¹qp¼Æ8¾)Ç$É.žFN·¦oPÏnœ`êc®:2+¢Œ Àæï™òfÕ´~YLtÕZŒ;‹µ5÷7¶ò)úÑ"¶÷%bÊ®µ‡sõ’Ž­ƒƒ‹D`ñ™$åPÏêñ½1Í.acû÷ð3œÌìLuP2lUumÔæ½G` Äe²_âǾò³²§LÔ›ø²+¼˜dîEºnûŽÀyDB¹Ï µ3¿._Œ¢˜@¯kUðÁ^Lj7uütŤò KÏå‘Ëç^ýJ}¹9j2’‘-tË›H3¦[½mƒ3Z|OZø²™ÇÃP3s¸jç 3e¹º„™±·™ªuk^ŰñÎOðþ3ñÇ8áBñ¬Ýñ›Š(¨’5ÐðŽù8?Q…=’²ÃZnó5v€.,z’£l+ô wsÎÀv.øŽ%eáHZzþYZúÑçÆ>,ÉZ—?ò_-—ÐSòÖÔ=\ù³º‡#]Jgæ6›`‰²#O÷­;y…Ú¼9ü„(n›ª,ü]1º`{²#ÔÎ µf§Ä±è„æT„¼,¥Ø Îà 6âÓmfÞgõ¥<[ë‚xã­æï%€bø¼1Œ•Ò†FzsŽê)wÐÏ÷}AkŒ\0.ñ9ÎÇfˆpýv=+ v‡¶îÁôßtboš½³ãk·Ì8%ülW2‰ 6d]EYІ¾™õŒ29¤UÛf–Ü6Þ)7_mœ³2¨â?Œ§´ÿóÅ´Ú›`>˜dÕÚ¤ÕÎ[3¿gë»JBîò@ˆq<QêY›{¢¿ mÓÃ*>¹P[ˆê*Ó‘s®C©_7É(·§!Û=˜*¬ÿ6\¸½ÝFv ¶TEˆ.Û«îsÄRÒëû¯~Üì­" OƒÑÍŸ¾F3Ä{š…‹ÌTéž=B¹@/̲ÿ¥TwÔú]X™É ¡ÒïúæŽZÉ)°öhy2só:,ú>‹ÆöxH°(À9r®³ÿ.kÿŸ¼¢Ã™éFSÜÿÙËÈw\?4kgY•ÆGíÄßh®oË?9H#_|‘²£ÊE€ßë£ëäÇa;”a?ë~+żéÄ[ÅÆºýá¹Ë¯ëi•ñ…;'[ŸRÙ1ŸŸ¦ Ó^Ëòª÷žà[Òµ–ÅT|¹Ë2Eƒv–v…4ö§èWÏïÇu+uÝõ‚¥07©èáW²Èe”Æ©0²À('Êð÷ë´^8†\g“?Ýf€3e¾}¹ Ò/‡Š…ßuÞGwÙ!®AµÚa(©¹-ma¯!¸DjW7V ÷/üKÊÎ’FeènÍóQ5b«§6x”܈uÄáñC¿GsVšV&1…¯dr‹Ôt[ù#QqæK\ÔÙn*!¦*¦äÊæ‡{ ŸžÌ@¤3Ac µä ãˆ+oßG¾éV¾„¢¿Ð_Ij&yÜ |+b9¡™ßZ/}‘õøù-Ä9Ôð·jŽpæ„$4û(C:Γ€„8 vÊ>%˜lëã/‡{´¦…,Íä†s|®Eã°õEó¦ûM&འ&SfM¸‹õ;d¸é×ètúlÓL†FªiL°ã…¿h\C1MÚÏFŠÙØ¿¡]ýÐO9t½ÐÁ¯×I㛳a†A^–¹ûM“‹ÜØC?ä_+öQoh¸ÀkWû^å1;æ÷š5òzÃ{‰ÄÉØ}´|½ò¢C6# êkmj÷ò>–]¹ ½' ¾ÉKÛUoXøÊ¹ªgZÌ5¿sGÅQ|‰a¹ `ŠP<Ëüˆe.šù€;ßZG޽¥ZYñÊ…_Ÿ6z ¹}vFƒ:lkßzÿè%-ÝØ¼³NâIÜ•«¿‰æA(¿ø ‚8¸K$¦n¬12£G*dwµ‘óÊÉÕºšFv+ž<]bÒºµ[¯®‹4l‹ž¶$@N£ñqÆ?×Ö SrO2ƒ¶ûÄt inemÏ!Ñ}RÇÔ4U9jëeï.ïꃌ&ã³Q®AËÙN-EÎÀñCQ¬.S½êÅs‘ƒ3Oäú+!°˜r&dÊ»a|O±ì“‘KJ84ò6žßŒ‘–f@fŸBw$˹³Ý¿t@ÓºD9b#T¬)G40h¬Gs'Ü2V¿“p&ëa™‚@Ùš6’D^æ5eÞ¤ãlú ûý¥Ë°§ÞõÅ}“!{f¥MŒò*q=r-ßtˆ1u fTÒ€ê8!8ê"Ô£^bõÔôž0oÖÿ"eØ «¾H=¾' v‘á¨íl>ˆ¼ÇLÑçûðÔFÙ©ºâ%Ôí\–'ôZ3^^»[ކZü4ÊѤžz/àõiMˆl–4%¨‚ç3)MÏÊc¦Gr4h¼tsãýÀ±†üŽó3nì¾þ »726—]¦ôæMÊ¥Ü!n´0…¼r<RéËgZÃÜ7?ôÖz…&¿ßi*ÊÇ*÷¼” 5ü.UK,Ö ®ŽvP†j7ÇN™zF×g¢:3Dzxu6 †'ÊõÍkÓÒŠÎYZX "ü®)Û|¦u?‹£Z΄)nÒŸA9L,Höâf~\Œ\í}*–“½Fôб—8¨¼¸–6‘–PÂTÁÝÏ3ß×æÚø¬‹6’ ÔÊTxÓw§>.‘'µ¢í“Û‰å0Œ2~Tp´§`½“°ßÃ#ìAèúœÝ¦N€DáB³4ã„Ü4kCƒÊTÌØ55ñÓœ_‡¿¼¬ÎÅB¶aÔ½õÈ—»f’…æôÞÕ^UʮР&V»êé=ÚD¹äÆ€æ; á&ÞÛSóŸÉÆ;Žû“u{]aôàkT°Äæ|1ÊEèÉêm¡,|ò(ÎX߉CšÍ§O1¤é†5?[¾MDÁàj˜íÿÂG8Ò |/õ£&߇Â÷ ×t¢AŸqlÕøN¾¦\ð­Þ0º³j)¶¼²l¦úLŒ=3~¾Kˆçô]GÅRÀâ½½ ÛZ^’˜/.ï˜ïÜ< ¸4ì«‚ýÞK‘aèx.¶Ú0ßß³YmeMùf‹ìð¡‰'½†­†Á±}ªëüÑÑxSúä×öÝÖ&ÎÈ ÎgªDŠžI )ªþDu›º=ñ•“- ÕYÞ@¼Ø1t£‚j•vÚa’ì˜Y‰ý˜b çÙ꧸M< üãÁiÞH>Q¤ø“å*Ìçæµc¤/(Œ0ÒW5Èð!;Æ€YA=ž;íÆWªÊðkT—~¬Ò\mÖ7üϘÆDlWYúÊoíRºDñö½›ža£°=ðJúM˜‹i zvŽ…½ç^åYÉõ·†©5ÎeóÎ'›Á´u.5=œ„¹Ü˜´Œ®Ç”AD•#[æÁØßÑf(0¹£! §ƒ Á~Š‹„.ÒD¥²'X~Á(É÷K)”üŸîçéàªAàŸç7Pɱ‡ö‘b-Ú³ðø7÷Ô—Ù5ò×áGð":Nr©eS³ý1e¯/Ô®ëüš[ªœ´™RH#í6›÷§Óu=(JèþÝí”úd¦Ì-S¼ÀºˆC’ˆß·GJ”ºhÎüä6­¤ àY<€ÂŸ2ód[ÏTç‚áˆg‰ôèÉYø kÉ(hy„_¡ Úcjv «Z¿1Çëø°ŒBÒdôy7RÊ'&µÿKu¦ΓծðÁÈêgaÞG‘u¼ lï¢þ}gHO¸ ÊCtï—þÈ#°¯lÂû3ûô«~²¨ˆ6³kþ ië#E^L«=Ã,/N¸f±Qa¦¨{<¢Éå£Þ"’>#PX¯¢7†Eºe*Ô˜XÁa£€$Aæ(X˕ͫø7+Ê»¶Ê=°¬YŸÈøAÔp¼ãi,†Ö+¶U,Îzg àî§£ÆÀ¤™£© ÊQywQª?:%ûç »üÐëôÝ?#>çç¬ví]ÅÓe4òVMQ ©àR/Qp©õ‰+m¦Šãa\ëŽÉŠ;IÒqÒ ³L3~É£ª ο3ÂÜÛ/绎šþÀ«EïÙ’™/:±0W-WºWk~VS¥êŠ »¸; ér2ö78 sÜ¥Û¯Œ6¦°;ÚÔ˜íÛ9kæŸ5U<œcìh¿5¼m†Ä3ܲ ˜¨+8|ÉM³áY¤—ò(SÅ}¥Å_Ó×Ï4s<ÆC³÷ž"ß:1ʱ<”FG–6LI^4ŸûiMá²F²8bûsçä‰[8Œϯq'É<’C¥øš²ÎËWÎ(iWÖ,©¡*¥D[b¢Óã(Qªx1>ÁlFÿÊÏÀÒn˜·` †-R›`vø½Ÿó^HT¤øéã….ßË•ýxi}+µ¬¶m“zï *ÇÐëKM6<ôˆ †ãq}NyH=ݤ F3HWþŸu0 >sB~@0vÚ_ †ÇÕÁïQm´g=õkÿæ^€ŽLY.Êä÷mœ.è)• þ0¥ô;{@2EÃ7ë÷Ü04"ˆnÁ\Çìõ>/s뢆å,õá÷XƒY÷iØ‘!Aop·ê‡Ý@ïîœGåÛaRÌœðü$uö®T·Mã$ò¡õo“ {s/Sï,¡¼Nií8³»,"x%\+ 4ã„zÌLƒZ„…z+_¤p¼ªYÝ=Á¢–ÍFñYîóOÉŽQPp°™ XðO~†b$ùŒÓ ûˆ$ÜJoãä#s¤Lë7ø¨†­C•ìN¢S¯òqåW(óã¥Âòuu~ÆÅ:/Ž~çsÇ1bÑíaϪ6œÕ ZÀ«&-¯¸ ~2ŠYëÚ„/Mf£:Á­Y¢íy¿@;Ùîþy&«jlí£º¦ÃË^Ä~Ì fk7íl‘¢¬Ô‚‚»m'°a$â÷Ï–d¹¬é£w:œ\å~2²šµ´4!ð MŽ9ûâoS} ‚S‡}ðfÛW|¾$|Ã]7J—Y2W{~ fÔªÓ„äYBåŠD¬êò€¡³]!MA„ Ì[Ý8b8Ìd.•ÄáÐ[>Y*’ULŒB‹âoÕJ†]ã>² öœ {Á~)/R…z‹òãÝ8 €'‡È"G7‰ÄÿJNÚÄ!ÒÀùUé'¼Ö~ƒ¡Æ)˜†æSª³]{_Ù è÷¥Ü) –јӖS ô"Öz è§Ú뛘w2]¢+œÍAE#>Óèôkl´ïæÓ¯Yò#è|ÚÏíùµŸ}³Bšü‡‡ú‡˜äý²q>¹ïm€XŠLOD‚„mÊW‡‘€@' ϯ~*ÆNâóî>é߬ÆuYךҺ©Þ{?ô,߬dívS \¡°æÑüg¡¾Þ nLÿˆ3ÍýjRº1À…=ê¸ ¢T¥‚‰qwWiL²š/jÁ›ª~NÛ?%ËQ 6BÂSR·˜·Nî5wΆ°ì¹Óí7mõÈqE‘îA.äB™Eågعi”Ô2ËÏèØA´F¸,ºF‹[ûýHJ*Ö`ÏJ~-øÅá&JvY63ü3¬› +|¸bnÂEr>R„gñ¯0hg’MSš¯¹ks¢}Y’›ˆºyùÝÏíT‡’>Ãî>n¾hÜDPùÕ%¦bôÕãü£¾¢' ¤ ¶›9GštŸ",“ \,ç4´"$ãBõ½!¾‘Œ·œ–wÙq@œM-­}kg?:ÀÕ9â$Ý+¹fDå€ðn¤ŽÍ~Á"¬ÖÔÞñj‹ýeÇi;éí-9È^¡ä?ÍT^N=2ö9çq  Ry}ug°itJÓØi[R­~LS/JNò-õó­ÑðHÅíFecX¿ËåÏ¢| GåCixÁГϹÑWõàÏþÙVasä—Ö²&Y–t Ïï¦~Ô»O‰—\,/ñë­3){UW}§,¨;iÜý&'\OI¡¸uUjuéˆëmfiß÷êHƒ!÷}D¢Í:‚<ãk5yÅ£ÙÈï:£$ªÁ|D%Uí¼ GŠêøM™bOL$iF¸HÉ»o›’“èíHÄ¢CíŒGL®¬ÉçµËßÕàV¡ßÌðegr¸TI(r²»6ÇÌt{FÏÀzfñ ¦IoÆž¬Õ¥¦\¹  jùwŸéC ®¸Õ:¯…Ë{=ÐäŠÌDŽ2Z+#­–Ç|î†~”!f‚àËo0Ù6 ™)Zh(Æ¢¹ƒ¨)8"`©Çñn!ºÏSzs;¹DDß'špW¹uÔ7WмЄ~÷x G%ÑŸEç<É;ÁH™ºKo¥ÃlÉLBÜP’úU{Ø1Ë<‚Ú‡‚"<€{ÙØ‡,WeHõY—ÄáöŸÙ•1—‹äô㉠évqLhîb÷”ŸÁˆ½ –]7Üûñ Üî™ üÁßì®ú—UQnhi/?Ñ—ŽMú×Ç2ÅqLµO\Ý:5««ŸuBFÁ¢µÝJ¶©ç–‹«4ü,¨ì[,¹<[ÂMŸPZxc#Å”,’‚i^¶ë±p³}§ž›rʦ2œ§›€R² D7íÁõ‰Lz³—hÃÇk¯•òÖ©^Ù¸†3ÍT‚t)7žÛË >þü3·3„miÆHèMhY- eiÅE£{i—´Ó?;üçÇåz?‡ õ£ZXeVsî™x?Þ­O0_~ì&‹àfZ¾Ô›xäÉñåéèc¸ŒSœSÉg2Æ_sßµš6&NñOÙJƒ7dÖÙÜmÁ²Ø_Ù©ôÚuœÕàF &w!P‡'õ¡züÎŽkV¯ûÒ­6çŠÅÅDÛÁ††¿Á”E9š!Üe왲kœœ¢{¶Ï0ÕàŽ¼»—\sýÕd~ŸÌ_玣¡»_ív‚×=9©åôªZEvÓ9Œ)»yïÃÄwò5ì¸}0òÛ›Yñˆ õh¸–á`¥©¶Wù›Ôê»—'FT)qc8˜™Ü :89¼×„Nœo»õ$w²T }Ñ|·F5,þpnññæüøõí0iò(Üðç®-%•x¨ÍAlôÃ|žWÁ. áªùýÅSÆŸ)/îóÊ·OŠ¢²Ã•DÅ8Y¿Ý\É1ãg$ã«ñG’º¨_pQXnáH0ïÅžÔ¦FG°èjðŒt-T=[íÑ‹ÉUÍc`“]á<¿áÒØj­H¦·ÉÃ0<35ÿ|€ž³¶0¿ü²nŠˆq‹Ë\çð  oI¢Þ)n±W¢¼1˜ŽÑ)¨÷à-dï:KµKÀQ¦ˆÛã3æÑvtAhîÏ«Ûñ·ÑºÄ¾%‡aåÉ:Ô(R²YÇQ=P¶>¤Jê$¡a8”<ó3¤ ÁÄñ²uOñJˆÆ,zn˪‹%Ai¶%q÷ɳ(ƒ2d3š,t™l&Þ DŽW›íÅ(u&?$¡po Ld“ºÒ°ÿèÍÖÕ--t…»ú›BÕÀu^¤]©+ó9OÕÌãÈ™|–ùÒyNàÅ‹çë‹Ñ ß?_ñJ©&^ß“Èo/fì®Û;˜çmž‘øeþÓ#ú £¶Áçݳ‡.Øë‹ÅlßoÄÏF¹V3äÂ9xOÜ£Ciç`aÈ_5ø/)„$,©0¾É'|£¬¼H’ØÍZ³n]ó¨œÕ9¡jï Z¨õ׃V”“¤ƒ[Ç©èsB-¯ù‚ð))“°D´4@0íç-;û[¶]Ô }š´¬*jxÛc°Ñ…¹6¼ðQ™uŒ‚XGg%WòW Ò+4_fõþ <ˆ S#)OQ8ìmÜIJÁP³£…AýÒQ½w—"åìi#p]ì5]Íaà¸%’·‘cß àˆòÞ@£kv=õC#ä¡l¦GzĘm“I˜tÙGn}RÐã«æ‚ÈHCÓ2µ<™­áíTnME%–”V0|ÌæØ•¡j§ð&0t£E¥ÜI²»W1X€v£Óùt+4.j>»¯©Ÿ£`á&ù{•> ·ï¾O'ÿIS.bðý|ivH‹ñ( Ì–ËH›!¯ ÎБÑàG‹CÈŽ™Ø=.¡žªÁ3L]|&Ýú‰4 Ôª®›ŒÖ'ÒgV;O|q^´—Lå±ÐIŒ°n#±Ð3'—®€XDª0ô™éâNåÄãÛvI_{`oâÖÌ &ד²BÕA.Ù‹¢Ÿ_uêWÆÒuñ¸w–,º­•Їó´-„í4äoxhªZ‡úìø©<­øê¸…Ëðˆi’ÇÅK’þXúuðQlÀÖÙæâÌ^ZÍŽ °ßÐ /ÝŽS gúõøŸ.ÀWÞ&õ<7Ôý“Æ ðä#ˆ£–LVÝŽ÷¡Ž,(œ£¥³F.d©LáNsD²n‹¤Må½j€®f™ð+º[Ž’ídŠ«'—n,A¼s(À} Ž 0 dƒHOnjg¿üÉÆ³ŠÊVçI¹ÂÇÓ¸ô4kJn·©žewm#ˆt ¿’¯SŒ^í>ÎI&åéº-ž7þ"…€ŒL`eC¬®¸€¾ýàd™·U?@?`—’‡ÿ ¤RÏõ’®ì9-eæ…|,u·Ž¦È³hó.]ÂsAN±qàN³ËÄ€½3ýFµðöÆD|›¿x¬i;vTùvz¾ØV¬íú®›5ã¡ðŒŸ5“Ù ™búÔ Í {JÛ‡£BØÙ­cµTJ`„ßRÐ<¿V²Õ,K2v³Î(Ÿã¿íF¯u:¸+:&„DšWÖ‚%G2ùðè„âÕ_CÁ ô+ϼ¨C TÊ~!8ë;^?¨Þ¡çY”;[¼4‰NIůFLóP~ÿêÛ&×ÜÙ Šžózõ¡"~ h3Ol;Á§×˜®×ü&,‹ÁÚÍt×í!=`!¸Ÿ>8–…¶®¦§È/|Éb9„+ܘ÷ÉŒÖ]{¤Tr‰¼06DÖ×¾èñî ›qB ê]ÿJ¹ý¾ãlô6Xcr ÑÜÁ¡ÄɚǨ7gcTY>ÜYB‹ÂéXÕNŽe}Ûc”eÞè‚hl.ÐÝŸî*# ]›ÐþÐåg¢©‡ øÂ™ß–¦'»¶äÂýžè^§Œ„ñºC‚áì<4{Ëyöc,sÑ_Ë)ê'†¢5Y€æOé‹qëÐ/°ÛtÑ‚³øzήC˜È\Êsú(Ôý¶—>„0¹x”à»×3¹Î„6L¹bI÷ïâ.çõ\cá!}´6‚0)á†ßP‡#ŽÊ=Ö|&ÀW'Ûl¯ö×´^2Aá¨"œ–dTÚ¡¥u|3M¼Õë… c…â¹r"Wþ‰ú@÷ê„ä¤ žžq/ƒOÚXé Û5Š‘^@éb­²kH»Lظ=d GÛˆä„51KìgCÔæwüƒ*ÉÅwï™Ë©Õ«ŠU" ”ÙÆßì Ë׸7@+¹ëšûðqŸ3âlÆÂoÇa„;Žê8[ŽôøVdzƒ[J¿›%ÉfÒ1cê.!ä‹ ‹rL×Á÷bЩ¸§éG# aCÆÃc¯ ¢ ¸iÎr®ÎuÔЧÚ.4 ëz¸«C®ŸadÛXžˆáË =ƒ‹Û¯JSÇxq+ºF;o­(ß †ç…Æ‚r´ 1d’æôzaª†¿­g 醦óŠB|ã9¶ÍêEV[í¢‘WO?Ѻ?h+X¾wˆo¸|˜ /P¦—Ð æVÎ_ì·k^¿·¹¦}‡ò°»“g'¹«Ðt]\_0K‰˜EPƒó‚õ€_•0öQG •3úG›8G>|¿nœeÖ]úÙP‰xê}¿ä-‹$½ÞˆÍ,¹ßrH7 •;fÄ0*òI\fw¬‹rPÏtwœMâö‡­à7PWî£ R#—³n¹³Êáä²(Î$^xLY0"pÈPÉëõ@!Ço¦î浊°¡ÕUó&Ymºst}›ø É´Ëóá3* ÎëñéAkbþk×Ë:W( TÑnEAqâ¥NuéW‚ùyåïí¥¨•çA•z‰öÀzQÈ£ ±®nôøšpcÊŽø]S·èu2d9ÎEC7Øp<ÿœýG7‘fbpN¯!$‚ä«õK‘w0#‰XøzÄ;¯_ÊŒ'Ü>Þ‚;öÊ­ <À¤14Rh ›¡â=嘭H&F¶'½Ù’ì¯=COHœºóÓ‚mÈRVXôúÎÈ;¤zu9ƒÍ^ÖUîꊄ{݉"ìàdH¼ékZ¾fßbþ9‘å(ýbã•1|uÝSЈF›©-3.RO}•žíÅçÔS–%02¹­r #Á¢wóþ£Cm‹…X¢ÛQim™ç»Œ‚¯Ž–ˆ21¢f\t»{àCÇFÿZkÖO9 9ZP:}wµËJ¥ Èž0Cùk†÷÷¸.ãÒ ")  „ÛÈ|R‹±¦{E¾x׊\Ïɸ¤Ê3Wße½· d}kò˜ÉWrçmjœ}€ôc³ÆêìDjìZvÓ©xæèØ…+:e‹yÞW Sä 5cã6f#¿jNNù¢Ë,5fÛàç×ÂÂÁ§¶®ò»ùÂùƒ{™ý¨¼î+ŒŸ"8ÊWchéq{l2cµøl˜µSøšœê˜£OŠÅ>’ gWíÒœlž~õ\Õ\GŒiŠA.|üËJƆŠ,¨Zmr«4Uêx¸§˜ò»g~ÒO’ôõ^ozâô.ñÌùõff–^;þ§klév^©^2Žù×årüo ô^·7~õÊ(åÏ–²ïu:ï‹Î½Svˇ^×´EæY†{ùÇQK`…"sºJ'‘YmÏ2:=`a€­b‘X§É“×6¾©pi¥HìUŠOЮò;ðÎ9+ŒvNã‚ùdý—Ÿ¤ºÅóü/ʇŸÎó)-veÙl/`Kòì#Ó[¤.uü¸ ¥vckoÙ» yÙ’O–-×ð^ÀýÍ`Û~þ$”m?©ÛTæÊAPAA•–nIƒêc>+Õ3üóu…[Ü?•­FÄ2õéwÆŒþ¼ãžhYv—16<ñ:“†9&<ÇÌ$œd²P—Œ 5ê|›~$äHÙo8²ç‡ìA=LÙéõÉyyÂÝV¢Û{«:v]†g¾nуÛ4RuáÙŽ‡ÃÔ±yP-¸Ä–Ë6y•‰T… ¸®rù¯%  ´×£Iѯèwj´| ìi\Ó?ø?+R)ñ*²ôÃy "ê(g~¥kAU@Чw™}ê# Œ%HÌ›¤Ú™x2á@—žÃv6âh”*43fªQ­Z0om*åÌ—Gç­F³Yý>RG{]o®4I{½a ÿÍÿ Æ…vÕï¼#Äý'áWJO•B1 ¬&ý¥wªßÇqûHzŽóæ­"?ûpÜJû- ÇËXG"û¥ø7ˆ\~‚ƒ›UWÛ ¢BÙ¯ºÍ$¯’xRLO‰ó^Œ Œ¸ïæïüUƒ¯ús™Ñtêá­]Õ>ƒøÆÖ™•4ß+k2±­Ò]AY”*p_›2/Õ/ðTk…X儦 ÌxìùňÔâ/­ÿÌü$ôÎY£Inöõ¹;ÿÁf%%f qZµQëJ[$³—…É\(§E# „Š|1üÑ ú#‰j—öŽÝg[:Án,F«{·/vâYÜcÒû]§7WÚ†ðÝ ~»zÓ,õǯ–1O=7ÔnûÍ«mø™Ì÷,·?B #Ñ:ã^òÎANâòÇa^ùŽ„êS£¾B‰À® 'Òdý¶!Ò (Q÷es^í_ù„¨{{)¦¼Š6PO Üm­·í;ù)ðÞÍiJµ9 9A+¬)H"!~ãf¾’½ƒ‹+šéçç#ÆŒõ׿uÿ(ªR @b7D·’°SûØÏdìŒÕb}M0Ô5²ÎÄÊ ˆ ˜‹¿ ¦ ä¸9°ü :¼ßu/Ü¡hÿ¤.ö9A݆† üi?u½vÀ¥õ4Î?s2¡îNº4|ó…òj.ð¤/QSáë¯\½+@ÖË&{”­1™ß;ÌmÊÖã{ŠF÷S¬vè4S€okë•©] ]w%“©ëfLqçÄYƒ!R> ³ŒŠbH7ÚûÃì¯Ë6þß­3Ó¯pòÊ–²bŒpý—ò%¿,U‚[&~ζø#þ0†å¦ ÄîM0y”ÐÞ‹î?³ÿÞ»Û5ø¾ØWD9}ó5meíÅ¥z?|ªÍ"Òà‰¨`@Û¬HþcqC~:ò5¨§›^›z†xF)WëÓp­½0¿4{Y7*lqœµ=ŠëℌHž\†ò§æ\ÜD&ǤõmJ”䘤Ëi/ ã¤#ÿ‹üqY³¯KIƒ¹õõ°ëf«.B<…¼oä*(Û+̵dí§ƒ f®•£ ë?Ðò<}±Ò 90][þÙ±N ï¨Â«.AÄ!3û}k“Cß Al‹ ËjX™°óDÕU€ õî˜mQ÷UÞ£Åêí-)l&IÖã@•Ë¥z®]Ýý»"›;á’(½Á Ùç|g«=ëÛoL ³ó0M´B%&ûyLíï Ö7 djC›$²À‚%Ãf.nUáWÐwXšf}ÄhlX_["û±9KÑ&bà%Æc»gþ(ºýºùH/ZËš(M0;ˆXçª;Àÿ@£mMŸzù9[°¿à9( fdzœ”v4ê9o.Ä€´ûMû¹ñ |ίès<Š=ñ’—Z6¼o¯¼lˆÓ ôh—³Ñæ‰Íe Â"T¨š?)C19j[ÙA¹|$hùú¶ã ]ë™[iõ©:¢k»Éå/ã:xé1dЭè+u¡S,¹gvŠô’¾)/9Ïùm@}gê*†•‹¤$ÜùH‡(“B3OæŒ r²ü¹ä-aoM®¶=¯Î|ðeÅ*OàŒl(ª°)ß›ôÒœv®örÍôTÕ2²é+Á™­ lì¸!ûöÇ•Šó\.”l3Çwo1Y^£[–"#²Ë—¹UÏ®ú\òëÛYBæÕVš¶”ÍÖë…i†\“mÝt¤è:]Db~Œè;Klƹûô0‚î]©Š±Z_z¯BáN üV‰—R׃Ï*5ïŽ0¤ZÆ‚œBã$®ÔÏÍ<ºÔ0âÙ q \ÍYÉ?7¦©Ce1ñOf “qƒ À#‚}t=òq6`ˆQÈ/I°¼²É9¨¦í™ál quk&œ”ù˜CàV…„Öâî0»ïqJB¹¥µY»)£4-ÍtðVH$Ì"gŒTWº­Rì¬*ÄËŠçm’Aø7Åœ"Fh¸Nó¤e¤zXÀ/§¬"hç,>‚Ëw®dPÚ /Á¨ZPœ¤’Y7b’°µ 1wäÞS @ív“?ú @B3c¨1p…îšž.w˜G¬úLôOI€!n¼m‚^ä´ö˜òÕƒó·<…µ— ÿÆ2¼ ´ Ã_SŠ0×™&ÓÜFÏ+¿Ð:>‘)ëÙÞ¬¥Y—,DøÂzo÷9±zü» –hÓq6cìS‰Ýw%ö&v²Ê­sUؘø-©ÈëXÏyoôÜ$PFhGÎÅïU"þÄ¢k©Y»›Ïº‚”Bç‘l%ûýÆ0ØÜ¤­ö³œ£ð9Ú¹@ééÖGø‹ ”É ëÌÄ|‰ÀUä®Qo?Çm¨¶Ö¹ªöÒ¼•6ýÃ%Ù·Qä/†;É7] ËÝö§¨Nô€xónÛó˜Û!ÄL4ùv\HùðL#Aç4 õ+R3œ¡”W-xïcUQ¾* ë_‡Þ+OÊ1nG9)µMº£­d_ 3ß#õ@µåðb“8" Ýîç¶ðrEtñô,ä*†(˜Ò²pЪñ†z˜î;j$æ/9Š;_EçÚð¼Oω ê'BcH>í̵òÕvmfq9éTgŸ®ä°®Nÿ Îõvä=‡òUãtFÂKçæÝ´;2: ÑrÅœî2»‚ŒvÓ%!·g¹Çõ¸¹ÚîX·‹™ç>__<Áƒ¶¸ÇDK@­>‡'ò»²yÝz©¨ A`iÇeª¹d°oëåš«àDÛþ´U¥6!ì“iwvo5ìMׂ·?ºéšÏÈÉ$¨ó‰Î½}-´š©{Ñ.‰Á»ç”]eø|J ˜ãÝDË´Ž·ü‹ý£Ž¹ì¸B˜á>ížÛ‘+ÚÞg ǯný¹÷šßu3âä‚»3)xa¼LûÖœþÞú`ZQ3ªuÏ0¸RAÒ+‘óßY!5É·„O1XáÍç.¢nî*¯¶ãúÁ¤¢±Ü>RIH]èî™õò¹Å¡IÚ†¦?'±²*CrÊ4­e&¯{s‹µlîÅH÷DAª^Û“ëT ›íf.ÊÓìI çŸkÜXçoý,ëš¶Ù네6VJôÆ»Ü^jŒ'ãX£KãÕ \Z»ø¾†·©ÚI̹aYÓ ³‚ÛòÜ™¢¤Ð„‹žî•7ÃíyC-»Ð>¦zÚ¸¼õnõ Ew¼ð‚Øæ ­áâÍÔê…Â;¾¾Øæ)¾ž$ ÓÛ~Z†m¬Á2F€˜ùäñ“=Ž(¿vçxÖkÍ&jnƒò(v‰4D+Y‘Ó¼'¡I´êÓ.svaï¸W)Àvã:¬:} ]=G|Þ¹Âñƒ–å>K¦æóí;Þ…—øŸÜòJžz…EFÁz‘Q vúœ×å9·nsdˆs©‚IÂ¥‚ÿù*b endstream endobj 978 0 obj << /Length1 1630 /Length2 18668 /Length3 0 /Length 19519 /Filter /FlateDecode >> stream xÚ¬·ctf]·&Ûª8wlÛ¶]±­;¶m«b«bÛ¶SQÅFÅN¾zÞ·OŸçëþÓ}~ì1öš¸&®¹æØ›œXI•^ØÔÁØLÂÁÞ…ž™‰ `egìê¬â`§àÀ-G¯bfá ø+g‡#'u23r±r°3r1ãhš™ÄÌL,,fnnn8r€¨ÐÓÉÊÂÒ@¥®¢IMKK÷Ÿ’LÆžÿ¡ùëélea øûâffë´3³wù ñí¨jfp±4˜[ÙšD•´¤$T’ êI3{3'#[€’«±­• @ÎÊÄÌÞÙŒ`îà°ý÷`â`ojõOiÎ ±„Fg ™‰Õ_733à?*:ÐÌÉÎÊÙùï;ÀÊ`áddïò·.+{[WÓø+7wøWB@'‡¿vuÁ”œ]œMœ¬€.€¿Q•Ä$þ§‹¥‘Ë?±­þªæ-ML\ÿ)é_º¿0µ.FVöÎ3—b›L­œ¶Fžcÿ:Yý+ Wg+{‹ÿÌ€àdfaädjkæìüæ/ö?ÝùÏ:ÿKõF@ ­ç¿¼þeõ?s°rq6³5g€cfùÓÄåol +{8ÆfEÚÞÜÀÌôo¹©+ð?tnfNÿjÕ?3Cý7 #S{[O€©™9£‚ƒËߪÿ;–þûHþo ø¿…àÿzÿßÈý¯ý/—øÿõ>ÿWh W[[#»¿ðïø»dŒì÷ @ðÏ¢±5rúÿùÙYÙzþŸ¼þ«µ¦Ù¿Óý?€I»ým‹°½Å_j˜˜þ-´r–°ò03U²r1±˜ÙþíÙ¿äêö¦fN¶Vöf¹ýW[ôÌLLÿE§fiebcÿ ìÿV™Ù›þ× þÒõ¯üÔ$´TUiÿ7 ö_†JÁEÍø7·ÿQ¼ƒéÿ<ü#"âàð¦gæàгp1ÿ½âfaóýß„üóžå\œ¬<:ëfbþWõÿãùϓ޷7q0ýgtT]ŒìMÿNÛÿü£6qurúKò¿Àߪÿãü¯¹73ó03ûµâ`Âb‘•éR÷-odJLg |$XÖ¨V\PãÐ럱Ã]eø^ÊÐ4ÃóÙî¹|ü8¡9ëò¥ìM3»*À÷%¥î/DÝ¢èä¤= bÔ/CÌ<׌ñ¾^’û ¡ÍÁ¤q¸;¥¬¢_úE0ÓÉêsýD@êV€AöDò3IoˆÇìBiA«+:;§H>yz¤î½ì?À£Í‡%ç5úæ—zFœââiètßhò ùêÆéüs9»U³5YÝÝ ïmÅ•ˆì!n9ó’•ÐâKtŸIhÅ8^Öý*< >Ž¥8I€ŽhBtVMF¿¾kEú|cý¢A€'Ã&k;Î þ¨)zE2ƒ´˜}ûUƒJHjh)K;,ÑTJƒ‰ %SYK#š–“­W\\)Z¨.`¼2eW¨$V¿ÓÅ—†¿¤Z-c°>ç\‰~„ß œ>–ùÈ=êÞ‘IHHË:Œæ<æúU¥‚-Np,m« K¤rÚúçÂÈ/HhÁŒæ¸nÔZwÙ«}rÖWœpT©-»&"žé<ò;Ÿ»TýÖ^îž qö ÄEAÃÙã&ÙÒ]ÏÆ-©žKrYX8…|?¶Tíó¤%ãÚá¦&:èÝ*¼ì‘´¬Þ(޽^‚,Àã5Ö…› zAÚb˜G” ÒbÜpšÌ8胣“í©LÍwØo§v4¶ŽyÃsA”¸X¼ñÚ®¿Üûô&´è˜†?XJ•ûf~;0š‚¸ëãæ–µœŸWIºßM¸üâÚ×ì úMk¾Dؘ ÜœuƒÊÞHK°,6¶3©!ÐLƒEW›èVn–Á«ðÈsóP³Ù~”ËVžt0“#׌á•õ¡í­–4%­ú>ì/ÕP"—#VÍn‡bVnêQï¬òèæ Ä`~(TbQ´pßGC¾¾,Ö|®&A‡Œbµ5UÁ6ÉÝS‚3ÍWX÷ƒh«½|LR¤Ï¯~;¸b³gu6°÷°ÂbÛö¼ß°è·¦…¸P.6BaúÚ]ê/·¨†ÄWÐË=• Õ½Ãk;; ¿Ý«È[ Ó^Rh§EZüÑ—¡/£ËÅ€UIo?ÈËípjÊL¶ùÝvqÍâôz[z xK샵N¶ølú2°ñxñ©/GCÛí'Ó{\`Oq8¶’fØÌ§‘nœ‰Q™ŸóÃ÷,Ñ’í÷2I¤RÚ„ äʇ /'µºDl¯êŸÖ¿‹³}ا«’«YÔ™99x ÿlv|½Æ¿ºKžg5LƒRãõ9³b2olžù6Èý´Æ§›ÃÁ]‹f«c§e·MÎðûeÄ ˜¥Ý¯7).‿ÇÏCaŸÄÁd0Åtò9ÅÈ—bÄŒÂïÛ伤åì­§n!ï9.AœýŸXà·;”7°á@çÍ{–.M ^ÞõXSû2SëëâÅêä}§iÁQây~F L‡<“ƼG ×¾ ê—ò-g0|nÖÀ¯¡â­è#–Ò~Ë+%ËGýƒ!¯”HÀæªþ\+tÝËøåT¨ÚÒä> cÌÀ漋?~BGHÜAò¥ê•ØQ”·$ìHû§Ê’Áóè0#ˆJ©ƒmËf9±q]i<»6yÏÈ *]p’gŽW‡‚¬¯¶ì®Ñ¥s[ɲmÈn—HÒŽÿ0¿»4›Ù l 1¬±ˆ|V_Â:-ùd¼J[H¾ËÐ æ)Ô0M‹šB¡æÈÄÕÙ8Iù¡_[ÐFû“W¦Id¡@Ñ3R÷XÀ¡¥ƒõ:4Rï‘âOˆ; ý9B‘wêÄPN]Õºhè²ëÀGbúRëŽí3Ùç·8c¬å«^–w« É9«w3 ósq<8SrsPU$½¯ïŒ“qNU\¯$>ƶŒ {¥¾úxCšY½Á÷Go>n º¦ËŸþÁë&!ôŒÀ’ž„©™Øëïw" ¢žï¬ú™)V ù° ÑB7µÛ5@?žJIë›%Ó¤ Äq–¤äó¸4ÊDü‚¦ð–ÁÂAã~X#§†+7_p¹cÎVJú£àíéé ™hñÛ;whÛp\±·¥5™ÙÕù¯£º±càÄ=…Ó&ÀSyшè©@8 žKj¦Ðç•${u¬ç¶¶9ü;4Ú.¼þÜÏ ©ÄÑ?Wa˜ÝÝÂçJàõ¸ëŒK ÆUú¦ßO)†&H-Qžä!r¬MÁèxÕø ›ù=ôC×ÜékTEáP54×>zAo²XÒE Qoàº3üÙZ¥x›Ýú <¸ÓB‹®én¿\AvÈKgzkÖåÌ´ÝêßeºP5’j¥·—ÙŽrw\¸è°†ÿ¸B;_ÝUÈY¯ÕdMp[\eéòhùVTD£Ü«&ÿT#ë8FÕŸ‹Z¢ ’ๅž¬9ìe¦X‰á˜4Á§¹rÆ› /鋊 Ûó„Êù.á Õ.™_k²¤pןòk…ƒïÇð"{‘…Kû*ÎPKŽ–çîóJ­”{b,Ÿ$ RiËÁ©Ðú]‘“7|Ÿp­¹‘”™¤™Ò]Æ¥ŠyÑuˆ˜øÒœû;dX‹š÷¢Îýdú>IÕÇ_àc´noÉ‘LæuS~„2åö5Ô÷+U*P‘p ×2Ó`ÊÙ!Ç«Ñ"&Í<¬ÑRhÑ–œ3²aöCŠa·½B¢5öÚ¢yX {šÕ¤†åp(H>z‡$ÄBʣ˓Xclp˜õÄ’“\Ý”¯dµ5ÌP Àÿ­ñ+Ç7Äqß#nævºGÔó!sÁÖe}-…}`B1z¤)kuÕö]Þz,âãs[2¸”»t=ñt1Í­­ç1’1Êa‹/.¸:eŸ2LJTwÖ™'¶zÖãho?¾Œ{F\Q©ÂHí2ÞÙÛ¦¥!¶Ô-Š]a]n<ä´ÆMâÔºqã¸"}o.fê_^•ä÷í}ƒ8)¦&))@¹†îGp?rµÖ‰0?ÿ³¶n‚â3Ïo!*PfúDiRGÙÃç ˜_Àz×’uM â6óÍ1DË >ù•‡Ÿí"ÉV{(äÕw|ÎIJ$YÚíÔàkYzòarH ç-™ÒO¿Jzš•+×û]Mªý"ª0iÒÓBmàý×&´Dë>4ÃÔÈÇkDIçj­…Íä”óœÍJüg²"ÝY¿ñ?_ÀÊ™¢¿ùãO3|âß;3;M#ÿ„€×áóßÊלJéa@±óŸŽ"Üu¬*˜˜ÆÍÝœwIƹÇÉdõÒ,u›öäç;È^Û¦4cYFkü†°ö›im‚Ê‹ÁñI€ R¤îü¶F‚Íù¬cˆø®[ùP¶tv:[$!œ˜Áõ%ìñ&MgŒ¥<„YÌúšM•¯ÐºQY·˜ñÞjgnH/sêCMVƒÒ-UrK\ð$½ÀÂXdùP» 5]ÎX^þ-¶šØFthU0YQÄS-cUwÙlb=‰Øµæ‚Àëmºnø±ö±5z.¼ì7©_rzÁ úB ÿ0¢Ä-Ä Íóû«°;Ï©’jvqî‡Äœá“è”Ö8âu3¥Ì‘l/q’²åàzèÛG=6½¯H˜êç=ªÞ‹x4p¡<÷~·E/ѽyÇçîß9ònœ%dé½ëj@ä=JÒ€ú[køY#7üÕ ÝÎV­(8s[ñ !ÁâDíY„¯ŠâB¡Þ? Óläç—ÇÙðËqî?Þ.ù›Å*Â; ¾mx‰ÌW‚Ô5ïChxðFä9c yü®ã‡F^¢ê`À„€`‘–e,—aC¨½»K]̰Šm©Ãú6®¹¯!…ìýá­·¶.¹Ë²\C}z¿ÃÖóÂŒ”D0Žêýp01ì%–ï2Ö‘Œ¨Øoý1ãÅ‚<4š= ËG$°}ôqP¬pFuJ‡µ@Ð8P…ž•{§&WTb…ð–ÊÚV]ËÏÿ @fH ðq!*5Ç r´d/REj°˱ªo†åë„j²u*À7×࿯ޢŸ Åáf.×f¿$?,4ÍŠÆrîï±/Øäò!ø*ãßoÀ”TŽGýí*ý¤ž7š°¡ Qò#=Ç˱ìh!Üâ\A¼ü±RÐc'£hüZÏv26݇é"¥+æ{&c´*îÝÉÍËJÐKû‰4Zlá9§"­{uù4!ž<Ž€žÝ4K¹ê†‡’é­PÇß«xh/zýê¡)]˜®Ó/]£iÇÖ5.f¥…+À)ýY¾Iâ ÚÄ›h!Ç—»!&½µÌ[:Bv))ŽhM¤W¢oÏS´qNé¸2CRwpN__Ÿ‘µ?ëÉ™8ø3o5¼†Ý׌é±×rz¡ªå©[ìÔÙ²˜é®l\Ÿåµ†Ò÷ aô…ñæsRÅ«ôÀ¦,ÎlÚ¯çåÃa-Ý—/AæíRR_zó3ô@ ŠËÚRItq,Oƒy+2´˜¨Ðˆm”„Ù¨¾»üÛÝtié“€ë‘ äh‹o÷CöwzÍE¸ îp+{Äþ¹„Jö+­Ù`XE2ËÑÉðQ¤¼IÕúÝçÕT«xññò¤Òá1ä®khf–¥p—hnûFÓ—*|œÞû‚C µI.¤ÄŒôµó@ºÄ££ÛêDZŽ­K v“æ*Ê@[¥5—ê$¡&œZOƒ¬0D—â„I=%¾gƒ õæð‚¯½|z-L¦$1³,wÊ\}˜“þÇ©X?ƒ\ÜQM¨%'˜Æ¡‚ Yž /G´ÒÔå[ïÃÆØèii˜Ä& >Ë–À&oE6NÕadï|šbÛW ÔËÞZë A*Œ2l=kúV̰ñ©é?"nøÿ¤,£Je†ïkɼ¡Ó¼èщÿè½ø¦‚`¶½Õ²u‰;¿™G okò«52† mÜШ í#yÖ…è´kÿP"Òý•sìß rÉopü©çµÒäú–žÝ,-7ŸZ°.¾D×.+¢´Íý`Ÿù­%°­ñœr`Mv+wOsÿ í®à«‹8D8;~’~çnÃBÞe9wÜåÌU‹>Oqá*ÌoÓ^»Ïj*$ÆN²ƒ‹+¬nWu*´°Ù­Žü_,?[ÚnòÚm¹Þ”` ±còg“"Sô“œ!KÁ³…Ã}²š ôcÛmCE{/¼–GYëdÁoÜOÞr>Y4æÚU_gO™ Ùr ›§6d¼çŽÈ<ž_ –\ÓpûÌêAî_­.mÊ83³é} ¶÷ô“L8\´¾§°{ǶÍÔpîoÜôuñÍÙ‘Ùþ›ºhL˜v$ìÔŠ½ª¾ùÀuµ—,Í̆Ã3¯ÝLG„>­ï0ÒÜõ‹Ä˜ÁælÀ $&Û×–oÂ$ÕM§´’µÏj7ØøÇ˜i‘ ™I4^è©kˆqÌØNr(ö~s»%ªùZÅŽFU‡QL\s‘±Bó¬t}Å}1¹™ÖŠN-_#”Ú_ð÷±Ž#›œ‡ÒÜ#!j¨ä]r½©dÝDä®ÅÜåÈ©-ä×S[™"ȇ*nþþóì é˜Kýôb±ÄÕ;yüƒé_8íÍ ³c„b]Çtù[Ërܘéh$;„~šºš;¼ê1ÁªÛ1ý/ÚÉAgÒJ8VTöèq>Εª]`‰a ›24íÛixEAU½Ú݆¸‹Hn‚]½ýðýê¬u;ž¡1š”¤!X®ATá½B”R©b›Ð’µÚxó«âͪûœƒËu® 8W²ÇGñµòçî˜H°còkCk'ÍýVÓÊWº²Oãi…Qýql‚›«²`¼Ê)Ò^oRèì›Bnq¹ª—¡´bGU$(TÚIÔMFÊøÍ¦‹!Ðv[yä#3ç_çÊ©óÿ´#QÒíßn‹)éAVu.wæ•Óóšº-{ÉÕŠ˜†èÿº©›TeýeÄåÀÄÇ*J–#c©dÃÀ)|ŒBt¨¥{t©¦{ähÀ "Éù•”—Cí^Òsé©/`>’Gž<‰š ìYÜÝ×ä›n²&‘Œ¨Ã_"öØ% ¢ßoßÙ«õ9Ž öÈÕjYì6äÅà áÒÀ˜`ÕU=È‹1ÔÕÖðÜ”ÛQÛ%Õj¸©3xK­Cùé¿yP+G×Ä©Æf%R1"[$÷Ç®„‡i]ïê6 QQ SKKü”üÆX£l#'%Bñ^ÑÚ7D&"_¦kczk£´HBÚeÚ,¿gÕïZ„< •·U¢ýf ¯³xþMöÓ=öCZ`ëî2”¢wz€ ÈuÀD¡ø¢ÐeÚ~rõ}mÂø»âSV¬ gvý‰ŸR ÉNöÅ‚³Ï —y=C0Lß…èfRcÖPÃL{¿òND—óVðµ—C .¬«` ®Žèf† ñ| ëü<»ÉH/Ö^öCBOßvÒ»_Á½NÈg¨O¤ý°^Æ ›$%ôµ[kK5Ÿi~B%Ò[[4K„ti_GǤπm’ÄTk‰6-_êÁïY4îêÏöSÀO’°?yA •„Õîá _ðT™ª¦ó©x"'¾OžÏÑ#“µEL‡EmïzÝÌ⣺ÁžØ\qo°\Œ«éÔ"6 –hÄ6Ë*‹ ‘¦P8<¾ñè§^1Åjb41AŸ7#²îcã\¯‰Pji‚%Yáb[Ôÿ¤fäªbx"%‹Zk\SÌx½×Âõ•$A$òëh‚Ç„~»LýüD"(8 ã;;”G%úˆª÷yåiàüÇL.ãtÍ“8…`þ¦òšá7¶)S¡Ãó÷‚D<ï/Ò±ËrWØhó”êA…®©ýD©úÁøîŽ>/t8j}‘0CÿÛôn‘¡+ç¶ë§³O å$yñMOñBV#‰¬óZ¹Ã6!5*Ä™j*³l­°ìÆ=ñd4í VtÄ 5cA«„j–ÙÂFïçN ’·]äh:Ëï8oÖíb¢À€op 2ÅŠŽŠ“†üšúÜÅnKq9í«=„à͹92FЙ …xç:*Qƒ±’Õ¡#µV÷Ù>ý’UÐ='¥­eù®íòei^üWVÜx¶õ3‚wæ"WÌ¡šh>©ÛÖeŒlS ÇEô@M“ÇbÃÇv©¯Oª:c©ðÂBrIP½ØTÔÓäÈžÜCçöÍâ}ËÆ™ß'(OZp‡ÕIòGS—xR5ð«ñÈ…vHÖÒ-ˆ™(Ba.¢Äo·È‘ô©³ Jofq…‘ü$„zT68¿ šž[ÅùW¬È8ÅäWŠ¥ÊIx«±ª]Öæ¢vCÌýEÞýHAÓ&²x¸Qq½0zöÁY¦ß|êD°ÁBÁƒj`¡'uîþ÷´ì¿s¸õ¹ÆœY›­›ß­Þ®ÛãRá]fL—Vzõ¥¡Y[®4L¨ž‘=µ:ü÷ K²n ¯µùwÅ–d[ ¡ÇY6bR"»~¾ˆD¹t¹±ÒSöÀ5Ÿµˆøu?[M›_Ï V­~¹÷^QžE OîÀ¦ãÇ#ò):Ld”)͹Þ,¤³_wÏ(å”þŽþ2ˆæHÀódHo‰Ttf{kH ¸óØïeÐÊVå‘ÅØXqʬÑŠ÷a.á:0¨žqÑ^vƒ qÜ >j’"{ÃU Uû.ñæÈû} m4ÑÇñ46Ë#Î;€?bþI7ðH¿†ÐÒù5T§^Ú¢O ìØº$££ˆ6Fƒ|hi§óÌ)Ê>Užç0‰¶–»%Û;-q1^ppˆÜãc:)[äq7£‰Ÿ¤¤ {Ÿ€;b~J¯µ^CÉÂÞþ5Xœ5‘7p0<³)N¦¡à½ýýäÒ(ülþæ ¬’ŠœÛ»’Úܪþ§C×ÊÜÑÑå{Dá!Æ´€è{Ø~PPLf= ø.wKØ3â뇀øÃvÒ[ö÷“ ¾bdÒàRHzñlõï& B»ÇFrÛå9¡úúÃ"ùxr¯3ݱM³Ðø¯Pc‘r^¸fòFL¨È».— Be\"ß¡.ãOη¤H•„¥›d—+­õeêªyPXTT8:‹H Òû¡Íf:è =}“bk#©ÆÚ¦ë6Q]½v- `W¨I¢2&‡¡ªÏrb•ëƒwŽô ‘¦M‚ßvKÞJ‰êzm÷={ñº¹'Å~mè ØÊ`¹hÍ™—ãîu÷P] Ñ%µfEÁ:=bÉÿxÎéÜoJÃ& 2ãÌ]Ûþ¡ýÛˆ³•w^È¥*6på9q³ÞYhã*Y½ê;É%‡£š5XWGý¹€Íó-wàO®1ASMGbD|·$[õœþ"WÈ"tùœÚW^Û…,ß[ß[îYÿï㪕%AÜóÂníƒ(«®bÁÓw d|6¥d襋4ûiGã¸ÍÜ }W9?¿B=—1¨ÅVƒZñpº.\  ¥ÂC½ú¡øVÝŽIÜ„:ÔÕæz°ýf¥}7ÃH+Š›QK™N0¢”e®öŒvÍ#H-)ÇP¶þ{xì ¨bTïUâü¼þ›÷åé‘=%A ‹ uR,íÍg(ö›üЬ:D‘.`2•Ò«/þMßêð_š”û3F#‹èfõ­~P–ÔÍ[ g}vŒP?ï»RvÁÐï÷h ÕÍz‹bŠÌÍõ7#ûgƒœ·xjÙ_L.ñ ý%:‘ÊL¬üXþ«ßqÙotIýQ]ÏçÆkÔôÊ~Zް›OuI/g«êsiÊ N³ÕÊüzmLϱ%âä5¡%(}_c<êSú”ÿ&'áLúC–ÿ^ãâ›H˫͗G·,?í ÍŽ}æçñÕ¯EÀ5˜B+ßRe Ý]ylæÝË45‡rõ`i¿ÜƒÁ±‚iJ¿ ºoW)–ËÕL±]NÄŸ«¡6/]J×~ÞÜZ}{zã£TAÍ’ñ6JÖc¸•C*cç– i™1‡0Š{£ùNhÞe— £áÍï‹Áç5)«HuO"y¬xhûýaƃýœìösdÂ98/ÜcÃéƒ(–$¸:-žÖ5OžÚ¼S‰Ñ24šÇhn#HU~µýyµ=Ó±‚›ð.j‡”æU@½}zRªˆbp|å\Lí,×]¼uÄ‘™Å‡,¦ÑF5uÖð nìþj½>gÑÀ›€úswûoEö{ó-Ò°(VbU0z6¼U +; [Í.)ºê i= ÝFV·wˆÚ¨åíÛN|gEQ´º.ì“`Ûá“ÂÖ#›*ܨ‘7X±×L®…·Ý²·¹i4¾Ìpž4==‘¢Þ@‘ K¾ÂUHh1st·ü|_Õ•¡fD”ÙêN¶†*ÀtFô^2q—‚ãBŒïË æìD2“0Þéÿ(³-qG–è¯ßɾ߀žñ?â#õÙ’"àg¦Ë]ðPžv¶¢ócT'MËòé¥áðÙ129˜m)úRäb?ĽduOº$9ë™T8þ$[ŠPÏzÂ9ËIhüzØ÷í´#ü²å“!1e„^ë §™›pë 7Ø‹àE%¶µ± IK7™ N ýþ'T¸Ž‰¹¸´™Þ[`I?_Š‚·Ñr7£žÜº¤Â“¨e[ðSÞxx³‰|Pÿòž©°ll=—u>žÑ¼™7Ãjàaƒh$šTÞŽ¼j‡'IÁ‰ýw[oí¦oű™œ7õÏmÒñ£Ë¾¬…o?¸Ú°GïUâ•%³ÁÏV%ŸÈDrX¸M'„nfúw•TbßÏvŒB5qÖSs!¶|†ŠŠ`c˜†zp ŸÐÓåïSN HkÑ%lf[R‚UÖX™ÊåKúælÐî¶PSt†cñƒU/¯Î®J+õ£g¢Š5Ü\Zñ}g<5àEÉís1©è¤Á£ÏhjÓ‡B 6öYUø‡îWép´ú ¤“PjªÝ…‚ål•zhœÕžAÖrÃ~ÒðxEúß8 ™á#¥âSH¢A)]]ÀNXy—Ý‘Þø¿ÉçSTÇ~¥Ù+œÒªž ˆò/4‚>ø¥ÃVƒXÏô – XrG (ËîÍ$ØË5E’úT*‘¤OVàu~îÈ :øÞÃ}¥*ãžs­}»ª9TÌ…ÓRaâõ27F §ÓM¾š³¦ì¨‰`èÀåÐ¥ulVÿ#«ʘ "‚ó~غ!w„a›’†­¥´»¯ž¿äÚDÙiXTKÆ„ðç¥Æ¯ò½£9Ðr€1]œßŒº-v6L1‘w¨~³Ä†<> 2‘Æú»ûS©^Ir“W-7»’ *_ÓópzIÃÕz¶øÇß ½U1Ï–…x¸­¸·¸Ç {â«×”êÅxÓ÷Ïx¬ãfA ´ÝŸ[ ‹8ü7g‘ ™bëÔÙÖËÝNö9ûã…ˆŸ>¤Ð`3+ÍÖÍœ˜1x­‡a sxØxà$»äFõ®êEb)®ªå­oáòØöT:N©sy ô'{Ó‚Ý|A ŽòƒRÙƒa-Ëú]Žã7ªÎÏ\óV&¯„ö5I¢¶0 å, à Äű_ú?8³ù\ƒá=ÜV’o'V´î§¥7N‹kSqIm ¨‚ØÝWë}ªÝaÁ-ªÓ Ãeƒ9ÇïÚ‘oa±œ É£Vò`{œZ÷cÎ3ô\ !×¶|$ ²Ã¥ÇF”¥¬óÓ&WR{({Fýö7ù¤Fqê§3*ïݦ4¯ÊÖ™P+eI’ì–”Ý`H·qIë[§e›ŒB_©=ø5'^²þR2ê_%mL*?IïMEXÉÍD Ômd³FÛ`Þ}+Œ`¤˜ó:³1Èï•fHómÞ–1íжõAu~ÏHŸ 3ÿò´Ó·Æš)g È$’Ióó«ªpVˆP/@«’Ö~šsë'ñ0¸׳¡?Žâ†Øþœ¢ë7ùé &™ Q†ž‚K¶š«ò‚C…?Ñ/ïAmú’àjÍÅ­9œÈU²à­¸=Ê$ô³×VõõæUrÔùªÕXÏ/§w¤¤û¾ÈPqßùï·ScrÉŸOM]0üD‡7nKø¼sQécfñ^òÉG¤`¬ªÙ…¤ÖF‘7&¯/5Y/Š„`ÇúÂE*l Þts”zJ¦¥k;¡â—»HzoýŽeTŸPZ<§ØWhBàšð|N¤-ò.ðÞª0†Vp[«¥¿SH?žƒc1ÈÔä–qšj¶íèx6*¿©º»iBãªõH ZÚ>1d„ÚÇ*(Ò rÑñ#Tú×}g²ú!¸ÉÊKÈN‹^hÿ6Ü5fzU09-³ú÷Ym4¦»ƒ~¬ÄºFN±ÛÊ¥¥¿ÀŸmïbBJIBø¤Þ˜Öÿf+²O¾ýe¼t.§'_ncú'k¢Ö`³jÆG+š\lÀOÊ”,nñh泋;Ö+ý:_—(®ÅÜÄ D{x•˜~â™ùÉÙ…ØSe8‡ÖøêãçôßS-5Þh¶âmoa°ä=z(ñ÷¦¾2WC¸ÒÛ}/DŠO«à ›õÓˆ É ÀÌ ^¨În›âgæÓ\f·É »Óì †®±€ºÓ0ú‰È=íÛ¢2‘ÌvýiœÏ"…VCé°¾7…ÿþUŒÃÑl<gÝ’Áý€ÔA%ô¸‹¹˜ÓJcO@b±…ŠæOCÇ‘fä@yÉg%<(tG¥ˆž£Ü21ÊïjÌøIݽ̪’‰îP“TQ?Ô¡ÜȬ|•pmvcXå/å5¡¨Ü™­g˹‹nÿ¬§üþЛSd¥ð'ýPépJBïR.ÃâL:Ý% h¯æµ0pO0¦ r{áîæ ž~Á*ú¬ñ»~åyóB ¶kôI?B9PŒÿ¥ßLÞim¹ÊÉqEår¾D±ïM ×F¤~$ü˜¦¼ °=ðy?`¼OÛkc2Ï czSæ„ä1ʵ(µïyR¨MƾËíJ“TVì‹[¯ UJJ¾WÂÒíÓ¢Ðîp¦@¯Ï½¹ƒm|4 è×÷Pˆ¤cǶj؈×MšÖµÃ<¯$¦"ŒBÛ^jg•ùˆJîëë÷31s¦êŒ#íåœs÷ô¯½ÅŠQ?,8³!‰‚GÆlç4 Syš®dàÒ+ÆÊ+þúúÂ=ÏÆí 쀃x•§@¼K´f­YOë[a^fÚ;¬þ%ÔBlþæS'm½s™ºša§¼Ùÿte[±q\|kOÖ`e/vÇÀÑ–ðÆ|ð{\ô©höÊF<¢W¥ÛÑÐ~M‰ÜZu<·6“@¡YV ,ÿÉì9omÛJ.à¸6QRD÷›ÜEhV;; óÁŸÿ½ Ò=é½ë®þ'Ç_t!a? ¢•dL‡y+» +1÷”‚‹?çʼCL“mæä žF;±˜ß/?|\^êèw1î(+Ü‘Z(B­ñ'ö¤WÙ:<ý;5×(Þõå}OMý[YšüµÑø=rú²ÃêÓ¤ïÐMeT½”.óFù­F ¢ÎeÕÙ‹ãe ™gFRŠ8ìÆ}X ±˜å •Á®N¬Õ½”Çr0c5ƒePdÄ56u©¢'’[qш$:²²¨‡)¿ØZP,µ¶poº+ SZž «×„Ÿ1­|ÞGAÁÍØò¥a™@}âÜ<÷W×çj%"AØ9A#[ w’h naÓ`Hk»Žy힧¹ޱGÛ X]šÛ:®xJ/r2ÀRc£PtÆ5q¡Dx80ö0Š„=‹ÁOÒ£À ÜØ’za¼E:Š•Ìùœ¨ë!Mø^½‚«†”ó¶§xxTòÓä­XÓOžj/ŽÇg§®NÏ‘ 9ã%]S^Fù5c"³áC¬µ\«kqô³˜ôZ+«ÅJñPõ2¼2A»“`¤» ±ÇOþ“Qú…ºiù㥔TÊð¥wØgXd­ß%ÖÉp¿ð)W0W[z‘ÚÚŠÌ¿­Él +In,îVhÍÝöþµN ©DáñÊ:Œ¨¯Zð…“ÑEOV¨-6pÉì·ÔÁ«Õè_ö–¬ "hfÇÊ`Ûßw4MNÑ–á2:C{ÝØ’¡ñdTX*w7»ó ŸNúÖ$´ VfrÝàø¼•<¡Çrì+dØß$Vc[þP$Ü¿ OvÓ8æÙ~¡Jüp:dy)Œ‡#Ÿú ’ùûJ¨“:z|ØC® ÏuVyÃÃ阫AæV£¥‡ÍÏ;¦;6¸¼¥€crPTÑ⯷ëE&R¢Æ§|‚iÒ—˜ƒçëééî@¦´èûñã}U03½ J ܇p¿#¨lÉy6 %…âð «¹Iòæd‡^ñÈð­YšÈžã÷‚ÂI|º$ŽŽÝT%ó‘ï‡AÜ ‹”¾žÙB’³"ë<„ $[»Ò'_52r…íÉ‹á&Œîy4v]:F<øt/= _šë­´—ó#&òs¸Rz«}D^]}qŒG€ÿ»Wƒ»©›SYCò†7n¨”™;ŸHa—ÔøŠ¿z¼iÍJ_qžžv#÷©mîâ’¿§U“J¯—» [#D…*U´Ü5pnŠ-ûý:«[®çýÊØ&QĶvôŸ±N©ù€·Çòà Í »j¢ß÷âmTÔïW“‹B›ƺ~`o³lb2z-󜶰†ìt®(Ú¡˜²Þôä´cà}Ý1ÎØ—X¤·–ÆC¬—0<53Ïqtè´_O& º²ßØ!hä&‡8ÆŽöR+Õ^@œ9§øÛÐ#—4Ý#T~SD«/›!5 ‘ï{Å­ Û¢í+ ’à6lñGŠ]Z¡zQ|ÓnÞ±„žm»>7¥0!É\Ãe{ÍZçðín í© c–Q](}Z‘p )DOLéH ­\®3ò?|‘nÇFŒ‚~ˆ84ì¸Q¹%´›‚Q—[Pi ¥” ¿ºÀìV"ɦ9Uå‡+¶.“Ã÷pòé'5ÿ w/‘ùuäW®æ€tZNê.¿geÛCîꡕ˪Æ\²Y\\¶¯B}°a*P8O[O‘¡¸¾Œe–(΂øj ?ícîšø˜NÑL†þ]r£¥Ñ[ú3/u p÷ ÔgùZ†èŠ`nxŒ÷Ä/hPÝ*:÷ííT)!¬Ì3áuÅhX‚ xtõ9¼¼Jކ®ñ³Þ¬Í‚6³ï$ö¹’zxl·Îû£(vûpðr`fúð­£Ï¼–¬ÄÓùb-@ŒG]EÝdªAâÏ^Õá•f­{Ä„QWþÌh»o8CÀ"º÷§ŸÌ¤:óuÓ¼ÈþaÔ‹­c°ùKs­Ë²®¼”¶üãõ܃§ü6D¡ÌÞý^ª•rσ½4›AÛ¥Û7sÇÑXƒ3«ßÑ$‰œCšûøA“üJòË?¼àqB¨ç¡Qs~¸Æ|çÛ;¾ßiƆÂÁ-ÀÓѺœ$(;OdjzÆ‘PÕ4ç¼ïÑTKNú.Ó¨¡k5{Ò·ûm,è|/™ºîï‡ É¹ÚºÚÎù‘µ¥T³I]ÖÓÐO|Ë O1˜!ÅÖÔ yMvpü牷M¼+2Рšú¸D¼}\:[ÈàÁÚÅí &Ütþ"L‚ÎÅ„7h@ËŽÁ¢Ã$%!.Dpƒð7‰j­N¥óÝ×$ëš.Vm¬Áb#{Zmî¼CÒT½›rÒý—_Zƒ¸{ž‹\I'=ù³7â2bó¸"Q;cq©&ñÎþÒô@ûµömŒ_m?…¶õŒ$.W /i‹Úžî¥`úvp*_&FÀ¼o§ú›x±rà(ΗûP‰ä8Y?‹ zúâ‹(àݶ+’à=9\ûKH‰Ä@·1V# Oœ#“sâC6‹¸Ô8‚ ëÙáœ8/„„Ö²Ò¾„ Çù7°È.c”Ò›Gë£Ò²´›{ã¯Ìº ÚyDx!&ZÍæDí¸½-ÙæBZd\(ýZÁŽÚ ,剩D,n'ð®o˜x~h æ%ý`d—tÑUˆ„öŒ/ù‘'Ù¯F@¹þé„|Ÿ.Ü(¾ƒÃ›t´KˆÇ:ÿ{Ò îôV•—‚ÎA—àë8>¯‰’NR¥âq]R$1é¦4Œu£æ´BŠÐŽZ ž@у#ÍUß[^(cÄéç4¥nÚTc—ûÍ“1+<þ»dõIZOüÀù+{Îñã‹’"&{›.~žÔv0ä™ï`Ç&9©$Ì‚rÝSŠÖ\{‚Û„=Cnå\„²o„\kéï_ƒ°Çtq½dˆçFòbäK‹/¬¿G}#èw¿ö(Ž.¸…œ“2º­EðÄwä–¤ùL¬µü©&1‚[d"IÝ0Ó§{h¥¥ÕÛ µ!· PËoÆD]»lnδ?äIø…ú¹«"™f!ÄPÀÎÅ÷Ž:c‹±"^-UfÒ”!‰cqà¢8“jRtQUÊ~žÏm÷tI*îôŸ—žÜª…‘ˆ>û׈Ÿ®M»Oi'À-*âƒ7ø¢y\p‡‡!ŒM-r΢à?*Œ ð]ë ×±MŠU3mßõÆ©8.áP *"Œ?‘†ðp“b–ÎK4Ѽ a ?±…È€¶Ï¥µÍ>QÓÓº|,y’Pˆ’»AÔH2oû’Æ™¹(ˆ¿‚ÍEÛ[Šß³W®(¶õ)ø6hu|£ mýò*ò1øú)àÃQ84Û\wœE°·UFœ!’rƒAqÓ[ ë#L&f½ûyY 1¾õš¿ À¬ÿIþ5[5qaÅÏï¢ÏMù ‡LáEºFcåÁ2.`ß2j Hž EYð§.ƒ¨ë|–†]ËM¯ª¥Ø+ÆÜ-€ŒïŽ˜Î ëpÒ’#­(T ½dì.gçñ1¼7R£’ñ»Ø€YWZyÖR ÝÎ ¿ Õà> Mú´Ÿ‡\JéwrCfî&ÏuÓ©¼Ä¦­­£>L¡"½Ð§Œ$ò.ÔÓ7â×æÝƒ¹Z¨Úœ"oQ©Vw7gH§‚T× Â9‡Îù }°xXß*%À/­Ñà–ßFPÃtß l”¼zé:¡r߆’ËÀ˧'aÉG»”öÒì}+^Ž–LñåU™@K™ZnÞgˆìˆ× $ã^ 4mµ3 lë5]ëHA–ö꯴$ðA¡¶×®Ü³ŸÁªÐ-FÕMŒ7MUK!@ë6• #5ò$“+JËðqÈØ Âü>bÛ½¶I| JuP®¹Œš]¹â/«—ȼ‡à³Íñw'r`üªÁ˜~s­·:cÉötü£Oùá‚BkñØÉOt‡¶T‚sÔ¸ås5G¤qª°jvZý°õëg¯( Œ?À²õ˜DEN$ÕrGPqLkæ Û‡uìÜ#Nä#ýQ•a®r»Œcü<i‰†\Ûj˜ÃW»¸‚üÌqÇñò³& ¢Kõp—›%2•n'ªFéÊ0¯{òŠ<·{“Á¢5þ¡m«} X™Ü¼)m¢·é^šËàÝ9/΃æ|Æއ.~pƒ(hÒÂu0|èù’r毵r¥T ºßß7\{OvØEuý2þþúâ ¤õlxÁ4µÛq ù¤ÄÍA˜ÑÉ7ÛÒ‚«&q÷´`¸Ò/ùÖKl¬úØ]£s<¥EAé'%§¤í…—ŽØ¸W’LÁ”Ùʦ ˆ Oò~À³„n}$ª)¸¾6鉨nà—¢³=’¶Ûò#¤3-xÂB!7ðês/ˆ^àEnŠ:2?Ñg£±n“ŸÞü®ó†ÑÁ¿ã¡‡€§™.%½uÌ ôæ®™+– Lµ9n‰7H•vB ZÒ³ßm$¶É½÷e‹PÌPmaYmÐóÛ«UJµ5¹Þ#¨y;Ù×`êx@õá _Ðp´ ÚHËóíNûœu2+.¸i>i.9Æ`–‘öµ–­Pœ¸c^bŠešé›v±Ý,^ÂÁ¶¤šŒ”ÃMç±tß´>Ø¢ ˜×€“Á‚­?롉‚úÛ~cPJzU–Qs/u«÷-Dä«“`C/gÑÆ0ÄD«*$fk4\ Â?…€øxÏhì_#qêoÄd`%£=ýø*¾ÁGã›Ùé9—rƒôåéT{Ì›#kâÕæÐ.òÀŸã‰àb–W/´ôÙ‡Z¬]ÂS{Ï0Æ›í Ì^ºW®­œA}Øe6%¤6á=–é2…žÖ©·6Æ 5…òÙ¯øH8;Xºè— ”ÇL†r,áÔ¦›°›Y=2šèáÎY¡µú6X¾hÁWGåè’{ð5„VîˆbKI~Ù,›ëÖ³ÉçÌA[®'ÙO!¤ƒ”jÂÚÆí"±"ÑYØJ6TYy@Q4ÁÁO”ôÆñMœõSú$Qí"¯ƒwøÿ¨h&FÚN X€Ÿˆk<$mÂU­ì¦U2h­]þiÖÇA˜ Æ,MýuÃ.ÁÍŒ°¢ƒ-ÿˆ¶}1dÌTçDBº—¥H»ªÐ1Ä! ’|É`îÒYR/ ýYTº«â©ÏøÇÏ:›’C¦QGäÖDX¸T9Ô4®¿„þÜ“2Ož¤¹Ë}¾TV ¶`×|.OX+nòÛókf7_p9µú’fwLÅ»n5Q,&yp˜Â||óÙFeÍ©cËÁì h\ÕyBž› ûÅ4{Æ×¶%Ý(…|PJ\‘Œ>åýœê~¤‰6kSô7°cW;ü£#j0ÕîiÚCÜ›-Ÿ ‹e,°ˆúMG¬HñX:瀫–Šáqù×WÆ3ÊfÏ;ÜRx} Ô1Òçl™“˜úäõÕ?©“«±£µÂËÓVJ,dÐᲿ¯rA-vdàdLðpfsʦ(Ô¦”C9§ó&z,k ¯âаšŒï,àCXåEƒfãÚ„EjÎrp9íüú­´P¸Ïh ¤® /öþøB–Ã(Böô'úÕ~2ÔlïVÐÄ®F‚9º«j¡ñü9ì`C-¥3}~þª’$¤)ŠÆMO+G¿“Nªû0²®l@v˜1YrY_|ø›«ÇΤN¸é{c´êÐÿ8 Çô+uÒ•rÆ«gx½ƒÐ‹|`±-ʃaˆÓÒÌv~OÈ:î1Õ'Ì<(Úé¿X¾û’–ªlɃ%ÊI êݳ5½+Ü?¶I§áÊ…ÇÔ_C&Ðf[ ÚBثݭõdŠA¢WÌ$²²Töýl‘Bø’!Ýh1y©&È Ä,í¥º³ª.õ–Hî,ÈðpÚ©äX©gž6$> *egXÖ³¬ß¡¢`/'»€Zá§²rÐ.=Р¼<}Z8~äy$fʵXúžh[ ©Š¬…ÈîùX3…þ í¹·²Z`W 5͹ø8Í*wŽŠZ´»öA¨ ÷I!dµnçSÛ°ôÝÍÞt üùBxùÄË›.¥Áÿsxí |TÍ6×’2¨=pú(˜ÉäÌ-yÞtœ"û²AV¯'•^ ¯NNƒ£¤¨m“¾( ¿–ñÃAßOOÈoÿd8Z0~#‰Á´:BYñ¤¢åi€¸Ï'õ„°ûÄ‘5WðýQ抡þ8\V˜¡¬b̃(^þ+f¨¶0Œ›í/•mG¦¬Îþ¾R% ÷³óFö7ËËwMú<«D·bQ|€üb󉇿Æ ¤Ùé¼^”³ªÓÑܳ'+õÂYæ­5PºÐÝ`MQ,L]½~´+C'ª˜g}N仨ÖíÓåWO™$˱˜îðb"=R‚“«Äg@‡Ù>€Ï,nŸ`Ïcï|)ðÇSú{á©vw0ZÑ“¹:&@Þë]c±:_b÷OŽåÂë4HØu¼¦ù}£yÖÍ€ƒÙ[¨PÍh”ŸÍ7tdÝ;à‚ˇ4@Äd0ªÎíó/© 8ðŠÊæ¼ÈÓ[×GPºP€uÅO>¹DàÑR“÷†:½ bIšÜŒO_Kÿóá,WK©“gRÙõ#Åq&Å¡2µ;4 (¹#lϦoîH0°è';ƒ–F‘`®é¢ÌÉ'.)òìIϨ”œA ›‡¦5ÿ=@V$¤•Ÿþ¾´ùíQÇ¿5ŸH'| ás%€”Éœí AÑÏÇß?à–øVqY’x&ØÛß ÷eÈýØÿÕ>¸÷‘ÎqùpOÅ}EšðøH¾¯‘Ö—W æý½¨ªèŒªrA8ãs_°dï¸9V™;m¨æX’œ¾É%òôyLâvÉøþô…¬íâ3@Â¥ V鯘›Æà}N7rGj¨Cô†T4ˆ—”YÑñïlkÃÓN™å*s°òFüñ¡ ÌZÓ%Zn*,z=ÿ‡.©[>Ïø¨5œŸ¢sêý;e S ±žíS¡\9a{Ð\quå#à~RÛ[cf[·ŒÍ)°çðãMu©'’}±í¨7’ʘrÌTê£÷ísîßÔä&ºYté›Ôc¢Ç@¤è¥ƒ `תlè-!í>-„Ç.>úωImµÆD¸˜¥ðÔœÐ.Z´ = R·ß~J鲯ßëkYG3"dÎxÎÁ`söÿ¿.;”v{<À`Q öœ¶!•ælÝ€‘sšŠl p‡±âHl_"ÄõÙê ›­ë\ Ùá3Ø|ÙŠFõNežMëT·4¦Ño—« •m„E  {dÅ9Rè­Ü4FW2s«æKE.4æãXÂ7ñ¾+hŒÕ‚Y‹Òø!8ÙŽ áY\»qå— åždû‚âÆ} úÿ)uäÊ•ó<ó¶¸_÷p˜­€( Ø-Œbè¢/ÍG_ƌӘ¦hÿ ¢Uý·@;ˆÁ[gÿ¨Ý íƒÙœu!³˜7ö]ì¨ÍEâH”^ºÄ䥌àíOÌôr𛵬˜‰ ÿX È?ÂZSŸèÂÇÀš5†®Ó2–t_÷þ&üé°²øjú•¸î4³TG½@/ÚèŒçâÃW6æü¹£éIºn\ôxøiöÿÅŠÿ/Že÷x´ºëª?2>wW  H´¬¬A*b'³Â×XÌOãwŒ.Ùܨcuö<Ѥ™•°¬¹|sýüQŸJžÉTG³NkàW:Üü}†)Ý’5‹-Yp"‘ªö²t]wáÎ%Šì÷jf IÃ0ÛË{fXÚ"Œç“Sq‚DS.%l—4–Ÿ”‹Û—ßó.Îà±2Ã'Ò=µSž«Sê+¶H ×û s³Ã_’øˆÀ³âM¼Þð`½´œ"?-Î|(åF®÷/YcM|©Öænõ„ üà¿ë$ýAÝ«úÛ£…ñô¾ì óýËÅ[ PÆ£˜Ÿ&¨½èLRƒBÃpáE:Fq⑜ºkãÂÆÒC2sW}Ÿ¹®P»$Ÿ·öÓfsŽÿÜ#j…©åþE‚›§Ø˜z`*ûµ…jA÷ñw(¿âjÓ“N“Ö2-çÑ ‹•)+¤é¶ Âï-Ë]E| ÈHÄ®S°¨Öó’ÅÖÏûÊ,dÞMK©[Û®ÒCêm^DhÚ•rÞ”¤6ÄdÛ:¡52Ø·×£kÔ²z'ÓQ˜..ÃÅöåD¡·Qä‰(¹T$jý¯8M{ÚJÒDHƒ:üHýÕyÏ­—ìaCfˆƒGBrO1”/0f8#”ÛQד6Ú§D¹©¦Nãų¬¢ß¶Ô’Æ\Õ ½)NRjCý&¨—àjF·äË’M<í¼Lnq´4‡þÁŒŸÏø†Ç‚›ÔÀ@ Kˆòa¥ 3€à¶‚ù›/ÞlÅ­ëÇŃ:0¾î.Œ£ËÙ¤Ph¸ pU¦ta[U®ÉX}ò—hæó8ƒ#ÔŒJVþf Ç“¬\]¬ä)ûI!)DkZÑVó}zžÿ]û[èɤ*iýEßUw˜Éàçræ‘ô8Ø¢8¡Y|² œp<ûÌ ¨ÎÜå ×ïDíö‹,f︶ý’ʧ“•±B¯1¶:1”ía)6íê®m3SŒ$ÖÅå»}V] ÑÍÇÐÎ’U—móGƒEtB,³+ 9ἃK€ûzÚƾäwœW­ÄC¿“Ó¨lô> stream xÚ­veTœ]³%<œà»;wwwi qèÆ N h€àNpwwîînÁBpgÈûͽwÖ73fî¯~NíS»dשÕTd*êL¢Žf@)G3+?@ doæ Vs´WräS`RZ¹Þì\ÈTTâ.@SÈÑAÂäh-@s;;€™ îèäé²²†h5Õ´éÿËò÷ ÀÌó?7O0ÈÊ@ýöá´st²:@Þ(þŸÕ@İÙâÊ*º²JÒZi%M€4ÐèbjPq5³™@æ@0`éè°û×`îè`ú[˜ùK 0€€æ 77 ‡9Ðé/ÄpºØƒÀà·o °r1u€¼õâ9˜Û¹ZüMàÍnéøOBN.Žo7ìß°72G0lîr‚Þ¢ªHHý+Oˆµ)äol0è 8Z¾Ý´p4wý[Ò?ØÍ 19€ äo,3 Àv²3õ|‹ýFæäú' W0ÈÁê¿2`¸­L],ì€`ðÍ÷ßîüW€ÿ¥zS'';ϼÿ¹õŸ9€ ` %32û[LsÈ[l+2ËßY‘u°t°±þËnáêô˜ÐåŸÑþº·$L-ì<@Kd%GÈ[Híÿ›ÊÌÿ}"ÿ7Hüß"ð‹¼ÿâþ»FÿË#þÿ}ÏÿN-åjg§djÿ6ÿÚ1€·%cêxÛ3ÀßEcgêò¿ù˜Úƒì<ÿo^ÿ~[ø¯tÿ/d²Ó·¶ˆ:X½IÃÄÇÌÉËÊ÷/–y-T@sk€¥©Ý[ßþ±k:X]ì@À7}ÿi-€‰•õß0 k¹­Ã_!¸þ,þ½Š7Éþ©E]GGEA—á_²LêvoÃfÌÆÍó/•·±€hx:ÿ3ž¶¢£ÅþЉ9z¼™Ø¸yLì¼lo¯ñ-5>vÎÏÿ‡àÿ±ý×YÑâòè³2³²²½‘þýeýû? ã‘t0w´ø;HêS‹·ÙûOÃ_ØÜÕÅåMòÖÁ[ýÿqþç@sä¥yGs`›ä´H^Vÿ¨„~OlˆSa­F^®…c§_rØ&_©ÉSesÝ8ÿK³çÜ‘Óó®ýÞ`®Mg"ð,‡è3]w.Æu+Ã^ ‹Q!jʱv¤÷ïY…wzܬZ{[£ªjFOðÄã­.ˆ¿oéü)Ürý±)oœÐ|Í“jbpÚÐë 0«~SÇÞÞÐô ôÿìü×½KȃD%`Šç›pDöâiârUkþ÷àÆ.›KoÔ®Àˆ×t÷"|œw%¥¼ŽÞÄbK9å ±z…Þa™7‹‘w? ý‚Íž'ÄH:,>¡!gTÝ6/{¼È½|R#ÄŸl›¶È BÙ¯‹˜—N¦ÈãZÁТ‘é›MÓûk!£ÅÊ‹ž¢ª«!8ÁÃYM L%)„!Rå?Tò}K$?ʨò™Q°ª\#¹·:ãX…©_ËŶï~åü‰UDD׿ ýqä ƒZ1g´ðö'˜Äµ:\±’1›²éþ%8áäúèvŒJwù³*ŽüP ™5û:RþHÙ,ªKŸË£ÆNýöŽdI®@Ôa“‰ƒž:ù‚-DÏÚ~]™ŽS¨"y$¡h¥l_νãg´Y³ÊŸuuŒú‡›¥„é-b‰iáÜÛ߈Ó7¿9q·©Ý„5s‡Q¿x„Û¢ÍDÿ¬Â”‚¾6f±bµû%W¡ƒThÕ‹ø¨oYs—.ic¶¸å§ð4¶Š þ£åó½Ô}5»Ù)‚šÊiÉÇÍ-mî[vV9ÅN;ÉÜs°kW½w4žîT¾SmŠÓê„|úJâ7ë<3ÛAó bíÄwÐXcBíªõr„ÅYn¶ë7 éª#Ž@*íHy†Îri ŠRŸ~25ù å\öèö_ŠŒC<ªÁZè7nANØl×¹*¢P*€¾+t‰—¢§yÚwåäXpá h µÆÁ™Ûª"ð0ÙJ˾ïš*Ooâ”™²Ëï%vÏ88ÀÆ \έHQÏ‹˜+¡n$¡Õ*E {FÍ1L# ‘a^I¸T&µÿ°pPðžù•n¦>¬ ›]ǘ}W‘1¤K@ "ÄhÂ#gö9Õ£©ˆ–ó9lÅÜS=¨(ï8/q°­‰¿Ÿ«¾k2¶Q ‰ë×}Á«Ã©†;¹L)??²8¡½û±(cÞ¸xoÔN‚ÇZ% úÊ1ÆH 'ŸÝ e<©žDÓ0»Wø¸@Õà mKªóÛ:*C®œq©ÏêÄ×Âpi+f5&ÓkŠþq…ÐÞŠRçD´Y, ø”ÌáB)Wʽ¾Q4°ìå ¤> Äy&vëwë7À«‹Ðo¡¯SUà#Þ™¾§Q'—*É òãûã^þ} ÌÓ­â3wfSÈZLXwP1õØÎD{öçAó'4<âC>š"û€Üû’3)’C ºøºUÖŒ¼lÙTa$Œ?…cí Dû®Òý ^Ÿ; ‘5±;ì:Y™Æñ‘,p=P*6¿Ðð|b¤~¿¨yHF1QìË'±"\à_)'É~߈]±Xôò¥ƒXQÖ¼sY$™² TË*è  –|tW“G]/ªê4·-‘[$5ò(¾ò‰w°a”įˆ±mU}.•5¿4§Q7øÔ0.Ì8Oã8(¼Cõ{94¸Ks¬ý`Î…ô!Rœƒñá ÑíiÞÍ]àG¯‹_çG¡MI2¾«ƒ)àŸèCý‚ºÉ£Û×É%]l¦ï±ðïч´O\D¿]Lm¬žb˜µqŸŠR¡" oæ¦;ú€$ñ(Fë#Ïg/~ÔÒØã1mH8{†ê}Ó@3ž‹cQeDJIGoüáç‰ÏÌÐõ15g3ɰŸbcW×ΕbÓ`gw‹[~7É+k~wÃ-̦Üh†Åðï&­ýe‹dRÔ|¹º=ˆ\fä¡õÀ‰~Ó0áÿ5¦T¾üå×), þŸšqîX&WrÌ\“޼Ît±mJ”FQ$õR–8ÊRÉ÷rršŒ›â%ñžæ¦vv1q8å¢õêŸqY=4 p)ÞÌ[¢©ˆ!ôSù bñxè"ñÄwúÎ!œé êïÔ…SaðŸ+àq7‘íc–k:m»F‹)“ùÐ?ަÁÐ,Õ| Ä]1”™·+éÒ©Wgͯhï&š–‚}ÏÞ ¬ù#ɸC›Ù EÖU¸¹ÙEÏlæéפH<Ý mpÌ•«`M2rXþršáZf/fñ€4úÑd<Å8Ѓ Íj¯qB´ Œ„›€ôÂ(-ïs£)Î0b¡¡„à­KFr”ÙE_HW[#|>nÖë9:!Ì)™†‘èÆ~u0Ë «Ç‘ …fS•dì9ïØÊž"­cÓû Ú¶þ¢kÅ~ýµ¹ë–FB¸fjSbÙ©o¥qæó í°·z÷Ž,ak?x,Ý ;³ˆ>+~_XGj¡·8RúØ [õ­tp’œE˜¿*¾¦Ç“øD»½b“täæÉ?ëOàü×PµqxÀ¯J¥ÃÈm¸[?åT@QA–|#Ó°Uù5ýÚ¹—Œ© T>+JpÔŠcRôVı‹^èhq3-ÝŸœçúªynm˜;¡›Ólý"•Ÿ-¨Ô”³¼¥z¥(È<ö—b©çþÎÜP‹æ*ÕWëÁÿff¿ú4*á3‘ÍùÔˆ+t¥@¿cEä¹f~zïl,$fÙ8CÃÆü莄ûXáA­ã8¥‡’•²ÓŠˆê^°µêh9 7„æ¥Q(7D”nÖâè ßK+l/C¦ : ’9¯çÃÙnaîrFý­ú<¥v¹5e[¿^±9Æþm—¬OË#z3õEP@åôCö—}Í3¤òdwÌáBÚ\á.JõÞùúyå~Vo†ˆ¾TH'YClÓ|¹gµÂHnEo†¼ãT µ‡R¹OO¦>3m šU#VüèÛw½GêFÌ~Õ~ù, •¢{w:gÑîuhSêžáâò'û¥§qȱáÒI÷±QfÉûêâ*-æ5~Âi ±ÒÓ7±ïìauäzDx=ÓŠNcW§1‡û`šgm©¡Ú¯Ÿw^RÉâ%ÚSÒùÙ–)ÜŸôo¬ó´ªÎHÇ(îL\Ī8(—:7I5*XD"ì¯ïµ9ÁFrøœ*(“$³ÚðWÇ(ìj¾týØB5øUµ¢â†™šk¡Ô:O¸pD!kk`“UÊãª_î¤fwîä!ÐWŠƒ:ߢ&½«+YnðاþC‡6„:€EšhÊ’†ÒÓ´rm$ÖÅÓLÞÿq%µè˜¸?3(”ÜÆO[tý˜rß°j§qqÑvü™Ž4oÖñÕ²)HofL¤°ñ\ŽÙ¹©…ŸjjŽÈ%[I0’ƒZk«ëLô æŽ‹±óq:ü ¯díÂ’F¨ÛÁ ¸%ç¥xP°wò_é’–r´Â?îðj¥Øëg<×fç$“ÕŸgÛ÷œ^ .§åÑ”„„›µX@ÎÙJV:XSQ°'#ŸÌRšŽ(WE3ÐýâUøÂ ðgж]ùc~RMß iÈ"ÂÏEœ¦%êÄÆèj6Ò?FIèªß£(.p?R†uöþÀû°Kí‚P>?ïtÛþìË& /[22±\²'«Tbü•'¡Œ#R;Û@ÉP+o­ÏšP4Wˆ†R­1•iqg¥Å}îŽ ^/ Ù?¬¼;ü"#)wšÇ“æË¾åG‹ctæ8‘pÁ£DÝâ*¨öA5Q]JNoàVãa÷}ì彞#Ñ ¬CÀbT€·¹ ©ô%]Í]ª›_„ ŒÏJÅ¢FwõOw«ŽÏh<96®E(¿¨ÕGöðjzîe–ÂèÊæ\ê!"~FðFW«ÄÜp„YWr‰¼ä±¾”Ÿ$>)Æ¡˜ùÃéº!8‡ ÊÜauÅϨ] LÌ]è<ˆI¤÷)‚¯¿R…èú48L´]îÄL‹¤éY0îË íåÅ^Ð<ܰçŠ0¶ºÊÚ*OAóÅù²ïTèYè3,#ŠïÏo[Ý}ÝNû^ýŽnòèf6M'ø5 8VKôŠäçŽ5g°$蟺¿_ãÒ kùKÀr–¨Y ÖSò›ê—s8ùu&±À’¶^js TDeÜ…3u„çáâöiîäelε&Œ< ÎÐ÷ZøÌÁ_~Œ¤¥°h4 =By•–ê&' ³é&ªÀï‰8ì—`=4ô‡=d}G†X×Öš˜vZ¿³f¢:€ÕÀGåÄ¥ùÑ¡ú¡Û;º¨¾Þ6Ch®ÂEf ŸñjýsÇv®UobÕ8˜:XŽ×^.v9À2¯@Ü8|›QZÔYKJ«Pg³oÑЫPÀ[^g]¾mã'S÷þ4ëêæƒ̬ì÷6v‘R•¥3Ѱ1hט ÝŸ¼Li±&ÇcÂ9`¬ ad¡gq©·›R².µBO…vžÈ}’µ¶í¢ ¾’ ÀsaëÇTd*Ôï'§€xÖÑ“V#Ä™\‡!e·SàÑŸ Pô/=Ù=V^ù$ Êkß`۰ȧ.~•´¬:dà]"¢\éI”„ŠþúÍIW˸ýñ0®W婼þÆ¡‰ ë·&É\=ìïMYÿ-ž—^ÁËáÎÓ[ÆÈŽa#Cˆ(·kz‰ èÜ?~‹=/¬¬QtºÎ# F$b…F’€ùãÔàùi¡”ð$1º¡—\Ï9Åy]ãQ~ bì¡@ÿ™j0q¤ ‰éž‰©[¹è*°–©ua’žUæ"žf‰2s>ÃóÂ_Ъõ¬¼Ü+?†¸bs±SS!›ÆXJÊD”ºá×ßþðÜËP6pSŸPö”QôÝÚ²ÑÙí²/Êù Ù C.€)’mqÛH‰P }Ô¨ HjІ9 Á›š ’^¢t£’°¼-·Cdü1ª}§>Z ýÓ¯ïБ\`¸K’ØŸï!žæi“òÄ:îÎTø‡I}ý×#«è™”8XÓ¸ªŠü_’ÔjÓ˜éÔ;«Uxœû?”±$EÙS­ÁÙW4n/s!Ð¥ŠVp gÝt¿`¿}W÷5Œ–êóÇ6Œ¸„¬òedñõ9ëê(Utc‘;n(X­¬anÒ8XÑŽze½Ô½ËŸÑ²>,–—ŒXÊÈÚK¾·‡t¯heèat0¼.‘æp®Jçí£NåÔ¢­ôÆîÛ¯ÔéJ'›\­Žê™zÈÕA6Iª‰If*\6ýØÞ(ðbúþªeue Ú%u¶a«.q~ÖæH5ŽiêGÁ˜«sþ“æ^ƒ[1„90GÇ«ê'–p¸—Ë5êÏ*õ,ãWœF¯öÐ-S+½V†¡žäk¾O!äB]ÈaV”{×ÎËC·%}ƒüÅÇ|°.ZC:wèâüq¡ZOi›#Ûýd3ÊÉ YW½ýÖFÍŸß¼§ì.ÚÎhˆòý´JÀÛ|%ì#A‹ƒf‰­š~'õ]¡ñP!–Ö®3Èûù¦S˜x?3g†p]´Ñþ‡Þˆ|É ”ÍÞ¦èõU²YäóT—ê~Š}Év¥cŠb(ÊŽØì¢"=gÔLTK;(°Î>L1ÓÑä3Û½JÍRéž*œÅœáv¿uq:ŽsQ˜W‡úǃ jÓ"ÞOÍQBù>QrORÊÑi°}~KâÚËäP‡Ã{gÞ@).s#kŸÿi4%ئ¸Æ Mø>8GÁ›" öþ†Ýı¾­K¤Y¢m²œ½Ieþ|ß¡ÜËI‡W©hoÓ’ve ¾÷ý³eb„21ÎŽvè€$xc{£Á:T­IK<ÙácéÙžÛqCþ“Ìí‰rU ?TK”Û‰Ûã¾Ê#öF¿5‰RômAe»w4¡\-<œ+Ô\f¤míŽ8?æÌ6ž`/Z•ÖšG3Œ«nQm°ðÄã`ÿ¦ÊC‰wq×ZièŒ&v]W`<îAshÚ*GÐ#œQa½^Ï cƒ¶9|7(q© ±¢2ò«úÇKóu6­-¦-(M¤–¼XýwiŠm¬4µÃý¿‘U ®ù°ï'>;Í#6ÂqZx) -JUhìà.±}ˆ’y.Òæ7ã‰?sOÖ¶¡Í%Y<ñ¦C ÅÞö9¥Zòþã~Ul+ˆ ÕKâ^X”oÁlzÎ<Ê“©A>k*Ьí$£Kkd€×…º£³I,kúäWC|Ë™CƒÎ\¸wÔµh ï¼ïËëÊÊ‚0›ŒÅ—ºE§\’ØÝ—€ö˜Šé4Þ/º¸Û;–¸ÂÆ<ñ¤Ýo²"o>‹AùÉ_°q\ÚŠ¨ÒÖ·(v¯:}xÒˆm&Ó"6FùÉU·^þÑÒA^%ÅÙ€C?ºDê{“­YŽùóP³÷¾M¥øÜª%íaŠ~&¥‰®j¸8ß?U•Q?XþöÜìÌCig*¼9*kòbïdÿDeüM°Ô¾£?æÿà™™2Øó~œ€ÌÔ€P°×RU¾WyOüÌ·Ly·—AúúÉ –ÀéL÷Á<—fLô|Moïu÷.{›Û ÐW†™í‰¦„dì$!ðÆñè®»KÈÏ[^.F 2ä·«¹¯†0¶;¨öòQ ZÝZoê<³¶Û~á}B«ÔŸÕô Ÿ¶UÙôÞ†{§øª6=;­RÆ ¥ƒ¼ž»dŸ j— ³šÛû¼ÐFˆmCËÜ‘z7æB€°‹s>×JØ<½C4{SrE»™ i7ßbä{_9Oš{1(çÑ'[v6#çÊS’ΰ,þéæ{¸þ¯¤ˆï\ÃLs¡CQÔ,{ÓÚÂÌ'™}Ze³~÷váÿ‚ë{/·&H¹àrsý8+¼°¸#:³Ð>i¤²}5§ ó}Êó2¯µÈ^-·ˆÇŠÙpå…àŠ@CY žÓF¼×þ¹€ëìúƒ…eŒÔØ17è0^‘øùª?ô©0ÅØØòFz{>|:ìD FøëÎõLçG·„frþó0‘Wfå€óö¨C^‘š1OšìxãµmæðóÕ£ëbª„DÅÅ®… d¤oO7ßÂ>*«ÆýIÀç÷¢h†|€€T.Z¯ä;qj)¶Æ™)G¨ÛŽòêW] °;CeOÚG¯HÕ;éÚÝí©­iaû‘kì˜õ|€ê?(è¯× ßÒayqÛ{+4#ª8£¾Òfq["ÿøs¯Mðl›‹û‘'[sUI 2¡’‚üŠÁc fkŽp°0R¨ÄóåKÑ¿­d Ádç_áÓ- üY>ÓÁ¢q&ŠM¡û‰w˜IõÉæý£br£„&y9"ƒóé'@Nz¤è°t‚¥S‰òwoKÆîï[¼°K,×Ô6ëlfùRž•“V®, V !Á)³6qøYï(7ãgÄÍEd¢<ªhê—"+Œ ¾b8 ”<­œ–%ÆË¤ÔIa¤Oë¶ãõ‡ ©7_¢Fäýp£è‹HÊ|]YF¾e»-$Ù[r<ˆ+fe…¹û‚™‘|+±À"£Ak ìƒGÀÀj¢Ð¦6ƒë,‹ÆoËëQ:®¦ÚpÂþ+›®óòóBTPҿЯu<¤›ënÚÄCeoçøv]¦ûYð¾Ýå‰-)Mú' 6Ïz<Ää½›´ª7NH8Ù¶B$/ eޝÖ$qE­ÿ¶pî¯L›¿&Öã±þ äð§×ðï§Pßmrñl‡O0[wŇ}â;#]ïtªx®ÛÒ¢$tüxz]G„ø£‚ÁÞ®kÓ¢°m“Iñ~œs’וÔÝñXOîB\´‚õû:Ÿ Þf¦Èëñ¹du–„¥RÉÖ<ž“Ÿ` c˜eVnŒ9N«®›ˆkì»ñðó‰Î!a3 ×ý>‰PµýüJ4I§”:"1ªO×*GkÛÍËÎ.¼äÐëÜpfŠº_‘KµqI)û±/(-–¾]áÇçà <]ûfl š«fÑÍ„çåg‡"Ø3ƶñð^Æ4uûØüàÒ…*¹éY;¤Y8¦v&®(“Ñù>2¨O87ªj8}ÞQ±_|¨˜4S,DÚËè‚è®!ôèÏ¥Ç8ª‹Ñ°Ö~‚eGs©íÏ¢Û•øé3{áXJ‚P6‡©²ÈÖ˜+ÊñEh0‚cˆ¦¥Xß…¨Ã^ sªÝW1‘@Õc?졞YƒöKŠßqû×èèvXÑvö ­=µ;Ç+Ã%õ«’·k »æ™çüÜ^£e7¾æPeÄ8ðSå¸T!ñ5‚»ÐÌH½¨­Ýhè_€+å'I~R Â(ÊËd“Å0DÆ*OËÐïŒþÜ·í˜üùÍ}ÆüM0Á¹giÅìœ_/d'C ~™HØÙÓÎDl…3T«Lë?âKê3ÚßñÄ%‡Ó¨®by°TBŒ©[ j*K÷³®šk\ûÿŒù›¥G ìùT_Æ<"®Êç¶òZïòáÐ7èÚßË'ö ÿ=üʱ±¢Š[9ïã˜pÕñʺ.Ö÷yòdG(ÙY©OµÔ°tõ¸?4l¼µÅ=¯³s\´3ÌÝ@i—icCÜLö‰L¬âD?LÚ…çÚz!Ž2¸aµïü‹8ŸS¶Üò{  ŠçIþ)P5½·ƒ>FáeWe⵪#½| +gUµšàº¥°4j³Na¿‘Ùd|˜ »éo±®Àj'M'¼³h|~Š<ðáž@¼´‚øÄ eŸozɱÃXðùKs+u+z7  ?XÙ`Çnù}$‘ù.ydgD¤(Há4›É-e¸yH Yi}GÇ nNµ’B½U°W€ þhÿ5ƒgêø# ‚Ë~k2 5eÎ?ñ­¾^™GÊÊd«ÔÞ˜Š¬±BÄå\ìžF§áIº—I."7©V EãV•–:zÓ_Ø”:îXÉú\àÇŽh¦Ð…’î~T臗ùþï'j²ØÚêßÑëµ×¢EJ°Fãj6Í;pº¿ðÒ2ÿ©àÐÆNC] )'éïGýÅIƒƒK£R)Å< xy”#¿Úis“PäâòŸYy-Câ™}øcŸsPY†zò‰Ó`Á¯k0gJ¾¢œÕõMk¸,@Îò™ú…Zº¯ŒNó-Mp£á‰)±ÄÈøŸß5ç¯UÊ“‡>ÔˆQ›I,uUÍ>r–E:,RB¢¹4ç™›Ý=aÏÔ_ó€(PMérv#ã£ü²šI­clðÊKD啲yRÁè~>¶lAú^ÉDb òyñ ï¡çÂn°$þÁAvfdR ÏnŠU´Ef^Y:¯¾xŒUðÏi+ñ!÷ŒXNOf±;J®%²iÍŸ â²—-¾ŽŠæMõ$ª ôþ¨>uR ?©«çuwi¦›4T"¤Ò‹I¶èžs›çC‚ºµ'Í¥™Nõy%qÕ®\/ƒê·iÜ[‹?„’’F`N¤ÎíòÙ]pi¥òý0’üÛ¶y-žð;÷û£’âM%Ù=Ü'Pò¼ú´³q umâ{›u7^×ÕɦÈc|~Úïiw¹k<û]>„}>‹ñ× ?Ô{ZRïå WÕvÈʺŸªIÏ^,Zwt÷o(Sà×c%ëÀºê}5ÖN'òÇ"ÑWÕE@ÔSÿEŠžAMÚ u„5¨¸\;¯ÖS¤ÒP/Ó&?âi[öšü£ÐvŽJÓ~7"3«Š·Ž8|Ox)ðs¥Ðæl‡CˆQ¬´“ A ‹=¦ÙZ[´)váZSsÒT¹Ìúuªq.èóºU‡§’˜ëmÖX9xGptp–£t ÕDµÁ*qÎ7ª£Š\«Ÿ$^x•~û;7ÿéˆÉ#¨81ÒMIljZËj](\èM?àœˆù9½  7ú¯òò m6Ææx¨~3Ïõ•t¼þy}z•9g¶Þí“îµëôJ&(Ý ð”>BHf˜?C­ÅÕ¯b…Oîñ#ÆˆÈ’Þ Z'Ÿ…æ„ä¿§Óä_‹w&ã1¯-X²ç¢…ÝrT‚FÁw¬KX}óŠ@ˆ|<>SðcZXòr½kWñ6\u6ŠÒÈb£<üR#ÓAO³W0å×g¦OP+f“. 箳ü,Jry¤à°(/ÿMœ'Œ¼×!·:ÎÉÔ¿ö‹äýÒh­¦y_s/=G:‚P » ÿzšW!­ñB1é É©ÞÜ8Ÿ¼n½ìÅ…’[ËÇo¼ ´x5Áe…„¾‚–ÉŸ`ô¹Kø"/,»ETóKlòaðåN€ŽËä¦D”lê,-Î1Ô,öή&úzï`èiÇ_À&i¿';wÆ<Eã³=î [àgV ŒÊÖt‰Õj»}/Šâ&ï“íH 7õglŠª6¡OYóï°Q «ßäv-ð§ †óèÈÂJÑü¤£{°r„W/½jUf/í]8|WUZPwvÂrÔóTÞcñ%[®tyÛÔ*  ôc÷‘úsh¢å*¡‚î«P×_r€vãß×$ÒÞŠ»G)›·ÆW¢ò55/âš&ß\ôt‰Ÿ¢Åk¾MlÊÑn«Ö|üâÏsâˆ(©ÐP`}4ŸN™§T_øÖCËEœ˜¨MÆJUo±,ÔC.ÍŸ‚;ÇO4•m¨ÆœÉWx ‚Cÿ=;{™‘RhR6±Â *õ9›ν #½{f¾®À’b㥊µ‰1u—A$ìE.ÞÈnPwà1"š6²êsaÈ„Áyà!:ÂY¸.÷Ç`03 äñGÊÕ‹-‹ÌeOäúŒÍtLÏH©›aQÛ!ñgRöp®@˜ #HHÒ˜š}Ú¡ão¥û¶ñ§qÞ+/º”{(8×ïúÃ6λìä-7ú!Yz•¯¤ bis˜¢büôz ‡ÑtL÷ W9”®'l©Lç—ÖP |5#·¹4µŒ Ú/®ç"€r^ éuΕK4ï"exAŸ-=L§53å?âs§‘(î%\%’p²íô:FEÃã›ã`…aêyŠ)Nɼ€C1ßúe¤±Ç³È’|[œWlóâ¾ßåp•'UZ„ñ/ä¸"st1FèfPL™›…[ÀJèB9‰E­vû ,S¹ƒ]Ù] ¶§*§’ºs9TÛ kÂ/“B‘te¼ÏV˜-h°C§£qi/ro 2s¼âj`÷ïfð{®WúD¹qV¬‡À§Û+Q—ü–æ`˜ex˜žS¾ªÉzJ§[2mŠ=`¾—‡h`˜³ÊkŽì~ˆ¤4hÉßÙ‹ØÄt(>±¬eFÀ@†”Ó`‹²$³Ý`EtA{nºnÅ4†Íˆœ–uNÍeœ[þñr4=ªw¬pGÆ {î¦Ú%³k=1,rþAºñ«äTj jàƒ›´V%=¯e°™Ü!¬ F,˜¬8šÊtß_ ²ª·'|§7}&õý\éJ3 endstream endobj 982 0 obj << /Length1 1647 /Length2 13101 /Length3 0 /Length 13956 /Filter /FlateDecode >> stream xÚ­ueXÚ’-ww îîÖ@#»»»œàîîîî.Á%@€Ç9wîÜùî{ógÞüèþz×Úµªj¯ªj REzaS[c „-؉ž™‰ ²1vvT¶µ‘·å–¥Wš;K9YÞ1v Q ‘È,fäähMb@ €™›› jkçî2·pP«)kÐÐÒÒýËò×€±û?‘wOG9@ùþÃhmkg;½SüU€@€“`²Dµ¤ä¿¨¿Ê«¾Á@‡÷"­A&Y 줘Ù:¬ÿq˜Ø‚MA•æÈðÎ%ì08ÚM@ïn@7 Ý_Àè`rt|ÿ 9ÌŒÀNïoàd M¬MÿJàÝnfûwBv¶ï7lÞ±w2E[G'Gà=ª¢˜Ä?òt²0rú+¶#èØš½ß4µ5qþ«¤¿±wšwÔÉv8ÝœþŠe ˜‚í¬Üßc¿“Ù9€þNÃÙ6ÿWt ¹‘ƒ©5ÐÑñæû¯×ùW€ÿR½‘µûßÞ¶ßúÏ@NŽ@k3f–÷˜&Nï±ÍA`Æ¿úE lf `fú‡ÝÔÙ Ðáï¢þ«ghÞ“02µ[»LfŒò¶Nï!Ôÿ3•þ÷Dþ_øEàÿyÿÿÄýwþËÿÿÎó¿SK8[[ËÙ¼7À?ö à}Ñï» økÙX9þZ8 “ÿËÕÈdíþß9ÿûm à?²þ·ÿBlþ®=3;û?Ì G ÐTädb03²~¼¿íj`S ƒ5 |ùï÷}wbbú7LÕdbþK ö@@°é¿×ð®Ûß0JH‰Ë)ÊÐþ7ÛöïËŠï]á¤ênüG$ 9[Óÿ<üE%"bëð¤gæàгp2½ãû8r³°yÿ?ÂþMÄü¯³œ‘“È  ÃÄÀÄÄ xÿþçç_'½£›ØšþÕG*NF`Ó÷ÖûOÃ_°‰³ƒÃ»âoƒ÷Êÿyþ{€@7  Âò‚­ oeZÆ7§ªOÙcb:=]ÌÐÁvEµªùy~¶¾ia[Üe†*ƒê&x^›ÝçOì^ö¤¿ìuáXSu¦Ïs ½ÉiºóÐ×)[9i÷õ‹¿jDy^ÌÉn~Ðæ`RßßSRÖ/üK4ÑÊêwñ@ãGî’ç‡õùÞÅÇ$µ&» ­£êÇÉ)eâÑÃ=Ußðà@çL÷mV,<¯Ñ'ŸäÒ$'wC‡ÛZ“W˜'NgDWdOÌo/Îäþ`²4[Ñj™G?êÖ¢›À ]‘TÇÚe‹:&‹[ Q~r@(aðŸtN/‰*ò“ëK´½Þ;T&Âä ZiµôvM¿»Ú¥d/ FjÖô3)·k£ #M6‹F^‰jåU¢ D•{g¥†#_|¬„Üï‹Nc¹SÑ$•52ݵ`qªø£çؼáM×#ÉB/¹AÕq8Vtë øì§c²û3å 3F“êÕ<¦Â2Ëå¨k?5œ’>ÊX˜¹˜3Þú}R?!½¯™*òÄŒo:E7ÚqK²V8¦‚Ë9 Î³ø¾='+ÝîЈ‰¾¬(܆G›èÆ{ŠWMÝÊ–~(üÃðéD´IÀ¸¬öÓ§ÚÉÅÀÕ8ÙRBÓ/r©xqáJÈ>†C-ˆ’ÍsPd³–øùCX‘¾8:¸Øl›ZžãD± b/<ðyU¸&>Æ(Rò§A|:köÆXÛß‘ù¡#²*ŠÃÈÎS—ZÞÚ•éyzn¤¨Rˆq3pø8ô[…!ÂŽµuf hçë$Úo»© #T‹"'lÅúº+ºà¼oí$ýÜ¯Ž 0Üå\‘¹ñ¡æ¨ÿŒ”*ôM\LbÔ«,ýÑÒŒL –åu»×|Ÿ˜( [äŠl–öÉ¿²FÉ¡Š>É%¡Ý·)¯«ít#©ÇÆ—ûß™7Ç Çõ£ÛÄÍSÂH_I º€›5‰ƒ‹­jŸAå2XîåÎûÊ•²8ôœPÞ+i&ú$—u½-™«ÂÇ= Çb6B¹ð°#H‚¦Ùîuo3*@ĵ'¼ÄYNçëm4ôÉÛ½Á•¶úì “êí#)à3¬Â€0ÇÄŒLØR'Iá¤î˜µ³^ìØ”;E÷$<<ô0á´H‹›À¢ÐQYÒHŒ '¼b,ã8¸”)J‚ÙNQxåúËdºÿXæ'/€bpÙƒ:™«¸³“®fˆîM!Ah@H|("Ì?ºý°ünÆ¥šÿYú· ‘O>„">/ û— ®q2‚1µ^w¶æÆ×SMŒ¯–ó6–F_ƒÏ©~Æagaé–5´¶,^2­36&¾5´Ÿ¤ÇÍvou %ef8<îöûb×BQákvB;§˜W®[Z¯®SW%Óô'ß("|Ó?ΑÑW1”T9¦Ã¨±$K>†XØ$º©˜<"Áeè|1]‹Ç‡iœzžmÃúöÓ¤`ús­iùîl ‚5TrÜUÅRÊÊéî¤Þö#_Þ –’e¥Xûãø[Kúãdf>Á“ÎÕŒ ãܦ ¿.šÏ©…¹i·"¦¼nõ²x½SH_êq¾( ÎMt kýŽòmÖýÍQ›ž]-ÙF ÎͯßÝn#¶ˆÚæÅ« aÚ¯K20šú>º¸KAUÎw3d±É?É= XOà‰Þ^îef*ûRò ´Pâ´ÐBÚ—Àë™x÷åTϱ IlÄK%²cËô¡I;o´"¿žÍóèœ>ö}ZÆŒpx¾ù扺z …Â^ ¯i8LÜzìsI¹V¹ý‹æŸ6Æ 7šüÙ†W$=ì¾?Š;dÄ.i¹o‹uz}O©‚ºsõŒ'³VÖ ;×ðPhZX¹m‡´bTÜúMœ”rçAòoíý`0ñÃóîb2‡4™ Mzðï´/öè«ÒÞ¥ kûî-< 9P'PÊg ˜âÒ¸r×-e.\ÂHºlv"ê•Êyh²LÕHÒ¥ºB %Œ³ÖÚ^k€c UÂ×w\;k¸žbÔÚö¯³‘ƒ©âPÓöM`¦ºF‰Î.£=bˆwÓ¯Ÿú6Äh‰Æ'w“žÝĶIC!—*A•O“΄U~OžE†4í¨þ‰Ã±ÌÞN<}››–à4I¯˜"ºÐfÝÞÃ-;|KùjE,•ýë ¨™®€ n¯«´ Œ™œÌcî“Úq{Q%ýŽ;4ŸôOÜ*<ýP ïÓÓˆ;ɦv!<4fTÄí¦¿ß›U}†€nÌŒr¹ðÞ ´ó +*ñD6Š®Û)„á!™jÁÁyW”, ­ªDð™’Í8S†êAtžw¥îoy}0ú—ß«ò9†s•ÞÁZò27V#fÂ$O: Qì°ÉÒ D–y¢¦lÁp¦‘ƒh àÛȳVê|‘'`êW¹¨R,crÉ-)?S}àà7b>X˜š;÷ðŠÓ+ÏWS«1®f »•Ç¡m‹gƒuá­ƒšyý3ôRv¾È_VŒ©Öa+tƇßm?Õ0dµHN¢Ræ‹wZƒ—³Slè7¨ŠÓ”éÒWz_À/ß]qË „iÔ¤M–ç«!6ä5Çá¬}–û}¬æ©T¨qþ mØn½-$‚du¼å3cû‡BcètèBo›ô¼óÝ5Ãdg¯H{Є—|ÇÄg/†ÿ²ÅBª AŒ5–uƪ!N b£Ž3½Î\È=pXGKq“?7×ÝUX¯"ða .ÎÑ ,˜LÒJ.1l:Î@ÉöêX@Þî532½rÿ¼yN Å"&‡\mŽïì·òϪ<Û倣ï¥.STåÎb¡ñsÃHU.ðZ’#œï€[…ÌÌìÛÉ8Á©}!;}þŽy¸xªµ¨LÐóÓÉ’Üáj…Á…l~BÕØ™è7~úXiSàa°Û¦Äºù£‘\%%m UsõL!ŸïÏN,ÏŸh g´¥v°ìR2@;z\I|b•azj\Z;IþnB¿IÀÚ¡<“<þ{„"ÞÝꄱåºͶzÂZéÑ*Ÿfè ŠÝj½JrãÇUBÏ<5øq¤¦x;C zÖ= ÊØjsÑ•M=›êÆ*Ô_]xwo¢Ûé¼;X ÖÔ=uº1–(r¦UɽLrás~›ç""ÕWE\iÁgƒMC3û ¶ç ­Ýb?žòQE kuCz³ŸÒÚF¡¨T°¡>‚ýéu1ñœW°;f™LMãÝÛ­“ÐJš£i ýEy¢:–\÷†ØœªB¬ýßùC*(;ïcÆ¿¦Sod–ÛUÀ‡È\ÈVN¬¦ùI›ÏYaºB¨´GítŽ<æ!Sb ʈ`Œ¼XÝÍB¼‚œ÷ÂNˆ}‡]ôáûJqóf©¢‘»a‹¶“›îžr6Ü#˜µ·ºìG:—G“!"¿û}:¤) LÁŽJ–½¤ûDÁ{ï5áF¸­V¶à™)?·SÕçeñí‘3Hc²_¥ØöÝ(Á»7Æ–x¼}|‚™áüá‰ÉEFU¤Ú}ЄIûÛ]óQ³ú¤8ý‘9 F…v.õ2¶ßÌ"ƒh|_äítôê]bQ|*nßIq2´—ÜF]÷ L‘ý½´Y='þñEJ˜Ï³áƒ„- [(6ÊBìwà] Dìú“m)çOiÆçæÄ*éüFÌÇÑþÉl“…1>XsüìéÆC£— Áª%úªÖ ÅC ä%ÝÙ¸ àD8 V¿þ²Nû٘அhâÔÚÚ[”ê'bV÷íb+÷sŠ&K$]±ã0ËË ú¦•µtÔ©•™äEþ¦üçD:eß³¸ù8ªÂýÄH \'«å)qxôf§/£¡šim4Šmìt¿Älu”˜p“í°<3@cNŸÝx•§±ÞÒ×3øBÅ·u!i @–/° ù,Glbmä¾È*,‚ê3¾þ` Ž‰ÆŽ]ªŠdF)‰)¢é]"ÅÅò¥îÔNÅ"ª]ìß~¢ôNÙh_"ˆ.44+® Ïpè“ÃÏ£Ùd†à¤X(­ñEXo:ùŠS:t'Rgo,:oXЇgÊG³¼Ëðóîn·at8+-;ª23Ϻü²»5³£…ã¥xØ£â™~/õÔÜôˆæaÑãÀ*6-FaDƒÌûØ9²’MJoVÅx?îËÊÑbñCô/8Ç•Ív>¥’¥ñS·m1Ñqðâ [J 2þd{Jd3²¹ xöïɆ‹«å.ñŽûdµ¦ÜΔ(—ç{RìDé’²N‡ï ájŸ5ÏÌ:^h§v !G ¹Ìt³ ¬OêÉK~îbú,ão­‹¨„‡rz³uj»óÜkưT+3 ›£që0*¹§¾ù,$ýA«-₞@²” )¸g|°¸XŠ”Qc’)þÁÕ÷P{_‰ŒY¨@ uü“䦡”,žôXH,÷ð&?”gFÕRÙSk„÷üœOËO[È GûÉkÂÖÛ•XNò«©A”à‘ò)ŰŸfC”€l¬SSCéÖN ¢Ûífý5“]„f…sÀ™§^¡A?:õÝvÏ›.\‘AÓ|rc‹ÛóämóÉæ<Òf·ßq¤ª¯¿ÄYñWPŒà¨V~§uëÈÂ'>;º#]Aö¶f¼\Yï¥lò˜F'4 ÷uàŒÌ÷5d©låjåÁþîO›¡$ó-îvëFŽË»¶4ɼÃþë{¸ü%j® vCi…7ºNfð~‘<Ñ×ݘ‘MTe9Vß}Z®së$?+c'·òp1¾Ê§^䢽®qØÇÐ1ÛrâEeÿl߬îЮb9¯f ®;{k¯÷Xê4}ˆÍjÍñšuϸ@$œæØk »ì#ƒô$fΨ!`’ŠõåVÏþÇÕ“ûƒŽ¹\ þ˜7 w«ŸK&4I†ot¦óåÖ¦ é—.Mî7+ŒÓç(vÈûK‰¼obBÛ±ÐØ¿¥©piÖ€î´ä2 ú#øWx4ñR‰%Ö9­üIÜ׿7 }ï–ïí÷XáO’ík²vꩨZW“ãÇn!·Ð‰J`±þˆVü(\c¼u¶ïÕ!¾«³Jø"í y¼ùÔ²²Ø º•Ù‚f¬%<"dîêj¬­ž½§dþÁ˜dÇ$,¿›ð òQ¯¶.]wËQ&+±AdÁ1$Õû¡ÇÞÛ-çúSò"_'bîŠ×ÂýãâÕIyQ Ã7ž_ÕÎÚÐÂ;Š9_ñäÌ—[Äk¢äung m#\´¢Ë°›ÖÕm‚æ-ÈcÝ_î~æþ¼EлâÐ8BŒ\ºG§|íÑÇšŒÐ>6xʲ¼uÏè‹ìªY‰§¾ô|š ¶þð @ž_‘¦R²L¿€2”Î9±0¡ z,‚d Æz|¼Õ?µ› %OùÉL>E` ac0q)¥Î%„"À,È£›ðò¸¨½‘^¬š#5ƒ9#±'ñöq¸)î¯|z6 èU+YºüaÛ*¼0`?0–ÖöY%{±œOZÚÕPÛssïó.qÀ…ŠODop×ÃÃ%F~™OêOQjWHæOnñ§{uÖ}Ë|Ñá˜úÄ ÁT £=«q†"Ha“ü·#¤%€5ñZ[È{Ä1&ÓÚp0u…cøŒá$„ÿI•¢ÂÛeG ¹Çüù‚_vÌe–~FÄVf¥Úe40/vË`wkÇûØ[¶ZöéI¤Ÿp7k^ÕË…¦¢“]“¨ÈÛÕ†¦Û¾ÎjtM©#@,(s±pŠkùW}ÿ÷ý$ˆ£‘fy&Níl¯´H|q©n¤[K·>¶þ}­‡E pð4nÕ*2?sÒfÑ$jùb+Üâ:~®ðè¾®N·WäeÇ/R× +·¡¯¯“eLTWÑk_9ݤB‘z>ÔZèAù<É¿{¼f©†¤ë¸TRÛ iLz™ÑÁ<À}ƒµ&)ãÀ׬©­¬nõùzâuÃ_—§¼˜@nw½± ãƒV¿ça8Ž+ì ÿÌ|W°0Ì0ýÑi—Z}Â+ÉÚ0Ì®Žž-eA5#ÕÅLlÿòc4®D«-•4Îw½ L•«†“T‰Y »Ê¨3m/¿9Ó2ow¤ºãˆ¶L«E†ˆô©Ñ5XÈßð S $tVLd|qÇ^ÄÐOòÄ9£Ù¯ÇÇ þ±Á›é%‰‡­Ÿ}n?%]àsˆ×<)Si·ZÈe´/ß/ibåVüœ\ Má®]¼`Y®ØžG†?ˆ½±™Åš¢óÎ#ßj×w¸0…)W`MsoØÎ«b`ߪMGŒ8E†æl3äPªªß¡˜Í~'/ÚÆœeê¿‚Ûy™%¯y~ •ª}ÅE2—0wa^Š;üå¹òÆó,ø[°3tŸtÄxdûR©ü} ±.ƒ qAºa|û"xÐÉëÅèbIž–,UˆB½;W½¹æBäå\Y/*Õf·õCß%DR³×/oåOÔ_ü„ƶÐWè2®,œ¢}›‰áÖº”p¨­\>ƒ¬P]¬ U¸ )ièªÎî4¤o½Õû¦‹@ÄI‰øù2•`tLpö9ø¡3ìô|L– ¢ÉgLpžº ]æ¾ìšãªZçIÙÙ’õ{†b^´%3ENéÇÐF¯Óyýz°ˆâ£UU@ê½/>”üíôo¿íìy©6ÑI?q|¸íÑ’ò?Äbk‘ñÒ”"ôœHÝyLÕì—Œÿ¦Ûç˜~ Ô VeV‰„BJÑíù@ƒž}‰DqLk¬¯+øiÙPXÈCM~#ª*7ƒÐƒ˜Ñ§{ Ïê¥z-º¬ŠÈ…GîOËz‰Eu¥Ï"!…Âd\0æ ?3Øê™ödãbÇûiÔדšˆ›;ƒû.t±dц.¸ÅË.„Áù Õ}óƉÉÎtÉÝëœý“—K·Îæéèµ!îŠ)+z{›H!¦º™6š½6PXÆ»â–á½y‘çX§\ëÐ ­Ð’ÔœFJCʬèðÐßï¿"oÑçï^ߺÌÈfÄog+IŠêrâo µÇ#Cîý±W„|Ô¨ ”|Ku»dcµ(ù„xvä;ýÜŒÚ`m}ì:¢¨Ô@Ÿ¿3VËñkÕÈg54½ûªÛ°90…s!cñj­ZigÏxÇ;¨kÇ y?è—¶Ár:ÎîUŠíüð'F…†7žì:¥|MÄU”Ïjn`æCzÊJ9r•j¿·#y•'…ÿ­ð@6ÕnJòóÅ%!7Z5U3}‘2R>µ)€ÊæQ–©uÂ=v¼™ˆ aåù²þšÿÇ#`Zºlžôu•z$p- "·£B"zý-ºØí72Û¨ÿy²…OX`\Êz9…HWwO¨ÇÏÃ/t ÝCtxd"`jIñ[cø“s¶>ªP¤ ãë7žõÐ}¶45©KH¥‚ý±Ð¨%“k£:šbÑ#â¥ÆâÅdµ‰Y-º±º™¬ÊËÓm¨¬jMvyW›¿é°î†Ë»ÍqT€b*Jå5–Å•ýwa6HuÔ?·Áѹ”Jw‘ËõO&ë$xZ“Ô,ØŸó¡q§!˜º)GSɉ˜…êh4¯=2{a»ïÖ5¢ èÜ~5'ÏTþå: ?%>ƒfüÙ,X>˜.„ñÇO(ñg™¯ªÃ~…“[©±r|ÇðÊU#·}XÚZg”÷t¹¾œÓv?ü ˆÖÄç‹<¹¨ +$ÓÈk8^ly|ëþÊænˆmQªÝ¦ˆgÚ²X°È^B¨ÀT0á; µßN»øx­Ÿ–\8(%w7£·Qßï¥Ãšäí¸þÓ3§zoíå[Ãtü‰ñÓ"n"Üô-"ÌXËàá‘tw½ZÛwR¾IrV²GLTÍbÛ•³á MÇžÛ“ôêÙ@x©í§3ôÅO ”Jæ-ücµ­ÈµcîtÌpøzד`öØI×çIU¼ä¡y ñ,±Ú€‹E†„q$Šöþ³¾Õ^P¹úÙÔϯ‘÷©ÝUju„‚WûëíWM1 hoȵŽZÌo²h†9›w³!¦êJFCæ'yaó¥³4åÞ˜Ê[þ}ƒznL.Xp&óÛ²º‘èáÚ]‡™ˆ¤„Rû8Ã~ÓMŽ{tp©ïx(qàÞæ·¼-ëÐsÖ)›†¡0ÈìDº“'{`OÞeï®Ú I?ÒPتôöDi»qD}Ø{A‘¯ØþXdKr,6ßW7ð%¢MkÀ²uŒ”¹7/•Uõ«¼2æ?[UÕºZD‚·Šy¥¹£ÍÑa˜Õ(ºþ;:IA}XW¦Úùªuù«ÓMê~ OÓ%eñŽÞg8BD'ßÄþEG²Þ×ɺÍöºXß)WŽ]@Ï1T%Ó/ä ·ÜxŒa;—ÎGEÑè^_¡Úôn4,Jý—Øu‘.¬ókJ•&f¦KÈÚ¤÷áºT)ÛÅ…‘jg^!Zº=)ßèEÚܾk—¥ ñ8ýñÇyN"¿ñ.#Ñ/™`þyÀ|Ì¿–¯¤^?—E~m±{iu”w×VËÎÊŠ«ƒˆm‰’ñƒÄ)šÜ–¤.Y¦ Ï4:…Fà ‡Ö³1SX=O(hbüQõ@Ã46´ÄUÖ‚©™ywÚ¿`tß+ø=˜¿Ã‡ŠÉ"|iúæ17M¿îÿ‡%ü j~%°ºèµÿ LžwÎ!6©èGÃÚAYïŸæžNGÛiLJHÝw™YúÃë×u þão«ƒ\3r•v‡«<ÿùœ9GÔ‡LŒ¨¹&wÚÍq2¥dnÁ>Ø.ŒD·ªøû­­ž²Á× ^k”ÅŸs³6êæò/žÜ'ssù{ê'Ò^òw•¾á%kþwÕå!20kì7,FÔp<7oˆ• Z4­psòfY}X+&Qï4Tƒ8³â]#¢ù§îói‡䉌ŽtYÜwѹó+pÌ ½Tí­‰®%/Õ t‹W¾Ýý™ä=MD¿›0A *X,ÃÄÝ‘¥t°+ÿô~Î ) .ˆ "äÇÓ&çÙi”Úc=#ÔQÛ±Eý׆—×[aJy:/®cåAR•¾èÚ±„ÁžêžL‰oõ¯ºC8^ÚE6ž¬`$ý_ëˆØÂpIùx0óÏD»« èõè,<5øG´¯¨èu^×xQjÇ« ÅŸåò3 (‘”̦ Ô¶õ‚ØŽYmÜ× Ñ%F¨Íè)YLŠ8bCÃ$‘Fg[ˆ¿K v´.”ðˆ:'tf{‰î„ÿTe ™ðЃýC¿ßAÿ€;s¼’!ªaK}žàÿAêGѲ<¤Or€¢ðx¡IýYÀ3£ånÃë8ÃÏL‹£Àêgh%_ÙÝs+êÞO§êV‡,ö´Ñ¥âxØlÃñÞ–‰·¡gÑ£fÞ²0‚QÅñ5K5µQïü:YO%¶ y`3âÐʱ*»BN´Èï®$Çý‰…ÉpÕBØõúâ,ýË M7ÕÔ9"ƒO\ðá‘ý´O.†‡Úc§·Ý MPÙe ®Ö;51À½&êØ+³ò§x†LmZy«¨°^ÇÍò£'ô©FžM‰¸ªÀÂã#”Ø]/ZáãÝ€\†'.Q´{ŸºJ1þîñS´ ãËËY…4ÉnŸ8u¥µŽd¢…]Н‘éWè2¨1=”‡#"ÖÚXîP8á—åFK2¦lBºvOŽ1Á0î s !‹¯HíŒùöùË) _/v¸IÄÔÏ‘mVQh-iì°  æ`•¾Ò쉧PDä}wް}ÐÂóiÄf¿(I,Z[½M$ˆ_^‘[^ õ€'˜QÃ&'cÙˆàШY"ë&Ú:þîA€%mp¾´Ï^ÿž,_{ÈÔÇ_ßÝÿ¦£HÕÊBFçzuoªžà‹¢»>ã.àð,£¾³Ä^ºÓT‡×Àý¬ì=ô@[L^J!\®B¯ ›†Cë kuvj4I{­Ã-JMÞ 5‰r;m˵€ÞdÇ땇Ժյ=#ÒÄÇ×ÅY[ÚðD3LÿeƱÇ3+¾×ƒ¹‹Î¶ØD¥#5‹‡ƒpšdw³ÈÉߤÓX\vÒ5#ýËîÈúÇálîÔtB•pŽÂީĵô–áÅ"ê+‚ÒóŸV!îRëw0'ÃaN#Çm‹q›ËÚ¯Ç#‡NIÇO®.´Ùzn gD«€EÁÀ¶mg&‘ÙS—K•È%é’èðÛæ†¢o^ê"¶ftÖÄÓLW §óÇqoÒ~þÎå¶De¥nŒ­ßúk£åôwí l/˜QÞðOžF¡Ï úx‡¥}êçƒ ª¡ÐÛÚtð\F`q=‚î}¬rž$/chS`;7F”mYå¢t›·$X¥<‹±7±:[/¦ØŠdx5´¾ÇAø¶>……QËò» ´03x¬ŠV èǺ£­ûNÅ:¥;[‚õ¿S˜ÌåZ¸îºX4ƒƒ'òM‚€a<-ßsàBv>5ö3¹ß_†ÝÄïé’ÒIÃØ¡Ã@RâùÚšvëX»PµšœßH;E°?d ÐÉaœ$L߇µ‰]D iÉ'_ú,ÒqÄð]ÊJ\FÀ®Ø!ø‹3ö"E.]6MR¢’}«Ñ^’öhJ|Å?GõÏ"³¢þÒc¬üF8ÂBJﭥآk©s…³50þ“½ã¾†úËç[¨ '[ë5•ÔùŸ¹}Ü O»×Ä4è ©l…Qlœ«ÆïíRõÄÏü?G#ol99ï ; O˜Ó£æ,‰ÆK\I†vñÊöN³B_篳†XÃa¼0J•6ü­cf~ËÚ؉Åái·IÏXŒZ>ß1¬Aáëwi_ÑûG;2buþÉ3o.SWÕVôÒ«CýÜ/Ñ_èÐ)Uꨃ] ‡l•«@þ"OZ6ÐtáÁ4Ø»œrVŒ» ìÎó…K6*››B¢¿^eÖ] ʼş¥Ýpm@#æÊ=wºÝ!G^L›:/ð3›*YƼÓòùÇô¹’/è$[“;õµ0€a)òXßÜë–€›¹™®_žgKÆg¥in†Ó|É è%‹ŸMŽüíÍ{ R¼¾7|üª—‚øÇ$ž—ÑŒ”ņÛعà ƒÜîÅÕíЖÊÿT¬<Ï>íƒBsy=Æïª"fš®Ã2sÃzh<±*~F±@j×yžÊKD{ôGé[0ØW÷²È#Ê×¾ÍÙ™EIô $œÁZf`Ie¹èbfŠÇçXy²ÓZw³pÀ[0 2ö,ó7ìS°ˆ K@u\€ˆùzô7~äq ÌgèH{àˆÈçkZ/õÍÓpÄÒê–Ãàžéø©›BŒBñâ8p$Hy‰ðÄ|ža^̳ù×§v[u6È\²œRp¨HâÑwëuÏ^Gˆ•n#kÃ2Ë¡$¡Bá³¹Žôä·ód}¯ˆïMج» ´ÖÔ'0ñWžB›Æ¾íÛ» u6=Sí¤„—ð”eÞy”SþrŠ‹ž‡°™9ûÀ5µ Nìyrð¥%þض{*=5©=ÏmJº`Ë˦äYoFäæ×ù¯G(3´ÐÏ´Ÿø×+µ”±ïcÌa…E5½¿½2éa?Wn‘ÎÓ)¯.›4ß„aQ7ßúAVyPlDçÍK´ÜüÜ4|Øç¬—i4‘xÒü$øÄ c§û)’£‚H>>‘¾°‡Ë÷÷É"es«ÕeþavqP£0Ÿ–æ(=6t¥AR±€l6ìº00{ Üó#9›Íù´­“5bh[,gR<ˆì¤d<á Ÿ±7«êÑ;ÇãlĆžy>Œ"øˆÙÚ ŸC>ŸÙ©‰ýÍüÄEᢄŒšÜ8ýÇa)»€?0÷MÂN`Û½Úeo‰ S¡r| …ÌoAþõII(»ÏG^7~ÿ­d÷²|ú^Ò©ôÉÀãZï²A<ŽmE¦Azܨ‡2»BÑÍòÑlŒ(AT.èŒØ0…žK@&\¨H,S@/´w,––=>¶R !†n¸vå˜K»Y¨´[bWx¤EÞ›åG$¸‡_IW=CÏöWÄZ:êßFp ˆN>‹U,¢d—A#<£ÖX(¦y’EŒ§x¹†Y$4Äàåm²þÐÛV¨,øzË£óÿSÖ ` JŠí–üm!q±ž‰Iµ›ßïSfÝy–x׆)Ÿ(;ãXSÙ«t¸4aLƒ@etV–wãØÁ®NŠ?53_çüLêßz=•%4‹®¥.ã‚󖆈øâ2c%‚uÏ|EbÎgÎ;Æ>þcŠ:ßÔE·gk>ÓÖe³þxÖ±„©NŽÛÑ4ÐpÂÈ8GO›æ­~‰É……q˜PÂ(¿¤†1ë¦9’Ÿ ³ez]{°Uv›Â÷.3&™ªV¬&ÎFbÚpYùSác ݬÙk7ì3¾ešöû®ìÔpWÞ ÎÞbÝŽãó`sÕÝÞ®É1­³,¤TÌW„apeñáÌ ¸.G ¶\¤;!d6/ž—5ÚOÊK|ýæñ—]ãbÃçHæ3VNƱœÐ Ìú®§ÌÊGéñ´¾&SPÑdÐ,wÕ«ˆ=ÊÎ7ÃD±?»Ýµ=Abw4µ~„„æËuåØ§Øµ5#É1}OÒOeZ¥Up«ø*×Ît#Ÿ`ž®µ¼kH¾:¹Õ¿«ªÐ gMŸÕ+B¯°)ôµq®Oûó4„R©^Æš÷i#äW úWÊâÕq5{¦vT‹¬~íÝχGLrá«ÎÉœ~½¾%ÄBðÝRkDzR2¸2|T;Tx¦—ô)uyÒgþLÕº£*E¾ñ]]PÂ@ºO´‚•¦…ð§Œo£Ò#ò×¹$Åd-~ž+kú±“º¨™}Úà3ex(—¡@¦žÊXµÚ 8¸ûƦF“¹»ß…V¥Á-¢:®&_)škáR$Zkˆí8‚ò¨ø &YZTÁ#¤TŠ’ß”¸EØ=›Ê KUæ]S†°K¥N…ÎmŸK'\%Eå܃OªóŒûG£RÅ Îs¬Ï÷‰Ž ó/=¸(g›Ð*ȳnüå…ž ¿­«fó6·zN›¹w;4+=½Éb„‡ `™Ì/lØU4a.BRæn=—nÖ%jœìkÜoÑÐ ¡É”a¶Ð- þІYzõDîÌ*vîZõÖtöFÏå¸h¨ÂˆiÞ¥ƒad\npñ|oÄ×Ûf ÿEÝcNñâ£bÈéR(Àò¾DŸQpØ-°<¥œÌBLkŽ*¬B¥ÛÐüå2†Æ¡I9‰K èöñt45±Õ ¨eq*wKA}GV®¥}+Ék« ×U^æ Å åV¦ßÕÔ‡‘ÎI†,ýH§IÄM$ó%Ƕ€®â"DèñXâ»b8¨(öb0‹/„=¾ryëSq ²k›„xw /ê‹€ÑVĉ_§ŸÍð%$±4ÔK¸¾½n\€J®A½;ÝÇö‘r´==˜ÚœSOë3óÒ\«ÅR³¶åíÐ/®§ôŽ·LW$+>Ì{÷8/ƒSWØðÄFe^oó­‰uò“± [:zt&hªøö¿ÞåpjêPšw¨°ô‰°~ç<Õ8Èè×n‚jÐîÓa {9L~ª2‰9&CGݶ2}•[ DU}@œûÎÖÞ´À9õfP\CZtŠ¡íšGÒ|ðíÜZÛåRˆ‹—‘ÿgˆõ¤ÁÚc(u2ö,GêÏݪ׭r‰á …‰³’Ñ¢]íª¾7]¥˜‚ßT0ð鹤´ƒŸ=I{ˆÜ‘×ôœÅR{|>g…ùjë×/azé. µo•Iî¹)ˆìÝ‚ä]¼4! ãÖU irIwó&Y³8G³^ÏÈHЃ²­Ò7ÿ0>~™¤wùQ™H98 ÛÜ5§ºžY-Bõö5ÇLÉQ«m‘ »ÛÕW»ˆóäM8„Þ|‡Š\4")8®Ù‹ ?€ÚРD5 Œ³ s·1{죬?xí„×nÂÔ‡Ù=®€á ÑûØõ1‹I+tÈÅ«N¦Åʇ…ìÓ´j#¤×ì÷(cŒûÑ={q)²êól.²´Ÿ/ϾPÕñý¸kš¿Ç@)uø¨l'ºÎ惯MÀÖ¾qÅE²~dNw½ƒÐ²?1{%åV]ViKKªþn$rø»¬Šv‘Á­:Ÿjö“µÚÒ<Øèä*LüA fg¡‘f0 µÈGîþNX´)ÃõKâ¸nŸ =Á[>rÒf(×øKk‘[z#¬íø%³Ø†èå¨"ù6xKǶ:¡n­åÀ{íNéÃd¬«ð‡ì«@KÌ5¬àþÂõ#ÇË]É­ü˜ùÕ÷š. ÷ǹrQWѤv¶ä’5¿üÁʼøT”Ò õ ò"Ð’±rC:õ.¯8¼€ŽÝŶög xYÝÅdYþ›±¯YDI°¯K*rkùÑ¿J–)ÃveoÒGeX4Ó^ãØxËÅøá \ƒ™ÑR,‘¬*»  ‰ì$ûëñÑ{úNù;ªždªL-Ç#HyÄö‘›$™jWz{‡s²:BSY@±%\ò¶m¨’ê) “bFMs&Òó¦KѺz°À„Ä=¬PiH1 ÏÎŽh±ÂNå„t³ƒM÷iì¬ ›Ï¯¤ZìCH@šiµÝOjÔ Ó|©¯ºÞ×ÌX ­nÙº}Çö…lòÔœküÏ,$UUíx{ *gÚbzj+ìL\W&›$No$Œ÷\IJý’ vÞ35©"K²ì¿æ¹z“¥©i¾ˆ¹óðm+˜Àëu®ï®t !\¢K°VW9±#àøÌ}çþ(•à÷ü"4_¾v˜îvK¿áøöøÃÚÅ endstream endobj 926 0 obj << /Type /ObjStm /N 100 /First 904 /Length 3531 /Filter /FlateDecode >> stream xÚí[koÛÆý®_±[æ¾_@P /·i4°ÓÄ©a\È6mëF–InÓþúžY.)R¶%»eu‹Âa¸$—Ã3ï™%¢e‚…è˜Ô{Ï”sئ±…™Õ’E!˜s{É<æD¡XT{ͤp4Á0)£DaAIYœIci®gÒ†ˆA`Ò+Ü)"“ÁbŽLÆ€9R2…û1PL)‹9R3¥Í1LYQZ`34Ç1åÍZ:%à < ¡e'˜Ö Eã0PD\²Žiè’“*¢òÌ'KFF°£"3Za-˜I\@ ÆÒíZ1ãn‡¼L°40ÌÄ€GhËlâB;fÁÅ jù:0 .0€D#˜M\ÉlâÂ(æF3'`Ü–4Ç28æ¬÷ƒhÎ=Hï1Ðf =,‹”€„£É O“%¯_A ‚ :’$ÊA’. TB!ÑY󜓩jHÃyÒ4¸p8r¸ Ò,‚² ÷FOÆšD)I)Àz6)ñÜR:’$/•‚ÝEX‰Y¬Â³q WQôtÀÕ"D *:X:EŠ„QK#à\ì‚âòØ%\P%Ô޵µ‡ PVȨ(fnIÙ7Ù"6ƒÐýû†ô¾@¾° (™l¥”©sF!'z-e„Ô„F×a3ˆ~«_(ÕR"µ$P›@ôYGh‡ôI]„ñÅ)ÿ¤îÄ:˜ë¡úÔ‘!hËh˜úFô7jº>AxD(C]´†Í8"|C èÁ ^°£ˆv^°}Æ?þ¨PG—íAÝÀÛ'7ãñq=ww:Y$š»:uvé¦] LR×"uuùÀ¤¶@¿MOJ@güí‹]Æß•_ì¸+·@8àÏñ r²˜£ öt;ñ<ŸÞÌNËyêÔÓ©×åÙhølú…%)Ùha„hˆ ʪîßg A‹Õô$ç9N ‰Ö=ª}ÈûXíµÈû<A°Úë¼7yoóÞå}¦§3=é™LÏdz&Ó3™žÉôL¦g2=“é™LÏdz6Ó³™žÍôl¦g+zÇýØ5y¹Gã§—V"²Á@Œ@²®fîÏÔ•³)õÀ¼‹´†$­iÅʼnY¡Ç"M*¸:ŒÑ! ²kv½¤GB2֮ɱGYü ZtAГ°:‡Tmõ–R‘D¿"‘ècD›Aô™ŠÐ¥êüR™j ZHsHM6l©«n$í,“hqÉTÐf+µ‰D…,B\"@­FÖ¹CŸ ­D‰,ˆÄÙa3ˆ>%CA«™5…¬H{#ˆ>k…Öž²ƒS ­×!©Ç!5Ç5 DŸê€MàáNšÂ¢¯V’@GãÁ¼5ÛA Ա؈,A=œ¥öê˜`ÌV³†…[ää:kXï %½•´¡´H‹;Ö 8*ZÜ ÕhÈÅêB(½m”!á ôÒ%´¦W[Èè¨Ü¶S®¢N¦ôÀ (5Ö Í„‰ŠYätµ®\ísi\¢[À³ R•w® —; kR—ï?Z6r´Üˆ¡Ï¶ZRçæ¹[RÏ ¨¸Wuöl0ä:b#†^‹™l5†àà–v3†^SWØ5ˆ:`oÑgA¥hIÜÒ,‰@EËôåh1ÒoË=! K u3-ʪµEöÐaK1‚Btô*-±P ¨,öôŠÜØÂ(·%Ià¡ý Q ÛôV^ox›Ù#ZèòÀ  zyLU¡·&²@þÚz[†ÜÝ`@w/£ÞŒ¡›?i‘úÇ.rt6:+i‘ãÈ×·ŒÇÿGVˆæú(‚6KËøôn)Óž¾“ óÙj:D£Þè<}Ó⤬6ÔµôÞª>¦qzE‰•ú\·Px :­¹õ>=‹1òqšGçqŽ6¢0ÓÞ(Õàª1Ò3ê}›7ÓVŸ÷ùÞ YÓ¯iFÚÓ–ž™hÙ´·iÙˆþÄfµ%&Eë ZQZþ5lÙ4§RûwÛú–Ýä±.Q›•EB®72ZÉL& ói›ymÚµKI5¦žÇÉ4kÈîÒv%²¡zLçnr r1»B½o»Jƒ=ý|×Û2i»Ž¡ŽñgÈr³-KzeœÝ¶Æ¥Ó mzº# k5š#îùKD²ŒXâ Ðà[ôÞèó¯¿âþÕ'ø%yÓ8ÜâhFÒº1Žâ}«bG‡Mø´â.+¡…ÛVâéÎ:ø>ÄJ÷YëÖÚ^‚Z&҈̋¿ ‰F³Q&Ô¢Qs£R2RwV‰ÎùÆt­Q?×ó²É´é$FÚDÛvbƒì¦BÜœì$ïÛç›{ò8äq}½¹‡ÒaëZËNŽ[$Ue/Êùélt½˜Îª*íÍð W>ì?ÝûéÃ7¯&§ÓÉ|:.†;Œ M/æÌTsŸåE;ô9¦E£tZ´ŸŸÒK"1àχ×ß—£‹Ët@OÊç_-†ãÑéÓÉŸ¤ÃƒEyõ ü0OGs‚»/‡3ªú¾âOù3þœ¿à/ù.ÿ.Õ´?ðùÍßðŸø[¾Ïø;þ3ÿÀùG>äëër6NÎøp~:-Fã³ÃE9Í?ñ႟ð“áé§ùx8¿ä'³ái9.ÏÕhFÒðS¹hNc\]8å§Óñt‚ÿ¯®†üŒŸMÇã጗<çåç›á˜—_NÇÃ+~ÎÏG¿–ü|z3ãübV€_òË߯/Ë ñÿòO|ÌÇå|ίø„OF“’On®N~t1áS>ʼnk~MoÝ”4ª€€ÃÑôŒæŸoÊùbHŸo¦‹òìd\ æ#ï{`›ñ9Ÿ—¿â‰óÑ^1½à‹ËYYòÅoS~Ão&hæ§ÓYÉå¿ñ/üwþÿ£œM¿®½;‚¢brìýnr¿ ýüòÕ/?|óüõÁG)î4œÙNúâ•j}ï[¶ãmÇz\ÐKûÙ‘ÑtMhGšÚˆŒh‘–m#ªõ5\\vùRákïý«^í~óftur3?NövöË‹›»¤’wR«Iƪ·ÊJÕæ06*©ïq’`—üY¥Ûüíw™2aêðàãî‹ç™©ýéÕ›iÜÛ¡wÁ÷ðåÛÑFV‘ *\òåbWsQ´ùñ¾dGqNÞíý•ç“ß“×W>ÿþ~Ò¸åYã‰ä|𺖷‘¯‘›M7¹¹Oº–FÕ5r¢Úinj/éJÜ=FâoÞí~<8X‘øK"‰«PK\™–Ä}èHÜÊŽ%¹X’Iîöèpûwx+®Îîž'7ãqy;†vƒgR\8ÇŒ+`b°T:ª»î5†yy5ªØè%¶†ÇÏÁááÛ½wÏÎÁx8YüÚ?lF;ñvô,ÙYY9ìavVÒù½¾Y¹ZådVGNáQ9h÷ÕË×o¼CNÄÊ}BRRžªO¹*!;¢ÃVRÒ«IÉ6•Mh‰ÈÜŠm/WëCÑVÜcrFæÕ­*nyÄÜ¡[t-v™†;RåK‰g(6 ŒÑùy‰GÐEG*¹ñ˜iÓxÓ±íEw«£ •ùËî[¹Kìâ {’G’LòÄÄ[%·$ÚUk§M£ 8upiâنȂêDÁCe;ì¡èD>äþv X•¥;œ'e¶µH¾ð¹ã I+L*Ca–¾Ö[¹r°­¬æøA:Óº.]›ÐØ*G«RÍŲ¾F½õ?P#s¢?ý±à«¾aE…+ÂÝšDàþ+*\öô[°vß±ìW¨±¸Ríߎ­WtñçÙp^¦%ù[Uz'”¦Ÿ·¥ïüvG³ù‚¢C”Û.ÇFg‹ËyúeÝqyݳﭤWAØUAµPÐA Ãå/ki1ú‘Ý£­«†W±ùUlmhRɶضuuã*¶¸›‰-l¡l›Òí ¾p˸¨ X¤b¢¨ûø°ºi¦¼Óvtܶ?×ÌûW_V5| šÖh®ÍÞ‚Ö´ˆÍ”¼Ø endstream endobj 984 0 obj << /Type /ObjStm /N 100 /First 973 /Length 4168 /Filter /FlateDecode >> stream xÚ­\[o7~÷¯˜Çºë&Ã; z]ì6MŠd`±èƒ"OlmdIä¤é¯ßóq.&‡ÉÎmfDžËwnähd®tÓ6Ž5LɆÓp%¡]#è*%o$]7¢«¦ÏW+CWgUc¥¢«nœTΚ†µ-,Ý(ÛÞ0Æ4­ «QÄ¡a\šF· Ì5$ ’®ˆNj’HtJ(’Ü0Ýš ItÚ6DgkÑY.NtÖ©†Ó¤uKÿ GÄ '$„®V4¶áœ #Ó¤Ÿ£bçÑkÒÑlîÈ,ç81ç!û¥#ƒœl„ed É‘œ4r4*µÂáÁ8£Û( ËÙb¥€ùm£¹ðw¬ÑšyH7'îaâü,a¨a3ÖrÜéÆrÉpg«Zº³µJ]Ð)΀dËÈeÒ‚ƒüp…% Ÿµó”׉niŠqîyEùe¤oᇖÑ.”#Qä"õZÆIÜ2xÍ[ÉIšàÒ ]Héi‰Š8¯ Ýå•òNn=’&[L`ºä-'iœHa ƒ iRip$M }ávé¼@V1Œá—Ñg¥¸_FŸ•á~ÉQ®…fÂ" \KÒ|˜p+|xI ®àtKÿh U[Øj2Ý’4CÁ†[’f„¨Ò¦†:NÌïe€aœ$ Ÿ-óQ hÞð‚•Ë‘ÕÀ¨…C¬ñfâ똧%*×jO@ÿ8„"ó:aÚ>Ϙ“Ú]|ûíÅó}ÞuÍó_¶›ãÅó7÷ïŽþ#ÙÅó‡3Í󷯿ñêíßþ±Yn7‡ízq\|ó×Jî/üŸºÃr¿Ú·ûÆFåá5¯ö‡ã·‹}#ÜÅó‹àÃÛÕõñöÐ8=þLL¯W›iýÈwßšý¾¸éÏÜÞ“ú‚>ï;ºC)ñ«]]šÿÿ µ£¿RÝðWª+¸R6÷WéÇÿxŠNAæyØ^Ó_ûq”'îÉ2(zfa{;\%ëí J‡|dÊG™‰¬ñá!Ÿ6Ãg‚VÕ •6à3(ñ‘↳ qVœå„³¬á,Cœeg9á,j8‹g™ÁYL8‹Î"ÄYfp΢†3qœù„3¯áÌCœEg>áÌk8ógžÁ™O8³Î,Ä™gpfά†3 qæœÙ„3«áÂÌ20?TZ†L2O³<¿0Âôå⮣:úÕOÛå7oŽ‹ýñ²JêW¯ßožý°8.oÿ¹}w N‹»KÊK“Ï^_/·Ï–ëÅáBvá3vÙ˜€pµ]‚f½îÖ—8Må§»Åòµ-ãù‹ÕÝê8³çÔò?æXÔ顲Èë5‚äjó3œ?“rYêëûñÛÿr¿YW´Ã½Ävüaú§ín±âÊÍñ9mãœK¦‡ùØ,ٷͦB*°ç·ûõqµÜî»Ii[šœÉrîB//í7Ý~µ]Æu›C¨d^ N@/W–gõ˜««ƒ8z³Ù~š1™ñX„nÙ / `´¸¹Ùw7‹c4X¢=³õY0Þí^¿üû¡ë®Ij˜×ÓøÕ\Ë»îx»õä6Cþí@…yW™/³åm¸,4_ºìÌÕ÷/ÿ}u·:èà7cÆU6~£ÏgV€ïaå5eŸ½'‹º«RÅxЋåMy¿Ýßݯg0àyw‹ã~õçëEv½¯f*œzG¥§ÛÐ6 ãñ«lŰþp“âÿ$Ô!¹à¬qiR@FÒ°œ‘Å`myŽ<ŒÌå|HÖ– óWiϯ± L¼zóêÇ_—}[JÌåyÿœê ¤Ö}“ˆ«¼îº5û Ÿ?D¾®?ï÷Û½ïûº0w2:™3…¥‹=A“йZooVËÅ:窮;Ç/×¥àÐÕá~‡¨ŽÜ„ÁŒOxÛ&T'*‹JT²:Õ!»#¨Œ:i›¨m¡ÊõœÅ¤‚a¥úÈDËBl£²¶¢(è[êÌ9ý¸ïø¿ê÷ƒdí©dUmyÑ—||¤”»Õ#¥”¼1[^ nmͺ’šÜºÚ²‚s­É,ò<âößí» ™ƒhà™ñÓkKa~6,“Xð°ú¡ªò8fó™*¶¼¥Ë2-…¼br½ØíÖŸq€éð霕–@Zp^XYL QÚi%hÏ´€°²ìiÁuÁ„Rì n +Ö«Ã1!–â|Žžñ,R„Ï\‹I=Vh“ô,ó~%,·7¨ã±rÛ›j³‘ q±?èip:kMa.”]Ø{(«Š‹§ÝF~©nmV ñx†e\¯W{ˆs3Mi¸r¤mSêðDËÊÓá>«P^4‹Òún(/BÊtø¼:!ULoþ£Y༫'£Ô É(MJï“1ß~@êxÈ?æ‹Ü°ëCJ `]÷ˆIÁúÝ~K§ÕÃáÝbiÌÑ@MaiØËì š³O<Ž}bC[Þ>+˜ÈÎTCæÁ 9—]æi]˜q*«è£’NÏY`ÄLÌù~óÛïÿ8¬;<‚Šì°¼í®ï×4!âú8‘9Ï[è#Or+à5-8qPÊë|âü“E ”Ïñfw¤ö©¡ìñ}±Ýî€qT ýw̲8ÂÇH,x̯ ûB4›zCf¿Z&¶Eùr¼¥Žp»]ûøUÙ™êa@–s$¿ h¹¼Ð¹f`9”°œFçŒR÷Vñ³ “Ó€¸ÞWwÝöþˆq—/#'Ú y€[¼+ÍzæÃB‹BÅ~nOӢ຋õêÚ?/”ñ“–qÂwúÍÝ’†âý.uª‘q†ŒËª×þqM¾üËÒ³’CÏáSB«[)f ·ûÕ_ÀPµÙ™ññÙ\Ùø«Â˜¼`ŸâÙ%^­È%Ÿ¶ûÿÞÃ*î`ÍŒ¾`ú0}ªÿ»Œ gô‘[VÙ9è}­–Úì‚b=ÈêSØpð¦â,ÄÎQ÷HØÃTFí©@ÄIV¨U*~~<çqFIò<¥Zذ¼½ß|Ày.H“å¶Û/»ðÈZœ˜ªkfדּ.ɬ/G˜NL:ìŸ6Ý5UO¯2ý¦;~Bê™`l|º-Â@^oׯ»›Õá¸÷¾ îºáå&¼!”ýöñÖ%<³p Ôdžú ú‡Õîn9™ÖÍ»1¬ßŽO…ßïÞm ëãn¿ÚŸí»»-µ¸^ûáá0çÙ/¡bmë<²æö}S†½cïùs¾“6û×§\:Žw[” ÒŒöŸNæp‡Ó“§o¢=T´lÚôœÃ!k¿_SIU;SðÄCŒ¹ùå\ ¯îvëÕûÏ|±ß/>ã¡d8I¦ÒážçpÿŽp¶ˆÓìf®nÝœK ! è¾îÈ×_#Æ“ÀjsÝýù¬½lÆ‚¸^¿7è?·xŒQàûB‘mS}4T‰^ýÇr2Ñáˆ$¡ãwiýˆ G4Fl8bÈóé¡|’:Q³`èB†»³P1â2æVÿ¹E%hà#C¼8 –<¯–½| Ê«ÅŠhÄPb$Ä‚:ЇxqBGŪ:JF#0XЬb:Q#t”Âñ€‡' 'áá ½/-CkñѪ —»| Êë%$–‡~ oJ†^# Á£m¡ððDæp+LV1H¨òŠ… ÈÑb! §Â˜Vøâ1wágƒºÃ²*M•"Þ|¨‘ÃQlˆïCç_KþÚW6üN(m…)±+X$ÃÃ6«'r ¢L´ f‘ ã.FJŒPÃ>/t2ì“Ã$Ãȱ¢ÃÃÉ.&Ö)¦¯€¬+ÆÃ0Ò¤£Àx,&Á00– ô¨qJ%  ¼*¥+ú»Ë}E”f¥ìPŸ•N‡´N E¥ViH¡ª €,ñX§˜¾bª±Kd +›hÄý¦)¥Ò.ñ‹/Õ.ñ‹¯×N”õç—3òšúÚ%ˆúzïRýQÕÚT‹š›; 'f¡¬» üP)"¯¨Ž e¢>Ú‚–‰ú¾7¨$Ûû‘º/ü:±ÊW]Ñ:Åô5Ð9tâcß>L €6)5€6I‘”Ø-'Ø Mh#+úëË}Eé5`‡>Ãü5ºO(ZŽH8XŒ&¥ÖámüJí:yYuŠ…$A‘¶\Î˲–'A†¤åI0!gyKHYžîÍC]"âŠÖ@6q5Ò•›DßÌ]€¬™#‹\åIeBª¦]6R&$.«œàI…Cšò¤À!K¹››ˆ$m2Š};7)*ZUÔ;ÎÐj‚"D;G é)’ÔBvŠ$ꑜ"‰z dç¤HM!Ê¥%ÎÌjb"„˜C+9^‚™»AÚ¤ÿK@+ç€K@›ä‚J²¼§‰Ó’¨+ŠZ•Àhu¢8 MŠ'Žv|Î@Z=·F%]®…P&¢.ë­­ž'›´É†EùóèÞˆñFŽ7j¼Ñ_þý/FNº™Q®oF¨†×ûüŸ-nøÿá]ç¾a1jÌFìØˆ±šˆÿ;iÃ=ë½…Óß9MÒGtøˆÑá£wù¨aþ;ìáŸä¡ò(‚æðÑ>šÃG'ñQ Ñ–§²þÉA>F endstream endobj 1069 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.14)/Keywords() /CreationDate (D:20151014223305-04'00') /ModDate (D:20151014223305-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) kpathsea version 6.1.1) >> endobj 1060 0 obj << /Type /ObjStm /N 9 /First 79 /Length 318 /Filter /FlateDecode >> stream xÚ…RÉjÃ0½û+æØ[ËÈ„@in]ér*9˜DCb›Ú=ôï+Ë}¤v{1O£™·Œ%2v”‘ÈŒŸ¼’¤=P¤„í&åâ“€!vq*'ñǒ±Y²X$ém¹mé]dJâçp§$€Ð `z°NÒ»òPvaþ¢õ›®¬«Ë¹zFGG7['Ëå©T à~€Î`GËI)y,Äâ·F ´€m'…øDÉê%``1Igù˜Îlˆñ    8?WZÕ›«—®øè‚NSìü\Ú ,ŸáÝ`çòFStî¿v ÿen”cåÛПmEõõ«ñ”Þ]±¯wIú|´älÌž¤ŸÝ¾¬bÅ•‡âàÛáÍÇs?p_o}úÖzt‡¹ÆW×ÑårßvOÒç endstream endobj 1070 0 obj << /Type /XRef /Index [0 1071] /Size 1071 /W [1 3 1] /Root 1068 0 R /Info 1069 0 R /ID [<65D894835680F377EF05B98712D4D9F6> <65D894835680F377EF05B98712D4D9F6>] /Length 2442 /Filter /FlateDecode >> stream xÚ%ØIÈ^WÇñ{žÌC3´™çáÍÓ¤ÍØfN35éM›&M3'mÒ¤ X]ŠàNpà¬Ap!×… +q#ÈA7RqQp#",»).ÔEáÞÏ¿›/÷œçyî}îÿ÷=çžs»®ëþ7éºI—ºÕ_íŸtsÆÍŽLà’¾MŽæÀÜY”gômÔœóõ]Ñ·As,œ=ít¢o½æ"X¬o§¾ušK`©¾Wô­Õ|–黡oærX1Û—ã|«5W³úžÓ·Jó9X¥o—¾hÆ—×è;«ïY͸Ð:}·õÅ©âOÎþûÔVè[¡7¸Iß9}ñ7¢8[ô=Ô·Ls+l›t“ËôÅ-l‡³}õŒ¾¥š;avÁž‡Ý°Â!ØŸºny„ò¼{gO5<‚Çšû½çô‘ÖY)¨s¹¤ù¼ ‡á…cpNÀI8¯Ài8·áÜ„©›ûßÎ%Ÿh*ÉðÞ×|.ÀEx zxÞ€Ëð&\«ð\ƒ·á:Ü>+§Ûá¼)-}™/y'¼o‰bœw¥°HÙOûkqÉ»pîÃ;ð.<€‡ð<‚(lÜQÜåSå”BQâfßJÝâûÑg|£¢Ä¨0Ê|×}^÷Çw8ºäè–£^ƒ‹ `EÜeТ°³,OÝ¥ïÄ5ØYdT¦nó¶è[ FOáU!aal¡wá}1 ù‹!TŒ·Âñb„fcºð¹l—mÀÝBÖBÖÂÓÂÓÂÓÂÓÂÉÂɲöÁ~8,.ü+ü+ü+ü+ü+ü+ü+ü+¡í©ÔíøKÜ Ëy W‰Z‘«««³œKÝÁ/êµµ"øÂµB³B³B³B³B³óKÇ—Ã̉yã¡f8—4ŠP8T8T8T8TXRfe8r$.N©B©B©B©B©òØ…Ì\CÜÌS2˜#Ê“Ôþuˆž`Ì…y0@L¥ŸÆº–¦î›?Žß.³ãt%˜§&·é²Ô]ý{|å9pƒÓÕ`:œ®u¿3Ž6ÂúÔÝ:_6 N7ƒinº¶ÁKð2„M©»÷yü"β ¦ð<ì†=ð¼{aì‡JrΑ¦Gà(¼àPꯊk‡pNÁi0ì§g!Nu^ufóýŸöc0†äpîÀÅÔ}°"®q®‚Yez Þ†ëpâA½wS÷µŸÆoïÁ}xÞ…ðÃûð(#ÕG©ûúʘ×(9S S S S MÝ/¾ߣ@¦@Ž'Ø¢Ô}«ÆÏ€'gfDŽç%#r<%CoéçxFú’ÎÒÏ&Ú<«À÷þ§’~–~–~öÌÈbÌ;R÷ýMñ=qgqgqgqgqg!g!çÀ—|8”Ř÷¦î‡)ÎB©LLLlÒÏÇ{®%ežÅ˜ ’O¦î'[âñ©¤32ò«À¡|ŸŸŸãq"î,îyô©ûY,†²à³à³à³çQ–~¾¤ÉwAæYæYæYæYæ™ù> > ¾ ¹M@ÒMÒMÒMÒ-’¦Em›]–ýêS¨É¼É¼yú5I7I7I7!7!7ã¼ ¹ ¹­MÝ®Ç ÄØ¤ÚfCþÍ®è‹ÅŽô[,qvÀ–Ô}ø·øTÜm»Ú{Ì6ù¶©ûÓL|jÄ7#¾Q =/¨¸é7–4ƒ½ñ ñ IµíIÝÇwâ´h´h´h´h242424242´á©_$˜À˜ óR:÷íx2‡)Í»ÍŰ–Â3°VÀJxžƒU°ÖÀZXëal„M°¶ÀVˆÅìv°„½±f`LáyØ {àxöÂ>Øà ‚—àe8Gá}æ;: gàDJ‹7} ^ÓpΦ´æñé98¯Âp1¥™OâÓ× ‡Kð:¼ Wà*¼·árJû~?»oÃu¸7á܃;)~_¾ ±î¼ŸÒñÏ£ïw´ÀQ¬(ÞƒGðÞ‡'@³÷¤ò ò ò ò Îu©NUVcm˃ʃʃʃº ÈPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPÉPc?C†J†J†J†J†J†J†J†J†J†J†J†J†J†J†J†J†zQQùë  EåAåAw=«~R:u,ÖkSºòǨ$*KêE @¥@¥@¥@eI½ d¨d¨d¨d¨Ò¯Ò¯Ò¯Ò¯Ò¯Ò¯T©w@ð• õ>˜*ê||||||µqêýñ>Õa?<îúy`#Ñ/€…°ÃX ¶á½=g¿ì\û•ð,Ø÷«`5¬µ°ÖÃØ›`3l­° <z»˜ÞƽŸÛë~¼/B(p.¥K_ŠÛš¦ô v‹½Mko«Ú﫾þ ‚—àe8 Gà(˜z+€þœ„Sà]Aow×ÛY÷–y½ÍhïåEoé×_¬ÞV«·éê½Æè_›³þ2¼ Þ[ôWá-¸oÃu°Kèo‚ý[oý×ß»pîƒß¿ ÀËÞÖ¼·]ïmú÷á Ķ9´•þ{鱨‘þÛHéÒ¤?Hþ ýAúƒôéÒ¤?Hþ ýAúƒôéÒ¤?ˆ{ˆôw§t÷Lü¡ iòÛ}qă†X Än– S°v-Z ´â•E¼¨þk~éÒ¤?Hþ ýAúƒôéÒ?lJéƒ/ªF†Axƒb0ˆq ËA–ƒ,Y7RúÊïâ7Súåú8º•ÒGŸÅÑí”þ¼?Žî¤É¢ÅÑÝ4¹óó8º—&ß9G÷Óä£/;%3Jf”Ì(™QÕFUUmTµQÕÆxí¥jc¼œRµ1ÖMª6ªÚ¨j£ªª6ªÚ¨j£ªª6ªÚ¨j£ªª6ªÚ¨jcVû¹3 &0æÂ<˜ `ašüuÇì/>YÓý`Ê' endstream endobj startxref 187926 %%EOF BiocParallel/build/vignette.rds0000644000175100017510000000042712607610201017557 0ustar00biocbuildbiocbuild‹•ÑJÃ0†³¶nn »…<€ô”:z1Æ.¼ Y“•@–”“”âO¾š¶Ii½šÍ9çÏßïüùZ!„"GŠbׯkwÌÝ÷Ðé Zºúü ÁO]òªÉø±* ¡Št¯joÂ[eA³*·B+rÐäMè|GJÉeç›B{è n©˜*†ªw<‰Øj<&^±d§«"¶¾) ¡u§÷÷hTÇzøï¶ !ûù~«N@·¹þ_wÒògþöFÑ371÷b²’ÃAØaˆwÙÆ·³½o/¹b&¬ÿàßµ7O-A×iXv׿ýqGÓ4—¿‰rIMHÄ£–¦îçö¹—_µœùgBiocParallel/inst/0000755000175100017510000000000012607610201015073 5ustar00biocbuildbiocbuildBiocParallel/inst/NEWS.Rd0000644000175100017510000000417112607264437016161 0ustar00biocbuildbiocbuild\name{BiocParallel-NEWS} \title{BiocParallel News} \section{CHANGES IN VERSION 0.5.5}{ \subsection{NEW FEATURES}{ \itemize{ \item \code{multicoreWorkers()} determines the number of workers based on operating system (Windows: 1), user preference (via the global option \code{options(mc.cores=...)}), or system capability (\code{detectCores()}). \item \code{bpparam()} selects a default \code{BiocParallelParam}, from global options or, if that fails, the most recently \code{registered()} back-end. } } \subsection{SIGNIFICANT USER-VISIBLE CHANGES}{ \itemize{ \item Rename argument controlling resumption on error as \code{BPRESUME} \item Default to parallel back-end (multicore on non-Windows; snow on Windows). } } \subsection{BUG FIXES}{ \itemize{ \item bpvec,ANY,MulticoreParam-method with fewer tasks than cores evaluates only the cores for which tasks are defined. } } } \section{CHANGES IN VERSION 0.5.2}{ \subsection{NEW FEATURES}{ \itemize{ \item \code{mclapply()}, \code{pvec()} require only \code{length}, \code{[}, and (for \code{mclapply}) \code{[[}. \item \code{pvectorize()} creates a parallel version of its vectorized function argument. \item \code{MulticoreParam}, \code{SnowParam}, \code{DoparParam} (foreach-derived), \code{SerialParam} to parameterize back-ends. \item \code{bplapply}, \code{bpvec} as parallel evaluation models. \item \code{bpstart}, \code{bpstop}, \code{bpisup} for back-end management. \item \code{bpvec} has a new argument \code{AGGREGATE}, a function to specify how results are to be combined. \item Support for BatchJobs back-end added, via GSOC Michel Lang. } } \subsection{SIGNIFICANT USER-VISIBLE CHANGES}{ \itemize{ \item \code{BPPARM} is now used as the argument name for passing BiocParallelParam instances to functions. \item \code{bplapply} and \code{bpvec} now only dispatch on \code{X} and \code{BPPARAM}. } } %% \subsection{BUG FIXES}{} } BiocParallel/inst/RMPInode.sh0000755000175100017510000000020112607264442017054 0ustar00biocbuildbiocbuild#! /bin/sh ${RPROG:-R} --vanilla < ${OUT:-/dev/null} 2>&1 library(Rmpi) library(snow) BiocParallel::bprunMPIslave() EOF BiocParallel/inst/RSOCKnode.sh0000755000175100017510000000037512607264442017202 0ustar00biocbuildbiocbuild#! /bin/sh # the & for backgrounding works in bash--does it work in other sh variants? ${RPROG:-R} --vanilla < ${OUT:-/dev/null} 2>&1 & library(snow) options(timeout=getClusterOption("timeout")) BiocParallel::bpslaveLoop(makeSOCKmaster()) EOF BiocParallel/inst/doc/0000755000175100017510000000000012607610201015640 5ustar00biocbuildbiocbuildBiocParallel/inst/doc/Errors_Logs_And_Debugging.Rnw0000644000175100017510000005426412607610201023340 0ustar00biocbuildbiocbuild%\VignetteIndexEntry{Errors, Logs and Debugging} %\VignetteKeywords{parallel, Infrastructure} %\VignettePackage{BiocParallel} %\VignetteEngine{knitr::knitr} \documentclass{article} <>= BiocStyle::latex() @ \newcommand{\BiocParallel}{\Biocpkg{BiocParallel}} \title{Errors, Logs and Debugging in \BiocParallel} \author{Valerie Obenchain and Martin Morgan} \date{Edited: May 13, 2015; Compiled: \today} \begin{document} \maketitle \tableofcontents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% This vignette is part of the \BiocParallel{} package and focuses on error handling and logging. A section at the end demonstrates how the two can be used together as part of an effective debugging routine. \BiocParallel{} provides a unified interface to the parallel infrastructure in several packages including \CRANpkg{snow}, \CRANpkg{parallel}, \CRANpkg{BatchJobs} and \CRANpkg{foreach}. When implementing error handling in \BiocParallel{} the primary goals were to enable the return of partial results when an error is thrown (vs just the error) and to establish logging on the workers. In cases where error handling existed, such as \CRANpkg{BatchJobs} and \CRANpkg{foreach}, those behaviors were preserved. Clusters created with \CRANpkg{snow} and \CRANpkg{parallel} now have flexible error handling and logging available through \Rcode{SnowParam} and \Rcode{MulticoreParam} objects. In this document the term ``job'' is used to describe a single call to a bp*apply function (e.g., the \Rcode{X} in \Rcode{bplapply}). A ``job'' consists of one or more ``tasks'', where each ``task'' is run separately on a worker. The \Rpackage{BiocParallel} package is available at bioconductor.org and can be downloaded via \Rcode{biocLite}: <>= source("http://bioconductor.org/biocLite.R") biocLite("BiocParallel") @ Load the package: <>= library(BiocParallel) @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Error Handling} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsection{Catching errors} By default, \BiocParallel{} attempts all computations and returns any warnings and errors along with successful results. The \Rcode{stop.on.error} field controls if the job is terminated as soon as one task throws an error. This is useful when debugging or when running large jobs (many tasks) and you want to be notified of an error before all runs complete. \Rcode{stop.on.error} is \Rcode{FALSE} by default. <>= param <- SnowParam() param @ The field can be set when constructing the param or modified with the \Rcode{bpstopOnError} accessor. <>= param <- SnowParam(2, stop.on.error = TRUE) param bpstopOnError(param) <- FALSE @ In this example \Rcode{X} is length 6. By default, the elements of \Rcode{X} are divided as evenly as possible over the number of workers and run in chunks. To more clearly demonstrate the affect of \Rcode{stop.on.error} the number of tasks is set equal to the length of \Rcode{X}. This forces each element of \Rcode{X} to be executed separately (6 tasks) vs chunked. <>= X <- list(1, 2, "3", 4, 5, 6) param <- SnowParam(3, tasks = length(X), stop.on.error = TRUE) @ The output list contains results for tasks 1 and 2 and an error for task 3. Tasks 4, 5, and 6 are not attempted. \begin{verbatim} bplapply(X, sqrt, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## ERROR [2015-08-21 14:08:52] non-numeric argument to mathematical function ## error in task 3 ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{verbatim} Next we look at an example where the elements of \Rcode{X} are grouped instead of run separately. The default value for \Rcode{tasks} is 0 which means 'X' is split as evenly as possible across the number of workers. There are 3 workers so the first task consists of list(1, 2), the second is list("3", 4) and the third is list(5, 6). <>= X <- list(1, 2, "3", 4, 5, 6) param <- SnowParam(3, stop.on.error = TRUE) @ To simulate a longer running computation sleep time is added to 'FUN'. The sleep forces task 2 to finish before task 3. <>= FUN <- function(i) { Sys.sleep(i); sqrt(i) } @ The output shows an error in task 2 (vs 3 in the previous example) and a result for '4' is included because it was part of the second task. \begin{verbatim} bplapply(X, FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## ERROR [2015-08-21 14:10:28] non-numeric argument to mathematical function ## error in task 2 ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[4]] ## [1] 2 \end{verbatim} Side Note: Results are collected from workers as they finish which is not necessarily the same order in which they were loaded. Depending on how tasks are divided among workers it is possible that the task with an error completes after all others. In that situation the output will includes all results along with the error message and it may appear that \Rcode{stop.on.error} is not doing much good. This is simply a heads up that the usefulness of \Rcode{stop.on.error} may vary with run time and distribution of tasks over workers. \subsection{Identify failures with \Rcode{bpok()}} The \Rcode{bpok()} function is a quick way to determine which (if any) tasks failed. In this example the second element fails. <>= res <- bplapply(list(1, "2", 3), sqrt) res @ \Rcode{bpok} returns TRUE if the task was successful. <>= bpok(res) @ Once errors are identified with \Rcode{bpok} the traceback can be retrieved with the \Rcode{attr} function. This is possible because errors are returned as \Rcode{condition} objects with the traceback as an attribute. <>= tail(attr(res[[which(!bpok(res))]], "traceback")) @ \subsection{Rerun failed tasks with \Rcode{BPREDO}} Tasks can fail due to hardware problems or bugs in the input data. The \BiocParallel{} functions support a \Rcode{BPREDO} (re-do) argument for recomputing only the tasks that failed. A list of partial results and errors is supplied to \Rcode{BPREDO} in a second call to the function. The failed elements are identified, recomputed and inserted into the original results. The bug in this example is the second element of 'X' which is a character when it should be numeric. \begin{verbatim} ## X <- list(1, "2", 3) ## res <- bplapply(X, sqrt) ## res ## ## [[1]] ## [1] 1 ## ## [[2]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[3]] ## [1] 1.732051 \end{verbatim} First fix the input data. <>= X.redo <- list(1, 2, 3) @ Repeat the call to \Rcode{bplapply} this time supplying the partial results as \Rcode{BPREDO}. \begin{verbatim} ## bplapply(X.redo, sqrt, BPREDO = res) ## ## Resuming previous calculation ... ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## [1] 1.732051 \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Logging} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NOTE: Logging as described in this section is supported for SnowParam, MulticoreParam and SerialParam. \subsection{Parameters} Logging in \BiocParallel{} is controlled by 3 fields in the \Rcode{BiocParallelParam}: \begin{verbatim} log: TRUE or FALSE logdir: location to write log file threshold: one of "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL" \end{verbatim} When \Rcode{log = TRUE} the \CRANpkg{futile.logger} package is loaded on each worker. \BiocParallel{} uses a custom script on the workers to collect log messages as well as additional statistics such as gc, runtime and node information. Output to stderr and stdout is also captured. By default \Rcode{log} is FALSE and \Rcode{threshold} is {\it INFO}. <>= param <- SnowParam() param @ Turn logging on and set the threshold to {\it TRACE}. <>= bplog(param) <- TRUE bpthreshold(param) <- "TRACE" param @ \subsection{Setting a threshold} All thresholds defined in \CRANpkg{futile.logger} are supported: {\it FATAL}, {\it ERROR}, {\it WARN}, {\it INFO}, {\it DEBUG} and {\it TRACE}. All messages greater than or equal to the severity of the threshold are shown. For example, a threshold of {\it INFO} will print all messages tagged as {\it FATAL}, {\it ERROR}, {\it WARN} and {\it INFO}. Because the default threshold is {\it INFO} it catches the {\it ERROR}-level message thrown when attempting the square root of a character ("2"). <>= bplapply(list(1, "2", 3), sqrt, BPPARAM = param) @ All user-supplied messages written in the \CRANpkg{futile.logger} syntax are also captured. This function performs argument checking and includes a couple of {\it WARN} and {\it DEBUG}-level messages. <>= FUN <- function(i) { flog.debug(paste0("value of 'i' = ", i)) if (!length(i)) { flog.warn("'i' is missing") NA } else if (!is(i, "numeric")) { flog.debug("coercing 'i' to numeric") as.numeric(i) } else { i } } @ Turn logging on and set the threshold to {\it WARN}. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "WARN") bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## loading futile.logger on workers ## ############### LOG OUTPUT ############### ## Task: 1 ## Node: 1 ## Timestamp: 2015-08-21 14:20:41 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.002 0.001 0.004 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 324081 17.4 592000 31.7 341266 18.3 ## Vcells 431677 3.3 1023718 7.9 497048 3.8 ## Log messages: ## ## stderr and stdout: ## character(0) ## ############### LOG OUTPUT ############### ## Task: 2 ## Node: 2 ## Timestamp: 2015-08-21 14:20:41 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.007 0.000 0.007 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325664 17.4 592000 31.7 367737 19.7 ## Vcells 434331 3.4 1023718 7.9 519642 4.0 ## Log messages: ## WARN [2015-08-21 14:20:41] 'i' is missing ## ## stderr and stdout: ## character(0) ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 2 ## ## [[3]] ## [1] NA \end{verbatim} Changing the threshold to {\it DEBUG} catches both {\it WARN} and {\it DEBUG} messages. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "DEBUG") bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## loading futile.logger on workers ## ############### LOG OUTPUT ############### ## Task: 1 ## Node: 1 ## Timestamp: 2015-08-21 14:21:40 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.005 0.000 0.005 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325633 17.4 592000 31.7 352929 18.9 ## Vcells 434309 3.4 1023718 7.9 515223 4.0 ## Log messages: ## DEBUG [2015-08-21 14:21:40] value of 'i' = 1 ## ## stderr and stdout: ## character(0) ## ############### LOG OUTPUT ############### ## Task: 2 ## Node: 2 ## Timestamp: 2015-08-21 14:21:40 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.01 0.00 0.01 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325668 17.4 592000 31.7 394333 21.1 ## Vcells 434358 3.4 1023718 7.9 524369 4.1 ## Log messages: ## DEBUG [2015-08-21 14:21:40] value of 'i' = 2 ## DEBUG [2015-08-21 14:21:40] coercing 'i' to numeric ## DEBUG [2015-08-21 14:21:40] value of 'i' = ## WARN [2015-08-21 14:21:40] 'i' is missing ## ## stderr and stdout: ## character(0) ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 2 ## ## [[3]] ## [1] NA \end{verbatim} \subsection{Log files} When \Rcode{log == TRUE}, log messages are written to the console by default. If \Rcode{logdir} is given the output is written out to files, one per task. File names are prefixed with the name in \Rcode{bpjobname(BPPARAM)}; default is 'BPJOB'. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "DEBUG", logdir = tempdir()) res <- bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## loading futile.logger on workers list.files(bplogdir(param)) ## [1] "BPJOB.task1.log" "BPJOB.task2.log" \end{verbatim} Read in BPJOB.task2.log: \begin{verbatim} readLines(paste0(bplogdir(param), "/BPJOB.task2.log")) ## [1] "############### LOG OUTPUT ###############" ## [2] "Task: 2" ## [3] "Node: 2" ## [4] "Timestamp: 2015-07-08 09:03:59" ## [5] "Success: TRUE" ## [6] "Task duration: " ## [7] " user system elapsed " ## [8] " 0.009 0.000 0.011 " ## [9] "Memory use (gc): " ## [10] " used (Mb) gc trigger (Mb) max used (Mb)" ## [11] "Ncells 325664 17.4 592000 31.7 393522 21.1" ## [12] "Vcells 436181 3.4 1023718 7.9 530425 4.1" ## [13] "Log messages:" ## [14] "DEBUG [2015-07-08 09:03:59] value of 'i': 2" ## [15] "INFO [2015-07-08 09:03:59] coercing to numeric" ## [16] "DEBUG [2015-07-08 09:03:59] value of 'i': " ## [17] "WARN [2015-07-08 09:03:59] 'i' is missing" ## [18] "" ## [19] "stderr and stdout:" ## [20] "character(0)" \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Worker timeout} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NOTE: \Rcode{timeout} is supported for SnowParam and MulticoreParam. For long running jobs or untested code it can be useful to set a time limit. The \Rcode{timeout} field is the time, in seconds, allowed for each worker to complete a task; default is \Rcode{Inf}. If the task takes longer than \Rcode{timeout} a timeout error is returned. Time can be changed during param construction with the \Rcode{timeout} arg, <>= param <- SnowParam(timeout = 20) param @ or with the \Rcode{bptimeout} setter: <>= bptimeout(param) <- 2 param @ \begin{verbatim} fun <- function(i) { Sys.sleep(i) i } bplapply(1:3, fun, BPPARAM = param) ## starting worker for localhost:11747 ## starting worker for localhost:11747 ## starting worker for localhost:11747 ## [[1]] ## [1] 1 ## ## [[2]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Debugging} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Effective debugging strategies vary by problem and often involve a combination of error handling and logging techniques. In general, when debugging \R{}-generated errors the traceback is often the best place to start followed by adding debug messages to the worker function. When trouble shooting unexpected behavior (i.e., not a formal error or warning) adding debug messages or switching to \Rcode{SerialParam} are good approaches. Below is an overview of these different strategies. \subsection{Accessing the traceback} The traceback is a good place to start when tracking down \R{}-generated errors. Because the function is executed on the workers it's not accessible for interactive debugging with functions such as \Rcode{trace} or \Rcode{debug}. The traceback provides a snapshot of the state of the worker at the time the error was thrown. This function takes the square root of the absolute value of a vector. <>= fun1 <- function(x) { v <- abs(x) sapply(1:length(v), function(i) sqrt(v[i])) } @ Calling ``fun1'' with a character throws an error: \begin{verbatim} res <- bplapply(list(c(1,3), 5, "6"), fun1) res ## [[1]] ## [1] 1.000000 1.732051 ## ## [[2]] ## [1] 2.236068 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{vebatim} Identify which elements failed with \Rcode{bpok}: \begin{verbatim} bpok(res) ## [1] TRUE TRUE FALSE \end{verbatim} The error (i.e., third element of ``res'') is a \Rcode{condition} object: \begin{verbatim} is(res[[3]], "condition") ## [1] TRUE \end{verbatim} The traceback is an attribute of the \Rcode{condition} and can be accessed with the \Rcode{attr} function. \begin{verbatim} noquote(tail(attr(res[[3]], "traceback"))) ## [1] call <- sapply(sys.calls(), deparse) ## [2] e <- structure(e, class = c("remote-error", "condition"), ## [3] traceback = capture.output(traceback(call))) ## [4] invokeRestart("abort", e) ## [5] }, "non-numeric argument to mathematical function", quote(abs(x))) ## [6] 1: h(simpleError(msg, call)) \end{verbatim} \subsection{Adding debug messages} When a \Rcode{numeric()} is passed to ``fun1'' no formal error is thrown but the length of the second list element is 2 when it should be 1. \begin{verbatim} bplapply(list(c(1,3), numeric(), 6), fun1) ## [[1]] ## [1] 1.000000 1.732051 ## ## [[2]] ## [[2]][[1]] ## [1] NA ## ## [[2]][[2]] ## numeric(0) ## ## [[3]] ## [1] 2.44949 \end{verbatim} Without a formal error we have no traceback so we'll add a few debug messages. The \CRANpkg{futile.logger} syntax tags messages with different levels of severity. A message created with \Rcode{flog.debug} will only print if the threshold is {\it DEBUG} or lower. So in this case it will catch both INFO and DEBUG messages. ``fun2'' has debug statements that show the value of `x', length of `v' and the index `i'. <>= fun2 <- function(x) { v <- abs(x) flog.debug( paste0("'x' = ", paste(x, collapse=","), ": length(v) = ", length(v)) ) sapply(1:length(v), function(i) { flog.info(paste0("'i' = ", i)) sqrt(v[i]) }) } @ Create a param that logs at a threshold level of {\it DEBUG}. <>= param <- SnowParam(3, log = TRUE, threshold = "DEBUG") @ The debug messages reveal the problem occurs when `x' is \Rcode{numeric()}. The index for \Rcode{sapply} is along `v' which in this case has length 0. This forces `i' to take values of `1' and `0' giving an output of length 2 for the second element (i.e., \Rcode{NA} and \Rcode{numeric(0)}). <>= res <- bplapply(list(c(1,3), numeric(), 6), fun2, BPPARAM = param) res @ ``fun2'' can be fixed by using \Rcode{seq\_along(v)} to create the index instead of \Rcode{1:length(v)}. \subsection{Local debugging with \Rcode{SerialParam}} Errors that occur on parallel workers can be difficult to debug. Often the traceback sent back from the workers is too much to parse or not informative. We are also limited in that our interactive strategies of \Rcode{browser} and \Rcode{trace} are not available. One option for further debugging is to run the code in serial with \Rcode{SerialParam}. This removes the ``parallel'' component and is the same as running a straight \Rcode{*apply} function. This approach may not help if the problem was hardware related but can be very useful when the bug is in the \R{} code. We use the now familiar square root example with a bug in the second element of \Rcode{X}. <>= res <- bplapply(list(1, "2", 3), sqrt, BPPARAM = SnowParam(3)) res @ \Rcode{sqrt} is an internal function. The problem is likely with our data going into the function and not the \Rcode{sqrt} function itself. We can write a small wrapper around \Rcode{sqrt} so we can see the input. <>= fun3 <- function(i) sqrt(i) @ Debug the new function: \begin{verbatim} debug(fun3) \end{verbatim} We want to recompute only elements that failed and for that we use the \Rcode{BPREDO} argument. The BPPARAM has been changed to \Rcode{SerialParam} so the job is run in the local workspace in serial. \begin{verbatim} > bplapply(list(1, "2", 3), fun3, BPREDO = res, BPPARAM = SerialParam()) Resuming previous calculation ... debugging in: FUN(...) debug: sqrt(i) Browse[2]> objects() [1] "i" Browse[2]> i [1] "2" Browse[2]> \end{verbatim} The local browsing allowed us to see the problem input was the character "2". %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{\Rcode{sessionInfo()}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <>= toLatex(sessionInfo()) @ \end{document} BiocParallel/inst/doc/Errors_Logs_And_Debugging.pdf0000644000175100017510000043625512607610201023347 0ustar00biocbuildbiocbuild%PDF-1.5 %ÐÔÅØ 92 0 obj << /Length 2424 /Filter /FlateDecode >> stream xÚíZKsÛ8¾ûW°r¢·"„xdö”d2³Ie*ÙÄ53UÉ(’S¤—¤ìÉ¿ßn<(‘–Ø–7žÚl Ðh »¿~@Q° ¢à—£èŠçó“£'?Ó8 Š0*Ep²¨L‰ŠUÇ)á, NŠàcø²m›c‡m÷øxÆ)ß4ËßD˜Õ…íúIÏ7ËeY/m³¬ÿý{«…·âÛè,°ž’4f1rî9°,ê òMg©ŒÂWuš ›¼/iØÔ#%æ8¡\zÕ¢w8Ñ`æ‰Í¨uGÈ,+Ɔ€c¬ÂNUh-×qÃîfCrçfB%„¦älLÂ-@à hÄXø"ëó•µ^ÎC°äþ¬‚wc6?ÎÒ„‡äx&£èp‘¦§ùû¶99]*•ò¿“±ÀÔ‰¼™“÷«̺\|±ò^deµi5b:áEÙ¯pñ'?sº£B(ñhPÎùYsú)’üÑ)ðîjOðÕÏzXçþût€B€TDøô‰*p§ ïu»©­ä`òºÛì³î´³r•NÒ)9H÷ù»÷/z{­6ÄÀŠøŽÚðwTq5˜8ÍU cWÅ­«‚ènù5×$ïÛ5ñÁ5A”—„6ðÊֺח½—?üÈ÷ÐKyH{¹{õA÷½‹H ϰ0Ô¯ÀK­šª¸ÈÅÖï`×ÞïÌXÙ~Ѝ¨ô%«V"ý!¶ïgÜé}8AR!ÆNGX§ó;&G!Ea{НÚ%J}¹ÖͦŸ8£D‘Xn³¶èni›£fÙRÞÁ¶¶ek u‡ˆS:†E9¸Ãgy®»nÆ~¥4¶Y®çY~:•¦àñÿyLug{ˆT<Èø h(o÷¬(†ô»@¥³â]ƒ¬³åep”4ýgwª )»¡n]Üñ ‚×<«v»l÷ÊD[ åκ-³ê]Ñïu™U,IÓï‘Y=<Áïõ½dQ)ä³Ñ$Š÷ÉÔz>'¼©_Õ‹æŠÊhï¼·9hÝwð~»u_t64º¦€º¯Ì c ¿M-ØÞDÈËU]&9Q‘+ÖŸ¬ÊÔ-fáy¹¬!=жå{Ï2LÛÞ¶š…}¢‡¼Ëyq6*x@Ú,Ç7‰¹‰09jrÅMÄhgŽ€{gè±qòÒmÆ\6àËÂÑÞtÚíÎÞ<µ¹I°–ŒÍ•¯%ïΧaeÓx0Šä÷ÌvvXÙÕ JO+™öÛƒ²ôëÂÞgP¥ˆŒùÞ ½nêÂ^»âÐÊT‰/|ŠæÛ |6¶#Ïjû27Óa{…›Ð,5Ìnm+sÕÈ­P±…j¾ºŠ•†äã~Îõ^ˆÅ"6„e­Éá”ñ^‘”ó»h¸þAÌ”æ¼,ðD%£˜îâcS—˜áa³¬{Ý. ̳;qÏ•éˆÌQ)¿¶é)ëE›¬Àx7­öTì³ÓçºÍ*ÛØQÃÎË«M1D¾‡87žD„Gö»ÚhñÅuǸ*eêg<>/‰¹¡ŒðÛ„Æÿ˜ß7àCÁ}‹Iö9^ʼnæÝu<‰d·*ŸÕÅÁ.%\&žôÂbŽÎòÕWΈî–ûgáï+pÃÒ°\ŸUzw¯ gÌ û[a zÀ3œQpCŠƒw…o–Äž„ÅL`ÓÚp¹¶&øÅv.›¬êì«BݺÑhºfóu6¯´Ýù@ªÕ3  šÀ/²¹}Ž,ÛµYš0>´ºÛT}g+s›çædî¹sêH¢tƒû•í¾¨m?F'çîÛçM×ûQÚ~¨˜Æ-PØo¸E³R×ÃËne›Î+Ù1M="á)©Ð’<µÖa€)0±Sò̸C·³Ö¸öi qwsb¢RØ¡ÿ*»^x‘.79òÆSt9 R`Mû&KVdû#‡Ã2 Ý·nbÈt væ°úUÓi{Z΋¯²óÒìl¿‘¡ÑtlY»ÐnÏu²Œyø¢UÒ~|œô&Ñø”è0ûf¢µ(½‘Ã@§÷"µ9‘Ð5²çoö=œÄÉ C¿ä¬0ˆ;7‘ ‚ h äZÌ}þŽA˜ñƒ5˜PÊÅ_[ÓÄÞó¬¬2GA`Ø,÷e«,¦? ^âCÝ\ ¹ê:Á}¦br¶ÓD T5¶ù+àX™7­¾Š¤Š‰7óÏ vÄÂ'À™kG»óà­ðq6º%ÿQ»Ý®íÛ'ÊÅçfþȶì\îƒWÙ8jºËÛrá*fî.à5»Êuå îñ<7h~öìì¬úb[‹MíBuÀ±&K‚¦˜ yÍäülV ç÷Çž#Kà0”`½ë¥a\l/ú+ËÒeR‚BÐ2,†NSð³ +•…ß]…ß9IL —4vÁ¾ï›Úi®ýý‰}_;Ür·@¦GÅ7)Íi÷è±»©^9ìµÏ,²ûÁÝ©[´t‰ËpñÝio†½®¾xœ%¸bÍdv\|êó9ª—Ê$’ŠUüMqÇÔf8áœíÍ‘+¿“‘¹BÓ¥Ks¿RScoÙ'îWkóß—žq´LãêªÉ Ÿ¨—Ù> H$I·KçoÊ^Umž:„åBÁèaÐõr÷{¬Þ¤à\ƒÑÃŒ¾Ü}ãÑãÒ7¿Lf˜ù•vËH™²Â³8¡A«ƒÖ2nÈÓÍö{Ÿ£â„úÿ§±;íô¿½ÉÜUi(e„¥Î¾»fÓæúVBÅ—ÝÿÃØÝÿXq5`Ýj š¢¯è‡HbGŽ»,ýG«¾?{úä ª±30œvùÄë5yÿè°Gz«5¾U ÓÀy×fÿÖ„Í1d@P}¸bºG¼ØCF¦P­$µâ~˜>*Ú‰]s+\öEw&b’ÐrXEb:þqíMÿV-4< endstream endobj 108 0 obj << /Length 2087 /Filter /FlateDecode >> stream xÚíZÝsÛ6÷_Ái_¨ %>IêzqÏI“öbŸ£›éŒëJ‚$^(RáG\ÿ÷]`AêÊj+µÏñøEÀbw±~»B@¸ž¬ÊÙfÝ}.Þ4yoŽN†G?¼¦Ò‹I¬˜ò†SO*¢bî…B‘@xÉw韖eÑc‘_Vǽ>çÂÿµGýbVa%É'¦ÀýéQ3›¥ù «iÞ»¾; H Ê`jÈ(„o¨‚0DÙv7|?¼ælM(ʸ‘­@'iÑëƒ@ãs#VbeK²Lg8£ÓmK1®8áqÜò`Nº{Y ˜Å¦¾ö±½o“ïÝûtxô鈂tG=ÉIÖF{ãÅ‘¡Ë@3JB©WjozôŸ{Ët?}²wÈÍ’sÉÍo¬°ï6ñÂù(§;|4  ×3KGeRÞ´ª¦°þÛõ]ÿ…ž0Íï ÀýÆç zÔé#xÒ!{ûÐÇb `¦˜±uàõ… Îm›>¥A€g§~ ›]…þÏp dfëSlº2®•‚¯”¸òåUàM íQ–øÚö\x"Ž`³É3ïƒñì¯ÒÃzQ…’XJ¶æ6  ó¢>„:~JêñO/PH·úUûÎ0ƒ=Jw.Ýôú"ý‰ž& œ‘Y}ü÷2 ¿ê”‚°ªŽER×z±¬+”›‚òÇÅbÙÔIyÛdNxÓTêº)WÔ¤^÷Xè$ÈÁ~RÝ gI{{´ÆÈvdZÏ‘X5ã±®ªi“a½ÔU“Õ1Úx} _Q(ØÅDñ‡smZ·Ž!º‹¢ª‹%)rbd(±÷†AB8_#Þöþ= BgFl€òº,2#4¥~:Ej “ZÂÿŠRÒʵ@ƒÙÔ_˜Ü~,¬'Ø=q½*\µ"ÇjâØ¹v\’ê#’ê9šíÚLr¤wæ$½¾ •?„yæi+¦ëÜTM ´ë¹ÎÑŒ1#’…›Vœl^ÚÈ/v;ÐRË&Ï»..õLc/0D… æh\X¯05£IeOÇM”pcF›Â:o^»!~GÖFŽ^Ô©]7¾˜â7q²uf7f QöŽÅõÑnˆqqÃô¿Ït­Éo‚ýMCs~Gw¢„Á¹SZíàô^¿úõÃé6,&"ì¼rdTpFXm§Æµ`{oÂø pºmß0ß>ˆ¹+tø"ˆ‘"",v¶T±8hUÁ2·°Ô͘¾dÒÿ±Ðwln–yq}~°B÷Ädã°;ÏlœË¯ÒìazoŸWßß³+1Î’ªôn¯Ê¶Rf8ã–p®çÉBNÎßüÇŽ–×EùQ—Õ@u{΂U=]袩oóiG»xÿ¦Òz2èiÕ,Ýñ·GЬ˜a¿ÿ9`ƒy‘Moß¿>ëÈÐq’–ƒ÷¯þ‚¡9ÂÏrƒ^Ë-ÆË²˜ëj””w !ÊŽIÕ¶ñ›ªÖ%Vꛥnâì§_œÿ<|,°·rBù”rW¸C@öbl¯Øµû˜û•®·á@¥ª.›qÝa„zînï¥C¦‹Ûðba `åµÛ]8DزØïâ˜0Þ¡àõüË 9±³EOOÿîäÈëêd Z׫Ó4&*ˆ_®Î¯»:3Z¤Lì*dërÛDœƒ=´LJMÀÝ•²keì»E\-É-ìÿ€Ù ÿùÀëb'^ü÷ô|ìš=4cÏš¿¼#2SwGfòÞÈì)ä¿·]çèyè Âwñc\¯÷<õ:'z‚YûýHý­ÜT:6©>NC_ÿ‘˜üÕ¬¬$‰ã.ÙôÛx±µt•eé|fA80W¤×<²‰mS·‰m“Õ†ZìP¾‘!Ó ×ŽA1Ý! U€Ù½³4I—¸Ž“ôs:±!L–¸iôgg7XNœ1–6¤(*“%«ÒQæÆŸÍ.G»9‘óf1²±%ļ"U˜’Äác϶W˜=e"&‚n¥O1­©lŠ ©ûŽçMþ±ûIk†½Hø6,V9IAV¦QU«Š2)¾… §’Z#E†B×ãk;­Ì#ãwNS¢hgòn"g›m£\ÎU¹œ®SÓ}1„‚þÔ$™ëV¬$·¦ƒÈŽpá Óu~Æ¿ Œ ${=F’•®9 qc€Í]îB>—(NÆslqîºgjÊ@à0Úï­RvÂíÈ\»ÌôzÜÔmîºÒm<\ëìf•5W(×FÊœûŸÛµñ$3LO¾…¨•qXd&¶ÃV’@É—¨Õ3çH±5Ïzk–VõsVéÓ Vï pžhÈM !"ðaÏMÒJƒïøwÏb%ijÐB> -ÔK¦ã%éùH÷IOüO6Ùy_Œ‚Ç#x×oæ$xIK?Ï´ôÿ-¤¶þ­-šzÙ¸c-þnÿ­“4wQ¯{H·¯=ÐÂâö-Ö>±š´ .¢mßžauºþâ _®™7I#!1éÑN"|qŒÍòxƒ;÷]ô›¬?ÕÊ §—{¤Ø…¾í›ÐÎRûÞk–Y²\f7vKcr·úTÖ®xr~þêâÕ¿{ίíg#×é,ÓͼqU'%þ×mj˜wÇò´p…¬'Ù¼¨ê¥BÐ}Yè§Ìíôââì‹—, ²D}F‘@Å ˆ’]a5/ò~Þ,t™Ž‘”³Ó,ö&)ð»H깆Ÿtl²EV®&›Ç¦ûÞPàéf‹&¿Ö^M½>…•Å»öK*\^Ò««½¨ÓàK–ØËœ!ó[Žy:<úMÇôv endstream endobj 113 0 obj << /Length 2242 /Filter /FlateDecode >> stream xÚíkoÜ8î{~…ÑýÈè,K~õÀÛ.vqÛíeS @7”ÍŒ=õ#iþý‘"íyd’K²7AôËŒDQ"EѤH*ðf^àý|ðæôàoïdäe"‹ÃØ;zQ,âLy‰ŽE ½Ó‰÷Ù[×ÕQ˜úus|4RJûÿ>’~5k¨cÊ 6”ÿ“=ïf³¼œQ7/ÎN=Dizˆ‚(Mà?‰ƒ$ñj`à–¡“Ÿ)®1%U B¥eÇЛ¼:CãÈ–q¼™¢°Qä½mmLÅJ¨,ë×P[¸J®áŽt¦D¬”7RZ¤qFS~øáh…‘ÿYžQC -u(5.ËŒ¤Y È»¡´ÄguvvÂ?j»¨Z;² ûš@ P÷ÿîãû?ƒ(BÀŸ|MÀ²*Ge·°u>&€©gÐ-[êµý/L;·ð“MAiWŽÛ¼*ÿu7mmÆöÜŒ/0Re—&/Ìya¹ÛÐÿŸŒLÛÖˆüõ˜`¯†%^á|DA‚[g„ä‘àù÷ö+ð¯dâ_á[lÇ~A‡_]Ðed,S†ýjËÂòÔ¹­y&ì`¶°(›†ÀÕ”XÙPP*‘®ÔåÓnS¡RÕ#òú³ºê–À%Pš$/›ÖšÉ@ÐëŽnì’µ¸µÅõQª|q4Ò*óOçÌúÄNMW´Ô¹4EÇ”¦ôeîÚ¨ˆL{öZÓ\4;ö0ÒI(tnž{Ž’I”ÐßÕ<ϱ©ý…5%~:¤FÝ,‹¼¥¦a½´%lh ¦}LÕ4¹Ó™q }B£C‚¨ó¹;i[À‰ ÙÁ-þA€pöذu‹b«yÕ‘@G sŸdvátªî™¯6ÈkÔb]7¼߯“ ÆUÙäS$Å ‚I,„Ê/ ¢Ês›Ö¤ÆÂd69/P`Ô'¿R¯xЦ/›ƒ±–içy}s·BÄæ:Æù‚­±Ò‘çmü9K| V85ɰ¿öç°o‚ŒýöôàËyžô"%ð6Qš‚.FÞxq€ð(Ð"ÊB/LDÐÚzÓƒÿ<˜©‡mxߨë¿îúï ;åo™rD"ÕšEz0 èE ³˜P·`€ç}&'4zD%7‰lWTP]Eç¾òaáçð8y¥1ÞS"QÔkÚ6hÈ}oâxÏ;p§>Ï]È ï‰:ƒ; H s´ÚÎqúEì"z»ˆŸÀ@íÙ~lÝ\–¦6‹—âBþ(««ÞÐ3ó#êy~1p³D–cwÐ&Ü-àêHš¶ZŠªÀîwGŽà?ŸÂœž||ûlMÁïÅ»S*`RB%¤â¨ñ׊b&_tD³¶p\T•3ÌbßrȫŲk æ!xza-FBKŽvò…]q bœLl 1ÉÃwß ¦¸™âE8T㺖C%×QŒÆá/†Ñ_™7sêqÊ+ô‘×0W}Á•NE,õvp%#7¨ï±UiLG’&ƒ&=[×(c‰ÝŒú«ð&lE£Ïî=[¿x¯âçOexÁÊé5É2lÜ'Ò¦{½Ïlé¦ Dˆ r"ýÇu#Èž=Áiæ(¿?Åå­ùR·O¶£ç+Áñ)}¾w†ZÄp›G¬%'…8_œùU×.»>3žùÍܹ®«†º”(Ï|ÛWv°›º ‚Ù³$$Šï’çª-Üžâ’|ãe^u ¡pž³—Žì„F õkÛpN;ÙnüP4g¢y9.:òø0Ìîxlº†‰»¼3Œ¸Ô°áIœSg”åß®p´ÃEaHÇ’gõ¡[êD[õŠóea–ËâÅõéx¨Öpë͇?žüøÛßVÝŸ‹Âz½äûT&7‹/MkêÖ]•°wUÕ–+BÓ¾4TTcSÌ«¦}-¥Öò®RÎs^ííÉÉï'\ ‚tr­Iê×2x¦gÿ§z×®l~ÏÇŽ¢}–2d·öäÝ…½Uñð1UÃð¾‹ïªLÆû®L¢%,í·]˜üo Mßó`Â;ªž!»ù|‚6)’þ{3ˆQ§Ò?q¦ [®¶i\…·.\šhZW jí.w¹%¤ÏMü5a¯=ï«~03jYµ(íØ6q5¸¼€µ®‡µ¡1.bQŸ¸¸ºÎo g«Õ{B.óÂÎvȺ¨ 8ˆïb%ýŸ0¨CÜrBAdù.vÌbŸ]u¨îéÆWRø$¿ÌÉŸàÈ…ó¥?£áÝ%FÂv¾prî'«z&R›–I Ì®òvN0Ãç„/*ˆœÃÁ€¸°­ SqÚÚz—~™¾~„\ 4 ”ÿKI@b[MÞv^ëÞi»ixM`œ«¼_Œ½mCȺ×Aì æû‰¸¡u×.Ø] ²ÌxÌÝ™–f-œ]3µ%Ÿ¬Y›ï6r³Ä½%Œ)§­ï,‘" ’þžçŽ/U¬ÓièO*R%€-:§›ÐšñcW³Fí‹2·¬~2ý‡˜îXº:wJÉø›[3áQ| € V‹´/ßâPc§]QÚ†ÜùAIª€Ùç ’y»$©^;]颬$Û”"«'¥hø>4¤_†úó$oÚ:?ïV)›¾øÝqºì³=;ìøKσÂÌ#¦CV¥…’l*B÷V)ƒÀÿež&ŸâîãÄŸg«ºzHÅ1í—d®××”:á b<_V+'sÇ3£Q?o÷ó(Ñ«{ùÍs•`Æ·QØ~¿¤|ÛCÚ_c6³bÔýÒåã‹Aðî…”û¾Ö³e°.õ"/9™Õ›c—ú>íÏûº|°q²(IgŒµÖÎÜðS^=À¹íÅ¿À¡\­ùrhI$t–m§Ð’Lèô{ ¾¤¾Å€³x)Õ¥>¬{¶I´ûïçûc‹çóL!|ÏÔS¤e7Ì'ª”GÍ’í{;ï´ŸäC|KòáI²›¾ú¿ÇMv] endstream endobj 121 0 obj << /Length 1928 /Filter /FlateDecode >> stream xÚí]oÛ6ðÝ¿BKj1+Ф>†n@‹¦†bí2æA–i[‹,¹úHš‡ý÷y”,ÉN𤗠CQ‹ƒêîÄ58,PóÖCïÞßy÷Ñdðe@:Û¢–`Äî»B×v¬h5Ppas"Çr)8(­ùà;u— kõ`t‡zØq¸ƒ¬|öl4޾Ìå*+åX‚¾ä%ÐÏ·Ÿ~ÿl ›ú3Ó,§ÕJæq„€0_À4-qVfø\…åRÂO… BæU•q–þªdŒSJáv©)ó0’Ó0:WˆVƒã"Œ“pšH3-ðùÙ¦",Ë\mþzˆ°ƒæˆõ¾ÚÒA(„»¡úÓSvvvãz†J<æ(:Q1Nªµ(ŠÀ*Œ§ëì\!ïŽÃµ¨Ý䲬ò´@Ÿ:B/Ï¢2ƒ°8Ç¥Km¤æ¢Š"Yó*!OÁmðQŒõ QâŠ`ø°»=¦œ.Lý.îíor®RŸwÕç^D·›½í_Ø 8”yæ²ø¼1“ÇÂMmÞ @[¶Í›ÙÆX´7|õþÏ£6t_ß³ìÚþ)’ü!”ñÁP64æ¶mB¬YŒgà¢cð†\Îr—Kt%¡Ì;ñkÏq½{ñ7aýœÙø^œB„ @¦HÑo(q>)åE‡<NÛA—çÛa5Jåö¿IWrÈhìrg8YÆ…á†y®uF’E¬c‹M5HFaUh2¬1œp/è‚6³uBÕ0ü%º[iR,ð¢Û× à6B£,ÅŠÒWÊ¢›,*›þ%£ÒøeÃ3@¿ñà- n“ï™9°-žV¥| Žœ{Pû}G¬óéÿŽœYÓ1 T Ò>üø½pÜö¦-»ÞC<:=}èË\.ãhùX¥¢mM­ëxÖOÍ‘=§êÿÙÙá½0Ò@¹\¹^âãÎ.Hcë×{¸}j‰”fÄ×C(M=ørŒÏ"\¯“+%´âª j½¨‹?SÒÍä:Ì © 7eN™ìa*ó*‚ȬN²¥9ïÚ^¥¶ifûÃy#ÛÓÒIg+`86˜˜¥ÉîE‰¨VA K¢Žjé¸ÃW¸šÄ…YÍæY# e¬\â,ª¤4§a“àÀGZG<¬×`clö(V&±¶EJ¶ƒ‡›çñ[1‘7¼ÖЧˆÀ“ ©â…a¦pˆãty‰qQWpY¯¤kU±œs­ªzCcưG‚)€L]ꛚ×Û•ÿa]Ÿ¢TðíÖ×€8-d^Êf¶E Ê7^Äi˜ÔgiŽ“Æ·²€IýÚ´Z˜ŽcZwcC«ü*7l–‹^CÒ°M/š;Bæ|‚=ynz–:ÝFÒNè•Èø’0*enjç¥L Rsd±ÌªÄ\Ýtpb‚éØëÆn;ÊrMtÒÍD”&++kR§Žs¬±¹k‚ð»{Öt4Ô‰9¥ø¢û7ºGcœöãîuñûîÜÜuÿ—¿UˆÇñ­Âýß*¶›Šmµ}ç…± å8¾ö¼@Caˆ1ôñ÷’¨G‰½õM€râøO¿“tÛúñÚNõá¶þ Éå,»—L5[€lS5ƒ{ØnCãjmcÌõ]•W Å"Q«[ˆ8èC_âðo ¥áü'nÁöÑåÙƒSýA_£ È´MP:–X˜È°ìdr¼›àn'ÙžõÎæ£¦4;„nJ«MYÆ+ƒHgôWÍ_´4AkY1Ô 2&¸wS.\÷†Báã³[TP”0¿©×n•*ŽÈ< &ôöþ.£“ÖiÜÊíÌÐPÓnµ¾³Þ-8V¬4×ÔlË‹8«Š¦!UI¨?Pi¤YwËÅݳÄ-öAXÿ‰©i2 endstream endobj 130 0 obj << /Length 2021 /Filter /FlateDecode >> stream xÚíYKsã6¾ûW°œ U5Â㤒=Ø{*‰c{e¥æàñ¦ ™;©T”ù÷i<I4=–_S›­\j4~|h`oîaïÃÁñäà_§„{1ŠE ¼ÉÌ㉘z!3o2õ®ý“ª*AäWõ»ÁRæŸ ˆ_ÎkÓIŠ©ú þòv5ŸgÅÜt³bp3ùù#3xqÌ£ÚPà0ô*à¿Æ@(l E(Fe ²è8+C(½Tb%Z¶$ÏenV´{ëlŒ Šh·«p#+ôŠcüÅ©Yí2rn²ª¥ÝVbštU7åÂìNøecÆÛªƒêÙ(äàÀ§8l€tŒ¥\@”ñRˆ~c´±¨…¬kPµ†‡&ÉÀèZ«0ÏM¯M¦ÓL9W’êº_«!Øÿë•> 7#ôç©J"ð«UÑd iÿÕ9þ.”CHi¦›6 -´#°cÂü‹U³\Y±ÛýÔÍTV••¸õø1”zÚVLòº´a3Y6«JN‘›ºånÇ_ÚT;K ÝõxG†ãmÏ»ïh$ÖI½¯Oõu,séò>{€Ø¸¨ H}Ό5 ¯mÛwB@tRú½èáˆsÇ©õʸçí4ÚoîƒÏéí4šúþð“©w‘E!ÀvPˆdT!15Î1äñ8ð´aȼJz3¾ž(ÕÓvüÖÔÛ¿Žvûwlaå®ùXɪR·aÕfï'Ëš§êP®&íŒw­“ÎÃg­Òðþ"ÝÁÍ*P×—ÏÞоŠ­}ÂÚÜ;ÞhNäZ¾hgoCÝ ‘í -Í“º¶HiçTú®tp¶»üoy[4_þ|qü½™{»\—ÕgÈe#áFš¤þ\ð¦ Búè§bæÆÆçj)§#7Á%gô XÜ’B¡MM·áïŸBqnØÌó£GBþ^^ªŽPu/«r¬ëÛ¤ÚK4 …´Ó³¨è*@ƒ´¹ù²”íA\¼ÿÅÚÏ¿‡/T€t¨ÝÕD¥»Ueïùöõª½Ú£º³6›«‰ý¨2!þ*Æä–@Àý4GÂÅ0 ]eº÷}˜Åüï”êH ðg7ÕàáZü·Ouû†ÿS]bj=I»ì·È :P?;=|‹¼*Ôa®ØòÖºƒ›UÚ+ãÛåïNÐÛ ºÿ˜ZƒÄê>ʦG‘¡ÜÚ¬`ëÿ@“ÿKh¢\±™è3ÿfÐDìMøÿ 4y½Js„¸}(@­4_ɦ1hF„ºŒ#„ß g{t“ÍäÚô§R•n ]ôÂÁë>6á1FŸ^«”åÊØ¦ò%°`Ü—…QL€ 7 L1d1ƒÎú Aßõðä°KÇR—Yû@_ ŸmöeóQË3>ï(ÜÔuåôXÍ…ïÍIWšû¶&P°©èn*J;ç!Ñç c}¸ÎDm¹Par[vd ’ wÃÄ”D»«ÒeR˜¯ö‘I}ËßWªŽ¨ Ê–PªÈט_þ!«¬±Ïzö¬CÖ´Wƒî-AQ™G§–á]©ºkUSdº ç ÕJóg²XæRU+±PÎlj¹]ÿ¾biïuÚñÍûÍ:Ëíî—ZŒ¬h¬Üí¸«Ì5cƒ:ÕÝÜÕ>·%}µ?Þ’×õ6†ô Þ¶Ãæ+Þœ0¥7ÃôyENÐ(ܸ;%`™&«Z…6†Ûûhì ÂvÔY‡êö_ ø&çb?눩SHf×H“&½ÓÅy+FOˆ€Oïu NŽaΕ®Î£ížÌÓoaúkõ𤷞4\,m¾s:üØåèWÊ M"°›0~9s„Idž[¿³Ï(i£ƒ‹}‰V ý08TýY÷tž2 nàLêæ÷ endstream endobj 135 0 obj << /Length 958 /Filter /FlateDecode >> stream xÚíYMoÛ8½ëWÍEj–"%è!AE²ÉºÊ^Ú™Q…Ê’+ÉØÍ¿ß¡HDz;¶ §I‘ ‡ãgÎ g8OL0b>w]ܪtyn‡Ñ™ƒ]øÈ=sN"çÝ)á®DRPáF·.HHæ¾@Øw£±ûÙVUÙ£¡WÕo{}Æ|ï¼G¼2­Í$.ÆZ`Þu3KÓ¬HÍ4+z_£FXú„‚iŽyÀÆ·‡?ÿÞ2ÚqŠ0Œ(óÁåÖ¡“¬ìõÁ¡äJ»·¾Åy®rcÑÆ¶ 1)çkëÝN»‹I=ï -úgõÎèaäüpx‡]âr†Øý£P7™8Zͱ¸¤®€Ôй•ro¿wvj·€‰˜Î9ãL?¥0ØUåÈ)#)õ©IèÍ4§Óün¯¼j¡û¼ÇvŸ€;_0Ç{ÙØ6\°‘guólã¡ÐG—K}pçŶª46È¡ƒx»—"uÓñ%4䲪]¼Ï)÷ÞÐ7Ï3†í³ÐÆÁž œЃ¶Uÿ¨šý‚ÞÐQˆöL€l°+ÊEP'WWǣ㋇֚zoB›ÆU<Ñ¡îmó0h ‡>‘ˆ–²ŽŒ¿y[FÖ“ÛY“å åešªÊ¨ÊÂŒÿ–ÕwUÕ–?ÝöW[³¢aä.›®±w´üc”ç—gF¸¼Ž®®£‡‘`¹]” ÉÅò¢Q\ôú–é(÷@¾ ü««­€Q6QuO¦s4Å„ƒÔ'¾P:`l€ÃM‹|š%‰ªëùÑèz¸Ñ&Da¤ñ¬Š›¬,ϬˆVHöS‚±7«uõ´1×wu£&&*ô[«ñº- <àô&L:2^Òÿjñ]¨IYÝœ¿¼ýÏÛý› 4E_Ü´í¦§‰›*[áUÐ$þo±?A6žDåymdFB†…‘I€ OT€¯ŸmÒ 6}Œa,è`Óaþ§cÅ'Ò—ÜÖ¼Û#˜²€„V iÍø4$Ltà¿Z0ç¥íŒÐ ê8Uõ`Íþlصº«Ê¦¢½ Ye9k^dýyÉ7ฤQ•®¼àºßÎ |=+ÐmY>5+œŸ>Fn¯´€1ïÈþB&ø•ž-ÐÐñ}£Ђ€~mÍCHÁ&+K´ÀB*Âû>ï?B îÍXZµèÓÑB ŽF—##~^×0¾šiQýb6QUf3W)L‹Ææ¯œ§ªù¦à‘%q>s/ݶ 'ñ§Ñ{!ô´áÒ¶¥'öziy½´þïÒûü§`·o #çóJ7š endstream endobj 142 0 obj << /Length 1725 /Filter /FlateDecode >> stream xÚí]oÛ6ðÝ¿BK_d bù©c`i¡M³ÔY²<(2m ‘%O’›æßï(R²¥8®ãÕnƒ­(,òtá}ðîx¼FŒ Ë«|Òž›ÇåÛ¶à•õ¶w:ì½~C„ À¥®5[ÂEnÀ,»sk8²®í³<ÏúÔ·óâ¸ï0Æíw}bg“BOÂt¤ÌþMÞ.&“8èiœöo†¿÷0Â'H ,|žž‹=Oó¶þð÷ú £+L†eX®:³¾ EŠ­°â-L™hŠF¶Ž`ÌeˆA½†g¸{–Ö`±@ÍWöcð³±Ï†½¿{¸Ã±Ch_Š·¢YOæHÔ¢X Œa-i{<›©ç ¼?ìÊôYczØC”S½M¯^õA¶…UCû/,ðû[ø%z>‰ô³ÌãÉDæë‘fá=X»˜(Ø!Âm¶Ï#™$…3â3ìê1ñ#ta›‚1®Q×wˆð`È0v—Ø^‹ŠhSùs… ',üÙ`³@…`lL™G|÷P`Èpêæ® k°ªÿJýf¨½jÕ#/°cm^Þe£3YáDƒ'8ß OQŽdn¶¢ ˜-ÊÁNŽ·?ìŽ>¡”hæaTÊ\Y ~d4ñ¯¯ÉÍÍFrc ãùº½¾¦Å;&ûs.gY)ØÌìãêùæê\ €R" 40ÍR']ÌdO ó LÓÒøUV»P9•ðGa¢!ãE•q–þº‰Ýô&oÃèN^:dø9Œ“ð6‘fZÔNIDX–•š¿kØQ³Ä‘ú{…²‹Öض[‚6‡‡ÚCªâÙùÌ éEks®Ö›ÊèNe)ÊJ1‚€Û6‰&¥‰Ó(YŒdéh`”-æÊlÕ8«eºªÁ ù¾_Ëø©ï3ûäò\c¶sŠ0D¼$»f5qÜàüvvzõvÝJ Q¯!é$ò3dC‹³Êj´q ô0â"ߣݬ‡ˆô@_zÖ£«¿ îêï¦üˆ»ùÄäæÐwÚSÐ ÌS¿«Q;0À³®õâìDƒ¸DM=µ ð5j¶¤Ñxó®ÙÁ6:…©ƒe7ÊQ‘몠¨Æ·Ô4âALà+ Y· É;qá1ï±etÓ&Ç÷Q©•Œá8@#u-üawu[qÆ<,J‰XIH ŽmÀ‘ŒjgkôúGŸÃda’.8½š¤+®Òªjú‹I»ö-ªIïbÔ5 ×^‚ŒJªX¨6Ìx¼gÙš æ.tªó°º¹a}oŽÚ·u'2”ÓCXwk¿;ÌgÈõÅ÷‰`.…d—·3Á*‚݇yúâݾãã±¹oÍ⢀døèP'ÖóßU·¡rQ'y] ñðÕ;?Ù«H»uàPÒfa²Ç€Ö1^‚%¤ö™&Âÿè:°üC¹ã=z³>žMÉæ ®ûD¸&ÜEü;…kÂòø‹K8·×Q&ó¨j¦¬ÉÐê’Ü!M`¿~Ù‰ÞaêŠä¡2’ÿøqq@é©‹ˆ ÿ.jlOº5✶¿Ð­ßÚÊØoî’v¬œ øªá ©štÅõPSWµMUnnΙšê-· Yjˆ*|›A.«*úTu°ƒÑtMÙÕ£(ÀÞE\ê#4æŒZÅï¥Pm3¤˜ ·*;«^“‘mæá¬_WܪçÇ4»¿P`¦¨¹0'uƒÎ\Ô‡—WgæU%à´’lõ&ÿ 8?zªÓy;OÂù\ /®†ë17ð7 ‹»Áæ^¢îcg#¹ Þ0žIÐàlnÁR…ƒ}‡š¾áŠ›uöqE²(Kóüšz4Z䡪žÒbÕ_J÷U»»x(Ji\F‚«Þþ”ª^9Ü1]“•1ßÄã{9Ëò‡åƒ ÈüVAløVrì“æëþ•o À6ß*øú#‚­¾U`Äõ¼í¿U<ÌýÝ_+φ½€ñ endstream endobj 2 0 obj << /Type /ObjStm /N 100 /First 788 /Length 2191 /Filter /FlateDecode >> stream xÚíZÛn9}×WÔcòÂfñÎ…1€O2^Ìb;ƒ½dü Km[ˆ¢6Z­Mò÷{ª)Åãø"%‘œÉ @¶ºÉâ©SÅb»™4y²š¹H™b$Ö”±Å?&vÄ—¸þȘ@†ÉC&ãÆ4¬Ó¸C6öm6d-9ñ€¤ØHRl"¯q‡É[7p†<ž9O>¡ ä3ºe €+ ±pÓ;Š˜ÌGŠ¨ÅŒnLÉäz¥~¥Ä€Ú`Þà¡°èãñ#@¨ QÅ9H%ÎÉSnFÿÈ¢ŸDhæt h¡ÃDêeMPÌ$é2&[–¥”2ÒÊ[ôKÐÞ£ ØhÒ a¿¡ ƒßí…:LíþK`?`ò$aò$ AÇ”É0‘^xÌ–|`;È­>€ÜŽà1ƒÑq¬AVÓiè¬!…Áw0xÎ$9Èr`Y>ñ@´ÕË 'ÂЂ3$‘AQƒ¨Þ'0(2¸`J À0 GÂ& 9Ðôƒ•h ŸÊ þû èÄð¤Å"BˆX͉mŒbI)ˆ(©a\™7þ-Úœ=>…ûVÀÁÌÙ :8[k¸#At¶ÂT‡Æà,Z;aB÷½…£Åá“ФÓ`oªª^4¯ªéɼu“f¦ø)ýôÓà ÓѬk›ñ¢¿ûôÞî¦t7ôsÛ6-ý2œ§“ÙÅgǬ&Á=v£KŒ ZÌ× \M§ ëY79ÿ@çÃÉtÑÖsz7é.éìªyóû“ߟ®dW‚,×íbÖK©ÇÔ ço–’^ÿ|øÏûU_аôksq±Ng»ÒôrØßÖ]½F]»RtRwÐ4¤îÊ^6ÓñšÁ+|ªGHçÐo~¿6®ôvô¯¦}S·ÔMÞÖÍ¢»€/<Ög‹õø¸ ýѨžÏE®Žê³áèÍf%ÀÐþx,£Ç25½…¬áE=_3Ü®† £á´ŒàÅÞ'u;N{Ûܯu(BÍEfv4;oît·×ˆÒšŽ©z>éNeÌÞÞ zõ᪦ê%Àªgͬƒϱҥã :®çÍ¢1âú;ÿ¨Ç“áAóž^kÜZ1›ÓAõ¢mW´œðU;œÍ¯†m=} êl.0Ç3<9¬ÿ7ÕÇ/0;&E‹ßÙû³YƒÉ_Ë6"8¢ú&”&–&•&÷MÔ¥áÒ˜Ò5c‘‹”X¤Ä"%)±HIEJ*RR‘’Š”T¤¤"%)©HIEJ*Rr‘r:¸Ál¯Ô :hÚqÝö¤éÓê—ê¨zöZEêÿ Ñ£Ž^Û¨•–} 8•eÏòXfÛ!!º$t;YœuZý:™½©ö÷öú9ªýÞª“ê·ã#ù{rÙuW«ª³I3jf/›V5íEu‡¯¬ÚzZçuߣºìÞN«\‰ŸM§õTɧÐâ.E–¨Ç°¡^Þ«>°Ye/»LRؾ°µ&•BF·}z8öo%^‡MH9¸—7ÀøA f«@`è y˜vŠìðÂR,†ás¸ÈíÝjËh\f%)ƒa$I­ÒŽ×ƒÙ 5>Ï’ÿ¯ÙôàtòëÑØ]xŒƒ,KÊ’”C´AÎ¥8¤=Æî„¬«¥>€­°†œ )ô:ZìŽ<Æ:åÙÂP I’jì„>®G³—1F9/ ¨V,h, ½7»q 4ØŠØ9%% e“{ÐeÜ.€Ø˜TÂÂh±©zñ»° Aä ° J³•çµÆïÆw­w åÐÀ‡¥P ^yÖ£Ù‰ïZgTD½ªSyä8[Ðp³ßµp•ŒÂ–СÀ³–UHöA— ÷Ùhf/ÅVh¼VQê},bìˆ&`fãþ¹ÏçPhŒVIêcñÜ€ÀhÃw¤†ì·œóG=$5éÍòeŠŒP¨óËQ;êÕxWŸ]«2Ÿ5ïªÉl\¿ßûð\N| ëÈÛ°ÜWK²·†}é9È12ò/Ö€ŒœÃpV1mùœpü½9›o :ì¢>_c‡.NNó¶ý¼iëáèr[È-rÿ„"o…\vKqœ/Dþí,'lpÐj9"†Ç÷¹vÛÿÜîc<+®¡'xS´»€¾ehäœw‰ÜÛ¨àL;¾Õ Y Gx(­RRÚ£¤ë™ý#†È?Iýû?ÿ¥–¥ˆZ E0ÍÓéé}]Cé*ÑÞºMºzhçoÒÕbËvϛY×ç>ÏQ!g¿§êUý¾ûô8铃:Ô£ŸžÔÉ…Ç;ª“7‚_^t|åé—¬¡ ~"J[ÔÛ`¿ü{‰ößS(Ö…M  '(òúíYÞ™a…}Ã,ðP ÅÜ;em„ÕoÖ×I4÷®£ëâz)|²H®—Ò—®¶·Ö?æq¶¼Ñû‹® ±<›Í=êFßâ%FC¿ÒKä¥+û;¢¯•á«üÇðmÿÉê?å=ƒ¼äýcWy»w*r’¶Ë¬.gKu_6ß6Ľù‚¸Ñ·,çCÿšd[as+kÀê[kÀ¤Ç\¦ø¾|³PZ·l—ù‡ ?ÖÆuþaT„Ÿxk”|‡!'ˆ!ÞYGüžò“¸hTòr4‚b]>a’R%™íV†‹n2­Õ´¹¸¨Û­.ôop?â‡áç—ãÿ––HªÿfÇÈ9“a­$‹b¸˜ù±-чÎüa6ß‘FÛ¨¯IÉwi›ôåþÕ ûæY¯õ·"¶µ±­ù+g½Ömæ}ŸmyØmü*Ó»[Ÿï°Ó»3½s·L_\W>íû±)¯Î8UËïŒ|×á4ò .öj6º•ý# ò¡ endstream endobj 149 0 obj << /Length 942 /Filter /FlateDecode >> stream xÚÕVKoÛ8¾çWÉE*.ßölÓ‹&5²òöàÍ‘Y¨l¢¼Ýüû%Eʱ]KH¶´, ©á7OÎ òW'éÉoï ó }\ ¦@¤ó`^Öu5ÂIXëW£ˆ¾¡°Êµ[ÈÕÜ$|«î7y^¬r·,V£»ô  0Ȓؼcã8¨=Ÿn¯ŒRï(…˜P£r«ÐEQ"£P6±jÉV7Y–ªt½m†N¢ÃHx Úᨠ€D„‚„ wäìl1ÌÂ÷UÒZæJ-–Á‰‚±-÷ñÝö¨n檮ÝzÐoV›fžßÞ8jÖ—±w++ìÃ- oɲÐÚVËŸ´vÌfèînÈ]³Î>ôrf3|ÎzÀñÿ'ÏÔüæÜ²4 {È$i@í¡ßrõÔÕš…rm¯YÔ¦ š õ¢*}l*¸ß½o»×ÛË‹éÕ¹„öÔŸ2Ùd ¥ì}ÛîªfqÝ4lŠ“îØÇQBB›™Gðæ¤g´‰sDÕPøBM»Ûö:j_gŨ‘pïcâ Ö&1}Q}ùоª>Oì¶MVüÊm–Ý }óTèý'å±ÃpÚšpÚ—ë÷kSÂ×壕Qº±oäOñ©§ŠU£rwk,ýû/ï¦7žº˜LÎoϯ÷„¯½ú[јÐáe–uÓ¦—]}®êO]‘~¨êÎêL–‹J7c„èpü¶he%ç[°‡MS” ˜lÛHµÚ•£¿ÿ$Âz'4tßw&ôµ“Søã&öm'Ö3‰°!ïýš“!ÏžD˜©IÂs'frxÁ$Å &†1é™DØ×L"®L÷"6e}ÃûG–å/ïÃÑéäÍð}úacÉä2=ù!¶rš endstream endobj 154 0 obj << /Length 1288 /Filter /FlateDecode >> stream xÚ½ËrâFðî¯P±‡Ufv^’‰¦ÖveËÊÁÙñAHƒPV Jëõß§G3B@°I*PÏL¿§{º¡»‹ñôâÓ-± ¹6µé°ld»Ìp¸07¦13oÒ4éÓ¡™f—ýcܼï3 3µðÖ˜ùYÌ·a­CµŒÖý×é— Œ°Ë 50²°5tàëØØqŒ8rô|J1ZSŠ0Œ(ã r¡Ð8JúPÈŸHµ¼B7/ŽE¬$jÛZ†1›!æº%·…ËH wÀ]†lÆŒãhh»ŠäÇþÀ¢|?µyÿt§€§—éäezD‚¸!ȵ¬&Ó©—})vá=&8o­D–{«M‰Œ‰5ÀÃ%jMøˆ’Ç]<~ßú¾È2ÍaúürÓÀ¶÷-PP°M½¶†;Û#­d}ßi¥´¡&äÃf›«Í¯¡Rž‚!2\àþ\4¤ÃfÔè[»T}W²ª1ÛÀ;£Ru”C….,äæmk´µŽUç•# òb!™ÿºÅ{‹ò¥:…/1kê=_ÛoC޳óÛ|óW2—$2ÉÇ“ÉõóõC™ê-OºP]¸]þ¢dè›R¢#­ùÇñäËÓø#jDî±æŽq(fÄ'Ââ­à¾§Gw ¿tû³NÞ&r[jJ/ÕfËU(ë£|™Šl™ÄA¡W¼ø½Š\FM:Ÿ ìI!ÒÇž½TdMõæè”6ñ»$Œ£,—_¢Åôh)0Zç" îúäöåQCúZm´áOpœxÁ®&.¶9 wMQ²Vß·$ý&Òì+©9Za&U› Ix§ÁÉBP¾–½" s"õèímSµ½j¸ Ï v!]DZ‹ÇèœHk1Mé}´V–n> stream xÚíYKsÛ6¾ëWp’ 5¡ð•´3vk{’&¶k«ÍÁñ¢ ‰5EªYO¦ÓÿÞŃÔòe»U¦éôB«ö‰o—v¦vNz‡ÃÞ7Ç„;Š|Ïw†‡ûȨ0aæ ÇΕ{TUeß ÝJ¾ê(eîû>qË©4“¤«u£f:ÍŠ©™fEÿzø®‡ŽñŒ8æaïÀÇAàT À=?]œ€RÔ[QŠPŒ<Ê@e­ÐaVö Pz®ÔJ´nIž‹ÜH´¶mFyˆ Ú=Þ`¦d…yÀÂùœ8ÊPèGfÍË—ý÷¸{E¼k3zñK*ò\š £> I@0Ç.E t$ƒ$$´ôE0âw9ÅÌã–Ìy¡e„ ˆóM‘´ù¾œšÑ\H™L…Œw¬díÊŽ>±T>ÀÁ‡†€£Ó˜G–÷÷$o„–óþ+2õˆÍÜÛ!–·bßžŸ=NjZŠ*Õ¤fuiÞE3U–îçïÇÊu©þ¦Ô •úñàâôqB; fšÙì™gR‚é;¬ [y;øZa/d=Ue&ú¨ª˦ޑ7n÷HgI•¤µ¨>Aªbx˜\}öÙö"‡0D™ï©³òi„|86D›} (Ó§Ø­nÔP€ÔÜ:› P^+p4ìýÖ#°vH‹\<ÙŒ;é¼wu1ü6¢(ò[Í9wX‡›(8ÉËÞOÜ‹†œqÄ£ßéÙð(VÒ7 ƒRäᨅ—-7q†”¶|™4h)›ÅBcšAÚZŒ ºNÌÜ0]zv °´°77?u(ü¡Éë,5«Ä#ÒÑæẢdµÇýN²r2sóRøOݪ) ƒé@þµIC.ÕΕ7E-¤ÑxR…Í;fšÕ–œ†{¤Ív©“&7ê¸+švIbæàJH‰vEžÍ³AbRîgb[ F4ðwG‚©¢Â[>8‘Läc#E‡Eé4³f¨]Tõ ˆ*lVÏ´,ÆPµ[iˆ!§È:N@Q2Så †WBª&"IgjD u+qoÔ@Tæ'åÅœ–óE.ja¨‰!Ö‰¼y C‚Ï' „ßÐÁ„»¾ñ K [›ß“-~!’ž´<àkŸs÷íÄê2K¹–”Ühû¤ùAåN§ù,)¶¨A ªúQð¨ù¤–/±›»Êˆ²GYkEÛ£¬e܃„ëW‰º© 1Fü­…¡Þ\$“±pG:¡…™‚yö°›ªëw«RŪuÕ¤uV†á6«gfToÍ[Qâð©bÄN_YD¦}ÎÚK£ñ]2 1 "´6ÎÚKsß%?™{š)  ›¤C£ šc†xä9ÞAÀœJ8…ÆOÔêiï›{õÙñ®>/lY‹½­3ÌPHL\‰Ê¥ç3NÕªžfÝ Ÿs¥‹û›Á³d4¸+d“¸”•ëöüÙ=Ö¯Å9~ž u¢ïk `lx7ˆFÆj²?S´ß¾}^„¾jÀ¸Š9oOÏ&q)ÄÃ_ *d¿26šØÅßʵýpw•†®7ÚižHi¿6ÖÎɶÎ\9ŽЈÉ\ćçïÎ_›µ£ÅmY݈JÆ~GQEZÆx97©{KÒÅé‰bw„ zÑøøàýåÑ}Ÿ>V‰¼œ¾åö³JÈY™cõÍבqœUñéÁ«d].Î uÝPml¼¨Ê)l-GIµEµ»;/4B 5¾o sµŸGõç…hãpöý6}öXŒ¶_T€ªtiÔ:|ùÀv¶,‚n§k«ºpoé!¸BèîBZnðBü´ó‘ö_m![Wïm!(#ˆxþ– ØwÙÕ˜ûl¤ÿMËSëâ—)YþWP²¼§–,ÿŸ/YO®Xüÿе§ŠµùÞ¬Y“¦è·U¿ ¿„Nd#4ùm)ÁˆùdÝÜËÏÉ\ˆÅrŧdæ+Ûnã‡À&‹EþYmJbúªSÎŽÏÏ.>ômï­_k°f YЬ“ªî.®MRÛÍK;ÈË4Ég¥¬cB<ãónWWäúúá»g{mLî„7÷ÞüM%æe-êºÇêžÙT»›1ödTêŽMØ›o Û‰¹HÒP·Šß­ý#Ô¾¡ ù PGB2 endstream endobj 164 0 obj << /Length 1967 /Filter /FlateDecode >> stream xÚí]oÛ6ð=¿BH¦1'Šú †í–úÐ%öæA–i›‹,¥’ì$(úßwÇ#eIq‚$C‚>¬A-ñxä}'ÏY8žóûÞû³½Ÿ?ðÐIYù‘s6wˆE©pâ b^àœÍœs÷¸®«?qëæð`"Dà~:ànµhh•3|îorº^,T¹ ¡*.ÎþØó˜—Üw<zaÃ3޼8vj`àž©“ß)á÷˜âÂc¾€eÍÐ{UL€¡ü3²•iÞ²¢Q4²aÂÛ=8! ÞCžI¢;°$JiÍ›7“ÐݶÎr9ÍòË/^èÁNàl“©"›Ò z~ñx˜µmÈ7‡Ûï¶ØÇõˆ‚ì+ÎY†ÁÝP½Éù¹¸¸xá—Z®ªVN$°&XE?OoÖR^!W y8¢‰ZfùRÎh ‹ìª±ƒV­Œd…Z©öíC”_LCÏö'?uxÀDùh_`[¤,ðb;<)<¯çÂHêølïë\Ïá6."ƒ?DN¾Ú;¿ðœÌXšFεÆ\9A ®ÃÑY çtïÏÎÅîµ0ÌO¹ 6TȼUP’Ÿ&îlV~» 襕 %šÞûßÒì·4s¥'*ÐöŠ:R«š·²¤WUnªÂ’Ê–W«©*³VU%Á«9MH›¼„ ‹Ž±n÷¢êØMÜVæËR}]ˆíò—@AD»¥„Æüs÷z) |Ö7È8)pÐs’Ú€>!”‚cO3?!-º3nÝ Óи]Jób†ÊÌ¥ P§: ɦ¥áU+ JEϦ%ûŒyUšê5þXV¬Õð=›Í(…ZéµÚ&ÜY¤Cí­dÓd í I¢Iê'r‡/šÉx©ÉÕŸ¯ËË&Ÿºkmë•uµÖÁ‰ƒf‰û³´dL­KysE"çZ4:XfÕ9G»:¯0ÉÉ)ʪ%ôÌð@¸«¬ qßµËuO Òb ¬P6Ñ[‘ªv¸)NC[áae÷Å™æZµùÒœWÚbäc|pð@ú÷ëC§²VYñ9«³Õo‹<–„Ý!EKÚ|at©ueÎËì "4†Íà8Í!¹Kx‘øÒ i‚À}/­·è]´+âÊ’žÕFÖ%Í,F)BÁþ¤×™ÒÙ¤–eK8ÛìÁþs6ÕúÖÙtÂÓBÑ×§¥à‘IªŒ›´ú.ÏÁ Æ­c>Q/Ò8·Á´~ÀÂØ˜öL/ö½A˜úœtàŒ† R5©}F0ž¸¸"P?<lLàî—Ä1ÀgÖ Ü-wd"?HX˜ÆÏÊD@k›‰´Ù=0{ž­Ë* Ì»°%0É ‹od¾6[yneÙ‡E:oøaNÃc˜0¯7dÕþdÞt¼Š‚Œl§ÓNÌ»‚IU¶ ˆ9¬p¶wXá"lI˜spmÃCf/ Ê€»‘nÄRέδµwèÕOY²Å2¼íˆcÞë ÐåÕñfãàÑ Œ‘q¸(ž ±=^7j&Î2R¹H'C7%RK­SŒÛ¹I9K§à†­¼gî®±Lh»p7+t}Ö ãY±Íx”IK€¼îºÜžÌ1K…°qf³MÏïpf+b¤Qk0>¾¢¡3MÔ€kŠá{|gÓ¦*ÖVþMV¬GªÈÌ :¤›»D:Îà¡óÖ]0ä,¨Ñ Œw}üdìa¡(X 7'U`ê¥X("<ô ‡¥¾r–€#ÖÒ™ciøD¦ž&ðKc÷;Üþï‰)z¡hŠ^ÈsÌÍ \Œ?˦ …¡ר#à9çtš<‹8cÜ0LuÛÒè‚å9”«TЖWÏ£!ç(Âß w$7¯ 7i8è'kˆ(5lž¿(ã‹" ’‰†Ù{óÃúf,â»DÆÀ-Hµ¯á˜7Ö°/'Ϩào ˜.nØ C‚z:Dë‡6ÇDãYzÓGÎë?Úèè…Ê-d¹€òît¾A:ü?y?%y«×JÞ/³š¯p;{ ';WÔi|¦\?q§ÝćÏç&Ÿ™»óâ*ܧe˜{ïæ‚a—@sýkV]ÿÿ ÖuûæîAWÁm9Ÿ/Mã>oéJÓ»’Œúº'RÃÅÂÜfŽý‚{Zø£ûL-M³NZýœ^úÐ@Ûªiñ™ã?”o4ZhûÑÑ~Š‚YGŸEHÉ€A9¶¯»mÚó‡›ö0O/œyúŸÅpÁßMqô™ SôIÑg¾ˆ¼(yÝOP”tEƒùQVå¤\¯d­rƒS/`ˆ],ýu¡¢ç*ƒK$ü¨Ûˆý þö!…¼Úç Yξmnçßw¸ÅÇH¥æ·´ïõRaS„>½HØ01ÖìwŠ$Íì’W3ùmzU]~?Ú±?¢LåB•ÀD=䢯\‚ïöÝz—ÿ¢³p@uÏNþ:¼âô‡wŸNw´Vîtvw(z]cê¨ÚtKµ>¨ÇÝvØñD!ó}²å Sº«”@dÅ]Ï(¯Ê™²§þø F]G·šþ#óöQÉ4ÇY…Fj“Uct¬ÃÅúRÇÀþÕó{Uë{Çg{ÿ¯Qýú endstream endobj 170 0 obj << /Length 2229 /Filter /FlateDecode >> stream xÚíZÝÛ6ß¿BpÖl–_ú*®I›=r½t‹>lˆlÓ¶YÚH²w÷áþ÷rHYÒz?sv7A³ˆù)Î Éùq†ê-=ê½=y}vòý/Ì÷b<ðΞ ^(B¥w6÷·oʲñhXVãÑD9ü׈ ‹e……$ŸëŒþ¬¦›å2Í—XLóÑÅÙ?O(¡±dܣħ~B4 ½¸£éý[`JðSLPÂ…– C¯Ób4†f¿i¶Ã[’e*CŠV¶ž`ˆd¡ƒñNgo"£ˆ>ó&B’(ˆ±×ÙJ¡4u™ÌÔ4™}B¡Ó «“ܦu]¦ÓM­°¹Xدàs Ò°¶4>'Q;NfE>Oë´È±kw5(q#w3Õ3¤+‡S˜‡ph©&³™ª*eû\¥õÊr1š°á Öl/3Ü'^KÙׄ˦Ób“Ï4ä3…»yï˜_&CoÂB CäÅçMQ«Ô§u’f:Õ¤uZªêü\\\Àfó¹?4S?€VæþkÒ@n‰ŽùÝwøÅ9»M$§æ)˰îL«äò2»Ñdª›ŠèöJôˆ–Þ\]&e¥Ú4#±ï÷ˆpGDõ(ÔåfVoJ#›²ƒÎ²¤ª0û£­Ñ̓R­a& 4¬8› 1@¶îãB.Z´M%¹Ô¬bS_nj3Û®Ÿ.hù÷Mê^RÒ œæÛâ“z¯ª:)͘ƒdZ”µãÿöÔ½‘|‰3é¿Nä¼È'ùf­Êt†5I¹„b^c©.0]' Qð“ãXã¶¢#ÞìªdjöúÑâ˜a?`º2›$]_fJ Ùšëjé´5s_„s<ö®•…øÌΘO8讞©Wó9"k ÕÙ`¸…O–ªºø´’Hâ‡Íÿ\) É8>ñ#æÝ.‰Óý%iP©=.‡C¸vºîV‹ °˜ؼÀ£e­T×+wØ`³±^aõUŽõ€µ®Á¢_¦ò%"žoñ·ÕX©Y¡Q0´|eie‡P™Â­Ö&È1¹²³ µÙ>“È'qäw7Qµ*6™ÅÝ©9šì±Á‘´‹ÓˬA)Í¥ÑTýÃÆ¢T½Å±µA+¯§û!¬°¼¸W/˜Ó BÍ?W ¿[ÏïóâÁçëÝ«;ºÝ‡@HâFZLï{E”‚)cïÑ°ÞæøŽõÂl~ (©ÙÕ!¨në¯FvCB^›ÉÖŒBÚ6n`¸ªhwšÙQ“ùÛ,/ÔfæÆ´íšBÆ T:d"ph€öœ¡%ôÿ1…’ˆÆ;s¤N3E²b¹Tå}H†e XU7y\ÛHŒ9 µŒBFIÄEwñ¬e“3O?P&T‰è™Úª¬Â¼!H+¨+= {3ŠÄPψäÃWØjéaaVª¤6À©¡N“¹Ð`“PFð 6Áa:šÍ<]¥f)5kyvƒ¹K³ORÇjyFàÓpæÂÚEfYK+ËX×H „£öó›×¼ÝÃôòe³Í>Õ“‡?ÒmIì°f\và÷¢q1,Ì;{|–TyS îVhÓVÏVmŒ.œüë»_4Ñ;›Þ94F3Ên7;en©¤=Ùø?[%öÙéÅrK{Õ°Âú¸©œ‹XNáAù×ÁTo“lƒµ=‹×§cÌíνVëö´#Ksê9›«kÛ+=µÇÒ÷¼Nbòv5(#…¥Œu¹•˜Þ·«ŸÜûÍÙÉçm~Piu Á¶`!¸¢AèÍÖ'ºÞ§`ÌÄA|È¡¼ÅÉžÌÕÓ$>tïöoÓ·ýûÞúê(°¾:bp°Dã›ñg-ªÆ ¾šþìÚ«ƒ~Þ¹svžCƒLC= a×^ÝŽ†3íŸE鱓ªÕÎ÷çÑšç ÐG•Îcß^%Ò¸>‚Î<—mLeC´9,ÊFßñ ¢  ÝÛ»7CÞ&Ò¯ÜQÿòóºå`HžžÜ5(^¤â=Z4°Þ$ÀKg‚oZ+úbec±¶€¥¾ô#!;U8þ OÿZÿtî{‡–k| Ý2Ktíøñ®¨ÈÀ¡¯.ÑÝpãÁ1ΰñe@ ±×{h6ëM°5ûíi‘u Ž FÛÞMèˆMöÁùñÎGw×gîæ^ìù¡-.J¨¯­#ßù@ýJ¤ñ¬y3¾™n78ÐÞÎÇÞÊã¿›§87é_åÜ!L-û2çæ±»°ïÜ0p¾ãÓ9ÍÅ×o9SvrúWØÉ†NúE'㳨Ïe}°í,¿ó½Xýc¸þɼIØëd÷¼‹!7ëî¶f»¨ ºõ…Àg„¾˜·Ú­²·òÅbÏS§Œøœ?ø” ›—¯â.[„„ÊàÖ]¶Oûû&Ûc’.cwQ£wØ7r]ø{^\ýöl^˜ã ^¦üÄk«Ëa-ŽÃ®†!röþ7ßĢ슻4O¹l2'×àXþÑ×b[0á·Ãk%kBÚ Û`˜R –‚ k|ízcÐB1ÍÔ+l8ðlSÚÏlØä>^Ÿb¦‰YèSÈD»Àâ‡ãÝ ? ÅÎä˜È ܉á×!kcröÐ Àqô›'¹ÝuR߸‘$ ãNd ›dEn' ù°© l0 ¸©Jm C$=KÔ†IÈÈ+ÈpF•TËE Wj[­43Î`ë>¦§ØÝDøé4ùä" ´MFl˜mp!m4 ¤™ýJ7›è]Imå2Ýb˜#Œobœõ—&vµ=J—[ŽÉ¢ %‘.~:êÀ?Geç½Æ)Qd¼g…z/baÖ[ÝοÐq{b«#"©Ø³¹îŒ¦äDì>ОeÔºhÃ'}æêÿ6Šˆ endstream endobj 175 0 obj << /Length 963 /Filter /FlateDecode >> stream xÚíYßoÓ0~Ï_aiK¥ÕøGl'<0ÑM ‘ñ2xÈ/D¤MIR`ÿ=NìÒ´kCÛ©eE«¦ä|¹úîóïsV©Ã@Í[ÏŽÍíêÔB@=§Ö±o½8Á xÐã„ÿ0¹Gp8Dð#pc÷ó<ë×΋£N—RÇ>ë`;‹ =†Q%Pû¼Çq2Œõ0v¾øï,‘ç`¢\3Ä\¡î‚#!tl‹©ø^œPÒ S uTÈu@ÇIÖ骀ÂË*¬ Ž-HS™jÛ0Ê\è`1™SÞZ˦fóªqãV[?T¯mÝ÷­ïVá!€£P¨åºœƒp`Uj†È<¸Ê q)È%¸³>¬Ôz€·mݼþ±m^¯L•R¼ J‘€Ä!:£¹,6J©Z5b´ºz\›Î锸é2Âì—Ý|*:™WN½ÜŽÒ`4Jï7òµêªª%ûŒÚ2;MŠòÀ>YÜåU/eUÍ²ÉæŸWjxÛ Ž¶€î øh›|8È<ÙIYmŽiõÌÔ˜øn²SûºÉf Ôñ¤BÁëÌ(YÛÎ)§ Ž//__½>ß2´ÚÕ+ mäÁ ‚º±ÏíX«CH»sWSîÁŽ7Í‚¨>øé¼”I*ašÅ±Ìµ*êûÏ,ÿ&sCÓjÞê¯òfD}ðkÚ–ø;˜ýhåÙÅ©.®ýËk±¥ò\OŠ¡ÇØì¤~P|ëuºXíÝe–¾Ï"¹ØÏ͘ dQƒÑÄš Ì”ÔÅŽ6 ¤GiymÞ>ŽÃPÅd ÿêºÿ7ZŠÆyP&Ù°÷ÄŠhî(· Å#d‹ªzjÌÅ}QÊF%ÕɨѲ%ÀL0[õ&u¼ÿ##4£lñËA–ßkYíßúªÈëõ4ˆŠ!ÎoëvSãPßË<™náy£AðkºLÚvO(Ó´Ð2%B0¡e, W©çJT/9uÒj …Iå®úkºm^>5¼8T âN6,tLaD¨À½€žqÃÔSÚèÑs–™Î¨ºAIJèµEþ¦|mÙͲ~ñEvš´Á'M"•øüZåãÇ4cƨ59oߟ\¬è;9\iÚ–öX”‘ÌMyÕÿE0Êl\îÉž³€Â¯Š·ÃRæÕÊ£)?e¦Ãmj2]kÝ<3Ý¿c:o Ó¹ÏL÷´˜Žã•™Î%ÌñÌÎQïXë0ÃÖ`:ê9b™ÑU¸Žì–ë9-YÒŠ[œí?…ºûO¡dÕ—EòL¡ÿŒB·û3‰ùÉi½oõ}ë7OžÔ— endstream endobj 181 0 obj << /Length 1882 /Filter /FlateDecode >> stream xÚÝkOÛHð;¿Â¢jNÍv^?P濫–ꪖr-½;‰òÁI6‰UǶCàßßìÎú"Ñ“Pö5Ì{vgÆ”O:íÅt}m‡¯v¨G·ƒ“ׇL:‰|î;'GúÄ„x>¡žs2vNÝ÷E‘ïñÐ-ÊW{!<÷Ósói‰‹8ë‰pß©ár:M²).“lïìäã%4òÒ’Ê0€1ði o›€¿×‡‚w˜b‚.<`Ù0tä{`ht¬ÙŠ oqšª)ZÙz‚ 5æYöî¤6Àéug0Ð×·ï ýþdç|‡{ÔaŽ$õ ?Ý„Îh¾£÷%õˆŒ¸#¼€øs åLvþº3Ww‘Ø8ˆ`„†„•ùâÅÞ€É@º`R¶sJ×öÑ:ŽùÓ$ííݵu, ‘-zÉ¥ûYÍóâ çËR÷ïeÂǃîij³Ô°ŽBü ’~Â/Ãõt„cU$Ó©*6ÍãËV×@@#†0#‘”ëê;©4-q.xøçÀ¤ñäüËÍ€0Xó‰K!q›C¸n£òw‡Š'À‹=@ü¹‚ÀŒ3J]F¹ŒŸè}P‘%#¹ˆ„o·=Bì0Ÿò©Õ™*ËxªÊýmœ¿{ðýNO9eøÀ5Ró}!öit†Ë——/qò;û–éTeÓj¦ÍqÑÌÂÐm´ÿ<:ürKÒÉ:iö8h×¹õ´[ˆ•ÕXÖiÍ«`7óeõ‹D*_h4‹‹xT©B”ÖáõbtØî/@ö}¾På3SòMQyzÊÎζ9œ[ßÖOHs!Á}$øÍwÜ6„§¼GÑßp{¾ŽÞÞ“‡ëŒô ²å\ÉhÍán…[©‹[ÊÆ‰çE^d}éñ2‹Ò4`ƒ¡¥ ÅLx“eÆw1©ÅfCxJWáâeÞ¥²ièP§ƒWx°,u: ’ôâq «sÁRq×R0AÌäÀN uvzF1~ÔRD¡³2 sG&B˜¥Î7HÇ®§L,Šó™AïÓ<›¶/…arMž„5Un5P¨¸²rW3UçÚcuYOK}Ì -fîáòÉFøÄ °ýþÛu#)ŽÈƒò{9è†\c@>@|xÒÂ#‚YI ÓÃ'-=ó§0ú;îÔ°\%ÕÌŠèuÑ2P¸Ž¿AhÅé1\êóm• þ·÷Z{µUОæ”WzÆÝÜøâh¤µ¾,ð4Ïp\t«³³Ú`ÄôSÿª!ú6àk}ã¼Û-ÓÊ’Íq4 ²2t¿L*eÿ]BÃÁË¥†ñè'.K•Yõw'E>¯eQ s¡f.è3—”-y²á*™/G3€’™”ÜH¨J…KDŒó,¯6É&¨y\%J‹D…û¡Ž¨B‹#NË·ÓdžT&ê K­¢‰S˜#xÁáä¸Q‚n*5MTi!7…‡)ÔXë ‹|UBF¾!L)PªátÞ³!ÖB¨ÛšÒÓ˜f&ß— ¦Vja´¥5>ð "¤€{MññEœ¤ñ0U¤1KçÙý’i$ Ó|Q%Æ/anunË<À.º¡KcxjM c±´ â˜k1×Ç0Û­Ä‚•&æpÞ Ó®v¸Ž}&oˆÒMw×ÞA.¸“YÍf%â…ªyžYfô+ÒÄ]Ëv>_ ;g:<Œ‚XyQOÁ¦ÇÁ(jFÄÌ ®â¹Â­Ø‚2ÔžÞ´P`òd:«6¹ÔÓ2j„ÿ-^,Ò« rýè;“8ÒÆ4òµüšàbaÄÌc‹°3ëÁ¨ƒÝ™JV¤IO$‹ÜiŽ'æR@ñ˜;C5ŽWmëÅ* Pi¬ãѨ‘E»ùẇËjÛ3~¡Š+<‡Êv²Lq¾š©¬÷܃ÚÇÎö Œ³ 48ªx­{qÒ(øëÝ2x¡B^CŒðŠÛhp ɯUs?™,CµäÍ$3ѵÂãI> stream xÚÝXéoÚHÿÎ_a¥_@ SÇã£Ú®DÒM•ƒ¢U•FÕpclê£iw»ýÛ÷Íac ”$«DÝý‚çxó®yÇo0±©a˜ÕO2]ëOÿMÃ4`ËxÓ86^cjøÈw,ÇÞÔAŽO ×viÉqÕì&Iܲ¼f’î·Ú„ØÍÓnÆÓTMX4Ò<â£|: ¢©šQëzø¶a"Ó·±¢©I=¾®cº®Òmóè÷ò˜X¥01‘ElPY*tÄ­6(4î µ˜Ô…!•Dm[Í0B=dc·à©VïAnn¾˜W>’z}ùÁÔÝaãSƒz¦ J îwM‚l‹ãyC¬SÓFÔ·ÀÈ£nÜ4~°R1XÆÁâÃt‘e[Ê—/^´ÚÔ¢Í+|­¹Ä2)Ö.~:ýŠ»†Ÿ¶R©Ö(ý”dBx-,‚–R 9Uß$ÔN­¶Ò¸Ÿ…•N¯¼›.ظììºç x&TX Ý'èÀ P“R¬Ò¯ ÕŽ!`˜ð«ˆÂ0H3ñÅûjoÏÚÓ#œz,bUõÊñkõIxZnöÔMUv+>‚×"ìe W®«ÏÓ|.¤8¸Høç ÎS5_ó)p'B›xL–¯7A@’ÊÁñå¹§Ö¤;•“šZÈ•VsÄw)¿²®µOãÑG>ÎÒÂÂMGÊWÅ^°w–Á™X{›Œ¨0Ù^Wt)n Ç‘zˆx¼Kˇ0@`µ$a©Nª<-“K!eÎk±^¼3 Uðj÷PÍÒ …¬UOáq¦0¶-¬Eÿênù¶¡8–v„| xÊŽ. v•ºãâ2ÛyšBèD7qõŽk8W9xeÞµνº6 ì½Ý Zð¤œCÙñƒE¡ €½E:ÿ4~ ½[¶ƒ<¼þ†§Yÿü~_µ¿σ‡ŒÎÃ,>eÿòÓ¢ÞûÆjè?‡9ÕñH”ÿ½ÇÄqh8Ÿò¿ÅJ¦€;’`:Ë6UqqSW篾ú|æIZ¶9‚,diQàËÄ´mzmlWÚ³à‡Fß¾xÎÇn/Æí0ˆò/íi”{€üÓZUczzøápø®×}Í£—t9Ü¥ÀÉQ0ßùðäøä°3<¹8ޏÐ&ðºSl|˦<Õ—;‚ -Nü‰—ò¬€pÓä`ט/çl1 ÆÅtγY<)f ¦þ¯Þߦ“å0•±’}žaº ¸l±àPA²Ñ„ƒ ÷´üïÙÈ|P¤³‰€02ÝWËþDlÎ5/²N>‘äžøËRÒfÏøDdaE¡Aö5ä ‡Ìû„faâ;¼) 's–õá´…–ÀüÅQC9I¤•µx!q [æ.‘3¨F È£%Û(ÈW\,„l>š0$×[\9›&A& ©^J£ø8‘6&»®>ü©íò°\K •åZÇaú]Õº-üŠÔàѤ,µÏö¿|ý °ï@d6¤ endstream endobj 198 0 obj << /Length1 2291 /Length2 10116 /Length3 0 /Length 11449 /Filter /FlateDecode >> stream xÚ¶Pú.L·Ò-°”t,ÝÒÝ­,°À»tJ‹tHJI‹Hww§„tÒ! w=å9ÿw˜}Þ~Þø-Œ´ÚR–0s° êÊääȨ*êè¹ÜܼœÜÜÿVüaKˆ…+Àl býŽƒ­þÄðp†xŒ¹ápÿúùç“)|É,aP{¯ßæL™KU]YCÙˆíoÎÿh¥¥ažxV^^€€€0@@Xàûß0ÿ4àoòH5@¿ŠûW¾_‡ß)~ ‘Ëò_žü;¼àÿdø¥wrƒÀo8W«ß.ðÚ¬ îÿŠñK ssþ—ÜÄú_^”Íïáý°ñr´Cÿe—AþáM²û„Óüw9ð8ü†ðw‡ëw(~¸+¾©ÿxá¡¡n濞 륄?N\°ßEÁcÂþåÂI9þVÃs8¿¹ ÿ™ð/égÄ åäƒßíÄ@ ¼ ÿj^˜ËïºáJøûû[ ŸÌogøƒÅåjã þW×á%¹zÀþågîö/ošûoÈ7ÿWtx<¯ßDà¶Þ`ç?ƒýçœ-Üœáü\ÿxxá·þ7þã  ö[`ÍÏÀ,D_ÛV½n¹ª¢ôàØãíнxp£áʶG\çDêR#³+¢äË9JÊ|®1l#QfŒ¬ŠŒø&ŽR6ZÐÃNXº•€0„I!œâ€³ZLMçƒyüw7ÅÛ(²”¬]¯>…#Úâ CF ™Qí70bª+£í'u4Jêâ¼RLõa’› Cu{?M´/ƒmϹmƒBS°•Úë&®™”Œ°ë. K[ ̦gz¤ñûy#åZulNiX$(Ò6ÚÎscÓª,Ù†ØÁ^‘Í´}Ê^0x9¯‚ïGO¹÷„¼À:Ìk_5†4¢ºµýlõá DèØ¨%ôŽm|:þ‰ß0 oÑŽ*”,¨ã§8†³øËR=O1Hf4¥çM‘e·Fø«9œRGœ@7ì;IDˆƒï ö’»îgó³ìÂ'”h-ËÂþýéÍ ¢i[…ø²õq:Â8Þ°UÇ =äÁh-3D–3ÈùîÅYá)1fíØÓy™Ëè~d>ù%LÛÙd¸¯(ìqfí ëiC]º0D/¬ø¸„gYtÃsº=ï¶É Ì4|vÚó¤ØÊ;(‰ ’B´`+àÐh‚%wøáÝ]ÜÖTÞCEC_ZÃèža {ÂÐ¥—Ö¤×ùD&v€ù²R›ÕLçQ³¢-ÃGÅÈe.ß×­´ÂLPnF^m½šeL_wŒ™.'4’39ß:u©(6”– uÖV÷­ ñŠù»¬&#Z ¼Ÿ*Ôæ3D¬-ÛE¹ôDAF÷;E9xK"y .ÉšˆänþlªƒgÈ!«›rÝIÓ9P @yizâà&kV§‚Æ>Ä3àÍRމ§@tU[%a3±í ×Ûo:ÖLÏW?ÄAž"Û¼Bûο´ËÙÇýÀ-‹ÌNØp÷ ì Yg>ßodûŒ^-5ÔšCl€^ö9y™“£3êVv‹HIdÏÂ3³nw,yÛÓ¥<_íѽz+I^>6½i“ÜLKPˆ™Úàuås@²”í›k÷iÒ¡Ó«lgÿ¾²dj.VŸo„Yì²–,ìƒôØ'Áuí?Ü 6dSS£WC’]d1€µmʳ¥*”l¿=/’‹±4ëùðˆ¤£~J#{èåùÛ÷fäôOWˆ³»#áåܹËÈ”ÔaìSúSÙ?É÷.Þ‚¿ä%êŽïÑ7V¶xÃãEúâŒlÑ aò&§ ¢¹5s5Lú7# X˜VseÅEÞ×Ï^1蜡ßþD3ÕŸ=˜EBàaûi7 ,ÊÒî^éKF‹Üò=¦]‘.ïDfNN7ÉÅ•Ù×X%Ž–ürãP°8PºÄ´¯¥Ò?}7V³Ñ¡‚;üŠ®ì¸=kýÙ5£Âø$}›÷':+£LAQ3&ã½Ø8ÔsµRkî§Ù*×ùS¦ÆW–¬Nb) í£¸™§ )/åPó‰Þö¦êaûkÞƒ!æüY••îO/¨H•9y½ÚŸ\§Bñ,Ò u•îÅ¥†æ*¤fëb 3ÖŽ?–5ÑRXÅ´•é½þvHOiæëèGûtÊ{ý„ƒ%Êkc¥JóìVx¨µrµ(‚v‰¢1ð¹×«Éw5•A˜h”Œzù¢©© &â™4™¯VírÒd—qã«¡cûøhG–9º6Ì»”ú †Þ¥œ^Ãuv=ÓÌ ¢„“"Ìêô8¥‚&ÅRùÑüPÅà£Î¦„Á.ÂSs½%ð`ÿîi¡þ Â~J÷ªD À¾îÛçx÷Äm;‘aƒ:~ì {i&–ÙçíJñmÖÁ…÷Š»øQ‰—i‹ÌMºCã¿/,V \¾,†\û ß]ø€øu?Kb–ÅJ¸Ç! ¦`¡;ZfâsŠÇ5 ¤õö  +¬ØBDiƒŽJ^Ç‰ÉÆ_2ù +²2.UÁïþÞ!7œè2¹šœÔGR#zeõU òÜö‚lgÙ¾‡Eòá^1²c¶ØÑ—t­|w⑲ü¥)*#•ÖÛ™G;ØüÎqÞ?ªnõJ;Nñ˜½äv‹´Ï ‡¨j”. ¨t&ŸÒ,ÿH1N#§šÖèôRé·o§ÝxÁõZù¬@À°s×ÔR£í«¥kb1=ª–wl¦à†¨é#‚_^ŠQ‘ödWgŽ‘ Í|~>Ì#²ßFaö ö­£ŠÔ2÷ÁþP8qý1óÃ$OÌ(r£è}A—«Ã:Þ ‹âÉ^ Óxè_]„ Ã½–&F²š§Ñnª¼ÿà_jDðÊcm’û™E†õ{ßM¾½òRîéúg8“º®J$[º–He| ºr휯„ñ²vÙ˜(ˆ“ñµx§ÈÔ:︽³Ü³Â© .Ù½tÌ’‹÷ú m\¤^žt!¬L‘î°  ê ?x3¤mÂÂ2nˆdÊö¬5˜2·ÞÕGhÍ ~—ÚfE1Íjáô¸úi˜T»ã±˜Ç-M ,ÝÅ]ŽÐ"™Úv=\ݹóLãÅ+ ƒö΀Cþجñ㪎7>X«]Ã|6 qöº¿*:ÑÙ[É*{Çr†Ó}ÏÐðsµKóil¶ØÚ¤¿\ª„6X£?=2]:gIUÄ£yLÃ(µ‡ÿÖÁ”ðÕ3ÜBi–E{,êhÞǯçôpj»ùPÐ)ŽûoG;ÊúpY£¡Ó]´Â϶¬¬@ÍPrºˆɬPYΪX÷óÔÏõ2ìâøF†q!_ \±ùLñ&©ß1ݨª4N¨—Û^©ÓaÇkñ‚7¶sÊz¢-$»Äêg>±ÑÃÔA^ ÖÔ¡ÙÆ;¼Lïödì9ŽÏ†êŽ%‹šˆÏiTtPp´‡êÙý$™OZ.Ï1Kƒ•n†w-P¹JüôË]ëüórnåÖüùy½ÎÜöÕ¶›9|è_L}:î—«­Í±;ve¶hŸé.~@̹->T$/'ro¥;(ŸeQ_]ï9[á›k>¹^~^b +ó#†E{gTÐ೎ѯe¡÷¨mÚ)†Ò¯ ˜Êg¨ôYJ}ÍëË$½^…Öm:Œo• r¢·ééêî^Y«$ßö’¯¡ëX£„%Ró³ ´æï÷GWö|njަªÿ¸º®«ðàý”ÿ†GSõŠôRb‰ªÛ@К:{KÛ甌¯~Ò¤ùÑ1PLŠ>ºñP–4 Z®çˆ7Ç~-EAa{K&7EK’ÊçÝÆ“}Jû°·É‡r«—0±ZkSôk=¥?–¼&' ”ì!3$ôñ GíWÆÊ¤úHC”j¯ù¼åUœŸAtæ÷{vá¥.ÖRƒn.+¢“c–’ÚgÍ{_‘؇õ6ĬFä&ßbÐHk9­sš@$ƒ™ºò¹µ®©ÚªFrл[Ççé:ç)ÁÇ¡oB-fä*üîœéþ¶ÜÄ>hœ/&hÞÌöð¬u)û—®]ݵ…Ùh¢–4$¸™u;Ñ •ÕÏŽŽÑnËØj{½hcå¾ ÆÆª³eÉÉæ7‚Ôå--„ÂÑxÇ Y[ðŒHî¸Þk"ïô©Zç'(VWöò æ¢l‡,È409šœ{€ꥳ#˼óŽ LÙÞ$Ïçáì~ȰŽß€öÎm5‡WrG>Z1ê-Ï|_ÐÐ-¯.®9äøÈ¤EQíÏ­ˆ|?g·0ñÔœ±êB¯•,NOE¶¯g,ëêˆáo:ÅœûOQ8|¤ÕÓz£úSIrë3Nݨ$mé€ÌÔ°÷ÄÇcG’ébzkxÔjÄ9bØ"z1]0 [±‚LâÚ”Ñ,¿ÝŒfòSº‡as­~#imÎ!]°9x⚀r{ToýYóeñú3ñúâ¼z‚¥oÂ=nY ]hò—ÚO?®4ë680"l`³Õø‘zó/L•¶Zܺs7¾ƒ^ˆá)¼ÁÔ§¾ñΧã—xì5>Ô§<¾^܃k‘Eöq91€éÒQøŸO\®{º2€nIfyæ”X!øóÆJäw"o³w•«¡<“zËYÅΚ÷uB)úŸ¶€_ïœû¶0zYjÞ&÷™p¶DýÀÔ=Ëá´!ê°Íy¥+›Ùp†Ï”vO.l‹¬r𵋱"k˜ \à2#½<`UªXøL¨Š{:Ä^xÿáC+!P´ÄÚMwO†–Å3*15 ÞO—YT Ý^^àš]}B¿|<¯$mú®¢õ¦ª«[£Al!Ô÷³¹^‘Iµo,ª‰ÝéßFam®—!à)Àœ6ô´ÐRƒÚÎqä"â+â ›FÓ¢žXŸÁ[îû©Ps‚Ôæ Óµ£{{ÎÑû·ñ©VFy}? gŠšJð¾ºÌu†œmOŽ»Çt`¼WסnŠ)I 1Qû$Q³4Ù‡“­KÈ¡ˆkÁõµ&±TêûQ<ÙÜàéƒc JŽöÿLö¸I]\¸ãøØeí¡PzµÉŒþu8+0ÙÜhHÛû‚œrç’ÇñÈÞ„¾¸)uÙj\ À·Qý~Pëk2&ÙÃQÿÈTœY9]}Þ-R/€ !~ªTtX|&Ϭö‰Ñ÷*ᥓÞMOleÄ3w þ1º'vÏc¥žª%Ãê¹PåÓD7 .ò¯põÃʇ×nBѼË}„‘¦X¢€À–•†Ü)ô^ì®O=ÑXhá‡äà–ºì¨È§²,l ä$)Ę%ës>ŸÚôMÏÛåuövš°Av.¡Ÿ.u¥¤bˆ‚`cøÓy¡KájU×êÝÌ”‚ñß²Òý`ÔýïEãîÆ6 gz&ÝH ·E¨'Å"Ù·AbŠ[”ß’§Í¬}óì1ÏÈ^Ó¨5ç´r¦•AÐȱ,œ¨1Dªo6øS¾7+e»ß-QiÐñà˜eûEoaŸà1r@NyõezèýC®\ð‰ 6E;•ö˜‹ƒ[|¯T÷‡˜‡èûÄź%Ó‡‚Œh¤¶ ¡ÁçÓ®Bö F奄}Ü(‹Mþ“Bv˶ŸPè|›H,äï7›¹Å[Ð0+)Úûž%.1gʽז×&­ƒ•,¤ouËÛ§fÒüÑã`¾0jTÏz^¥F.‰˜:‡´:FºyÝ[âªùƒ”÷©®—÷Äíâ(쿳¶}ÿ‰»tj¯S:E‰D3ZûĤO\kÎ’ÉÍŒ|ø=2ñ fôÛèù¥ž± è©0^KÏnçâ…»@ŽÇ™ÿ½µ©¢…Ô¡s]Îû¾“¶Ä´Öêhp¬ÝpªcÕ¶ˆž·ôÇîÕˆ óƧÂò‰Û'ËX-Ô`ƒ7Ì`rß«£§Æm±ùâ4X_…òEù8‘ùc5„³RÌZüÖ}}¦¬¯Ñ-FÙê¶Qõß|Žr¦uÆ\#ëÑDÞ äîHÏ(#_2¤“ ; \ î>#Ý.â©›IŠ@ÙGõÊ@¿âXŒ6?‡˜pÆv’v¬žXSŽ*ææÛCɆÎ)÷)Z ±ö±¹Pz ‹T£R|õ›jSŒuÓ„Sr“–À£vë#qpdœÄëvBSüã¡Pâê¥z:»°”¥. ã'cØf§kõîõ õ~΀—=‘R³CîÇô‰A¿AËvëäô¯Ô¡ë”@Qì^ž+ÿ˜’­¨Ù1«âóAÄïÓØ_d鯑·¼z6J@ð%Ʊ° ë :Á¿ÛË×ÖÇIª¢Õ›X Do9Èo4ÛŒÕzÕꬃæï¥äi=ÓÜf‚çE¾3Ѓä0«a¬øé˜S%xNeñáÜŸú€c Öf¯ÂÜ‘R² f^ù#nì<|Eô¼{ã8³”'UùZ£jR7(AÔ`Ã5É#ŒÉ£thõè ×à =Xq„¡ìSmuÞÐ.pƒUpU—,P»œæFŽ6k˜÷ ñ8£5_ÕI¬éã^Z7Ânè≯jpØAaÆÍ]éªÒ'62ÛüLm”[XùqN‡Ú&åMhzAï§(ϵó7uY>nºL Á ¶c4Ÿ0’úøú¬zâF9~þØë5€É/CŠo™Äœ‡Œo—0ÙBSôù+É׉´¯‹J'í³øjŒñd’ÜÞÑò“KÈ‹ïÚ?Õ»Oc Æ»ñØŽ’ɼʜE8´…™N[²vÚ=Öñ’á FÃi¥ò+”ž&HH)¿ÄK(=}æÌßóš½Y¼ècÈS¶‹èÏ‹M‹¸žËKÔSü¯- \¨jÆ…aì>£t>Ÿ“狤ÞáF¹Í „}#xCâù%Èå=á^)s¤‹ZéS#f‰ÌàS{öqÚï1Œ†Êc¼,ú¨™…Fô,\ XÀ&‡CoþÈÍwËè-ƒ›kéœMCŠgoÕå Eò 60œoIBu% úõ”J„C³Ûx±»‰ öuÍÏéåju¾Cy&„ X&ð OK><º*hÐò¹s3ñã´mÏ£7oËŸ.«ü”qÎдFCˆ‰F ~ÿi±„Úc»Ã!ÏzZ$Jå5AäËz·þÈyWব{0%¹>Hkbê8/Z­e"wf×£rØ…ÊRÖ ?nçSE?ÝÄ50£í¸‘½ÑÝ[Kéäth³ÜŸ)…Þ¬¹°+@ÅúáuߤFY 4\c®´ì¦´‘Ç@ñc¨®”ÕÝÑ”tK‰6`êYKOîöq¥Æ›ÙúëÂ< CAÞù@O=‘+ÕXAkÐXç AÚplÚ¨X}‚S }j’»çè0òÄbûf¸ƒOªš7ƘÚåAdš8ì³Ð*ª'Õû1þqàsô ”h”æ(g$Ÿ-p"y ¯Ë⌱;{ú8²J½iÒº‡ÃC|Væ‰L£7a±ŽÖøͼbF¹»ã@³Ö‘އYÌéqðô1ßPÐ'ž¿mÚr•ö[‡¹¥5ÿJ¡U•kòذ¯é†Ê—o÷Ž)l›o]«ª.÷‡ü/¢*†‘§(©ËŸNiÙw¯žÚ·QØ÷%E2¢ÑhÀ•ºßò‹_£,½®Îc¸¦ƒxmÉ|ÓF”7í=×U{Vݯ#ÇÛŽª!ýÁ>Yˆ%-9¨¾WÓöcNhÌjñÌj¶`V©8ú)RXâëaD®Ÿ¹’"y#¦ (ï­’ð h.»Cd+N2‹bg“²H¸Ó’Î2Œc[‰?FFûü”u-¯Ib•[ŸsÎö¸úёנ"åáUl.%Kž=[ÿ„@~Ñ£†ÇѶ¥\Fkbûuìÿ“L¾t2KqsåøÄz8ëÌN¼](=_2(òIòÚ¼mòÃUPêFXnN©&ˆV7ˆb0ÕÎJê ð‘lrõk2 ãÌTÆÛ¢´ö̵æÆs„:͈/9oÅK‡¯u§—o_F¬<8“J¤åÙJ¨ŒEÈ­µ92~`_¼ø’DLÖ@ÜÖÙ”Â[2ûÙ3ßW–ÿ²mšèúÛ í¶·Ï-ÙˆãÑóë|…;EMžšÕ~ð§ ña¥Ðh2nMÛå„~°ÞTfxÄûK‚¨¬Õ‡ GÂEZ¾îȆÞNÒsL¤pMɤ T¤ïãCéô Œ Û ßÍÒrÙ˜ôus«ªéΈK$Æ¢Mò¨ØÇÜ|1Ùƒ•¼Í4úgxã2Â[ÆX$©ß°øª=2ã|†»ÑÇYWsy·«ˆ”¢ë“GpVœèÕ9®-/dïKõ*£?ƒx4kú!ü›ŽÇ†·Æñ/6aEv<„Ú—+›H/»›@tÑ2#3F´f@R®ªÙrÌ× rVMžËꢀQ¶(Øý‹^!ÆÃGá(/[n$PÑS6ôkI½”Še 1|ãNúû¾Ÿ,ЬÚ –½cÕ#3ጵ=tjÝÚ,•ÍQ3 Æ‚´dùÁ‚c ÌPnýàp±ù"PqÒc"ÓÇÄMC^\ëÌ$‹© ¤ÀѰ™†`O³-%ª×ð||ŠiÐR£ürjhSŸÊ¬j‡øqÿ™æQ×SA_‚î~eê£)&;Y3'yzó¡VÚÔ^b̸|“•,uµ© •Ú™–Ò'±êOر.ëZÝÃ\†ôç¯2ú´¼tâÄÆ‹¨ Ý­ÚÅv YòTpÈš…(% ¾ZhÏ&&£ƒËl¨¾ø?)!вÜb./¯¶þŽØ«¾£ç¿Âé)YÐÑ#Y´´Áês`ÄšLlyI£ƒh„g…“pœ/ÃZK!¹"zÉIù-H}.øB·ûªÐûV,½·9’·}½&ÂvM£ößâ48‚ŽÙtú÷ï›@ç/9;?Ô¼ís‹6P¹9ß õ¨x³¸åw\v:M¹ŒÂa’º7?әܳ€áUÕ³¿Ž6¤¬X(ƒð̼I§…W×ç(_Ay%çù¼T´5¶ò¢P/æñ©™ ¥-0íøå{õݺ°ÜäHsXX@—$é3=Þ‹^Vy.lw³—Y`~ÖW-µWÚt…F”qõÜ^ß‚œß~äŽÌÔûšÈf ,'¹—Fk8ÉûöSà¸Ã¡óH}=‚i#Šœ€6OqˆÄø¹q¼aˆqö¾¼‘A³ˆ@/Éiø3ûý—“²hGb|Z%«AuüòÕe™õå'6 ~Ña¦«jÓ#$’‚iB¢_2øÂÄ(/5¸¼Y*ÊËHeït² \U5¸8Yê]–Æ‘Žûí·¾„w¾Ãü)ýùÊ®¨â}ÓuêÛ·£í¾Dê˜\‰¼«Ç­m]•çïî§d"¹˜ô¡¸Ë²a:Û¢Lëj x."©ÑHs2]á¢HK„ˆ/ÄdO´± ¹‰aÕØ°u}€55´?bæ]^+¢x‡U2Gåc‰µ‚¦Gîڵ չ͒ X”'¨¢ákWCsšFÖ¼VW¦ÓÊå•hÀžÁY£1ÊH;ÎýHÃÅða’î‚kÎÜ’Ÿ=·¡$:Ð 'ys¦>ƒegÄ‹ Ûèã,‰Ï˜½u({ñpÜáPS{¯þi®ä‡¥•3¾É¤?B˜!Êð3c’Ë3:Ý×¹GÅDnËsÉyoèÏ¿¡àÛEåY¯°ß4„è¤-%Ä‘Ï-º§ô”(,ÅÝ|ó4¨‚Äø#fâá—±ª ²±ìþ„®ã¾¥F2mLÛ Ÿáº“a`óé¥ú(•Ò9ø?ÖÆñ¥âœrí©ËŽô¡EÒËù>) ÌÁÉ/»|AÑûœnI÷ÙKò*/é¸Ç+·‹ËïÆÄ žPªXÕbYŠ¿‘+œ DYYoR¶tW¨Þ­ñVø`ÅŸÊ‹Ë"´^›I>~ßÔ†³É“¨wì#FC³k#7'gû˜6õüÜ6ÂÞX7‡½L(ò3múah³è«k\¢ã~sCÁJ¾­ÂÅ@ï׋Gc’FGbIºs󦱪Ê>l¡¹\«@E-®,O„N”;ƒžHÅnŽ‹"—É.]O¢Ã(¾ÐeŽA-‘Á¤[ÏÓ»¦IÕ óY±Âsh’‹yž[BÕCW°¾æ#tÇg­ª´ióÒPó}¢Œ–[M ™€ ’}[$aA‡ÖnÝe®YO–^õ (—?{™×~¢U§Éía,/§ÕpŒž#ÿ'ï…ÊÚ–RÖü§ï²\H?waxÜu‰Ã ¤ÕIlPÈìŸïj£ *`ºØ¯æö_xýŒÖßÉ"ÙSÃtÑÂ%oë/çK]ŒÚ“±ñ× ŠÕÆ!JÕ™·s¢sD\ìL<°âDy~æ1ëž`-’ö·0ûœ'§=Õ1{òܽ `¬¾PõcæfhÞ›9Ièc{ýÑ+³§U¶jÒÉ‘=óÆ8cü10ÌPÁ½› iû T­ËaMƒX¢8ÑØ´CLKëlòü$×9Ë »âñµÎ¥Aõ•œuÒÂB°*á'9Û`û“ÏüèÔs9&‡úl D²%:'4…¦#zÿ¢.æ)Íð†¼BŸ¹!R–íÎlb¦¬vC"wÀ³!TàH] ø°2ôµ°|Ý[.Ðä)oM{%"¦ˆa«Ü-zFý³i/Äë/-‹d›«¡L”Ÿ_#õ†ÑûBËr;nnÕÓ7# š,íÒ«½q¡ãìžÈŸR£VeüžÍªè\Qr¤¶£¢·oЛ_×x“Ýdà2yÈôªü¼û°NxŽÑéß­|M¦9K8h®ã±È¥›ÏPTju‹o}† ;ÏAɱÞ!;'O]¼;¾K»™èŠ=;uØ)ï™UI¼ÉKVÁ ±IGEäVâ¾6Jl}•‰9Ó ›ÜÃ[T¦ÉØX\'"‘ÀÜÕ¨]ÎiÖcÒö/y¿äâ²~ᱩCºFéXq÷CuãÀQÔ›âõÇ]%2o¿ ÝöS™äOZ½^s&]J‰GWô⑘¯€j…ùh¸¡s5~˜‹’NdŽåa-tÇ ^E8ñ,º¢^زSJÜQ‚K^By³¬¨à„…=j²´£UðᆩÄb07«_/NIÖZµŒ†kÙËgÕVçÑSG†v³S\ˆØŠðqS-2A¯ÞL#R=ÙÇ >gx2Ó~Ò4b;ý©òs¤]—䣩ùqíg™j„¢—y·³èÅõÁËk”ç£;ülÛ««h¦ï‡Àܱ6K®‰ý£Oë"»Óâ? 6AÞRûlh ¼œ6W‡–»UÊܘ¯™ô ±onc¤Öjñ Yl*«mEØúƪC2ëˆEÃBÇØ™£ 1DI$ÁVQ鮸ǂ¦,¾¤ƒå;¥Ëká)¥³è™Fg¼¿²æÈ†‰P’ |?›ƒÈ÷S¢›¢>ÄûbØD–õNP¢™ªO"o.ªR÷XšÔnˆ=»TjtH|ü.9Å0­ IE‹}yÝ–Y=QmmgŽ7üÕŠŸ²ž)zTÑÀ+ÕrÌ’ÖÎ¥äcfÚ2ÅK|œ(¸®—ˆ$?äôË÷lµ+I9+C yÇî‘5g±)4ÝöÆ•)öiçפIÈbWªÅUͱ° Œ: Ö˜—•ãS«œb¦ß‘¼gqKË8§»yÇQÑLÏ£™J¢ÃsL»'Žüpg"9܈o5Ý£”»³¼F[ËP2Ϻìl¬‚vQk¢±³ð¦ï ³ °MÔÜL)|·²ãËŸ0µˆÒâ {HZk7Û´’\WÒ;´œ@âæŽ¦C–/pPä.+qÃúÇ~)Ìr–x(ØÞ$-¢“l1ÿœ®®tÆã“Éù:Bbb#ƒaA¹ÎÓ±é@!}M}BÀø=þêYIkm¢g7}Í…¤¾jF¼¸Òmmýäõv•£zF9 ‹ZÅ!HŒü©T)Ì%‰O|¹/ôÃó×ûØ´áõTŠ>§ä4%›3Î$Q·R•ò²lt˜ÿ1yt endstream endobj 200 0 obj << /Length1 2519 /Length2 13338 /Length3 0 /Length 14759 /Filter /FlateDecode >> stream xÚ÷T” Û Ó Ý -Ý]Ò!ÝÝ 5tHIHƒtJ·¤t(€¤tw7Ò}ƽ÷»uÿ¿Ö9‹µ`®;®»Ÿg ¡PQg³›¥Á®Ìì,l Euuv6'  ÈÕø?9 ÐÙvøÃBÂhê ‘IšºB Áy7;;'€G€W€ ÀÁÆÆÿ?C°³@ÒÔdPdȃ€.(4`G/g•µ+$Îÿ>^™ÓØùùy™þrˆÙAæ¦ESWk =$¢¹©@lºzý‡â•µ««£+«‡‡‹©½ ØÙJ„ž àrµ¨]€Îî@ À¯’J¦öÀJcA¡hXƒ\þV¨ƒ-]=LˆÀdtp¸¸9Xèu9€²#Ðáoc…¿ ˜ÿ4ÀÎÂþ/Ý?Þ¿ˆ@9›š›ƒíM¼@VK ,­ÀâêéÊ0u°øehjç†ø›º›‚ìLÍ ¥n S˜B*ü§>sg£« ‹ ÈîW¬¿h m–r°ÛÛ\]P~å' ršCúîÅúÏpmÀÞÿC–  Ë_eX¸9²j:€œÜ€r’ÿØ@D(¿eV@W7'èzš[³þ  áåüKÉþK ©Á×Ûì°„”ôY!P¼]LÝWg7 ¯÷ŸŠÿ"vv€ÈÜ`´9 üf‡ˆ–cÈüAž}6Èú±Ø~ýüûɲa`;¯ßæ˜UU[B[[ñŸ’ÿUŠ‹ƒ=ÞÌ<ìfn6???€—›àû_šð¿âÿ’ª˜‚þIîB9K0€ÿï Íû_îÿ,Æ«®†ðßJ`È:¯~o¿7›9äûÿçøËåÿßêÿbùÝþÿ›‘´›Ý_úWüÿèMíAv^ÿX@ÖÙÍrŠ`È8ü_Smàß÷¬´¹Ùÿ_­œ«)äDĬìþm$ÈEä ´P¹š[ÿ½Eÿ›„ÞäT»€~=qÌìllÿG9:s[ÈSÅ2­¿T@ÈMý7¤”ƒ9Øâ×ñqpóLM½PØ ÆÁÍ ðf‡\©Ðó¯å°²8€]!.Hy¾K°3ʯ™òpXÅ~‰þF<Vñ߈À*ññX%#~«Ô¿ˆ— À*ý±Xe~#N«ÜoÄ`•ÿ ñ~#H<ÅßOé7‚ÄSþñAâ©üFVµßOý7‚ÄÓø ÕjþFxÚ¿$žÎ¿ˆ¢3ýqA"˜º@¶äbûÛâ`öA4ÿqCtæ`;ÈTÿ¥àú%±·ÿMúkܬ@HÛ€¿ ­ù{×~@²°ü !æ–@®_ôÿ2þ ¹9A÷ßüì¿v¿õ¿ÌÁnÎDƒXý!üÖ¿«4ÒÚËÑèð‡DöG|6H6@HCmÿ€Ùý!ݳÿ£4Hg~3sC\ ×ð‡R;øw2gðÔb«!dŽ×ŸƒÐòw7¹Øÿ‘:ÿ§É\¬!sÿ1˜_­rú=h¹“Øhaf÷FN®ßŠÿ’òóü£ù¯=ÿ?Òÿ³ÿšäs`‡´Õåw/ N.@{З‹û— ÐýipCH\ o–ß4~<ŠY]­ì¤K®à? ]wûBæþ„äáñDzA¼ÿÆ¡÷úÝSˆë[ óßÜÿyz™»9C&àú×òhûþë{è 4G™›› ÛÔ¹©#ö`ÞFXYk Õí ãv¥Éñ¶V@L—w7±¨ LQ™- ù1íCÌp|3âiÐù1`9Y6ÛJªwCü”9wàö¼Ó Hf&²åM ßxy§JŠa¢§O— =ýðž·‹s§r»à±ÍeGÿ`(ºÂ¤H&vËj;€‰Ô¥ ^sý®k€ƒå¬Ÿê¦!§9ú йÿEx뵡“ö}i©ÿã·ÞΟyoº«x*B° qÞÊSd Æ÷âÆ}”ot¢ç¾’(Mà<™ì†ÊüŽ0~ˆæk¦Ú}¡š™â‹Øl®Kt ÕxL®Ð…DÄ'–¦÷6cyÂ`ël…+ù6×S“ürH«{–Œ®M½ Ä Ë'"jòúÇ2¼´L>›åâN\Ã7eå ¼{ ï Ô©›¸ÕÜ埵!Ú·˜Þ¼6Ø›í ß·vˆ$ ’%†í;òɨ‹‚S.+ƒæú0%,µwiwùµû¤Âƒ$x{ ±ÐܪÐ.¨ b0lçÚ‡:QS®kKD’oW!Eœ<©¤5Ih$ø’$»í|Çû¥¹žü“þR¹®°Þ(n>ˆŽ¤ì-Ëæ 7o#¸/‰Œ>Þɼ‹â7óÄ«®8Èm¼ñ:õ-²Õ{¼åÀ9Ãåsx6Z&´fЋ_Ô*)Ó«_M¿ø÷^ßéS2¶wÐï•T×Ð\­hÃøZ±}C¸”é†ó?¿˜M%Z‚ªÿZUOLüÄO½ž±iµŸÞgºÈv°u?S3gþbeƒR™·âÙÉe޵§õn2 Þ×ñX,‘žÆ„1 (ÈԴcw`™øµÕ|Qb€_áHùÜj1q ’ù°ÍÑ:å”Ô@B¡¯ßFy~{ØÚ Ñ91ó‹Sîs³èÅvµPóç”Á½i›Qé÷b©Œ·ŽCZ³ 'µ&_Õß‹øHšêâí¸£ÃDl03¶y¬ÏÍïºÕâöZèSø®¨:(žÝ&$ƺñ„*ª‡j úÔf#_R·k{ô‰¡Ð"@€KÝÖ®Þe<Ëן ¹¨ã™Ø!ð<ú9Øýû‚4ížÖ¢.©MÆ··¢—_ò÷Ù|Oºü/h\ñ“á4‚žhÒS9TÅ´ß;ñ^ñàÔÙd[΋J~Dd¨æyû¡ ØpaŸ~,‚$˜P’ºE\ `#wpehYÑõrÐĨ$Y@µx’8öSäBI=˜8&¢vÜ KFW+•é"?‡Ï4ˆšôÛ"ŠÂÈùÇ|oØ…¡|V:úήÂÄ[¤¯}\ÜIj LaЮN‰’6¿d_™Õjg)j©¯œ¹Ÿ;ÝøcZ¿Ð<•8b_.?’Uí¬<ùR…몆à(ù´ ¾Ÿ32rtÜ—²dOD\Ýï~ {Kvneùpð†[A±óÐ^yÞi§pÏ_À¾’NŒJÇàfmÃà¾3^Lëe>óCoØWlãÍè@‘Ö|d"ÈGÄZ°5DùÇ7º)réIÑø[ö%ÆÉ[žéîÙ!ãùÿ@ßN½r¬P] øå“‡ÉÕçòËëK&õ’8šzØÖŽ'þþ‹$°açÒõÆ„ÂðzÇ"4¢ Ö+>>eå$Ñ¢z†ͰiZ‘¬î¡ƒ^l±Ê‹VßZm’Q„,Šâùw¿9«J•à±é®£S‹Ìï‰I©=”mbÀ÷9’¼_.[²•Ø7ÇÇ÷;IRÇÝÈKÂÁûT+–h\Œ“ÁBá”øÉV€Cå¹Ãªpð®˜ÅØR5žåqd[ä4c#¡+úÁ¨~DÔ¡#–È¿ä’EOhkÎOW<˜-˜óƉ,!õ‚ßêø™»ID´g"9pÄÕÈêò3/‡gš3ºè†‡÷«Æ=ã|dCù†œ ää×dÀºÛE¢†)å×!cÞE¶s1P:*9ÁÙÖBmjZaƒá¨áB¿ˆÊ{‚Ô,‹öªq²:ñAyÛô¦Ç?}ª51Nœ›U‡£;œ›ËÌë¨2/r]hõçë}V*Óɳ°ƒíi>ºs¡¯["„lMÒVoÂ/k†äñ}8ðBí`öá@V"ä9ë/L2vüÉ–kE.pŠœÚ»%¼ áíêxÓMÞfÕö*a_Ì]ø^Üú‡ ŸãûÚ¬kÄ‘vTSÔËÄH]8¡lmõ!/°-RˆÓÃ$ˆ¿_©Ä{RtE2–3UÑŒ  îïÙK¦TÒŦ[ódøã…-²ü*IˆôÛÇ躎C Å㲞çaìožisW f#»(ýùt~½œÃ?î@UÞBü)†Hï}.)vî¤d¤PËüí.–ÛƒfÒý$#¸ðá½rJÜK%¯ªï?¹2´õyºBɰAp‡§û\d®±ŸßÇÇâ:Ĉk #ìMœE /ùˆµÔ‡Þóyó’”øÂj2å ]߸ä:’ÆæRóÅè{År»¨«¼Ö:øæŸ'§oÏ v¼º”¶ba@½~Ô%ª ²ëB¬'©û ½nB¬zoº·æ{Áñlä4zÇr#@˜¡{ã†9¤Œ>ÁXi·¯U™ÎF*¶ÝCéã>BZ‘AÞz‚/çPeaÿdq·Fg\¥GМ‰Åâ%¡[7T¹s•vÊ„;£ë1LVúUmT‡^f³ "ç[ª^=˜·ŒU†òzR%ÝC|£Zm`Ý£¢îv(ÛN ?Ô£;:‰Ú„ ž‹·žµ—ÁçXŽ^?¤—,žx³ßG[ X¾E¡]œØV(û™Luöò¾š‰ç f¯£U¬è„Ò@L&Vc¦8pYz…Ö+áÊM'–»UÅœ—`¯Ã!|d¹Õ»ÂÈ.Ūñœ¬; eÓ{;K¼­*±9ü)nÐáùÀá×Ï­‡(ÆyðÍC§1µ‡54eÓP@_ÅÒ‰DNÝÔ*wÒÁûž–ŒkªNü1Ú_têCÊ–fËM0åN‹¼:4»æÀ§ƒéI«3.ßñ="ªä•—FÉ ¾¼váž/Ä\4sw2ç›Ý"ËTR-”Ùµ. ø_ühô>ƒi¯|ʈÃNÝk˜Ã2ГܹWüµçìcÿä¶®ÚðdøJ`ºyCçÅ'\ÿfËPÝ='›© _A“ª^q^ð2F;q™$í4* žWø;T³"î¯/nu…ÒhÏYž¯­MÐ\ÛäBë*›æ §2øŠ´ÁµµŽ©­_'iL5)On>Óä£M>^JvíÛ—ç¥þKÕ08M»7ïvU@+Wä Ô‹ÙBêŒÉ›À}'¶z `*b¾"+]u¹ÁmçºåSûŠ›ë»¦† Ó¼ÌZÿØ3—o¾?¤0OºZKͽ•?e\C¿’ÓQÞX§ LgŽw1ò*]¸.­‘ EÜR„¹àê^ }+ö‘÷/yQÖh-ñ§^ãÕU23HCôqNŠÂDÈкe¡c ®N-£Àkò:Øþr*æKŸeÖ‘îjÐkãìkZƒîkê+í´JãL¨M§.ÁQ­£ù ‚Éê<-Ïi5o š{›¹ñC_P §à Ø¤ño0—mñÃV$sü¼žè÷àT}ùi½ô¦(3FòLý´h¨8»;ÝÌÊœ  çÍx‡7æ¨4#„¸”kø~Îugß sðÎwÙ@½Ç+¶ 0ÍÎHNhJ2U dxNQ]þüM• ]L/ÀúKްÄO¹)ùø @„Ì÷ÔZÂ÷¾‘Ú!$¼Ë2ÐóeQsìzä¿ûwÚɽÛþj™6ÿûú¹uéƒÚÌuýÁh€ø¾}KŒ]6AôþšÄLe+õü‹é›¬ëY&F”Øhzd<´ÒOÔk¬=¸S)¢DQÂiƒà”®ZÞ0‡gj–!öoË.L*ïÊ4â nÚ©') ëw´ZDJSÚâf$±bàs#Þ]ì~$¼[»kÚèZ"d×iq‘ScAOœHkkÑg F®W BÓß)áO}ŠÆkqÈ>Õ~FÐk•ë&Ê÷%*š¥ú¸î(ªèP>6ÑÏveñ<á™Â](2MÖÕ k$´’úû¥¶£‚8µ@fØcð@y º0yäÀC27ù‡MP?Xœˆ‡Þ{Gî`6˜¸™“Òsô$ËgºK%HO³®4åäO1ý#ÚQ”ƒzÜO­¶´·ŸìG˜—cfj×~ØK1"Ïg[\$7FmÒχßp0N)35ë®ÿbŽ…B$î§„]æ›dqƒ/܂Լsz³çNlÚµ9/ô„*}qŒ0‘0ѬrmYß»"Aaƒý o*rÓ%Ë ðb·Ú,‹öA"¤k™‰Ž ˆ|”gGLVW¨Võ ͦ¶|ÆD:N¶C¢eÍÊÈÁ> åÒ—¸Ò‹vwB°Ùõã*]$ ‹(ž87Û»ÖINèkl±©1ÀÉÒŒ3y…d"+åÚUN`¹žrϽ“ ǔЧˆ'JœDgi¸3uY÷¸•òä f›NŠ¢T3&âÅ`gá¯[( ;ze{:oºß‹€êàæïdEì œðØ#mÈ>¡CˆÕå>D †uõCy]r{ÈÞ¡uú5á‡Ü,S[áË!ó³¢»¬·GŽX­ð¦û÷û¨ËP?%NœO…’ ãø·ÑNU|wQBs`MÍ\WY½“Ù‰gŽ /ì{£üw]Å ýŠžðÍÁvZ¿#UNû¹‹Cø™‡œ=³#L ÷7!¢âª¨vkçP:ÕU"­ª7„*Š»ÂªÜäHÌU?<ÜÛ)nE7ߣq­jj[ ž´GŒþ¼gZÐ_féšj9H)ÿh•)Ç”%ÝÈÊ À1|"´ÑƒZ™Ú’ؤñº’˜ÅqBRLN¬tôÚV¼îR»±|Ì”wSn³@?Ôí98ƒ[ÿimûÓ®\ †¡’éósþEW›j$²0¿_v[å%ËYî“LgânÜ‹Á+.2"0àkù¶™qk ¡JºÞö3ª—f”8œµ_)ì¼!9y(8‰4ç­4ÜÀ€>ùò-k 97ƒF‡Ü¦&*U‡:è•ÆgG~ä¸ðY#Å`GäÛäéï;Ÿ4ë%¸“™èQ³·QõC*$B»¾bFzß2<,·‰c0þÔjc›?^tÛ—ÿ†%ô4ú­í*NOÝ3…È–ôŽÈ’×O­”ÖÈ#de>|e¾õ=g~¨ÔRŽûE~®ˆÚ„;®©Rp„9ÖÍýË`¿=YgTùÌÐ@¸»žU\åŽ,ýÎ~¾œþãN2xß&̈ˆép$l”¤œ±­ù{¤Òèíë^…_»0QÔÇ¿X¨š/§”FÑ”>NÌÞ½Î}ØÞž½gD·4ªrª"g=Ȉf!iâù@ 湃:…ÛóÐ÷ßÿe˜BHÓ,éß1.Yžà±…øÊTϦÏZyåg2Û@ZÊ¿Îü†X8ÍóÅn­MI^+e}o$4Ý9ò6³*ýÔýÂêÊl)»iÉBR‹ˆ¤s {Ü6–½|¨"Õ9ÛçÀ¨Ww?${™wÙÇðÙÚÉjÕ¯v¦ ŸÉ¦déäß èâ¥sdRÎ𼜪2µi|a°9¶©épSÀ7Oç%ÛÖè½!iU‹Vw¬ :¤ÆA*gb«Îlbx 2.[QP_ƒã[ñ_®“ÆîÏ”BËe= OܯB9¸Á(Àª7ø½Ük!©¹ýîôâÓ‚‹˜ŽÆâgrqÎj‚! )˜ëŒîW°\nMÀÑ7˜rË1%KY ZLg^-—3*cœÔÆðî gb‹]ç'ŸªH¡bðg&ÉmŽ]º©Zh*2^~HÂv  i¤=C2Ôys3Mæ¶õr ©g¤ˆýg\õ§Óˆ²8%£þM6)´u©mÎËP¹@£r ›R½Ü$Úʽ>¥¸¸½œÐEÓ©ÜZgÝÝpm—¦´ßìe>ñ· [ËtÆLð0g,Ìj~ Š¯Œ£!2*Ű6‚äB-†yjx ªé•Øî›p3¦"sÛ@Äûâ~n·Èâî“Æd´­»úª1ptå¶²vGجúÚ›Cž®Œšv‹¦Ô=wNAuçW¡³Â´mÔÔi]ªî >¶Q½ ª™Í9Þ·T—ÄÑ'ÈÓªÎÒh‡s ©QÊ®âë¢éÿh›V/åyœ7ŠÎ;3Ù—ð=d¦ªµc·Š*AȲ嬞@棽£%¹ÉÏÓàOѽ£'û¡Ž-ª¼g° Öà…ç…߯¾%¨Ã_²]í §’µš@6Ë¡Cd}‡^íÒ~œhÖY'<ÿ¬Réu<(Ì4Hµ"Fží\o¥ØhÚ)ï¤8y¤´à×9º8Ðä|T¤º½O en_ßøv‡:¢Ü¡ah`æ,±u³¶öÓ“æ@äÊÞáž_ìÉsñc¿¼])ŒKI~4{³’h*¿û§<’Õ¶0ž•úPðg®4ãÔ׬þr½q¬ 2ʺür7=¦ò꬯Ç^Vøvøu •ß÷“œ¶ª?Vñ’èuNÎîÞ ÊѾYààN`î…ÙÚ6qG¬Q›Q‘¹v`*ÌÛzèbìèô¸Ê …g`­~œ)~Sˆ•Èë…²j“ ÁÙÐèÐàòÍ•cC! _Q!ÕaÕ2†—ESlδ“í.õ³WOÒŠº_u>¼74Jâ rb×ðC‹E öz;ÂÇk_]ÓÿµÃUÈiDŒª%@OsúÜ¥b_¥KßpÎR¦8GHÝlä×§=Õ2Wq‡ÞÓPhH´Œñ;ÜjƒæÍn´0±³Õ÷E˾K€À ¦¸8Ö~,^¾4×hX¸H»úìø{ iÛäý,žç;&>·¾ðÑ"•}w¬¼H#±%v²œó3‰`L¬/IÞÒ¦E‘?.i™„gżs¨žúòœOuF¥ž‘Z÷šàNêkwJôTl¼$ÑXNæ9°uOa‹J©1XCìq6µÒY»z‹‚è,¢;9ùo¶àñŽx¾4×c97hDc.äPë ÂQÐH"è­ cMÅ¥†iEoRxtÖÇæG/Ñ⿬ÑφÉ^'aØö/Ž•«³Uʵ^Ý9r,ÕG®œn& 7¸ÿf›&ÚXJ[LˆÍŠ “¦ª:¯ÎÛÓ¤Ö!‘Á‡ðc`ë‚­µÁqøP8Œvצ}½D1¸Tî>æÅ+ÛÐ S{ÊNÖAlp­x#Ž-SG{’jd1ÔvhìÎå·š³á–ÞÁº*%½Z@‰Èå;FÀD8 ãŒiG!÷aÓO£—¦õF'¥Ù°÷Úãàœé«Æ×4®G€ã…óõÈÎÃ{T+'[h–°iª]‘Î(R7‚6ïÝ!§Ooš+€ÙÌmš«—«0<‘x$YÔ:Q_œ–iK?¹Ä¡cG3È,%dv·ó¾««Ð>èµðò‰_óóÊÈÛ«é‰ ˆ´'麯hHM‡y–·E?íu¡8(6xŠ$É5ìÄÖZÀT…«,Ñ^Í3#ÜÊFø½gOwå)÷¾q\MLö©™Óì¥>¶‹˜®[šÉ‰+¦º÷~ÐzͶ9LŽâ›Ði#¬ F†•¯ÅSgh¨¹çktüÍP“P¹ P'ØüT™ô‰y¬·Xíg­i²mz†l…øõö‰¬A;í7þ¥µµ¤ó;“yÖcç7M`¼ÏÙLÇ䑚Â'dBÔ/}§pÊ&`ç ŠntÑV•äÚâ uóˆµ.RÆS#£– Jè3¡Äxìvi “‹¾.‡S·ˆHw¶ž°£óô‰¡NØH†ú¿’­ç„å˜ép ÷Í ÑXlÇwÓ‚R¼­j$Í(¾Bß3 6¶O^¹ª~ÔˆöWQ]/“1¥ÄßÂ÷Ì%'û Ä+_¬¢áýQ}ôºY'ë,†hÝq·QÙYAó™´Fƒ·¾Uƒ‚[~&ê¸]W.7¥Ð³U>"ã%ˆbÓaZL“ê®Dqx‹4œ FÃ9´•°;/\̺ߪTK’€÷Ù³´Åí0öëV^ŽcÇö³øH™ïT/›E¿ÎÏ’›õ[öÞ£ .JY(vq/ú»%<î‰Fý³w†V¼ŽKÜ7%×*žúÈd”:Êþ”é¦7ñY@–ºÚúvŸ„³Æ5N#æ‘Y ²éæ‡wWÍÕF"?è/q-Ç&àÔŒà@³Ž±&`È5«³­n`’˜~Iy9À×ò¹ :9Èͯ‡'+“Èýý©’c&K'Bû3U÷ÜÊ'‚äA¸n4?™þü*x¸0Ÿw•ˆŠÉ0´Î^B‚®»Î0.ZGL_lñªO.ãüPÉúú¯Ì/ðv\ᾩXÖL»îô¦×f›A3zvn¥`R}".Á²ðŽåOãYƒƒ‰? ¢’ª­,Y…~1oòšÖ\Ërà»öXb«U[çÉ)!¾Òb Õ©œxø>bD…KÜËÀ=7&a|/ÄhÀ.æðrðc:Âöþúv¶F2ÔHÊÅš i'^)¶Ã>lkŸƒÿ†ßa‡¿[¿©ñ ßj–Ñ"óY¶ƒD!·ïéì"Rdz‡¨KÄžyÆë@àƒé{3¬ÉÒ¶ý³G&%ì$ŽrʦwU.é¯ç}Gj=a…Yv¯óî“áû+ôäÑZõË‹®OºgƒK¾3i~2…:½åÛþº¨³?Ñÿˆh.ÁB óà†§¥#5}˜ÍæpVCˆ•W3fmûieÑ]#8‰‚Ä~`}‹5Êi™ÛÛAù‡cœ·Åz²Q¾ò®†‰ãMUë²Õ0^ËüÃÜ»(åÂe¤eÚoti‰ª:xçðPD¨¹»:•7@ä!ydûÜA:œ»sJ ¥ÜšÏ`–ŒWŽi¸!C«VDXÚJUxü„ua>,t1~nÄdã0öQ¡‚äåY8N=ú£OÞ¡.]ð&b÷×û{ÁžY³ôA3;wì«k1ûIžÄ÷m¿½_´¤³ä¸b%Î?žÉdBC¾[‘˜ -.,É .Ý2Ý à Gvñ)G¾^ _ýü@!öÔéqàžáÒ³¬ 8óÕ»ƒPx¾±ØHÏ{ª˜ÐØ–‰ÇóÖ¸Œô>~7{0ƒ~ºU¶2‰*Cü¢L/¬¶Ï¯Þ¾-}ã~·pa»@Ђ†LúEL`±ñ¬¦}—©AK1ÌöSÆD_´¤”ý"1¨µÄoqefˆ_Sç’íÓô 3ž’¹UZïè» ŒžŒoéh“Ò¶¯$bZüJ[L¤D?>ßø¸°>|«åÈZ>ûd~HËàw.£Š÷óFHÍçÓ=ë W…ŠË§gØ7p:5+_¾úÇHõ^æ\®?r;4Ãg¾Ì™˜R\j¤éÕídªñ®Ð“‘Pû Ê8lå¿ïýœÂºJ!>Iy ¡fVÖ°D¼î ÒKÂÖå›È¡†;u2„kô½ù‚-kÕ‰;Ð( ±øNI9Ëë³ÆJ†,×N8¦øše+µRXሊî¦/A:‡Â瘦 Óz[/¢±x%Ú ^C±®&‡8x]©ö¹Ð¯ÂÒF|m¤¤×Ú=óŽLrEÖQåïjé™®(Ú/ƒ¯­ôæXi4GT«Õ8$ÎÈëFذõ¿g ¡8–ðI$‹ n·N±›d G!¬?2!è —›¶H=÷¿ØÆýÜþF[¶µs6—q¯ƒ!0è%óáöø+tÙ; íb…"ƒP^§ËhY…î¤gv?ìí—D¯î‹n?&ÏaÅHb¡È­½Â»ÓÍfíÒ4WrùTOتɲշfÒ¸­+w.,ˆÑŒ©>tÁßrý4½†àï`õòF ¶xNΑ‡<µNËT‘Ôï‘0uÍNèñ9¢¾ýé"·.°TFî4Iù+»áò·ƒ«”†WÒÕtðb\ú“  Óéi®´¶ÞuÓnø†YsdŸU¿™ æ*Šï\²«0§Û:—Û²ÀWšoñ%±©³ŠìŸ}alƒSÏÕ\¸„oà Ìp1¿Š!Ï6ÔfäQ.Í–Ã’„4mª޼Íè!‘ÊÁ w"°V”åy>ãëL4p[r*Sï\ÇãŠhò.¢šxHþj=‘be÷0 i3<6ÉšüÆ4ä ›ägÒRƵ̶~3!šÙ¤—ÉSÅ¡ùÞšû:E—h1Tú·S[Vë(í82ðàJ±WÑÖh•úweà^=q£ò°dù#ü7øgC ÑwxYåèOå/N^/Æuv£ß/7ŠiÞäËl9g£ÛBœÎ(:¸-š‘Ë2VƯõ« ʆ3j%ùZ{K!LÉú®“²§ÂDGò*—Ù§À¾=â§ŒRñnv²÷ò@æ6Þ øãŸ 1g¾G°©a´ ÑkÕ˦öLÔã‰OÜ@d£¤–ƒ§ ?cOrVa¥ÿ1®™z#-á˜×ðCØ_Ä3]Æ|àñµ½‰6 ÕÄ.ÔûàÈ'¯•;õ½Ø@ŸDŠ3gÅõîË…=5úØr €É$)FäÝûøµ5"–R(,9¡ Rt£¼Ì•F¶ŒUc¥Ž4-ô/æQYbÐ8z!Ó¦Ô¡1ƒß§ð³|¯Ú¢6ç@ǧtÐý”FŸw>—­7†µ!)¹<œAu³Ÿ¿Œ7s6ZÄ¥º£ºð¯n sèJÔ¥Ñnº„Ôn~hiÜëmÐ&)d]làbzc$ð¶½õ”g1{·–ªwoõ¹¢=Ô´gcäÒ¿ßR-v˜l´:?(ËVDØû[Ý»í) D¬ï‚4·oÝo3qÃ)–ûêP…?óacTŸ<%cœœ`Z î§¢ª%‹ˆÁ«lQ®©Eßêf\Ò:³ã¡8©þ¤%Í×’S ,*ºMØÎÜ”Î^¾nVÌ‘ºÕthK… { ÷óùNòöq6méë(„1M´Îxñë´\ÅÂióîåúDE0O™r„Þ‘³†¼Lê³[@µ/ ÃRs0~YZ©c¨]#ǹ1È~•@vwé$2/ŸÉ‚Õóñ+=ÏKæ;Ã9¥t»ï¢"Y–ñÙ Ž!­X›Vt4ŸÓâïܺì‹h²Åý8èCô|ÆâŸ²Š:L¸ùÖ={ÚLæÞâÔ£¹.ÐÑ'vãËœ^wû,eÈ=àŒ7‰…c ii¡iJ„jŽ¿ÿ€¾~¿K»;WîVóÎn£lÇ ÉM~$B&»g©8øôŒ‚~Ï/â¿DÛUÝ‹ÚOç?Í}mRù†î)lsÇ¥ 3½U¦H×bÑx ɪý1:Eì¶Ï¢õÌÔÒhe”mäк#>ÔðÝäÀÀ¤_äNÑÒ¬è°ûðÈDaíÇh Í G7Àeߨ¬µÔ…`×–Í7Çr±#aµx~ˆ˜û^v[ü%™Xа—Å•ªã3)šêPçó§÷Ã<ù:ÅsРd°h¸>yú|TøÞAª#³ cÕîöÄ:ßä u €H’´©Þ ê·ªO±—ft ÍnvHìɯùj+ÏÍZ`-<šŽˆŸÞB]ÙöùÖP,p1âÅq÷µò™¬œœ‰³Õ<ð Ôúz0¾t=uÚ„=t×'¢' gj›Äy!c¼×q^9ÐCºÆº< 5{AÊ$¢|NV‘®u*Ø›„dYT¢yóúâ^/®©(Ëoï£É£&›¨÷z¬Å3§ËfÞûw¹âöÞwöáe§”ú7ÏÛ‡ˆ.¼Cu”î®™ä´ùMO2,^’|åU×øêÇ-ØvŸ˜&R'ø·o‹Ò [cOŒRábõ£5ðÀ‡üŒY¶¸n™ÆOõ(ü?¡dœ™‰œ¾¸¿e>ò‡ 6Ô87ÈÚ^ÉÖ W;”P@…Ë3„F|­¿þÝ‘¡,~&l¯:Û€lkd|ÊAéì8-êû}¶nª_óT2]x¤?|ÉJ‡«ªô˜l¢ñuÚèq¶Ê³‰ ´4î€àPÁúåÀT 6‘Žö+vþp4·ˆ–ub»<×ÃxI(\©ýî ”öç^üfú&_ä<£´­tƒ“;ØT¡ä¸ÉL%>¿ÏYã ío’Ñê·p’¾$Ö*ø’©<á¦4 ³ÊgÑî>×ë(sçÝÍþsïŽÇóï̹[ù§J9âñ -^y³v\«’GŠq"~Va;|Éß‹­ÈT'1KBãâô½&Ø×UCUeØ6tS³}ß­k#RlL’9SîÝòe߆V¤:õ@®Ý#ØMLµüLë0>EƒÎ‰®i¡E(€>°}*®Š¡oÝ?Xúš„µ­ ¤þ¢~µBߺ*ôžRPö¤KFå»ìg¢TX~ì{Ôd^ùô93$¸$¦ù›1¹Øe6²p½ÖØTò£¾Å+³Û^ '¡"û3ôWÍþ“0?„0’ª`[Ôå`V0ŒuVç»e¬ë¥Q6†±í­H€*â ßbS÷奤Õyºb†<¯‡ ÍJ[á4§à9ÍŸ¸ækàvg‹l—VùLž?ë/öžàbBÕ*Jã‹í!¨ª$Ij·<6Ù—ëçBÈ£RJŽ¥Ý671ñê5†d¬ô¶É"¹R4û-d R^§Y??Ê °Z€Ê-ÎFÝÍT©Z‡"˜ûÇbçJ¡e²±’û9cO~v)pê†EË.ºñÝh\(¿²Ÿš%Ö©C9àE;’üœèæó³c×÷0÷}u&I£Sž~ býV†{ÀB|@fˬ1ê±~G²^«ìC“á [G©m¬æ<½¹ã¬_p7 UÜ0UHº‡µ¿kÄ$Œ¼7êQx,}[£úYj/ú˜tì=ŸÚáNÉË,1$Vr¥nÇÊþšnmÿÙtŸÅ"âeN5èuÅòSG¶£«`ÎJDIPjõJèJ˜h–ìfÔy…‰¿Jãz=ŽÍp ös¹$gvýá×|u6Ý·Qœ‡¬ŽX»‚7ùñ$ ¼´b=ÑãÕ—ë&‹†üÜ''ÎÔá JŠê% ˜ÕŠ'àÌ–ƒf+Ÿ;¹L±z¾Öµñ9¿Ö¸àí<‹:²þ`€àzŽÎ1À½Ï'Ù:àg°ÀýL0üÏB¶/ödAN©#QxÍ êB拹‹â·uó"n˜èAlD?0QËᘟïú3?ÃÎRZÚrû}%©Í ¯ì»¼ÅiÞpÓ˜ $YèTyÌü†: 5ÆÎ‡€ÈûÓÒèÙÀÐ\Q‘ì¤"^8¾Í™â­(–[4Ú,3ÓU§x:TñDäè×Äyx{1%(3þþ<8²ù1?­g¬Ú:‚êZ!âÜBg»0ÙRAòØ,ËÔZÛ«%åØm<ÝAÀË õB2 Ò¹ãŠJ¢´ãÝ1콋uÅ ]üø&xéײëOþÐŒ˜Çœ_qêßÙTN=,“¸.Nf íÖéz±_;Å!ŽŒ aÌØl3ûÃ+ž»Y ŒÍHjé7‡>@!*á¹Ò BÁ—$}¦ÅøqkI¸)Ç8]Iàð FÛ\#O¹ôµŸÎREm€ÛõNw]?—è.yLuÌÜÈ®«„/¾&OrúÒÃM–œ?¢–ä¹ßù; –ÛÒÌÜôǼáÝtƒ„Ïå”ÝärûExÕÎl4­ë3yÍQZ– R£Îð~7JÕ'r$÷ºv?÷¾¦ÈÙîaÜÚ¥ž ɬŽyºùTÓìá—ôÒ÷mYÁ•’o×Û®.B‹ïwg: Ó°€ï–„bGèýº’‘̈ý)DʯÕä5˜¶¹`&­5ZdèD„1•vtÝP}ÔøW[Ç·ÜÛjöáÈØXœ//øâ›<ÙÏC½¼Öm®žL¸t(Æßø _Ät JøSI¸|Ô£RxÃuaÁù}à…™‹‚·~å"g±+ÌЦúu˰$&{rú‹™I³mC@ß„ïÐÔ½íÌŽE€7Æmü¡÷ôÞ‹Í(Þíü¨×>Xö)º‘›Ù©;½4Hò|-žÕZ2©ÑG@S9„À®5šR§îC£ùFùŽÅn.|‚µB¾ÓR<{™Z±åþcÿÏj¦¶¤™˜x„û6:Íeró ëoŸ§Å=I®TrœWÇB®%uX“ächµîÀPü¬Ä±u˜LÙUµSÇ1±mÂ×µÍnšA¬á2¸«–,œCDo‡ÜŽã£©+fž£•N B–Š);Rl/ö4>˜7ãªÚŸ8|WÕ» wNa1°Ru¢»²Q1(]»zfÔkÏvZ»½4Cû\½ÑÞ’ˆ''öº·º5\<¯ ³‡OS$ÌÄ?˜ã›”jÐØ˜íÁ23Ýaƒ·!­¸Gðºpö‡¤Dd¨¼íœ6½%¾ãæë|bê Üú¢mýe"éÅÙ!S:y²kÒ VqºÖ¸^Ùt‘`s†˜8K½˜Ó~3WÖtã09ãÊ• ÷§¶NÉ%ú'm¬ #å!ër¢Õ3âéÕõ 3GÒžwd—9Æû¤9oÌ%é ëY×j¼ˆVMOãèV¡Ò…yu³µ½9éQdGäùkô˜a/™p¨ä†r)Öí<Õ<€„f/Ó”vhB HE8˜LGZ¹ÁݨñTáÛITO.ПIM9õB®ŽÔ;äZò·"—Ø_Ô‰l_R |þ˜1Ë D³¸éø}¾Êºî’ÊC\IÏ5¯Ðj•û9÷ynÔäxÇý$àM‘ž' ´ÿŸÕ>3B‘QÂPZÎ=Dà+ö¸Â' GlíCmM×*Ó¨7ÜÓm#/›¡ç4ŸXì˜:M¥ï`#*û¢é+a}ßíçÕ~}ŽÌ®ƒ/,ê¬;JýÍÇÞFœ”ÁçdJWAí™:v×ä»ÜªÚü샷˜¢ÌÙŠïÆ<>+&\`AG¶¿Î§àîPëŽtu()“ Â@­ _vʾМغ 1¹§=0†)»[¤Ï-r4Ú 497D0ñÂlÔÔ‰¦xÊ+{L·:‘ðŽ úš’žæLóÓ°5{u4jàJ·ûZ_1½J>ö« aÁ)@,צÃi×üHƒ ÷A¬ªÐRla=I¥ °ˆ àSÛñª¥üƒ.t)E`Áà:­x_lìK–‚„KJëGÇ=çc<å/h¤ú*B˜õâ³ßÍd ¿žDå Æ3fx¤~35J¤-ûb*)‹’ËÜÊórèö±rf#ßfÀéò–¤|ƒœ¹œ-#º² ‹fÓ£äºÙ£ú5 Åæb %\Õ»÷ƒf߯üU1â¹;ºvÉTd¿]h¼½™NpKTø0ý=þ ÜÐ^AËò9•{O }ñ½UäWË t¼ûö%8~tŸôlã^wP!ÉqQ[,‚.‹š?RÕ3º`’-ƒÊX{­ÃÅDŒV¿†X…Ø&ìÅüÈ?z3"½¸Ws¬·3zRùqý4Y,ÿ!Ê\ƒýE9ÿZøt´‹Øñgé¹eÂÌ%ó"u¾·üÞ Êß%øè§Dsªe£r×àª>>z¾"ì¡mDLæðS×xK»¼:º1æbM¥ 4{•hÚŠÓ_¿ý½I.7º•îÑ<ÙVféŒTRzT­âÉŠ>œéMf_xEM©¶Ók=75˜#pbÎÎçÚ„:­ý<&ü/KÁ3æ‚r×bÆÇÍ“!­¬×TlÑm–än 5Øç<§O%µ-‡ëzí¡mý/|SòælLÚ ™1ö†fÄxG1"RƒAô“«ËԌڟp)}RÑȵÒa…áijQ»FS\ˆ ›kz×Iµy‰ÏÁºa´Ø‚ÚTw¹ñû[Å‘c> stream xÚ·Tl- ‚4’"ÍÐ HƒÒÝ) 1Ä -ÒRÒ%‚4ÒÒRÒ© Üñ-ß÷ûÿµî]¬³ÏÙ'öóœóÌ‚žZM“]ÜÒÑ$ã±sq…’Êšš\Ü ‡䯠§×ÃìAÛ1èu@.P°#Dè_ I n“2ƒÁ‰ÊŽ€‚«=€‹ÀÅ'ÄÅ/¸@Á¿‰Ž.B)37°%@™ àA1è%<]ÀÖ60x¿?˜,˜\‚‚ül„Ä@.` 3@Ù fr€W´0³h:Z€A0Ïÿ¤`±Áœ„89ÝÝÝ9Ì Ž.Ö/˜Ùî`˜ @¹¸,¿$TÌ@IãÀ hÙ€¡:4­`îf. Ü`¶A ðWˆ%ȯДW¨: ’•þ$°þ:×?éþŠþ• ù#ØÌÂÂÑÁÉ â †X¬Àö €ªŒÌÆ0ƒXþ"šÙCáñfnf`{3s8áÖÍ2âê3¸Â¿ôA-\ÀN0(lÿK#ç¯4ðc–†XJ::8€ 0(Ưþ¤À. ø¹{rþu¹vGwˆ÷ßÈ ±´ú%ÃÒÕ‰SvvÉKýÅ›0~Û¬A0/>€œ  Î_´<@8¹~™á|¼Vp °þÃjæÀ\\A>Þÿvüapq,Á0€9È ÁønYý‰á÷ïöáãÇþúùç“|Â,!öž¿é\1§†´ŒŒ’ ë_’ÿqJH8z¼Ùù¸ìܼ\A~?¯Àç¿iþ9€¿ÅÿaU3ÿÕðwByˆ•#@ðO ðÃû[‡Û_ƒÁô×Ö0þ[AÅ>Î Óïé7ò-࿸þŸwàÿ¿Ñÿ•åÿ:ýÿÛ‘Œ«½ý~¦? ÿ¿™ØÞó/|œ]aðÕPv„/䩺 ?÷Yd vuø_¯<Ì ¾"âkû •{€,ÕÀ0 ›?§èï{€§·C@jŽPð¯ÀÎþ¾tvðW ¿­?\ øNý·¤4ÄÂÑò×òqóòÌ\\Ì<1€ð ãæåxsÁ·ÔäñÇp89 Ž0x.Ï`åè‚ñëNùøœ’¿L"A§ô?ˆîSþà>Õ€Sç$gšýFNóßgñ‚$§…£=\îß–çÏY~Çÿ:NËA.'èw§Øí_n¸ÁÑÕå_pŠõ¿ ¼‚Í¿ /€ü/ïÈþ_Þ®ÃoÈoò/oÅñwëp.üÑÿ—ÞŠÓ¿ ¼ðï¶xál(Èü_ù\\ð“„ý&Á Àl\@ÿ’ïæþ»(7œâù»xû^ —?ýÿ Wø»ùÇúÂçæoüÇ# y€,0æg-„ƒlk‚ZnªÄÉÜÙ·GPV×ÛÂãôzÂxa ³ÙÞ6J¨i²“Φ–åÄCÉjsÅ!3¯ÉXŽnF= ;ÒýW’ä²`Ò=›'ì9ßÏ;¬A”–ޤÖcüÉá›xÇoÕ)pL tgî‚ù;yv*¾æÿlƒîè …W¸ÔId°hñ̶ƒG‘zÔtë°A=CÜ|ƒW-yí±Ÿ"Á1×-Q$ß=7 bR——ûÓ{{’yÎr»*ùÊCH½¨3‡âûHž¾MWøE`དྷ,Ž +ù<‰\6ëb¤¡Ï¢sTl0íûÍ–Ñ ë`Hüå«'3L]J2ý'Õ©Ê\zú¼yŸÙ@3ÅSî,­²€èÚÿAèw\ÅÅ"¬™ÒBwàÉ-M”D¼S5¯w`ƒYq’9áS±”áø÷’½P¾¥u Š”9rG² ðn±§Ålú9}ú¨¢j¾;á mh‘öÇ]Dþ×{L|CòçFV‰—ú¦7r•M»å:U¢ÃØ]z ºè×_-¹r7›B)£ž}<¨ucØÜñþæÙÙéãa¨\èá #¨-KúÅKø­CË2†|c¶[éºZgõ{˜‡½:.ÑõžuÔû—U~cáØ¨ûU÷G­v=:Æ<ìÇ¥Þ°®\à‡Ð¦W; ï Ö÷œŽÜ’O&­¸Ÿó¡ÓGË’Ü ·æ§[E0>²©‘,¨±;ý!zhXJÝYôÊôÚe=¿†™WÊë~…áÿclÄvŸµ£Ûãztú´‚O¢=;ôþÒ³#øpkÿɆ¦KüvþŽƒÇ£,û#êt̶‰CáœYY±xyÛýXæ*Í •=Bžir˜Ã­±úxâíZ‹+ng¿Ù<ÇÝÏ2‰l‚”b|R=ªË…¹ÔáoL›‘øZž5~ËJî”QF¢z‘§•܃õ r<~÷ÅàB±ÀäáÕži_Û¶úÝä´¿òÎæ ¯©´sÈï›..ÖO9¥@k•øšgx Ÿ²aæf„W°Ï†+&ÍìoimöYSºõç"°é®žœÛ ÷÷´xè\ Ñ‚‘CÌ eS×S@ LD"òcu#¶WË·ƒwäH Èå'Œáa) §˜Ã„® ³|ßa³:‹,{}½jé]Ö]ŠS?H7Îç] •<O2z]J’ó2Ž«{›EŒ¶ëƒµÃ¼DŽàíŠ$/B,ýƒ¾¥¢k„!§€ÉÒ-§%©Šõ« ¿i< Rlœ³ÿjZ{Òú Èj†«&5í®›Eõ4ƒþ±Å!5¸Þ DŠKIþf!Z´Ê¡úŽÔÿ#3…½Â«[Ý”¬»üç Aµo•)üª½ò ôš?ÛË/›ø,#ÝW=V ӎ͉/` tOÑÓ‹þ$¶ËŽd4ö¬(7vÈ>tÐùÉpð`¿¾§„ìq[ ™Ž“}hz(‰Q˜Ö¯`\(¿^cYcJâ’«@1=Zç»EvpEÖÈ´Š2™ š \ßH’4§½pâ"–šêdÉ—Ù¤öÊøéZ”’ê dxÏ\®ðiÞŠIç«û-{Å,jˆàWïW‹×°V#Œ¡°V³óQ#/SµßH‡xö‡ÖŒ5sxîFm±ZbéZ{jÉÚ ^hÏ|Ä$?ˆsC”±ÞˆlžA”ζ[ÝE$esD uóò“=ËÁ­'$Ì:ò¢U¿e(¾ÉGÑŒ)(ëÉ[ý²‚@CI¦Rì^nE ûàÃI5Zn—a;Gõ{ŸŠ;@¾<¨"(ðUOTÑ@ùõ;Æs”YõÛ.è,TT2(I4>&8rŠTØ‘ ¼(–êVÂ[rót‹í_ÂêgfÇú_gº~ó̼a^k*™ýyÉÜ`z ¥,öØäåQ"âÄP»|ç-5˜m­°ËëøÊ–î'3R²pUn\_¿rÏ?1Å‘ó{@ïµêϹVŠ]齌Þ{ô*çßúÑzæÍQ1í¥¾#~>FŽ`{¥@¬f§¬PÝNð„Pß_K‡¡ÔêŽ-#³~•<9»8¥wÇÏþyt’M=I<²Òœ'º!"Ç4ûÝtùÇᛂOní[9Û¹ó¢š^ϧ:ªÛŽXñîÙvÌݾŸÆQñ*—kïÈž «H¥÷V§ “¢Ð͑ɉÝX´¹<õêÝAÚÞ3â`ÛØÂõ“*:+‘¾Ñ–S'ˉu"Žèµ>º˜ÑÚ ú:_ÆÓ=nc$‡Æ³Nc$“FC‘•7hŠÑ§ «£±’/äI•¸‹Ã½±+a'&=óŠ/¶;;<5=o|¹zAàE_TÑS~c$©FZ’´>8P=|bwmβ6"R‚D=iŸÏ„uk:ýδ4¢ÀõŒ,Œl/×·uŒËœ@œšMƒ_`’ºäñ&ùt~ Ú­V_ÁFé4ÝålÞz©'‰’J›WØ@¦·ÚÖ§ñï6õ ,E´'Šž ×·JöéèÀe p“ Éqø2)/Ä. V ¢ï†=Ó¨ÂÎ~!*ÊQ<ˆ$å2"É{_챩&Ž ¿¿’ý¾XQa÷²UÖXypR<[}£Í c•8¿G³–5sݿƢúXN¼\á‰î0%{ÓÊÝ›•|bŒà<¿WyDï4Ñš yÖ¸·çº•}K¶ƒ«ÔÜ1x®³ï®VâŒÛ†g{Ú.–uÛâAkƒ\Šr˜Ù,œžJV?5#}òø]-2]Ì£É1£¯«T¹>Óµ“¦þÙ9´‡zŠòN%E·Roâk—%~½$Tär})üø‰1v‘ÐGòŽ—‰K¶H%ÍZÙfIeÇTÒ˜Š~‹|ç²1ƒâÎCJå¹ixÝ2›æ"9ÕXeøé»åIÑšŒ~“‰ÅÈÀÁêþ®½æ «C»HSúh^†‘|!î@åþŒ[¼í;±"g<ÑR¢8z Ç –…§P¥úÕ×¶£3sÓ!-*¤‰Ç@[œÈD-AÌ0¶fþé÷>÷2>6×(¡`ð@ó^ž[Ê»VŽë<Ù>›9 ð?·Ùº·òÌežygøóº¬$¾èC°s9ñ˜ÞjX!¬&Ññ ƒ©Ñ3¦„FŠîéL£|ôŽbaùÙRÉ=f‘’¶ ?|¨~†Qo–ÃCkeÁŒ¶mf̪ ÏøŠÃµ Îx\‘ÈZ²bY¢wi+¹sârEž7V©¬W{"ÏÝH40]‡b(f뎯o{t9NQó%ÄÚË þ*±µ…Í3õ­Õ›'JÆ>ëÁŠZœ?VŠ‘_ùvmA ²—ø8ENÝ«= ]…Švè&\(–Ɇ°ðGÑôÖ]&óœºÀ.!7Ø™?³mßȶ'("Ã)µú¼êH_—^ÛU+¢<ñõ§ÚJ¸S|}jö˜T:fÕÍ绪œO£`. SB¢ýˆVÕMyð&HˆÜÈ3%ẩ张€ð03K}0 ô³ðD8z‹çÅ—õEÏ÷%ŒZKÁBFvóì–*"ç‰é©óKÜ*zZAñiëd›â'|¯”§¡_.D3’5ÝÛŽý&Ž–)¦§¦®¦§: öÕx3w°N>÷tŒI$Ú"zôýh¬jw@%S#0¥µLð4m¢föPÚ/òº>D<Ýð‰h©Á@ Ϊ°¼²¹Ê.JäÕ%5ëLæ…Uc.²÷Äã¹%-…¨¯öZv¤ÊCйé'Ê#étgÔ.•çÂÌ{oðçN¾àW Ïoó{ŸôS„©Rz.Zíªâ:ü¤÷,gèMè©ê¶;™aÂåžšj: ‘|JZ]†¹À2²¬¬‡wöžÇèæÒ§'aé³ÿ­N¼Ó&iwˆüDÕÕKã]«y/çgäèUiRU›œHòÊ™…/EÂ/w\Úè µ}ñâS÷ÂS›‰ýôóÏ›Wæü¦„â‚sCól©pBΊ#’ü ¨PÖGÎ0]={~^ ¼Ô ¥Ö;§ïå1€ªÎÒ6¹K ÞŽ;©ˆîÑ~xBÇ´W«ŸAßÛ§('E¸2 äÁc‡õóºòš<+Bßýò½×PåᱜªÌ«Õ:×ä| ?©½WR‚äø®3/™Xùâ‚XÔÕ¼¤\eDHô‡#øEå#Ãz²™Z¬“ò$v”ÍŽjçeYmµÒBR/jÕµ²7iBÞ¨f*¸qQÖ |GmòŒÉOg¶j²ìI*ç¡s£|B ió3Å §Hõ¼þìK4š™«AÇêõ²PtÎ’ÂÏÁ’ò )ÿ]!ðbtúná[Ÿè[ÑÌ»'óúT¢ „W§ú†z#­Ã("[È•(~%Eýóq̨†TÖPZ-÷Vš"´ÒLª¥¡ŽsIŒ÷ á#e­sÃë¾ä]ox³)G–”ÚíàK.$±–RÙ­~yUYÿðÝ“aÙÀ¼1²ÄU¨êΣÁÿˇÌû·Q1‹Ç¡¾O›ëBŸãü/ hÓçPIƯ’#WÔŒ¡â9^=jj°ÂþºC 0”wgC'a¬uê@K'«$=ûÂÓÜ'”dkS9öÜã{}ä-aZ¯·0¥ö6ºoG%lÊQ_¶Wô¾}ÇŽÞ×äü¬ìù¨x‡aª»…Ь /³áã®U; z_°â)y?Ìyh-ØSè{ϸ¡–gãŽaAáùÕòvN€$ü›‹mŒ¡| KÇ¡EÄü…ÌJh›­åë²xn­…›€Åéu´b"¤„ž|Ûë~ºãýˆããF6躞Ãg¼-M½d)ÓèôXÁJ§jXÔœºÊÄ3R ê8{þ N;†ñϧèwøÆm2xÍvtÔÎ…ø¦_%"NZ7YJìšAØ©¬Þ~¹S`ácüTÞe7nÙtHæEfqᾚυƙ«÷»žÇ1%˜¢Ù”ì$srÌ/ô¦Ð…ÇÎYK"AÎZ-pƼMkÔÓǽÈx줘ICðúÌW‘½xôjÎÂÄ“\³['Ø€}!æ°…Dð¡e‘1>®ÜF¯ê«î0P¼/>ª‚·ñK¡ÿY»ØÍa%ãŽ#HgÀ?@]R¿õòâäÇSßÓÍó4~©§õlT&1\k(3¥}|=qó\Òz‘LG×kú篡|‚ƒÝšÌy.“iõƽ}µq|TYÑŒ¸3¾'bD—¯•óc;ê8»8ŽV õcw ,¦P7½zùÞîAîX²ãˆôolUæNœ¯†1£ÙÑ}[c³æ×1F)¾I‡n¶¶¬ëÓõNº¦^ØÎâ?ñ}ï<˜ Õï€P!Ô—#’eC?€ëDØsw>•÷^ª·+_t¥[IñÅw-™T¯%"¾äSFnãl!÷fâ#~G³&)EýÏ奆n4†*vlƒÃxQ¤PÉRÌf&\©ÛÚ‹ei]4µ–iAôð~¨‰ll² <ÁÝaäJBpKérì‡ìkÇ£G–üeµüù²å±éåDzÞ‰õ6¬γóNËr©Ëƒ|qk¬ìÂ'Ðg¶#Ý[°›‹ð¾çþF2…T ä8ßo‚”[SGïY\_HÓ¤Påð”ü¸9¥þŠSâÈÿž- 6v&ûmEk;ØXC_Œ¡Øþúì¬.0d#IlŽ“bŒ°¶t~¨->´ÀbV`I¡(8e(9¥«#7n×Àj¯¬p"ùͬú5 j÷ã…÷PÛ«Q‚œÀÙ4Y1 Z$ß±üÓeZ¨Ôvø©Yóûö—åL°µÅ4ØçÌpÅ–"ƒ€äTH:Kœy+Ä1Ò-ÿ̶Á†ºì%r¤&E-ÈÈBK´üX‰ædqÁ²Ýs®MËÌqn^Yû¥#ùñjíê :¢Ÿ…Ío”L’_2Eã¦{>Kû&.!GãàFÒÛ#¼lKŒ}¼«Ã–Ê(ÈG£šˆÊ_v ¦´×7F>7æð„ *wÈ¡Øn4ón z974ì-oØ—Ö2‡ÁJeê«–ï.ƒÖx´¿ldT4øžð$“ùA{L^BS ç™Êíè,"8v'HJ!̳vÃgpYÉPM?}ýHA\(„ m ¿ÌFà©Úæ^´vܲÂC<Ÿm£¢˜C¿»S.}ÌÂ÷áèÙë)¿˜¬þ³‚í®Ö­¼ˆrìÔ¶>Õ,JÏ^¾V­õ¦ è51·â°ËÇyÞÜ_îGGà \…D[£ò‰3˜ø›ÄXFDÌ4»*¶¦N¿FÄvÐË ÊŒ/Ÿ\ó…LN§)[Jõ}”|î\À ì7¦,aý'£~ï:$´)5¿<3cgÉ£Ö|5aõ×m³Ö;}ó!èÊÃT[›×¾€æÅ­€« å«öŸ¡¥HƒsB…‡¹cÕ#öÓÁš‚y„o1NØúÄͪÅ#yØõ§7ArÍ©CzÈ &‚³IÛÌêä“­’n:GpK«â+Îsã(Ê1…I$QNQ|±àŽÖEÓVÐcd<¹@xuo‡XF·¨ìc<&¿Ä%kŒd”àå´» 7âUß6H¡é”‚~/oHuxC´õ8ºlR&Ñæ®…IU®•‚‚/êËL‰`øZȘ=€û‹£:‹ÀZ£Ø;¼ ¾¹´hSmºÖQüñßéûÔÏÔ6SoFeªÏ%¨ öžTž”¶kØŒ1È›.WØu>,ñ¸Ò>¦F2ÿÒgùEضènai–ZÔÉ¿<–O{ƒ´øyòd"Ba3t]/Ì*øö5"ÙuN8D”E:aÉVBÎÞ=™8÷–økÓ€ú)êW+Y¸ yÅà¢-a~græÈR¸ê'r.Ž'ÓnŒUæÏé딟u¾k<%N̉ÜÔ†ªÞFÜ2ZCé>–ÒåQ6$q­šû&£f°Èx6ûñ øÞCñM 4ÆÄ#^vEAÃOr/ ¼739^SW°Š?éÚýÎÇ [Züa4àº^Ò,j®w®tÖa7ÈÒ®Ƚ§"EÖùª£Î¥ÒcÔA3™Ó]®O™¨‡^|(Ћ*#7n &Ü ¦ˆ»»R÷(¹ƒÍcÊ¥cÆýPiƒé‹© ÚÄÆnvArD¨€h„fög™ ñÅÔ<ýži,+"ºvü4»´eoc.õ’YÊâ{LJ†Ù믘y”4w|ôÖõy_vc)$Ge;42íRcÞ¸„êKŽlh…8ZÂÑÑ.Ž77EY y…eŒƒÈ>±§¢íÛ•ݱm=Hæá‡}1©BöIšžEN òUÑÚ¥œÜœOOLucHo-‡Jjɼa¨nÝHÉÖß0 …%óDmb•¯ÓuY^¿^mxiŽ ÜP¯5Š}”άf°ìó4 óYfÙ@¯î²Š-ëÿ§CþœoºSÙÈÔ¤dž:†]+ xâ ^[>?ÖWF,sTóC”F÷ ”o°¦ïn@ãa[û7eÅ)Þ 3Ë—›¡‰2íÖ'´rïœä)ÉHÄÐ ¥Gù–X~ø€}fÐUÊC(½Ã2‚!¹ySñŒŒ_6Ó/VNmW$¿Áêè¨ýÜÆ%\Wq!`†ê)Ë$i÷²[ÿãJh²æNðí,q‰“Õ\7æ¶·d­9 Ú³åà”®½ìáþÏ>™OQ•ÐÙ§|þÊ~Å£P}ÖâζêBå4—á~7¨ç+šìR÷1úªv¶#ýÌKçðR£ÊÅ_g•‹*S]öü>Ý#Á·õx'·Ê‚S¯N¾0h6‚¬-¿©¸å‘ÂÈ6-Æ¥Ñbk8 æQµyóÑDTÒ)ÿ<¬ë2%­ ‡Úü’Ø.ƒ¸`Í™ãÜÆwÏ«-àp: ú)CÛåìzåde,MD ¦yY¶˜—óc_—Æ¥fö Þ4Õ<ÎôïJq\ 1ß夓zsSõ@öYµ‰cÞ6žx y²øöšs³qMqõOZ¥üÓQÖsÚIâSþÝ(¥­ 7© oIÐWiÞ»»ûtä§Ö¡ç‹ï³™wÛÉFKÎÙŒ%Ò<„°=Ùw†ˆšgX„pÅ{!Z/ÊÙº»èíêcʨM"7.ä­Ô2C‡[RU0)ó‰.Ÿ õÔ£À\Øm¼Ÿðßf)Þ½0pÅ:”FxØ‘›(fØÍÌËz4&Ì‚“ø .óXZÅ­¯­öUóÕ<¼~!ÏN¤f‹cg?ã9(5gqýu©ø"¶¤€4{¸°‡rW}òR /ŸÃ‰_/ö°] ‚A/¡Ò_=Ïh޵Ddzº¦d - Ež&áÖf|‰Ôû5ÖéÅœ,öFÜ ý¥˜¿²´vcSFö7n©¾%é»6ówÒfŒÄ[ürÓn÷9f|ݼwªt&ÕÎÓ c¹íZ¤ ýû{–n¦jãùÏ%#Ë­¢æe±¸µ'M4 ʉ^>ç‰ÞB¡'!“Ï{4521¶Í æRÍlyÍ–|ÀŸ£–ŃôXØ08µýäÐýCïë ËÄâ[nuê7èNI »Ü¨˜ñ‚ïgGHÞ°h#ö+!ÆœL‹_¿ž· #ˆ}Iñ£ù#¢í~ ×]¤qL²ÉSzpàÄg›¯ò.ŠynÕ ùã?Ÿeܾ1éUNвeÔ7Ü’é$@©˜Ú]™×½Ì0b.3'¾ÙŒg|(˜ ;ȳ¼qó#¨iÐm5¬lÁUxF’y4ߦ@øæsfRJ[4¬;{6—iœÚ·Ðž}c„ÁGow³”LX×j%'™vŽ)‹Îuç¹g0ÝpæmÚ*G*·…XLˆyg7Ñã¦âÜ5_ËÙ)þkÏH±gѺ%ìÎŽ1£ŒîÎ8X,œR²±×)»]±J&{üøËÂÓl Yæ 8imÅgƒÌ¡êf$t :÷8¾òpô¦=®ÉIÆÝ»7‹öèÏYrªJã¨"QâéП¿£»žš¬½g¹¿›õY‘²iâÝqÒÛ  4žÿVƒŽ0à¶ÄE¾ Š"œÕ=´~Ñ-øÞÄ“¦QŽò6Ø>(¬8”s*Ï·!aoùÓÉ\šµM¶WˆíZóFÃ’‚쉤´CBeÁ}¨u¦MÖ@ªÝ‘Ožhžº‡¾–ó‡L²ü¨D;™‰RI}¾’™€™ÂwL×Å4Ÿ¬~(hºOË0/?‹1pŒ¹S}˜ïÌÇï:Ûí ÍÓŠ€¼½ÚH÷êRx±(Þx7ØrDeÝ•æL2|'UÞĸ©ÖH=+Ãk—×jÝîÉBzÇŸj“¡–ÌõÇn¥U>©…¥Ýl7$½p9žâýIZÚø|š½(Ãû3ðSÄ˜Š‰ÜgƒcÇñj úá;ÞwÌH &»!þÄg᳿ šÊ\|¨l7 »¿í"°xd‘WÃm+48W–ýt*{ņ%¡ÊuBBúÕ ?J_Ù;àèí`'X‡“¼† {…¬`ôF·ùçå7ÝwË ¡Š²î;ñ¦?Èm•XÛõÑ'˜…Fƒ‚YÎÕ4äf©ÆÅýË>4ÑÔÖ'µtD5†|ÕJ4€Üò;V¨›aW4äˈø+ƒh‹ÜîšÝ=òëÞ¹1¦ŒÔ(ZQ‰*ó}öÊíÌ™Æ ËùѲcÕlòþH«ï@4êy©ð¦Tô4Ÿ lùË$Tµ=mR{ ˜÷ɹ6­m×ÈüÜÕ„}áe+Ug3.lU“˜jx™"1ßózdºÏè#V4o¤ŸºpÐùY[h¡&oˆqôü¡£žBj´“Ý.x)qªˆ(ÆÿÙíª7³Ç“†Ü†Éél=#m¿ÅÄ]••I’)/6 1:‡üv§àÙ€áõ[Œª¶Ûxe.L´’äæE„¾:Õù°î`Ûׯ½Œî˜Nb÷ÅM• !5Ì.I” åÌDd4kôà"w¾Їy‚ÏútÒî°ÆÛ+á-é¬Ô Šd›%[÷#vý”(ÙÙd“ðº”g>bçeï&!’Øâ²Åïg{BÞ}îø€t:moÖX%o<&ŒËÑ%óÏí"+ÒŒnYîæÔÎÀüDs@IZË ÖxQ·Èø­!s¨zN°#ŸNÉè;3ßÛ㇆þ51†ÕwÒ¦ýã‘ÖÚùûj%ˆ…—ÅwOiq5LÇØŽŽ}öègúÝ Ä¦O†ß©ñ‡ñ“ŽÑóå—@º:¸ô´§|(-8£éͽR³—è÷›íû:”‰Eb6z}u TœôK–ˆMcÀ´àé:û¥j'"ê¢ZÌü¤ÑžÍc˜ï¤Y·Æ* +Oc‡ú¬&ÒJkæS?¡UU¼ïðéÈE\ü¾Qüet~ë”wsëé÷ôª„…X /7hSþ|eŒ\&͇ï“Ä«Ûižª©8d­©ÈýÏ0ÉW%D¥zyÍ,^r—Û%0¯dë…ZAìÂȲ •^›—õ²‹ª~ÒxðÙ¶BO¾:nÁn¬WÞÿ¡há]srÉçàËßìÈ]×°­>%ÚìÉ{ƒ&Åç)ønéÿ=_i: endstream endobj 204 0 obj << /Length1 1601 /Length2 7681 /Length3 0 /Length 8718 /Filter /FlateDecode >> stream xÚ¶PTï6 " ‚t,)ÍÒ-€„tç² «° » Ý"  HwJw—´€€t7Ò¥„Ä‹þúÿ}3ï;gfϹî|®;žYfúçÚ\2Öp+°"æÄÅË È©ikó €@~n ›™YêdþKŽÍ¬F ¡p˜Ø¿,ä`K§;™¼¥Ó¡Pq¶ðòx…Äx…Å€@(ú—!!·|µ¨qTà00›Yîà†€ÚØ:ÝåùëÀ bðŠŠ sþvÈØƒP%  féd ¶¿Ë²´hÃAP°“ÛB°JØ:99ˆñ𸸸p[Ú#¹á›'lœ¨“-@ Œ#^­¿(Ô-íÁRãÆfèØB‘(´á'Kp'°ƒ‚À0ä‹3ÌŒÜeh+«4À°?ŒUÿ0àüY/7ïßáþôþ ûíl Áí,anP˜ µ4U¹\8–0ë_†–vHø¿å+K¨¥ÕÁï£[e4–w ÿä‡! NHn$ÔîGž_aîʬ³–ƒÛÛƒaNHì_瓇"À »º»ñüÙÜ—0¸ Ìã/¬!¿hX;;ðè ŽÎ`eù?mîDØÿÈlÀNA (€`W-ϯ:nàßJÞ_â;^päŽØ ß½°=–¯À'„3ØËãߊÿ"l^^€5ä°Û@aØÿD¿ƒ!à»þ# ®càÝøñ€¿ž¿¿Lï&̳sûÇüw‹ytä4õT9þ¤ü·RVî ðàpñ ¢ü¢á;àõß0à/ò¿¥Ï-¡øO@eýƒÃ]ñþâñêÏÁ`ýskØÿÍ ¿g0€õŸé7 Aw?¼ÿÏ;ðÛåÿoôEù¿NÿÿžHÑÙÎî·žõƒÿÞÒjçö§ÅÝ8;;Ý­†ünA`ÿkªþcŸÕÀÖPgûÿÕ*;YÞ­ˆ ÌÆîïBB‘ŠPW°õs¨Èö)ú«wáí 0ðs8úëÆpñÿ£»[:ÐË»[y×­ß*ðÝNý7¥ ·þµ||‚BKÂÒ x7a|‚‚Þ»-µ»þn7 ît縣ç€ÀØ¿z*$à‘ÿ%ú‰xþFÂBÕ¿‘¨0€Çòtçgõ7ðÜÝöÿèqá±þäð€ÿù<6ÿ‚‚è?÷Îö/xç ÿ¼K†ø¼óEþ ÞÓù7üO@ÎÄÝ%ò{–ïŠøþ}cÁ®`öô$þúEÅë¦ó2*®õÁû‹Ë-!o »‚X&Ó=lU1ŸŽ:ÊZX“Ä?Ÿ*x32áIž>äjÒžì·§”愢е*{È•ÑwqÒn¦µ†SÚ Ç‡¬DkÒX£?ŽÕŸ¸ îàß,ÙȾnAn‰îì¹?é㨜"dR[vî…Ò3-;õšF>D'8ë(ë_ß ƒFžÉ6…S\¸­G~蟟ïMîîŠç?Î|ÖY*Tü†˜‚Ä]…>u ¦‡âQt²J-…EVð‡\¡a“‰Í¼ÇiÍŠŸ8ZOŠô©Å¨š¢ØÆ(A”¦¶÷Y²±¬9³ð­h°<ãш„¾êõСgÇáyRW¡¶`føÓ† F‘ý™:1Oƒ÷èñ²:öjª”\=ò ˆa‘€m>(ʈƋãôÓ™×oÖ<ß}9Ý_z|/+„ñ6—°ÛSË¢Ël¹™ü‚VÁOËb›[.–\®oü{‘±Ø•ȺL¦³·ÃMD¬·›WŤ¥|ûÕêà+ÒcˆÉ¸ìªÉ˜göÊ Y]ꪯ”‰ §üŒ%¡ò#z–Ó.Þ ™3Ž>C=è§ž¯æHêŒÁ”0¤4h­»…a €ÃNýäµdpEièiV(ÜÚ,Û‘òTƒHn(pŸjlSµ·¿ÝÁI¡Ééëá+ÛwŠ»‘§lI©Gš‡"¾\ãÞîm—ÓºdNÁ÷Žæ‰ŸèÆ + íçõoèö¤myfãÐüPœéf»,òlƒG„¹’o¼µˆ{,!ã÷äá#˜£Ø¼™|ô8UGSç«IW`¨“1/ÖuW®^RN*Þ§"šàÞUˆù9ßzЍúé\§fªà¯â óðèIW梤ðæ2Z¬Ue·TNݺÃãu)úsGÇ, ŠT)íE·†aô(]I1U¼Ô2»×.zþò¦vN å¸}tÌko¥g~ϹšÝY;€ ­ þkc7 ZX¶Çü&}ŪÀÌÛ+L(!±v¸+¡ø‘s쳆ÎiùSs‡¥ÛlOd”+9À—(tÄ´K« ÆW³ỹôY‰Ë—Þ-ãíÉÌKl—òrõº‹.µuª1ò"jgâRc¦É{«Ò µ_Z&Ög vvH»Æ„55Þ”I<4æâÁÖÖšiyÏ&”ªÃ¶šûÍ«Z2›â@û»´esš‘×7³…R¹çOé½°gèÚIMÙh¼d+¹ *úÝñ ÷-$¬Þgr\‹NŽpôV2»ã…gCœ”MåF”9ðŠ ²ñA¬Š’S2Û7Oç—è]|¾.LLŒ²\Ý2‘½êvߥæÿl_ÒpÈß$Ý~Nç Mbè`åÀ2u¸æçÎ4×}rïC³ÇÅ3âB{ÇðÊ=š¯ýÎݪa‰¼þ(sâ}Ó©ìì’2(s=-ÂéºÅý2Øp²ÞüüìÃE²Î€?'vK«¯l›€)Z‰õlBö,«&1©Cªˆ"¶œŽ)ð6¥øYº<‡âÔ9à–÷Ê#ø#m¤ÃÑž¥®:1í¦øxd:ã ®@™~Û@k1¯Ž|ÜÁW‘Dš¶ªØ`²ÂÄöúëÞaÃ'çW#ÁÕ¶£Ž†«»Ó~nn ¹3Ñ™®ªÑñ¼ˆ®7ß6 Y[;±Ù¸Šï I’toWr$¸jÌ{ `‰üÅ·õ?—‡÷Ûfóּߩǻ›Ì¢e:DNp»ÓGàÒt‰ðF¡iìSÒì)4¨1dPFÒ 6ïì`‚žæx÷]w`ÔViGáÀ‚w×Wr9”û—s>Çš$jÒƒ}ÊnÆÝÁ7Q!tšc2À—†G¨µ^§yÍ;NKÞ·?1é”À ¨Ëá|ùñ° „:tvá‰|6šñ‰¡Ì‚ǾA7hȼ¢‰±fR^žºcÃÓBðÙ铌Ojȡǰv‡ï÷¢.ôº†FŽ0åêA[_ÊÊC7–í úã“´wíÆ§Ë£ü©l©@Y´ÑP~ý"»h]|Â%µÓ^c+ ûÈ¢°9]ö†ˆÚª&P ™ÃÎ|Íd}z@¹a¾VQX®~áGºÚÕ¬I¥òÂw_u¬'À(“—ÔXêã̓.{Mlõnéòv›Òs²aqÆ·;A:^z«Þ7{F„¥;!…PJn<½Mhè‚Ô£wì2ª?^æ·å/•ˆïMÝ átbPïkÜ…’b><Ôqê{¥îëÁßû¬@; j]Éè”Æ }`KF×ð0Ò ‡ÜHÒ"8”b‹WνŒgz˜ô`Ôß1Æ8Ø!Ûñùwé<1–þlú¯ž$[V s¢B~ÞowÄS¢ QoD¨"&~ÄDT–íß÷dy׃Gsv"2)¶NÖÒ(´ þam¢?挪Ë[>[zOÇ\¬gç0úRÐ=r(ÏŠ÷CÜÀ]ϪHYÈ£ç±jcLfg¿JmxêÆéX†$S™ÈQ´_ n»œ„/DÀD‹ÙSj…”7†Œa1»ÜCF•»•Õ±>("j<1ùQ´x¾êâì°EsÛ`vo“­ØU¡šÙo½e°+×KZU¿%i«s²'‘ˆuZm‰¦Z«8Ð4ÎL˜bõ wãåÉôDÀ€P¶ÌΗ"a ÇÃþ¨×_©°ÐWJR ¸–Œ}&, àÊw¡u0Ž6ösúѼ­Ôi9ñ|bã·-oxþ×û•ЦCÀëÐÑ?Óuj+`Nˆqž"5{wÚ‚£øq€L.š£Q •'Î×ð¢ÀîEBÔâ‡U¡“BD÷„NyÒˆêØ|HòÄoï:<°îhçAVxJã#±BF;ìêÚ‚ÏE½±êÌôµ´èHƒmŒuLýuÒm-DzºMôâ^¿b–ïYf—9þœ†Ï>!m]boóAm‘Ï-òÞlµ]ø@¨ŠH·ÜÀ™¸•‹&L[‹.éû³Ÿºž¶P^Ú*¼~A&Ðýsoh^œEþÃ*à'¡œù ž|Å £#Îa󬈱 Ó'no÷ÖˆµY•òVäË7ÛYs«5É­YÏ?éà2.ùXl’!e«DÍNÅãûÕbðšLêÍëÈ ½ßJÏ Î¶‘!ìßO±gdóêUú5§/Z1ðZÞ'ãÎn‡žÊ]v]kËQž|U÷ ©.),ûõ¦I”ù üØpmîlþ²«D·žm~Ëu"b$rC6 GgZ’ k ïËø×+ ?ÝÐ)–‹ñ¢i¢Û±~–áÉ`~ø½UÔ´7a½ÁÜÚx¯ÐNc¾伓Ñr£že*.›Ë$–°_ªî¶Á?©2j­Ä†n>ÝSR#çu!:Ž0¢Ã~hKKA^UÊ€p(Ø÷­|Ê;6­pŒ>VÙÓ~íξ^10–ú²ÃåqÒ“Yóo,’ˆƒŠ<¬U*Ç-îô%Jµ¶%y|ÛBȼ§J… ¦ˆÃ•í»¤˜·b§ÖBìRòÉû¾gÈ`«ð/c :‡ë2eŽð8–¦‘ak†Ós¡‰x%æZ¼y…·]y²Û3ñaTVÓ]`ˆÉM¯ú°ò¢7‡+ÐÁn0þ(]»»°ñV±™.V:ï˜e½Š€k‡o2Åñ3'Q ¬H£eO IÁÛ÷×Q‰§¨4I#öE 3ËNßÕáªçŠ,Ûø÷Dþ›•‚ƒ˜žøëuK#ç ‚®4QÕ¨ókÖj8^m9,î]µ®cÝ0ºµÚU Fârw6 £\÷µÄ¬x†o$6‹šøSæ4ª•Q£k|ç„æ6I¢’o˪'ay–úè¾µH ÄÍN”l»™ý<+þÞôãþ¨¦ÿÖ '« #AªÕ…ŠªÚµ®*”[ã§zp£¥+Ëu©aÊ#{6œ…ÅÌEr] Xáþ'ëP.‰³FUƒ'­kGˆèqW7ùê—•œÉô³¯vñ@—¸›lЧMzPäÐLÓ}V’Ü5Sk·½õMµ$y”öÒLÕgßø_GE»ž÷pÔ’/i•ú_ÒÒk£ÈšPY7€wÇD˜xRŠšiЖ6s¬LY'ŒãlÝ>ì$ÉV§ÉRi)k^‹xèc¼Û)]™.ñâpH“308ÁVG5*‘x¿ã)=Ž»%p®..š‰þ ý!Oõ²B½ß5GJg­› ‡$N uÃ,°»½ÒYH¸vË—Iõ° 3ŽÅŒ{l[=ƒÝÛP:.DuÃâ¤f–Óµ0ZP4Í†à„½O}2újГvM/@_ËÙ 7Yß} )üb@.‚ñ]êQI ƒ¤ÆñÞ ¨MJ£Píý°™îM¿2™­«æù䀯´=á«ãEŸ Y•ív‚Ü‚j«)MMçä:ì•)}â&¯1XÍÑ–<xL«A΂ä:²¼Ó ®õÛ:SŒÜlÄ ñÍ‹ÍHÜ™aðâ¤Æzï`¬Ñ6E1^’ê½úH]_èQ I<·R’maõ'&_!EBLbùµC;©ãàú­¬ÎÉâE«Èâ¼ö—ññŸ³t‚À¤„5q”L-~±Uú,3 úÁm?d(.Bж¼µ*Ë«#3` J½_B¥‰œÎ {¤±ÿt“ÆM5'oJd´Ì’˜w¯Ûø…erÜáL—è×óI¡m—ÕëCp^DÌŠqOD¨óGÂø¨üÎôy;ñÝw²iã=ˆ°?N´+Ša†m>ˆ\졈ɻd|_äÏŽf6éÆ`ÝÛu$C èxêü$?„.®?B dþù³à+ βçãÕoÓ8q¸8ï“ùx•F´hmYWH0É¥ÿv“©ÛjÞMù²J+Uá“1§£qߣ‹éC¦}]‚Åå„ÃA‚–Å~G^sûál,]¥ßøÛ¨{Y ——zÏ•)ho_&ÊKˆŸ³i‡ibóÓR®:OltVuj„ù1w¸}{í~ÂóúU®¿«mYZ×Ò3?*Úà8³HQ`=¨"¼´±cÃV óÝe6ÚH®O‚ÅIùr($vÞÙ ‡fÅK—µx—)w‘B‚65BÝ~{£=©!iÙíD¿ÉÍûàD5ªÂ¾oE+÷kj^(õÓµø÷ËÅmÁ¬•Þl{i|Ž5*™R[Þ´Ç[ìÝ5†XˆAßHp–Ç=,f…þ<’&ÜÛ¨Ñ3ýPˆvxäc¥rJ(H‹XÞdÅ4WHÙñº—4ʪ\ð«8g–|ÿþ‚¨he l¬ÁÂtÓ9w$`ç²Ü‘#ìã‚ûxãIìêg—HÑóÐ4ïH/TO8š¬òôñ3W1Ô ±çG•Š¥/CO¾ºÓ'¾¶1Íܵõîç׳úܰŸ[ëÏ®­è2£¤¼)‘KƒÉWèx芩ܬ^m]Äx6¾h‹{D“ ù’² µdÐ'Ëžm859X@¹$/ˆZðæ@ÛsU2è‹ú u:Ìsè玄NÊsS.ïrì§iÓ™/´«áü 0»Êe •¿ãYo7Åjx~ô…¤ÖCCä6ÑçâÝ<~v ¥ò¤Í·×_ãBls·)h f_64QW‹Lª|º{Ñi۾ËS 5úœ‘²=H»]>_Ÿ2ž§iÉÕýäi`²Å¦ÎÕH`læ@CVn¢'bšô@Á[¿ý©ß×½t.±µDH]iJã  Ô`!`e[iç &;¦ª>šíÛ18Ààö–B?ÍQvC‰/&¼6‹Ð@D½CË*Í‹z³Û´¢ž¬4ò§òË1Ÿ›¸ZEÂo+XhGĶØîƒò’ð“j-/²Õ¼#ÍVèÅñjbµÛŸÌq´¥ßGÓMšà[½?§«zÞ<;0 ü•ƒ­UºC@«ë¹ɧë[ß6P^ORyÙµrÆú•˜ôûiÚ§¼“yÁ³’x8ìFæiª­ BÌÔªÏÆ¬ñsΰd_ýÀ¾†@ •—R‡÷¼ 6Qw£öS!i$8 Öxò2¹~šN?®Ï¾2ã ßëßÕr È~¦`âÝÝ}-çÍéÙdG~uq‚¾z ðœ‰(·¸ ìl\«NH<.~§âÑu$|;V—Ì‹¾%‰r7pî~Ý•½yVð0ñãüRGcJSá¦ëëAkžèïô‚×DŸÕwƒŒce{LE¥IŸuž³ÖQ›´0u)e¾·…{lC’ã'!S-Ôj߯K}Œô…:nŸL~š’ËMÆIö11­_”NõâÔàÃþ¾o^„CÜì‚ßMs•c¶€9.*+ò ª@õrs3ðòêó6oËriýàˆìcí'^A:|/Šò³|V½jÒÒXlЮ;‡ñN'¢›ç+Of®»zoԧlj„ÅOÑÔ‡5>æ“,Dnx!ð›Ôðšà´@^ʼ<_^î¿Fê©‹_;mù ¡ ko^ÂJ{ѧÚ×f¾]íÇP?CQ&sLe1¬+PÈy×åt‰Ù,dØ4ß¡îÜuÛè¯ÜËîòå'æ†ç[ÝK‘R öé@c€š9ìzø¾ª)5·S~[ùÃp¯ËlZ?j2³žYgd˜1~’D6>§N?_\XÛßX%¤ëAÃ^“?â/Bu!ë $ˆ¬Ž/R/wmæÚXL-«Ïû滇<ÃúÒ‹þ!D‘rÀm,Êu0–õ™,ùÌiŠí#=Qª”¯^ÈåÊl;go?à3¶Zpѧt‡n¦;¦(cyèÀÇDÚxÖBÄš›¬•à©C7Æ9öî ž¨ÝÿçÂÍ_"1T?#b¼‚Q~nAiШ»¡˜H`·E•^™àé[yB4H>a¡x1µØj¬á}}1UߪòGÌÍáRÛïj·–Ú*Äû?˜Ÿ§zܟЮV—¯»!¶É=7çS’Åð¾9cô·¿æ˜eÄ'‘K‰ç5è³083rVª´|;:„WЈ§ª`1µ(0fUo "ÏßGLÛ!4Û÷¸¼¸“R¬j– >”¾ê4³¬îöGØÎ³—&LFŽ-@ýUné·Ó¬gÌÎëðnxÅ+¾Â2Ùóå2«¨8'‚jÈ$ewÅ]äúó:Õƒ@ÔR˜j»»‡âPŒœ˜6éÖ\zwù©¬!çÜ47´´×È'£=€®…ǽ•e Ôyh¼Y/½TòŠ·zÉeƒ»Äô¥`(çd±þe;b”ù'Àe]Ø9B²yò˜ïaÑt”Ð-Zs¾#å­ž2™‰¿pÓ÷ªÁœµ~Wä ”5$ׯqæÝNYq}÷öý+…]ó쑪ŒË$Lðv´PuÐMÇYE  ]c#TÎ#à~"ßÓ£ gÿ)s†$O°¡6=Sœ ‘<·3›·÷Ƚêú´d|Yß±%“ž|¤aÍ ³Àsü>ŽÏ¦¸Ð^T`*½a G½'Ìê¾ÌÀh—• RС¬¿U–Yiïþs Þ”—|æš&nˆŠRþŠL(17a3BxËïãVópaT§ç˜Jõo]t¯%×k!¡ìõ¯:ž^ÙÅNäûð!ýœJ®‹ÇÄf§œlXñÄ9l§ìÒètP~qD0ÌÚºÐ:Ñ Q:Y¶Pó:[M^†<µ®Çï?‹É}„šœá×.&$ÌRÜ?Š9]¯r’8墚êFͨë=§ºím rWÇð=_‘düäœbãmضþ©EP,Û‡ õ< û&×–§–OšiPUmºò8ùžAÓ*…çŠt)½Löw*±ÇR)àã76* ~lû#XZ…ÚÓÕrõÔû³:;DÒ+ˆ‡wÄ0?~§ZÓŠ1g0ï0‘º˜rŽZþ¢d„[{|6{v }›Ù½ÇÜܦì;%ëÁ4'zk@²´§ï(_ååõ|^±íáDùº¾˜*$¹Ø5LÆþ©£°£ Ò‘çˆ'°›^:ò::…É„\X…¿J½£F. b0÷žýg‘¶V\ú"öýÝÛÅ,ÑA·¸è!\ì]ض‚|_únÌ„$Ðs@– ’r™î©›OŒJ¨`?÷ÑØ® 5û*†žL™·f¢ƒ|fŠb”üІÿ²ÊýϬ}´-òø×ëÌù]s ve2ÈÏKV6¹†…÷ŠôìIÈ¿O(¬yð[udøž¼pFÓûÓmœÊo8|¬Öû… Ç&Û/èÉ…?Œ©Òa­¡LnŽ`Ð*ô™Û¤Ì Bì÷ˆæˆí®‰¥ÙouÙÃÏå÷-< 0šbÇñ]&p˜»ž½Ã)3–äj}‹Æª=r×»§ã$ÈÏY²›~¨Žäc­cÿ²²¢ó¨UÃ9$ ¥Bâæe´xg2©·ŽêùÏÖ$çôæÙüÃÚðÞëSM_0f,ÝK4©Xý™ìûä[ÓOÍá7;EÕ ¯qZ £ýMÓ:‘í*ˆö‚{ É:%ñªk¸üD‹™=+­p.¸’bDiâùâé}¥&=燩Y& ZÍÂHË3úïtÉÏQp¥°<åÕñëiÐroˆæQ•Ôú8ŽÞÜw$Ý÷1÷g?~Ü^°`ö¾f»õ¾Õò8µ­•ݧaÇ´õ9þn·„ÑUÌcr>Û¥ýi߯¶Ï]…ÇÖ+‚‰¸ÒQæaFsš 2kI8zM­"ÍU–ôÍÓ [“àÏÑ’wÆÆöhv×bÂü’ [þQÍ$øpnÍÞûÜ^'n–¼Ï~ƒžNñY‰»d"{÷Ѐ׈Õë%ê[¥¤1õ7ï…¿þØ8xDP¨¿ì›v=Áç˜Ê©>P`íqµb ÓÛù³iŠ Ôá µ)O¹»ºÇŠ…7‰›Ù‰º€n.ÇðJ̱˜¯­‹½ûgáIìíªInQ°ö€h)bÊþSB@<J"Ûµé?}UiÔö~{'/²Ž#%–6‰æÜƱÃàUÐ䢘AÙô¦òyH{"WÕ~`LXj2"-FFM‚d°Ò!pGª^¼>¦‡iã(¤Ú.ÿb†­í2å'ÎpÕ¾=¼z†‘ó¼Õ²Û6&áÍòC¦QÃ?Kœ}ȱ¹×HýéödnV¥Û'vŒVÏ-M«PøÅ˜žOÃ}/Å_õ|-û–ñ†*¡nÓŹέx@­UÑòóÂÊærîs¡¢‰bnTݤïÜ}9E!7Ãáo¹_C´3™•J± ¼²èø~kË ›BÇT¿Ò*¥˜_¾Ù]/|ðõ¢éÑœ¾õÂòªãcþ¤œ-1…ön ¤ª4!§Ï¡Ãþýz"1ßÕ.~GÞ‡ÖÕ"”øØu"²¦¾­Õ Gú5[S.ÌXßt=â =Ø &–J(U\×ܨFÀ˜ø;Ç5d×ݦ¬ Õ‡’ÝÀÞ­ËuÐñ¸>ÉN !™ºž%Å[© µôgˆ]ûž>±hIa±í¨½Õjn³ …´×v>'lÜí<É>?; ªP{zç ÷¨)A`´î\dLI¬õå[à ΀’Ý蔲¡õJÉÍKMÙ¥™†—׫þïjŸ#gÖgt¬˜;]õv o“›¯þ”6\<ÉÒ)Gïq»Ê‡@áæÈ=wŒHþL*š¼4Nð pvE%%s1[ÎëøÿÍ ~ endstream endobj 206 0 obj << /Length1 1995 /Length2 11639 /Length3 0 /Length 12841 /Filter /FlateDecode >> stream xÚ–uT›ÛèqZŠK)ž"Šww×âN€ w‡Bqw÷âÞBq‡â^\Š·¢}ôÜ{OϽïýñVÖJ¾ßÙ3³göš×*êL¢æPSâÄdfåˆ+ª«‹iY¬¬ì̬¬lh44`'[Ð Í;Ì …ðýCG2qzZ“0qzRU„Brζ ;ÈÅäæce°±²òþG ãH˜¸€ÍŠÌ9(äˆF#µw‡-­œžvúÏ#€ÎŒäååfüË j‚ÍL E'+ÝÓŽf&¶u¨ääþ_.謜œìùXX\]]™M왡0K!zF€+ØÉ  rÁ\@æ€ßi”Lì@'ÇŒFа;þK¤µpr5O ¶`3ÄñÉÈb‚žö¨Ë*”íA)+üKðïò€ÌÀ¿ÝýÛú·#0ä/c33¨½ Ä ±X€mAe)f'7'F€ Äü·¢‰­#ôÉÞÄÅlkbú¤ðWð&)QU€ÉSŽÿÎÐÑ ¶wrdvÛþÎ’å·›§BKBÌÅ¡vv ˆ“#Úïø$À0ÙSåÝYþ>bÔâù‡-Às‹ß©˜;Û³hBÀÎ Y‰k=-¡ýY³98YYYyX¹ ÈÍÌŠå÷&îö ¿„ÀßËOyx{ÚCíO©€¼Á §4OGÀ æ òöü§à¿ ˜ƒÍœ¦ K0í÷§eÅ¿ø© ``7€ëS¬¿??<õ™9bëþGý¯ƒf‘‘PW•eø;é¿ÅbbP7€'7ÀÄÆÉ ²òò¸yXÞÿíéïü'ÿ¿VULÀÿŽïe!Pï¿ÒxªßRqùwÐý{|èÿ½ƒô©¯Aº?c ÏÊÉjöôüÿ†¿Lþ_3ðÛËÿÇüoLRζ¶iÐýGåÿÒ0±Ûºÿ[穳ž¦Dú4+ÿUÕýk¸Å ¶æÿ+“u2yšQˆ¥íߥ;JÝ@æ*`'3«µÒNâɹ-R:‚_>& +ëÿÈž¦ÏÌæé‚q|:¯¿D §áúï-%!fPóßSÈÆÉ0ÁLÜÑžŽÿ‰8žÀ§q5¹ýÕáfÔéÉð”œ7À Cû}ª\œÑßKÿ"n‹øâ°Hü!^‹äßÄÍöÔŒˆÀ"û‡¸, ÓS²¨ü¡';µ?ôd§þ‡žv×ú›xŸÈä=Åbú‡žb1û›~×Åü°€þO[ZüÁßþ9Ù£ËuÎßr¨3ìöO*–ÿ@‹Õ?ð©€ààSÔ6ÿÀ§°mÿOqÛýÁ§füŸâ†þOºO/—?üTUû§¡þ#SàS,ÿˆø‹ãŸLž„ŽO7Ìñ“§?â§Ýœ¬` ¤þŽ“+ôOÉ8ÿŸ"rýG!Ÿ¸ÿ ï)Sì_ÖÿÕ¢fÎ0ØÓEþ×EòÔ¿ÿá¿Þ È majÆd]Ôú³Z”Ä•i{Tù8å§6Óhá3§^ÉI£õ8õÌŒEù2©… ”¡u»’˜ÃϬ•¹sÏ­:ŠzwŽ+& ©]K Ó˜Ù_WðÓñž×¤”³XÍp¹ZIbä|Ű^8²ØÏ…Í-{Õi°¼hk»çã]ßà—HqË·*µuT—d(¼$å}÷cCÍé“逯6çÅ+Úì »èÀÍý°d¥4Jy¶´8×*ìµþ¡%œ²Îþr.Û'Ô!N8’ü¤¨Uï–ò0ﳋ]Òp=M¥ñDÌ{?.¸ÎàÏsSæLW«ëÔ8{ËäÙ-Õ5§M*KµbG§èºUñ™ì\ ³-d?|PvD¬ç—ú*ÜÓ0ó rµ”7é[Êã÷~‰Lê-¨½kÝNG¯¯Ø vÛ¦ARå‘&h¨5qzU:Éå(ËMd×A-ÖDžf#J>[ùƒ<åÍ’9‚¹h_„TdóD~pÖxƒ»¦r(Áñ‚´-›URG;Ïz_‰Ÿìr”’¯È«$Šï¢‹®Ú,ÝaXkAFšæ^ö¸ÏÅ…H®Þ:g§ –ù‡Í>1ÀT9ä+ÉIP˜à@öh'&Îe+‡ÿž$ ã6ÒUÜÔK[¶(÷ K©çÔ9õŸYH§‹›´è»£ËÙ`£X¹òmï'T3¤vñcW(0Ž‘Ž9ÐQ·®ÝCƒ¹iz®¥ÕÒ`pž>ÝtQRЍž“Ä]lº —iƒ%wÒLJ·Æ–^æÎ>x7á E0?™±$’ákéÎOi~Ö‘×UãˆÂZ,%*R®M#š¿:;”$ñ9àÊ&•'ïÛÀrƒ,²ã[ûŽ÷°%O»ZQ¿ Nx¢®h+N¸°RQ’—ù ÙymX“iÞÁ°÷<6OÈÑÜͨÊ?°ÛÕh9¤~:¤?ó’èÛÙËzN³O±ÇV{íá “×qDä€T¨-ž"žtº2´‚º˜4ôƒ—ñª«ßƒbœOÇuŽ”ØüS¬ µšý¬ôṳ̂”ÃÏ3µ|í¾[Ò¤foO°³ÕÏZ…>} Ú!òX,ßãò}ÇñUo“RqÿZ½Ü Ç[zjE(vWaœÒÚ@ ¿ŸÁá\ÅᨢhÁ; ›üxPéÄ&…FÁ'©Qr¯ È–´Eé¡ÞT¤ûÕ cGõðú¯bÅ}T‚$´šÉ$ð‹ðQÌEª„QêØëgë('yÓ„>—X(¾†TÃÐ#µ²âîUƔŲ—kG™¢hÚéÍ<®ã¼6§Š”›C&–: >ƒ–ÉbÖëo&ßÄ*Î^z| ˜‹¯"ÖC‘u$ŸƒÚŸãM›hIœ1Èþ“zì¥Ïñ‚ÎwðÒàÛ(“02¤ËzE*Ŧ£{G3ﯬ_¥ð¬ƒ9ŽR¢ÃèV¤_' ÌñEø†Qeb—õÂñ³»ïV#úß4‹4g ÊVÉ‚ßWþ•FÞýqäP'¸F1/ V¬ ï‹ÀÇd³V žã‹cWX鯻7³šéu±¾•*¡Ë3Ëk!ѧšî/Ý&n_²æ¹GÖ—wï²”3~ûw$h‡Ûé) 6I‹bÉ{†`î9OÐUÉ/?ÿjͬ.±Ç-d„p¯Éçè—gyWN›X4Ä”|Ý‚— `ûœ#h`Òâ¶…v_§À`çY“TÇ¢¢âlÿ‡"ÛKü/ñfð×ú·Û@Í÷K(= g6B9S-rgó´e¨ëYt°Æàó•O¹±i™Úˆz¿8 êÊ|Û3B¨hƒcnvù¡-QŠÛ÷÷¤eEî!ÃA ûwÄÅ„ãTI'ìè¯ÎÎé’3Ýæl)Õ´°F.õ±Ù$ÙeM°GB ñ,“ì‡á¸®f„Ö3YËIfhE õr ”Å »^ï}¯l<ÚÒguÿPÔA2ºÏ‹êaZÂÒœ J"Ž©àG¸‘ò—ìÿ™–¹`‡¡P:‹P yPK:“NwØ4U €›ê’ß|g·J H_ä6ãDtfÒ²D?æšlý ÊÝ©-ƒÁâkXàÆ©•®^ iî*Í[Ú×]å͉)©k™/é’07cà ãÈbŸéÏôÖºµ¶^Xƒ±NÏEVíÔ)Ìê”LÀIÑùr_ûN#ô¢Ðæf97ýùÓïtoƒÕÓ´’ò:=Çj'±¹õlUÏ{>EÎ(e$ç“ë{~ó êÂåímåvMl¿eo—2‹âh»¯­®¡èݬ¤°–“pµÊ9Ó>ˆ$ó<ÿâæž˜ÛVn¾mlI¹}§PøP‰o{ž/ƒŸè‘- •yY¼CÖ…|†4Q1Rt1qûmL‰ íù›ÊŒdˆbÌäG! 0liœsëØž8èKÞÅ]ÛÖÐ%¥y­¦ç̱hþš7Ù©r”þU÷ æ^½W»d½-ˇ}Uß»VU4{üdñbd𙙉à@vˆïžpÃLV”†…õ>öhÖvwÝÌ™'vuêŒ}臕²1ÎG™a¡!çlÊõ”û®—ilQQx-_[LöðÊ5_=£•! Çy}YYé$+œsA}hyd‡LoDçô*?Æž8Ë{ ÷]˜Ð³hò’{@yðüÒC“»6æW3¡*)¡£ŸG'~MAü¶‡¥‚ýׂ®áˆX¦Kî½PqUõèŽtVÌMíó0ùåÈó$VæR­%ßøûºFN‡7NÂíߘÉM&”–y¦döDzMŒ§ Å(‰1¦W]%Q9Wf†%bŒ®3„§UQ™ò¹‹îp•ÆU¼ÍÌÃìZݸFÀƒo œ‚ú<iÈR¦­#Px^J†à¸Sº±PÖ FÿHQ<~-Iô~›âWn˜¦J_T~§8ÅÁ¹böñCê(òÆBÑ™}Ú®Rãµ+$ÑTß+‡³ód,qï.舆ØÇ6Ý.ÿÓ§ø¹€-™H²AunÁç„ôTYÙ¬@ È·Ò›0q.žÂĶì45OІLY†t·ƒôVÍT¿^˜ŒbM %³d6õ›C"ð+ô$ü[l`}ö>œò/”nÇCíìØdßnφI$ÎÛ4¼{ݨôÙ+©i³¹Å/6<ä,ðõQÚÇÉ…“§…9»š«­ 2‚Õ¡§KŸ‚u™7Ëß¿þ¤ìöž8‚ݾÕ,uÏx½†–G­!þNŠìy|d ºKº¿ÇB‚ÈŒ¿©Qj*ÏiQPc Úž‚Üí~t¸F™ÆV>^вáùzp¥é­²gRmç…\¡ &6íQ lµ2Ó~™ßìÅì¾£[èUD¿%§þf±×À×Û­‡f¶Ëùm.*þ"íDÝÏÚ¦.îú=ŠV-Û˜ÁtQp¥+¡—{Òa…n&ŸÓK]c¹×ïê5fFPßxr­©ª¤ž x,Y±ðÊwV!#ƒ³éQIbSÇGë;|mó×ñY5‹<æ2 UÊI×ïPV¶2K`ûñ¥Ë}’›¹’˜õgÖ]ú¥Xä‰Ïm ŒøB㮄*´¶îÞt+°¤a)-ǯä@Íãö™>¬Ù›¡Ü8x!MåˆÖ´ôî8û¢kÀ-í~;Œ³Û]|db®äì¥{H]N ¸ŠÏfÃÍÍË7›~=GÕ˜‘¹@¼]^ ¸w}0xé6‚./,®(êÔ­¥&u…Á¿Pñ•c¡5DÜH¸}ëú]ç`øö¸À›€šî½•§a Ñ€×^1}™çi5ð{ðŶ4R ÐTfr+\³œ®î˜}3]ÍǾÀš`sÿ¸øöÞɲP^žöëj5 )ÐŽvÀø–èQO‰•Ä#‡À;Ÿâ*‚®½Âøc»QJJšæÛ„ýGº‹²-“ìûâ×TògÑqf"c=ÎðöWõò;4á…Œ».#v@¸À†›´Ädz­®) =d%bG=ï^–²tªE'ù©ÏÝþÜ#‚]U¦>gž•@¨ÝºBÄ×RÆäóÞ\²‰¢‚ôQô­ƒ°Ëw9½û.7Ê?Ó…ZßÕ'Œƒ>¸©vzx~p˜P]ì…꾚åq(JíY£F#ÿþ.áM®úú5n–p{½ÀR «ËıM÷½¬[/ÙV›ï|š.¥wPÍ…ç5®UµJÊÄàùs¦XSZ¥NÒ+Ï»¯{#³û(Móãb»ÚSÖÖ!o­ê¥û,†+mÌÚÌŽµ²ð¶X¥¡K—X¤@þ²èÅQ Ö¶Ï}?ú»•®˜kÜl¾oà}‰¾Ý³| ‚yg"Íúa©JÛóØ@žæÚ„×C˜ý Ý¤âÆ³‡Ùy:šˆÈÑÚ3§Ñ3:®ÍmûBü±hnÙ:§Â¯·Áºq õŽAŸÀtÃê‚…×Æ:È”'üèŒß;0Ép< qYa²»#,@ ðÖ"^Š,!(ïÊW㲜~í÷…ºÔ×.âG…ÞßMíúA¶æõvæÿpÖ'üH/x [%Ü€ )0ç!¬ŠVÜ=hæ.¥2Gnñ±|ÖR·Äáè2xÖ€ÉÑ÷=%â&P Qd稧ÕDBfîþ–ý®¥ÕøNÒÞCd¥qãïöjV&㕱ÅïfV穱ÐâÓé¸â(‚𶨬fZ!@Ë ž©§w›ƒ2Ã8†Mlt]Íeð¼v_䢿‰“!j)­–8ÖÞf–í€,y?¡~¬D;VzüðŠ¿Q¹{^"ž‡^%,Ã~°Ö@gÒ²qÃ~z¤Ìêý03ž ® è'ðöœ¸xó:Ñ—¶§”ÇQ~é£×H0d1õ!tãóóó¤˜_š8üç1°¥ÎR_)­¨TÖP¯âÏ|ë(ĶÕ–K ÏcT 8–-RÝ1´Ë=ßOR¸Mœ1{¬cÍhžD,3KLæ ÷6 Á$“¹.‘ÌLœX#‡™º»äaS¾ÀEg(ÝôîŸÀºråkÊîªúu(´Ô3Ð(_L‚öC¡¹ ?àÁqñå`c9¡>ŽÞwÈ%s¯Xàè˜~ò@:Ì»wÿÇœ&d$ùÛbw$QÄ, wÙðøç&MÙçæqy^¨GÁªÑjÐwóòöñg¯è•Oeôû÷Ñ{çTuK+«^¿—†°kóïß1 ´lGˆ´ÿdYžÙ¬ÚEñÇ*ÇBÁw ŒåÝ׫(s¸ßºÈiŽâ~ÃPk_eƦ˜ñÌq aú*6ÁÉÈ$L#ÛÄi+ñ¶Yg0Û¦Èlï>¤…‚I1íæ[‘Í[R]˜ 3Ÿ½ƒ—”næµ1%=»ÏîQ–l°)QøkjòÒ GÅŸ Qÿ¦Ùª ‰äÏoI+v‚‘\ʧ¹cGù?t çlXxyθÓ*U],áª*‘&CÃZwÛiѾgP‰ ®pß/Úâê2b¢cÇçh%â«…úêI’¼$,ñGÃ&{Ä w Ççu!IÁI©§,‘hsj4O‘s-ÛQ“·šbGüÃCmþ®C̉©ÿÉš&/Gn½†Džê‰Ûón”€~×÷ÔP·ßÒ÷ N!þÊúÕ.¨ÜžÏ–µËM§~ƒlpEú]%{-¡Ñ¸A5÷ÄG»“q)Š|#1K$` Ê{K-‚W«¢GZ7Ë7§6ÉœW·2‘ó¯²[Ë: TÕ’Z½àLË/F>'9„ò{ßÊwFFRDÎ<\÷M­BWpÞ]ñ2ßpu;Ï®R+` t„PH‹œÈ¥Ïbƒ¸Ô«Ö£/;[êÞ˜$'Ò'8¾ûꊚ +Éq°h§v 3B3²zE Ür}Í|ÊlýÓwZ ³Zg"}é?Hº+0LJÏ4‡ÇIrÏ fe[-Ú¬TõÔß:XéÆ"Ïçö‘%X_÷Ëízú{Ã6ƒÀêÓE;6¯/k©ßd»C¯ tÒvc×øÚ{¦6.-² ”‹o1*|£B.đܰÑÒ üÌ"¤mÕè_*°âêÊïazDìŒÞu”ÑÝÍŽ=±pèÀr×cóîíPŸÙ;iÙýô™°Wp;t;ùÒÕßµšü"],‡™«žYtÐf˜'*Ïþ¬´ ã`é—ïèÜ󹽄l Û¬AŸxX†Ã‰^Üx¯ÖvRómÍc¬’Ø/i©t>N‹ÕQø%LåUïJˇ–4¦.nî_KS¡ˆ½ÖU~v?Iè€8ŸEŸ€ˆÜ&µ¥P·ô«y$¡­ƒZ˜Ó9*¥2ýE+S”~=€×cà[™RóíÍ&">1™Gªfk¨Pà™ÿ÷ø…»#ÆÅ®þ’©;BÌÐdò8Ñ_±˜Axu×ó¥‚e[_Ap¯Ó |³’Ýe\T}Û¸K±Z°_ N fúk1—÷Î^ùjƒÃ¸™ÈfM6˜u"š¶Å§ zÓ1‹åáµ³lŽËé¿2¤6i¡å_€¿†«‡¿Ð´h2×rw“Ðe?Ô œiV¯nm›8þr‘ý…wü¹Á‡Q”vÛnÝ•Su,DË]‰9•¬ùŒèÌåüxDAìÍ™:xqý”[$·[•O¤3ŒUcgy‚y uËV”ˆâ„[ {I. %ÉU1b9vÁ5cÍ9¿³%1i6oE–Õÿ⸫{  1˜%çØÁEéÆJ*‹úRìtÞ‹øû=Fè—ʹBª¥Ál7„WÖë²Òjíh›Gvõ¤/b”;ÕT&v¢iŽéËë“Ø%³=:Q˜¢Üz2')ð(Äs»w¶F‚Žò”][Ø—uÊ©±×ŒôC-3xƒ?§ õem÷ÍHñôËøN¡`äcó]ð©ÆbKiŸ¦2µp¼«T¦xXðqXGIíëpu{Â7˜bT³ì«Ìé¹øR¥{R•fœýýW6r~í%´[§†¦|I· RîÒXlÌΠΓ™rúP'ÉÞMk 8—Î7„š¯0Zc®>áá]ºú¢þÓÉ<ìSòÎ+Æ@µ_æªIˆÄi–£Æ¢”÷ÊOƒ¯1rjM8«‘ƒÝHÚt%º.Ó³Q}ïŠù_ĬMu™ˆÌà˾«Ù IŸpZ'qµ³xlU[ï IÙØ¸®)2˜»pçœÈT½GEúØ¿%³ˆàÑ­„ʶ>øø Qõßr}žŠÅ)±(~s—ñN;ðÝÎã%‘3^U#ö(QéÀ‹[”ăkõPžç d˜uñ,€³¶­ÞÚ¥tœAzÛ‡í.¡‹öÍõLXßZÇQ<üÀ9V;Ux¹ˆâ>Ù2Ú´±ÙƒPUʤáø~,Ãïaz\)ãø³éçºÜ‘hîPÂcЪBŸ“pïý×IéÃMË(VÌShünz¿*¯V1J!íçñ@1kþÝC-;´ÂpœÀäÃþŒg‹!vïP¸Ö퀾/ª|Ëjóè±{\ÐçG…DÉ«F€Át¹[¾ÃÅ­1?P/ê,ÁrS4^CÑIY8½Š{Á¹×CéGf.ÔA.‹u™#ô›·’c×éáìâJaFG[5Up1†GÏ<âà‰çߺ§tµœœ]¾3šÕÙåLôHaˆ¢èçW› ÒS.g%Åšø~%@²À¡÷¼:—q °´%1{nÕ%ì›zË»/+ä¸ÈãìM-»ìŸ'¥Ó–éVßÙ§¼j—ÊÝ{ƒlèl?*v/ÐÂ2Þj7£U·ŒÐÅGÓ–¢€6¼Áï¢m8€=t¸¨o©,g¬ ¬<¾ä¸“]óKB”&Mù A@¤O<®»]=&÷Í]Ù‹l‰0¶¡rU¹ëÓÓ×U7΃Ëe¹ËùéÉ)^Ü-ý¢çu|5XöáúT‚!Í8s‘“- ߦJ#ã" ]•g¦é4âË8*hÞÕ¼}¾ÏÛt¢o,'OÁÕ­‡›¡®}BbYR€1,&,> 8m.X<²gÕÀ.„ûéÞ¨Qió¾½k!ÌïDœøVÆÔëç“!þÎʸ¿¢¡¼²Üa£o†¯>B—ºáÏU¾H—YÉëyî½i3Ž—cP_*Z}'±-ÔŽoÞ¢Jè稜C4müù#1ƒôE¯ì§éÖT)é$„ä"½O»7ãהÜ÷/X"¥ÊQoÚä¾\dùm—IvùF”š9¾èiQÀð2}zÙz+¤æ‰ñp b´é­èùùl§hÙï%bßaÄ6ÔýÀi‹m¦‚íBØ)®Ž Žƒ˜üÃ^Ù){z»ÌšPl®nf‰æ¼Æ%ש+7$ÎY¯Ôâ“§±8OÇÙ•yEcÝs¥¦þ E?U—ì)¥zð•vªÒWïxJÏN8lūל³Ò¸ÑpeØ©ë]r<2›X3ZoÄ„|©Bö+Âþ4mdf¤„íßt¡©#ŸàîŒôQ,››•/±u¬ô^“·«¤Hû½ÐÙ6Ÿ¸<ú”üñðkaá¤`±Fò(EÆ+¢ÚMt±}ß|gùˆ]oÈ|ëL[b˜ªï0à(,®éÊ0S£+,ßþ¢ô’çCI|ZI(·“š¬ðá ¼¨Š‹£—úúû0…iJ·n‚µ(!ƒ 8Ý`:êX¤ñºEÛƒOüGá(0L1˜âŒ û"\Œû®<*AX/ø#ÊsD£§³f¶£mQq8ù%a±•ÑoK ‰5U`âlðABñëS#¬Kgïôx0§rYÂYé¥×ÝÞ’9ŠÃØ iã#­½øYg4¹ýi÷™uÛª¯~•Õg¬ '7¬o%´ºH,û°$ˆÃr8“‡Ê‹Ñ.èm°EÃ*;£rû“Çy¤-y¬õÆq ±dïœ6À5ŒFFEf;Õçu/£äcK&üÞŸô¨¹Ñ Ì5¶³±)m-Uî‡Ù‘ r^]Þ\øÚµÏ­9¹J–P@jõ­¨ÂZVçõYKb˜ëžoQnKë€Îèðî¾úíHURðØ$¡Ø+œïÌn!7HëîƒãΓ>«ž\A7Ê>¨jŠOe^˜¡$ú^¸¸iZ'–2¯³]:tWoO±âÙ5$P¹Å@«Iý‡^îd—µ&ÛÅ.hMÖH^…‘'Ò<äÔzï÷jwÐ*a¼Á{•”ŠêöÊáP³_(A圽C¿Ò”Ÿw~Âåvµ:÷ͺŒD>â–Ê ×_p¦ÑÅ¡¾ö»ò¶ia¿M^Õ²<Ÿ¡š½òýYÜaV¹uéÃ\%‹Û±úÑ6…Æ}d[pu~îg\—~ÂÞ‹7ðfî„s/égÖ‚ã¹%µÑ´×[OÎ(= Ó ç ¹e‘äï2ŒŽjª Ô”W®½\xI>½EXfæIvûWȆÄ>-7á8‰pÀX´o&Ö8^*@Ѹówj\‚Õ’åK·ÖfÃùÒ‰¸à_ŠK¾ÄÄðÛ%V_&¤­˜ ØÃ4ß…Hòµ'ª, Úö¢—Gõ7¬”U»übB/ÃGDÜ%³³PœuC°ë¬¯BxG€Ç”0à!VŠ¥I7œ73è0È•Z¾LCç‡qDæ(õõ-DÐv=*Fó+Òηû]ÝvXU•÷9ôV?š´Ü›žÞ®GÌ9¹Äaç–ÌíÙ–¼9çŠÚº¯ŽeùD)ÞÅÓ d³¥ì‹]æKFÔJdžzLžLŠ^•ócÿì{³ƒmýÅbavíÔ‡ü»™Êr—ïs<\Kß hR÷¾8^÷ã±µM±ÖBïxaÇ-#4$k0ŠÛˆ"߆ŠD™¬uû­\¨Úžo-ªõ]©í˜"®iéô‹åòQaž£q1\ñåí{kù,òBLÊÊȈćSÇeÇ]£K‹d1›×øgP`Q×­­9œ}3üm÷€cUÖÆ£¿®ÆŠy÷–Hy(Y¶Qºÿ~é–…&U–㛈¾•Vmç&ƒ&∉n¯Y ûeéÇÝq2VL¨ŸsjZØ#™o¦ ¬5vGY„xø««˜ÕÞE:Q}E²·SÝ*%Ò>Þ’…#ZDMÓ9£i—HÖËÍ1÷# „e¸>·h®Œ½ËQYè#gNÀ!a¼<@Õr Cu&()4kƉò²Í¡§4”aŸ&%8ÏœñYänOMba¯áðÝ ¢N¥‰ç·.u\­#‘K!Šû»0ð¥ àQEû!}Ç%Øn¸ê(ÛÒFY/Ñ7íœU“løŒkÉÙFÃÞô^g–>ƒÎ6bP&Ä! Þ3DäZä@ Ô]ÒÜ ïîC?S5_á*~²ÏBëzåš/®'î•–Çeô&àx 1PºU Edäîá¥Äçu_{ÓT®5 îûÔ4~]^û‘®p»ã}"ÒtbLÎVÙ8ωӊSËÀɦ“(–Gó¬¾RLÂ#£R‡þ2Éc'f›%ìÒü¾ÆÖtéJ*™Ë”/å§ÊƘVd‘çW°7š(²>°ƒ: *Ð<±B@r5§(}¤×ªšYú*±_ÞÄeÙ½RME.Àc²*sQ°—óú*Lgˆàòš0k° [öU3ù9R!¥ºÁ¤Z6³0°2ŸÓûây¼”~Û†µ6ðÙ¿Ñ1Ð>èî5 yf„UX©–uÕÃÃYTè^zŲ"щ¿Ì£ðþ…úKló¼Ž-]ìHUű—Ÿ°>ŠJ‰æFSð”; ¯¬ŸñI£~ñ½"ŌԴXiy ¼hDøAø¶)hóãG_ñ² ÜüEÀ&Dbe(ìîc|ê‡í/óøW†žâ6*9—é /Cü˜e˜Ã±°ëgäˆÈ3^hðmæ¬@¸””B$Òô@=6]nÕD‘乓”KÜýŒOôO¡”Čϧ4ë+×D]øë ‘Ÿï2ëV~=щ¬AdàØ­v´mZ Æí0¬Ìz<ôŒ7Ü›dŒútÌŠ{Ç‚8”žžQ5üT¯A™j‘¼ÆXï§äªû0‡ùÑæh ‚Zî ^<ï {žsÚÉØ5ÍãG©;a늶o1µñ¼pk‰éÆbE !çRIm³ã812èEЫ5Øú°EóÈóÉoçðPTjŸÇÜÏûŸ˜÷r¹r¾&ó!1Â4…?NÅlRÄXc#ŽKý¹¬‚QˆC:ýÝø~ËÖˆÂ|öû霱péäL;¶ã:ìÚð+UMjãyéÓ[Ìë_yu_ƒÚ9-(v¬ ôrWèoÛ[æ1l<ì»ÜD‘³…8Å<[­´}ÀÛÜ'ÖYEqÐÏ@ž£rá^*Š›kÖ›S4C Ζ·–¯ÐÍ7Á-¬¬:qFC‹ØQ©@²I ò—Ñy¨b¢ÄU¾k²"#¯Ï}Ï#$NfywS£Œ– 4⇴ÓÔÑÇ ò¶¡-6äÓu”**ªÙ< EmÑåxc~,â¤Û!¸Õºhf0H㬩šÊ mÙçÚ9kE ÷×'Y¯pØq„!? *ßnƒ®ßz±ÔœA4\áÓa{^óÜt©zùoغ*¢ýª©F¾˜¬· “yâÖrèø¡£$ O_Àù¡VÕÍ~Dxø~Wÿ’`ǘUˆI…ì/¯-× W·[s'1tä yXL{oWÑÔ>@”gÅ.±ý­€¿YõxÆÖŇ™.¬Áþ¬¯þLÌ åö³rÛ!â•ÿqƒnyŠ8&–~à {{Æ*i9P¯-×ö–™ (môÊ?§Ðü&hë;o…ê3諯ÌäeF¡b©è+uX¼A£*eÊ-ñ¤C½*Ùð/¼P“Æ* òšÐtE l9þ ã3Ο˜Ÿí¤x~t’2rtþtú, œ .¸3츬þ)%úz;ZÚËý¼9€7ü…£%Ö´©ÑØ…UPn…—¿ITjjúèžøâ ?-'Í~®'£ß …åF ”|§ç¼ëÇ‹dør§ü¼1væ‘ Tqâ/ÿCŠ$¢È¸)KÎÇwÎÚÖ]CÜï:ü~}BiLþzãÚ^9'€M{á‹&Ó^sõ¶¤,›öJ4뮨”‘æPÒÀi7ÆT~9©›ùóyÿ_ ij÷ˆ_ Þ'„qü,󾇜µw,_†È8$`{™µÇ¤Ç¢ÊŽëlÞ¾Ucæ¢:Òg4)C5ŽËm“)†æ•R¿ðìé!–hÆ ë¯4™Qƒ:â^ɵ±ûk­'È?Ä#g°|~›ÿh³¹»á›H0éAis`y‚\]üèú=mŽ§Ôœ‘‰Š}û ©k]¶MÖ¥s=.¾_pÛµ‹¬rÍž¶]¢'‚­V®ÏþæxEº>ᨹèuÐàgi1ãC—‡º¬z]ACBïh‰;âJˆâ-p–‰ôá+%9îÓúwyjýÞŒ¼ÕÇm — õñI“+{¼9ц÷´ú]|ÁÚÒí ¢œÈ¼X½‰lgçÛ’‚×4ìð{žtÈ Ù•Ü fþ©â·íþÇÁó$o(>öñ¼È¾!H‡\/Ñáï7Lh:Êó ,ù#_‚">rSí9;]µ³É3ØMΪ™ÇרÞv)²_—EêÔNŽ5}=7$Ôî3NVúÂ;"‚ «g¬î~åcêY@èY)4Ñ=×nýÚž[”òðÞz¥ú×Hñ-béZnšüàù¨P{Ÿ‹ga×-~š Øy‚±Ôåy8¥ÈŒç—¡¶qâ¡/g‰±sºcû~}€¸Ý»ekãø˜lŠ"óš›xvß#A÷êtv*B¶Þu§G{ô=C¶,Ë÷Ê Wò¤xg£¤“«/Öƒ…×à²>£ŒÊ7ݰ"úÑÄä-—`Ö½·PÑ/dààB¦gô†`äi†·4^5þŽæßy*¡CLÄA2…ÌÞL¼tQŽçÑ'½1swYªk*Šœ!âþ?zY“u|Ïih_6¶¦ [‘:•·y´Rø) À‚‚Ú²­ÒÆáÉH-¸mèÓL{êdtê_†Ÿ-¸ŒÔµqy¨˜ÉL&’­kòûN–ˆ L~ÅÒÍ(åô}oë;t}h·"Tƒ7À¦» W0R"½+96Û¡BÂôÓT©À„2ç.NÇÀp'"Ã‰Š”B¨höðSØçÔxp¥ž; NŒqXèâ6Õ t&†¿{dŒ·Ý7:n+rÏ>ªm„Rš–}yö¹6Wè·ÀŸiƯ}•Whúµo]yàXað†7N/Ð)ŽîÓQÕц¶À„Œý'B:]JŽŠ¡d$Q —ddŸëI Çr~Ý—3‘ªQi(EÉ5ÜÅ«E< [¿»‘÷FæÌõI"ry²9¶â2k;j ®B¢¤OLs¼KLÌ“Ýáq×UoºC¡Z„ Î( bÖúG²E—¶‰éáòŸzé_Á1Àá–’ržƒò%Ì„ö$cY ð×ÈÜ6â|l¼wÞ¨Iâ9_üÄX"ðÓ¢…§–rͤãxt²$·qï (­‘ hvm¯W4€ƒEkxJ÷Â'©¢ì;Ÿþ“~Vçu?ØÁ­…iÔMÓνž#8ñþ‰òÂ(WdzŽ"¥²–‹g¿Eæ’.µ?¿ Ñ hJï8ø?äŒAb endstream endobj 208 0 obj << /Length1 1898 /Length2 9760 /Length3 0 /Length 10920 /Filter /FlateDecode >> stream xÚ·TÛÛ· EJƒ»µ Š&h±RÜŠ»K$ÁÝ‹K±"¥8¥PÜ  )îîîNñoŽÜÓsï÷­õ¾+k%yöž™ßž½gö?a¤SQg3G˜A¥pgv0H(¡¨®.A nˆ ÀȨs¶…þ3`Ô‚::ÁpÁ™H8BM‘c’¦ÎHKE(ïb sÁ|‚`~AÈ üÇá(”4u…™9€ò8Ô À(°÷p„YZ9#…þóÈ y ð³ý鳃: ¦p ¢©³Ô©1µª# 0¨³Ç…`¶rv¶äätssã0µsâ@8Z¾|Îtƒ9[Õ NPGW¨9ð¤J¦vÐÿäÆ`jXÁœþšQGX8»™:BÈ[ wBú¸ÀÍ¡Ž@¤0 (òàådê :;º@}¼þ=ñ߃æ0ˆ3Ð j ƒ~GGC-þbd 8ÂÜú d‚ ?^ÿ|3D™9nëñÛüÏSæÓÓWÒcýOÎÿÌŠ‹#Ü^ìü@v.^ âçòó }þ;Ð?[ðŸôÿU1…ý½¼E”ƒ[ €eܾÿdâúwq0ÿÝ:Ïÿ­ „@Ö4Èü» @¼ ò üÿܺüÿÕÿQþï-ð¿K’v±µýÓ€ùo‹ÿ©ÌÖãodQ»8#DløÿšjCÿjkE¨9ÌÅîgåœM‘"·D;;˜ë¯A˜“4Ìj®s†XýUKÿ9 ¤€- UA8Áþ¸z. ÐÿÌ!›bƒ¼^œ'öçÙ[ÿ-*‡ ÌÿhB.^> ©££©YHâz‘Ýjuÿ³Äœp„3ÒˆLÐhpüq®|¼Èªúcè/ârŠÿ&~ §Äozä”üM@N©ˆä”þM` §ÌoârÊý& §üoBê½þMH¥ß„TPþ‡^ T~Sí7!cjü&dFš¿ ™ƒö?„lNÓß„Ô3ûMH=È?F¶"'ô_ˆT´ø"“²ü"W`õ/D.ö/DêØþFdßqÂÿ…H!Ä¿)dÿò 7ÈÙ+óY Åÿ…H1§!ÒÃù_ˆÌØå_ˆLÒíOü¯*‚¸8:"¯Ú?»Ybÿá?ïu(Ô LO BAÖ•A—åbÔnìë‡)—:\ì°œ;¤FŒ—ãÕÓÓf ¥§ÛÁÒFÖÍJâ— “§^kU´Õ<çì´Ò[–´f±÷ç¨c ^é'ðëP²µ“Äió;PTžD´<5·ìPgÄ÷fªl›Jp{FR Í/ܨô­¥¼ í5Ùc­½5çz³.uÞŸL™+v1oV£ “•Ré„¿]âÝÊ–~ôtͶ?i w \?zâL(%ÔõX’ça™Ö\Þ¯Ì|×ÝT"/3âW»æES2oå7}Ø,²£A c8´~~­÷hЕµ í{ŸwŸ*¾ù¤Ë­35¢ö^ÖÿN'Dí°2¨?y8×%§Á$pûn´W±Þ‘+2õAEe8Ô¹Â^ ªX~Ö‘Ÿ|žQçóíÞ†Mb`ºe6D®5i¡¢”ÃCŸ¼¶Ϊú¹añR{fµõ× †-Í64¦¦éêÍ #æÇïRi· éMPª.!+ ÃÐx(‚œà$Ú—m£ÓnÄ;$ų[Èa4›€¹ÒðéôhmYR¦Ç©¹Þ¬˜‰÷΋ òAÞÑ·ãyDqƺ¦¦ü@5œ–MÔx6LÜš0wOgFÜî}\”N¤Ê^‚k~‰YøUÌ,A=ºÎËpÊWÛ³SWÀ实IÖq’Ê‘r#‘T3i,pfî¹GùŒ”K.®éa^³-¯PUõcOSœkâmÆ q­ñÚ¹ËÞ<®c}Ź~H»„‰¶É uRŒ´jTÜMÞ þHÏV…\s-ù\ø6ZŽçŽ~ÂÅ3˜^bH$ÆQ¬àüŠ,6ÝØ0îGO‹˜êaù@íðø{òú!†ç?ÏñGD3æBÑ_vIÔ8V-ÙtϨ9Hl ú¸À›ù ûÃõýõxØÖ6}æ%ã>»Õö±šúäÖA²ì±BÏ Wˆßw•<ª ùÑëTaÜÎÒn- R¹o‚õÌ…ËzY´;eé{»Ñþ´ÙÇêÓ ‚3ñµt„¿è&5Gñ“Ê„Áõ´§«e£‚ œt¼§Ûë™ço¬ö˜ˆ[\E\>|ÂÕÕ–yÕërô|L^$'ó§D„½TrÄyÞ~¥n¨ìF}Sb¬þtšë¤"w•HdQ@ͯîÞë™óŽÅ܆c§)qã«M\ŒŠwsËôKKµpšªŠM7‘¢W|ŽÕv˜$$bÛw¬ÿLØZØæT=ø)^_ U× Ä'SZü=^2_|a“C€™\J<¤zÞÈ=lO½ëÜÏÎÍ‘–®~4z‚Ä£4Ü{Ÿ1“ªøõ #D^®nôËÜQ·„¹nìNÔ° ŸU§†¶âbž¼OƒÛæ¼H@­¿*ÎCœ{Vñǘ,´çbmƃ¤êÅÜi{EU´dUjkwÖ~ô—á D¸RÂaybºšå_«‚§¾¡ºr]ë"†y¼0îe :\´\‚_=¡â‘æ•,Õ÷0<ÏÉÜg %ÚîϨðy³„9@Ÿ%÷ÂñEvÖÖGØÚIóÕÿÀÅ»¸%¢¨©ôt©£€ˆ.^Qõµù7©oq“[€$Çxs[éÖºÅÍ-ßwãùnr´prsK1µ› •ûh¹àÕ52¥±ÈïysÐïÍqy‹ …p²±-+mIE¦Ã×z£½~«F·ç_¤ÄŠ™?ö¾c …ÉH‡†=“KÔ#/ñ¸}@$;žû0^ýʼnòý%ˆ,V³#¦±êR]õÓŽc;Öâ-Š„‡ª/^åÓÛ¸v…s_BSÇg3Oˆµ?~ƼcŠñÍ)òÐ~yê½w3$žž~6µ)I8…-­'õÜUž¬ñ¦ñݾ1u¶»³ˆªb|íú}6CÍ·Ø€‘š5‰ì˜á¸-f̰‚©©œ÷ÔâÜÎöÍù­õJÛQEüÜžÁ(ÑnËa¯öÛî¹Å(¼(w ƨٯüa~›çrÍÁn‡‰k²O°Ñ­©!¨D)¡,ê_&×î·Þž5¿©]ŸÉ¿¥lyÌT–TQ»É˜åäÈçØÍ€¸B®U$^¶˜ÒÆýÚ{›Y±—Ù ’=x3éSjÚX$ æÿU†3Œ5£<ÞZý帰û³_¡E6UäÖëžÔn¦ÍïL Bã6uÏÜôH>Šë„Šè ÇF–¡YÖÖ«'Ê‹Êf2b?™„¢õ4"SoH_´m9‡ßÚHÞ‡kc|ª%Ã_çûåø­³yñúqæˆ4F·:ómèT4PFÖúå‹î¤èã|SÊÔ];~7™cõቧäº2¿é´20.=¨ÿþl|ߌOçë6sKd¥¨)¸«Yž(dÇ1#ó±²òƒiŒÒ»2 Ûi'PÜŽÉò°fN÷R•4e…YP9ª©![âáÒëžt/¿Ü$R´||Møé-Œ-ëH½è5‹¸)hž4‘4ZL³=Œ’ž"àbVÜSDZY^§¬æ :û³î CÕÊ-kæ]¿°Ïçs™À™ïÐ’óãÊ2õ¨âƒn <é<Ù²¹z„œu=Æk:ZLŒæè‹ Ÿ·4ŸkÎfftÍ{uÌö¾ÑH¦ é¹Pð¸å·à5š‚’ž‡®í–Ÿ£†S}wWñ¯ð±Yàò’¶h¡x¦qºJºIFŒë25–·Æ”×Êj+Þ"Í&ùój´ëqðLV¦î|ÃÐþ±.Ä£ØÄ†¦[¯«¦½¥_)”¤ ã&Þi#Êã¼”ðŸüþ´«3šm“oßÙ>a½4²¤ò(Ìn6š9HÎû¶< i}Z¿Z, “ª(m1©Z¬~Ô˜Hl )ÖÜj}yž‚¥$6ÖÞû=ûèKv­Ùô q•z\Ëd¡™¿"ô4å‹7í±áSC ð *mâξ¢_á(Y_êtÛ¿“'â kñnFN?äyÍ{‡ýú2”*•:24èîáóTغ¤¿ŒÌí@Ê_ùkžåbº¾$w©­Õ¯{ Šo‡1ÍØÓf³º¤«Æ°šoJñ6Ù_ÌиÕýn¤ö€•{јp² >rIû¥ ³åµ8üš-˜XRžsý€®4U:Ý—8> 1ŒVk­cd¨Ýâ&II—†b­uOl…b\m”/ÌÞšç—‰ºñl°ýÙVÿù“×¢$n;<÷KoJô®FÏõpÒj\jØÅ$ 2Óq3Z‰(1ÅÓîê?ÓNä_:ü¯›ÓÏøªšùñÞ pSÕñÓŽ¸Bâ­‹–ôC••—~ ‘´OÔ^mze`ë¬îk™›è‰ùêþâLÍM­Wt YK¼ñney2'IT*?Èœ81΢‘'Æe´iXh hÉGí»Ö g†(ÅY ·Ñ©ºXoaGwÚÎï{8âo½ :²ÕÑ‘ÉÞë(0l)Ë®¤^&§%Çäó/Òìcâ¢lÄ#36®ý±ñc~•̹²,2‘ V¼‰wÉpÿï±û4˜´Š2ß t9¡6¨‹ÚD>Ò‰{¾BM.Â}½1®zKK Ü=j<íªt°¹Æd±*dâQÄ`‚¡\äûbS‡7—â=Õ)áçÇJ[uÛä ¹~µ(³?Qšâr}aš `•cS`D’i6^_åý ~6©,›EšŸz<ÅÝ7\û¹›ãOŠv$eö~±†„y½ï åi;pœ^õ0ºÝÜm$…ûG⯴Þô²ŠS d<ާ~DÏScßU1HøØ HÖ,ræÝ¿Ž•yušçàËîC°IÓ4 ­ž˜Ÿeý¦Þaÿé\;ì úfÎ5ÈHTVˆ=³dŠûë’?å}ë´s£9 Ö—oÑx…ïeÙ2 áù¿ZC7«{X n±@>YJO‚Ò&ÈÃ3Rø:¦îéÍèOóתb<í#?.Ä6ŽœïòB1Y¥‹’Ú«²ÁþI O”ÞÍ’K;ŸâÜ-Ý'cSËôŽá\¤RsJᪧ¥ˆ†±Èñ´^,48^ÈGŽ»$^×”h?7TòóðNžÏ$òÊ—>JbÊ&[_:WaP¡9 î»o›ØÁŠäGo½Wç=òøN˜'Õû’œi|LÚyQá2 fÂyDïËåT ~z3µ•Òµe½?=!“"©áœ¦;×Í×ñ¤›„Jû7𰔟kF-&"ARMyæì/¡vبZilßèïóÔ•h£¹—òD¢' ¯éK§ß½Ñ|À] uàa‹}õ-"ᥱ˜`ë,‹Ë uøvìµ5ºt+ktÊ*÷g¶ˆå¹r«øñz÷ã¢ZDÇs¶µX5YK-ØŒºø½sß«à í>»Û>Ô–‘Š0Ôa)!dR=šç Æžjø)Ÿû¼ØËs˜ŠQ@‡+Ð)9žäPºÉºÔÀ•5êm8¿*ñ“| ¶¸û ¼Þ¶!c5‹ïÈæ€£¯qa!z¦ˆŒ×m%,±;›ÆÓÙû’r[»þ !ô1‚ÁÎ+ÁÛ{=#a îÖ¾7¿°¥«JR_­|7õµZ}L7!šu`/¹»lô=Ïçªzƒhê˜iŸË4ÌŸ‰.áÍ(‡z…Êd^ܼÃ/#§0&`{u™È¸ÄDwËDªé÷ íh½ìÄyÆV ½Ó‘;BõúŠ[âvÒ8Žç€›N>[£ƒ)ºžŒ.ÌE*/Ʀxð“µÃ½±ÌáÒbÝ!üÙŠ© $êøúÛUd2 £2ÿÃ~v .Lª=eRù“YÏæSy]Bw’uà¯Ãž˜ýN=ΨÐÀŽ~w¿.L>„¥¤ä¥ XTÀ o> é±­Rt/ýÜûT¯{ ³y=ÆÃÓÒK!–ÖŸ¾ÌcÕ¶g²àOÀå\-*éÉ­a“ñ—=ꟜhÀ=v¾Û¦¨óåI¡ -ñ¼_Ã8ÌÊÞ|Ö4 2„Ù)¾*ìFI|p¬Øô”(äØÞþFfÆT*º±:á]3þƒÔ×~´ªux{k>¬ÇŸí+rX2ruº’ïFkä{,6W—×tÒ=u}–Ùê+–*KÛÀÊǽKò}/< åfp™èïLÅ u ƒ¡[O ¾ õDî4Øo3ÂØ»s¹dO%H&?a²gôÆ/m,›ï|=”憥Œyš.ð]×Y;b5£7‘…=,½ÕÑ‘Nt³HÔ×»©O-ÍØÑo|Vxµy§®ΕZt=5çy¢Þ* ÇÌOÄAY¡k…ˆ«û¨4Ûê~äßwŒÅL·]‚=Ú¢WB{4„^µ “ÂkÆ2׳•söNëdº÷M?kôUw®9–UÞ˜ Ð `Ù’U„!õ±6Äh{€C–g“eë—äqöG Þ>%Ðé£Üܸw¬žB×eᩇ>p¡ò«X9íü¶ÿë›gZa¯½öß,ð\l-¦ñ4h–2ã ¥¾Bœq.CQQ.Ž›Ìb_þtÜlÑݬITi1W¯[bYd$w½›¬Ö1ÉÆaa”@ÔâkÜ»³¾•º-âfb)´>Ý1œI|u‘Pp“®„Y41qÉŸ;¬R\r¾3êÿ¸}Ãÿ¼!:(cø¸"uÖ"cd|]P{ÐW_K_â5}1¶ûÎò úœ*îí}Þ¥„“‘†¼/ÌBï“ÑcÙO2W¨“êx4äÔ…ùC×…¸QÎzµF¡Ov»¿¶hÓûñy¢³9 K4dÕ=|tý†tê(ìür _CcÅàlÿ“ˆè*!\l¡N—÷ÇaÛ!íê§5´µh&5]ܹ¬ôr³ë1´?îúôåë·ÚYc‡î*‰>‰¤ B#ÍÑrfœ ~ª†*~0èxç½tlýM7Ùõ[åY•µÖÝ<¼ÉëÙÔ-‰ØC–­¡9¥%ñ cs)*g—ÉñN’MZViã¾Jáñ ”’an™— á·›æÅs~,l4ã˜×!à #I¢*Š`>"ßåÞ"n=PWIš‰2oLm¶mB¤¥ JÞp`«¦{&…r(¶ÿ&ƒ•GÉh žÐƽ11áqV÷Ô¢ýEŒ7ô•Ë3›Æ±Ž@‰ÄÍJ´ ÖÅ;û³h¿Ðq°û—ŸDªªâÓ¾ÑBtû{øvÛôQ§XØû£8}Ùì2Œ˜§ÈßO3úÊcó|• )Ô“2[a)ƒj¯Ü†Œa“ËŸð¹=?¯‡F1^ñ¤ŒØÿŠzÎ}®¯… âÇ™©UY£J\ì¬%¬Ï’“‚nSDf(ä¾(+³NâãOµ%A g8ïÑ2½«šòP¬œJÖÃ`ïjk÷¥!µÕåÕó¬ ls"ëo.þ¡ƒfQNŽJßzŒ í]`ÕÛ¾œR¸ÁI¹4§Ü è.뮂T[%×bš–hÜZ^-hí ‹/ ¦åÎ7³ì÷8D—XzÞ‰•õœi°\,ýéÎá=ˆÊï¹=—:æ®ÿ•„ÀâíˆY»,)¨¹\¢Œ‡]|œí8Á©¦OjIÑÓ>ÿ¤[x,dôAcÊÌ®tì%,ž2pžÿÇ-îäÓ«ŽƒÏg°ãeÇé+pú¼¡f-wÊá¹ûð/ ¢tVÉy"ê¦9 ·ƒU/5H!:*:,$1?bÕ)퇟pxq =½ðT7¼ðÁ1ÿwby™§4¢¤çyÄŠée×/›mÓm”>øœøtÚ* tkÎô¿`(Xv‹.õ“vÊeG,‡åËÈŸzL'<ò®÷ƒ*ð›öÐÝyDѪ«s…ypz¾––*±»¦ÃÖg6Ê6ÇÌzÓ½,YÓ`9yZZd²9ÅŸÆêŠf-i)_Ë?ù‘É¢o4—H#ëÏ©²Ó¹&"½æWØF$“ÝÒY}Ç“¶BëS¡ø³ÝeÂô”Ç‹eF¤^#« NGýðT®¦P~Ôº”ئBüvo(ÊòBõ%„Â| n”lí.µn·¿œò‹TBØq=?&üqªþQÁ ªTâ–ô‘}ù›ªî—Û:Œƒ æ[Iû•ŧ˜©³õ=£.msrÒ¶Q(Õ®§t‹oƒô}†GüIõ”TÚÊÛö(’Þq>ët6ßÅõeèHgÛlîRÚ{–:Õ<³dþž…tN€Î„CmX]ì{wæv¥Œú8S ØþŒRó{†püã³’7ít]FšÂR®Ù…ÇÁoJ>£žmnâÍ3GŦÒÓW¯yɨPø'kÎ 0e|å ÛÎ×:ôé~‹àÅ9fn•1¯ÙoÁéQ—ÎIÚ|Ü|JKº ˜Z×Ë&¼IÈéoz¶ä Ñüi(‡õ¬9ëù¨MÝ O°«ÚÔqgkL¸(Ãj´Þ»“zFõ<ƒ”pʻȊd¶ ÓÝiGÄîì;ÅO:”^ÅbÜÏIbK?gy¡1GÒÇ^.µWwXÅÌîÊØœžú;ß2*ú,¨ UkóŸ®ô']ZÉ–Lp,êËX8޵_c1æºéÖ0dúMÑQ3úµ-?þi—£v?\s?»z%ŸUç÷Cd^¶êÕAgzîQ¸»íX›Os±ó$—h‡×vå®’øÂ_JÈ» ‘E:Ç;KH§9XHÀ%7±è¹1[#Ž#‡gF`“äŽç¿B7æk ©ÏŠmI½Éª†çÈg½b(¤6é¾%uÌTîbfÝXSûå¸Ð5~ùø1çgú··öÍjwrŽts‰ÊSÁGq€É0ۦДa=ÏÓe¯|™V…Å€S'µmy}&Ðó÷›T¦œ!°Ã!¦àlbÓªøü}ãÄ8M‹—•Fè2>´“Qßk£·ïä ðÕ,Ìᦉh6:õÙN¢ô5g¹ííŽØ¹ ˆÖ¢êó,xîƒÌ½ý[¤Ž”ßfPÑ7 ;*VËÌñµ¯ÿJ)EžàÊ@_9ñá^¸É[KQvÄ4 ‚ÛÞƒç#ÓÞónjŠHÛ¼õVÜnAe‹7e+e£¹1TE²Iç¤Æ±ÂŃ|©ý³ %ÁµpÍÔþćä(ˆ±Qü¸(¼ÞLb-®Ë‚ÑTegŸ)qØ^ORLžò›5Ô/MïÆå®•æ¼ù!– šÐ’_ÔÊéJ²³TáŽ-Ã?ì’Ì+uŠk#+n)ìAuË Çßµ[•š1¨=ýÈTÆy±´É_ȱá€PÕõ´ Œ%ô×½OapëܬÙêzn^{kµüÞ|{ÙsYßu“ d’vÌâPØ_Ou‘0Ég€N0T·$’~ém¸f’QÕu®í->„cç½ýS¡ $Å£š”¸3ª°Cñ¤"JäûÑ>ªì#­îs\C¬‰!$ŸŒve|—;ìrÎ70=Óc·/í3q~kþh§% x»T²^¯%»®‚Ýhx¤ލ¦ZYz48&Ȉ]êãqZÄûš ½ŠÖf¿P)è—Lõ c¼þÖòuöí®<Íàa?±ƒÆœµþêÉv¹·}E Iw­wµïB¶Óë¨bÿì !­™ÇSæ]{íŽðiô}þçÓGz"!©þ:OmH ¤ÁDí²/]©µ‚ŸÞÕÖªJôCµ<Ïæ˜TÒîû¢—'硹’Ƨð„Ü=6enÞ"£zôÙìÉÔ„r¦,±<È•›D§Ù&¾çWAÉ9C?Y(ˆâŠñrã§|ßCñ3|é‰TŒ/¥nçÁöé/" ¥½Æe¥j¤øÌKŸR‰‘aÀešõ­¿ÐRˆž—¬†Ó L™‡³eJGö\ùý4'XGòo4\jP|ywÓ›ºnÏæìßÓi8¥¨†^¨ø¸ÇøDר]|ö¬\lÖï€ñ±¯½IAš<ø›"ç)±<å MátÅ€Õ‰0"}{s"e@ø;æ…Ƚf]Ž${Éôç›/+²2“JyøOìHuO_s”,Ñ.káI+Q‰Jv¸ÐÌ^yëÖÕë.ÏËnÙ~ØÚå®Ü‚rèK —ýhP}†õ.:Ãa*O}ÆáÓÓ=Ù¯Á¸æ<º'”pYVzÓ2¥®þ½ìÒ¦Q„žîb£ëåÉÃÔw¦â‚¹ßs†}Î>»b³¹%>LåÛú=¯ˆÁÕꤥïå.Ý Ò›^ÅOwþ=íS„ªN€³Å$µ(Ú«›ˆ“5?…(¡Ýãõñã’B Ý"^Í2¬#âòò_Fî¦Ñ¾PŠÃ"îýðãmã–ŽÂÀH|{kηâi¢Þ L׆º1Nº‚©Œðˆ‘zËŠ—nErJöèqm'… ¸ª³Yº¾=ŒŒ-{Ôï*Å3Ušb·4õòtt½ŸûH‰}W9=ô8Fy‰¥>ý#B~¢;F“üæ{#hÁ¸|)u¦å>U>CËÙN’ G{VqÂÒÛëxàûæ´¬x­šo{ƒÂ5è@¶ÓߨåU—MR•÷òâLV\~©ó­PRèõΓÐo¼t¯ú¶›äUß­ŠÍ.ÜI¬+®)X Þå}zí <àðèŠÌ©qcfÞ­ ›'iñyaû·û>KgßxP’w%Ç \M„î$9î)Ƀû {žO^’˜br*¿D^:=בÎ~õ…ŸYî:>’s¡–ðו0ñ#mª Ѹ¨Ði¦T0'ð²Úlš9U6–Gæ…cFÒÃüRÄsäÕ«JV’‹MX|`¤Î$“,éte¿¤¬äö<°êÊ|YMþã@ÇÌã]¸öÐjšXjsŸë>^;™ì²êµí¤‡a‡¡ òIƒm#IÁ>§á5¹3nÑNøù8?Nq¯Qÿâ4}—¢R[óMÉ Ö»Ø°øô– )ƹ²‹Ns%µ£g3I¨Õ–EðéP5AÕ~ŸçnG³³-ACú‹Ò³—¨š¯ß¥ÒFôÐecØZ®`Úfܸò4Â\Øwù¤ÚÞç7è j« -á÷óQ·t${l“I†—Ios>Êó.ÇÅU ŸO¸Æøé!¨Î~~yÓ¡ÇÔFƒbáÛ@¥…<‡é ÷ìuç¦änFJ³«®;°|¼js¬èUÄ.Zž¬^µÛY•·ªQ½T!upìaþÎî‘sŒŸ*Ìk?…³P¶këA!eöµ ³6eÍŸÐÄØf÷Qlå0.ظ£ÁqÅ6ƒêj*1sZL“ cà!FôYË‚.Ve€ÃG^9z½]‰G4±±{ŠïïÜk’rŽsÞ+èÏöЉMÆÍ%P_RN¶ŸÌÙKÕ–³ð´”#Íd ô)ø$õâêhÎð[Ñ£$È'do^ÞÊí³¢Ð5K¸ ø†kk ñôª{§Ÿâ›%æ`Æ;ƒX[¶¸ÖùQËòAå[Ï=§bï>u£(üÜQ—!Ÿ3§Ïö)£J÷X‘ê›Ù·`ðÁ…~Šu$¿¼¼‹Ø·üÅ2_<[æ0_±ˆ­ÆŽõÁ$¥_å>ï÷3®AxGð.ÊR èÆê®L¿Õn¥Œ_R1·ìóµçiÆ›pxZÛWûðmާOÙ°àJ¹ávÙöå—Uö›eý¿Rô³àèeÓZOÊxÇ<-‰•2$f¶Sñ ’òòŽÒ§«iwön24=É•3ƒÝv~²V+h{Qª²Úv‰™³ÓdGÑpà7ÈåZo§O7*;ó±‘_Òî*+Òý†wõýcˆ _QÜ3 9kYOsS¤S+ûªÑ·œh·Ç#¾‰•{-ÄXñÆØÐÜp´šrÁõ}ÁÀ+6ñ´ò9g•×~3Häƒ\o´¶.ÕU½0æ×ªÕF•ì}±)b@áÆš¸¦¸‚ºM{s}‰ÖŒKº·÷LæUo©YQãiT{¶Óç’½GÃ-±—ÜŸ¼†ôÏ„ä3–Ö:¸#QlF2Ïì´CësXDÝ–ˆpI+(ZÏ—8|žà~[V½y9ÓOt­Ë‚Ë“î,ÜÈ·c‰Ï¹,ŒãüŒ”Ôd »‹µu­¨ ­Û[(÷{Í;ä=´.hünhR*"±$·³Âñ"Ñà­¾3ÞŽ¹Áš“d<Ž%íC\ƒy®mÁb¼+Bý4íx·wñª73äÚÕøAÀ;ü»Ù×¹ :#Èч“ÝC^ vނ㧘?O¬J|±1PÎ%­j½ÚXNK%Å3jµM­¸r…Ø0îú­\ýaò³´›8Y—r5Ÿbëò|/tìï»› €ÔÅÛÔÑRÁ©1Ý,a÷¯&îz¾‹ƒŒLRzïÇ»¦ÝK¬'ÝԚЭ”áÐð&Kæx]À=¦"éŬ†PÉ —9»½Ùc6rt}’K±Èˆ:…4L`T¥°Y 5ø_­À¿­÷\tu©‹éaY?£@?; C‘t[ ÅûŠ"ÆÇŸÄ]¯éßâ@®“ôÈV|$¥}Àâ¤V4wÕIþù6¯ÃCML=wŒä¡ãÌíˆû¥qÞI£GαÑ[eû‘罤}û™£§YE–’æ’›¾ºœ¾½˜žmð«Bœ©Åöu87¤0)˜°a+]7¢-N£ˆÕ˜À =~ŃJó"LÂÔÛhØÂgôF”fµ°cÛFÛ„7·uÈ}ÌXœýã=èNóíù² ÑÇt ëô€ÏI÷H7Í‡ë¶Ø]-þ)Ï5‹µ`s;² ‡)Þž|Ø„œe+~'âÜD®N#âßv^ãѶÈ@”1Ñ8&Þx ²ÜÅ ÈØ¹Œ”»v–[-oFV?ø•úlû'Þ5. g'_ÐnžÝ(ÇÑ¥×å×¾ûÆp±%øM~î##{a/þ‹£rØüiRÆ*/séþº‹E|g£áû mì®­ÏCŸbèu«yXŽ| êÑfŧ»°¾Íäý™$ïÁð¤_HxªÉnäî‹¢–üÿ™¸ƒ endstream endobj 210 0 obj << /Length1 1520 /Length2 6820 /Length3 0 /Length 7824 /Filter /FlateDecode >> stream xÚtT”]×6%ÝH×MƒäÐ]ÒÝ!9 30Ä CŒ€€€J(!*H ÒÒHI‚¤4H RúÔû¼ÿ¿Ö÷­YëžûÚûÚûœëœ}Ý<&æÂj®H¨‰ˆÉ7 ÍÍuA2€˜˜„ˆ˜˜81íý;AÌcEù‘ùÿ ÜDAÁ諘}Å4D"=?/$€¤åA2òbb€¸˜˜Ü_D$JÐûÃ]C@‰€úóÜDú`Pp7wôÕB½ü$''#ô»Pó†¢à00£Ý¡ÞW+BÀ^€9‡¢1ÿjÁ¯èŽFûÈ‹Šˆ€½}E(7e! ŽvÌ ¾P”?Ôø%0{CÿÒ&BÌX¸Ã}ÿȘ#aè0 \¼à(Â÷ªÆá EWËæº€±ñÙà‚ðçé Ðßíþ¬þÕŽø] †@Þ>`Žp`p/(`¬e ‚D `„ë/"ØËyUöýÀ.W„ß{Zj¦øJâŸ}!(¸ÚWÄîõK¤è¯6W笉p½‰ôö†"оĿö§GA!Wýë~=ÈDÐßG¸Â~ qõóµDÀoûAu5þ$]…ˆÿ‰¹AÑ€”˜˜˜,H€Þ wÑ_KX`| ¿“ _á+!A>Hv%‡A¯þˆƒ|ÁþPòƒ†ýgâ߈\á4àuƒ#ˆÿé~†ÂþÀW#€‚vbWÄ~ýþ~s¸2W$ óý÷-‹ZêYY˜ þ¥ùךּ:2–“„Å¥ÄH‘’BþÝèï#øKþï¨ þçöÄþ騋€!¹?T\ß_Jüÿþ?­#ü{#äÕLCþ,`/&%¹z€þÏFø]òÿ›ÿ_]þw ü÷–´ü¼¼~øÿdü?°7Ü ó'åj¨ýÐW1D^ÙñßTkè¶6„ºÂý¼ÿ;«‹_E áv5ìÂ.ÜW u5£!îÌÒ_wqµ€5AúÂ}z®JÄÄþ+we>ˆçÕçÅ÷êÆ~§ WÞú÷¢šÒõ— Å¥¤0 Æ_ À’‚@Wnu…þq@TD_•WCEüë^¥¥Qõ_¡ßHV 5ùÉÉ¢à ù] ý(ˆÂÿÊ¢^ÿÀ+?ˆ"ÿJ¢¨ßð_Z ~(Ô•áÏܕпðï¯ …OŽ!! ‘•‘ÇåjÌÂ+ƒŠ×vÒŽmÄ…s ÑšŸœ’̳2§ô‹µ&߃´=ZŒÔo?ŸßZ®b¯ÆH ³k­¹±»$Œ]a> úÁÂ9FQ‡•m¢Î&_€êÄ2a¥l%Rquë4ç¡æ«ì˜xÀ{½PKF/ªÑ¨¹µ¼0Ó€ŽEÎjkÑ ]ïÒc±"uÀÀ÷bÑ;>b)Î>:Õè§¾bó qR@å|÷‡ž/TïYÛbÃõüï­ìrßGSi*ô°hH”Y}É!ÿù¢Àóu‹6%¨Œ°*H¢*ÒOžHt“,'ê½S.:6j™œ U|· «°YóܵÄÐHM¸ã¦Í¨ú¿$dS²¤VÇi¡ o`ø©Á¤ÎÄR¤ˆëJƒ5½ûêÐGÞ)î}÷Ù™»Cæi/ÁoaÇ`‰ ýøˆ’ÏX‘:$á®(ìY>ÕCRmüȽhzZ‹ÆDe|*ܘ²eñ{ UvxÝŒ›Ææ2Åyá*¹K)J*ðïN7X hý}»ÔÒüÏUnŠ| ÚpÝX)ôp'² £±ÐÂV)ògô;™îÈß_ò$ñî¿o¬|TêÏìÙ4y¿sÃŽ3Eõr‚dÚ¨±X_¶*ÔX­rÁIo®Oræ%;Å™+•ªü~­cy˜Td$7wž"u‚Tð¡ù >sýã—£‡Ú®€¯xöëñU¶¸Å—,k ·¨Ìo@•:—¬û¶Ó³5¡/¿°^Z¯ì½ý‘‘~·¥†+cøã§ÏníÆ’ nM"%.»è) ¸W6À(; m’rí§ Ñ6[åLäÞ³eí‡;ý[OØH#ñÁ˜ñË;a·\7KËFK¡¢ó~ºÙ :¢u¹¼ S­™¹6ƒPOþ”¾)Vƒm:¯œÁñ¨è@»²Kpõ ˆo†û%G¹D»  ÊE[ÍúCƒþ¤]VÕ0|A>ùGL“¸@Ñ’ðiÔ±T× áIIá§yfjg‰úªywaG³ÐøV‰˜€×üB*‚‹g•\ßœ”íC'ï$Žä=ŽØ<[ƒ½iÉíc׳æZGÝ™ŽzN&¦e{ëõþêµÐK¼å÷ÃG;”Æñ»¬cDÉÄ—Éôwh&úŸGå1Š=÷¥=œÃô¯Àö~4 ¸uTeóè¹ö;ñ’?7³ðb[Û'h§<¡Á¤¹‡·ÐìŽj¨³û»¼bÊC"Â^\ÖÌa.újË›ì${û8cã›|& ¥óO‚° Úh¹¦Wà8šõ™ÇùÝøxëÑLyØR¬ÚTUß®S¹°£Vz§`WŽô>§ÿA´¯@ìÀ÷‘úë-h‹Eh¼ÍWé-ÑÖ[fKÓÆ¯gQ3*ÎÜøo4½Û|®}I*h¿¡)-Òõf„ù6vý…YrG诉yhuí^Ý.m„à56IÜÛ¸-S}Hsš$§sß“§?àÜnÞ ùš˜W:ïž_óHñ‚m yö¡ôÞz‹Çëï*!N‘fž‹£m*Vïx +«Õû•|YÍòœßˆÓ(ɰ–s9<ªò4‡A7J¸1…Ž¼Ú‡ŠÜ— ÄÎüZœ~°72.Ü)}kž ²âü$«¬[ßü-ÍÖ>è&>úšã4Ý$é•“þÉðM„ÕCŠ˜ªþTì]¾Ùý¤p6!õòzUø²ÔÌÐàG¡O—ÚÎA ì (œÈ™Ûñ!¤ØGS†iµH–A#ã]ðw§¾%ÓËÏm©n;Ï„ÓD¤ì7S‡y6c(@.Ò{kÛ¯‹„˜|ò~8»@c)Þ“: ®+ðU¾{ÄþˆX7æ¬i®±³ó"Ú­ äÆxW©6˜?ž ´ºðNó½ ”ùXO™ÅÝ%†"l—…H ž‹¤Ø"52›v>1.ì&^Íc÷ìîê°9j{íÁú‚A¢õX¡.hò#˜V);Æx¥µ°P盦*wLPaÁwüGÈZêÊb%î[ Ao‹”Þ7ó%a—`2qödÃØc]9âÝaÒöšX¥+7b¶j(oáœÖNªÙz4©9âq΃^ ¥°É°h"7©‹ž§™G0*8gŒÜ“lgeyÒPQ‘±•Ùš¹+pøS ×l2SJ¡W¨F0í[Á€0ÿ ñ“ô÷>áƒÍµ Q‚ý¿ˆún›‡QžÚý «üúf¤Ž7EÿŽ gÌfPÕ a’©1cR†%_@àÙÊ@{䊭×l9§dÑg¿§5Þ·~ëœ7t7ôå^Œý½‰wʬä*뇸ô[µ”ë>£é+Î$dXÓiÅ6²9]œ?a‰´<èF„Ÿ h‡èÄæ'rÞs£ìQ£bzݤ¾"u×¾w!·Èkì¡ p"DÖÐWOUÇ0xãd¦ƒòÀ°p –ÕÇqöRvDÄ͘WX"9¶Ä‰€Ö¢ /™†)¿oV«Q“Ž”„+îeâA³<µ¾É±Öôýô#v´£´8ŸKñûè+ZD6²ï°¿Ãnâ$yûh*ìµúÇõqãcv†#£1ü* J Óm5 \nÌÄ}wÁï¤Ý’•ôóØÅ rq§ƒ|³Zå€Ã[æfE =Zݽ³â‚kºYp:Ý”Çq²v®Âo- 2øäs’㨶ï|U†Vïa?Jµ©¿… ªòCÛÂ'±ì­³1˜wp.¿% ËΞ¤½Ý‘I‚öqJ69ñQ {ä†Pº&ü O¤¦ÊgÉ_ù ”h½†J¬hÎ\Œª .º¡#‡ŸzrOg\ ©Ó:ަ”˜GZ +ç2çs…(9•ÂÃÀ}¿^¾»­•-½sÕ6„¤kË‚œ§'ø^³â8Dž4|ù‹NPRÑúŠÁhð²´Åz¯þšŒß'FQUͨvbþÍ‹ûJnù [¬‰Ö¯2Çug5Ÿên°1ä2q‹-Ëag†Ñu³×Ä‘3wb}2¥ á*¶fµP R©p^-:2üÔaŽíVHà몳´oTèSÁÞcíæV[ý=Ì£º‡C¯Xúû¹Ÿå{|j÷³^»ÞkOé} .—¦\%ëºy;%ÃdæŠeóë–ŸoÄ&¶×â:)˜ùôRÚA8í|©®½j\c—O˜Ÿú~'Êgîé¥Êí ¾§‘áaʸA—\~¯óÏ ³6Ž7ÏÏI| !&øÁ_F¤u“ß1|~¢×I 5 4—d³VfÄäÜì5^ÛÒ«×– =ÚßÛH¥O 4þ¡¾í<þ<"S¬Ðß áÆYçÓF ãÖ·ü·Ëý¸ ‡Zv¦Ný›|µ;xïJñmÒŸ"Ȥퟵ2$O¶²hŽs¨VÆSo´Ø´lkp¾j Ñ–'XËŸ#îº}Û2ðè ³ÑÉS~Ù³øì–‰ÄGì™6n(4Ï/â§2QWÑLò!¥ù [ÿHR€©ôÓ­¼Úé¿»ÓÉv$ø>’¬(Ÿ~8Wÿú¨j{ÌC™KÂ8ùè©èøà1ÙçÁÏ?> PüÆ%e¼¸Ú4ÌìÆ… nO]W”‰*†+Ñ'á¬3ãõ¬}jƒáïQIÈNØ*X ¿&:•è»/f…‰u‡Ù3Ç®™3ˆ¶½\â}³íP"ÍbãM‹e¬.ŸïÚÏ.1v¥ ^ì ttöy%¤? 9I>¹WèÜ(kœbYé^B«–¶zÖî˜2¥÷d0 ‡¦Û|¾ŸÇá>ûK«€ŸùÞ#üÏà kBS¶••º…üø‰Ž÷#~|s|ÎÖ•ï¹:¨‘Ïl8ÊdË,D’P.UôÕsD³LêrÁð¥W‘ð]¥Æ©¾r-ÀõàÉïi-äÊ–edÜd@‚ÓÓÈÙÌ5Ýñx“}:†^¥^ç¬ge &fžv´¬§Õ×t¿Ë`žh ùÒ†gUäÌÞu‰b¤4Ø)ï|WÌY²9ñÔóþ–컼S‘²ÖìJÒ%·Èètç^¶þІhÓ€_$'5/üðí«Ž=û÷þ(Óý_r®)è¬÷ VaƆ ðÀµ øS+?‘îUyØÏ<}•ûJ›­úÔ%ÃX¸“™@ÊV“Øâˆ.g«‰íÐ$½ÜK­cæõžD.œeC®Z½œøß./(7â‰n®¤YÆ‘E]à!÷܈Þ`6Ю[ß5_ ¹;ãøþBÝœ×&‘\Crü¡\„ÊÄ…™Ú5¾.{Zýè›ì¯í¨%¿j¶ïºg0²–ûw^e#¢fUÇÐÌ$儸ÇÂõÝÞqóÀÀ%Q›ä}Ø0´èó0a…êótÔҴѹEVu%{œfŠiÚ,ÔØÇB!á“vN,;’&—=YçœéitTÛã5zµÜ‰;È‹®…÷sX4ÓlÔÚ[¯öEÏ iIx€äGa^ ]ªò°‘Öð#| É:¢½¬K27çÕЗB'é»Þz6Î`ÕÑå Õ·Du2€Oi`n‹ïñ3»Þw8ªWÐë¦SÓ¡câc…÷ßs{zÚºÚs:ÒºXÍI“®K±‘Êpm6¶ûÏ›ƒiýN_„Ê=Ë(Q‡;Ðxçþ<'çÂj“mð­bÇn¬ø¤Û‚ÜèEg üN@ÄaÎ Š‘×| ûñ£áRüY­Ö™NFuãÒY‚õÝdvMo-GöVó”©kmÅNNq² AOž‚Äg%lW*rñºžW?&6eé|ñ .ŸK]j»ÊYú4käæ ¸ñ,Ü™evßcÕÑí=Ì®Êzòššºv"‹Jlö™ù¸Í>tñæO6;!X …è¬ ºµ×CRF~RMÚx3wâžyÿ“ÇÍ™Ö_¡¶T ÆŽ+,—õ¤å ÷ËØèR÷W­È>r§õ”“}~UËr:n ¡r6¨:ó zoð…9•Ï%g•J¦;Ùc& eŒ¸Ìk¦Ó:œº‹¡4k™‚ Šl:}u—è܇RÏ—C–°T ‡?Ù~2 &Ô‡‰ßc½žÓ5Á8!œlŸ2ÕFÇ/föü+i┿!ûtÄf•¢Óï‘dB‚I$}W¨ ÷2¿=ýQýe†$hJíÃeJŽèåšG[¬U¶ÜéŒú¹&ßÑ‚¾öe T‚Ô采Ð6‰ÔþúJ*ux3rá£×J‘͉¢Áz=µ²›Se<ª×’u^±gÅjîÖOßÝîK²æN¹ª³»)Ç ­d…¦ø-ÄÁZØ:Ê´§ÒE=:x‚NƇð@ç³.iuK7§2 ?-4/·µã¿ß˜-¼þŽ-×—ÂŽ×Wu6!p'Žçu]G•Mi¼šÚ77¸^«m¯ÒA*ÿKP'OÇH^e)6)$vhÿ¬’¨I¹:äñz?;SJ¥³ ‡Îß™R|IlJ@GBÇuO Eá2WÒ[}@`üªõh*,Ȧծ~°Áï(ÜWwA'O ž‰˜ï´ÉÄíùàLZœAely*tDh—4s6‘D‰§o~í|’­n–í–¥#òÚÞó^ä9¡©²ºDÔQºÝY+¾Ÿ¶SþëÐvšå憘hu'ŸïÏ–~ ÄZõHä‘¶þavŸçÏeÕÒË ºiôÇá74• ÃÅÝžJ“•>Ë•\‘S‹ .`Ü8ˆ®i^y„ó8ЇñhÃ}ønŠŠt8†þ »/cö ~ëÙwŽØïþ¯ü®©*–U:‰…7Ý’0š/þ(SJîÜ{ŸØë³Î¦ÉÐ÷‡ã–±¡Y£—’`çqÃÅ,ÁÓb9qKo¥£Íø¡¶N¢ÓËþvipïÁ=‰j]`ž…]!,aÔQÏ3ãÀr2üâ©'£­8O ˜hä+ñ ɽ³1ÀŽŸ“U1|0K†cþÀ•)7›JÆrh&ÿ›ºäÀ³C“9H.²ë(í+×»£]³À¨h¼jZ\E&‰Ú²tî@ÚÅÂïˆj‘´È¦k–ò^+Œõ|2e} ™ì™e|:wÿ>Ëñö€5i5Öp8<@;b?6©"LÝ®w’ [9•¯ ¢œÎºè¹Ôl½cVXµüó ÅÒÏØ†}, ÊÆ³VžÊ=4õˆ¤VÉ!hÔÀל«ðÀXd|^¦ÃŸÀãž>GÚeÏ‘·ßîLÙ¬>'WéMX›9ʳ]ã Ñb¸û±uû°­Pê\}d¸Ùìr‡·;Y×kÐc\ºðÜ&kùZá1G;b/õôubÿÑnŠô4.ú¹ÉÓVR•œ¶¦ü)KiG&øÍ]^þá½ÒðìTî1¸Üá­ðø“ù¯X¯¤GqMÞn™=°N‰«KµZ¨»+×–±×9ôDpúFƒw|Šb›ûæÙõeøÒqö™B¶±£ûñ.®ÞŠ,•²]Wcß !QÞîQö™ë¯„ÛpôÊÛPŠS5IAîÃ7ýƒ{MÒòC\›,Ã0¸€ÍÅ$÷MÒ‡SΟ 6LcI[/5|5Z¿ƒ€G‡µöºÈÝ_}) u ©qçNð™ÔÿþµÓQc ã<˜Ý*7–I]äI>Q»–jžñµÂV¸° xÞ¥»]œ3þ7d×¥Ö­ŸòEy—Ôz®ªCl:ö™ÚNŒšöJ&Ûç^Àk¨ì°Mó äToäu#»²yªÇ5…åûê³óõ\X*(%ÇE‹ÑîråvYF=þîvk­¥‹þµügÙiýS;þrs’`tì†÷³x UÆ~F.~;èI!CôŒÅ7l×üÙÞ~ÄrŒƒqOD•\Å™ïN®!H$•‹Ï/f°CÛ¡eÏæz!·ÿI&g}«(qUBÞèöWÞ S‰¼uóf-taѹÓÖv=Â÷µæÛ=C&R-W;rcV«‰Ô7"Q½äܱçŸí?ž{¸‘܇}²ÇS¡%|aŸ4L¤ãŒKŠâ'v{ýÄð‚¾—˜ß¨[ˆÉå›ˆŠ Sù¬ÄOL§ÕέÛeؼ­¯Ùmvq>z s8~Ü[Ð)X)ŧ§ËRŽl³ p“IŠ(¼×xд9ënír[ˆmº¯õÉ}0Z2—§Ú”¦¨ª±Žk¥L†ff)U9¶PòÅ^¼L‹³* Ç=¨Ëd¿ÙržëÝÕLµj¾¾“|í'*HÙ*Y¢[™qýó¦Häî›hÔ§bSqB\iš¦´Ìý4Š\{<³8í9ÑQ©Ÿ?ÊB²µ=¹"FuƒˆMA0I¬, üŠ|N[JUÌõ'^å ñò˜¾-¨Æz ÐBÞЧYØå’­¨kmoV‚·ØûX—Z3ib¿:mdóýÚûdgüÊxxr•œDœd­£›A‚îAåâ¾Oµ}í£ëð½Ïª+Ȧ=mÓÈvªe Þânå¿ïêTæ®bã—,s…=¢Z¢~7/ŸS*)_ÖV“·I´­Í2ò?¿P G endstream endobj 212 0 obj << /Length1 1431 /Length2 6224 /Length3 0 /Length 7197 /Filter /FlateDecode >> stream xÚxT“ÛÒ6ÒE:ÒÒkÒ{ïDJH@H„Ò«ô&A:* E:J.¢ MºTô‹Ͻ÷Üÿ_ëûVÖJÞ=óÌÌ~ö<³“Nc3(Ú ¦‰FaE@¢@Y€š™ %D@q2s ûÛNÆc óÄ Ð(Ùÿ@¨yÂÀXœMŒÅ Ð(€®’€¤dAÒ²@ @”ùˆö”¨ƒ½P€(@‚aÈxÔÐ~žg,®Îß~ˆ$##-ü; âóD@À(€ësÇU„€‘34Ãúý#¿¼ ë!+&æãã# vLj¢=„>¬ À†yzà€_”†`wØj¢d<sæ/‡Žõ{Â8¡0¸/æ ÀU˜éèŒ<`¨¿Àú„ý+ÝŸè_‰¨ßÁ`íîFù!PÎ8 iê‹b}±Â0 ú Fbиx°7;á¿·hª˜À8†øa ž,Fƒ@þâ(ö+ î˜5PP5´»; …ÅýÚŸ:ÂÁ»ŸØŸæº¡Ð>¨€¿Wp ÿEêå!fBÜó‚é¨ÿÁàLdÿ¶9ðI Œ””$»€ùB\Ä~0÷ó€ývþ6ã8x =p XÃ}`ÀÞ0ÖÓ ðŸŽ®È@ Áœ`ÎÙ¿³ãÌ0ø_k\ÿ=¾[ N~ ð×ë_Ov8…AÑ(¤ß¿á¿[,¦e¦g¨£)ô‡ò¿œªªh_@€ˆ¸ @DF @RiiI@Ð?óüëþfÿÛj FüÙÝdÔAÁÑ™¿HàNïo"Þ”Áÿglÿ¬`ˆÆéàÿ·üï%Üèÿ<¿CþÚÿ•å•ÿïHÓ ‰üíçÿ ðÿøÁî¤ßNÏ^XÜl q‚úo¨ì¯6€A^îÿíÕÁ‚q3¢‚rÆé\tKxë/;£‰ð…AXˆË_Zú»¸H fŒÆ ~Ý;¸( ð¿|¸Ñƒ¸áî ®e¿]0Üdý³® ‚†þAqI)ØÓìG†Sn% áf óý-q€˜( Å…pƒp´'ٯƂ€â1'O0†„Á±¿|Ì̵ñ—ýu!^žž¸Ñü-ܦþ^ÿ¾`0_„ln ‘‹p}Ñ~V«Ââ#²6B¼¸Ô›lÓ#‰å}÷(ÀEŸ$Gkòžª#ôéá‡Æ³•Q3,‚_ÎF}ï¾Ê ]ÈÔ.Äâiô­¨î‹ ~;zå c‡¢™Ç¤Æ®Ð쥘°Q9ÚÚò¥YÍ\DJwK¬?û\rÙ‰Y¿#³ p”Psf²`T :·ñØpr/a‡lîR'ÒzÚfy™ëXŒ]â?@$žª¶Ç3}ó[±MÌúøñu^ßC‰Ãb½ž©§QtL×ýu9 †S˜èSòt_`ðxU%OÔ*3’¹˜JÝ£x¥¾O÷·¥ Hx5:ª…^3ºÿ¦É«-9£PнpÈê°škþMŒâFsj¬‹píCnUž(ÞÉPÖ^²°‡@\ß9ÿÓ` ]^qj£ÿ¾)žä~¸„ýçñgŽ 9) q» äíOU¥Œ‘ìÃp«÷ò:f:cCN×%¯á›Â¢_÷!ª­9ÒPÇͯۇº£÷ÑÜ_Øè'C“­;r¶{·R^èHž¼¥±ÔÂÖé½Cw9$$M›·ujÉÝQ–™çJ²” *2§yg®¿Ž—exÕF6R%dŠš’ÎíK%Û³÷O¤Þ …?£5,0~vÛ-H)MzÀö='ñÎéù‹ÑÙ©»è¶0ûwÜ/xã׎íhn#3’V_`Zx#"^‰%//Û äpš¯õ†€)Žð—ž|™¯_bí0ã*’KÚȸð²Ç3‹%S‘<Ì–RU ™/öFÍg›¯>ÍNªk犜8­¤³#  ˆ™èT.œÊzÀšƒ ¼rY z çW¦>MTQV†áí¹ð`¾UmîðZÞ-–0„­®=±|¿::ޮ̱;ÞPš&Çß=tÂ!Ó²\¨¥R~Åxw;”›n¾©—I6Øïršxœ^}•ÌrÚâ)uÚþJ®´þNæFWÿª÷,»Œ¹M"C£vªŸ‡³úà»@š+Ó.(o\vß4ÂîÉÇ\'-5%.ž°@ØÇRκÌ©„áRSã îÏ/Zdv¼ìHÔ¸9»Q å{Ò³ÖÅ"ÒÒDþZOŒ¥Às=×Å?û‘Ü}8²æÎso±>åí±—Çs á£Æ1ôõ9ü'q¹úÚ¥o[õ>5d}%¹W ônbã—Ñ7ÒVZ˜{…ŒÎÁàMü¥£ˆr= Ö’ø’…ï8o¬nü¤kV1XBUúXgMOHÇnÙ{êfhÕhórWsV~C5¨>sÓ­~¾‡dÑt—ÿýô˜½ø,5_åârÇ=¢ /~”j莞z½Sy‹Éd­•þiD‘_>]`ZÒ{oÚ=¡ûÉ%…ì½éÄ·ÏçR ú·ß‰==acØÆÎF\hÃr¢æŒÕ6½ ¿¬siI‘—íP|!),°k©0&¿ŒO \¯å_m±œ>XŒÓªx‚”Óƒ³X]÷_ð,tØUø®ÅÀWuk8ÊÚPÆßu£'£.jÉ_ìC}Óœÿ¤~ψÀ–Xõ+ìý·D¨¾-5v=šâ˜ï˜7© ,E?!©½Ä4Û¬²šÞòª‹ì¬Õ¾,²Å3õÅŒ³EÇ 6<‚Á*“Êàex>nï£o°Ÿiƒ¤I+’\ ã={aÜ@¶Ù¡ Õ=–Jˆ.ZÚXÿ£õÛý}]¥ŠÐŸ®~æ9 ¡=–îŸ.1Ý+ã¬6Ä”r”²7û²5犌?QÛšyŒÚB°X/ö~kJ_VQ9šMp÷¡L|¿çش΃"´kÅ®Þ ¯kQ«èUaâ‘3!'PíÌóò\¤ºþžÉ‰ÐÓ&cú¸ý°ƒO~ܦc‘&²;£Œ/”Ô¼ù}P‚NÌ °S«RäþA yÕß™s&Î<òAöt”a¢3q1ù£ÝÛuäú–±÷_ÿ¼8s§¸ŽRØñ\ßå*sLn«txfòÁ̼êñò¤/‘}ˆ„“Š/é'jžDÀ:9òLàà3k±yÑ.^Ù ¤WXìV]ý&Îõcpu1) èÏX¥õŒm‰ã^실mp¥•É&ÄÔ Ýç-³Ö%ÌÅÝX?`oçcQ©›±}¶i7KØÂÕoj¼ Kõð¨Ñ¬®øZ·å½çi4EI£®•ÐLÀeÂkXv¬e¿v®+´çÈ Ž,è³ÁñGè{dRyÁ©®rBlômÀè«ãïUR{jõ·B­õºñç-›øüçî½Qa{/põådìZý´y{:MOvò¼þè"¥îöÞᦽ:¢âÒ¶l_#Ÿÿ¡Y¼›óàú‚Eôy`.^æMâo’–Û𠋸­{Æ¡A§“ ?ãsp¿gº%{ˆ7092åì‰A«ki‚dlBÎ*!µ¯]«Å%iÔäs¿N“§îeÖ4>œe¥ÝÓ¬`algbMó–ZãðE¹X}`ä.ÌL]”Æ!`«3î‡_t£Ñ ʵuË™¡?ö·T&ƒ%Ê—Mè7»TÙ-ïsïËh·2$»*=°SToäøÕ8PIJœ–j~qžêª¿•¯š½±š»£RQM»ÔqïùØþ0ÇâË…‰[$qìÑ%Éã_@ÏŒá7Þ^}r$Ľ±¦·[ù•çæäøS@š;”{ yuÜ||¬hÍùÚ=v0¤<Šd ´úÉ5i©¦½q–û­ãt ‘¼ßYž¡8d«´¢£O´¬kØPÚƒNÝ즢c-ÀhpFÜdVüù§M檑9,˜8;iš·BÐ>‘m …Gµ|ã‚÷Å` üâh_ÉÃÓNö æÝZÚŸ[sUBéʧ!MòE÷ýøÜw0òÙ›¡2œøå&íï¿®ò•æj5ì-e)Râ÷UŒ¼tµk EIX+êù+Í©ï†(žE^épBQ°%Üct²áWäš»-¸ñ spÄ­ÂOâ ½w†÷r«½ÒM‘¤î³ÜrfWBÞÁ’L¿ } ‘J?TÚóÀ'tŽi)›F”›ÞriÝ…›wâïÆíæÆmwk»†žpo.:¯¡nS#´ÊT>>ú.‘òЃiRó(Íäsv,¡ÓR½˜ÇѕƣG¬æi÷:5'n:ü˜V¡IíBmÓ™¼%ùYì®—Àë/'?ÝU@ê~¸b‹~3ÆÐ°÷ø€OáòžuˆùÔ!Vže:ÞíPŒT©RÜI `x ~ÜR³›±´\|æw“¥Æ‘ç}@ u9g» {ž³èÛr _W­z2íù`OcqÏ;ñÞÙH5Áä1÷9÷s…ëÌŸÂÞå)mA•% ÔvUÌ™”[Ó¬Óx<‚AÚ¬=ÌÙ›¥rjÐÇKYDƒžLµ ë®—…š4ÌÔ]1H 6cW‹ïtYínf«‡áSây94ÅuÓü-ç¹¥× ZÉë#(îõ{ó6Õ ª-®Iâ5éßÁÔû˜{¤0`Ú[ÇjÏŒ ‰ä?­,²xð°Nó«Å™1W›ÞhT”Puû¤M'LšN XÍŸqBŠ€²°äè7È9»‘ȼ¢å·ÑIŽG:>ûúEÎqš~ý³Ê8©¶lóGK6ÚlN ´Æå6í€fŸðS{›‰&Ja²GÜšo3µÕç-™•<Iü&¶\7^àÑTh ëèW&>™;)ÒÒ›5v©¿oØ`ÛL¨3ä°¢FºoÎà¿0 ¿º~U~*3=þ"ôŠã-Ü·²hF—¯ýré#·céUbª0’÷Áw+Bh– ÅÝàÅà#´—®´D~0õVá÷ÒV×q°Þ¼U@žÁÔ‚„Ò»¤„JƒC»o²VLr×i¼9’#©³ˆ¬—åˆ"T9R¯Æ–[Ó%‰/éÈ)rš—ÄD¯½À0ìœXØ­> OU˜°Žûqí2U²áe\ˆgˆVÑO¡&Jp%ÔI ó¾=E¶Eų®É×tÖW–qqtåîñélá «~(þvx‘q¯4K…â¥å/§ç|ëýÑD»Ü /®Íz¹óf™ÝÞÃû_Õî×+u醷‰¥jrIYˆÖ׉ñ…>è™LE™¸†¦ª'¶C0› »á¾h]»¥wUœo|.¤Œ>Š=(ÁnKÒì[.WÖ =¡)}ñäéË 6é¸z LXγ™Ê~¿õµ¡Þ4óÂx5É -Oçe â^jÉ7ÜIÑãyk“»âHïg|ÔªZ½]ðp‹¢¨†ØÀ{m‘ß•[¾² 8+FìæÚÚõ™à¿±ºi4›ÂãN)ÿ8ñéþUSÛNÆñ,´¡¼ëÍϤ?øÂÖ{ÛAOéf)_ÊqPíGÞ5·ÌðËÎÂ’ê”N"£Vèîdßb׋qŽ&¬ìÛ(é®\§¢SŽÏ3’˜æŸpñôë:šè}*~½r襕—KtÄrÙ{[Fôr¦¼m݉Ù["¬Ñ%¤D>(YË”9¶n1VG9_ÕÑ\—UêÆ¦Ï&›YBú)]ÅÕÜmK?UI+†ºY»•Wvà[×ð…?ÿÂVÆGEß-oQþüáüm}4ÔuóŽR‚:Z‘<û& óAæ–Ï:J/#¤!]·o¸JLš ¿ÐgwïÞ’/Ít­ÿ€º í]"})”Ù›é ~±MæÉ´Ýñf6g¶F¯q¾´¦úÆX¯«1•ÌòáS®ÜWÎiªqùñ£}sÆ_åTíM’Œ*Ó$¾u ª^“¨÷Bµp¿XÔé§ÜúYè`D ûáø–Œ#‹ûå¢cXˆ ½‰XoéšA=,¤@iöÕÀàÖdmãvê—U»¸2§ý®«—›m[Õ[âòg#™ýB„Ô;XÖîªZÛ±¼º&Ý¢•FÊ%<):a ›زÆYoâð¨é»Ì-bN+=‡–šôC@ÉŸ£Bn:kâV2ŠðÌ Êêñ³Þ¦c ltSõÏÖ"ת¨²ž@®ò†ÏÇ_’gÈ mé§ôã\ ñmhéëfÑ’Ònô‹?Ònò“h§ÞÅ~â;xŒ©Áøî–jÈkêѬ¬FÏ캔_k¹#5~#Ï]xaÂÅLÄêm%Á¨î ¾µ§C «| ×òëÁÈ*ÙXî3#ÉEãÕŸ‡ñX `§Þ‚Dìø0—ýÚÄ7ç{?d€up~~9.…CpÈ;Ñ\7-Ìî´ÚðvèJÜU£oÛŽ´C¤å©YÍ‹:RŒj™z—jb>µùî×Iª? ™½å~fò}BMÿ¸ø(¥™Á7Ëçê§Î2¶HÍæ…\"^Šû\«iŠ#QMrŽ„T}äÞßyÎ8ÞטÛîBfˆíöÂ`øq\Z-˜]«‰#üâö±Þ¾Ó²^P“¯;~ן›C¹Òª; ­¿2в›EÖø~â“ò9\‘²~®FÝ¥®ÇnDÂô*žËï¬ìc/³Ìî¶Ý ¾¿Òü¶ÉnO¥"áýäêÀ²Q®÷d k“øor2ÿó5óæ…óaàÜÇëN7Or¯Øæúû¥NsÂ@OæÝ¦%BMUvùû"•’ˆü¬»öcVÏSjÖý”?÷ýl±X:'ýý—B¶Ü$ s_ÞOÕIºÉÉë›ÔºO¤\ýv/ƒTZD8ßᵺu¯{ÿ3WVð)Ÿ×—¡@zNÅy‰ïÀ†ÆžöÇöÓÏÒoLg‹¼0Jj©5š9§6­èn ò}½±MÊcÒGzì£ê<ž²Ü~ivÙVËõ® ™ë´â/×R—¥ã7}WãÑ«á­XÏ 7òÊÄÊÝ0Þ—$2²=C±X³ÓϽå\/ Ï_âJ¸ûi-Õv<žÅßžüÛödÛÆ‡J¼,üi{6tÕnçû\M§Vcæ”—Û^]Ë~'> }…^†¥4xÖÍÖCî¸iõÀâÍp¯ôÈvkuóåû?¸h[·V#ïåk^ üÁºË–f帣`Êðô®£‡fTM …<³Õ ³y~ä«Të=WukJFе‰Ç¾2†A2DºD ÷šŒ«<±gùÇ"”ºý}‹¾Rçì®—è9hEP˼TÓîIx&¬FÂX÷€uÐßÿfù€M™´Õ¬ÇF”)ú› P]ÕÖJÐå‚ê µ—2ÓýÙÂdŠ<¯z§éÍÝ¥¯ºš.ãND»'Ñ”¤oáwˆ …ß"DÁ$öÛÌ;Aý’<‹?Ê;;Ÿƒö V "•Y‹ÃcÚûŠÓ6“7îÔÜ¢¢v9z?L)àœl9¾ûóùÿ¡ô3 endstream endobj 214 0 obj << /Length1 2773 /Length2 19418 /Length3 0 /Length 20989 /Filter /FlateDecode >> stream xÚŒ÷PÚÒ ã.Áwww×Áww î\ƒ»{pwOp N‚k7çÜsOr¿ÿ¯z¯¨‚Yݽ»{µì=P’ª¨1Šš9˜¥ì]Y™XøâŠêê¬,v&6JJu+W[àå”@g+{¾?,ÄÆ® ™„±+ÈPÑÁ çf `e°rñ±ró±°ØXXxÿkèàÌ0v·2(2äì.”âŽ^ÎV–® 8ÿý 1¥°òòr3ü} jt¶25¶(»Zí@Mmj¦V@W¯ÿqA#`éêêÈÇÌìááÁdlçÂäàl!DËð°rµ¨]€Îî@3À_”JÆvÀ¨1!PÔ-­\þ£Ps0wõ0v@[+S ½ 舛½ÐŠP“U(;íÿc¬ðÀ?Ű2±þëîŸÓ9²²ÿû°±©©ƒ£±½—•½ÀÜÊP–R`rõteÛ›ýehlëâ:oìnlekl2ø;uc€”è{€1ˆá?ü\L­]]˜\¬lÿâÈü—P™%íÍÄìì€ö®.å'aå 4ÕÝ‹ùŸæÚØ;xØûü™[Ù›™ÿEÃÌÍ‘ùƒ½•“PVâá·Ìè àdaaáag@OSK濨{9ÿV²þ%qðóqtp˜ƒhý¬Ì ?>.Æî@€«³ÐÏçOÅÿ"VV€™•©+ÀhaeðÛ;H 4ÿõßÙÊ Ë?VË_?ÿ~ÒM˜™ƒ½­×oó¿[̬#¯-ûAŠþÊÿ*ÅÄ<>ŒF6vv';7€‹— à÷¿^þåÿ_îKUŒ­þÉí²öæÞÿPÕî¿4Üÿ™ š–†ð¿”@Ó Ðü~=NSÐ/ÖÿÏ+ð÷‘ÿ“ÿ——ÿ×áÿ¿I¹ÙÚþ­§ùÁÿÞØÎÊÖë Ð4»¹‚6CÑ´öÿ×TøŸuVšY¹Ùý_­¬«1hCDí-lÿ-¤•‹”•'ÐLÅÊÕÔòï‰ùo@Þm­ì*.VÝ7FV–ÿ£­œ© èNq5ëo´QÿQÒÞÔÁì¯Õcãä;;{!°€æ‹“àà ÚQ3 çߣ `f²wp€ØùÌœþj)'€Yô/Ñ€Yì7â0‹ÿF<f‰ßˆÀ,ù/âf0KýF¬fé߈ À,ó±˜e#³ÜoÊEþ7å¢ðrQü@¹(ýF \”ÿE< \T~#PtÕß]í7EWÿ@Ñ?üF è¿(ºæoŠ®õ¢kÿ‹xA–Æÿ"V6cS+P‡mÍ€ÿÊ9Øþƒ†ÌÊÅæ÷Q[“ßdbbljãbkìbù‡CŽ¿ÄÎ@”LœM¶@s×?Äœÿˆÿ³€ÿzeýØèú?ö¼ìÿÊÿÏ;Ó'(ES[аþË„ã/‰ÝœASÌlö…üÍ4¤ÌÀÿ‰Àõ—ÞÉ ´úÿ•€î.fÐÈÚÛýáTóß^@æVî¸ýKíàöG]X@&¿ƒ€ô½×À?M@¹ÿ.-¨b–^Ž–@û?,@2«? (yë? ¨×6@Pq~“àUÁö¯Íý­•òF ‹›ùw(N/{ÐÆÿ.(´½›É_w­Å)žf‡ßIƒ|:üqŠ•DÔñ·ÃôîÛÿO³9Xÿ‘þo«9@ìAóâðGó@_{˜~ç*˜“›ƒ+ÐÌä7Ñ¿MþºXý}íý> ²þ£Ú¬ B¿«Á JÜhgõ¿ÓÄù— Ðýp‚œ¸€ÞÇ“Õéÿ¬+(ïß,@o ³«¥3ðÙÁÕÃá n¿'óï¯B.¦Î¦j§û”°ÇûrêùEõú‚ºàý;g'o ó2øŸÛÛÔÍÔ׿XÐÕþ_ü÷·( Ðhа²ì`ÊbÝÒõP'JàÁ¸?-¸@¹¯™NËè³âüÅí 6•¶6;xËùN4u¬ÿÝúž$Í­È*É‹Ïi{lxGòûÎ_¾Ï†‰ªsûßf±‡gŠNE‡ˆà ÕE|_œ|5‚l ÛÁ{ä(óÜxPT 1<¥=‡*Ö&Ö÷ßÔrÉ#>WÌ3Æ~ˆÑ *]¤,0ÉYÂ%ƒqe$‚£C¿ðD]¼½[@Ï›y#‘K¤Gð;‹e/öÑÙf‹{\òÞ¨RgséÅ£ÀÓÁ%‚¼EŸœ£ò;ú$‡óÕ§¬$fKðk. -ØÖä‰ïDé>]Yt[ç^éI ¿ÎFæ ­$øì}5#GºÇS”¯¸ôæRÒ…Êm%ƒ£áð÷ÎôfŠîñ°J^>;+P·Ú§·ò§?ft½ÇuÍwáv±Ö[Å6$^Âü0aoxz}‹¬³Ê)ê}¬gÎ<<Õ¾ WJþtCA€-JÍ@}‡Q”ÙÂM9–x[Á¡_ËÛi¯×G«;†·*õaÉéòà•ãGÁ¤N:ü/oÂf/Û”™YNôVkÓÄ:XU(Q ÉÜyEËcòõ|ä"rkf5"sRgàSŠá‡÷}†¿ÌÐÈ-èžN[„N£ urÂÚZÓ4 £”n1£d8µ™W÷t†‹ŽŠ ‡’Á± $§Šu'¦©òceû9Ž–îïc¾Ã|Bŵt´1oPҭΦÄ{¿ª•ê¶PÍ/oÔœJP[P në}C¯*¼­ØÕ$H^ѯ#÷OŸÔYèÓùæ5î9ZÓ^?¤I%¡›¸p –E…޼߱ÄOÆKتâ÷è׸Õ30g|»lÍdø2›¿:!CÒ¼akpò0ì?¶ Øº@çi×¶„} ]“†9)t¶ŽÌä¼Q•àhîÃ"ÑëË%Ry˜wœÃ¯Â\Ûmé;3ËôPª* µ9V'¿i—m{g°N¥¹ˆ½1âCÜZxñb'5ˆ¿q^I”Ó”ÖC°º”1Æž %ï/‹VÌ-‚­Î-º®øKY%Љ?n#!FfœÞ*L«>—߯!é!óÀzH[ëVò«[%I×gΑNǵ1Ù®’‚(5ösy>·ãû/±,¦à2‹KnºgÈÚ_>eæîç°uéºÎÎZýÓ”-ly“Õf’½óJ·BAˆ`6\lEP E ÍŠä zGœYNWîûaî|¸ü4Ææ±C¢¹ÈõáÝ¢YZi¾`UV6çÔuW=AKÑOkî>ÊS+‘·4ì]ŒQ4Z<𹈠uf°Y§üë³RÇõ÷ í¬)®’3Áó­…"Ès…8¬xŸ¤ T…?1æ¤æ\õ—8a‡Àd“þŠ cµð¸?dë-à`.ÉÏkcï©ÜÕ«ãö^3ö>™c%<¦leÚθ¸Š–ô ֦?áŒ2 ´·îfÛý²³lŠy”àÁŠûü0yÄh’'«žÕçÕÖÀ7ùÙ|¹ |ý$:yÿä²äW™¹ÅecÁ/«KebjŸòø¥† ÊWµ5`5ÄÛåÄÁn#ÛÌtïñ½Tu ØR™ÃBlGâ ¨}i?uJò`OWÞ¨SªÃPÀ•}æ¤Ò#Œw²4Gƒ~=Ìðsnd©Ø‰.ŽÒçk|÷Þÿœ”eŠMŽkÄn Ž‚§âŽ@…_W·×wR•¨¯ªšU!^,ePËùÂK~#úc‡^xDì”âp}„öD$©¯”F“ú€2ìUlHº Ñ9iR½ ,u [Û* 5DŒÁ&²ìê]Àt¥$Y–ÛeçŠööS¹Ñ¹Úœ1XMjõ5Œ]Æ¢<5ªüî2µPZ¶ä¶ŠŸâ‘O”»4›*Š—^Þ¶0ãÅ’¶V,uàÚÑm€6““eúô½6AÞÕ/Û`ãŠ2É¥šŽS¥FÕÕ7»™Š¼õ0ß 1å,æMS~‚VG 4¢:#ô ¡Á•âc?³š’ç-ìñ”bÄpß•|^äð4ä$ŽØÏ_éxŽÊd¸É-5Ûµå¤6™0Ùpbø$sÇPN®;âÚWR²¿×”¾‚†ur›"n©_VLè¾é³øu¼hÆ ÁëðßnðË'ôŽnÔñ ¦ãÃD3ëÏ?Ô@y°3šOç>¢ø³.Š{DFÂ4¤Üæ ?¼w¾èWÙè`èeó«¥4¿VY{ÜóÁµž¿‰Z'j@]´á<¦ÊÒ.8³"^ñ¸›ðÅ)ÃÍ s¯VzïIAÕoÆI}Ü•ƒU&í­|õ.ø,ÉDËóY4ÛÕˆ>mÚádå$®¦9ð£7¦Ñ©ïk@µ1]Í”ÙáÄ(XZ&WYBK§Ä¯¯Ät,ùN?;êk…C”°F>À±“ŒÆos£ò*»¶è²ûÆ^p:³@^·;{ýõv+U3ÐIBaèKWœÏú£ÌäQ3߯!ÈÒroÞÌ­ÙG2ÔÝ:!‘+`ß§‹xb‹¶ãâ‡uÞMFÄÁ poùÔ*8n¢ ÜkÐRb ïÙŒ¯³ 9ËPw(z·÷ãjÕys­óétÆéû óÆ+Y‘·¼(]³ã–ÈÁ»*´mä€çÔ=Å\´ãŒâ¹û)^-Ô7Ûœ—äk•p¯Ö%“Û¨˜§¹´‰ä3“‡&ÿ¯Ð †^xœb1ùfX^s8 ‹gpÛcßJª.‚Ày\ÅQcºÏ‹w‘D=îäë-BgÜÎL¦Z`+Á¨[!0ÃíÛ”Pg3¦Yc2K47‡+_aËVÞ4Ö‘ÊÓ•Ü`èyßVQ9¸Ñ¢½¤Qiæú_·¶Ë‚û{£Èª½ÇwQ”û S|«Lu^ ½ÅŠ>Š´êŠ’lt?n‹z~Ú'0N8"›ÆJƒÕî =ÿ™½Œy¬^b!Öd …±ËûáEêD®V˜ ]×Q¿qzÜqÚ2æ[_þtoRÙeØžÀ™¥dï‚ÃÍn…0áÆÀ'ˆdœg>bùhþšÛ§Í7ÊI­”[(Šoá|8&c¼Ž{MRf™bÓÄËrª4à\ºŒêt?8H³cç¼´ÁŒ¨›_h «ájŒ+bTªˆ’›'ª“™ÆA ïÓ^µJ©’T»%GNõËØOÂÁ¸ .…-iy¨&±˜ÅŒß™¼û”LŠÓÁÑ|áú®UQ`(R‹Üû ëV«ß¯ M-Vë}«]n®ÃŠnŽz x]S#à°\aŸÁ}º@Ýíý‘C;߯•à¥Q³dÓDÍžÚøÄ SrOmë&-¢Ù/ìèä×ã²0Sü*ú8è_Æš/Û±UÁ{^SŸR;d!RÈF…³r’ƒîöLÄòf¦GŸ¿òø®¯IÏännœëñwÈ !ØïÀ˜²ElÕz’hMÃ`æ³’ ómcí µÚ‡íJN<°-LÙ>wŸj¥ÖÔõÎÌN…úÆ·,iÓž$Î ­ŸBáBÏ”C¸Üo½ÝŠDL>ÂGÁ[y6™o9¯¡S9÷"£ÈžÀ Çãů¶ ¡Á!³ª¨™A߀áîkSü 5¢-꯾ÄýÊ…ý³'MñA]VJ¶FÝÆó"ËÚÂ$W&Ù Ž‰†¡o÷¼2›)f"²ÈÑ©§âF; JÈàØÛ“aÕÇ iÊTß9k—Ë¡¦5¬¹ý¶`t³ÊU&Y}]üeæ+ U™Öi7HŸç‘Ó«­U,ÂAÁ9ÐGм·¥Š‚ õ0äGwû‘ò‘.ý©âÉÕÌ¥;K\ÉÛ´¥3³ôW0§´ÿTÀ·þ¶\ à„-šhѬ’ÜgŸq¤}[dÈÞ¶* ×6Új§~ÓצuºQL,¢kÍñï èõ^ïØô úp >+–¦ý9Œ OB¿cbËÎ-'lšë—Ÿò1ž$“ºI³ÚR»&š!{”FaÓO¼|˜&Õc²x"ì¢†Ùæ“‹är‡0¹´8Í>ª¬v_MšÇ“Yø1‘ƒðin3åÏã!NšÑaƉWxµëÕ8¹|.8”°îÄtdŠ“0Äé^Ç_w­y•dõ Ó‡9c-—6Põ’£¿+›,bõ1ÔZ(ÛSó`=VT×âàK.†Q󽆲bÂ÷²Ç¨ñ®u†¶‡„e UwÜdÓ&êó"ŸÈÞ¤x8N[ga%/Yj±Þ7òSß–ÍB7”8¡ ÌМ_<õqJ÷"†yÞ&O ›¥ÑÛVª“ù[qÕº;k(¯a†Á'˜Ã|:Ì ®°ü¸eÁœáÙYP§4÷cxá›ð•…øOÌ÷A•˜äŽ~Ú²°òºÁC Ý ÷¢éçª*“$°*6V÷šêàûÉE ÈÛ§F®ÓÊI*Ù¶“ñwê>tz,êˆSÄ”£b«ûùJùH ÂÐ,)iŽxo?^.šR´šê‘W7%RŒ•`ö…ŒƒÐ»8¾&/‰à=šuW¤õ¥º×rb6Bœtds±%ÌUé[MU¬ Þ\*×´yˆ^3gíì¢3×ø%«kNõ³e|«Õ’ûëêÃ[ä·£=°=¥DM¥û‡u½Ã¨¶‡(· {€Ñû²«5.ìǨƒ `ÑϾRvð@81mu‹wéP0«0õ~ØêêÆéÓÁy•3æXY‹y%‹¯Z%†ô®)¬l´¢Ë(>[eç{¦¿Öå'V–y«Ð½Ÿ(OSûªºoFGrh«ôç[¼ †õXx9&„Ç7áRH\B–-\öbûAH棭€÷—7næ7»…—Ô²ðJP…»ÂcNÖ—´ãq§™ ô¹-¢è#sD³Î…»å\T2³)â¼ËvÎоÜÎ è×Ò”|áWrί-›4•ÒýƒMþµž*Ç0ò»›‹x8}ÛÚOÚ¡Édm)˜Âæ­ÜÄi«™[~híIZߎ"ÙŸ³©wéÕC¾Ü·þyž¼RÝIË0ãÉ€TL7„Éóô«=8K0^%W4<¢¤PÞàN7+Ó—©ïr¦:¾-}˜Ð⣺sÄVQ_çÉîÁ~5lwóã³ûŠ&zKíhsÜiÂ~S#”O—Û)Í=¦õäÌ.5ÑíAS¸âÇÊSõßj‘¬æü,L–«¹ïÈ¿T#Ëõ3"E ‚ZÏ,êHþñÆÅ-Ïç½(­¾Ü‰+¬Öv–»[Œ*:;„z–g¢‰/±ÿéS’À1Û¯^n<Q¿Ð ¼ üb­Ee®Ã_Ìï¨!ŒøHf/¿@4õ4%–w€c]òXÄÈ‚SÜJ3¤¾M*yùIŸ”d㌠Ӛ&­Co^Ê|ãÞ‘G$åÿg >Æ´ŽápK<ƒÝ¼äᎠߢ&<Å¢#PAÔu¥hë ±³|ž‚, af ”G6ðÙn ¤‡'EéÞ°“nwõ²`á*m"#f=.ù¡W œ®’mARsA“UoYZt¿B_5À«vÚ¸ÛRøV[ÝŸ±89^|Axï 6çì°'óô>¢1ÃÝûò0kèã0bå’#Þ¨ldXnrŸÞ!\©A]kìyEŒÔO·3… ?RÞé­¸/.~SY“rË2OæœIà’5­&^s!Ø?ï5ŽôKwñ×¢)c +E§Bʦ"š,£Ð+öRŠìO0Öp3òlt9ÞŸT²ñ¡äõ€™!‹¸­SºN14pú²j¬u)M{³0E¿Um· ÈÖàj÷ÌCSaC EN‡A‡ Ìï„eyçÍóà ýq¶~H÷ ->k>Š`È{—_•¾ga3¦!ɃÑ* ™ž÷ÍÈ8B‰ÙȦõpz÷˜Í ²ìÉuž†YwPdÏ—_¼d Lߨ™koIë9D³¢K<: Lû.òýY¤¶QÙ¡‘œ¡Xí6±eé¢Óå1)ÿÓÕÌAÝ`‚â}ÕÈùa–IOJ‰¢<^š±‰ƒ|–ìý܇‡6% ¢+ö¤¾¥XßDÕn'"a´‹Jê§rÔpµ§eÙe ½AØ5}«eu‹ÑèX]Ã-fÃ3ë0šϯ)œEµeÔJ<¨Š”°ô’|î1Qãd!m çå;ÉÆ%žØü3ÚHqFvH÷õÓÃÀØ«óór2—m+'!†A|ûq¢²,öƒþàì$Mq½Åð7‡_%X]AŠ3ÕÇÖ·¼æ×õª'èÚSë ö’`s6¥¤f>vqñ~åwãîdØ£¢Â¼‚=‹áÆI ¸£>˜OOŠQ-wT~ ön9%¸Åkyº“ÛôL…†¡&'e®w• ¬'L-~cË# }¦sϵ>ß+²ÜÏî×Û¶°'½—ož§À.?Î~Þãt†ÙÄm"Ë6 vmÉO§ð:ž­X.Ð8èk~Âí_ž_ú¼±Ç™‹v@¢R$–ÔªIG¤#>6œ¥œ{¢ÊÒx¸dÓ<½ÜÛ³¯RÏ9zÏèÇ ·8Œ½ÂØ—E‡Ó&+^ïÃ:Ú&•¾¥3Ôø¶ÏY9‘Fß>k³+¾×jsËMâE龄˜ÚC¡|Ÿ½Áš,õLÓ½ÑKqÚÄÜ=«½è‘Ša)L¶&ì㻹–.iÝ`óЃXTÉå*½žmMT²è¸™o§EñV‚4¨iùGÞ|Áº~€LŠ“'¡e¨9ý¦‚CY[÷/•›•g³˜]bÈ`W´ï9ïüs–`¦Å¼ŸjµÔxÎÐ}rQ–r´«ä8l°\Ú/¨)œé³\3_¸iCh·ì¨¢4'ß/"ï)p'ÓV7Zܶ…}½NœJl!cŠèíz3D¼“Ìz¡ÛE@­ÃQ¿ æã&¬½µÆ·ËJ‡Dª m¦.êÁdo÷Ä$Ðuüü^ õ32ïÔ>aà åcŒ/Ï MÑg€W2y¨sŽb’gnClÏU`U“ü´QÓe ž=ɯÿ]пþŒ’èËœ'i Òó” Ê×ùŒÁ‘‡:þBäÀ³ˆÓ‰F†o=ï—÷bš4ª¢+À'ò *%0‰kPp\cQØÎ '#Åâ²êÚä$ >#óšÀ#Ž}bˆò(w¯®Øf™zÖÐÛ7n^áÈSÇb ’¦/»~“ú®y3Ű’¹¯PîïoÚu%>7º·@,÷¡zÕ…žzµ²¼¾ÿl(Ù&¼[wD‘\–g«ä*‰¶L€´ooEQOËhá}¦ ¦PÓµSý‡œèSŠEçmqe¡¡º/»1®ŠË/BPO²×QÕ“TÅ·Í)Üj;½wK”–ÕÊ9U"â›H2ix<•ÉkuÑ`¥£"ׯ‹bP»ªò8_Hrý k,•°x÷eÓJ‹‡"]nÕØCTíû§{1-Ò.vY%¿ø›yµ0™ú¯‘öË>mýÚ³ÝÕPB“ŸLE‰ak$s¤Ÿo3K ãäzØÖ}Þö]nü( Õ)=¢0A“¼ùt”~×@4©—H–‡ÈzéÜBKâUL9C(¶ôÕi3ù:\a× ¹‘ZªW.¸cl¾ùBýEIå:ßT,,™6ˆ7¼4k3 ’U}ZÌ5ï;íêóâUìõÏ‚b˜¡Rj½[t•ÅŽX„h&¤ó蛟xÖ º6òFHÚûèIÍÉh9-€ê8ûÎ×  ±°V¨à©Öͼl(vˆsëmúËí°Î§Æ`@O6Õñ°±YÂøc¿ó0q¿„I?Ÿúù£<Û­jËÙ-—åô=ÆÑšumSë2m@1ŒŸ8*Zž)Ç™Žgx^ËqÍ5f*n³¬ ?''“|dÄ¥‘Þ©+ÄڞܕwsÖÓzÂH¢Ô#±$†|·ímê¦â 1ÇË4ÚÃ&¡T±n ÉðË7$#󎢑ýŽwrô aµ~Š31}›rù+"ïwFÓcTáŸáŠ;D0èýM'3±#趪!Š~…抢3;„§5t ã›vo4”“ÌnŽRÒÆ<ðL°yö€ö)½¼úa@»^‹yµÊÐìæ'J›Ù)V½3cF¾I+[œ€4j®È<ㆳ¬îד!Ó~Ö°ÞAÍ2Vœ¤'fŪ.Î^Ñé çÒý }{µ‰anÏ>VC£Í4 Ã"'WS$7W´Ã¸Ã#“£âõbÚ×ÓÔ€ _Œ‘òªÊ.~ ®¢#¨èÖ—œÆ4eI‚P褮 Geg‹T‹qŠó£Úø 2ÎÏ «Â÷ceÓW Ÿß1åñ¥D|G]…)K1æF/Ss‰WdYwŸ4Óžg0FbÔ‹ñÉžDŒÜõ¸eèq•Y|žjYðì­ ü‚Y'`G‹öÃy¥«q>&‡á™q3ÂS#®¢;š–ÛƒÂÔ}ù®"¿YüÌ÷õ¹ÎðDxÏRýõ¶QŽ|c!Ñ£OžGøúC’´ï꺽ht¯“ÙG­Ý>' ŒeŠh#,º¼ƒ±R?›¼Å”qÿfû1‚é›!⇵ί ñÆqdŸÏNÚØõ²Ý±Š•ª«E µiìU´ÁT©~í=sÒñ3 ±É†¿êÉÛ:%Áºcá’t+PÙQÉJ'­’ù.(àO0׺Dž½ÖWV‰ÕóñóhYKõ´]È.U¸ÿš2Ô Ã±$F0W$ Z±åa^K²ÌzÛ{)“y,Q Áóùê¸;£ÐÞ{û|âT«Ð?>6.½]¯B¤ŒW¨»¶'ÜÊ ʰÜú'†>=y3+°‹¾ŸŸ›7| o>»­9<*k®Ð®wÊ\HD¼é'S»o8¯Õy¾ì/}Kª›l®ñD «6Ÿ þkeZd²5¸eÿ³YÉ´XŽòòÄ7ásÿ0»‡ í%Âïû¨‚Øã‹yÞsÐ/26Â˰)×(-^7ß|‡CÖ…ðSò"‘ÏËu)o©Ã¡e…˜pw…‘ÍgÉ}ãS¬Çýw`ƒUa³½kÎt¥VѯkÓÞ‘O’:.ô$}ù|§†¤‚•úŠæYËp1±¡O¼xšØÄn¾ð‚·XÎQYõ{ȺǀÁØ[Y ‘Óú}¯ÏÇm¤zø„£#8ݰ|äêcÌ\ÓIêÿ‰`&\~ÿŒl4óHä¥ëEŸUž‡Ù¨~”„3]„=röœÝ< Æ6'JøÐ=Ì&ïh5wµ5nè75ÅÇ?×\´yÊ£ÓíÐI-2[&_5È4Rƒe7Ü”›«ùÂ÷·ÏºS¥Ã%¿6Ë:`(8?»Á‡~íÅúQKÊ6¬/4Yw#æV9Ï2ƒ¢ùôé\n¯Šdæ ¯Î¶ãhûA1š‘Sfè$5/ï³W¥Ó¸Suo¨£î¼­>i»w1„¾õbFKÂ׈•[t®6©^¡Ç/«)(²J¾Ñ]FÖ>ûYä;Š¢Ãý¹™¨ýp­´ðsé»=z/„î_\é»–Úw£sWšÆbô¶*òîøÔ¯Æ4“l±y³3ª„S·}øÐ¨æ›PaCЭZë æMî{ubø}Œ ¸ûzTkQ[0ƒªÝÒü_ÓÍÜiF[%TÆñÂ`öÅ¥åivÆii†ßW²-;‚Y9¶Ý|¾~C'x?\{¬Œû:tuì`Ÿxe­|IÒ=d'¶vé6Â{ä~_OÞ7ŠhÃ$tï˜ e8(ú–@*­Á\`Ê̸>+ñâ#9<øpmpƒd¼pí? `Êöp}©¢¡d/ȧ.ûUœŒ™’Ñ÷ Üb¬1š¯]ßân¡˜¥û‘ Zõ õ9µ)ôÅP¡ 29òjP^KúRŒµ-ªU×%Ö*k’(óÏŸ¢S :#8e(ùÓfò¶%—ÐÖ´5ìX½@–쎂Äý*¯X† íp|™mUFè]_Zú7<¢i$Ü:M!´f»˜ö"dü“•àUh³cEÁúX²¿ƒ.´?gëìªù׸¨•çNF(wùÈ S„Àä:œ Y+B^t£ÞTTÍiµœúcÌ8FNðh¯á¬õERíþM)ýã£+Ûú\Y.åŒ:ÑdkÄ3_Êçé7k'ü YÞ‰~ çÔ°å5삆žO‘ã€N 1ÙZ¼á?¶Ñ1×}/×d´¢övZ—C жGáX:e•62 Áñ¡…d²SW·r–]Õ+ø|w Éx™ÇÖ¨u-«—+ñ®ÓÀ8•¨öê³Ìu÷SCko½b{•I"D¾ùJ•!„*Š2‰Ã„IQŸÄÖ.:ä(D´7ªpW%ÿ^FDâaKè´¦} x/^ëTúc†¦8‡Ä)Aè¿OXz¤ü ÇÌm¡dh¥+»HÓk{Lä¿&utîIû ´UAÇ0½«èÉÜVⶈO˜Ý5D.g1‚¦òÔ–Ñ•"¡¡ÈêJ¥œ.\”LŸ¢ÐüÌÂ`lä%7ýÔþAR‘9)Xn›©Hy£ÕXáä½:5ž-Ó êöÐ?ŸŠˆðk戂kÞ<­¼÷ £ºÒ.pU’ÑÇL€AßìÓk̶Y(ºÑI£í¦›÷=K_-ãSÊúœdç×ÃÖï7Rðsõ±|Ìóö9xð0•jøgn”ޏ ‚ÊøCó‘ŠnÆÞ’‚8»ØÂK², ½ÒˆÞÄdwê¦XÆgí?îÄÏ!v ¼äí³0¯Z2±1è-±R±ùJÌy,ƒú£†º‰Êe0'£m%ߤ'c•ER¬ÕúÕ N¿œ©Ÿr+²j^”&,‰Ê<Ò,*sôbãU_ßPÒ„‹Ò¶Ñ­ìîL-ºL‘¢óÉuÈMu|^ÙÐ1HÞ°ÃÛ½‹,=—¶»®@­1qC]V9Ôïi¦a“L}s)8  ¢pvî-ÂÄsWí3ƒC„$<ñ•iÞÁÍêðý*WùÅʈy‡ÆÝ¡›ªS§­TÂ*ÞòÚ'¯ü$«„&–ƒP­¾¢O÷¨F]P—Nlô]Žxw½Öð›–¯ÑhæƒÛ6šô:Ö˜£znªs‡aÐ9)f¥ðføa‘Ÿ‹¡lÝX’mù­ż_V7ˆ•üS&´çÛÊ…¨ÆnP8‹Fï?·x+ž©ôvŽS¹¹>½”»ãÿ¤(©`˜wV€v¦ö¶è+RlÓ¿ùÝt¯©ïçXy¬¡‡Ç¾n™'¹"”v0ÁþOIð¬’7¿›¡AvøšƒŸ¾Dù„C:¸Ö¾¸Oøƒj; d­õvL!¿ª0ª´žÜëÜ}\ä'MÒg7{¤V$˜¼h°6œ²T¾/a g îç‘DFë,Ú@ ~t'l^ï=^FØTóðéŸý)u[È¿ ÿh¹»Óz«d=°AŠ!"s,G¬c¥A¬¯î†ωJ´SÎêàÔZœÿ 6ÚôâãÊy„²{ô±í5–Ÿ.ç ŸZB8Ô±LU—R9€?+s ­i*jå¯lµšn¾ _d´û›<¨Ý‘š«²Reúw½èN»º&F«œ±A¸Íë³³¼„FfŠæ] ƒ•WmòÃ?/`lŸ-¼‡nmb @ààÂ'¢xÕyÿ#Þ1ÍjÆûý9rnÌtø Œë±@g_Ø®qVœâµÍë¬p|Ê1Žd“1ÕLháÙ!ö_p<2ß[§£…γB‰W]xÂÕˆéŒAf×iÏ¿žx'ÓÂ&^ ºk‰,ôŠÃ êpÚÎÐVï¯Wø€%{]®Î”·BKt^Èšs~’ ÷è´Â„!­ë ã³ù"P hY«ñ Õæñ — è÷Kâ:ÅWû°òȬ–B›ˆës;Y¼ûè»ÇTµŸ05èÛã¡ß±àò~´ÝU!ê†/YždÙN§ðiCr]F' 3=æ”ü•Ì~ñ¬ZèypTtÿP‰ó‡\,í¼ÚH¹ÿt‘\"­}œ{]²uÅ“0Cÿ3Û¾UÆ›™lxä"+ƒñZ“6Öz £9A-•µaàZ[¥¹¡¢,Žâ*Sè’'0oXEàÕÙÛD\žw-1«„Säý¡¾Œ™ü„ˆœâ~+€¥¡Ûyë¦ ‹èa%ø éRS<z{öõøï½L(êç§ê‚m°ÙúA_²Mcï’åÃ.®=éLÓMí¡³c^óY_útŸi TÏ`aíHymÆË¿af:&‘»å÷5NPn0#qâò5[U¹_VÂS§™p‹*[QžSˆÉè z°ã:ÇY´Ž¿z'ú«$q@رÌlêO7î°GI„Û„"DÒj¥P¿¤ u±$9’ ‹r(bAò¼¯*‰X lûå`A7ó éøÜj†Ä¬š¨¹`é3Fæ¬Óu7"_UàPð×frY­¹¥ÂZði`îâ4v‰.°SS g¶Ë´Û}ºÅÖ¿Ç÷Äé3ZPgäŽrÈ /ÄE•e—p»™}³àU®z ï†Ù㱡‡ã´ß5ûDÎמ‚ ‚:IžÝW ͕Ҡ-a/_ˆ“0žOF)84œG1BŒõØ瀞Ôá;Öµ°‘NÙyîåà¼Ð­žžðÜYðú9%`‹£šVÓ%œjß3†-Ò®·3ƒñdßß~Ï NÛ)Cšý9ZÈi‡… ¦¿Òm>é×ùˆ®¯”‰½$æºÒfŠA å8¯zs@÷ ‡H9–&ì­ºò±â;W±}±m+.–J¯QÃ@a>Ý4§"}§ÚfÍ:¦\ âIžO÷¥Ym-‹!ËøŒ éCU»í°a÷ÊöH°qMrS7ÕZCßQî·AŽ“8‡¹gi†P+† ûÉrgÔ ÃÀÎ/½X‘ ²ø—¤õÓZI Š·´:Mµfk²åHˆ¬?p×ìß,’^;‰ëƒ=`Ôq2S<ß¾|º£$ñá¬9:M¡E›KþÜåc?, ÍÑŠ3yö«mëxxʱãå•ôBl³y ®s3xÿÝ‚uø†3ùK>ôÕųu8¹5„ýSN&øÔ§-¾oû9ih$ ÌM¥WÏ— £ïÚ<àê¤u}#¼i›1|•âG:J|—†=mï3âœÏ6ùÆL?52&ß‘T—oôm'&³#˜#È4ÕÍ%nÿj)R+e‰ ~!¨í'xÚ-ùA‹ŸbK gŸÂøë!²º“6ŒÒ¹ß L¾«äÏ‘‘È<ôä¼;–esê)þ꣠ÝÕ¶žåž{÷jƃc]bÆÕœ„}GÙïÓZÏR…”®FUS!¥ãtÞåùpœW.ø5LáwÒL£xñ|“ÌgÂl{¼ Í?šG¢Ãn‹ÞtÜ¢´bCÍH«%òÊxa:Èz÷/ à£K"wÚ<{”lŽßT\ºÀ§Žæ (XHMcõ=Ì!2¤rW¥ï˜Ûº_ãGÀ[q¬½ÈÆ} >ŽÈËäßxÀY÷:1õq~ ¦Ö U*<¢éß{œ¨Š Ÿú9pIò̘}ãNÕãkÿ^Áž!³?–£Ë´]™qgÏ@!6Ðxh7[À)$åÚÕ¨§€ ýùŸc+n.ŠÚœä|´Þ'[á.±q³Ì—|.G‹5Vé!ÔÇó$DÞ½ý•—â˜XƒªÈÞBXµ¹pêD6@¥6¼VNµj©ìð‰†”9ÑäÅózÎDÌã>œõr OZ4¥ ãûçÄ ü(˜j;$8ßF­ ,¾/"öJQ‰ËWêÅ'*Sdž}6˜dw ‘;øÛ1¼ˆ¼3Fr¼Š®èži%ïÏmº72“²Üˆ—ª¸‹/¬¥ëf·õÞèVuš«$8XùgËZžsäœèÚQZöȇƒ"ݦÀð#ˆè*F tRîõ‡'#y.†&ŽH :¨þód÷ÄÅ^%Z$ÚİÁ JVrýíUU Kh™¡–Öæf­ÅíW7Åc®ÒJƒ‡&6>5“rùDëð£n-à¾KýÆB35¾ +)æÕLµ0uÌ8«ímÊ.–jÇ…¢[L{j÷"F%!튔að³›¼&~êÇÿ“f:B㫦÷»GZØ}„ßg‘•O²‚ÜÓ]µyÁ mœla ¦,–YøÙÓ¶±å!™›°+ˆì---Œ§‘7µ»Ti |çöÕ¦/l´µa~X]1rÕ¥Ò  q²« Ç0R\U ™Ÿ†+g:Ž@„o¿nv–°øîµÚ® ŠóÊ?È„ Í!AÛX¬ó­ªL¥5§—8 †ÿú…ÿÀZç`P4uò³cä`™´Êî÷¾¦‰îð…rÏï+ðõ…yMeí ëòa>»:C,³£(HPR'ÛE´; âákµs÷$êÝ÷R÷=Æ£·®ó e(’Tq؇1Å”7ñ·“Æ`²[bo»›³©áÄ|z轕n=‡ñí ¹q…ÈJÇ¡÷g?Q¤ò1õ”¸ì(ž·­ˆƒ$Vê}å£S (Ìû¼´;šÇ“ªEJWÒ­`øëÇçz§»|‰È^÷ÊÞ¦€(’7ü}gõX{‰ؘ]ã âœm®0Rš—l–I'©}e?]D$ÔE‹ÿ™X)…€¥az<“›‡k¯ŽE‚‘º¼GÏ0¾ÍšHáyiƒò~Òçý›×/&Æ_é7´L¨âE^ÓmVUîx¨_ „DÉœÎØìCAQ¥aîúŒÜuðïÇ*Np=?¤£Áé\¹A`}q:Ž[&7òí(iGâØ1ˆ¸Z¡“ß;m N3†µÓ†*"fÛ``¨a޶Žm°î Æõ[%L“ÛݼïÎÍóÈ 5`Þ‡L£cõÚ’îŽ0Ã2¤||pï":üu[z›V -LÃ+¥š>†:jêˆ8Îb‚Ï!© .…€xQª,ñ"/.Vµ‹›W'|ùbKgÎÇþ¡ –²åPª 2FÜ2"x뛇˜œ¾§ $_F;ª:*úà$ׇ—k-_Þmùù)à"›™¥Ýð¢DÝ1ÈO"ν«Ëû?u 4R —„–H¿\c…4 Z+?º?Auõ|-?ˆ©å­Zs|0©nùØ1;'ýÉib1vþëJ‘Y,EÛTô¢ÉÑWÉV¥Ï~Ÿ!Äö“ªÃoŠ¿•0VvwjÆÈ.Ë¿²â~¿ÀšíXÒG/îLrdóµdSl·¹Î¶d9{¿ÄÇEYÖ*‡fS.C¬W-¨·;n«ýÈ^ ×]ÕîUQàúÙì>1 íP÷¦jq±Á$™P ÆqŽq<& 1»þIG¾Q3ef¯ms¤0åŒbkó†íjîi„Xò#ú±Å;QÄÅSƒúµ—Dÿ²¸a0|îw©ŸE£Gãƒ2Åç|wß“aÎ ø¢zHœ52l»‰ÙŸ˜Ç|ûÖ …‚YÄ`ìbÑ4-Ù?>‘ï¦ ó_æC~³}4"0¶=Ýl'¾\™…$ÌS÷|,A’ 7cÏÛK‚ã²H(ÀPs î y°>ÎdFžù®ñu@U¿‰°‡!\ÏXÒ¾©Ír`çL‘ ?MqY) ³8óc¦ž£ßÏ–{+ÞTà¸=XßÙý·Ló—ÈðO±Cƒ¼&H¶xÈkt™ønÓÓ,ö3.‰ à¦?Ér2éŒÞ°xxér\6ž§7Î']/>šÙ³¸Ž0oaãИelÌòç´Ù> 3$t¶³‘½ÐŒÓßÌÙ»¹¿)ú£Ñ<Ï»Ä5‡“_ÏÄ VKæ–½ý•lõ¼Iè½—k_"ò½ F‡rÞ\˜çZ!NJæe:úU‡Ó9ç’ðc%‰š—U’¯çöJˆ [•ôÉô*ÛÍ_…¼˜ÚF¾Äà#%{G ?M9üȺÎ^:ÝG-`æiÿÒÞBòÂÿ•ßYÙgµ‚J¡Y_Nê×`{`êÂÇÑ)(”ŠÌæÄN£÷ûç'evôÐÄP‹g ÀHó±<Œ§'æñU²¹ÛlÍ› §ÃUõW[æâ<*wî¤}œX(ªÒìÏŠÔeÕ¾ãI¸šZ¤cš4È7¦ _jŠ(•Ç©Du’I¿ß®Eykƒç*€+™pÞlì×|-O¾qí¶@“°·‰G'À¥‘4 2×ç㈛é³í³Rw›W‘vÞ°aÆCY¨özéÅàxó;c»á±ß\Ñ#žº¡±ÉŰ2|aŒƒ‹ç¤Ê‚Þ³¥²ÀZ"óõç ÿÀÁ@°ËxƒÛÊdCæÐ]wH)Y0Æ0ÕwKù¾që{˜Kƒ=q@óû±§]£ØÁÖv¾¤÷·Ï˜2}˜6Ó,«ÃùÜ‚«ˆ…Â"ž3m­àýSJ£º¦Ë††8 Í®”(™¦väE¹8Ô»¨³‰5˱eK[ºÎí¤ñƪöR—!Ÿ-vÆ¥Yh­PFÈkËs)÷c¬Ð"8"×ê`ƒ2dén·|r®RL¥î t]ÖDŠxNØÈ¥e$ÕÍqR= 2›Ì„ÈÌ::Ø :h ø§“%б5°Z’’ øÖÞÝ`Ë×Âjmf0éÖ–ÈÇoË)öEÄHêaŸ™²òæÌqL)„rkÒixº èú•¼C?½]½êëÏ ”Ë?Ä$^ëyb «±>úÒÅh;áožÜZúzñ. ?‰@{‡jÒDs")iKMdgy”ýÜÌŽ¨ˆ6Ö÷ÎEâÄÄîrÉy¢œâ…òbñÐõ.õ©5@<ŸÓŸ<–Û?Àó°'¢É+[*LSàlD8±–ªÊTI}àÀû‚–{… )ÉVNg€vfÉ:œ¤ØÈ5»¢6Za/E§“ÙÓW3‚ÆûYë° “-Lâ'šy8xa°s傱|mÌY¢úóÙjÄ$û¾®;žÆÐŽ‹žÐöµXQ½È¨s‘ÜHn/Ï[Bá]¥‘…ÌfýÄqej7ÚÕƒo™l¿„³óµ&žVgÔȞȬÓ^[Eé w\aFßžHŠ 6†\ ¢‰²À¸(¯†N'ω|TpTå7oÏÙbði އ- 9ƒù/ÍbAI±Êlß½>>´/.ìøÆ 7±‚ñR!¬îô|úÒ¢µŸbóòcaõ±Ãß Š¥÷–ÓÔ3 Göò‹ }EQ¿]×Ñ©²%:S`>… ›Eúçò¹c6?u…UϬAzL:¯9lÛÔ¯Aäk™' øn9Rp 7œžˆ§Byç—v<íÓ¥¢¡þ1ÞÌjTöÒ® 7 ®Vݘð;‚ž$øtËûšnª0½¬#5œÀ¹ââ}›Êx””T`ç—LªO–*<Ÿ¡f!ª>`àZ¦.!¤²uA­¶[Àª f¥†de©«ß§_‹ÍàÐ>.î¶HxâÑò>²IGå2ï˜ÕãíÊ 9W;÷¸ ?ϯ‰‹¥)5¡Ç"’fc ÒS]»ÚŸÈh]KǬ{~Ú2®ñ¯$„‰Û†uŠDD0Ö‰ÏU\°Gú©Ÿ¦õ>pÊ\Ó‡cÍyÄÏgüµÏx“ihx‹ÔúŒG½šXÎVºž)ÌMsH¡ˆŠÚ+È/À“fQ6‚Ò¹¹£ï|g¿Í„rðÍiQ´±%"E,ŠâjÃÅŒIÄI›º¨ÇY>IÄë„[ÂJ¼å:KÁ»Óa©‡$Îd!pÄs5ˆFj6£;„}_^³$(û~DFs·`»Ú|8K?³æž…Ì$hQg.XZÓIïa‹tîuÇß Ö’¸“­‰^ ÕÃ2D–åT-.î~¹á²ØIÀ·1£å: 2&›eΤ0‚YÅÇ[ñÅÚ:‡üœýÛ•~;½Êݺñì*"Û´»\S÷]ž¯¶5 kt:ÒTHV‘ãʲ•ˆµêAÍ;ó÷øªaÝ^æ5¹‹Å‡éªàz¤QIÞ »EÉ=Å×­ÐoßÙò›)³D‰Ÿ,VÉeø«²Ðw +´¿ D›ÝAÀFøKg¡çeŒ¹Ú¥\eûwEBÉ@›’*ø®çu†èP/HbíÏc†ÑÝ”žÓî'ÍÒóZ¹GÐŒo·šÝ¹R»FûRÿrô_QµŸUG¶¶í¬ÓÄ[/ë\}Q W-^^†Ÿ¦Í=£ëìÍ€õG$6_,ÃRFŒÅmÁí€7<Áœïe¿B©BТнäüæ”mÂ|˜ú öïð/.°Í{S3ýÎë¹¾~Ô Uï“˸¶Tû‡˜G‡0¨\^šT%PdÓ˜&{cv€’FfU çüÀ¬Î¯{˜^†¥Ï7sÌÛô\}š"çäKNí«›)³ÑE¶ËMŠ€ãÛOgZÂëtç>#¥ñCNyô>ïôØKOŸe×'šA€OŽ.Éð§gðƒCR ؉[/8 ý: l êÜ5sÝÊ)Ä`~ðØÈ¿¢±¶¹ » ÁZÌi\67Œî²<”æÕêPBÍ6ì›dzÁNv%Øÿ»ÏgµG;©]ÌHv®FÃ5ÈhUv€~½ibÁõ™ Òë.¯è¢B…¡ðUÀ¸œ\/–wWwö¡§°=5†tG©æŽ3“CTÙ"ÃA+ƒùÄk>à€syª¢Tãì§ÿ¢ÕF€™!‡*–[܉£y8àkø¨M1%J£‡ûìà|(ýš¼+“âùçR¨ƒ“t”2õRª˜«\o—æónø0î’›ø€„ZPÝÊ1 ™´ÝÓñŠ{ÿáLsîG¶±:xq;× ¯Nµü=¯¼ü´+Êë4n úka¡‡4ÁEl&m©îcì* ínžÑ9¢`Øñ ¯Ù¾“í͉Ƞ^¢A?Ëêõ8TÁy¨^ÒXïÐpÄúª*dÀ€¦>Ö ë=nD7þÚ*˜5E ?ì9h}îOõ,»"ˆê5=÷ŒCÅö¶0"Hı¸L)Öu™VT”‹¯HíÕÇüewˆ ï¿õ<’ñÖÿð ×½°äZ‰*­Ô{→ð’hß´ÒK5M‘fËm¥wTßs/RÏKËP×zø©ú¿U‰-š6oP£À䀜¼Ø Û~ûÉð  „÷åÛ?å²K—³w› 7€,ÏàŽ«þîºP5GnR ¸ò¶t9™2R$ fÀ]é=ñ(0Ù•Sé+Ï¥FÒtY… ÙQÉmñp¹Û¢Ë¥6H‘E:šQQû@rµSÌ{ɬH0s ZÍ;Æÿ­_z•oÜZ8sò¯Ú›[¨2IÆÅë­wJ4¡Ôøœ…cªÒ²à­À ½4|(.DŸª¦{zTQ“¼×>Ÿ­¡]rà‰ª”jøqfL‹V‚HƒôÝþ=ôÝOžq}×ð±¶Ù·ÎGyB!¹A ›­éÛ8õÏ ¦X9Ì®ýù1’‰ÍçyýƩ쉄-†¯°»EPÅk0"8·/Kþ±ÒŠÈ£[„ƒh¶§¥ Óº>Ý‘3µÓýÀ’±I-dè¶þnò¹æ<‚‹éC0bçeûXðÕ6\…Dˆ†å£ðßûê‚c’Å ÒV^W‹d?ø“`SN©¨àai_Õ¨:ˆZÇüÂ}>.;fO‘Ñô™þ¢`ñT.—w± ñ± õ%v=o8œÙr>@€ÞbÁ%M4S@W ´Þu][S7ÛÑú¶Íó_à0T—ù@²Õ¸b¼ß§IŒ ßJé©D?t9ø‹ÓˆPmÇÒ~ëkA$wÊoaÝü†bjž„óÙÇêÄ8=šÎùAÜ"îJÆø(I_üN[”õÆ^×{1yî÷Þ…ý$K·úæPu¸© çž‚¿l²+Ø9ukšÍöÈésm)h+%!Îà©Õø Ï€"öÉò$寿{ |-UYÌåWçBGa˜báœöt7Ÿ)wß/ˆÖn0ÑúfÏó6Ó¤ ó¡°žyb5îÊr—£¯G„ŸÓÝî‘àÈÒÀ”ľ¡ÕÈ<Ηê›eÞ_¾ÞM‚-æñޤ¿A°2Ÿä}U€dQ³˜ù0Sc•s›Îâ”–{Dß¡‹U¾rë^šÙ®&Àúo‡B‹‰Åô Ý¬&¥å8Lª¡sÒ¦ m =Åë¯±Ž ãéœç89ÿArçÐ%kê?§vÓ ÊʾX òöáÞû¹ÿÓ¿§¼:4µdÀÞUÀ*Õ.qšÒvøpª§L(]æR+¸ %Í:¶®*‚Yã…ƒó#e~¦ŸÄ™ ߨe&ÑZèÊ 1[aÖE}4ªÚ9™Ý"¾j›çÔhÛêÛ@£µý2^FnBÚÇ ëÏIˆZ’BÝH,Üp!k•Âî?ÇD,¼Æ½·€Å!ݶ-÷Z_kÉlšûÓ3ˆÒpørïê$n$Ëß³Ó¦\sSÎÚlœ-Rµï§ÒÏýÆ*Gl_݈"{>ö §Ò 䊴9éÛ`û¾ ~¨ è–‘K/ºl˜½w>f ©~p©€0¥4É#ÁPiö£?­®ÿùkìÞrÜÞün­‡Eµá=â].žøGê¢J\ØÊ|‰#t†FaБcÝèbFÍhÇëÚ´ò礡Jþ}ÀJZi³©³–•¬LM +-›×QÕÏ;¬%9´Òga$l¹dÊž”(R ë^¿£)¾r,aËÝ÷”厣mëå !Þ)eæ`úR½pt7¬ŒhòÖ-é5äïœs)ÀíÆ¸ù½ g*²GFÝm…ëÚ^>^æÚ< xËû1×ìÍ_?åLǪYÐ &ùð-åÉË[cП`lJGb¨%H†Z…bõ=·Œ»«á l´p³ÂJýYncHç$=Rr¸Ãz_eÑ0è–ŒSÇüŒtÌ´0Aà{n…Ÿ à$õGº4Ù€ Ö½rúóQ¹nDüRŒ¿º,ëZn¾ö°Œ«õÀ¡å & GÚ¯¼ä:õX/ '–ÖùϺ=Y6 ƒF€’ ôu'ÃÓ(QÏlñ'Æ2ÊˆêØˆ—3¯®Ï¶F§à^âœ$%cã6eë0­5ÈR k–¨HZT¦‹¸d…í˜>ZÊ|Ñdp(3ÚÍ‹6†¾®^¸ú‰ïŽmJ„ç.ü›‘Í­ ÍiÂŹ§®ØƒïM°]z’à*ŸYá˜ìèÑ=ÆS}ª ÄŠ?Isn|³™¢Ý˜Pбf1ò‡i$¾@Üc„£Ñ Üo&Ò!#«Ÿ§á ðÝb“M’ŒkÄ^¨7² ±;©Ó–×½)ÇeÓ{£š?¸P8œRF<”+I.ÈoÎåù@HÎlO™Ù¯b¦à<5_Yк$/_x¯G¯ìôè~¡®d/|%sH[òÁ`C¦á§s’ZIïQødŒ¿ÍlqϺžpúQ+ÖfBI¬Q¡Ha³ís«ó:|#Cƒ Ù(Œí·ù3(óQ.ÐÛŸ…5t<ý¬Á;Áî/´÷Ãá·¥>)óN§_Kã?Ë™rükî‡;l¹X#º½Å …;¢PÈšºYöVŽrA'ç:L{7Œ„Õ9ˆ{2o¶ÕG%¼_/ïó*sýꦉëÞ£EÍU[­"Û]f VÎ{ñigñQ×e˜ñKHÑ×"*9¶¯®èélàçñhV3ü‘, ×CÚ{+ü0>ÑTºÛÒ,yÔ“jÇŒ‡£ã" õ˜ ç§´†ƒWz…¤4´•.ë&ÂÚúõ>3}ÌþŒØÄ6(Ä#*J&Jª(ÖvTÞ {Æ£˜ÝåàÊ·¤Yý‰Æï6‡ñ·þ,´ù]1²–Rçc0vrÚAáÓçë­="ì;˜2ï;†ãë>±= ®Ç:rù€­ÃôYo³Ú`ª Å–OÈ5$žryØÔBBòа#Ö†ÿÃ|c·’~e+䞨””#ÿUÏ&¶OŸ˜µ?pô€ì 6‰~HŸ 'fè=[ý¡?L´ %}8*ÙÌŒæávà|û\ÆòÎ>5IÙ¥ŽvJìM´íÍŽÕœÄ 1ydš¾œZã—J“O>bxô&7üˆ™Äèå “îîUÁIô»Q‚Ú}Ò½¾ ¾ã1 tl¯ªÃp:ŠegQ|\ßž£ØÚóçÖÄ Ì ô­ïK­ù _Áó"-œéT,_‹a_¹ÄDÒètÞ‘?qØð;ò¼ÎŸlDü20¤[Ê=,ý˜jËÒÄq†‡š(ÈW ÓÙd ¸‘möZBïl‡ú¸'AÔ¬{aXOò–Ö^äë-´5¹ñõ±wÏíØ?4Ö•¡WnYQ=r$L†ÿ4¦É†+Æój‡kV×ÿ°æŒUÞã§$4<Fl6}~®Õjrìqµ„ê"kñ4±f kD‹SiFxM&0%óî‚]&#B«»N˜ãÏ'0©7öÐOî†v¯Íé­Vƒå«qëëGüyézíÚŸ”˜" IKù-üª¸»ÐY„‹u´66ê&Ä †údÓ–Ð\.»2ߘŸæÙñÕ¯@‡N¶ºÏL—ä1~ÿPZYÄ6€ƒ«*–!Ã'Çî‰ õ²îÁ÷‡±ã܃ªc5 @j<ß3‹–æ±"-;0PRùB¿z=K~Ä#˜ÛT( ëz ¦Ò 7d{LÀÀã ë¦kÞ5è³ÄaE™±šW~4Ww ;í#éißåÌÑJ´ZF®ý3Ö0j‹h&%øHk25Ã(ŒÔBŸB§r ˜Šwq£0Âh3i¸­à±Ž˜÷F—Ê å„¬XaŽ‘’ûpjÆN§¨E(_-'¯-Mn#’X’à¤- ×ÙÖŠvƒIˆ»@¦5W‰¼œE¨¼’»Á> stream xÚt 4ÔmؾH2…ìú!k˜û2vÆ’ìÔ˜L˜af B![YËyK©ìKÊš"[–¬%J–ì;ÙûFûûþÿç|ß™sfæº×çzîë~xMÌÅÕQ8'4‡%ŠC% Š€¦¡…T€@¤$ I€€†èŽþe X¢ñ «øW„& ’mZ"9Їô½Ý¨•U„Ê)B €$¢ð+‡W´$ 0”ôqX4$ ‰óôÃc\\‰ä>¿þÂHª  'ö=P÷@ã1H0D]ÑäŽH„;`ŽCbÐD¿•†¹‰žŠ`°ƒ û¨ˆˆ>¢+`†& ñ$4 8  !<Ð?©I€ W á‡ÃçLôAàÑÙàŽA¢±rŠ7…Æäž`ì‰Æþ6ø ü¼*ý]îgöA! ö{2‰Äyx"°~¬ àŒqGÆp ¢/Q @`QwŽœ !0î'rÀ÷£#¸º)€ 3üÉ€Äc<‰ Æý€#ø  ùšµ±(Mœ‡K$€Χ…Á£‘ä{÷ÿ®çƒõÿ…œ1X”ó ”·'ø<ãåÖÓúC6þØ\ÐD@ÈKIh/í‹t4°ðóDwBÌdþž8OÀ™LˆqF“@þ ñÞè@ÿ¿ÿF (@aDÀ í‚Á‚þT'›ÑÎ?0yþxŒ/`!Ë @>¿ÿ9†ÂaÝýþ„1XÛJÛÔRçìOÊ¿8_À_ ˆKJI2’Ò€¬‚ øï*¿ùÿâþÝj‚Àü<äO==¬3PøA|w¿h~êBøçÒˆÿî`„#« ÿ¿=D‚$AÿÏ+ð=åÿ§üƒ*ÿ«øÿ{"¸·»ûw¿ð€ÿÇðÀ¸ûýŒ «Ù›HÞ Cy?°ÿ µBÿXgC4 ãíñ_¯AÞu¬‹ûï‹Äà_4ÊCDº~W̯1«»c°hsðÞâPä?>òÊ!ÝÈo <¬ï.4y£þÝQ‹Ä¡VORF@àñ?„¬/IÀJÞQÚ÷»´°G$§dv€3:©¬,Ö80ý@òXëR +í7’“ÀzÙgüÉC°É$ €Íþ ržùo¤ €¹ŸÓo%ËŒþ ’ë8ÿe0æ/H®äö$—rÿ ’ÏçñBÉÄþÉpAr#ÏßPšëI~,±îhgâ+ô§õ‡¢ÿäJ`ü_|HÂwø¯1!½ñäTâ÷M"Ïðþþ\¢Ñ¾h$è]?©z©$´z³HÓG|¢CRš¾i%jí¨Õ¸6;é‹iˆ&lkUêŸèAõúÞÉè­O'g%~{êf} âæø1àv´â©weÕÔÎNcb]'•·g Þ’“çêêl/JaQ.§+Íš}ÖÔzDXż–'ú2¦u`‚•_ó]i„*æ$è(;nDÓ°ÉËKÑQ†Ö¨gÔh«÷ôÖê!¬¨uÌ'rç·n7¶IÊ|nzÿHìfô6çÌ ½ç¹µŒ•[S ²ç.v=ã Úl;ñÂ!kÕ¡ÁÂN„v“øûÒÎ+Ogï{ó…ã+çKÆu;?‘{«ºfa6'*êbwsB‚á½ÆÑ‚çŸñ’GãM„«a6âÚ‘]W4\ ÞlÜWå·!¨eëù[×- ñtôœï‘ „3ɸ͛õ!OGbþIX^[È)¢ŽŒ]Ù ؾ멖©¯SZ1ÖʰJ~+VÖWøë[G³wF„ßú~¦v²¹q^<gý5'çÃ]°­hÑ\®u™}ÏVìD”/¼ƒkN•œÙ⥅ç½eì£sUhÆ }uLwɧá“Fò-Ó3•«Ã¢;¸ÕzGL×ëÓ2}¤o-÷>^÷]® w|Ò#P™Oÿìò‡ä5ªRb}kô-6vÃôŠ˜r}£%ïZÝ{Žâgú3kŒµ‘‹T¼'*¶3?¥[rFt² ÑzE¤¸^ö²½tŸ)˾TÓ»€Ò¸;g,vÚ•¹ÉþÓ ܼµ¦äL/j_Äç¤vKhr!µ¿[¥ˆ_ýÌ9¨É!b.~5,Ô9-ÔëXÐ22Ç|DaŠAÑvC(ýÙƒžãÝÈÌ´_j W&Ë÷ÖXâ×?Lxíç0ÈR° öä|"L+‹d¼VFRÚ½Wˆ8Œõ ¶0Qät/ˆ€ï éî h—ÁÙ÷#¦á('¦,±[9C…J¾^M©ëÛúÿœ0 ·¹ª¤³â:ã|0–‚­HãTðV“gãçì`ûÓ¯'Ô“¯.¦r$´ÕfV9 ~T4¹WÜ89_£q þTóåLÃ]T3ó^HýseÑMTÆx<ÌãªËlz´889+Ön+üÇ3xÀ,+I¯–7U£þ ÿZ‰Ð›u¿V«$}¾ÂHáD{–šlÃ0?Ak"™ä]N×LYq=·–¢ú"ú–²Aðª˜tB ó!›»GU‹ÅIé_ÖÒûÍÜÒ®|õ™__+^Êý(S-ªÓNRPÕ¹ZÇ6:dÌšP0_KÖ.¦‰“¿'Øq3'Èa¼ é—¸ m©Ë ‰²X9Ç»o‚‡OÁH?·žáåÞ&Ba2šÇVÝQ(ú6cÃ._äa^ܪºC_P¨¨S9+zj¢}æ}ÖCµP¡ìyL×G~‡©L¸ÑZi]B’6ë5#å»ì6ƒÆe½Wy™.Z8ÎëÎ+—N2wÒ?4n0W²ÏÖ2ÐehxjRÉä£(cÚf Çž±}wA[½É¶~~JÊÑv¹ =w'hRSVC÷úµ3û%Ë›ã]Réwï\bË=œÝ)Õ˜Ôw¿4<§Ca9<ЪE±Ì¥Ë{ia¼çdÓtcÂ]§4úÇæ²´@otö@D'=¿‹V5,üðÊËO¤?úÜ’¿yãá›êšý0|‡cÅxcaQ mŸÐnÒ‰66ÍëÌS—¡Ð¥½ÐW¿Ìy\ð… •£³_§÷ombò®Öi;=Ó,迯ž&ûf,áâ— 'É×øÊ÷^Èœ_8­——­Ì^¼H¢vñ+v¸5ÄŒ™?}'m&ös”ÔS¤iÌ­ˆÝüh±S¿¶<ÕêYb Ò•Tq³*òå±7еÑ~¤Ê‰ Ï\â°Te µ6” }õ{&49K'àü¢î†H1U3%ßÞÙáÝ»O°T7rl·—·8ñÊ3Å–j¨Ü³´|XÚv0“Ú1¹îÔœ¾Jâ_hv™ë»Ô¬ä‘ì›BuáÀ2&^èãpŠkÅÇ…ô‡PÓ®"žßIM^‹}göðèA.H'ÓeN¨™÷Bny6öË o¥ý©Ä©¨HUˆ8å†ò©wO ò¼x‘"ÞÊpv=ü6 ˆ­öMHXÅ5x-rs—é}–Ü&½²Þ¥Ù)ž’lö¦J;±×‡fø›ZBVkfbëÀà1*B]ÐŒHÓPeChMÝ×ð÷i—0çU0;r;—«MYWL ¿6(aÁB®Ÿ4Ÿo‹µµÒpp=± *Øs–zã›lõáí³¸µ‡,»'õiƆ©]™^›$Ìväzs‚DziÀ¤ÄÍõÕ8Š>Ìæ )Ï·ȉ·;Áoi U‹ì*£77 —–L'3®xŽod»¹ñí‘GÁÊ#ço¼ãé¬T9pÆ AŸzVwp3Éò¥©jHËé5ãù*äibSxs(•"òŒ&¾^¯ô¨äÇ3fš ’nfqi†…õH3øü§fK,·ÌÜ–b$9ATþZp$ƒwÊðî•üÏ!¢2‰5øåhïSv¾’†ÅÁo“$]^X>;Ïô¶1.½]wTÊZPÉÎNïkƒÑWã°#ŠJ¸“Œùc^y&Í+¿šUè¹u¦ë¥áöÅå S=¤åç©&©‘Sù²Vâç±S“:©ž0#{OÌŸŸÔ³QŠx¾W‰=)cãZ{=)f{ެ‘-ºH¥At”+fõDÑh¼ Ûës¸j›^ÕJ”J†j#ãÙüýÏT#êÅž¿í›3Ë~:?K·/£#7ÔÜkÁŸv›Û`b-¾~ÛûÞf]y@ImH.Êb°fFîÉeµBui¶ßûõ|ŠzLYy¶*l-ᚇMÓ„“ù•œÙ$øÉʧŸk¦¢îqäUŸ’YÔ?ý™™º¸Ýôqî$,QÚŽ ‘ñ‰D˜iO\KgÍjDº¬ñ¥»Í>ºl'À£ålë ÉíkÈÈþF OV³¾ÚØáeÖž^¦îñ2G™iFÁFc)¾È=D–L§_Ö•Cfe «±ó=CI™“vÙ!/¢`üýÁb/A!•ƒgb7ƒ©Q3 `;•‰ÏѤø•ë߆ƒ êYNsºžHà Xy.Ûõ/ßÄùª¸–î]ë6œæ?¯\±U]Xf&wÿgêEh즹r°X¾:óí‘£þƒL*n¾£¯Õ´õªØ¹„2ÛÎ×¥4×á¹hûzî ¿þ~¹éfмí›ÜØWY€‰ñÓoÛWPL-îÂ#å,R-6m NÏjšÊ.{¬ÄÞ§/.sÃö8e°5çF¼‘®¤Päqî%Ðþrzö¹Ë1³sòµ³¶>ê+–cI¥ìpù9cñòÕ´Ùa:JƒÐYË54¤‰¼ü {,‘å›-cÑlwŠkg¢o‚ž¾(/FÛLŠ,êïYu©Øóé=º§¨Ô”“âßtb4[oÃú‚k¸nõ·«f4GêA´•‡[j|·™£Š;÷² 'U²E¤Lƒ‚7ó¢/Xã¹£ îU²_x·ë :Û÷Û÷ýjUµ”£» ˜oÛÔO5î–}¿ärïÞ­osGTŽë‚¾°¹ý ýuþÞË#Œê5½Ó9Ç™>À&ßxÜ^HvÑ“þ玡(]›Î•qíçØYWcϺiçU%œ#wI—€vJè¥÷¸Á½5r¾]9I%á—E2_© Ó× HT´v¿$ZtÛ\™ì¯´N…°¢;f~Æßð¹9·bŠNSÕÝþtÖ{Ïf™Ùü‡WèY’”AñȯgB;I–ŽÔ–/U -èÚVÈËð–€ÌC¶9Ý)šî—G1¬ÐãÓM5UŠZj`m^Çßà'ϟ̾}±Ð‹|xñœ Z—?nă‘õ…ŽƒÖ‘ù^µ`;ƒÞ³Úš$™i/Ó#už9‰BfŽG{UR=’óõÞ&ß8­yÍ8ʇê3 ¸ú<`Sô\û­ÃÇ“î÷¹†“u*Ë@–W™Ä7øbVe ÎÖÆ}±¸å³ùà<Ÿ„²EsO¡~y §›Æþf·È‰ùÛBJ°=£]«eC1ËØjÙ°¸ãƒJkr²c‘D˜;ðÍT¾vóZ½åˆ`ˆ¤´‹tnsÂGÛšÜ91tØνž3Ïn:•ȵˆÎ*}œÌî§@R6»RŽ•9¿Nft鵡-.[¿À–%ZÆ{Œûq­‰Ÿèm¨žZTͯV³e_"]EçÉÅ“A˰ùh¢€Ô×sO¨Ñö`þëûç÷׼⣫ìåíßsÏÁg‰Ûð ¯êºf§VD/…ŽÚˆŸpÖ®6Œhž7BRnÇ"^æš]üЬº‘ÄYtóQ­°½¢VŒ×¨Ž§¨ñ¢âR‹»t )}ç"Òýqž9ó-TõƒªM±²°ËgM^ í[ |æè6f³¹éÍÏÏÍ1g.JÔˆ%¹MMŽÅD?Ÿ'…Wc„˜H.I!ÿ^ÆS endstream endobj 145 0 obj << /Type /ObjStm /N 100 /First 906 /Length 3585 /Filter /FlateDecode >> stream xÚí[éSÛJÿî¿BÃnṯ­Ô«^î„ÅcðÆØ<[αýv÷Œe]¦pH²o©TÁx4êéãׇZ¶$´Êx&4Ï´†Ÿ #àÓfJàœgFâi— çʬ6Dã…„O˜s¡3…ŸÆ÷„EÁñ ìIm&”…ËñhΑ¹ƒ n°*ÙZ¯5™À”“Àªò¥D¶ÀHJÐNØIE›á”‘ÈÊfÒI`îD&ƒ”™ÁO‹´>S\pf Xq2SÒ«žp`¨ö Ú)0w{žº¨ìrvy ø™Ls…»L<žp“UQ”w™6Ö÷ X´Äƒ1ð>Óqð4ÃSÀÛÇÑd˜ ?àg¤Ñ™ãDc2gQã`zÐ8¸ÌkŠ‚Þ£±\dAÂ’«,8…+è.q â¼"y@_!làæДÈFpÐІÀk°,„3 f@L¼`&5²‡‰ÅÐÅRÃ! -ˆ"÷KAU!½)¸Wqz-0#Žè…ê Ž2TÀ¸ƒ#¥tÊÀLb¶¨e@]À×JÊú\v!V*pÙÃV`| g hŒ_XËÐuV'A@¬ ÚZD&aCbƒþBb«di-8IøE­‡‘R`ªp\ÃÐÇ,BFÑ&øf”>RZŒk“Å»ÞÝ»=v/ûºBB¾ÌØÛwï!,úbÁ߀æd1÷þøƒh÷§“"»{7cûÉ3´k¤ô°Xre<€äB¯àðcÏgÓáa^d2öüÞ~Æ^å_‹¬õêÛe'gyíØ|RÌÁö€Û{ìe>Ÿ.fÃ|Nu‚–žä§£ÁîôköÕÂDpA÷؃ÙtqIJ‚ŒÙ`2¿ÌòÉð[Ʋb¶){pæ^þy4Ì_>Ø%Õ¢ Ø Þ;“ÉÄ *…ú7Ô¤ó=¶;æ3’ÏÙCvÀö>ô]FǨô¬…øîÉiÑטÊÁ1䯹ºÃÅIlÙãÑäÛ¹{—„°a1šNØ!{ýòÿïœÅå¿;M‡ÓÉébXLgýéìŒ]†Ÿ¶9›åã|0ω‚c¶ 3°m0çã>®lÉŠÿSâà{½mtËÛFþJoq›½mÔõ¼Ý¢µD«œêãåóf®!Ü,JÚ5ÁüÒš`nuM0~ƒ(ñ­(æ¢mÔÿ:Jl»–Ø_ZKì­®%vƒZbÛµÄjÛ×Ð]‡Ö€ùú¦Q?¤1q¼^þ—†Wì²ð–ä–†Ùæ–@ Þ7o·t_C¯wE}÷X` 4ÿ[2'õ?žgC²ãK~²²åã¢óþxzv–ÏØhršíÌ“°Až„Žj*ûAÿÝbß´bß©ŸûÎ5cßÉÛ\Zþù7gßëz/Ú®¿Ôõþ6»ÞóëW‹mêЕî'~ä=|µt(MߨÜ(~l+~¼þ•ñãխ޳Aü˜Vüh0Åù¯6×™Fšì÷ÿOù?t…îÛì÷ø>¢'!áfÒ¹¾ÏÒñµþãŽ8*úP´h®ìË4Zk¡ÞÕF$sÏšàp´¸7žuÜ÷Uâ™8è¾é®ÍezÅHá”í‹%¯8×õÇ:•YÏit}“øèáM]!`—ôȬYÍ*viâdîК4©ÌGi„­JÒGMü⊠«+ê8*²LyV)‹:% 4·¸~ü»žÝ¢ÚIž6³qôpŸÒX ®œ‹±£/ÆfÌ$Wf¯§¸ nµyÆ % E”3¼¦/sNQÔª2\5ljúwøÛÖ‰4§‘"bŒF%Ù.ãYü½¼ñïÈÏQ/c ¢HzyÚ‡A£?'‡ÄåÈTÅÀ¥€ Qy ‡Î.  1ŠXhI¨Ñˆ$‘I<™$Ì:ô[÷ŸvWx$cäÇÈ‹_¹¢…–0ŽOgi])^òqóÔ¿ù>Ò¤±Â-ÎkÜhoœ ž‚r¥Š¥@VZ‘cÃå¼n“èêä¤8*Uº•VkÎ&3⊞Š;Kê8ª˜˜ÁÐ\SêÑY,1¸+m>˜`a gÚtî FäB<ÁLà+±ÜÑh ªÁM:€íV¢5´„’K«¡4t`·¢DÝLÀÔvdDܼ¦¢‰…ÆÂè–s@ (5–ts* 9ˆ4ƒGÛñqЍÿj–,ÑÖS:KL*ege.ñŽ´#®K £Á¢¤AÒŠsdcÜ[¡£Rh¯r˜®Ê¨ò¬†Tm!MšÓžCäðÁ޶9>†Ñ„©¥=ŠâÇc¢j‰+†Ò€ãЇdð‰Æ”?ÕØ4·#ÂHò˜¦" ‘ ëË«÷$™æq4`›C´P?‡¸×æËQƒ°î1‘´ð•™„2®Òޏ*A>øA“€§K+NÊUJHs•äÔrEy ¿^ÊŽ´7«– ç¡T(± Y%Ò˜ÐOèüöÑZA‘ç —R±z(ŒêÕ—0øEý|>œ.‹é,~ñðtpgž<{ôüÑûî=9xõJp83œÍ3Ivé;#!²m© "[@4ÀÛ™ñ; ¨æ=¶7¸|˜ÎÎÓ!JÁsÛ yƒñh¸39çÙ¶®‡E~ñ¸ôØÛ´K+dr>˜á—wØÛe÷Ø}¶Ï°ö˜=aOÙ3öœ½d‡ì{Íìd6~Ê‹qþ±XÎgȉ Ùp:žN`¼¸°S–3’Àò¿ƒ1ûÈ>Ž>çìãt1cg윻<Ï'lÄ>±1»`6Mr6Y\œä³ùèl¦l —Œ¾#i4‹²þZL‹Å½ d®’âU0âG€J`Î cgQ·TobéÃ{Ïö^¥»o×å¸K9.8&¹ç7Ž¡ªÖ_Ïò˜ã©üÆÌ>JáA!±ÊØU\|ªGFÌÄîÂø¥3<ì& í¼õçÓ÷ÚÁ:Ì‚[bæÜM ã6fiDÍóJã²0ƲDø–™„h]V±*:,]-^ÿyôôÕËËš´ z ‹¸QÞT`qnmæì2 †l©Y'6*œ==ØGëÞ­ó¹ ÙvÀ‡‹ñwçÌÊ8gxÍ8¯®öyÙ©h¾¶SÁÞ#/»x-©Û·QÍ{ÿèÝÁk´om¶­cf”»IƯم­âù!Eô£ŽËýºà¿£Kþp4*FãÓ¼zõ?öl>ÌÏa6ëDì{Û¹üëp<¸htug³|²ÛÄ8ŸÏ7oòZEœÌGˆãÚ¶!Ú[/z‹É)NgùªhWA±Ñ¥ãþÑýoÄ€YÓIP㎷5pSÌÍƬ ˜Ø´”Áå‹]õÒ°eÀ±ŽÂškAùãoF‹ ~w0Ïé'Ôö]L 5zÇ‚~¬ÞÍæj)°åñ  ÜŽF§ÅùœÞôØX~³Q¯‹—\4Å#âÝâƒÚ\|³©lŠWMñxõZ#Þl.¾Ù®5Å›«ÅãžR¼Û\|»‡j*àZð˵öëÍhõ#Mù­èÓ¶@¨ÈßóÂß/ZágëòuEþwd_óÒÜß ?ÁkøsU‘Ï7—ß¼t6å·âO¨šûmE¼Ü\|³7Å·¢›Š ú¦R{B[<>ç3Ç}X¹ËpðÅ*âûht:Ï>¤‡{OÏ®ÆæŒãé3>6"Å÷ñ÷ˆX¾Ú´|µeù"ÃòQõåÆéaË«d¨µ2ÒzËG°Ò£4WñBüÒfžЉI|F©±ùÙ¢C0OÉÒ3Rè|3JÎË#hP2›òh'3IéÒˆ”áÏgùçL×Km]¾E[umëòécÚidÇNUîäëwê¤ÐS|êÇØ6›åÛ^;™¶lâδ)wÊ«¬æ>K¾qR® „º¬au²ªsܪ„[Õá–UÐT‡µª„[ñõ;enÕ·,á–¶“MÜÙ¡€,á–WÁ]U@×ЖU´ÕUhËmQGÛW‰ëD ¯Ðë7ÊŠŠ’wp)¡¼‹ mì_bk¯ŠÇªt]h©$ù•®Ý‚ˆy­]ÄÖ*Ñ{Óáöa1˜[Yì(²;—P´úŽUõ˜oѫՕ±E/PWVä½]YQ¸bcqcG£¢!´¤;njOè-z1ºÂÒlÑëÏ«”;—´€BEÕd"«L‡MµJ‰K¢n,n¶nn ßê­,ø-z¥}µ¶èvZ˜çôè?b_[Ã%Õ©ȬµôZž(\#`!U} T¡¾xèH4KªÅI)U-ä*ò›Ôm]«çÑw¦C º°-]¡té:ÖëÀGµùä£]ËŠ†fÍ-W™bpƒ¢@c®eÚ¢*Ù™º#+!½ÿ?UúÔéÓ\•kë„@´R–%ì¿£Cl endstream endobj 230 0 obj << /Author(Valerie Obenchain and Martin Morgan)/Title(Errors, Logs and Debugging in BiocParallel)/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.14)/Keywords() /CreationDate (D:20151014223312-04'00') /ModDate (D:20151014223312-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) kpathsea version 6.1.1) >> endobj 229 0 obj << /Type /ObjStm /N 1 /First 6 /Length 97 /Filter /FlateDecode >> stream xÚ32²P0ಱáÒ©,HUÐwN,IÌÉOçÒHLO-V02J+qéû—–ädæE,!"~‰¹ ®‘9„ R’ªZœ S ÔVšç˜\’™Ÿ§`fVhgÇE › endstream endobj 231 0 obj << /Type /XRef /Index [0 232] /Size 232 /W [1 3 1] /Root 228 0 R /Info 230 0 R /ID [ ] /Length 559 /Filter /FlateDecode >> stream xÚ%“MWÍQ‡÷>%’”‹¼TDz!„ºoÝt#TÄ­¨„KÅÀÀÄ2o50cYk/†Ö24ñ Ì}k31ì è>¿;yÖoŸ}ιgý÷sÍÌþ'³dn¹Fš¨!“$pƒµG¤Ðn²¶JÚšÀmÖ’vƒ=`žµR3Ø 8ˤ°p},‘ZÁ~À3â© ´SrKܧ<2”lŽEʃà%)(ƒJ5xP:ŽRÊc@e/¸GÙ º(Á]Ênpœ=à8 8›Î€>Ф³àçÁp ƒKà2¸FÀ(È‚ȃ(‚1Pv³6M°Æyî5 áM²v•t”Á-0fèÒHœH4Ò¤[ó/ÝÇ–¤-wÀ´[¦¢Æ,gåÁ4¥>˜¾>ûœ[ç†öéëjŒš¯/#4Æ'`Ñ­·¤ÍÒç)XU·¡×j<ㇰ3=”RtÝmx‹-!Ìzü¦„¬‘ÜÊ﵆»‰Ñä6õN d L \‹·™?j càZ R´»Uê?$õä6ªD‡ÛJ½‹M*%Ñå¶öI Ì ýS&P%zÜ^ÔߌC4*ÑçöjY  Ì Ì Ì Ì Ì Ì Ì Ì Ì‰·7ŸuvÔíËO¥¬ÛïJ9÷ÆV¥¼{ÿG¥‚ûjV©èþvIiÌýkU©äþc[iÜS楒”B‹˜Ì2ª€ †FÆchd ï¯y*|¯!ß]CqÓvÚ’{§ endstream endobj startxref 145790 %%EOF BiocParallel/inst/doc/Introduction_To_BiocParallel.Rnw0000644000175100017510000010137712607610201024075 0ustar00biocbuildbiocbuild%\VignetteIndexEntry{Introduction to BiocParallel} %\VignetteKeywords{parallel, Infrastructure} %\VignettePackage{BiocParallel} %\VignetteEngine{knitr::knitr} \documentclass{article} <>= BiocStyle::latex() @ \newcommand{\BiocParallel}{\Biocpkg{BiocParallel}} \title{Introduction to \BiocParallel} \author{Vincent Carey, Michael Lawrence, Martin Morgan\footnote{\url{mtmorgan@fhcrc.org}}} \date{Edited: May 6, 2015; Compiled: \today} \begin{document} \maketitle \tableofcontents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Numerous approaches are available for parallel computing in \R{}. The CRAN Task View for high performance and parallel computing provides useful high-level summaries and package categorization. \url{http://cran.r-project.org/web/views/HighPerformanceComputing.html} Most Task View packages cite or identify one or more of \CRANpkg{snow}, \CRANpkg{Rmpi}, \CRANpkg{multicore} or \CRANpkg{foreach} as relevant parallelization infrastructure. Direct support in \R{} for parallel computing started with release 2.14.0 with inclusion of the \CRANpkg{parallel} package which contains modified versions of \CRANpkg{multicore} and \CRANpkg{snow}. A basic objective of \BiocParallel{} is to reduce the complexity faced when developing and using software that performs parallel computations. With the introduction of the \Rcode{BiocParallelParam} object, \BiocParallel{} aims to provide a unified interface to existing parallel infrastructure where code can be easily executed in different environments. The \Rcode{BiocParallelParam} specifies the environment of choice as well as computing resources and is invoked by `registration` or passed as an argument to the \BiocParallel{} functions. \BiocParallel{} offers the following conveniences over the `roll your own` approach to parallel programming. \begin{itemize} \setlength{\itemsep}{5pt} \item{unified interface:}{ \Rcode{BiocParallelParam} instances define the method of parallel evaluation (multi-core, snow cluster, etc.) and computing resources (number of workers, error handling, cleanup, etc.). } \item{parallel iteration over lists, files and vectorized operations:}{ \Rcode{bplapply}, \Rcode{bpmapply} and \Rcode{bpvec} provide parallel list iteration and vectorized operations. \Rcode{bpiterate} iterates through files distributing chunks to parallel workers. } \item{cluster scheduling:}{ When the parallel environment is managed by a cluster scheduler through \CRANpkg{BatchJobs}, job management and result retrieval are considerably simplified. } \item{support of \Rcode{foreach}:}{ The \CRANpkg{foreach} and \CRANpkg{iterators} packages are fully supported. Registration of the parallel back end uses \Rcode{BiocParallelParam} instances. } \end{itemize} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Quick start} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The \Rpackage{BiocParallel} package is available at bioconductor.org and can be downloaded via \Rcode{biocLite}: <>= source("http://bioconductor.org/biocLite.R") biocLite("BiocParallel") @ Load \BiocParallel{}. <>= library(BiocParallel) @ The test function simply returns the square root of ``x''. <>= FUN <- function(x) { round(sqrt(x), 4) } @ Functions in \BiocParallel use the registered back-ends for parallel evaluation. The default is the top entry of the registry list. <>= registered() @ %% Configure your R session to always use a particular back-end configure by setting options named after the back ends in an \Rcode{.Rprofile} file, e.g., <>= options(MulticoreParam=quote(MulticoreParam(workers=4))) @ When a \BiocParallel{} function is invoked with no \Rcode{BPPARAM} argument the default back-end is used. <>= bplapply(1:4, FUN) @ Environment specific back-ends can be defined for any of the registry entries. This example uses a 2-worker SOCK cluster. <>= param <- SnowParam(workers = 2, type = "SOCK") bplapply(1:4, FUN, BPPARAM = param) @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{The \BiocParallel{} Interface} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsection{Classes} \subsubsection{\Rcode{BiocParallelParam}} \Rcode{BiocParallelParam} instances configure different parallel evaluation environments. Creating or \Rcode{register()}ing a `\Rcode{Param}` allows the same code to be used in different parallel environments without a code re-write. Params listed are supported on all of Unix, Mac and Windows except \Rcode{MulticoreParam} which is Unix and Mac only. \begin{itemize} \setlength{\itemsep}{5pt} \item{\Rcode{SerialParam}: } Supported on all platforms. Evaluate \BiocParallel-enabled code with parallel evaluation disabled. This approach is useful when writing new scripts and trying to debug code. \item{\Rcode{MulticoreParam}: } Supported on Unix and Mac. On Windows, \Rcode{MulticoreParam} dispatches to \Rcode{SerialParam}. Evaluate \BiocParallel-enabled code using multiple cores on a single computer. When available, this is the most efficient and least troublesome way to parallelize code. Windows does not support multi-core evaluation (the \Rcode{MulticoreParam} object can be used, but evaluation is serial). On other operating systems, the default number of workers equals the value of the global option \Rcode{mc.cores} (e.g., \Rcode{getOption("mc.cores")}) or, if that is not set, the number of cores returned by \Rcode{parallel::detectCores()}. Based on facilities originally implemented in the \CRANpkg{multicore} package and subsequently the \CRANpkg{parallel} package in base \R{}. \item{\Rcode{SnowParam}: } Supported on all platforms. Evaluate \BiocParallel-enabled code across several distinct \R{} instances, on one or several computers. This is a straightforward approach for executing parallel code on one or several computers, and is based on facilities originally implemented in the \CRANpkg{snow} package. Different types of \CRANpkg{snow} `back-ends' are supported, including socket and MPI clusters. \item{\Rcode{BatchJobsParam}: } Applicable to clusters with formal schedulers. Evaluate \BiocParallel-enabled code by submitting to a cluster scheduler like SGE. \item{\Rcode{DoparParam}: } Supported on all platforms. Register a parallel back-end supported by the \CRANpkg{foreach} package for use with \BiocParallel. \end{itemize} The simplest illustration of creating \Rcode{BiocParallelParam} is <>= serialParam <- SerialParam() serialParam @ Most parameters have additional arguments influencing behavior, e.g., specifying the number of `cores' to use when creating a \Rcode{MulticoreParam} instance <>= multicoreParam <- MulticoreParam(workers = 8) multicoreParam @ Arguments are described on the corresponding help page, e.g., \Rcode{?MulticoreParam}. \subsubsection{\Rcode{register()}ing \Rcode{BiocParallelParam} instances} The list of registered \Rcode{BiocParallelParam} instances represents the user's preferences for different types of back-ends. Individual algorithms may specify a preferred back-end, and different back-ends maybe chosen when parallel evaluation is nested. The registry behaves like a `stack' in that the last entry registered is added to the top of the list and becomes the ``next used`` (i.e., the default). \Rcode{registered} invoked with no arguments lists all back-ends. <>= registered() @ \Rcode{bpparam} returns the default from the top of the list. <>= bpparam() @ Add a specialized instance with \Rcode{register}. When \Rcode{default} is TRUE, the new instance becomes the default. <>= register(BatchJobsParam(workers = 10), default = TRUE) @ BatchJobsParam has been moved to the top of the list and is now the default. <>= names(registered()) bpparam() @ \subsection{Functions} \subsubsection{Parallel looping, vectorized and aggregate operations} These are used in common functions, implemented as much as possible for all back-ends. The functions (see the help pages, e.g., \Rcode{?bplapply} for a full definition) include \begin{description} \item{\Rcode{bplapply(X, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to each element of \Rcode{X}. \Rcode{bplapply} invokes \Rcode{FUN} \Rcode{length(X)} times, each time with a single element of \Rcode{X}. \item{\Rcode{bpmapply(FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to the first, second, etc., elements of each argument in \ldots. \item{\Rcode{bpiterate(ITER, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to the output of function \Rcode{ITER}. Data chunks are returned by \Rcode{ITER} and distributed to parallel workers along with \Rcode{FUN}. Intended for iteration though an undefined number of data chunks (i.e., records in a file). \item{\Rcode{bpvec(X, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to subsets of \Rcode{X}. \Rcode{bpvec} invokes function \Rcode{FUN} as many times as there are cores or cluster nodes, with \Rcode{FUN} receiving a subset (typically more than 1 element, in contrast to \Rcode{bplapply}) of \Rcode{X}. \item{\Rcode{bpaggregate(x, data, FUN, ...)}: } Use the formula in \Rcode{x} to aggregate \Rcode{data} using \Rcode{FUN}. \end{description} \subsubsection{Parallel evaluation environment} These functions query and control the state of the parallel evaluation environment. \begin{description} \item{\Rcode{bpisup(x)}: } Query a \Rcode{BiocParallelParam} back-end \Rcode{x} for its status. \item{\Rcode{bpworkers}: } Query a \Rcode{BiocParallelParam} back-end for the number of workers available for parallel evaluation. \item{\Rcode{bptasks}: } Divides a job (e.g., single call to *lapply function) into tasks. Applicable to \Rcode{MulticoreParam} only; \Rcode{DoparParam} and \Rcode{BatchJobsParam} have their own approach to dividing a job among workers. \item{\Rcode{bpstart(x)}: } Start a parallel back end specified by \Rcode{BiocParallelParam} \Rcode{x}, if possible. \item{\Rcode{bpstop(x)}: } Stop a parallel back end specified by \Rcode{BiocParallelParam} \Rcode{x}. \end{description} \subsubsection{Error handling and logging} Logging and advanced error recovery is available in \Rcode{BiocParallel} 1.1.25 and later. For a more details see the vignette titled "Error Handling and Logging": <>= browseVignettes("BiocParallel") @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Use cases} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Sample data are BAM files from a transcription profiling experiment available in the \Rpackage{RNAseqData.HNRNPC.bam.chr14} package. <>= library(RNAseqData.HNRNPC.bam.chr14) fls <- RNAseqData.HNRNPC.bam.chr14_BAMFILES @ \subsection{Single machine} \subsubsection{Multi-core} There are substantial benefits, such as shared memory, to be had using multiple cores on a single machine. On a single non-Windows machine the recommended approach is multi-core, or forked processes. This example counts overlaps between BAM files and a defined set of ranges. First create a GRanges with regions of interest (in practice this could be large). <>= library(GenomicAlignments) ## for GenomicRanges and readGAlignments() gr <- GRanges("chr14", IRanges((1000:3999)*5000, width=1000)) @ A \Rclass{ScanBamParam} defines regions to extract from the files. <>= param <- ScanBamParam(which=range(gr)) @ FUN counts overlaps between the ranges in `gr` and the files. <>= FUN <- function(fl, param) { gal <- readGAlignments(fl, param = param) sum(countOverlaps(gr, gal)) } @ All parameters necessary for running a job in a multi-core environment are specified in the \Rclass{MulticoreParam} instance. <>= MulticoreParam() @ The \BiocParallel{} functions, such as \Rfunction{bplapply}, use information in the \Rclass{MulticoreParam} to set up the appropriate back-end and pass relevant arguments to low-level functions. \begin{verbatim} > bplapply(fls[1:3], FUN, BPPARAM = MulticoreParam(), param = param) $ERR127306 [1] 1185 $ERR127307 [1] 1123 $ERR127308 [1] 1241 \end{verbatim} Shared memory environments eliminate the need to pass large data between workers or load common packages. Note that in this code the GRanges data was not passed to all workers in \Rcode{bplapply} and FUN did not need to load \Biocpkg{GenomicAlignments} for access to the \Rcode{readGAlignments} function. \subsubsection{Clusters} Both Windows and non-Windows machines can use the cluster approach to spawn processes. \BiocParallel{} back-end choices for clusters on a single machine are \Rclass{SnowParam} for configuring a Snow cluster or the \Rclass{DoparParam} for use with the \Rpackage{foreach} package. To re-run the counting example, FUN needs to modified such that `gr` is passed as a formal argument and required libraries are loaded on each worker. <>= FUN <- function(fl, param, gr) { library(GenomicAlignments) gal <- readGAlignments(fl, param = param) sum(countOverlaps(gr, gal)) } @ Define a 2-worker SOCK Snow cluster. <>= snow <- SnowParam(workers = 2, type = "SOCK") @ A call to \Rcode{bplapply} with the \Rclass{SnowParam} creates the cluster and distributes the work. <>= bplapply(fls[1:3], FUN, BPPARAM = snow, param = param, gr = gr) @ The FUN written for the cluster adds some overhead due to the passing of the GRanges and the loading of \Biocpkg{GenomicAlignments} on each worker. This approach, however, has the advantage that it works on most platforms and does not require a coding change when switching between windows and non-windows machines. \subsection{\emph{Ad hoc} cluster of multiple machines} We use the term \emph{ad hoc} cluster to define a group of machines that can communicate with each other and to which the user has password-less log-in access. This example uses a group of compute machines ("the rhinos") on the FHCRC network. \subsubsection{Sockets} On Linux and Mac OS X, a socket cluster is created across machines by supplying machine names as the \Rcode{workers} argument to a \Rclass{BiocParallelParam} instance instead of a number. Each name represents an \R{} process; repeat names indicate multiple workers on the same machine. Create a \Rclass{SnowParam} with 2 cpus from `rhino01` and 1 from `rhino02`. <>= hosts <- c("rhino01", "rhino01", "rhino02") param <- SnowParam(workers = hosts, type = "SOCK") @ Execute FUN 4 times across the workers. \begin{verbatim} > FUN <- function(i) system("hostname", intern=TRUE) > bplapply(1:4, FUN, BPPARAM = param) [[1]] [1] "rhino01" [[2]] [1] "rhino01" [[3]] [1] "rhino02" [[4]] [1] "rhino01" \end{verbatim} When creating a cluster across Windows machines \Rcode{workers} must be IP addresses (e.g., "140.107.218.57") instead of machine names. \subsubsection{MPI} An MPI cluster across machines is created with \emph{mpirun} or \emph{mpiexec} from the command line or a script. A list of machine names provided as the -hostfile argument defines the mpi universe. The hostfile requests 2 processors on 3 different machines. \begin{verbatim} rhino01 slots=2 rhino02 slots=2 rhino03 slots=2 \end{verbatim} From the command line, start a single interactive \R{} process on the current machine. \begin{verbatim} mpiexec --np 1 --hostfile hostfile R --vanilla \end{verbatim} Load \BiocParallel{} and create an MPI Snow cluster. The number of \Rcode{workers} in \Rclass{SnowParam} should match the number of slots requested in the hostfile. Using a smaller number of workers uses a subset of the slots. \begin{verbatim} > library(BiocParallel) > param <- SnowParam(workers = 6, type = "MPI") \end{verbatim} Execute FUN 6 times across the workers. \begin{verbatim} > FUN <- function(i) system("hostname", intern=TRUE) > bplapply(1:6, FUN, BPPARAM = param) bplapply(1:6, FUN, BPPARAM = param) 6 slaves are spawned successfully. 0 failed. [[1]] [1] "rhino01" [[2]] [1] "rhino02" [[3]] [1] "rhino02" [[4]] [1] "rhino03" [[5]] [1] "rhino03" [[6]] [1] "rhino01" \end{verbatim} Batch jobs can be launched with mpiexec and R CMD BATCH. Code to be executed is in `Rcode.R`. \begin{verbatim} mpiexec --hostfile hostfile R CMD BATCH Rcode.R \end{verbatim} \subsection{Clusters with schedulers} Computer clusters are far from standardized, so the following may require significant adaptation; it is written from experience here at FHCRC, where we have a large cluster managed via SLURM. Nodes on the cluster have shared disks and common system images, minimizing complexity about making data resources available to individual nodes. There are two simple models for use of the cluster, Cluster-centric and R-centric. \subsubsection{Cluster-centric} The idea is to use cluster management software to allocate resources, and then arrange for an \R{} script to be evaluated in the context of allocated resources. NOTE: Depending on your cluster configuration it may be necessary to add a line to the template file instructing workers to use the version of R on the master / head node. Otherwise the default R on the worker nodes will be used. For SLURM, we might request space for 4 tasks (with \verb+salloc+ or \verb+sbatch+), arrange to start the MPI environment (with \verb+orterun+) and on a single node in that universe run an \R{} script \verb+BiocParallel-MPI.R+. The command is \begin{verbatim} $ salloc -N 4 orterun -n 1 R -f BiocParallel-MPI.R \end{verbatim} The \R{} script might do the following, using MPI for parallel evaluation. Start by loading necessary packages and defining \Rcode{FUN} work to be done <>= library(BiocParallel) library(Rmpi) FUN <- function(i) system("hostname", intern=TRUE) @ %% Create a \Rclass{SnowParam} instance with the number of nodes equal to the size of the MPI universe minus 1 (let one node dispatch jobs to workers), and register this instance as the default <>= param <- SnowParam(mpi.universe.size() - 1, "MPI") register(param) @ %% Evaluate the work in parallel, process the results, clean up, and quit <>= xx <- bplapply(1:100, FUN) table(unlist(xx)) mpi.quit() @ %% The entire session is as follows: \begin{knitrout} \definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe} \begin{verbatim} $ salloc -N 4 orterun -n 1 R --vanilla -f BiocParallel-MPI.R salloc: Job is in held state, pending scheduler release salloc: Pending job allocation 6762292 salloc: job 6762292 queued and waiting for resources salloc: job 6762292 has been allocated resources salloc: Granted job allocation 6762292 ## ... > FUN <- function(i) system("hostname", intern=TRUE) > > library(BiocParallel) > library(Rmpi) > param <- SnowParam(mpi.universe.size() - 1, "MPI") > register(param) > xx <- bplapply(1:100, FUN) 4 slaves are spawned successfully. 0 failed. > table(unlist(xx)) gizmof13 gizmof71 gizmof86 gizmof88 25 25 25 25 > > mpi.quit() salloc: Relinquishing job allocation 6762292 salloc: Job allocation 6762292 has been revoked. \end{verbatim} \end{kframe} \end{knitrout} One advantage of this approach is that the responsibility for managing the cluster lies firmly with the cluster management software -- if one wants more nodes, or needs special resources, then adjust parameters to \verb+salloc+ (or \verb+sbatch+). Notice that workers are spawned within the \Rcode{bplapply} function; it might often make sense to more explicitly manage workers with \Rfunction{bpstart} and \Rfunction{bpstop}, e.g., <>= param <- bpstart(SnowParam(mpi.universe.size() - 1, "MPI")) register(param) xx <- bplapply(1:100, FUN) bpstop(param) mpi.quit() @ \subsubsection{R-centric} A more \R-centric approach might start an \R{} script on the head node, and use \Rpackage{BatchJobs} to submit jobs from within the \R{} session. One way of doing this is to create a file containing a template for the job submission step, e.g., for SLURM\footnote{see \url{https://github.com/tudo-r/BatchJobs/tree/master/examples/cfSLURM}} \begin{knitrout} \definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe} \begin{verbatim} #!/bin/bash ## ## file: slurm.tmpl ## Job Resource Interface Definition ## ## ntasks [integer(1)]: Number of required tasks. ## ncpus [integer(1)]: Number of required cpus per task. ## walltime [integer(1)]: Walltime for this job, in minutes. ## ## 'resources' is an argument provided to BatchJobsParam() #SBATCH --job-name=<%= job.name %> #SBATCH --output=<%= log.file %> #SBATCH --error=<%= log.file %> #SBATCH --ntasks=<%= resources$ntasks %> #SBATCH --cpus-per-task=<%= resources$ncpus %> #SBATCH --time=0:10:0 ## Run R: we merge R output with stdout from SLURM, which gets then ## logged via --output option R CMD BATCH --no-save --no-restore "<%= rscript %>" /dev/stdout \end{verbatim} \end{kframe} \end{knitrout} The \R{} script, run interactively or from the command line, might then look like <>= ## define work to be done FUN <- function(i) system("hostname", intern=TRUE) library(BiocParallel) library(BatchJobs) ## register SLURM cluster instructions from the template file funs <- makeClusterFunctionsSLURM("slurm.tmpl") param <- BatchJobsParam(4, resources=list(ncpus=1), cluster.functions=funs) register(param) ## do work xx <- bplapply(1:100, FUN) table(unlist(xx)) @ %% The code runs on the head node until \Rcode{bplapply}, where the \R{} script interacts with the SLURM scheduler to request a SLURM allocation, run jobs, and retrieve results. The argument \Rcode{4} to \Rcode{BatchJobsParam} specifies the number of workers to request from the scheduler; \Rcode{bplapply} divides the 100 jobs among the 4 workers. If \Rcode{BatchJobsParam} had been created without specifying any workers, then 100 jobs implied by the argument to \Rcode{bplapply} would be associated with 100 tasks submitted to the scheduler. Because cluster tasks are running in independent \R{} instances, and often on physically separate machines, a convenient `best practice' is to write \Rcode{FUN} in a `functional programming' manner, such that all data required for the function is passed in as arguments or (for large data) loaded implicitly or explicitly (e.g., via an \R{} library) from disk. \subsection{\Bioconductor{} Amazon Machine Image (AMI)} An AMI for running \Bioconductor{} in the Elastic Compute Cloud (EC2) is available at \url{http://www.bioconductor.org/help/bioconductor-cloud-ami/}. The documentation provides detailed instructions for setting up accounts, launching instances and starting sessions via RStudio or SSH. Motivation for running jobs in the cloud may be access to additional CPUs and / or memory. Amazon Web Services (AWS) has a variety of instances ranging from general purpose to those optimized for compute, memory or I/O intensive jobs. See \url{http://aws.amazon.com/ec2/instance-types/} for a full listing of instances. Single or multiple instances can be requested when starting up the AMI. When a single instance is requested, interaction with the resource is the same as described in the `Single Machine` section above. Requesting multiple instances is essentially creating a cluster. To do this with the \Bioconductor{} AMI the StarCluster toolkit must be installed and a config file must be modified to specify the number and type of instances. Walk- through examples are provided in the \Bioconductor{} AMI web documentation \url{http://www.bioconductor.org/help/bioconductor-cloud-ami/}. This example uses a cluster of three m3.large instances each of which has 2 virtual CPUs. The name of the cluster in the config file is `smallcluster` and can be started with the `start` command: \begin{verbatim} starcluster start smallcluster \end{verbatim} List the cluster nodes: \begin{verbatim} ~ >starcluster listclusters StarCluster - (http://star.mit.edu/cluster) (v. 0.95.5) Software Tools for Academics and Researchers (STAR) Please submit bug reports to starcluster@mit.edu ----------------------------------------------- smallcluster (security group: @sc-smallcluster) ----------------------------------------------- Launch time: 2014-07-21 08:44:11 Uptime: 0 days, 00:09:30 Zone: us-east-1b Keypair: bioc-keypair-vobencha EBS volumes: N/A Cluster nodes: smallcluster-master running i-1f757234 ec2-54-91-126-83.compute-1.amazonaws.com smallcluster-node001 running i-1e757235 ec2-50-16-135-207.compute-1.amazonaws.com smallcluster-node002 running i-19757232 ec2-54-89-112-24.compute-1.amazonaws.com Total nodes: 3 \end{verbatim} Use the hostname for the master node to connect to the cluster via RStudio or SSH. The AMI cluster workers can communicate via SSH, SunGrid Engine (SGE) or MPI. For MPI, a \Robject{SnowParam} should be configured with \Rcode{type = MPI}. \begin{verbatim} > library(BiocParallel} > param <- SnowParam(workers=3, type = "MPI") \end{verbatim} Both SSH and SunGrid Engine require a \Robject{BatchJobsParam} but differ slightly in the set-up. For SSH, the nodes are registered as SSH workers. The `workers` argument to BatchJobsParam should be the number of nodes and `ncpus` the number of processors per node. \begin{verbatim} > library(BiocParallel} > library(BatchJobs) > funs <- makeClusterFunctionsSSH( + makeSSHWorker(nodename="smallcluster-master"), + makeSSHWorker(nodename="smallcluster-node001"), + makeSSHWorker(nodename="smallcluster-node002") > ) > param <- BatchJobsParam(workers=3, + resources=list(ncpus=2), + cluster.functions=funs) \end{verbatim} SunGrid Engine only needs the number of `workers` and `ncpus`. \begin{verbatim} > library(BiocParallel} > library(BatchJobs) > param <- BatchJobsParam(3, resources=list(ncpus=2)) \end{verbatim} This example uses 8 paired-end RNA-Seq BAM files, 1 per sequencing run, subset on chromosome 14 only. \begin{verbatim} > library(BiocParallel) > library(RNAseqData.HNRNPC.bam.chr14) > fls <- RNAseqData.HNRNPC.bam.chr14_BAMFILES \end{verbatim} Reads with more than 2 gaps in the CIGAR are isolated and \Rfunction{locateVariants} is used to identify where these multi-gap reads fall with respect to the UCSC hg19 known gene model. \begin{verbatim} > FUN <- function(file, ...) { + library(GenomicAlignments) + library(VariantAnnotation) + library(TxDb.Hsapiens.UCSC.hg19.knownGene) + txdb <- TxDb.Hsapiens.UCSC.hg19.knownGene + gal <- readGAlignmentPairs(file) + gal_with_gaps <- gal[njunc(gal) > 2L] + locateVariants(granges(gal_with_gaps), txdb, AllVariants()) > } \end{verbatim} Define a \Robject{BatchJobsParam} with 3 workers, 2 processors each. \begin{verbatim} > param <- BatchJobsParam(3, resources=(list(ncpus=2))) \end{verbatim} Execute in parallel over the 8 files. \begin{verbatim} > res <- bplapply(fls, FUN, BPPARAM=param) \end{verbatim} The return value is a list of GRanges, one for each file. The length of each \Robject{GRanges} will vary. \begin{verbatim} > elementLengths(res) ERR127306 ERR127307 ERR127308 ERR127309 ERR127302 ERR127303 ERR127304 ERR127305 5228 5202 5721 4326 4494 4909 4636 4538 \end{verbatim} Summarize the LOCATION and TXID output of \Rfunction{locateVariants} with \Rfunction{xtabs}. \begin{verbatim} > mdat <- lapply(res, function(x) mcols(x)[c("LOCATION", "TXID")]) > xtab <- xtabs(~ LOCATION + TXID, do.call(rbind, mdat)) \end{verbatim} The xtab object can be subset to isolate transcripts that meet a criteria. These are the top 5 transcripts hit by the multi-gap reads. \begin{verbatim} > xtab[,xtab["spliceSite", ] > 500] TXID LOCATION 51581 51582 53506 53507 53508 spliceSite 994 994 520 548 548 intron 0 0 0 0 0 fiveUTR 0 0 0 0 0 threeUTR 0 0 0 0 0 coding 0 0 0 0 0 intergenic 0 0 0 0 0 promoter 0 0 0 0 0 \end{verbatim} Extract the transcripts with multi-gap reads in promoter regions: \begin{verbatim} > xtab[,xtab["promoter", ] > 0] TXID LOCATION 51495 52270 52272 52273 52528 52538 52540 52541 52716 spliceSite 152 0 1 1 52 0 0 0 46 intron 0 0 0 0 0 0 0 0 0 fiveUTR 0 0 0 0 0 0 0 0 0 threeUTR 0 0 0 0 0 0 0 0 0 coding 0 0 0 0 0 0 0 0 0 intergenic 0 0 0 0 0 0 0 0 0 promoter 38 31 314 314 54 3 3 3 7 \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Analyzing genomic data in \Bioconductor{}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% General strategies exist for handling large genomic data that are well suited to \R{} programs. A manuscript titled \emph{Scalable Genomics with \R{} and \Bioconductor{}} (\url{http://www.imstat.org/sts/future_papers.html}) by Michael Lawrence and Martin Morgan, reviews several of these approaches and demonstrate implementation with \Bioconductor{} packages. Problem areas include scalable processing, summarization and visualization. The techniques presented include restricting queries, compressing data, iterating, and parallel computing. Ideas are presented in an approachable fashion within a framework of common use cases. This is a benificial read for anyone anyone tackling genomics problems in \R{}. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{For developers} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Developers wishing to use \BiocParallel{} in their own packages should include \BiocParallel{} in the \texttt{DESCRIPTION} file \begin{verbatim} Imports: BiocParallel \end{verbatim} and import the functions they wish to use in the \texttt{NAMESPACE} file, e.g., \begin{verbatim} importFrom(BiocParallel, bplapply) \end{verbatim} Then invoke the desired function in the code, e.g., <>= system.time(x <- bplapply(1:3, function(i) { Sys.sleep(i); i })) unlist(x) @ %% This will use the back-end returned by \Rcode{bpparam()}, by default a \Rcode{MulticoreParam()} instance or the user's preferred back-end if they have used \Rcode{register()}. The \Rcode{MulticoreParam} back-end does not require any special configuration or set-up and is therefore the safest option for developers. Unfortunately, \Rcode{MulticoreParam} provides only serial evaluation on Windows. Developers should document that their function uses \BiocParallel{} functions on the man page, and should perhaps include in their function signature an argument \Rcode{BPPARAM=bpparam()}. Developers wishing to invoke back-ends other than \Rcode{MulticoreParam} need to take special care to ensure that required packages, data, and functions are available and loaded on the remote nodes. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{\Rcode{sessionInfo()}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <>= toLatex(sessionInfo()) @ \end{document} BiocParallel/inst/doc/Introduction_To_BiocParallel.pdf0000644000175100017510000054700612607610201024103 0ustar00biocbuildbiocbuild%PDF-1.5 %ÐÔÅØ 136 0 obj << /Length 1917 /Filter /FlateDecode >> stream xÚíZKsÛ6¾ûWðHÍ„0ñÚK]O’:S§Žãö’äÀP”ĆU¤ìI~}R*îL$yÒØ[|€Àb¿Ý»ÀÆÁ4ˆƒ—'ñW~½99}E€%"˜³àfŒ‘Ð2B#JTp3Þ…U»¨Gáx™¶y]"ŠiØÖ£7¯Nbk†I#s%áWŠXÊ`ƒ|åÕõK3°\ÇQ…A.;䯹0½ÁÿÄü[$E‘nH?èD ±æœ˜N"L)ÒŠeH íúú+¯Ò¬jAhèåú’á"ûFöóºjAÕèùÍÉ?'Ñ8À`W4à0cè2HË“wâ` ï^Á0Z‹àζ,¦˜Áu¼=y³²Úo’ÛÚ8ˆ®‘€HÞIBнÊñ(Ò<îìœbgç#ÖÕ†½laÊ;+Å{(4ˆºÎ"&½­'Ê›ež~Q„ ›IF4 ¼Wrxi¨“æf–íÓ÷;;ëÒ0 piøÂ.½O×\¶˜$iv¯~è~tÅ×l(bR!¬Ás;ûŽ Ï‹¤i²fSœw c¢QÄãøGùaZ×n€¹”ìE+!à%l€?ÂŽè)]³ +ÂÆÒ–^%ÎôÍo¹½¤­šæˆIÒ}ú„óƒã ë&œ‘&_CºCk‘Móˆé}Ìcøó–±/'ˆÆ¬û ¯¦;úÄ.Õ½Ö³m4*V½6mÁÌ€¸Æÿ[âÙ…7;Þ&doâ™ý… ý–• ƒÕJü`üþý¹ÿ.äÅÁ]ô¸Û53^™H<±‘¿ [ j§aaòÖspÞgîÑmQ¸m—ÉÆæ “jì^&Ó)ðBÒfî¶žÛϳE²Ó $•ÿ8&ñÀ ­#~Žì6)–‰ÏQÍ}u›/êª4ùß–”TÑÇ꞉õx=_@neÒhÌ <¢0 žóŠÎ=Šz:õËà†(ýèBšEn+GލDŠ«Íd¹dðÏ&s‰iš Rœ­ŒK;ãb}Æõ¬¦ð¤ZÂ3 ¦æb–Wp™m«ŽhõƒØÄ÷dú³:¯ÐïWçËeÑæQê(f¶àOð ^y„…ƒÙüÊ!{^,M5ˆÅOkÂqc8y˜Œj§ëvé3[#yßÒ¯g>&˜¹;Ý‘éR÷ËMê,ÅGÖy—†æýÒ¤° sa)Ä#'mü¾Ç1ÒFfÅÖ2«·àO&šÏÚaZ-ðQćô€ÅWéÚåÕÅÀç4yä»–Hçd|D>§ýч_®-ûÞåíÌ1o“βñ²Ø±30'oÝß…ÉñâlÚsµ‡7²©UVµ‹ÜæYÛú”U}gÈÆCP;r¾^ƒs€¥IõŸð:®ëÒÃsg±ÿ ´]± `ue ÜÞõ®Ó*„è£í³2ùÒm³^º°ÚqþE™L}¸m޾Î./ºÓ¯ÍÕÿñ14;ÂN–ˆêw꤃†»º³*)>q›¬àÄÓ¬ªKðo¸á8i÷ØV5­×gtV`*N»fJIâ}6ö ­o+ 'ì SâµòŒ³Û¬0ç#ðh50%‘à«B¹_í‹ïmC.¹ë,–!Íz¿i²¦ÉëꢚÔëg¼kgùP1IÄø 2ʱú)PX¬úº&Œã{ ›v•haÆ‘TßR¡åê ù°Ö ƒ^Iìéõ²ÌõÒˆZ„É|îN@& ‘̬CÝ+ËC™¿¹Mò"ùhóx-É')ûn¾y ¯Óºœ/[gùÐ ¯vq Ð&=˜×;O""ðZñ…éËÔBÙ1ίÏ^ûG#Eí~sc¤ÿäþ•gwîjMVÎòéÌKíOþüëÒœÑû¹ÚÓh<·•_F=‘‘ìSDÕV*ÝÍ[Ðy ß›žëÛ|œ5®Á²É&KߨЂÃÈ]gs5˲t Í»¯œ@p1O\’î§I›MݦkþÅž»¡ýʹ8%á¬mç?ž¦‹¤B0s`Ôn&gi‹|õåéÝ.øxzk5 Ú?µJÚŠs~ƒY^š>ï4…fmY âWpšËÚÂÙŽì`̤ùäî¸æÊiD4îIš›Ã]sÕán®‚ªÍ'Ÿý›jÕDvMʺ3xûf²=¬›:UÜ×4•éî¾Â#ðXÎu÷ųÃÉ"€aû~¯Ëy~¯)Æ#E_UewÓNù÷HÃ(ŠWҬ¤¾ý.:Õc…·é”jÕÓ)Ö@ÙŒötji”È€#-¥“¸”¦âRoÖ³:ˆZ+Z†…b‡ˆØÊe§”¶t‹ñ4©~™ÌÒEjüNÃýf ³õ»3’PkŠÞ¨š]éì_|§  endstream endobj 164 0 obj << /Length 2763 /Filter /FlateDecode >> stream xÚíZKsÛ8¾ûW°2s«,„ À—v/Én’J&›doÍa2U¡(HbB‘ v<¿~»ÑàS²×väl¼5[$~|ý5HÛZY¶õâèéÙÑãçܵBzŽg--×c^(,_zÌ–ÖÙÂú}ò2«Šüxê“EWIžO…“*?þãìÕ‘ÍìPrDz™k»¿¾gû¾UÀ Wt¾€U…ì­êyÌq$ˆ¤|šÐrñ»cøá¿"JS•Ò‚Fö‘àÒñ™´Ãfg0ö BNe(˜'„5’^H -s-ŸŠâõuâ Á|×k¤‹JСçÂc©:²Šî¶½­&FFÕБdË"*«Ô_ŠO]Nþ™*6O–õv *ó' Œ?)t«„ÇP¢Ñ.0'hu}JC²r›a+«ÙஈÔç›m]%ÙÊHRшJ-¨á"©ÖÝf£RÑød6.nMÐa¡ð¬)ç,t]ZÖ<Ž–dqZ—Æïä$_ÿ[«Ã9`JqÜfËÛúÕ D÷TüY;ìJ‘¤ë$6{ˆó¬Š’¬¤» §äƒÍ¥V4ž«7Y¶»<Øæx¡òFÎMVIlÜöúb"h]6[R"ˆÕÖËL sq,g®Û ÃÈqDÈ™/98Ž$¨ï „·'ó¨LbºÌçÇ|òIÁŸTÉ9XǵÃj˜Þ7á—ë²½’’$ŒÕ¿…èU¦mm.0òRõ5©pKj[F1ú^^¬UF;]¨sܺJó-@Ÿ¬hZT_@pe¦­Ì—Ù‚$÷ÑEô$Õ:ªhÌVoNS2—>süQôÐØÀ>¤#F°-ãJ4Ÿ‹Éo:â±SoQ:„þNêÁ~„€f!œè»Š+ç¼gø]Dkãïfâ°s§õ®|ÎRÎ=„ät¾Í=$T 5QÒh=DkXO“Ÿ' Ef‘°h160KàÈIuÈ ÀVª@Ï¡^œÁµJì™Ðï_?ÖÏJô 8]sç:#-šÛ(£‹9¹Í !I/›õT\SÞtòÒ¿$̪³$>’'Ežm =Ç ½ÉÙ^?°‡{¿‘`Zj£°4ž“¶™IÎ)·/5èÌ#âužÄfPdžÒ¥0 Ócüëus(Œ-T™×E¬L¯ŽSlOLC’ç:Ó(Ó1GÓ\ÒõÇB­Àn…­ä f[u´Y’ÍDŠÊRƒ„ÉF‘IU‘a{dýUmvKüïðy˜ @rÇÿ¶PLˆ6Ú–u”9˜”S‰ÇqÃaâ9€°9ùzÙiVÛg™§)¥Hò"ç*KTFn‚ŒÄà9¾Rï%>^E&ß‚½1|¤!ÑÖ€HÔ°2±³>ÑÂÍ Âh2±ñÚðˆ`¨,ب^𪅻^9^ÐáÕlOÔûó}÷VàÔ"h]HZ‘Vq­…•3EwZ³x±QÕÚ$&jÀØÇß¡ª°~Z2÷l×Öl[W'8ïh†œ¶yb’¬'™ðœa«*f0‡ ¥ !h¦ê£ ôâò`ó¬Þ .†´ZÃg¼ñ„zTQt !&kX0…UN̪@Ä44Ò]ïdgظ†×¹fNÐZS;AБ,â^¤íà2Õ*Žƒ`A×çùi—ÉŸÊ´å ã!º2ÛË9Z8ߦL×vMrtTàdÏTøoo¦Í•3¹ XÓˆžæžº¢› v·g&È×q‹>“ÐÛ«8Кl¸d®çý²oBÚ g¤_D£¡~Ù¾€~…p»ÐjÏn\›Tm8Ó¸Q‹¼^­›Hh|z˜3“y/nâu}6AÓäº] ¼8¦ª›Â7Q^ïðhÊ ãòÞ\Þ 82ÖÛZ¥k¨Râö3 Ó@×Óì_zž!Ó;µ;v  A†›(ƒ*vAsS_`GDM=¼IIË75:>X¶•vÈxWû=ªxý*Ÿ—×–®’Ù¢‹²© ƒÉ'¨‰c RÏii˽iáðкÁRpô–éÚÀnVBÌÑ\Zè.(ÐLæº_4ç? p£´Ü7î(’¤ÇºJg™·WcLð˜Ç[œ§’¢åÙ‡1«+ˆÑ!Ó NÑœ{;‘p:\&Ô ™®õ3 6vw¬×;*Ém 7Ë:Õ®—cƒ¡ƒ€ŠÃÉi½·VÔ¿ÄêàbBÐ2Çuá à‡t‚ ‚fèáu©Ê}© ”#ä­“Ãáí¦o$ØÜâÀq$Ͱ¡ð 2 “vÐê†l{òkè {¾>o]vvôå+ÛâÍQ6F» +Þýþ‡m- ï,†žu¡Gn,@ðvÔAj½?úµ5ö•ÇãÒÄj›HíªÏC… ÿÍŽ„®- vN“¦2;’ÀÆpýÈ@Ô¼Y)ÏðÌ„ü‹Ó¤³Íõ›œ7^W–c6Ôã/²4íùdíóžÀeaw «Ç¯“½yY3Ñ! 9‹®e ~´£ì6Ÿâ)~è…xßûÑ£w›o=zè9‚ù¶´Dè(è9ØîÚÀu s;.ónÊZ¢¯ÜR¨Ûmø>GûCP ?ÆäÑØq㩉‚Ñ›(àBGJAºÈ¸“Uñ¢ÿ¿Ûÿ#uVtí;­ÁCĉÄ4rØDó?ZWÕvöø1ú± žbõ¸qlvúè;ì‘ßi›´=óvƒöA¯Ÿ¼~\3Ý#^ì')6VÌw9™û5€úi¾ý¶W·P±Ù|ðjçGO .¾.ÜI Üeü¯¼  vÆ%Œ·¥É¼ˆŠËï-ýðXÑ õhspÖÞVª¬Ìñ¯9ÂîU•—m=ZÍ+ãöØ·üR*Sä}–y5<ìûÀ…üúèA„hÂßr|ÈÝÔѯ9p¡À5É󿹓EA/;q?jÓÁ6uwò÷éÝR¹ÇñÖÇ Ý&—Ûº5ZÇÿQ‰ ÄêÈÓØ×4vÔHk|ý^|dt¶† Ùîcž{%–ãC[›9ÝR‘×íÍgÉsg¨t¾˜Ó†{ÞÇW´èÉÝ"?Fa¶‹Áë6(8nìâLþ¯|S2.[ß\=Œ|=ulHI@y1m#G&ÌńۼjÆ7ñ¡ùüî0,ÛMu¯hîβ[š]ëñœ°ùœ!œÐwª  }¨8UÍ;â…ÙT÷5 ³ófZº—xž)…¡3~„´ŒèIÊÑâ¾ÒdUqI—ô9E0–¸$T°@¸}à‚o¦ñ€oçd “Có_%„ òlcÔžg~ؽsåp£õMï㉟~:Ö¸ýó¿èSÎBµGõ㯞š¡q•匮oöw}w2ß~ÊçY´Q³§ï^½}ú7š`¾½È‹Ïª(g^ÛREåçrfw÷ÉFåu5{™-Û¶Ó7/J¥³¶!)ëíìù“×ïŸý)Ò|Eãºù×…*×yº˜½|óümÛ I1{ód0¡·3a ˆó6{Vy1šx‹Ÿµ¨²œGÅD£÷ƒ{ݱ€ygŠ7ÕåVk<{úËÏ]3ÛÏï³üb×~ÞÕVßÿÀÿ©ÁÝØàïßþã—+ŒF°sÿ”ævOAû޽q endstream endobj 2 0 obj << /Type /ObjStm /N 100 /First 807 /Length 2443 /Filter /FlateDecode >> stream xÚÕZkoÛÊý®_1 YîûQu’:×5Ú¹@ÛÄš±ØH¤@QÎã×÷ EIÎe+ˆT\–—"wgÏœ™J‘$GF’'(Q¤$%C KÊáƒÛ1áCZÒŠ´5#­IûDšÇ£ñd<$2ɳD«4CÖ¡±ä Érf"¹dñœ¼±#«ÉCŠuäOS[ ±è&)à™31†F›¢G)F R”´yM ï_²D´@‹ÁJ¢ghñ/@#Ü€p´Æ÷ꪀ6B[))*´VŽ¢FË3@žò 3&`JȳЈ‰²-äYo(AžÅÍyz@#ÐçFE*yFÒ@+æQs?i™MîÀeÀÌÒ“ Uð©øQ£ž^Ðä:5RJ^–Ãt{ÐÅÀtÂLyÒüÈ‘•Ì…‚™1=+MÖ°@ddZ˜|à )ŒÌ ]0 †v’)€C8mØ3`P˜“*fË“óp!¥aä™6sO$ì z†,îåH±¿9Ë$À#„kø˜e6°(kp„Æ3  ™ 4 Ìb°¬§Qì&r5,É65ì1ì †}†^-fQìLÞÄÞ­c´ãì 7TÎ×\,YͶ‹p+åGGG”]PöªyÓPö’žÌË¢«šZ¨§ôË/£'ŠNë®m®ýݧ[»ëewMÿ\TÅGšwyÛmïm–½ ½—ô¼jŠ×y›O&å„g+ÛyQÞ1xñ~=~ôb’Ïçåüîߌ¹5 ãnÏËít z#AS[^Wsà}÷äÝÓª¾þ^"U5˜¨‹mèÖ‚×b5,êþî éB¸¤5‰“¦™Ï_è]›¶úZ^Q^ãs} ÈyWR3+Û|çY6è€o=Ky“O½*뛪mêiYw»È3y†þÞ¶MKcà›0‡ŒsÒ\_ãz»ÿØ¥K¿ÏK*òùüÚO¸  Hž”4Í‹qU—Áµ¯é/él1éªgEÓî4To†j8ꂽå!¬ë1šŽ¯hÜT,Ró¦<ýlƒþ0 ½Q€½ä¢)>–ÝNã6H€åìõéÀͪ»Y«JŸªnLób\^-&[UÿFÈírq÷‚žp­¶*v¯7ã5ß?r=låQÂö«¸©9âÁ/§ùW8øÙ’m:æ×%½{r|vúîévÿtKiŽŽë|òå+ûõuY7Óª «¼Ë¾™e» ¿äéX®Ê›rÂ+w¾}@X„51ÇÓúCÃáé»o±K:§ì¤ê.yÌÑÑ({óeVRö:޲ BqÝ͉³ ôeçå¼Y´fý–Õß:+¯ªüyó™ÞJÜðØ.CÒ—£ìUÛ,f4Lù¦Íëù,o˺øBÙ)uí³¼À“—åMU”篞c~L‹gKÙÇuÝ`ú·œ÷ôP9ÃX¶fhíк¡õC†6íRUÎ,–­ÚAžä©Ažä©Ažä©AžäéAžäéAžäéAžäéAžäÙAž^µƒ\³Òw)÷rôyz^FÙó¦½*Ûžwy™ýšf/ÞŠ@ýß%«èè­QQÈÈYc9„•D°¼XÒÝ.ï;HÍþQճ㣣~Žì¸w¦ì"ûýü”?OÆ]7ûk–½¿å´¢i¯³Y^|„·Ì³¶œ”ˆÃ}lÜM'ÙíÍPð§Ðâ.EÔcØQ/ç„GFê´’yEМN‘´C·cº?±Ù7©…´ ľ‘8 )ý@ô!€ØˆMŠ3Ò¤DBk“„¤{˜­@vš9±+éÍÌ.Ì­™©)jë—gζØaV–â=‚ëB ;2èÁNºvâç@ñÇH#¢åRšIƒA¾œÝÒAL¦‘1ÅÈ™ q­WJ°–¶™9A:ðêA1ÀVštŒ l7‚”zhú”Ry$B‰!z–v„t›9@3Ì<š öžSð°Íì!ö m°Zü°©:^üHŒ”¿w¿p¢¤Ð\"FäZ¼B~ï…áCE$\e·°—ÂSê~áçŽ"3HÃ/ñ°G9‡,¹€U¤~ü,R´y-Úg³¶ù/ä÷§‘Oåûì¦*?ͳ_«ëñë²ýдS.ñ¾h¦³EWÕ×÷D~„¿„uÃ/2’8_öJiõXt°QB¹•ÖGäÀþ§”ø0.Úb­ÀúX8¯›OYU_•Ÿ÷€:ààÀo¹Ô ¹¨9èóé¬Úh‡Ítùb§íÀ|ÿ"mÿ¨ûê3×¾÷qÊšÞ¬æ÷úHh5ÿdB¬øýFÎÙÀö¾°dºl…Ë%ü>áØ÷õ-ŸŽCÚ€·œ(û>“„Mx4ùÀŲ>&@š«R|D Öd !÷Hq’³mä¬CË#ÒDálê4½‘ÂáЮûš!¨BÃÇD±/ —8OƉ…¼6ÂÚÇ´X,†ÀI¨áâ×—N–NÐi¯KûyÞãßš÷ó½­ï$Eÿ³/pŸ"œIë~Cs*ŠhŸy+ÓðwþÚ:B”ã%zÕño‡šöÞÿ{¤ endstream endobj 177 0 obj << /Length 2483 /Filter /FlateDecode >> stream xÚí]sÛ¸ñÝ¿B“ëƒ<ሂ¤Û>$ç&׿’&¾¹‡43GS°ÄE*ü°âþúîbAŠddŸ-Gž¸“ñXØ/ì.à1©üÉÄëåbøíŠw?yèšütôüìèÇ—ÜŸD,ÒBOÎ.&¾f:’“@iæ©ÉÙ|òaú*¯Ëâx&Âé¼Iê´ÈgRÊi]<ûùÈc^¤¸€¹}Ï(í!ßÝ øñ¥T=¬Z3!,É"|žºäí1üÆøSÆYf2BèÖ>Z¸S^ÔÎ!ÝâîD˜,Âï^a¡¿l¾3ôéÙѧ#«ó&|âKu5l›r’¬Ž°Ý÷ó#%‹=)Íäâè_w^Ô]6lÙ/åö{J)øáxæ ú—÷¦Lãìm\Æ+¤.,yÆ9‹|=„K²¸ªN¨~Ý;„û?=_gÅâäå³¾?ý+<_×ËÒTË"›Ÿ¼úåå›?žÄu²<-Ë¢¬hÇÿÃï9„% ɸtK|Qäÿö¸Z4¥µQÑô ŹhJúzGEû˜šª"å‚P.[ÆÙ¦Ó«ŠÚš §ò=hµßkÒ:MšŒªÔ~'ÌL>§¯d¼s;'ÍT™ºNóukTr‡,WÆÍ_ÔÆM]/ÍÕ‘’滤#¶­#qã’ p:ËÞ­Ëâ"Í AíÐ=ê,î$3Oɶ`OƒºsŸñ(«;¶ò‡ÐöÃB ¼ô%þFš`Ç7Ù-<æNœV÷á)Vú¿lÿ ­ùÞ~8$nHk»9¨쨑p¼n2PÌ¢4 <äŽþ¾‚Û²|jŠÚ|³|¹ÃF–/!i›¢üÔշ)b:Ôèú:ƒ­M7õÌàíÿ_ß§ømiœ=\úÀ~/Î9)E;ÅE“÷¢…©À9¸,þÀé¬W›´^R-/vy‘­[ÿüíÛgïž½Þá H¨ÊÎA /š•Ék®X—V071(?µö|¤Þ"ÁÚ³GàQøÁwb·GᇜÉŒx½Î®¾YK ¹—Õ²’ƒýö&:yô¶ü)‹/ýåÑZóÓü2-‹œ,•R|Z­­é5IŠaNB­¡ªè3pŠÚ –>æGähZñó¢pÑ ~ÄùUŠ *­AÄJiiU—®–Q¦¦bdz@Ó³eê0šÏñj¹!` ]sL…˜AœL !Ùw‡÷ý›ÿØ»'YSA<ù̬ Æ•þÂÌjà¢ÖßÐÞVß®7´B7Ï1v½·C­£/íý¨Íj½Uù¿Í"Pþ*/6ß#„;mÅÒíÐQ‚E"º–#võÕÚ|»,á So,$ÈaÓÁ4õO"z;¬æ—ß=ÇÿsÏñA´¼¸^ÑmaÏá½µåpÐV¿ÖG×K>ð¯»å±ü#Uø5·O7ý n;9S\‰k@oÄ Gôµ)ø>Ô-÷ ìòkïÔŸp“iá""%™A{w Ûó<>Ì=ò[  "›É’f²$^™I>ÈdÝgêW90qB«FäKÉÁpŒ>|ô&sèûI'ÍÆB®&* ™æ˜¸Ê&ï1Œ¸eÉEâZñ=]z>3ÒQ˜qGãxYkªAZïLF¹'~‡‘ñù=)™ u/혠»üé¹Ýn]“™ƒ¦™Õ cF!w¤lžÌaIóªŽóCXsœý›Ql˜cà-Mi#rlÀÖ Ûb.㬉)½i¿·A<†ÎÜÑôEyÌ12Ç Âm¬¤9Ô8$r±ò.’ˆv×Ñ„ÂsS¢КóqâU0 ¬í¶· EÙì0¨V áxÕC›ñûĘÙé:R ͸ß%y‡ 4(c·³Á¬€]n:ªxåj‰{Bâ>ñ‚Ëmþ>0ïJµ4§rÀ œyÝÏE[>é©SÊES»¥íD_šÙ‚,JkË$`[¨üé[dµC²rfÈ€9QS„,âјîòËU³†I)‡C<®)×­¦m2VOÌÅ`ǯyúÙÝf¿Ž”»Q¿áóy ÛTîÎûsbÖõ.JÁBÝÉ—×\#v‚løª“µÍ2M–Ã\8.m° n‰¸p‹C5eã[þÅÂL€ö)í»S_v7øÁhÔ`Xëv1zE2–þ€ù²ƒ=!6¹Æ›Þ7ël‘c¶¨)xüµKž­*¶ëP?%ý7_ñþ%‚®è~÷/€wW83“Çç™U(ÎòÏ…»uÁŽ‘BAKß¶!ì<­`¢Ö–ÍAOt¶™A€‡èÈNQÄÉ’F´= Ï›uc/­,î2¥Ç&Øœ› 1,„ý‡C~UI™®ëj¤uyEOUè š-çæ¼YP·Ý(s³P’|͸‘Ô{ˆäŸ+–ì?isRéï$•­ª2Ì®ªé›ÜÙ2hŸîºE Aå¾V`Ï«LÕù7N‚r ±Æ’‚Í$ UR=€žù‘<ˆžÉ¨'~ôÙT$«P]!Ñm]Fáì™QQ§e6”1õâ¨Ì´3®ÖÍ”Ï4øöîòa/ã4CÔpr(ÝÔÍFe{牸‹ªîÔL{# Ä[¤îŒ$gJóifâʵÕeѪª ó´xû.ÍA4¨oPÒÿ:èÎüà) ÎOO^ `NöZ&É ‡·iµZZÎZÒsÙºZ[ë è6ÕK³CbGQÔm”"ÚºeÅùL‚·ÈA@·1 ¿[o[Ñ›ÁC=/§© ÀšÐËÁ"Ô2 Êʪ zy@'ðpI¿a\[( ¦p×CeìžìAwuʪ²Øœ÷…ÍÛ«n—7+·¼Ò#ÚÏ€äDÄÝÁmNEæSg®î®ÔÃ)*©¡6š ]4,²â<Î\§}×µËkñ8óÃN+W CFT;˜ |&¸Þ¾ô½îùßxNÛë¦\˜úÅŽCž´ž\ãPs/b¡ zh¸Û% ÒYyÓ´Ûk\Swê(cÅ»*S?uæ-„PÐ9ŽNAýs A¡c`'4Tê¦ÌÉØøíÎö^q&£ÎD­]xtr275Hí Üû ñQ¸5Ð3 aóó¸j“¹ÒS~Ó NsZžïÈ“.Òð]LŠ×†è·ƒS7¸^~E³>èŽè»"vfâÆ×ãøR #Wb…>^˜‘ïQ5çhlÆîÎ=+ùj›àø†}ûÊu}Ëó¢b½UžÑêÑÛ¾u©Z38x{²Pøíèw» Û—AC·ª-OÏŽþß÷íÁ endstream endobj 188 0 obj << /Length 2082 /Filter /FlateDecode >> stream xÚíkoã6ò{~…€° °æ‰¢ž¾ÅÍ.²wû¸l¾µ¬,Ñ6»²¤å¤ù÷7äPO;É:‰{Û¢l‘£!çÉ™áȱV–c½99»:ùûkê[1‰7°®–– fVèÄñ¬«ÌúÙ¾(šº<¹‘mÓF”ÅéŒ1f7åé®Þž8ĉ=êZñ? áNZ5P¸ãÕå Ê¼Õ ®ëKšà™@réÇSøOÔ_ä9Ï‘ á}¸ç†Äsâvo„;X3$;óˆQl͘G¢ Æ¥¿84œPbl°JXKçSQÞ|Lêd£VLY ‰v˜s…¡HjàŒRû¾Ùd[UZâRËÚð Uܪ„WÏ®ò¤Y"ÒF½¡3Þêü:É·IßÏ6žB‰žd¨QÚn1ãE²È•Œ^äÛ©q-®¦¤u)%¾’üšÃæø"²EÚ žGÒ€’ÈñÛý/÷˜‚º oÐbˆB6I‘rùòt滨gE£,8R‡v½‡‹´ÜTۆנüYìPûê”Úk!ñ%<µ‰ÝÀ#ž;¶K(¡c˦NÄjÝñFÑA%fˆ€'¨i™¤k„,;f`Âãéô°Âi54@èH€ %ÓOŽï‘®a¦“ &éé Þé”^ÏN Õ–V/ɳñÎË$¹h—ûÜɉ•(€Ç[pâ€ÚbSå|à ts(ðÙ¬ŸÑm©ëêuN' ÍÊÍ}nªVøUIúEûøŠå&‘ý“€ÐÀx ¬†Õû[<º ¿†•Ëg”†$½ÇËðyBÀyËä äý…ãDî„—êEIóm¦½Lã™#¯ÕÁãä1'÷¹ãå…‰\ï>^`Ä‚$ž— Ó£8Œ!uF³àQø,iÒõÛr!ï Å!&Š pä°¯ª*©ŠO]–ÉÐѬqÔFcuz&PËtͳmÞ ~ü(Í"ÇîQ¢´sVÔt¡BÒ-Žåv± Ƥ¡Æ³gp[µ J.Ð¥ðå§7çx ÈÆMÂG¸ÉOe•Ôw¹ˆïæL³µ+[_ò•赓˜e£ ®ÕmNq«ð}ô=e”¨5Êó†Ò˜’Àï²§‰« u;1ˆ}üDSävÙf"ÅîVòÁÁz6Æ#p>ã¡@#Θژ© ñÜM¿»Z¤Np²A9E®@ô…3d< B}l°¢z-õ)5,ˆSå¶ŠÙ»Ü7v‰Ë:Y±-2Ï·¬ÑCkp Ús`³Xͽ >ûüêä¿'JŽE-Ÿ‘n^(bVº9Qp¨8ˆ1,åBÁYskyò:Làccÿ;Üáÿ¥¹„Ìo.a>óA?æ&y-’Þúsú™ÏÔ?TÂu<ëgy¾ýýìQ4Bå€S"S`OåÓEúZë4á;ð£Ç¥3‰îòä;¶æt»¾ûîT[$Í)ç§û¬3N-¡~èÛ‹*/Wóׯþõéü¸rQ5ëšËu™gó‹÷¯?<°\ÆDÄ뛪äi :li1Ìû0p sÍÁµwÛª£um˜ÚôކW›Éöã–Ö­†x.} Ó0Ú5vuž~K¹¯‹2£±…S >…Tè;&alçBwK`¤{#ðl…_ØeYµ£¢{#Aßí96¤*S.÷º\䨒¹~a€m©>t«û6L²Ñµî“*o ívE+bך7M%y„…“ÏFàâ×"Ûª» \;ÉWæ“J³ÞH„m’¶ñ“áÁ,ÁG¥Oœâ¾Æï.nÇîúǦyð±Ä1AsZ–®KÐŽõõ‰Ž[™áØùVͰ=M˜ðPp0~Ö·LwÚl®ÛFj+O©•°îðV¥Õ Ýc5›.ÕÊ€µŸÁÒ//¦??°Y' Bš–d6] wè›z. %¸¶ Ýn)!ÚúšoùC®Ñ/DZnPˆö/”yJæ¢þ·fŸÁm3DUÚTBNLTlÚFeÆ— „><Èžc6QüôHŽÛ¤> úï+¢¸.±³oZÓý÷’¢ìÀð’Œ_d—òIç»ý~ôM_CÕ¦Ú;ã×ÞŸî¼3Òô‡ûÜé›îý¹œvÇÅÜß¾®†> ò¬¼ƒ¿*ï?Tå}Ø*ˆ\ÿnüv endstream endobj 193 0 obj << /Length 1375 /Filter /FlateDecode >> stream xÚí]oÛ6ðÝ¿BHÔjZ©/{H†$Hº%Y’aYôAÛZeÑ¥¤zݯßQ”lIvlÇ«¥HÔñxw¼#ïË:"ÔÔ4½þ£æwùº»èèLiÓ‡Nÿ›š‹\˰´‡¡fZÈr‰fS éT{µÇîe’ ~Ü3œn˜YÄ“ã!¤›ñ㧇«ŽŽt—bh›ºéØð¶-ݶóÕS @ÿœÐWËB†AA¤‚ái¤Ø·ÇðôäCxqÌbŰ”½%85lDu·¢a–½H+@̕ߵW½ ~1öÙCçsƒtº†5“ ´kš.ˆlkÁ¤#á¦N‘é6mdSCLv~{±T/ÙqaBVØ_wnJ—ïÞIe‚„=Œ‘kšshÏ4Ìî÷ ŸÝz›4°¬&V{i:PãÕ jdAfןþÅýÄ›°ÁéíÕÍéj­?qñ‰‰t`Í!™—~Júâ;š0žgƒËd8‡Ý]_¤Œ…ƒ9 Jóéàüä—û³ RÄ|¤ðôÇ‚¥c‡ƒËëó›9ÃH ®O6L3>½I΄à¢Ex*øH§¾'¶ pó8[ÏT)?O3&ÔGöuÊ*CÜüüñ£­58‘¯µà’É7/ÙRÝ–^Œ ݦ îõUþH e„I©D0gµÝ–«"0„KWz*Á²\$iéTÇLh7dCl« CÁ'­y8C ‡­™8J3ô ¼¥²l§íý\9Ø=„óÛ/¶MdÀ#&‘O×R¸mà: ‡™Ž»t˜v’»þœãÖŸ€ lþÔMþñÎ|öƒ]Üw.ñ¼‡ùnKpÁÖ†¢·Èr˜Èr~s÷ñ`ž·å^[~ø$ •‡ô”LÁqv—¢X¨ Q’f^0…:‹²±rÜ›‰ A®á,<÷(*v¿ìâ)F»xtÜ£”vÿ³dUB‘EçD+Ç¿)lDeÄx¸ûýìCÆ¥ø ›©A}W´ëY5 ø„5à ©¸¾†¸a`­/Å ì8ˆZoqC£º;Öò ÝwÜØ‰Ç¶»•U¡Ì쮸ŸÞ*îÆC^QdYÅ`¬p[@Å£Œ7{ÞJáÚ‰‰çŠxÓ•%|uƒÚÀ¬À*øÃžÍRl¥æ…¿ ÓÈ(qãìÂÆòOb”CÕ ²š1}UxÏsDɨLFx2ŒF¹ðT“J‚†Q,S ·¹û¾?†È×÷#øy‡}ßO{= éßõãÈžøÚŸ;š>Ë‚ÅW±µf@’ý86ÄÅEçñI×B˜¼*\—£Í Ô‰&óâcí¢“òÝVÃwÈ´1Ò‹ £Øå(澯àëBÈsð7áëÚȆr«ÁWéݽ/2¿ž ÉŒè+À…z–M0x6 —æh¤ŽÃ<)Z‹ie¬Ëæ<€}aϦªoâE1’õñ`3ZÆ·@‚„Id• O¶`Ö³+¬U+X‘¢oˤJÎ )—祃 è~>ªˆ¯Oö%†ð¢”¡™'¸Héöë@Q#¢Ï9›¯«Íýà”¹,ÉTb5›תn˜¢ª+!ª8ÙsÂú K’R‹T¦Öàž¨$}앹y™­³²Ý>á_ªZ%ã­ì½lÑv3ˆÍ 5å%Ǹ[;%‹„KÖ³VõðŠj¬cdt©€·mÓ·b@î…hÙC’ô{¨ªªîÃúaÿçžiäGü¤G͂騄6ûdtþ“ ÏzTëØ`ë[›¿• ¾5FW‚zct¹nÞù'7¬7›œkƒýKZ’K„Ú-Û f^Rãx ¾ÛOÛÿm5D¹!.š endstream endobj 199 0 obj << /Length 2624 /Filter /FlateDecode >> stream xÚíZmÛ6þ¾¿BÈ'ï!fI‘zËpH.Ù6A¤Ùí¡@[hYkëV–½ìfï×ß ‡z±¬]ÛÙ6(÷Å–)ŠÎ<óÌCÊœñH ×áÌã^Àwàó pÊ\Nßúøíwà¶óíÙ««³o.„çD,ò]ß¹ºv<Ÿù‘tå3®œ«¥óËìm^—ÅùÜ gË&®Ó"?ŸK)guqþÛÕ»3þE|s!Õ`Vßg®«À$3á«”¦‹?œÃ§ÆRgY’Ñ„Öö‘áÊ ˜âQ;†ÿ4ã„#‹<ÏÅ¡ç*’Ì—Ò™KÅB?¢$sÏçBp>»8—bÖäÆ7ÕŽO˜¿_wæ®b^ ºy™°3À™õ¹ä­ƒæÒ÷g¸Ú‹mš¯žcS0»Mbˆ4–é’%µé|IýõjU&+]'Ô^lÍãI©÷4rzkšG¦]­“  <5óCÍšÊÌ ÍiN-q±ÙÀf…ý}ݺí ¡ßf›%›$¯éA5Ó °iⵡ¢;[ƒ•¢ªÒEfç».ÎÝ`VÚ'³ŒXèøfžäËŠÏ=?DkG“S¿_¹Ç«ÄÞ«×vAë$Û¢+pÍ„ ZóV¯c5¤DÂVì9v‚ÊaRq憼ÿ¾Øfz»Íî©çnúq&£®'®#4ë€Á5~¡±f=аL~åBå)š6 jMó8k–É. »èí˜5›Ì º„_yL¨°í˜æ·Å " ©&Æ”@*®Ý,'KòU½6Ñ{ R~ÄÐCÒÅïÐ)ØJWwi½nãaB ϲ@y»1­€jLöaôUÓ 2<äP±ãÑÃ`Ž˜ÌZl7˜q†)„a°Öu€°´–-„;üÚ„•‡ð+Á7b¼ïCð•––À¿HeU[ª’¸È—-Õ1{N½lH*º1¡VniÙzÕ´qk—¥À÷s%Â|ý×1žÇ ´YÏùmDÒ+K‚!y{õæã)#¡HzÑ(TÜ(”%&k9-&;–•…ºŒ€zG\Ôî !ÃìGf)\Ãåˆ6A/ž*NåNÏ–OŽ1àQí÷pgEõ0yº|75aðªYT‰!CON(/` ÆŸVñÝ ê+>øs*"æûrªÜZ}€œ±ønt#—añßÓð¦ò[wÛ´ S˜´Ú-[Ãlvp=ÜÉì²Å“Q¢ƒ_+-!öðù8'JĈRûN,N¯/—µ9¬ï#¾ õ˜û®S¹h'z²ç~OA#…ÏB-i]T„á”ã§Nuñ(¼‹’`‚¹ÞÈÌ DT $¬”œ] N†fjê³)ºã"øµLj0³¢ôNDò¶FòÙmºÊ“š´3ø vm;>æIë¬MÎg&*}­ý®ÊPZ?{a#•ç8;_,ûÍøbüáïÁ—é½ß|rï7WgŸÎP1qG8P= 4¨MN¼9ÃfT"•<€³Lœë³O6é´åþ‘½TL 6üøùÔwÜøÑ¾EÞÝ9Ñ[dw”Aûb©,îªäŸ2Õ/†Ÿ]ßá'ô¤ 4ÿ¢9D„¤ð- ©çnÿl˜Ï¾ÂjÄWH‡“Æ~ú;nÛRÜ´Ï*z•°¢,ÓaPv¬+ ™Ý,´8ãð û[HÃ_~ãÎî½Ãe<ïLÏ£"¨ÿ5Hæ\bVú„!³…µçRãûh0E):€+98"ƒæW/  :€­¨ËuYl¨YÓW]꼊Ëtk·§ÐÇJ:ó±!ôK>oíî#µ/eT»ÃX€nk1RŠvÃT@ÔŽtö•ûãû—Uò _°ïÞ|ÿál¡7,^—BMÔ“¹}xô²;6{½jÅÎŸš… †rLÏ.H)ßû??CRÌ ,ƳtQêòþkðò#Hüb¢;Ú„Ñÿ7®³/+E‡=ßÚÌ‚ÍÉèßæ°[Í,¸õ_@Oo¿sù?XDú?jAheÄ> stream xÚí]sã¸í=¿Âs×»óD‰úr{IÚ$³×^²Íæ¦{;sŠLÛêÊ’O’7·ÿ¾É’ìÜ&Þ»ÉÜìŒC ‚ ‚XKX¡’öÀ®å>üõ=Ë÷Åš»»®/ެt.ŽNo޾;—î ¡g{ƒ›ÙÀõ„:_yÂRƒ›éàíðUVùhlÃé:®’<ÇVùèÝÍGÖ^ |wî¨Ö¬ž'l[KfÂÓ„¦‹_à7Ÿ"JSÒ„Ì{qeûBYaMÃÿ<æd‹òX…Žðg0v”¼&PB 9KiYÃ×i•Œã|äÈa¡Kk0¶•p}íÍB>еy™üQ®oË*ʪ$J ‡·F :Ó?[RUå1B Å ]òÀÓ™Ò÷R/sø8 œ!ƒk%ÌEÄCÖe’Í a‰ëZ¥Œ%ÍS=0ŒÓÌ0ªÆ\Fñ"É´•¯v"‚PRŠÐuIYžÿ“dS3Ï]Ij¶ÃP9Œ±±€PÆ.XÇBN¡ã|¹ÔÙÔ,z¢ÕÊðšGF@€’Ôäh«/ç˜:苆Ïèã=þIg}èÇaF7uYêR4ËðE›j& `ìoÑ’Äq¾Î*ÓóºH££ñ>TfÙfNQÏéÉ4·=ÕŒeSnП©ÑŠL3´J4ËŒE”͑ױg…Ãó¤(+æ¨ÐQ¥ —I]\\ú¸KªSÐs8÷ ²;6/É*ÐeC¤õ³åZIFÒ¤­ˆÀtļ_Iú@() x£ð‘’Ïae®|–å?æoƒÑÂÁ‘ ñ»õÇ`oƒ}vsôë‘X9pქô@¾”ƒxy„pׂSÚ0J–|êÁìèßfêq ~JlßA é¸þ†áö×ìPà l9Ï6¶3Mn‹LÒ>ÛŠöoƒÛþL˜•ðBgù2‰OÒdž…¨JT¨½&öüEnJx‹ $ïáµÖ/•¶lüҷߎƮ킉)¨Á ÖçAæ|cÎçô¢Ãºµ7û•[oûÆ5ÿÃ>/öa¸­D=˜Ù9³ø¿Ž÷šã¡šÊ³Ô視×2ÄE…¨`avADÿ›xQHõÍS/ãø[òêp[²÷¶àY‡ÒEåuk+ÞÒ< î5‡ñ/Øoþ­ÉS3ë„axÁË/%??µ@Ü=wïéO„IȵgŽ´ ·Üœª»d Ñܯäû¯õ0=V?÷v³OàÝ£t„„˜Ãxæäºw»Æ–S oâ(;–í«õ’ÆtÈz¡P(Tß0Êú¾U_¾MPÿVaO³"_ö.i|…yÁ¼ëÛ—lóÒá?ûXþ¡GáÞXÞõ}„|Û]E¬@/!¬ÇÞk:DHøpÃ?¼[$ñWjô¾3”¿8ÄvÌ‹çiûùVvþÓ%™Ú&Õö·•jÚ$Yú©¦N2­ÎaÖŒ;™¿„rO&‡ÃY¸gd×Uè‰ÐW}»îJXÞ†ÄG†múZͺô$~úŽI¾ðµ¸ ÛÌ1[gôlñ ú,}—‘Õ¬äÈVÝŸ›6›æ€“íìfÓ¢ô¥P½Œå!ŽÜ,}1*k&ú~´™oïPäÁÛÖ{Å)×_oÜûˆˆÑ@WuäsÈñ˜¶ ÎògÅ7,£6––Pà»vå9E±øOŒ4å×:=¡ñ‘RšÇWj3ﯿlÓ›­yš5o´Æ®³Œ²1j¥?ÿÍo 9É:ðeý~Ã9 ÖÙ‡¤È«qù˜ãÞrE±tœ`\?×”1<ÞÎÄ8~ ¦ÎÁ” Ô¯êuBÆ¿?!ã4N+ɰ< ÖÏ!èvKØÊëÝ¡-ð¼Œ*®p®ßQ P‡C¥ >ËR= v¿ ¢~3Ó¨,'ÔÞTß•á(«;¼]Á¹ÏÀŒLN_ÿpuú"p»ºË‹÷º('^©¢ò}9±6ßÉRçëjò*›5°ëË‹Rëé¤$åz59?ù×›³Op‘æsÂÛÐ_º\äétòêòüªâ4)&—'Ÿ XVùê*;+мè^ùH—·Q±ƒ5o‹à‚<RÚuYi~¹®>®4ïÆùÕõ?Y‰þßI›…þrui2ZŸS—æÚÂìæ¶ÁwQ¬à²ƒ+¸l?À .òmá{²«š­VéÇÞî4jrüL|]j¢d\Ñ´Œ¨~ÏöCã©°s·§ 1°§§ DÐŒÄלÅ%ac½ÚLkøÀÚ®UWåT*”˜ª$Dºâ÷cMNް˜!pÙQÍ&!µã@ž¹Ð©þµü6V­éBR—.Ä”*ÍÆ€®9èh6Ht6u³¹ý骿5'ØìÝNÊ·râ¼ãððü§Kn¾~}rå]­˜¿kÔjë|ܺŒî½"ôìŸÎ®¯¥í;–·«÷­|G4¤ ÜŽQ(eo¸ÿ‰á¶ÓÞì2<›Ñ¶’;¨–*„oÚ5šÆMùÞG‚µ¢µ’!ˆ“b¹ Ám—C®vs9y` IT]Ò €°A«©A#„iTEÔq_½žK_íâÁ¢¤Ž¦ºé毫ÍR²zîØ ‹¨\Ï ýáe^í¬•¬ê·kQÄ ¹¨Z1Wë꺃›â>øàå@Ë018Ë™,ÊÁÈ) l\*Ã4Ñ9´w/•øÙ6dvà£ÿKæÂÅ[Öˆtº*å¶‘ïdÚã”÷°áÓ" 9'àNÍ•kÉ aètu;î'?îñ šÍ*g›âS°W±©NÕeÇXµo†?ôkB;Ò/½‰)|ßë»#ñ«¥m+ZiÇŽílª¥m®–þ;å#ê¤Os¬DU`²;õÁ0‚­êaî¬6}ÌD!?©ê7l4qŽÚ*&Vüä­ÌИˆ»Œ2º®alìOS#üe4QY¾°,ûóâç«Q箃Už„N¿§Ñ‹<‰©è;liª j)qÕƒSQ2|nêÁƒºœ:êB÷í˜C &AÐT*d´•íx6pWÈA–«ÂíãÓÅy†÷óùºà²væ0 ú>²öbx-­UîŽ$Ä"Áæÿ#çlE‹Yt8;™uáììdÖh"NjJ¯iOÄ ¡ì[ÿ> stream xÚíËrâ8ðÎW¸f.P4~ÉÆ©ÝCÈ„Tv33y0{ÉÌAØ‚x16‘MHþ~[–dçláI²[©²ÕrKÝêw‹èȲ±¦éÕ›¬ÂòuqÜÒ5ø¤·úÃÖ§5yŽéhñ†äx–æÚÒmmhWí“8cI§köÚÁÂÏÂ$ît-ËjgIççð–ŽtÏ6LØë¸çÂÛut×Äÿ |Xv…ªã Ó´¥œ`?äü³< 0E4%ï5ÆmÓE¶î©=z’¹¤›y®¼rì‡Óc [7-¸Ó5CÃrAº¼­^Oóg->uaÏÔøê£Ú¸u¾1S›xרÕg[}^H#´¬GŒP‡7È'Wèàû×­T r[üé9µ6xÚU›¸ý[w+¨ @—oˆ{µ6WÒ/báEÛPZW¦ °:Ö·£aqž‡;, ÜÚ¤ 1Žv}н!WÉœ02{'™°ÌÊà4 üV#¸á˜È("øx+.\Ë}è«õI‘<ªÑ¢k`9®y ¢pÄ»oÂËŽiœÌBÿ 'ñŒÆYªd´;Âúêa'$zµÁq]­J*Œ’à¸eúGï&Êä„~ï”ô¶6ŵÕV3Åt1{µ™m}SlûÉ"ξÝR‘y#F8a{BmàË\i;!µÞ5tdCÍ"”éȸÒ@½MßR«ýÁM ñV#çú3ý¡vLEŸBøËn›Ý%o$’¼›˜ò'eâËå·Ã?êeœ^Šy?Z¤eè-t†,çA'a`düßHX aWƧ8Y¾—\ öº> stream xÚíX[sÚ8~çWxÚ—0“¨ÆWœ}jÒ$ÃNv¦!L·3í>[-¶äH"$ûë÷K¶É…`–n÷aÀúdé;wé€\Ï·,»ýé&ÖñU϶à•uÕ;›ô>\|+BQàÖdfù "× ½Ùž5I¬oG#¦ïŸ8ãd+ÊYÿÄuÝ#ÅûL~íÙÈŽ¼ܾíCx††•ð—_.]¯%5ãx ÒZà­ÄÅŸûðË/³Œd•@­ûÅ='DžŽH+×É+@•¸õX¯~>ÝyõŤw×€v¶5°|…àÝÐFà °â¼WNû¶‡üȱp½3t-A¬Y靈R] ^‡ßu_¿=DvèT®|ÿ¾â;þÑ5Ç ei¹[RA’ 8^à”œVH*¬¤WÌ: Päû{RƘ¥Dnp{r]Æs2b3þizåÖ„4~AÅ}o—yŽý‹$4'L„JjŠ%ÙÆõ;ÉbðO ¸Í¾˜³²î¹xeó+¡qØþ…¦Œ(ÞY³•”U€–ÇJÅüXÍäXÍ8û¥‚÷”¬ªÑŠªùkª¯å|·þTð•$µÄï¶oÃgP¾BÍDSEž›w¬“—7E.ÂRÆ;íÚwF˜æÁLbžkGDûâO±H럨ÿA:H%`éa*ëë²%Aºq%Îç™<”¡1”)¤U|Â7WQ·à|T ÇóZÈ´Á.´“91y–e|UóóéŸlXSbra › žoê"_v³l]q¶”Pº‹"{Ôéßžº>Ûœ<S7g.îqvs¼‹ 8¹P›»ÃÅæÄm‘Q³&Ç r^M×¾Öšn“«ÎqË À×Oðø ¾mcYê0b ‰<ÞzHJÅ ­a'ßï›k;ÔÄ¿”o&ëO»¥ý+çšt2ðµ¼y#ݪeµâo%X¯ÏºÝÌÿŸ?*‚/Çë'G§lÆ÷ Ïèf\¡‰=(<ýÉgFÙkîÑŠ^Ò¬¹.)3&5ið™KZvcŽ ô…¤îæ?-áD¡E5;!¸¤¤ÙæD,Q‚F3­Ù'Ñ=iuœñ´Ñ&æYÙJ Žâ&í“–Û„¨ ½¥ÞéqJL¤‚­¡Y 9T3X¢%“P8µÉÙu–ª¹¬s§UÐàÇs3nÔá"i]ÎP›fœã‡Ö~5¤ìj„­ ³…¶Ü ?Úî–8Q Í jΨŒl—®ÚDKÖ$Œï–¤•ªëŽAÿmñã~ó›¿Oºíº˜ôþGá™ endstream endobj 225 0 obj << /Length 2013 /Filter /FlateDecode >> stream xÚÝÙrÛ6ðÝ_Á:y g,† ARL™$µÓ´I“ÊN›73HHbÍ+<¢¸_ßvII´ìÆ®ìiû »‹½´-—{†a¯?ªù朓ç{¶¯Œç{OO÷3Ï­Ðw|ãtfx¾å‡®pß²¹qg拼©Šƒ‘36ã6j’"?¹®k6ÅÁûÓ÷lË9s·g{ãžoßþ xtìò5ª¾o9–4Á§ ’‹ÞÀ¿P•HS™"Aâ}À8w‹;A‡ƒÙÄÝÄØB5_{hèËË7†>:Ýû¸Ç€=Û`†çZˆ—³ÀrЈ²=µîÙÜòBÇpÂÐ;F%ÙÞ/7fê&ÖúwÝ-ú·Ç–8(Ë”,ÁcVèyýêÈs<óe!â$Ÿã¤’Û¤’1ÎJ‹¹|Œ³þ«Œš¢ª7°ù·ÄV7¢©ùN{1ù\Ö;Áõ\æE&_ä³âûéî&ÑYú\Ê*ÉdÞì1øíTÔò:õþ&Ó䃈 ݾ¨ÈUp)ª+¹‚=LJí¿&ó\6 HGcTHrœ$*v!æ \ÉDgé×8ý”È%Ž–I³¸–Îï6ó¦U±¬eOñwÛ³áÇÔ+ ќҡ¢¤‘—wHÆ+åß’BE[EcŸD»ß#<"'EÌ@rë!Y\ÂSžÏs‘­ðXW(kGæP7€îÆlßaôØ ®I-²¦(Òk9{x4™0'pmÿ:¨3öŒ½›K³'|!ǽ™‹l‡3Êžw—z®HãÀ›Ã¬À£Ôsº'â63ßþŒƒe•€çåj☳fN`Vø²éÀ£´­ÁÏq"â¸ÆQ­cÚY|’ÕBŠ×ã–ö©´¨u­MJoš Þ>§°Œdòxð:íìQM`óÎê%î»Ö¸+u0CŒ´jGøfC¿Ñ“╊òõu”Ç­pÜ#Å*Ï7¥ˆ8Zª: …}®†²‚ˆÇ=t”Ô"ÊRkl:Ä¥…Þ¡÷J¹^ Ì… ZTzküI@ÜžËn]48JšËäisÇcqGe*šY¡yÈ:ž”VÔ Æ¢RÒz^`Òѹ7|–bºB=8äØ˜¨P½°PÊG˜åBRY\C‰=ÐTo(0 ÅJ¢^&yŒª‰rë{ùˆÞŽé-‡Ü¥0ËÚúg–Ä 4‡Îå–ËÈX¸å¯Ì¶Í'Š?P¹¶á¬w,×÷µ?¨Å¬M›¤L%͈ËëŒM¹9»QýMKÙÖ$S² È*SÈN8'ú‚_àÔ;à† ¢®cAdë6¬N‚ÍŒ&KÈŠ<ßÔü¼*ÚWô‰áÙŸQtÖêš‘ ÍB•£tžµy‰¦³UbèQçVÜ,à˜Õ@ù7ËE-VÂÐæÊ I˃Ìt¬óгÔ@®ÎgÀâQ*kz•óQ’ãXD‘^g&x³ï…äÍê•ü,2­T5 ´,ðABQC ‹\™„¹¬lÚ´’’šé„b#¤çÄî$/j]‹"bª:þáÙäÙ¶œåWïMþ±SlX'؊븽OXŒ¼âD©òËùüËæ&FþZŽ3óe’·ŸÕЦ”k¯D„ƒ×'øæÝ!Î>j >@VE“aVI ´ÖàUìЊ¨*´ÖzMðfª$wAÈÛ²L/0QÁ”q—ªi‹ '™â qä¾cÙ¶Óyײ¨Î%¶z©Œ:È …b—?ou3‚d ’Ñ×÷=Ë÷Ý¿½/èæª>þ³-ÜŒ¡ qû ’äÐVæ‘$‘æ°KûFƒ•p£m]s¥Aò6›bZQÙ0€˜x¤=»BUó¢¬u&Õo9—ÃUûíwìL¶0 BóyŸ¦)ßâñÁ‘¡«á!×5W¢YW#V@\Î7Å™f-N­Ås…VQ„?…½þ&¨ Ôµ>ñZ¦ZµºäNÏ´…vö²ܱÅݰ;áIŽ)pM—[鯽\V‘Ö¡d]¶”bg• Íjô¡ ›}@¡Ôã˜]ë|°þ÷JÌe¤±á½’çƒÂÝû¸Wº{èõÿvýÿºÛ-Œ-Û ÑTP=Ö·R*Hf Qø§Õ ƒ5€3ÎtSõÍèV4œ†D†‹+*Ñ­ˆ|©@AZ*‰ßŠ Uæ…àÿc„Ü\Büûä“ûw}Ã;<…VÅÿî$Îþ=»[ƒ2²”Lþ¾™rùæÖº‰T‰É×'€1‘ÆZýx‡GÑrûo½t8¼ãsá½÷E)ïç`wN^?ûéߌ ¨‰¢v`­í?Lˆ*﯎û¯³îݳ§%™¤šÓ?dÔ`㪾"Âõ‡uf¢š×ëRF+Ȭ&0c+|°J7ú¡Ý€¬©ésFœàWWm¥bëu*ó¹ªxÈwt‹;øDPä)}éqÏ’JÝœ©¡L%¶^ø)$Mq4%Hhÿã{(|wtìZÌ%Á}–QÛuǪ—SÉj©yI²î§ë–7zš¥j96»k£é_ñ±Qj쌔¢¯±×Õ?kó¨û:“¬Ì¤¾ûÉô‰ŠKú›ÍaÿIKVù·§“·Gg ­ˆMËT¨Î^¡aùaÏž¾yódòäÕÁzÔñ*¼ggìýû­‡‡.ä/*‡¨ô endstream endobj 232 0 obj << /Length 1249 /Filter /FlateDecode >> stream xÚÅWYoã6~ϯ0ü$+ºŠ¦@$‹-º…‘:؇l™Ž…ÕUñæßwÈ!ËQÒ ôż†3Ão>~”½ÙÝÌ›}::[ýrAýYL″Õfæ$ˆù,ñÄlµž];ŸË®©.‹œuŸvYU.\ιÓU‹›ÕGñbAÙÌ#¾çG!´aà…á¬Ï,]~‚¨\ìE ˜€”tÀ³ Ã¥Ëü&ê§Iò\æÐä~¸`ŒZ”s¾gìŠ("Og.$ bÜsMo®Ï|gÞl³²òè\ù€ý.ã$¦ÆèšÝÜØyJIìû¯Ú=lç¯ÛΦƒ‹·?€Hí I Hè=_·R•2 ´‘I—•wjà8™÷m'3—6UÛâÂ׬\Wª(;3Q$)•-†Íh@bÁmUvUó]6íDnÂ#"P@hô} L‰ƒÏKl“õ‚:ë"ºÔie‹9~ó|O’;r¼p…ç9s >©F#â‡sX¦¸=+á`àCïª6O—ù!^8†Õœ _&…lÉÇHOÇåàŒpfÊ!# D!÷/ËÏ/q]‘BÀ™L–§ªŒ^¬wA'Ú+Ì¥ƒþP)=ÊL«Ë/׸w—u[SÈýJãƆÕYÓ—uT'Ї:jš4Sî(¡‘Øó&ÈtÊ”zÆnÓT¦Üm¥9ª¢@UIiòϱ^`c‚#Ø´i“Õ‚ðÀ9Ź<Ó\ƒ­@…}” /˜Dq0æ…¦²¢^?›ê>[ka&1+˜#Ž»­Úî›GEn˜„’vײìÐDZª£(³RŽ=pÚõevH’Aö.ôÊšã §‘ÿô²íŒW6J\߯Ô\%„ÌØY¡ç&Å \rÙ˜œù@&2¢ê3Š{ªQ)Ô¬6¯ºö„MéšÑÂWÚñ'v/+à…>®æp@;øŧc4h;,\g«¨\VBï,ÞY ·/·ò^NpŸy‰É9‘'õˆ¨µ¨1M|e;*Ï~Ú}ó¤8¯ªËh êëÁ±—RCêºe=j'É6™:²G—Öè>)³›¾ÔÿI~âé'ख़+þ¨÷znÐÐâ\ž¬.¯ÎÿóÛ:Oê:×¥¢¿Z4!Ó;[.O/O¿Œ ­MA&ýþt‡}ð’{ijŸ4¦ÖmìJu«ô OÕ˱éóüà”gL@µ×dä=°ÿ6è»þê¼ñû?ÿ(ñg‚ûïÚnwoÁíÉM8_ý Kçæ endstream endobj 237 0 obj << /Length 2568 /Filter /FlateDecode >> stream xÚÝÙrÛFò]_röª2'¸ïf«bÅv’Z;^Z~ÚlUFäPœh’ì¯ßîé€ [’#­åbé9ú>fžsêx΋ƒ§Çß?÷c'y$Îñʉ‘ä¡“F‰ð"çxéüÇý¥lëêpdî²[´º*gaºmuøßã_<áå‘8žˆ½8Ká™&^š:5`¸¢kþ°†ÑÖ$AIáSMè¯á_â_-‹B„iˆ‚Ô®áƒÁÎ,Ê2‘ľ3 #‘%9c’íbMìüY4ø¹ Éž*5 Ù•‹µZRë\·k½Ùju¡–%÷Ï©óèåOÔ~úãaºÇG? j±@U/Ë1ÆÈÅe»ÖbÔ ?Kêýc¾à5}œá»bþ‡0½“TîIÊsf~*r€ô ÄAìÎfëªiWºPÔ¶æô0\áËÓ#îZTK%æ_f¾ãû"ã€ÉU… dC&¼“¾ç¹GE×´ªFy$)j°¦Fƒê ìü„©ÀÊA$â”W>ª6[s}8‹’Ø] (‹ÖlðaÙ¡ÂF⮨E=«ºÚ¸iÁ¨k©?ªåcç™ÛTÔÝ®Ï¨Š¢: úò”@3í ¬ÕûN×<¸Ñ§¥þÝó#0Ì–úåRn[‰¾øw軚;4{^ë¶U%‹ô<Œæ€‰qu±%{«µ*Æêw­j6JÙäùÏGó£Çl÷¶;pÏ‘~;Ižñ›´Þb„pÊÐËB%øF–ò”,’¨ bζèuŽTܣ˦­±ú2ŒA'{1ªüÝ¡‰ác›lÔhõ3C ÔÈ€sn–£Á¹³àï ´V’®?¨„Ìwƒiõ¹aŒMyã»+°IÙíá¾D–ˆ *Æ9Èx™=‚—ƒt€ã.Љ‚ °=,xBòœEDZ-¦|ó˜Þ\mDÔ§ë–À˜UÃf+¥…ux¹Ú_.â`+1ãÈï^왊‘üo¿ ‚ (ë M~1áƒP ¥àaŒíòj Ë(òûÕNLy;±š/Â,°Ã€:Ÿ¹'s¶$dkf °1],ÖSä¾|ý ATy¦ëªä0÷ižg¡—ˆ(ɆÞPÕ`p]9E.ìIü¹£\b‹i³Zyj³š1˜” 툫gÌ^TÝ€™”ƒû‘^{"Xúy,ü8ûL°Œ3,'ÔžìG]Øð,^KÚãÌ@¤bjå<~ÔïoxqlÕK¿ûÐÍuöP1"ΣávàoTϳ%Ò¦à=#zXEQ?ýÁa¶â ÂuíG¥)Ñ‹ù´äÃ4¼”¦ü ÷cÊÀŠ@dÀ~h+ñÌTâè>†N ³ÐMö vÐíþžÔtsÒƒðŠ!1ÌÜ7{ý'6À좒œ  £O#)¥måÂÄ<,;i)º– “B‰³'Ü*ÈEÞ?ðªço_MÉ*ÞΣÎwñÇ®j" .+JcP«AwœÁÃÔi—ÁP£y€5ÇöÞÃŒ¾ ¾ñègÇïÐÛ<ÇwâP¤^ä„YÌ…Îbs€ð؃Z. Ð^àÔÊYüûÆ4݌߻†X‡qˆÿAÌØ1pÎ';óà“¨¤…p¾-ôI-Áîn£U|ÙÿïÇîÿÃH ÙÞ~(0!ü68¯Ëý¸ÒºG>ç›­¾5ׯåMzùñ}_çf83Áü³[áðßáÐ ©‘†Ž`;«®¤#Æ{ÐÔíp„Hs’“ƒw;}Lܱ‘Rø4äkU‰ŸãÙ@…Œ'¬} @´þ#<Ë,åF=ºkNß±e¥hØ0×wî'?Ü.¬d žÚÄIb›ZÇ@Bp<ûì«õ“;,®>z …rz>ªdìm¦oD÷»Â7%²öÖ*J¹™(þâ@ä^¿÷À“I§¿€…ï52»ÅPÙm¸ ¬ `޲h¸‡°E¦óI®ñI‹àöG5œÝwQ‰ ½X†›ï²ã…}‚`€(TËË”<}·Á3ÇMy ÂdT/5ìØ'.zl•;¨ñP»nú=ñÞN­Nµ=jFúw72½q¸]Üe,ÕÊœ~<€Ê9ÿÌ‚qå¤ÂKâ‡_:_7b\Y:‡a*ìÙòV²s}•5× rüõÂûLaC‰0q瘺mŠ1ˆýæ·ÓÈìŽó.ŸÙ|•…Ðõê9ÃÁ#H~™=ÚÍõ‰æ ×ı‡W ±¤žñ]ÓàJ2ºt µûjbÿäŽóûÖ@ø¢I5ãô]«²wÃ…’¼T·ï;ýÒ|§Âƒoô€ì‹³|%"HØÀ..¾•²-äv[|øjSü 6UªuŸÜ9¥žw÷IÖè÷ùÛW÷—¨ìu­ùR娻²€Œ{œ\\ –À¢øÖééžjáÿ{5qls¾*[m¿™j $è¿yµ[~»ÉßÝ6O@æO#‘@ï(ñûq&âôÁ§þ«:è”õW^oÏÎd©‹B^ç¶{슄ú Mùµ:¡´,:ÖåoU±dR[(p9Èoí·M¦Ã~ìJÍZAmڨϢ|½¿ÆŸ¿Á@a;I“ ȃ©t«õ Ø ¦ñ¾SbúMyŒ/çR·=âUÕ“m?€üáÓ¨Ö’%w¢T9àÅp} /jYöÓn$^í»ïhˆbªûŸ}ª>´•ßàÖ £']îÝ» pwwñøpïôÿ<=·áö2² Ý1|zÕ½ìtïÍÚ¿å¼b4 øìÏ™p‰Kç4}îàr> stream xÚÝk“Û¶ñûý öÜÌH3D|^ãÎä’8µ§vœóyúÁñˆ‚$Ø|(|Ü#ýó]KJÔé^ru•;š!p±Ø‹]¹„{¾ã¸ë¯rÞïãëì—#×OÎ/G§çGã—Ôwb,pÎgŽ æNèÄõœó©óqð*¯Ëb8bÑ`Ú$µ*òáˆs>¨‹á§ó×G.qc2Àí»~Â; Ü0´‹oÿŒ_romÕ Œy@’YðTÙå’wCx ý(EšÊÔ.ˆ´oî1F<¶8(Gê%ÀëþÚË@ß~4ôÏçGQ Ïu¨ãs‚xý¤íN’éqßõˆ3‡2—x „R:³£ßMÕc86ÀùpCÂlŽ ô·7ô¬QoZÐ~;7ÙR‘?eظ!V­`{ɉp&S•ÃŒj¡ò¹ú\LPØNØM¬ûA0³{q¾¾é,êt"%~/åEñÕµWK¾Å-hMF†–ükÆÆBo ¦"¯ÅÜtù ˜Ùáz¡*Xé`9dá ,D²°`íÇz!ê¶…JY-×*òJMTªjí·®-Ô¬0NÌv2‘‹¹Qž‡¼A’6U-&U—úÝ¥^™¥×úRÕ‹Þ½yÜâ–™Ìë­*-f†ªKô«À›´Îüßö¥fúí8n!óº²ã™å?æx*Èê¹( Jü(å´²MŒL”Hí«hÊ'fðTÓÏÀŽm/Ñõg°Õúɳá·xØNîºñZ°ž=p×Ï8° cç|lí]Öyxs‘ÍÁÕ*k{cobE»gvïóâòÝκ90ftø×äê<$•úS>SmœùèLÿôwó[×nD¾Cjÿ G;ú˜ÍÁÕ"tß’ÙÍÓX߀½UYÈþЊƒã7ï^?~é®ú}¸ánDž¥œ+¥>ñ·¼3‡^lƒC¸ÿßœ«èð ½çÃýÂà¿åÅ'{§Ôu÷ï¿6Ó3O¶ÿWÑòaïþ]ùk“4‡|8?Aòeçd0í§lxH|Ö¦ ' î’°Ag£Dæu©’»2Á:å×–UóÜÀ\¾ºxÚ‹Ýzö™sBW™ã³-wº°.µÐ‘`Ђ§4xmŽÈ,„—chBDm>bWä[§\瀣»V§.aaG_•”j‰M.ÞÅ$’n,¤ÐI—­’3úêÆæNk@šJn%.~qw»=ÕɎ׍ږ"‰ëu䘋½æµ™d Éú¬'šÖlHA6™íty ¤ø& xFx°‘T½U&~'YUªÈÉpäqÏ&ùÌ‚]ýàå5³Â™&ÿf QH«}³Ž£¤”¢–vLØ!ŒKyRäµP9"ê@j™ÁùÙΛu)1¸Õ’IÇê#4Czk0r‰ú²hF}$ïÿùáìÍWU^XäpÉç‘UfD¨:œ7ím®ÃÎWP‘ÚÈW0ß#Œòo=aqk‚Gà9Öçžýeíoë©p§]å—þ‘2Á/S]šÞç%{#àÚp/?¼=Ø4 ¨î†Üè3Íý±Õme÷`“|\—cI˜Ô ´-ìÆ ]C=EÊü)2¯Õ5\·jõ°JÆàxQTµŽÙ޳ ópËÂÈι½ï“ûÎ/ŸŸ}øù`÷Éþã¤þ)m¡ˆ‘À5ÿ¾üøÉu¦ðéµÙ’‘si3ˆ”bây:+–:ïáÌ6'‹8¾ÂÐþs5",`Nè“(öÖò'Lÿ—Â¥&Å磱‰(oSVò+²8`›Ü÷‹º^V'ãñbîfB º×Í´ GDjcÁNõ¿pÚëØ¸.aÈü1Gê™Ð5¹±¼pé—Õ8™­e—vËÿì4 ”ó–5r endstream endobj 254 0 obj << /Length 3083 /Filter /FlateDecode >> stream xÚÝÙrÛFò]_ÁJV™#ƒƒÐGeg²w½’\~Øl•FàPœ‡Ž<ì·o÷tã EWt,Wì*aÐÓ3Ó÷1 +dN&îøQ]n¾óãäÇwS“~8;8|ë…“D$‘MΖ“0Q"'q 7˜œ-&ÿrÞMUNgþÜY´icÊb:“R:M9ý÷ÙO®p“ÀóaïÐ ç1<ãÈc:|÷pøV£S£Hø~$Ù0t\úq þ©T–éŒdÚ·|_~ÜíáLݣĻ%ø>zXìûàGc¿9;øåÀò܉7 ¥ˆA¼!ð=“Iš &u¼m Òiê öIgx ¦‰ Asœæ&ˆöÿ¦ÎÚ* ØÍ7/À‹·ß3¶,p Ñ,ÿ£˜`¶>>™«—°; }P¦„(¬°K¬Û@:#Ø7¯žv€DáG‘UŒ w 8è¥ÒuÙV©®÷ÍÍ_öleƒë櫵«‡kÅ)Òuû•jãÞá½D8Þ³‡x~(B¾•¹¬Ë.‘î]UX‰ì¿¢í䶯î^À±l¾ûJªÚEIÏ›²ºú‹ÐÛÛ?Jþ¿€Ê~½Îîþ™ÿIj;}œ·ÿi££½Sêºû¯R¬~ß~úû‹wݺØs‹øƒzDéÒ/U¼ÜÞ¢–ž¬©=Þ<í¾ÅÃðì‰8ôIãgxU ÃÐIñF0vüZa³nGö62 èR+­*øÒ’'Ú¢1öq+{‘/æ×]Ž×ö£ˆ²CG‘ëܬtÅ' ´ÿøn3„öÕºU';öõÀN’~ß:­Ìº¡M¹X¥MMݘf5e§ï§žóéd:óœ„T§+½h3¼‰±˜%+ýK«kÞW! j¼wËM/ã+)-ËHî©ÂÒçAAø4ø´w S±àyÝTF_ëî­n³¦ÓYÌY¡¸ÀÞê^¶¹.šJñcq²WJ°Cjsˆ{ý•1]Fok¸Âëg¾U¾×‘nmG"ÄxÊjX[ëÑ©ùÙõ`f(èðÊlm~Ax!”Kš¸AþÊ)È®ì+èª&±Ë(†Ê3Ú n é@&ƒž‚Àu–°ÖÞ›á‹Õ9¢ôþÓ.¦e Âø!Ö º÷zvæÚ,K< ? ó‰=UM •—ÅåZ@HÏ Ø«©• ª=ޤón¹KÇ®¥wòpý€ÔÜÞ$Vèæx8Ë_$Ü LDì'[E|¥U£Ñ>#ò¢²EOÊ5/ï 2†ª¸£ÙÔÛ&Gh𱇼„le„’.3ù:3Ýq¸ðŽÆä¶xÂØüij—Ë s`âÚ EõQ†4Ñf= –G"NÕ5^1›2aãL¤¾·)?â?ú¨úŠ]¡n/rÓÐô9ˆžäá£8$ìÆ˜Ëc‘{¤mª¶ÖCû«c|鎀¡²þÃHv Ö ±{.4kF}( 6Ì "…Œ#σy‡wתHµUuƒ5,è°rÙh>·äçzuW›âä½×zÍß«&;WéÊÃfÌqY\ëÂ0Řô!çá¦ÔÏYo L;kÚÚÐTcúŽÀ¦¦gcÕ º¬L£wE7Ñè ‚Û% –¢ ­í|Þ5Á*ST^‚Ãæ ›ï-WE¡+`ØOÀÁÚtÅôu±S5„b£™…jøŒ~¦B›Bø’\¦¬aY(1æ>pÖ`×°ÎJÓƒÏ » ¼ *¶ß± Ö4Õ‡ÓX=-€t2^Àæ4ÛºŠ&Kµè<Ázjk˜F›èÛñœ´§X]ŠK’yE+®bZ‹-}_Ä‘ÿÎ{Mgæ‚,Çþ½ë¨ø› ´0õ•xÞ÷\oB¶ë#¸)”zPZ@:’t SxLè¯ôÐð£2°^N¥k¥4÷×¹ú•<,v>ÿàKä¼Ë••?ÀQr¯?¼JÛ/”˜™‚×h5AâÀJ„îÈÄÚ…˜û2ŸûBF÷?Põ¼Å}5„s1ŠÃg“!ÃÙo2Uƒ/ô¸Ì×mÃ3ÇYÙ.Ž|¾9öIi8g &Ôµ2™íˆ,X5ÏP4í¸åªiÖG‡‡777âb‹‚—‡+­Ù× *ö’­Èµsõ :GŒõÀ Un7t+±Nˤ:Ñ ìÅ  à¦è&XfÚ8¢p@¿E,ŽC\ÂH Z7 ë’0op]ë,ÇÚÔq¹#Êàë°ºÖMC¹fÚ5Uš–ÐDØHî& ­KY£Ïv#yP ?{ ïŽiR×5}%ÅyöüÀ99mZ,©­Ÿl‘ÓÓ¿íÌ©ÊÆ\+–J2±”Ä£ô 3\ªÀÈFE˜¦´ €”L‡¹êJx¹°z`$Mc›ø†ä.L—tüñ#‘àœCz(ƒctN¯wSˆç`‘Œ‡ŸméuA/§ºº6_³ SÏóœÏ§å@3+Å6¡HŸ×¤£›Ž=—ëö 5Ú×J—½Š9\ö¥†g¹𺭨)m=ãr-äbÊêAåº1¹ù• ’2[ÜY[J®Ïvâ@ëìDB«{Û œw‡ÿèH…r¤6×z—(Pöç @búy¡íCƒÝM-”UÊuêvR#¿&¹rYVo»8ež±=s²[¶Xà,ÞŽ°ƒHî¨FšÙiû§€ŸYYÇ#iÅNͧYÓL´©]lk  2 qFªŠ±Ág¬-ç…†ˆ½W>ó²ˆÌV(ìè`ª˜œþ`´Ïï»tè*¦Ûèw¸Ã™¿î÷Ehà +Žk•ó¬âY™ieؽè0l ƒóN¾8Ë)ùœ¦jÍÕX`+v…Y^kÄÜ—Î ±e…† •Ø£`EA¡TÚÖ=;‡Ð5›¡ª;ð$µw´?ˆM1?Ü@<’â cKI‹’0š••@X”žüÂŽïE"îšÿ#VõÅ´­9ð4’*vÊuÜõ?–Êxeve‚ämÍ£>ã‹5¢Ìæ8|µÒëÇÔUÄ‘H¼`³¢ñFÃ6R¡ƒÃŒ›R:¡C°‡—œïÑè"dÑ·«vÒöÏ1õÏé{ÜÍ»‘(ì©`3@Мõò({ù,”ûUv5ëèªl/W´Fß*(µ­3SKÝ5‹Á‚M1´à÷¼ea.ðE› ÆPe¯ lÂÂÒš·²†êœù9ÑX>²P{N5fíˆÙ¤€Û_ÍÚ°»P¼‰==ƒ=F½}‚è9Kƒ*µ&œ\Šqw»puWò¥ÔCÒfK½Y™”A”êæÓãÚTMkó4Lb5‚Vvå% `h#"¾t6Ýìíf3³7ñu‡»•íÙ­$u¨ø<¯óŽ,³ŒdX‹Ö¶žÕÕy×òq©HÉIÊQrÂ’#¥ÍC]ÇÉ÷ÂãÛ—ó>YwôåЗ/Ž6T<4M[7s"±W@#}Ã~ÕÆOüÐð0‡8ÔMÞ÷’ÙÆ~œ°ßlÆ4âh{_?ˆä­rà¿DØ_ïQ¥væÉC8Æ3z`iÉ^‡{ŠÜ4B/ÚCÞ‹ªÍñZÐØEص¨÷Ž*—ͪøçge™u?•,ùìשZèܤ ·¦ƒ]kàk…<ô‡žž½>ùÒQ3­j>ˆîíh|Ñ^v¿ê\—Uû5å aæï{æ·Û|ü }ö¸»èÛ0 ž#¨,ÚÊ4w¹„È¿>¢ñ÷u:¯ùßÿÒÞÛ6crÍøàà37žù¬vw~GÞN*>­G ]þÁº«ùSªë¹É‘twšù›³ƒÿªîb¨ endstream endobj 260 0 obj << /Length 1686 /Filter /FlateDecode >> stream xÚÍWÝoÛ6Ï_aôIÁ"VÔ·‡e@’&iº6bwÖ--Ó¶‰tE©n6ôßQGÉ–#Ç鶇½Øy_¼»ßÝÑÌÎàòàt|ðü‚ƒ!†n8ÏAH¡7ˆü8þ`<¼³®DYÈCÛ­i•”©‡¶çyV)?Œ_8ÄúÔ8$p‚8‚ÿ(t¢hP€†G·— Õó7´†!q]Lªž¦¨.¹9„_¦ –eË*Uòi„œjzMF⇴K«rðO‚ vÎÖ|E%D*æø‘Út‘ëùøÍ×|{Hmê†vì‘DæËªä6%,gJÁVJïu¬ {4jë‡ö«äµÊ`C¥cÓЦ^`»Nô$ÁNn¿Îa­Óí\3‚0×výGUÚ}îË’e@ÔkOsl¥¡69"Cȶšó­â-‹zá[ ©JÁr³=“uvã‘¡ñ¬&‚z- ôx‹ºš6‘Bð¤ìn¶’&wôÇ—”áñí¨¬¦©ÄݵbÏ^’ÖáÖkya`¼¹Ò C0ì®´”s§y¡ð aÂ,džW"MXÉ‘mPy„[£J\é·ÏÅ<†ö½8£Ësø£xØš ‡on®î^¬­À 8:ÂÃu ïCÎÅŽÛÔ‰‘«V°¼'–,'l(ÕBVÙµOê˜pÌ?ˆ¡ÀÅÝ”ø¼w¨?¯ >E'¯ÒrÑcO‘ nt”÷K޹uŒp—>Ã\â9^ÃD:•nWÅ£tHâØ3v‘õgÔ’¥“‚÷ÚáP{í]n¿õß°,kŸÕËŸlüo]©å¬dqùpìáმ=ƒ«=«c»DÆÊS žkS™ ãÕuöÀG›=°.øç*- èúF”xqÐ6V&‹Wr¢veC’Ào³aRìMSˆ³Ç „U–Îevg©Ø¿â¥]-kP‰ôir[Ùì¶@qXÔ%!‚’ ð;¤9,ø<Õ­ÓNªVŽ^PÚh µ€¤Às¸»Ö§dÚÔ5‡ö%Jc–Äÿµ7ºvŽgkì¸5v"‹oß©Ê ¨Š¾Ò/g[ÕPá·Éßú$’eU¹ö·×‘ŠUo†äËÚ<3fp¥ð®Fè²ÃÒª|ζ*è÷,ØÉÒx¶Ë–Y%T’9»ãfޏ¨D=¼)H-´Û?ÀMCÃd¿ÕÖĺëé¦uü¬gÒ¨Q|Ôg×÷Ê3sÄ-Ð}¶Çq{Ž{j]·Zl¼~éGõ¤Â•¬ H¹ã `Z›®÷Ø}xçp‹Õ\ŠÌšHë€?­„î,“R`±ò-ÁùTmÕ+qH­ ®NÔš2×Àq«PDM¡X#Ókù¿GÏ“¢Ü´³Gø'$íp•wó¯,_fÆå•jj[lª<+øÔæM¥»½>±Gü3žž¼Á…62®Ž†ö2Þ&õœ¬‰Š ¢+ ‡ª&Мšœ0S¤üˆ Yç€T²™[©¿‘>±gý÷ÑÝ­ .p\í+yy}{}sF&,'É¢ þ¾‚™mÕËGD}W_\½>íì-g5’À÷+í·\X¢/ëÍ\¶ ÛØêiv\ü›³¥Â£Ô aãìêòä÷ئŒTÉ fì©9‚Ty8ï¸GhÐ0™ÔSù¯¬H™(Uÿ¼ãÛ÷tj.Té µŒ¦º÷à շLg÷hÍjÁѰÚrelÌ«¬Lm¸N?°/p¯—ÂxN¿Œ 05ëÁÙÌtʤt÷å³Q±ÞžÎpk1§C\ÝA ‡Ú´2i=çMñ˛֞ý‹ü½x{ÝM¢¦>ëÜœ¥7%ƒ‚Oýñ×®îFg3·/¹yšœÀX)ôȵ³ˆõðšØžÏWcÐSyÇ__LÈKÅ–)Šh§íO®\ 0Š?ve•_§“®[öŠ|Ì´yóþn¤éL¹lÝr5R5þÞwMõQçÔGÚ¦T8z'þ€øiY𱘠¶ûúã쀪R01çÊÈ[ëÅvO#p•YždÙ&óf3ÙQ¾í/G/¸nMÎ÷=…< ‡ß÷jNkxz¯¦É¸M[Ú9|ûgÉâ©/ZŸÔïå?læzwGCoâðÀ¬óñÁß'È endstream endobj 167 0 obj << /Type /ObjStm /N 100 /First 893 /Length 2131 /Filter /FlateDecode >> stream xÚí[[o7~ׯàcûy¯ £€ i-Ø)°»äñ$*k i´NúëûjœXQ»eY‰¼,“9sîrd}VFÙ€Oνrƨ¨œsX‘r)*ƒòëèT2•”5Öb‚É$â~gy`£\µWHÙT&¬ÈIЬ ³ŠˆqÁcŒ€È K`œ8° r‚2áJHh“äÞd›”·bŠLŠ—¯Xqðò•SœÎdŒ1ã‰)(P)gäh`³«ÂøsAHïÁ ˆÅ$ƒS|\Ä 6ãåÁ¥žŒWÀèÉeÅcæcå™(b¡Ž'.8H $ê!^2NùT ùDV¤‚ “¬C dXý€LR!Fàð*$’›d‘Hiƒh=Cº‘=ÐXÂ$Ù«è²|TAAÓ)ØÙ¨b6¢‡ ¤DD*‰z IEeQ%/:¤ R„Œ!%IŒê†RUÊ@.ÊÍÆšQV¹(`™E­Ì*{LBTàhÙ`²Ð¼ÊQžÈNåÌ‚¦˜þ‹QQ´X‹â2é@ØÖ°Ì ˜/ú†B ˜Å5X‘IIf¸Sa ŠÈ™ éêµ"3ò@g™!mhÍZÏ‚„ÀŽA’—;2T)êÓ‡Â<ñX1.ä$ÓÀ%’™P'–IA$)ÆJ‰Óàà`P½ýtÕ¨êp2i»AuÔNÏ›é;—4§ÕÏÕëêù;Uù;TÇMÝ©w1kH‘cÒÅkØb)51€NægpV¿Œ&¿W‡å ÕaÝÚIuRývüZ>?\tÝÕ?ªêlÔÖíä|^wíT·ÓÕÕ°þ}ø¡™UÓfÜ gM¨.ºËqu„Ù›át87c-W~üé§þ6cÚ¬“ø~ŽÚ—`bu‚ Á½5‡oÆÈ P‹6êXUÿú÷àk:d†å%&óñøôoaCu‰5¬p ôe;éÔÁª^JL„-–›^Bq ýV“\,¬Äß›…DKdY_õfÚÖ' d¨ª7/^ªêmó±S§ËªxÞÕs<¶™t3×òþ¬OëfVâm¹ôks>µUÑX€‘ x5mçW…è J¬ SgüùJ¶šÀ’0|ű&$`¼¶iŸ|ÞíaÌÌFÛ 9;ë¼\‚çÄ}ℌæR~D„“HXG©4ðžq"¥ ê"mB©Ü´˜˜×ÙîS>IF#ZS*¹YK—‚¶|wêíôû‹zZ&®›³/Œ\ÎÇݨn§M5šœ7ïO9*ä‹xC:%Ò ^þ¤_õÒþkÊ%Ű~ê[‚]¤>F(Ö‚…áå¸,å ã´÷Ì©·ÒèR‚Ý4§¦´’SSØeNM¾Ï•}.M}.M}.M}.MÜî)§Þæ5?($UŠ…Ôûè£TcØ#NÐê»q­Ú.MœD” Áo5‚Ì&íõ¶âždý„zC7#ó +ÿîéF¨Ñ«£üŠz±×a±F·n“vaŸr&I®²AGÔål\)j|ÆÂVð sX_lÍvP CÞŸIw‰qiSÒ·Ù>¦¸~]‚íó¢AˆEľs®[nÿ&ñmšë2¯äºlw™ë²y¬¹Kì Óú6³»°™²ùÃ÷-Ðd?+É«Vwj%áQ[Iºƒ•¤+‰ˆïžòZ°I™Óz°L^{³ Ä#¯k‰t$Z 63š¦M„Û=Á-wØÐȬì³É.ýCyYó•ȉ‚Ð/ ‹‘ú1÷ãÓ¾Ú—­t·ØröY[#ö°(D&Ú§5’Ô!ÒB»: +ôð GdÁ¡}PF^5“örTŽG&—â[àFB›ì¥Y-[l&£A“c7ÒÉû}cÆ7¹ì¯å¡’hú6¿e>‘cÈuóÉ2lŸå ŠÃö‚îR ²-ØÿJ8¶´Ëplí#.HäÜy-ºÏñׯªÏ«ª;U}xÔªO¢úMµM~EÛÄ»Ô6õuõuŧ:ëëò„s²Ïå‰3Q³Ý×ú„Ú)Ôû7 g¯Ù‡o˸&¹õÓúlßÎI9 {[–PÈ^óÖf6õ¦ÿg³Sÿïû+JO~ëU%Oâöè§‚+ï*yØW†}Åo›½Ø®ï"K° ³÷^ŽXÂw`ö«Û ¼Óív¹Èá;4H¼Ú …ˆZÖ'BÔý"©[m™Ü¶L.~mR®¯ ¸¨Îü_DÔžUhX·qN›˜Ka%ïxHå%ntæFàoÔòª}ÛBꇟ߷m‡'6Úþ¨îõÆ Êr@(„e²#Ð&#ÃÝD:ƒL?Œº‹ù™®Û˪›Ÿ·Ï¦ÕѰ«/þٞͪnÚ4ÕåpÖ5Óªù8¼¼CÔõû“_~;þõ+uë¿»¹ Ûo{{ÖðÄÿ aM`ë]Øæ;)¨¬7[;Ž!¿êÊ~§®ì{Wv‹¢HÞŸ^¬{×öæ©Xú¼Qhœ–ãñeyÿK“”tº{Wq}}­W˜¹hÆWK,>«ÇíüüÙðrTm«%‚ÍÊ»Ü%&,XùÎiÏQËO+Õiù鄦&ðâX[s÷ ÚáõL/‡´“ÌššªÑdÖ 'uóLÐÌîG-Áà…Ê€f³ü4%êòŒìÝNE-qÑß!Þú¿ˆ·ÈÎØí\o¥ f5n¦ÆÍG¹yô'xVÎ endstream endobj 269 0 obj << /Length 1964 /Filter /FlateDecode >> stream xÚ½XKsÜ6¾ëW°t¢j5ñ H¦6©’w•Svâ•'[[åèq nø˜ FÊaûvãAG#DZ_ˆt7_7ºë ®N^,O.¾'IG¹ "XÞ‰ˆD΂”‹(æÁr¼_5ºkÏ4 WC¡Ë¶9[0ÆBÝžÝ,8‰£8ç„q”ÄI–B›Š8Mƒ$<3t}Rß“*DD)•ŒÀ¥W¼=ƒ¯ÄO'«JUV Óý@qNiÄiêy1›,x–E"!Á‚ñ(¹õòAƒVvC¥Ù·ûÍH{¯:;¦7nrf›_bÂ+ÕG3a“†Œíi ’F9ü3²¿;[$4 ;Õ[âï ÛÞn+¹ÝV¿ÄI|Wõçöï÷?ÿè¨oß^^_¾ùv+;YÃ$‚²ŒáEQ+jéµî”:·Í{Y ~ç½m¥©Ê^»ßÙöêZ6k…ºà8 €„ÊÒw­1–¦d±±¿­]¢³ç|_AKB\½Ön¢—`–šÌlÆHÁ¦ý©:=Žì˜ÉFíÊÊݽ=ÌdzŒ…uJ –$Oò£‡¥*U«F¿V l Ç‚ãóg`¬N¢×Ë8(.ŽNÈ 9‘$s(EÒ…µ„%>:"™N¤ 0‰#.Èœñ¤3`2I“0Çpu@AóÏö¨#æ-1»A¥ :vê>ßîs–Ã]y¯~^^ Ç’…SBo:ey0‘&ŸÆ£hWe³þ¤L¦PÝZ5eñ‡«?ÀeÛµu«MÂôÑ{9¼JƃßÃïËp£Â%&îás×ÂÎ 5sng?ÓcáÖx/ª‹y‰ê¼‡­!¶öß|óæ8îa_οxž8÷¡4'’N$ódB³‘dÉã‰ôÎJS›Iœ/Â]xp¼d¯%1¦ÀNàâ xéWðâ¯áå}ø:Qâó¢月RFÔáû”w,Ù3múy%+ t¤ ôàqæmÐ 5¹ldõø»9 8ëÌÕÖh0&DÉ´¿M‚Ö¼,†Ãk°Änπ/—'¿0N_›S©išE}òþ&V0æ‹ò\;3³xÅ.Ár¨ ÞükŒ^ÏÖû”ˆ(]»R‚òU‚D "¬†ˆˆe*öÕƒ­œj?èl s¯ì†ã²VLl&¶» ¿ k øïLûì ©1¥ÂÎ;ªòº jVnAë’öýwF°ÃX^¹[àÔÍü w¬¡”î±Ze"¼´ükÙ öbqòJ]ì§2 Í"NrÏñ$¼ò¶²©Ü‚ ¥ü l^Y4 A3á/, 00d©+ ?¾ƒ,ÀtC¶ÓÎèGv–€¬”xE0éþ ¸‡ÖÛo..v»]TÖ½–:²²×½î/î=tê)JY’FT¤P•ñ(çé!LYž0¥Qžå#HŸ‚“‰Š0aX¥Ü¹Ø/tDE×G]Ï…쾉µß-jûhé7e±‘æ=,üÚ`lש¦Pvx´ù ? ®ijî(l~€oœdsŽ˜gU÷¥Ú™äž„½º·îƒ|ßÀVûš„PÐYÔÉb£Ü#Ÿ“8\©rãsv¤¬·öÑAÚ§7ü·W²ÎЖӧÏh>ª<ƒ02gãÃÙV¿šg·5>k-Dš†o»];DC¾“D;Ÿ•&¿¢׊jX¹2¿7ø­Ô,벺©¾‡ qn×õ{¯rzi”8ܳÀ}Ù²rÃó÷%jUlšò·A9=¬$0|cÃÆ¡j0¤»Ji¶`–v%–ÙGoÖÚóëÝnعK*á¶’Úo†M/[ aã“"7Üœ²öòÈW+kË<Þ ‡ÐÙNÓ†à—¹Cpžo÷Ðeâù{'ûµ't>ã27Pí»…É¯ö·yËñbªk¿zèOŽä)ƒ‚§Q:ÕmK¼ ¬ÏÓp¼ J|#4> stream xÚíÛRÛHö¯PÕ<¬©Â=êVë–Ý<0R@<¶³»SI*Õ–Û¶*²äH2„™l¾}Ïénɶ0H`ó°eõåèÜúô¹É&vÈ)³lâÚnàÃÓ÷lß·ò) ·oõ_íÙl[¯ö‡{¿žP× Iè1ÏN,×#^èX>÷ˆÍ­áØz×:MË<Ûo³ 5^Feœ¥ûmÇqZe¶ÿaøzÏ~¿ž8|ªçÆ8°¤Æš\ÔÛ‡_?¹H™h‚†÷ãœ1™_á þ÷qG-ʉÃ=†¸Û<ˆçR«ípx¡&áí·)µíÖɾC[Ù¾c·rÐŒç·ÆòR&Ù&vKæ…b¤;Üû¼G;Û¢µ’my°¢ùÞ»¶5†½×ÀFzÖ•‚œ[<Â5“Xƒ½ßwœ€<Ôpx\1DFÔ¹]ÅÅ,N§8áxˆjqYÈwš”Òï:J×!ŽÃ*qeo3çšë ñ\™õ…ˆ>)äSYèíb–-“±ÞÓ(Yޤp®K|ÆžF@| è9k°Ì3¬õyÜõO{ÃÓ7v¯g“Àu+Ø÷6å‰ÜàcÅÏ6ç6ñ<°oê“8Ó÷~¾Èò²x±ßv™‹‚F=±’­AºÍÀpY…ÁÑDZÂ\¡:¸¼4¶òªÝÉ2U~¥¨õp­!ÐTkgSÛ©ÚÚ¡4¸YÔ¯5qÑ9ïz£îÆ]›8!ßÔÙÆ-É”ÜK ü‚ǃMéc¥¿“<›¿·]{]Z¥£E"‹ä¶é}U:œÉ´²ìËL¾l¨s,‹8—c½:YîÓ¨|U+†¡öÞ›úSƒÈ¸x-<_ 嬇º27—1´ÿ!Î× úæòƒ¡7¨C|Q® .HƒÅuœº!³BЙçY¹´&è6ÈÔÃ~JhßAgä¸þB`P°Íž Fi( µñ×E)礌çòQ'‹ƒõßvý ÕErí/"gpCàÆš"¡®Ð?Ú¢q_­*ÕE}¥=Ng‡!ÌE5¹•m75 úêÊá¾úÓˆ^<5§ÎS«ûqîBœ„©fâ´±¶²œ*´ý´–®ÀS¦c ÛXÔ4âg¢ŠƒëT$´ë`>yÒßp¢Ô&l•Í® R$R.žã8cTÇßu¦oQKàè{£Y›nÉ‚@m]e6.­üàëo©åô¿Ö”·ž­8 ràl¦+¿ü¢\§‘*:p’Ëi\”ùµžB­Î§n¨ÑÞL‹Q$†uä¢PP8*Xµ<bEéȤ^¥$t½Õ«ÔõÝ#®ÃÌŸÍÍ8 .çÏ {Ç¿†ìË4“{–Üá±¶ú„е6ÆýŽ~ЪL?ªøõ„©çöòØd”ø.«J†*+Îl¨§’F4Ôu.©ü#(£Û 6œå²\æ)=Úg~ëz‹‡¡^HxX;¡ÑbŽ*wn©i¸OlŒ’J Îi…^‘ˉX&¥æBl!é1 Xc8Ø8ÊrÙÛA8ðIàù«’»(EÑuUÚÐÖMVM2ÿ[¡y[(89‘ynîwÛñ<¨ÑBsÍMš½R¥ÃƒV<ÑOSÖÂh&.¥-£hª•º„…AÅ­ö—2¿C<’|»®bÉ>v¬°VÜÞPà.ß®À-˜},#ê(²)ÚX׌ªïÓ4+õ —Ÿ—P‚ê‰HA“FòÂô¢¢X$z%ÊR¬¹§Ë\˜Ö"¯ÚZÃÌSæþ¦† Y¶—Ø`ãÜ48Ä…^EÃ!i²^ÒƒBLdQêq¶¨(:-÷UÿŽ;«þn›¡6}¯õ658Ëe*J Õ@à販`¨=]Ç}†khmcÙe<–Fœ,M® ó27zsZòR$KQ¥–`ˆ>'4p7ÕTµjÿ§cÝ3+H—ÖÙ>! 캋†csÐÑr.Ó‡T*à\ë‰êÍ!hñªxñãzoŒ¢»ùÎÞ#]ûµÖ²[±­ì› ³²S쌰jƒkj¨RÞ ‚¿^Yë<¢3¸ÑãÙÒÙ\i7Šx ¦¶ÌM‹F˜e¡luªc›SöÉÊöz~çüånß$¤ÞʇhÆ]Wå/wÛ v½W}e˜¨~<7šT0¯ü‡y'ûjÞ˜‰tÛeº–ÿ÷¿LAí8S©Ú`kü”b›†;‚•HÔncí-™Ëzm&J=2^ÎDrÂx#¬÷¦M_m¬®0³ºCÚè®Ø@ K'b”Ôf`ÞI21®ú|Y³Ÿ—ËyV)Þü.QøUœˆ÷Ñ´¬¾9½`jϯ£8ƒd<Oºn‡[?Ž@Šå„÷˜#?OÃòF·’‚uPÏkv+c$äìÿíJËbßä­evqöËOÛ:¹qÝðŸCœï©õÿõÓ{êðä¸é_1TÑñŸò?¸’‹éTŽóx:+7ji·QK#l\Wß}ý¸„°¤Â¨*Ä_C ´Ãlê¶í M9êè`ż4úú%ð>z¼½ˆÚIœ.¿´§éòëèŸe‘Hä‹Ò³£GÃ?zÝ—2ýøv@ÞOÚÁ׃›@oÏ»ýÓ£—GÛ6‡§ç;½9;ë »Ûœ¿¹è;ý?v!9ïWÝÁ.¸^§×íï©s~ ;ãã>PºEØîY·÷0|‹(ÝÎàm¿{Þ½îbàô¸ ÷bxzrzÔÁ§€ñz(°TÆs äæpG°aÈE “²0Ói RÉÕ\,fqTM粜eãj¶¨¿ ÞÂó ÊÕ½s3Y–qR<@œ7:ãÚ"Ï¡(£ÙëlT|£Ä;¨?ú¢˜ß°º$öj1z%S(F¢âö¾qç–n—b~ýÓ' ç똊2‡¤±@ A½س¹Doy98Âq÷ËôŒ2ºÕü[#Cí¯£™Œ>Í!d*éÙƒœ–N$•猅˜G*æ²S‘+ªPµ‡¿‚-KäÇèP+s:œÇE¬„kf3(¯do§ŽOA8‡Tî¹?øý,V’­äEËô¸L#TCÛ©Vã2[ òíveÅ£\^U wÙé8[(ÔæUSfK<5³4d°Uô&Y:ïãi×ÜNðVJ’dÁreñônqÍ º#QlH9ƒˆíÖØ?¥q‰Xiµˆùh,ˆZ#~åeÄ4Kèîð-PÍA(%C»BZ¤ÙA›:µßÁ«#/mwc-ßàX[¿ ºwþ3‰G#° ä®ëm°•C6ëáÙZ«Í'”*ÿYµL¢ endstream endobj 291 0 obj << /Length1 2156 /Length2 9118 /Length3 0 /Length 10394 /Filter /FlateDecode >> stream xÚµT”m5,]ŠH‡ÂÐ!Â0twww 0ÀC )’ÒÝÒ!)©tw—(HKJ* Ô7ú„>ïÿ¯õ}kÖš™}®sö‰ëìû¦§VÓ|&néh‘q„¹>ã` $•åµ´8€ “ aÓÓkA]í!ÿ`Óë@\àPG˜À.’.°+Â&vEx*; nöN¯üÿ8:º¤ÀîPK€2@ÁcÓK::y¹@­m\‰þù `²`pðóó²þ ˆ;@\ `@ìjq@d´Û4- W¯ÿP0 Ù¸º: °³{xx°àlŽ.Ö"̬¨« @‡¸¸C,?›¨€ ÿôƆMвÂÿ:Ñt´rõ»@ƒ=Ôƒ#bÜ`–"=@S^  êýå¬ô—+àïé8Ø8þ¥û;ú'ö+laáèà†yAaÖ+¨= *£ÄæêéÊ Ã,:‚íᎈx°;j6G8üª W€-þÝ ÜÂêä gƒCí6Éþ“1gi˜¥¤£ƒæ ÇþYŸÔb¼û?÷ksô€yÿ ­ 0K«ŸXº9±kàÎny©¿&ìß6kˆ+€òòò Έ§… ûÏZ^N_‡?͈.|¼VˆF >P+âÛv‡\]Ü >Þüasp,¡®sˆ5†ý›a†Xý…+àõÈþüüûϱd–Ž0{¯ßî¿n™]WBQZNüé?=ÿ{*!áè ðFd}âäðððxøy>ÿ¥ùwÿ4ÿ˪†þ]Ü|ò0+Gÿ_= †÷Oî¯ÓßÂaü7ƒŠ#b£!¦ß0r-_ÿÏ2øòÿ·ý?Yþïøß’dÜìí90ýíñÿq;@í½þvA¬´›+BÊŽ‘Àþ×Uò—¨•!–P7‡ÿ=•w#d"³F¬ú3.6 ×_v(\ê ±TƒºZØüÚœn‘ ƒ¨9¡?=ˆ ðÎâ³°C<^àˆ;ûuAhë¿i¥aŽ–?Eâæ€]\À^Ø@Äž¸¹ P«%Äó׊ØÙ`Ž®ˆ¢E€•£ öÏ›åá°‹ÿ4ý…xì¿?€]ú_Ä °ËüFvÙ߈À.ÿqØ~#§ÒoÄ `Wþøì*ÿ">€]ã7BpjþFN­ßQµö¿ˆÁ þœæ¿¢‹7âÌÂÑ1ì,?gÎnùDôù"J²ú"j²þ"вùr!вñr²üÉŽ°Aÿ€ˆYØþ…ÛýÕÙÿ¥;ü†½³ÿfæDÃÜÌ*Òú„ˆg»ãQ¿Óï NˆÌbåúÛÊñ·õ/ÉþkFÔꄪãÓA¼Ù×€(ÐÙÍ!˜ÿrp ÆâòD” ÿM‹èn†Ûüá€Èô;ñ¬`wµqü¾Äî³»züÙ‚Ã툘›ûQ–ÇoBD{þô^¿àtdáæ‚˜€ë¯'Bdÿà_o6Äb½8ïh!dû&¨õ²FœÂãÙÖ8göùv´=Òr· ©]WÞ7¾äl)µ‘*Ce¤8 éh^;~‰66 |‚`|d¹pò¶:!ûǘL“'Àòø(ÒÔÜ]I¯~¹#ê×çúô"’cøš!ŽD~O. ¶wœUÑ)(_Tb©îÌ3óÿAmÔüŒ0 =§¦Ný²Z¶;æ|·3:ñW¸ŒO£ªÖLÔSÔÖ,U–6žœ¶æùÂ]£g£8Ëk>¨à/f X[v:±ë‚ n;yvÊòð– á)êHdn~O•‡¾¢¯nÉø÷d%ÏåÁDà€êÊ̤¡-–Ü.9µ}¨§È8rž‘'Oô›"·Z‚"[×ëu-kF©Õâ8(ŠÝé ô/ÜK»lýOÒÅ@iV‚Vÿ›u<Òƒ­ÅôG¾£Û_iUÒ_‚Ûòˆô0ª&R–ÙžuE]K&TسðÌnÜOÙö´A­.Typ£E«ÚF\PˆCkgüNf¾50XTeh²V "nòÝ}ŽdøìÀꎋ_U %;‹÷:A.«´%3ë-ÎéËFüŽ÷{PÒ™™±Ëa±nÒÀÚ6ŨÙÒÔW¾{^Ì÷ˆÏÇ3¬Ã#’( ìa'‹×óî-(õå—H »£á#•ÀAzÒíÅgk,¹°Þo ½h=·I‚Z·}u7^©Áƃ{Þ ¥}âÐ ý/Zh}yŒ,˜=Á¦K=Œ‰÷ÜZpPïžÛÙšÈo>Œ>½§§KNî4ô®¼RôËGö¹I°à®0EÛñ9Zgyš ü‘öuÖ«§z ¼²3 ³›Œ7ÏßÝø|ϱ›‚¼í/éΩû>J$„}&¦Í»ñ–&ÃüÈ}V¢‹>3—”äì‚l»kùÄú“O}ZÜÓDdØ¢ZyõÒM·6ߨ;i²WγÅ2~¬Ž•X γ¬8¹'ïEiç $MÄùsK޹ؔ{†rŸxßpßÕU‰$HŽE'ÊæÜf>ŽqÝ¡¨¸–(usus|µÀÎFîÔTq)Üz…Ÿ†¥Óº^}a¢©gsàÿ¢"< '4 ‚¶0–m>V³ ®ðìy€Ú=ôŽÔʽB™óʆP|Næ çe…lDZíóÞUíeV»“ì˜ãQÒ·Z—HèÊ}™ûkS QÇš¬^z/ÖÙV´é<äú‹ì†´¯$½?‚)Àü\†-E»YÒ„«Å)gv*ãkõ“|:é… jE§šÙÂ;íL«{#eyßÅÆ¾…r“?É¢Œ¿¡Sx”m!£NŒÑvošÌ©›´`ûÚ3È3ðƒÞ€3¾ôÁ˜é£8=ÂÕÃÏ0;·òK.‘·ä(²¾À|†ï™~er|§aXq£ã·8Ñ’õkªLÓ8½án¼Ä¡,kOˆ’„^êä|Ý!åb~ÝŸ/ÛñâÂüNwŽZ±ßÀ1`: _¤Ûñz9öºÍ_w?‚ÊòK®/Cd€idÙ:ÅJz6gv>XÝHbî©ñ€'Ït¨ÎT ¢¶.ƒÒÌaXÒú¨±‹–QŸ=rCJá“ÅÑñÝQL½ã4æ° ®™o„•ñ”n*J¦;À}iè–®uDÙí§êÄ~ïíiô@å:¢}®ÚƒxŽ­”Š÷M¸… ³ä“Å8äT=¼ð/ÛZÌö^z¦ÛëŒwÞÐ ØÄ«&ìêKj}ÿD£qép’{OË‚kÀó[–™N ©}¹ÕïÛš #ÝÛǶýA¤tõòwÊçlíÉV5…í.UúvËN¦É—ü‡îëK¶ë*=Åæq±§+a|I,N`†ÀM£‘ç¹ùø·±ìW{{²ËmJ’t gØàÏ~Ø­Ôw±@s ñŒètâ/º3„õ>ÌXµ8]¨ 8ÄÆªôá<"3pOðJ$©^·Ç.~yÅô­ÄØtÄÿ “ãûû¡Ã)xu˜oÓ‹MWñ yW0' OÇé‚ñàÈ/€K¸bÝï‹ Ø|/¤îŠéÎû¿÷Ày½5lßD‘FI÷f¸˜œ"ôˆ‚ÔDÅÈ}Û/ÝàÑZ¬%#ú<÷…!ù%€˜Pd“ÿq%ñZO¼ôŒEÙ×™„Înë܃”˜c½;|ÉŽ‘Ty ‘2¦j8ö«dÈï”xüãä‚Ìlg¹V>†™êÖ.?í!Àà0bóXñ"¶vôñcÇçJ’ÙÂ(¢ã¦ê/ØôΉzØÆ‚ùYx6ÞY5<ÛßN71÷ÒH¶ï†¯éqÛÇ\˜Ú‹ÆîDð#MÐv;¼@¼t>[Z™¤ ‘tIR­LTÇ:«Çì³,ÐÕÐÊ[}ü"Þîe­o Þ&\l䣒Õ@ãã'Û}þAõ ú¶ã¢;Ô-5X=Ói™Šù$OOQ{Ý«›ØI§Ö¶2æ%ÄŒ·/|ùHú‘÷˜^I,±qâ=‚)ô± ½à BšÈ³¢}xïi™ä‹ø#<‘¦#ã(ØÅ÷Ûm»Öjæ–ãW©ðûC‰ú}F’)™­t–£#Û~mÝÒðk‚Ùx2ÚìA l\øÓÉ \Ü>©sQ8ߢç à1h]…nÊìqgЂ%ð:iËnï_Ø õ$œXSØŠ„=5RĦZÏkª’Ï·?$i4¬¥†öñ´¸Á\'S¿&ºÓîK±eË iøEØ}DOTx‡úýâ´òMO²‚„¸ŸÍup‹ß5DPK'»Ñ u&ôãÙGžz´X>M¾v¤+ÑàDEB{ƒKÁnËÙŒ)Ɇ!ÙDdOð¿¥ñŸ7ƒ)ü˜æ°¿¦#g𔫓G]%Äx¯ñ!Gn79lÉ` >*Ñ·­Ý#‹;;ôtw_+qRß#ŽÙÂñ[HW¤mXj.`f½@úþý’«‡®ìLôêõÇ é³\á©oá%Ø+qݪ„8ãÌ&Û(µsúÈl£ôþYçƒwÆ ‘9:z¥S¤ÙÏ…È7%Å0WK¾ùtý2Ðd*¾£p‹òz’?èèÒ|@Ÿe2`©jÞÍ_ã¥>´µŽò¢Ù–ÿ‘‡Ï8ñŽñÁ›¾ÎD K‡N‚p’®³6$ Uâ‚ÅA õ˜Ž /“²61jÿnÔaLºgòâáÿ6ŠPõÛŽHëâ|¯ ³Y2eñþÛƒ†¯‘Œœ‚9¼¥¥GÎ%s¬l72ϯl ¤ó‘eÜ˸È^ˆâ†-¨ ·ƒ³üyÎÛ#¶[!I¨ÒxŸ@ÎdEü¨ £„L7ñÇö«ŸI|Ì›úȸMSÈ7ô‹åšˆbëÐM6ÃÒ0Ù7pü"íÌÏšesÃhäç>!³>N»&±ítѼ.¬ä½¢b_:¸Ð©7ÇkÄ’HŠ©EùÖj 6‹ÞBµ…W^G¯Iå”-„48Ôè;E™§} _]6sh=\I£˜ gÀ@ÆWÑ*U!ÜÿÞX,üé˘ÐþÕVˆ†|`•…ðÀL¢ŒÅšãçRÙÊM›Aò‡¥DþY£>é“Ób÷ÅRŽt.§X·§‰2’mX-€ÑG#_£²X‘û?ÈÓ¼@ÿÁþûêyH: שŸ Cù-š¤9©^‰4¯6ò8 ;![µb{Æ©sþÙS%ÿe-yEV™ÚÈÐ×·g³‹©ÏJk&aü|˜ïóÐ¥ªÈTKÍÈïEt?|š ãZMôØ£kn£³šå„¾Ñ.⣳<ÿ¶pWÂ_'NS¤å4û 7t“þžqDìþ—s¬ËÐúµ÷ÃÏmqîÈýó*¶¸k‘Ôoú-µ¤Ì¢—îo/C¤$˜džÐÜ„'ö½2j'Baþ2È`.‰JB*yɇ#µ÷Lb è=r¬ó G:e¼Ä‘P"ŠM:ç^¹vÑŽJB'ò%ƒdió&º*é–v­—’WQ³þª1¬O$ðRö¹ØñùN]AÌC‡‘Äpã´·–c›f¤ G_xå°O4âi:§F'ÕlÜz•_öϵåÙ|ü&‘ïgq1f³„MUey‡î㘽WÞ°›}„f¨,Ëî˜ò» ÑP¤k3.ÝÿøŠ9dŽYžé½7#pä¤JµNB¨—i‹uxÏ%+¹· s4¶ëEò"ý:»¿Œ¡4¥ë3åàUg²”d¾~©Æ|šWmŠ}'„­u‡Lç°P»…÷Ï!&ÂóÖ6ÂIv슚ŠàIdKò$u£©7ú¥Ÿ2;|YH}v×4Aß°_Z6>_0 i2mœ! HMÄc2q6´¶‚Kx ‹?’"ßÜSL˜ñ˜8˜˜U+z•,äâ­m{J©[¿ðÑ-i¢œõŸÏT&¤”8'`U‚reˆgr•ª9ŽÜž=ìmLæî.ñœáSëÚ^ɳßðTB…³xiÎÈçŒ ñÌS7ûgñWõ¯@×âð#Öã¥%Yᬕv¤„ܹÝV4n"Óßµ7âaÎ]‡„è™Éi <êÓÞ\ŽÙ3U'ÀÅ€œ {Õê"\Çà$wrºNº×Oœ&@l>TÒÎuå±Ój¡Å×3šØ"HºVQ¼£ž¤Ì•4qï†Úusn$*P{ßWe}ší‰JhgXÉe0îõ"Jey•æ²~•gè™4ªnaé·U-³7VòN¨ 3¶–kŸ¬eacõÆ!™‘6ôr‚àÒmv°H‰2½OŽðª–{z°Ë؞͡³Ê“UÿP[ ,W ÄKÒ€ NDVÌ}½Œ±øEüE.‘_¿ñÚè‘s]:ˆ#fRgžÐ,z‡ 0;ò(ô]³§Â?Á×lñ$m>°¯#ÏþæQ1ˆÒÐO”„êŸD+VF6:ÜŠŸQ½òæP>H ïÎðMrgåÛÕ9ŸøD÷©Ì1“ëŠÍ¤tFûýÀõ |qg[šªXŠ¥÷¨÷°åpAñDM«èáæÃíþ [ºv3³˜;£á§é#“…¯…¾¯å†A›Ì2¹a-óÕ…Ü_‡v1D¿N/šì.“+Aqþ49Ž÷h©¢cÆÙW‡pzŸgÊ_èYY¦?0 ¨ÏÇ&{^¶:Ú§]Hþ•qøýÄ©Èû¹7ÂTÚ†J$Ðö0?¾*[á[ôÓµ¿Uw[“$ȳ©šMSíjÔo½qøÊ@c±Ù¿BjXrAèPD$ƒµN“›ãG? ÉÕãeV\óšpÒ!ør&z¹YÏ;v_!6âdj°ÖnôÙÔê¸ÖXYš·>Um•ÔCà&zÓ˜ï $g÷ ýø"V’ª©Ä—°Ì¾BB‹-tEËë?HòU|3ÁË{„³-9(—ñõÇ s¤êxð;½z5¶QAÁUit39R.o³û$åvÚ‘¦…Uó¹kº-ä{µ¢ù¦Ï}‚'§»€êsåRùéM©BÂ*?Ò¿n¶1 -ŽR ¶µ†¼$VVášbá}öY=!Ú,Õ'µüsùú‘hz±nË`y”{^˜üçaüH2™5²$×. ]Bsm­}›ô,<å¼^«òsd*Yš9»e?ÏÞ¼}4”œòu_ëÑ&£G¯£š >¶î¿íjÅlý(J ¥c=ÿò X¦þOñèZP/êhàëÇ-¼rÎj9þdqñp³z+~ÏÀ•…ƒR¦Û3g”{.Æëá%¡¬Ý-ààÇuú~Ï?|+ áé»}«¦¦Svm丸í•ëæ; 2ߎ¹tÝA1m|º=AÕ¯€¥Ô8±!|‡‡±¡­Ôõr ÐUÃÅbÎCx ¥¨•Ãyžg½¼ùmàÉÙDSKzÉÆŽè¡cPó!ìЯøIYȤÄs>sës·Òšê›/sÍ÷vçq‹b]y b曑n?ÝÜ(#±Ö›ÖˆUió­‰Ü gŒFå·–5µ1O2ïF'¨K5íÝöfÞ‰• ²ŠbNX)Aó(<½¿Ô/ðÝ­„ÂWÃÓ²`& RöÊ2¦÷“z¿Þ„æl´÷ÜÖEiiYÝ z ±~ô¶¦)üMH§ò-ÆHuÕ+,Wû=¨ÈX±QbŠü5I€Ï¢^Ü&w¡4¢õ³#„ ]–#¥‹ñ¶}ÃÔ•øÎÝÐ5é5¾ê7£:Ã?Ê+Ö `¡æ!ÜMZ’>ésflì·aTgÁPÁ®( t­—É8œ8$lŠùk•cH)éÇ–7zf#ðäd×åþÞû¥[3ÇfØr°•Y-¡¦ÒŒèK¥<ƒaRޏEØÊA¹¹`£öÕ–B¿«»ÐéKc±÷î°h®HãTqHñi«Ð«ò•DOzyßÐ(-¥¢¸³ó”È'šëOåy<‡æ4€ ]AâC =…ïw’´úÆș槡¨ûy—ƒñ[EZ…ºz˜>ì ‹Š–Ÿl‘Ö5Qt3%Goþ־£ØtÚ•Ø/Íþh‰Õ%ŠmWö>ê1ú3GÉ÷P´ÅË$+XÛ¯XeÕ"ð! AgÚ:”â‹50l¹.=yÌöyòý0èy[^ºÍƒSᯨöÏÜЦçMÐrË8Š&¯¯#±‡ÒÂyg?$\Ã>zEŒx^w?n÷<¦#¨UZ¿UÚáa>pÓ/ž`Ó=O,¤æ!|æßDwm±¬W+Ÿdåñ1f¢“èÍÀîsþ’B››ÓÕЪºüeX÷8D˜ œ'7LˆÔ“·Mç1~Ê5»ØCe2`ïtW¨‘¥²`¼¿¢Ãþ¼zÌXçx·(‹ßÜ`üé! ß¶èULŠÙvþÑ÷°'?®Uãï17uŠåØós_]k±Ÿ2¢T«¦7×ëŽ#‡0³s›ž2r~´€$>¿½·‹qåó¶¹äˆÙj#¼´•VŸ§ SMœct5ÐîŠèÎ7]®Nå><"8[Änï;¾çÌ,SÆÞ—ô|›ajú£@=éäxqÃXÊò:n¼g‘6cá'LkÑ pJ3¯Òá+)”†`çÒ³Qäçð̬°ƒeý6W”ë0{ÝˈÍÙóBgßÕ’G¦5‡±Á†YÇ£ç/rÖoî5¢Ë²&Ùzï+êÇë$<œ­Õ Š‹çŒ^IÂøH_|¥!f‚È´Á=œÙÉ–bmå{ó~ƒBÇ¿0ßdËÇY°!pí-ó¨¯/ú»n7§àîüC#waÉ¥D¯t¨% ˜ç™Û–Zs4S@[í„k:e2–û8ÑòÃ÷Q cÊ 95Ý)‘ï7Q "‘ȲNEù[.ª×Š¿¥¡Õøqžyè|øT¤ ‰q'?ÍŽ²ÿ¢k.ÈF[úâ^Oµš[© 5N:´¡>š¼”Ê'gc9ÊmV’P¶ëVÅЭ‘OŒæÍ£Öl­Nè™Üö¯)àhbbI0zcb9:}l9_šñêxrÂV6MÎ sàXå2ùHo¥e!9ËôpèžNwÿz~ézž¡ }TW ÓhÉž_ #o§BÀH<Œ4g­Ô=ŒŸßy¡@ÛÒ¦Çb“Å8;V1<Õ>76m¿ bÍqõà« 9#]ó3ƒP&;=¤¸8«#©µ¯¶™¶Tõï3EGxïà:ÕŠ\#~‹Jå»´mâ8Í œ%®ñG‚ÇRöR„/LNƒ>ué²ëÑûU*Ö»pÓ¤lð8Ò,º“àj-ök—,Ò|É"!?H«“ÆêÖþDyô_ãµ¼Þ ÄwT{“¥ÛÈ­ŒÛšî*`óþ÷[YF{Ù £ZhÊÍJ%•²«NðÉWQâ»îܧn-6(7м®}:tð¸úñBü$¡!äÞjžŽŠß ¦µœÜ¾H(q£ÛU)jµÈl©ÎßîRGnÝvpÔ O«×¿ ÷¾+âȨzÔPÿ%ú1ƒÆF5ëùžÇ½|ÑéÃ.d'kÚÖx¥¦†ÒÙ7—1Ä8߉ÆëûÔw•¨£-¦Q9ÞI(Dyí•Nwžj¡E<¢O’ô&mŸ®êtYkü°Ý´M=×Lã.%?s Ó%ã­ïÊ3oÁ,² Q‘sv·ò…—F[}ðº%h9B§ä›ï]J^¿Rß9¦¡Sk£qæ™™ªOÙ¸äÜmºìß¼‚Q°ž’,š8°¬,G9_Í,tüúä¦à•;Þ¡Ïô·s2-ºUÅ üM~<štyYïÎ+ëǸoÛ0}›»iV¶²êB ¸˜<¾o£Å±¤’{™Õ£UXñCc¹íÌžKJ“ÆâÀm˜Ã”ºtÒd ¨õ™}jAG“š¬Þä{þâ×£b•ÛòµÆ™Ü¦w¾ÈHkÎPûô#³¾Ò}õCiaTïsf]È¢ Ì´žÌ9xöh¶ˆÐÜžáXÃ+ç¹,;F]yGIZ"Ÿºƒ2½XwIi‰÷jš³D׳k#ʺZòñe_ÓOÁ&¨ý´6ó])jvF±àšC==Ë+å—Cw‡Él«aèŶ–öÅœbÈ vžq`”r,¯´ù—1A›V\(ã,ƒÊ’Ä_^HÙZ:kWYhóKÆsR6jiH>C…ô¿0,ô›s¨½#1½DÕݽßi—”<èG±%‚³¢D&ôõX>"z‡±Aêù$àýË'/ОÀ|ëfú–ë÷Ù¢Èøì æsèz•§6kÚ~©c ¿ÝöÒ®ò@YÞ½M"(Gtä9Á{±–‡*ŒE(ûŒ(Á¡‰(ôä Î³“jÛ;møYŸ"XÛ±F¾úãZvSRÑL¡ñg«Óxp£Zoâ· œÅi-‰8¶õz2ri‡Qì͉],¥¬h‚cõáÈêA85¥Mi#p¿D ç­ë¡¥†‘Œl,æÍ2¤‰‰¼Æv–ŠÁ ¯6F««ƒä–h;KA€éŒÍ{êla&Z˜àÑß1½&oMEIæäF Mc½Ï®Œõ–þý̰O» ²µ¡’öÎæ-楨Zu„#§FíߘÈ'ä<),â§Æ; ¤èhYÓbV1KåvÛc´ú<îX½¡Õ†‰°Mâ¹¥RµÍ(Ý€&ût,“S|7Š.áØVÁAt­ÔJZCٖ˃u×ǽ¤O´jRº^ÓeOÞ$)`ÐNÇmg}3FÃ×Õߣ˜4Æå†‡ 15¸Dz½ÊA>†¥z¡øJ™EÅ[åìâj&€Í»hƒÓ€Ä€vcÜñc²½eeå$Ý7¦­Z¸ÞL‰D/‘Í?C@ÂRû^þ¼%5[lõ"‰ƒýú-i߀Ýc-n|_Ý›ÍÇh%sBaûÔn'ÉŠþýžø~W ¡»ÂщýZ}ÿõÕWãŽsl¢=qÔÁ»Ù¦"ÌsÕãmiw»%õ ”UzG. ­PÙ—òû< ‹FYö¢%„°¼µ,H¨ª)‘xáàu?†ÃÑ7j îÜ&Ž©ÀT­»²N&Ÿ»Ä‹ÉBC7K´F¡fQUÐ<0¹èš:£ô*¿ëf§(©ùL§ëQWïLø«Ý㱓€¯U S1än¾–«á®-<ÈO–g§:1ìÙp)Ãá|6òÆëD^©‡€ZËyçf±Ð çj g²EœÉ¦‡O<ÔR‡è ,§?×&àþ’Ãyq_µ#$Cì*—wRM$07ŽÅ7=žêRŠ—ñ$|VÊÜ£¾lÃâ ­Ïxúcó=ži…­e2—™ŠO]ã]@àêk¹Jà#ìCÔí´´©J ÆA¥»ìÔ˜ü>¿'qlRò[j’é‘ÜŒåNn0S‰2¥@¦Z1×Ë.‡½ŠóœK]Ʀ3rœìاÀ†hÍExbûJwSWÞžgj¶x¬¾ˆÖIVPéM¾~k}û¼’¹Ó^’ýQXž÷e¡ÎpÉÒ _Kxê5Ëqc!íéqFÊh‡Tjàßô³ýr†Xç †ÐñŽ iXþžbȃø¡ù2°.óÛ›fä—Þ¬º§²¹”"_Úñ._НYß¶•¦îQh|‹æd5î o?Š}ÑÚ/8A)ö$Hæî©ú·°¢’wz·ÆO{”ç|Ý»Ø=%ϲNW¾æ(ÌÙ>!x”Sã[‘SøŒbùKÞÑý¡'q¾~¤zº¨ÌJƒEÁ¸r{ŒGJ)áíÀðû ºÌæsZ“ò;.›Öß.>õ%‘fËaëà§×ä¡» qÕ2Ò-C‡K³Ã.GgÈ??Vàv÷NOôªðõ£ié"Í3µ×ÓG³Ñž8ËîTÊßrä–tDÅ…G–aÙñsR /bE¦ÑdlXYø4¹¥Ì¯_bz<ß™JTzSqþ¦špù¡C¨x÷j{’öèø\ý€5Îå}óYÂl,!É<¿ç+t!eljÙX*Jž&Þñ6ç;•”ìü¢^iy‘Ÿš‰R©d\ßUƒª9%`JñQ§ÎSLZË#jôZál­¶—ï4H7•ƒóŠ¢q>5HÀàj> ÅWÖ|±šÜ<­‘áÃß@oZd÷ñHvöW#•Î" ‰N5’y\‡Á.gsµ<ÊþVßäMÚ‹A),fBy3*§Ô‡4J£ã”—ìiÜta=¥+zm J?¸ª+/NV=–<ŠSû© h'«}©‹ÂŸvqã šSïb9>ñ2¿¼Šu”Œ¼xË:%-F í!p|À-hM˜È²®r6„9^7µZÊ/aLÏÍ ©ñì2nÝÍ6i²¬ÝWP虚ÀŒ86 š]YnTŸïåKEùÞ{t|_káqÝ€È{øÆÂXj'k—ÈJ””ý·©¤wOš'{í+…° ‘kÿ=âÈŠÄ\N{@­l'¿Á¢?ní>°^ßúö„zÚHd´6ùÛòg±mJáý¹–¤’“®z,¦/œžL¥¡-êߚݫzµK…­Òk¡·]ÒpTÆ5Æ{(þu¾ds$’HœöãµSiôÛçWùrï\bûI¤Mʘ°|û±ò¤q`. endstream endobj 293 0 obj << /Length1 2628 /Length2 13930 /Length3 0 /Length 15397 /Filter /FlateDecode >> stream xÚ÷T” Û Ó"]Ò1tw‡ ÝÝ Ý’Ò!H§twwKˆ€t·twyƽ÷»uÿ¿Ö9‹µ`®;¯»žg $URe6³7JØÛ¹0²2±ðDåUUYY,,ìL,,l””j àÿä”@'g½ß¢N@c°LÌØl(ooqµ°²X¹øX¹ùXXl,,¼ÿ3´w∻ÌòL{; 3¥¨½ƒ§ÈÂÒœç4¦´V^^n†¿Ü¶@'©±@ÞØÅh ÎhjlPµ7]<ÿ‚FÀÒÅÅ™ÙÝÝÉØÖ™ÉÞÉB–àr±¨Nn@3À¯’ ƶÀJcB ¨Y‚œÿV¨Ú›»¸;` Èhç vqµ3:ÀÙªÒrE Ý߯r0þi€•‰õßpÿxÿ ²ûËÙØÔÔÞÖÁØÎdg0ÙŠrL.. c;³_†Æ6Îö`c7c± Øà/êÆ ae€1¸Âês6u9¸839ƒl~ÕÈü+ ¸Íâvf¢ö¶¶@;g„_üÄ@N@Spß=™ÿ®µ½»÷ÿ9ÈÎÌüWf®Ìêv GW ´Ø?6`Âo™ÐÀÉÂÂÂÃÂ:€¦–Ì¿¨y:ÿR²þƒkðõv°w˜ƒËú‚Ìà?ÞÎÆn@€‹“+Ð×ûOÅ++À dê0Z€ì~G‹æcðü@]ðú±X~ýüûI¼aföv6ž¿Íÿ1³ªºœ†¨ý?%ÿ«±÷x3r±Ù8Y¼¼¼nN^€ïÃüÛ€ÿÿ—TÉô¹?JÛ™Ûxÿ®ܼÿÕáöÏbÐüs5´€ÿfP°¯3@ó{ûõX8YLÁ¿Xÿ?ßÀ_.ÿÿVÿW”ÿ×íÿ¿Œ$\mlþÒÓümðÿ£7¶Ùxþc^gWðiÈÛƒÄîÿšjÿ¾gy ÈÕöÿj¥]ŒÁ'"lgaóo#AÎ  ™ÈÅÔòï-úßÀám@v@%{gЯ'€‘•…åÿèÀGgj ~ª8ƒ§õ— ¾©ÿ¦·3µ7ûu|lœ\c''cOð†±qr¼YÁWjôøk¹ÌLvö.`¸<_€¹½¯™rq˜…‰þF\f‘߈À,úñ˜Å~#^³ø¿ˆ›À,ñ±˜%#6³ÔoÄ`–þ8Ì2¿˜‹ìoæ"÷¹ÈÿF`. ¿˜‹â¿ˆÌEé7sQþÀ\T~#0ÕßÌEí7sQÿÀ\4~#0ÍßÌEë_Ä Öÿ‹8ÀùŒÁÛr¶þmv0ùÀäMÿEœ`©½ xþ ÁñKbkû;è¯5a6û‚Kþަú÷ŽþkÀ®¼8ÆÎ–8™™ÿ†àæ@Ž_ôG0þ 9ÙA·ß9Y l~ë™Û»:ý‘ l`ñÇÿÍ…ÜjKOK Ý`ÙùYÀEYýÁM¶þ‚›fówÔöÒÀÝú™ìj¾¬?ôàÚí“;ÛÿG .Æá·Ìü*µ³šÿî0ë?R§ÿ4žÌÚ<{û?†õ«UŽ¿‡îèjï43±ùODvŽßŠÿååúGó_{Þ¤ÿ5fý5É?æÀ n«óï^€œ¶ ÿ.ç/ ÛÓàq¿¥þ­ ÜCg›ÿ¬+˜Õï´à=³‹¥ð­÷ÍÅÝþp ×? x„n@03÷?Öìíñ‡÷ü‚›èõ›8’ÐéïTÿyTšº:Gäò×ë |ÿÃ}i=€¦ ³ö¦üÁVµÁíwÕÂîŒ;_áÖ6:Ãã´Â8]¨ær¼-å^¥IN9Š™UàŽ&+Í—„NÎúÐÜ{èõd¬&Ie»@ˆl‰œ1æß_öX‰Íìñ-¾q'‡o¡ŸÆ+¡éÂèR'hÎ>…p÷²ÿ¨ÜÍîtþ¡Ã{°Þ ‘&¸D guBEj“Rl¸Œhë¡Å`8馸ªI«{†ŠÅÜŠ´GáÝ{n鯤ެ¬|ÉHf¿ø,ÛWÅUЉ‡å%Cš5úqïM|†L“3•çhIûétDÎèÜÔ’¯‰rß•rf²t8ô«S-hüCÆÄ¹æ(x|>{ Z÷·&L/¨,=m0Ń ­1µIècü}óÄÔªùÅ&>QÓ·ƒl«°:Py,æË?âCaèv8É*Q°Q½¿Ã!‹ßůç®&ûlŒQy¡ys[anw5Žìü€Ç‡ÍOýjÛGLQ˜|]´0„&j®ùCžjWsH<¯?,q(RÍ+-B™OÁ_h˜üPÕ@{BðÂK±™¾mqÞðÙt•mgíöñ\Å”±Ý ¡òóšG‡)ƾÆûé0X_‡áDZJ#ú€/@~VwT-øæ6‡æ‰m¦Ër¤Ã¼rÇŠ(0ëA†Åð¦ÇÀNËä3"=Q¹¡/VŠ ?ûiw¿Zz¾r ¤ÏlwÌ]al¡ìV ´Ô$îÏZ}“N¡¿wÓ˜§;­ë1êP ô3=ÒÆ>8tCþ ±ÅHßé¾¹°¸çZ÷fÀL—Ôw=@ÙNþü>!á(Ε·¢°¢-¨´)ÌJ¦¸~Ïú¸”®À,€CÕÚ¦Áy*Ëןãua÷Ãk»ÀËèŸn#KTûËÚðXhé:¹¼%Ø!zçã<ìFX«g …ts†ÿi»=ûƤO3K^CuíÜíÒÎà×ÍEýLôH€1|µüXJQ¨§ò´½ê‹ œƒØËªýら€ƒÃ¸9kâ«õƒ¾wÐ÷Ä—æO‡²œrò=G¶Š‹Ž? öýùl+©¥àˆÉµôî–X¶ô{>j’¨¡ÂºC=õ0”T¦€Hf·£ž,qŠËƒ­‰VI f…y÷”Å‹±Y´7‘I‹÷…ÅUžÊ¶Qa‡CVËÖ ¬e†LqЦüN?©¾Ùúü {|»´N8Ѱ+‰Ô1±ÔšMééu·EÁèC'5‚°µj*ËýغÐqÎJT[(Ö a„ß¡%œH»âœE‹gmÊK_´˜ÍŸ#ëHœrÅkqò“³^P¨ÿ{RซÅu 7›Gª²Ð–›'MÓ¾aÞk}w&™Æœ+ç×IïˆÝÔ÷Ëø3 óŽCîe–KaP" î¡É0ÆR]JjA£Þ7ý¥n^A¥Ü”,³®ª)¼²z‘Që´9†ç|?]ò (av¬»u»ã¬»ëÌX€žeT™' œ6¤êÏÛ>frãéó°ÃÝYêKŽA<–f ÙðëÚ16ì6P°GO A’œM>£ô€~Ä«u‚WX…Ž]}¢ž°6õÜi£F^Yu ˜W 7§~úW÷þ¡_/q|mò7Õ≺«I¤OõbÄov¶ƒ†^,±,“ŠÐB%ˆ„¬UbÙ{öFÒ—3TQŽÃ!ìÛ&‘)h£Ó,¹Òý±C –™.ÆŠ"ýP{oc„?¼‰ç°\ä¢ïžj™ït“#`!¾*¹x¹¼]Íá²#/o%(Í…Â×™ä¢Í%Âì3-)PÁ´x¿‡áú¤‚¤ð8Mo_𢘮àY5rÁ‘Ž«©ËÕûó¨æèì ÖYòógbÈÇø‚7NÃ1"_¶FN‚×<ªcï/y¼¹ ËÆ}¡5ŽÇr^ÜÞ¹ä:}#Š;Ê¥à‰9ÁÕõŒãtVUz§q8èÿYZ×–Nåd}/(uÍLró¸WH+öôGtXœ3Ž˜v)rýwáêýQŠÚ‘ü“ùÈYäîÕ&À[º¾­;ÆÐ2ÚC…½¡/ëŠÔVâq]æ¨ p©…zŸ7|ÙÇ* ¾Lõ©õÄWº-™-_ã¹ÖzC”;Ui&7`¥¦£™@c¦]×D´К4™—¼ÜQöìG»§¯Ò—Ñ/îãù¦Ñi¯}Šßà gÝ£Uá‡xü@-Z—PÁuååQw|‰áà9)±böÂm1l9ê…@µü}W®ì"/˜üý±’ŽKmÀÁ"Nè»Â_L&FSšpUâ;•g«Vg›’)õÜýT»ðñÕ6ï ›d‹&)7²æ-sì*áœqqNÐÑåð>^GMÛ‚ág;Ø–±³ô˜º£ZʲY ¯ü0Ñ÷Dví”*7¢þÇþÖô[òœØÍv­†R%ÙÒßrgiŽLnÙp¨¡úSë Ëøã7ðsËH |æ¾¾uæ\,Ày^6qs4å™ß!ÎTP.ŠÙ³, hÿX̰ IgØ/Ÿ1`³QõüÌaîOêÙ/º@ì?Ïø2½«­òuL,ŸÃþ†o¶eK ¥ô‹ùí}G«qñ _~£ªn,ûUÔ.‚21ªYD 9,÷Ûˆù7c¾¾oª+¾%pöµ¶ zéœ^j[ÇuUßbUß5º"Ö3t~ÅÑú4¡üé³ôb¦Q†U#v¾Rvúe‰ÿJ5Vs¾èÞÝû§½%ÐÚ ÉÅr¶€*}Ò6ðÀ‘¥A˜ÂÂñ*Ož™ºº\ï¾gÙü¥kÍÕåýC㓨ñçÌ:ÿ¸sçAßôIq´ÓÞ¶SoÅÒô[Hi ÙeßlæT=·Â•ËÊ!RdÀ} i˜óí+\¤Á’¯>2þÅ( aM–¢X jWˆ.b™AjBÏ â¤Fú–­kpÝ;¯`êUÒPó=§!ƒ=`¯GÉcÚ‡Ì³Žµ×ƒÞf?YRéõÝR¬Yh¦VfBl;æpðÓ8^LÇ®žäjý™Z+ Ñ20Ì߉ó…ük2‚U*ïcÙÎ9/tEÛÅí÷/îìÊ襳È%w…™1bçªguÈøcEÙ}i&¦¸ùý²SÝÞhß$è„%_\~x¢>ø®ê©ö{Æ5fYéI(ifòô/I«Ë*ãv ëX¶ç ÚÃÁàû)6'&0ð_ó¼´ó„4qBúÑ…†÷šz ¶Ä½ Gî`óºPMïß9¥ìôlXØ”8¬ËNVÕ–ˆØ¶ÆØdãFlˆÎU¶Qü€E™½›dÞÌ22 ÃDÒ!æÒ£ x¡Ø`î3“,„õ6uÔ>¹·N;êHï\Å<ôÙÖ«ìʨÂá¡ÜN->ÿ®‹bšÌ²á‡F«`IrgüœF ìIn$л—Õ{goCYCø65¾;rf"è…~c#ú¼ÑÀåFN`v„ ÖÑá̧pª‹¸´®#Nw¢‘OXHºÇ^?Qfj(QÞ$ÅÇ凼’Ùs3í|o× ¶1tðÄ €4ÓhSU¿VTãÓPâñÝ(ø v æ,P‡ü•$rø)‰“äœÍ*è Œ½>­÷–*Ìá8t0+p;*¹ÿø$Åc¼G.HKµ¬4fçM6Ž…ê.ÌA<ùB ©²²䇗ŸcblÓuÔ M:.Ãc]T(=Aaô… §ñ4`ŠLr,jÞ?\e‰T0þBÔ&S6ID¯“Ÿ‚{AgþÒ—E³.EG ÒË`  ùÉò8ך9ÄÓÞï®"7M¬—;nç©Ó¼ð$+QLj €à£8?n´¾F¾®K¯o7³ã3!Ø}º-eR~HbïÓ˜!¶Â‘V¸÷#“ŸU7¾ÒYLN¿4á…}»«w“hélRWm‡EµFŠv|ŠáØ34 Y)saSùÃåŒsá½T8š¨j8éGüÄid¦ÆcçM÷{qN¡`–ÙOQd*Æ_ñ¸QYYÇyë—JÂŽi¬Ïàí\½?:Zà;¿»ï5fŸRÃ}¤éu#°‡vñCxW|ÄÚ­qÖ‘·4)=ÏÀR€>fzÇdRøåuìî€Øk|ðx€¸ q!zêt&¤Ï»‹t¦ä»‡ ÷á$ÚÐÂq“50xî@‡b;åçÁ$ŽÙ—s«/?þ˜é®,L· /crü¡õmâ·$e¤Ào«wÉm¼SB yx¨ÞB܈”héd[5èjEÛ’me|'V‰vó/í ¢Ý1xróþ¡r ”ºúHÆë¢ÕLþr&Òšœ¶´øÓ«0Á73oéïXÚ‡¥½& ]´³ðç¤f`˜ôsÔ1ðI6ò›û¤Û\“djøWY¬.W;¹ÛÔçÕº(­?Í5b]éØzÓàjVŸr5Ç„6š u´wR†ÅEÄfô…†yÓÙVå,ê’ c00‘7lBi†yð4¢I"år£m…N´)eÊOÏ‚Ãñ¡G DożûìøEÑYÈçÇ4ëã„+‹˜[ã =MïÂFú ¥ìéWèº<ßÂ>u§‚”ÓÙq(ÇnèØùP{–N빞ÁêÏ, s 5©_ƘøÚ|· ë¿¢k•—ôþl÷ T#$Œ¦¨Ä§Cìy«…cý°¥Ë…Û*fHZ<ÙÃÝÔ/ä½X]—ÎváçîÒ¶ŒPõΜƒøE äQ]–N¨•×ñ5ªdñ®”ä÷Þ*s’˜Á3VMº»u‘Þ m‡ q⯫kZðŸvE|»xdXÒ]eêiÒî?<‡Ù¼°´¾°)‡¢«d¨ù™wÕâùú-¯_vgå5Óyî‹dOâ^<Êè %1¾=ݨKù®;±a[+žRšÎîODOõ(K¿èE}’ö‰ðD9^0ÃÃzº$‡¯Ç,Y3¯³ß¤Sj‘XÕFE jQѨÕ8𾎀 Ÿ4vx}Ÿ4»5òÃ. T½A”3‰1{Q7´BôCoZ¤;Á=c,àiµS•þB£“IxñdÙõ@fCàåÛ`çM¼¶ªG2¾5Ѿ9·ŸJ •{èÚbøÚb[{Îñ• 6.,·«¼\A•ɄޙûSŒ»Gô`÷;¿})'D™Ì0ýëoçøØ¶²t3œü|Ùý§%·°¿›àPc‰Z)ˆ;ŽbZòö‹Ó¥5ÒÚÖÓ„ß:36|DYªZ,'“@P—8IÌÞ»Í}ÚݤG67¨r¬"a>Lf"læŠ%°çz€8ƒÙ÷ÖuŸ:h‡ÐOÆ#‹ióïž+OðˆØyEc,†m5d©¸v‘Ä2œš<뵸%Nùój¯N²øsYCw$$õåë]FeڙǥõµùVãâ¥O­‚bNŬñ»¶2äÉ/!Xj£h&Å÷X'pXºˆëTo~̼*øI<#E-'Ã/‹ Æ–I6Ç…>Sel6Þ%2Š¢·=±­nwWdzHí)ÕÖä½%fQ‡T¢ :¢À‚/a`‚©Îl¦ ‰–Ç/…Ê©LmÀð¬ù¯ÖK`~ÉGÎe> O <¨B8¼CÍÇhÐŒÞ nŽ3ŽSßE‡9»zÏÐŽ{õÕÝTô“D„½Úw Uê6½/öšÃµøMMz5¦x%ëINƒáܳõzNi‚ÂöÙî\x¹÷ò´´Š"gnšÄêĹ|¸•²"…(ö¦ëxeÕ9¼é¨–ìcÌ,±ëú |ÿx!òE|uéYDYh¼‚Á—mqJ¼ÔMñqMöëZ@9_“b1‹Bƒô4ÒÚ£.™ˆˆ­´ÀUó™ÌFOýÃ׺^u ¿ùë<‚ÁQkóØ|jCX€={Ôz^ ’¯<”ƒþkDÒ¯špb+pu¨¦µÊáňÆ7Â{Ç,o[Ðä;‡#BŠÖx9]#‹úN›’vª&죿Tî*jv‡Í«nÈqõv»ó¥×v™5#>9븱ó«:Ñ\ ˜KÕIA‘Ú«l–áø˜ŸÑIŽ‚_;Ÿs²mßZ]O› C¥K©é~©„„­q”ÜáRÝ,Á~³q}ŸhP„‹3Cýž–xRSHq_oI¥Ñ9 Û§“u‡_‹·x·ÚF)k=xžM ßò¹Ú¹ë$Ѥ§(^8xñ§R¥çÉè[†Qò5û×ó=›m¤[Í?Ê{H/cžÉÌxµŽ¯ÎøÔÙŸå)îïDR>0vmn > ~ Õ îVÓ×3qÝ¹ÛØ˜ô`§<¼±µ{dÄ~Kø3‚àù‹ŒM ”sq^k‹‚P §OÖÃÞb÷-¶…êXp GªaÊ;fÿØ\o,K½ô²^¿Üm÷™Ïõ–·è¾Ý~½c冄‡gmª/úUÜ„:=Óó{£ÒT(’KÜ€7ßÑöì­›9.#6(Lȉ]ºÑä­ÝµQhõ»HÛã¾w„¶˜<—”‹ÿ&úy¢S2k@©Eù†g¡âÕÛrøzŒ:úð²hÒí¹.b ÍµnöÞijaMÏSˆ¾Á'6|GV5?¤88O¯qnÛêÚ/Ý.ŽãÂä­:ê³±0×òC•ÎC_sV2EØBëçûÅ:^A´ä«EÝ:/cB£%õ ß¿©ÖkÙ9Êu¥‚Š›¯~,\õ]5ÌFÑDD0â°ó$8¾…… v©ÎO… JX'dqý|`àq ÿV¨tàæŽñ9Ò@8T•8çò\4 £ý“·„qaää5ÃÛyaïò—¡ÏON§¯´¾‰ÿ„o;8l†9ml¨ûQ¬£dç)†ÄôZît‘ Sû º°„•™?Ôk+P#¸§³ÌÌ$ô#'Ovû˜«½)¸Ãá¤tJ¯ ‰±€k|Xe(KN §³ñc&>%L#z›Ô½§!./z… ½JP7*{“nû«Qœt½µB®äò·ýñc‡5‘×uü³-¸„°zƒÖ©BM%´ÐõÁx˜Ìp)P©ÊÊ‹ª ÐýA*Ý¢é 0p“Ã;W,˜ˆ_Þ†QíYBå#oË—H?Æ ÐXØ2¶%ëQkËçÇ´¯i²&Çeèîú¤YÄåµû!îÇõ`íù×ÖÑú*:@±àõÝZÀ÷p&ú9ãîΣNÞæ t\ãƒÓ’lèGÍ)ûœ‰a‹¦w”.Ç€“¥VӣȞ£GD Gk:H¦°Yò=Áž("W+ÜNï½1ÇRÙfù `6cçwõu¾ëõC(®HlÂ, ­¨vÇUª’RçxdŒ“h:É•OùI$•”1ReÏisr›FÇ™ªƒ–†¤4¦imYÞT– ¯àXVxwã‰rŸ5%ZGËwÏ4 ß()P)LÍNJi(Ŷ+¦'*×EjÄU~š,pi¼i½þöÂM¡z ÿƒYænÑK„ý{ _ûaYWw;’‹Ž{)'þ›”Ù†ƒz 2ìñó1{Þ›—oí08¥%âÕÍ÷OŸ>kƤ‰Ü0m{6M± ?$yNnÆþÌ‘Ãhü Ó÷ÒGO¯kÙŠJŠh‹×#êüt\-¦¨ÌQò¨4̲‘ìâ²…½.—b3@ó´=Žy ý–3½QÕsޝ£+úFÄÙî>Ó m]ðÃ1ÙêÚŠñ1Ù‘<쥱¯Üzy^½L iÚVíÒ„»ƒS&©ÚÝ›F{·é‹ùKç/ѰLIÃ"ÅÛ$úœuÄMÒ¦ó¤â’[g'Q•^§æiüÈ/ȃ’Vnùå_˜­oóUHÕ/û· ½2 ¸“Û:Æ}f ˆýn{Uw¬hH¨_+DàP¿¤4z€ §ñyMÝšXfe§-ͤ؟øö&'¯õ§Ã(í’ÅX}"µ]„Ù†d_WxXa²UÄÆ"s×6°DSûl.LÁ‹7ø*<\kL¿Z@ zK*þ’²Ä w·Mºš] :Š`ØK[b:7lU`˜`i#|•ÿaÚhHO_ø4M›õþ•‚~нP^ ­°,í±ŠsÂí˜M{£YTˆÊ±›‹ƒuˆ%jIuL0Ûô!—@`B],~sG`8Rfþ/KÂug„¬ |Í|£!kãIͧ·>÷q%ë´Š¨¨ïÛU£ E7õ# Ì-ÝŸ¨>R2±Oõzþ æøiäTÇÝ:6“pbQŸP5G2EÜísÚy*à×ÚL2ë&ó4”†wׄ‡yôêO²ÞˆãÕA Iù:9#úU׈FÅku¨èÄx(R)ØÇŽyJRJ>$Ú¶ê™3>MÔŸ(”ö¼IÎ-H²eqr¬‹ö´¡7_択W§ýÍv£&®£6fÇ©QYŽ÷ZlŠvó“KPÎöߘè*õ"ŽO½Ö…L®!ßTÈ-Q©8Ð÷˜ 'Á=Ä`N(‹‡£u`}º8É\W>«·É•›ÝÈS:s)ްÒë\;e–ªPWç"¥•f¦ßQE~ª¨FM–G‘×ÙÏp)s‘“툈‘ÉA„²}‚ùvÏ~K‹n*uUjWå‹­œq=˜; If·¥ÀÀñ¹¦˜àÇÀ5EŠt@ßGº ‰8ÂÞáÊ•ûË…ð/÷^áôÁÔo8“,(Z¹`EªËëXµ§#ÉØÛÔŠ_!)Ç|VÞ¹!ìhÂ`‹@„ÛE ´<¸¹Œ*”›åž)2ÄÔe=\ð "VœŸãÑC_?‡ `Š {x(mË]t k_ÚU;Èßÿ‚=s™cc3Ô©“Bõ¼Þcþ=µ"–!»ä’5Q¨s³ÕÐ/S®¶X†X˜wËÖ¥ŒYß•dNÙ$Û@)ï5¹‘ËðÃÙÆËx,5\ÿ!ŸÆýWäÝ–û­]±®o~Iñ;.§•à•u§£YVq{¡¨ü.¦ Þ©`—âòì.ÒCÙ™¹Œ;ï›Î À·- Bócm!¥w´['pˆ»“ÉO»®b´O›zäIîkϘ8!Ø(Wgó?¶† vz‹Š6_SA…mêÆº;‹YדܢŸTÏܰ ï:)øˆ™Ìlë\àWt wI$³<Ëñ|*|^à`Ö–Cà‡¦S²ƒÒƒ™MaŠË Ûnk×­½%Õ‰Ü]XÎÔoÈüº.Lq«0Vé(Ÿ+°Ò!ёơY ž˜S é³5Î ­ªÛvÁOq„ô¾ÏÇü)pDßv>žÆ5nÖ»E_ÀáØÙܵäêàé |­‡àp{æò]FXÉŽ¼÷n/4礛1Ãi6 g° Y¦¾QtSbÿJ%=t)ÃÖÕúËÎkR=Òææ35vd(1åÔE ÙFUÚruáÕgr!(åÂW÷.¾4¬¸§¶ÛßÈý' w{ï¡¥LUÒ°Œ]),/¡9l¤0ç1f”È|à†›—IQ¢W;´Š’ø0»›|¥Ã2»`Öðw£„Öcxèjâ{/I¢„Ø{ uÆInqã+ʪù´Í‰÷v^ü9lö°ÞÁrùŸ…n»yñ0ê×?]ôñÐþ .ÄL©ïi’¨!'’\€e_]rÄE$õI$s®qÌñGnQ"‘!´Yj’ºçf¦6|Oêní·a¾AÏDú&{n°é!T‹Xx¬,ø†È×Eœ*döëÔÙ\s"ó퇵×2å©¾É Æ~WE ÀWÉkVaÊͳáûñ¥PëÛ˜ýÛ”½Õ,0ê‚ s]V6‰ržQ7[îu©œlgºs–äh‘ZÏP©dØòÃõÈš gÉF˜ÏB6g|ëÞ{˜¸"\S’6#Äï‘XåËHß•æ¬òÿl|XEïsaÙR$PY3¤,¹ü°¬˜ÕÍ~E]Ù9ž©ýŠ»^¹:Œ”¸ï6[VÓgúqABª"6(,ð“ÁKY@æìýžaö¤kûÃ|)Y-_ÎÛÚ -h±o_¸ŠÍ#¼bU1:½ï‰ )l°ðöžãÝzò ü ¬>© 娫^tþxG7»Vs´»„SwøÜô(p¾c!¸ÃÛhqÑÔŽÓO´Ð€°;³Éy=º]6œ”rå}½FÁ/“¯ù°…ÏFŒöÈŠÑ„\ì?‹ð˜·-ª×\S)$… O­©æ³ÌoÒÁœ8šQ 8ØaWYã4yuÒ\‚)çØUKEdº*¥›`€åŠBEû©UÕ=vaËÉÆ0.ªz“Btû(dt•”éVXvbéÞê‹}Þ›6©?XÞ]¹¼P‚ÄJb2Fö†C’EWÐàä}I´@Þ£SÆÇç绺Ôu6¬ï«JIE¥¶úUÃäîõ®Qϯ,›rÂìns¿RE½’¸¦.ÈõQ{¼ÅisUíÌ"+²‚0«}ÆJ‰ayÖ”2Z•>¶Â).›ÀéÿX`n/ñI$¸«¥ŽèfXˆ–æ>Æ„aPÛ†W |ó*ŠŽ£UküóËhi}ÆÐv·}ÙˆÁs1$p(¼oDn 9˜+C½­±ã*ü‘nYÊ“™þÝ“çÌy¨“¦Ùª,ûZÂÄ|qzNþE½@$º%öAþžüû.dê‡hôÑi®tAŽï !pæ=‰äøî…žË M@þþ'Xš‚ u:wuÀãñ»"1¯ý6¢äï9oëçãäY%æ›í':bV§¿NdX+,T¼µ ÜÒ;«ªUÆ>Š\Î…¬ËK-ºhÿföMzSW&‹ºZ=_°©o¼§ýQ’VÞ&ôO}yøF<ʉPð=Â=ˆ)fS/¬ Ò2RFg‰jp›i ¿wUá3Å–²¡o†Vu:›:*oàBÄÀa·Î Hâˆãaå³Q{ã™M¶ PÓôƒEÕ¡.ëaŠ#/á#h&ƒDs]·¸~žö­ö5zù›qÆ=í|>à ï°5 ŸÇ|¸ß;&'¾×í‹1š,ÇEðȾƒ÷Õ舅1ºµ ÷ÑÍ#EÙËc…ê»kM#hÝn.PèòµlwøÈ V±m—ÛFÛÚ‡½ÔQ¸Åæ…»Ìè´D‡pw†Û‚|ï)? $"u ãéË ˜3ÍÖ" ¶;–J[Y6h¹€ã¥æÚìÙ™? ¬[÷;zç@;qFè˜g¯ÅÔ7ª Áïó~ê”FhBôËð~tA?+E2Jýºí.µN}‚ë»ø¹2Ø=¾‡åÃ9å‰ÙeuÐÝ9ÍÓÜ•™b·r+hØyrhðÓ«8’‚R-oÙø¤Œ9æé½ZEwëìDK jÐâäÛšæ&ŸŒ™xX–dCö‡±hR¢':• IGÏ:s½Nyj6S^QOjÝa~}™µÞãºæuk^¬^ÒÏ=áÛœÐwH—‰çö»Ê”w­ÞRX3ïË6l0•sd÷ —ȈB¬» l…®†h"& HT‚7©øaѾ<•âø¾iãùAJ UAKØÆh'SKµB(/DzÖàhʺӑJIé£Þ¬ŠešSÔ㨢|TúW Ì7U'”ÚqŸþN_Ž´¿« v!AA [n^?ÍàuÕÖõ7ÞVS¤–·²Þô6â^ÜGDö©ã„ê¤!s÷˜úÅÓk^gñä4á°ÀDŸ ÓÜ™J=z¤Y”-j¡®ÚiO—à,Ø3?ðØ„Å2.'À»W6k¶{Ó¢}æ¦w2Ò­"I.‰Ž#¨÷ÝùÞÍÞj¹Úµr.SÃ) áÍ5::ñìzC1`2vÑÎhËèº@Ä}¦È‰-¥1å%DFR³7ÚN©eÃq{PP€Ò‘¾’ò¾™à<‘Ü8&ÇðšÆ$J¥Tj„Ç„Bëâ\ÅC‹$ªƒ“¤ébع^µoN œ«áwñOø¦[ŒuÅ»<8§ðE áLÅÆ…8ÿ!Ûʨ˜ÌCNÞ #¸wø¯p0X‘é¾MôXnÕ²ïS0+›â¾õr?FžçLâX§UxÞàH*H[³ÖŒ7p¡&ò6ìé(„Ûá\_;Õ‹2ܲ|L©…ù¸ü½œc#æ–*é)â'î•bìæЃ±s/ûÁ>O÷…û§‹Èœ¹Œm /6ÝHÌqr—±&N½ú¢€ Bs<Ƕ¦¦¤¨8 ÜCr Â{œ×\͇T£‚´Or¥šP‡³%¶’±äÈçÇø?¹™Þ‰q£M”2ÜèuóKCôUÎÅØÝ|÷η3ü^ˆB‚‡|'ž ÏÈé<#;ÑûkÛ+ý™R5ÂAkŽ ·½ØÐƧ¬“sê åœãHyh ;䦸×ë‚Ë>ÝÖκÈÞêË-±¾K¹&îyßÛZãúJMJò=]4ͬï÷^·™E‰ ¸DéÊÛg§DÂÁRQçV«õI‘†j˜ UµÐþÍO˜?Î×öß´ôã1éZ27:YNÄw<4¸"„LºwíKI^Tº÷Ä«÷ˆöõô 0xù5ÞX>Û-¯ ò=œ\DáÜ„qKᓵÝ@„M;.¢4ç)w`Ò;ûs**9Ê#‹çÈËÂWk§÷!0ÅâV6šÙ3=…J‹¿¼B˺ýêLò(üA:Ž1±×”EýyÓAÏ®ï9¢]„`gû¢0¾d¥úöÝarÁªñ=í1dã\Ï;$ÁÝ1-[™ÜR Î@ÂeñAÇäÉ(böY{§æâx3sîœÌéòA…K¤’±#{ëšÄÃô“ªþc¹šCœ°êøu”é탽÷}(»Æh—l[ô$ßMMK(hï±ÏIùãÅ$u\ëG<,Š8ìßs«-0N…~Fu×*¨<}O!QÎé}œT'šùfAÖ [ £4m…-€W˜Eù€ ¶PS)X72%Úeý|>7a¢·FÊ€bŸJ,+êwŒEz‡n‹™’GJêQG öÃ;k†’ÔøAJƹUÙ´@ÅŽØ!»ê–Äû‰ –§ Ô76]¡?àäBz†Ê?¿£ÉBñ€œgJ§óg±¥ •ÐF¯¤J\kfº·xx? ­*œW'ëí¤’Ï)øõ‡ÂÔ}¢àq1ù¡=â€,–|pÆÄ¡ä—ýd•¢×ž«Ü-ì©X—k>œ4§æâ¼EA^MýY„k‹ÓwãÇýYd`ýÙl䪺mó“󓺙½LÊìÖçZÌÒr#h˜ÀV]l&Ûñ±¬ÌèdUÛ>EQ¥©FÎ=&í˜]É=ò¾ˆµ mÖÊl;ç_ S^GÙi)yúrп]:tæ >ŠÊD³=k[™A¿ø‡ûòv;Ì‘(Ÿ”lduIémɨýµû®³Æ@j| ƒ†—ù(Deº—¡ø,17Ö8¡øàë„Ù8\`§Ò£™Ëcª;’F`uæ,MDʽb{Ü•ì'G…{]ä²²ˆ•—‡ÞdPÖÓy`㻺 ß35Jož¯§ÐÕ<ŠçoÎÍmߌ<Ý.ÈãÖçsM1ËÑ.o¹6¾?}ävûL¦g~ŠM+wž…!ÅQÙYæ TÛ;ÁÇ£7†J Pººêóú²ÛרðU-ç©°‰ìëîgæ¶“0þ¶~¢†Úøöű|)';™*üiJ±5=a¡¦ˆΞ§2\Ø}¥²Rb2•rï=äwÏœÒûè,ÓÇÛ(Wß:¬¸öËÓ0nYKQJ™¦gk= Ñx麜Œ©uv"–.‹3A$Åþ’FM1eÒ6o’ÛäC’äÛK¥s²úöc«×ñ¦Z«k;ð}e)©%Šë€‡TvWó÷žGã’Éúœ]÷Ÿ2N9›â*ÒL:‹RP8ä-fÒ,Q1ÏøråCÛVCë™ïI¬Ö’ÊÞ:X3;Ø64§j†­ÖÀt;Àõ˜ÀT e‹›þØwž|Ι¥KêªuË×MÑâ+4pŸGu/õVÇvÊÈ/T*G— X`ø±³Íl>îB*zæ&Ú<^`_½ókº$æuô פQ͉kû$›§fÙ¼½B;~žÔÇn¼ÛYŸæ­«Ù”Um™Óи–̃æu1(¡‘a¿ê)!TèRwÂB@¸æãòÊf šr{[bθzÝ Õ¹î–WZ㤰ɚ#ãí{ÈÜæ“ôÚ¯ð^¹²k‘-4ÎCAñ­B¹šø£â­}Ä͉=ïÒofù¥÷cë}lm7vˆÜ=j•ÍðU¬ šæ)úe%Sø¶i$á{q#ÉP]ŠÌ‹/*ÄnÕïöÈI£Ñ×9l$ƒº:W"’941€ï~JvÕqù´‘Œ»dÝ'ᬔCGj@“gýT_”oàyfQ*ð1» a‘[  Äâ$3¾ú†‰õUGcÎÖè“…¾“—BÖ“O†{ãÞ/CÜ%9‡¹‚0»è%pe'KçÄJo ‘4 {+Drò3_b¥oõ6†dv”ƒ¢¡Šö@kJ†¤>Ó¤H[˜(-YÁ5ÃÕü Ê“¨C‰¦‘tõI?¬LL²qšLŠ;"¨ë9ÛWDû¯ŸÑؾ+>%7É×Xœm¦l í¶@*Ê…¾®î˜rþaÓíÓ'«âél1ííuã:räÕLèr&ö®¿,½8Øåо·+v†á3E¶µR qw6Ü`æ5£<ÓÇ q…å³ôç$7ˆ×íežg ¨+(ÂöhcWUlLži÷™‡&çÌܱY6ø'ñö¬Y. û ñÌ„ƒRjêM'èÙXcÉeÃ…÷ð¾y)ñO8ÎlšVÑ@D ÿùÙéè‡îãÍÙ¤]ä—ª¨0Ó _µ ߦ˜û{ù£Õ5Ö%PNÕ2sêpôЯ¯?©© ¼'rJ?@Õù;rä×é&˜ǟdQëhÿ »ÅhÓ!ÆY?/à/娘Z(\¦a™}ˆTÊ9Üçö~¥¤ÔV¨éNr¸¿»ƒLÁæÃ˜Ñ^ÎñuÚ2&ùlö@ÐPªþ¨tL:(1 9£‘²5{ĪÙR̀ώ=’)Ì®'¼ªï|Ùë9ôøî[•Çœ—E¥‹‰Yc£å´rÊ”Ú9Ei´9r¤óùb‘Ó«…›,’ÝH¦ØåWÆ-òx€Ñ¶jÃ’Ö$=¦Dr{¨ýé( >f mEì>PS½$%;‡Ó‹)(÷€p|)JÕÜ‚3gšÜ¡ué˜æN„ú0DIÿ!á“ÊÐ DY •²YR¹®®-à*öPðu„ÌÁåøp¸þy7BåünLŸC­u u΃¥X^ÛâO#Ó=£†9OV'ÆÉR¸·áß\ËFJîÃ1á(ÚÔv A]Ü_~h4ŒälC·^k¿ØÒÇ 0´gö % P㎦ZKˆ Du$¶D Ƽ¿c¸‹ŠzßÏðµò"ÆúXï³Ó%¤êqzƒ§Ó溚`:Àãðm¸¿wv½ÃúÁ£šûéw ýZ¦¡ìP^CfyÊ3øŠqÖ‘Qï…îÀݪ‡êÙ…µÌúaÙjŸÜ"ÞL5j"Ÿ³nã7=3ËŸ¸S¤ÓÎÐU¿ˆÇYI$`펟úæ"¼x29‘Í3è‰5jê_•ËPz%×l©©+dpÝ7{`›PqÑøÏ¨eJ1©¢ò 8ßn¶Á¸o»U£Ñ}ŸœUûÌY4C Ç€V¨ýƒ&ôõMÍÏ×1çk(öä=©¬ª¢Å $O„ó lÉÅÂ8}8mÆûc±jS¡PX–ü>ÀÜ”NK«X-FÝòðH‹>Ÿ>xuòä-Îâ7g±¡Ùgv6†fзŽ£¬:#ëúýЋ™Á 'Ñlõz‘xаPM»hË tÖ¤úTŽ ˜qÔœ3ûþèöbu–Ì4ÉÚî=b*=i°îÝ w|PÌïï mfÅÈg¹@>† Ï£n±)Á©0µ$G•9Åçg9Vfz;ýÜÅrÅŽSê„úÿF\DoPvñi“— e¤&Ÿñ%hÙîHY 2U‚šUt1‰c¸^`Ffh3¶ƒˆÌHxBHÈ ‹°S Ú ÝÇ}×ÔGŸ˜ÿºsI°‡Å0dšZ çgRÖΣ÷ÞóǨ‚°“Wv̈釟V˜‚|’¿:+ùß ³t—R. Ü.V©®ê»9/i€EiÈÍ^ µÖ÷™³©j²smLeЊ^4ª{H¶´L-îL ê‘+ÙF³jU„•VÆÏ?óŒC Œœ´ç©<¸·£ìbc;%p-4z~ƒ—“÷Ë3›¦¥àÆ…IÝ?Ò÷ÐÙ¢€ñçðcm[¬}|£ ݪè¤î T—EÚ—6²QYÚ¬ÅÙwùÄÜÑß/©œõ—§Y1Ó˜}£Úa÷BCLßèCëðâ›ò®7D¾º(Î_>¤ùGØF;ÿ¾²ÔE#‰¶ÙʰӚP”¢–èYÁô¬ÓÿDÊó³X$F¬¸{6XG¾ÐW'æ„„÷.Eò @Ë\²•¯¡ß¹žnh°åI^[±öŒ'7¥c%¥Ü=ú¶š—Ëëê¸üUÒ[`ñ8̆[4ñ|¡‚æ,þ³þµ="L²˜2E´â(ˆ–¢Ib4áðË&ï‘í¨RŠH䯠‡ÒRªÊµlž1“}à v¨·µEs™|¸Ð•,9ôì{¬ªˆßID¾Ò—"A> ‚7„~€6(ãéÌÀ3²Á ‚·°ÁÖ8féöß§:g‚pÞšon§S©ê8B&±b„Ìt€.E¾;ȳSm1Aú\„½µfNð¬üŸfFçKNtŒú &Jªº=0L=V=xãÛÒ àØ0‰ÿRd“ endstream endobj 295 0 obj << /Length1 1871 /Length2 9477 /Length3 0 /Length 10634 /Filter /FlateDecode >> stream xÚµTl-LKI‹4C7 ÝHww÷CÌ3´HŠ4ˆ€tI‡ JKw)Ò%rÇ·|ßïÿ׺w±Ö0ûœ}b?Ï9Ï0ÑiëqÉØCmAŠPœ‹—(ÓÐÓãåüÜ@ 6“>î úÛŽÍdò„¡±1äAA@/bKíA¾ 7€‡…#By¨'ö¯;ðÈý2ý‰D< ÿ a!úo„`jüF¦Ö?HÁ4ü‰"˜6¿‘€Çö7BÄÙýƒãÉcuEˆÿÛ" ðËâæö;þשðØÿ òx@¿3ðxÀÞÿ2ð! P/Ï (Žÿ‚ˆ Nÿ‚‚ð¿ ¢#×AD»n¿!/¢È¿ ¢èïÖ\ÄOÀ¿ÜˆVÜÿ…·%ˆ`Ã@nàÿÊDp`ˆáwâdá¿Ýˆúpè¿Üˆ,>¿!¢!¿ß !´øƒ<ÿ¤ÿgjì¼<=Oꛩ¿ñï7ä ²Ãž›†Ú‰‡;¿ o¹ª‘¡ôáÚÁX^m‹J4鉄3Ïä8©?ÈPúì!km_I6ôZ{¶4bbú)%ûáÕ¨¯yGfÈ×Tå8’BϺì1WÞÀõY‡#ˆÆJá8&ü:jðè¥5¾µšK²ÑôísáNþíª­Â»6ض©èÀ P|A@—J “ÉnÛC‰1¡c\…š˜Äyš¥y髌ݡĀã/e[bɯýÖÍâÓ—–ú3{{^óŸæ«uU UF““ø«Òe%õ‘?z™©ú†Ä,+x!WšYöi&­bÆÓB×”Ýð°ú¹ÙTо3‹÷ܽ!™'Æ÷î68F4”¦xµUé¼&¦‚Ÿ8AÓ¥“>ì­J€¸+†ŽAØ5Ú¶Z‰îty<>‰ðø†>V6IŒµV0 ì£Miª-É#bé´á¤7r½0¡ÅUYê´Y*(e8x§ÔÏn&óŒ)sTM«Ð‡d›žáE‰Aý²ðÓ]V¡!•3 ‡”ïH¦ÖWÊÜÕºM;•†5’ÃC»Læì°.u·ìyó×›" 4±ë÷ê¼™×·öý:;}Í5JÃ|ÝE ”(¾ø‹¿t+`_ÂViÌõ._Õî¬}÷uÕ! ½#tŒåú2­%l)ž›ìºìƒÒêÒchÉÏÕqTïÊq‹­û÷q‘ Jas¼áòÉá}vàCÂ1ç›ïþB÷lã0­Ÿ<½ßÍ:+L*·¬áÔËYHz݆{ûà²ùâD/î'¦fÿ§}ÆÙ°‹aÌ"êŸùR»€sµ"«{ã]ë¾¶MÛÏS!ÛëW‚ÖÁ°Î¡à}#Ü;eõ0ßGͤwÏ'A²ÃllHÆðOæ_­š¹^28}ãHë6=˜~Ș|wæ„Õß»×âkx‚Ä‰Æ ±ÍWL^N±qI©ŽtÈ-8—no©PÏ“Ñ*Y¢"Ó˜OÖp†IB½@§…æEÃ6ï¹ùí¢q]MMjv8B¨O‚!ÝøŸvì4 Tý(‰™ŒhÈÏ*¸/~:å©a·]î­¤p?߬Jõ'Á5Ý»gZ,‰pDrý\¾á¡._µz1Ð ¿¨HYöaŒª †½Žƒø†òãBû—Ȇ陱þ§Ù^Æü ÏØVšÊfî¾³}´¾„Ñ”ú® ò«ñ`Ëj ?˜ë¨º#5vf¼#ö@}-žAÛEØ×¯Ñó%XZmäì' ÷Rën¶•zGa7«÷'V2-’ˆÀ~?fÏœíWùkä·/†Ð¢9UéŸk»hh†Ö¶ãÑúë±Õ›GI+…¼ß‰i° ‰œøxJ Ìc!•µ!ªcXþj*7°8¼Ùlñ^NÌ´ƒé+Û}ÙÊ,ï6¶4È7ÃRñ¼›…­Çg˜º‹±\pÒL7ÔkM—ÌÓŒ%’ÑqX£&NùÐ9­—²ÇrC.òã-Y0‡×‹FõŸÝæÅ‹KÇŸbs³Où¨æZpG„»[¬i\¦t¿}\£?ëÔ¦’Hά?yºëåpœ«ˆò9Ÿ}tä¼0³zšŸËØ}õŒ¢Ì*""ÈÃw!lÖø'÷aTÄ I<Þj„E*}„šnMÑJÏíŠ$ÛT9UŤ†[’Ûð]+i_›)ŽC~äjÑœ™´å¯~ ù¡Û·˜“Ïžô§f‰#UÌ|¸òNUšž<'°“>‚½ Ö@‘`AéN¨ ´7~ýyfaÆäC”{w¸—–K÷™läksâ‹5 eÖ™k7Š¥ÏŠÞùñq»Ü(;Ïž•l¿ëõ{d¨µ ÅMòÉuaëú0þ€°z©î–ò±¸¦|fomÕ ã,¥²ôO3»6ÏGþ½Û¨›»Üœk8£Áò%§e WʪQ”9ø îdѽÎq‡çÓ†Ck¤[süMqãNʘü«ôŽáŠôÔ9ƒÖØ}ð÷ô*¥Ý±Crüé²·‰W.e\d{ÊþI¥.§'ÖgO–ωý™Jªz*¯l€ä#µ¨‹rŽG’Ñ{Zx.—¶ì+#e¨tŸ] Yqo¬Çã^Y—GCySFRîæµŽñÚË0Óqê ‹|¦+C_§:„ÍMâúµª8iܧººÊåI«’¥Æàg™\%ì¶Iìe²Â|½vxÎôeÿ »!¨¾’l©ÊËmR骕¯7!çõ±%’ÇÜnõ!S@êdtk:@&þqÿ1Ëî®×FnÜ yä6zsÇà™á7í2‚6Bç“&p©’÷† VîY’ÇÆiçþH®æì‘ ú«:4Æû޾Ëê·šXˆ ¬ÝîáÝmw8p‰±fŠ“4d)ã ÓèϺ!ܼusÂ÷+ñ ”üHAšÈ„ gŸSoX~ê<:=;Ñ¢I‘rÔ½ÁIÑʼnäl†›ž\÷ùTq²{ÅŠ¥z`½k?nŒN¾‹ÌãEW¥Û*8™½–Ì$S1 ®ê|eó`¾x#Ú–öe0*îå3+@ä©k“VŒ¡™½Ü =~"þZL]wžN·¬ÉĉñÅo Óì¡ÎjZÖîVB"ŸŠ°ùaO‹ÏìU¼ªÇ ñ6O'FŽ#ÂN?üòÙ¦_™ß]V”%•ÿ÷OË/]jÕ0I…Ðn$ߪ==±A§Pˆ_ö¼ÖRl͇ãÈʶ2hyaj|< ×¢5òOJxðàzÌ«"ÝOÏÐí ˆÝuðÄã6ø¥¾¬.ø½)cÑ^|.vo‘å2Çe¯)q–â›™>·ˆ®Êìã^mÑÓ ²KÊX¥\—92Ö˜‚}9—Ìz­‹|äÓvwhÌ'F ˜@ÿ¨|l¸¨¯»åªïB¡1¤–Ÿy¼§1’ɨ{JçY}&ζûŒhöø QøÜ¦pÀq?u¤ß‚Éۓ_%sorOC‚X·Ëñ4+ßädÓ½Ü#ŠÚ œyö‘% ÜÄÓ7üWß{’?…Ü&I³®“RtG˜©LÔ\<±Üq˜ó÷xL…U“!_³Îƒª¢‘]üD"êû¶gS±AaRúnTziÊA°iáYó2ÒlˆÇÀ¤XâóüδøÉ§¥Ñ©!æE´«#§8^~a=wçHOôEèLΘzùÍ`Zs¡$ M>ãGãò"7ãîš’» oñYwËM3¢™zûÔ”•cI¾ˆyC¹àý‚Þ‚VK°v¾\÷škJ‘)k)/¿÷z½V¨H,¿k,/JEä5ý„•C826œ]G'Ù_ÉK‰YÒÜt9ZXR%&²'—µÅá µ@îp[Ãæ°nN‰ÃY?s/"ý¼NG?wí€>â™V¶ª7/Í»ë M!añ…™lMö 9,>ŒÈmÁÖ8QÔé~—À»¾‹éÙwX¸½þvj9òIy¸òþ•âªB¥F§n¿Íïq I¾”̾ś‹6¥ •œç×>d9Î$Ùèc‹ýtc‹ôµÅשŸË½úÃÛ&‡j?e'[ŒH%¡Ô¹‹­±×(íë|£g£nÚG?)AŠw¦&{zpÞ }|ó‘K'ÒVÚì­"vI˜>nh™ù^bÝr|JEÞàRö9ì(kJdRa8I‡#Ÿ÷2+ÿxŽÜ»Öúã@ºEaYð¡ aò¾CñW¢6äÃ1ú—ó´,åÞ&Î .^«9='7Î󳂃˜ #¨êyíCKLHÍX'y5rñª^ÉîGdǶM9’‚Lž£ ÜЦ¥2=»àÀ‡=|8ÁA›Êæ±5o\pr̈‘î…Qt¿6 ,0rw§ìZõZ«Ih†¼{q0™# î¿ôÎsÑíYvZì XNlÕ^Ûxÿæ¨"4mó€3¨')BP¿ö•®N2 1ƒÛ(+2gÄ…$Q5uƒÀ8NìÇtŽ ú!>­Nô%˜÷ôÙ"5‹CgrØoªæ£F*öZg‡‹Vƒ¨ºž æÒ Ç”•»lɑ̓§rT~ÐÜ–L¨}rQÝpíÇ<ˆffÛSæ%Vsëû1äËû쵟/cãŽ^Ø=®¯Š}J¼9'†`NÁäX¶äF.èX^Èäùïõ@èè|#‹ûßÈ‚aäÛk†Éc­“{ª|àF%u…©ÛÀäë g¾× 17$½â4§±‚:ªá“PSQ†^ÉŸíƒtø.LAVg§£2æé>všJô‚læè]Ë.@¬¾çj'Týp¡•ç~b×=ãæú~ÛÁ$EÅgK›y¡rˆ_.Î1æÊ \C· ÛÔŠ__äq:Û?­HâÓ_ÛV½ ]˜XÅ,%EMî!2t¾ìg<úÖ¢7rÂÞ:1ö<liê¥L›ÂbÂ}®~¢KÇc¤A6-ÏüQ××,DÕ}Û:ø“Ý3LJ>6O˜¸ìÇÕ Ý~Tø g$|ìTÉAsrK?h‡Ùw<.D)¦&ùü'Éq6Û½Á˜Š¬žHÞw4Ú`ÎÃÓèç Ûáòª‘~ukøƒKê^€Z’¤©KU±âŒÂ '‘GÚë»q‰K!É÷IBÎjÒný>îùLñó×Ãq3ÓŽ“Áñ9ý§¡Ä›]­õ‚ÈÊ\tHεHvìêŸ<Õª   íµ²up©$úý¬ÿ¶,->"ÞŸ„…$¶, ‰s|p $Ãlbooù Y9Ûæ¢Ô‘.óù¡›ÑXAxvRåç• ˆÙç© {…ð¾z9"þ8`Œ%MÇ]¢¢ÎO¯!±uù¹¥éi{~íæ‹ ‡ž˜ëu™ë'Há¾Ö‚®EôRCÎ"^¢4Æí¡C‹1fgì$ª÷³GøZ‡\'W¢ïŠæöãÝš’5k•ŽqqÎzKvÜ-6nž‰Ð¸Ñ6Ž9§+Õ”:i¡“ˆÕ2ûq£ÇGMµx´bäâŸVh•q±æsD~`”g’Sœ–KTˆ¥Ø>‘Ñ0-s$ÒÕÏR¢Ÿ*2l©C ©0Ǩ÷Šzþ XÖXZÎȆD¾ƒ|챞ÍB‰ñnÉz–C•/oÏfZã2Qí\º’ Ç*¹ˆÃò±„Ï×-tÉô„VžâLùoåAPð§4"ÌdR)6oUÉÁÉɳgXœ;”,ï6H³pˆˆÕ+ݧáÆç¢¹>P¦èsŸ×~ª[¥ÊÔ çÙgÕ)Ê ±Uê‘ Ã,‚?ÎÜ¥—_”–Î,ªSìd ÊD¬pÛ$ˆí¦,’çãô 6G%1MŽt6U„ùdG+ûk`†ž×ü690T=¥y¨ÓÞd+ ³žÙ^x.—ìÊâÌGô)qã³¾Žò‰Î½u¢lÙ^?~1 K¥›p¬q’ ²Y"ˆgˆ&Ë–›>ÇC£§hÈÓšcy©GøƒcËÀÆÜ×ËM˹[£$*s”šöjŒ¤žßý-Ò᪱åS“令tÒÈ÷lwíËCg‘_Ù“¾¤šïRñ…r^‘Ù·Æ$+…œ2Ñø6<ÙWx|Œ±ŽP~ôŸ2^«Ùgt¯ÚI×kwóúÍ13úN“:çÜí-ÆÏ¡³%©×=®wÃV#Œ£öé¼¶åƒÝ ñ«›¬º§¢×>E¤òíD’oã¦Ëï $+ÍÖ•J.žZtq§-­J^Œüláž×Ò¼à£Âs‹úˆ[ñö`,–]¼…!º¥ï©ׂFÁd·Y¥¤ÚT.ÏAôƒŽ\¨«`…ä<žU1©ý½Ð' ̘åŒBÆZš:ãä/׿R-&†}n .¸¢V-Ÿh¦4Ò÷ù˜øëÄË ¼ÞŽTŸÜñê-¯%W{†Ÿ¨™à´EÿjÐðoE®vô…ùûS­2jêöÑ I Sc ½™²gëé%Ñ~“'¾NGÆBN ݺ mùŽIz ­;;”ÛäYmAÖÂTpK}OIÞ®,qìÑ™{#ˆÇu0aò¤fQ¥4ʪ:´€ÙºÒX»¤5'ч}ž¹©Ì˦ÖhÜ©ýiTLíƒiè¨]‰64ò) Pu7ò@!x9úíp¡Â¸v þ¶pÌ.ÈŽ.'t™RT%¯]þpónÍ××åÕyõ®¼ôîX7AÂ{©j„1…*Wé䲄JÙÇ8^Ò¶G±.êØS†ÞüÃ;­I/Žq±IùWÄín^E1´ 3ÓÄfB^ã”}´‰«O,µc,}¤VkÿX˜DÉPvˆêùD¹ê %}ˆòÃ{ þ[XîÜÖ¨êã‹îFÊÖ›LsÖ‘ÚúÓkZg-_”dQ÷Wö<'·ÝGäišñ§tÏ¥cÙ·5AÌõÃè1†Ññ<Ù²«½ENe›Òvq?g¼/*É 6 …Z~ÜMúÔ·Qm‡¼}UùºyÓ$Æf¸„ã2Éac:D88ŸKhÄB)µÆËƒqPØß˜`yݵÞ7ã]5è:ÞßR=2Ä©9~CtƒËEã¦,U~HÇ  ©9°¥Épˆ¢²Yoä½ê"ž('Šy¨Èñ)“Õ½$jx)­ö|Óðˆá«î7;buñÈ“¥òÏѾÉi¢T7(æ¬B[œ£ Ö²W¤±‚¾ÚýÛhE_ܶ2ÕÞIéi…¬…¯29¼zRÈ©c_é_M;Gv…•„gÐ"7ËÃI.Û[–î»iÒ“Î’†ŒÏ 2*E ·¤øYX”FZßëLÐÏL)ïÌ·TMÊja:ºúX›-£¿÷ñ*º+–OÿDœ›’©yd–µ›Ó±RôXÐ):¢ì'ÅÁü}®÷üº´¬ÄqÉ^Ý@|*K{"õ|?ôÁ8ŽX×OŸO“fæ#ÿv2·Z«ßÀyÜÕz¼u˜?—óTŽŠ%´*!Q-U9ê„¶žÅDd«­3(z»?}šÇ;~ìÀŸ»ˆÈnQ\…‡Û=)-×ÔK®•6-ç‡@̺ Æ Z—|˪W:´ꛌZSÃ*ëêíL$Š5²BÀËÇâã2WÎmÜ™R'ƾ Ö^¨Ðƒ8—bƒÔ‹éÕš^¤R’°g½^žTÛÝgnEãQCš=~6MÚ/F>±Â¤%;hý-œcéå@‡è6*£f'ée»”eÿ×älhô »ê²ÏÎÜDžßÞØ9:~ÆÔzjR(N’ýŒU[\!y8ÊâÛ•û%3AòUÉ&‡ç¼Ðcoß«GÅ(ëÛ"N¦„ßÀÚFøÂ¨îU•rØý n­wKÆî\¸,—l(’¶{ýŒüÊý7¯N'¥Èã®®þ@¾ÆÃçäq³vâ—ÓÙO–3ÓÙ2­÷ãcšë­¥âÏü«4…X'&”–ú÷$î dY“2õ Ì©— 5îb]c£ŒeÕ(©í1sûg…6„´[Ãly@»º0dRa×½.|¸q“ A ísmBQ|H®Ú÷ïñ¬ÀV³»–/ÊøHË‹ôÃæ \<`»}줖#ÇÆR\`úù»V `tšQg½$¥¡oöI*sÖìfnÈÂôO?9)›ã¶+D¯Ù¯¿nyß÷u6ô™®±»‡ ,m =Í¡ÂWÚ*SEë®’Uýà.Ä‹õ™c¸v,aNΉyÒT9úòÏÁ‡Ëj¢äcoÀuT.s—y÷yà ¹ËÄÈ0Y»þÌÕlÅì„Þ·; Â?˜J-±MÚ2,À©(}ô5hh“O–Ýê^-ÏÌHÈ‘b rÏ…[~]Ë;5Vkâ3ÿ"­¡_-xD«jðñ!ñao¹d½lÞÅÊm¥aÕ}¿©“Ô­÷(·@Nì'0Q=fÎ~eéð’Ê£´&ÖBRVÂSÍ3k’[Áê››ÝæÙæïVóÂÎÓn)—ûº»øP;|*ï¯O^X¾íήDpíK²®H¬Åàë,îv ;Ϭë_Ê…kŒšëgÖ`ê\y=ß‹*äjä’EÐ'àÚÄœåxHé×kÀmÁhU÷ëGFÛ]®ÀC§õ§Ò|:Q¬(‘Wì.˜`Š–›Áò!uQa}ü}Fõá•QÊ£oknöÔ*LÓS"k'‡>‚±'ÌÛ¨cSéÔ OfÉžµê·Â¨Âà­©áóÌr[ö‚!Â] 8‚:¶â%%¯ô´‘S?vÉÓQÚ°‚¢´SF\F»È¿d{4ÏiqÃÑ‚œ¶öàJjžô»ê·œ—)¤É¸Ö=eÚ÷Ì€œIr=¦ˆm˜m¨&N×X¿ËKÜ>¦á.Ÿ\;§Úyýl¦Ë8ðërcf`¸æ,¨Ká‹9jA¥^O÷¬|Yë;Þ†ìÛF4£øêÕšvædÕOzgµ¹VÏê{p¤ïëQˆƒVÛù]l5¹Öd¥'¦<--\ݯËcp¡¬|ØX Ö&:ø×›¼v®X„cßiŒGæF—Ø£Ìníëûé’'mgX^ËéÌñ¨|—u]¶ÐÚý? Ч… endstream endobj 297 0 obj << /Length1 1511 /Length2 6894 /Length3 0 /Length 7892 /Filter /FlateDecode >> stream xÚ´4›ÿ6NQµ©=³¶ÄÞ›¢FíYD$¤HˆØ£FÕ¦hQZ{«M©U£víY{W©­VWûÝ¿ÿÿœ÷=9çÉsÝósÝŸë~Ø™éó)Ø"m ªHšÄ”(iéëƒÄ@ ?(ˆÏÎnG;Bÿ²ã³AQ®p$Bò_J((}cS£oµ€†›#$‰J‚Ä$@€ (ñW % P»ÃmZü $êŠÏ®„töBÁíìÑ7}þzpB¸ 1Þßé'( #Z`´=Ôé¦#ìÐGBàP´×JpJÛ£ÑÎ’ü`'W~$ÊN–‹àGÛô ®P”;Ôð‹2@ìý“?>;ÀÀîú‡C C{€QPÀÁ"\oRܶPà¦;@_] ã Eü¬ùG/àÏá@ü ¿Ëý™ý«ñ; œÁ/8ƒ;B:ªšühO4/Œ°ývtEÞäƒÝÁpG°ÍMÀª ºð Ã?ù¹BPpg´+¿+ÜñG_enƬ‚°UB:9AhWü_çS†£ ›¹{ üy¹¤Âç/ƒ#la¿hغ9 "à.nPuå?cnLøÿØì h€Š .¨'Ä^àW/gèo'è—ù†ƒŸ3Ò»¡õƒÃ 7ø>®`w(rƒúùüÛñ_„lá4ÀjGàÿSýÆ …ýoî÷˜oäýþ~{|£0[$ÂÑëŸðßW, ¯j¦­kÈó'忊ŠHO€Ÿˆ8€OP’ˆÝ¿ÿ–ù{‘ÿm}†ÿy8à?Õ0$@â7Ãû‹‡ûŸÂàüsk¸ÿí ¼‘3Àùú-€"@ÈÍôÿ¼¿Sþÿ¤ÿ«ÊÿUýÿ{"U7GÇß~Î?þ?~°ÜÑëψ9»¡oVC y³ ˆÿ 5†þ±ÏZP[¸›ÓÿzÕÑà›Q@Ø9þ=H¸«*ÜjûކØÿ¡¢¿îᦼ#}„t…ÿúâø@@àÿøn–âpóUq½¹­ß.èÍNý·¥ ‚´ýµ|‚"¢0 öÂÞ(LPDàºÙR[¨çoqøHôM à†ž†DáÿºS1!€€ú/Óo$!€ü~GÀö_P ÿ‚n¼ˆA@ù/( @ý ŠÐÿ‚b·ßð?l n(ÔͪÿVÜ Õ¿ðïï ê …à™@B¤ž=©|ÖxZ®@ïÁ·Ö{a©9ü…iG˜šc2ÃÇ^7åÁˆ‹¢µm M_Ò£©ÂçþôÜ;§ž­oçÕÒÑ*+Š{|™=g‡­vP&[$Ý XRø Ùnœ.#‰µ9¶ùý㉋±6¡¯¥ë9—Í®_Í$¶N€¼cRæDzt´BZóÖ­HSf¶%t¯©iÌ]”y²›ºáàå­Hx̉bcí™×ŠyÌëÞ¹¹î7IBYÛËDKž“ÓRxk0§õÅwÑRƽѨuÅàP9V*2ía³°›ó9z?(…ÕõV~ƒÊzDKUr g„$VWßÿ$ÔÙµ¡¼é-nà[qE&å°%£´±æåÀžoÛÞijG‘¾HVÔƒ'¦Éf1½Yñ¶™‰²Û¶ßW«yú˜#bmú‚pŒa'GÓÏž¯ú¾:ÚY¼+;œõ:´ ßWϺÃr©‰æŒ›I%PÏz“_)F©güG±¹ä…øšB>®›¿óct‚¿—_å$X¹õb¥ßêf1®¸b1ê[Ž¿……ñDÑ¡zŒ.‚.È\­Øgæ8ê)œðô˜Á?uY¹R0dö¿t•§…¬v6³Œ„NdŸÉ„U–EÕáE ½,s\èŽtÈ”BV…èG¿*av÷¶:£UÑ—xwÝí_ª¾cít=âJMÛ×Ýà÷÷n9ÿbH»uàó0 R~ìˆV© Dùì`ã.Ûú ¨=œ|Ä×äÂÙLþÈ´:zÅ¢‡g dAÛS¬ ̺¾À…“’ëC;’K(ÝrŸu Ž*X9—mrÉ*¨WñCûÎ1î‘3-N¬Ì›_Ìä³óô3g§,û7‡´¾a¿[j¿˜Ÿg<ßY|®¿`Pƒ“];˜ÿ…¦»:ƒTßœò!³¿Ã´MÞ3>²±áª\ú®9Ÿ¾¾Þ¬xó+.Ñ4®•¼o~52iø´»ú?äÁMéf~ß,ûæË„g=`öß¾×Jõø€‹ÑO±Š¦aìÜ™TÛÚYÚæUoá¥Ää0_aw»7¡Yäi ­þXiX‡¨¦˜Ê©*3Õ¦0øõêÁÜ"³GÀüØüÄİÉÇÅ5µ{§÷w¡Ï6!I¥íÁ{Bò­§÷œsà©,mì#¾ç°€iE{GÉ™ÄÊÉ©2÷ž“.çJ'×ó½·ê‚C¥ ^|ø¹4¸Ó2cž¿êÿR;ÉÛb+Ë9f²ß›9š Ä”±C‹¥³CǸE­R¯Å’IÃ,Ò´µ… yëßsÙ†S[­K€;ø¾¶Â’Ç£Þ»˜Ý}z K¡%ßߣîe~Öv~OwTè`ºY+íwT˜ß´u†^ô¿»ùyÈ¢]w ¸NR2B¸;t|·0œ!bf^V9ËüÐTaÞgǤ2 d_ÖÅYµ¨¨HÛ²h&ùŒþ¤ðô½føžÏ ~[Àâìºúžy(Ý,ænKÏÛãªi S/ŽÍ3æƒðÃô—­æGK#Bi\i@E¬‘!ãbÇ8CbÒE­£nFs§˜âÈYCîúèÚêFÈ[jç­¹.»ÉTæŒà kÒ½`²ÈBCã¢w÷†™V²'Õ*ж†½!5 ¾³,•¹Ü»«;NºøÚò}4­ve§ÔƒR¬/¶B üŒVü¯¶ÍH˶‹àtâüDF_áór”/¹4rKZ K ÅK¶§®H(ˆLÚq¶ôMI®Í"¨pŠœÆ Û"ݵ|„º–˜¾@>.g¶ËEܱ§¾W7Æ’€ÆLÆ:,‚v¤ä].ðergÄ”™Ø%Þ<Ì9ÇåÑù|IŽÞa|æ1_Š ’úY Ñ@ÿÌ[RoQõ±ÏÅé£'Ž)‚㣫HËwnûr¼ì"b<¹E“šP§6‹è@¾Þæšh%Ž?aá¢oÆó×@ΔÝ2°’üH°µw.âÛSæ$:–2ñ6²)Võ麯Ù[ΟÕÞ«Ñ[•¶~4š)ÃV.¾øž°UI:&l¡'äÚUf‹Ÿš?Іc=³ÔEMÁ—·‘ݶÖ/.a>1ùN¢d®úìd¯YwÓd¦Ÿh—«ÄS¥†=p­¹¿#ÏO^Ó¸9u£}²+…Œó‹Ö"c¼Vµ¯qœô­Í'h╟/›¬‰ ©b¹cmò +’ÿQo•Ê|OEàR&ᡘ°°§à™Þî8ÖèÏ/”sÂLrGäs) ß6ü‘c·«T/#FJ‡k3ØsÃÍóU¸;Óç]¤‚’ ±\Ìšé} Æ¢Š×ƒßÏ’c^¯ˆ¡:' *R§ ôV2‡Û—Q!uû[w²£Þ6PJ°:â×Ô~.îN0de¬¦ÇŘlâ¬á¯Qmê¹”×}Å.é,áø‘myžÄkúð“«½GÂu¤%æ‘uþó–³€Bؼ0}1Õ†4‹°jÇ‚mcÁ#cgæSǃfºs{•gO¨…;nÌI‘b(¿^ü$U²:$R®\fg%Økš7aûÄï/îý1fkY­¾ãð|3{våý›ÙU?².>µþJíªX-ay$•Ô¢%’OÔhñÁªŽ:Öüã®ülÿL 5ÊéÕwfȈ¬*°)cÁ†¾M%)—Ó ?R(>ï¸ÔW¢;Ó~^)_QY ÚïI—.>^÷lêêoú®vo-=ÎêšïPÜLüŠz …ÍSˆêŠí(½§Q5»+±nP¢=ìÇØxoËönd¦/‹ÕÞÆ#»“×ê­lÍ·‹uæ>@ܶ2›¯´³0¥¤òØ$“wÊ´½Ö…úc4FlÕx#±­¾tÕ†¿Wò;“G™ÝÿkÏDKS]Æ‚r.Ü ¨zý¢r€=ZÕÕzéͽVÝ7šæÐæq?UvƪÃ"z·2o…Þeƒ?c^ŽHÆê…Óg°Jm8¶=îH;M81g.½›£“wÀ çé«pNËí5×ZæEšžõÚ(óæ|2&Rê”MxÇ+ßòÕuί®zÞVrÈäØ{b:“ô?›°ý ‘E8Œ°•uK'ÞuXG[Î[MU,¶ùªáÃã4?ŸÅ˜°>ñƒ¥íŽ=Kߎ¯‰Ês.þnG¶ö÷¯›IÙ·5éñƒ´‰„Š=ç´s6Ü ú¢¨ït‚ʯX2¹*ƒÊ¹BO‘†lYÃB¯ä¸šÌ|Xâþýd)yÖÏc‰6«ö ŽÛOYÕµ çYâó2ª_/?)&Ìå qvœŒSfèw5\«6ÝK/ :àX«&á'œ|ëò™—¬Q¬Ó¼­çJ êùIh•; Á1\[@˜¿äͱ(m³ãDNßÒ$t¼WV©»jÄ}ªíøìež·ÙҰÝY#…¯„:VbÆò·7b\ö4'’,ûF­§4IXÑå6h•3`ëüà…ç5Ê`Òl*j§âì’ù–=5|15)n–Æ$Iœ™(Ýô²üyRò£ñøöˆnÐÆ!/§+IšÍ™†¦Ö¥¡&œ_ç§vXØ“ã²Ìô-¥ÁüBÖ ¡4¢h×ø“mŸôIƒ¦‰ìÇÕ}TÜ8Н“feh9w2ãdÌ1 è‘x5ù´¬Ë ‰˜n¼ÍI‘÷úýÔêu÷‡ÆZJJŸ²nÆ©9WA—Ñ¡qž§]<µ4‹ze§çLÌßZh³'4ÖLñѾt–:LeM<ËS¶Éã×wÛ)r4ÆóDµÃ›Ë›V£ï>5ÿÞ._•!ýdo@—7$,ÙÞ@36…|’¸í378[—ÇÆ<ļ'P³¤ò!p—çm8o­— ACý °³µÊMT¬v#€Ms¯?ŽÇNx`_3ß]_6-œñÂãe`W2´6›W}œ#ˆ|•&;âÞo†Ë´j,B¬çfCøÆØ{ËUìIŸR4ëË´ýÒgœƒí~ »·á¬¢µ·#§;¿–+l\4ͽ nHß[¶9Xàxª¨±ÙJ’WXc3ec|ßÛ>¹†LSf>qOâtú ²WÇ_³'skÒŒíèvö=f߉ý͉%—W‚xÏ—S}˜Æ =ê£çцå§Z-‘vÛ‚¹L]w¥á4/ÒÀׇ™\°èÂ^Þ‚M§ôûÊË,t¬xšÂr’ž±=,/é íoªOWÌ} q)‚“Âß™A8º+Š-“Ÿ4vV™vØb ×.Y±†²,Ô9w¯9M¾`S’ßê”ô9Û JE*ü>‘‡Ž­9'¡Ú˜c:Ù8¬åXö,;xßU¯ª¢š5&óžˆÜ«ELƘ/Ù‘”:;ï Wéüô³ÊÉÌ–8Ròo•à{‘?¿I|-–å÷l.5¢å¼&sm 2¸CÆ®š(›,,ÎP0)Hxb j'öÞÊaJò!ÛÅ7Ѫ*‰ùõNÌBm|þ9ë«bŸ$n,ËÉ/ÛîŽÃP*@Û7Ù‚ð{‰½ÑÂ¥s†]àð–?¯y‘ÎKÀÇ{›ú©_Yt³Þf¨Íx¥4™òó·«,ÃVtÕzi*ŸÌy]Ì{(Ͼì±í’,,Í£œw“õ¬wÚò›*¹÷fîUù Ž¿ˆ½•­r~nôH–éÚÁ4EYZê”K8ȘPþö¢ý0ØÎ`ÙÅམî@·ãîOd~¯Fßå­ °m-s ;eñ:ωõ[ÎÝj2‘ @ 7N b¹¨À[a½…âò0ÌMŠJH8—–DzëÕÐV<;I¾¼e׿\u°ƒª²~Ë4ã…ææ‹+ýIpg@(óW–ÐCÍØJ§ž ½¼±´ü†«I¯–JZÂ8«üƒ¹¶Óû]ÞkdÉmðø3lpþ¯"p$ÃÕHz†Ã²}nᱫôæS4¾ÞÄŒ›Î|ˆA¶% œ —[JKU̹ÿ<;¾©RÎä]Ú ¨q&¤á–UúãDzâåEèã0öp¶«öÙ}aG¥¶\±§„÷×q^R$¬|vöˆ‘8XO÷ñÃöEb)ª è)‰y&ùh¿J®62 ;æÍœòÌîqÖw{ÿ^!#›Ïõ;yµAÄÜúqªÓjê_¥sq‹\öi÷íÙXb8Šköú.-“É̳ݽúF†ñIO—£OÚí[·@…r#XéZCõ[•C„ŒÉ`ãùº`¾NÙ!oì¬çq½.†C²úê³óR|Q3ÈøˆÔ;*þÆ­Ƕ3ø$WS`uÙTÁ Ëxp“ùàåMµ­ „⨦öHN@[‹× ZãtÅu5Áø¨ÚlRqUì6=›t?n†¯+?P—ŸóJ»½–|z•X«Júí®HUÓ°ä—ÊmH~*qj-Øü,Gí³`é+.íÅô-®tp£WíÝ÷†¸'Ol)Bø¹3¦é¢ç¤úv®Â Å¸4ä@¥sl¾çšÌéþÁFÐlæ(Êû_ ý Ãe˜¾ÉñíØ„±OöL¨Ô–8n Q¼Ù[ÿ ÍÝú±ûÞ@¬sS6 ÙSì’¤L-ÉÚÍO–ýúò¯âîMíYÛ¼:½Wý »i¦¯OlŒ‡ë£|›°^Ç£@ŠO—×-ü®ÔŠêKõ̵ IùW_˜ð€&óÃfdˆ¸Í¬Ò5?Ö㈲3h>µ%Î=ÁStq?Æ¿„Á`Uçr{ηSŽÂ,´½5ȆH#¾èÈ:¼©Ae0ƒ¢–§#Û½ßcIrªXøwv^*ùóú6:Ò\œboE|§£+¬/BÚVk’ƒSJ^jøtì‹]Ö½aoÈÁâüõ¼[EcëŠòW ïÆ£ŽOÏ t¦tU®:Æv?æK ùg®?k û¬ý=Ôv‰à,'>oE°ÿxlBƒŽtC7KŒ±_’ʘÆbÊf*0GI«ƒWådÑ"*‘$kŠ1mJ-¬¼?ê­§¦qßæäë.¤€ñ¼œèºȰÑtŽÉ*B±DÔ4Xß±{ôµ³2D¶|J4XD¡ä¦£/’[8Œ'^¶¦ÈífEoØqž¼ÊÊ‘*‰-E׵Ⱥ²d¡'1äH+F‹©g õýlº…÷¤Ê&R´Ý_*ù°&™ÎŠø8 4¬1`WdnêäJô~SqÔCZìâ¶)·¹R±8¸’ ħžRçqü_.˜gq›…6ÊÉú?a6Űˆ_¾~íÓÛH”s¶»®é+sùI-™´íEŒ™7Ó¬‰Ç-ýý@P^È¥†éÚ$>.ùþ‡"ÓwIzC  eCF°`®™o¼xóôO—ÝifDksY«Í@"‚p%ãržbðÿ´gÝ™/ñ*z|ˆáiî+àðHp¾ó™0Óó—Gf¯-2¶)Zgæ GG·Õ{Ô£U~`'j¼¯s%±/ôçOÒéñÁ.жŸöû1¾Šô;ý)ŽO°«l-X9‘7¾ÒX i*Cë³]O(}»SÉþ™ò3F¦Š1ä¿!OŽ[¸ËÚ1L ,$™Íi8þn>qk¨ù…×p£î†d©z⻥Ïß1Xºdõgôùv}Çþ‹ .†˜Êe"Þ‚ý¤ô+´[ö^#CõŽº_b˜îâN2eGŽ´¤"É{f°þ­UÄh#7Oñ²ëÐet°°ÿ:4ös ÌíK)Å ’´­q)™ì·èNZ~¢@2°ûû;PžœŸÍ9yÙÜ·‚Ÿp2v|þ‚‹µÜÂÃÐKð~‡ùtÚè²Tš\ÙR~#ÆrXÃÌ‚™Æ9·$ˆ\ºc³Ïê®ÿ¨¼£¾¼?𡊧*±ÎB^Ò`ÉË-â‡}üèö~«Kš } ñ#—ÜWA)tÃî(Í¿3É9Îõ,]è‰ä59?;^ÙyE«ç4;JUôüv‡þYƒ ¢ºš*ëRz»°@Ͼ{ëùÑ2ç}¢öº‚ %Æ@ žKj¸à •Å{­û*ýɵÐû’&çFÂw…:¬OT†ÈÚùà.Në§žã`I¬Åd‡)‡hÃàæRÑÇFÝâûñœ®Àd‘ÕŒ7S¯·xJ%Τ:²ƒ—Þ ƒ4)hãÅ)eѱXuÔ(‹êÍÏÞS†‹>sÍ1ˆO~;—ŠWÔ<Þ‡ ØtÚÉ…´¨lŸxgù¦~ó ñ<Á¿^r×*hÇ(£Uo¹-Þòôâõr”{ý½~p½{À²„íÎkÆ6rcæU øø•[[ñ _æwRÅÌRF8ÿGb[á endstream endobj 299 0 obj << /Length1 1856 /Length2 9333 /Length3 0 /Length 10482 /Filter /FlateDecode >> stream xÚ·T”k6L(J‡€4CJw—tI— 0Ä 0tŠt7H* Ò!ÝÝÝ !Ý Ýßè9ïñ¼ïÿ¯õ}kÖšy®Ý×¾÷¾g†ŽJM“U j’…BY9Ù8„RÊššn6.4::-°£ èo1ȆB„þe å:ÂeÒ@G¸2Pt²pr8ù„8ù…88\‚ÿ1„:¤Î`3€2@ ÁÐ褠vn` KGxšÿ<Lœ‚‚ü,¿Ý¶ °)P:Z‚láM6M¨)äèö_!D,í„ØÙ]\\Ø€¶06¨ƒ…# Àìh ÐÁ@Î 3À/ -è/flht-K0ì/¹&ÔÜÑèÀ6`S÷p‚˜ðäM%€ªò—±Ò_,€¿{àdãü'ÜßÞ¿!¿¦¦P[; Ä ±˜ƒm@UY%6GWGböËhƒÂýÎ@° Ðnð»r @VB„ü›ÌÔlçcƒm~QdÿÞeˆ™ÔÖq„¡ýªOì2…·Ýý¯“µ†@] s0ÄÌü 3';vmØÞ ¤ ý· \„öGfrðrpppp@ö«©%û¯ðZnv ßÊßb8/;¨ÀNä6Á?Ð<`@gÀÑÁ äåñoÅ#4NN€ØÔ`²CÐþD‡‹Aæaøá;€]úðÙãpüzýóô>^fPˆÛóßçË.#£"!©Èüãt’’PW€+/€•‹—ÀÉÁÇàçãxýw˜ðò¿¥j@ðßÅqü‰¨1‡ÿâoÞx8ÿ= ¯ #à¿3¨@á³ 0ü}^Søçÿóüvùÿ›û_Qþo£ÿ¿É:ÙØüV3üÖÿÔ@[°ÛßðQvr„¯…2¾ÿ5} úk••Af`'ÛÿÕ*8áë!±°ù§`˜,Ød¦v4µük†þs ðð6`H ÿºl¬œÿ£ƒ/œ©5üBÁÏê· ß§ÿN)1…šýZ<.^>ÐÁè†?z8âxpÂ7Ô äú{´ìl¨#ܧç0‡: ý:Q>>»ä/ÑoÄÏ`Wüƒà:¥?ˆÀ®üà°küAÜvÍ?ˆÀ®ý„ûÿA|ð @Ç?J»É$`7ýñÂu¦Pxgþ#ùÕ v³AN;è_^“ù¿ ¼(‹AxfË ¼FK7;Kп£ÃeàAx~›Axq¶ '¼”ùÂ7ú':ÜþEð/5¼4»?jxcíà³ýNxyÿ‚ðZ`à=„Ùa–ÿ2€Çpü„[8ý\ðê\ÃÿšS'ø5ú{Ÿá£ôüûÎ\A¦hߦ¡¦ÂþVåþ—e¤.¬C(K+Í!Ѻ]Á¼Žô3Ÿ<,•ž¤ÈÛK› $©ÍæŽM{’2ý¸v5hKóýž(ÿÑA¦kMòˆ5³ïê¤ÍDa%±áO YÃ=ŒQ'Ç6Ö¤ÿ"îõôm;÷VÉæç»fØ–žàÀðå‡*‘Ô1B"£y)L—Švű_×'ÏAÿƒ“–‚öÈR8òB²1œøÊmM?2¹q±7­»+‰ûgÖ«ŽR¾âÀgÄøîŠT±=Ä1iŠ50zIÞs©üèà‚Ö™°GE3o5ô˜´“"ÍFoîÅGõrüš<(Zü¨s7ãC¼S[•Åiý÷ãÀs‘,üé Á¼ÔÀÆÄž›sÉÑBv\Å»’ûcÚÚÏGi½ñæÜZìxR~žXBå3Ý˦ނ-ÊOÓjò¬”5·†.¯¨Ü › Ö=µ«L;­Oч¤‘· PAµå,ŸÑ%¿æ" aš6´qU,ËpBc£ã0°Dް hé4® ž;¿ºvŸKÐ*"M[›Jýñá¸Ñ\…³€yªÊˆ‚Xí]ü) ’fþ‘H—$—´aXÖ½C<Øž5ú ÊkvR®è$°Ð'ò0U]<­2j«£ ƒ=Kj"æšñQ)m¦)u©jtû亖÷lÃÕX¤º[DÝdEQø×—x[ŸòQÄNÏøTfGH ÙúÎþÜÕåÖ–ü‡o&¼y©14Ry…°ŸlßÕ]ªÉí:>ŠÞ™ºš‹…„h84)F Ü~Ño$×÷£IÆ‚â=’›HK¶ÔŽ>…odH„ÙVK’)bé9èµê÷Ü8¤®)ßJÜ_ÝSEðæC_í£-@×lœ!¾ç™ã| ÙÆ¨!!OÈSÔÁDÇå&gâ™;,yWÌyeÍÚÑmO¨œÉwJY% sɺEìÂ^‡‡9àÙÏ7vEÕ'†¨Ü6®ÇK›M Åçd).5m3@šþ³|2É0JÇ`UÌð¿3Rˆœpv¸Cf÷;‹BŸüŒëëðWt)š/ ¹%H2x¶\Ë¢TnÅÐ+؃†$=º“ÎÁòš;fÚSßjÃg^0\ùm²ù>=ºeÆÄIød BÖÀ·¾ê –CÇkîeŽ´s¶;eWšt•üÂtÈOÕFè¤Z¼à¸á…´V‘l§Å‚¹ã"åýæèœ9 iÌËQ0aaààKÏ ­1DìIÁ_Hƒe†ø.ÞTª­õYÃ¥¶ÿF»Ëä‹…é.F÷ÈíÕ,éö¹Ó &¡œ§•AϤº?|b·4ñOYô|#C=ãÑ¡1)âú†MÖjlåHs×[&ô °?~Hn ƒoâ¼€¢Da¾Ë%Ô¶²]FÅÁ.|‰™9¾€bÀj d8íœ÷ÚüpúhTom …Àï-%N’ÁÅݰ:ý•5š’÷…ígsRœÜÏoi×¢1[ûžó”ÁN»¡Ô¹â$®#v÷­˜ým}÷?_¶ÔàãÛË“”VUlÜO ¯qåŒ^{¶$Z¡™#*¦ôõ貆#Ì ”o|¿Õ1PŒŸ¤¸ÊëÚÔ‘±$Ü»µÛ3°—‹’¶ž1Ž| [Ñá' ªÅš­¡ÏƒlŸŠeˆ0N’]×âñ^©Êk5ökú-"'ß-ÅÒg8Ñ03Ðq¼7zIyÐûI¼G’¸c ^Ù¬/ËNØ8‚T óqö„oøánh¹ufá‚ýPúA™‚qFÄ.z{,D8ëѾŠñ‡£ŠÍ2p3.äÅÝRšééÚð¨&‹›¡ò˜Oí¾Z‰óª)·®ûÀTPÇ¥¹.%ÁçêP`‡"öèÌ™gM…‰/ß‘õÞøB}/ Ìa—RxM÷RT¯ Äœ^@Ckv „E ¯/ˆñ« rŠjf–"¥ž…Ò'I‹Ð±Å¡Ñ1P)UwÍ!£5'ebŠú¦ÏôYî¾7êJ¢+çåf_…"ÌÙøØ Uõzh§ÌµŒ®hnÒ±´S!3nD'ÛŽ×[*e õØ¢"=¸|1ÿŠ`íä®(ØeE¼žóÑ gÉ+A|¢{úò;½ölu9Œ:ÇÁò½s<ò¨*‡å¡dÔàÅÅÎv1^e}úUÓwt¥m¦Ñœ‰‘C.B¬užä>×+Xjá½¹$˜®áC>tG&¢³FoT<+û©žüëüC A&†~%FR­¤1<:úì`ÈnÎÃéû'GÙ¡——áß}Û`áˆÔ„'Íš$›§““"$Z±$m—uúOvÜ3öåL£òJmØs{„…Œ©ú±7Rä >Ò«“Å“d¶‹LŒ¶sF0喲ܭ*…ùÆQ½ I¿£oв -ס7 }%9Ò¹P‡ö ² 7Gì¬g¬»€÷¨ÅŒ©;3Ì'Ͷ^\‡±Œ¿p‰ë÷Rp‘tu쑬:Hëã3ݬ&pl!@ímJ¸Kîü )’&XÝ…‡•ðá•ÏšLÑ”:>í½]\Bme´ªBx3Ì6ªR°‹G“ÒäÙ|õXšA¬i˜îµª€¨_âg-Ÿ`Vo">¯ºÒíu ë+¼.½åË5f—Û8ÝŽ4·X’Ølm×À/ö»í%nsݼ_µKù¹ChÆÔö¥tŶŸYÒ xÛÉ9Ë´É c÷ßùͽM9×.Ý22&l_‚ØâÜ]J¬‘×H¼®ŒÌ½†y^½Ê&yOKA”Ú®Y’6G)Ø9Vò#Åä*žÛ)ñJ±Ž›+Ä#FIfœ.ë½Tà6°RÈåý‘ÂãYi ±Ñx^bt…µà¥FGŠŠò¾È2ò²†‘³Ø­ÜÃB†Ï´-Ôîç^˶•Ž¥Z9Yj®ÕÁ©v MrV´<šwtx¢ÉѸŸ™œ þ…’UÎèè¨M±ÈÛAÌê:ªrg‚3ƒ* W:ÖvK«\¤WyÝ\øð•}ÜNâ{êYÿ¦µá…ûu^⯖UMZU™*þbíÇ?΃&ßz@«‡Ðœé“¨Ëi·Špç;yêµ`ôo‡=îĵƒÙš ªô£Y«¼˾5«¼U©I™ˆ}”ÐgŽ‘T {iñÄø¼çƒ{ÏH%D“lõ^§†ñ‡ù$¢Ð*¥è¥ÍIÇ'e@&qÕ6QÑwJ‹øõ ¼äWL5¾rh| ®ÒzÊE}Ó¤'Jφ%ê…ʣ̽@£ˆÙþQã••ŠÚ쉭"¤ž–#ÅæófL8léH<Ô´‰–?zúƒÈBŒ3I½ù¢»ŠÔä¹™.~$‡»ñ‘’4ª 6>ÛÁDÓ¤j›9‹¦BÚ¼+K=kyéýØwñå¬M¹Ì€Õ?¸Á¥A«Â{Æß:JIr}«_€„3§7W†TÜ•{ĪwÊ Ò:0Ì*`”«Ôn"Xx$ªE5po‰Ûâ£J2ÏÝNkùÓ©ðÄué•XÇCMðÅ{”«·%æGÊZR6å÷üî^í»Ö.„Ž,Ué½ "^äJs“届b»'€ ›Ý;Äâ#ã Xšµ`èþêõG‹ÁRÙd>ÈUÇ+wùœÜÔ³µw=  çÊNÅçÇ·Ês§P;`ý,âzÌÐmªúy‰yÜÉRPásí"O®t6K©öô@"nVU “¢‚×±¯}?,VVÖ´ÔM‘Nö=“Ø!¾ð,çl$¬ÌI v- £‘‘S䣤¿ìi}.þž½\°ê¡F±f¤þç’ä»dOÛ #ñVuNVié" çëCƒ ±”èã)Qî3•üã^œì0¶§k«- Tà]{©»^ú6´ŸØ›QCgqw®i°¨_±ÖƒÎRl"§/‹Òº¨¦Å}û9¤ÞH„å9Z[ÏÀô*ù!×+è–‚¢‰)6jK«°µï]¯) ¨̶DŽ*øå‘¯àØ–ÒBÔ†˜Åš¥ÉørùÍIaSlÇ)»bQ0’¼+QÏè’qJ‡ÎÙê÷ȘO‘b&5ŠºF÷Cž…7²0ñ~*á~C&†\˜ñÕ^ˆ¤4‹ü–8×ÿ¢-¤w÷‹îêõ®¹QoZãg—ÒYû‚Ô5ê½kü¬$ÛHŽ¢{@6hÇÂõø×ò ì¹½¯5+‚;vÝÒ£fÌœ‹žzÅ—äXd+ž¶kîP3È1Ç·Ö8AP*‘÷¶ Âe±»šê‘>ÈÆ¬â'z_I²}³õà7KÒøÚeõM”盤g~2lyùM4ݲ¹Û¼â\þ¬|‡ÏüÜÈ¢±ø=\eRYᅥルJl:8’ÇÔËó¥zæÙ„þ¨X´D«$Ü‚uU—ÐI¸·'Y!2£…3^ëIT8ÂvA·{N´®Ì4·K¾+Àù)éÊCId~5¿¼†8Ù»“Šq+üS¿4 $a¡ãS\ì»7ýìÁ›8Æ4=ãŠÖÁ/ÈË%PŠ|>/Lœ,±’î0Ið™­ûxe’ª¼ ±Ÿi¬:¹¹]PÞÌûÐH`M*¯á—7bñÝ÷…K¯û-óSk û@,ñû‘Cd¼)±³¯éŸ™<íäF©‡„¥¿óØ5'Z—„5õ »ý¬g¬z¿šT‘¯ ¾Ó-7;ç¥pßíÓ è æ<Á9Kv}û,]3âK8ÎM7mÁ„,¯áÙ…&l¨^}oP&>ÛÄf9qäÄ£Jf‡£söm5÷3ƈ[c/µ6¸·u·ôÚjg>Ýk8Ù?¯…MÔ¾#ŒÚÉp»…ÌvoÔöé)¹O7†M22_ƒcÔsWŽßÊ]£($š%iÊ„€¿´ïÊNýgòGÓr!tjžb:ê¯wyb=eûò²ìQß#I‡éœ3xYœ@ÖJøQlh~„êÓumѤ«€n[9¹;ú„¾ñÛV}˜šæØ‹¨ ‚×ñm¤ }èÆÚ ègi*•﬽±.š¬Ð¬h›ssݘCdrˆ²¹É¢‘|.òÓ*CÕ4ŒZqƒOL_?‰[dkó’ê³jÉBq5øšY'CÈ}_ls2ž¥Á“¨ˆÇ¨ ü±lqÑÜ3²Ÿãy£›SÅiÐs /DH²Ô9&À¼ðZšB®fWóNT¨Þ¸Ubð³¿I·.o@BñúÎÀPy?ÌCÖÀwËïGýe¨»faXp{eà.E™Ôë¡ö€ÐeÈ7’϶[â:­ëOÈê~Ü*L«=±Þr'²HÁ8›.uÊÜ›ˆ;€ƒ¹§ã~Y–‘¿c'ò,Bk7 6$œè·ˆKRè Íí8Ðx^ðÖW˜1ÄŽ71™RêÿHËÆ-[z|0)‚k´)š:#§æMç[ÕAªT ˜4=¬}Ýr“2lÜIž™*N:oG‘³Ô_võ…~È塆|!É—ÕoÚ¢Iãfèo&r¶ŽèP“ü\xYÚrVö ßìUnm¸!d¢¨š!•„•ýëóºE‚FU3aψ®‹—™ÉΘ@ÏeögIÙ‹ª9À±yP‡¿@­ÑoIé“QR²¸™Ó»Ý…<1i/@W%:-š4lˆ’\¶$e¢2:<žé½×uŽ‚ }‡_ÐËï}ZsnBë³ÊèÍF:GÙŽE}ñ£Ã¢ø’&??c9 Ä´{(ž¯Ò²Ø€h½ÊÂ+ÁjGØ.ÑLï94ª¬ ÜÅâ2µÆ¥/ƒ<<à©yÚ6ÍvÆ…~Ìmx'DË ‘°é4ÏÉF7)aǵ zùâ†1þ€¿c?Ò©ysn.ûzËo¥ˆÖªdÏÅœ>‡mv`JýbŠ£Ž}§Öx_eûÊŸù„™»äðñ†Vë†jø*›¡áŽ+&Ûµ]b3ÜŒõñÍ%ß©ìúØýl@uæf"±fšl®¨q ÷ŠõWz†0ò‡Ît”Þ2M¤'¨é#_;R¾Î ðð¦ä?6Uµ$êÄê_asò†E@|µË¼¬õ&ÓœÛ« ³ýÈÒM8š!µ ‚œû´aI*¡©ÏögËvÊ. í¹PUÛîW'sP95æ–ˆuÙ÷F¦³}Š8@D‘ú©Õ‡ˆ*[Ì YsYÂ%²åÒÞåx‡Ÿ°Ñ,ä±(Tj0FD($Cž“Î`hðÓ]?ìd—Þ'3º£¾ö}Žzwæ`¼4Íû3*ÖkÐL pý§•FÛ‡3 ¤·ýÌ!ÏE— µ &Úî§z Î$^*ÆŒ‰öG䌥à P (à§ñ E³öͳÔÆ2㹟!VU5Âõ†±#¿$ðe¬RÁ–û"X üž'0Êõmtój'W‚¬jˆ§X¸M"Ô%0nB»ûÒ[]C×nc5ûðfÉ6 /É!8½ÀŠï¹Ã9Ðö5®P/&å4)ômu4©Ú]º³Dêvã°wŠ]«„HøI¥=´>Ò—‡ctcPo¿‰<0¦d½K•D´XŒK+£³èõäµ'Ç»$n=Öº^,üó¦ó™|÷H¶ÐX‰¿ü«—##zÊ»ïÃwðM³¯*rÒ;è«,ûh/¨:±ôŒ%û§ò-¸‹N“ …4tQá—ÏCR†«Ú“ø¼f¬—™IxŸÅÏ|÷cãækP¬Ÿoˆ<Ín+v®ó[Þà 8ÛÇyÚ¿½ÉE·OTSúlÙ™Vƒ¿ó™?þ[<Õ@ƒ´ô~;0Üpù‡fö;/Ûý#Â6¦ÂF>fh¶«OMy7|R¶¤JõÒ!ƒ%V$¶ÊOÅ.ù×·ÍÚ±çø@îw©«”ø‹A&ãéÑê§Œd¶YknktÊÑËæn.Ȱâò’&Íg(·“]Xñ½x òõ’\ÅãR8¥Êïã)±Á„š÷v*ZJ·I:*Ï·—Îð~ÎŵîÝq…1.$aX³,)'™¦(¾Ï4¤YC7)vtÍä’ &{XJË}½*AY6$T×oKI¾î¥ýh ÿðÙô¦0å ‘öù;âÝžÂÀ±øC\Ðòú‘ûr‘o¬`…ž‚˜8‚@GdzŒ¶ç,Qˆàtð|/á'1®q¡»[D¼0—º9‚o‹X3½°>f:mÑ7ãbõç}–ªªsŠ¡œ)¥wè6"¨ø…µlF²^âÞVùÐ7õ?£ª§QM5õ:„!Ÿ¼s·ÅF¸™ê¾Ä ?»Æ[¬Á¥æNg=îK՗눚ª*?‹BÝÝu'çMã‰(3„"f-Ÿ3Ig3ßÞÉ–rºãš^—Î%¡N¢kV'W[鵿û¦0ªnYíæüaZr.h-Wôx gÎÚê¡Ùì)cW¯A%î«´“åX;þý’åY˜©ójïEŠu[{÷®#áùp-NJýhó5ämäÈÝöS¼l˜VG æyZjÀz1›ý•ÇcO³º—Õ‘‹&^Mþ*!’[:U„¤È/í˜?Û c`ƒ‚Â2ÊÞ=vÅä1¼HÀm·‹9ËòÜñî°Š§'-®@Ö«·¤¾~ç#šŸBc²Û¦€%Wuÿsš}–7uïým"REÓàöu\..Cí¦lÙ–â®9U™œ1 wñÇÅó»…ÆªW_(œl…Ö¶Å uE…Cº¦úOÆÐ—Éz‡9èÚfêÛ›ôŽdÕ]ê¾ÚE ®}¸ùh\àBç–ÿÁŽŠîd1±RKË&#MÓÊ.¶OÛpã’Ùà6#EðôSŽÅlÚÛ<|›+¼f|03:“XÛ˦¥O4^ŠèX3áùtT¬&Í~&¬¯lÕ¸²C/P}/„V[ui;mn=0pÌö¹/õoÑ7¿óÛ¾‘ªÃ%2¢uÞPRç#Ÿ~lN8Ý-™úáµ®ÆMLÕLó»bÄ’×…øCÑ-ä`Ëq+>Yõcæ¶Ežºý ¶äy'Š™*ÚÝãf£üÖ•¹ -qô͹*`Šä7É€!ﱩ¥Q jĸkCÍ1Iá¦ök0²3—>ïþKî/ªâå÷Aü&Œÿû> stream xÚueTœ[%NBp ^¸KáîîîTp‡`Áƒw‡àn!@p‚»;wwÞëî—tÏü˜ÅZÀ>¾Ï½û~$Jª Âfv& ;[g #3@T^UUD È `ffedffA  P;[ƒ~{(4@ŽN`;[ž?bDAÆÎ¯61cç×Py;[€Œ‹5È rð9y˜™,ÌÌÜÿ ´s䈻‚ÍòŒ;[…¨½‡#ØÂÒùµÓþP›Ò€ÜÜœô§„m@Ž`Sc[€¼±³%Èæµ£©±5@ÕÎ röø¯Ô|–ÎÎö4€ÿî `÷z¯Aêß2Ðcfg6}ýüÿÃß)ÿ/ üUåÿCÿ;“„‹µõßÔÿ ù¿"ŒmÀÖÿŽy½Ù.ί*‘·{ÕŠíÿ†j‚þ%n;k³ÿõI;¿jEØÖÂúŸU‚$Àî 3%°³©å¿®ÒN⵸5ؤdçþëñ0™™ÿÇ÷ª>S«×Æéõ¼þv^Åõß-ÅmMíÌþR! ;ÀØÑÑØáõø_;Àø*W3ûß7ÀÄhkçüšx%ç 0·sDøëT9ØL™þ…8L"¿'€Iô7â0‰ÿƒ8™L¿+€Iú7zÍ“ÿ½^B&¥ß`RþXL*¿ÑkÕ߈ À¤ö½Î©þâ~í`ü½Nfúb{Í{}œl~ûÿÚ+“ÙðuÐðuó ûëæ`×ß~ö¿Üv.Ž$¼†Xü_Zþnÿ:¨¥‡½åëÃú;âÕþ¾Noõä0Yÿ_ÙØü†¯"gú£ÔëÃÂd÷»Ùkìëè÷ë°ö¿Ý¯¹ö¯_[k¹óo+ðßÖÉóóëÙÛ¿ŠÒîM_©ýAøÊÃé÷bþB ×?ˆ²¿†;½¾i¿^kþîðú09[:‚þØíë€Înv$¼®Æåøº×?à+]·ß嵞Çð•ûÇ¿á)ÄÔÅñ•«óßïØ«|þƒÿþh@î S„ù;SÞÀ5-·UÂøn [#|°'É·Z, #ùoœ{Ä' ×cU3ÒdK$æ»ÚDn3Wf/<7k‰ë<Ø®ˆ%v-ˆM¢g^®!§â16øJ¥\äǬB׃TtOI ¡³žÒy¦tÞ\wEö4•Úµó71 ž]sr¹v‰%)–¬ˆÄ÷JžCk¡Ö_Yžä ëx%†E€{j¦qÝ,d.åòzcÃR‡xókí~h£&ŒÓ“o„»o‘Á(sI=‰Õ×;¿ÏO™àp’æÄµi'i $Jµ&š©8$J¦\²1ƒ2þ¡/Ù8ž— œ1úÅŽZ]1¯½%ieÍb™ØÞƵ^ÎãÿIz9JÁWèYÎwÁUGe†ú(´Ú-?=U}/kÌçòR(Gw½Ã Å,|ã§`²ÌVà ÿ40”¿/k¤íª…ÍoOŽ~ æ:vÛš%Ê#ðJâ-yv]ÁdAÿ7Mš®/%þ,Ž#(9²­ŸÇ•Ó%v1cVˆ‘N`çOØá7oäð,ëÌÎgùbkB´nN…Žå¿uÁØ7a~ßLµ¯¯¿óæ›Dû‚¼üLox’ué/6Æ4æ]ïV+h¼ñq ®;þÜJ {²YLæ|Žª>bË/“Ú±!èb^éûqNLê¯ö -h$Ý6[UEž­ix„þÑrw›ñ¼æ([âûÏ%Áƒ G ¼B‡1²ÄSVħ÷çÔIòî³Ö¤*š(CWz¨,üâ¬RòƨCÁ_1,íéŸ!8®§oë>ÈH¤kF t° ä—Ä ºÝìmW4oê1{„´ãìÓ9Fu3,¡¨“%âÅ•óB݉‰ ø‰÷Þ¦fìCúÛ iû׆Ì@å‹ÔL§Q}›ÌçCOqM†l|°YÅ’§)pŸö Ä=7nÞ¤uKú°ÈHæáÜšNg>0tf©£›L³JAKEÒYÖ˜œò¼–ñn:y#'–0æÞØtO[AK«Áå0ªÿÙ…0ÔÊ‘ Œ*±i­‚18ñKžÌðϳÝ(„Ùö ?žþ´ÇûÀ#Õ´yM˜ÄÜÏ“Ñê£ TX]kå‹îï‘Ó éIyDzžÛ”O®ÞÞ–î7xö›ö6É3ppNÖûrYªjš€ž â2bn–ÙçZ‘„ž?Ü=rZË̶Œ,HW¿<È}}ªÀ´¾È“ÂLø˜Å§™qU¸CØ {3^Þ\p9~¿8ªÀ€ð–²"=ÉV>z¢T@ ì¸4Oľybø#÷ò¡õNsàŠÔ¬FÝ™}úD8oÍ›ðL1Jﺫy¯Î«M¼Îš)|_Ù7Þ¦EÁ3I´|njÌß׉ì»§üe*G%ŒCÁÄüsphˆF¦h„V*5(0à’Ez´–ü؉Ê…Ñ<Ül¼‡Q¦þþ • ÉUE…³´`ö%UÜ͑űI,0­‘Ý«ìuü<—b[ß½`ü ’y‚{òüÑM‘³6ú©z\Y\LÍ‘fr „˜"ˆ¶›©œõe^Ç`H$Ã5çp/DTYõK{3ò†ÖE¨ìr)ì¾¥™DKÑ"oo_çÐÙà¯Ó0{JS™‰øâÏä¬þî –ñ±ÔhÆþ´Ê›¤JЬÀФ‘uº°ÔJòáŽâØrÚŒŒ#•\ž¸¸2 ù%Gn>kÒøvEÞÎ;ñª/«t´}ÕxçÈ«¿n 0 ëI'í|Þ€Ô¤ISÏסˆ=¯ÄƒÑ„â \—Ó‘VVL’o—gý û}*Æ£NTZ²ŸôµÄ”i´ÚìÂ}+."&Ⱥ(­“¤¯g_ó³wóÕW"Zâ¥ø;ªBΖ¾é0n”}&ù®è‡ð/‚Õ¾Þ4eÏh½šŠK¥>îA‚•ðm\d€ªkšŸ.Û|¼Ð´_¯‰aJ-<×YA`C5žœÌýþ—0C¤ZBµÍ<ŒÀeƒ‹õ  /‚{EBöÄšŽKsˆZ+dTªMÜdÇÕŠ ûe^ÓwÒwVz|ô†,!×å¼ìz…^}Ã÷›O,Ws[d¼Z :MZ&b®zÝò–Í[ÈAÔQùÅ+!W{’¡_Ýó›ÒŠÝb8×äêÔ¦‡à](=9ÖT ”RÎû>.Y2ñÊvVm‡úgòÓ¢EˆÓ'OŽ×ŸvxZçnâ2«¸Ì¤@ʤnÛvÌ,%À¶“+×kšDw3ò&æÃÎr½b¢„7ýVù†¯½|<šϳ*àvÐåü–$L3Å' ‰ÔÄG˜zuí ëFš$‚}þ¬ý“ÂûGg‹¯²²TëUø@ª5,? -î³®3þÇl,ï<âëê¶r£ÒtVmÜääTuÚøýgêËpéæ Ö}Ñ2Ùó/¥hÓ‘1ž}†0rû'«ºyíꆰW; t`ý]jB ßfç$±.¬ž“.wSIÙ‚³ì×ɦ.?Î!þÎJŸsÏ  ÍºTÄp=}ÒEOáxA~Úâæ“~è•FvϾëåâmš@‹Fµ`ü(Ü]¹ÃSß3ÜÃ&By¡ÇNçý —CAJ÷9ѶF³ëø€‘>Å7ÎGi÷ÂÍV}î¹TRïÀêKÏtË*¥äñþ‹· 1&T מÃí{XOC3ûpßæÆDvµ&?|¦m°ô¯“üi>XaeÚjz¢™‰±É,!o·t…Bä- _Îã&£lù<ö"j´+uFß gñ„SBúâ.>2•Ú¸§#M{S¶æP\+Œ5ñ$Ƚó¿ºDf.‘޲r;´Õ¡a¿hMŸ}™Öîs{jlÝàApÏÒ>$ÙëÄÆ×9ª}Sªò½1Ò†; =åE¤ßnG~â‘b{Bà°DfvÒG˜ƒæ!?=yÉ3Ã}¾•:0ªBg:+éõ±s­«YÀŒ y|˜ÜõŵݺÍíéÈ;tÑÃ)Ňä?®¬GñWç›ý(¨ŒPØÕoê!¡4Kd^Z6c¡Ó;äp¬¡žÑgpòýL ½”€ÚÑö´ÏÈÙß´ßµ°ÛIÜ{Ь0j¸óÝZÍÌ °42ÿáÝÈì2Ùüq4¤ðl*6ß/ +¬5*³‘JÐÜaâiÉÙê H7†dó¥¶ú*hNëg䂟±³—r1•¦(ÊÞF¦uŸ4Q/Ž^ŒXJZÜàŠŸa™Gn5†›n…cº}¾ö„EÃ/û»cEºï§é± pe( R–·çø%%I‚/®ãžB.[Ù•nÖ€ùPTxȯ¦·‰Ñݾ±˜o£—:Š}% 4£R˜C”(¼†ðšxÖáð¬KU–‹ .¢•±Ø–ÍS<´Êcj6®Xá‘@©mÿ½¾•Ì§Ž¶"ªÍ3žÄ{9 IF:—‰ =;gñžlõ@[àlÏ|žÜ@H‘#cÕ)÷ÒõÕ[ÇS?§|5>›B´=è3UÅZW#'÷îJ]Zí ËÊhèðÚ…åatF”Ha|Øì]î"ݱ+;{Kn]GŽž;[Ú â~z9ØMFF;79GÞR ¹zŸä²mq›RÌæËЭ2ª;PX¨uCE?ZÍnOE€OEn¾â¤é'úµ ìJÿйðºe„Wy8Œ—ñ›DµÞ?X`TåGÐô'Q´ý©¥ºŸñå©y,-¾'Ì ^ÿ%ˆp™¤Xñ B‚85 VtÒÃ"æ[çÄô ×âdÀÂ6x{Ë]“íñ#Îà[bpf@wp×9‹?W ·2£š3Ôvì“ïß2la$ÿ4\.ÑÏVߨ[&qÝ‹=ŒÌt¤è*FKü„ ®ÅfÁSµbtGè$L2>“#î4Ý“Y¨ß2¨,ÖT ¼»‚J¸m;?,‚ÈæÀ!c9Ÿ<Žsº­òGz©óèše[ÒIcSé5‚²õzí|ð§sÕYœ:&©fÂIÊq³OueP¯Â©Ø^{›÷Õ©£ö)þC%.µ•÷]ÃB@Ü!.·7¦¯¢O¶ÄŠ‚™K»Ê{¤Éws\¦î|Œ?0§~š2ºÖW¼ó² ‘Ђ¶*›ŸEo‚,Ù‡!i]I#zÄÖ%R£þÑ·›u”ùøtßí+ÉlÊ÷~¶ïWèx:'J›É¢M¿c³…\Mþ¥º†ÎÜ_C3‘8 8ï«åÇK WûÄ‹õ¨=a‰æ$œ[}]È2øö0ÖInªÐvàîDÄWzÑ›>€(ð¡Æ\õ›}€’…»‹¢e²8ëç2Í)yã»ABþïD®£kç„‹ôv¸{6éI-:Ú·œáã .ñ·²0ÒæE’~ìc§7Î\ÖY›òE{9¬eßo?’e ^JöšÎJâÛ¥îÃÓåeåšL5œÐJ!Žz<°¿¦™=ΫvÁK#¥©(rós¿‘4¹äBU"2æOÔ#ø– µ±Œ fË6º»báÿÆ»GZÄó’§jr,Þ@ö]Þ3·ôZ&Ž”•Çô‰ÉЀÏÁzîÇÞω] EɨÎí;ƬgJè%£î«!»g¨VØ[:.ÁT3ÊÏãð^ˆ‹¦GˆÛÂG²ìö«´wHÈ‰ÞØÏ£$¥¨³!J2æoä™eƒ÷[˜ùØ~ð%&qñÇ1È ž¬DùÎ;´âÄì÷fÀÙMnŽ<íß„@E ÒíN5ëï0däj1K¶ä£K§‰mîu$È:uwO{{ øPëšø¥¡|]ZcH6*ï²Ð&‚ç fñþ¤·+Œ€zï:ý_ÿj ³mhe>2.Û¥!z‚À¿M©ñxR¼±2¼¤#¦×?Ü÷óÔɵN$yé§âàuEÿ!¯r×ɯ]X`>2š¸ä¯yR˜ØŠËH==b¾Ån¹YÛÞŽSñd;Ô¾ÏmäVþ9FSÞˆí;h½ß7²™G”!l¤l#åΗºù´©°Hta¨g•GBpÓ»¸Œ~Wúë(׃¦Fxq¦{fà_fxmh˜ÏRs²ËÉ3(p<=*.ïÿm3V0:ùÌi®íűHÓnI;VûÈÝ¥•H~ˆíª†thu¤CjûGJ=¸È8­ q:â޳mŠÆ"‘šOÄèÑËÞÍ/ÄG¨ ù4 åòÎËq×À¾µ«×œLu(iÇ–‹é[ÐåÅ8vY¼é¢§pÎCçÛ¤Û‚(²¼¤'4Y ¶pé3îó$ åŸ(K õj:`NjˆŒƒ¦«G&6‹7#[F 7«Îä]Úù3É‹S¢¨š`ªü¤ïH8ð5¾dÆì œcŒE?ŽŒ²Dœ<×QO"úöä⛩…Csß6t—>kuó¢'8GÁµÉKÜ„^¤µœ•DÙA\ë Ð9'ö3ŸûÚ¹‚ÝèO‚ÔTâ8a0°ðø^#ãï.U¦ñVUËZˆj[iQÏ€©| #%kEá“–VV ˜ãi®N8µRèSX¾Óää« tIŽŸ²F{¹`>qªÕÞ³_â¦Ü>Ë͇)žñë\˜Ÿ:åt?¤­"i;.ºGn‰†ÜEßLR /ò#‘È;)»”£ L˹h“|#ô²¿^5:çð”9œõö‡Î^€B€]®Ï8TíJÌ_˜ªà×Ú%)'Žh.™¤”!  è>¯y{dFJ'íUYnPý¤õUERAù¬\#© â|#6 $ù#9 CÄÜ É©'?Mjýû€å:U6}Ч´MG x³„¬öKçÃøøz‘ÌÄï4pÝRËœŽ?AwÃÑ:Ïx§Î¡ú'Æoæ< E˜Ù$#É6ÜÏ{cD¸cy'”LT„c2ž³6ž4ǼcdÙ~>•k¢rF˜—¸ ´V”ŸU'Ô¢E >{ #ÜõuU0ùc8BÂ!g0‡p+kÏ Ê@òòãĘm”^S­³×ÙÆ8,¿ÈóÊý ¾'ÈxŒª¸€Þ¸g] z ÈY·’ÉÏIß"|OÚ<Í?„bBå éùB­(Ž?Þ„DBŒ6ÐI1ì ¯»N·× WòáÒ†®$ø<çѨô àÑ®ƒvG´ŽõÃÏÿ0’ÎŽ1´þ»‚Í}ï„Ò@‘HSšX™<¢J•%ã§Ö¢ÌlÖs˜,T¦O1½îËV&uÌ¥:ÄsGïÖð"Óƒb¦’…CL)ÙTV8Ÿbb£™}Äý1»3L‘m‰ëïÑ4ŠØHjô¿œ”ÐY«*¹ž)ß{9[ìR‚—†>_?PØ$iŸ™ÇÑ2%ÈUÔx;Gƒ4‡<…Ó}è9½ÐnSæ |Ë`ƒ?ÏÇõbÌùÆAŸ¾( Îgº»^§‡¶È*.R^­ÅÜQ1qºañ5Ý>çn°‘QL^šÚI…ç‰Ò™.í÷¥ ò[hƒ½0-E±ᬄ hü;yéZ”qÛábp ºY²O!¾=?ãéz¶‡Í¾©Ï¯ßûØ!À:‰Ç µ‡iËF)YV²‹hÆTÂßïï4™¥âæFÝЦ66ä$ièÕ.ôÀÿœcßPàkÞ<8Xe„%»‚èNÇæ(´¸ÌR ja+$ÅÄðî[扄oÞQÞ(>(?¿ë…ìhSӧÕfzºž®x@ÔúrZœyji!#WÂ*Wžµ BÛÓÅs{˜?9I: éiê}›;èû)øƒ¿‹ªÍÕ"„ó‚MjòŨ}b3©'°gd=f3Òåxç€ Q#¤üÕßë>÷Ùüü‹¹÷MéìŽìQ¶nð¶Ä$BYÚפ‘B*bh÷%úÍiÐ|º´8B«b‘6½X%;¨ž?l¾¡BG9³z1Q¹í#ܹ֯×r°9¤crÜ‘¥¹L=ž,"3j¬˜*kèeR°}Ø]ûÁÒBQ0‡P…O’ vKœ£$8L4~‡¾ž6Ucb[(6b‡Uä§äÜ»sFʼž®à=ȦNš‰¡[ÛìÀçl+p†AYσ¹•η²˜óûxÆus%Ø-Óv›ézh_Wj˜è©ýJ­A"Ý£(½ûöwïeœéžáÃûÂ"ƒØüjÚùZÛèF¤¤Jb1œÆ}rKxº&wœ{¿QˆÄÏ7ÈËcJs³úQê7p3#¥Ðëp–Â,-lÖ.\M¸,Ÿ‘c+1U¶7û¹ ˜"E³ç*ÜXÓà–#8‡4ª±ÆT`KN`ÌñE§@¡ì.Úh–3¾[HÕÑúÖ=7ÖjLs–ÎTR7î;Ù æ5R6±…м>‡×FzýdKSE{zm÷~$¹¯n“ïçZÝóqPGþS½Xê¦Ç´mSj§á/8ó(ªPôâúl!Ùæ¸9Í_…›6Ü» Á˜°H—)KOHx¬…dâŠcÈ¥hÜÖÔbp©Aç§t•¿0Ê«'‡»iøá‹!ÓF¨)†wpöKëž¡aGµ¾~ʾà?Â7íoýâ²fzp¢w¾!_43‚æ* k8 Œ[8kDGAÉ0ÑN ›bðG !ù¼Vvð¢¤3(½…ʾ­:¼Ï©³Ÿ¿Ô«À¥”ä[A ªcg@Éx|Íþéœð=¦‚Û~dÍóp Ü`n(Þ6F3\˜ê›øÆŒÃeÏõ‹zPK»Bm}!‡¢ƒùu†¡¬Wô\£ûÏŸ­4^_ÊR‰¬ øÅ+E>;PX1½Õf¢) 'Á«{ÖÐÿåµàP¬õ¦€mõôaè Õ~ß̺žç¸ãô{½"Œ!¥@&)úÛͽûüBå¸6mšñPŽtÏaô³–~Y“˜º†ÁN³¾ŠXY/ÞÁü÷•i‹©¤'Öòb–;еçœx7O<£pEr­N¤¸ÈŸ½ÚÃ9¹Cl…¯Ønñ ¯Õ_b²ª¯iÐE¤óšßëKôG:·Î~Ý!Z˜äÊR—ø>ß%åŸ7ãÏŒ–-زœIâš!C†–^™)»0ƒøàS¾NLø\o™¶­Vú¢Âc›À"¡áãl´´)ÔN't_Ÿh$ÝHUzjÉG~›­èûíe˜Àٵ媅ŒN:?W*÷÷ðM$ïŽÊ÷iášÒÌ>@“,KÊz4IyŒË~tBM ÌðŠ–ó©kÊZÆì–p 7òúE„7ÓÎ…))Ál=Å=ö ¯¹gÿÈÒõìùÚœÜaüÒ÷È~ÓaçËeŸÌKAÛJ½a¤ñtœ‰VÓw}â°ÚGÀä2b·¤‚cp†˜´ë…"31 $j¬2QÓMÆèDýÜèÉ*Ÿ7îÞ—'dÛù3ãðË”4 íôóM!Èo–Î9g¼õ’ô´†p~ÔH®o[,Œ³qia¦Hƒ—ùÕKHу*gà9Íz"Õí8ÆÜÛsSჭ24ùÛã¦\ë6Ñ ¡’Où–Ãæü¿ººnPŠ[Jh9X‹‹–;ê/®Nš†¹RG¿ßî«Óçê÷ 1Ñ 1©æ3˜6ÞÇ䯋xŸÆÉv%úô±LÐ9 ÍÞ’|Å»õˆþ‹òêp4¾)“ÇVé²xZ²ôŠo¦7ÓXºHwÖáYâ ×S›o;­½‘{µÄe@…"e5Ê+÷ ŸhµŽ°Ì„{›^»}\™*êªEØq6t³Á^e!ü• ßã!å‹ÎÞ Ø¶”òQÈÇ¢¼ cNšù7Ž[M<H¬_ Âñ½&øÐw6R|ÃYˆE|Ù;†¯`òѦØ1ì­eSb¾°z?¾¾­A$Þ^j °‡jQšœwp¦ë{iîi(-È ÏåÙŒ¿gËD¾:c-ÆBIJöv™Ô± ¹’X¥ÃìB:ç[å;ß]S2³$ÓoCó@/ssÃ'ü†& ~ ’hQ»¨#)ܳ%,û® »“5Ï*t`Pýи•=e…$-WõÁgzô+çÑîÎãš&5¹†E‡‘GßXdœªÇkÂÍÇ– Û° <‘’>d$**j>šE—Ý‚K%SÈuSÛk&ÿÁ^ƒºDÔ)¢/*¹_âkH·Ÿa)Ügk?)ény¾¨º¾¤ß˜§½ÛÎvW´†[x:?–ƒ”h%늷8!6˴ªÀBœì8®®FFŒ Ð+’áß] ºP•Þ·»ä›?ß>$Pÿòv£ÝEè4¥?'ä%öŠx–„’Iª‰6“ÔØA%*›w2g¦…7z>T`Nâ¶n ºA~Ác“î2T¨ÕãPøýü"aëÀQ±VV¬5•$Ÿy_+­¼—[†¡L‘ äRºfU"BެŒyç›ZgË|Sn?ÑŠ¿ÖxTêf OÙŠº`{f(yÒÆŠi%O9„P@¾l@)ݹ¼¤í1/Wÿ0I¦^}w†2ݽœ³•éKž%ߢԼžSoúq2]Àâ‰ÇCÿְѽާBŽ SݤøûW¢I¡ðµ˜/XWm±ûÌq~k~€~’.Ö§— t÷²îy©öÅo)æNl–0¿ØÝ¾VYT}f×Î! PÃ;ˆé&ºvÍÃ'Ï)N„£1€K•ݧ…#KB9NœÞX gâ,—­ÞÛäö™j\†±ª!$·Ý<RmH5Χ5²vêç)\³6þfVöíqj‰ccæø¼í)ÑJ4‡~|¸·fùIº‹eˆÙG­^n–¡){²³ÜŸs RªWÞ¦×ë3>båþÅïÊúŠª¶?Ø-ï²jæhähÂ$eªÌ4Ž!î:io¤¬%k tj~{Ú4KÚê/Q=¨bëô&T°™7)kÍ<…ÃR˜§uùëß+ ëÏöM·R£fG>g¦éÏvÝ—aÜaëM6´ø¿BÛyñ\5Tm›àì §ô˜†L.k}Ùßû6Jùpó4ÜòŽœù†S)“øk)\Éè¨îÒ¢‘ÁKQ¿# ®köšùS$š#r»ú± Ñªä Ž®Zâ……¿Çfu˜a´ãNQIÙhî F@SZžè4*¼õ œ‘¼úð>®ëw¡O¡@â"¤ÔÍVÅ­òx#¬Û᫤¶w¤Pîeõj_&hHQ$9/LfpÝ Yjµ{‘Èu>¶|°*ÞSàs/hêºÜc‘å¹UéTN–A[Õ*X!ï_@XœÀÍâi¤…ŸŠ¤ÜñÏ »ïKïR¾Uœ¶jxkszœDY®¹Ã¥@2­Ï2ór£(×Ã^³Äó&/G:#«^Å;…ï†ÕïS3QˆÅôvÿ¥Á9µPb1¼¢Ã¡‚ËõÓ¾sõ¼(Œbõ`]·Hõhíæ!žØ×÷ŒñXÌœ_¾~à)Õ®´“–—eà#Š¢F{XWRÌïníß;5®‘fÅ+·¤Dt0Âm_ºbBÍŠP!­üD+¨ð5‚w?Ø¡)ðN´)qŠñZBš½ÞðëCIp©¡êºà£7¶[~f{Rzdÿ bèÔ°ï6I^T­/sø½—†3M¼á,FŸ’Ó¬¼‹FÅ75‘R»h~öp©îÛæ'>ú h­ov0?¡ï*úˆpô¼RÌ¢wn >k¥ÐÞ¸ó¾Í†‹L‹•n›s©ÉÈÄԌۂ¸xrüõ€#Íæ¼ÕjBæýÓ«XJÝE?ÜEñýÆÍéàzã탗q•¡ª×Õd“~¹^Àõ…,QHpÏG¥Æ•ÂÅPèéÁUÞO¡ÁÉyÖ‚œ™· Úgõ^¼wÍݵé>UÛì«ÂU‡èô¤|ßÑíttO(wpsó8°rL[ìíÊ–‡ì˜øRúºä¸”†;nSÌf6‚³°[?÷}å>?qh“¢ ³°’ôŽåÜwšŽFZT"ôät½az¾ F­ÉMßî÷3úòCËãk˜kî<ÁMèZ áçw^ ŸzÒ·ÆgkŠe¹'ï ÜÃö‚¤_ä‡Zä·)ÒBù•z³ðo¦Q~ÞùŽ5oûy€ ÅA¤üunPþØ:íñxSt&ƒÑÙB¡±h´üÕ«‰^V>Ða=5G–¥úþ$;Dm ùü†ÄÀ-ñ¾‘Jû/'ˆ…jlC– ¨bV¶ïŸÌ ?šEæ*éÀ,éön†ä—qlQÅŸÙw?„?Uoqöc£b ºWøÕ|Œc¤‹ºš¾8Å!|\†$ÉÞVyÏ’µUˆ˜çyIIWOv,!U} 4³â®±`jhÑ™ê¢J,&ñwŸ>2íŒçcðx²²­¾íî!“pÄ,(N ‹ 8!‡sÓ$ èш¤‡Âd×ã–6Ü‹I'ùùV:;¸R€3Gù4j=?qgM+Ýœd¼³ Ùr@®[Vm,‘J™â]êß8h ÞÍJ¼aÛ‹H´ž¤”Ž1kÀ£'nxÀ‚ÉasÅ„æ?içø¡Ë„«#7ž`e"ª+mâ>ñ}yÊ©öDm3Kú´ì—2Âï)˜–¦ÞÏy‰ý~aš|H@(© I;Ë–HÔFµ[³YŸÈ,AEXoQYªðÝ~Ê_èáñS1ÂÕº1Gü¨Ó™[.Gžæf‰²ã•+eZ夙Kÿ0’ÔFúÓåmÌn0ð{¾i5߀[`ÛŒêÍ÷­ŸfB²`EÜDÇëø#&Óè‹lÚá®,éBPìÑ7ótûJÏ1$¢•çb'?‘Õ¹àgHȪý²8Dã7¼JAÖÎǶ'‡G%ÍK Iïæ`F¬u6¯ü î&8ã·}‘Sϱh ^ÞÂ*Õù¹"ïs#q’¤° E&Ç‹zlª=¥ªü,‡)“¾@>½ÐÞ³ïðù%ûø„Ì ñ$æ%z/ù¢ˆP(|DTlòöpläyRHÆa$sœT}m[šÌ)ø1ܬ ß© ¦ü™„2fS‰¨Ö3"úÉ&×ç-š„ìx½¥4)~›ÄÜE»ĩÌjY{ÿ]I¤©{©÷Û–ÐALdùÒ;žF$˜ëdðaØŸq™c[r98~ð^!/ ¶ºdîº w×|:@»h(¦j$EåôWUìŽÿ’Ÿ>©„åÚ]:Ÿsï (#N+ ëü > stream xÚ·TÔÛðM§´„R#! Cw—€t£4 1ƒ4Ò!! ’"!)Ý)Ý ÝHwwç;žsîÑ{¿o­÷]³ÖÌüöÓ{?ÏþÏоPQg7ƒš€d GvV @RQ]]Ž9Y@ ZZ °£ è_­ÈÞ …ü¡"i2v„­I;Â4¡€¼“ €ÀÎ#ÀÎ+8€@þÿ(BíRÆÎ`3€"+@ 9`ÐJBíÜìÁ–ް@ÿù  7e°óóó2ÿe·ÙƒM!EcGK-,¢©± @j 9ºý— z!KGG;66Vc[V¨½…3Àìh P9€ìAf€_E”ŒmAÿ©ƒ a vø[¢5wt1¶` 6`SÄfã1Ù`áêr¯Êv ÈßʯÿV`ü³;vVöÝýcýËò—±±©)ÔÖÎâ†XÌÁ6 €²ÌkVGWGf€1Äì—¢±foìl ¶16)ü•»1@F\` +ñŸLíÁvެ`›_E²ýrÛgiˆ™$ÔÖqtÀø•ŸØd Ûx7¶ÿœ¯5êqÿÍÁ3ó_…˜9Ù±iBÀïœ@rRÿ(Á–0~¯Y€Ü@ fz¹šZ²ý ¡áfúKÈþkV…§»Ô`+ä 6Á>0ÜŒAG{'§ûŸ‚ÿ& vv€ØÔ`²C0~{‡-ƒÌÿfX ؃]o€°d½þý¦k23(ÄÆí·ú_§Ì¦-¡,­'ÎôŸšÿ•JH@]î,ü¼n €ÈË àåæxþ·£·à?åÿµªb þ'½?<ÊAÌ¡þ¿«€mß*qþ§9èÿÀGP‚Âz ÿ=oÜ@SØûÿó üeòÿ×ÿ¿¼üßGàS’q²±ùKþÿ‚±-ØÆíXS;9ÂD ÈÿªjƒþkEØÉö¥rŽÆ°A‡XÀš…ãïE°ƒ Ød¦v4µü»—þs°6`HêþuõÀL€Àÿ‘Á†ÏÔv½8ÀNì/6[ÿTb 5û5„Ü<c{{c7 XÀˆàΛV3ë_-`c…@a&Xžs¨=Ưsåá°‰ÿZú›xl¿‰À&ù›ølRÿ/;€Mö7qØ^ý&.›üo‚yQüM0/JÿÀ¦ò›`^Ô~'€Mý_‚µ6›ño‚y1ùMü6Óé×.²™ý°LA ,ˆù¿Èý‹ NöÈaa-þ@X-–ÿ"l·,Ýì,a—æo Øø„¥fóÂr³ý°™cûÃvO°A{‡éÂ&ˆaÙÙýÃÇ67Ð?Šƒ=¡ØÞý°lÿ¨…–šÃsàø¶Ôé„Ewù°L]ÿÂÿê7S'{{Ø¥ü×½kÆÿð_OÈdŠ13 5 °*ø~U*Nê²>(„|˜x¥ÃÁ2˜e€æØ)=j¸£þ%eV!_f¦ƒ]ÆÀªYIâÝUêÂÔ©ûZe¥× ¥Ì–¥IÔäãüx¬û%Õ$N-\†v¼…@®}'œ y(n º¨™E§:-Ž]yût¬Ë˧y2¼ò¾+5µ”楼&"ã×Ú[Qs¬3éÑXç>#¡K[±ô_ {’ ”L¥ ÔtãR‚»ÔÝ×3‡×AÞê+ïì·~Dèˆ'-ØC&Å…Z¢5÷û.-×y7ßÝD–@l׬³`Z6â.·ñóf;¢é"^$«ÖYC[½®,°Upßã¢÷TÑ?G—6\gmT-é•5΃N$ôÝ>ðmÝ êD0DO”˜ObÐ¥Í2`¯ìãzg¦ðôg•‘ Ç2;-béùwSù)†ÔZϦGkf œÉÁ™–Ÿ:…ô)s¥¯\T kÁC˜T¿Õ/^iÏ®¶ÞñQ'ji®0k¤(Ð5ÎTnГ}J¦ÜÖ§2‚7¨¸2]êÅ€ Ä¸'á^Ì]¶£‰ï{ße<Å@Y©Ïùüt´¶,%[ÏåÐ\gRHÃþäNgúYÞÞ«™áca꺦¦ü /)„’YÔðx>BÐ;÷Ha‚òßïe-ÊÄ=ÏXkøµ‰ ä7ˆ›Äª‡×Ú¢éO{aiÛ t añ;=Ôѽ²Ÿznÿl9ŽP3~ÜovŽÁ­tVZ1Ëø0»Ù†[°¢rŽ6•«1Ú9î>uˆ ÚpmƒØio˾®ìâM`‡¤‘¶Ÿ:!rÊ )<Ö&÷%oèûV…L3- â¹iLįïwÞÄ^îУ±SI GÚë±+8ŠE}1ÔîîkW=,¬™HÖ!® ¤f8»ÀáÏš †×ì>Uc]ÁhÉxñ’”õ©ÍÛ웹õû#uu©Ø˜ƒVÖ?ÌŠ&ó””þšô–T‚ÓÑ®9·õ]Ý Ò6kX/çû®pá.ËÁbûíœâ$îÏvߎ“²ÜÄú€½7/äšÝø?¸Æ­½úNŽiˆ8d M„ÇOüĨ^3µö ¸qÞì_½>›{ÿ¬…Œ®1¾¬|›Kî—î`Ï〱-šjêlz£")ÒbL}·!‘V¶—Ö |u1è?åYlü½€_ܧ‰éøÉÚ¬òDkaxÍ1`a÷l@¡åU²ð½û#¡ÄD%œ7 Æ‘ˆÈi&vC߈.Æqò¿†–q!ÝÊjõdPy±SÙDö»ø`¸žFhò-!_ûö°cȽ-ÆÓ¤m4Üœj"œuž;û¦®æÅ²´Qä^uúû %$p°„¨µ¦FwJP”,×øYò®-ÿ€‹ì±úŽÐ$ ±®ìºN+5íB]Ûˉ}†mú2ÆÐrQcvÀ®fiœ -ë¬lVý³r>jãH¥OUDOÍmf¸€Ñ;FË{€ª9Ý+UÂÄA8zå°Æú IÔ¥×}_Ü…}¼3ã sq4!§÷`jÄô#õ‚×\jŒÆÀyjàdüX!ÅöÜ—D~'“¾ZÖÍÒZeµw¢?ÏjRU-]Òg? y~»õ›m]——0*¨‡uô ñ Í•£ÄLë‘î3áââG5²<2<Î_7Ó«’ÔQ:¿òŒ…ÒMÊäÏ-?LX4}X£È+êCuî°ø6’ìµ»:„sƒÉ ’—²A Â6Ž6}QþbŠù¦DA1Âðî²ÚЇp³ÑHæ¼åz4$M…‰î+#g®~ÐÀx=*®¾ñÞÈ=Ѳqoé.Ñ÷¡Â„‘GÊÇʹŸAÎx}(Wg5Û§">Ù3]XmQû(”вmouÙ@Öð—\ZçÚmˆ*Zlœ Wµ·Žìj/~Þ„Và¿ë5,Ä©þ\'_)¢yS{qÆYebw“O^¦:æûÈO¤L¸Æ©àáµ” ¿{µ gå¿x/ŸP€õscâMÐã=%®rï¼oጳÒÁæ>"K€ùª ‘[µ²rߦw&IÒóIB¼oƒöå6ê6 rÞÕp—?Ïà£3½Àš@@…}£ßÇxã ìå|:ÌÒéÖ‹gzü\’…æ½·#»™›ä;R%vÞQúxÙýnIúò”O^ôѺÜ>l$ ‡ø„᬴Þö3Iò§’Å¢SqUÙõ” á‘Yˆš…Ï=ºbÖÑÒ®OsÞy±xâî£P4‚*'ç25©wÚå\¨¹R•œƒüçœ D_ ²¤Ms6,ù<{lq¬ 5cD«i ÇÎÏz|ÅœšÉ˽k Ú¬ìc:Ê»Gz¦+‘S¤L‡¤ú&òtRO?R™Pæ®UD¾· Í1[ˆú>z±Ë Ba’‰+Hðí¨È`÷‰W Wúô“XÆñïÉÃÒc&é„lÿø“ËdR6i,µã”DÑ`F9®ÖË…zûKùÐ §¸›ª"mÃ!%o7„ù4â÷\™Ó‘€xº ¢õ¥ jŠóá?n&Úç}wÐBy‘Zï%Ô¹†ÝÚð²¥ûEˆé&Æe®|«&õéGõj®¦q¾4“Z*ÝXÔùPáQÓ)êw?i|PqÞ|C¸‰§´¿q N<[3h1nÌ6cÙbÂk¥07Q=æ*¨+QÄ…s.e ‡ Lá]ÇQÏ|ò×DàÌ“>p³Á¼nú+b(î)Ðú“Ñi–4d;êÆ I¦•)ôú1,Ŧr€ö÷y1?‚µG O[TãZpϽj.id”C[â|¾rÁÒe•ð"©ñ¬êêΠ벊¿Éà ~4"€Ši]”5AâÆ!ãË©’õ+Ó„ ôÏ®"ÐÌQffÄ#JO¡ç*ÿÔí `¡¼A¼”r~ÛçõíK­`1{÷ýcÿ®Ë­Å®zMýbzÁd1è9ëá2Þîò¸Ñ$JäÌah³EwC *N]¸ÅL½v‰Ex‘]îf7A­sŠ™ÕÜ ¿Å˰g}5--h[ØžŽ±TÀêtG (Ùà$©à"S¶ÄÐDÁ"fx·JrÇqúÉ` kû–—¡>< uAB‘4ýA‘64¦6 # ÁË‹ÿÁÚjqæÇ®Ò2ª¯ïÜz·÷¹—bOFë°kÞÑ &% E±œ¤­Æ×riÈ© ñ­ä„;ïבïö6´h¿˜ðæÜyä¼°>Ž3bÒ¢¢ßøN¥š”^ ¦âhh¬¼=ßDÁÇ¿Ž _¨Õåî>l?¤\ÍYC\ §SÓÅšKÿ²Sj2k5ŽÈ×ýðCO¾n«Ž5üPŽŸ#œ8 EŸ7 bËÀ=h ¨)~~ÛùÉcéømx“n‚sSy÷O•µÖÝlì©›ŸÉyZ’Q‡Âï·"ç”–$.I ͤŸ;:­èLMt=ݤdd’•1üññ™ŽÐÄ$\ѧ¬ˆBÈý¦Yáœ7#3Å+ÊMàˆ›‚Ûh¼¨Š";¾×GåYîz|N=`OQŠ‘2wduì¶Ml¨…,\öˆ_«¦k‰r•(¦Ï&µ¥[Ñ<⇷ãÊÂòNùžâÕw"Ò"ÔÕ ïo“Œé¢Zs{rÜ«ƒÍ¶¤CÑ=îÛ“f!Òª™!œswD'>êñÔØ«z™VõÌ“5]£.ªÏ´fÓáÐþ“TPǨw1.—²Šà¾ä‘æ2††š.昔:šj,ÌEF 8ºµõÛ“§M€Ðf×/I?v;W^iîþ¸Þª59º#—Ðy_DdKÓ“2=ÿóäàE¤†,I¶Á«(’¥ÈÀ¶>³ÍÔ®i^[Ž£³HàxŒ±~ŒòÿHÿEò>’G3t4KÜç¾õ½ü’ªa("2¹yAE'™“Qh¤“]Ͻõ"ó”ãÑ7Ÿ%GÅJß~Öºø¬ukdÄå¨þ^‹òŽ{¸ã}…}-®ÒSKÑp÷Ï$”‚ý|û¡Þ;oÉdU-hξÁBxGd»}æ¨K<Áî(úÍ«ŒN"äHØï§Ù7Êãó<åÔ‰¤S²y[Á‰Cjb.# †à©åÎ÷ßÖóÃh¯¹Ç|mïbh.x1ïCÞh£ÁyŸÌV«¬=[ÂØY‹]ÿIL¼wLž%‘­QVfÉŸ:ÄÁ™n?Šåϲ="¦yT4¢r‘f•O'è!³ô´wxQÚèrëyÕúµ¿“&®k.ìþ¨ƒh^J OÕzŒë_`ÒÛˆL+Üb¥šøu—uWª­Rk‘¨E÷Wà Z;H ð)ÙxóÍÌv{¬¢KŒ}ŸÄKúÎ4X²‹Ï\Y=†àyßoÏ%»¾ixŠk1jÒñЇØ\*YÂÅ"1ÁÌÇëÐNñCzIÑÅ.÷¤Wh

p¥¬Pz–)žu°8MŸr¹3Î ×i¤çÕꨞÊUåKBîZ—âÚU"ö†Ã,NMŸ×’ر߳—jí-¶ê°»šv“‹R‚Úr0ãuŸªg)¼­(–¼'D·+õ¯èÙÖ¡ÕtÇäÑ5bÙó°DØ~Ä}žEÏÀ¤’Ö~™ OÓDù,<­Ë¿ç¦·91W'ß×h}tº5V”’‘^ —ÇGœËqJÄy“n:ÁÕ]&s/€yhü™ë‰•ùi¶æá Ú—š^L£3ôXß©f÷&šDÔ‚ýå,|ÝøCosZ­:0»òOUYÜJ¶¦aœ-ãœà½Æò«ËÖ±æDbð yú­µZÝÖJÝâêù‚:Iš7b=•ÈRF_‚‡3krì0%QoàmÖ&ß`u§ÓŽW‹&uUI’ \Áu"Æ$¶I·´Ñ¢kÌ â!\4Û&Ò20`‰­ TÊVÐd±¨g¼ÎáæUêxo׺½´QF[ʋ˹&ZåéÚYr¿Ãã?ï1_éôV2Ò÷îNéƒ_½ëüˆ“è,áýu´-¬Î¸î!;öû¨]d³A‹›ð9Û—+Mx”ÊÒÒæÂ;ÛQŽÉZ’Æ¢·ª ¨Æ».ÙE|T§ö~¥Üƒ”±Bñ6à’ûÇËg¢ËÄbY¼*ìÍŠŸí¦Y—OL^T–³cŸŒ;e3•½™÷J{0Z< }ëi Fð jKKDÚuV£·ÝÇ3gòS\Ÿù½eìˆÇ—TD;—€ûJºs°ÒçãÅ„ûz²¶ ›õ›Ë§åb¦S2ÿï÷!í8CÉAË‚ŠÃ!»•¶Ò,oÏ(ã-ùåè—|CFgd|P ®WËáÈg5 7*ÔÒkuówsÓßNrØEØèZg:1†ÓP ²M_*“º-°iWw_¦h,¸vÚ/L -~>1‚Ê¥a…»xÆâ¦ŸcÉ*"Ú¿;wàÕ²)ýx(tx¡-*(á˹룟EVõfãZŸÑZ? ɨ9Õô™k²ÔQÝ7;Ô,TË­´›„˜=ºAFI7è¤Ä·÷œ¢Ââ<É‘—5ÈKXÕ¼AÁ&UÓScwÑI±8•åžKvæ•ļ–ûöœ5*êfÞó}s4öš›mb.`e!Q ±.ÞàC:žƒ’^ŒK¢q›û••Ur´p¢Îx†zµ«ªÅ|c$’Aüìúeh‚¸l³ÜÆ&ÓùCÔìò 1ó¹”C ÆÒQ} ?yY´¿ûäZPO/hû†öjФøsÛò—HëK E2š òy²1.%Ì1÷B ‘Ÿ~:’OrÖÊšm>¸ñúŠ…NžåÐGó(«Ç+JóÕ×·<Ù†´¯¸C BáŒ=}:ž¼¥G06+OšFsâ!C´’ ™“NW#\µ™=+Ùâ)’-ô$ÿ¹ái´™®²yv§ÔÉsš“mr®¥<ÈÒ–µ§qÄá(srDC«kÀïE’vêð"÷¼Ê°YHDzqV3 uavm[Kã ªJbY%9½ABÍËL&ªDPáïÃr6lü.5Ÿ2î‡?¾›/ÎÛ'¥(ºU î|öYØûyÜe/ r˜²ÁÈÐýõ©wêpñµ…f<þžÚ×!_æÒf^Á©.¥øuk]ÈR5%[¦Oiªüúúz± ˜:®Ó4=†‹šFî«N ®­âêÉY?øT½ =¡Q$ÂÁW;-p Åh4õß饭FŒi–KØ"òϨ¼{ ‹6ãòÜ)­9¦N)ÃúiܱÃ(û .+òÝv¨Žç9^cTºìf³Ûu¶^¡Œrséu*÷Š:ÂÃõ®(Yœå“ÎʱގÙâ“+䌙ä¬ð’§ñcÒ FâGÛä´\ž]÷õl-š6ó×jTj¿|ò@nÿM2¤ð†Äï y½æ­³^ÐØÝ8*“"°ê´@'€à µˆQ×GZ(ªÛß6TòÕ.Ž'Tî–¾qäpyºÑT £ÀÀÌyÉ‚ú‘]—ú3™ÄNcD!ú(vhæƒ9PE\u'Ã1çXò?'¹jdîÌ#Þål\„2®/O¹òöŒ¾È@š–8/ˆ½rµÀ¸éÖWR£ãÃ0ñm8#2Φ(«i¡ —Õìú»4%:^X“¥»³£窵cY¿4œ“ÁæfC0Ý[³Ù;åö2ªåÞãÏ€¦L–XHìé”POÚo#§/yµ%SŸ)NØ)6$†ô²p41ÛP9´ëåóâ+ 'VÁÿ)” #¼õz4Â^|§ê昃Õݪ‚ÐÚ, ïËj ©¥vº½Ö§HOÚ<ì…ÌPÏÉÎfqD_øæ‹žs›‡NnÎÉ¢M”ÚnSEÚÖà¿Ü/h ‰YÙ^r·  »;$™ë¯%mϧ2OìήþØNÍuvP‹ñrþSÛ,ö{/ë´ÕxÚ\|é78Î?èÏ|k«ûFü¸¡vOL”𵩲YG{­Ã½Ks]Ñ9Üwýšº–ª †ÍF>·Úú3½8yš†§lõ¢(£«^ –dÏ);\o†¹ÔÜòÌw€"ðÉZå$y5•³5EÔMK’ÜëÌë‘%o$FÅ£GLëžeÄð >Œ*òÍ W§¬o/þœ÷ÌZç ï¼¥©JR*§«Ücã¼Ô[&Øh‰7Ÿ:Lh)n ³i8É‚X‡ ôO@°œ¤‘ƒw…h‘›77‹1Çù=…©ˆà¹Šž‹Ÿ9ÒfUR\z‹>¥ó´-¿dZ@$9!ØQöë¯ÿ¢Àã˜!௟¤/‹­÷:_C«Âú¶+õ¶r’QtCÔrˆví ³B„¨(ºþ,%¢5˜»"µ)رz8šÜØÇëæô~æ“ëRAWvÂ64äøÍ8ÒA¬Îì¥ßµºx?ëL°‚¨wXW-³t/oö“i#—aIÛR+÷ñ™ß²IrëCb»¿Û Õ—TfgqíÕf•cCõÁˆ^«ÙH)«ú]Å.öÄ'q¬{÷ºí>”ãœä`ÓÂã¥ëàí'^^/ò!ºbš&¤ÜÜ×€ íLa»¡ÿ Àñ›~/Å5·mpÎÏÕÏ2÷¹zEæƒòûÖ|D añ‹rÉãko¯]…0ôæÆ5Â6ˆ5Å–‰´õŽOfgÔè&»”Í«ÂRÖx ŽX®ÉHYË•ŠÒ7sß<5§Ž¡ó<Ǩ†ÄØG¦/pqw¶9Œ`á`ŽÔ]q`úôË—,æçpì׸aþJ¤ª#,av×®=÷(ª¸‘©3T”±òó²Óñ r³œF¡Òq(.f\Á6„+•—¿]—cÞêÆËùø“m5“¬ÓVoÎt Å¡ÙËH÷ÀÄÊ.V©s«X.“"?w›º—Hß ñšØ%ô`hCI8Dø)„•K˜8`V—[ £¹ŽHÏ j a6)Äkeá+&E+»xÅn?)1a†ÖYïIꇼâu0Q¼ehI½™½¸p¼›fÚ¬¸:pZÆ)ƒ%pá—þF,}ÊQãݺqÂjÚJ:´ÑØ•kår[‘,-»e>Ϻð‘a8eO³ –ž ­ª} ¦Ø ½_ºì‹»°[8Ö÷”|å\«GœgB-}bcÙŒ>ØÒÊ= %éÁS‹É«Z©â5Ldœ{4ØHFe¨ð* ŒßÍg¡Ÿjx£ÚØà.k¸|3øp›óÐÞŽF3!!õã8³Åm¶,ÿÛÂHж­ÃFÿªOƽG‡†r§mÙ%Þƒà¢õ 6%¦-"Àö12ÿÔ°p©‰žÂR‡EU1RZÅç±ö\h«z-Y%Ëç€OñQ˜×µ ° ç¼Ì €7FZ$[±D4¸¥3çEóÃo‰O¤°´7ÏL<ôš„‡ aI šIÝË2Œ1 Ï]ð¢ò(¤kYJKVû‘Ð.Ðo4[NËxç$‚m’ÊÛÛ—¥;~’F¢Ýâá£9aårdDÊzàÄ6 yªWSˆã¥ÉA¸³"6ïœ(\¶ˆ@kË3|„é†Õ8Jô ©"<úDZDx‡'æ;$=çXìŸÜGäÜбu=,!—â_ñsPSªÕÀʺÿॻ endstream endobj 305 0 obj << /Length1 1520 /Length2 6820 /Length3 0 /Length 7824 /Filter /FlateDecode >> stream xÚtT”]×6%ÝH×MƒäÐ]ÒÝ!9 30Ä CŒ€€€J(!*H ÒÒHI‚¤4H RúÔû¼ÿ¿Ö÷­YëžûÚûÚûœëœ}Ý<&æÂj®H¨‰ˆÉ7 ÍÍuA2€˜˜„ˆ˜˜81íý;AÌcEù‘ùÿ ÜDAÁ諘}Å4D"=?/$€¤åA2òbb€¸˜˜Ü_D$JÐûÃ]C@‰€úóÜDú`Pp7wôÕB½ü$''#ô»Pó†¢à00£Ý¡ÞW+BÀ^€9‡¢1ÿjÁ¯èŽFûÈ‹Šˆ€½}E(7e! ŽvÌ ¾P”?Ôø%0{CÿÒ&BÌX¸Ã}ÿȘ#aè0 \¼à(Â÷ªÆá EWËæº€±ñÙà‚ðçé Ðßíþ¬þÕŽø] †@Þ>`Žp`p/(`¬e ‚D `„ë/"ØËyUöýÀ.W„ß{Zj¦øJâŸ}!(¸ÚWÄîõK¤è¯6W笉p½‰ôö†"оĿö§GA!Wýë~=ÈDÐßG¸Â~ qõóµDÀoûAu5þ$]…ˆÿ‰¹AÑ€”˜˜˜,H€Þ wÑ_KX`| ¿“ _á+!A>Hv%‡A¯þˆƒ|ÁþPòƒ†ýgâ߈\á4àuƒ#ˆÿé~†ÂþÀW#€‚vbWÄ~ýþ~s¸2W$ óý÷-‹ZêYY˜ þ¥ùךּ:2–“„Å¥ÄH‘’BþÝèï#øKþï¨ þçöÄþ騋€!¹?T\ß_Jüÿþ?­#ü{#äÕLCþ,`/&%¹z€þÏFø]òÿ›ÿ_]þw ü÷–´ü¼¼~øÿdü?°7Ü ó'åj¨ýÐW1D^ÙñßTkè¶6„ºÂý¼ÿ;«‹_E áv5ìÂ.ÜW u5£!îÌÒ_wqµ€5AúÂ}z®JÄÄþ+we>ˆçÕçÅ÷êÆ~§ WÞú÷¢šÒõ— Å¥¤0 Æ_ À’‚@Wnu…þq@TD_•WCEüë^¥¥Qõ_¡ßHV 5ùÉÉ¢à ù] ý(ˆÂÿÊ¢^ÿÀ+?ˆ"ÿJ¢¨ßð_Z ~(Ô•áÏܕпðï¯ …OŽ!! ‘•‘ÇåjÌÂ+ƒŠ×vÒŽmÄ…s ÑšŸœ’̳2§ô‹µ&߃´=ZŒÔo?ŸßZ®b¯ÆH ³k­¹±»$Œ]a> úÁÂ9FQ‡•m¢Î&_€êÄ2a¥l%Rquë4ç¡æ«ì˜xÀ{½PKF/ªÑ¨¹µ¼0Ó€ŽEÎjkÑ ]ïÒc±"uÀÀ÷bÑ;>b)Î>:Õè§¾bó qR@å|÷‡ž/TïYÛbÃõüï­ìrßGSi*ô°hH”Y}É!ÿù¢Àóu‹6%¨Œ°*H¢*ÒOžHt“,'ê½S.:6j™œ U|· «°YóܵÄÐHM¸ã¦Í¨ú¿$dS²¤VÇi¡ o`ø©Á¤ÎÄR¤ˆëJƒ5½ûêÐGÞ)î}÷Ù™»Cæi/ÁoaÇ`‰ ýøˆ’ÏX‘:$á®(ìY>ÕCRmüȽhzZ‹ÆDe|*ܘ²eñ{ UvxÝŒ›Ææ2Åyá*¹K)J*ðïN7X hý}»ÔÒüÏUnŠ| ÚpÝX)ôp'² £±ÐÂV)ògô;™îÈß_ò$ñî¿o¬|TêÏìÙ4y¿sÃŽ3Eõr‚dÚ¨±X_¶*ÔX­rÁIo®Oræ%;Å™+•ªü~­cy˜Td$7wž"u‚Tð¡ù >sýã—£‡Ú®€¯xöëñU¶¸Å—,k ·¨Ìo@•:—¬û¶Ó³5¡/¿°^Z¯ì½ý‘‘~·¥†+cøã§ÏníÆ’ nM"%.»è) ¸W6À(; m’rí§ Ñ6[åLäÞ³eí‡;ý[OØH#ñÁ˜ñË;a·\7KËFK¡¢ó~ºÙ :¢u¹¼ S­™¹6ƒPOþ”¾)Vƒm:¯œÁñ¨è@»²Kpõ ˆo†û%G¹D»  ÊE[ÍúCƒþ¤]VÕ0|A>ùGL“¸@Ñ’ðiÔ±T× áIIá§yfjg‰úªywaG³ÐøV‰˜€×üB*‚‹g•\ßœ”íC'ï$Žä=ŽØ<[ƒ½iÉíc׳æZGÝ™ŽzN&¦e{ëõþêµÐK¼å÷ÃG;”Æñ»¬cDÉÄ—Éôwh&úŸGå1Š=÷¥=œÃô¯Àö~4 ¸uTeóè¹ö;ñ’?7³ðb[Û'h§<¡Á¤¹‡·ÐìŽj¨³û»¼bÊC"Â^\ÖÌa.újË›ì${û8cã›|& ¥óO‚° Úh¹¦Wà8šõ™ÇùÝøxëÑLyØR¬ÚTUß®S¹°£Vz§`WŽô>§ÿA´¯@ìÀ÷‘úë-h‹Eh¼ÍWé-ÑÖ[fKÓÆ¯gQ3*ÎÜøo4½Û|®}I*h¿¡)-Òõf„ù6vý…YrG诉yhuí^Ý.m„à56IÜÛ¸-S}Hsš$§sß“§?àÜnÞ ùš˜W:ïž_óHñ‚m yö¡ôÞz‹Çëï*!N‘fž‹£m*Vïx +«Õû•|YÍòœßˆÓ(ɰ–s9<ªò4‡A7J¸1…Ž¼Ú‡ŠÜ— ÄÎüZœ~°72.Ü)}kž ²âü$«¬[ßü-ÍÖ>è&>úšã4Ý$é•“þÉðM„ÕCŠ˜ªþTì]¾Ùý¤p6!õòzUø²ÔÌÐàG¡O—ÚÎA ì (œÈ™Ûñ!¤ØGS†iµH–A#ã]ðw§¾%ÓËÏm©n;Ï„ÓD¤ì7S‡y6c(@.Ò{kÛ¯‹„˜|ò~8»@c)Þ“: ®+ðU¾{ÄþˆX7æ¬i®±³ó"Ú­ äÆxW©6˜?ž ´ºðNó½ ”ùXO™ÅÝ%†"l—…H ž‹¤Ø"52›v>1.ì&^Íc÷ìîê°9j{íÁú‚A¢õX¡.hò#˜V);Æx¥µ°P盦*wLPaÁwüGÈZêÊb%î[ Ao‹”Þ7ó%a—`2qödÃØc]9âÝaÒöšX¥+7b¶j(oáœÖNªÙz4©9âq΃^ ¥°É°h"7©‹ž§™G0*8gŒÜ“lgeyÒPQ‘±•Ùš¹+pøS ×l2SJ¡W¨F0í[Á€0ÿ ñ“ô÷>áƒÍµ Q‚ý¿ˆún›‡QžÚý «üúf¤Ž7EÿŽ gÌfPÕ a’©1cR†%_@àÙÊ@{䊭×l9§dÑg¿§5Þ·~ëœ7t7ôå^Œý½‰wʬä*뇸ô[µ”ë>£é+Î$dXÓiÅ6²9]œ?a‰´<èF„Ÿ h‡èÄæ'rÞs£ìQ£bzݤ¾"u×¾w!·Èkì¡ p"DÖÐWOUÇ0xãd¦ƒòÀ°p –ÕÇqöRvDÄ͘WX"9¶Ä‰€Ö¢ /™†)¿oV«Q“Ž”„+îeâA³<µ¾É±Öôýô#v´£´8ŸKñûè+ZD6²ï°¿Ãnâ$yûh*ìµúÇõqãcv†#£1ü* J Óm5 \nÌÄ}wÁï¤Ý’•ôóØÅ rq§ƒ|³Zå€Ã[æfE =Zݽ³â‚kºYp:Ý”Çq²v®Âo- 2øäs’㨶ï|U†Vïa?Jµ©¿… ªòCÛÂ'±ì­³1˜wp.¿% ËΞ¤½Ý‘I‚öqJ69ñQ {ä†Pº&ü O¤¦ÊgÉ_ù ”h½†J¬hÎ\Œª .º¡#‡ŸzrOg\ ©Ó:ަ”˜GZ +ç2çs…(9•ÂÃÀ}¿^¾»­•-½sÕ6„¤kË‚œ§'ø^³â8Dž4|ù‹NPRÑúŠÁhð²´Åz¯þšŒß'FQUͨvbþÍ‹ûJnù [¬‰Ö¯2Çug5Ÿên°1ä2q‹-Ëag†Ñu³×Ä‘3wb}2¥ á*¶fµP R©p^-:2üÔaŽíVHà몳´oTèSÁÞcíæV[ý=Ì£º‡C¯Xúû¹Ÿå{|j÷³^»ÞkOé} .—¦\%ëºy;%ÃdæŠeóë–ŸoÄ&¶×â:)˜ùôRÚA8í|©®½j\c—O˜Ÿú~'Êgîé¥Êí ¾§‘áaʸA—\~¯óÏ ³6Ž7ÏÏI| !&øÁ_F¤u“ß1|~¢×I 5 4—d³VfÄäÜì5^ÛÒ«×– =ÚßÛH¥O 4þ¡¾í<þ<"S¬Ðß áÆYçÓF ãÖ·ü·Ëý¸ ‡Zv¦Ný›|µ;xïJñmÒŸ"Ȥퟵ2$O¶²hŽs¨VÆSo´Ø´lkp¾j Ñ–'XËŸ#îº}Û2ðè ³ÑÉS~Ù³øì–‰ÄGì™6n(4Ï/â§2QWÑLò!¥ù [ÿHR€©ôÓ­¼Úé¿»ÓÉv$ø>’¬(Ÿ~8Wÿú¨j{ÌC™KÂ8ùè©èøà1ÙçÁÏ?> PüÆ%e¼¸Ú4ÌìÆ… nO]W”‰*†+Ñ'á¬3ãõ¬}jƒáïQIÈNØ*X ¿&:•è»/f…‰u‡Ù3Ç®™3ˆ¶½\â}³íP"ÍbãM‹e¬.ŸïÚÏ.1v¥ ^ì ttöy%¤? 9I>¹WèÜ(kœbYé^B«–¶zÖî˜2¥÷d0 ‡¦Û|¾ŸÇá>ûK«€ŸùÞ#üÏà kBS¶••º…üø‰Ž÷#~|s|ÎÖ•ï¹:¨‘Ïl8ÊdË,D’P.UôÕsD³LêrÁð¥W‘ð]¥Æ©¾r-ÀõàÉïi-äÊ–edÜd@‚ÓÓÈÙÌ5Ýñx“}:†^¥^ç¬ge &fžv´¬§Õ×t¿Ë`žh ùÒ†gUäÌÞu‰b¤4Ø)ï|WÌY²9ñÔóþ–컼S‘²ÖìJÒ%·Èètç^¶þІhÓ€_$'5/üðí«Ž=û÷þ(Óý_r®)è¬÷ VaƆ ðÀµ øS+?‘îUyØÏ<}•ûJ›­úÔ%ÃX¸“™@ÊV“Øâˆ.g«‰íÐ$½ÜK­cæõžD.œeC®Z½œøß./(7â‰n®¤YÆ‘E]à!÷܈Þ`6Ю[ß5_ ¹;ãøþBÝœ×&‘\Crü¡\„ÊÄ…™Ú5¾.{Zýè›ì¯í¨%¿j¶ïºg0²–ûw^e#¢fUÇÐÌ$儸ÇÂõÝÞqóÀÀ%Q›ä}Ø0´èó0a…êótÔҴѹEVu%{œfŠiÚ,ÔØÇB!á“vN,;’&—=YçœéitTÛã5zµÜ‰;È‹®…÷sX4ÓlÔÚ[¯öEÏ iIx€äGa^ ]ªò°‘Öð#| É:¢½¬K27çÕЗB'é»Þz6Î`ÕÑå Õ·Du2€Oi`n‹ïñ3»Þw8ªWÐë¦SÓ¡câc…÷ßs{zÚºÚs:ÒºXÍI“®K±‘Êpm6¶ûÏ›ƒiýN_„Ê=Ë(Q‡;Ðxçþ<'çÂj“mð­bÇn¬ø¤Û‚ÜèEg üN@ÄaÎ Š‘×| ûñ£áRüY­Ö™NFuãÒY‚õÝdvMo-GöVó”©kmÅNNq² AOž‚Äg%lW*rñºžW?&6eé|ñ .ŸK]j»ÊYú4käæ ¸ñ,Ü™evßcÕÑí=Ì®Êzòššºv"‹Jlö™ù¸Í>tñæO6;!X …è¬ ºµ×CRF~RMÚx3wâžyÿ“ÇÍ™Ö_¡¶T ÆŽ+,—õ¤å ÷ËØèR÷W­È>r§õ”“}~UËr:n ¡r6¨:ó zoð…9•Ï%g•J¦;Ùc& eŒ¸Ìk¦Ó:œº‹¡4k™‚ Šl:}u—è܇RÏ—C–°T ‡?Ù~2 &Ô‡‰ßc½žÓ5Á8!œlŸ2ÕFÇ/föü+i┿!ûtÄf•¢Óï‘dB‚I$}W¨ ÷2¿=ýQýe†$hJíÃeJŽèåšG[¬U¶ÜéŒú¹&ßÑ‚¾öe T‚Ô采Ð6‰ÔþúJ*ux3rá£×J‘͉¢Áz=µ²›Se<ª×’u^±gÅjîÖOßÝîK²æN¹ª³»)Ç ­d…¦ø-ÄÁZØ:Ê´§ÒE=:x‚NƇð@ç³.iuK7§2 ?-4/·µã¿ß˜-¼þŽ-×—ÂŽ×Wu6!p'Žçu]G•Mi¼šÚ77¸^«m¯ÒA*ÿKP'OÇH^e)6)$vhÿ¬’¨I¹:äñz?;SJ¥³ ‡Îß™R|IlJ@GBÇuO Eá2WÒ[}@`üªõh*,Ȧծ~°Áï(ÜWwA'O ž‰˜ï´ÉÄíùàLZœAely*tDh—4s6‘D‰§o~í|’­n–í–¥#òÚÞó^ä9¡©²ºDÔQºÝY+¾Ÿ¶SþëÐvšå憘hu'ŸïÏ–~ ÄZõHä‘¶þavŸçÏeÕÒË ºiôÇá74• ÃÅÝžJ“•>Ë•\‘S‹ .`Ü8ˆ®i^y„ó8ЇñhÃ}ønŠŠt8†þ »/cö ~ëÙwŽØïþ¯ü®©*–U:‰…7Ý’0š/þ(SJîÜ{ŸØë³Î¦ÉÐ÷‡ã–±¡Y£—’`çqÃÅ,ÁÓb9qKo¥£Íø¡¶N¢ÓËþvipïÁ=‰j]`ž…]!,aÔQÏ3ãÀr2üâ©'£­8O ˜hä+ñ ɽ³1ÀŽŸ“U1|0K†cþÀ•)7›JÆrh&ÿ›ºäÀ³C“9H.²ë(í+×»£]³À¨h¼jZ\E&‰Ú²tî@ÚÅÂïˆj‘´È¦k–ò^+Œõ|2e} ™ì™e|:wÿ>Ëñö€5i5Öp8<@;b?6©"LÝ®w’ [9•¯ ¢œÎºè¹Ôl½cVXµüó ÅÒÏØ†}, ÊÆ³VžÊ=4õˆ¤VÉ!hÔÀל«ðÀXd|^¦ÃŸÀãž>GÚeÏ‘·ßîLÙ¬>'WéMX›9ʳ]ã Ñb¸û±uû°­Pê\}d¸Ùìr‡·;Y×kÐc\ºðÜ&kùZá1G;b/õôubÿÑnŠô4.ú¹ÉÓVR•œ¶¦ü)KiG&øÍ]^þá½ÒðìTî1¸Üá­ðø“ù¯X¯¤GqMÞn™=°N‰«KµZ¨»+×–±×9ôDpúFƒw|Šb›ûæÙõeøÒqö™B¶±£ûñ.®ÞŠ,•²]Wcß !QÞîQö™ë¯„ÛpôÊÛPŠS5IAîÃ7ýƒ{MÒòC\›,Ã0¸€ÍÅ$÷MÒ‡SΟ 6LcI[/5|5Z¿ƒ€G‡µöºÈÝ_}) u ©qçNð™ÔÿþµÓQc ã<˜Ý*7–I]äI>Q»–jžñµÂV¸° xÞ¥»]œ3þ7d×¥Ö­ŸòEy—Ôz®ªCl:ö™ÚNŒšöJ&Ûç^Àk¨ì°Mó äToäu#»²yªÇ5…åûê³óõ\X*(%ÇE‹ÑîråvYF=þîvk­¥‹þµügÙiýS;þrs’`tì†÷³x UÆ~F.~;èI!CôŒÅ7l×üÙÞ~ÄrŒƒqOD•\Å™ïN®!H$•‹Ï/f°CÛ¡eÏæz!·ÿI&g}«(qUBÞèöWÞ S‰¼uóf-taѹÓÖv=Â÷µæÛ=C&R-W;rcV«‰Ô7"Q½äܱçŸí?ž{¸‘܇}²ÇS¡%|aŸ4L¤ãŒKŠâ'v{ýÄð‚¾—˜ß¨[ˆÉå›ˆŠ Sù¬ÄOL§ÕέÛeؼ­¯Ùmvq>z s8~Ü[Ð)X)ŧ§ËRŽl³ p“IŠ(¼×xд9ënír[ˆmº¯õÉ}0Z2—§Ú”¦¨ª±Žk¥L†ff)U9¶PòÅ^¼L‹³* Ç=¨Ëd¿ÙržëÝÕLµj¾¾“|í'*HÙ*Y¢[™qýó¦Häî›hÔ§bSqB\iš¦´Ìý4Š\{<³8í9ÑQ©Ÿ?ÊB²µ=¹"FuƒˆMA0I¬, üŠ|N[JUÌõ'^å ñò˜¾-¨Æz ÐBÞЧYØå’­¨kmoV‚·ØûX—Z3ib¿:mdóýÚûdgüÊxxr•œDœd­£›A‚îAåâ¾Oµ}í£ëð½Ïª+Ȧ=mÓÈvªe Þânå¿ïêTæ®bã—,s…=¢Z¢~7/ŸS*)_ÖV“·I´­Í2ò?¿P G endstream endobj 307 0 obj << /Length1 1450 /Length2 6414 /Length3 0 /Length 7391 /Filter /FlateDecode >> stream xÚxT”ÝÚ6%%ÒÒ9€´tw·ä0ÀÀ0ƒ0twHw ‚tH·’Ò%©€„ t ˆ ßèë{ÎyÏÿ¯õ}kÖšyöu×¾ö}Ý{f £Ž>¬Ü¬‡!xøyâyM}S~ äpYX (øo—ÅìæÃÄÿÃCÞ lƒ@b 6¤£&Pó€øüÂâü"â@ @ûÛî&P°ñ„Ø4yjpØ—EîêãqpD ëüý`qøÅÄD¸‡d]Àn  iƒp» +‚l }8Føü#ûcGÂUœÏËË‹×ÆÅîæ ÅÁ ð‚ z`w°›'Øð‹2@ËÆü‡/. ÀÀâþ—Anð²qÃÜ‘!0;°Y ¯ªÐvÃþrÖøËðçpü¼üÿJ÷'úW"ìw° wqµù@`{ ÐVÒàEx#¸60»_Ž6Pw82ÞÆÓµ±E:üÞº @IV`ƒdø‡Ÿ;È âŠpçu‡@qäû•yÌŠ0;y¸‹ †pÇýµ?ˆ„H÷ߘŠ ñÀO`o#߯>®à߯ß0’C€Ÿ+Ü`¤€Øƒ‘¸~î6ž`ÂÍà÷Ÿ†®pùùv` v€Àpÿ ƒíÿZ#ûïñ˜‘òã½þõdT˜õù·ûïó™™)+qý¡ü/£œÜàÇ# àøùù…""B€€æù× üÍþ7ªcù³»ÿȨ ³‡Äþ"<½¿‰xþQûŸ±áü³‚©g0€ýßò‚oüÿç!øòÿÓþ¯,ÿ«üÿ{GJPèo;û_ÿÝÆõùãÔ³9špä„ÀþÛÕü×@k‚í .ÿmUEØ gDæ€Ô9ÿ#^ࣿpˆ»Äl§A€ÿÒÒßÍ@Ö€B``¸;ä×½ƒŒÿˆ=3ònqG¶ì· Œœ¬ÖU„àv¿FP@H`ãæfニTr%ðãGΪØû·Ä|¼08@r ØÃÝp5–(à³u³¡`{Ä/ÛXðüWÿ… !aä‘‚ÿ‚þ±‡›rZk¹Ï¿×¿¯0Ø Â]š‡ƒ$Â^‡w^ÕÉÒxñ|Ç\[ïŽI2ˆB°.¼ðsÔÀÊQžy*gmWó`4Sg±"rzÞŸ†óðjÂûÉÛ¼Õ •ŠâÀ¦Ü1Oáð÷³·`z;8µÃ¤HfÌ&ñQ².¡µ9†9[ªñüM„H¯àΫíâÛn÷3±=€  ô‚ˆ1ƒ/›ß½‡öÌ”‘y1bú„(ÄÍ<ËÃ@Õpòí$áR®3Žê»Ï¦yBöÈÊÊ»¼ÁLÁÓ"õ¾ZášHR*2_5ÆüÑ”!*òä<µwV9¡ ùŠô$&ª—HÖUtk‘Õ³EƒÉC‚MZò!÷µÇš=àBó’ù½«§´V[¹ßùð´¦Ä8r×e2˱ÔÚ¡\ŒdÕ B ú0(è˜ Ýî4gáeå—¦hËÍqXa‚–ÛS®¬ãs’ù,Ò%¡¢CŸ^Ê ë@é]Gí—o§H©YHuTѵÖ=Fró~{9©2aH…i}×9Òu g>¤#Ÿ I2éÊÙëßMnQºxOlÄ©(Œ¨W_€÷Xq$æ'Îéäcètt+K˜Éˆ-N1% /hì diᘊGÈÏ:VнZ®{!Ú*™. ü0uŒª »ŸHT¿y_·÷û=Ë$[·c>lKõ‚n3Gë2-65Ä£$Hó^ÒÍ9Ó™c‘ùÕ¹Ÿ†AV¤åO ìã$|Û9o:*0‘mˆ6ƒÆ¤õÌmZ½£ë2L Íz3µß×Å–¾ã­Òt}qLj;¢,>Ä^­jNj—_$14´ÑèÿŽÇo~)ñh+ÄÕòK“Ö‘ëʧr B¶Å1ÁÍÍ`V1? ¼h£ üo¢$ø6SM¡ó0^GûfÜ-¨´ú2EÑž9ó³ÖXâ†ke×ã‹>ÚÒözZ>µ!_Ð%zI¨’èOÁŸøL´…ßùÈÂ{ê÷v,ŒŸÒ(„j¶aF›>Z+;‹l%.2Mœ+2ÑQ<ָشh»_ÓVWI÷Ãå§ôž¡"Þeëéô òï€ã_]\k1Ðéå(¦–d·%΢ÿ`MÛÌ‚2(ÝQ< Ò FÓsäE¯”o{RZ3ÀÅ—¿²”–|èeǧõ´Ÿƒ‡qÙO>ÈÓÜ;`h¸„JÓ‚8W£™k,ƒôª·-*]"·ˆÞCÊÂÕ+µ‡gUïǽž}ýcçÁ7=âŸVˆYc‰ìž±“¬!ö‡•α2ÒÙû†/òüü7¿}Ó °ü¬TEOï>õƨ¦Á*žA¤¨Ë–÷ÖlH40.­NýÄ—o! 3‚7d~ðlÏßO‘îmHcHË«—ý(Å>¸YVÕý„©ê{szå´ÞÁ=O=ùôÅŒ<]G\*‚Y+îü!ŠÑ<Â.gŠx[{莬ꕎ%ZeC¶×Ri©ê°Š¯3;èR0ÌûG}ìpȾþˆ¡Žjƒ½ŸúDŸ;uÞá¸imgáß¾çÛÄIó¶‹ô­,Ú…2{Ù*a‘©$WuØÔ^Ž~òLžãdndr4,Ó”>oØ“^Ouåœñ$X ”ü Ãï°©L˜*S¬•"dy,˜cð¹AÔ¾=@í£[Ö¦ÍÞˆ_ ™Ýža!ˆÀ WÆ+¾NÑó}IzvfÿÕ/jÊ’XÁñãùã­"¿ìì ¹ôÑÝù€ë7ƒKùîölòg>«uVC¯f_ÉX€èESëaÔ"OÙ¨¶QÕ£o9kKRü¬’™7¤”„r¯èÀŸ­Rn;£½Ïæ$Á~Šn¾Ìˆ¹yÝ2±øeö ¼#Ôr¹…5îóÙ©±(4=q«Å½5<ü-_ÒÆ†%G£Áçþ`ü3´õêÃ¥©†uŠ.}¦B‰Ä/é7–(ú1¸²B§ÙÂr’ÄŠû@íuÛ¢I1uQ¯ BÕØßý’cöaÌ€yêÃbº0…‡ŠïCS\]k•8«Ê¿Õ¯fy¹iÏÚMÀD`÷‹‰gÐíÅÂ8kiöMÄ¿uïH uæˆsޝjÐ٣Ǔ÷‰¥°Ú¤8IpÑù‘w£p8¦–eSúêÔ9wCLÔ{Ñ>5³ù.™ÉÒ-sàÀ/&ï7Ìt¦÷e'}ИX#PÛ;:ýj©)¿5/=wüüc«@/ã ÙªaÔµ.JÆCÌïBFá{öÓ†±»OuB.ofü%ïâr¿gz…´ýuú0¿¸çˆ”Ñ'l}NåÄ¥ãrp• æ®ã~+éïT% D,?*’ûm/å(£¶)s‘–(ˆ÷+ŸR9 ÍpÛ(°(¡—·Þ‹ÆËDëÆs¤¦ê!Ð ~Þšwq==T‹‚7ÊÔÕod„ÜYïÊÎ –mè’í‘£7:d>S,j§Hr’Ä}f! ¨úòÜÏë^­¡àe‰Ò¡ÃlOãçrÙ_¶r÷eË«HÖ»ž¾ž<%dX{³:ý¨ +–>ª8iêÿ•Žýƒ÷8ÕgÜóúÂç›÷h_¸—™'¯¼õ´þ„×ÙTÿ#žò¼'ÈûR™ù®€&¼dw’7 °mâþXZK9åÇÉn¥ñì4P]}Nr¨äƒš·öŒ”¨ œ£]•¼˜|;^˜ý1z¢íì2KKÏr|ñA­]2}Z¬ª.™ù+/¥Lß¹¤ƒOFd& ÆwL3Fò*_®ž‹¾w¦œK¾÷Øç*OËß& k·¤¼k€·tð ¡ÕXÒ xMÔê,«jÅA©yEÔ¬_´}gš±k¢ÇÄÌNœc-ç´L Jf»É n<¸amö¼61PœyÙM?M}PGr·»TÉ•"¨ n~\èÃæ²ïþ8Ûðkˆ˜+£U7Z™nçò·-¶R­\寣õ{YRhåãoœ,I`g‚&Rj…¾ÒK Á’ZW¨]¶0|ºx¿§”¶¦ìRLK¢œ_žu;—û^Á7b¯P>‚ÏbT6{ñ¼6Ú®,Šƒñºh’È÷ì^ø)¦”ô=ó Y¢ZÏ&æe&7Zßq¤Fä]ø:3;;3[<Ú«%Ç8Ù·^×uÈcgÈœŽžý|~‘éÊÕ­}‘ª»ƒa»^NÎçz†Útö‚Ö õi·Ò´(†ÕÏ9Yâ”Ø©î{¬»"õ?V_‰Çs=ù˜!.§›æ‘±IŠÆ½¼—'lœ·OM‚ Pa§ˆÇ4sqΧ|ØÒ.Tù£“öçmµéëEW>Ù7k­Y–ý*iˆÊ;ué󸀬îkÞmçö;rU\ÕsnÏŽ׎ÌÓËÚê´ñº/™¯™_K’Q ]ȓ޵“qYVRgìÎÑΡ°pj¨ÐöQg-É—·{¹žuoØÍµ‹ªŽŸÌé¶@‰˜š¨'áN‡H?Pf»Ü’ÑîÊQÃqù3ÏŠ!‡¸ˆ£~޽í:·¤é¾¦f;nSC8þÓAOÖæÚ‘KùµÏ‚Z(Ífî ^:~Éîí“uW:ùϸxž×T>ˬWúfx¥ÃÔ¡>ÉUÕ9cÚ !•V±§_`Cìhhr4%œ±ÄÞ’°›ªò$ÅA­_};”°ž#ßÙ–ÂVo|õbÝT…Ζ?µi£CeȯÕ+lHÏÒt:‡Š€÷³Rùû …¥S#ji×S,ŸéÌ62U%ÉŽÐÞ¡A¹(Ì‹¥‹BeõEdž@­FóV Õ«Ýè`yìc ßÕ{œœÇ³iq7!¨ÖßÊŠüójl·ë+ÌÖz8˜„¡XËAOʃ‰7´œí‹lÎàj"‚σˆvO=×w{΃Ô?ûåiή J/$ÆWhžZ|7¦’ #ödHŠ Êºg²!q/\Ž!'¦Ì„4‘Wg]UBº€Ñ 8À{¿ÅbýÂÐbëUXŠä´IìÏû·)BobƒÝ‚5R>’µ‘œ›!¶òèÝ–ø]ˆY·úB([óÕ@iúÍê“óËÅ‚aZ´½°BTV‚íÂCÙWBÝáÑòÙt<½D‹Ó׉ëú齞]£Ç7ßä¤{ÔÂ:øR”˜„ yë€R;˜hç\ÕugÃTL#³UÓ’{!'î_W¼ájë •Œc^7ÂÚ+¼Ïòƒ{£ABÄÇEF£ \ÕÄ%-Õ5onèDb ÝCs^ÍW úì|éOÅ2(ˆ“ºQvsØ0Äì'cNŒÊŒcõ¯Klê‰ÅL_Q®ÜZÍÏÜÅ/¬ÅÔôü¼ÆîD‰( Û\àŸLÁNr-&,tÑÆŒDh/&SG»ðƽL¨9ÆÑ3列ʂk=vz¸ý“-t§¿“¿†t‘àDáqÄÍ ç yvñEpb½ôEDä&©Yö#zõh‡(ŒŠ/Ž;„¤2qyÕi€96› &–Auk]õ€OEï6O="óRcÎXƒoûEÅxoçË:vl©=å@\AŠ=\ÒxÃB¥Ñ¬P±s“6©)˜Ã9ŽªÒŽ¸t/"m1 SßP{4Hà$ ïb^ò©J[D*ÄÙøÚ¹¤¨¢ mÔ¤–-ìõ!])E!yïcÃ²× ZD5àvN܉¢¤ð²ÒPŸdL#ØLÒíÈŸEêµ¶0±³íâDý,Nã\ÚžóEQÝ‚¶·²Î|2¯>šJ­ðg…¶L1‹f²jèêW|DiÓ¢'fXäÜê6>ÛÍé¾SM#%ò ÐÝ—³êgc1)ûŒ€ŠÑÔUó¹ "ª¹ê®½Ð©2²´ÏŸ©¬qûü0i·`hØœ|V#Ö±-Á”„¼c.$âL¾ö3õ!K–JÊîjï ÿs÷ZwüÇJêÄ›[Q‹÷ÆËî·™ O=ˆ@qá^vÔç16#I$@ŸP{ÀÖRw9"Y¾õÑKëóóh¥x ó•¶ÐšÎV¸WŸÕTŒ"0–Q}U0fj”Éòóôw‡§?Å€õöŠƒì®L’?GìA ¼¹ÎÊîsò£{!›±8ÚßOö¬IF°Ë\S²üZ×ÊU…)å3ÔoåÑù¼êž»aU}ÑÏüJ÷ý´¼ÆyÑYr+…w–ΧîRº¥ÖÕÜ{¬øLá[Š©Rã‘þÍÖ„xž?X®–k Ì@ó˜G¡`´X&åLCj§øµ*ÌpŸØc„§÷œ¸‡n2…‡™Ùk;¦ÔÊ—¶\;oµ#-¡µÞŸØ„½N7…M^Ëõ(¨ÓkcQ½²Ïewñ²°/5Êí5ß Ü‹ãWúþ•Þ’PVгghC;×s¦–¶YÕ×÷ú³Aëêõ(pi…ÌöáE.ªy®¯ÏdÊ3˜¿úƒóœP¦žì¾5û@„Œ_’ä=c©žãè-©ëäÚ™í»6Ãõkìß)ô©H ü2ŽûÈÙŠT@Y½ÛïÉTD½?JÇæ±+ÄøÐå±µû¥wm›)+è’ÍãpÄŸœQêƒà`c÷’s˜JÞè¼Õ¿íÈÏeZ¨„æÚ_øJ´Õg©úÌ=Q\¸÷vt7ÆÕ­ÜY¯ES¦Ìúæ…`z´o$¡¹ÝÏBrÀñ…ÏUoèjuéM%Ó&Ü,EpŠÐWÿR{™Ù)56Y}[Ù·¬O;¶Ñº¯©Ïëô¡$N€$*j_,O*¢Õà@^Ruß'Zd…±á;7›—Š»XÜ›`#bIMJ8)OˆhÈèS±ø µá’Àt«Ô0ô»T&Â]ãöaڷߦ“qjûþh絞9ÒªLYoÖ>..N’&îïJ™>Èn¼¸zw¼Ë-+Q]SŠMçË“¾‹Í^Ç·°qçmÔâ»#ÎK÷YL†j]W;ìùo*éˆÒg,)±;qXQÏ躋Y¼t3ÌïçM»œÔÍb|ßß® îMåÒƒ/7ëJ\3<,¸Õeó]¢P<šôcyƒußJùf"OÊýãös3 O©ÞB7V‘³o^ÌüF€®NðÒ†w‘¨—Š%vÙ‡$¯K¨–h¶t÷4xÃkèiÇ;5 VZéá¨Eáâäœe+/^Ä‹ÖüGÁó i2lÐܺƓgÄ1fovòî3Òªîï$6¾~¥¤¾ÿ-òÉ hË œ5DrÇ×+Hp*~eÅ¢ }¸–—° öÿÄõí=ÜYtϨ}Ç“æØ2q£×cº&Eoái9—A€Gs /É–ˆcÎB¾kÂ^ÞebI?ôl:ã’±OzØujušÈr®Šš`¢¦QRWgYçQMd4Ç>Žú* x÷ÓL]v¸ ëÚ¥ñp]àã·ÞP¥iš8Áî‡ÜâwT]EØãO†êbPäe=?N8¯OŒ‹v£»Å ÚÜ£Ic5m½Öø(Žãc²øvo4$Þ+1ë[q]–,É€qjEx•½ÓÏa¯Æmò쪬ˆ1ù=Ù56D­‡/_•B Ò(zœÑ¸ä=+N Ž[A@ÿâÿ)Œ@?w©X èr2%þ„«ò¹J`õ›Ã׌ì0é[°Ó§Ê}RÆok ³Iû¯é‹šP… ~•Åe+é˜n<~N_þö¦XÁ]ŽÏÓRJq»Í}õÝA¦LÐÎGû‘3$IŸÉ>Ä$ ÂòíèY ˆn;PS± çS#ÅŸûÌÙV8›™Nô÷¢iwPïÛ~'Ë1œšå ¦ÑøÞ0 Î7=Z L3A ^iûÜ;|&Ô1{CM5&¨lÀåÿžk, ÷»1jO8¤êyh¨çõCySÍ1jñYöÃ]ª‹tÜT6(9iø*Ü'ý#MÁv̤òD.ܸè‡-‘VÇG–¹EÇ:ˆš–åŒÛ‘»Õ³ly†Ò¼ÀýŽX™³ …éX†×{f“KEø+ßa…/ ^¾^}7•‡•„ÿV…¬ß‘Â0ݶ˜„oýÿÖÑJÓs£Oqãî ×îN˜áÒôØÒeZóÿ·RV endstream endobj 309 0 obj << /Length1 1399 /Length2 6085 /Length3 0 /Length 7047 /Filter /FlateDecode >> stream xÚvTSkÓ.Ò«4Ò!$ôªÒ{oR ! $¡„"(½÷"½(]©Òé(M¥ƒÒA¤üQÏùξ{׺wíµöÞïÌ33ïóÎ3{m^.#SQe(ʦBbEÁ@<@UßÔJIA q ^^38Ö ö—™‚׆ÆÀQHùÿPEà X¼M ‚ÅãôQH€Ž§,K˃eäA €8$÷7…–¨A¼àP€> ƒBÂ0¼ª(wîì‚Å—ùû à(ËÉɈü(#`h¸# Ї`]`|EGˆÀå‡aqÿJ! è‚źˋ‰y{{! …v¾)(ð†c]&0 íƒ~@°?Ì€¼38æÝå„õ† a¼Á îCbðžH( À˜jë ÝaÈ?`½?À_gÁÿI÷Wô¯Dpäï`ˆ£# áAâàHg€Ü 0ÔÐb}°"ú qàðñ/Ü â€üÞ9 ¡l €à þE㈆»c1@ ÜíE±_i𧬎„ª¢‹¡øµ?58æˆ?vœØŸÎº"QÞH¿¿Np$Ôé ¨§»˜9îá ÓVû ‚7Qücs†aR 9iiIÌóqtû•Þ çûíÿ2ãø¹£ÜNx°¸ ÿ ðÃ@¼`,Úà÷¿ÿ^Q€Á(Ü p€9ÑÿdÇ›aNÖøæ£á>^{`è×õŸ·»xyAQH7Ü?ðßýÓ47´4ÓþÃø?>”ÀOT *')‹—«¸@FVðï,ÿáÿ7÷ßV#ü¯½þI¨tBäþPÀŸÝß4¼þR…À_#øw^Ê0€À?Ê·Iñ7ðÿ·þ‡üßdÿ+ËÿKùÿ½! O7·ßnßþÿà AÀÝpðJöÄâ§B…Ÿ äC-a&Y…{"þÛ«…à§CéŒW¸(X’üc‡c4à>0¨ëèòGG·_Ã Ž„¡0ð_|ô_>üÐ9ºâ?*|Ã~»`ø™úw]u¤# úkøÄ¥¤4‚£á5&.%ðã§ óù-o€‰ÂâCxŽ'šâW[%b ž3ãŠï‚Ë/'Å¿ 8z¢Ñøéû­|õ¿×¿Gó9RLO¢Bî׆´×(³y‹. ‘Ì/¶E&XuGHaù>äû¹è‘fjŽy¨ØC+¯¤M= ôgúv<ìcÛ™ýp.M+K ÞýEe[´ ïÇ^§3ì:uÍùLzäúï‰Æ´ö6Ä6üÉ–“§¡2]+UËOÎÚ0+Ör äŽ+ «œÛ¶AmÅucÛoeKwm“ái¦mþîŒ0w¤ÒÃú÷Å&îqÿìloöÛît‰ÝBÝ×ÕÒ•a ¬Œ¾:\¹I=¬L‰Ù: >©CÕg© ܬň0¾9"Dí8˜ýFÜVPÊ~@q) ­•¯t}ó~•R«bâ bòé¾oêÚÚHŽÛ¯L‡Ö`l¯%¡©|©~š±ÞØk™ ’­<¡ëe<—[m­)äS°ºé,} ò³s†žÞ}^iæ~) —Ñ›äzj²(ÄÔLÖ¢ûJRÎÜ $g°±sa¸ÄÒÿÚä4ÒÝk›Ê\‡YmÕŠlébD@ ÝÃÆÖú^÷$ÀžQêN¥üã·Â÷#^qJHW>»Ìд£Ôã:ÒiÉìùbKò¡Ë÷Q7¬šl±éÅ*‡®Ç}-jÿŸˆ’ya§ÄÍ€‚ížJ…䌰®ÆEŒñç–—µPµœ¼®¦óQ*òš¬(åW|rÁ‡5Óëa\RÙéI¶*ZBZa+ÀY‰ú¨.^*‚‹²hç—%†›Á9ŠºÆÓñY-;œëÆ>ú G™_ë¿çÓMçêÑV»õÒíômÍrQ6‹Yµ­Ô(®¡ã´  Ê%u” “EåQÔç¯Ó´9aOâT¸¾…(%,wF{ÙIfÖ"0‹Ë2å‹k—GYßë‡8HتŠ1Ì£,#©è®×ÁmÁFP6´yOË=Ï.ð zû{“ÈZD”âúÔëGY”pºë¸;?-±÷Ò>©'@qa8²´ˆb©WŸ»¶b~r®Émî ¤½…c+¦µ±7zîRêß\[ŒZ9–upûx™}m¿êS”´~õ&+Ÿn9K)÷ÌHzZ=žd"Ý£0¾O #fÕzUvØùðeû uò¢ j˜ÆžÊ¾Ù丮VçHôhTM ›,Ã=H$d3~2ˆåÍpǧ:–ð é#Û—ŠæýbÎú(D¤j¤H¶‹nú³w÷¥h2~Ò»HZ¬’V[÷9u}˜X=Kû5L0‰çƒP·i !Xíûý×~¶ŒÏPÛdùܦe«é¤/J½*<˜'à`YË=Í“I¾^ÈøÅíf5X’¨ïÃ?„*ߨKåe©88š\>1RÐïÛÉ÷Õ¢ŸÎMp;faý°c²»Ê}š\ÃÊìû­×ºsƾ«Õä}’• ¸Ê}s»Lå!Bqz¼}´ Û*u+‚£ÇuUÁ¡ÇÊës»—‚Ù³—$‹…`w‚RnN:ÅI ºÊR¦¾?M½bwÃ^æçËôŒ{´)Å zNNäS¢ÓíËÜJ¯P¾yd UºÊÕÓškçîñ)#Êçœð°©!›|Ú–-z•¦Ž]ŽÞï)·á˜”Ÿ\ϼlÅ1ƒH¡÷:«Ù¥Ôr·¶ö½d’Ef¶£5m&ª/ ä».ö‚S ·Ïü©ƒ.i&Ùy’5ïøç)s~èA‚jÔ#‹¶7\ÍÖá‹ýÜ~cø;;œÑäÒëÀ‚•-½q¯ñÆÃðÞn‹›l¶mká`b[q%µ˜âNkÓ_z¾ô¶ß㜳71 M,[—>ûiPó Ò3@ý¢jR7îu×v<žz/¤³{£ÑN6g·˜çèºy¼4”®»‰™c1É,UÝq‚²R¤!ÌáRÍ+ \Z¡»ëˆP–0D¦ÂèUíæ%¥f‹‚«dáÊL¼LCs¶y ì âls?§Ù÷AÅw}Q­G§“ ¯A‡c«ž}ò6ç•…—Ùëµô¿ž¨UU?Ofxý2mVÓ¸«í[AHmK„Õ$IJ>ÂÃ_wò¥ÌášY×èÞyèW…Ž!>ž€Š‹Áa2íRë¾'Œ»t±,yÔíWÃ’ºu§ŒÕ_•ïu“±W¶ËÍõ‡7Ì3ÐòðÅySÙî ø ä weö[s`4næj¼ŽUüæÿ)·#ò’éÌO’çãé§–}ì7ý¦$í£X!2ÖšêÜì}a£,Š”µdR%ši ¥§ºàëf¾RpÇëʼZSùD/¡Ž5Ò-EÖû¯õÔ„~d Úö9š{Û°^kvŸÇ­0¤ÎÌ>¼46ñ gýn¹ãåÝ] tŸ‘ÒN×à'۬׺̕zr‡>®¢ ˆä¯²%°§Þ%ßeú$îv჌"qQg±}®/Ð'¾iôØíDßùmp=«æLÀûiñÛ7r÷o…<’uZÛÝÊZ c|±‡rnaœˆïJ Ž´ªãв/ <"QD¤6{„3ü(¾—I,7WK âi/ºOùfÆðFÇ2×½@³An·¬žŠ;ði…ŠÄÏòb-"›œ°ûD³U…@ôôåúkœ3–o‰¬u4¥8S·<ÜyÄòšº'—ž:+Ð^s sÜx pÚ¢j²gL5~ì[Xós©…z£øl•õµjöN±eèÑ4ÑÎ…qÇ ÅYgN&ë…m{áú Ä\œ\jÒÊWyÏÞâ®ÍÞ/\ó¸Ûƒ­ÖÍc€ìÎ1p·Ð3¯Z/ªF˜ < 9P ‹/Œj ðÎì:éOõþ0t'bÐV8VCRv£þ…šªeE`õenÕ³ý/½ÛXEÉþö¤)ýnP‚[;S¥Q,«jâ\¨Z*Å›±Íã;§ [ã!W|é±ÔôÒgLÞSÓÓÊ„QzpuK®ˆ»ÇYÜ7QBü©ŽoÎòˆ,TCJóßzjМnV­Iùv6Ó4)ÒÈçàœV£h»|ÿžšÚØ©öñ;„ßÉš"IT%OƒÍ0)èœr€7êpM{"¶öÂ}>¥G¡0þj¯õçLú×#Ä\ƒéû]àSy$_ uâˤõ~âã:QSñ *ŸÊÁç­N5 ˜°¤‹Dd𔸵 ç¤È´¦.9·rAl¿üH(=óÊ0Hð>ßœ0f„Æ#Pé‰7tmV“Ç5¡xÖnokûb4,(kÀk}¾©§~ÜÊãô(ä±²Ã]{^Òr„8¾¾0ý^7o|ïYj§¸¦ ¸/‡ÌÖCeáGÊ õö…{Ë묫䓄c][r²{¥Z“æïâä’rX,ݲ+hNûg¥‰Å¸Þ±´eƒX ë_HÊË, Sn¡4üF„‘-•ù™ÐT„̬éô¹çeõÏC±^ê [fa–;s+Þ?ÑSA¡ â•H šöõR2¢líD;îW.-´÷ äÛtßUàï ¦¼’\{Úûc¯nõõBì…®¨€c>"[\¢9Ùa?¯ôÍKÉQïg³Þ»Ì»ÇÇ>!®&´b~ÐMÚü®DM¦11-´°²¾V4Ÿ K :;û&­£ÑÀ`’‘ê:žù è2ã¦Uô°ErhÏÀƒÅÀØä«ó±fç ¿Óå§1ÌyJ]m¥ö ªµÁU( ×_rHJzŸWy–ÒeÂF2É%ME,Z_~Z¿¿Tp?ìÔF*’ës2Uë“¢où¯×s|bV飭Î*Ž \´Ý¥bzPØzaŽÙ ÑÞŽÐþX¿7e®ê$·UŽIPf¥¥YÀ‹à2ôAo>ÖÌ·"yîZéP^0Ÿ~õú„ì˜^ÎölǪ_`iÿgÑ.Ö¶ciçþ§³Fá²:aåiF%´„ÃBçú#î\`>©^Õe‰xöYgCZ©-ÍÏ|¼ž²âóЉd$àÝ÷žA¯{gî¡díÆwέŒ4‘y³Ä…zíƒ_ëóÇ©e©fô»Úã.‚4…¼•÷>» ÚQ\™O+ Ð]3a„õJïJ-/;Ë;ÿê»›A.}dáþÜ}½ž>jçÍÒˆÔè\Ø [~¡Ù'2â­÷tH%ónì^Þ™‹}í6M>¢}©à'íbÒµô±é–÷ÖUB©§“t÷f¨U>¸‰al…o|0eöÉí˜$bN¦./~rŠKKÅôX™¹‰Nä÷æ/sÿAÍ¿màÂ˲hk׫£¿ûÇ|¹æË‡HènϳO;¥iÒm]¢ì+ˆaÔ®úœújLÕK`Ø/Mpéî#‘-¤®¼Õø)2G¾Ÿ×”Š£ òÁd´H­*ÛÇ8¾Îï[Lû:g•‹îü ´‘¡o]¸TgåØUóÍ@êÃ^¥[Xû@çÊ©Ùâ ŽÅ'Z™[”ƇXM¤Ô¯Êëý;Õ²Î;fiL¾}˼?fv&‹ ®HÛ§>æMúAÓªtw“åV²ê|ߦuXÕ}«žš—4”<Ê÷6¹Ý¡iÏW'ÐΡ}Ñ'2¹ÙªÉ¯ÒMÎr¦êÙrW›¬…^_qå´GC;9Ö¤ª!™ ‘æ³?L®GV+/=ÙÕ„I™Ç2Ëö P ­wÚȇìñI§¸v[YW~j®.ìJÝ .)»O &…!z»çÈúŸÝÕÖEÉÖk¹Æ#ï¥j}aiž¸cX¤sùásÑ©Ëés*×¶}ØO4x_è;*#mÓ‰:ÌSö®±µ–8Üès„ëµSC*v$voÔyÝÉÑ.† e3Úw¹ ¤(_œäCÓ“ÞÌ·ÇgÀy³3WË.,«‰cÊ{ÞY!Iú'õ|íl“Ñ’1'@öo­5ªÍ4 `¯¾ëzšOF61ß–%:ø!#¼&¿½¢Xi`žV 1ÈJY™4Ç©Pô3ó¬“Ë¥ßûèÆyÄ£®…9œkºHní7$óªg5ÎN;óÑ9€U,ñ´\†lÊtd +lQ6áEŒ&‹BZ<^‘y™fT%rx¿DÒÇ›]yü°Ö½¤hóÁlyH”ô¶@¸S_Áõ¨9Ñ"9øîšç,Ÿe»âÔÂQëó$»‰ÐñÁ˜|DrAçý¼Ðõ÷o²¥¿¶ŠÚ‚9¿„´ G;7rˆˆµûÏղʙÄ8.0;¹Â x€ 8ìm¯¨r¦háI[“ßfä÷ªeÉr"ùNRû¬ÌÝõVÊ›„a¦É)úaßÓ«Œï–C7ÞÖ eáT!vËô7?®§tmZpŒ “Œ¢½®2½$|¼ãßxSöGÃÜÔtÒt]¤Î5Û,ØiêãTElŸ¬/ñMŽ£¥ÕØwö5Ò ¯9Œ¯Ø‰§ÿx.ãiÑ_–KW7£Çâ7£,•…Îj~`¥Å÷\EoLÿù 1Mµ× ¦_·âæ à‹^²)€œÂZ:7ÔŽJ÷ÕmÒ½Š$ùù åÇ픟Zô¯J9e$† ÓåŠ,qÕÖ´JÈãI(ät ¤P2C<ÁìAf–‚†³••[ójK`Jß]4,t˜_P'•ætƒD[ûÉVI¢ 4›ðË€¼q¯Ô{dÛîô FÊù1Ò§Æ)y]!“w@X»\GÒ<¿cœ!f#zKð9™{»ô›ás×Ã¥6˜ý J–XbhÓúÂóòÒ)¡U4ðæ5Ö d=V'üÅÛy1§ºElªñG³$SÅ‘J½yÓX.ïgC¡¹ü?wkW³`"jYî»'†ßаS6£F‚4]}G' ¾–ôÏ궘ŽëoC›JÍ|U¶ö6úÌÐs:[&(gúÊš²qÁåCoä…ëyÒZ²¯’d¢‡µtâ=AD&ø`#×ÆÄ Vßœâ„/£ýè Ó½|ll óÇ/»žÔg[¤ˆðóCJJ·ËiŽb×jÆèlס+E;o˜ˆunš“×¼ú¼’µJiï»ùå–‡gÇÓw%ä/Xf_¸W°·kô÷×frÞ:m¤Zô`ÍTŠbž•ÿd·hê 2x!ÚæaÔ•m2qþö,»í(&§^²;ä¶(6à0Úô‰»iÇF‚ëvYÝ^oÛSëèlé¶yíÖ…LE«¦=K+4ϤŒ]\}a9ÏÄì¥Mç]‚T¡Q†…{Ɇ™ÇîŠO·ð~“® ·9‹ìûŸêwy^OÚ=}3¦ÅæÁ‚C¡¸ªgîh6Ož£Kõ׳”‘‡c\%ÛÚARŽu]¾ÉÆêÜ‚aN «šqP’.7gä¤%«ã;ËÙ¥l9Ž›î-Ѫ¾~°îrÚw‚âígÖ7~°õaæiäÙ8%î®á²ýCÅ„¸ç®GR%âÂ|ýLî²csFÛµÊêƒÞò}ÛØ;ôà¬{‚Iw–߇o‡7E4÷žõ4“\n[ZfFÝt¥°ì4_¯iرgÜt÷ùlZîÐ"ËÞ8>%‰“ªH /ä—M½Î\eéØzï'$¢,zJè$7L°•7nP‹s½GüÁ²¢`îAQ}²‚ó#CŒ¡ r—?v™9GYb:ñVâòQUÞ³Ñ÷u¡.°Dž Þ·+Z^„ëÏ·:·ÄïêOËÍÖ„Å冨¦63*_S&[h¿Àð’võh´%o§³ÁaöÊâkîÑŸùQ-ß ám*ؘ±s9^£Ø[×ëâ7bêm„Sʳ²‚õÒߘìw¡éd‹ãæ’Ð+õØ€‚“¥)cM—±¥IÅÊIøòäóËOzʱ&5‘÷lz5uÎHæ¹}”¯ÉmiÅ„1_+τަ—¼‰«šoºŸÝ×ϤfŒ{óÒ‚Þ‘ÇzàcnìǺ>:¤l¨B…ã µKknk‘ #Õ>²ðJ>|~§#@ª x9ˆÛ¤±ÿ3l0­éÐN£ ¢RµR8æYäÉŒæräšaë)MBIrFáv›m´¬vçɼ½"oÍ”4ñs?¸ÇpÉÈZ1Þ=:_«Ê¢'1ï0ài‰qo•9Âæ|sÓlÓl™L¥x¯’ˆT™*Õ£sô&‹ýPð8ì²Ô¡V endstream endobj 311 0 obj << /Length1 1400 /Length2 6060 /Length3 0 /Length 7014 /Filter /FlateDecode >> stream xÚuTÓýû6-N etn¤;¤A c0bƒm4HwŠ4ˆJH ˆ<”´Ò"! ¡‚tÇÆó{þÏï}Ïyß³s¶ïçÎÏuß×õ›‘© e×D!±B¢ 9 š©• PDD$""àâ2C`]áÌ. 8ƒ@!åþW€Áâlê,.Î…êzºEÅ¢Rr¢Òr""@1Ù¿Qh9 :Ä €€º($àRC¹û¢ŽNX\›¿¼P> ¨¬¬´à¯t Š€B@Ö î†ë…¸MQPëû¯¼ NX¬»œ°°··7↡ЎŠ|‚@oÖ hÇÀÑ^pð'`àˆü72€ hæ„Àü¶›¢°Þ4ˆ3¸" p$—ቄÁÑ@\s ©Ž>ÐÐŽü¬ÿ;@øg6@QèÊýÉþYü• BQnî¤/ét@¸Â†šú ¬VAÂ~B\1(\>Ä ‚p…Øã~ÝÔT1BpÿÀÃ@Ñw,„A¸þ„(ü³ nÊH˜ÊÍ ŽÄb?ï§Ž@ḱû ÿÞ¬ åôÿsp@ a?AÀ<Ý…Í‘O¸ŽúŸœ ðÍŽJŠÈJIIÈá@¸ÔIøgy3_wø/§èO3A ¿;Êè€D8Àq? Ä Ä¢=áþÿÛñï@TC@±@{¸# ø§:Î wø}Æ-ð‚EpÜŠüüüçÉG/ éêûOø¯ý kšÜÑÑVøø?>UU”Ð_H\($+) •‘JKËÿ]æ?øü/«ñçr"ÿTÔA: €²¿1à†÷7¯?´àý#>à¿;ÜAḠòþC}I(îKôÿ[¿Rþo¼ÿYåÿEýÿ¾¦§«ë/7ï/ÿÿᆸ!\}ÿà¨ì‰ÅÉÂ…ò¿C-á¿¥l‡!<ÝþÛ«ƒ…àä¡‚tÄQ\HT$"ñÛŽÀh"|à0#êô›H¯×Ä¡0ˆŸo\–ˆÈùpªƒºàÞ*ÜÂ~¹à8Qý»¯Š‚ýTŸ˜¤‚FC|"8’‰áXà/Š“) îó‹ß@a…Å¥q(4àçZÅ 3ã‚Û‚ÓO'à_  žh4N~¿x€ëþ÷ù—Öáp80=‚ʇ;¿ o>ªVaöúòždþskL²Uw´$–{ò©¿“þ•l­QÕû°ŠýFS¥‘#Ìü›Gƒ>6í¹!séÚO°xÝKª[Bù}Ç»íŽð[0“ãtFÌÕ‡Æ7)À<,'Î"¤;ÄW+WŠÎ[1«Ö²ß€nÀç”léÌØ•¼ÖoqVlœŸ±ï¬l(©ÑàLO3ó¡s‚8Dâ¡js<ã±ï81ëÝììÛÜžî ñ½Î*©ŠHFZ?]¶¼þ”^Fº‡¹º ^¢K"ÐøF] öÜB>ËGîX ;éÈJä’žGdº§p§hñ~w‹]‘Î&‡º±ÙÝNWü­‹°‡Þf¿öñƒ{OpåÔªö­³s%´ÐîAr\Ú=pcKUV˜º_N» §ÅtÜն.Ie!ÈCkéË ÛvJ)ê·•orªõÞ¿Hb…­µ$»eKÆøG» R2IÈ}Ne :Š”Ú‘†þP•j¡3f<›& Q8õøÌÒNË“xHóÙ-èe°«´¯ˆ#gí×ymó· c×>*~®t‰QQ0ª·Œ£8™­Ýýq²Á ªàwL¤îÚJœ¾aµûÆFÁ]⬎g0t^ø÷d£[rRÙ—ÙmWd#>¨uY°©Í[%Š€œÐ7œu$iP®ªÁOÒßÒû)Bu¹g/0”GK¯¿õ€øûÂàcÃvN‡’‡H- ´ŽÃ¬øèãó€]0cºÑìnØj“…ÖR>uhîGªïÕm¤l.¿³A0†¬pýÆ.[[ì:¦0ߨóØÿ±n`Ù#ÒùÔåÓÙJVÝ_¬†”‘Hš¿÷ÄSŒAtâƒCÌ•$á ›ÆÀC½c<ãb)ô5ëO±g½ýßüzNÌ:÷Ø¢ø}émU§ò_ùœö‹”ܽÕLèÁiÝúþˆ5ºG:S\RW”ô¹Ôëªvp¶(A{2úËyÔ\8OègB»©‰!ËþÁ¶4ê r+·m+¥g¾MÙlZ@IW~ Õw½™}û‰Ëâýú—`Bm¹A-¦º@Û³.‚à¶ ¼ }Æìk{eм;cõñ«äÖ!E~Ãd¢àCy‰åw»µú;?ÜOˇ¤¡£}DêbR#,§ËEL¾Õ¨¬×ryƒlQñTìêK@y7ŽÝ켦,K5ƒ/†ûæ°Ë@ uYŠÖîRC£ó§ãåïË ‘&!¬U•[¯Ý¶¸“^¾ì±ýõiz£Z¸üL’»ùºûùåäÃõõÉʃS‘ç‡S#5VÛO¨9{¦úf*óvÔé½§MÎBzƒ­£ åÑ~‘éZj7”ÌÈñų?Õz/ÅñÚ»£Ä±ùÁQgàŒÔ™†¹„Ü­[Æì^x' _ÊÂhGïÅ5«-boåÅÎVq'p—yjOcËUŽÈ¶½ð²d{hV€¯• ´p³‰iíÈeDÃýϱÐA’¾ •¹ŽPNBïb¥›Õ1ô*,€BΓÒòDª Ã’zåU¨âh²†Øõ™ ÛW&˽mo“;õ3䮈b®2¶J",ú³}„ç´ Ö©'Ùš©Dð\íHFžcÊβ6Þ“OžÌR=>X>ð€{§D°¬@²~Ä«‚¦©o-±“ñ™trоÉ[’øó¤2âYe†\Ç]ÏóÑåÕ+o^ûÕk²³Ì4±Ó?ã±úêŽ0=l̾ܮµ eN~Ï»D¤(êet‹[̵ˆ%vÇ^L‡þ¦Þy¾*ÏŒ·VXSÔýtªNÚÊmÒ0øt³lWßùïÚ¦/‰=¼2ݨcÄ­‡÷Ç˦ yxóc[¬Lî ›9gÔzt;¥Fp†&ŽTr–lqr’1ô®‡½p󪹗±]Â0'Ú󪢑õ’Ö~òZ Fðå!T:5Òwʈ‰fê09 rw¡Õ8Ýð ï­¸þ Š|Ÿƒ8—v³±ô1ÔkPòaÔ¶ÙÿuJ…ÂÊyÀMÇ5Æozw‡o¡JÜ#6&c «ƒÆ¡~9ÓþÔ–$d`¹g¡&Åliº{"=îPÑècÕ. =B ¶R³ŠŽ×°®«WÏ)u¨Nã¢]_}õå»:öjD7ä<ÖüMJmxŽ7¥Òúðä³¾ìØ=e*F+ŧAŒ>]D7…óÒÖ 2 ?ÉäV•Ý"aWÌ^<Ù ./3uziÌCsƒÛ€Á*ÇäìÌò¬²vŸ9ïû°òð&5[4Áƒ%w»…Z=µ7&ŒbçŸü@l ¶#¸ñPwëd· ŠÑãH`|~òØÙ¯]ƒð4íúÅ#lÎÛ…ïq)m÷iWµDIòUC÷/s+Ê#5 Il§”å󥌨¾M¼§3à¨Ì—aÊz0dÙŽ®k{CsäèI辶ëªÜ4ãVÔÈ<I-sº’H?'>[®âó4Ò.µÛ'$Ý^Ã7U,sŸ ÕX*нE%‘òq¼ù?Xþñâê–ö{©Ù3ÇŠ³çf'E·—G6¢|R\XPqÏR’ãZðt gng££J`%'ßyâ—øSÊmï÷*?5!N .3 »B–VQ"ã˜|N ÜO^®Ÿx)¤>+]p<úž fZç:Û׉û;ÁmÇQ6« …2¨õð&áö‹f­}§É¥Öèäš<ãàüDrê$"º‹O~EŠgý¯õÛR²‹ÀÈP’GM„–µ½D3…0j Ñ,åjó“æšOw磜kWñÔðêÝ‘Ö3Q6ó%~Õv(‚¡ÉóÖE†‘Š…[ä&væ¸?¼ó~Än¹žÖq}ê;ÿŒhöuð°Æ~NªàÆ™¼0ž›š ÉÀr¾k¡hë½ÕzÅŽ½b‰»³@ݯ vʵlâœ3åìâ÷̇”C´|­Tn{D—Þ%Í“Ö3‹VúÌg7ý"ÀðwYBŒuy×EÖ}[ãåmCÄ‚p½¯¤€Ìj®”ž¥]´”WÙ– fq…ib8]øEgãÛâÌ:fŸ¾#åMu¹ôˆYî¥òôÃáÓ1ãIÆäùª~}œúÑ¥Z汎KÈ·g€Ï §kûóf ?ú½No«>ANí¡‹Ù‘+F ¤Íe}>ÌõT ŸíÛå3¢;°í_{nŸóº²ù9ú ÃÍg‰£ûøÌó“ÝÝe{ôfªîcßb!(Œ¯‰´$£:ÕȾž¡ÌI%׆}ÏÜZóÇîVÁì†#øÚ56O¯˜tÿ2Ì!kz\å´ÕÝžöR­•`¼BG*'õŒA®úZM¼”GbìDnÖÓæ^k=WÌ*š<"5Y]V ðm~ÀîÕ‹grn¶1¸¸Ì q»hºÂ y%ãIãûÆ*m泉ÜÚjuõOµÝJ¯3‹ëžzq²6-v1샋§–çµG­†™lüŒ.#Aˆ†°Þ†´ÓÐÇãÉãæliÚš»ÝßçÅ/OÅkòT¨Í& ׫ì|3äP¾æÞïäG(’Vž_‹lGGš…‚Oš²$èiXî1p Nν¬ToÞ•Ÿø~Ç9ϫۅL.Âli¦¿ˆàú%}¬œ±ÍÛ€ò¥èæaâUÆüòÈÝè‚% ÞzÁœc#aÄ„¯Ššë›ðîÊõëÏ”‡¬‰¯Ö(v§{æß m–zí(xu©±ÑÀܽ»ŸI¨ô±8­PÆ­ðå…˜¬Ü)dÓ¬¦!÷=ß+3tËhÔ«l¤µ§S—V™‡x„$lì”ðgÒã×ÉI9¦6¹zû§• ÑX¢êýróÃù÷•{ ÉÙ;ÎcÈ(©‡Ð&Ø_h´^ÓÆÔžmqáÓÁ‡%`î¥qP&!·FOzuóë‹`Ó`Pˆ}È÷Æš e€ªÔ¸LÈízö³ü””©àY ‹¿:wô_$Ä%{P°FxŸ6ìß3¹8ë¿hš‘.œŠ(w8ñŠðw G3=_o+xv~~`ƒ±”° 3'7y=Iˆ6K%ÙYþísž Ó =¢”;ĦðAÃu(íãP0¿ræzX9ßB`—ö "@awG[Þã†ûŸU E8Ü*â[n$¹;—¡…ÆáRdòšû¾ Š)ݯØz}‹2˜èÝ®G+•»Å«ssZuïÕÄÞ·¦Ãýøè7¤›_MQ•„d‘’ÙºÝ{|øé$zGÒqI²:B=õü®g]œf¥ñÚ!¬ Çö%×®¤›ªŒvp:í$I¶\ Ê“a±./tY1Þ›v,„ W°ëXµ§4Ôî­]bJ.| î2])±^ŒþƤŒt)ƒ>ÓÜQê:c–ÀkM›Ì“sÜ&=JVŒ¡Ú¼]}‘ýÝm¡€µp ?e³"¢/HHê…4#l®æ”»A’Ûî6ä’\‹tŒl›0ÙЕ‘ÏØ&ÅñÃ4Ê¢CßÖ¥ˆS çª9ø3%)¹`ÊΦÄý ù‚mß{Ôü‘SêõÇCëqª-²VˆñÉ]Ñkúƒ×1ÜcoÎ[—å£|ÇßÅÛ²0¾±bä¹*½ÿVˆú—»áãCv€ Ä÷ÅÇÁ^ÛµGªòš1猪KÕ­ݳü[ aÇùmîF){ÍFN…j³ª Û”œ!“º:­åÑŸèUÆpÅvüAm×#mþY@z›m/‰ZL÷DPƧ[ã¥&ƒÎà7\B\Е³¥ ³¯§á‹F»3“ÅÇŸïÅ<Þê³àÂß¡z8žl½g(N²¼?)¢Í¯þt±xïHŠÂƒãÌ?<ÃÆûv4°">¸™C»ùÔ+1t×/0±Š˜z¬°ZûqšÅû½‹àU¼cbl÷Íw#‚ 6ש\“‘·Ÿ€ ”°™LpÆz”ñå)\ÑÌfóè~æ’Œ‹™Úó”àïvžºškó¾£AÕÐ(ε´˜%|®·g'JœÏU:ã³Í·Òš8 Ù”MØC(*ýÛféü]z"ô;Åšê~èXXŠ“ãë.«$9Ü”{®ÓE­J7ÀcŠX«CœÏ¨>:+HÈjó´";©þ´ ÜEØ}Åù†…X€ÿx—{øÀ{€ŸôHßÓúMþ¨Î˜`þ¨z/}]î÷æèp…9@ØdN}qÞbôîóüᕨªaÛã…þ€IcÌF_*50k9ßPà“·-eÍô5Ϫò§%uÂåëò·³*ªC?4ß× `°¬E«*ƒ¤ôo¿¶¦ÊÉÍ‘_ÂæÊªNp¢é8·Ø™ü¡ì-í¾²Ð3eö¡º;h^Su ßtéÝ5M7ø„v#ûêýÌwNoŽOÇõ;‘I]±{¯öWßï*<¢7Ëž›Fønk½T‰Ç­ „Žu%Ö÷înÓÏŒ“ƒé·é¹ðx&ïN,Òym7J‘–ìèÛâצºÈ>Pblæb®–àWȪ@$ðGŽ §B}oŸZÞ._ðd¼ürBr«`’êx€Ãq5w†»Íó1¦ÄJÔ” ‰æ5Ý䆚Ý"Q[ª˜yÅ:Ôw{_¦¿Úð^t†•Oؘƒd*g1Ù^&ÀS%Zøl]q ¤»‚FÐCìôç¬ îìéPÖ+Ûõ”¯g DS^FÖí ½Pä#]i´·èø«î«Ž~—§Öw¹Ž_P„¢`₦ûC`N*ž_ýf³þÖí ÒØMïT²`£ÙëWìUšwë‹Ið²®)‡ÝmaGù×Ô½|sÚ#njd¹0µ/káÜ1K ^ÐØcɬ¥¨ ‚ȼ±:é|”0ríù Z¢† ]…mÿŽ“=âù·ÌÎÙ%¿‡C)§¶T¾Ò8\·¬ïº‚1ò-H)n·Ÿ¥.Suä£`IÑ…Ê鬎ØÇWÊó„}ÁŒ²rTWºlù¼Pxõ´~fÒðÞÇü³^¯`u+ï6ß÷­‡,önÆ0òsŠŠHÞ Ô¸¬Š§Ì)5ay0ö:üÕâÊ6ZSÞú‹œ‰UÅ-/˜è‹‚@×F‘¤>o ±n/;Ö»{MÌ?™¿©ãÒ'}^uH7ž/i­úè†ÁþyK_Ôêk=9'‡Þ,ìª*{|âóÚú‡!XšÖÙëᘋëyG“PrùƹÌU7yzÉI¤tåݣƦ˜tT×ìR–ËÉô¹§:%±+þÍý^‹°àú¡ žOFÈBŽÃ5G´õéOlT˜(<_l%“*ÈÛDl åœùñÁ*¢ýF«I+´¨ù||>æ=Œ7w ÒùÆ… ‡W2ó€[N—ݺûgª kæïiDùÛ£Œ}ÄÃÞ¤ôÎZ¨Ý<*XÝ!Û¹-eæöeÀÝ~,Ã@;4ß'¢:`G·Â¹1alm¿-¯r•˜| \u\Næ¹û‚åÝhÛ*EÒ¼ù‘½ gkÊ-á›o¯‰dNÚ¸cx ×)iÁ ÃF¦•šÍϵÀ*)†mÏ%v/}8-ã€Ëš‘GŽ‹eJ”“WvùbÓ㽇ʌXiùyž7‘Ž9õíHkKðzgŽhJÝĽåÊÇñxÚvŒUzÍZ·æ›$‡«Xè*½´@E—Ú­îf´ê›v[nƱâÖql¯¸ ÉZàTÇùïF›‘!¼‘Ÿ¿EŒXg õӾ˹AdG5¯¹YsSÜð˜K}f5`è2/×0C¢3%‡«­–²4¤ó‰Ãgõ|æg“#dú¦ä¦¥s§ 3ôéÛ:ß/¼5b¿í̇ŒÎ\Ūãg×.^Ùï N£ë°ÓLè˜PMŸ—¾ He皸?uví\s8„ À»dYÆ(\Û›LäЦ:OùÍKHžÂµ2¯wÈ^êÒgø—.4i¿¡äÚU$Å eý¸èÑ j@µB^$ç§zW?ÌD9cYßdÓ\ŽÀ‹E°‹ñŽåu`(ø‘œ¦h[°JkÛê#úÂ;SRÕþ¨\á%·©¡ÃW»+“O­HÆ…uK9ÜÄ(20Ѐñ*’¾PödQúÜx æc(~üµ ÈÜW©±¤!ùFö*e?n&M ÿeÝŸÇ endstream endobj 313 0 obj << /Length1 2893 /Length2 20675 /Length3 0 /Length 22302 /Filter /FlateDecode >> stream xÚŒ·PÙ-Œw ÁîînÁÝÝ9¸»{€`Á݃C‚»»»[°àà.ïdfî$÷þÕ{•*ÂêîݽÚöþ 'VT¡6µ7ŠÛÛ¹Ð330ñDåTU™™LL¬ LL,ðä䪖.6ÀÿÈáÉÕNΖöv<Xˆ:\@²÷F. C9{;€´« €™ÀÌÁÃÌÉÃÄ`abâþ¡½ད›¥)@Ž mot†'µwðt²4·pÅùϯ*j377'Ý_Ƕ@'K#;€œ‘‹ÐÑÄÈ bob tñü/T|..<ŒŒîîî F¶Î öNæÔtwK €2Ðèä4üJ od ü'5xr€ª…¥óß {3w#' $°±4Ú9ƒŽ¸Ú™ è)Y€‚ÐîocÙ¿ èÿÀÌÀü¯»Nÿrdi÷×a#{[#;OK;s€™¥   .ËàâáB0²3ýehdãl:oäfdicd 2ø‹º@\X `ÊðŸüœMœ,\œœ-m~åÈøË ¨Ìbv¦¢ö¶¶@;gø_üÞ[:M@u÷dü§¹ÖvöîvÞÿAf–v¦f¿Ò0uu`T³³ttJ½ÿÇ$‚ÿ-3ºØ™˜˜¸XY@GÐÃÄ‚ñWUOà_Jæ_bP¾Þö3P@_K3 è?xog#7 ÀÅÉèëý§â¿<33ÀÔÒÄ` 4·´ƒÿí$šýAýw²ôè0ÆÀôëß¿¿é&ÌÔÞÎÆó·ù_-f”ÔV–WÓ ý'å•""öoz6= ++€•ÀÁÍðýo/ÿæÿŸÜÿ’*YþÃíRvföî¿SÕî?i¸ý3Tÿ, 5à¿#ÈÛƒ¦ ú=üºLìL& ÌÿÏ+ðבÿ¿Éÿååÿ:üÿËHÜÕÆæ/=Õßÿ½‘­¥ç? ivum†œ=h?ìþ×Tø÷:ËM-]mÿW+åbÚa;s› ié,né4U´t1±økbþÓwK; ¢½³å¯û@ÏÌÄô?:ÐÊ™XƒîgP³þRAõßÅìLìM­ ;ÀÈÉÉÈž 4_,ììofÐŽš=þm#ƒ½ è”/ÀÌÞ þWK9،¿D#£ÈoÄ `ý¸Œï#n£Ø¿ˆ“ À(þ1%~#мþF¬F©ßˆ À(ý¸ÈüF .²¿ˆ‹Üoâ"ÿ¸(ü‹¸@\#¥ßÄEù7qQù@\T#µßÄEý7qÑø@\4#­7ˆ‹öo:gô/bf95r6±u߯ø¯œå—4€–ÎÖ¿Ë "gäòÛ(¦ño:aldbílcälñ‡¶_b§? |ŒL€6@3—?ÄìÿˆÿÞÕ½2ÿ-¶ºü—=7ë¿òÿ9JÝä_Ä¢hbošëcû%±µý£ g4ý²‚ bjocó'gÐMÈø»6 gþWPŽ_zGWÐÅñ¯?ÐÀÛÙþáT!³ß^@f–n¸ý¥¶wý3,ÈÄüwÞü×küÓ”Îïj³Šháé`´ûÃ$³ü‚È[ýAÓ`ýÕëw ÂØüÚûßzPuÿÈtí3þÅòeº/~ÚÎÕÖø×Mmþ%ЃÄhÿ›4ȧý§˜™A‰:üVƒb8€¾ìþ«ÿlÌÿHÿ»û Ç†Ñèú:øÃ”ã/™¥ýï³ ë`ãúGb /+FÇ߉ÿB®@ç¿nÄ}³ýÚ»M—è¯s¿„Ζ]·¿‚¬ÿè3¨¿Ã±ƒRvÚZþ÷h²ÿ²ºýÑåÑ‘•BÇa²qZæ–#óm­e ÔìE„ËÜU1t ©q8F^|Kkæî..‘¯ÐTÔ§¿7wîDk*çö FÞÓ{okêZëøZæø´fRÇkDÇl~k­Qdýýs˜£/¦4þÕW—OUF)Yµw¯Õä‰Ã¬Çž‡Jû@¹ØWdx˜‚¤4TŒ‚ôNòá¸ëj 6]¸JîVc08ÝnjaÜqµUÇó½¶Ó¼1íT.™G/wwüzO›ÄÉ")vcôF"+“¸Sm¬ ä´ºΜ‚…á2™jž;R!éUÓ¯BÓ­â'àãraû·Ýey¦h¤æ´5ÇüÇPsÚYaFþM)øòט’ìZŒ+;|Ú5yaý àØxbã…:£¹ÑR=ló·7HQß¡“QÞZ8X›5†Ëë|É$Çy¹¨ï4WN“)­Õû8˧2«ÔÔõŠò©¢ÿºl[g ¿7aY¯ŠÔ/uL{¶[{ÉsÄc¨2ª&¬z0Pƒâ½NÜì!XzýnËm˜5V\ÆO ;´S[•SxMîQA9‚7f=6Jr„Ö2T³:›×·&þ.sϪ_KóZlѵœ¨í3û`«Ãj¬ˆT[ÑV^„ û©4—ÓA©=šÉ\2mnžíÌUçÉ]«½79={7‹¥MÇejfx$yåsT]¦ ÅUZD“qæÖ Í2Y¼é@¡a@ñ⇌<¨$A¹ç¥Ô1¥>jÓ?J£Ìp ïË1Þ׸ܡΙ¦ôçòWdd²_¶ùÓâ5ü°âì&?¶zMÁÞÆB£ÆŸUe›r §¶6%~X}ÛÌœè"64Ó¸ž/„4€ÃŒÛû¹F\_Y0™>+)뢧È;F?“ø1 ‚†ÙÜývŸ¥+±(7§‰µS¨|[·ŠÓkÕÈëhšÿúc#ÃfÚÙe`¤˜GeËPÙí{¸¸‰?¿UËvû<ô‚ æA¬;3bôÓÝØk€qŽ”^XfD·gS OÌØw$³…¼Òµ£È„Ý£ó¢Ç3óòN‡¼G>Ës"B*JïÒOó5£Èîå/*{*À J®÷¯ç£ÓxÛµ,“]{¾„·â_DæKìg£[âN1ô¡‚»S~hå@#/¿R&Å~ EWðžOýØk´•¡1øx7É˾žY h+<7D›«¾8âµ>ò9>Û(ì­!«¾*2|Ž¢<Å»ªªî£Š8½[eåŒ2ÑBQ(ýJögnÒ+áÓ-ZÁA‘c²ýµAê#¡øžb* Ê=:È0°‘~‰2D\z§ø1ռФyl-Ë(”:ë,È’} Tÿ‰r1’ ×óÖe­Í‡RßhÓú†„`uTI_f)¡mÓd(Qd¶g‘(rÐ2Å6åéxä¼#TX%X”‘…8ts6éÏæõ±5£)V®ýű-R{ßÜjáå\<Ú••¸-ËUs/6üòåj;]Ž»ú»¦´ùŒ±;ñv âX›s_àˆêL"Ø—÷]ÆAÃ<ŽÄzþ–yî­ †¯¥P0Q”»=†›úÐ=ˆªªŸ¤Êí$?m¾7䣵Ç_ÄÜö梯ß,ì¦Ü,®(KÂ7©ø¡Êµ˜›÷nÊ?æªuNW”0ž(<¼Q…'7¤8Á÷¡z+ÓÏà zb9.Ãßé!ÙOá¶-ö4ÇæaÀN¾û)w¹å)"½î*»ØtÛ†ÒxÔxÝ‘.Yò† PuÀÕ¿'/ow«Ý'qñÆÑuœ°q°zA.¢ãªÛüñpΔ‚ÆþÔ¦¯=}«¥e¤ˆép7ZÏü£Æ×%@ì„*ù§·ð»)g¹CAbvý¨/.ªúE&:z‰þÌJ1Õã s§[ޏæÓ’°U,±:Ôe°5;ÿÑE†VÞ‰%á²ûeè¨NÉÛ¬P7ÑÊHE ×Ž8Tõ·èCCñàmiâ®ò¯¼ÁÞÏb Ô\Ÿ…3] iS&ì–a¿~A öÂ4Ü#öyñÿbDóuÜt_ ! †šÁE ßÂ1nñ%œ† 2×ñG@Ku@¥À~ˆ<Ö \?ëÑЧMN”¾n—VŸè3v'&ÈËf‡¥—Ç%.˜$T|Ç÷²ýím1Þk§†5˜ C¦î‰x>‹!HÒ¯^Œ™’”Úd!—ÁÒ–ä& ¸¢ 6c> h£Ž…Ç€ÀòqnxWÊ:|Cë½U§&Ç@ß:°Yc 9ISµ/xµóehÔ~uªònuÂéVÓ~å+ËY˜“øºåÇÆ½"°ihëØ1ÎT°åwˆì±üIåƒO¦7Ñb…`—æ9ƒëˆ‡™„±Øƒ»ïã‡4{º.8œBYkk™zon3Xsó':p›CŸrŠ6¼€™·ÈrCF4ŸçÈn>tº‘®5œpª˜ú÷6À”ƒQ6B`†Ù5É£L¥M0G¥ïi|()Y~U_C,M•w…¦å~]AaãD‹ô”@¡šîyÙØ@* DêéŠ ùâ5²l¯ÐcèSa¢ý‚ï%R°,Ô¨ L´Þq¿)dô葼‹g,»/@2•þ: £ÕõáçÌœ‡ªEæ"u6PËÑÜjÏâGÒ•‚$è:z=+oF&,¢–ºs'ºâKÎCÕ ¸&ç¼òö¿uȆ Ö<@$à<ñÊDò~½~ÈÓx%ÓL ¹†"[ ãÁ1ævØ©×7M™ \V¦çСW¥9e#ÎŒžöÔ3¤”«¦‚Dø[y:"‡Q®(L:` Jb†E%¼MyÑ,¦ˆWîèbG“^ŽHAó¶(êá ·ן7c+ƒw¾$=$µHAÒ%’ fd%Þì‹äLN =-rù¬­JLf[ÿ©ËÛ"‰o7°m¾QéA¤9™ËL,ȳ‰µ…Öœ¼‹ŠíBJØ»‰-HÞ<}›d¡Ò ÔñJÏŽƒ}ðŒlXP§<¼?A„´¢øÒw¢ÂávíåZ+d ÙgéQg2°nè´ŠNáÔµ„,urþ ÷ÓJ³l ³Ê‘Šé›+°·»Zd?>Rô|¹žî{»Èó&ûGgšÂ2ºÞ”¸ÔWUk³ +sãlÉSX*øîíŸå™ø QS)äŽeWØþú‡^t+Þúñã&zNÛö_C뛯ó†¾U¸H&¨®‰>O.’x§·õ¸îÉ0=›EÂíe¼ùͺ*È(âwý¾4×Áä÷4‘Èèe.¦ÎùØ¢àò^& ­éÅAì~ãþK=MÙ@ÀK$Áœi9>:xÄŽž±³eçÏ†p]YšÛ[Zøgˆ"v× ~iBÕ‹‡/ ’áXà\%Z[ØvMS“ÞOÕô(mw°Ù.¯3¾ŠO'‰.}XùÅÒµI\‹C³Êø«[ 8ºÞ#†®ë¯:XáxDõÅWä‡Í¬Ý៞>pöèÎ;Ù…ÊKÕ½DN^¤=犱®¨A¨}sÑ¡`Õ™ÒþîëÆÊmŒðÝü”s©Ü¼zJ$uÙ]jòe÷&L™ô¹–úùhWÝIs÷3´)©´,3¶ †\Ý I†qñ˜R72þÏŽf3“Ʃ٧ºöJ>s¿èŸ)qìZ•2“ü*»çzǦðBá0ìó’ΛA×kXGŒÛ-‘cÖêøë®{æßýŸó"~ úR²Ù$M%î ÝWv(Hm4sâfL2zÇêCyyÒ›:¿õ@2ÃËk#z@ç”Þ˜^8¿ Yœíº­SÉ*Ý¡Ìy‡çåÛ|l\_8kb­h ë7¶Ï”WÝÓ{W4î…·#5û…8I5¸)R¹Œl–®0¨ä„1÷@¬àd;B,š«»6mðIÎ]í6ó„-ei¥.sÓ²(LËp£™¸¤§Eíx%W@Ó˜åׂ×åµÖÂ÷Í3PmOtJ(4Eës(^Î{½–Ñ [׬РŽG_…C\1Uãzm´ùf¿t4Öõüº¸¹Ðuxlʇ$Ÿ° j¦êζ‘‘JíC¥Sb4º):±š}4´©îCަ$eᆅöÂ&8Mz?ï„8jD†Å]àV®}ÁÉæqÆ!‡q#¤!‘ãƒ&Lõ<\ܶ▗Ò}“:Àm1¿ŽB¯›qÿ]–Ðx«›®Ò\ÁŽ’ køi¨ìËWbœwbs¡”¼/˜±a;¡™#þ”¸—FÚ›}ü’ÙŠÎ{’¼ ãÕ¡d%¼Dw‡ « ¬„y MæÛZ^Êë’©7uúEŽ(|“T?/ýºÙ%ºB€\¨±FúxDp¦)´6åª$Þ„–UnNê «Øù¡°à±fÐÉû9AeÁæŒi­yUòÓ§³j,‚æ¢?0•Ë1Ià}µ¤`dt‚îûÃé:fo…S*+ŽÁ(Z[òÝj¨‚ï&Ä"m†»L(„Ç+¤ÛŒ}ºQõ¦ÑeRE'$YÙÍ•ÏE¬|Ô˜â€ûzú"{V—¨YW´òíþ}¢‘<ô®€Q ºSÛb¼î½iGYJwâ¾[%;f-ÄQK&;«ï½™2m£ ¿¢%Ä«sùªfÁKúÜ”­md@ú*¯Ø—JÙ£>½LIŸ/* =UÕaÒë¡N˜Îâ³»Q‚ºâÝýª®Ö”2›}äë¼û´ÀÐmÉEˆ 2ö}ÄÞ°àGw'1+x¬ˆ–ª9j*ô tµ/¶jžªQêDxPxNù$„VÆœyNQëÜË™f‘­K"s µð²÷FÉÝÏ“àŪܸò/E¥ÑÒ•Eå]S¢}ùSœ¥OÆVÃa¥˜îí®ýÅoñ™6Þ²tÚöòC2lø+_Õºš]mçßSJÁÉCå·n c8Z•§QÃħÏÖÐf7ä £NL9åo·–rPHN%Šr/Ø:½ñéåtªA¿”¸'ç »vziàûFUn.¡ßÓWWëWé¡x­ ³ým§{SëAëÃûÑ’»¦D2LA³FN”•ô _´æxÍÑïöáû¬O™”Û´ª€>œ×~9wÜâñ Ð# €$LWø±Ÿ©‰–;°`ðÜò.h¸ñ¸ƒZ]-MöœÇ¿K¸Ã›hû4tc¾!Ò™&´ŒXž#ÌÜ‚=Ölv ð¾cõŽóßÒb»Ñ€YRÁ—I•Þ*Î>¤ö{Å$Ï,6ÖéDSì=ïçÅÊQvÛhûÂþY$[c×'€wþ«ÇhˆDMJ]Óˆ™û+g_–(\o%aj÷wÒG.0š›1X–¬®QÊ謪ŽìqÆ>„~Çñ|‡,]œ¸ÆÂ¾sÒÞÊjÎ)pì?2¢RBòMηCÔuÖÅ•¶€cs™GI“]KÐ%½ŽÉzúJeâŒR›Ä¯½ùv™œþʹ%ƒ@Ì%2Òc>̰†aM8‰]?ïî/Ó¢"8ΤÍWFÐv!§Ÿm/±µð3‰O3ÜÔ(ƒ¤ï7¸Ù@ GŒÜ±Ég+ÑìíiÎÄ-P\GBÈ|Xtªû8Q!Õ€¨âŒ6,"¥Ú5?çv¾ <¨Ï#‚Snµv³!óùby{ÂäèpÖ¯ä6íd¿#ù ^›ææu¾ŸÑ| _>gûdX28,5¾Mm,W§¬4ò8Ã"Dì¡ÙdžÌoõ‹”Û½Êÿø5ñši†Ä)Ï9cBEôëÏŒçâ£ÎÜãœ>1}3Y»lâ7944)zìùD©`Ìa¦¤™èÒÜ?(Ò¤>A~ ­Lö›Çl4˜Ð´Š Ó–|ÁZ×°3 •óTÖrM3V„l úâ–¾o"h`.gÍ®mßg¿Žù¿$§6xÆ,7ÒgãT¢G`îi©þx<œ.5·"uÇÜzXBŒ £Q25gÉÐ(\žÑкebû…ŲäÁeŽŠQ§OhLJW´hLÏȉcg^ó)D£‰¢M42 Lûæ£ÒÉG-Ã’}Ci‘ÊMB‹â9ÇóC .DbÞa†‹ÉA¼Nš¾NY¹ÛŠÁŸûƉEr2¸)FÞÆö2R{vÓj!öMxîóæ¬ñÝóÑ>qÊŽ‚hg唥({à* öR êº}0«z– ªæC‘Ñ:Úõ'V¡ø_?¿$²T–PÊs¹£È…“ÃЊñ¸EÁGŒ„@6Í–ý,õßJ0*òÀæÔBŒ1¬µE¼­žF_üüYJbì¼ié(@×÷NÛn„ ·$ƒu¯' 85FUXm>°dÿX„Õà';Q¾o|Í©Y«xxS™C ¹-ÍcbUÆZdÆ/_ÏÃ**Ë«€:âFÂç=T+,ÈÍß9f?ûvÈóáAn´5¢á†ÂWvÏÎ5«Èÿm!ÛjŽºÎØ&-C¾Áã£2—›òXæ#†ßá…ÁÙn“é§Jïïå||n'·kMØc^ Wa|ã`çÉCSŸ×Á¸Çœ ¿½­$É4riHI%ó<œ*[ÈS?èi$¿íY˜™ø¼¾Ã™víO¤X ߨAC -:<¡}¤wÌT{0oô §%hb¡«zW%¤š}"é–Þ—ócìÜö2}w N“”è×OÞÌC͡©Úýµßa¾â:)ÄQIÀ"¼³KEçØ!Âlû”Ïm¹Ã¾aŒöþYþ¶†ˆÒ]¶ |—½ÆŠ$éLíÖSnÂØÌ-£¹àŸ‚n>Tækh0êtC›„NÙ‡Ó>,Š„RÅ.¦: )ô·éi¯ÇŸ,ù©PFSr¼x‚t|édG PÓzuyûR6n_=¯–ŸL£fu!ƒ\ÐZ¼¦Ý¿óN[€™r'Wj"ªp {gÅ!ÏgiUH³Yc97ŸQ’9Ñf¸¤?‡íqR‡PoØRDÊjŒ)Í!íÈr&P©5¿ h ]¼Œk aïj{5„£Še<ÓlãTáÈÜñpâW^[½³ÍH…D,#®§,‚êÄdmöÀìÃãÓqüø^õãc.î±]ìº~šsË0OŽ~Šœw/·XB#æ4>Ä×ôºÈŽ ßŠéq­†ó*k¼ojàžŸÞ¤¼ðó´ßϘ¡GñÖ.ë×éé1VÇþpòY&oà7gÁ‡ ´ú]¿÷J⸹ÍÙ¦ êmU Ä ?”ôÆGÜï‚Q“h ‰èí&ºž?ÑIkš”¶b@£? VJ<ÈËÊÓèS™!^’KàHÃ"LuÓª7/SŠÅJu¥/jSÎϪ[éh—s€Î7Ú» ‘|»þ¹!ÅßTê³d*ñ Ÿ«évÃÀŒó Ó=²,xà‰jßf-¬ŽÙÂTA`’L‘¡Ñà%g_†K6ÖPnÿÅnÒ£ÕD ¢·HƒRhqÊÊ UŽ ÖY§ ÀÛÍ}H19ÒË'§{&F£­˜ˆu×&üè¼IŒøNµNÂ_Šh¨×Í|-4Íßz’­¡ÇÕ ¾Ä=Ânø<ËÎÆ`ÐGÏ×lã;³8#›Ü9·ÿRà°È˜ù35¶ÌøÊ7³‡3ZUål>ż0J‘Ù%Ÿ?Žliv@¾:nMÀÉÍvõW­}dâ]Ê rºC:¶u¢I‰Px€ØøF¹N¿B„—“'ÐA%e‹Ø†MßêH%ß;&<{n(üÕP·¹Þí*×g)6Ìkv˜¼ìÙÎÐ 2OÃ'„ર¾½zÞ_X7Þl’„ä‚W)|/·îƒTÄ(:elŒc`NMTìÖ‚¸}dÑÉ•{[ÝU :Œô Øe˜ìiøÉ%=Ô’ [¥3Ñ¡NŽÌ1`Ø}±’/â¸È@dEJÈ:rW”ïkþ…Å’5o×Çö ëÚŒn*¢´Ÿ Pø\êV©ÝkT °–+»Eá>ŽÊ 7]Dåg°– ÎBØùžÜº¼w$îê>ìK(â+t7CŸ·ó3Ò)ûrYt°Öh3qû]—K’® Ò‚aÄè6@,+¥²©`g¥í®WΡ>' |Ö‰<¿2ï³`:TÖ~ƒ.Ý­Ã&©è×öÁQÔÂøàhËñÍêÇH-³%hH4Ðr¬B úÃæm/ümå0%÷¹þ¬ç¹K”ÏdõcžËæ0:éIðgTÀ`þ }åÚ÷Ÿƒ׌¿pÑß™ÆõÊGVÖÔ¶l†–©&Ztªv} Qur5G[ÃÔ0Là’ÎüëÉ3OGcª£$—-4Xš6ê*üæŠÀÐ:>øÀS‡P$¨5/fgàa9h´Gॄ#óØ¿Ž™’Ån´‡4B²)1ÌH{TÜó‡vç®X‚?îìHže8„çé뺗)û§´¿Þj\K¶4S[y}NU%kPyw’Í~q$ò–•Ì®®³’D´*FÇIs©O¬ kÚ‡@ɇP„ƒêMòÜ?i´z]¼(Z3t£Ú·JÊ#sÚrŬ\ê†Ýå·M¤Z€RFj;o«ìIaoâ0Ísb“Ê2?íñ8Ö¢7EY1ÜT:ã Sa2lw謉“ˆn–§Ùó5^¼Ê)ðø9úx"õ^É_¦ÊýúÓé‰^s7?û“Ñ„u–qÆ3¯êñ±2bÖ?šcÏhï îS$PÇÇÒ¼òçôqU{ïÖìð°µühoq<Ÿ®I ’‡F=:âÈL”‚q™Û/ë(ï"Év­†™¶áµ ƒWAe©ó³“Ä$дh[b²«ŠÞ(gê±>óÂúÆÑü\NÓÐÝþµsPÂѦp¤KO,êî3ä;÷œy—Óüí2³éÒ“œ&ˆŸ²_Þ-G†56æ¿L.U‘÷ŒçÛûòRíöÇ+i4”-²G_dB]Œª¿‡±ÞtÃ6t{9ê ^Íf¹ØWÿ¨¥7‹â†ºUadȨÿü˜øl¢“’i ý™>³þNM‰ˆ¡fCCÇc—M,—×ê]¦Ü57×{$b/Ç&F°ƒ~¯¬вÄMšªJ Œðœ%I°0{_•/§?§}ú~‘|QgQ>{ ,;Ö°9­ŒßèŒ2D#‹[3¯ºÙõù¢–¾0dŒÖï£ô.Nãùu4kIcïòÁ`Rð-¯Ý4b^P°”|RNîÑZB¤u€>r×¥–Ý—;Õ82xn(¿¨×™`8 æ–Çf`èÑnÒûçöÔ~<3’ìüàâE^ý²H(DˆP×&´UÆòiAœþñ†zä ´MÃ>ÝK§2Ý2¥è­ ¨Ý¢Ò½Ù¡0›ìˆeEó~¹)±‰wÙÏÛÍ)¯¬2Yƒ–õŽïbŠßÎD´ãûNôß\ÓU6ŠYRv¥^?ñ¶(´¡0vºÁOº[ÑÒ›y:ÅW8ŽM 2¼q,dq~BÁ¬$êŸÎ€ÛЦÓçù¤FXO;wÜ`ï±=Ø8±~C8®KwÊŽá¹°;WcIËÚ’ÆÔå6÷õvÍžìÙ7ðímRŸ‡î…æh%¦Ð20"ÓûŒS÷w0²™O¤ý)X]q#wSÍ¡Àèôûï‡aûÅJåŠenèT Y9e#ìôèÐüˆ®_¯’Å­y­š©»]ÌÏC”U#ëaIð÷¡Œ¬<¶Àô„¡'Ëûð“??¼4‹kSö ²•eF¿Š“>þ\:£)Óp÷.žØè)ªmÄ“yŒ[É®§†Bk‡ì/axŸµgVu®$d) ¦S““&á‹ÇS_êYçPº#T”:ý6ÞKó¹xâRÖ€ªþ†{ÕZ.A1Ä5{í•¢ßWÊA¡~K¯ÿ:¼dÍJŸð´ÝùÍjü0á¾ë¦àŒ2ö'8Ôx,.®ß’F['Œ¥6ÿ›ãÂן؜;‰«ìSk ñ9ÏáçÚxÊlÒÇEDT‰nHk]WMÌíëë–-±sŒ—­ó°Ukä;RÈßëŠ`zFa(/dëõÍGRgWJ¾Šà3 vfzŠ ߯zŽF˳ª„þ  t°š*°¬…£$mßrGÒ[Éš12ÕöT8Ü<~“,އÎX UþΗzà8hgSº£f¸:Ìß\¡nÃ=U°…&¾ñÒ¡{Žˆ>z.Dâ…ñ3ê ­ÑG …õr=\8-š‰x0öF7—ÓžNBÔª [#뜅lmR··•þàýÔ1;L 0™Š[GAô¸©¸Öõ®FLa+˜ðúÌX9>¸ n*òLRtÜp— v©TDZÍㅲʔešGÐŒÓÁ´„É6zÒ!˜GÓJä” œ|Jß¿°Ó϶~Sýü²¡B)Òr0#q‡œ>áÞ´… ‰üû&ââÕøq…ÆŒ,¤ü¶°²×wŸû^êó ëPï…pìl<¹#®ö¡á¹O˜›eŒ—s€dìw¨0‡_,öŸn¦ð#qéÊa/œQÜLtt‚(Ñä9 +lŒPk²Æt°Ãüo] 0Oû}åF<Ž[¬ 6ø»Ê{%;MFàiã¿34ãÙàO²#se¾§Ìlžò ðÀÁUÂñ vï&ᤤA}nè²Èóp§»Ê,Í’a OEöê&·sJÀbÆw~Ά;·Í5k8×%‚‰kxcW¼i[@²·£O¹^L'™0<ÌcǤ֓•ã/|>IÂSË$•I.zÝ&|ë„1côÎLm”_F½ÝÖ¯ …J ÖyÐXùLѺI×is£Ge@)§ ÝàÛ©aÆDñá¨FiD< ¢z ݤN>Žjþ\ò9Ê¿Úû©›Ž¢ƒ;Ô¶2fv_æ%S›[Í3¸¸^îuXy0C‘ÀrRÉÏ\Ùm¦—[V#>ÜQ<òf,6LAŸ‡‰ÁåWáühû«tðØË7vÉle×tYG½eæ:­åbf³Ü* Ã[ÑUÁ õs"Üöã˜Ø3FrWcâ$ú…ˆp4až·Ï½÷=³Vä›9)ë9}iÿi«~ᦆ½PédžL×àA`HÀ,ƒäX ÿ1³…ቓ¯x¯¸Ó: úÿæGdæbU{ÝòYæÅë^2+›Rbn¯A"† zˆ±T6m4Þ}·Zh—fAEO­Œ5eãµJ~©Írºvé£ÎÍø#ÔöùY:QH6gÂzLa.àj'‰¼föqJ™óÇ`ŠoSa4l]n0RÞ ºĉ ¢Eèÿe’#_í¬ãÆ‘WÆI÷]“8­|è3°Á|¤„û1}‘™·”ƒ‰^ Vt {h½J=8¬Ý$–­ßyÔÔ%–¬Þdfõ"Ô,( N׿dn©°*5•ê|'{@Òj4`¡žÕ')š¼«K˜R‚P’ÛM›%ù¬©.»àÎñ-ܦP6^ÇÐ$Ùl@=ZƒˆÆà[rkdöKT¾é§\öÁ&Û¬#˜éÜQV…UhÌÙ'³ô¡ˆR?Ym̯/wÎÓòb;2Õ8,¢á fØ’Û@» Op/ZmM€6MI]'Ú\÷3ßGÉÑýµ5¬ü×ý ±w‡UxOyoÒU„¶²åš»„Ä&v3¿j®O•ANFwBµC‘¦áù—Zaš¾³ÈýÉ›M1>5P”q­t‡–YÙùÃÛOTÕ·9ùA×®'­¥dÅΨ·y]utÍbf+XúÓ™o-`†«~OÔIÆ!òÒ³!^EH çµCm‚{²BDØ4Ø…†DR¡ˆ¸*pu>¤…0ɼ3zHE2n¿ZVÊÎnÀE£ÕøÁƒ8—L¶«û–L0G÷Æ0Hà7kçk ø(÷>Ñ|›CçQ¡c/zýöÍã•¢W›¡t=ûRÅùmR•/mØW- °žŽ"SìräŽ>!Ø ™×‘lä2UÂ1»½OÜÙäÓnÁƒJQð멚¯.°ÅÁr¬Qi3UŽýrì?ù€w…G+„¤”J;B_ë&…Ø*Vå*,²„ª–¥ xзÖZrhËx-NcOž +Œ5Òv`Ô¶þ"ÐEuÉfº·É9b×wßùr8PŠ]¯£ÕÅ¥¢¬vg]ê$™›¾(]©%«@#&•n‘ìëžÇ{q;rl+VòrAºi D÷aBB5Ì{ü¨œéhDÕoX•Ô„ ®ø±?6yÞoh‰#H§žï’R£w(M“S}ÇÝrO\£™È»AˆT}Ç"Z.ƒyp¼ŸÎ¢ÕïÂãrž±¡âyA‹³ºÒ&tráô¶T×u‹†›JÑX’DK“Þte,jAõÜÆP€p§HM`œ²–ê(ÄW è! £y˜ÞF*–æÈPM·U—ÌmÑÔ2Ó3ÍÅY|;ÔîeMux‹„Ë0õßæ¹foó!QzÖi…<ãþPmj"S±àJ;Ù?¹ÁÛÆ’È–êsè5¨ãàñ¸"i< L p2½­^bœ4µ”æ×GGñ7‘Ž —ƒW!àZ]3¸<𢱹[Žbˆ%ŰØÕFŽîËëâún%‡–,#pmï¦Fõ1*èl¾ÝàB›;â±R-à¨U±û1¦ÚOõ„ägAx³ÂÂfu5 …ZrtqŽØåQ²&Þ> Ï×zì4 éøhúNq.ËN™>njE'P®Wjï¹øí»äf3ê¶°Òf~ UZ.$ðëá8S|ÞL™d| Yßµ2Ð*!Žoü´øM©Éç…òîË剨«\zx„áFíóPuˆ;ç©lѼÁ†Ël¼”èÐFwì7츀F¦Úæ¾’r[òT³öÁ‘`çøüÅl×a`‘¤ê®7²jêWó"/èûÐ*Ÿr‘54¯³À¤cV¤½¸:²"í"†³0‚'s®ËÉ»D'õP}ö£Î Úszâ:¯y3‰"q­Ð)Gi¯d뱤t˜ù I)3EOÉÞŠL©òà¶v£ß+fOœ:„UôRuÑ(M˜Õ1ÉÝR©«ÍÈy–¿A V!y•òÆaò¾]ï“rÖ‹}}ëH¢:¹õTÃËýŽ‚ßªŽºræÃÇÊé.á˜`‚—|Ñ„ÔE•/T ÒhTz¾Óx¢þGvwdhkÖLKÀ¯¶øt½¤áÕ½ÆÍˆ«ß)‰fFSg£¢ko^“³ÎVÅãÒ«)LDõ3J1ǽ¼¹­´XZ™ÃŠj`ªå7ÃÌAƒWÊajæþý„ן˜jRÉhë²<ˆ­u…(._ÅšáÙL‘èänˆZ+5ø?öïGp« .UZ³je~nÿøi¾%{]®+J83x¸i²þ(±ÝuLKT( ÐöÀβléTìXƒAÐ^·ýzVÖ®`È×0\j2úg™– Aß®wß {æpBÖŒOXÒO\d_½s$ùU…UïL쯴nd#7.HØõ¦ŸJT™šŠ‡—ŠfM<± «¶¿Òb!;jã,v9.’sß—ÿ x;±I~Tù¨VvñÁÍ  cÁ¯¨#ãF«M{›¦ž¢£`Bµ¡^"8\©•ˆH´‘.àiZLEåk÷ôù¬¨b|ÙÜ©­¡)FždŒluOâøŠ‡¿ù¸é]¡Ç¾<É[äïþ”4’Ý®" -ªÚ\ÕZSzéò-Ífó>Ÿ|ÌÈßC(¾­‘ÝÐ?u°zX?à«q½É¸ÐQáŸ~b%ëŠ2º»ËE+Ú¢”ÌPT@ìXÑÉÁͨԮƒ{ÄÒ?lf¾,Åz ù_°÷=èH\ó9ž#úSû±?á# R–Ë&µ®dÿLa†Õeõ·y•Õè !«8"ü*Øâ&V®ê+îtÛ^€GS¥&žÖÝÖìª=ÉÜE]ÜaÊÑæ`BÁ,fi¡E áNؘۑò5‰@s›:i<‹mèè´U×Sà%ô£Ýÿ«$'L]܉÷6+W該56‘oyÉvÊ캜õr'?”¢ð!|±qQ)J;6Á5iÔYÐëôÐëçËŽ†ïî,ê÷9 û¾MB:qaJæ×ºÂš3Éj ,)µŠÐ^4ÞÑÇÊ⢻1¬%ÎI7iÑ—ë:Â7Š|å9ÊlñØcŸtýv²—ü=pHC{Ø?ÝùûÄ»@rÁ²±©¬×@$”­ av¹\Åþ9$v¥’¼Qµ‹¨u+qùœ²4x’mƒ VЏü/LQß5‚sÏIJ”dW™•º;/_øÚÉPæ ‡×üâfDX¶w¾MW»6fe€:H³ìXáîU¯MwÜ ~Ü‘Ÿ@ ÓIòÔ—h1`ô¬&ØÎ”˜{j…}YNÅBydøŠ¨6­’.´³Í›£6„(‰àO{žnˆ!ìÆçÃ?"÷5Ž|èåÑåðSb›ŸwIu{f÷Ï•Eß§©vSQÄ×÷?×pýÂ0ßÒÓâ“E MXv m(f¼¥,.ßgIû÷¢¢:¶LÒM}EXzépýdSþ'ڔ˔O†+±Ù‹Ð î“EyÈUvZÐÞ+?¿wzØe«¹xv®È•Sÿ$^…ð¬»7{¬‡Ƈ_+*K“<%‹¿Õ·wl[îÜ[n'À[£ÏOs3vq|XTôªz9_×ìX'Íöý$QþéË‹K¿[kOÃn¶¸!JÎû„ÀL}U6Šò»'Çñ¥GiU¥Ž»Ããv ¶Ó\Çž2bD-à6—À1p³Ðb r?x¤¿ÅuU£0êñþZfB†$†:ètFy"åk솠ó|³RÚò}Ìýžd:f@vCϬ`5èå_ÓMW5¦ OùÒ˜žãÅ”7A²…—ˆk|ÆÎMQÑ$iÖN¾[-C2iE)v}½(sC¡‹r~©ÁÁÓž œàûÐh»SœH° ðïÔÉH¿¾®}ßužÉLÈû7IÜéXúÄ…µ§’ ó>•òjÞü.“^!T¡Ò`VjŠàö­8ce¦ZH¼©§[Ü>ªƒ°8°”ÓáËÎòv^-³•Ozœ~ˆ<™Þ-† BïÜÞl±ß# s2³v\Î'- SF$Hóu~²¶‘™GçCg/ k©5/#g?ÔcóZôÏ¿¡±†NÛDÓló[»« ,*oX5yVK¹4ÇG±#jãÀ¼éåÏ4¯‡ADÿ"Ê»äl¸Òsõl¨r,Œ°E£™ãÙm1šúI~¶€FÁ’S9ý›™*“š×mRÍ@Á’;žFkbɱá[Åøåw¡審…NQËû 3åùõzQ¿…%$¶*EV'[»§õfâ—o9Æãé3±Næcnî.Ž 7öl2Ngf^m¼ÐyÎþˆ„:JZ?ÑÔø 9üõybö 5¦6—%çL|`Ò+3gº×Pwt©¢òðçkÒÎ4 ¥š,åI1CÚ^¦øàiÈl)#»qLûêñò‡¢Õ]Å!³)Óô%«‰ÎçEnè DnÖ«¼/4ÎnÞü“SH|Ç5²ŠßÌý)ýo’Õð¢q*¹¬<‰zý÷àâ–%Œ¢X©ŽgJ84D÷ÚäðR&^¿¾ÑdöAõÀÜ^ðð¬#qN1PC1f_˨t¥‘òúÖîÉ :gAÕ8ÐcwÚZÎ`T†y P¢€J‚1m Z æ‹ÃÒ®ìܧ•˺¹cG›óµ¢E¿!*=Å‚¹¡†çJ„óÁú`>caO¶.ñ-‚IÌ‚~â”ÒÇñ.žÓßÅákw­{§Êøgz¹X ³[Ù7rÓÆG¨ÒÑkýÙünveIôïåaølB›V}Ȇ{ʽ9…1„Çk¼A%À ”ƒZ—³ó{R­Î˜æÎê}ûÜ»ŠÑåMûèUóÁ›T¨‰x¶Íd[ÚTFµˆ>RrÁÀÅrê §˜vÇŒû\¤Ö¬”4&î”õ™(ËOÚw“UM¨¨½Lew‘thÓ§®ýnߣˆÅŸÏ ž’fœvMã<æ­<ÊHìÉ=-5ƧYI†(œË—$pÂXÉ¢oaJ±ƒ„ÜWÖ„Û5»_R?÷Ùv OY¾ÞÛC·ôÖ%YtÙÙZbÆâî"A5eYUB±¤áV¾”t«‚¯æ)WA2æ"W¥evcÓh¸;Ú  ÷ô ã~/±rÀŽ ò¨ ‰÷p¼"~ž"l¿ç?wXõ‡:;N¬ñ–b.<ÀÓÖ›Ëyt¢©Äc‹ÛkEâsi%õÈü‘øÊ.º~Ÿunâ…Ð' =R‡Ð‘y‹$øf>º|ñù´aßÍ•Ìe¼áZ‚à]C½–cÀÍÎËÉl üè÷öZ}’ÿ–"t1ºw&uuo ¨ÓÝz¿O:‘ôÏÈßÕ°¥SÏI´©Ê¡KU_OG43ÍC ¤Œ*ˆXÀÈÞø¶¦`æ´Î‹VÃËØ4Jx=Ê]¹_òò>ÙþØàPM­:fæðuÁ»±”Š(Uß'ðûâß1åÚdP8—+1ï³ôóys#©d"H]•LÕË76`s 2ß r²Ë ‘„9¸½û¬7ñôÑp6 òÕAõ¤O¦á¦áåá4_ÐÜÀå ’“:çƒ<ý›*«±Ä“v÷M·Ìì#ir …á ]v|wϼ‹cgíô29âÏH .ÂSáOÝ6£ƒ?Dõ­¹Ë¦,æS[9 ÆøÈq°Æ¿~X°‰°š‡…~†çi€ýøÜä‡=ƾ\U®õY 7S5S†6'fv14Pö´-ÄØp§•9K<3¤Õi£íTveŒ^9í˸PëµÎSOöõ&Ç¢8ûP Q2¯{0ÁL1Ô1é¥/xp"7ޏâM6£ ™tJÇãa‹zsOôŸ DQàÅ; À‘µ ±ë%l[çãô)¬" r]MÖðó­VvÂOO•¾@îN«ÒýbêD¶´«ÄoÈ‹­ŸžèU/kJ˜n6?­•eÂ…QT‘ÛtÊ{*}ØíêHÉ” tˆú©[2"[¥Îiõ˜†‘3-”Ò©Fx!ðhþ×S‡t܆~!ËÀ‚Æ…¨oeå§Ð[½q¼Å£‚Ð÷³F–@nǹ‰z½¸Ž³ñ=·;6MyÔ` ðéïùyã-±%ïÅÄ‚±Çþ°N޲”ëÓNŒÕ¿- ”È9ʺÀ–ð'hÑ(ruS"ö)¹“¸ƒ‘ôPè’ɯqΉ¥ؘ4 ØÜäà …i¯áŠ«mÏù`ßE9aÈPWG=?óŠÈ+’%»7ûüÉ´‰Ñ’`´Ýh ¨Ÿ°@Öè\ Óä#¥ø ;½ÈLMŒ*ú6¥ % [ä§×Õû/úë….AЦhÃdÒÈ*h€3ýWÛ4&±›Z¿5¯!÷fÉ0þÕ‘‚icÌü@FWCìS%ËDÒ*„ÄÀ§¸ûÀ&(Z›î/<æÉw56,qÌ’‚œP²½»€ì:qR@ÉdH^[ãýDúHÌ™àïá¥O+í2;Ê®Âî Ë0Í ÷*?f/bC«{ ^oÞ‡ù Šàƒæˆ Êk ºCT¯øoµêÿ5&fHïxåë?×ÃÌŠ¶‘·‹_Ç1½Cs3ípqX ËïÇCÞëÉ0òdpyŽaHæ#ƒ2,¹®´I´ð_d(¹º óº¹!”¯¯ÎÝI˜–­I„ê«UŸÅãD‘u b0ŸÅ ñtêµµ¥¸}8êÄVø4œ$”dÓlÒQï{õ}…QýÂßøƒ@ªì îdÉ­MÃîO4?žûçiuñÚ¦>ÍH²–gˆÕƒr ´c^¨Ž/ƒø$„"Ø…ŽgIá3Lc`9S–RÔÁq ÇIÓa¦ f1¬á)y›­°~oN¯Š°ŸÄ/”·üÚåCu+‚) €ãõ}úY4´8°RLV»¡Æ”ÑieЭ,§ò|é,Ü Ð„Ê³žê]ÁØMnÆòû뺑é e@H1´1‘—ñ‹?f"@·}Žoý‰O«Šà±·òaLÔæÑ)¨­æ>¿D,âºè7u®|Üê.Í\ù<è—r‘&Þ=i¤>¶ÓV¶t'ö"‰oî: ccêÙWÏ×ñUÝ1õùCV«_/8×x6§k2¹ÑŸüt¿ÄÁ\K; ÄâÂVÂé²BdoÍóõwàãëŠÊ²6l*Ƥ@Ùè3nÍÆ—†…õ—ME ñ^zæµ%¼’üYDXák m!šÊP›P1&ãtœ'™½¶³eÎ[Ükî×—ïLgB/è,í¶’/ð²&¾ö^BcЫfeÐÞ.M$]µa[öãö9þ‘ç¥@Åã´ˆð82j€ ¯Ái±]æG†ÅL…–ÿî{ ”ÎæÌ (íÎìTòãIºKµcyX;Ç+–‹§‘êœ3V-Âj< Ía¸]ò+IÀ²uøoôÈöË+#KkûßÏÓ. èö½\ˆÁ?Êéò~¯g û×ö,ô wÞ¡ö™õ6€j2zÂ:.iLmî{}ª¹D1®|ò¬åûËe^6þuu²˜ ÚÔc¾I`ü»¿yŸ•0<»ÅV‡ÈÎ" DfG¸9:EÊÏs^@WÇ¡ò@È ˆEpÕÛÓ1ÉôY0üŠžÖ2ú0×`Ï”^ÓýÁGQŸµÙ³ ª qé*a6gê3çÁuÏø1n¸vr¸¤ÉѸ#béÊI®Ìv€”·'O+ÁÒñÚ±áïUvÒÊ'{àù3ÉühÝ×»âã÷ j°ôcàrCç„“ÏŠ€8âYD›†HÇ8ØV¨?ɯY” ÏlG‰¼ÝSõTÈ} Ù¨~ϽéµÜ'ç„”28Ì‹è0ŒÏ|©{%v]Ü.iyC_xÛæ½Æ¾G¹-õFRÁ[͈lc£"´íĈ§¿õ&xDSñÚ/2 ¢b† _Yü@òK÷ö8K‡ÂL(nJǺ!¢A²8þ§Ø©%§g¥y:²‹9>ÙxS)Õÿ+s¦l>HÒ¹@›ô:É—`e½ºh?Lðƒ%5µø ”ÚÙn—Ï%ª´!OÎâà­l¦[‚Ú{0È‚–í KÙó¥Ö ±ÄÝ  ‘ìò²ju„ê{2CPÕ’koí½¹õ[áŠ.Õd[¡"I»•ÐÄÇT¼Ý²ùgò{„W._ Ȳþ\aã§©@¡ê±j‚b‘N‚&Mš¼£4ùSû¶ãxžˆ{’9[ýÎéöò”£ó!C÷+RF4|{%Uà7LJ©ªÒ+ù ëip~Ò!ðû©ÖWY"ùš,rR¤‡èñ4æË2¨á³†Ùyˆ×%˜ú° ‘ Dfub½AwËìG¹ö™s\Ÿe¥õäÁ“K×oøH™džŸ™|;yí&ÁV(Tø¯ØœfŒv+ ^¦:e™ß’ð\¢¹óìµÂ{Óù±<Ù¸Oé•Þa új˜¼ì‡5 5åñ<ÃlQÆj¥’ÖwZµíG¶Ž·â,z¤Ê{  ¿ Àý½¹Ico}Ôý!$§7t>Üç;cM3¿"¤UKÉèö0´yv@miËþVÏ]…ÄNòýoœÿ(`+âÞ?r?RùnJüè71ûrßhÑ1ºóö†ý(Y?`f,`š!õŽˆÊ²Ê.‹ q‹jmI¶UÛ:5O?Sæ|ž †)0š sG÷Oñë–æµ¶üC”ýo)âÆ5ùN|;ùß…{´¾w3ïÀß/H¾8Þ•©hÔy媒ªõõÎÛx(÷C¯ÁÕù SãpÑUÈÉç43ÜG'ªmItUº±äNóGcŠbÅVŒih@aÌjQ™îè‘@šgpÕ°öõ&J»ü¸ò\ôV.@ÕeÛ¶zAa×\£j¬ÝÉÙ«æt¤ÙU’ó Τ<cûØ0xµù+È%\3qu­™õJ”íâ” ÜçÌ·JÂ7îD×#’¯’çL£©q>°…ø–iOÛu_+æ&O€ç‚ª½H!ݯ<˜µkƒtçK¶Ä#c¸M›SI5^^²dÈhð}Œež•»"Žä.V›!°×,wÀÆrwÝݼmÓéd3‡¦›Â*ùO9Ë{bªQQÌÊÀ%ܯà#à ëJcNjá|CãOÖYªˆ´¾%áy.ÙG³c f`¸ú,ž¥:Œ_–l(>³Î¸„†®Ç¥„4½Á—……7D-OÙ‡ï}êÙUôp“Àg Ó¢Ò½'žòÜ.ÖÕ<\|î§Â”álŒ8%D®º[ÉäÕF°[èBÎHЄäJ’úLÝlJ«q¼šJÉþwæ±,Q¿Lw—ÔÚV¡¦UNÑ’û‡3g£®k¸œG' aœÔïÎËùñ€hrÎÔõ ¡Bê(ldv¶E‰ÐüU’í™Áå£i!À×l=¼9&¯Üx/²åÛá(ØJÌ<@>ݼhzIõ›Ø3ñÚŠ E¹¥Ìî®.P#”<•œ‰îñv h¤®ñ ® œ—¨+Ï̓’£ž¡ã¶sÜ+OÌ üIù5°ÿîÆ~ +ð_¸àë£$~55ºqѳYY¤t—H3Ñb»µŸµçûÞλ'‰„¾ßKxŒÐ*„É6ˆXîj/ìóÒ×A ‰ÿ:¡Z&—é´íÃyÕ>U[ܺ=]ò)uwX]úeI³u¨Û _s0Ž7B âªÀMDþ ¢¼›†Ç4†Ò@D<œ·`«²FÔÿøÉ¹Þù¬£µÀ‹ö‰¬†¸ƕ̥z߯º›ß¾-í†È*àU¢9W;c^Ѿ_ic ÈhPþ—õX‘’cõ[+8yÙT¯ýÏ£m½ÿÖMÒ+Üj@QÏ¿(kTµMs|mó–ó9GÃ2ä%ö§Œ¬I‹}ø—dËw/ŒFQƒÖ¶!svË|¡ÙnîŠõ_5»Lê¾›vrTŠAîF«dDÑJÅVHr6)”Ø@FOgî/?ƒÎ ß·Qwô‘Ìf q~7ã­wm”3“ú™°»è¡¤·ó¨r†‹9¡ÕŒ½4Ïx— «©)4S½øQçE¢£¸“c`ða#@ÆI—dØ’:ÙÁiH†M[«ë·{f¦Õn[¸]:„‚¼må5Ž¡gë° `J* ‰QÜ—Òm–ïHœ¢Ì)áC˜ö¨ I{àʱb5ÁÿŸ½ ‰6§/1{µ½ç³Ak+8lªLEÿ¢½³k~ˆñŠ]’ŽÍ¶u•}O"WÇh‚áCzÑŽCl,RÿŠËaë9jû1÷1¥ÛnÑ~°ëyƒ÷É*¢ràôÒMWy!0¶ÊvvNM*¦fÛô¨“ã\ú\àŽ.ÔVæTÅvhNÙ=ëÊÑbÖŸÍ`ù`¨Åµ‘ëÄ.­å3HÒM§E+#ÃT1¢1׺ÿ˜Lñæå£Ü¸â•óÿ–ßõÏ"H¤ͶÖÅá÷ÙÿŽJW›+ˆ®† ì–ª«õÀSZ2xH ÞŸ¬Ý4(\m} ¼éƒ2´GgÜŠ\›1Öä–FPÙð$YÚÏØ õöEÎBÛq—²œˆq•á‹cÈ’ÜiCsí²s9…=?~äÏôÝFWȘÉnD_¢èV¦"l¦”!,ˆ«™‹m “È®t€4¶j톶Kì\"ÔXééú±c𪚟¶}"Úð‹kGjwLÅ"à9Ò&Ü×rßÁôEïÂd%yÕZm¶G »Ýð÷ðÎ^aÂ&*”zLœ¡L@п—[ý)MP}4öq†ÒSÒíRz¨»úMÕ$² v°Ëäérsefî_ Ûbr®ÖhÆEŠ–¨aý¢ÁF @ûG) ûë)‚ŠÁ’µ½ ¤ÇÿņŸ„䦸4ÃìG¢‡åhÕÇjÓ¼'à<n’ þï´Ú5r梦ۉþ´¥øyvŽW®(þÈÂñm{-Œ b’ Ãúo ®—G‡4?â뻦€ L·ÏfõºædÏë”Û®îÙ:€„“Ûúčйl,åæLm>Â&ó`VñÝdSüæçýÈSTч0üÔ,žrRÜDñÇÁ½òèîáÄOÞ&|„Xo4¬ÑUcÁF# ¼i½y/éQ‚ƒÒÇÍä,fÒ#Y÷õ Ù¸î`ÛÈÑnèF#êP?-éëË3‚âņžGC©Œ¶€¯gtæ„H2ƒjýÉÊO|Rík/JÁ]˜ÁV9¼J_ÓG.WWû¼&ÍïÏq*f‚Ä€2mÄu9ùÉ’X[ýdÐL³:OV#_9˜y©tî RsHã–wG (r1›ŸÒÍìÅÓibãᩨkº„eÜ ÖçqÈdÎv·é?Viùb2£ÑÝ(¿‚ûwA— R:¼Ñ«½ " TU¦· 'ë7HʘUKÜ>­ûûjx²…øÖœÑ(ýæ¸O`«nÁìüZ«C zÇê•qÀ‰›³›1ó Ÿ7ô&e‘^ âs±8.7[–Œ–ÂÝÔ²S6Èor@AuHCRòû3ìˆê%N¥Ì†íuk#_®Ñ˱F8¬Ÿã}ªÆݦ43) «¸…%í£”Ç3ÙèΔ^……«H_¼¾W h½R­Ñƒ·z8éÖ37j°° úÆv]d¹É¥“œßàÍwÑ/ÞÝ+¦ÿìRÚ‡N˜F§ÇºÞ+¥ CÝà¹Õ¶ëÃò¾óŸ\~²ÿîÓW¦¦¥A¦W|­¢B@ã °ÇDÕ‘‰Ÿ˜qCìit8_Ê`ôŸ~ì®{wñÖϱ¶Òjmwñí„2õÞ§K>Ì:·‡qÒ(ÙÆ "5JÝojc–Kò©*(°MŽF¸éO–sàN t81÷…¿7})ª>5™£¾#67+ÏlV)o¿nK§<$£<ݼ§ôÚúŒ±Ï=¶±—'!0cÅ…>K Üì<¸¹Û´t$¦ïG"ωz⣷žÔ)á³¶,…ÈFw¹L^IÞeU° Z«‡%“²C9 ûKõóOÒ/ûè;ÔäJx\Õ£⃘6U–>¼uvÈ…̓:%é+1!åÍIfØ=;ƒ¦³$<©ôµBÅÅ…NS ~ ¥ÑöQ t¤âB¹ÇZÄ,°¯9%ÐÙ×ÿC”«ÎÌKŽqÁù?XøC„dÓ8Î •XÎLÓ¨ÖËueh³céb÷%L´ü’k2#«8,4V{¸c–+:iîYèã¨âäÌÊcøV¢Øüãà†;‡VGçé~f¶Éï]‹Îã^#刄â›ì£ endstream endobj 315 0 obj << /Length1 1525 /Length2 2317 /Length3 0 /Length 3273 /Filter /FlateDecode >> stream xÚT 8”í×´¥DeI=*ŒeÌÂ`$YÆHÙ·Õ˜yf<Œç³“Ý_%-J‹lI‹µ¼R¯ðµh{ß-BÙŠöBåýÒö~ßu}ß5×53çœß9çþÝçwnM wœ i,À f€£‡‘† £©é 8àw?FÓ äñ!6ûaÃéÔG¥ P #[„€h͈&f@"(ßÏ  Òà &àhlA`Ñ´A¸bÄ }¾ÿ° €H¡˜èϤV! bÐaÀ‘.CÐŽ :pG(ÿVk(pÍðx‘Hd@á <¶…Ž> ‚€Èya ˜¦ 8ÑCÀYjMÀ#â ¸#,ˆÎÔÁ ÌGS„0ähwÀÝÞpæ‚ð7°Ã7€>0{9Ñ€ø£Ülöt!žI¦3H—‹!˜ ° 8Ó á}€3§tAóéatˆC@3G§4+W€Ž2œåÇg𠮀oÀ‡8ÓñÓeÐk¶…™6HH ø˜éóQ!È@ï]ŒŸn0Œˆàˆï ‚™¬iL!ï C¡BО:‹A]˜Ÿ>6(ÈÁÔÐC0œˆŸnà!æ‚3Aâ´åÁE¸ ¥FA,ýÁDðéa à Á¨ˆ_¿["`B ²!ó³:êYßltþ<(ØN@åGÓŸÿüQ…1˜#þ Ÿ1ÞÃÊ×ÛÅFo–ò µ5DàˆŽdhIF€1… Dý^åÿïÜg¼.thöl„ŸõìaP¾Q@ïî;°Y]`g—Fø½ƒ‚ª°?ÅïG èñÿ½3)ÿ›ò§«üŸâÿ÷‰hBg&ŽýøqzÄÏ"P5 èf8"è~Àÿ†n¿­³#È„„!ÿŽÚ èè†XÁl΋„ø4(dº@FàŒb¾­Î`ÐáCÓï €#ÿŠ¡+ÇFß>:¬™ˆnÔïmaœ^=Ù óxt1†€ê‹D&DtG™`øŒ´¼ŒÐe°fz¤&†Þ~Ú5cQááÁ_L€gýb’<ôÓ$<ü‹‰æ"?L#4ÈEŸ˜²?½ÄYï7]üÌE+ógÌߨ1„<+˜ Jý»=óÊ€`8ÈÀ´·"Œ A—ªÆK­ÔD¸G$£ÅuÃÉ’…ÛúmUÂ^ºÆÛ˜OŒæ¥<±ªm~‘2ñ|ÙkÒù®{¯ ïxy"ÅlE{yÕ»æ£öêG­mž XÃ(bœ"9ø­[ cM”wø£ä]n鼤ý=ÓO"'s¸–™[ì®Tô=X2‚®ØðèðºÚ=ÙŸ»±Ã{çødXï×ôþ”›Û™ƒ÷Õ-}sλܯib¹Br¸2íѪ7ZÌôÌÖøP*o­n†³hãþæÉ%nJÄÛr›?ˆn>·NÏp]_9Ò¥ûiZlwQq_íÉL‘Ñ¡§[¢.IxwvUîÝQؤYY´øÚîÎtÉÜ+‚Ú)ƒ²pê˜k´þÆÚ;^’ƒEªe×¶¼’,­Nz?WÃA¡b2³·ô”w‰Zb½òSÙÐÄc»C}ƒò³ü®Ø‹¥sûR‡•êüž+ ü½ ÉÖb]¿Òµ–Ú/Þoj´(]gµ~+ÑEJpŽ7²'u2!T.¶‘”ëÞM\bæ;¦}êZA“|#ã™’ìËjÇá|•xñF;„ [U²(Ûã„Qj…XY­TÞÕX‡ƒq’ò° _{ÎVFÑõâ`Qœ‡;fNnã;ü™§›¿hµÙ–ÓT¦‡hÌÅ,ýŒÜ§%ÂCëŽNnÉSpÂQð›?êáìú×V˜//žHr>ŽŸ¨ãÞéÍŽó[swÀêNzÌû㪇VgþÉÒzfæ@>[vçÅÛvÏ·¯£;Ý+›c_N<¢þ$kÓyD+iôZéH)•L¶H1IO\E´ë<¿çëKt |û¶Å¯ÿT{Òz-~« žÉxý¿­dÀl"}õBã«ÔÃ-ŸTW'¦¶eµvXOÎØXtÝ™kù8;£¤Ô[tFMUOª~ óö¾z}–™‰ð1½8q\ï„•ëKÔæ*Nj:ô^Ž™ÖäãÑ|ùט0NàÉ=½[õqÚQ&+Á¾Ñ)þÕÆ>™^£ç;NÇ‹"º­]Ôtê8œ$žWvÆŠÔ[3Às±(L,—t¾puMïí­%ïËÙR]RR·\ä|üdµkhæÁ®šÖëÏ:½©ºB+i:ÓýØÛOÑ,2'€Þ¨X”øðå¤ÿÇ'Uä?I«wúa¥}2½z4÷êL)Œ‡{‘Q‰Ý¡]ö\kî•v`ŽŠZý^üð‰”â V‡êQç+ík¤=jãRs‡lÈÉjª²Žù+qGõRu͘ƒ/4\"&óâ³|qƒáå™ã·öâö·?žúô´‚uÛ¯ÛpÁè±áûnY³íÇŸYøÂUh+ëükÌÏ›sâ½W¯‡§ž÷.*Œ~pqâCV®r§ÏžDeÍ>ùÀ jý`!/IŒíÜnvÊÂñ–#€Í«…­ \N6^¼þv»M™$êÑôq›WÜZ1REø+”Íu±lI>‹Ú¢íáSENQtÎÍ?û1]`š]\‹?w„r˜0§h‹ËT`u¥/•KsùÚ¾±ù/jÖœ­%×—™P³Ù0é\˜;Ñã©¥ £*o>A{ß™Â(W¿€„öËjÜ2•Êv“;Ÿg«º6tgböQËîË÷,²áÚû{-IÔ¼í«¼þpÝœv¨NHÂÔÅîH‹Nô^¯.|Ü—áѲîZ,ýFLËFñvh§¶NÊùü;#õÈùçâßÍo¹ß°¼_1B2¯ZÙ4%¿éˆŠçDO™ºÝÁEãŠ]*öƒìC<ʵ¬KnÕˆ´ºiÐ{³óvÁ‹—õ2¬Ž‡j‹ÒšŽ†¹Í£†¤©3Ý4ÒäG,(ŠÙy<‘{!Oîƒw—S{¦í,>Cgñy÷G¥~ƶ=ÐóœÍi_:ùsC%«+É[ÎßS#µtëŽQrôæ.·2«½ µç_0.nŽJìŸSü$r,0[j⡾á„$_Š#÷g÷©¤±OéïX¬çr«]݆/×sÌæv_DÜq+ùjÛ•w—J‡îxºëÂäZÀçŠú÷º—þY»<·æDHÚ÷Ü3Ü&5N`í' µkT›Gp!‹q¶`ÓÕJ.WRº”ý÷;þç\\M"3{ÒìÌݸ•™ójT"”žÜ0®. –†´ )‘ ´!Ï|Y·ªm{Ôõ×7ÿ¢hRàv2&(&,Ìð.Sj§Ã™¦Eì@uš‘ZÇ~ZëÞ&JoŃø£Öã²e×ÇÞÕVW¿‘hÛýOެµé1S%ãúˆìƒ»ñ)ê‹ÔS˜Ó{/†ù–n˜ýz;ÆÖNÝÝÊ­ckzÖ~𤥠qçöÜ_Ý%]ø¨Ê32Òz´[.GWkY`9"kûÁz¹Z;kòÙ[{i¤ÍQœc,Øœ¶BÔ8wOÈÒ¥MÁAóÆ÷ ®·‡Ý™*zê†¡ÝØvß óÏÆñ"¾¿w(&ón‘pY\¸Pþ ¬¢W‚É’;ÖþÙ0´dàX€}Dô2Þõ/¯-M悪áá)â¿°ì#»w5ëžÆ»ôÙYÚ®°3•ñ-û{¡”¢ÁWæ›É)‰bB¶Øi¨×!8¯ãN˳øîÁ®·¸Wóq‹ßÊQþ0=ß^ub9;XÆrò%gÎÊj½5âFƒ"­‘%™¥æš#ž7x=½ÜZƒÒ]jÊ2§üQõåbí,ã7½-úL¼ô@®_6µ4t¥áÉ×,êÂgåÎú ˜C½Âq¿oí‹^©qñB¶Ð1zUP²¿»›¹ù›GO‚².½äôœûºñ7Á¼Àr½Ùõ›ŸbŽÞiV˜¤öŒi*qJÜäúöÙûì>åYÊਛŢ¡ÿXYk endstream endobj 332 0 obj << /Author(Vincent Carey, Michael Lawrence, Martin Morgan` `\045%%`\043`\04612\137`\137\137~~~\1 Introduction)/Title(Introduction to BiocParallel)/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.14)/Keywords() /CreationDate (D:20151014223337-04'00') /ModDate (D:20151014223337-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) kpathsea version 6.1.1) >> endobj 262 0 obj << /Type /ObjStm /N 98 /First 897 /Length 4272 /Filter /FlateDecode >> stream xÚí[ûsÓÈ–þ=…~„Ý­~woQ·* 0d`€K`xµå8‚xqìŒ-sÿúûÓ’,ÉrÀdîݚݩ"ív?Îã;>-dåd–gʆ̘L¹Ieñé2cØéÌæ*S>Ï\ȳà3¯Leæ±R9Ÿ)1‹¡Ü(¯2™G‡ 2‘VØLZ"äe&=Sr™Œ96`&,ñH3øÂÌ}$yt¦ÀQE­T™6šFT¦…i"æƒÉŒ–àlf<$QÁeÖ+Hk$P! ãi{Ìœ–ÁNçrPc œŠªibè2ïuBr,& ‚w ¢ÁÊ€ŽÉB€ö:wÃåè„,j’NæYtRh©²ÖH€‘ç†æ {ît„ÂÐ>'‘¤AÓ€ÇàOJ Ð ÁØ¡Gt%¬#ñ³Æ£ç´?†f=a {I"ÑÃ^•C~ ŽRICc˜UdSå±WiZg%Yšô„ÄR9 Љ2,!)õ`[¨A`ÙHD"ŠŠDÍá?°ÔÁ`è°{ £ ¹„Ö¹Ïȳ´äÚxuàh±AK‹¡Pfi±6†{«É'¡>ä"UuÄJÅ&M äÌKØAOx&”0I{˜ƒ&A‡ÖZ Ÿ!Tl mуËiÞ4õÈ>¢•"¤4œ@fÐÿ@k ¡Vd!iÙH6†ÅáŽÆÀËIO{ÁÃ)‹1h Ó‘/iI=kîÞ=÷²w4gÏ3ñúÍÛÌÚ‘ƒ‘¼ £ÜçëÙìýÁßþÆk,æev÷n&À7É}x×mØ3ª/Éèô»Ä³åbrZ”Ù»L<»÷ /НeÖ|ñûU‰ñÇâ@ƒx1/Wˆ\ç@Z|ÍÞåpÀÖGõþ@ü´\¬¯X´SðXŽç««ñ²˜O~ÏÄIV.×àrŒ™{Åçé¤xþÓ‹F+Jv=¦}8Ÿ/Àþ§ ’ŸR}öÄåuâh±¾•X³b¼*x…¸(/gâ=è8žÍŠÙˆFnCÖá<Òð2•ËB632‘¯)©GJº½5ùòåËhz¹*Ç%ë±*Wâú\/‹ÿ¾_ËU_bòSòwùéÖZÇkáX£Éç{Ö’áìÍÜ_$'ϛĂ·[±àõ¿3ES,˜ê3©M§ê_±QkâÈipÐx?±˜#sÕ…02Úü‰4ÁÉ7ò‘Z£<¾›?¡&ˆœ‘D™`tŽOI§ãH¢~0ð¶\Åÿ5M(ßxóýy¬³6å&@ úG’Ó&õ2Š®I[Ž«ÄêKàÒíÛ9ìÅ ú÷¯öÏݾ‡%Q]þõ÷/ù#tq©óȯáhq}ËS3gMZ­óAóX‰+/äq¹Õ›×ò¥ýX3‹=×nO¦Â ™D)õakcθYÚ©"™š©Âg4™¤-†‰#z +e6½¶Z× (dÄÛ}ͪ áqe‰=›±2þŒ&¿âíÕ©ÕNAE艎&Љ|ÊUÊpt^N†Ôä&Šý϶ì[ª #jqñ‡n) ’>©p2âZÅŽd2ÜùÉ|<›ðT-:.²Û2`ð îš"ÑJ}Cî_Ejȹåaº1ÅØ–³+ŽtÖfÓkée˜’å« Õ×)üU,bú†é¥7;7«S«Y3²,æ$û ïç¾ãqîÿuˆý_:0Ù®–=7µÉ:VmÛ†"/yp•–ÙCÛg­ì=ÑoFͧ¼‚£~Ó£j½Ž<;«›ˆðíHÿ+[ü²EÝj“¨Àç שµ8økŸ¤Ò,E%¡Í¿û¯ÚÝ¢‘¨ÚägÉÎÉ¿ÚmNEJÒÓ±FUå”fy\뼡ãE…etcª“xMÕ¶¨¥~‡ïM}™W.°Å¥Ã‡* ä¨û]å8t¤Éôø²ªWÒŽ4ªRpç|”så–:ílV§V§0P†É ;:ÏRøµ+/8:ê"J!tøã“gi®•¨—ú›´D…iJÉðIšAYaªÖY†7p*{"×TqJ')­Y±´(hvrÈf#º¬âBÛð¯IAîÐúºì¨H¢pçò:…"8G+ ¨”¤;ʤJþM¯ÒÄ8.¹á˜Ñ–h¶ú*Rm—v¤q¥©òS–‚ñ\Àñˆ÷¬cÚÛZŸZ­I_zÚ„>JµzÖª:³DûÜRÆå˜C¨þ$‹Ã_ cêxfo¢ÊÔ*ìœå Èi$ 4BµÆEâm#É”ú.çêY±Å '8.¢Ôsæ~j­§D´H>O¸wúð‚º5–î%&PXZ=¨ìL;Ò¨ØÁ°ÀÓW#ÞXŽ$Ýp¨úÜjÜyسÿjŽDJw>­SLjò•ÍCz(v¯XM–Ó«r±LÉžŒ/1óêèÑý‡‡ÿyüËÉ‹2ÇÌlüq•™´äˆŸªK™Ý¡ÿ{uˆFúŽÃÕ„ž’#cˆãñÕÃbúñ¢úJ\hî$?'åx6Î?ΊìŽÕÓ²¸üTÄëj—ÑDäb¼¤§i·Ä¡8÷Åñ“8?‹ÇâñD<§â…x)ÆâLLÄd1[ÌŹ(ÄñQ\ˆ‹ß¯.й˜ŠÿŸÄL\й˜¯/ÏŠåjúq.âJðcÿYñ¡L½%ñWÅrº8¿‰ßÖ‹²HcK±«Ùxu!JQ^,‹B”_b->‹/â«øývBåÁÚ¨ÈÏý»ÏewÃ|úòñ¯Çoóéé”ï8‚ >F66¶`ަ3}m`–ô­ s^ƒìC dcú ‹{ÐêGØOÅ3ñ÷ò_Å+ñÀW„ÑêSË“Ååå˜íÀˆôo*øßgXi&>,Ö˶šÎ Xiö»,u~6ãõ—´†¿mÆ[æ,.§IÞUñ¬WӯיXüCü£X.º–ÖûXúÕé‹ãg‡ÉÒj‡¥Yš*í@ôÍ-ívZú6&»>…%ǃÆK6ª 4­¬RdÙЕ ×j &»W@¥ïñ–ËßÉtZNgçŦæ“ôl<ù”NƳñr‡³£û©(›aôÓD¿;_Ìf ÒÔÓ¿­Ç3Q|ÌÆ—½Óçã²CŠí‚zV¬V›ªºs ºþp"DëL{5[¯¸Ú.Vü H]i§ÎjJXïU[¯ççc²X×”ÙZî•Æ_¾}ýì89ÕŽ2›¯­t©7ôŸ 7w*»Ó©Nø Kåã «®¦;Rzó*Nƃ`q4^üBËö=½ƒLF/Qó k¦ËUI’eò>W_¤µWÓóòbÅ/wïÍ¿í³7}ö„j‹½Þ°?¢~ïVÕgïúì©Ö>„оw[é³}ö^·ÙÓžš}Ì÷gß»Rt¹Ó»ñ}廦Ï[ÊËý¹o×ì}¶| ‚–ª%€ûßïÕµ}þfôþü·JÆ>ÿ-ïs®c~Óâÿ±×/êúì·¼OvÔÏÛ±÷Þ×+¶zÜå–÷µ]¿ÍZíϺWõY«ïeí÷gݯZú¼·^'ä•k±7û³ïŸo}öîú#hÒý@£׫Wô~õšÄæ½gúÑ Ó}4=_eïÒÝž~$‘>}z3R&<3™|2‡÷?ÂBåÕo ÒñO¯ §OU½g­eõé¾ÅÃîäa*Ú¶þŒÕ;ܯônéu´)ì1úÕN4OŸé­ÒÞæ§ër†lUY(«¼… ”Õ‡U¢¬L³sŠ"1‹õ›çY}¦6JUqþlY|Îb7šÒVÝlͯÙZ€â ½²Ý6*GN•­‡éÓ¦3 OuÐÕ¡Sïd2~h§¬wúÐÙéU{ç€ì¾Ï›Á,m/ ¦ z>ß-­ËÛdÚI '¹âP¹ËÊ5».À5õÄÊl éHÜÉr¹0°³Ô†Ýê™¶oøv~­ÅIêU†Õ³ lצí>vÀî¶±Íw²\vÀî¦Ô¸Aõ0íê– idÝ5™v£®‰Ùñ±ö±Ü(œÃ´yáxé2k,¥»–Rm^zݯÍ5;ÛRšHÐt>H†w  +¨®d;n;‡W##c:a£{Ô+¨®j‚L] h¤HeÜÉ©€“ ¤Ò j”vvl]I4Ræ¿’ ÒòÚŒÝ6X'çÈvÎQ ô½Ã¡I×¥ô#9Ÿ¸ÃD’ã·÷Ñm§æ­{‹ÉÓr¼,oÓ¯Iùä¼õðÃbQÎe1’·S*n]áÜ¥™¼¹ȱDu–Цäªõˆ¢‘ª§—ӲǺY÷¾/_šÐ$‡m“4·é=œöˆ½Mÿ³ßq·ù×Ù­›e½d2åî¶d ÓzѰXX }hQƒP2ÒÕd’©\¨H¤¼-I”·i Èa‰Â"Ù¢¢¾*ø‡BÿÁ&« ­zÆz#ÂwGH;Ù‚~‰Ò–hàÜZµ%]=]Qter]ŨNÇÿ”>}êêÓ\—+¯µmÅ)ÉüãûoHú*Æ´ ß/]®ÊØ ÕÀÖãq9ž->¤ûÝæªXߨZ‡ÛRoj Å/‹óB¼\›ëÝÓ«bž~*™Åæàû'dñÿ endstream endobj 333 0 obj << /Type /XRef /Index [0 334] /Size 334 /W [1 3 1] /Root 331 0 R /Info 332 0 R /ID [<5D2842749AEE3C87BD821FD7367D5E04> <5D2842749AEE3C87BD821FD7367D5E04>] /Length 780 /Filter /FlateDecode >> stream xÚ%•9O”Q†ïù€aöaßeØÙDEdß—NcL¬¬LL´3–Ö'ÆÊJ ÿ€‰±1Ñ?a¢ÑÄ(Ïkóä¼ïý¾™{ÏyçN!üBˆ‚…ø¯@µqVÇÖ© Dgð ¼5dÈÄ;‡·ŠÌ1¼"¼d6ÈÁ+Æ»…Ìyx5xËÈ|P€×ˆ·„,çðÚð‘E /‰wYâxíx ÈRP†×wY*ð:ñæ‘•  ï<Þud5Hà â]CÖ€Z¼¼«È:P7‹7‡lxóxWM o oÙZñ–ñfm ‰·‰wÙ:ðŽñ.!;¶ÓÈ.ÐÌSÈЋÔ<&‘)ÐúÁРÁ#`\cà"@Ÿ§/Ò´5íY‡Ñ)u|õE S'Õbõ^CÑ´4FÍ\aPJvÀ.Øû`ÓB(R:¸5Ž¥€ Ý¯Sõµd輋TC t¶pŽÀ1HƒpJïùJ×Ï`›ŠÜG[²¿j!â£-<½+Iä]‘'è® oW¼õû ±že¡ö»Þ è®°QWD ¦+˜ÄÑɳ+q ÉŸzMUþH˜×YHÝÖB"NÌ\U³…á„V•º^@œ¾8Qq¦ïݦ_ë9²áj"Ówá4̇-ÌÿÐ#ĉ…“³°üI ¤Ä‰…'>ia=C«¤ÄÉ‹“'N|ÎÂ~¿!%N,œ0ø‚…ô©¸œ+ȹ›œ¸†²báÎ{=²¶Ø¸¶F|œ!;Cv"åÌ×w,<èÒ ÞI˜Ÿò“ö žp!Æ‚EᄄÊù è:Ì‘…çz$ ‚< [/׋”VuYŽ‚¥  ”ƒ P ª@5H]–µàlÒ/ïëóê-||¬ªÁ,·YU£Ù`«ª&³Õ{ªšÍþ?B‹Ù›gªZ;EªÚÌþä©JZ”H«j·häXU‡E«Sª:-zõY•nŸq0ô_¡KKmß;`ì}pÁЕ–¶èmÅY‹?üÿ…9 6 endstream endobj startxref 182778 %%EOF BiocParallel/inst/snow/0000755000175100017510000000000012607264437016101 5ustar00biocbuildbiocbuildBiocParallel/inst/snow/RMPInode.R0000755000175100017510000000132112607264437017641 0ustar00biocbuildbiocbuildlocal({ snowlib <- Sys.getenv("R_SNOW_LIB") outfile <- Sys.getenv("R_SNOW_OUTFILE") args <- commandArgs() pos <- match("--args", args) args <- args[-(1 : pos)] for (a in args) { pos <- regexpr("=", a) name <- substr(a, 1, pos - 1) value <- substr(a,pos + 1, nchar(a)) switch(name, SNOWLIB = snowlib <- value, OUT = outfile <- value) } if (! (snowlib %in% .libPaths())) .libPaths(c(snowlib, .libPaths())) library(methods) ## because Rscript as of R 2.7.0 doesn't load methods library(Rmpi) library(snow) #sinkWorkerOutput(outfile) cat("starting MPI worker\n") BiocParallel::bprunMPIslave() }) BiocParallel/inst/snow/RSOCKnode.R0000644000175100017510000000174312607264437017760 0ustar00biocbuildbiocbuildlocal({ master <- "localhost" port <- "" snowlib <- Sys.getenv("R_SNOW_LIB") outfile <- Sys.getenv("R_SNOW_OUTFILE") ##**** defaults to ""; document args <- commandArgs() pos <- match("--args", args) args <- args[-(1 : pos)] for (a in args) { pos <- regexpr("=", a) name <- substr(a, 1, pos - 1) value <- substr(a,pos + 1, nchar(a)) switch(name, MASTER = master <- value, PORT = port <- value, SNOWLIB = snowlib <- value, OUT = outfile <- value) } if (! (snowlib %in% .libPaths())) .libPaths(c(snowlib, .libPaths())) library(methods) ## because Rscript as of R 2.7.0 doesn't load methods library(snow) if (port == "") port <- getClusterOption("port") #sinkWorkerOutput(outfile) ## use 'logdir' instead cat("starting worker for", paste(master, port, sep = ":"), "\n") BiocParallel::bpslaveLoop(makeSOCKmaster(master, port)) }) BiocParallel/inst/unitTests/0000755000175100017510000000000012607264442017111 5ustar00biocbuildbiocbuildBiocParallel/inst/unitTests/test_BatchJobsParam.R0000644000175100017510000000067312607264437023125 0ustar00biocbuildbiocbuildtest_BatchJobsParam <- function() { param <- BatchJobsParam(progressbar=FALSE, cleanup=TRUE) f <- function(x) if (x == 0) stop(x) else x checkEquals(bplapply(1:3, f, BPPARAM=param), as.list(1:3)) param <- BatchJobsParam(progressbar=FALSE, catch.errors=TRUE) res <- bplapply(0:3, f, BPPARAM=param) checkTrue(inherits(res[[1]], "condition")) checkEquals(bplapply(0:3, identity, BPPARAM=param), as.list(0:3)) } BiocParallel/inst/unitTests/test_SnowParam.R0000644000175100017510000000557512607264437022222 0ustar00biocbuildbiocbuildtest_SnowParam_construction <- function() { checkException(SnowParam(logdir = tempdir())) p <- MulticoreParam(jobname = 'test') checkIdentical(bpjobname(p), 'test') } test_SnowParam_SOCK <- function() { if (!suppressWarnings(require(snow))) ## quietly succeed if 'snow' not available return() param <- SnowParam(2, "SOCK", tasks=2) checkIdentical(FALSE, bpisup(param)) exp <- bplapply(1:2, function(i) Sys.getpid(), BPPARAM=param) checkIdentical(2L, length(unique(unlist(exp)))) checkIdentical(FALSE, bpisup(param)) } test_SnowParam_MPI <- function() { if (.Platform$OS.type == "windows") return() param <- SnowParam(2, "MPI", tasks=2) checkIdentical(FALSE, bpisup(param)) exp <- bplapply(1:2, function(i) mpi.comm.rank(), BPPARAM=param) checkIdentical(c(1L, 2L), sort(unlist(exp))) checkIdentical(FALSE, bpisup(param)) } test_SnowParam_coerce_from_SOCK <- function() { if (!suppressWarnings(require(snow))) ## quietly succeed if 'snow' not available return(TRUE) cl <- parallel::makeCluster(2L, "SOCK") p <- as(cl, "SnowParam") checkTrue(validObject(p)) obs <- tryCatch(bpstart(p), error=conditionMessage) exp <- "'bpstart' not available; instance from outside BiocParallel?" checkIdentical(exp, obs) obs <- tryCatch(bpstop(p), error=conditionMessage) exp <- "'bpstop' not available; instance from outside BiocParallel?" checkIdentical(exp, obs) exp <- bplapply(1:2, function(i) Sys.getpid(), BPPARAM=p) checkIdentical(2L, length(unique(unlist(exp)))) checkIdentical(TRUE, bpisup(p)) parallel::stopCluster(cl) } test_SnowParam_coerce_from_MPI <- function() { if (.Platform$OS.type == "windows") return() if (!(suppressWarnings(require(snow)) || suppressWarnings(require(Rmpi)))) ## quietly succeed if 'snow', 'Rmpi' not available return() cl <- parallel::makeCluster(2L, "MPI") p <- as(cl, "SnowParam") checkTrue(validObject(p)) obs <- tryCatch(bpstart(p), error=conditionMessage) exp <- "'bpstart' not available; instance from outside BiocParallel?" checkIdentical(exp, obs) obs <- tryCatch(bpstop(p), error=conditionMessage) exp <- "'bpstop' not available; instance from outside BiocParallel?" checkIdentical(exp, obs) exp <- bplapply(1:2, function(i) mpi.comm.rank(), BPPARAM=p) checkIdentical(c(1L, 2L), sort(unlist(exp))) checkIdentical(TRUE, bpisup(p)) parallel::stopCluster(cl) } test_SnowParam_workers <- function() { if (.Platform$OS.type == "windows") return() if (!(suppressWarnings(require(snow)) || suppressWarnings(require(Rmpi)))) ## quietly succeed if 'snow', 'Rmpi' not available return() checkException(SnowParam("host", "MPI"), silent=TRUE) checkException(SnowParam("host", "FORK"), silent=TRUE) } BiocParallel/inst/unitTests/test_bpaggregate.R0000644000175100017510000000106412607264442022544 0ustar00biocbuildbiocbuildtest_bpaggregate <- function() { x <- data.frame(a=1:10, b=10:1) by <- list(c(rep("a", 5), rep("b", 5))) simplify <- TRUE FUN <- mean x1 <- aggregate(x, by=by, FUN=FUN) param <- bpparam() bpworkers(param) <- 2 x2 <- bpaggregate(x, by=by, FUN=FUN, BPPARAM=param, simplify=simplify) checkEquals(x1, x2) by[[2]] <- c(rep("c", 8), rep("d", 2)) x1 <- aggregate(x, by=by, FUN=FUN) x2 <- bpaggregate(x, by=by, FUN=FUN, BPPARAM=param, simplify=simplify) checkEquals(x1, x2) closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_bpiterate.R0000644000175100017510000000672012607264437022263 0ustar00biocbuildbiocbuildlibrary(doParallel) quiet <- suppressWarnings .lazyCount <- function(count) { count <- count i <- 0L function() { if (i >= count) return(NULL) else i <<- i + 1L i } } test_bpiterate_Params <- function() { ## chunks greater than number of workers x <- 1:5 expected <- lapply(x, sqrt) FUN <- function(count, ...) sqrt(count) params <- list(serial=SerialParam(), snow=SnowParam(2)) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) for (p in params) { ITER <- .lazyCount(length(x)) quiet(res <- bpiterate(ITER, FUN, BPPARAM=p)) checkIdentical(expected, res) } ## chunks less than number of workers x <- 1:2 expected <- lapply(x, sqrt) FUN <- function(count, ...) sqrt(count) params <- list(serial=SerialParam(), snow=SnowParam(3)) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(3) for (p in params) { ITER <- .lazyCount(length(x)) quiet(res <- bpiterate(ITER, FUN, BPPARAM=p)) checkIdentical(expected, res) } registerDoParallel(2) params <- list(dopar=DoparParam(), batchjobs=BatchJobsParam()) for (p in params) { ITER <- .lazyCount(length(x)) checkException(bpiterate(ITER, FUN, BPPARAM=p), silent=TRUE) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } test_bpiterate_REDUCE <- function() { ncount <- 3L params <- list(snow=SnowParam(ncount)) ## On Windows MulticoreParam dispatches to SerialParam where ## 'reduce.in.order' does not apply (always TRUE) if (.Platform$OS.type != "windows") params <- c(params, multi=MulticoreParam(ncount)) for (p in params) { ## no REDUCE FUN <- function(count, ...) rep(count, 10) ITER <- .lazyCount(ncount) res <- bpiterate(ITER, FUN, BPPARAM=p) checkTrue(length(res) == ncount) expected <- list(rep(1L, 10), rep(2L, 10), rep(3L, 10)) checkIdentical(expected, res) ## REDUCE FUN <- function(count, ...) rep(count, 10) ITER <- .lazyCount(ncount) res <- bpiterate(ITER, FUN, BPPARAM=p, REDUCE=`+`) checkTrue(length(res) == 1L) expected <- list(rep(6L, 10)) checkIdentical(expected, res) FUN <- function(count, ...) { Sys.sleep(3 - count) count } ## 'reduce.in.order' FALSE ITER <- .lazyCount(ncount) res <- bpiterate(ITER, FUN, BPPARAM=p, REDUCE=paste0, reduce.in.order=FALSE) checkIdentical(unlist(res, use.names=FALSE), "321") ITER <- .lazyCount(ncount) res <- quiet(bpiterate(ITER, FUN, BPPARAM=p, REDUCE=paste0, init=0, reduce.in.order=FALSE)) checkIdentical(unlist(res, use.names=FALSE), "0321") ## 'reduce.in.order' TRUE ITER <- .lazyCount(ncount) res <- bpiterate(ITER, FUN, BPPARAM=p, REDUCE=paste0, reduce.in.order=TRUE) checkIdentical(unlist(res, use.names=FALSE), "123") ITER <- .lazyCount(ncount) res <- bpiterate(ITER, FUN, BPPARAM=p, REDUCE=paste0, init=0, reduce.in.order=TRUE) checkIdentical(unlist(res, use.names=FALSE), "0123") } ## clean up closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_bplapply.R0000644000175100017510000000350412607264437022124 0ustar00biocbuildbiocbuildlibrary(doParallel) quiet <- suppressWarnings test_bplapply_Params <- function() { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), dopar=DoparParam(), batchjobs=BatchJobsParam()) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) x <- 1:10 expected <- lapply(x, sqrt) for (param in names(params)) { current <- quiet(bplapply(x, sqrt, BPPARAM=params[[param]])) checkIdentical(expected, current) } # test empty input for (param in names(params)) { current <- quiet(bplapply(list(), identity, BPPARAM=params[[param]])) checkIdentical(list(), current) } # unnamed args for BatchJobs -> dispatches to batchMap f <- function(i, x, y, ...) { list(y, i, x) } current <- bplapply(2:1, f, c("A", "B"), x=10, BPPARAM=BatchJobsParam()) checkTrue(all.equal(current[[1]], list(c("A", "B"), 2, 10))) checkTrue(all.equal(current[[2]], list(c("A", "B"), 1, 10))) ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } test_bplapply_symbols <- function() { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), dopar=DoparParam()) # batchjobs=BatchJobsParam()) ## FIXME if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) x <- list(as.symbol(".XYZ")) expected <- lapply(x, as.character) for (param in names(params)) { current <- quiet(bplapply(x, as.character, BPPARAM=params[[param]])) checkIdentical(expected, current) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_bpmapply.R0000644000175100017510000000561012607264437022125 0ustar00biocbuildbiocbuildlibrary(doParallel) quiet <- suppressWarnings test_bpmapply_Params <- function() { if (.Platform$OS.type != "windows") { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), dopar=DoparParam(), batchjobs=BatchJobsParam(progressbar=FALSE), mc <- MulticoreParam(2)) x <- 1:10 y <- rev(x) f <- function(x, y) x + y expected <- x + y for (param in params) { current <- quiet(bpmapply(f, x, y, BPPARAM=param)) checkIdentical(expected, current) closeAllConnections() } # test names and simplify x <- setNames(1:5, letters[1:5]) for (param in params) { for (catch.errors in c(FALSE, TRUE)) { bpcatchErrors(param) <- catch.errors for (SIMPLIFY in c(FALSE, TRUE)) { for (USE.NAMES in c(FALSE, TRUE)) { expected <- mapply(identity, x, USE.NAMES=USE.NAMES, SIMPLIFY=SIMPLIFY) current <- quiet(bpmapply(identity, x, USE.NAMES=USE.NAMES, SIMPLIFY=SIMPLIFY, BPPARAM=param)) checkIdentical(expected, current) closeAllConnections() } } } } # test MoreArgs x <- setNames(1:5, letters[1:5]) f <- function(x, m) { x + m } expected <- mapply(f, x, MoreArgs=list(m=1)) for (param in params) { current <- quiet(bpmapply(f, x, MoreArgs=list(m=1), BPPARAM=param)) checkIdentical(expected, current) closeAllConnections() } # test empty input for (param in params) { current <- quiet(bpmapply(identity, BPPARAM=param)) checkIdentical(list(), current) closeAllConnections() } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } else TRUE } test_bpmapply_symbols <- function() { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), dopar=DoparParam()) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) x <- list(as.symbol(".XYZ")) expected <- mapply(as.character, x) for (param in names(params)) { current <- bpmapply(as.character, x, BPPARAM=params[[param]]) checkIdentical(expected, current) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_bpvalidate.R0000644000175100017510000000150712607264437022415 0ustar00biocbuildbiocbuildlibrary(Rsamtools) test_bpvalidate_library <- function() { fun <- function(fl, ...) { countBam(fl) } res <- suppressMessages(bpvalidate(fun)) checkIdentical(names(res$inPath), "countBam") checkIdentical(res$unknown, character()) } test_bpvalidate_args <- function() { param <- ScanBamParam(flag=scanBamFlag(isMinusStrand=FALSE)) fun <- function(fl, ...) { library(Rsamtools) countBam(fl, param=param) } res <- bpvalidate(fun) checkIdentical(unname(res$inPath), list()) checkIdentical(res$unknown, "param") ## no .GlobalEnv; param -> unknown fun <- function(fl, ..., param) { library(Rsamtools) countBam(fl, param=param) } res <- bpvalidate(fun) checkIdentical(unname(res$inPath), list()) checkIdentical(res$unknown, character()) } BiocParallel/inst/unitTests/test_bpvec.R0000644000175100017510000000201512607264437021374 0ustar00biocbuildbiocbuildlibrary(doParallel) test_bpvec_Params <- function() { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), batchjobs=BatchJobsParam(workers=2), dopar=DoparParam()) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) x <- rev(1:10) expected <- sqrt(x) for (param in names(params)) { current <- bpvec(x, sqrt, BPPARAM=params[[param]]) checkIdentical(current, expected) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } test_bpvec_MulticoreParam_short_jobs <- function() { ## bpvec should return min(length(X), bpworkers()) if (.Platform$OS.type == "windows") return(TRUE) exp <- 1:2 obs <- bpvec(exp, c, AGGREGATE=list, BPPARAM=MulticoreParam(workers=4L)) checkIdentical(2L, length(obs)) checkIdentical(exp, unlist(obs)) ## clean up closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_bpvectorize.R0000644000175100017510000000121112607264437022626 0ustar00biocbuildbiocbuildlibrary(doParallel) test_bpvectorize_Params <- function() { registerDoParallel(2) params <- list(serial=SerialParam(), snow=SnowParam(2), batchjobs=BatchJobsParam(workers=2), dopar=DoparParam()) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2) x <- 1:10 expected <- sqrt(x) for (param in names(params)) { psqrt <- bpvectorize(sqrt, BPPARAM=params[[param]]) checkIdentical(expected, psqrt(x)) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_errorhandling.R0000644000175100017510000000663012607264442023136 0ustar00biocbuildbiocbuild## NOTE: On Windows, MulticoreParam() throws a warning and instantiates ## a single FORK worker using scripts from parallel. No logging or ## error catching is implemented. library(doParallel) checkExceptionText <- function(expr, txt, negate=FALSE, msg="") { x <- try(eval(expr), silent=TRUE) checkTrue(inherits(x, "condition"), msg=msg) checkTrue(xor(negate, grepl(txt, as.character(x), fixed=TRUE)), msg=msg) } test_catching_errors <- function() { if (.Platform$OS.type != "windows") { x <- 1:10 y <- rev(x) f <- function(x, y) if (x > y) stop("whooops") else x + y registerDoParallel(2) params <- list( serial=SerialParam(catch.errors=TRUE), snow=SnowParam(2), dopar=DoparParam(), batchjobs=BatchJobsParam(progressbar=FALSE), mc <- MulticoreParam(2)) for (param in params) { res <- bplapply(list(1, "2", 3), sqrt, BPPARAM=param) checkTrue(length(res) == 3L) msg <- "non-numeric argument to mathematical function" checkIdentical(conditionMessage(res[[2]]), msg) closeAllConnections() } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } else TRUE } test_BPREDO <- function() { if (.Platform$OS.type != "windows") { f = sqrt x = list(1, "2", 3) x.fix = list(1, 2, 3) registerDoParallel(2) params <- list( serial=SerialParam(catch.errors=TRUE), snow=SnowParam(2), dopar=DoparParam(), batchjobs=BatchJobsParam(progressbar=FALSE), mc <- MulticoreParam(2)) for (param in params) { res <- bpmapply(f, x, BPPARAM=param, SIMPLIFY=TRUE) checkTrue(inherits(res[[2]], "condition")) closeAllConnections() Sys.sleep(0.25) ## data not fixed res2 <- bpmapply(f, x, BPPARAM=param, BPREDO=res, SIMPLIFY=TRUE) checkTrue(inherits(res2[[2]], "condition")) closeAllConnections() Sys.sleep(0.25) ## data fixed res3 <- bpmapply(f, x.fix, BPPARAM=param, BPREDO=res, SIMPLIFY=TRUE) checkIdentical(res3, sqrt(1:3)) closeAllConnections() Sys.sleep(0.25) } ## clean up env <- foreach:::.foreachGlobals rm(list=ls(name=env), pos=env) closeAllConnections() TRUE } else TRUE } test_bpiterate_errors <- function() { quiet <- suppressMessages .lazyCount <- function(count) { count <- count i <- 0L function() { if (i >= count) return(NULL) else i <<- i + 1L if (i == 2) "2" else i } } FUN <- function(count, ...) { if (count == 2) stop("hit error") else count } params <- list(snow=SnowParam(2, stop.on.error=TRUE)) if (.Platform$OS.type != "windows") params$mc <- MulticoreParam(2, stop.on.error=TRUE) for (p in params) { ITER <- .lazyCount(3) quiet(res <- bpiterate(ITER, FUN, BPPARAM=p)) checkTrue(is(res[[2]], "condition")) closeAllConnections() } ## clean up closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_logging.R0000644000175100017510000000146312607264437021731 0ustar00biocbuildbiocbuild## This code tests 'log' and 'progressbar'. test_errorhandling.R ## tests 'stop.on.error' and 'catch.errors'. test_log <- function() { ## SnowParam, MulticoreParam only params <- list( snow=SnowParam(2, log=FALSE), snowLog=SnowParam(2, log=TRUE)) if (.Platform$OS.type != "windows") { params$multi=MulticoreParam(3, log=FALSE) params$multiLog=MulticoreParam(3, log=TRUE) } for (param in params) { res <- bplapply(list(1, "2", 3), sqrt, BPPARAM=param) checkTrue(length(res) == 3L) msg <- "non-numeric argument to mathematical function" checkIdentical(conditionMessage(res[[2]]), msg) checkTrue(length(attr(res[[2]], "traceback")) > 0L) closeAllConnections() } ## clean up closeAllConnections() TRUE } BiocParallel/inst/unitTests/test_refclass.R0000644000175100017510000000040612607264442022075 0ustar00biocbuildbiocbuildtest_SnowParam_refclass <- function() { p <- SnowParam(2) p2 <- p checkTrue(!bpisup(p)) checkTrue(!bpisup(p2)) bpstart(p) checkTrue(bpisup(p)) checkTrue(bpisup(p2)) bpstop(p) checkTrue(!bpisup(p)) checkTrue(!bpisup(p2)) } BiocParallel/inst/unitTests/test_utilities.R0000644000175100017510000000060512607264437022313 0ustar00biocbuildbiocbuildtest_splitIndicies <- function() { .splitIndices <- BiocParallel:::.splitIndices checkIdentical(integer(), .splitIndices(0, 0)) checkIdentical(integer(), .splitIndices(0, 1)) checkIdentical(integer(), .splitIndices(0, 2)) checkIdentical(1:4, .splitIndices(4, 0)) checkIdentical(1:4, .splitIndices(4, 1)) checkIdentical(list(1:4, 5:7), .splitIndices(7, 2)) } BiocParallel/man/0000755000175100017510000000000012607264442014705 5ustar00biocbuildbiocbuildBiocParallel/man/BatchJobsParam-class.Rd0000644000175100017510000001162312607264437021126 0ustar00biocbuildbiocbuild\name{BatchJobsParam-class} \Rdversion{1.1} \docType{class} \alias{BatchJobsParam-class} \alias{BatchJobsParam} \alias{bpbackend,BatchJobsParam-method} \alias{bpbackend<-,BatchJobsParam} \alias{bpisup,BatchJobsParam-method} \alias{bpstart,BatchJobsParam-method} \alias{bpstop,BatchJobsParam-method} \alias{bpworkers,BatchJobsParam-method} \alias{bpschedule,BatchJobsParam-method} \alias{show,BatchJobsParam-method} \title{Enable parallelization on batch systems} \description{ This class is used to parameterize scheduler options on managed high-performance computing clusters. } \usage{ BatchJobsParam(workers, catch.errors = TRUE, cleanup = TRUE, work.dir = getwd(), stop.on.error = FALSE, seed = NULL, resources = NULL, conffile = NULL, cluster.functions = NULL, progressbar = TRUE, jobname = "BPJOB", ...) } \arguments{ \item{workers}{\code{integer(1)}} Number of workers to divide tasks (e.g., elements in the first argument of \code{bplapply}) between. On Multicore and SSH backends, this defaults to all available nodes. On managed (e.g., slurm, SGE) clusters \code{workers} defaults to \code{NA}, meaning that the number of workers equals the number of tasks. See argument \code{n.chunks} in \code{\link[BBmisc]{chunk}} and \code{\link[BatchJobs]{submitJobs}} for more information. \item{catch.errors}{\code{logical(1)}} Flag to determine in apply-like functions (see e.g. \code{\link{bplapply}}) whether to quit with an error as soon as one application fails or encapsulation of function calls in \code{\link[base]{try}} blocks which triggers a resume mechanism (see \link{bpresume}). Defaults to \code{TRUE}. \item{cleanup}{\code{logical(1)}} BatchJobs creates temporary directories in the \code{work.dir}. If \code{cleanup} is set to \code{TRUE} (default), the directories are removed from the file systems automatically. Set this to \code{FALSE} whenever it might become necessary to utilize any special functionality provided by BatchJobs. To retrieve the registry, call \code{\link[BatchJobs]{loadRegistry}} on the temporary directory. \item{work.dir}{\code{character(1)}} Directory to store temporary files. Note that this must be shared across computational nodes if you use a distributed computing backend. Default ist the current working directory of \code{R}, see \code{\link[base]{getwd}}. \item{stop.on.error}{\code{logical(1)}} Stop all jobs as soon as one jobs fails (\code{stop.on.error == TRUE}) or wait for all jobs to terminate. Default is \code{FALSE}. \item{seed}{\code{integer(1L)}} Set an initial seed for the RNG. See \code{\link[BatchJobs]{makeRegistry}} for more information. Default is \code{NULL} where a random seed is chosen upon initialization. \item{resources}{\code{list()}} List of job specific resources passed to \code{\link[BatchJobs]{submitJobs}}. Default is \code{NULL} where the resources defined in the configuration are used. \item{conffile}{\code{character(1)}} URI to a custom BatchJobs configuration file used for execution. Default is \code{NULL} which relies on BatchJobs to handle configuration files. \item{cluster.functions}{ClusterFunctions} Specify a specific cluster backend using on of the constructors provided by BatchJobs, see \link[BatchJobs]{ClusterFunctions}. Default is \code{NULL} where the default cluster functions defined in the configuration are used. \item{progressbar}{\code{logical(1)}} Suppress the progress bar used in BatchJobs and be less verbose. Default is \code{FALSE}. \item{jobname}{\code{character(1)}} Job name that is prepended to the output log and result files. Default is "BPJOB". \item{\dots}{Addition arguments, currently not handled.} } \section{BatchJobsParam constructor}{ Return an object with specified values. The object may be saved to disk or reused within a session. } \section{Methods}{ The following generics are implemented and perform as documented on the corresponding help page: \code{\link{bpworkers}}, \code{\link{bpstart}}, \code{\link{bpstop}}, \code{\link{bpisup}}, \code{\link{bpbackend}}, \code{\link{bpbackend<-}} } \author{Michel Lang, \url{mailto:michellang@gmail.com}} \seealso{ \code{getClass("BiocParallelParam")} for additional parameter classes. \code{register} for registering parameter classes for use in parallel evaluation. } \examples{ p <- BatchJobsParam(progressbar=FALSE) bplapply(1:10, sqrt, BPPARAM=p) \dontrun{ ## see vignette for additional explanation funs <- makeClusterFunctionsSLURM("~/slurm.tmpl") param <- BatchJobsParam(4, cluster.functions=funs) register(param) bplapply(1:10, function(i) sqrt) } } BiocParallel/man/BiocParallel-package.Rd0000644000175100017510000000106412607264437021123 0ustar00biocbuildbiocbuild\name{BiocParallel-package} \alias{BiocParallel-package} \alias{BiocParallel} \docType{package} \title{Bioconductor facilities for parallel evaluation} \description{ This package provides modified versions and novel implementation of functions for parallel evaluation, tailored to use with Bioconductor objects. } \details{ This package uses code from the \code{\link{parallel}} package, } \author{ Author: \Sexpr{packageDescription("BiocParallel")$Author} Maintainer: \Sexpr{packageDescription("BiocParallel")$Maintainer} } \keyword{package} BiocParallel/man/BiocParallelParam-class.Rd0000644000175100017510000002067712607264437021631 0ustar00biocbuildbiocbuild\name{BiocParallelParam-class} \Rdversion{1.1} \docType{class} % Class \alias{BiocParallelParam-class} \alias{BiocParallelParam} % Control \alias{bpbackend} \alias{bpbackend<-} \alias{bpbackend,missing-method} \alias{bpbackend<-,missing,ANY-method} \alias{bpisup} \alias{bpisup,ANY-method} \alias{bpisup,missing-method} \alias{bpstart} \alias{bpstart,ANY-method} \alias{bpstart,missing-method} \alias{bpstop} \alias{bpstop,ANY-method} \alias{bpstop,missing-method} \alias{bpworkers} \alias{bpworkers<-} \alias{bpworkers,missing-method} \alias{bpworkers,BiocParallelParam-method} \alias{bptasks} \alias{bptasks,BiocParallelParam-method} \alias{bptasks<-} \alias{bptasks<-,BiocParallelParam,numeric-method} \alias{bpcatchErrors} \alias{bpcatchErrors,BiocParallelParam-method} \alias{bpcatchErrors<-} \alias{bpcatchErrors<-,BiocParallelParam,logical-method} \alias{bpstopOnError} \alias{bpstopOnError,BiocParallelParam-method} \alias{bpstopOnError<-} \alias{bpstopOnError<-,BiocParallelParam,logical-method} \alias{bpstopOnError<-,DoparParam,logical-method} \alias{bpprogressbar} \alias{bpprogressbar,BiocParallelParam-method} \alias{bpprogressbar<-} \alias{bpprogressbar<-,BiocParallelParam,logical-method} \alias{bpjobname} \alias{bpjobname,BiocParallelParam-method} \alias{bpjobname<-} \alias{bpjobname<-,BiocParallelParam,character-method} % Other methods \alias{show,BiocParallel-method} \alias{print.remote-error} \title{BiocParallelParam objects} \description{ The \code{BiocParallelParam} virtual class stores configuration parameters for parallel execution. Concrete subclasses include \code{SnowParam}, \code{MulticoreParam}, \code{BatchJobsParam}, and \code{DoparParam} and \code{SerialParam}. } \details{ \code{BiocParallelParam} is the virtual base class on which other parameter objects build. There are 5 concrete subclasses: \describe{ \item{}{\code{SnowParam}: distributed memory computing} \item{}{\code{MulticoreParam}: shared memory computing} \item{}{\code{BatchJobsParam}: scheduled cluster computing} \item{}{\code{DoparParam}: foreach computing} \item{}{\code{SerialParam}: non-parallel execution} } The parameter objects hold configuration parameters related to the method of parallel execution such as shared memory, independent memory or computing with a cluster scheduler. } \section{Construction}{ The \code{BiocParallelParam} class is virtual and has no constructor. Instances of the subclasses can be created with the following: \itemize{ \item \code{SnowParam()} \item \code{MulticoreParam()} \item \code{BatchJobsParam()} \item \code{DoparParam()} \item \code{SerialParam()} } } \section{Accessors}{ \subsection{Back-end control}{ In the code below \code{BPPARAM} is a \code{BiocParallelParam} object. \describe{ \item{}{ \code{bpworkers(x, ...)}, \code{bpworkers(x, ...)}: \code{integer(1)} or \code{character()}. Gets the number or names of the back-end workers. The setter is supported for SnowParam and MulticoreParam only. } \item{}{ \code{bptasks(x, ...)}, \code{bptasks(x) <- value}: \code{integer(1)}. Get or set the number of tasks for a job. \code{value} must be a scalar integer >= 0L. This argument applies to \code{SnowParam} and \code{MulticoreParam} only; \code{DoparParam} and \code{BatchJobsParam} have their own approach to dividing a job among workers. We define a job as a single call to a function such as \code{bplapply}, \code{bpmapply} etc. A task is the division of the \code{X} argument into chunks. When \code{tasks == 0} (default), \code{X} is divided by the number of workers. This approach distributes \code{X} in (approximately) equal chunks. A \code{tasks} value of > 0 dictates the total number of tasks. Values can range from 1 (all of \code{X} to a single worker) to the length of \code{X} (each element of \code{X} to a different worker). When the length of \code{X} is less than the number of workers each element of \code{X} is sent to a worker and \code{tasks} is ignored. Another case where the \code{tasks} value is ignored is when using the \code{bpiterate} function; the number of tasks are defined by the number of data chunks returned by the \code{ITER} function. } \item{}{ \code{bpstart(x, ...)}: \code{logical(1)}. Starts the back-end, if necessary. } \item{}{ \code{bpstop(x, ...)}: \code{logical(1)}. Stops the back-end, if necessary and possible. } \item{}{ \code{bpisup(x, ...)}: \code{logical(1)}. Tests whether the back-end is available for processing, returning a scalar logical value. \code{bp*} functions such as \code{bplapply} automatically start the back-end if necessary. } \item{}{ \code{bpbackend(x, ...)}, \code{bpbackend(x) <- value}: Gets or sets the parallel \code{bpbackend}. Not all back-ends can be retrieved; see \code{showMethods("backend")}. } \item{}{ \code{bpprogressbar(x, ...)}, \code{bpprogressbar(x) <- value}: Get or set the value to enable text progress bar. \code{value} must be a \code{logical(1)}. } \item{}{ \code{bpjobname(x, ...)}, \code{bpjobname(x) <- value}: Get or set the job name. } } } \subsection{Error Handling}{ In the code below \code{BPPARAM} is a \code{BiocParallelParam} object. \describe{ \item{}{ \code{bpcatchErrors(x, ...)}, \code{bpCatchErrors(x) <- value}: \code{logical()}. Controls if errors are caught and returned with completed results. \code{catch.errors} determines whether errors are caught and returned with other results. When \code{TRUE}, all computations are attempted and output contains both errors and successfully completed results. When \code{FALSE}, the job is terminated as soon as the first error is hit and only the error message is returned (no results); this is the default behavior of the parent packages, e.g., \code{parallel}, \code{snow}, \code{foreach}. } \item{}{ \code{bpstopOnError(x, ...)}, \code{bpstopOnError(x) <- value}: \code{logical()}. Controls if the job stops when an error is hit. \code{stop.on.error} controls whether the job stops after an error is thrown. When \code{TRUE}, the output contains all successfully completed results up to and including the error. Unlike \code{catch.errors == TRUE}, when \code{stop.on.error == TRUE} all computations stop once the error is hit. When \code{FALSE}, the job runs to completion and successful results are returned along with any error messages. } } } } \section{Methods}{ \subsection{Evaluation}{ In the code below \code{BPPARAM} is a \code{BiocParallelParam} object. Full documentation for these functions are on separate man pages: see ?\code{bpmapply}, ?\code{bplapply}, ?\code{bpvec}, ?\code{bpiterate} and ?\code{bpaggregate}. \describe{ \item{}{ \code{bpmapply(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPPARAM=bpparam())} } \item{}{ \code{bplapply(X, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpvec(X, FUN, ..., AGGREGATE=c, BPPARAM=bpparam())} } \item{}{ \code{bpiterate(ITER, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpaggregate(x, data, FUN, ..., BPPARAM=bpparam())} } } } \subsection{Other}{ In the code below \code{BPPARAM} is a \code{BiocParallelParam} object. \describe{ \item{}{ \code{show(x)} } } } } \author{Martin Morgan and Valerie Obenchain.} \seealso{ \itemize{ \item \code{\link{SnowParam}} for computing in distributed memory \item \code{\link{MulticoreParam}} for computing in shared memory \item \code{\link{BatchJobsParam}} for computing with cluster schedulers \item \code{\link{DoparParam}} for computing with foreach \item \code{\link{SerialParam}} for non-parallel execution } } \examples{ getClass("BiocParallelParam") ## For examples see ?SnowParam, ?MulticoreParam, ?BatchJobsParam ## and ?SerialParam. } \keyword{classes} \keyword{methods} BiocParallel/man/DoparParam-class.Rd0000644000175100017510000000527012607264442020331 0ustar00biocbuildbiocbuild\name{DoparParam-class} \Rdversion{1.1} \docType{class} \alias{DoparParam-class} \alias{DoparParam} \alias{coerce,SOCKcluster,DoparParam-method} \alias{bpbackend,DoparParam-method} \alias{bpbackend<-,DoparParam,SOCKcluster-method} \alias{bpisup,DoparParam-method} \alias{bpstart,DoparParam-method} \alias{bpstop,DoparParam-method} \alias{bpworkers,DoparParam-method} \alias{show,DoparParam-method} \title{Enable parallel evaluation using registered dopar backend} \description{ This class is used to dispatch parallel operations to the dopar backend registered with the foreach package. } \usage{ DoparParam(catch.errors = TRUE) } \details{ \code{DoparParam} can be used for shared or non-shared memory computing depending on what backend is loaded. The \code{doSNOW} package supports non-shared memory, \code{doParallel} supports both shared and non-shared. When not specified, the default number of workers in \code{DoparParam} is determined by \code{getDoParWorkers()}. See the \code{foreach} package vignette for details using the different backends: \url{http://cran.r-project.org/web/packages/foreach/vignettes/foreach.pdf} } \arguments{ \item{catch.errors}{\code{logical(1)}} Flag to determine in apply-like functions (see e.g. \code{\link{bplapply}}) whether to quit with an error as soon as one application fails or encapsulation of function calls in \code{\link[base]{try}} blocks which triggers a resume mechanism (see \link{bpresume}). Defaults to \code{TRUE}. } \section{DoparParam constructor}{ Return a proxy object that dispatches parallel evaluation to the registered foreach parallel backend. There are no options to the constructor. All configuration should be done through the normal interface to the foreach parallel backends. } \section{Methods}{ The following generics are implemented and perform as documented on the corresponding help page (e.g., \code{?bpisup}): \code{\link{bpworkers}}, \code{\link{bpstart}}, \code{\link{bpstop}}, \code{\link{bpisup}}, \code{\link{bpbackend}}, \code{\link{bpbackend<-}}, \code{\link{bpvec}}. } \author{Martin Morgan \url{mailto:mtmorgan@fhcrc.org}} \seealso{ \code{getClass("BiocParallelParam")} for additional parameter classes. \code{register} for registering parameter classes for use in parallel evaluation. \code{foreach-package} for the parallel backend infrastructure used by this param class. } \examples{ \dontrun{ # First register a parallel backend with foreach library(doParallel) registerDoParallel(2) p <- DoparParam() bplapply(1:10, sqrt, BPPARAM=p) bpvec(1:10, sqrt, BPPARAM=p) register(DoparParam(), default=TRUE) } } \keyword{classes} BiocParallel/man/MulticoreParam-class.Rd0000644000175100017510000004141512607264437021234 0ustar00biocbuildbiocbuild\name{MulticoreParam-class} \Rdversion{1.1} \docType{class} \alias{MulticoreParam} \alias{MulticoreParam-class} \alias{multicoreWorkers} \alias{bpisup,MulticoreParam-method} \alias{bpschedule,MulticoreParam-method} \alias{bpworkers<-,MulticoreParam,numeric-method} \alias{show,MulticoreParam-method} \title{Enable multi-core parallel evaluation} \description{ This class is used to parameterize single computer multicore parallel evaluation on non-Windows computers. \code{multicoreWorkers()} chooses the number of workers based on operating system (Windows only supports 1 core), global user preference (\code{options(mc.cores=...)}), or the minimum of 8 and the number of detected cores (\code{detectCores()}). } \usage{ ## constructor ## ------------------------------------ MulticoreParam(workers = multicoreWorkers(), tasks = 0L, catch.errors = TRUE, stop.on.error = FALSE, progressbar = FALSE, RNGseed = NULL, timeout = Inf, log = FALSE, threshold = "INFO", logdir = NA_character_, resultdir = NA_character_, jobname = "BPJOB", ...) ## detect workers ## ------------------------------------ multicoreWorkers() } \details{ \code{MulticoreParam} is used for shared memory computing. Under the hood the cluster is created with \code{makeCluster(..., type ="FORK")} from the \code{parallel} package. If not specified, the default number of workers is determined by \code{multicoreWorkers()}, which is parallel::detectCores() - 2. Machines with 3 or less cores are assigned a single worker. A FORK transport starts workers with the \code{mcfork} function and communicates between master and workers using socket connections. \code{mcfork} builds on fork() and thus a Linux cluster is not supported. Because FORK clusters are Posix based they are not supported on Windows. When \code{MulticoreParam} is created/used in Windows it defaults to \code{SerialParam} which is the equivalent of using a single worker. \describe{ \item{error handling:}{ The \code{catch.errors} field has been deprecated. By default all computations are attempted and partial results are returned with any error messages. \itemize{ \item \code{catch.errors} (DEPRECATED) determines whether errors are caught and returned with other results. When \code{TRUE}, all computations are attempted and output contains both errors and successfully completed results. When \code{FALSE}, the job is terminated as soon as the first error is hit and only the error message is returned (no results); this is the default behavior of the parent packages, e.g., \code{parallel}, \code{snow}, \code{foreach}. \item \code{stop.on.error} controls whether the job stops after an error is thrown. When \code{TRUE}, the output contains all successfully completed results up to and including the error. When \code{FALSE}, all computations are attempted and and successful results are returned along with any error messages. \item The \code{bpok(x)} function returns a \code{logical()} vector that is FALSE for any jobs that threw an error. The input \code{x} is a list output from a bp*apply function such as \code{bplapply} or \code{bpmapply}. } } \item{logging:}{ When \code{log = TRUE} the \code{futile.logger} package is loaded on the workers. All log messages written in the \code{futile.logger} format are captured by the logging mechanism and returned real-time (i.e., as each task completes) instead of after all jobs have finished. Messages sent to \emph{stdout} and \emph{stderr} are returned to the workspace by default. When \code{log = TRUE} these are diverted to the log output. Those familiar with the \code{outfile} argument to \code{makeCluster} can think of \code{log = FALSE} as equivalent to \code{outfile = NULL}; providing a \code{logdir} is the same as providing a name for \code{outfile} except that BiocParallel writes a log file for each task. The log output includes additional statistics such as memory use and task runtime. Memory use is computed by calling gc(reset=TRUE) before code evaluation and gc() (no reseet) after. The output of the second gc() call is sent to the log file. There are many ways to track memory use - this particular approach was taken because it is consistent with how the BatchJobs package reports memory on the workers. } \item{log and result files:}{ Results and logs can be written to a file instead of returned to the workspace. Writing to files is done from the master as each task completes. Options can be set with the \code{logdir} and \code{resultdir} fields in the constructor or with the accessors, \code{bplogdir} and \code{bpresultdir}. } \item{random number generation:}{ \code{MulticoreParam} and \code{SnowParam} use the random number generation support from the parallel package. These params are snow-derived clusters so the arguments for multicore-derived functions such as \code{mc.set.seed} and \code{mc.reset.stream} do not apply. Random number generation is controlled through the param argument, \code{RNGseed} which is passed to parallel::clusterSetRNGStream. \code{clusterSetRNGStream} uses the L'Ecuyer-CMRG random number generator and distributes streams to the members of a cluster. If \code{RNGseed} is not NULL it serves as the seed to the streams, otherwise the streams are set from the current seed of the master process after selecting the L'Ecuyer generator. See ?\code{clusterSetRNGStream} for more details. } } } \section{Constructor}{ \describe{ \item{}{ \code{MulticoreParam(workers = multicoreWorkers(), tasks = 0L, catch.errors = TRUE, stop.on.error = FALSE, tasks = 0L, progressbar = FALSE, RNGseed = NULL, timeout = Inf, log = FALSE, threshold = "INFO", logdir = NA_character_, resultdir = NA_character_, jobname = "BPJOB", ...)}: Return an object representing a FORK cluster. The cluster is not created until \code{bpstart} is called. Named arguments in \code{...} are passed to \code{makeCluster}. } } } \arguments{ \item{workers}{ \code{integer(1)} Number of workers. Defaults to all cores available as determined by \code{detectCores}. } \item{tasks}{ \code{integer(1)}. The number of tasks per job. \code{value} must be a scalar integer >= 0L. In this documentation a job is defined as a single call to a function, such as \code{bplapply}, \code{bpmapply} etc. A task is the division of the \code{X} argument into chunks. When \code{tasks == 0} (default), \code{X} is divided as evenly as possible over the number of workers. A \code{tasks} value of > 0 specifies the exact number of tasks. Values can range from 1 (all of \code{X} to a single worker) to the length of \code{X} (each element of \code{X} to a different worker). When the length of \code{X} is less than the number of workers each element of \code{X} is sent to a worker and \code{tasks} is ignored. } \item{catch.errors}{ DEPRECATED. \code{logical(1)} Enable the catching of errors and warnings. } \item{stop.on.error}{ \code{logical(1)} Enable stop on error. } \item{progressbar}{ \code{logical(1)} Enable progress bar (based on plyr:::progress_text). } \item{RNGseed}{ \code{integer(1)} Seed for random number generation. When not \code{NULL}, this value is passed to parallel::clusterSetRNGStream to generate random number streams on each worker. } \item{timeout}{ \code{numeric(1)} Time (in seconds) allowed for worker to complete a task. This value is passed to base::setTimeLimit() as both the \code{cpu} and \code{elapsed} arguments. If the computation exceeds \code{timeout} an error is thrown with message 'reached elapsed time limit'. } \item{log}{ \code{logical(1)} Enable logging. } \item{threshold}{ \code{character(1)} Logging threshold as defined in \code{futile.logger}. } \item{logdir}{ \code{character(1)} Log files directory. When not provided, log messages are returned to stdout. } \item{resultdir}{ \code{character(1)} Job results directory. When not provided, results are returned as an \R{} object (list) to the workspace. } \item{jobname}{ \code{character(1)} Job name that is prepended to log and result files. Default is "BPJOB". } \item{\dots}{ Additional arguments passed to \code{\link[snow]{makeCluster}} } } \section{Accessors: Logging and results}{ In the following code, \code{x} is a \code{MulticoreParam} object. \describe{ \item{}{ \code{bpprogress(x, ...)}, \code{bpprogress(x) <- value}: Get or set the value to enable text progress bar. \code{value} must be a \code{logical(1)}. } \item{}{ \code{bpjobname(x, ...)}, \code{bpjobname(x) <- value}: Get or set the job name. } \item{}{ \code{bpRNGseed(x, ...)}, \code{bpRNGseed(x) <- value}: Get or set the seed for random number generaton. \code{value} must be a \code{numeric(1)}. } \item{}{ \code{bplog(x, ...)}, \code{bplog(x) <- value}: Get or set the value to enable logging. \code{value} must be a \code{logical(1)}. } \item{}{ \code{bpthreshold(x, ...)}, \code{bpthreshold(x) <- value}: Get or set the logging threshold. \code{value} must be a \code{character(1)} string of one of the levels defined in the \code{futile.logger} package: \dQuote{TRACE}, \dQuote{DEBUG}, \dQuote{INFO}, \dQuote{WARN}, \dQuote{ERROR}, or \dQuote{FATAL}. } \item{}{ \code{bplogdir(x, ...)}, \code{bplogdir(x) <- value}: Get or set the directory for the log file. \code{value} must be a \code{character(1)} path, not a file name. The file is written out as LOGFILE.out. If no \code{logdir} is provided and \code{bplog=TRUE} log messages are sent to stdout. } \item{}{ \code{bpresultdir(x, ...)}, \code{bpresultdir(x) <- value}: Get or set the directory for the result files. \code{value} must be a \code{character(1)} path, not a file name. Separate files are written for each job with the prefix JOB (e.g., JOB1, JOB2, etc.). When no \code{resultdir} is provided the results are returned to the session as \code{list}. } } } \section{Accessors: Back-end control}{ In the code below \code{x} is a \code{MulticoreParam} object. See the ?\code{BiocParallelParam} man page for details on these accessors. \describe{ \item{}{\code{bpworkers(x, ...)}} \item{}{\code{bptasks(x, ...)}, \code{bptasks(x) <- value}} \item{}{\code{bpstart(x, ...)}} \item{}{\code{bpstop(x, ...)}} \item{}{\code{bpisup(x, ...)}} \item{}{\code{bpbackend(x, ...)}, \code{bpbackend(x) <- value}} } } \section{Accessors: Error Handling}{ In the code below \code{x} is a \code{MulticoreParam} object. See the ?\code{BiocParallelParam} man page for details on these accessors. \describe{ \item{}{\code{bpcatchErrors(x, ...)}, \code{bpcatchErrors(x) <- value}} \item{}{\code{bpstopOnError(x, ...)}, \code{bpstopOnError(x) <- value}} } } \section{Methods: Evaluation}{ In the code below \code{BPPARAM} is a \code{MulticoreParam} object. Full documentation for these functions are on separate man pages: see ?\code{bpmapply}, ?\code{bplapply}, ?\code{bpvec}, ?\code{bpiterate} and ?\code{bpaggregate}. \describe{ \item{}{ \code{bpmapply(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPPARAM=bpparam())} } \item{}{ \code{bplapply(X, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpvec(X, FUN, ..., AGGREGATE=c, BPPARAM=bpparam())} } \item{}{ \code{bpiterate(ITER, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpaggregate(x, data, FUN, ..., BPPARAM=bpparam())} } } } \section{Methods: Other}{ In the code below \code{x} is a \code{MulticoreParam} object. \describe{ \item{}{ \code{show(x)}: Displays the \code{MulticoreParam} object. } } } \author{Martin Morgan \url{mailto:mtmorgan@fhcrc.org} and Valerie Obenchain} \seealso{ \itemize{ \item \code{register} for registering parameter classes for use in parallel evaluation. \item \code{\link{SnowParam}} for computing in distributed memory \item \code{\link{BatchJobsParam}} for computing with cluster schedulers \item \code{\link{DoparParam}} for computing with foreach \item \code{\link{SerialParam}} for non-parallel evaluation } } \examples{ ## ----------------------------------------------------------------------- ## Job configuration: ## ----------------------------------------------------------------------- ## MulticoreParam supports shared memory computing. The object fields ## control the division of tasks, error handling, logging and ## result format. bpparam <- MulticoreParam() bpparam ## By default the param is created with the maximum available workers ## determined by multicoreWorkers(). multicoreWorkers() ## Fields are modified with accessors of the same name: bplog(bpparam) <- TRUE bpresultdir(bpparam) <- "/myResults/" bpparam ## ----------------------------------------------------------------------- ## Logging: ## ----------------------------------------------------------------------- ## When 'log == TRUE' the workers use a custom script (in BiocParallel) ## that enables logging and access to other job statistics. Log messages ## are returned as each job completes rather than waiting for all to finish. ## In 'fun', a value of 'x = 1' will throw a warning, 'x = 2' is ok ## and 'x = 3' throws an error. Because 'x = 1' sleeps, the warning ## should return after the error. X <- 1:3 fun <- function(x) { if (x == 1) { Sys.sleep(2) if (TRUE & c(TRUE, TRUE)) ## warning x } else if (x == 2) { x ## ok } else if (x == 3) { sqrt("FOO") ## error } } ## By default logging is off. Turn it on with the bplog()<- setter ## or by specifying 'log = TRUE' in the constructor. bpparam <- MulticoreParam(3, log = TRUE) bplapply(X, fun, BPPARAM=bpparam) ## When a 'logdir' location is given the messages are redirected to a file: \dontrun{ bplogdir(bpparam) <- tempdir() bplapply(X, fun, BPPARAM = bpparam) list.files(bplogdir(bpparam)) } ## ----------------------------------------------------------------------- ## Managing results: ## ----------------------------------------------------------------------- ## By default results are returned as a list. When 'resultdir' is given ## files are saved in the directory specified by job, e.g., 'TASK1.Rda', ## 'TASK2.Rda', etc. \dontrun{ bpparam <- MulticoreParam(2, resultdir = tempdir()) bplapply(X, fun, BPPARAM = bpparam) list.files(bpresultdir(bpparam)) } ## ----------------------------------------------------------------------- ## Error handling: ## ----------------------------------------------------------------------- ## When 'stop.on.error' is TRUE the process returns as soon as an error ## is thrown. When FALSE, all computations are attempted and partial ## results are retured along with errors. To more clearly demonstrate ## the difference in output, the number of 'tasks' is set to equal ## the length of 'X'. so each element is run separately. (Default behavior ## is to divide 'X' evenly over workers.) ## Results prior to and including the error: bpparam <- MulticoreParam(2, tasks = 4, stop.on.error = TRUE) bplapply(list(1, "two", 3, 4), sqrt, BPPARAM = bpparam) ## All results along with error: bpparam <- MulticoreParam(2, tasks = 4, stop.on.error = FALSE) res <- bplapply(list(1, "two", 3, 4), sqrt, BPPARAM = bpparam) res ## Calling bpok() on the result list returns TRUE for elements with no error. bpok(res) ## ----------------------------------------------------------------------- ## Random number generation: ## ----------------------------------------------------------------------- ## Random number generation is controlled with the 'RNGseed' field. ## This seed is passed to parallel::clusterSetRNGStream ## which uses the L'Ecuyer-CMRG random number generator and distributes ## streams to members of the cluster. bpparam <- MulticoreParam(3, RNGseed = 7739465) bplapply(seq_len(bpworkers(bpparam)), function(i) rnorm(1), BPPARAM = bpparam) } \keyword{classes} \keyword{methods} BiocParallel/man/SerialParam-class.Rd0000644000175100017510000000353212607264442020502 0ustar00biocbuildbiocbuild\name{SerialParam-class} \Rdversion{1.1} \docType{class} \alias{SerialParam-class} \alias{SerialParam} \alias{bpisup,SerialParam-method} \alias{bpworkers,SerialParam-method} \alias{bplog,SerialParam-method} \alias{bpthreshold,SerialParam-method} \alias{bplog<-,SerialParam,logical-method} \alias{bpthreshold<-,SerialParam,character-method} \title{Enable serial evaluation} \description{ This class is used to parameterize serial evaluation, primarily to facilitate easy transition from parallel to serial code. } \usage{ SerialParam(catch.errors = FALSE, log = FALSE, threshold = "INFO") } \section{Constructor}{ \describe{ \item{}{ \code{SerialParam(catch.errors = FALSE, log = FALSE, threshold = "INFO")}: Return an object to be used for serial evaluation of otherwise parallel functions such as \code{\link{bplapply}}, \code{\link{bpvec}}. } } } \arguments{ \item{catch.errors}{ \code{logical(1)} Enable the catching of errors and warnings. } \item{log}{ \code{logical(1)} Enable logging. } \item{threshold}{ \code{character(1)} Logging threshold as defined in \code{futile.logger}. } } \section{Methods}{ The following generics are implemented and perform as documented on the corresponding help page (e.g., \code{?bpworkers}): \code{\link{bpworkers}}. \code{\link{bpisup}}, \code{\link{bpstart}}, \code{\link{bpstop}}, are implemented, but do not have any side-effects. } \author{Martin Morgan \url{mailto:mtmorgan@fhcrc.org}} \seealso{ \code{getClass("BiocParallelParam")} for additional parameter classes. \code{register} for registering parameter classes for use in parallel evaluation. } \examples{ p <- SerialParam() simplify2array(bplapply(1:10, sqrt, BPPARAM=p)) bpvec(1:10, sqrt, BPPARAM=p) \dontrun{ register(SerialParam(), default=TRUE) } } \keyword{classes} BiocParallel/man/SnowParam-class.Rd0000644000175100017510000004426212607264437020222 0ustar00biocbuildbiocbuild\name{SnowParam-class} \Rdversion{1.1} \docType{class} % Class \alias{SnowParam} \alias{SnowParam-class} % Control \alias{snowWorkers} \alias{bpbackend,SnowParam-method} \alias{bpbackend<-,SnowParam,cluster-method} \alias{bpisup,SnowParam-method} \alias{bpstart,SnowParam-method} \alias{bpstop,SnowParam-method} \alias{bpworkers,SnowParam-method} \alias{bpworkers<-,SnowParam,numeric-method} \alias{bpworkers<-,SnowParam,character-method} % Accessors \alias{bplog} \alias{bplog<-} \alias{bplog,SnowParam-method} \alias{bplog<-,SnowParam,logical-method} \alias{bpthreshold} \alias{bpthreshold<-} \alias{bpthreshold,SnowParam-method} \alias{bpthreshold<-,SnowParam,character-method} \alias{bpRNGseed} \alias{bpRNGseed<-} \alias{bpRNGseed,SnowParam-method} \alias{bpRNGseed<-,SnowParam-method} \alias{bplogdir} \alias{bplogdir<-} \alias{bplogdir,SnowParam-method} \alias{bplogdir<-,SnowParam,character-method} \alias{bpresultdir} \alias{bpresultdir<-} \alias{bpresultdir,SnowParam-method} \alias{bpresultdir<-,SnowParam,character-method} \alias{bptimeout} \alias{bptimeout<-} \alias{bptimeout,SnowParam-method} \alias{bptimeout<-,SnowParam,numeric-method} % Other methods \alias{coerce,SOCKcluster,SnowParam-method} \alias{coerce,spawnedMPIcluster,SnowParam-method} \alias{show,SnowParam-method} % Other functions \alias{bpslaveLoop} \alias{bprunMPIslave} \title{Enable simple network of workstations (SNOW)-style parallel evaluation} \description{ This class is used to parameterize simple network of workstations (SNOW) parallel evaluation on one or several physical computers. \code{snowWorkers()} chooses the number of workers based on global user preference (\code{options(mc.cores=...)}), or the minimum of 8 and the number of detected cores (\code{detectCores()}). } \usage{ ## constructor ## ------------------------------------ SnowParam(workers = snowWorkers(), type=c("SOCK", "MPI", "FORK"), tasks = 0L, catch.errors=TRUE, stop.on.error = FALSE, progressbar = FALSE, RNGseed = NULL, timeout = Inf, log = FALSE, threshold = "INFO", logdir = NA_character_, resultdir = NA_character_, jobname = "BPJOB", ...) ## coercion ## ------------------------------------ ## as(SOCKcluster, SnowParam) ## as(spawnedMPIcluster,SnowParam) ## detect workers ## ------------------------------------ snowWorkers() } \details{ \code{SnowParam} is used for distributed memory computing and supports 2 cluster types: \sQuote{SOCK} (default) and \sQuote{MPI}. The \code{SnowParam} builds on infrastructure in the \code{snow} and \code{parallel} packages and provides the additional features of error handling, logging and writing out results. When not specified, the default number of workers is determined by \code{snowWorkers()} which is parallel::detectCores() - 2. Machines with 3 or less cores are assigned a single worker. \describe{ \item{error handling:}{ The \code{catch.errors} field has been deprecated. By default all computations are attempted and partial results are returned with any error messages. \itemize{ \item \code{catch.errors} (DEPRECATED) determines whether errors are caught and returned with other results. When \code{TRUE}, all computations are attempted and output contains both errors and successfully completed results. When \code{FALSE}, the job is terminated as soon as the first error is hit and only the error message is returned (no results); this is the default behavior of the parent packages, e.g., \code{parallel}, \code{snow}, \code{foreach}. \item \code{stop.on.error} controls whether the job stops after an error is thrown. When \code{TRUE}, the output contains all successfully completed results up to and including the error. When \code{FALSE}, all computations are attempted and and successful results are returned along with any error messages. \item The \code{bpok(x)} function returns a \code{logical()} vector that is FALSE for any jobs that threw an error. The input \code{x} is a list output from a bp*apply function such as \code{bplapply} or \code{bpmapply}. } } \item{logging:}{ When \code{log = TRUE} the \code{futile.logger} package is loaded on the workers. All log messages written in the \code{futile.logger} format are captured by the logging mechanism and returned real-time (i.e., as each task completes) instead of after all jobs have finished. Messages sent to \emph{stdout} and \emph{stderr} are returned to the workspace by default. When \code{log = TRUE} these are diverted to the log output. Those familiar with the \code{outfile} argument to \code{makeCluster} can think of \code{log = FALSE} as equivalent to \code{outfile = NULL}; providing a \code{logdir} is the same as providing a name for \code{outfile} except that BiocParallel writes a log file for each task. The log output includes additional statistics such as memory use and task runtime. Memory use is computed by calling gc(reset=TRUE) before code evaluation and gc() (no reseet) after. The output of the second gc() call is sent to the log file. There are many ways to track memory use - this particular approach was taken because it is consistent with how the BatchJobs package reports memory on the workers. } \item{log and result files:}{ Results and logs can be written to a file instead of returned to the workspace. Writing to files is done from the master as each task completes. Options can be set with the \code{logdir} and \code{resultdir} fields in the constructor or with the accessors, \code{bplogdir} and \code{bpresultdir}. } \item{random number generation:}{ \code{MulticoreParam} and \code{SnowParam} use the random number generation support from the parallel package. These params are snow-derived clusters so the arguments for multicore-derived functions such as \code{mc.set.seed} and \code{mc.reset.stream} do not apply. Random number generation is controlled through the param argument, \code{RNGseed} which is passed to parallel::clusterSetRNGStream. \code{clusterSetRNGStream} uses the L'Ecuyer-CMRG random number generator and distributes streams to the members of a cluster. If \code{RNGseed} is not NULL it serves as the seed to the streams, otherwise the streams are set from the current seed of the master process after selecting the L'Ecuyer generator. See ?\code{clusterSetRNGStream} for more details. } NOTE: The \code{PSOCK} cluster from the \code{parallel} package does not support cluster options \code{scriptdir} and \code{useRscript}. \code{PSOCK} is not supported because these options are needed to re-direct to an alternate worker script located in BiocParallel. } } \section{Constructor}{ \describe{ \item{}{ \code{SnowParam(workers = snowWorkers(), type=c("SOCK", "MPI"), tasks = 0L, catch.errors = TRUE, stop.on.error = FALSE, progressbar = FALSE, RNGseed = NULL, timeout = Inf, log = FALSE, threshold = "INFO", logdir = NA_character_, resultdir = NA_character_, jobname = "BPJOB", ...)}: Return an object representing a SNOW cluster. The cluster is not created until \code{bpstart} is called. Named arguments in \code{...} are passed to \code{makeCluster}. } } } \arguments{ \item{workers}{ \code{integer(1)} Number of workers. Defaults to all cores available as determined by \code{detectCores}. For a \code{SOCK} cluster \code{workers} can be a \code{character()} vector of host names. } \item{type}{ \code{character(1)} Type of cluster to use. Possible values are \code{SOCK} (default) and \code{MPI}. Instead of \code{type=FORK} use \code{MulticoreParam}. } \item{tasks}{ \code{integer(1)}. The number of tasks per job. \code{value} must be a scalar integer >= 0L. In this documentation a job is defined as a single call to a function, such as \code{bplapply}, \code{bpmapply} etc. A task is the division of the \code{X} argument into chunks. When \code{tasks == 0} (default), \code{X} is divided as evenly as possible over the number of workers. A \code{tasks} value of > 0 specifies the exact number of tasks. Values can range from 1 (all of \code{X} to a single worker) to the length of \code{X} (each element of \code{X} to a different worker). When the length of \code{X} is less than the number of workers each element of \code{X} is sent to a worker and \code{tasks} is ignored. } \item{catch.errors}{ DEPRECATED. \code{logical(1)} Enable the catching of errors and warnings. } \item{stop.on.error}{ \code{logical(1)} Enable stop on error. } \item{progressbar}{ \code{logical(1)} Enable progress bar (based on plyr:::progress_text). } \item{RNGseed}{ \code{integer(1)} Seed for random number generation. When not \code{NULL}, this value is passed to parallel::clusterSetRNGStream to generate random number streams on each worker. } \item{timeout}{ \code{numeric(1)} Time (in seconds) allowed for worker to complete a task. This value is passed to base::setTimeLimit() as both the \code{cpu} and \code{elapsed} arguments. If the computation exceeds \code{timeout} an error is thrown with message 'reached elapsed time limit'. } \item{log}{ \code{logical(1)} Enable logging. } \item{threshold}{ \code{character(1)} Logging threshold as defined in \code{futile.logger}. } \item{logdir}{ \code{character(1)} Log files directory. When not provided, log messages are returned to stdout. } \item{resultdir}{ \code{character(1)} Job results directory. When not provided, results are returned as an \R{} object (list) to the workspace. } \item{jobname}{ \code{character(1)} Job name that is prepended to log and result files. Default is "BPJOB". } \item{\dots}{ Additional arguments passed to \code{\link[snow]{makeCluster}} } } \section{Accessors: Logging and results}{ In the following code, \code{x} is a \code{SnowParam} object. \describe{ \item{}{ \code{bpprogressbar(x, ...)}, \code{bpprogressbar(x) <- value}: Get or set the value to enable text progress bar. \code{value} must be a \code{logical(1)}. } \item{}{ \code{bpjobname(x, ...)}, \code{bpjobname(x) <- value}: Get or set the job name. } \item{}{ \code{bpRNGseed(x, ...)}, \code{bpRNGseed(x) <- value}: Get or set the seed for random number generaton. \code{value} must be a \code{numeric(1)}. } \item{}{ \code{bplog(x, ...)}, \code{bplog(x) <- value}: Get or set the value to enable logging. \code{value} must be a \code{logical(1)}. } \item{}{ \code{bpthreshold(x, ...)}, \code{bpthreshold(x) <- value}: Get or set the logging threshold. \code{value} must be a \code{character(1)} string of one of the levels defined in the \code{futile.logger} package: \dQuote{TRACE}, \dQuote{DEBUG}, \dQuote{INFO}, \dQuote{WARN}, \dQuote{ERROR}, or \dQuote{FATAL}. } \item{}{ \code{bplogdir(x, ...)}, \code{bplogdir(x) <- value}: Get or set the directory for the log file. \code{value} must be a \code{character(1)} path, not a file name. The file is written out as BPLOG.out. If no \code{logdir} is provided and \code{bplog=TRUE} log messages are sent to stdout. } \item{}{ \code{bpresultdir(x, ...)}, \code{bpresultdir(x) <- value}: Get or set the directory for the result files. \code{value} must be a \code{character(1)} path, not a file name. Separate files are written for each job with the prefix TASK (e.g., TASK1, TASK2, etc.). When no \code{resultdir} is provided the results are returned to the session as \code{list}. } } } \section{Accessors: Back-end control}{ In the code below \code{x} is a \code{SnowParam} object. See the ?\code{BiocParallelParam} man page for details on these accessors. \describe{ \item{}{\code{bpworkers(x, ...)}, \code{bpworkers(x) <- value}} \item{}{\code{bptasks(x, ...)}, \code{bptasks(x) <- value}} \item{}{\code{bpstart(x, ...)}} \item{}{\code{bpstop(x, ...)}} \item{}{\code{bpisup(x, ...)}} \item{}{\code{bpbackend(x, ...)}, \code{bpbackend(x) <- value}} } } \section{Accessors: Error Handling}{ In the code below \code{x} is a \code{SnowParam} object. See the ?\code{BiocParallelParam} man page for details on these accessors. \describe{ \item{}{\code{bpcatchErrors(x, ...)}, \code{bpcatchErrors(x) <- value}} \item{}{\code{bpstopOnError(x, ...)}, \code{bpstopOnError(x) <- value}} } } \section{Methods: Evaluation}{ In the code below \code{BPPARAM} is a \code{SnowParam} object. Full documentation for these functions are on separate man pages: see ?\code{bpmapply}, ?\code{bplapply}, ?\code{bpvec}, ?\code{bpiterate} and ?\code{bpaggregate}. \describe{ \item{}{ \code{bpmapply(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPPARAM=bpparam())} } \item{}{ \code{bplapply(X, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpvec(X, FUN, ..., AGGREGATE=c, BPPARAM=bpparam())} } \item{}{ \code{bpiterate(ITER, FUN, ..., BPPARAM=bpparam())} } \item{}{ \code{bpaggregate(x, data, FUN, ..., BPPARAM=bpparam())} } } } \section{Methods: Other}{ In the code below \code{x} is a \code{SnowParam} object. \describe{ \item{}{ \code{show(x)}: Displays the \code{SnowParam} object. } \item{}{ \code{bpok(x)}: Returns a \code{logical()} vector: FALSE for any jobs that resulted in an error. \code{x} is the result list output by a \code{BiocParallel} function such as \code{bplapply} or \code{bpmapply}. } } } \section{Coercion}{ \describe{ \item{}{ \code{as(from, "SnowParam")}: Creates a \code{SnowParam} object from a \code{SOCKcluster} or \code{spawnedMPIcluster} object. Instances created in this way cannot be started or stopped. } } } \author{Martin Morgan and Valerie Obenchain.} \seealso{ \itemize{ \item \code{register} for registering parameter classes for use in parallel evaluation. \item \code{\link{MulticoreParam}} for computing in shared memory \item \code{\link{BatchJobsParam}} for computing with cluster schedulers \item \code{\link{DoparParam}} for computing with foreach \item \code{\link{SerialParam}} for non-parallel evaluation } } \examples{ ## ----------------------------------------------------------------------- ## Job configuration: ## ----------------------------------------------------------------------- ## SnowParam supports distributed memory computing. The object fields ## control the division of tasks, error handling, logging and ## result format. bpparam <- SnowParam() bpparam ## Fields are modified with accessors of the same name: bplog(bpparam) <- TRUE bpresultdir(bpparam) <- "/myResults/" bpparam ## ----------------------------------------------------------------------- ## Logging: ## ----------------------------------------------------------------------- ## When 'log == TRUE' the workers use a custom script (in BiocParallel) ## that enables logging and access to other job statistics. Log messages ## are returned as each job completes rather than waiting for all to finish. ## In 'fun', a value of 'x = 1' will throw a warning, 'x = 2' is ok ## and 'x = 3' throws an error. Because 'x = 1' sleeps, the warning ## should return after the error. X <- 1:3 fun <- function(x) { if (x == 1) { Sys.sleep(2) if (TRUE & c(TRUE, TRUE)) ## warning x } else if (x == 2) { x ## ok } else if (x == 3) { sqrt("FOO") ## error } } ## By default logging is off. Turn it on with the bplog()<- setter ## or by specifying 'log = TRUE' in the constructor. bpparam <- SnowParam(3, log = TRUE) bplapply(X, fun, BPPARAM = bpparam) ## When a 'logdir' location is given the messages are redirected to a file: \dontrun{ bplogdir(bpparam) <- tempdir() bplapply(X, fun, BPPARAM = bpparam) list.files(bplogdir(bpparam)) } ## ----------------------------------------------------------------------- ## Managing results: ## ----------------------------------------------------------------------- ## By default results are returned as a list. When 'resultdir' is given ## files are saved in the directory specified by job, e.g., 'TASK1.Rda', ## 'TASK2.Rda', etc. \dontrun{ bpparam <- SnowParam(2, resultdir = tempdir()) bplapply(X, fun, BPPARAM = bpparam) list.files(bpresultdir(bpparam)) } ## ----------------------------------------------------------------------- ## Error handling: ## ----------------------------------------------------------------------- ## When 'stop.on.error' is TRUE the process returns as soon as an error ## is thrown. bpparam <- SnowParam(2, stop.on.error = TRUE) bplapply(list(1, "two", 3, 4), sqrt, BPPARAM = bpparam) ## When 'stop.on.error' is FALSE all computations are attempted. Partial ## results are returned along with errors. bpparam <- SnowParam(2, stop.on.error = FALSE) res <- bplapply(list(1, "two", 3, 4), sqrt, BPPARAM = bpparam) res ## Calling bpok() on the result list returns TRUE for elements with no error. bpok(res) ## ----------------------------------------------------------------------- ## Random number generation: ## ----------------------------------------------------------------------- ## Random number generation is controlled with the 'RNGseed' field. ## This seed is passed to parallel::clusterSetRNGStream ## which uses the L'Ecuyer-CMRG random number generator and distributes ## streams to members of the cluster. bpparam <- SnowParam(3, RNGseed = 7739465) bplapply(seq_len(bpworkers(bpparam)), function(i) rnorm(1), BPPARAM = bpparam) } \keyword{classes} \keyword{methods} BiocParallel/man/bpaggregate.Rd0000644000175100017510000000570312607264442017451 0ustar00biocbuildbiocbuild\name{bpaggregate} \alias{bpaggregate} \alias{bpaggregate,formula,BiocParallelParam-method} \alias{bpaggregate,matrix,BiocParallelParam-method} \alias{bpaggregate,data.frame,BiocParallelParam-method} \alias{bpaggregate,ANY,missing-method} \title{Apply a function on subsets of data frames} \description{ This is a parallel version of \code{\link[stats]{aggregate}}. } \usage{ \S4method{bpaggregate}{formula,BiocParallelParam}(x, data, FUN, ..., BPREDO=list(), BPPARAM=bpparam()) \S4method{bpaggregate}{data.frame,BiocParallelParam}(x, by, FUN, ..., simplify=TRUE, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpaggregate}{matrix,BiocParallelParam}(x, by, FUN, ..., simplify=TRUE, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpaggregate}{ANY,missing}(x, ..., BPREDO=list(), BPPARAM=bpparam()) } \arguments{ \item{x}{A \code{data.frame}, \code{matrix} or a formula. } \item{by}{A list of factors by which \code{x} is split; applicable when \code{x} is \code{data.frame} or \code{matrix}. } \item{data}{A \code{data.frame}; applicable when \code{x} is a \code{formula}. } \item{FUN}{Function to apply. } \item{...}{Additional arguments for \code{FUN}. } \item{simplify}{If set to \code{TRUE}, the return values of \code{FUN} will be simplified using \code{\link[base]{simplify2array}}. } \item{BPPARAM}{An optional \code{\link{BiocParallelParam}} instance determining the parallel back-end to be used during evaluation. } \item{BPREDO}{A \code{list} of output from \code{bpaggregate} with one or more failed elements. When a list is given in \code{BPREDO}, \code{bpok} is used to identify errors, tasks are rerun and inserted into the original results. } } \details{ \code{bpaggregate} is a generic with methods for \code{data.frame} \code{matrix} and \code{formula} objects. \code{x} is divided into subsets according to factors in \code{by}. Data chunks are sent to the workers, \code{FUN} is applied and results are returned as a \code{data.frame}. The function is similar in spirit to \code{\link[stats]{aggregate}} from the stats package but \code{\link[stats]{aggregate}} is not explicitly called. The \code{bpaggregate} \code{formula} method reformulates the call and dispatches to the \code{data.frame} method which in turn distributes data chunks to workers with \code{bplapply}. } \value{ See \code{\link[stats]{aggregate}}. } \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org}. } \examples{ if (all(require(Rsamtools) && require(GenomicAlignments))) { fl <- system.file("extdata", "ex1.bam", package="Rsamtools") param <- ScanBamParam(what = c("flag", "mapq")) gal <- readGAlignments(fl, param=param) ## Report the mean map quality by range cutoff: cutoff <- rep(0, length(gal)) cutoff[start(gal) > 1000 & start(gal) < 1500] <- 1 cutoff[start(gal) > 1500] <- 2 bpaggregate(as.data.frame(mcols(gal)$mapq), list(cutoff = cutoff), mean) } } BiocParallel/man/bpiterate.Rd0000644000175100017510000001573312607264437017170 0ustar00biocbuildbiocbuild\name{bpiterate} \alias{bpiterate} \alias{bpiterate,ANY,ANY,missing-method} \alias{bpiterate,ANY,ANY,BiocParallelParam-method} \alias{bpiterate,ANY,ANY,SerialParam-method} \alias{bpiterate,ANY,ANY,SnowParam-method} \alias{bpiterate,ANY,ANY,BatchJobsParam-method} \alias{bpiterate,ANY,ANY,DoparParam-method} \title{Parallel iteration over an indeterminate number of data chunks} \description{ \code{bpiterate} iterates over an indeterminate number of data chunks (e.g., records in a file). Each chunk is processed by parallel workers in an asynchronous fashion; as each worker finishes it receives a new chunk. Data are traversed a single time. } \usage{ bpiterate(ITER, FUN, ..., BPPARAM=bpparam()) \S4method{bpiterate}{ANY,ANY,missing}(ITER, FUN, ..., BPPARAM=bpparam()) \S4method{bpiterate}{ANY,ANY,BiocParallelParam}(ITER, FUN, ..., BPPARAM=bpparam()) } \arguments{ \item{ITER}{ A function with no arguments that returns an object to process, generally a chunk of data from a file. When no objects are left (i.e., end of file) it should return NULL and continue to return NULL regardless of the number of times it is invoked after reaching the end of file. This function is run on the master. } \item{FUN}{ A function to process the object returned by \code{ITER}; run on parallel workers separate from the master. When BPPARAM is a MulticoreParam, FUN is `decorated` with additional arguments and therefore must have \dots in the signature. } \item{BPPARAM}{An optional \code{\link{BiocParallelParam}} instance determining the parallel back-end to be used during evaluation, or a \code{list} of \code{BiocParallelParam} instances, to be applied in sequence for nested calls to \code{bpiterate}. } \item{\dots}{Arguments to other methods, specifically named arguments for \code{FUN}, or \code{REDUCE} or \code{init}. \itemize{ \item{\code{REDUCE}: } Optional function that combines (reduces) output from \code{FUN}. As each worker returns, the data are combined with the \code{REDUCE} function. \code{REDUCE} takes 2 arguments; one is the current result and the other is the output of \code{FUN} from a worker that just finished. \item{\code{init}: } Optional initial value for \code{REDUCE}; must be of the same type as the object returned from \code{FUN}. When supplied, \code{reduce.in.order} is set to TRUE. \item{\code{reduce.in.order}: } Logical. When TRUE, REDUCE is applied to the results from the workers in the same order the tasks were sent out. } } } \details{ Supported for \code{SnowParam} and \code{MulticorParam}. \code{bpiterate} iterates through an unknown number of data chunks, dispatching chunks to parallel workers as they become available. In contrast, other \code{bp*apply} functions such as \code{bplapply} or \code{bpmapply} require the number of data chunks to be specified ahead of time. This quality makes \code{bpiterate} useful for iterating through files of unknown length. \code{ITER} serves up chunks of data until the end of the file is reached at which point it returns NULL. Note that \code{ITER} should continue to return NULL reguardless of the number of times it is invoked after reaching the end of the file. \code{FUN} is applied to each object (data chunk) returned by \code{ITER}. } \value{ A \code{list} the same length as the number of chunks in ITER(). When \code{REDUCE} is used list length is 1. } \author{ Valerie Obenchain \url{mailto:vobencha@fhcrc.org}. } \seealso{ \itemize{ \item \code{\link{bpvec}} for parallel, vectorized calculations. \item \code{\link{bplapply}} for parallel, lapply-like calculations. \item \code{\link{BiocParallelParam}} for details of \code{BPPARAM}. } } \examples{ \dontrun{ if (all(require(Rsamtools) && require(RNAseqData.HNRNPC.bam.chr14) && require(GenomicAlignments) && require(ShortRead))) { ## ---------------------------------------------------------------------- ## Iterate through a BAM file ## ---------------------------------------------------------------------- ## Select a single file and set 'yieldSize' in the BamFile object. fl <- RNAseqData.HNRNPC.bam.chr14_BAMFILES[[1]] bf <- BamFile(fl, yieldSize = 300000) ## bamIterator() is initialized with a BAM file and returns a function. ## The return function requires no arguments and iterates through the ## file returning data chunks the size of yieldSize. bamIterator <- function(bf) { done <- FALSE if (!isOpen( bf)) open(bf) function() { if (done) return(NULL) yld <- readGAlignments(bf) if (length(yld) == 0L) { close(bf) done <<- TRUE NULL } else yld } } ## FUN counts reads in a region of interest. roi <- GRanges("chr14", IRanges(seq(19e6, 107e6, by = 10e6), width = 10e6)) counter <- function(reads, roi, ...) { countOverlaps(query = roi, subject = reads) } ## Initialize the iterator. ITER <- bamIterator(bf) ## The number of chunks returned by ITER() determines the result length. bpparam <- MulticoreParam(workers = 3) bpiterate(ITER, counter, roi = roi, BPPARAM = bpparam) ## Re-initialize the iterator and combine on the fly with REDUCE: ITER <- bamIterator(bf) bpparam <- MulticoreParam(workers = 3) bpiterate(ITER, counter, REDUCE = sum, roi = roi, BPPARAM = bpparam) ## ---------------------------------------------------------------------- ## Iterate through a FASTA file ## ---------------------------------------------------------------------- ## Set data chunk size with 'n' in the FastqStreamer object. sp <- SolexaPath(system.file('extdata', package = 'ShortRead')) fl <- file.path(analysisPath(sp), "s_1_sequence.txt") ## Create an iterator that returns data chunks the size of 'n'. fastqIterator <- function(fqs) { done <- FALSE if (!isOpen(fqs)) open(fqs) function() { if (done) return(NULL) yld <- yield(fqs) if (length(yld) == 0L) { close(fqs) done <<- TRUE NULL } else yld } } ## The process function summarizes the number of times each sequence occurs. summary <- function(reads, ...) { ShortRead::tables(reads, n = 0)$distribution } ## Create a param. bpparam <- SnowParam(workers = 2) ## Initialize the streamer and iterator. fqs <- FastqStreamer(fl, n = 100) ITER <- fastqIterator(fqs) bpiterate(ITER, summary, BPPARAM = bpparam) ## Results from the workers are combined on the fly when REDUCE is used. ## Collapsing the data in this way can substantially reduce memory ## requirements. fqs <- FastqStreamer(fl, n = 100) ITER <- fastqIterator(fqs) bpiterate(ITER, summary, REDUCE = merge, all = TRUE, BPPARAM = bpparam) } } } \keyword{manip} \keyword{methods} BiocParallel/man/bplapply.Rd0000644000175100017510000000462612607264442017027 0ustar00biocbuildbiocbuild\name{bplapply} \alias{bplapply} \alias{bplapply,ANY,list-method} \alias{bplapply,ANY,missing-method} \alias{bplapply,ANY,BiocParallelParam-method} \alias{bplapply,ANY,BatchJobsParam-method} \alias{bplapply,ANY,DoparParam-method} \alias{bplapply,ANY,SerialParam-method} \alias{bplapply,ANY,SnowParam-method} \title{Parallel lapply-like functionality} \description{ \code{bplapply} applies \code{FUN} to each element of \code{X}. Any type of object \code{X} is allowed, provided \code{length}, \code{[}, and \code{[[} methods are available. The return value is a \code{list} of length equal to \code{X}, as with \code{\link[base]{lapply}}. } \usage{ bplapply(X, FUN, ..., BPREDO = list(), BPPARAM=bpparam()) \S4method{bplapply}{ANY,missing}(X, FUN, ..., BPREDO = list(), BPPARAM=bpparam()) \S4method{bplapply}{ANY,BiocParallelParam}(X, FUN, ..., BPREDO = list(), BPPARAM=bpparam()) } \arguments{ \item{X}{ Any object for which methods \code{length}, \code{[}, and \code{[[} are implemented. } \item{FUN}{ The \code{function} to be applied to each element of \code{X}. } \item{\dots}{ Additional arguments for \code{FUN}, as in \code{\link{lapply}}. } \item{BPPARAM}{ An optional \code{\link{BiocParallelParam}} instance determining the parallel back-end to be used during evaluation, or a \code{list} of \code{BiocParallelParam} instances, to be applied in sequence for nested calls to \code{bplapply}. } \item{BPREDO}{A \code{list} of output from \code{bplapply} with one or more failed elements. When a list is given in \code{BPREDO}, \code{bpok} is used to identify errors, tasks are rerun and inserted into the original results. } } \details{ See \code{showMethods{bplapply}} for additional methods, e.g., \code{method?bplapply("MulticoreParam")}. } \value{See \code{\link[base]{lapply}}.} \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org}. Original code as attributed in \code{\link[parallel]{mclapply}}. } \seealso{ \itemize{ \item \code{\link{bpvec}} for parallel, vectorized calculations. \item \code{\link{BiocParallelParam}} for possible values of \code{BPPARAM}. } } \examples{ showMethods("bplapply") ## ten tasks (1:10) so ten calls to FUN default registered parallel ## back-end. Compare with bpvec. fun <- function(v) { message("working") ## 10 tasks sqrt(v) } bplapply(1:10, fun) } \keyword{manip} BiocParallel/man/bpmapply.Rd0000644000175100017510000000520512607264437017026 0ustar00biocbuildbiocbuild\name{bpmapply} \alias{bpmapply} \alias{bpmapply,ANY,list-method} \alias{bpmapply,ANY,missing-method} \alias{bpmapply,ANY,BiocParallelParam-method} \title{Parallel mapply-like functionality} \description{ \code{bpmapply} applies \code{FUN} to first elements of \code{...}, the second elements and so on. Any type of object in \code{...} is allowed, provided \code{length}, \code{[}, and \code{[[} methods are available. The return value is a \code{list} of length equal to the length of all objects provided, as with \code{\link[base]{mapply}}. } \usage{ bpmapply(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpmapply}{ANY,missing}(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpmapply}{ANY,BiocParallelParam}(FUN, ..., MoreArgs=NULL, SIMPLIFY=TRUE, USE.NAMES=TRUE, BPREDO=list(), BPPARAM=bpparam()) } \arguments{ \item{FUN}{The \code{function} to be applied to each element passed via \code{...}. } \item{\dots}{Objects for which methods \code{length}, \code{[}, and \code{[[} are implemented. All objects must have the same length or shorter objects will be replicated to have length equal to the longest. } \item{MoreArgs}{List of additional arguments to \code{FUN}. } \item{SIMPLIFY}{ If \code{TRUE} the result will be simplified using \code{\link[base]{simplify2array}}. } \item{USE.NAMES}{If \code{TRUE} the result will be named. } \item{BPPARAM}{An optional \code{\link{BiocParallelParam}} instance defining the parallel back-end to be used during evaluation. } \item{BPREDO}{A \code{list} of output from \code{bpmapply} with one or more failed elements. When a list is given in \code{BPREDO}, \code{bpok} is used to identify errors, tasks are rerun and inserted into the original results. } } \details{ See \code{showMethods{bpmapply}} for additional methods, e.g., \code{method?bpmapply("MulticoreParam")}. } \value{See \code{\link[base]{mapply}}.} \author{ Michel Lang . Original code as attributed in \code{\link[parallel]{mclapply}}. } \seealso{ \itemize{ \item \code{\link{bpvec}} for parallel, vectorized calculations. \item \code{\link{BiocParallelParam}} for possible values of \code{BPPARAM}. } } \examples{ showMethods("bpmapply") fun <- function(greet, who) { paste(Sys.getpid(), greet, who) } greet <- c("morning", "night") who <- c("sun", "moon") param <- bpparam() bpworkers(param) <- 2 \dontrun{ result <- bpmapply(fun, greet, who, BPPARAM = param) cat(paste(result, collapse="\n"), "\n") } } \keyword{manip} BiocParallel/man/bpok.Rd0000644000175100017510000000657612607264437016151 0ustar00biocbuildbiocbuild\name{bpok} \alias{bpresume} \alias{bplasterror} \alias{bpok} \title{Resume computation with partial results} \description{ Identifies unsuccessful results returned from \code{bplapply}, \code{bpmapply}, \code{bpvec}, \code{bpaggregate} or \code{bpvectorize}. \code{bpresume} and \code{bplaterror} have been deprecated. } \usage{ bpok(x) ## Deprected: bpresume(expr) bplasterror() } \arguments{ \item{x}{ Results returned from a call to \code{bp*lapply}. } \item{expr}{ A expression to be re-evaluated. If the original error was due to input error, \code{X} should be modified. If hardware limitations or failure caused the error this expression may be the same as the original. } } \details{ \itemize{ \item{bpok}{ Returns a \code{logical()} vector: FALSE for any jobs that resulted in an error. \code{x} is the result list output by \code{bplapply}, \code{bpmapply}, \code{bpvec}, \code{bpaggregate} or \code{bpvectorize}. } \item{bpresume}{ THIS FUNCTION IS DEPRECATED. The resume mechanism allows computations with errors to be re-attempted and is triggered when the argument \code{catch.errors} is \code{TRUE}. Unsuccessful results returned from \code{bp*lapply} can be identified with \code{bpok}. Failure may have been due to faulty input or hardware error. Incomplete portions of the job can be reattempted with \code{bpresume}. New results are merged with the previous and returned to the user. } \item{bplasterror}{ THIS FUNCTION IS DEPRECATED. Use \code{attr} on the output of \code{bp*apply} to see traceback. See examples. } } } \author{Michel Lang, Martin Morgan and Valerie Obenchain} \examples{ ## ----------------------------------------------------------------------- ## Catch errors: ## ----------------------------------------------------------------------- ## By default 'catch.errors' is TRUE in BiocParallelParam objects. SnowParam(workers = 2) ## If 'catch.errors' is FALSE an ill-fated bplapply() simply stops ## displaying the error message. param <- SnowParam(workers = 2, catch.errors = FALSE) \dontrun{ > res <- bplapply(list(1, "two", 3), sqrt, BPPARAM = param) Error in checkForRemoteErrors(val) : one node produced an error: non-numeric argument to mathematical function } ## When 'catch.errors' is TRUE partial results are returned with ## the error. param <- SnowParam(workers = 2) X <- list(1, "two", 3) res <- bplapply(X, sqrt, BPPARAM = param) res ## Check for errors: fail <- !bpok(res) fail ## Access the traceback with attr(): tail(attr(res[[2]], "traceback"), 5) ## ----------------------------------------------------------------------- ## Resume calculations: ## ----------------------------------------------------------------------- ## The 'resume' mechanism is triggered by supplying a list of partial ## results as 'BPREDO'. Data elements that failed are rerun and merged ## with previous results. ## A call of sqrt() on the character "2" returns an error. param <- SnowParam(workers = 2) X <- list(1, "two", 3) res <- bplapply(X, sqrt, BPPARAM = param) res ## Fix the input data by changing the character "2" to a numeric 2: X_mod <- list(1, 2, 3) ## Repeat the original call to bplapply() with the partial results as 'BPREDO': bplapply(X_mod, sqrt, BPPARAM = param , BPREDO = res) } BiocParallel/man/bpschedule.Rd0000644000175100017510000000232112607264442017310 0ustar00biocbuildbiocbuild\name{bpschedule} \alias{bpschedule} \alias{bpschedule,missing-method} \alias{bpschedule,ANY-method} \title{Schedule back-end Params} \description{ Use functions on this page to influence scheduling of parallel processing. } \usage{ bpschedule(x, ...) } \arguments{ \item{x}{ An instance of a \code{BiocParallelParam} class, e.g., \code{\link{MulticoreParam}}, \code{\link{SnowParam}}, \code{\link{DoparParam}}. \code{x} can be missing, in which case the default back-end (see \code{\link{register}}) is used. } \item{...}{Additional arguments, perhaps used by methods.} } \details{ \code{bpschedule} returns a logical(1) indicating whether the parallel evaluation should occur at this point. } \value{ \code{bpschedule} returns a scalar logical. } \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org}. } \seealso{ \code{\link{BiocParallelParam}} for possible values of \code{x}. } \examples{ bpschedule(SnowParam()) # TRUE bpschedule(MulticoreParam(2)) # FALSE on windows p <- MulticoreParam() bpschedule(p) # TRUE bplapply(1:2, function(i, p) { bpschedule(p) # FALSE }, p = p, BPPARAM=p) } \keyword{manip} BiocParallel/man/bpvalidate.Rd0000644000175100017510000001102612607264437017313 0ustar00biocbuildbiocbuild\name{bpvalidate} \alias{bpvalidate} \title{Tools for developing functions for parallel execution in distributed memory} \description{ \code{bpvalidate} interrogates the function environment and search path to locate undefined symbols. } \usage{ bpvalidate(fun) } \arguments{ \item{fun}{ The function to be checked.} } \details{ \code{bpvalidate} tests if a function can be run in a distributed memory environment (e.g., SOCK clusters, Windows machines). \code{bpvalidate} looks in the environment of \code{fun}, in the NAMESPACE exports of libraries loaded in \code{fun}, and along the search path to identify any symbols outside the scope of \code{fun}. \code{bpvalidate} can be used to check functions passed to the bp* family of functions in \code{BiocParallel} or other packages that support parallel evaluation on clusters such as \code{snow}, \code{BatchJobs}, \code{Rmpi}, etc. \describe{ \item{testing package functions}{ The environment of a function defined inside a package is the NAMESPACE of the package. It is important to test these functions as they will be called from within the package, with the appropriate environment. Specifically, do not copy/paste the function into the workspace; once this is done the GlobalEnv becomes the function environment. To test a package function, load the package then call the function by name (myfun) or explicitly (mypkg:::myfun) if not exported. } \item{testing workspace functions}{ The environment of a function defined in the workspace is the GlobalEnv. Because these functions do not have an associated package NAMESPACE, the functions and variables used in the body must be explicitly passed or defined. See examples. Defining functions in the workspace is often done during development or testing. If the function is later moved inside a package, it can be rewritten in a more lightweight form by taking advantage of imported symbols in the package NAMESPACE. } } NOTE: \code{bpvalidate} does not currently work on Generics. } \value{ A \code{list} of length 2 with named elements `inPath` and `unknown`. \itemize{ \item{inPath}{ A named list of symbols and where they were found. These symbols were found on the search path instead of the function environment and should probably be imported in the NAMESPACE or otherwise defined in the package. } \item{unknown}{ A vector of symbols not found in the function environment or the search path. } } } \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org} and Valerie Obenchain \url{mailto:vobencha@fhcrc.org}. } \examples{ ## --------------------------------------------------------------------- ## Testing package functions ## --------------------------------------------------------------------- \dontrun{ library(myPkg) ## Test exported functions by name or the double colon: bpvalidate(myExportedFun) bpvalidate(myPkg::myExportedFun) ## Non-exported functions are called with the triple colon: bpvalidate(myPkg:::myInternalFun) } ## --------------------------------------------------------------------- ## Testing workspace functions ## --------------------------------------------------------------------- ## Functions defined in the workspace have the .GlobalEnv as their ## environment. Often the symbols used inside the function body ## are not defined in .GlobalEnv and must be passed explicitly. ## Loading libraries: ## In 'fun1' countBam() is flagged as unknown: fun1 <- function(fl, ...) countBam(fl) bpvalidate(fun1) ## countBam() is not defined in .GlobalEnv and must be passed as ## an argument or made available by loading the library. fun2 <- function(fl, ...) { library(Rsamtools) countBam(fl) } bpvalidate(fun2) ## Passing arguments: ## 'param' is defined in the workspace but not passed to 'fun3'. ## bpvalidate() flags 'param' as being found 'inPath' which means ## it is not defined in the function environment or inside the function. library(Rsamtools) param <- ScanBamParam(flag=scanBamFlag(isMinusStrand=FALSE)) fun3 <- function(fl, ...) { library(Rsamtools) countBam(fl, param=param) } bpvalidate(fun3) ## 'param' is explicitly passed by adding it as a formal argument. fun4 <- function(fl, ..., param) { library(Rsamtools) countBam(fl, param=param) } bpvalidate(fun4) ## The corresponding call to a bp* function includes 'param': \dontrun{bplapply(files, fun4, param=param, BPPARAM=SnowParam(2))} } \keyword{manip} BiocParallel/man/bpvec.Rd0000644000175100017510000000702212607264437016300 0ustar00biocbuildbiocbuild\name{bpvec} \alias{bpvec} \alias{bpvec,ANY,missing-method} \alias{bpvec,ANY,MulticoreParam-method} \alias{bpvec,ANY,BiocParallelParam-method} \title{Parallel, vectorized evaluation} \description{ \code{bpvec} applies \code{FUN} to subsets of \code{X}. Any type of object \code{X} is allowed, provided \code{length}, \code{[}, and \code{c} methods are available. The return value is a \code{vector} of length equal to \code{X}, as with \code{FUN(X)}. } \usage{ bpvec(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpvec}{ANY,BiocParallelParam}(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) \S4method{bpvec}{ANY,missing}(X, FUN, ..., AGGREGATE=c, BPREDO=list(), BPPARAM=bpparam()) } \arguments{ \item{X}{ Any object for which methods \code{length}, \code{[}, and \code{c} are implemented. } \item{FUN}{The \code{function} to be applied to subsets of \code{X}. } \item{\dots}{Additional arguments for \code{FUN}. } \item{AGGREGATE}{A function taking any number of arguments \code{...} called to reduce results (elements of the \code{...} argument of \code{AGGREGATE} from parallel jobs. The default, \code{c}, concatenates objects and is appropriate for vectors; \code{rbind} might be appropriate for data frames. } \item{BPPARAM}{A optional \code{\link{BiocParallelParam}} instance determining the parallel back-end to be used during evaluation. } \item{BPREDO}{A \code{list} of output from \code{bpvec} with one or more failed elements. When a list is given in \code{BPREDO}, \code{bpok} is used to identify errors, tasks are rerun and inserted into the original results. } } \details{ When \code{BPPARAM} is a \code{MulticoreParam} this method dispatches to the \code{pvec} function from the parallel package. For all other \code{BiocParallelParam}s, this method creates a vector of indices for \code{X} that divide the elements as evenly as possible given the number of workers. Indices and data are passed to \code{bplapply} for parallel evaluation. \code{SnowParam} and \code{MulticoreParam} offer further control over the division of \code{X} through the \code{tasks} argument. See ?\code{bptasks}. The distinction between \code{bpvec} and \code{bplapply} is that \code{bplapply} applies \code{FUN} to each element of \code{X} separately whereas \code{bpvec} assumes the function is vectorized, e.g., \code{c(FUN(x[1]), FUN(x[2]))} is equivalent to \code{FUN(x[1:2])}. This approach can be more efficient than \code{bplapply} but requires the assumption that \code{FUN} takes a vector input and creates a vector output of the same length as the input which does not depend on partitioning of the vector. This behavior is consistent with \code{parallel:::pvec} and the ?\code{pvec} man page should be consulted for further details. } \value{ The result should be identical to \code{FUN(X, ...)} (assuming that \code{AGGREGATE} is set appropriately). } \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org}. Original code as attributed in \code{\link[parallel]{pvec}}. } \seealso{ \code{\link{bplapply}} for parallel lapply. \code{\link{BiocParallelParam}} for possible values of \code{BPPARAM}. \code{\link{pvec}} for background. } \examples{ showMethods("bpvec") ## ten tasks (1:10), called with as many back-end elements are specified ## by BPPARAM. Compare with bplapply fun <- function(v) { message("working") sqrt(v) } system.time(result <- bpvec(1:10, fun)) result } \keyword{manip} BiocParallel/man/bpvectorize.Rd0000644000175100017510000000440412607264437017536 0ustar00biocbuildbiocbuild\name{bpvectorize} \alias{bpvectorize} \alias{bpvectorize,ANY,ANY-method} \alias{bpvectorize,ANY,missing-method} \title{Transform vectorized functions into parallelized, vectorized function} \description{ This transforms a vectorized function into a parallel, vectorized function. Any function \code{FUN} can be used, provided its parallelized argument (by default, the first argument) has a \code{length} and \code{[} method defined, and the return value of \code{FUN} can be concatenated with \code{c}. } \usage{ bpvectorize(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) \S4method{bpvectorize}{ANY,ANY}(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) \S4method{bpvectorize}{ANY,missing}(FUN, ..., BPREDO=list(), BPPARAM=bpparam()) } \arguments{ \item{FUN}{A function whose first argument has a \code{length} and can be subset \code{[}, and whose evaluation would benefit by splitting the argument into subsets, each one of which is independently transformed by \code{FUN}. The return value of \code{FUN} must support concatenation with \code{c}. } \item{...}{Additional arguments to parallization, unused. } \item{BPPARAM}{An optional \code{\link{BiocParallelParam}} instance determining the parallel back-end to be used during evaluation. } \item{BPREDO}{A \code{list} of output from \code{bpvectorize} with one or more failed elements. When a list is given in \code{BPREDO}, \code{bpok} is used to identify errors, tasks are rerun and inserted into the original results. } } \details{ The result of \code{bpvectorize} is a function with signature \code{\dots}; arguments to the returned function are the original arguments \code{FUN}. \code{BPPARAM} is used for parallel evaluation. When \code{BPPARAM} is a class for which no method is defined (e.g., \code{\link{SerialParam}}), \code{FUN(X)} is used. See \code{showMethods{bpvectorize}} for additional methods, if any. } \value{ A function taking the same arguments as \code{FUN}, but evaluated using \code{\link{bpvec}} for parallel evaluation across available cores. } \author{ Ryan Thompson \url{mailto:rct@thompsonclan.org} } \seealso{\code{bpvec}} \examples{ psqrt <- bpvectorize(sqrt) ## default parallelization psqrt(1:10) } \keyword{interface} BiocParallel/man/register.Rd0000644000175100017510000001003712607264437017025 0ustar00biocbuildbiocbuild\name{register} \alias{register} \alias{registered} \alias{bpparam} \title{Maintain a global registry of available back-end Params} \description{ Use functions on this page to add to or query a registry of back-ends, including the default for use when no \code{BPPARAM} object is provided to functions. } \usage{ register(BPPARAM, default=TRUE) registered(bpparamClass) bpparam(bpparamClass) } \arguments{ \item{BPPARAM}{ An instance of a \code{BiocParallelParam} class, e.g., \code{\link{MulticoreParam}}, \code{\link{SnowParam}}, \code{\link{DoparParam}}. } \item{default}{ Make this the default \code{BiocParallelParam} for subsequent evaluations? If \code{FALSE}, the argument is placed at the lowest priority position. } \item{bpparamClass}{ When present, the text name of the \code{BiocParallelParam} class (e.g., \dQuote{MulticoreParam}) to be retrieved from the registry. When absent, a list of all registered instances is returned. } } \details{ The registry is a list of back-ends with configuration parameters for parallel evaluation. The first list entry is the default and is used by \code{BiocParallel} functions when no \code{BPPARAM} argument is supplied. At load time the registry is populated with default backends. On Windows these are \code{SnowParam} and \code{SerialParam} and on non-Windows \code{MulticoreParam}, \code{SnowParam} and \code{SerialParam}. When \code{snowWorkers()} or \code{multicoreWorkers} returns a single core, only \code{SerialParm} is registered. The \code{\link{BiocParallelParam}} objects are constructed from global options of the corresponding name, or from the default constructor (e.g., \code{SnowParam()}) if no option is specified. The user can set customizations during start-up (e.g., in an \code{.Rprofile} file) with, for instance, \code{options(MulticoreParam=quote(MulticoreParam(workers=8)))}. The act of \dQuote{registering} a back-end modifies the existing \code{\link{BiocParallelParam}} in the list; only one param of each type can be present in the registry. When \code{default=TRUE}, the newly registered param is moved to the top of the list thereby making it the default. When \code{default=FALSE}, the param is modified `in place` vs being moved to the top. \code{bpparam()}, invoked with no arguments, returns the default \code{\link{BiocParallelParam}} instance from the registry. When called with the text name of a \code{bpparamClass}, the global options are consulted first, e.g., \code{options(MulticoreParam=MulticoreParam())} and then the value of \code{registered(bpparamClass)}. } \value{ \code{register} returns, invisibly, a list of registered back-ends. \code{registered} returns the back-end of type \code{bpparamClass} or, if \code{bpparamClass} is missing, a list of all registered back-ends. \code{bpparam} returns the back-end of type \code{bpparamClass} or, } \author{ Martin Morgan \url{mailto:mtmorgan@fhcrc.org}. } \seealso{ \code{\link{BiocParallelParam}} for possible values of \code{BPPARAM}. } \examples{ ## ---------------------------------------------------------------------- ## The registry ## ---------------------------------------------------------------------- ## The default registry. registered() ## When default = TRUE the last param registered becomes the new default. snowparam <- SnowParam(workers = 3, type = "SOCK") register(snowparam, default = TRUE) registered() ## Retrieve the default back-end, bpparam() ## or a specific BiocParallelParam. bpparam("SnowParam") ## ---------------------------------------------------------------------- ## Specifying a back-end for evaluation ## ---------------------------------------------------------------------- ## The back-end of choice is given as the BPPARAM argument to ## the BiocParallel functions. None, one, or multiple back-ends can be ## used. bplapply(1:6, sqrt, BPPARAM = MulticoreParam(3)) ## When not specified, the default from the registry is used. bplapply(1:6, sqrt) } \keyword{manip} BiocParallel/tests/0000755000175100017510000000000012607264437015300 5ustar00biocbuildbiocbuildBiocParallel/tests/test.R0000644000175100017510000000005312607264437016400 0ustar00biocbuildbiocbuildBiocGenerics:::testPackage("BiocParallel") BiocParallel/vignettes/0000755000175100017510000000000012607610201016126 5ustar00biocbuildbiocbuildBiocParallel/vignettes/Errors_Logs_And_Debugging.Rnw0000644000175100017510000005426412607264437023646 0ustar00biocbuildbiocbuild%\VignetteIndexEntry{Errors, Logs and Debugging} %\VignetteKeywords{parallel, Infrastructure} %\VignettePackage{BiocParallel} %\VignetteEngine{knitr::knitr} \documentclass{article} <>= BiocStyle::latex() @ \newcommand{\BiocParallel}{\Biocpkg{BiocParallel}} \title{Errors, Logs and Debugging in \BiocParallel} \author{Valerie Obenchain and Martin Morgan} \date{Edited: May 13, 2015; Compiled: \today} \begin{document} \maketitle \tableofcontents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% This vignette is part of the \BiocParallel{} package and focuses on error handling and logging. A section at the end demonstrates how the two can be used together as part of an effective debugging routine. \BiocParallel{} provides a unified interface to the parallel infrastructure in several packages including \CRANpkg{snow}, \CRANpkg{parallel}, \CRANpkg{BatchJobs} and \CRANpkg{foreach}. When implementing error handling in \BiocParallel{} the primary goals were to enable the return of partial results when an error is thrown (vs just the error) and to establish logging on the workers. In cases where error handling existed, such as \CRANpkg{BatchJobs} and \CRANpkg{foreach}, those behaviors were preserved. Clusters created with \CRANpkg{snow} and \CRANpkg{parallel} now have flexible error handling and logging available through \Rcode{SnowParam} and \Rcode{MulticoreParam} objects. In this document the term ``job'' is used to describe a single call to a bp*apply function (e.g., the \Rcode{X} in \Rcode{bplapply}). A ``job'' consists of one or more ``tasks'', where each ``task'' is run separately on a worker. The \Rpackage{BiocParallel} package is available at bioconductor.org and can be downloaded via \Rcode{biocLite}: <>= source("http://bioconductor.org/biocLite.R") biocLite("BiocParallel") @ Load the package: <>= library(BiocParallel) @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Error Handling} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsection{Catching errors} By default, \BiocParallel{} attempts all computations and returns any warnings and errors along with successful results. The \Rcode{stop.on.error} field controls if the job is terminated as soon as one task throws an error. This is useful when debugging or when running large jobs (many tasks) and you want to be notified of an error before all runs complete. \Rcode{stop.on.error} is \Rcode{FALSE} by default. <>= param <- SnowParam() param @ The field can be set when constructing the param or modified with the \Rcode{bpstopOnError} accessor. <>= param <- SnowParam(2, stop.on.error = TRUE) param bpstopOnError(param) <- FALSE @ In this example \Rcode{X} is length 6. By default, the elements of \Rcode{X} are divided as evenly as possible over the number of workers and run in chunks. To more clearly demonstrate the affect of \Rcode{stop.on.error} the number of tasks is set equal to the length of \Rcode{X}. This forces each element of \Rcode{X} to be executed separately (6 tasks) vs chunked. <>= X <- list(1, 2, "3", 4, 5, 6) param <- SnowParam(3, tasks = length(X), stop.on.error = TRUE) @ The output list contains results for tasks 1 and 2 and an error for task 3. Tasks 4, 5, and 6 are not attempted. \begin{verbatim} bplapply(X, sqrt, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## ERROR [2015-08-21 14:08:52] non-numeric argument to mathematical function ## error in task 3 ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{verbatim} Next we look at an example where the elements of \Rcode{X} are grouped instead of run separately. The default value for \Rcode{tasks} is 0 which means 'X' is split as evenly as possible across the number of workers. There are 3 workers so the first task consists of list(1, 2), the second is list("3", 4) and the third is list(5, 6). <>= X <- list(1, 2, "3", 4, 5, 6) param <- SnowParam(3, stop.on.error = TRUE) @ To simulate a longer running computation sleep time is added to 'FUN'. The sleep forces task 2 to finish before task 3. <>= FUN <- function(i) { Sys.sleep(i); sqrt(i) } @ The output shows an error in task 2 (vs 3 in the previous example) and a result for '4' is included because it was part of the second task. \begin{verbatim} bplapply(X, FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## ERROR [2015-08-21 14:10:28] non-numeric argument to mathematical function ## error in task 2 ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[4]] ## [1] 2 \end{verbatim} Side Note: Results are collected from workers as they finish which is not necessarily the same order in which they were loaded. Depending on how tasks are divided among workers it is possible that the task with an error completes after all others. In that situation the output will includes all results along with the error message and it may appear that \Rcode{stop.on.error} is not doing much good. This is simply a heads up that the usefulness of \Rcode{stop.on.error} may vary with run time and distribution of tasks over workers. \subsection{Identify failures with \Rcode{bpok()}} The \Rcode{bpok()} function is a quick way to determine which (if any) tasks failed. In this example the second element fails. <>= res <- bplapply(list(1, "2", 3), sqrt) res @ \Rcode{bpok} returns TRUE if the task was successful. <>= bpok(res) @ Once errors are identified with \Rcode{bpok} the traceback can be retrieved with the \Rcode{attr} function. This is possible because errors are returned as \Rcode{condition} objects with the traceback as an attribute. <>= tail(attr(res[[which(!bpok(res))]], "traceback")) @ \subsection{Rerun failed tasks with \Rcode{BPREDO}} Tasks can fail due to hardware problems or bugs in the input data. The \BiocParallel{} functions support a \Rcode{BPREDO} (re-do) argument for recomputing only the tasks that failed. A list of partial results and errors is supplied to \Rcode{BPREDO} in a second call to the function. The failed elements are identified, recomputed and inserted into the original results. The bug in this example is the second element of 'X' which is a character when it should be numeric. \begin{verbatim} ## X <- list(1, "2", 3) ## res <- bplapply(X, sqrt) ## res ## ## [[1]] ## [1] 1 ## ## [[2]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[3]] ## [1] 1.732051 \end{verbatim} First fix the input data. <>= X.redo <- list(1, 2, 3) @ Repeat the call to \Rcode{bplapply} this time supplying the partial results as \Rcode{BPREDO}. \begin{verbatim} ## bplapply(X.redo, sqrt, BPREDO = res) ## ## Resuming previous calculation ... ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 1.414214 ## ## [[3]] ## [1] 1.732051 \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Logging} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NOTE: Logging as described in this section is supported for SnowParam, MulticoreParam and SerialParam. \subsection{Parameters} Logging in \BiocParallel{} is controlled by 3 fields in the \Rcode{BiocParallelParam}: \begin{verbatim} log: TRUE or FALSE logdir: location to write log file threshold: one of "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL" \end{verbatim} When \Rcode{log = TRUE} the \CRANpkg{futile.logger} package is loaded on each worker. \BiocParallel{} uses a custom script on the workers to collect log messages as well as additional statistics such as gc, runtime and node information. Output to stderr and stdout is also captured. By default \Rcode{log} is FALSE and \Rcode{threshold} is {\it INFO}. <>= param <- SnowParam() param @ Turn logging on and set the threshold to {\it TRACE}. <>= bplog(param) <- TRUE bpthreshold(param) <- "TRACE" param @ \subsection{Setting a threshold} All thresholds defined in \CRANpkg{futile.logger} are supported: {\it FATAL}, {\it ERROR}, {\it WARN}, {\it INFO}, {\it DEBUG} and {\it TRACE}. All messages greater than or equal to the severity of the threshold are shown. For example, a threshold of {\it INFO} will print all messages tagged as {\it FATAL}, {\it ERROR}, {\it WARN} and {\it INFO}. Because the default threshold is {\it INFO} it catches the {\it ERROR}-level message thrown when attempting the square root of a character ("2"). <>= bplapply(list(1, "2", 3), sqrt, BPPARAM = param) @ All user-supplied messages written in the \CRANpkg{futile.logger} syntax are also captured. This function performs argument checking and includes a couple of {\it WARN} and {\it DEBUG}-level messages. <>= FUN <- function(i) { flog.debug(paste0("value of 'i' = ", i)) if (!length(i)) { flog.warn("'i' is missing") NA } else if (!is(i, "numeric")) { flog.debug("coercing 'i' to numeric") as.numeric(i) } else { i } } @ Turn logging on and set the threshold to {\it WARN}. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "WARN") bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## loading futile.logger on workers ## ############### LOG OUTPUT ############### ## Task: 1 ## Node: 1 ## Timestamp: 2015-08-21 14:20:41 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.002 0.001 0.004 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 324081 17.4 592000 31.7 341266 18.3 ## Vcells 431677 3.3 1023718 7.9 497048 3.8 ## Log messages: ## ## stderr and stdout: ## character(0) ## ############### LOG OUTPUT ############### ## Task: 2 ## Node: 2 ## Timestamp: 2015-08-21 14:20:41 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.007 0.000 0.007 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325664 17.4 592000 31.7 367737 19.7 ## Vcells 434331 3.4 1023718 7.9 519642 4.0 ## Log messages: ## WARN [2015-08-21 14:20:41] 'i' is missing ## ## stderr and stdout: ## character(0) ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 2 ## ## [[3]] ## [1] NA \end{verbatim} Changing the threshold to {\it DEBUG} catches both {\it WARN} and {\it DEBUG} messages. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "DEBUG") bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## starting worker for localhost:11441 ## starting worker for localhost:11441 ## loading futile.logger on workers ## ############### LOG OUTPUT ############### ## Task: 1 ## Node: 1 ## Timestamp: 2015-08-21 14:21:40 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.005 0.000 0.005 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325633 17.4 592000 31.7 352929 18.9 ## Vcells 434309 3.4 1023718 7.9 515223 4.0 ## Log messages: ## DEBUG [2015-08-21 14:21:40] value of 'i' = 1 ## ## stderr and stdout: ## character(0) ## ############### LOG OUTPUT ############### ## Task: 2 ## Node: 2 ## Timestamp: 2015-08-21 14:21:40 ## Success: TRUE ## Task duration: ## user system elapsed ## 0.01 0.00 0.01 ## Memory used: ## used (Mb) gc trigger (Mb) max used (Mb) ## Ncells 325668 17.4 592000 31.7 394333 21.1 ## Vcells 434358 3.4 1023718 7.9 524369 4.1 ## Log messages: ## DEBUG [2015-08-21 14:21:40] value of 'i' = 2 ## DEBUG [2015-08-21 14:21:40] coercing 'i' to numeric ## DEBUG [2015-08-21 14:21:40] value of 'i' = ## WARN [2015-08-21 14:21:40] 'i' is missing ## ## stderr and stdout: ## character(0) ## [[1]] ## [1] 1 ## ## [[2]] ## [1] 2 ## ## [[3]] ## [1] NA \end{verbatim} \subsection{Log files} When \Rcode{log == TRUE}, log messages are written to the console by default. If \Rcode{logdir} is given the output is written out to files, one per task. File names are prefixed with the name in \Rcode{bpjobname(BPPARAM)}; default is 'BPJOB'. \begin{verbatim} param <- SnowParam(2, log = TRUE, threshold = "DEBUG", logdir = tempdir()) res <- bplapply(list(1, "2", integer()), FUN, BPPARAM = param) ## loading futile.logger on workers list.files(bplogdir(param)) ## [1] "BPJOB.task1.log" "BPJOB.task2.log" \end{verbatim} Read in BPJOB.task2.log: \begin{verbatim} readLines(paste0(bplogdir(param), "/BPJOB.task2.log")) ## [1] "############### LOG OUTPUT ###############" ## [2] "Task: 2" ## [3] "Node: 2" ## [4] "Timestamp: 2015-07-08 09:03:59" ## [5] "Success: TRUE" ## [6] "Task duration: " ## [7] " user system elapsed " ## [8] " 0.009 0.000 0.011 " ## [9] "Memory use (gc): " ## [10] " used (Mb) gc trigger (Mb) max used (Mb)" ## [11] "Ncells 325664 17.4 592000 31.7 393522 21.1" ## [12] "Vcells 436181 3.4 1023718 7.9 530425 4.1" ## [13] "Log messages:" ## [14] "DEBUG [2015-07-08 09:03:59] value of 'i': 2" ## [15] "INFO [2015-07-08 09:03:59] coercing to numeric" ## [16] "DEBUG [2015-07-08 09:03:59] value of 'i': " ## [17] "WARN [2015-07-08 09:03:59] 'i' is missing" ## [18] "" ## [19] "stderr and stdout:" ## [20] "character(0)" \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Worker timeout} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NOTE: \Rcode{timeout} is supported for SnowParam and MulticoreParam. For long running jobs or untested code it can be useful to set a time limit. The \Rcode{timeout} field is the time, in seconds, allowed for each worker to complete a task; default is \Rcode{Inf}. If the task takes longer than \Rcode{timeout} a timeout error is returned. Time can be changed during param construction with the \Rcode{timeout} arg, <>= param <- SnowParam(timeout = 20) param @ or with the \Rcode{bptimeout} setter: <>= bptimeout(param) <- 2 param @ \begin{verbatim} fun <- function(i) { Sys.sleep(i) i } bplapply(1:3, fun, BPPARAM = param) ## starting worker for localhost:11747 ## starting worker for localhost:11747 ## starting worker for localhost:11747 ## [[1]] ## [1] 1 ## ## [[2]] ## ## traceback() available as 'attr(x, "traceback")' ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Debugging} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Effective debugging strategies vary by problem and often involve a combination of error handling and logging techniques. In general, when debugging \R{}-generated errors the traceback is often the best place to start followed by adding debug messages to the worker function. When trouble shooting unexpected behavior (i.e., not a formal error or warning) adding debug messages or switching to \Rcode{SerialParam} are good approaches. Below is an overview of these different strategies. \subsection{Accessing the traceback} The traceback is a good place to start when tracking down \R{}-generated errors. Because the function is executed on the workers it's not accessible for interactive debugging with functions such as \Rcode{trace} or \Rcode{debug}. The traceback provides a snapshot of the state of the worker at the time the error was thrown. This function takes the square root of the absolute value of a vector. <>= fun1 <- function(x) { v <- abs(x) sapply(1:length(v), function(i) sqrt(v[i])) } @ Calling ``fun1'' with a character throws an error: \begin{verbatim} res <- bplapply(list(c(1,3), 5, "6"), fun1) res ## [[1]] ## [1] 1.000000 1.732051 ## ## [[2]] ## [1] 2.236068 ## ## [[3]] ## ## traceback() available as 'attr(x, "traceback")' \end{vebatim} Identify which elements failed with \Rcode{bpok}: \begin{verbatim} bpok(res) ## [1] TRUE TRUE FALSE \end{verbatim} The error (i.e., third element of ``res'') is a \Rcode{condition} object: \begin{verbatim} is(res[[3]], "condition") ## [1] TRUE \end{verbatim} The traceback is an attribute of the \Rcode{condition} and can be accessed with the \Rcode{attr} function. \begin{verbatim} noquote(tail(attr(res[[3]], "traceback"))) ## [1] call <- sapply(sys.calls(), deparse) ## [2] e <- structure(e, class = c("remote-error", "condition"), ## [3] traceback = capture.output(traceback(call))) ## [4] invokeRestart("abort", e) ## [5] }, "non-numeric argument to mathematical function", quote(abs(x))) ## [6] 1: h(simpleError(msg, call)) \end{verbatim} \subsection{Adding debug messages} When a \Rcode{numeric()} is passed to ``fun1'' no formal error is thrown but the length of the second list element is 2 when it should be 1. \begin{verbatim} bplapply(list(c(1,3), numeric(), 6), fun1) ## [[1]] ## [1] 1.000000 1.732051 ## ## [[2]] ## [[2]][[1]] ## [1] NA ## ## [[2]][[2]] ## numeric(0) ## ## [[3]] ## [1] 2.44949 \end{verbatim} Without a formal error we have no traceback so we'll add a few debug messages. The \CRANpkg{futile.logger} syntax tags messages with different levels of severity. A message created with \Rcode{flog.debug} will only print if the threshold is {\it DEBUG} or lower. So in this case it will catch both INFO and DEBUG messages. ``fun2'' has debug statements that show the value of `x', length of `v' and the index `i'. <>= fun2 <- function(x) { v <- abs(x) flog.debug( paste0("'x' = ", paste(x, collapse=","), ": length(v) = ", length(v)) ) sapply(1:length(v), function(i) { flog.info(paste0("'i' = ", i)) sqrt(v[i]) }) } @ Create a param that logs at a threshold level of {\it DEBUG}. <>= param <- SnowParam(3, log = TRUE, threshold = "DEBUG") @ The debug messages reveal the problem occurs when `x' is \Rcode{numeric()}. The index for \Rcode{sapply} is along `v' which in this case has length 0. This forces `i' to take values of `1' and `0' giving an output of length 2 for the second element (i.e., \Rcode{NA} and \Rcode{numeric(0)}). <>= res <- bplapply(list(c(1,3), numeric(), 6), fun2, BPPARAM = param) res @ ``fun2'' can be fixed by using \Rcode{seq\_along(v)} to create the index instead of \Rcode{1:length(v)}. \subsection{Local debugging with \Rcode{SerialParam}} Errors that occur on parallel workers can be difficult to debug. Often the traceback sent back from the workers is too much to parse or not informative. We are also limited in that our interactive strategies of \Rcode{browser} and \Rcode{trace} are not available. One option for further debugging is to run the code in serial with \Rcode{SerialParam}. This removes the ``parallel'' component and is the same as running a straight \Rcode{*apply} function. This approach may not help if the problem was hardware related but can be very useful when the bug is in the \R{} code. We use the now familiar square root example with a bug in the second element of \Rcode{X}. <>= res <- bplapply(list(1, "2", 3), sqrt, BPPARAM = SnowParam(3)) res @ \Rcode{sqrt} is an internal function. The problem is likely with our data going into the function and not the \Rcode{sqrt} function itself. We can write a small wrapper around \Rcode{sqrt} so we can see the input. <>= fun3 <- function(i) sqrt(i) @ Debug the new function: \begin{verbatim} debug(fun3) \end{verbatim} We want to recompute only elements that failed and for that we use the \Rcode{BPREDO} argument. The BPPARAM has been changed to \Rcode{SerialParam} so the job is run in the local workspace in serial. \begin{verbatim} > bplapply(list(1, "2", 3), fun3, BPREDO = res, BPPARAM = SerialParam()) Resuming previous calculation ... debugging in: FUN(...) debug: sqrt(i) Browse[2]> objects() [1] "i" Browse[2]> i [1] "2" Browse[2]> \end{verbatim} The local browsing allowed us to see the problem input was the character "2". %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{\Rcode{sessionInfo()}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <>= toLatex(sessionInfo()) @ \end{document} BiocParallel/vignettes/Introduction_To_BiocParallel.Rnw0000644000175100017510000010137712607264437024403 0ustar00biocbuildbiocbuild%\VignetteIndexEntry{Introduction to BiocParallel} %\VignetteKeywords{parallel, Infrastructure} %\VignettePackage{BiocParallel} %\VignetteEngine{knitr::knitr} \documentclass{article} <>= BiocStyle::latex() @ \newcommand{\BiocParallel}{\Biocpkg{BiocParallel}} \title{Introduction to \BiocParallel} \author{Vincent Carey, Michael Lawrence, Martin Morgan\footnote{\url{mtmorgan@fhcrc.org}}} \date{Edited: May 6, 2015; Compiled: \today} \begin{document} \maketitle \tableofcontents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Numerous approaches are available for parallel computing in \R{}. The CRAN Task View for high performance and parallel computing provides useful high-level summaries and package categorization. \url{http://cran.r-project.org/web/views/HighPerformanceComputing.html} Most Task View packages cite or identify one or more of \CRANpkg{snow}, \CRANpkg{Rmpi}, \CRANpkg{multicore} or \CRANpkg{foreach} as relevant parallelization infrastructure. Direct support in \R{} for parallel computing started with release 2.14.0 with inclusion of the \CRANpkg{parallel} package which contains modified versions of \CRANpkg{multicore} and \CRANpkg{snow}. A basic objective of \BiocParallel{} is to reduce the complexity faced when developing and using software that performs parallel computations. With the introduction of the \Rcode{BiocParallelParam} object, \BiocParallel{} aims to provide a unified interface to existing parallel infrastructure where code can be easily executed in different environments. The \Rcode{BiocParallelParam} specifies the environment of choice as well as computing resources and is invoked by `registration` or passed as an argument to the \BiocParallel{} functions. \BiocParallel{} offers the following conveniences over the `roll your own` approach to parallel programming. \begin{itemize} \setlength{\itemsep}{5pt} \item{unified interface:}{ \Rcode{BiocParallelParam} instances define the method of parallel evaluation (multi-core, snow cluster, etc.) and computing resources (number of workers, error handling, cleanup, etc.). } \item{parallel iteration over lists, files and vectorized operations:}{ \Rcode{bplapply}, \Rcode{bpmapply} and \Rcode{bpvec} provide parallel list iteration and vectorized operations. \Rcode{bpiterate} iterates through files distributing chunks to parallel workers. } \item{cluster scheduling:}{ When the parallel environment is managed by a cluster scheduler through \CRANpkg{BatchJobs}, job management and result retrieval are considerably simplified. } \item{support of \Rcode{foreach}:}{ The \CRANpkg{foreach} and \CRANpkg{iterators} packages are fully supported. Registration of the parallel back end uses \Rcode{BiocParallelParam} instances. } \end{itemize} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Quick start} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The \Rpackage{BiocParallel} package is available at bioconductor.org and can be downloaded via \Rcode{biocLite}: <>= source("http://bioconductor.org/biocLite.R") biocLite("BiocParallel") @ Load \BiocParallel{}. <>= library(BiocParallel) @ The test function simply returns the square root of ``x''. <>= FUN <- function(x) { round(sqrt(x), 4) } @ Functions in \BiocParallel use the registered back-ends for parallel evaluation. The default is the top entry of the registry list. <>= registered() @ %% Configure your R session to always use a particular back-end configure by setting options named after the back ends in an \Rcode{.Rprofile} file, e.g., <>= options(MulticoreParam=quote(MulticoreParam(workers=4))) @ When a \BiocParallel{} function is invoked with no \Rcode{BPPARAM} argument the default back-end is used. <>= bplapply(1:4, FUN) @ Environment specific back-ends can be defined for any of the registry entries. This example uses a 2-worker SOCK cluster. <>= param <- SnowParam(workers = 2, type = "SOCK") bplapply(1:4, FUN, BPPARAM = param) @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{The \BiocParallel{} Interface} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsection{Classes} \subsubsection{\Rcode{BiocParallelParam}} \Rcode{BiocParallelParam} instances configure different parallel evaluation environments. Creating or \Rcode{register()}ing a `\Rcode{Param}` allows the same code to be used in different parallel environments without a code re-write. Params listed are supported on all of Unix, Mac and Windows except \Rcode{MulticoreParam} which is Unix and Mac only. \begin{itemize} \setlength{\itemsep}{5pt} \item{\Rcode{SerialParam}: } Supported on all platforms. Evaluate \BiocParallel-enabled code with parallel evaluation disabled. This approach is useful when writing new scripts and trying to debug code. \item{\Rcode{MulticoreParam}: } Supported on Unix and Mac. On Windows, \Rcode{MulticoreParam} dispatches to \Rcode{SerialParam}. Evaluate \BiocParallel-enabled code using multiple cores on a single computer. When available, this is the most efficient and least troublesome way to parallelize code. Windows does not support multi-core evaluation (the \Rcode{MulticoreParam} object can be used, but evaluation is serial). On other operating systems, the default number of workers equals the value of the global option \Rcode{mc.cores} (e.g., \Rcode{getOption("mc.cores")}) or, if that is not set, the number of cores returned by \Rcode{parallel::detectCores()}. Based on facilities originally implemented in the \CRANpkg{multicore} package and subsequently the \CRANpkg{parallel} package in base \R{}. \item{\Rcode{SnowParam}: } Supported on all platforms. Evaluate \BiocParallel-enabled code across several distinct \R{} instances, on one or several computers. This is a straightforward approach for executing parallel code on one or several computers, and is based on facilities originally implemented in the \CRANpkg{snow} package. Different types of \CRANpkg{snow} `back-ends' are supported, including socket and MPI clusters. \item{\Rcode{BatchJobsParam}: } Applicable to clusters with formal schedulers. Evaluate \BiocParallel-enabled code by submitting to a cluster scheduler like SGE. \item{\Rcode{DoparParam}: } Supported on all platforms. Register a parallel back-end supported by the \CRANpkg{foreach} package for use with \BiocParallel. \end{itemize} The simplest illustration of creating \Rcode{BiocParallelParam} is <>= serialParam <- SerialParam() serialParam @ Most parameters have additional arguments influencing behavior, e.g., specifying the number of `cores' to use when creating a \Rcode{MulticoreParam} instance <>= multicoreParam <- MulticoreParam(workers = 8) multicoreParam @ Arguments are described on the corresponding help page, e.g., \Rcode{?MulticoreParam}. \subsubsection{\Rcode{register()}ing \Rcode{BiocParallelParam} instances} The list of registered \Rcode{BiocParallelParam} instances represents the user's preferences for different types of back-ends. Individual algorithms may specify a preferred back-end, and different back-ends maybe chosen when parallel evaluation is nested. The registry behaves like a `stack' in that the last entry registered is added to the top of the list and becomes the ``next used`` (i.e., the default). \Rcode{registered} invoked with no arguments lists all back-ends. <>= registered() @ \Rcode{bpparam} returns the default from the top of the list. <>= bpparam() @ Add a specialized instance with \Rcode{register}. When \Rcode{default} is TRUE, the new instance becomes the default. <>= register(BatchJobsParam(workers = 10), default = TRUE) @ BatchJobsParam has been moved to the top of the list and is now the default. <>= names(registered()) bpparam() @ \subsection{Functions} \subsubsection{Parallel looping, vectorized and aggregate operations} These are used in common functions, implemented as much as possible for all back-ends. The functions (see the help pages, e.g., \Rcode{?bplapply} for a full definition) include \begin{description} \item{\Rcode{bplapply(X, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to each element of \Rcode{X}. \Rcode{bplapply} invokes \Rcode{FUN} \Rcode{length(X)} times, each time with a single element of \Rcode{X}. \item{\Rcode{bpmapply(FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to the first, second, etc., elements of each argument in \ldots. \item{\Rcode{bpiterate(ITER, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to the output of function \Rcode{ITER}. Data chunks are returned by \Rcode{ITER} and distributed to parallel workers along with \Rcode{FUN}. Intended for iteration though an undefined number of data chunks (i.e., records in a file). \item{\Rcode{bpvec(X, FUN, ...)}: } Apply in parallel a function \Rcode{FUN} to subsets of \Rcode{X}. \Rcode{bpvec} invokes function \Rcode{FUN} as many times as there are cores or cluster nodes, with \Rcode{FUN} receiving a subset (typically more than 1 element, in contrast to \Rcode{bplapply}) of \Rcode{X}. \item{\Rcode{bpaggregate(x, data, FUN, ...)}: } Use the formula in \Rcode{x} to aggregate \Rcode{data} using \Rcode{FUN}. \end{description} \subsubsection{Parallel evaluation environment} These functions query and control the state of the parallel evaluation environment. \begin{description} \item{\Rcode{bpisup(x)}: } Query a \Rcode{BiocParallelParam} back-end \Rcode{x} for its status. \item{\Rcode{bpworkers}: } Query a \Rcode{BiocParallelParam} back-end for the number of workers available for parallel evaluation. \item{\Rcode{bptasks}: } Divides a job (e.g., single call to *lapply function) into tasks. Applicable to \Rcode{MulticoreParam} only; \Rcode{DoparParam} and \Rcode{BatchJobsParam} have their own approach to dividing a job among workers. \item{\Rcode{bpstart(x)}: } Start a parallel back end specified by \Rcode{BiocParallelParam} \Rcode{x}, if possible. \item{\Rcode{bpstop(x)}: } Stop a parallel back end specified by \Rcode{BiocParallelParam} \Rcode{x}. \end{description} \subsubsection{Error handling and logging} Logging and advanced error recovery is available in \Rcode{BiocParallel} 1.1.25 and later. For a more details see the vignette titled "Error Handling and Logging": <>= browseVignettes("BiocParallel") @ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Use cases} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Sample data are BAM files from a transcription profiling experiment available in the \Rpackage{RNAseqData.HNRNPC.bam.chr14} package. <>= library(RNAseqData.HNRNPC.bam.chr14) fls <- RNAseqData.HNRNPC.bam.chr14_BAMFILES @ \subsection{Single machine} \subsubsection{Multi-core} There are substantial benefits, such as shared memory, to be had using multiple cores on a single machine. On a single non-Windows machine the recommended approach is multi-core, or forked processes. This example counts overlaps between BAM files and a defined set of ranges. First create a GRanges with regions of interest (in practice this could be large). <>= library(GenomicAlignments) ## for GenomicRanges and readGAlignments() gr <- GRanges("chr14", IRanges((1000:3999)*5000, width=1000)) @ A \Rclass{ScanBamParam} defines regions to extract from the files. <>= param <- ScanBamParam(which=range(gr)) @ FUN counts overlaps between the ranges in `gr` and the files. <>= FUN <- function(fl, param) { gal <- readGAlignments(fl, param = param) sum(countOverlaps(gr, gal)) } @ All parameters necessary for running a job in a multi-core environment are specified in the \Rclass{MulticoreParam} instance. <>= MulticoreParam() @ The \BiocParallel{} functions, such as \Rfunction{bplapply}, use information in the \Rclass{MulticoreParam} to set up the appropriate back-end and pass relevant arguments to low-level functions. \begin{verbatim} > bplapply(fls[1:3], FUN, BPPARAM = MulticoreParam(), param = param) $ERR127306 [1] 1185 $ERR127307 [1] 1123 $ERR127308 [1] 1241 \end{verbatim} Shared memory environments eliminate the need to pass large data between workers or load common packages. Note that in this code the GRanges data was not passed to all workers in \Rcode{bplapply} and FUN did not need to load \Biocpkg{GenomicAlignments} for access to the \Rcode{readGAlignments} function. \subsubsection{Clusters} Both Windows and non-Windows machines can use the cluster approach to spawn processes. \BiocParallel{} back-end choices for clusters on a single machine are \Rclass{SnowParam} for configuring a Snow cluster or the \Rclass{DoparParam} for use with the \Rpackage{foreach} package. To re-run the counting example, FUN needs to modified such that `gr` is passed as a formal argument and required libraries are loaded on each worker. <>= FUN <- function(fl, param, gr) { library(GenomicAlignments) gal <- readGAlignments(fl, param = param) sum(countOverlaps(gr, gal)) } @ Define a 2-worker SOCK Snow cluster. <>= snow <- SnowParam(workers = 2, type = "SOCK") @ A call to \Rcode{bplapply} with the \Rclass{SnowParam} creates the cluster and distributes the work. <>= bplapply(fls[1:3], FUN, BPPARAM = snow, param = param, gr = gr) @ The FUN written for the cluster adds some overhead due to the passing of the GRanges and the loading of \Biocpkg{GenomicAlignments} on each worker. This approach, however, has the advantage that it works on most platforms and does not require a coding change when switching between windows and non-windows machines. \subsection{\emph{Ad hoc} cluster of multiple machines} We use the term \emph{ad hoc} cluster to define a group of machines that can communicate with each other and to which the user has password-less log-in access. This example uses a group of compute machines ("the rhinos") on the FHCRC network. \subsubsection{Sockets} On Linux and Mac OS X, a socket cluster is created across machines by supplying machine names as the \Rcode{workers} argument to a \Rclass{BiocParallelParam} instance instead of a number. Each name represents an \R{} process; repeat names indicate multiple workers on the same machine. Create a \Rclass{SnowParam} with 2 cpus from `rhino01` and 1 from `rhino02`. <>= hosts <- c("rhino01", "rhino01", "rhino02") param <- SnowParam(workers = hosts, type = "SOCK") @ Execute FUN 4 times across the workers. \begin{verbatim} > FUN <- function(i) system("hostname", intern=TRUE) > bplapply(1:4, FUN, BPPARAM = param) [[1]] [1] "rhino01" [[2]] [1] "rhino01" [[3]] [1] "rhino02" [[4]] [1] "rhino01" \end{verbatim} When creating a cluster across Windows machines \Rcode{workers} must be IP addresses (e.g., "140.107.218.57") instead of machine names. \subsubsection{MPI} An MPI cluster across machines is created with \emph{mpirun} or \emph{mpiexec} from the command line or a script. A list of machine names provided as the -hostfile argument defines the mpi universe. The hostfile requests 2 processors on 3 different machines. \begin{verbatim} rhino01 slots=2 rhino02 slots=2 rhino03 slots=2 \end{verbatim} From the command line, start a single interactive \R{} process on the current machine. \begin{verbatim} mpiexec --np 1 --hostfile hostfile R --vanilla \end{verbatim} Load \BiocParallel{} and create an MPI Snow cluster. The number of \Rcode{workers} in \Rclass{SnowParam} should match the number of slots requested in the hostfile. Using a smaller number of workers uses a subset of the slots. \begin{verbatim} > library(BiocParallel) > param <- SnowParam(workers = 6, type = "MPI") \end{verbatim} Execute FUN 6 times across the workers. \begin{verbatim} > FUN <- function(i) system("hostname", intern=TRUE) > bplapply(1:6, FUN, BPPARAM = param) bplapply(1:6, FUN, BPPARAM = param) 6 slaves are spawned successfully. 0 failed. [[1]] [1] "rhino01" [[2]] [1] "rhino02" [[3]] [1] "rhino02" [[4]] [1] "rhino03" [[5]] [1] "rhino03" [[6]] [1] "rhino01" \end{verbatim} Batch jobs can be launched with mpiexec and R CMD BATCH. Code to be executed is in `Rcode.R`. \begin{verbatim} mpiexec --hostfile hostfile R CMD BATCH Rcode.R \end{verbatim} \subsection{Clusters with schedulers} Computer clusters are far from standardized, so the following may require significant adaptation; it is written from experience here at FHCRC, where we have a large cluster managed via SLURM. Nodes on the cluster have shared disks and common system images, minimizing complexity about making data resources available to individual nodes. There are two simple models for use of the cluster, Cluster-centric and R-centric. \subsubsection{Cluster-centric} The idea is to use cluster management software to allocate resources, and then arrange for an \R{} script to be evaluated in the context of allocated resources. NOTE: Depending on your cluster configuration it may be necessary to add a line to the template file instructing workers to use the version of R on the master / head node. Otherwise the default R on the worker nodes will be used. For SLURM, we might request space for 4 tasks (with \verb+salloc+ or \verb+sbatch+), arrange to start the MPI environment (with \verb+orterun+) and on a single node in that universe run an \R{} script \verb+BiocParallel-MPI.R+. The command is \begin{verbatim} $ salloc -N 4 orterun -n 1 R -f BiocParallel-MPI.R \end{verbatim} The \R{} script might do the following, using MPI for parallel evaluation. Start by loading necessary packages and defining \Rcode{FUN} work to be done <>= library(BiocParallel) library(Rmpi) FUN <- function(i) system("hostname", intern=TRUE) @ %% Create a \Rclass{SnowParam} instance with the number of nodes equal to the size of the MPI universe minus 1 (let one node dispatch jobs to workers), and register this instance as the default <>= param <- SnowParam(mpi.universe.size() - 1, "MPI") register(param) @ %% Evaluate the work in parallel, process the results, clean up, and quit <>= xx <- bplapply(1:100, FUN) table(unlist(xx)) mpi.quit() @ %% The entire session is as follows: \begin{knitrout} \definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe} \begin{verbatim} $ salloc -N 4 orterun -n 1 R --vanilla -f BiocParallel-MPI.R salloc: Job is in held state, pending scheduler release salloc: Pending job allocation 6762292 salloc: job 6762292 queued and waiting for resources salloc: job 6762292 has been allocated resources salloc: Granted job allocation 6762292 ## ... > FUN <- function(i) system("hostname", intern=TRUE) > > library(BiocParallel) > library(Rmpi) > param <- SnowParam(mpi.universe.size() - 1, "MPI") > register(param) > xx <- bplapply(1:100, FUN) 4 slaves are spawned successfully. 0 failed. > table(unlist(xx)) gizmof13 gizmof71 gizmof86 gizmof88 25 25 25 25 > > mpi.quit() salloc: Relinquishing job allocation 6762292 salloc: Job allocation 6762292 has been revoked. \end{verbatim} \end{kframe} \end{knitrout} One advantage of this approach is that the responsibility for managing the cluster lies firmly with the cluster management software -- if one wants more nodes, or needs special resources, then adjust parameters to \verb+salloc+ (or \verb+sbatch+). Notice that workers are spawned within the \Rcode{bplapply} function; it might often make sense to more explicitly manage workers with \Rfunction{bpstart} and \Rfunction{bpstop}, e.g., <>= param <- bpstart(SnowParam(mpi.universe.size() - 1, "MPI")) register(param) xx <- bplapply(1:100, FUN) bpstop(param) mpi.quit() @ \subsubsection{R-centric} A more \R-centric approach might start an \R{} script on the head node, and use \Rpackage{BatchJobs} to submit jobs from within the \R{} session. One way of doing this is to create a file containing a template for the job submission step, e.g., for SLURM\footnote{see \url{https://github.com/tudo-r/BatchJobs/tree/master/examples/cfSLURM}} \begin{knitrout} \definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe} \begin{verbatim} #!/bin/bash ## ## file: slurm.tmpl ## Job Resource Interface Definition ## ## ntasks [integer(1)]: Number of required tasks. ## ncpus [integer(1)]: Number of required cpus per task. ## walltime [integer(1)]: Walltime for this job, in minutes. ## ## 'resources' is an argument provided to BatchJobsParam() #SBATCH --job-name=<%= job.name %> #SBATCH --output=<%= log.file %> #SBATCH --error=<%= log.file %> #SBATCH --ntasks=<%= resources$ntasks %> #SBATCH --cpus-per-task=<%= resources$ncpus %> #SBATCH --time=0:10:0 ## Run R: we merge R output with stdout from SLURM, which gets then ## logged via --output option R CMD BATCH --no-save --no-restore "<%= rscript %>" /dev/stdout \end{verbatim} \end{kframe} \end{knitrout} The \R{} script, run interactively or from the command line, might then look like <>= ## define work to be done FUN <- function(i) system("hostname", intern=TRUE) library(BiocParallel) library(BatchJobs) ## register SLURM cluster instructions from the template file funs <- makeClusterFunctionsSLURM("slurm.tmpl") param <- BatchJobsParam(4, resources=list(ncpus=1), cluster.functions=funs) register(param) ## do work xx <- bplapply(1:100, FUN) table(unlist(xx)) @ %% The code runs on the head node until \Rcode{bplapply}, where the \R{} script interacts with the SLURM scheduler to request a SLURM allocation, run jobs, and retrieve results. The argument \Rcode{4} to \Rcode{BatchJobsParam} specifies the number of workers to request from the scheduler; \Rcode{bplapply} divides the 100 jobs among the 4 workers. If \Rcode{BatchJobsParam} had been created without specifying any workers, then 100 jobs implied by the argument to \Rcode{bplapply} would be associated with 100 tasks submitted to the scheduler. Because cluster tasks are running in independent \R{} instances, and often on physically separate machines, a convenient `best practice' is to write \Rcode{FUN} in a `functional programming' manner, such that all data required for the function is passed in as arguments or (for large data) loaded implicitly or explicitly (e.g., via an \R{} library) from disk. \subsection{\Bioconductor{} Amazon Machine Image (AMI)} An AMI for running \Bioconductor{} in the Elastic Compute Cloud (EC2) is available at \url{http://www.bioconductor.org/help/bioconductor-cloud-ami/}. The documentation provides detailed instructions for setting up accounts, launching instances and starting sessions via RStudio or SSH. Motivation for running jobs in the cloud may be access to additional CPUs and / or memory. Amazon Web Services (AWS) has a variety of instances ranging from general purpose to those optimized for compute, memory or I/O intensive jobs. See \url{http://aws.amazon.com/ec2/instance-types/} for a full listing of instances. Single or multiple instances can be requested when starting up the AMI. When a single instance is requested, interaction with the resource is the same as described in the `Single Machine` section above. Requesting multiple instances is essentially creating a cluster. To do this with the \Bioconductor{} AMI the StarCluster toolkit must be installed and a config file must be modified to specify the number and type of instances. Walk- through examples are provided in the \Bioconductor{} AMI web documentation \url{http://www.bioconductor.org/help/bioconductor-cloud-ami/}. This example uses a cluster of three m3.large instances each of which has 2 virtual CPUs. The name of the cluster in the config file is `smallcluster` and can be started with the `start` command: \begin{verbatim} starcluster start smallcluster \end{verbatim} List the cluster nodes: \begin{verbatim} ~ >starcluster listclusters StarCluster - (http://star.mit.edu/cluster) (v. 0.95.5) Software Tools for Academics and Researchers (STAR) Please submit bug reports to starcluster@mit.edu ----------------------------------------------- smallcluster (security group: @sc-smallcluster) ----------------------------------------------- Launch time: 2014-07-21 08:44:11 Uptime: 0 days, 00:09:30 Zone: us-east-1b Keypair: bioc-keypair-vobencha EBS volumes: N/A Cluster nodes: smallcluster-master running i-1f757234 ec2-54-91-126-83.compute-1.amazonaws.com smallcluster-node001 running i-1e757235 ec2-50-16-135-207.compute-1.amazonaws.com smallcluster-node002 running i-19757232 ec2-54-89-112-24.compute-1.amazonaws.com Total nodes: 3 \end{verbatim} Use the hostname for the master node to connect to the cluster via RStudio or SSH. The AMI cluster workers can communicate via SSH, SunGrid Engine (SGE) or MPI. For MPI, a \Robject{SnowParam} should be configured with \Rcode{type = MPI}. \begin{verbatim} > library(BiocParallel} > param <- SnowParam(workers=3, type = "MPI") \end{verbatim} Both SSH and SunGrid Engine require a \Robject{BatchJobsParam} but differ slightly in the set-up. For SSH, the nodes are registered as SSH workers. The `workers` argument to BatchJobsParam should be the number of nodes and `ncpus` the number of processors per node. \begin{verbatim} > library(BiocParallel} > library(BatchJobs) > funs <- makeClusterFunctionsSSH( + makeSSHWorker(nodename="smallcluster-master"), + makeSSHWorker(nodename="smallcluster-node001"), + makeSSHWorker(nodename="smallcluster-node002") > ) > param <- BatchJobsParam(workers=3, + resources=list(ncpus=2), + cluster.functions=funs) \end{verbatim} SunGrid Engine only needs the number of `workers` and `ncpus`. \begin{verbatim} > library(BiocParallel} > library(BatchJobs) > param <- BatchJobsParam(3, resources=list(ncpus=2)) \end{verbatim} This example uses 8 paired-end RNA-Seq BAM files, 1 per sequencing run, subset on chromosome 14 only. \begin{verbatim} > library(BiocParallel) > library(RNAseqData.HNRNPC.bam.chr14) > fls <- RNAseqData.HNRNPC.bam.chr14_BAMFILES \end{verbatim} Reads with more than 2 gaps in the CIGAR are isolated and \Rfunction{locateVariants} is used to identify where these multi-gap reads fall with respect to the UCSC hg19 known gene model. \begin{verbatim} > FUN <- function(file, ...) { + library(GenomicAlignments) + library(VariantAnnotation) + library(TxDb.Hsapiens.UCSC.hg19.knownGene) + txdb <- TxDb.Hsapiens.UCSC.hg19.knownGene + gal <- readGAlignmentPairs(file) + gal_with_gaps <- gal[njunc(gal) > 2L] + locateVariants(granges(gal_with_gaps), txdb, AllVariants()) > } \end{verbatim} Define a \Robject{BatchJobsParam} with 3 workers, 2 processors each. \begin{verbatim} > param <- BatchJobsParam(3, resources=(list(ncpus=2))) \end{verbatim} Execute in parallel over the 8 files. \begin{verbatim} > res <- bplapply(fls, FUN, BPPARAM=param) \end{verbatim} The return value is a list of GRanges, one for each file. The length of each \Robject{GRanges} will vary. \begin{verbatim} > elementLengths(res) ERR127306 ERR127307 ERR127308 ERR127309 ERR127302 ERR127303 ERR127304 ERR127305 5228 5202 5721 4326 4494 4909 4636 4538 \end{verbatim} Summarize the LOCATION and TXID output of \Rfunction{locateVariants} with \Rfunction{xtabs}. \begin{verbatim} > mdat <- lapply(res, function(x) mcols(x)[c("LOCATION", "TXID")]) > xtab <- xtabs(~ LOCATION + TXID, do.call(rbind, mdat)) \end{verbatim} The xtab object can be subset to isolate transcripts that meet a criteria. These are the top 5 transcripts hit by the multi-gap reads. \begin{verbatim} > xtab[,xtab["spliceSite", ] > 500] TXID LOCATION 51581 51582 53506 53507 53508 spliceSite 994 994 520 548 548 intron 0 0 0 0 0 fiveUTR 0 0 0 0 0 threeUTR 0 0 0 0 0 coding 0 0 0 0 0 intergenic 0 0 0 0 0 promoter 0 0 0 0 0 \end{verbatim} Extract the transcripts with multi-gap reads in promoter regions: \begin{verbatim} > xtab[,xtab["promoter", ] > 0] TXID LOCATION 51495 52270 52272 52273 52528 52538 52540 52541 52716 spliceSite 152 0 1 1 52 0 0 0 46 intron 0 0 0 0 0 0 0 0 0 fiveUTR 0 0 0 0 0 0 0 0 0 threeUTR 0 0 0 0 0 0 0 0 0 coding 0 0 0 0 0 0 0 0 0 intergenic 0 0 0 0 0 0 0 0 0 promoter 38 31 314 314 54 3 3 3 7 \end{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Analyzing genomic data in \Bioconductor{}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% General strategies exist for handling large genomic data that are well suited to \R{} programs. A manuscript titled \emph{Scalable Genomics with \R{} and \Bioconductor{}} (\url{http://www.imstat.org/sts/future_papers.html}) by Michael Lawrence and Martin Morgan, reviews several of these approaches and demonstrate implementation with \Bioconductor{} packages. Problem areas include scalable processing, summarization and visualization. The techniques presented include restricting queries, compressing data, iterating, and parallel computing. Ideas are presented in an approachable fashion within a framework of common use cases. This is a benificial read for anyone anyone tackling genomics problems in \R{}. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{For developers} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Developers wishing to use \BiocParallel{} in their own packages should include \BiocParallel{} in the \texttt{DESCRIPTION} file \begin{verbatim} Imports: BiocParallel \end{verbatim} and import the functions they wish to use in the \texttt{NAMESPACE} file, e.g., \begin{verbatim} importFrom(BiocParallel, bplapply) \end{verbatim} Then invoke the desired function in the code, e.g., <>= system.time(x <- bplapply(1:3, function(i) { Sys.sleep(i); i })) unlist(x) @ %% This will use the back-end returned by \Rcode{bpparam()}, by default a \Rcode{MulticoreParam()} instance or the user's preferred back-end if they have used \Rcode{register()}. The \Rcode{MulticoreParam} back-end does not require any special configuration or set-up and is therefore the safest option for developers. Unfortunately, \Rcode{MulticoreParam} provides only serial evaluation on Windows. Developers should document that their function uses \BiocParallel{} functions on the man page, and should perhaps include in their function signature an argument \Rcode{BPPARAM=bpparam()}. Developers wishing to invoke back-ends other than \Rcode{MulticoreParam} need to take special care to ensure that required packages, data, and functions are available and loaded on the remote nodes. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{\Rcode{sessionInfo()}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% <>= toLatex(sessionInfo()) @ \end{document}