ROTS/0000755000175000017500000000000014147460357011206 5ustar nileshnileshROTS/DESCRIPTION0000644000175000017500000000142714136101415012701 0ustar nileshnileshPackage: ROTS Type: Package Title: Reproducibility-Optimized Test Statistic Version: 1.22.0 Author: Fatemeh Seyednasrollah, Tomi Suomi, Laura L. Elo Maintainer: Tomi Suomi Description: Calculates the Reproducibility-Optimized Test Statistic (ROTS) for differential testing in omics data. biocViews: Software, GeneExpression, DifferentialExpression, Microarray, RNASeq, Proteomics, ImmunoOncology License: GPL (>= 2) LazyData: yes LinkingTo: Rcpp Imports: Rcpp, stats, Biobase, methods Suggests: testthat Depends: R (>= 3.3) NeedsCompilation: yes git_url: https://git.bioconductor.org/packages/ROTS git_branch: RELEASE_3_14 git_last_commit: a53ec77 git_last_commit_date: 2021-10-26 Date/Publication: 2021-10-26 Packaged: 2021-10-26 22:37:01 UTC; biocbuild ROTS/man/0000755000175000017500000000000014136051433011746 5ustar nileshnileshROTS/man/upsSpikeIn.Rd0000644000175000017500000000111714136051433014327 0ustar nileshnilesh\name{upsSpikeIn} \alias{upsSpikeIn} \docType{data} \title{Protein expression data from the CPTAC Technology Assessment (Study 6)} \description{ The data contains preprocessed expression values from CPTAC Technology Assessment, where equimolar concentrations of 48 human proteins (Sigma UPS 1) are spiked in five different concentrations into yeast proteome background and then processed. The example data contains only two groups from the study 6. } \usage{upsSpikeIn} \format{ \describe{ \item{\code{upsSpikeIn}}{A numeric matrix of protein expressions.} } } \keyword{datasets} ROTS/man/ROTS.Rd0000644000175000017500000001310614136051433013025 0ustar nileshnilesh\name{ROTS} \alias{ROTS} \alias{ROTS-package} \alias{print.ROTS} \title{Reproducibility-Optimized Test Statistic (ROTS)} \description{ Calculates the reproducibility-optimized test statistic (ROTS) for ranking genes in order of evidence for differential expression in two-group or multi-group comparisons. } \usage{ ROTS(data, groups, B = 1000, K = NULL, paired = FALSE, seed = NULL, a1 = NULL, a2 = NULL, log = TRUE, progress = FALSE, verbose = TRUE) } \arguments{ \item{data}{A numeric data matrix or an ExpressionSet instance, in which rows correspond to genes and columns correspond to samples.} \item{groups}{A vector indicating the sample groups.} \item{B}{An integer specifying the number of bootstrap and permutation resamplings (default 1000).} \item{K}{An integer indicating the largest top list size considered. If no value is given, 1/4 of the features are used.} \item{paired}{A logical indicating whether a paired test is performed. The samples are expected to be in the same order in both groups.} \item{seed}{An integer seed for the random number generator.} \item{a1, a2}{Non-negative parameters. See details section for further information.} \item{log}{A logical (deafult TRUE) indicating whether input data is log2 scaled. This information is only used to calculate log fold change.} \item{progress}{A logical indicating if additional progress bars are shown.} \item{verbose}{A logical indicating if messages are shown.} } \details{ The reproducibility-optimization procedure ROTS enables the selection of a suitable gene ranking statistic directly from the given dataset. The statistic is optimized among a family of t-type statistics d = m/(a1+a2*s), where m is the absolute difference between the group averages, s is the pooled standard error, and a1 and a2 are the non-negative parameters to be optimized. Two special cases of this family are the ordinary t-statistic (a1=0, a2=1) and the signal log-ratio (a1=1, a2=0). The optimality is defined in terms of maximal overlap of top-ranked genes in group-preserving bootstrap datasets. Importantly, besides the group labels, no a priori information about the properties of the data is required and no fixed cutoff for the gene rankings needs to be specified. For more details about the reproducibility-optimization procedure, see Elo et al. (2008). The user is given the option to adjust the largest top list size considered in the reproducibility calculations, since lowering this size can markedly reduce the computation time. In large data matrices with thousands of rows, we generally recommend using a size of several thousands. In smaller data matrices, and especially if there are many rows with only a few non-missing entries, the size of K should be decreased accordingly. ROTS tolerates a moderate number of missing values in the data matrix by effectively ignoring their contribution during the operation of the procedure. However, each row of the data matrix must contain at least two values in both groups. The rows containing only a few non-missing values should be removed; or alternatively, the missing data entries can be imputed using, e.g., the K-nearest neighbors imputation, which is implemented in the Bioconductor package \code{impute}. ROTS assumes the input data matrix is log2 transformed (the default for log parameter is set to TRUE). Although, this only affects fold change values, we recommend setting log parameter to FALSE if the input matrix is not log transformed to avoid downstream confusions. If the parameter values a1 and a2 are set by the user, then no optimization is performed but the statistic and FDR-values are calculated for the given parameters. The false discovery rate (FDR) for the optimized test statistic is calculated by permuting the sample labels. The results for all the genes can be obtained by setting the FDR cutoff to 1. } \value{ \code{ROTS} returns an object of class \code{ROTS}, which is a list containing the following components \item{data}{the expression data matrix.} \item{B}{the number of bootstrap and permutation resamplings.} \item{d}{the value of the optimized ROTS-statistic for each gene.} \item{pvalue}{the corresponding pvalues.} \item{FDR}{the corresponding FDR-values.} \item{a1}{the optimized parameter a1.} \item{a2}{the optimized parameter a2.} \item{k}{the optimized top list size.} \item{R}{the optimized reproducibility value.} \item{Z}{the optimized reproducibility Z-score.} \code{print} prints the optimized parameters a1 and a2, the optimized top list size and the corresponding reproducibility values. \code{summary} summarizes the results of a ROTS analysis. If \code{fdr} and \code{num.genes} are not specified, then the optimized parameters a1 and a2, the optimized top list size and the corresponding reproducibility values are shown. If \code{fdr} or \code{num.genes} is specified, then also the gene-specific information is shown for the genes at the specified FDR-level or top list size, respectively. } \references{ Suomi T, Seyednasrollah F, Jaakkola MK, Faux T, Elo LL.\cr ROTS: An R package for reproducibility-optimized statistical testing.\cr PLoS Comput Biol 2017; 13: e1005562. } \author{ Fatemeh Seyednasrollah, Tomi Suomi, Laura L. Elo\cr Maintainer: Tomi Suomi } \seealso{ \code{\link{affySpikeIn}} } \examples{ ## ROTS-statistic for the Affymetrix spike-in data. rots.out <- ROTS(data = affySpikeIn, groups = c(rep(0,5), rep(1,5)), B = 100, K = 500 , seed = 1234) ## Summary of the ROTS results. rots.summary <- summary(rots.out, fdr = 0.05) } \keyword{ math }ROTS/man/plot.ROTS.Rd0000644000175000017500000000233314136051433014002 0ustar nileshnilesh\name{plot.ROTS} \alias{plot.ROTS} \title{ Plotting of a ROTS object } \description{ Plots the ROTS objects created with the ROTS package. } \usage{ \method{plot}{ROTS}(x, fdr=0.05, type=NULL, labels=FALSE, ...) } \arguments{ \item{x}{A \code{ROTS} object created from differential expression testing run by ROTS.} \item{fdr}{Selected cutoff for FDR value.} \item{type}{Type of plot to be created. Options are: 'volcano', 'heatmap', 'ma', 'reproducibility', 'pvalue', 'pca'.} \item{labels}{Option to print labels for differentially expressed features.} \item{...}{Other arguments passed to the plot function.} } \details{ This function plots the results from a ROTS object using given false discovery rate threshold. } \value{ Plots the results from ROTS object. } \author{ Fatemeh Seyednasrollah, Tomi Suomi, Laura L. Elo\cr Maintainer: Tomi Suomi } \seealso{ \code{\link{affySpikeIn}} } \examples{ ## ROTS-statistic for the Affymetrix spike-in data. rots.out <- ROTS(data = affySpikeIn, groups = c(rep(0,5), rep(1,5)), B = 100, K = 500 , seed = 1234) ## Plotting of the ROTS results. plot(rots.out, type="volcano") } \keyword{ math } ROTS/man/affySpikeIn.Rd0000644000175000017500000000237414136051433014453 0ustar nileshnilesh\name{affySpikeIn} \alias{affySpikeIn} \alias{affySpikeIn.gnames} \alias{affySpikeIn.L} \alias{spikedgene} \docType{data} \title{Gene expression data from the Affymetrix spike-in experiment} \description{ The Affymetrix HG-U95Av2 spike-in data contains two groups of 12 samples. In this carefully controlled experiment, it is known that 14 genes are differentially expressed between the two sample groups, while the rest of the genes are equally expressed. In order to reduce the running time of the vignette example, this package uses a subset of 1000 genes of the original dataset including all the spiked genes with 5 samples from each group. The preprocessed RMA-normalized data were obtained from the Bioconductor 2.2 package \code{DEDS}. For more details about the spike-in experiment, see http://www.affymetrix.com. } \usage{affySpikeIn} \format{ \describe{ \item{\code{affySpikeIn}}{a numeric matrix of gene expression levels with 12626 rows (genes) and 24 columns (samples).} \item{\code{affySpikeIn.L}}{a vector indicating the sample groups.} \item{\code{affySpikeIn.gnames}}{a character vector containing the names of the genes.} \item{\code{spikedgene}}{a numeric vector indicating the locations of the 14 spiked genes.} } } \keyword{datasets} ROTS/man/summary.ROTS.Rd0000644000175000017500000000314414136051433014522 0ustar nileshnilesh\name{summary.ROTS} \alias{summary.ROTS} \title{ Summary of a ROTS object } \description{ Summarizes the differential testing results from ROTS package. } \usage{ \method{summary}{ROTS}(object, fdr=NULL, num.genes=NULL, verbose=TRUE, ...) } \arguments{ \item{object}{a \code{ROTS} object created from differential expression testing run by ROTS.} \item{fdr}{ selected cutoff for FDR value.} \item{num.genes}{ selected cutoff number for number of differentially detected features. } \item{verbose}{ If TRUE (default), summary function will print out 10 first detections which fulfill the cutoff criteria. } \item{...}{ other arguments passed to the summary function. } } \details{ This function returns the summary information (including row number, test-statistic, pvalue and FDR value) for the selected features. } \value{ Returns a matrix where the rows are the selected features and columns are the Row number, ROTS-statistic, pvalue and FDR. } \references{ Suomi T, Seyednasrollah F, Jaakkola MK, Faux T, Elo LL.\cr ROTS: An R package for reproducibility-optimized statistical testing.\cr PLoS Comput Biol 2017; 13: e1005562. } \author{ Fatemeh Seyednasrollah, Tomi Suomi, Laura L. Elo\cr Maintainer: Tomi Suomi } \seealso{ \code{\link{affySpikeIn}} } \examples{ ## ROTS-statistic for the Affymetrix spike-in data. rots.out <- ROTS(data = affySpikeIn, groups = c(rep(0,5), rep(1,5)), B = 100, K = 500 , seed = 1234) ## Summary of the ROTS results. rots.summary <- summary(rots.out, fdr = 0.05) } \keyword{ math } ROTS/src/0000755000175000017500000000000014136101415011756 5ustar nileshnileshROTS/src/NeedForSpeed1.cpp0000644000175000017500000000663614136051433015065 0ustar nileshnilesh#include #include #include #include #include using namespace Rcpp; using namespace std; // Sort array b based on the array a (decreasingly) void sort2_1( double* a, double* b, int n ) { // Create vector of pairs. static vector< pair > pairs; pairs.reserve( n ); for( int i = 0; i < n; ++i) pairs.push_back( pair(a[i], b[i]) ); // Sort the pairs (inc). By default pairs are sorted by the first value and // in the case of a tie, the second values are used. sort( pairs.begin(), pairs.end()); // Split the pairs back into the original vectors (dec). for( int i = 0; i < n; ++i ) { a[ n-1-i ] = pairs[i].first; b[ n-1-i ] = pairs[i].second; } // Empty the vector pairs.clear(); } // Array printing routine for debugging. template void printArray( T *a, int a_len ){ for( int i = 0; i < a_len; ++i ) cout << a[i] << " "; cout << endl; } // Calculate the overlap void calculateOverlap_1( double *r1, double *r2, int r_len, IntegerVector N_ovlp, int N_len_ovlp, int b, int B_ovlp, NumericVector &result ){ // Copy r2 and sort the copy. double *r3 = new double[ r_len ]; for( int i = 0; i < r_len; ++i ) r3[i] = r2[i]; sort(r3, r3 + r_len ); reverse(r3, r3 + r_len ); // Sort r2 by r1 sort2_1( r1, r2, r_len ); // Calculate the overlap for( int i = 0; i < N_len_ovlp; ++i ){ static double sum = 0; for( int j = 0; j <= ( N_ovlp[i] - 1 ); ++j ) sum += ( r2[j] >= r3[ N_ovlp[i] - 1 ] ); result[ (b-1) + i*B_ovlp ] = sum / N_ovlp[i]; sum = 0; } delete[] r3; } // Loop1 // [[Rcpp::export]] List NeedForSpeed1( SEXP D, SEXP S, SEXP pD, SEXP pS, SEXP nrow, SEXP N, SEXP N_len, SEXP ssq, SEXP B, SEXP overlaps, SEXP overlaps_P){ NumericVector D_ovlp(D); NumericVector S_ovlp(S); NumericVector pD_ovlp(pD); NumericVector pS_ovlp(pS); //IntegerVector nrow_ovlp(nrow); int nrow_ovlp = Rcpp::as(nrow); IntegerVector N_ovlp(N); int N_len_ovlp = Rcpp::as(N_len); double ssq_ovlp = Rcpp::as(ssq); int B_ovlp = Rcpp::as(B); NumericVector overlaps_ovlp(overlaps); NumericVector overlaps_P_ovlp(overlaps_P); double *res1 = new double[ nrow_ovlp ]; double *res2 = new double[ nrow_ovlp ]; double *pres1 = new double[ nrow_ovlp ]; double *pres2 = new double[ nrow_ovlp ]; for( int b = 1; b <= B_ovlp; ++b ){ for( int i = 0; i < nrow_ovlp; ++i ){ res1[i] = fabs( D_ovlp[ ( b - 1 ) * (nrow_ovlp) + i ] / ( S_ovlp[(b - 1) * (nrow_ovlp) + i] + (ssq_ovlp) ) ); res2[i] = fabs( D_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] / ( S_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] + (ssq_ovlp) ) ); pres1[i] = fabs( pD_ovlp[ ( b - 1 ) * (nrow_ovlp) + i ] / ( pS_ovlp[(b - 1) * (nrow_ovlp) + i] + (ssq_ovlp) ) ); pres2[i] = fabs( pD_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] / ( pS_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] + (ssq_ovlp) ) ); } calculateOverlap_1( res1, res2, nrow_ovlp, N_ovlp, N_len_ovlp, b, B_ovlp, overlaps_ovlp ); calculateOverlap_1( pres1, pres2, nrow_ovlp, N_ovlp, N_len_ovlp, b, B_ovlp, overlaps_P_ovlp ); } delete[] res1; delete[] res2; delete[] pres1; delete[] pres2; return Rcpp::List::create( Rcpp::Named("overlaps") = overlaps_ovlp , Rcpp::Named("overlaps_P") = overlaps_P_ovlp ) ; } ROTS/src/RcppExports.cpp0000644000175000017500000000527114136051433014764 0ustar nileshnilesh// This file was generated by Rcpp::compileAttributes // Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393 #include using namespace Rcpp; // NeedForSpeed1 List NeedForSpeed1(SEXP D, SEXP S, SEXP pD, SEXP pS, SEXP nrow, SEXP N, SEXP N_len, SEXP ssq, SEXP B, SEXP overlaps, SEXP overlaps_P); RcppExport SEXP ROTS_NeedForSpeed1(SEXP DSEXP, SEXP SSEXP, SEXP pDSEXP, SEXP pSSEXP, SEXP nrowSEXP, SEXP NSEXP, SEXP N_lenSEXP, SEXP ssqSEXP, SEXP BSEXP, SEXP overlapsSEXP, SEXP overlaps_PSEXP) { BEGIN_RCPP Rcpp::RObject __result; Rcpp::RNGScope __rngScope; Rcpp::traits::input_parameter< SEXP >::type D(DSEXP); Rcpp::traits::input_parameter< SEXP >::type S(SSEXP); Rcpp::traits::input_parameter< SEXP >::type pD(pDSEXP); Rcpp::traits::input_parameter< SEXP >::type pS(pSSEXP); Rcpp::traits::input_parameter< SEXP >::type nrow(nrowSEXP); Rcpp::traits::input_parameter< SEXP >::type N(NSEXP); Rcpp::traits::input_parameter< SEXP >::type N_len(N_lenSEXP); Rcpp::traits::input_parameter< SEXP >::type ssq(ssqSEXP); Rcpp::traits::input_parameter< SEXP >::type B(BSEXP); Rcpp::traits::input_parameter< SEXP >::type overlaps(overlapsSEXP); Rcpp::traits::input_parameter< SEXP >::type overlaps_P(overlaps_PSEXP); __result = Rcpp::wrap(NeedForSpeed1(D, S, pD, pS, nrow, N, N_len, ssq, B, overlaps, overlaps_P)); return __result; END_RCPP } // NeedForSpeed2 List NeedForSpeed2(SEXP D, SEXP pD, SEXP nrow, SEXP N, SEXP N_len, SEXP B, SEXP overlaps, SEXP overlaps_P); RcppExport SEXP ROTS_NeedForSpeed2(SEXP DSEXP, SEXP pDSEXP, SEXP nrowSEXP, SEXP NSEXP, SEXP N_lenSEXP, SEXP BSEXP, SEXP overlapsSEXP, SEXP overlaps_PSEXP) { BEGIN_RCPP Rcpp::RObject __result; Rcpp::RNGScope __rngScope; Rcpp::traits::input_parameter< SEXP >::type D(DSEXP); Rcpp::traits::input_parameter< SEXP >::type pD(pDSEXP); Rcpp::traits::input_parameter< SEXP >::type nrow(nrowSEXP); Rcpp::traits::input_parameter< SEXP >::type N(NSEXP); Rcpp::traits::input_parameter< SEXP >::type N_len(N_lenSEXP); Rcpp::traits::input_parameter< SEXP >::type B(BSEXP); Rcpp::traits::input_parameter< SEXP >::type overlaps(overlapsSEXP); Rcpp::traits::input_parameter< SEXP >::type overlaps_P(overlaps_PSEXP); __result = Rcpp::wrap(NeedForSpeed2(D, pD, nrow, N, N_len, B, overlaps, overlaps_P)); return __result; END_RCPP } // pvalue NumericVector pvalue(SEXP a, SEXP b); RcppExport SEXP ROTS_pvalue(SEXP aSEXP, SEXP bSEXP) { BEGIN_RCPP Rcpp::RObject __result; Rcpp::RNGScope __rngScope; Rcpp::traits::input_parameter< SEXP >::type a(aSEXP); Rcpp::traits::input_parameter< SEXP >::type b(bSEXP); __result = Rcpp::wrap(pvalue(a, b)); return __result; END_RCPP } ROTS/src/pvalue.cpp0000644000175000017500000000067214136051433013767 0ustar nileshnilesh#include using namespace Rcpp; using namespace std; // [[Rcpp::export]] NumericVector pvalue(SEXP a, SEXP b) { NumericVector observed(a); NumericVector permuted(b); NumericVector pvalues(observed.length()); int j = 0; for (int i=0; i=observed[i] && j #include #include #include #include using namespace Rcpp; using namespace std; // Sort array b based on the array a (decreasingly) void sort2_2( double* a, double* b, int n ) { // Create vector of pairs. static vector< pair > pairs; pairs.reserve( n ); for( int i = 0; i < n; ++i) pairs.push_back( pair(a[i], b[i]) ); // Sort the pairs (inc). By default pairs are sorted by the first value and // in the case of a tie, the second values are used. sort( pairs.begin(), pairs.end()); // Split the pairs back into the original vectors (dec). for( int i = 0; i < n; ++i ) { a[ n-1-i ] = pairs[i].first; b[ n-1-i ] = pairs[i].second; } // Empty the vector pairs.clear(); } // Array printing routine for debugging. template void printArray( T *a, int a_len ){ for( int i = 0; i < a_len; ++i ) cout << a[i] << " "; cout << endl; } // Calculate the overlap void calculateOverlap_2( double *r1, double *r2, int r_len, IntegerVector N_ovlp, int N_len_ovlp, int b, int B_ovlp, NumericVector &result ){ // Copy r2 and sort the copy. double *r3 = new double[ r_len ]; for( int i = 0; i < r_len; ++i ) r3[i] = r2[i]; sort(r3, r3 + r_len ); reverse(r3, r3 + r_len ); // Sort r2 by r1 sort2_2( r1, r2, r_len ); // Calculate the overlap for( int i = 0; i < N_len_ovlp; ++i ){ static double sum = 0; for( int j = 0; j <= ( N_ovlp[i] - 1 ); ++j ) sum += ( r2[j] >= r3[ N_ovlp[i] - 1 ] ); result[ (b-1) + i*B_ovlp ] = sum / N_ovlp[i]; sum = 0; } delete[] r3; } //Loop2 // [[Rcpp::export]] List NeedForSpeed2( SEXP D, SEXP pD, SEXP nrow, SEXP N, SEXP N_len, SEXP B, SEXP overlaps, SEXP overlaps_P){ NumericVector D_ovlp(D); NumericVector pD_ovlp(pD); int nrow_ovlp = Rcpp::as(nrow); IntegerVector N_ovlp(N); int N_len_ovlp = Rcpp::as(N_len); int B_ovlp = Rcpp::as(B); NumericVector overlaps_ovlp(overlaps); NumericVector overlaps_P_ovlp(overlaps_P); double *res1 = new double[ nrow_ovlp ]; double *res2 = new double[ nrow_ovlp ]; double *pres1 = new double[ nrow_ovlp ]; double *pres2 = new double[ nrow_ovlp ]; for( int b = 1; b <= B_ovlp; ++b ){ for( int i = 0; i < nrow_ovlp; ++i ){ res1[i] = fabs( D_ovlp[ ( b - 1 ) * (nrow_ovlp) + i ] ); res2[i] = fabs( D_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] ); pres1[i] = fabs( pD_ovlp[ ( b - 1 ) * (nrow_ovlp) + i ] ); pres2[i] = fabs( pD_ovlp[ ( b + (B_ovlp) - 1 ) * (nrow_ovlp) + i ] ); } calculateOverlap_2( res1, res2, nrow_ovlp, N_ovlp, N_len_ovlp, b, B_ovlp, overlaps_ovlp ); calculateOverlap_2( pres1, pres2, nrow_ovlp, N_ovlp, N_len_ovlp, b, B_ovlp, overlaps_P_ovlp ); } delete[] res1; delete[] res2; delete[] pres1; delete[] pres2; return Rcpp::List::create( Rcpp::Named("overlaps") = overlaps_ovlp , Rcpp::Named("overlaps_P") = overlaps_P_ovlp ) ; } ROTS/vignettes/0000755000175000017500000000000014136101415013177 5ustar nileshnileshROTS/vignettes/ROTS.Rnw0000644000175000017500000002124114136051433014462 0ustar nileshnilesh%\VignetteIndexEntry{ROTS: Reproducibility Optimized Test Statistic} %\VignetteDepends{ROTS} %\VignetteKeywords{Preprocessing, statistics} \documentclass{article} \usepackage{cite, hyperref} \usepackage{graphicx} \hypersetup{ colorlinks = true, %Colours links instead of ugly boxes urlcolor = blue, %[rgb]{0,0.125,0.376}, %Colour for external hyperlinks linkcolor = blue, %[rgb]{0,0.125,0.376}, %Colour of internal links citecolor = red %Colour of citations } \title{ \begin{center} ROTS: Reproducibility Optimized Test Statistic \end{center} } \author{Fatemeh Seyednasrollah$^{*}$, Tomi Suomi, Laura L. Elo \\[1em] {\texttt{$^*$fatsey (at) utu.fi}}} \date{March 3, 2016} \setlength\parindent{0pt} \begin{document} \SweaveOpts{concordance=TRUE} \setkeys{Gin}{width=0.6\textwidth} \maketitle \textnormal{\normalfont} \tableofcontents \newpage \section{Introduction} Differential expression testing is perhaps the most common approach among current omics analysies. Reproducibility optimized test statistic (ROTS) aims to rank genomic features of interest (such as genes, proteins and transcripts) in order of evidence for differential expression in two-group comparisons. Initially, ROTS was developed to test differential expression in microarray studies (Elo 2008). However, the general design of the algorithm supports the utility of the method in proteomics and count-based technologies like RNA-seq and single cell datasets (Seyednasrollah et al. 2015, Pursiheimo et al. 2015). ROTS is a data adaptive method which can optimize its parameters based on intrinsic features of input data. Also, the method aims to solve the common problem of small sample size through a resampling procedure. \\[1em] The ROTS statistic is optimized among a family of \textit{t-type} statistics $d = m/(\alpha_1 + \alpha_2 \times s)$, where $m$ is the absolute difference between the group averages $\left|\bar{x_1} - \bar{x_2}\right|$, $s$ is the pooled standard error, and $\alpha_1$ and $\alpha_2$ are the non-negative parameters to be optimized. Two special cases of this family are the ordinary \textit{t-statistic} $(\alpha_1 = 0, \alpha_2 = 1)$ and the signal log-ratio $(\alpha_1 = 1, \alpha_2 = 0)$.\\[1em] The optimality is defined in terms of maximal overlap of top-ranked features in group-preserving bootstrap datasets. Importantly, besides the group labels, no a priori information about the properties of the data is required and no fixed cutoff for the gene rankings needs to be specified. The user is given the option to adjust the largest top list size ($K$) considered in the reproducibility calculations, since lowering this size can markedly reduce the computation time. In large data matrices with thousands of rows, we generally recommend using a size of several thousands.\\[1em] ROTS tolerates a moderate number of missing values in the data matrix by effectively ignoring their contribution during the operation of the procedure. However, each row of the data matrix must contain at least two values in both groups. The rows containing only a few non-missing values should be removed; or alternatively, the missing data entries can be imputed using, e.g., the K-nearest neighbour imputation, which is implemented in the Bioconductor package impute. If the parameter values $\alpha_1$ and $\alpha_2$ are set by the user, then no optimization is performed but the statistic and FDR-values are calculated for the given parameters. The false discovery rate (FDR) for the optimized test statistic is calculated by permuting the sample labels. The results for all the genes can be obtained by setting the FDR cutoff to 1. \section{Algorithm overview} ROTS optimizes the reproducibility among a family of modified \textit{t}-statistics: \begin{equation} d_\alpha = \frac{\left|\bar{x_1} - \bar{x_2}\right|}{ \alpha_1 + \alpha_2 \times s} \end{equation} where $\left|\bar{x_1} - \bar{x_2}\right|$ is the absolute difference between the group averages, $s$ is the pooled standard error, $\alpha_1$ and $\alpha_2$ are the non-negative parameters to be optimized. The optimal statistic is determined by maximizing the reproducibility Z-score: \begin{equation} Z_k\left(d_\alpha\right) = \frac{R_k\left(d_\alpha\right) - R_k^0\left(d_\alpha\right)}{s_k\left(d_\alpha\right)} \end{equation} over a dence lattice $\alpha_1 \in [0, 0.01, . . . , 5]$ , $\alpha_2 \in \left\{0, 1\right\}$, $k \in \left\{1, 2, . . . , G\right\}$.\\[1em] Here, $R_k\left(d_\alpha\right)$ is the observed reproducibility at top list size $k$, $R_k^0\left(d_\alpha\right)$ is the corresponding reproducibility in randomized datasets (permuted over samples), $s_k\left(d_\alpha\right)$ is the standard deviation of the bootstrap distribution, and $G$ is the total number of genes/proteins in the data. \\[1em] Reproducibility is defined as the average overlap of $k$ top-ranked genemoc features over pairs of bootstrapped datasets. \\[1em] For more detailed information about the ROTS algorithm, see Elo et al. (2008) and Seyednasrollah et al. (2015). \section{Input data} ROTS expects the input data to be in form of a matrix with genomic features as rows and samples as columns. It is recommended to use normalized data as the input for ROTS. The matrix can be either of integer numbers, e.g. for RNA-seq and single cells, or float numbers, e.g. microarray intensities. \section{Preprocessing} For count-based data, we recommend the widely used preprocessing techniques like TMM (Trimmed Mean of M-values) normalization available in edgeR Bioconductor package or TMM normalization plus Voom transformation available in Limma Bioconductor package. For microarray and proteomics data, standard normalization techniques are recommended. \section{Differential expression testing} We use here a proteomics dataset as an example for differential expression testing. The overall approach is the same for other omics data along with recommended preprocessing strategies. \\[1em] The analysis starts by loading the ROTS package and the example dataset, which contains two sample groups each having three replicates: <>= library(ROTS) data(upsSpikeIn) input = upsSpikeIn @ In the next step we determine the experimental design for differential expression analysis. Please note that the order of the samples in the data matrix should be exactly the same as the groups vector defined. <<>>= groups = c(rep(0,3), rep(1,3)) groups @ The ROTS function performs the final differential expression testing. The user can set the function parameters before running the analysis: <>= results = ROTS(data = input, groups = groups , B = 100 , K = 500 , seed = 1234) names(results) @ In this example, we set the number of bootstrapping (B) and the number of top-ranked features for reproducibility optimization (K) to 100 and 500 respectively, to reduce running time of the example. In real analysis it is preferred to use a higher number of bootstraps (e.g. 1000). The optimization parameters a1 and a2 should always be non-negative. The output of ROTS function includes test statistic (d), estimated \textit{p}-value (pvalue), False Discovery Rate (FDR), optimized test statistic parameters and top list size (a1, a2, k), optimized reproducibility value (R) and Z-score (Z). In general, the Z-score and reproducibility are the main indicators to decide the success of differential expression analysis. As a rule of thumb, reproducibility Z-scores below 2 indicate that the data or the statistics are not sufficient for reliable detection.\\[1em] Finally, it is possible to summarize the results based on criteria selected by the user. For instance, the following code lists the top ranked differentially expressed features with FDR below 0.05: <>= summary(results, fdr = 0.05) @ \newpage \section{Visualization} Results can also be visualized using the standard plot command: <>= plot(results, fdr = 0.05, type = "volcano") @ <>= plot(results, fdr = 0.05, type = "heatmap") @ \section{References} Elo, L.L. et al., \emph{Reproducibility-optimized test statistic for ranking genes in microarray studies}. IEEE/ACM transactions on computational biology and bioinformatics, 5, 423-431, 2008. \\[1em] Elo, L.L. et al. \emph{Optimized detection of differential expression in global profiling experiments: case studies in clinical transcriptomic and quantitative proteomic datasets}. Briefings in bioinformatics, 10, 547-555, 2009. \\[1em] Seyednasrollah et al. \emph{ROTS: reproducible RNA-seq biomarker detector-prognostic markers for clear cell renal cell cancer}. Nucleic Acids Research, 2015. \\[1em] Pursiheimo et al. \emph{Optimization of Statistical Methods Impact on Quantitative Proteomics Data}. J. Proteome Res., 2015. \end{document}ROTS/build/0000755000175000017500000000000014136101415012266 5ustar nileshnileshROTS/build/vignette.rds0000644000175000017500000000036714136101415014633 0ustar nileshnileshmP˪0MުAƅRpی2PےDru6GLΜ>a,!\L6#,b|S첼<<"͡U<Ki 2-@tgAmʃi$kBV)Z@{%PK =on^X{0N~_.]'v2WXWOyK9QMUv?Jh?)[O]dCROTS/tests/0000755000175000017500000000000014136051433012335 5ustar nileshnileshROTS/tests/testthat/0000755000175000017500000000000014136051433014175 5ustar nileshnileshROTS/tests/testthat/test_biggerN.R0000644000175000017500000000161714136051433016741 0ustar nileshnileshcontext("Bigger N") test_that("Single values", { expect_that(biggerN(0,1:100), equals(100)) expect_that(biggerN(1,1:100), equals(100)) expect_that(biggerN(99,1:100), equals(2)) expect_that(biggerN(100,1:100), equals(1)) expect_that(biggerN(101,1:100), equals(0)) expect_that(biggerN(0,100:1), equals(100)) expect_that(biggerN(1,100:1), equals(100)) expect_that(biggerN(99,100:1), equals(2)) expect_that(biggerN(100,100:1), equals(1)) expect_that(biggerN(101,100:1), equals(0)) }) test_that("Multiple values", { expect_that(biggerN(c(1,2,3),1:100), equals(c(98,99,100))) expect_that(biggerN(c(3,2,1),1:100), equals(c(98,99,100))) expect_that(biggerN(c(1,1,1),1:100), equals(c(100,100,100))) }) test_that("Special values", { expect_that(biggerN(NA,1:100), equals(100)) expect_that(biggerN(Inf,1:100), equals(0)) expect_that(biggerN(c(NA,NA,200),1:100), equals(c(0,100,100))) }) ROTS/tests/testthat/test_calculateFDR.R0000644000175000017500000000041414136051433017647 0ustar nileshnileshcontext("FDR") test_that("Basic tests", { expect_that(calculateFDR(0.9, matrix(rep(1,100),10), FALSE), equals(1)) expect_that(calculateFDR(1.0, matrix(rep(1,100),10), FALSE), equals(1)) expect_that(calculateFDR(1.1, matrix(rep(1,100),10), FALSE), equals(0)) }) ROTS/tests/testthat/test_testStatistic.R0000644000175000017500000000140014136051433020221 0ustar nileshnileshcontext("Test statistic") data(upsSpikeIn) upsSpikeIn[1,1:3] <- c(0,0,0) upsSpikeIn[1,4:6] <- c(0,0,0) upsSpikeIn[2,1:3] <- c(0,0,0) upsSpikeIn[2,4:6] <- c(4,4,4) test_that("Unpaired", { stats <- testStatistic(list(upsSpikeIn[,1:3],upsSpikeIn[,4:6]), paired=FALSE) expect_that(as.numeric(stats$d[1]), equals(0)) expect_that(as.numeric(stats$d[2]), equals(4)) expect_that(as.numeric(stats$s[1]), equals(0)) expect_that(as.numeric(stats$s[2]), equals(0)) }) test_that("Paired", { stats <- testStatistic(list(upsSpikeIn[,1:3],upsSpikeIn[,4:6]), paired=TRUE) expect_that(as.numeric(stats$d[1]), equals(0)) expect_that(as.numeric(stats$d[2]), equals(4)) expect_that(as.numeric(stats$s[1]), equals(0)) expect_that(as.numeric(stats$s[2]), equals(0)) }) ROTS/tests/testthat/test_bootstrap.R0000644000175000017500000000105514136051433017375 0ustar nileshnileshcontext("Bootstrapping") test_that("Basic tests", { expect_that(nrow(bootstrapSamples(data=NULL, B=1000, labels=c(1,1,1,2,2,2), paired=FALSE)), equals(1000)) expect_that(ncol(bootstrapSamples(data=NULL, B=10, labels=c(1,1,1,1,2,2,2,2), paired=FALSE)), equals(8)) expect_that(all(apply(bootstrapSamples(data=NULL, B=1000, labels=c(1,1,1,2,2,2), paired=TRUE)[,1:3],1, function(x) all(x<4))), equals(TRUE)) expect_that(all(apply(bootstrapSamples(data=NULL, B=1000, labels=c(1,1,1,2,2,2), paired=TRUE)[,4:6],1, function(x) all(x>3))), equals(TRUE)) }) ROTS/tests/testthat/test_calculateP.R0000644000175000017500000000072514136051433017440 0ustar nileshnileshcontext("p-values") test_that("Single values", { expect_that(calculateP(0, matrix(1:100,10)), equals(1)) expect_that(calculateP(1, matrix(1:100,10)), equals(1)) expect_that(calculateP(51, matrix(1:100,10)), equals(0.5)) expect_that(calculateP(100, matrix(1:100,10)), equals(0.01)) expect_that(calculateP(101, matrix(1:100,10)), equals(0)) }) test_that("Multiple values", { expect_that(calculateP(c(0,101,0,51), matrix(1:100,10)), equals(c(1,0,1,0.5))) }) ROTS/tests/testthat/test_permutation.R0000644000175000017500000000034214136051433017725 0ustar nileshnileshcontext("Permutation") test_that("Basic tests", { expect_that(rowSums(permutatedSamples(data=matrix(1:12,2), B=1000)), equals(rep(21,1000))) expect_that(ncol(permutatedSamples(data=matrix(1:12,2), B=1000)), equals(6)) }) ROTS/tests/testthat/test_ROTS.R0000644000175000017500000000316714136051433016155 0ustar nileshnileshcontext("ROTS function") data(upsSpikeIn) test_that("Basic tests", { rots.out <- ROTS(data=upsSpikeIn, groups=c(0,0,0,1,1,1), B=100, K=500, seed=1) expect_that(rots.out, is_a("ROTS")) expect_that(length(grep("ups",names(rots.out$d))), equals(36)) expect_that(all((rots.out$FDR >= 0) & (rots.out$FDR <= 1)), equals(TRUE)) expect_that(all((rots.out$p >= 0) & (rots.out$p <= 1)), equals(TRUE)) }) test_that("Special cases", { case1 <- c(10,10,10,10,10,10) case2 <- c(0,0,0,0,0,0) case3 <- c(NA,10,10,NA,10,10) case4 <- c(NA,0,0,NA,0,0) case5 <- c(1,1,1,10,10,10) case6 <- c(1,NA,1,10,NA,10) rots.out <- ROTS(data=rbind(case1,case2,case3,case4,case5,case6,upsSpikeIn), groups=c(0,0,0,1,1,1), B=100 ,K=500 ,seed=1) expect_that(all(rots.out$FDR[1:4] > 0.99), equals(TRUE)) expect_that(all(rots.out$p[1:4] > 0.99), equals(TRUE)) expect_that(all(rots.out$logfc[1:4] == 0), equals(TRUE)) expect_that(all(rots.out$FDR[5:6] < 0.01), equals(TRUE)) expect_that(all(rots.out$p[5:6] < 0.01), equals(TRUE)) expect_that(all(rots.out$logfc[5:6] != 0), equals(TRUE)) }) test_that("Comparison to t-test", { rots.out <- ROTS(data=upsSpikeIn, groups=c(0,0,0,1,1,1), a1=0, a2=1, paired=FALSE, B=100, K=500, seed=1)$d ttest.out <- apply(as.matrix(upsSpikeIn), 1, function(x) t.test(x[4:6],x[1:3],paired=FALSE)$statistic) expect_that(cor(rots.out,ttest.out), equals(1)) rots.out <- ROTS(data=upsSpikeIn, groups=c(0,0,0,1,1,1), a1=0, a2=1, paired=TRUE, B=100, K=500, seed=1)$d ttest.out <- apply(as.matrix(upsSpikeIn), 1, function(x) t.test(x[4:6],x[1:3],paired=TRUE)$statistic) expect_that(cor(rots.out,ttest.out), equals(1)) }) ROTS/tests/test-all.R0000644000175000017500000000004414136051433014203 0ustar nileshnileshlibrary(testthat) test_check("ROTS")ROTS/R/0000755000175000017500000000000014136051433011374 5ustar nileshnileshROTS/R/print.ROTS.R0000644000175000017500000000010414136051433013434 0ustar nileshnilesh`print.ROTS` <- function( x, ... ){ print( unlist( x[7:11] ) ) } ROTS/R/testStatistic.R0000644000175000017500000000515414136051433014373 0ustar nileshnilesh`testStatistic` <- function(paired, samples){ # Two groups if (length(samples)==2) { X <- samples[[1]] Y <- samples[[2]] ## Calculates the test statistic for each row. ## X and Y are the data matrices of the two groups. ## Each row of these two matrices must contain at least TWO not NA values. ## Thus the "variance" always exists. ## Row means mX <- rowMeans(X, na.rm=TRUE) mY <- rowMeans(Y, na.rm=TRUE) ## Pooled standard deviations for each row sX <- rowSums((X - mX)^2, na.rm=TRUE) sY <- rowSums((Y - mY)^2, na.rm=TRUE) if(!paired) { ## Number of not NA values in each row nX <- rowSums(!is.na(X)) nY <- rowSums(!is.na(Y)) ## d == difference between the group means for each row (==gene) ## s == pooled standard deviation for each row (==gene) d <- mY - mX s <- sqrt(((sX + sY) / (nX + nY - 2)) * (1 / nX + 1 / nY)) ## Cases with less than two non-missing values. ## Set d = 0, s = 1 ind <- which( nY < 2 | nX < 2 ) d[ind] <- 0 s[ind] <- 1 } if(paired) { ## Add for paired sXY <- rowSums((X - mX)*(Y - mY), na.rm=TRUE) ## Number of not NA values in each row n <- rowSums(!is.na(X*Y)) ## d == difference between the group means for each row (==gene) ## s == pooled standard deviation for each row (==gene) d <- mY - mX s <- sqrt(((sX + sY) / (n + n - 2)) * (2 / n) - 2/(n*n-n)*sXY) ## Cases with less than two non-missing values. ## Set d = 0, s = 1 ind <- which( n < 2 ) d[ind] <- 0 s[ind] <- 1 } return(list(d=d, s=s)) } # Multiple groups if (length(samples)>2) { samples.all <- do.call("cbind",samples) if(!paired) { f <- sum(sapply(samples, ncol)) / prod(sapply(samples, ncol)) r <- vector(mode="numeric", length=nrow(samples.all)) for(k in 1:length(samples)) { r <- r + (rowMeans(samples[[k]], na.rm=TRUE)-rowMeans(samples.all, na.rm=TRUE))^2 } d <- (f*r)^0.5 f <- 1/sum(sapply(samples, ncol)-1) * sum(1/sapply(samples, ncol)) s <- vector(mode="numeric", length=nrow(samples.all)) for(k in 1:length(samples)) { s <- s + colSums(apply(samples[[k]], 1, function(x) (x-mean(x,na.rm=TRUE))^2), na.rm=TRUE) } s <- (f*s)^0.5 } if(paired) { stop("Multiple paired groups not supported!") } return(list(d=d, s=s)) } } ROTS/R/calculateOverlaps2.R0000644000175000017500000000037314136051433015255 0ustar nileshnilesh`calculateOverlaps2` <- function(D, pD, nrow, N, N_len, B, overlaps, overlaps.P) { # Calculates overlaps in C: overlap <- NeedForSpeed2(D, pD, nrow, N, N_len, B, overlaps, overlaps.P) overlap } ROTS/R/calculateP.R0000644000175000017500000000110014136051433013564 0ustar nileshnilesh`calculateP` <- function(observed, permuted) { # Store order for later use observed_order <- order(abs(observed), decreasing=TRUE) # Sort observed and permuted values observed <- sort(abs(observed), decreasing=TRUE) permuted <- sort(abs(as.vector(permuted)), decreasing=TRUE) # Get p-values from C++ code # (expects ordered vectors) p <- pvalue(observed, permuted) # Revert to original ordering results <- vector(mode="numeric", length=length(p)) for(i in seq_along(results)) { results[observed_order[i]] <- p[i] } return(results) } ROTS/R/permutatedSamples.R0000644000175000017500000000027314136051433015220 0ustar nileshnilesh`permutatedSamples` <- function(data, B, cl) { samples <- matrix(nrow=B, ncol=ncol(data)) for(i in seq_len(B)){ samples[i,] <- sample(seq_len(ncol(data))) } return(samples) } ROTS/R/summary.ROTS.R0000644000175000017500000000356014136051433014006 0ustar nileshnilesh`summary.ROTS` <- function(object, fdr=NULL, num.genes=NULL, verbose=TRUE, ...){ if( !is.null(fdr) || !is.null(num.genes)){ ## Sort ROTS-statistic values (abs) sorted.rots <- abs(object$d) names(sorted.rots) <- rownames(object$data) sorted.rots <- sort(sorted.rots, decreasing=TRUE) ## Add feature-names to fdr and ROTS values names(object$FDR) <- rownames(object$data) names(object$d) <- rownames(object$data) names(object$pvalue) <- rownames(object$data) ## Result matrix, columns are: "Row", "ROTS-statistic", "pvalue" and "FDR" result <- numeric(0) result <- cbind(match(names(sorted.rots), rownames(object$data)), object$d[names(sorted.rots)], object$pvalue[names(sorted.rots)], object$FDR[names(sorted.rots)]) colnames( result ) <- c("Row", "ROTS-statistic", "pvalue", "FDR") ## Show only num.gene top rows or rows whose false discovery rate <= fdr if(!is.null(fdr)) result <- result[ result[,4] <= fdr, ,drop=FALSE] else result <- result[ 1 : min(num.genes, nrow(result)), ,drop=FALSE] if( verbose ){ cat("ROTS results:", "\n\n") cat("Number of resamplings: ", object$B, "\n\n") cat("a1: ", object$a1,"\n") cat("a2: ", object$a2,"\n") cat("Top list size: ", object$k, "\n") cat("Reproducibility value: ", object$R, "\n") cat("Z-score: ", object$Z, "\n\n") cat(nrow(result), "rows satisfy the condition.") ## Print oly 10 first rows if(nrow(result) > 10){ cat(" Only ten first rows are" ,"\n", "displayed, see the return value for the whole output.\n") print(result[1:10, ]) cat("...", "\n") } else{ cat("\n") print(result) } } return(invisible(result)) } } ROTS/R/biggerN.R0000644000175000017500000000114214136051433013072 0ustar nileshnilesh`biggerN` <- function(x, y) { x <- sort(x, decreasing=TRUE, na.last=TRUE) # sort x in decreasing order y <- sort(y, decreasing=TRUE, na.last=TRUE) # sort y in decreasing order a <- match(x, x) # vector of the positions of (first) matches of the first argument in the second b <- x %in% y # a logical vector indicating if there is a match or not for its left operand z <- sort(c(x, y), decreasing=TRUE, na.last=TRUE) # sort c(x,y) in decreasing order d <- match(x, z) # vector of the positions of (first) matches of the first argument in the second return(d - a + b) } ROTS/R/ROTS.R0000644000175000017500000002613614136051433012316 0ustar nileshnilesh`ROTS` <- function(data, groups, B=1000, K=NULL, paired=FALSE, seed=NULL, a1=NULL, a2=NULL, log=TRUE, progress=FALSE, verbose=TRUE) { if (is(data, "ExpressionSet")) data <- Biobase::exprs(data) ## Set random number generator seed for reproducibility if(!is.null(seed)) set.seed(seed, kind="default") ## Check groups if(length(groups)!=ncol(data)) { stop(paste("Number of samples in the data does not match the groups.")) } ## If rownames(data) == NULL, use integers as rownames. Summary function requires that ## the data matrix has rownames. if(is.null(rownames(data))) rownames(data) <- 1:nrow(data) ## The reproducibility values in a dense lattice ssq <- c( (0:20) / 100, (11:50) / 50, (6:25) / 5) N <- c( (1:20) * 5, (11:50) * 10, (21:40) * 25, (11:1000) * 100) ## Check for top list size if (is.null(K)) { K <- floor(nrow(data)/4) if (verbose) message(paste("No top list size K given, using",K)) } ## The top list size cannot be larger than the total number of genes K <- min(K,nrow(data)) N <- N[N < K] # handle the situation if the groups is character if(inherits(groups, "character")){ groups <- factor(groups) groups.levels <- levels(groups) groups <- as.numeric(groups) }else{ groups.levels <- NULL } ## Reorder the data according to the group labels and check for NA rows. data <- data[,order(groups)] groups <- sort(groups) for (i in unique(groups)) { if(any(rowSums(is.na(data[,which(groups==i)])) >= length(which(groups==i))-1)) { if(is.null(groups.levels)){ target <- i }else{ target <- groups.levels[i] } stop(paste("The data matrix of group",target,"contains rows with less than two non-missing values, please remove these rows.")) } } cl <- groups+(1-min(groups)) ## Check number of samples for paired test if (paired) { for (i in unique(cl)[-1]) { if(length(which(cl==1))!=length(which(cl==i))) stop("Uneven number of samples for paired test.") } } ## Calculate fold change if (length(unique(cl))==2) { if(log) { logfc <- rowMeans(data[,which(cl==1)], na.rm=TRUE) - rowMeans(data[,which(cl==2)], na.rm=TRUE) } else { logfc <- rowMeans(log2(data[,which(cl==1)]+1), na.rm=TRUE) - rowMeans(log2(data[,which(cl==2)]+1), na.rm=TRUE) } } else { logfc <- rep(NA,nrow(data)) } ## --------------------------------------------------------------------------- ## Bootstrap samples if (verbose) message("Bootstrapping samples") samples <- bootstrapSamples(data, 2*B, cl, paired) ## Permutated samples pSamples <- permutatedSamples(data, nrow(samples), cl) ## Test statistics in the bootstrap (permutate) datasets. ## For each bootstrap (permutated) dataset, determine the signal log-ratio ## (D) and the standard error (S). D <- matrix(nrow = nrow(as.matrix(data)), ncol = nrow(samples)) S <- matrix(nrow = nrow(as.matrix(data)), ncol = nrow(samples)) pD <- matrix(nrow = nrow(as.matrix(data)), ncol = nrow(samples)) pS <- matrix(nrow = nrow(as.matrix(data)), ncol = nrow(samples)) if (progress) pb <- txtProgressBar(min=0, max=nrow(samples), style=3) for (i in seq_len(nrow(samples))) { samples.R <- split(samples[i,], cl) pSamples.R <- split(pSamples[i,], cl) ## If a1 and a2 parameters are given, we don't need the bootstrap ## dataset if( is.null(a1) | is.null(a2) ){ fit <- testStatistic(paired, lapply(samples.R, function(x) data[,x])) D[,i] <- fit$d S[,i] <- fit$s } pFit <- testStatistic(paired, lapply(pSamples.R, function(x) data[,x])) pD[,i] <- pFit$d pS[,i] <- pFit$s if (progress) setTxtProgressBar(pb, i) } if (progress) close(pb) ## Free up memory rm(samples, pSamples) gc() ## --------------------------------------------------------------------------- if( is.null(a1) | is.null(a2) ){ ## Optimize the parameters if (verbose) message("Optimizing parameters") ## Calculate the reproducibility values for all the given a1-values and top ## list sizes in both bootstrap and permuted data and their standard ## deviations in the bootstrap case ## Reproducibility matrix (bootstrap data): ## the rows correspond to the a1-values given in ssq (+ 1 for signal ## log-ratio only: a1=1, a2=0), the columns correspond to the different top ## list sizes reprotable <- matrix(nrow=length(ssq) + 1, ncol=length(N)) colnames(reprotable) <- N row.names(reprotable) <- c(ssq, "slr") ## Reproducibility matrix (permuted data): ## the rows correspond to the a1-values given in ssq (+ 1 for signal ## log-ratio only: a1=1, a2=0), the columns correspond to the different top ## list sizes reprotable.P <- matrix(nrow=length(ssq) + 1, ncol=length(N)) colnames(reprotable.P) <- N row.names(reprotable.P) <- c(ssq, "slr") ## Standard deviation matrix for the reproducibility values (bootstrap ## data): the rows correspond to the a1-values given in ssq (+ 1 for signal ## log-ratio only: a1=1, a2=0), the columns correspond to the different ## top list sizes reprotable.sd <- matrix(nrow=length(ssq) + 1, ncol=length(N)) colnames(reprotable.sd) <- N row.names(reprotable.sd) <- c(ssq, "slr") if (progress) pb <- txtProgressBar(min=0, max=length(ssq), style=3) for(i in 1 : length(ssq)){ ## The overlaps between bootstrap samples. Rows correspond to different ## bootrsrap samples and columns corrospond to different top list size. ## Repeat for each parameter combination a1 and a2. overlaps <- matrix(0, nrow=B, ncol=length(N)) overlaps.P <- matrix(0, nrow=B, ncol=length(N)) ## Call the custom c++-loop 1. cResults = calculateOverlaps1 (D, S, pD, pS, nrow(D), as.integer(N), length(N), ssq[i], as.integer(B), overlaps, overlaps.P) ## Colmeans & rowMeans are a lot faster than apply # reprotable[i, ] <- colMeans(overlaps) # reprotable.P[i, ] <- colMeans(overlaps.P) reprotable[i, ] <- colMeans(cResults[["overlaps"]]) reprotable.P[i, ] <- colMeans(cResults[["overlaps_P"]]) ## Standard deviation for each column ## same as reprotable.sd[i, ] <- apply(overlaps, 2, sd) ## or just sd(overlaps), but a lot faster. # reprotable.sd[i,] <- sqrt(rowSums((t(overlaps) - reprotable[i,])^2) / # (nrow(overlaps) - 1)) reprotable.sd[i,] <- sqrt(rowSums((t(cResults[["overlaps"]]) - reprotable[i,])^2) / (nrow(cResults[["overlaps"]]) - 1)) if (progress) setTxtProgressBar(pb, i) } if (progress) close(pb) i <- length(ssq) + 1 overlaps <- matrix(0, nrow=B, ncol=length(N)) overlaps.P <- matrix(0, nrow=B, ncol=length(N)) ## Call the custom c++-loop 2. cResults = calculateOverlaps2 (D, pD, nrow(D), as.integer(N), length(N), as.integer(B), overlaps, overlaps.P) ## Free up memory rm(D, S) gc() reprotable[i, ] <- colMeans(cResults[["overlaps"]]) reprotable.P[i, ] <- colMeans(cResults[["overlaps_P"]]) ## Standard deviation for each column reprotable.sd[i,] <- sqrt(rowSums((t(cResults[["overlaps"]]) - reprotable[i,])^2) / (nrow(cResults[["overlaps"]]) - 1)) ## Free up memory rm(overlaps, overlaps.P , cResults) gc() ## ------------------------------------------------------------------------- ## Calculate the Z-statistic and find the top list size and the ## (a1,a2)-combination giving the maximal Z-value ztable <- (reprotable - reprotable.P) / reprotable.sd ## Rownames of ztable are c(ssq, "slr") and colnames are N ## Free up memory rm(reprotable.P, reprotable.sd) gc() sel <- which(ztable == max(ztable[is.finite(ztable)]), arr.ind=TRUE) ## Sel is a matrix containing the location(s) of the largest value (row, ## col). If the location of the largest value is not unique then nrow(sel) ## > 2 (length(sel) > 2) if(length(sel)>2) sel <- sel[1,] if(sel[1] < nrow(reprotable)) { a1 <- as.numeric(row.names(reprotable)[sel[1]]) a2 <- 1 } if(sel[1] == nrow(reprotable)) { a1 <- 1 a2 <- 0 } k <- as.numeric(colnames(reprotable)[sel[2]]) R <- reprotable[sel[1],sel[2]] Z <- ztable[sel[1],sel[2]] ## Free up memory rm(reprotable) gc() ## Calculate the reproducibility-optimized test statistic based on the ## reproducibility-maximizing a1, a2 and k values and the corresponding FDR fit <- testStatistic(paired, lapply(split(1:length(cl), cl), function(x) data[,x])) d <- fit$d / (a1 + a2 * fit$s) pD <- pD/(a1 + a2 * pS) ## Free up memory rm(pS) gc() if (verbose) message("Calculating p-values") p <- calculateP(d, pD) if (verbose) message("Calculating FDR") FDR <- calculateFDR(d, pD, progress) ## Free up memory rm(pD) gc() ROTS.output <- list( data = data, # Original data B = B, # Number of resamplings d = d, # ROTS-statistic logfc = logfc, # Fold change pvalue = p, # p-value FDR = FDR, # FDR a1 = a1, # a1 a2 = a2, # a2 k = k, # top list size R = R, # reproducibility value Z = Z, # z-score ztable = ztable, # z-score table cl = cl) # classes } else{ # !is.null(a1 & !is.null(a2) ## Calculate statistic based on the given parameter values ## and the corresponding FDR fit <- testStatistic(paired, lapply(split(1:length(cl), cl), function(x) data[,x])) d <- fit$d / (a1 + a2 * fit$s) if (verbose) message("Calculating p-values") p <- calculateP(d, pD/(a1 + a2 * pS)) if (verbose) message("Calculating FDR") FDR <- calculateFDR(d, pD/(a1 + a2 * pS), progress) ROTS.output <- list( data = data, # Original data B = B, # Number of resamplings d = d, # ROTS-statistic logfc = logfc, # Fold change pvalue = p, # p-value FDR = FDR, # FDR a1 = a1, # a1 a2 = a2, # a2 k = NULL, # top list size R = NULL, # reproducibility value Z = NULL, # z-score cl = cl) # classes } ## Define the class class(ROTS.output) <- "ROTS" return(ROTS.output) } ROTS/R/plot.ROTS.R0000644000175000017500000000552114136051433013266 0ustar nileshnileshplot.ROTS <- function(x, fdr=0.05, type=NULL, labels=FALSE, ...) { # Check for plot type if (!is.null(type)) { if(!(type %in% c("volcano","heatmap","ma","reproducibility","pvalue","pca"))) { stop("Plot type not available. The options are: 'volcano', 'heatmap', 'ma', 'reproducibility', 'pvalue', 'pca'") } } else { stop("Plot type not selected. The options are: 'volcano', 'heatmap', 'ma', 'reproducibility', 'pvalue', 'pca'") } # Differentially expressed features de <- which(x$FDR0) { points(x$logfc[de], -log10(x$pvalue)[de], pch=21, col="red") if (labels==TRUE) { text(x$logfc[de], -log10(x$pvalue)[de], labels=row.names(x$data)[de], pos=3, cex=0.5) } } } # Heatmap if(type=="heatmap" & length(de)>0) { try({ heatmap(as.matrix(x$data[de,]), scale="row", col=colorRampPalette(c("blue","white","red"))(512), ...) },silent=TRUE) } # MA plot if(type=="ma") { if(length(unique(x$cl))!=2) { stop(paste("MA plot not supported for for", length(unique(x$cl)), "classes.")) } M <- x$logfc A <- 0.5*(rowMeans(x$data[,x$cl==1])+rowMeans(x$data[,x$cl==2])) par(xpd=TRUE) plot(A, M, xlab="A", ylab="M", pch=20, cex=0.5, panel.first=abline(h=0, col="grey", lty=2), bty="l") lines(loess.smooth(A, M), col="blue", lty=2) if(length(de)>0) { points(A[de], M[de], pch=21, col="red") if (labels==TRUE) { text(A[de], M[de], labels=row.names(x$data)[de], pos=3, cex=0.5) } } } # Reproducibility if(type=="reproducibility") { z <- c(0,x$ztable[row.names(x$ztable)==x$a1,]) k <- c(0,as.numeric(colnames(x$ztable))) plot(k, z, pch=20, xlab="Top list size", ylab="Reproducibility Z-score", cex=0.5, panel.first=lines(k, z, col="grey"), bty="l") points(k[which(z==max(z))], z[which(z==max(z))], pch=21, col="red") text(k[which(z==max(z))], z[which(z==max(z))], labels=round(max(z),digits=3), pos=4) legend("topright",c(paste("a1 =",x$a1),paste("a2 =",x$a2)), bty="n") } # Histogram of p-values if(type=="pvalue") { hist(x$pvalue, breaks=20, col="grey", main="", xlab="p-value", ylab="Frequency") } # PCA if(type=="pca") { if(length(de)>0) { pca <- prcomp(t(x$data[de,]), center=TRUE, scale.=TRUE) par(xpd=TRUE) plot(pca$x[,1], pca$x[,2], xlab="Principal component 1", ylab="Principal component 2", pch=20, cex=2, col=x$cl, bty="l") if (labels==TRUE) { text(pca$x[,1], pca$x[,2], labels=colnames(x$data), pos=3, cex=1) } } } } ROTS/R/calculateFDR.R0000644000175000017500000000134614136051433014014 0ustar nileshnilesh`calculateFDR` <- function(observed, permuted, progress) { observed <- abs(observed) permuted <- abs(permuted) ord <- order(observed, decreasing=TRUE, na.last=TRUE) a <- observed[ord] A <- matrix(NA, nrow=length(a), ncol=ncol(permuted)) if (progress) pb <- txtProgressBar(min=0, max=ncol(A), style=3) for(i in seq_len(ncol(A))) { a.rand <- sort(permuted[,i], decreasing=TRUE, na.last=TRUE) n.bigger <- biggerN(a, a.rand) A[ord,i] <- n.bigger/seq_along(a) if (progress) setTxtProgressBar(pb, i) } if (progress) close(pb) FDR <- apply(A, 1, median) FDR[FDR>1] <- 1 FDR[ord] <- rev(sapply(length(FDR):1, function(x) return(min(FDR[ord][x:length(FDR)])))) return(FDR) } ROTS/R/calculateOverlaps1.R0000644000175000017500000000042414136051433015251 0ustar nileshnilesh`calculateOverlaps1` <- function(D, S, pD, pS, nrow, N, N_len, ssq, B, overlaps, overlaps.P) { # Calculates overlaps in C: overlap <- NeedForSpeed1(D, S, pD, pS, nrow, N, N_len, ssq, B, overlaps, overlaps.P) overlap } ROTS/R/RcppExports.R0000644000175000017500000000106714136051433014014 0ustar nileshnilesh# This file was generated by Rcpp::compileAttributes # Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393 NeedForSpeed1 <- function(D, S, pD, pS, nrow, N, N_len, ssq, B, overlaps, overlaps_P) { .Call('ROTS_NeedForSpeed1', PACKAGE = 'ROTS', D, S, pD, pS, nrow, N, N_len, ssq, B, overlaps, overlaps_P) } NeedForSpeed2 <- function(D, pD, nrow, N, N_len, B, overlaps, overlaps_P) { .Call('ROTS_NeedForSpeed2', PACKAGE = 'ROTS', D, pD, nrow, N, N_len, B, overlaps, overlaps_P) } pvalue <- function(a, b) { .Call('ROTS_pvalue', PACKAGE = 'ROTS', a, b) } ROTS/R/bootstrapSamples.R0000644000175000017500000000075414136051433015067 0ustar nileshnilesh`bootstrapSamples` <- function(data, B, labels, paired){ samples <- matrix(nrow=B, ncol=length(labels)) for(i in 1:B){ for (label in unique(labels)) { pos <- which(labels==label) samples[i,pos] <- sample(pos, length(pos), replace=TRUE) } } if (paired) { for(i in 1:B){ for (label in unique(labels)[-1]) { pos <- which(labels==label) samples[i,pos] <- samples[i,which(labels==1)]+pos[1]-1 } } } return(samples) } ROTS/NEWS0000644000175000017500000000043414136051433011673 0ustar nileshnileshCHANGES IN ROTS 1.6.0 - Added support for testing multiple groups - Bug fixes CHANGES IN ROTS 1.0.0 - Added log fold change in output. - Added default plotting for ROTS class objects - Added support for paired tests - Updated vignette - Bug fixes - Modified for Bioconductor release ROTS/inst/0000755000175000017500000000000014136101415012144 5ustar nileshnileshROTS/inst/CITATION0000644000175000017500000000111714136051433013305 0ustar nileshnileshcitHeader("To cite package 'ROTS' in publications use:") bibentry(bibtype = "Article", author = personList(as.person("Tomi Suomi"), as.person("Fatemeh Seyednasrollah"), as.person("Maria Jaakkola"), as.person("Thomas Faux"), as.person("Laura Elo")), doi = "10.1371/journal.pcbi.1005562", journal = "PLoS computational biology", month = "May", number = "5", pages = "e1005562", pmid = "28542205", title = "ROTS: An R package for reproducibility-optimized statistical testing.", url = "http://www.ncbi.nlm.nih.gov/pubmed/28542205", volume = "13", year = "2017" ) ROTS/inst/doc/0000755000175000017500000000000014136101415012711 5ustar nileshnileshROTS/inst/doc/ROTS.Rnw0000644000175000017500000002124114136051433014174 0ustar nileshnilesh%\VignetteIndexEntry{ROTS: Reproducibility Optimized Test Statistic} %\VignetteDepends{ROTS} %\VignetteKeywords{Preprocessing, statistics} \documentclass{article} \usepackage{cite, hyperref} \usepackage{graphicx} \hypersetup{ colorlinks = true, %Colours links instead of ugly boxes urlcolor = blue, %[rgb]{0,0.125,0.376}, %Colour for external hyperlinks linkcolor = blue, %[rgb]{0,0.125,0.376}, %Colour of internal links citecolor = red %Colour of citations } \title{ \begin{center} ROTS: Reproducibility Optimized Test Statistic \end{center} } \author{Fatemeh Seyednasrollah$^{*}$, Tomi Suomi, Laura L. Elo \\[1em] {\texttt{$^*$fatsey (at) utu.fi}}} \date{March 3, 2016} \setlength\parindent{0pt} \begin{document} \SweaveOpts{concordance=TRUE} \setkeys{Gin}{width=0.6\textwidth} \maketitle \textnormal{\normalfont} \tableofcontents \newpage \section{Introduction} Differential expression testing is perhaps the most common approach among current omics analysies. Reproducibility optimized test statistic (ROTS) aims to rank genomic features of interest (such as genes, proteins and transcripts) in order of evidence for differential expression in two-group comparisons. Initially, ROTS was developed to test differential expression in microarray studies (Elo 2008). However, the general design of the algorithm supports the utility of the method in proteomics and count-based technologies like RNA-seq and single cell datasets (Seyednasrollah et al. 2015, Pursiheimo et al. 2015). ROTS is a data adaptive method which can optimize its parameters based on intrinsic features of input data. Also, the method aims to solve the common problem of small sample size through a resampling procedure. \\[1em] The ROTS statistic is optimized among a family of \textit{t-type} statistics $d = m/(\alpha_1 + \alpha_2 \times s)$, where $m$ is the absolute difference between the group averages $\left|\bar{x_1} - \bar{x_2}\right|$, $s$ is the pooled standard error, and $\alpha_1$ and $\alpha_2$ are the non-negative parameters to be optimized. Two special cases of this family are the ordinary \textit{t-statistic} $(\alpha_1 = 0, \alpha_2 = 1)$ and the signal log-ratio $(\alpha_1 = 1, \alpha_2 = 0)$.\\[1em] The optimality is defined in terms of maximal overlap of top-ranked features in group-preserving bootstrap datasets. Importantly, besides the group labels, no a priori information about the properties of the data is required and no fixed cutoff for the gene rankings needs to be specified. The user is given the option to adjust the largest top list size ($K$) considered in the reproducibility calculations, since lowering this size can markedly reduce the computation time. In large data matrices with thousands of rows, we generally recommend using a size of several thousands.\\[1em] ROTS tolerates a moderate number of missing values in the data matrix by effectively ignoring their contribution during the operation of the procedure. However, each row of the data matrix must contain at least two values in both groups. The rows containing only a few non-missing values should be removed; or alternatively, the missing data entries can be imputed using, e.g., the K-nearest neighbour imputation, which is implemented in the Bioconductor package impute. If the parameter values $\alpha_1$ and $\alpha_2$ are set by the user, then no optimization is performed but the statistic and FDR-values are calculated for the given parameters. The false discovery rate (FDR) for the optimized test statistic is calculated by permuting the sample labels. The results for all the genes can be obtained by setting the FDR cutoff to 1. \section{Algorithm overview} ROTS optimizes the reproducibility among a family of modified \textit{t}-statistics: \begin{equation} d_\alpha = \frac{\left|\bar{x_1} - \bar{x_2}\right|}{ \alpha_1 + \alpha_2 \times s} \end{equation} where $\left|\bar{x_1} - \bar{x_2}\right|$ is the absolute difference between the group averages, $s$ is the pooled standard error, $\alpha_1$ and $\alpha_2$ are the non-negative parameters to be optimized. The optimal statistic is determined by maximizing the reproducibility Z-score: \begin{equation} Z_k\left(d_\alpha\right) = \frac{R_k\left(d_\alpha\right) - R_k^0\left(d_\alpha\right)}{s_k\left(d_\alpha\right)} \end{equation} over a dence lattice $\alpha_1 \in [0, 0.01, . . . , 5]$ , $\alpha_2 \in \left\{0, 1\right\}$, $k \in \left\{1, 2, . . . , G\right\}$.\\[1em] Here, $R_k\left(d_\alpha\right)$ is the observed reproducibility at top list size $k$, $R_k^0\left(d_\alpha\right)$ is the corresponding reproducibility in randomized datasets (permuted over samples), $s_k\left(d_\alpha\right)$ is the standard deviation of the bootstrap distribution, and $G$ is the total number of genes/proteins in the data. \\[1em] Reproducibility is defined as the average overlap of $k$ top-ranked genemoc features over pairs of bootstrapped datasets. \\[1em] For more detailed information about the ROTS algorithm, see Elo et al. (2008) and Seyednasrollah et al. (2015). \section{Input data} ROTS expects the input data to be in form of a matrix with genomic features as rows and samples as columns. It is recommended to use normalized data as the input for ROTS. The matrix can be either of integer numbers, e.g. for RNA-seq and single cells, or float numbers, e.g. microarray intensities. \section{Preprocessing} For count-based data, we recommend the widely used preprocessing techniques like TMM (Trimmed Mean of M-values) normalization available in edgeR Bioconductor package or TMM normalization plus Voom transformation available in Limma Bioconductor package. For microarray and proteomics data, standard normalization techniques are recommended. \section{Differential expression testing} We use here a proteomics dataset as an example for differential expression testing. The overall approach is the same for other omics data along with recommended preprocessing strategies. \\[1em] The analysis starts by loading the ROTS package and the example dataset, which contains two sample groups each having three replicates: <>= library(ROTS) data(upsSpikeIn) input = upsSpikeIn @ In the next step we determine the experimental design for differential expression analysis. Please note that the order of the samples in the data matrix should be exactly the same as the groups vector defined. <<>>= groups = c(rep(0,3), rep(1,3)) groups @ The ROTS function performs the final differential expression testing. The user can set the function parameters before running the analysis: <>= results = ROTS(data = input, groups = groups , B = 100 , K = 500 , seed = 1234) names(results) @ In this example, we set the number of bootstrapping (B) and the number of top-ranked features for reproducibility optimization (K) to 100 and 500 respectively, to reduce running time of the example. In real analysis it is preferred to use a higher number of bootstraps (e.g. 1000). The optimization parameters a1 and a2 should always be non-negative. The output of ROTS function includes test statistic (d), estimated \textit{p}-value (pvalue), False Discovery Rate (FDR), optimized test statistic parameters and top list size (a1, a2, k), optimized reproducibility value (R) and Z-score (Z). In general, the Z-score and reproducibility are the main indicators to decide the success of differential expression analysis. As a rule of thumb, reproducibility Z-scores below 2 indicate that the data or the statistics are not sufficient for reliable detection.\\[1em] Finally, it is possible to summarize the results based on criteria selected by the user. For instance, the following code lists the top ranked differentially expressed features with FDR below 0.05: <>= summary(results, fdr = 0.05) @ \newpage \section{Visualization} Results can also be visualized using the standard plot command: <>= plot(results, fdr = 0.05, type = "volcano") @ <>= plot(results, fdr = 0.05, type = "heatmap") @ \section{References} Elo, L.L. et al., \emph{Reproducibility-optimized test statistic for ranking genes in microarray studies}. IEEE/ACM transactions on computational biology and bioinformatics, 5, 423-431, 2008. \\[1em] Elo, L.L. et al. \emph{Optimized detection of differential expression in global profiling experiments: case studies in clinical transcriptomic and quantitative proteomic datasets}. Briefings in bioinformatics, 10, 547-555, 2009. \\[1em] Seyednasrollah et al. \emph{ROTS: reproducible RNA-seq biomarker detector-prognostic markers for clear cell renal cell cancer}. Nucleic Acids Research, 2015. \\[1em] Pursiheimo et al. \emph{Optimization of Statistical Methods Impact on Quantitative Proteomics Data}. J. Proteome Res., 2015. \end{document}ROTS/inst/doc/ROTS.R0000644000175000017500000000223414136101415013624 0ustar nileshnilesh### R code from vignette source 'ROTS.Rnw' ################################################### ### code chunk number 1: load ################################################### library(ROTS) data(upsSpikeIn) input = upsSpikeIn ################################################### ### code chunk number 2: ROTS.Rnw:96-98 ################################################### groups = c(rep(0,3), rep(1,3)) groups ################################################### ### code chunk number 3: ROTS ################################################### results = ROTS(data = input, groups = groups , B = 100 , K = 500 , seed = 1234) names(results) ################################################### ### code chunk number 4: summary ################################################### summary(results, fdr = 0.05) ################################################### ### code chunk number 5: volcano ################################################### plot(results, fdr = 0.05, type = "volcano") ################################################### ### code chunk number 6: heatmap ################################################### plot(results, fdr = 0.05, type = "heatmap") ROTS/inst/doc/ROTS.pdf0000644000175000017500000064015614136101414014206 0ustar nileshnilesh%PDF-1.5 % 32 0 obj << /Length 159 >> stream concordance:ROTS.tex:ROTS.Rnw:1 28 1 1 0 58 1 1 2 1 0 2 1 3 0 1 2 2 1 1 2 1 0 1 1 6 0 1 2 2 1 1 2 1 0 1 1 7 0 1 2 4 1 1 2 20 0 1 2 5 1 1 2 5 0 2 2 5 0 1 2 27 1 endstream endobj 41 0 obj << /Length 648 /Filter /FlateDecode >> stream xڍTMo0 Wh*dذaCg%5vkHA6r$#)ʨ9u;:ר h V\FmWhU;SWei}񩄢˲BtEwK[)+hMW}Z66م&?VaƟ 120I۴Oo @G,3F:*&B&<.ؽcYRL16 -mZn :IkjdkcZ:|۲! !sb6v ә}n0#~J֙3~T:H$M y~D yGDPc"'є;C*{C p ZS 麡|ԡo67\T?:znx>\^RȨ#$R En|#,uu 0Gϓ*)eb)WrM/5*D$XBO*rݳ C$ O}4w2q9Ku<BlN^KϽ݋߮du,d0'`oYk;\BF9A[t BL☟ iZx1d-~LZ˟$=sI$iw0 %u<\ ɵ5a77qNo endstream endobj 54 0 obj << /Length 3135 /Filter /FlateDecode >> stream x˒_# |\>o*Im8yER!>A rS9̐Fl_e?/>ʸԺ2_=>iU֫yX,˒NIu^%;xlc?ŇzI7e^"lMZg5c=!-iVYf&^OIa>Ө'M s˄yiN8}iC?d;t]Gsf4x7pZ<1Vm/d Ne &yCza]M}BzGad8Lt2S㝘SBĄ_zҗ-c>+2T^N* O7McY%) ~d⇜[ᙟ,Q4yV)"o&=ԉ"S}\"uKvp|>+E0]KX6:i? *&c2352[ƕ̖A^&a@9&0z5j8\h#8΋:[Tx_P%cem+ٔQmğ8QTSKn0D'ĊvjL @HV?e2|IN{ɑI#+6oK>{e5)"&Q]=u&ӑ2V:g R <Lu<X(Q'&PryQ xs&"UYp{~f/m߷^ 6Z/Φ;A#|b~ǿ|j?!̿n|82CRc;XL'76(m^xA*"L%2*HaO$~Q Z^g5!P.m;L/>6r;lC'UQ㵵H%hGԁCml_eeMt_fu@AB@^e0٠.+ՇӅyc3eir kpX&}׉tCy0O6'ѧQ%ݱrjItZL>OeJ[\/<0$nF$\8}Af@m@NYW)yE!ZHDEd^QRW(83kgiV3"7򩅸eW)d ֘`Ż[`0Bt_ݢ0 uEfcZ馲5)M60٬H3w@# `wut[lk-oYGvҋvޥe0ʼG3*_E`RV`& j6P/-:2sRֺ9QwN5Vqu>m]!";DR;[/\ou4";nۯ0n-E4Kʱ7>g~V0:,d<0p„z^"ġ8|H@]'\2x[<@wB:x7 %|eHj{28b9j{w94JWtb/r!ݧȤI(4Bͩ#&P[P}Baƺ,sKa!?\X{a$rz߆(T\| 9fƵlar#|6 -oHsCE1)r)1'dKcӔ9Ԣfǣ7`NtФ &o~̞"ӼEx%CISo0lk'UzO9U-YYa#wM= l:}B=ji3;0M{{bn"(:{ss☣&ͺ0uH<9"<)=3`P̷K%ّvlek؄"lbz7U0T{HvkWͧew9{hj_p\&]-e H4c+ms Ee3w[t)S4WFԩZEiFy,ndQz]i.+t|jEY| 4nh 3/,zu{{?Pϕiwz9=.^4:xWb䮲 R—wn:AY 旿훘s'u20XŜ\6` 2+p/s]fh;]C"*u Nޘ f$"ZO$#"1=']\\draw%(eY5_ o~5[g`Ο`W^= F{EJNApwZWɠj!ujLrg`?[kfsO+{~gFsSet\ؒ4ź*m2.xa.8h-k37&x>o1jރԧJ-w}2]pj 8Ex^̅ ?o kY!7nC_ځGۤ,V dka}|oTrC endstream endobj 62 0 obj << /Length 2614 /Filter /FlateDecode >> stream xZKsWqX1aV1&ߌt* K/u "Vӿ7HMXHeF8(O4z8n=%I}ajhY%|e;^y8TyxWmKWVh[Ӎ[ RyC ^J+g@ +xI QV: [[^rSy*aA޲xbHUB~N 9a\R)p >r urTBB;)O%R͙/Nd-HWH]f*ӵ/3Y˦d6_3)L]et9)J\fon:;Ғ”f`TUQӷ?%TO=u^L?r~np~ÖIc0BT&tHCKQC`+B ĺAoB?M̂=' K| vC|GG@)hQ e$qzv]ftg =i+.)ۃ`xNN%jU%9l( tyKԬuÔ]iVI Z^ѰP {kXZZ:rqN1(f=^{kD("!A>o=A , x>|r)HΟ\12S I0fC⣜OnjN^bfA+ot3nLlz.?e@wPrh&2% _'M0ʿ)MƇTpMW#2FoEBUU!<24:xt]&NSIGV&t}s( H&K!A1 SѓV?XOG79pG}^W{ tvOE*UB+9yKPX  ѴtL×F˳:V T}$3}𰢚wKRb|6[~Z?,Ocn=QAw( ng\^vƱ^T{3qCTQ#eH@/m "##Ψ4"^;~Cs3J ,gohnA:UsQֆYm8)L=D ^x:CckӷC*fTzaB7b% @SذNe+}5[Os.2ptd``iQ=ЕyU)>jDyWRsDX2[" &ڛ9kj<~Wפf46"T^̩۟2;m|u!}${m"mw%.0M3!LVJ<Ɨb3"jMt=&B嫁|{B.6e-@%O M}m$4< N}.K(=Y_tY6 (>oZN[,@0W92ƽ'j?z$alr.Q3cC@g:,!M Й^̦HFнBZ17}uid %No#^m2 lm,&/GvIw^.˃8St| E{䟇 C Dg}z19E͢qGNۄ0k|^ƓQ"%k1kA捃c~@o>hRdr$@ :Nb~ÿ~&*>\ʄzuOl Đ -Eq*0?PmZ/T+i9j0"u0Om+D:׬ aaB& jW[}wX՝/ !XkBCgA2* ͢$"mݩhKTa4]_x٣o=AF\͊B+@F͋6Г endstream endobj 69 0 obj << /Length 2241 /Filter /FlateDecode >> stream xڕnF>_!D#f@/9$0IEɂ%x>]~H=XdWr6βep;fyT,:zV*U׳?3_Y%y3˵}v?ǹξ5Bkt_b}Ո_vgtYf uVua-tV&XS|z`7to䡍=}Ğy[< CC. y Ͽ#L:սٸ0eIeͧ J'JNpf&OG|ZLqTd*`#S#[ bI oz3&/dDzV'UTY٢3i{d%xů0Dj$/sk~>DҠ#e1 4$UK]KGKEs/٨;,̒_ų)[jٟZTm6y0v2V'7^Gcs?FAo0.hͯLP ˽rHRGGi@6P>qʆ<xjM T@Xfk{phXb+%*0(Z'2L~y%`M ox\rvETG~x+]otp+YRo]cls3W}@19z^qLQH+n6.r̎9me]D9?\"p$Ġ DQgQ{"`eRVo+LCsfY{L74jvW)žU,Tx-rS:/aY";k,J"AՆ'A銁]Q!U~ 1_dνR8>ȣL6v.|3ųzn b3更>A$b S*?K9{gMR%F.*:B ;B\躴x9Q TbDlLt *ղBl䉵.nKB+t.g4@8M8Fƍb:oXhP\|§FrOq֐i8nj[% v]5$U eEh:!l84tw$}l^_Mgd(T* Rc,w^7z[+]& ׀e ڡ i \ZLT}1ZL Ms-W6fdVy-/8e(bCn0͑?((_='\ 8Q9M3&{kQblm[\"(WG VsPYNǚIla°Ta.bZqi1eѩ-vzYL ^>/dk=gI>i*iu*re3鲾[+]W:bB 5.ïEqP=sCy~9Q4%(dڸJ |C7ͨZG/*GֺAoXaHF:s^ f@<J~ 6hܰ22b6Տg@t׼leW`q!_ JY7LswSIS;n$5B m1l$uPvdZJX(]XN.x~w>w )ٚVX쳕 K;`1K[>_IĪpX>qp(yDSk TK-^LJ:(4(o a)?؇2;k>r]o=;;1>& 6$G#;D8K:npT7eKc/c˴mE!d endstream endobj 75 0 obj << /Length 379 /Filter /FlateDecode >> stream xڵU=O0+<&v}ql' `21-Bms_He{.'GbG`8v^t\1ʻB8Ufqf&Yl/@xg|2K2e^m1dF>JKW3N*GwW|e,YOau* & >fAF31uAꦍ1ե_gѠYt> stream xSN0+^;F"".!"5 4_ό4A N(3☑a6`~ʃ,'T&J|ITTS!S/s3§}jRtk52bQB!#4cy,-x E"[t7h-K9 '.νGצr`d_{;n| MV]J4bo2S!`Kv YJC:o9ּp )O890[ű&84?޲4 p;*xh46bw'M_{xDj[T~b<T?LS_Tn;+LR#R,ABݥ endstream endobj 77 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (/tmp/RtmpoiNjYr/Rbuild1d7c592eea68fb/ROTS/vignettes/ROTS-volcano.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 83 0 R /BBox [0 0 432 432] /Resources << /ProcSet [ /PDF /Text ] /Font << /F2 84 0 R>> /ExtGState << >>/ColorSpace << /sRGB 85 0 R >>>> /Length 41067 /Filter /FlateDecode >> stream xl%K$߯/h^H4 e cArqN#"VUe&S?oO'뇺?OG?Q?eah݇]eW=.֤?Z2gie??׷Q'S1 a[gW׿3l%2ݸ)c?Zbcn-~{S yޝ\Qդl{nChɩ]vwio=vUM[ٽPdL&om-'nfp8evC]Gc=IQ<6|/I6ۭg-Ch}pdC4w$+dqStGKSm[|v߾;Y|-O}kwgMz\m ߱|El7>w~2eA]Gvϊ.K4 'pϋtGKd]N>gϘSY4ݻctm=cN.ҽ以&wlg}I>cna[;~iBl}VQd(6Hw3cO(ﲫCz'𡏭qdn[gWfl{3696n.s]%A)ɔj<9xݴS_&e,դUmWsl~ew~Lܔe_ч>C ٽ{7e,Q7 (}g以}w|)]2u T#dCY'`.HwZ&(M %66n~k+~2/[>4iX7$Kdu5)lW[|d|>z~Lg!@#{>Ϛ)on]MJ.1Q7?Z2oҶsam_'{SC}ڎ|{S᲎j\m<\X3Pw5&vQ6ۭg̦V?gϢ>矟n!<b dL7frdnChM[j_>J}[~޸҅4̞7:*qQ- %֤?ZbcO(:ymϧ2 B~/{]Qդ`"w*6.fS]afgNzt` m ujR6WΧ]vMؽټ)s]Ch7!{w]W 6뒵u*&-5l>)?ߔ}8Xˮ@ֲ o)F)oO jM>lg㟟o{> tޕN*qQGM%dڲoxpmIJ7s#|Ցvs/~{n\z\+J7-ݱL'"1owހ$K4c~q |\J=}~以&[GT|Sު~ֆa{muu5)reN ^Z.fqh"JK|s3IpQTWo>6kȹؒn[yjZ[&krl!WG=FC6P첟GϬ|/5Wھ?ڞBްDچwYG#6ʰdmWslie].vA1t ~}K6PդԷ1qYnC]r[l>S@h}00+]AV] B.WQZ c%n dklߪ¼ك|p-[ߋ?l%YGUW2l,YsAnwQ.f5՟U~1dsi)"9(q#Q\Ü Әe[$-(G+}s{>`Jyu9~$01~\^Ui--!lo|51|XeeKX>-om!9Kpp )Y#d'_ @s$ 96 [DS4I+V-AsG@4(`{4/n-L%F\mQ!m"mliez[}fm',<,}֜[ߎOr5.}m~mкcƘe[I]vRܶAyv<#@>{ǎ?v'YG%6 6}]v{Oɧ]vVdpB{=?J1~t }deK*itO56n-*ۂ'Qzsy|v0MYmB6^{V~B6|m-wKke~;7Qls;mDw)+@PNSv`UL#V|t_vQ㿻O槺a5cKM& 9M);.].i5\qx`E~xen/4'Ch;Voj%2ݺœlպtUwKM6{t_wRoމ^3Ћ+9z&JQ64B7?Z~In.w}W8d>ݭZ,rs7vNc:QSFGK >l[Ek'[G͛= (q#l{!ankI.\5H,@Nch)/׋k [ Zv\XCdk|}dl?+cκo@Z>Bv.΅5U+Z}=b=9y;LDYgeո(XI+'鎅&vQ6ۭ>?ߔtӢIK֑rQ ([E݆|ElwxýSahb*xutHy2&YG=*F[ꮱ.f])O<\Zdb[w%z37m`q&eg4n2v;/C@_;Qr]0K9D`QI.\5 zOm [viJ7:< ,5M:ݳ1ɕy}wŸ[p}+ [Zs{$0c .؂cLre^߶wւ["|S&O Aėo eYخe^u ivie ,P>h_EWbM^{T%?q׳_rU5GUVMy:Wm~mv߫(y mG-!1d[W"/)A%tk'n阿<87U(8y!xN(GؼsxmJ,Q.tؽR%-[j@}X7I@$X\F 5sY@D*;mQF2tn dk8_`ݱ&`ݰ&8uۧH1tDwA3e7VaԽcƱ_l;V/J>=M&9x_ߔ%2ݺ~CbM5%f< "'(nVKiloBpP:G2dNeׁђ7ni҇R|SPs-v5U=& :%db-M>l;ffY}i.Xmޯo9HrU0~[Ai5I+xE2'SF͘vh 4)S1d'MXARM[/u_cF$aVk>B+Bxq>5dj̈A(Vx]cF⻥c;-N\gQ͇YdT L,_kKuHة:Wm&t~^ WA9t_& 6!7GͿ >lΫEIvؑt?.f8_R.ˑZuшy|W8ې"-k,lE]6oDmP9W*nN gXq;ܴ I,]-Vc߯oo/5վ7>+kˉ/n=vpٴ:қ⛻L#fG8 k ibÊ (_4 \|ێ@/ $G05ua 3N\7oo[#v'S\-K~jW|)Ktb1[LQiҽ}1['dNߨײT˟oEpy-wđf̔u4f|f"@'jlie:e/u$+$K?/{5KvobdJ-m(m!VO >~*ђ;n.lAa}G~{sP{>uTjx)Ht.֦ɧ]E;17j" ʅow@Ǿh_h՜-:3n3;f,RCWE גO8@^y9O%.v 9m6Pz*$P.*m~"nX1BN/q-Br)rP] "\7z&"``! 'BJ\odkP֑DYpSg G|Elw/6W?`+;0-e9w>OܝЇّz-IW}G;5 46-չ$9CqcO%[c{qs7]ytA;Y;j+sGM.ϹI|.k]=AcO(NsŰBDC\3\G>;,nJvߪv~Iڹ}k v ȼ有f&|ID@RvVy>vQGK{x(H~2W7`='by :z J=!PWPcn-ZwPA|IZ5o>[cǪr%YG#6L֫._.fs$z9,x(&VlٍLcl?ܐf h'$Wmk2QO;8n t c8qwLZ"iLre^߶{ݓSlb;Q4?/Muk7Jϐ_:%.f`P;VvވGX]%'w#:uZ1El#JFc_˴/×;uL<߇YYpvG~7QNl[ W~˟o[΅@7`niGa:jq5xtKFcO(펩M+"~2e`tm90p-8HusC+dO:A+dwM[Z/ce/PS66z #}h#'YG->yɏFH;bug!*PcqC3&vy\XPIX`Lre^߶꧸%t21G`*IqY[à{Pc?[-X7Oca ܻșlck~ @ZCq7T=jZŷPh@ˑ PG T:qQpY9Iwhlie^W|Sf߃Ђ;+o-C<㌔YH:iIw_v5e돤C4lLF6֛GD>YFJTvY5vךe݌)svd(g/6;M)̓7dVDg;[ WΑfL[J@Mkm۞#eӴP jP{SoN]hg)(,KSyM[/cV 2283={$Kdu5)Rӽrm9?>#EkR)i.nW5.H&hFl׹C{mk*[ͭw"%(f%jաVu xEƒ'[.^gq໥}L{wWlr> -Eј{VM rE{!Vl;&s[_8EX]|vxB6PΌ ٦v3kZ;[:MD϶`/·M@ʞε +4QKI.ZCIxJ૰ծ?V7 -(K# ),jbIw4=以;ꇩ!R]C EzB#f;,;jzjlieyQi!bcqΫ7deԐ|:FcX2}KE~D᷻)qo@n!#ZW>š7lz^Mx|btG' D&pݺhiҝ9g˯$NgVzFQ 6<(:&ΤkߚZRM}츢ImIlt 7&Dn̞ke2d$K)ulé{=ک)3nikV!=u橣Ehg:b逴}}_I'Y դ벍 R- rqeƎOSȝN]P N))ǣ#nWҲ~88c 4=̳% M/׎KAhE1אKijJ$eS-$يDrМW_$.7.SnT\ޢjksWdžsH z$k\+V#;wێB7X@n~c l,3qoV] Zht]+̟˹2KZm!3@de\!qEIN -r%:uD $P.ٚ28cKÎC(uѤev~\^pk)r$[Xae>`YTȃ= NL՜2NJ![T\ !ݧ>X8 WVZK(yvOQ+uXݩgdn ER wsEyY7:jqjjv1&lwx=B^r˱HVo.FZ ,P{cO(NOȀd_OKqdwpOhnkVFR7`` Jq.bLLi9rR#ĘMTv%[çV,fO3 +=(j4`E6h=j▚tJh[ F¢e ;uoڛ-9P@ qj1ɕyc}aFJxG,hdiJZ~,/G\!Q`FuezuŒ:ܙ1ɕy~ۚ 6 }I3 2"R"vulƾ(3[{;0CYd[k5:8(Yĥ r 2h]FØʼmMF%K(YWub'LYS٪=u7KvښX5E-oWcbkd[1Cȷg·Sc;"G,SA|a#EZQADӟSeu3{etJ,ӈTK.>*Ju$En}>QɬCBN`ĥHMro ZUkݹ۾mMPeG*XA9˸sݺ,MYJN͔mL-rl?8<|[I.z`*8@W.~lK"C+~ޜ+kJ5\VlΈݍW11߱,Q*RCcTnP֙%fS 5f > %VYePRF3BkԉZ߶FMm=:{PwHO ? tHr {lWp5rw$p}qʆLpϟ('÷OYGd̵ cOT;c=+ŢI^Ź]GLilZi5T k(l)^)(G\00_:>U:jqJ^U>W"'qKeÛ,F{'VD+ UpaiQ 5zg\Xm??t c߯л#ceո(U4M"΅k?rl$VLʻ@ZZG6< 3Qs % J!k'љ&--)/Ԧ A8X /T}ܝZ9^5GzB0BkbC:[ݢghc)~O_#=(qMz\k54U86rMX~+T)sEfY- naw%YG=pŝF->l;vM/Ĺέ 9X\PZc[}岭6ne>}![CL@bߤ+ZF5z<]⑝ݭ]v9Rll++ՑoIg<Ɣu _*obNO46^^tkњBHa 'Ӄ2!`$(#ۡ6 p.MTYIqÏ!VNtmD6F\=pR'ܜYFadQy%IUB2,laڽ!N-oH7,tjRzuy~@cM4\ON#4F\X',Hoeo_vGӰyLlm3m8Z_<[H"rE рӝ+5%Xy"pt,-Ź :h<9c梳vVܒ貦g*7xkT_Jq2ѸhFYG#>7Bv(:#%f㭸zħ--mLB;f W!`]46GVe85:vF]3 ,!]3S97t.U Mqw߶hWHQ3hoB7Ђ4z*}!;P떺GDpled5Uo($J nsos ' ۦE頴,@ݩ&-m2oOX`*$(5cU={ @ڛ-#蔆1Ʌ5Kmsmӄ Sb`6TqCZu)}F4ʼmŲ<@ڶ .[wsgMD"(_,VHw以&NG?ߔ@[WHK~_ՙ~WoĤU2#ˋeWUt{X-GQ7`C>kE`$XBoEr uE M&5^b_["V fTJ_;NqU[͑V] BZw$?%䒭)') c-B~QnJB-ܑGV]GP3$lwlݩ,a{,_؎ so9%ڑ_bM{ž$펷"5<&ɬR^䇹ҚNϒKq"<1\5䒭'"LFq*B8ſñxr)ɹ\n֔؋๾mM}'"T᢫|ǚ}8ޞe͙岎R)o++Y{F&2lwڜ¿=tfD Ad9E,PwǬs:5f8gcW1PIq5Y=`E pyț@\5nXAYL~Ñ߮7dոbGz1ݩtlw݃[-:z{X+!יx"!spDgZO4Øʼ6mM9x| eU\ *`+ T(k= Hi#dꎶ|_vG97уrTcΡ2QHIv-.k]&vQ6۝N&* L*5s zoj˔u1N"" K3_l;^얟/cHq2T7-Ź'ZV к#2֦[Cdk?@Eve#حh[~U`UFb`V?΅5K9 _RcBB%7T6:=٩e`Ohݹ}]Εy|an8 j!v)B|pRc Ͷ%7JSSsR.⹩Edky L5 }E$ i35%3jNDRos$ivc@%T%Hӟ(fGZ+(|.fsz\4׍,@ENGZr9:2ltդ(dLkT.SZl;JcRbȻV&5wOwvH 9Zuc k(lgl@mٹpj;(+Hr]n g ZGrse^߶ V #D` /neϸ7AQ#Y+Kxk4]/skmnZ"zp B \ BQr=.ĉQ)%ߊ59߶F keys7R)uuPJa&Y #Wҽ&--)&G+fݑ}_&j28E4qܾe8V!ew,G`,{OQȟ(r;.U['J+_\귭YZ埥ռzFɏV 0sXءuD%!9]!lRA݌RfQ}##{:?YsG [Qnƭ{V{*ݿ>EhN%|3l'֜\+rE`ZrZ".*/NiS :~t“۹r_+Qe:(bJB҂3:tݺ(G* %<^9*l;6H<4L PؙTH KJ#@58eon򵤻B]Z[akSely8S܍R(.΍dZRڟtԲ;mqһJl™mYM7+iDJ! %4v׹NE q,خeҸ7:qOaٲx$%br86(i'ݾݰoN >p p|1~HXyuִŘCšG%[#g,Y1YR/Pu#cv& tQcu~&j!$lxYovIcVg'V\PM?*GIr^U[/`G+@;y@K{j3Syc{X=ko[Exϡ}aYsA}ӹ).YMه\& \vuOd>6߼~-r-3߼|z @s8r׷q=)ɋln/muR @-@5&ƻOW3Nj%MjYmY T Gmh9~L{}۪Xf.%pD}\ X rO)KpRZ[&--Q1XQ8e#Nb&5KTxoo/jEE&t:F%fc{ H LƘZ. /%4-nEZwk۹f+Vy =`D;\@ CwеB 7.εG &M3rL0&rָRw YdJw|Elw|r_~nlC;zY' (Kb?´;nywKӒn,̑2m<̀&2R:q sKvؤ,#&~->l;"?ʪ¼2 93qoU ߸\+=c+56o͵f?_nvv9=.}"M%\XlkmRG9) 58M)ފso]֑;IAs\ .fB+)ge4݌ZZsS~*L(pWͩ"ژreeW\ Eг2p57\+=ֈe6+h=jl._I#sfFofv4`%8wKHSh2[/)lQo-aH-DlI H,R|M: [L^&:lͺ Nwmš^\+*L #G@Qtn6ɏ ;ER| e6*˝Ky[?rdٳ4fF ˉxr#"rC&\7Ʒa>*ZȚx^skOi;Kә6<;e[ʼZmUwIʩ@yXɷ6.HIR쉺=t('fSU^bȆmd 9o#ܺh[%+F6|;o[{|-e{|}2Xm2H:U 0\qhč1ɕy|OŮnbx=ltKMu4IR N'+.fIBTETi ,^:JHn,4F,Tw\5~;4~e1 8tX.dzlv ;ޖGfM[:/ } kV@u=/h#YG58UѣW"(ew(X4Q,A]Nd=tf'以&)LL]tD#_slL5tJ.; OS;-26b*/sx%hW\g\XCdkxt^:]JǑ/ +~Hj.Y[% \6;I)a;٬SS\Y3r*%a5Uy;|4I.(`&\U395r+iFY:Hy-BZ xdf.I ka'q`P䗐;UwGWrת|:|̿!+ԢS^y_eת53~ꊮN8')'6Dzj \Q7b YTОcO(Nۮ{D>ad3=%Y^Տs]nj*:}ޘS dk8O,szmΠlF^K6v,CFuj mNMvG6.fOfL?SrI.0;mSpG\GW :08xHYH^8c5~-DUn?ơJJMӚ&vQ6۝r|XrD X=7dsq4C-!l -j:24Yhk63lh`~o %J5Z6MǑ>g yt|l|mBHgi4]g:{bݼgiϴI_ƒO5ϒq;ιY#m9wUr-.]]%W52>0&rִO#Jp[ڢH1zէ"Ż;]JN`D hr(N%{vln 咭׵D),>.Ҏ#8d:{%8"f/gew?>=l h lkPXRqm  69>'7΄NIp|$ϝ"sG6V/8VTZq!- ,=.mM<ѩv0)+}kR@S^.(6JQ]4k|Elw(7vs@g i6;X,Q$xU:v9{ʹyCiJI.w{BʃluZygԪyVh`>njrXh\DXi?Wo "m] E:p![ 8JQ wKew+??PU4ŹH>WL8JD0o *E\7q\uE`D){x 4мUpJ.89.8P.) ooү?I ho@[.nnGO-uj1~k>$eN0{{ T.nr)A\nӚ0m(lMHϏ 0TU",Z -RО>zgqkB[VhU.% 8bp;/*Kғ#\eͧlwIG>25€Uc=z)B6*_(POS/[UՋt$ݾ^ʋ8j=;YJgiy:o$Faʢt]%KFԤ݁O,A*&w& őWߐ W&#w^li/@Pe~22 mg!oeL&?uWv~IXҤW;#sWHw[ƚDz\BjOm`'V\tRXeXc*f)˰- Oϛbg!+TEJWNp[w$Yz#'pfCR:1OEs1Ox5!yaMP?Qu9W߶' $Hٸ+[f_MG,_ě6\?M7q7wn!eveZI#eO"LW"VJw|`dqR:<ڣ7tn dk#o jc%\Ri=m{1_ 5<[j+U[m{Bb)*(HtЃ^HWT<3dK%ݑk_KhpQInM GjBn(OY5xRw~uW46niݿ߂"/_']T.do.uu(zEtO_'jlie񻴡XLa`{8:t~G~eJkBNHiC[/д@o.A>ŶDsrs,Qr3t0M$B*\7귭d*ԛz>|׾M!ϱ%;Q4_vԱNjU;rȷR; gEJwݾB m.+Hɛ$Nq{Ss̛z<Vy).JJ.R-@MޯZǹqoa?_H}D7xV?4V p >r,0-tkZ!6{ o=l͹`&wfL$g[Z֝+5ӰB+D"#TW٤tݾcb Epcvw.՞(/ lT:xx).r{,Bo.7U54`mk)xK}N۬c؃oh9,ʔ{ĭ3sdJ9) $%0pWdݱڸџD/Z_\M i7PBk*71ɕyc}۪zۜٗW Lmё9f*;V#C!ebMىfj= &vQ6$X&ځ88iG6$߬ĉdz:Et/I6ۭվǷS=4ChQϮnMD]uewYn?twKM6+NS4$}[-o]H݃_s9w Aa͞IwWc{9_v9fV rFo- HڂvPm{ݑ 4BwJY[|%lw-N~T1; 7x_BZPurF%lQPK+Ьb*\/9. Q}-XQaLraA ^ES6736$YÑ>F㬅P&)Ն~P-K*".fo?%H::D IdJW8!z ໥*+0}c'rr'|gq\Z >;t%^Qo9` (yE@[3X6iM r[Y}w9Wmk:@y>x6&lX_7GqWC*SE+v`GtWǡ_v$hՊ4}R6KxZQ Qʪ):BeRfN+$KIj2ym{‚l78͙l2XS5R:G l-8,m}Ԧ[B.yoB3$(d~Л^&dbmG/qA&MǞ_v'+„>'9m5 kV,_ǭYfЪ2'kTu ' 48#J\olQmY(s_vjr H; ^2(|4L{E^M[j߅k?{<- LMr5.E%w.*prYɫۚ|ϡ_εj\n܄ Zgt,Fn dk*5eIîڐ@\=^"(ɪ1:"c/r]֭ SZ{ XGy:+U0sK%[S[䙩(K%L]Gڿ|s),W;5RJ Y[d~I)9jayՐ(ˊCm${0 Ըt߉UZ $P.ٚ* '@ޖD =VRH5oՙ%+4")meH_vG ۋ)K `o.g]b+pK֑)IiFm$tiwadݩ<2'S*A>^Z}y=ֻN'.:1ᛍ$ʊ>tE Nlxn̿IQ/z[! ő66$by ˶4Qq`!=`#D#,RwvxhG&-qq|V8ol6{%.݋5$kܬjq;k\XCdklYl5S34޽#iufh;*v|Ma)rV?ϛ'Qbݎڸl:+?,ȂPt,J![#Տ56niW?ދ3C¶#L |]h}PF ٩6d jM[:/cU>z!ccih]WpչܗM&33K:_"9W1dVjo[V"=7Zpu5?l4NRW^t]+W<1e18`|,Qp=ŲO#Hcl;fs#9"3?] oȵe"m ;\Wַ Ƴ|z}C/АFd(y/YG=6 JvZǸhlie Ff4_(’h{4.ZЈ 3NaJfcw!ewbp8A>'3s]U$(X.BkIc:\5\S,E)YI a@{6ƀU#4;RWkt 6dN:G]BNM'w< FkҼyډ4(ZS/l]X\#aW~2}irF ݡ3*Iwl&'1Jdac雄gl^ |QV}h ! dc5|Z^iܨUE^x tsw]ŌTšM)R {:߱\2gzz=̔o~(PGPݳSg6@ {!46i_~ ~ Zm`Ch$1ͥv"= V5b[zp7G/$uktc`$NF`1:WKj25-<d<==m;(k>>IvoBW{ۛ'7ONU=M-rEwt8He}K0&2r\gC2'1)'uRʛ8QPǂvtcI~Q7_-oVNibdo\"ȟUs(r._%ٮjɱ]^BwQ"Ѩb= ,W+K5"Ѱ$'F6ti k1T(`,\KњKNSVbxXV$; C/r0p Nm0K:\zA qqA@%4ƘC;QNSS9)$4P/H"-z @'Vkb̪rz<}ǎA(DbVQQCG-\ (N{)vn; @~mV{ n&.qt-YdՏ}kT^U`P:j I<5r!xb Xza̡^5PіG&9"f`5Pg# 9TCu#[gRIzT`ݙZ`u TśWD͛'IoHS䵪Sw2%.U'Vs+6ϛ'Hi$|7@п]cR*}q@PP ;6Oߤ{3\QTzax\VGʾgiTc/1];ƒ#̚m,YcAØʽ޾&Dx@Z;Diy"hۥ&K+wtכ`uZ;.{,.8aUL.pDv1]/2/SXt0]/Zgfd`&-zpludϋq z"F<:qE]o(3,jqiӅet)ejk2b9\"ƵR,KiDKV=7t 360^5TLd"2L8():Dz=C7Ou.Fi;rlt_~GAh圍E祊O`\aWKNy-rdP=n`cSN LF4(2dǍ j@ǥX =#Eۮ$8YsYw)S/$|n`vT~p)}z̢**_n[O3fVS)ߺrt/S!5o-v@n-S.q$(h>B5jx96kx>Na"acD=^0\H.D.oQ+{cX_’›uaUkE8]eNz"׵ A9X]k›ۉVAeHYc㚭"a{S8CODGq1WcoD:] ŻVoYsRڌ:)bتLCˉJ]R؃SWZ1_)wO;* *D&,9W٬*6Qr麤N췜3ZdvyI/ Э^t*ؒ* 1ܶ%ʱ)wOG;B5D!)3"&S~Cn7]T \*(t(j {:} DD g:ѩ!wD9u [9 t""ܞ=t>1d6VlNvR/yr^h3^5ͼ8GlmR9P,uUɃDG,iZMr- r˻A,jw}]OƬIzCD\gz܁jڠv:3Z bPY*R>Չ _{Hsǥ:5D*|Gc cR*|BEi%B-:WFJDT{ EXJ]auEIf}ZXUfYɬCJ!9TK=:haUR#p iqoPOWXIŗe9͈ bpq)>%#zRXeŘ%_cqVO`ql+<ڴ|eCWTSpJ0eBUUYI5 - в6(F SۥVJ+=!Ɲ8ߣWp%n&1&rQdJvBÉnD3sv&ZsRuua !/I7';<@@ϙ&v 4w耈Yݓ.;D36v"nI7Nuhif56ByFٜIzCOD{'Js<4WYVC/aNp{䰼Np{)(.EU*}tzzcL8>֎d{^CNo qg%Z{+g}DVP tE(vNsg)wO{[/N0L$=p:!H̲jouƱM"mFklu[,b{ɜe7~ƭ5.J6(Bu+jWp ]ۀw_rt/uoWKRƭZť`Tw'bĕØ@l0 I)^5  n9-qزGQX/1n%_#v+"a0OH j+"Ԉ' 4ݩ:4U_}0=.n>~IhwK'MV}iV\Nkqkk:WJcH!Nsu)yȪ+*9]9:=T1kE$WPtxݶ0( u.Ď-z>H&9G ss︆?>yl[o̝c?ׂÎWs< d[L#u8@?.7:^sPSTrX N]rt/DmX5'ge#yջ["j A@h?@dcD#DեV$= pG\LcLJ^]o_}Tv ҐCrlz NC6O#q%_#1Y֭wxYg*:nJDz ztx6b%1){c}a;('sUhQqb 9}.gvɱv-s?bTa tIV\c'=Iӥ%X"ES>՟uq-K*ylGYcSn[j:@Gpc4>}azzSҵf}CcSN76 G;Ix04sgȿR/DmtKI5ͯakE\ acτ]ϯǥj V8'FI$;:>ɽz߾hm4?m~-Nu=MNEҵLnjE)_~ j'Nn KURotţ`zʡH.-|аTG;lR4zMBb $&J-DKG%_#$pqQDBRG)!:OXN=:nTB /,Ae_Ob#m?(g dUVz?&~.{}MysLr 4&`,6Wk?RJ(irXCMПѺKrNA U0z.bH}Zs@0ڌ.#FX-`̢\zט~#ȇm/Ԛ3mK= (JMN7 `0@%D*^Ug)Ixpqܼ>\Qnyѿ<:辡kn\)_~8#+XK*I-7αvjm qX߭wNo15GYFLmt@gJҍ>!_M M{%4nr{Q7]{m=ƽ=x|n;~V(cbmD b[2wNkN3'Zạn{;RUCG׷Qaan5 L.wN0lG_cSW̩>Y^j?\W rŔTMK]:\rsr(/Sx1b0PmA*F "oE:FUS\v%_S |chV_V<u#e z zbz~%Yׅ:^UoEG8?JCJqbң|>?R%9 _َkrEY7ٶ@0ac.F\ :AY0"Cru]RS0N3v>mOؔcUnbu8MΖrA7Onż|5[ȣ |ElѰvbNҀڕ"oY2G]/T}0t0S]JVNvlQnF۱ ^1g4n,w&Zk4#@1U . o_* Q9jm݉>0 [9KX䧄='[_O 3r&v<tʿrDTSmU l%w^q,a⼲l"dv\j5u6*Vm)ܫk:0Y ,QUq-v%&RaDb/2*?0="3g>Hױ[zIץ /:"PVAxT5լ``k #ty.NfLQAM薈|?߹C/6 tHrk@T)OpF7_fٕ_3ݶofa~Mez]JcSw*s?J߮W _p]SHD]:!JjJXp$ynHK\Ń1m'%B/>.EP}nUmfFGf}] o{Xu)lceyF7<2-geԶѢPJ &3&>]*|ܞRύY#:vh+DGڨoQ#ѫYLXV#1){} ysXe,^&) \nuA@RxyrEwlyթ48#Zpx9Y]u1,_d;{N_쑠BAZB"HcSuxQl[U@t-fS`=!wiTWE~N|ղ U]הjc_ʽ߾凭nۯרZ~mks[](VNwܫ&Dl-rAYQL"BTQ~ѓNxz v Er5tӴm>Y͙PuJQBn:UiM݊֬]"c$wۡzѳ"hc6GYEh9K4,=-"`wV`Z#+cVuh|MAOPy`pWE\ #"zX1U'AZ%_S>*VSlUت@j%R&l΁38n( z-{ZQ8Sp(l,RRpKNy؉Hת|M9F%V!tЌ0Ņӎ㠴r-%));t+j>iF*0dž<?k'~ۉbMGl' Ѱ\o'.Y[z"Fj"9<~ld;pKƙӶN`vzkN&\K}{qw6CDC$Ȩ >cR*y 9oq+m_r+vm=MN;$H_<-vɜ|k3 иV.G'bJy~vҵf~oo)\$t OP7-nAۺ9ujv'-]Ksۑ8)_~GpFwFҞ[JVd,Cu ],ltM{}q#ȹr,krg]zgjDWqvUis=f4<1 ~nd3=56+]mSKS~)gu\bæ.&&?WpE`Pn+K(o_xjՒ ?oE"XݯvGhu49nEkN=lkI)ܽ"pu(s,/tE M1*l MKNɍl jĻnAg,yOjBv}|>+>~}"xĨ8m2;PKX86e#[=؇1%{}wgWA\~w;Ewȁ)ݦʼOW6A-|tBwHS((rsJqg|#L]R5aya{%%Gw {ZƗ) eBJ8Cy=FB\j})PV}zʰ:KcR oӧUx.Q7(}<|!W[n[O3fn{e{)wO[F$ܾhAγ(ܜ+)B+'䆑Nx88v56Tڵ}ʻxP]Niv,(&{ $8nCp[\ rlS.$۪?Q'Vs=x7REWtIըr([(NDBw㲨ba 8 AEuG71BP (ea (%\›!V<V^U 5gNyyâ<+ܶ>\f][r4m]UR~%ݍnh8nd38n4 M6CYNݭNlgdO;(vމM kIDH>Nl COĈjmCt 9` 1[Mv$D j!iq8j"'َ(5s&wHzqE pdĊ>1xi,qƤT5S%ˆ&0.Bx' .&1↩Yw#fXMP'y^5%\O 8L8oC_#n73CODCz5Pzs)^5ٞB`D>aXxNH츽iHqcR*L/)iYb~Tl?;P*C :p&\L48g6(?/fSs9 wYf9ƄnP%Xf]i;m96]/ ќ,)y*vPbTQSm-!v46i_~riEʲJJn*)5|mSI ,5UR2ZKF-=.ojvŒr7ވ6`\~Sw%H$3]*jȫ.~;-u>/ [e禖,-.RW*2FXQ?Oz׈M:L+9CH (-QCn[.9ܕnpw4ik_~' %_clZ1;~KRGz"Z<3ԌPk՞,R[D|H]Ai-{jb4$!v R0_M,$aq"yjw^U_].{}} @/Z.K"U˚$S.=f{ dʪtM|lVBO١|M Tna,qJclS5^+ ߒ d)$wJ9`,'"4ֈ1 =`z$i kn꾺,k[Q 0rz:Bw)bsyxZǗ߹S;6vj4&>ܩm1Pk׀D)TZ"]RqrCرP56i_~7 vᎣ«:!V\xXܶmNv hg-9n[Dp7g0k =Ec6XC`0wZOJK_Rk(=-=V㿏 {"Ϙ.-|MeKX:1'+&u-:R/g ]߭EG~+=;DRٱ*5B.v5Dtc7~ vko"v9#󠎦X4w+}^NxzZ T/ʦ IuN*5C>I/W$Δ.Wp)]xW0帞 .\gJޡ| aF7mr?<"58LKHXvjl~/߶FICVNR,qJFY;YA=)aU3BҸ494N* ZQ3)mSgtI+Ò؉m%%oYllS~5[ GKM/@ 2rY \[]؃A.)$/-?qLJ j3bRaR pdSL BIZB//EF}2g!CڲFbȭ Nyïa)3mryN^#i_~TN10 g׷%C~9A0-hN魰 z~käUZ0U+fygB LTcKE_./I7WHFxC+t.Bs2B9ᩀ``E=ǤP/>}_d\ե/м@m VebYNF[ͥrQZWg/{"uҎ#Q* fVglu vonޑ 'Y$^/ᡌkH@ HcSlE3nX9fMʽ~߾P6@~+b)?Aw3vSn'@Dz3mإ [1]ZB/iQ9)eSo8;nuQ ]hEcSNB#֋orޙuX$tq$)]KČ ]iuDosIkk\ԩQPOKű8;0mSQIݭ~+&Elwؔ+P~1u;J—R+1+cvaO˾&s{?(ryv]R%t9N56(_~|,A}t MmuHOĈGW\h, +xDRz?.HJ!%qLAs?f)Nޭ)crkH'"w۞1i1j:YǍl5aUXz4T(JQM=U}XXX!R78.8y4x80>cNȽ|MTBtn9[tN!<:Ɯ/^=(×Vx_|nQz)|G~ӏ`,lm 2/2mT'HDG؛sY[XM` (o_ӝ%@ՙRhxޘ$.Ld!"vU34u,auDQ*ƤTUakXI0OAP)Doa(.({ OclS~?˟_?'?/~yV#_/G7Rm/l=ݶ~ne _|A-[)d?;r!}$'r9Ȑ[O A&ys ޯ|x??~?Y?ϏnϏя/wfֵ1/{(?i%++r+&{(/ OP=b ]eSTQx/aZ PL2Ɂ`r!ozfKN2@$.snO2D!iQ [E§{smiok7w'VoU?}%JȐЕs,_t{A _c5ԍǗ' V,dI]#%S ZHrǦ~Q7y}5Il}>!ʿcq@邂m^?ꢻlG[-9=nA$n:Z*kzu**G]F:b9gYztJqۤ4*%_~oASǎO.-gR[uIuA1tQD% cSNt,"\φoY.#ew uIU-; +;qƤmPxcS.K7ޯ<2_|vlnJ]ns 49M`ؒSfX]>4#߁e0\YOHpa=4ؐ/ozttv. l_7-冗ẤCsbPVAi-9n[ i3s e3?`\s0KS~1OQGXt:`6(#wt[]faW2ęa7~s]Y>"%x@NSwحl9/5''ԫgW9߿-fiY}|?a-%9V1SVgm[rE?c}Shw9 J\r\ Iߡ:H)ێcSN߂Bgk>b%kGm=nCt<#1!EǤgK-1!oL3[ endstream endobj 87 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 78 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (/tmp/RtmpoiNjYr/Rbuild1d7c592eea68fb/ROTS/vignettes/ROTS-heatmap.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 88 0 R /BBox [0 0 432 432] /Resources << /ProcSet [ /PDF /Text ] /Font << /F2 89 0 R>> /ExtGState << >>/ColorSpace << /sRGB 90 0 R >>>> /Length 1684 /Filter /FlateDecode >> stream xK$5 )r!V#q@8h2B|}$cl1,~A?͗MBe(ݟ77Jm; ò"Rnѱl'FG+lNq\dNG;1;DL-a>RE*#VH3ոOeՇxH.:5San{GB;C["B;C[[ m5rz[{ 5D`FU{N Txed Z4*0;B# -6P/-hB"U>hM/iBF j 6oKuh-DhAizbN J2N7&;F%zPs%'5kAͽA*VKRfh tR3hX ԬRB5B5wPXԬS[B5^! >*X4n/0GY,K{+MuA2mv4.SǀB˨A%?i&QD'@'oFo؇ۗOX`>nbҢ,dS[f>B}ʞ߾zJO4,\kBJbGi<~ .P%3G$$&e#b'9'z~q|ކGr@ou %iXP9t'y&NGPx,3ه,3Qꇒ C3Q"X0F>6 w$&bI3qZ>cbP(ꖁ5!jKC[GkI$Iu"rP&WmH2=$Wo ײo?&ٷ&SnPyᔴo.| bw,qk0u8ܬxvܱʁh+9=^wfa [jxvܙp^/qI<;WH|HXGurx4q:69P2ijSFij#_8uؚxvO GCh|jhȝ"g\\U|_&H Ƈ-noI<;wܹE禕ijxH|HXC̍'hw_'a$q:6?xv4~_xhh< ҮRƳS|䵈8Z\ZG=Ѐ48Wr+~UuTsx3*b <f`^9pHFhBѣTαG=}δ(/IGx_PF >C (X=}XY{ް=Ɋ>b>*F#|3<}DǔB|Ns >-0kHQXTx/dHϪ endstream endobj 92 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 95 0 obj << /Length 967 /Filter /FlateDecode >> stream x}VKs0Wp3HB[ڦfH!'6ji}@$e~B&D&$ϯG'N tITQ䥫g\6Y7QRT`ð!8?yW%u^;@L2JV,Hmq9=,h6a瘔bA!*L-y/| :<͘{:Kzw7[?X(P)G0*ඌVIvK،;\p;֒-X=E9bv? !H^42.q-}eZ*d6ft6rMm}k._fJ6c3W|QLQnp)-j[_I ,BH v.@3b\v-y1PC+m7fli KjUd&^/TlqM endstream endobj 111 0 obj << /Length1 1891 /Length2 12186 /Length3 0 /Length 13359 /Filter /FlateDecode >> stream xڍP۲-pww@pwY. ` ,xpwGUUݣ9( wabcfH(XY9YYّA.HT@'g؞&iS]ml6n~6~VV;++NI79@ :#QI<@V.e@kF`a+ ftM\vLlj`3R Z8𳰸393, +*4nwgHTu+v5j_#\́N59oF?g`cfO'lbfs0[,@@ #7of51}% -0ym͜@. -NzR`;;3o} '{}6`w{w, GW?Wҿ6K t=̬X~Wtځ`d|l8}t7Bbc\@K=ҿ_@;<z`/2zK~Y4UT?>qq `c}-iM@#V [1bwשhr}V.V_lϣW߄-H/7_duh]]^@{i'bb9D4h r1{Vk1[=P XYul^ׁ|ݛ.)eo6`\''O+~E\/M4z5f{k9 }rsX~F</E?" `QXTEܯ_`11 :-\z,@nҹ~NĿR,?k?kWv~j||徾_8_ !#\t7@]uvr8wg|m*_G1W5hfNN/_Y=fH `3 /A5bDL[cBT[ZitL^ NhtVŒ{0~I^.>yÇ&=x?ūNn!O}'A$fR~rn씧stES.u&Qϑ-?M1EkDPf'sa"As>su=&wT>0Kw=LJJuv.J]|7#^)xs^e%QBs9<A~$ T$ЉEٕndi6@MCZLU&cXM1XfM { QKІ4g~ux~'-6vH<-Y$cqLI#03Ÿ$imLĎV^bQ2sK3Rz|Qbbcj.AClsZ#ܤ}H3&ݲafq zuM4KG ;ˡnh !5UL '&NTG(%7]nGm{6޴%[ٙ_vesYVaDE+h 8"}`R{mbo!sF_t}{V*qiaP'}| +nAP³!y-]ʺu ܲnJT=eEӵ(w?Po?㥫u=:kpҎߜLpCr{@ +FOʚtPo6ui>?! mS){ y҄tYPz2ɣpo+17wC= q\Х>.I_Jf[kFN6(Wc /kY{WrvS5Yq3He{MoL' Bg04j %>_c 1;N$-rE׊o?}ԌD!G)_.Yr]'fmRC;.ǦtE RAJPD=(W(p>sr@wN.dо { ? k9(w*4ֿ?L+sC7:.jB*ܗ&{T}';m2aܞ_Lq{?;F6Z$ 4d??mvȪE{?Žqe(/)0[RˢNkz 5<6@!Ծ;ߜ1.Mf[@>B*x8=ϲmFE7m6S>9o1 oKڃy#Bg8ǵ$\Z4-~U+uK)a.!@|9MG j'A׷pe#I=܂y q'@:ӭAGK+,l CDj-LM»EDE6Qc3 nIRDݚu;E3 K'=X/tO%?4x({LY'5=~:Ib3I:֟歡| }K ?j3@M6uژRuؓ5XخlOzLp+{1P{]:#dӆժk ŒhN\{<7Seɦ/6D_ʌf0f<ع/w,iL}{BҾũ_-%#WG [FښWL4-є]q]6}9JJdy-M'tW+wlי]Wɮ˗^@7=p!Lug*ݩrD({v=)IO!r z](h0mLg%0ʶLܾ=mA-z)%Y]H\,Іd-W5/HW}`,G5t8&\\~lp2ղ9'~ !`Oak6AL ƓqWD S_SnyxiU\`@R߉a)8St_Id΋cqVJv+E;se%8I-'PC6ycg hAzR+<)ևѮ٪GmIx5h>DTY!6"0XSv^y!(:c|["\6|{+dfaC  ~W8Me6U] ~=P0}7<Q༾(;YYk댗yWC@aMSR܋Stax&aeLqíp/e,ElUivc]WMxG ʅt4LL_\S7cH=K|9hrA` 0th:߄jqJ&S{r,g I(1U_\d=*f?il/jؠH_.SsE $ˆ@I6~.#@߭F(zqBX۝/ @ G"T;L6b;IJu/'a!t!Vҝ@Ed3N0؀# r0.m's/Z?'58t?>+ke%SrP>uzT\QGo/޷"Ah`U.J!"2bȭ}`*38_eOgkϳ` `l#S<=@R["IWkfި :f(c@Y5!3)xr9v{gfR@,fqz|=:7_54F::+ m=y&{\1– cIƊG74l3-ǿNpጰ.WS+v?ks̜$ H;g٤qܛ݆{û(vBHG9DuBHr+8p/9PdBQJܴBB1 |-y804pCn V<+jo T @iN٠CpNJ*䱁URByrCQfpZj?!bd(vcX)-ġI^'.n+ `&7:C6)`2;[C61 Qq5Z)@>< z[sSUvcYOd (#wcXpoI߯g%P/C$4atI̢>=%Æ8-ß ':gPNLS3ƼgZ\ |~b[|]Qؖi{@A,d?QЫi?ʤhsHM.;"/<#[ihӎ{!ޯ Zr4  H)䅟wAu }>? 'ڊl80~9nvJlgD޺*>#PMN Dhb!xa)GZ;ۉoʘYtM N92hoˬ8Ǫv`Yjf9sRyd'~3K&:Q۱?d[~%5۟u,ݒ 7- e.0:eAS7řYtH>iLEffMHL7!ݝX<尊S z$ ґkYr#rjPVlZiNi;·5--u`az'TAc 1k5,Pu;يN $xPQVneLh1qqDZhҺ!|pN&#Q='FIdGL.\n;YJ) kXwLhe;5_J&2/G@)aED&/Y{uyި4!_st<<B&HK,<>*MjWøE!fywߓDè2e嘹G;H \Jt 3? Y(1dlNk:_(jZ!%Ce:I25Ey cifD\HbhtOM^я U|,z]r >^,E3y!X1w{a`8o;x}0kYϥ8>N˨O%iX9޴ۍ[DnT%Bsf]cjYREbVcyVe6D4=ŢICj\_y5!(Q'N%hA|*~lj6㾸5Tppe/:ۄ*`hp%O~qp27MԵ1ɨ OjSwGf}:]unv7(dvmqՌ.&%'6E[%b J!,xђ?t,zn[ʡl>XXQ[DXTM [uGs$whn-yMZ2'sE2 !n "_f~mrKZk~Q3oەk,F+{JCi~}HfX\,2EH"8N+DaHHxna*G#]H1b:+ɜtCǀPvZ=:OSE)λe;}2,)(,^P! 잋<}sXG)BQaM8k:(ܝp3)%-*fUƌąFӠ9a1A7Gg LuIδhEEU1$;[~Tc߿ŇCWEnʆr)#NۉrRz4JLj֓o^Dr/&a=a7B?Tj3˯[:Yޔg>LdZR[J̪-QDUL].ޅ rfg*k-B+TKI䔷T~Rͷ Y۞ܻjjT]C_=Rx;usc)`hWF]ڮo/ /BVg[Pʌ BbsRi E9 r#Ч2V-+<ٗԄO$[Ypnirۛ9@JFzN<a|u!4hl\Q܈zZ,+cqG+'%)ȶ(YtiF(a%ڂbrj6c4W\ \c2:ʳ@B"qdt"1*L edF$<:Ƈ3f KqW+Ozl3q&\O!nyu6 ,ӟ󰤻J2S~(SC[ve AqEIS$[NI |!ShOeS8p7Tf>ŬhiQ݅5ܥ3[YkȽ'{ \ ?>Gt^gB+M5}ԎKHTw="]a'  yJ׏ ?Y4/y Gu#^ xA2 U#h"'E; ݍ:K8<6J<lBV7g,?dz-W黎/V^viwԩ1"̈́j11/E)&r|y# en*;g 71>eC)5ȌuGO%9GWC㵲õ㬵2dzLj'X7xkS?XIa\Qő^ "; $3TAQ/{⛲&Kw\e9)ަ!d>vBٟtՒ<9{ر4ը1BTYlBW2Q@ۢ>@OkxsgO _%L> *5v J(ChsNaqpbz>ͧzjDpR>Տ!ނOLMc#\~$tHM:3ڻG>|}Ds,lƸԯloǓv8)1!aAҤܱSbكr p@΅~ғ_ܔ$N=bi{Z1HkMkџ=Ț{ oxd\c"[8+ɨB <Ҝ![5h=Є>> !pnASb@_~CSOٶ}^TI}7v_ΰ)%v:EB㹌BVKOٟbN>J6gm+e(W2?1đ"|,jУ;d|As6HCgH a"GBCNGVK@<V+0)ieq0I]z"h%%O i.y(k? \kXC3hG~lj)0ID9UzH6L{<ɱ/y ^Xg+8ڈ[ &:4v2"rr$e$ߕ EJĄu*lpp&?|b1)f\f/r^rp&>w:0|(!1vkc#ԉcD'7Q6oHcYbUk$4b/iFhgu&?W|nSWl[XdW{}XIΡ̂ 2s,!U,+/>4V|fe#T,;Ѳ}͓NR+. TAw8h㹏P Բ /NR6 w%gdGK6JfMso~,|?=Fav\zd.'8(-^~UJӎ'ٵMH{O"uoL%xQm:eWuxhd~֠q4sJt[8 U2)&8w<{)6(~Ƹ#S@Ɔn5lˊb.o͹FEt[{^YEzd4HG_㜰 smoER֏i= |]?pѣ*{Nn?1ِQC"Z3 ! ٯE2?C6Y>%БIg܌TaATTdNʝQзR11~?|Rз:!gE s@Nŭ\1TYźġ^xg}?5JKaIw+o/G mJ?*cG'@aHOƴ^VxkCk5h.+)R/S5mB<"_?mdjAf*90\&t.xaw~}aݣy~C~6&3&ܐ|±ΙE8/L1|pk,M@ڂ8 J>ӗK`A-Q׺ s7TSh*L{#*2Mn]KKQVp?QޯyKpZB_^nݑMU\BSy PEc ߋ왉:ufbPV<'[Ç0UF6 >&SulsdE$ } g'z1̔Q74<a1 iT qSJxJDk!ˎ•/i#e)PA\vAPaכI?zX2"[>}ąwuzKؿEC;Jڻ!iqJMJ~EkBug:aAxXYpXO!.V̏ֈ2O?˰5x3PsFqľ i(<iB"m01(HE`{V!4?*Xkemh F5X^^^꛷Q"z]oz\q?ã'|uiwPO ]~QF]+?d{w7M:@!JVZ#_{k p?;OSPB&qHͶBʄ#BOp@#ЅZܰQ9L93nT2;1I8R S^.){TW=/72ISN/cS[?H|1 b1YJGv("hW{ q#1ȓij,"4aɠ?An5d[Q Yj%UkW{R y8.#؉_I#18U"ğ~N4[uxaGl=ᐍt*oʃG EƱ1:ы " W r񽲉W,*/b63Rdؘ?B-6TAxB̜9ЀW^d7ʬDaTnZt~u[k{Zɛ ӽI G{ 帇y{4fZul D:; 'rlh)Sx g/(yeXjw$ ޺t.*-\6(W%9#jw#oFUu$GpG-d.μX;eȵS0HA~q9 ALt9.rMa$&ʅ ˊɼE|`@/)V~nXɁ g;bnbk)zY^midn/jdLj*@!\ʲjtoru?3~ߦ V<&sWR8:,׭$e߭TNf'%6s<: +(9 a~fU^TƮi ƸG->1B "!o\EDW穱kZ}YQ-%15$e܊: AVTRBшu{D=t,^lڔ4*6`Y]ň"VD<]7ch3S1J֊uo?C~(RѮ.2b&&c.9F +.R?0;CetzqKqm00c\LMM Y<# XԆt!ꌹB(d<@qy6f99磎ČǺ:ⱱow w}LF+]^ ,EZ-%JpyS )7$7e}{,8rK_Ȯ u(:j둟9ӭm#RTjm ; endstream endobj 113 0 obj << /Length1 1583 /Length2 8656 /Length3 0 /Length 9710 /Filter /FlateDecode >> stream xڍTo7tI(R#7K$1`Ԁ VCJnA@B@<}?W_3SD8xA9 x(r|fC+p 9Wu' 5NU7GPGH@""\E`w@p!^p[]P6G+ vhQ0ǻP@P^Ur=<*P=h})E O-ϏSeOt[#@UO[Y3z֤.![$hsRr4׼H/9atM}HthUBԼ'ǖRULGz_rj$Hܔ50Ǹ[>N!]Sber^8a 45Nmӗ,^y`LwVi@lއSdr!2RC\Qb^-r[b(ns]!FrlwFyPec1m9zZf^Q ^D{i`M|zo ;m{%8oIj;ʀu[}:8)ZDHWBn#IkZĶ~\"Jx&|Ԓ6QC5KV*-{֏#>'YDtt[}Yj¥ޠA#]J-3EV<ˤB=+ރhwʒ~_{LvkxU۔aw@:ZT߂}-;lcJ /{AMY@vIhB^g6l)BY^9po[O=Tކ[N˝410:vtoߔd#8w[l_zl^o+;EN(@ۇڬCUD` 0Y(^8ٰ$)`~^?oS#cbE?6ֲd80#+`ɘtg3!O6PEvyIwtL1Pڰ?t(d~i«0`6S0586 [@&~q1[ e5 Y** xP^3(rx+G5ח*[sjs5ϏfM"<4-k'GKu v2왖6a:okjX V7{) ,-v-&bQ4eϿ 9;/~jqTC:nku}4xcLd8&4^z05Xõnb-d8t6dG!0i_PKoӥx/ $spL4~f{{ \ȊD 6[5+Y$)MH7rETm(z'1w1f=]hk=ju_ UW&5^FʟziϽ؜In6RҞcsSكCL)jRgUM)%5(&ؘ~$Ity[٨Ŋ}4%mn|e6jW!~@a{ǧ:Z7BWT3R }4*74N{S%H{GN 1ugo oF1L7)F. E6<ٚWOxoؚm:Qeii Δ2o,x. &=~Ēy%Kp8-3ٳ~e.c &^e8;e>H"#-[ش Ͻ ?'h_*bdD $_ xz7p dB %*U6Lk;n,n\ 5 fp`…LO۪Ξ- _\Oq$c#-M[I ~T`܊tTGS]sLZdbQ]\znuc s8P̿MzY3 Imr#ң|X%uxӞZ.]4@d0;?{1*I|4/fl C&Ϥ'x/ uR}As=cnf{0^\a7K*iϿ4~tRtOXiuz,32YYe=%7t։s=v~pL 뜙 )1 By`ؔVrȨQBt 7M t+h^/U>m+ =Ks}T[ː$˦@J*Ui(4siD~.`ػb\ cOC!;֪:y:$v<]?YJh*2F}njfAC UI{ˮuE4ʒyźIپ/~5h {#-nd4E" X+ACYϨϕ,!N…ML_ TdOa1ݺwF5ݐH^, L4mp"E;Ĕy+Ck:kdk7hEG0܂/\(Y`_pQ|nj7XYbUĪ ꊠpSPMlK'*QsY c_}?3e7 _ۺ6ƍzKOn@ i+xh_yb<Ցo]㇚ʒ*Hj2[~uqy#=[xq"s|DڕUf$2vV˞Ul$K‹\ ]~[]f.RV2/ L1ūNşJ]{/cݽ4 DP} }f=gúulǽ=[Ş;+J&^3$B e?+3{K|/lq= \P'fօKa/ ,Xi\Αj{#>z 7CT\buv.Ty4K26J5"W3dܡBSrry+Qqc)Y.f0l$P͎Tɸ3O/"򇤖ztjR jT,uϙxLg|h?.w j`Gs9!H4Aı;# +8ؗ@t8t㣝r"xFB(^5ѾTۚU3f,~ 13F%#H.P9ފ(Qd̦5a+'m)#n2vBp5y/HKmFQL6w4ʿi o>е󺘮jO#dr͡G~OזW{޸x!Ki4a{Şq1(AZ/WH9&6gҸ8[`ʞYauw ߾n)OBkgT8YBjV7u2JX >BNJG0,l?@ 'g_}A+&q?Sˋ$Bz,LkWqӢR3|/ӎ Uh Qac5ԁpߑ-Z%ud^V.zgmQkVbDkԪq-PǯxsJxZD/3zk鵠nTXbMc:q- Q_6Ren8 Esqf;3HlxIR|bcw 'PcO< 9(؅G,tď#Z}H2F^([9 x鎋ѮxHqec^)UOUp9N/gDw:,!dQS0zDE+D0 r\Á'P@]W F`&s1`L?pq]l?46j8LUk뼚_a$:}"jd-=jAJ2:" ] '%z¯ (`n/H}e[ԅ0]#6%#~gKJ/{g!0k^ d>Z֡DмHw>q`ubx~K7U}otW ܶmsW[vt7::}[W8K "XB ([J}U(p35de=q!ClU^:W ^lW#SS-zq {UZ8/U3 {e΅L oٸ5=v`Z{QVc$.h)Z)Z3:9jguz+2 Ѱi'N+3Ap;57Mr"~[g c?kTMhqs#Nڼ$Ly0@;ܟR!{7"E(}&t +|;oLM#e|hCQPm̳F>i hz!ʮKL:xsYN֗5Sշ& uPEoիrơ:R{9| O %m:~IK)Mv3nLԏ}T~gJfk>]\[kx2dMLݕFiγ(sݧm+mZ )G}6j滺[(mlUzkE h Z11fnQ:3n1Cb=@ܷ!E9 o5nR#? #ءrͦ r9]G*;Ç2ϊWKN7jFW?љ^YZ}gYZ g xLwBU7j8cJHԦi;g S l~^˱-TL&aNt=S&"mn?a)LZ7ٜqI!K 0'#}Ƚ t}w035nṞ0'/aTR SΎ7osF_(`|ϴr-M8_|̙sFs9w`Ye106{j [2vta YA-|hdL=Rh V 7vap GkV~׋:Ə}Qӧ2x iO,S&51f'oW#>> DIl43of^L9 zDž=&>=VZ28!Ro.(D`~P|D*^>s5^5Â^!R&A~,\fDs:CYV38^,S8?q UwfLL@G8+p?]n/'GnJ3ޏ{ViSW Dg=QF=Fr[uӇݮ@db'֭d[yhMZQHx^쯅VOEp~SGeF@?K{%dۤFe0rUX8(sm >  TW-?UͺH'/jUW^ |¢A9Gzgi%_߆Xĺ6H$ZQD/ͤ+)j\՟ƾwL೰Ǖѷ#-Y|N%#U͟_Wm);qA(^3z2n|,뾌_N-z4m jJB50ϖ*֧"FrR[|jIЉxOE mq u4̟52Jn>"iNa]F[I!|:8!H]gwr/@l^FE} '1؝>Rf{م;`Lvcu,س3`U&-zZ ֧l?&Ɖݬ$g~,"]cA %b8 4S˺LA~W? {̧^&Jtc4|/:,Le؎~E's̘F/Cn S* M )2j*)۫)jk'~$f޼R]lH4[-@LwƸͅI^F9Q=<YЪXex1NlDIL_O;a3-s&6JeuVN7TDnw,ws H,o N Q$S ~!u+Jzt~Rf#n)kiA;ZM,-R sb7YtVt>yA|mڪXM_|:pFs&NqZtBrBP[iꚏOb[ğ`G<<@M>b]A4׺I1t_,s>}DYyLg3C72h:E_o._DdJ, o6^L;ld!3tN(Vu )T(3wcq9Nxh(hyrR#EHn4k*$ai$%:'nӻ_K' j-FU aDZx@ll'd4|l;ZKAKA_.Z7Ԑcb-&~JE;z[w$#k3kaM6`Y11k&.ǫ"/~m,YWzJuB#;b q2g)fS Ň9^M[D$z?f][xԖ[ Sb?N,t"HaҔHY.{Y&m懶e g$ԲOq̯Cpcדֱ\֩3pcW&$}D "7-LggSB@[߾Gr+Ϭ#&=™z@lScmB- "RםB@ߛC^\@pR/cxqf۲\no?퐨JZЫ9G -!gt)*/_ Z;$4lT1UD,8Esojcgt.)w_\mz:z&-[@}Rjk\`2`2hի랔9|@Wy8(ܣf}ZduQr}r@YWl5߹"߉nN3/A ٞj-_X,msrl=g 354//5G endstream endobj 115 0 obj << /Length1 1403 /Length2 6287 /Length3 0 /Length 7253 /Filter /FlateDecode >> stream xڍtT.)-C 3t7HwJ 1t# % 4 !!% H+H8޵]7~v{y> B )8@c8 Ma^pR({ h ActPH7ŤR @W S ;t($̋r;91%%~`p( Ёan(%FK @ܼPNr|_8`yB`& ^p## ` Cza20Op6@'n`U BQn?p#`=5mA: P|c~w) _# *eU2 D{O b_f](_d_tp5  P9QA7wv QG`# GОްEP4G:91,A_YcB"{f:*&OI DA0X Ǽ> R5([5c+n?0Cr+(y;_U_$Լn q#`H@C`Ds{W A!3?XD${`p4e&#a(/o & /F_PW ?.Flke0rgH(DOO?fKA$ I`f8<~CPA Ĵ 6e; Mґ. k2{YBE6~IϩFyZjs}`5.]%ӧfWENվ:1ۧL_`O`d&m*0P+UُϔpMy~# ig}l/efTnڲ\mjFIӝCt1-g[/2ujtY\$cNXgFJ2Ԙ.\l?!Gm9ɝVoS3춞\'e"Wcd#{蛵o uGዚô7ړ):To1 *I&+FH3&BI,/fkF[w8vY[V$:}<+tھe@#Ctl(Ny5X3V$q6UPRR?ϰyuKU& }hB?2m:{D,.ĮW.')/7vn˽-+ʗlc"Ӏ1ᭉ8*5\T7+=FT{|oemSwkΞ$1A_ř 8QP,ĥft|~!O; 0fhu[aboe ``ȁz*ARJWy!'hu;t ۹"H^pۛz]?Oa@𒊞j}‡B6M''|Xh2^TDݮk+nA‡*xR"+?k{}<=y1@ղJ'FoB W+Bϝ&e^)|"Or\3aݓ]z2Ģ~%n+8kbD EG꛳Ҥ]XFr*Ht}[oL n KUuDZRc] I,O;As|FY_ԓrdLo&^O6=)`%H7̪S$ݻo~-iq!lY.2̚>  ս׸{ʸS5ce{[XO\SF,]$aO=Glhv6^BS \)g:Ml_6?2M H=n0Zr2x낊;[zkϗ%Hӏca/>l_F1cfF} \y`!5fƱ6Ώ).Қ2Q{(i`F2"\e*j*vXMl#2ݭ狯Σ; ~pm#}Zhy~ 5}/ebLk@ۀJ-( eϓ1{ϞlÆh {edM潁_GH3w,Ƌv=^XN8VYǕ8Ɛtp_jUWlsxެ2;Qu}©n%?. DHñ+|}wй K2ܛc5'^rӺOB ۠;l<霄#]f 0Λ_Kcxy 2tZaT'<͑BK!7~^T[wcҏN7C"ЮZNx#s#suK& ]]s'ڒ;YK= ?"[l Ƶ;=iєXfS8Ik}2Lww88TT%|M$yjS+f[/ Bod]A;~҄}6mzɹ 03}˘!:xpue5eNޫEJr 4PV ͚Hx^nZmyTip2pǘF~0pÎK#M<7W#,+je;I(L;E-rqc5d$.){7)]f ^ƋԗDž`^G3jg8?e߄&ou̘[B$Sow 䯼&34j;Qo0꺶qcJ-٠A\oJOĩ@YnV+軠c kɌ$ O +hU[lIwr|t >0sb=?f`PC=v"'K,wa1>km~w!wmQQj1^p.Z!xQ˾w05,㍇{gNպyi~"iJ:hOض:+ώm(bIqK g+oTtےI[zΑ:avrd4؊_?#LdHN2wސ>(j}w1Eϧ|pgA8Gzp ]8:}~*&m_lA*?@|9o7W*Hjf⻙tU3tNZJI;AtNxZ4gD!&q^9'a"txƿ΄;쫼UDTGk]ne㬵N#4.)::B(nvR׳gdd͘Ѹo6F)a>+Wl'/'Y$qJKl]+(Zm76# ",H%|\»SkanU[BW@U,4vt돕RCŭܠ:} ܃>Da,A@m,zo`%,[  |ɎU>!WΣ)\q!Th1|hM.G~߶x*'KDYWk zƠ:^)\fX18'Q?΀ǐ}f {~G#f6J_NQV|4kL~f,3)OpzW h{/:Pm: oeͤ@*OAw=ԇ|Vw8_k/=]IvRIH둁L5|hI^pnEC\X'e .ʊ(?s[tȃ s#SM9<z͉J(3Ӄ#4{c _%6:d$="|+ڼm*ॅ7[kbvb1LiLZwXfe>m+T!k|C)VBgܸd,ED+ݖgNkݍzQ$P3av=?>#^K7:~|'P6br< Hur&PE=^J3|&ŷzQG)@ؐ;q7yF@B/~Rd,4B=P#;TCn lۉW4%s{HnAIy_&) AM`d [H.Ag010g'oUC lM^Px؎~W> ;i켢c˱:W=: %Y[e'٨ׇBl쵒䊛5]I4 EZU~KXp $w64R\AB;ƽV]Ɔd?8O͊YcSS˪ r@&j_^P7xU86)7j*uHs_O &7.aP5Q˚M9M_fk "ZɿTytS1د0P Qzzu$J+<3˛ޓ%/SjNk=\Q.=",}Hջd4"Ζ.ȡCWĎ;i[3eRVxz9uKТ\mGza89\k?cBoE POU+RT=/n>}7 A` }F:+]ogNSDgM=K;d*$NS q0%$\QJ..z{ޞ!X*pza,y 1|ۨ) u;4Z7ѭdV m`EZblDDg$&}M<.K=v򕻱>A Rx7]t : nJ<%eղ{ͷ==o 揠_ x~Ea%G3enpvd^CegPfNbU'pxQDooa@O>M? endstream endobj 117 0 obj << /Length1 2523 /Length2 21692 /Length3 0 /Length 23131 /Filter /FlateDecode >> stream xڌt Ƕضդ9hmIcm76;}kfk}_3Tdʪf&@){WFV&>V ; -b* =_@cWLd`sXXXXl,,1tpH[r@*qG/g+ KW<hM ::[]-v ƶUS+P X:13{xx0۹098[1<\-.@gww%c;?1!P,\:z; )t 9*;1VǀXXKӿu`ne R`rteۛ64uq7v756+rc s1urtuar"oP%.㓰rOgm<} ̭'aȬno HGftppN%oz5/G࿔Š |}$V@;[`fe 0ZX#a`P<,cI4^f^_f9:11O# {ȸAKll0:+ko'ZPA_.%\yu߄fԴlmZ7W(:jYZEʺAer)[Z3-o=P`@ej:\@#/9Rqr@M!N+h̀b3+/wG8̢E . `x/Y򿈛,e v`@ w?]yW@+A  w?]@4xA:Hgb1XAzWW Df` $%vv f %( xwr-ӟ#  oh69C?Y s6wps/^@,@R o@/dcglWAYA! b-_zP9s5DzgO9X-^sqr_ _Tj *cNPp.@;6@* "qA_ĠD ]-(QW86Ay5BӞA_TR?TS@wN@SyS뺐QBƽq=:F%v'دtAw_{Vw$ioEI_|a?$lajaqg`X[?1<6rT9Nn<(y}ҞVFT˦գgrM2a\1.0[k6N&ZEֶ<hU6c>,aNfp0+n _:q2tD&P a+3qOХv t/(gʆ Y[ `.7䋋|KvI0tϹ4*u2J&R/RmABY޽ /G|3J8|ݓHƱÆ!>;r1#NjJp-5\ާJFB›P5Ƣj >u={0JP.) |(Q؋_ 1-RZ U $ap+C&Xm^1G_3*6la' zC6*0q\]s2sב̥?P,<ȥ8z\S~~ tP?OFD2.IR.Mq1c}b='d(&]xH;p4Zk5ă 2*2?Wjs4uq0h4zʺ;/[*=B*aC[5uQ+iԜ +[5bYJ2J;MHd6ʹmRd#SS`(9,߸ϴBhYԂI K 萀ݧKkya"/As~&Y}(kW+<֠5N=q.s&%^$; :/kvo-QR0e=rBU@E XM1" 8Uա+|8M8RуeʙL PSPExZ踃7*9jo9 OMn8q!QFl}*q"\2Sc؆5cX:$eձM}F+Uq54sgP13ڴbh)' > !|zP5ߡcKkkQ՝l2]FtX647h̡Š[3(v(l*-$؜湘ŤۣxwV)dyǠ_9#F+ItD*JsR*XR'.Znryzp% wFT{XmAÃB=8^0uWK<; ji $Gg[Tp.J7dzy{͕Uԭ,QtI#_u;SkiϒHbn 4da"6QjstQ-(m#*ӵۻ%k! )*O! !| MV)ω ū]|tm2T&>^rU7r&qX|b gJl&mJq֧>23IO593]?gmha#7 ^+z~'T=oзE ~ ,t*hE4 8ʳlVI*tPn۞B,k'bgoW]=щvNcSI|⼬ȧdevK#y0RZ(5F7>,9fZ{^=E٘?4{0טʢTjÇ|!/[Rù>4Pܙ+R}Sj玭{!uD׹0yHT VHTyIa\ \]25bF>kU&A\GEdUviӕ*-)K9r>HfvŸZ%F*WH9\D8$4%by t~8F p+> -y7)vog._zu6 S[K^8c{#‘F1i|?9'gG4q pQN1dһMVphBD^s4ܗW{0awՏOa7lmp0?n>j!$|³X"E{ޓR ͆H|u?H'Mt'cy\XOv^UtV G=w% } ?v{~3YT,?[:ŌiDm /l]ٿKnXZ(`lw^EFfuU hiIRd9 ~5󎫨4}Rd0:aVB_@,Iiا .`U&/*ay3t]a3 aUi ov]jE~by e?ނS:F" ?K Ή~q-VA5Q9F4](9*(_׏8 6^.#-L%I pXeQS\weq8B&rSy-ZݷK0E6'#,,ܬ^L6<աidu ɯtAQY}U{L %ʨJe6^1'@QY[tn*Ht W '2T3 amc!#^17qXBSڎ 3vj>S|uuMrղm?uR5rZ0|jW;ݨqQ8oGLDU:I - nƃ)DQ[m\)Jնw9+˔,:)dBu/FRHtiz,]Ccv_Cb Ly{7RƯsQW)(`PWh-9SBT^[OGj/E+2ӌ+REM#Žl4iba)V&}W?BWo֒?(8#Yr.8h|hhy(,} k*iS;n/?5'‡uJ}+>}+UGRN08Bn}|[}Y2:zT]`$ȓ;x#b^TJjM񪴎7pgCvdDV'_l>0߾ 1aЌH.z=q'!i΋;j0^-i(аZ Օ9ju3ztas-k}/ !_GweO%"犏Fw0ǭPN%AVn=kWS'hGw|f$ !Hnjeq Xt-e-nopx !}jZÉnCxF: {A&Yq*v6~$颌ThՎ~R7~~7QПy`"7r{ UqB=~X6`ExƜ5"h9Bz<hcT2+ǃĘ){J8Gȯ=~Osа{\bRXQ|PmuJ#j:9%udTy.o$0/1J;[v)nqi0{L=cD^A&^=CzW !xG^JbJ!c@8l_ LCZa vksSS}/eT?jIwD=#-=PqQDȚN@hW-\m!oo y!!71E wX9bw@mHt"%?ዲ/?tL xZN#˽l"$1$"*|ǟz}A2n\o*/)4*C&M1פ|e&+TMrB?r߿e;k{4ô mgw7f>Br:tNJ1(Q`ZF*t^̎Lv ,J(!ªju TеZnjs7KI4ZƮ0-~S3Pb$ }a@ QjĞGF l`oCzi+g 1F+aS<,ij3߰/a"^zY_=rElsvea] sѥ[卒tq)իbFٵ_" ~3k\L|[CRItczfĵÚuj ]5kTνA#8U}W tzun->"awwTJba˲{2YjS<`*#wB Ȝ+{  èqEd }\z#W/c k{ʑcUe4}8}O&G%'eqINw5뤆1$ӆ>ogSb_Q 4oCZlR,9zLY=Y$uuNSRտT69 ܠhSQsT)T[qޡE=WV%BA_ n5oN^8;L@0_ =R|⡶!CJ%ϲxC3D CӾCc\%O>(| H<Rzg% TL+]ҮhNo]GgçFc m \  ,Cd=0kC(b_Qc)|N @Y$Kj41jƊZهSy$X 9 r0k{2 I 9vFq+w$ɚ9gɈmж@')q7udIsޯkrz sqd-Q,sBue~3o ci۟iSuE4nBbTPab>qONa8b\! '+]T+v$ Wfi1`B)j9/]/4U@#|Mٻ?-'Z"Z~4N=΀E~jTmЍJ0Y+"TBcPumAZLIl3f"L6cP0!ەȿ,vxLw3wQX@(xzC`kNU<鎭N&Gea9$"W=jq9Xq"lZdHSEe Cڌ\#ի TD7%D/mfy ZvWujֲ˜dQAͩC4AY͒GHۤe}C[Yh Ȕ[~\_CPsp/[93d6LT\$[ FȊq~W^֤(ys#|E畾6 xQ@bv.Ɉǚ0촉tl4ZZ3R9p?,l_Yį$Q*7~2a\NȯO"Ksvv5`^ OҹXZ-isQJZs3$š?4c;R *X{u7!t`Wp[bhw0vCo>,F\MDc>~֤IUb6ϔIq>܊mJkn{KIz^)1" \a|eG#vZgO~> $~%dI;nFf^6E,$ Idʱ }Ѱ{\԰,'QU x= $(V'M6mx60\U+Ʌҕje`& f, *|j\os}7''7Oi/6}N><1JrI>%<v-ne#a#d٩d~ W8 TZd)fF>G[mqum_+ QU|!7eE^3>{5}J8I7S GB 1KL;lmd%kb?KaY]fυpZQR3;vO S9@y+w 蚆 #;3|0b;k|l%''_q7Ѯ]*:.0oV0˔SDuxxRoM"L1k-r]#m*_+J࠾sEBVo ^"2eFԠyeULivgpP3D' Lw.Ot#o7eFJ./x.XDijw+- h߁ &PrJ Nym`ũ |kw?6H:dV >fį .TU,Ȕ\Do=UYaI6ɋP~⸱O; N~=O? 5Oh'?,IR"IKc8eSmfhh;[5my!ﶃvcQ`| ZcCd%6R5"d@qKݷLBѫ0m+|*b"ZjYP#4uļ^3׃S+muxغ͡O:oz#c%gۼtr4NU'+ `<4*+ `6mQ}RTLL ?WHNcαchpuW{r}vJfA<-.: `,7"etiэ THG.ݪr(f<2"'4ΑU'hZRCR W <',K|tQYdTqql =D􆬳*g /(?HVLUD{V&E= FO,t)PWZرF^>fDiG0&1@t<2=oiە=Vf_x"zc>zP齭KrVPg<mO}"i)i}BS%F*3/&E@'n!AmLd\ug6poeM#;>A$Cxh\؎@&$=!D˶ =!ƧNӇ!vV~gpSAXET/sg^0au&D=ݦ8q9m:MFmeE_ސ殎,PI5-:3j'>vۚ4,unhztRdR&$!f\?yLl+},BH9pŪ &JRC /+zBWK܎`\I5>]>ʚVTyX>$[Z$QqkwR8apCM]]]𽩻ﴃ>3VZBBt-()>W`ů@EYp@{2&!bʷV&Aܴؒ~Q-*puR BE^~eSZ(\ Lb:!qẏD@nz4cp ]ŮQ#^|/ UҀ\s%@R3;{ X'nNl!> 3_a:#+r!quB} S_[hʯHժTplQ>'pcZmV##32aV󸾆ȧfq3}'2Cܩ[qE9p&DGOf73)I/Ó難'iaExTvJw8ڲ,vc"^IuaZt킫9åŠq1Hڃ3RxyF4r'G!pnd[fkI`DT!ΤS4}ͬ)ܐ3Ѱ5`jsY>ǽK%h픳Yw/7y1DɱnIt)+`ncvF.*+=`(Vx4rVȲf,U_%25^?jQ_^it_C2z#skkd&(ݥ`%r~=V,I4nZ,FT~+Ņ8P&Q U~fxyg=pQ(ܣFѡ# _0yՑB})Jx.ٶDw9 ES+Iyn@%mu;ᴖH$j:0xb"^&u\Ev:J2|f Y?wx3`!~V~E;JE4r<|+!FM'bjoКz=zALDSִG_h#e-$#4+t84zql7<\.WrRpFF WDI#41H岉n7E֯&rZR3KY3]Y&mAȊ _džV#Ƴ"*fuH<C_dN2l_YQ V >8 bߒق co#R5MYMWN!hx,nJgWM~/C8RR>դ[_Co[`]%1#.;i+ {^HiB|%A1,$0²˷kC[5y>%3vKoM~E/@w)RE@0ȟ܁=[&Vp]snǓ=Hm*1j4j1TX<b]a0m`S5^c&7fV l'm[3/\vճ&fk۶. 8.E^ . \?_Hl$ٌPlS7:ktOBI'+ p c-ȭ4RmOTj3o(j|ukP!F UPuߍeKLCjnByudP%oXHfd4|:PXjšwLrn;7(cTmWȥk  7+@Wk%N(~zB[m,"3+y30k FPSmg_ϣBζy[_hu9/:V+^pct1oؾ $e>lfWEt3x@'%j/%bsQ|E?%z}:++ JH R1I+l?#u07BTol1 =Û}M72Bz|YP`E'\`RU,x:9dS9-1 #IP? Ii2k[BdH]B|# 4XuWw, 7L?/-!.PeL4nCŤ,8t2J] _~ע5Û1!'̓ pľ!b]` +!]=Nl+SpĊ' A Eݤʯϒ[h\'t=9 d|yXٖ7#IJFnZłvL5(ș>ŏ2C>p##㥂82b!s!j?kѓ :LNh ?>~ܫ'ًSuen{o/bQo8By[9D_| Wcp!PYj_ݤx\!jdBJSCC=K+rooaasCuV.γܰ[ ugFE"-f!_X%B+g{WgWsFH7ңuM͊₟^[^_/ЛW?-^kA\Hdhۿszx?[ďzߒ} 0!Ms+|LtGaz^{[Ag+P;Nh,QԞ+M!gש8þUOdm+=n(XA ~enK\` `Rl'2 9kp>̃›Bl`Ż$ [ m?5P1lLo%Ƹ }U'5Ai-@DzߒJRɰvFN MNP ՅJ屈Wp[RZ ss8 71яt`>42mȬW},?+V<ĵIXQkuۮXkIy8Kdم*D."xϴG%'}7ʴTKFemDo>|UE%39϶? {:Qr;`~kba$~S w{PΉiWS5Ɖ|=e+|K ;d#%Nb3=xj5Ə{>M4>QYPO_V-?WLWɽXf HX*e-*^#!xxe8hn .&N zvrd ]}l |]jc{Nh &Ū {mnZ\",q.l ɀ2XvrS=p#ݼ(ɸC<'7L4}c98Z8Ub"e&D:v# sV-ȹ3D7)&^uwQZZ?*gՑ  sMx騾đL=0RnqppH _&2n!5㭈Q:B(މcBTQQ׎r)Ig&3񩼞L?)P`olG:'BU!B}iL+HA+껍 <'z*(SQq]BxLlc~juZala^N']Et5Nh& Qeo6ehSSxRsд?kb(mM:JD.4|( GGp ?S qQkF9)l-7k뻯v']OD_GNtwHpJϹ􁿣̸WEvf}-ܵ>`rvdG~vuUG_?XǦkYX8 $iui)yɻSu;iTוݘoR7m ^ZJ(2?=D,UX<ƾ{7n f$"TiujF菹^ʄ#/snPyv$AD_/Oǹ\>pN>`)YFjOY LbrV=] 6T œ,'iisˮ+f1~FlJb2F<%hK>Lv}ct5fjbZ/`I-;rgF``$VgLVfgҊ [67_n$_ n%GW:4<=t4;Kբan(\}ʧmƈV@u#/({-5y8kw{>6ޅ05k9H8YjG_QhAKW*Y/jBglv,uBP0~`[ɭ95E,O0Ww3v~ tՌ^*4G65}NR-Ż\qu.0\ Oc;fC!unǔݥqs'/~َɓ [zjﮞ #-d݃9uO)lNn? @+*3`|ڷ1çIB /I Y!~잕BoY bGU ut>eJ+˱lNd_Enhm:څw-aG}>sx4Y]a& KvmCM:91 pݚGkFMgp՗[a`-<vH@8~:ip;2COa'^]/-wpo<(aI5̤ YKzKӖo8w p-A'F!46ҳAudb$5oך b+F 3#U>l9bCP'廎#lsɇ ap^5τ=F00)l=ӑ))])|Yр!,yԡDD QϑZ֬MPcJP\žp_pk$8s1ݕ0GSb(!,g{{ B8w}F2q5ѝ$=ammT H? Z쏁b6D(^Rz֢UxeAo{=11s22,Y՗^s؛8JMj#H5zbt>楍}l)pfg{I.?c%I?WW6GND BN$wݓH}U-D@nKVP[ݏ ΅`e~׋i:i?=c@,ԓ ˅}N%2cW Gr\†s:PM}dX9mH2$fF8~hy~s/%8Ox@ND/$v2B ܉P*zt޸A ]hMIvwr't6=O-wI_+5 76 ]33iԃdro t&aԮpqq;5XEp^oIo<1)7Ĥm4?:TȰ3s'r!i8yuTS$f$W] n~]Kb2g(8p@ D s^R؜mšީ<<?;,)Gߐ :/ }l˧ki6x0*ĄrDZP&Nf?{x}Ծ=%dNoO4clTcYmX:5Qmכ~rEDG FǣlDٔ{Ũu:-|hƕyH'#-}>2fU;+}8n/\lQX"/o|\j#ggJŚ!gDcTR^ x\PsW\ V2SjK-CMZ#q@lX X,{_IK]Gx"r.!tk ̧z5ߏ#PSlz2%&b MOS!)s*Jn+.߾J3)}~Ob2; ZSts("Sf)Pv0sp!1{ڨEs> N ]cigrOfW(jo\OcMBHR MR$ |! I Em"*۳I|և1QC :syD1t'+o2WsSگ.8߄%$(!NWEFJF/hˮo^o2dY"<_tPk"T:`EGzcxfu e: iSrA*&]^^\\]/@4znQn>u8Sn$U + BXsX)HcI˜ ybM5)PYtjQlacvپlXG/pU JTpBG>Մ`Zu:t+滣|_ڷ?\"R/?ptn/@}Pc"~C#nX(!B^ERmV<>{!XQ-;Ye@ieuT-` `l Qo l2#)SȠ|scw^}g9Z7i4, <]Z㳼Pe6Ă\|L_cI`m)>2kǃvԒ,?>Db>N<-Vی+aNR.~VK)U'΁c(a^ș_rvDBgaU8.-}$ZRHcW Lȥ/^T Ъ]S{{X#4FcwS^nGZ,wXv;c0n@ G\M׻~8%6r1OYa޻wlpY58_buIq ۫1X;iyl vezTմ>gep 8$wRR'h-e\A?R~pi:: Sގ속E-|[f'^މ!gcPd`z"3bR"y2ʤ}p _NҶJgQn~/up\8Y01'r:K*\}!嗢O3c/0 Vڗu$ ?~QsdPgo@{Q]_.˘(~ܟsfwY ,kW6cF֑R.2Y];6Y24q#|A@~܏St"H u&>.u ,?2EN'T)o=U 9DPWգw$ Rs1ۿ,Ðn[<=8񁇺q;K%3i)mAf["%Nwu7z|>$C<ҺP"7#VwZc9)x-},I,4ۏ[Qy`Cfy N5,]ԕԴubsA{2 6ħ,_rA:MIDJ[/0f(%OC 0$H0hheꊰGXߒ{ӗȀ׈'|d#WN1nVU_Fʹ@oze,=x_$ •W*IX]nXdi>v!@ːL)w㹝t:F\ PYYNa;Pߔ,vU7"gO0ڪ<Y'T3̑ o͔U"?i3&z3PyT*M-+uȕ3E,a.UPY~IT֧w^'Hs S+H̴O[`X/nMr ʠD dgIr[,.;9"V+f" Bet?GάV))=!u4 Pk3st3a}V)r#U|3Ż,dRu0"#T}V7IK׆$$@;mH1&DmPZ#,z6Bݤ]I9+H8.".Y\H1z=9?I3ObAq ? C/Mܺwsw-F=AzC[mQP26}z#$;LAWvb#w9a&dq6Ox57=ꌵdLJ`d),3|l]@TJFٟF͕nBc$"FgS5¸Nh^VSPh OA°#Z/7lLU6'4H!6DӁ Z-ly˲#N C*r<UU6(!!_D%{,T\YC uj`^Uߠ*<ڕ!%L0H'[WcE>'(H@C[\OvE}Pf4ַ/?Bنo}S&>~rFp`tT4e\T_2|ts&Uux>ʈ,d`KvhJ5&~Ж!P--QO3*c. *ܝsDQyא!g[kY 1\nKp+ ך/cYQGٞD5ZKD쾔frF#2}Ҵ=#F&SUdSw+>2gWU)[q8:_gx~\sҰ[dc5+o`嘢!#3!1vmZMtcY;9>S)~r+$2[gۛQ|yVTӥ!ٕ.Y4(p9Ba}}@o`ލ|D A7hʯ[(߼3X!Ix<SRSr{>p0Ҙ K?ÒT "5X'y%igcsD({{ݚ@R)/a$Ÿ/Vey&JD ս큊?5#pO~dO NJ'L}S ~ΉBV TyK_YoUz`̺j6KT(qZh~Kt_ ~M0M]Чdzd4ѷ.Fjx4a˛޶?k4L-1ηL? l-ܜQ5Ng H]3^Z "ف욯 drr+wg64 R9 VJhIwz=oP<&>6(T󆠽e~'pH(\9SJ1 qچwttI*̔H'3j]WG iЉ-LYh qhi{50Iz;&O6}nW^EChLCvђ lcTEbUd^mŚAZ%vVvyCJ}XZ𳹼ij2n+? M|/kU'T f!JOf삃ѩPoL-mZR?ޘs:d&5\mri| yc<}U7nu}qe1z_Ӛb`dSыH74IGTҷ5X;dUp@gI6Z"~8Iw;l؛i|^]`aj#L`,E٘Άw6y]G\i N)`dQD. &{ endstream endobj 119 0 obj << /Length1 1775 /Length2 10566 /Length3 0 /Length 11698 /Filter /FlateDecode >> stream xڍPڶ-Ӹh 4@w  8\CCxd}OWWTA9Ǵ\0hKٸX] \@a67tNh ;"/ dlx橹@ʞN.00ZzmjeA x.?,.!!AP%far~hmq<|+0'7; Na^ Π'@cڃzx[BAgq؀%U+7Yo ?gO'C vqv!v[!` Mtrwy;YZ= /|ܭ`Www9y>e93?Y0d|쾜߬#Cllaʩyd<@> ( @>rr6?O }=Aw<@;qql+'d7~|(` |?LeqC~9մդ?>ii?;/ $(;%.B .}>igg7XKY ϿWgi7$/m vYOgϊz^.)va|K( ,$n>>?*ڀ|0x/`E}BNߦ)8U  Sp =3- AgԜ6\Nпs /(t|r=g >gv3Uu}˿zz.|.t? <졠?_r?Gy4?oݹ'ς V]E{nȽ>1ba_zc!4n@o|ޑc\9+Mgy^7'caJT v]_n!oa<4Ko|Z&#UgMB*Hh<)QX|o S%mr'-}v''5"ƛa>P&^S\ r~t췧} =0cdf&%'PRLuIE?t!F*IIO]hoྰـ5J۞02E [ˆ]g7@n2je A[mf/4}ƔϕfvXήs]FmI`B eZ)=oޒ#%ХiD57m;Fgm8FCPW$PW$[x5IiKXv/jK9:9e˩w@Qj;il uFɪsʼn|fB•*]'hO1ըE?z{f>ZÏLG߃"bz"F;%pDOM˟]BtaF+׫-/mCKAAH ' 3# #F^f ݅Q )ǿ~9"ʣ3CaW<HJw@#Uri.U_ǡ0Ԫ1:=)K%ɑvE&:Ks>NKN|KYИ;DVklHOig?1 5kX|w-\mcL? '~ٝSLt#^bS5I缙%5X+&T02>b$2g|,c#qbZV@*c̓6Otܱ}b*}A0)1jWi~*UIn \c+CRBY5QCHݵ9z1b}OH ]_ujgtOe`̭jOPza,ߢlG OCQ#=]o3SEJ A@}tZ[r }+m܂keZkL4׬+ e+TzeOS%Xo惶gsQW6>&SQmz]l;h0vb9u-S1X])'gSN6f#&k$LdJg& 8( C! $bIPɀ%).C9C 0EmQ0kZ;5e,7ȃ+K)j֞V(`3nc3PR  啷eHM9Rg )ܿ0.=dȆ uGfa ](ժ!Il0gim?$ ay;[kѰ¥1&k - QRDJZI/EE2z~GWXٕHp3OrU"chd2JjujPY/E0Ma˹lrJ2'd =‘Uʴ`O{xY2 0"UI D19VxVOkwQ.ĵߒgOdaEG:ʼiu{ɾ+-5˕ɨJeAQGc|ŗ\>[ƍ{c<?IՖHroZ/5oM9sd[dQt_t?!daW0Q$5Q{~M .Bfuw8e>QF4f,lfO;Oy VOߘȲoU_5hO+KfU y%#3)9{t ۨӝfV#߷)xF}z^ҷ+_DS?,kYmhJYWT))@g,'ݚu*iE TJJc :[Aa` ig%;B 10Ii|Ž:7N*Ae(ΡT&CZk_FOѼ/ᬉC/. 6%%RjV쐲TS';9Л: +>V 9Td&=]{/N^}B,w29#ǔ8l̝j =?R5\'F=e,C|RLG\9,d & r[n%& w_X>P T1,n`kY7^׏xEOR 4[ `AiGLMH$O8Y'"=7NJ%a8mq#fĀVT-|"ʵ~s.@ܐ ٿ#uEڬ)r{Jok?P^}y< ƅ#rFϻJTkwa/;)]Sx)*FWJ\o($<9  W`&cGH0E؊7uW ^$=wS+XvU(;|F__Z 3H[`-`Ȭef 4[#4ԩym J>߀fȎb3e捻aYItwQi 7֎jT&Ql8(d>3ޫ:czYݯF8wCi 9!o+.aidŜVn378kSV,k)/ɸh7 %\mݼ v"u-1!b;>/|&}BZV 䂨V=q e'_fSф$í#Ӛ¶ s9kEQ+Cy,4T۩ݱ:y/ a̟06*83_Z`q-sbt-"w4T^T a5$$O fGz8}Azk7wzz"`wڈǎL`MfaRuCFu{p*[ȆB'6DFSP_[!fdn 1`wa,iL`gsϣ󎿮 GЏD@M KJ@-ή؟Ԥ 4O" `k,s&WԘ*״e(6M#mT=;Ɔ ʬاt2>#.}``Iuɬc C_¸ރ3 %>3Sq?t|n+s| ؛/J[#p(p_BGۤc[}LS/~ͫuOE#fAiu1aP͖9<%jZB"5P zҶ,,MM"6N4^H&^zzrH>[gfP> 23lq<%#0rXƏHW19sl8Vϗs~;Jj;  'WD3ؽY԰.3BK*0Q%ҶEǔp`]EV^{t"rW=hFNH2~%y'CEW ׬k 8u.d͋9%dIE@,z"걔*20ᤤHY=P8=@|Tƥ5aJ8c(Zr/ᑘBFIfa#E`׎P-՚2~"mӁ'{UcW o>.~-Q=ե%뿬&1t_rN|g^  u_ɊBE|>ZmRF,s S¸@S4هc 7iBUT\Y-:W]HXb6 BΞ& v)CGHP۽')Gb<ˆ6vh'Ī˗oX>.7/d+&OgWIy!ZPZw"Mܵ祝D(^2{Dr^LtGzQksTh~4 M\}QümSp{MOP9-ޗKEzofBc/dnE%hn;16Y[y跾r^̪iw[ēo6`T ڽa6nr`vYyB#v9zebD$kIMPRʊ[ T ZZk:̔ज़h#fma侇~F0+ErV mh_2 fmT9kLN~! u̽}J@'8LZ*]_vl29lRcX o2ViO[{B˄*FW chm /UCf$v*nT1{^0RIFć&3' Yhb*0Ӯc oWn8?@>@_FLIVzJږZC'vHyjf=}U'f@M-^Hdd='%ѥȱ϶Kg`A AqLsc3krH7#fsrk %'JZFal6 `ž22MJh}N3{81I@J5m{)n60cm/y~TTSsFꡲ;IKTf8U ِ#x}$#'~^816y}ZKn:|*=Z[_ ʏjCƻDVU𝙁Âӣ? ͂|,(5 µgͬ7 wλp+$5 7^RA+݅I9$؞FO$O,!ҡHo\kQ0`K=/#Jh^>!vݻ3;ު|jiԧT;'7'!N휐YU\{'( xCae5XzR"o6V7֮ZaK3+vowD^{^̋e[;5YnB|@_n#59y/\U.Z/IVUZi@ѻ8E# Қ)cIi[Ti_j+4ʜ'k<OKI:D^t193@p֏IiQV&T[ose4 u$D\a.B=M̭Xcvg)W$͏߫wۢuǑ˴Z%`cd7-@Ȏ.A- d\ller]V =7˥kܯ|=S.XyǹGP} 2sxafM 5pӫ56A%Mȍ7k}K,?Ju% *~%]HO}a,BrVn)MM幝&7+**<)`涹>U#3_%m>VVj&1HB_]v9>]̜["t`̰ F=Ţ\Jh;?liԪИSUi v߲QJ~M4eLBq1wٽ㇌?-$I7*ַߔ {? OyVUD(+lMѰWcCos_ٝt" iePS8ŎzvPuP l M@1VFBy}1neCaehR$v_r؛ ! 0 :">&uLMl7  4T*3[L3U糶&x /2J~i\tR_`ܯ7wF<Ňqu 5ڇ~WNFG;1PO؆MD ,Ikk% 2]P5g9A,MWr CrAV^| nAO{;$,\TpQ24.r.6\>]1.trMon\ҜIjS.aj|G"O?!j? Ty%Vg8bõ[=/˘Y X ί_`KJ CÚ]K$/ ?QVek94虗,s>{׹(<͍юѬ 4=2rFNR)F?=£׵UV-P=c{%]' )uWA?3jh'iZC1z=9Dq]nAJVPr\ [T.!b>*_:⽙q.b[g^$@f6z!NˊBJiu{( wb9,Ro&n+C;DT0:3 ~6 ;=Gdr!24nJpT9·`c%AZ |)lpIa/gpfe3kMx_i-NC?`TcnUR=}By\YΉ Zt.Q[ߡx?Sn4sVBd RMyщ[Nbj$#!VnGZYؽ5yX]S_ן@J?>y(0> 2G32%S:p/}2moU7 X@=2hY=`xhQ k G9ե`Vwbl퇜#nٱm_⾨ې[!XuMmWWY#ڏCnBζN]yœ~0|Ն&|\7PVѴ9i~B-j=.gO#g-2J|k=\zBÉ00J" ) }dCeڶkԼ,j'G;;Lx^~K2wlC8#Sfߴ1GuI)?xk8%!4)?r`a%G}]IȜR 7w 5>Q:ҰkWڟL̛ KϭgKΊb|ޢEL7#{4aw"sZa >]odk4Ӏ53PR38);%ӹ){5 +P~;gĸHfx>i'Y@fiiOyozѕN2"]^ae,3p":?R{V<ij-m?ľbf ʺcY-ƭc7a\ⱺO7qJ.ȄaB(?5u=IFg%ٲO?ٺ3R~ú^ Ns0 W[&ͅZv뛅EF>W0AD鹸z~&cbqTujدW`q&+̤lr[*a@5Xҍ[ K:M7E`dc rc]ؿ,Ⱥ wg>R_`ݣXd Docw !%lj9kx)?٣ozN1G0}l4m];qLXLq#8In*}kZ|٣Bz-:MR`/Mi ف[//)w%ڞc:Br^v_ sLspf I|%wf;4GwȗK,.(M C8i(FE(s_5 G ! A8ck)SeqTGw=Կp,nf|eLQOIz$R<ҩ%RHqJk8PD_`?& bZ!ct>`NDi׿ ޺!:OReAµ(x(Q |$$C{ qE[0uCFlquwYD}ts34x_G浨&J7ު%F `wSԪL+Ⲱ &ߠCjufug I!\(_=|zrq_^U ޶3NlZ;xmM=Jf} }NZdl;Wdt˞Hl$F EefX=*7ݟfުfPYŜI=R L)N^BDg7]$y'=Cʄiëfцj4I>pASX^]5 2413ݧFZ,8tI2ށ>L0qG jW᪚cpJ7V׏;mǿH1O۰lliS&nh6DRey\zKN' z4:|#~0^˦UzxGn?V`F4e)0}sbcx|s|cYr+$+qs؎'APT7;#Lx#3IUԄ2?y-.(PVD`(f.:fp0-"Mt]vI6 񧝚#TSQnc"T Y\ R% 5RPpf\aMPSRhp*OzO=\jB$!}L`}b7-W V џv_+R\m$DTz(Г&sxau.-4;$,;*yѧOZe~/ed# m r:ʏ C̗|%AZRcКj(BEԃ4T[Q.Y[~.T^Me4ޜKGtH(応+P8 ÌL:ycy}«S&ٻ,ivu(eԧ5tc]h\;S:- ZlL7ׇj wpLj!Bݪ;J2_n4bscS7na7^ٔxƙ\q%ӄ]rGBYWe6wG ދb *r.Кk@&.$~ 塐5%TUKp;Jy :ע2 cb>ox?T8V(o*QJKbh^^\]P?aś+p$}E)ƄEczW{}bP]yeGM E{ ~͆?rYp3 ݾ?FzeE8u 0~rŅktY`%IepTl|,uWBDƔ; Qaε'p5U-pڴFI~Jb0b+t)~MQMV[D( SEPY|KOl9OCQH7'SvUä9jtT")yE Xa!)ba]m^b+h endstream endobj 121 0 obj << /Length1 1659 /Length2 9349 /Length3 0 /Length 10418 /Filter /FlateDecode >> stream xڍP-w.ww4H7w[%8w . nᑙ3sWW]-uk:*u-VI+%H qcdHhr8888Pn̨t W0"i۳M9N (;8|BB.B]2`+ @ IC]6ndp t-yE@ ܼAIӓѕ b#4A `#Oeltm[v- lpA w8@KQg ௽pqMWo"0d dCl`@MNˍ`h }η;XX>Q@NR`,/y@++D4ϻ, :: nC߿5be[R+ل /-ozmo'NgNP'?j}o  0g3O|.`/sq8~~2yn/+(?Η]I@WGO^_Vnn+/@#ou _Up,yS_l0Kܴ ?=n|?R7 9w? ?n G_=*)oϙUY׫f<*Y݀6˟vCԡ߷ |ϓ9\;yp{IYj{¸x..ިύ |E+= `g@ݞSP'/`Wm p5Av]o$` -AϜuxoVvп ///L|%v]]nϒ\> DŽ<.C¡v7Ւ3tziK.wHɌU]$`l2\J,S>#E&j=kN.N LHjK|{t oD]S=ƳOޫhƷ*heӬoubgr-戨XɑpOf/fps&(QrnpYr"%6$"KQ"\-)nf{T29B]Tb0 ݍ$sxM v菈|#.]M/@ޫ[Q  mxfHi8l1ѹK*>*av{w/łS<(^)ud式/wbfvK31CFV1X&v^N[e~BDEnfgaP# xK]zoc,KxA[.y#vvtC7we;ݾ@1 -#0jK18Q!:Sk"?تrƢ]7Gi9l6mHw`uG)#!X6%K+6:9b|Y:QQ>01lfL ߫JLn&kss{pwaxG^ZqI]y6%[T![ED\ vqZ-:o|P?N4 -SjBY :pof%mT>ЉUu+VO\LŌzRM$)1 OSzH^~c.N[MEI-בu@r섓b$UC_ ZMT6[Dx/#dm_$};:?ы\Y઻ b1VPN@G{s2r"a&3 ?7$dn&:N*2ȘFOXe5 rjbhhگLj9RF5зc%;1 %xh lQbFbbz\ҷ-rf۱yD4]iG6/wHuS#0a>q`v2At)[;ԋjw&::Y08B[XM~\#g/~I;PgptO;˔7Lvz9Zr\I "B,knѯ._ j֙R5:Sֲluzk[EaI{( xR5caRxN4m8^G\~VZӑ^K/a;b_:Vr̮v#0?MC3TF+ްnL 5V3p^>g'ܶbB< γ{`6KYI7#;O4HJ1ќ+xy˫m|+TFNH3[_ccU F#ƊhQZ[2\ "To;o0-3 Lk*%Jtww[a?vur+SQB#/8 *P;RlOsc#7 l >)~FFKW?j?&R`j9-Xm`@fb# r2.FW~U{&|ּZ'9BsZ0I2hWm7K5p5$NH=yc~8:X|ZZLq=R#MWFnV QwIplN0n a/4on8Yk9 bT%MxH\_'T9Z wBLjq?@%M=ݪY9ȁWY%#K*e˦UiVR$Tqz]FYc´]%en/4 qQy״ϻ'n/22mR3yFvjTP.g__h52Tm]y\1/ -8`V4b b\]wnq%>.ee\s]e$醾2Z!VUHj DHce&K1<"#u)ߘv=1T**?P h-3P lhld/ck^&G$>U6"^#K֋ͥj x3$.զUz]0ts %T)y5;:+/2dr-T!\k8.JZVʾؓPمM8_&/dzŴIOTNf@@7vQ൏"Ex,#&g:~bR!GZ!__=#7-y 9v#h۵C7쓡`AUa /L,̅EAQ: ~{Z[oܹDY5x֨/6D?cOqm}bwlߨ=2Xy0ke-^oukaDr\~(BohP} K`%'"2w׎Ư>lmWm.~.>}̖4<{]*/!?_ŁCE75J}a1j}+DC|ՂL [XJW8| w*00Y 3?]IEshe TxՆлy48-rXvG%,sض Ф>1z02vc):֘}JJbP?ƒ=Nzrꗇor$F<.Y2]uӴfs^-|vh=SeߖElb: 䥧ٲ}K=!Fs::—e|(-7x(;_3 Al}@ؗxy'Cby79bY)cZWeJO3=Y+3d ;qR:e5 ĚhWi_! dYd6<ƚI*4toh~ K02B3_SH-_AOC()JhdY--f^] tBFccZ<ާAu\#\a^-sG]4ŧ3c9_<,Do'iNZɑ=g<3zTYa)d?' &MȽ oћW&XUX*pp"RwHxu]u Am1ގS3ک)7^٬ơ%x'S̙^;럓5W4L$ɲZ֫^ $,/*{ s4K>K:ֳYs$8?ęN<>~e4Ww;9]:'1ʙs,_X+2ϢiKG~L- / ?hMߎlGrԫhK"뱴Is@l{OAU0\)MTP)s}52Sћ*g*'nm]ghJcU C`Eoٌdt,sV\.D@3,Zh4+YS2D2MN S?1uZpr%HjHG'Fpw6[iZA&mIcC4l㡇yTŰrO9R (Tᵔ~:&U}Ze棎/Y;`Xkk9bS?}diBv4Zxk:79M.iRlM q4yL3e'O_S/)_B= ?O(G o# )b$\(}fW#7y]à 0toe2B5e7+Vw9[P^_ub4Fy* [ܓtWʕa8Xk>"H Ң->1 G;ՀA>eو+hq&ܫЃ@1޺ ,8X}*c̺7v vmpr3>uYf,O;-ˡUQu1 9ґ8\Uћ[{r~JkC4ˊyQd,Bb.j+x)AqΈ"-4 6kdcO[-J6s # |1/8OotSףQ6:l~ +$%Ci=z?5<1HXplx_FY;)f_ OM]P}L }-"&ts&*[T?@d50ڼjЦ[^KnDZ G^k1ᤵ~Ob->=*$Ea]wMM֜$ǤQ٧(c:P=S׾ 6}v^GhVE#j=z] x<Ǘܛ}:D_%]be'9Oض.X4&Ʃ,uSFlc$>@8}0S'˄h2"99=W&2Q1WdLJ 3ׂ 14DBvKdcyI%Tfu};q'j+0ǿUSwQ_8-N+";p eNXԞHC9L|}Kg3o * qH}e%PF+UYs-\.Tf0=,7&\jϓU"Pa~u6dSwUZ S5veQl4xehՙbÀ u{.;w2=pE$)*@Nې4U@ܼ.lGŌ5 v6.F.Oo-caR\}1ktp/D=CXv|ml{g ˓KiPY[kv)Ovb-B [whʔ ^9 }ҏ,S~)"4;9sOqh?3we2be)\݌h;ق!a%_*FxZ߇G] V鉼D]?♖Zߥ^4ѳ(傌\XbinDo矦}W=lrDSLAo(glꎢ/[$JM\cB8Q1*sQq|ǀO0:PEybs;}W3mjsʎ2INKIvrTda}7Y׳I) ?xK{ C0pڊ ls%w&"WnrG/ fm)yR&.n݈LlIki~ 1pIUWRq:Pf:csW@W7ЁסUҕlp<>;FG h~PMK]r7%ޔhl \ Mh\J[Z-:̦+?mYղ٢{` #>@jQot hKuNA*3oJ6pi,~sC9>9HˁMqi6NpFTsW_W:Ƙ.dK&o7WVd=TʽD91QG/^CGjBQ+/׿ +*Q,)Dz@US*5W}RqFJ ºnl HYF;vĤ 9fְ^ͭJl|*-B7s?`,(ʗsg#_;_R(X9B`Eߠr /̻}s &.uEX`TbcTAF1nF>hcmGGUvg dp'4<`2s][nGu (qeçPTe7@?va"8 9|l~geh #b`=tVti!2G(=VXt%II6C ^Mg8t+roKTupy4f.նAL(a_dspζUKzf ըQyZjqBRe~k2džh c[L%#޶ ~K ާ% "|d `xo2RG⭈=6ڶNÁ7 PgVdA#LF%xBx'Wy H*l|oeH W }NsWG?v7ޅ'+ Z`iOlqyHD2>KQxrnkOx<}5[G .oQU$e,Y/`o,,}'FS 1~& 6&~ mS`J>iLD{ E$h&/I2~2Ű4,S7i.Mvo+}}AV&Wh/ѣ_uP(r`|lƺ೥EehK^utx6؎z9Mpo،w, S\]ߌ(S#Mz} 80ݍg4@- R.,x'#)Bk*/$%RC??׫uMD:TGe/~*ř(x_iNxjB {R#M$tMwL4' *^W2#RKdqִ0ks )'&͒\Z==Z6h;7yCQ⨁& ėN*PL-4:mH8oY>z ~% o!8X&LJ-:ޜR_H}@#ΣzRI (ȼx ^%~n,!փLq#pΰi\^Ju6yhTTPDJ` r Jqh;ӽD}.Kqe~ca"=N r L(&=ky{vY[}nzW]7?V9)NƺjqԬKg!8^X/|{eQbamDPZtrtuO2!;t^wU)Qp΂J>HX3 -:#3f 8.ۃ$I?M?;],k u]cn:|kpwO"}Ю"?;~/Oޅ͛Ew[o}WܤCb8*! 5]կa"|::ӋU?1@De%S`RY?-ʹ@$,v5Zr4$q ًf]e] 2UHm~lBP_T@b :_8-'tϣ&.sLmrWEN`]z1cftŚU%>4>ur!sX,Շ[OT P L^E N CvQ2꺵S"Ji%D endstream endobj 123 0 obj << /Length1 1390 /Length2 6234 /Length3 0 /Length 7185 /Filter /FlateDecode >> stream xڍvTl7%IH`6#G J R"HJ+"HL@$$TiSy}|9}uw_51SuŸ0hD,T74`X_$-X8Gi@qD7C H!2Yy0(j@@Cq cH7w@A"''+;c0(hŹQĊ0CqAJ!y˃@P8$$ @܁fp_8 5.LpGQc($*08ڗvc@s]7(B!+W"$w0à $ @zZ@(vPԅq(PK%t0,+5!W%k]1(OÈVO4&sF Ѯ_#y,H?_Dr` ~%6B~1@qx('P8"a8 #c`" @'"\1h/dilag-{Mjj@ ^LB(&! B @Y!YLȿF`r%kC\F"b@nÈ_oW-?/V_ E!#bCd]jwE۪9vZ@ s?z_B&_(Fd̓h'%50/vIHX,4@\1Q!D#Gcp qP ڧD|~): \oY: Q2%72mGMr8<La`7n{T~_ د8̿hHH ?m;Lz9SMig)2}_{2!ٴ()lh0>x5jej.1 [dϵ]7g&M[4]z!Os\Ae<'l<8TFv/ q%BIf%~f!nvlkx4=֏{8O$acԲ AȤ/ɮ.\oEjVL=]:-&^Z>t3n.]i9~**L\UE]mInIn :nS:-zWauS8yW0*-!ͬDK(8vMs,N.=^fe IF$ӽt8`:)5%'刌=+Mty /$XzӷUߌLe1ɸGl=TtWO!›qofÛOw6ε.{VL^ řZWHڏ*aA6T cOkɂ%M zVf'_?lo /pݗ9OYv@27x+.X2%w_¬qj17fv w?Mn*iW9O)G'Z֤ȣRv ;&w IDۿn,R-+ר3=WEU-[B ޥ|aI̛G#"`IMAi 6V@1V]W>FY+ K*jOzTJՠ|znӕM޴Wre7vU =6 X8KyViPr"z)fum%—κfX&7揜8:dA 6&)ڔp-QYG[ 9׸t>":D˘n{g9$KdXbTܤX--W6] ݡ<ydv%P399dSNS~."k6b[؅J_Qi!2%B"OD#j\;m٫Ƀ~+W(֎j$O> 0tc֝f+I.LvҞ+kSc ЯF)N4Ov=ZKP\AGފLmcrv7P9ZJO $o<<0TdeEE/k n H,>Ss/v]|,e$9$BKlxXF֒34gI^>m}l0(ON/Z7526qCL469ܺ .[}M.:A{Zy77X9n^/sO&Ĵ 刪 ZcJYOKbjwφth7LʣţA>e^@'=buOv%^?gq{=@i4Ʋ0vs?%-iś";UZ"kH2I"df{ _7XMOFad΃J mBiHׁGItئFyvK/gjH 6Lbs3p]8˖DG܍$lU\mվ}P/|KKE>XՐ}sIݩV摡 x].{WVDőeٴwN4?:ؐY!h>2 V;[5,f~ۏ_;~ (˲XgyQ 8{|p2m5=黋s|IXYMfHv/[i3!{AӅ$`'͢ȱԑyNMb/n~Lz]Is"xTًgZaHqt̮.S(TW6o)-IQK!ب2I}ل¼bۚ1=tmq5f$YYGv9.ޒ e7/tAOCHca}e~z/=4 rֲgk>x\YA (-\em qps}pv/hcک\/88tN}WYlBż~ϳ+ ( B('ٕи v vSdk+wNRZe`aWxc ugZO2ON[۝Mq2g)J\x ɮy ]LۈO5xE{Ie*BiK617}%>e6Uq/Ȉ;-w.'TGkmZ9[/E{ :/l(Z "%שHzB.G5"0b+:C_$C}-'G _af^hto>z/B"nʰ_)d$f-}6WZHh L%͉] VNF( Ip'NiQ$LonvJ'܈§sd!G~Nt<}Ria\$||TONJfnteu-+Um5ZnB*˵"8t զsm:Em ߁Z#R+WD i'=Wę&hQ}^~%0K|Ы&K%)R64‰yӁ}":D MRdy;M6Rs:F/3_1,gjw jq!24Ϥ*g{G݌X,iy/_G ߦXu⣒msvVL3xRJ#(x"fSB?Y)Trfkg%X<sJN]kKUN6؀ mwGC"~tN8’$x#̐/E /.9Y E t^JQԥ2}%p iNٸJ^ MzФE;Fˮ׮Й~hbPLm[pdC]!rY rO(&5.YYA&(1Bλu=QL&Ѳ͍+#emzJǘ$z7Rk<] ;Z/Oड़<M34ser;13˦*QM$ A"lO$zɾO&@gjcNf)wnyI==sƒ0~Jk}ͷߵ[^k;%:#_y/Za-P0#>YSԼ+eur p9|iK t\K'ȹ kaoݒ.FZHBԤEMɝ&rqYO%, d\O5s 2#'"uLLQJ}?[hӺR3uz0cz-ڬ:(Ԭ)2ML4r0f'ړ!Gb=DBسv5+mJCN.ix?Oಐv4C c<&<ʾKdM_ 0V \rfof͗V&6H_8VIlq֮]\MkVd{-/:dty'G|y+[:ÝX2=_}*JUlhU~ #ofm|OيJ IfDugV9\MZ,<+6}Q/~|TҀC[֓7kfΦ_rooNF / gYEڿ19X׈~ b0 y cz/CsĹzu^T^GӖMϒOfVzHΪS:e*jBy7KF9~i'675hP3qcMv tn d*~39i ?ISxע`cgJ_Ԃ yph;FIFNfD (w֍>O+&[3,"8/AJ=\Ò)1{-^ŖD|?B_x0 ~Tse:TYBpk?eORF,٫|DD=RsW?B~77̰7NbE`R9l~0e~X-~˦K^0^e<486(>W4@$+!z2Gi07simlUdہ-"0>')%Z8E]1Fbkv!o㉟n͇ V[򌐧ۧUjɕ(KZl}[ˈaնDzǬ\V qJW_qT"unܒ1,U6r9J d7:_8#ĩD\3W-AhVssye*%cޢw{W +ލeVKYH1bInl_tm G0s{yL`Տz(M&yU^Ą m7QJiNyj|9}Vb,n}?+T',KS> stream xڍweT۲-<h=64n[p``]Kp ^gswx1gլZ5ZAM,n 2ʀ,lIeM%--v6' 25-ǃLtu9 # 4ClRf`UPpwsyyllC @S^ t7 YI߉l 69:9y:YlU% `dhěy:CoWA4G3؍Ji v9:nȿ듲uZ@:#wy:VNVX;j;ٺÂج`7]@/ ߇hy;r6Ct:V)@[+ vu`ikmdVcz C`'#ȜYzЬ2j2rҌ-!2s989<~'R3O! wҨ?@=w.d?nf=wy5ɸ;8Š0su2`:( KXhi`3Z;YCFoRlaטmvN@5|]\'n*ds<3WW3od6Pqps|!i k,N 0$Q"~<<Vߦ/'U*AVUiA\V?/A .HqVAv+CR?Rǟn ?!~7:HY6 B B@?N?!\wǿܐj!ΐhce yΐ5i'D; 4W뿴CĹ BI YcV+_+ AH7<@H?5B>@׿k-]!?׷ @^Y~_+Nɼ;Gŝ 9zW+/%GJmFV:t,=D+,P,H!sD D 1iy+nE$ǰ4@$.ĤUHx?9 uJ(t5M=*4aWu`IqΆ"͉x:Ǻ8~t(uBw3G}ݿb*[TM vUpM$%3:v#j)21^`53FGO.o;9<.QS]'SFU_1č& g H^(1pm">o}b?>=Cퟑoz)nFHDf{\X01$\y6$t|-qmlƢ1 %m2tL Y^%"gW{hGZ~䵕^i:B?ӾYkAGR@& `_K(Hx"XNKz'8Myǽu'_4#m850ܹ2 sP-otN־a5d!&dupPJBg{>%'ƌc}NaE,HmUnZ5B/,7Rul>Ou#IeipYټζF[ĉHYЍ{4ghֽRgU$p=ۿH 6vGJ(X}aDkKl HٟaK+%'! JXu*n m+2e,ޞb"<ٗ?KJtiPLf/A :k;-){Rhm-\Í)"ƍ2U5Ъq&`lrF-L d jfgӖ  `ܨ2!X&;U9u roA'#=TbLz>QEu2+9fSՁ<븃kO}XE5qV# NÌ${ؒu3y*QmIo=MpJ%n) _bI::O.?kLW]QEM\E82ww#@4jX:q,Z{gjtjdKJVmdNu\Qo0sT$?zN>?~Buǯ,Qb%"416#k薋;Njπb6 s盈DoԀL̔) ;2֑ D'`ZàtX~HIRxcdz|]I'g 콺JS[Rn3e?\2A"*8]8iKEn{$s/mu$bveUqQKUnZN1h%RgDkh&L?h 髑(nH}F{o?LdC/N3uf]P$I Wstk3-HovV h\_9HnnxI&πm15M.rHzu>[w#IV 0Q 1*RT*x5Gz/|ۈmȨ[a6ծw4L V<%?dQ z(X[_ln+ jNp>|m2{21Pby/e,IVܒWپ6J7g?}n*S[_d,(Ӿ9rs])(g#'97Ȏ!m;G茉r&\cL6 #^fx/6&.E]2׫v&>`*%G[r-۩P0/ <ΩiaD"]̏[5dc%PszXszA2%#h51/'/.gL:~ e匰IEWd8O~?ʕX*eJyrc,Tw5Y/z3 JN!2v%UL޼ˋ PH[Aq`@05C9&_H+R!GtL^<#M΃I 9Yϓ;blaϲb cG*<kp=dy)tƝ |+N؟$:uTܵ0A=ۻZJOÌYe"wc84Busi&yT80N?l&mQʟa #C\/C1 $7ծA_Icg"I߉42& =x?Ecfg*L7 <O&=^(|I>K@Ŀ ̀mwߩ; H##zq0/YFk & o(a;VK'3\wϾQ }9ڑi<&֡`hȽ!hǸ2If\QqaI&\i˅R[ !vw p\G'c\LOoZ.&m I9J?7EZ0 l&._ C?F4,-$O|_ I#KUH$N  Snj5RvQ1ӱC{!VS uעlDT '{8"Kn;]na@”{̂|u*k$Xp&mud7vty2eл@1Q- ի+fP۽AM3/gzGOޏ&DNN0Ҋ76cH_9xV[֒Ǖ/`,bX+ 9,7/fJ<7蹐B 4Lxqs ss+C^3̉*q,& ϓN#E,=?6:NE91).֗7sCҙgTeG3)"N,[ⅾ7sѢb yS 9;NCX$vzO~ PsvΝ$' ~~Y.4`گ0{ģzuV:1/}&\9"m{( dBY "4js?WWyQك"=m)hB.+BƄsxC[f&| 6G愒=T¤wC ôFzIg ,+{Pue P/]QO)2JFUjFd?/G/ZLfJopj0('-VI3~AF+N}e;s9.i*=ӻY|ڂvƭlݹ?! q3dQeī Fܯaw<7޲ZLQcT`ʉ.d +w%E=J%nJZϊ2΍A2&P-ˉa!fhEx n ݉Gb 1pYI F4{mo Q,jp%c˦X;_ȯ.p}^̭]i %Fœ1r6'rZWh_0#}X&yWt9 ,'0h=p'Feȑ:9kLя\KTq;!ENvU_ CMS̙eLZmmmyQT[nB/fyԓ|b7>LVe'36xqEDŽonDV D-A?fAjmDI7+#_#Cj\"@>G>SJm,y15 ߎf~.=A ƔŶk\/K|i⫆+MOѮ >X29tASTt92}#ll`UocnJ~*75we+A7uUa+Wǘ^e1ن0!FsZO|o1bu~h|Kל)"|?!@PhKms {zpObϩtm WWCPmע#'u__8OرRwÇѬL:evac$tGMJW ᷃g)s'O9Gy  &! ݟuVR<^yilĆ}mD 1zuXp%fjb XlLocݞ/3] ,Jw7-;~l m\Rq<_gfHRUvt)`(+F"XߙV*\$8Q R8<_Ӓg7-F!j!Kjvjȥlja+T _ P:<cB3v6V^dSZyRn%LmU_[j1z*jt}"S˱(;p_2L>]V^$ؙLޜBrFơ֔9tyâM`ƏW'?VY0G&?H%a?V5һZJAGM*1`9L޾,=7/܈p4wm卻j]frx K[{mxϸJA c{u]_]뻺)X#ϳ͞ l{yPiJ챂/bE07u5CB qZ8/T :(YUnȏ.=ۯGD9*X-nox0 0%\4fHƶ}Χ5$mT ֕swC 6ܞA#|7g<{^qg*r1':|qƺdy`M*'GD&^kpCG9htHX\}ݕY|[T#XVC/:hƯ;֙ pk2AV=_f5jf @<^lIO1:U8eVx<)MBG#qc?' }rrҡ3BL8'3?\K@WRKY{rg%`\/~7T2^pn(SzI9 _E]+>k.!i}uNŸM^ׁ3yAnr$I+GM27/ͨNasJHWyA׏Q Vi۠-!@> WaWO(Eڼ:(8yd0]ߪa2FOLN+`IC?™~#T򍇧<z\}A?W̦ uM uz%xfgREb{3%^0Rv]Vb>ZǕL>G6 5?pV=f7uv[aB^>C6༎ZNdw:u>-Z=|RuRR9!j]ziB0tѲgu~{GH0-{HŬ[GK3s,K՞{춖\4:V-0}OD ,kԯ7HBZ{sLy4\-S,THoNN:" }DF1SCAώ馘!xEm!43JUlxu;.ڜ q B2gztxx(jA`$;5gҺKf%/Lڮa,ˏSz9cLvi?tdB] aJɨ[S ŲF|uj7zQqV,3%ɸ롫䎭E{BJR4O&ȯG(}RW_z5 T*cdr^d%w"K0ea@iIYG03Xښ_.4(bX-jb鸏zS"+$"^X%Ot8`Z~],NZ辑= :bYŧqL1LcKSǿ$3okr'<~YhT:lvcoR65~f$;#:9hhɨS'8hs;=\@0CrG8'o͇m~gs4RՕU>4=B> feΰ#υjlFgo-u6Pl64c[Cn-rR|lhGz8 roGetI[F~];QÀ ?S0dg;yY;bykO} D&Z۶~^_\OreQFg1D19lگ!cK{THc3b(>&J(|pR\% h(xP LrӔ|G,֯UniY3rsXp# Gj2Y\8nʧ[K+y7hb/ov1zނUtSBij?cũU8yЪd|x^:F*#XtfOC>^ySEnj1x}|oNX N7j껀..a]1AfZO$NC\sNB^-h7I* =~PeD#Q\mKYx,%H =dPvPL=C blkO8X݋ "&}4BTX#3b_ b.Q7;)~ݭu̝ 7U0.V2ފ@5,|=UIS'dDn=d޹d$LЧQK!Iʧ: Nb-lx1zJ1xl%r̅1u']鼶WxV=TO>QT&CX˳ H,yɹu,usw&j?k79awHFNcO?i[<@9yDjUQkﬣi$z`)]ʍɃfJ ɤwնQvN+1]./?]I,mgE YfـvEPRRtn)* M2l!`(L{7QHee))u))Nqy+N2?;H}ZL97ѫNՁ&FחHݽ}&_ئ -aRc/.6Oc΢2*!ų!Ψ ;yϺ{PZ!PZ"εs=9`> stream xڍxT6EHo5t]zB@H .RIM#һtMK/RϽ_VJ3g<6f]>y[ DG %Zf@( BQ081E%PhL Bp#w@P (*)(& @$@ h!76E7jB#w `B9@;A0  ") rvG exP@Az@lJh!J'`:@2 P $`P0vqBuM Y//@Pogpvp{hPsCA ( d&NP ݠ_5 >fe"GO -Np'nk [w#8􇃆CP x~m`m kuAe@v@!!~i@P` 6{(05H ' lp[,`*g^_>! ( ((( 3.'U!>S?g,mZ翅(rS(;#w췝/c9Cah庣S@&FW b uwo: y=Z|¡n*P/.vK5F Ctn_7 /zN[ -&z25lB" &@ [~8vk!+؀?@@3 04 @Gtv.aDK ]wM#R!BZ+<.-Eęg^:heN*XۖSΖO?~>#+p1E-ܳϗhKX%ۋc 66H4z.)[ucm39-ݶŒu5`4.3Ĝ{,lm::#^P"Y&嵂.eda2\WKq}>/h)S"xC@g>;D`ikvV|G2cneQT ݊+6;v_?'U걜K0I!ٌ:Fm3NKοz% ,|0KIo'j^8侀FNc"mGqк }FVϞE_ƜW?E$OZbh}C~l#yK{f@U%VV+Ҥ"ȼr܀;A(h~&`-rV{UA pcjV/6aщ]"Xm4` &1Om!Be3yS>VA/:Uߟm[)i5↛=X*: m 33U׼ZjSXPK%򚠹׿NAt~zaĠtX;y|ɞcR|I Q%栰|ԏ' Fxn(,XB؍Rgim2Ud܋,-|(u]#- (韈aVn:>O+ԤTzAZRPWYOWON@_UaXmG^o'P j&ŝ+RƋc?#Sc10U)v}N}ج%wW`ǣ#v6i|:>J;sYy' 7d" 擫5ƽ8;-A~2& 6 ~}mRk~Weᆂ_uʦSBޒ.Ԩ,)Sz9#jd91a&\Oc=]KU_ZBv=Ous>]C6F(b}GcRIHo9 ~xeƎVjD:0mD+nw+$Ю i>\MK 8=ֵ dXSe, m{7h]i{퍣aFt`Ws߷eע!{M$|p+. t5!wS%zS/rF^Myqyl+vg”4c -Zp!|;Q9bQ"Sm1)2?Tn3sF4aL8F~Ӿ ..Ghxv$'⟎ 9ҹ]Eiչ3=hȂ?Ku\s[z(?Ӟ<<Lo~X,\ sw1 Om5rʆ"?>To\#cA%&zl>!ԏ5Κu Խm'G'gV1(ťBj1c3i;'殠1g ~:zzʰ%+=nAsdᦥڼp_O B.fb!bm7nwv5T&*{SDn[AcDn{J駎eB"dAb'S {)*tt~rS$&? 'ЁX7dm0D\eJJpъf3} &8Gi8V$"g*'۫THXܑ/.ntiZHưou?~s;mГ#zڂC _d aKme4qי*M]H(_nȝbOm*Iʪ i;f[L܃랸Mrss/2| r]Ωٟ_˘2pN ȍ(MnX&6_ty}NJ*(n/DitÄޑ68ɫ[qQi}1KENs[0s\0HV>\O=kcݭ{5Wʓ&.{̛yaf Uf^Gvj2N 1fO{G#aSG>sJo}]l8eXĹ7^;{ #V"1>"V;bK^ʏd-iNYHlU5ðKz6;KI墲 $8@,lO4}X=tW J ;b࿞.j^P+$MueǷU%e;QIqF:#^bG!Eg/e:b2N&Ny%3RfPt>4*z7 u\p!& !LOG{20MQ^O8rn|)Fs4y&փf(YO&O f:srK1Yh.a9Kf}B˨91R z:%?ڹWÛX{nrtp!??0_㓠.U ȖߚH㰆eYh~zyjKpJ/6|4*Q|6xM"TanpFC-cW! zywݱ0*)ױ4)KQͷq9}91fw)f"bNK?%<}5حk@-Z,CѝǢc1y Lߍ%yDQ_y6 ]SjT2\GdIw-ijj,Bɬ(16buO `r/ ; vjmw\|ES4<+_:+4`%㸢qQ|W/m U3q؉)' >&!d;g04OZA0#YTShpC#Q^Sz3eI,}móޡj1 !y*jN]IQ#.^®8}|vʏMFKya7Vt2=&*ny\|5lX}gs4yh+6D͂ӔH5gs98io5uoo=7FRR?V+1{6ȕ}K^hu_z9%S fK`M4UWk˩I\S|::Bŝ5$^6z=WZ 3YfJa6>RUiSOgp:"\NZrr`](ol \.}sKYj Ҕ! "wi{ّ!y@^*g{LQKdo42:G='8qF]#SKE[t TIԌcY[D= ]RٽDJ,$urLZlǪ3)#=jEn쵋s/v kq5dؠ+D*l{) M!Q:sۦHݔ*fLmlX`5Hw܁b]RIeDPO~փqHlS3~d@P12_],j0WGݑ4I;-y'5ܒ+. NY-JL.~$,F۰rrO资Lk}G#:*?35V&Q읗wY_; !q|\UQHցS/%:/ޱ7t#R% Myc>/p}gC6TN]q$1Mo{&|-QD`b*<$X+κadoxcWV(;o<,>˜w W>Q 2a@#dO2<Ò́ |kpf^KDGq;&?>D\F,^(׋B]9ڂjܝ>x qM2~Is5\Ĩ qcVݮ%U|aACA?d84<;Tt[ ]9};u( @xk퐕H*8( M"&t. 1$6%u } endstream endobj 129 0 obj << /Length1 1378 /Length2 6060 /Length3 0 /Length 7008 /Filter /FlateDecode >> stream xڍuT6-N etNam ) J(!) "%-HHt<9{vu羮 Ma(; UM,e"" 1)kp )h8A8> pEDDDb""r@5'uPH8rA#2zB҂Áʮp4 A!XG+"4AAp?R;bnr^^^ +B;( XG1G{a_B\& AÁ8  GbpH h ?`?A߻DoD`ru }H=4a@ qpObP6BpE#ܰkD_ip\]H,?5]:#Q^H{fkV 9@IY)) Y : JoeMrㆀ  b * !X'; s-EpG/  kR3}**(oPHVR(**# 3! j#Q@?_{%_q. Z8?$D;_Y_$4<\\~y7#'}NZVCxW A#HD@xa,e~I0_\p:/8:ҙFC|"8:'$ @aŅq3Qh!3n z8οU {áqvӫ*ef/oI澶D'YvEIb'9]qWy+їn8Y1<̿y4mݖ<޵-{C19 JG/Rm=2ILyl1~..R\xނY]_P1cs[ b-8b?XZS&PfC8cEpB懙9];R4:l}=trt1x*%I]#g !]S`نwkXcΕG{lDJ!Xv׫ԢMQy䓙-5:oJ^ „y {sG =yL?7x797+;8K^IȎfU8'U47̧fnH/jug$s{ twϻ%Uy+>+nnDþq+>͊@d 0 nO.qQsc =(*kK^m~cw ?a}}t eOH0|Pwߡkawо[ G(>\(Y\3{DQЮL]ɫBsOQAa0w!,_#$+$.yMaroUg9\cV `+@4, R%L/%S=;C:9nɚ?\cs!lwR֡1;>r\ѺuvV>LMdln Und7lԆ yh!y"? mn7:x_$V]$} ( %侦0PHFHHCTƢΦOݿQ$|u |"#Y={бK/?WĈ@(G˒@A@:U&R7-ENК}#àNqV3:7G-9,ˬ+T;YUD@Nڒ4(i!;]Dzʢ޻C|`![C}C&ZaZ.1pf7t\s:$_3UJOl~,ƍN0N@c҇yeSO؊W^闒H}SFt͔% y#c<"c)5/1g=}'{l>6*yODj"tjxĚ #.*-LZyU+(K?- Yl@IW^2}ˢW`B-Mڇ@N@r=Ƭk{ܻuq+VCdKnuwNKUԀTgjMh^mΈs5c5 F]蟡w+m+)U({;_>!:#\\O\Fp+SG:CSͻ16 V&g͌3r- R? EG(:I6; x ^zVOY0+nZ5F!T:%gҐf0)ro()ؾ n9q](5~v#ƙ6 |k`rŖ|#_7?fҥt3wA4},G#͕5Rg;wIBuyY;y:I)] ()me2PˎE޽Jjr?J)T|{9J4b_OWM77\\Ӹ^4^aиcCavM<ڗ.7E<9Y ;EKsZ#CL־ D}h2o}iȓ1HS4m s◧yԦ땶>r(3)_\hCGO3%iX3p N=-Un޻=Sg3\t_!K9#QB+:Q=uYa_+5׺7(tyiz xuA̭I(ܵ@ƵՅ)do,pkpR+j>69d6-/ICQ/ Ela0IkQ2xI~JIekVwtRZ :iͩ䥄eA! k[E5C'RG).^~%4:ߜP'p}nrh2JA mƘS\tQ1{Y\AȭޝV"$lzC "5-|,/9y2_VFmǎ$w pbg}ӷ"JG"CQL/ZĄXc,$lC>M\OTDtTUfzHK|>`}WX -˺A(jo}R2B[Dq.F$ RQ} -׷)^P>7cP\Myo>ԇ~GUAH!ӵLJF{$(-]rəoZwd:sܣڕtUчL$ʖIAyn ] !mW( zB ހ{M֙Υ;gx-r?I6T]dpg-K, z)>ׅt $W#"Z7t@60T9~LأG3ɱ[$߰m{>sJ|h,k7p=>ev؇8wFw 5Vb<t9!][0;Xh3Y\^^s.㉖$K"ZjH>(|9H0NClG゚8N=Bv}*G ܻZ;&v0,bp1~B E]|l֏d,8Ha9&aT\M^zd\#.l;MI0=¯uOй;\CvK\B_gI9 Nj~Ě[S/[Y{ڔu EeAkQd/H~!מʗP_t} Nl۾sABd8vNi/Rfv_uw&N3y=@;˓^ܐ%ԑ~r[<ּ90(wuW0>Emv3TC*|,ɺ9a<0#U/_?0kX͏=k =ь"҄w)qJ[ {qꛜ:U-O7z;{ #}QyH7'i=yso${9' [\‹GXaGPrٌ|Hz{G LiΙL= 5J:#ͼ;Au<_ i k[+3QxN"m-}+"-פ( !H<Vn>]rk"ggW2}3cyz(el玔~7t}<*r܊bUpqK#l+srwE.(o&1a%TXTh4+'ؽ洈/iD9,*RvL\iH,5dyH:hг%)>)q+i1Rw0mٞkd^jӪmnň[Dz* k&S}iBF|]}ȖjNc<1enADGr6Wk eIpSjy'(LM:JgO~hRYߙ  Q*<&XNJn>6'}A5~~ұjwʲR5ˡM> stream xڍP\ֆ 4.-84 4hpe#;{ s1 QRe67J۹002DդYl̬pj.6(4NΖv<D:\>lbF.vW 33?N<1#7KS<#@ G!jdin&4nOmN&Fvy# ǎ&F6U{K,Aghdhd.@CptNn@S_%l.fa/a49ڙT@+0wgF&&Fvv3K @QBÅ`dgWGGҍ ]3_521ۙ\'f48wO\k;{w;_e:0Y:aftp033sr_y:ve`Q l8}t/L-M\@sK;V0X}av6E$d]""o6+3Q2?rqNw-it]ff?,]*IW1`C5]yJ}LGG332n,a4Ut1Wˮ׼X-a>cL?nWac99y}x|L)f01ٻ|>j;b99LE\&'6? $}D*C&3Ib0)C&c_38X:I&?Ca~8h4?DZ????!CK%~(s?92@NP|?dx2iEW'{;O@y{`ඇja|w Vvā0nʁ|7lQ]Qh'MZX>iQShO'r:lvX*Cfh2$(++,.O&bqۅ3+Ejgf;ɝ& %GY9KA-dg |;ē5P<yLU7KzwZz7FZżYjp?\t+&wcm}^N⟑Kj^lT=ee}ӧQe}j՜f G3ToXM`Gb-E wU@cl ']j z)H#N5 |8'$-s1SǞڨZN@jq{MrYn4G $z"kHURp|][q)Kgn #|VQ-f^[vFރq^jN-3Rl.5SCk#|'scMCʓF9{.6#eT;kKnɓ~[֑_*FXR<Y;a.+g,u--0Eu˯m&O!/6c4F*oE$Ah:)9;K*K4 `$PGqxrF 'ɎˬCM>q4GsdW k΋WoDIk|ׁ|rՏdg­t(}99.X(i ʎzadSO>@J _t򆟂EE$rX&]Xղo<՝VCNq}B I&OVuA%2Ϛʖ+oks_%MJbIoޣ 47~n<`iɔƖ^ecIv%mQtDب!9yzf7i Y!`i[&ڶn.[@ۓko9x?A999xbUPXnA@C`Qcn:GܰCk7N4ԑ&vb0+a7X-V;2Aot-Y$QE4 |0gl4xW 0>ƣ` z0uEaK'%~^+L(,Zyr. u qd' %xx}q4)+(t>ا2*M"ns5Ԏ<ײ3Q A )vYXq&1 PU@4ݹ>糘Ѯ,a*J;7Y+֒u>ÓĄ"W/r<\PAoW} ^z(ҋ^+ur>"G̕l7n!<ىuͻ؃d#zBjpj/''MGЃ{~ۍBQ_! tMF.y*pâ %ge"=AƸ1/ΙKLAB1bƵdU @l{3* J8"4.A<_ {TD{e"U>\j"IcδnfM` Q2H"p@!K݂K Y{}g\Pn]:/IbB@ͼHdⷉ~K 5oy.k1Oz(_Ə*(?wdL ei 6zEY<_ک <]|[i~R Jg@4b`wo4 Y({;'a04Æ4[SK fHc Jpu;s#v $\|hJ9"3!&`|89AAEG(c*{XMJfUݲ}}Y OފΤaq %Q#&kٖS $?1q$, p%1 B84ұm^Lv: Ooʰ6cdyES1ɷ}18 $曀v+yr7AНlڣDe56J%0Cmsnau,~kwxRc_jz.\]QR u//~^]56S5y_N05}23$NcC}BDZdr||y9p%5~Q]n"ˢY ZŚ0;E.zo=4L&':Sne[" XvxS2Sa ej:E !O]\X. NR!,D8/Z ny> ?tj1VTs6"{Qfbs>Tny e5*}ݢ_gV%Ch @;+Y /+J6Ѳg.qͧQnۦB0H kKA X4 }dySkK_I1bDžofy#}w;XWihыW!,JR֣2Y0Uoԓ8)q͇ӵ6LZ*tS>f޹zA3|DsD@5Ii ufS͓i _VBg*F‹f_͉-SUsQ4-MVgZz<4EuR&(NL.}v,ZdqT̸`,JoɊyZBV5:#f= IE#۟ѝW` ˊRn7fR[KFA-}[s|!j+&Zc4I 9+ݷ\Gd7UIjXäoYA Sr}̒9qr'16lJK3)IVG?V^A+{6n'ǀoוŀRw'05'K '#ͬXO }lX@Qly6{k*!nҟ{D!x5nJxہb*2MsKYxqҰ.ak&hjl sA_|/֭OO_0ӊVi.Ѽz,zC~[X `ズ_rc݆w479Ү Br>Umi WzRCs.$轱䠁C=rlAy៸h-Q ~D\ u:1΃ś*9ΙK%~#NsD^:'vF`-}ApB =3RY!EN׻(Xp|/{9i8zTX—IV]3/L'WMaq! DU>(34rYJ~&ǬL:}B|Voz^MqC>"k\)z7{WMl`jN8F7|)C\8m:C0A}+jXB)V~ B1Ә)[o 0 #H4:B_5h"; ?Nx/Xː+ 4G"G!gj?UhkfWPHeی_,s9@܋kZ; i})fSVgR¶`;NUإ SAA r/[nDDO"ɤm))a|nmrcT3?{FBz ww*V6=VW9kr{T-!49Ʈo';fA!K f{J+^1@ l Jc ?VȂmvDjLaT0čmݛgtu',a}[1I0{ eJ ww`6Tv s*$8sjM'  :[j~@Y3z]U714ڴrAfט?dca&r;˵4v&\dHoKӌ(bȊH||r< M` Dۯ6 Xܬiu9uJ*qKY8":..jfz^5 ܜްNR{{E$[yHyԳVDBP&w|`TloI41Yx+'PuV2)D#X~AJ?:b(+ݕjjJjZh5oY0 bq|r=Jɥz<٫SQ"ZڷaMnMJܧj)Оfj!=sO?r#5%U֗ Y@d7m:\+G=o*w?#C"rn.?/9*7m'%B|EG 7 "~* M~&3/د_N`f^}PI ĕ=-LNڮ[V~j^ ~Z^.*|ψ*ADmOJj3b"S }'S;=k,ɉAY E,kp)i; UrE )y|Mu񭎍>(Tɳ 2tnR¯!xBRo7>TI*+R e*2e.s_NC,#/rV>c`PLZ0 Ӛ*lo_ +PȯwK BhX qojARd٬n8Ȇr, hNMrgQs>tVq59[S!OeaZ5)o Z K $o[a\Z'8ՅJ+qs9`Aćk}m.Sf(MPJ/7jD5#V1լ"[@E"/j;wZ/x'kmT9(AQ32AvT\Tne=d۠6 ۣI6٣ZDKꅫM$֝+ks<{>Y_s,gC_x}sR| b7\gf{m@w=m;5.|"*jt7?0Β5 ;&E,&gXBV9sFUNI?Km+E)E'9F9?Oj'brϨMd656EL(#xDZ$nOʋi: Bk8}c3FRR(oSw^(Pogy! q 468M֡o L:mcqB5 +OZ@1B3zn4'@~zY PAi׻5:Џ?#aǾ-B馐)8wd>w40A}mDe0kKu~%>z.OsN_|գq_o@C-QJ[i²-F]g+3`A$oUϪO*dN1g$ wuMs6 )U3s/ Dd5֎z\)bs͎'G[f = @Ԟp$b QR1PY2Zm/0&'N0Xԟvi]+3p̣LjFZ`3V,X;(&9QB ,7KGAIZh6'l8Q&BJ%b42(Qаѓz05[m/?6U}t~bk ȱeyCirD0B=lѨ|tAǎMZƛq(,!6Fm%ə `٩f4Q\QR8(9rj ou^e:L;J3PSqXH^ECe컳St:z٠ |.1zEi="Yؕf!`gmmbf)Pؐ|/ oSXdL\ :Y^1mSpUr"51aGMe/5Mn(ntOLܗǁ8e\P7,O|:Q}/ݙ͌x=IQ+VȄLViXZ&ůY4Ao3F;$YN nay%0EoO7'E|Ik>N$,E2d [)VA"2$ۇXbgߚ5YO}Rzt1{C(z fcVz+jLthVSW6k,) 8hSv|ェ-oB =m9s!ʳ/?''ȪҤ,l Ee= \q}df|tԶl+rMt{#vqn~q {>Q=Bќa4J1om + EJ/=zl՞uiP̃}).P:ll[ՅAL|p|`/ZgWX@55OкV }wܳ|yk Ιױ}`bP Ha7JeZF'hOjT|tMLG $`X?Yvʂ{m@gB8Đ8jI@E#䙙#9V/g-kDcJwj^a ǸZO!O܍kO\0tE4iuJ߳ 5>)sgd8 Y?WL+O_kpۜQ><5|]*¹g"r+dcKglplkHY1ho|otj-? ܢ;T{EB_ؐ(أLFr0<1&I&*dd]h17tBLOB]H*!&tc[Ği3܀,(NwZ Åϴ-$kyGX`j=+Op-rnʤCuC#ݵB3=W)6`^AGpO(@Uhw{JL]41J];T9J٢Xkf @uM/d(M?'H( ]㷣@ed˰!*a_/:s-ɧDn9wt c'tA#/ilN`AkE ž8Y@9C=TJVA`[}HL.7Hy||-# u`xhlnPETň 'wEatZϭ*5{PTky]'#p(}OVMЍ-?>l$RfMZi-(("\ܯ^^J%Z"eBzLCT Uwv~W!*D ,VE_/8n1ZmH u~jNJ!ˇVT}r$zb8_^b#tcS?q5GUN+L.0t92٬.֚Ir잞i_U0SjF时2ݐәcBQ8 vl0b#att]rm0 el?c#}׷i|so0#g.d ̎u:" ׯy5lՏ]O= AH#H-"0x'&*;ΧzAKVBk]w/m.SbhebMDVPy64qdҠA&U̳擷)Jx=B,rPEOYxKl1ɱ%V`jֈNgu |9Zw&Y^ҡQ#%yBGQ,_ԉ %& jp6x 2LDr\w[|;5 QeY( }|xgdvhREU)f֟ gW҉F>-iYj ISuQw 9@,~/.r)wʸ@$6`UMk6+/CB&+嚊<Ln B7QDq,Wk&IQ)}]TQ$͒_|p-RbxJKw?@håY:Z,#K۠ 4<3c oiI Oēk]|cvܺٙo)&> B*$= ',r7D?x%tv%rH]‚da,zW* T]:AL#VB\8f}TD:0%zP3Jpl` xX2DFMUlUTHM!^0G> {qhzK==r~j9| =N|GbV b.v{ ԛ jjmpcRȟ9H`qQg; fwiq iFqQڦᶘ'4Di%m1GfsmA:7uE} <ɂD:IP,JZ훎r Tcu5#<-J^9)ށw3gYю-z}j{7[.-QTkEw sN׈hWqs!cW"|mLEr>BD3Y+jM,c.aDdzL"bPCÐ>.]..EsM,Ʈ֖=Ɔߣ[5L;˫ߎICBvPMU2{dUwo 5$ 27#%b^ut, ]2ywj lљ6pDݲ붢#Jy{l i"<šmX&F1^_XQ}W)(QOeA|^Bo0G#e|G.ډĠAZ~_a&"L"閞;pН~8Q,p )eأFZt0=B9NlSe!9a*cⴛJkIcGDBiǗQ 8gr"7gzlDžG*aS}r3 swZN4GX[ʩJhb`˵j 4 i #+4kMC ]8o.vL1X7u;K\R]rjO%7AS`XO G"\Y>$oۓĘ[p{,9xjUCcbAoFeAjs7_%ܺDx kZ"Oo. Wl5I:e K !2ċW+Esq׋iP~FVM |V|Jv ,"+6RwC8E1;YpNdZݳXih(<jm.3D1vdE濱V ~X?KZ <0~iJ%>[S*hq0 U`ˁɏ8=P09EŸQ6|j)a4ؼ"ĠOI'HJՊ{jYvSV_F`aYXQ)jmOxyZu}+c].QUOΎPbzё{v6Dޕ*Hl~|Mcԕ!еp3Ať;A[<vxfB&cSw7iW~@| "W-C/h ~=Gd۴(4!8SzYXS?CR=K:ҪldlH㩮e t:EZ L'kMEQl<j>s-9@w[\޵ վb pc{)VD<9T~/?JizI(Op}~W$/,pmI%Dv%_8JD%ϔmYxe@5a|z/%c"}(mNpJ endstream endobj 133 0 obj << /Length1 2039 /Length2 13728 /Length3 0 /Length 14979 /Filter /FlateDecode >> stream xڍP-wwwwww 0{pw$8Ǒ{rjffuݫ=5*ꌢ@){WFV&>+ Rj =`qgM-P f `errXXx0qr@xJqG/g9 1r3IAf&EW+ۉf&u3RX:13{xx0ع098[ 2<@V5 hC2@4&xJ/3f](n@guY#`7O$I613ss4[,@@+@[7 -MR7s1s90lG6Kڛ;]]O 4{?don s7GfM{PV7o%:fVM#Md|q1q\݀~>v7ge\@K=of_;<z,o `7 3w#fRS[?N11O# wU)koط.`'w.%h~> 'I?_+rOWob;mn\v@m7T *Anvu5yQ{K ryU@fV_f?dTqpqYYX\f6oH(io`ǒqrLMY&@?dFX88HbBf߈,f0KFo<荧a0xx[ovoMloo;?/GoaN 7ε0[98ߐ;|j/&_xmc|ڿ oj~Fv/[ob߶w;ߪwrsp7 p]/o.ooA;̮VuMÿoz t_Sovy13@' ~u?Ժ1}(V-Ϫs#2L*m]Nh$͍/ӎfdծ'gD./s#%MDp"|@vQ8 a{ I{6 W~ _W=GxTHYhKHK~鉲xs?J"HwGw-a{ZͥO}jG(Mgŧ4fKp% lkjwOOAyWz¯9H{.g_ؑyCJHt`,.ҙ\=F`gFFqV{Bb~kMlCW"4> A3O*n0%(%Yܔ7 pu]`pzxkR_^8 t3x䟼=<[lSfKe9MHu!3K+E侚׊wIO+FU>[7>  FA-FkF)`Fp0 6F 'cHNԛ*E8ZEkhcWC-<>q]'5 l)_da:A@}A%%M`A=ƔB ϱƈ -* ącl*%~2^®0ĭyek&_3k2$-'# m tvK:SBgHL >,}\"Uǹ'u=VsLejPv9TZ8>mE줆7.r{ ֖2e?r`kp+>) G1m$LЃµ0uo$WܪH>sv9~MTS~(vT`1\\t;CLe:y|"m89GgfTi *E G( JbX T ڸ _ * {E ZK[sSD^ӱw1h#'5"5礎:XS\%g?m  7J 1^:a>@бZzr0䷳Ts{5>g%<ƴy#(Z3Xs3R,@޺m{ z (1~=4_ "'߫/nraItUSecDڧ"~q٣E@M#z59O6;wG|'U(Tۙxaҟ]4t:5&\g^*àNX,?FN} l3l\cvC d|wx*D;5JPux RҞ$5hQ0@F KW"1:'Mi.aPBlr!Pf$ɲݮVu+/ iRk2Qwr$U|٥ԐE/ cHa39Ye !ȿ~ 6,ZUt.3Sn:' )`5}|ZNBdף (m+CD x*{@oEhIqw{A+rb-dA*֎۪gʏ4)}Bip@E2ÌϋFđQYC ?wm9M'M7dnG<;pJJwC`ܦFS z~[>/3CB08 utL1'[Y79ʃѤ]Ϲ( Z&P}ѯs ?<+k?N }#ĆSd*[ D#|77].Z'հ{l,+LW=R8:X,DS,jL>pz[[i|@PcBW;m~C*Kh唸ILY=!N0T kTn}d,~e(WٵU7әGȗ/<0[ZN ݟ|ύ1=R|WB^rd{t)B?e~Q)-َE/SpD{OKsd3zP,n!ԦkZ5Baj:&Cs4@X{78c`/*\'pv)ٻpG!\)"癏X>PrJ;%K8^y  89iN켗1b/Hغ E*Q@ 2 2(a]vUZϐ)A9BI╰- EmZ2)N'Kd˥+jp46 w7VS>hEG pX>Szq-xG"19”[ǺI`BcBz+P{[ %(S!lL8;79vT,vfywlƅ> "[V' 4f+06ZG>*+960e]ehz/P;+8 زM8Cf| :Srv+I1 y6l;Er;$DB=;FNj_0B BbU?Q7 w_{1m@ ߻(ゥhjsR6֖y2L4|U9L1s%N? =| wj[:n 6]e5ͮRv x(0"}-Z)R~t7!t菕.EJf]YeO_hE*Bt=So1Y-L!\z_n[r׏52X<:;ms> A(a\_?<ay6-~a0vxÊ$ i)Iy=l$Gr={@Ʀuuoz7~}3iΥBq}z4m}FڏmJ+WteY=b:Դ゙)Hx†io=مP$hJgGb`%gATuҊ7Iƫ[sq'#S&:^ٵU1k¨MtRٞky_r1%3@Dw`{HXP}@V8cY$L q:+yJ|]a,ŏ~N>P QɌ!y:m1WpX J-KLϮzM6kKAU~:0zÑ = wj*S$0*6 ;- SH$,۩[ :} ib1Fw,)x/ ) Hk)&JB&AΟ8VD{*S81 N:s8XCjmf* Wډ7O Z^ |&{jgMՂN(3!SwLISf׋,:0zO]gyE8@3 7Z/.Cm g2,u^OzO )hhB/K)X#sxSeC7f-Zk֥ft2MU ۂkܳ̈́,m8u607|(:Z|r:ɐZPgi3n!Ƀ& $R pf Y: Gì7$/^f`̵}I<: LCc9#mbEc DRqQ^^ŻыlޔREytSlyPv%KkXD'"a* peC0_ @cѱzF[-Fgᄵ/)%uJ<(0|1Qd ;&:qMvw 3#닋 2Sm`y6@ pncROA3wuԐr|f֕lJI-| ʨdcM¼&I c>]QT~ n9כڦg*2 3=)pJ`=aj_]7V% ~v޾=3Ba*mlxwz%,4ص5s"xr@+ w`P dMJXRHvrމzP )KqI;(:Hl WRSG|1w>782:L4 Y^cF_i"+Z9惞DUwkTmv9)fEQ!m;K|_z5Wrk?3G^gBme<}!+, ~P ܗ-tz0|~MK+Wp"i:65w1l;0#F{awi3\m`Pߢ 'Z>mD{ ZN{3/~ufɇG?Jo,y%;:D~.(>V=9+a'Y[l9=M$[N 6MRh ûޒhSo5j'.ƅB9| H'xXM?@9U;+r8&Xs؇[HHʇNIHiΕ.QŸ w PRzf i CJ:ZT(=bFSxwʜ]}z104lU8ܙuxi+PU骈H(y(x#ũ\!X4a8hOP?TL+05DϸF\0D4Cd|0-u'Ť,[b񂪋gaOfҹmhgbkd *K' |"Mj(/p%oDw{S, toMuͲ1gdq GM.ͥLlHUĩb6 8d'esn٢[>hh=keR&D5}x_E]$*͐IL?ۍѿ^ Ufi١ԛ\H#b TIj-Of<3,;\z!tF@Rr̚8X"$-JU#~1eu>8}@ 5FnmXA4'y\N؄c54 A90yLۧ\WeuuypkÙ-_욬uP;?:őY;/h+HS0`n5lT=(߬THwR&`Eܯt/fP&$E.C]/ZvpOltjPPeWa, O6n Ė X_YHDuS[~Rbڱ5{E \8gq4 zP6F8F!dR5W?3rjLnNt;pc >d0F08eT(h8AE-5VmS~V9ɼ *= "#3<}+9KU o/S}]]?$^7F2Ey;\E.(ű‚ | Z16rxP^NLt&яswcDn:eL,kyS簣*[8n2\\i#:g {RwHj]G.t d .$Ri=ِ[CNZS Џb?x'ˉ/G[:I/ Nzv28 +Xp? F{(H:Ԗgef0HzH^dC'My/E wx7;L_L*+>=xT׷/Q\E!IZ[($GюG9"V{Q^@f ܅X?6cZ?);03%7۾׻Mn3!QurVa;1Hd4` h&^mV#m^ݜw1_W&FVp:: NEn=A6>B 򃳤8|6-6 fٓ:Xg3$)5 ]ĻfEGk{Y}¢H2{S5VnBũNLtNj9+88Oz3ŎCu'BT9 Ј)ʞ%,Hs[&|jsl} uƺd9:Hm .{sB0>ռ3E\ř$YMϐ"Cr2N3]"vFIʦ܊|4>̡Aϟ}M)ED堟H0_IXW=v"Bxw`X"P>RPiQ5E5U߀1 RuC7dwi?K :۴bHT +kCl"JmfBvkcdxT}7A2zuLf-F 9C =]2f\?ӅR"E-ND3WJBk:I4Rp q__^\^#f*}Ζ\ Q7,1! љ6Ӝ6N\}*R4,#E|Ls{5{AzQUi':hWkqhp:\H<ئC$ h߽PIof|?Ureri'\k Yam-+1*Ў'b*&=JMTֳR\]L׾Hz7n^JS[6/! ^ͅ>l.-+wmKѕÁQõςldO׻'>OB5!S)':TU3Lӹ.FIBNjTrXGY}ΔNk̙Nt+C]D+fX7?ʉ LHchE Sy&~az֘)w3r@|Mxf=Jqȉ1"2K:;$dXnjܓj>ܣqz, [IAl Ls_+Bǡ%ᩞHTVp,k$kY+c6Ozhh& 6mIh]Ưq#"Fz-Z 5;GD@jI"kN:0$ܒ8$wF\8`kl_f鬫m<>]Sڴ78ಇr  !0|/dYw*Q=5mR8f*la(&S6d4'OXe "rQeBi Tġ,k7m gIU7>oR4ht+b(ժɍEgdVPҐ mLົRšӀǥ-[ v0y_+{0᱖cռٙ!# )obݤ;ۋ·.a͜iជmbWl 簒~5< qGk :8I|ey0&3L$~TCJB.Ֆ8Zzl8atPޫ%*zQsu9?K 7yWh湸 [cX0* kUqλ, bT[MM[tc: J,N侓;Hf6}KϥG[f&B3NY3:hJjk4gB&m]NDY &Cl[+^z(` eP\5U%u˳y}s Ly`ZTUL2E/룑 n@1f"CqmfթQ~XKbx:@RG}eqđYHoz)ٟ-p@6w SpƘ~Ï@A§<-h<_nNh-{p? XĪJj^a cR:f/bubN-XV]Hl:ՐƥUH󌶯CRfp)=T(cER{-t²m/n2g<*٣ G$}ƇZij^uPyagpVK y.!QC|3o6_GUW}ޒcBY>a/,}g,@"r~۬+{uI u3XTt'{w/@Y!~Vʵ]1IN66>'7LUSqYl)26%{kvK[yO1K!?>>hT@aAUj>e#ݠ3г7;P -ùZ.>ƔTwS@@/yu~#zr<H7H"nO ONae)B$ jinE1mV Z Ny Œ{NcP2I_CԑdgC?D3u|һ~~2leرsu7[\[;%g~%69D=LEI"D`uQ?AVkWȗ\2mJ]*0M&ZsD|N&% Ha0W(i!u4+N€ד{ I肄x; oH ֝o=<iŸz><}AD(cNcnf-B%6?_7דbIe,p.V7|u= "W>tKx?ON)o-7ɣbN[Tt.l,@Ať&8gGJd$JHfT~w,ؙ9Ca@aQOO'`J8%.X C/%}dp#|,Ő"c'td޲LBGu~&AC χQ{1ָ91i9@{ 'C

q|pJE?E+'nţ*g, >! DŽvumua>T1l28VT"!M\Cf7S\_j'۳vɸy^ǛP&q\ئ 6POa:Q!͆#5Y4-҂B2r#SqTפ(O#4hj+ov)3螉{g,Lr aRW?l-< ߷,< b, /NIU\APթEr0cn.( NuQ#Aq`zOŷi0Q>d|b^5mI>,UO_0$vW+D|,Axn + Z6U𪊠 õG"\}I^0qб{X8꺆;PHiFV[1'Q0wȚfWFXAKO^ȸU!?KiJӅܘ1-fCמۑRO;keQ2#NgY@Ļ -*Zv]Kt$43%< NEPahHE": Yu;; #~i=ßb<+2F?#+ endstream endobj 135 0 obj << /Length1 1537 /Length2 2693 /Length3 0 /Length 3663 /Filter /FlateDecode >> stream xڍT 8ko)TB[,c6[%ia̼Û13f1֢V""tJVBG8-,E5{4D}/i;u}553^@aDCc5KbX,D:@G @b5a@ Ihɠf\Spj8uM,c߉ &`H(%0cA6i` O\_@,44Q dAd$q;"ri7!"-%ok R  ABl"Rl sA`=AtІ_@ / ~=ذ$\ ;W4%ë$J«8x)߂ !<2X+P0yhÀxCT0S `ATO~ ͠Lӱ1a y'sYp-΂Dn/8 M VќGSY)RO5^Er@homG崳o_8y H{`Y-MVRݻP5uf\|yi2e)OW//yo-[9yst!eϮ޺weńLlBS^鄊xۨл q`_25Is]fs\Qx;&:]E0^0ε*6y|WnH=\`LZB_(a' /m#H }>J`류8QX#'Džz ۽&< Ŏ FRV>n|Mu^%~]6:ΕѝQΓ1. YCιOho8㷕XmHcڭo9}&\x[o>3>֋x|%2m#wꑅwEk,y{az' ]Rff%Gؐ?ԙuԩ[[}N]^ YH>jߦ^TӞn֯%o+͛tbMp$-5pRwe#YQ!\_w7 $:/$vDsdV((T?.OmSyyb,m@𼆊.**wޜ9}2fYљrh=㣗%c_$Qe5-TodW-݃hyWHIU7E@D^{,N<|5,]g@Wd/O=DN88C!BBqؘh`fɿ|}j{$9']9'RZ>W`*͎ B# =^k&qǍFl׺(g<آH,ـ N}Az4se(EZAO51ٷKed 1j%ǂc7/,l'DMXwt9KD,!3wwr3Uoʴ6WEIՋDvo^uڏ'H|(1^GΟ F]LFbi>[$ M5 җυ෯ T?5^b(EiRLz< {z\Lr*LMZ9y qvS%be&Gd[>NUN 0sˤuVBCoNuj?$2zXg2;ft݊ OT_u'go/ssIG ٘>1**N}ⳃs)#e2@ib^obNV::xTN.]K^ҹyޓ}Y5:{6x/ |ZhxU[]횈gB)v='d=mx$c%6oԻwýX-~~,}Ȼt͊mKKlMjsI>}U-n Kdu7~ }k!IM />GQݘ-*nӪ4Bvcx95 (ND p HwoX|v eWf> 4ۨR<[ж6_B  P ]HʋQ2D,sb_̶e!Qǻf"n\~!'zeq'HLՁ,?S縆&s%z9ލ i ^{l_xeyI,LiqܻImKFKQߎ逸ZK'o{Dhp)GBNZҡWرro؎k\ < PtW _Q8bPsmkݧtZjQ*䏶qׯXv&=vE]N;APNvO2'8Ab).Ưo28ZpbV쓣7{5yC-ҏobe dMI,M[vek YX?8G endstream endobj 2 0 obj << /Type /ObjStm /N 100 /First 817 /Length 4098 /Filter /FlateDecode >> stream x[msDz_1C݊VT 0$P 䵽YrB <ݳV%,cV===+Y %J"zAh+šB\{a41¸, ".An0GkZH]։1E̸ "Ա`n[g<kpԂ"^e{+5GC㤌mr1-,tTJ p6 "TpM0@fj#Ճ.:Pd '8O1 惵ɠO0HAXr kԬ  Mm R4Qd`1d&ppV@HPVZ2]Ytu R{N l&׀ ɏLY=ؑGj*ToHTGXw#B9+e*a 6nOlUènnCQ ު5l]szVr7)U ԈgV@Z]䱭j]{MM|7U ԰P#Q.vLU~;hm`ViLjZ[}T-o8 N6Z& !vL KP9 }ؕkrO;Zhؿ\ thg.ʗH+@t=ENs';{{ke=Mp<FjPM%OG' y>}d?V_˳AYNi%/{h(?+`J߇i z"N39lهbb6sሢ:bKF.*X8:R;+-DmHOQ2_F 4EHmik+ܥWԆ,{uEKZm/֒8G2i^ 3{kfK8%F_]׋ʸ'TR7&+z$ Ȭh" $hRPқ|Gԧָ6D"qClȹ¤@ bw>RxRAEU=J]ݦՊ7OSnn[A6jI  E!pS!]Zd(PXUf޶,bNxOVV7L)g(< [ E$\3-IYQLRYPaRvNEmrhSoh[ѻbwC;G2DP2l18YzHpiKV8z5e%tpN?B|q ]x24J(dF8ND."΁H2e6pj@Z&w,1oɷ3z ; QY D')%I ENQR]w8)K|M5Au&$Cf!T= +- m1Pw9r:KwBG_RKlb8)ˑȯ9@I[o(%ǹ$S҄g&"ۛgΆFJhچ"EHP$xh게yi,iDm~j=Ϲm6móYm2͞m(oo8-2M! Ȏ`hT o$ZCBmμFG۸QiTFg]b=F犇i^x;@BG9WV{Hd[ y22϶7QLRE̲צj/hYK&v4mCRSe+Q&][v"̩1p\2 _,yY4tׂ5h[%~PLeK~*i=-~iY=DWۢr=(m}p5 zM% -q"z࣭k2{ҽ@#\gXL+~Ƴ_zoΛf*,nG|h|ZXG gBcDZ,n4s8 6psPz~ &ɥdvsidu' NW@ityRU5GƠ7WXofuclNz֏󓣗M^tjEŢEў=<_x >ky5,?^c5/1q"*d7hY-?r]|:)ƪ+smj0?wYU M[]GNaQ:r9M"ycq-Yk ]@o~{ŠlX֖˷o6( ʋ&)qJ@FMޞW6/߽%7lP؝tZ\8)uWMސF*o[ @wpz<{֛ߐuoń6nwu+UK]i]z.]ŖtuWO3kt֥9%]ݥUүOlwA~\~-\[oǜ]p]w@~zZ~-J̇֯0k-%:.zXKsww_R|^D endstream endobj 146 0 obj << /Producer (pdfTeX-1.40.20) /Author()/Title()/Subject()/Creator(LaTeX with hyperref)/Keywords() /CreationDate (D:20211026183700-04'00') /ModDate (D:20211026183700-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) kpathsea version 6.3.1) >> endobj 137 0 obj << /Type /ObjStm /N 18 /First 135 /Length 612 /Filter /FlateDecode >> stream xڅTMo0 WlXm}X@n)6%Bj 3[?J=9IC |||bhr ILU 0P W@b(A#1 'RDpJHt?F[vk]]E^C*M/?3D6ӷjEh7YT5 |ucfOy H:t| ]ʆ.|W?k-ݵc?ÃaďprmWϿ%`\Voro݁/YUzk {]N0`< endstream endobj 147 0 obj << /Type /XRef /Index [0 148] /Size 148 /W [1 3 1] /Root 145 0 R /Info 146 0 R /ID [ ] /Length 388 /Filter /FlateDecode >> stream x%WNQ"HIHRBEr23gܠu [0~u)"A:T"N$8B&8Fmi3lj[IeLK7_SQ;aQWU@%=P{ncn L}ja8> , w"/ . +Q2Ѵ,s>[|CG= qp~9SS~/_>LKEpU5e!t.VnWPXiji`|5Lo5w `x hQnvfH"DGր~$cƖ@߬q1u6p9Ɖ](Ң??[+ض % F/:/ 4CsZJ"V2Ozފ>o>(9qYse ?? 8~EV='mL2R{=S/:\i='a<|hm sS-({i!%jp '{F&sc8M) fNR^'h[f@aSeWx矰 Ưoo$}Zks6g3;*@ tnjtt8fy*L㻮7/ofzxP.qM? 3kӌ0<;%:6 W* z/[Mݪ _F ]l{׎(gzwDmYM*%WU{΁hluأ o]70#C_ `wڜ$?7;ؚmM|f? }gqw{ QfRdn[I\d $ϻ!),ezOwի4d!x_?k~ٕzQ:؎=[ <=ךq%u;0;e-gSjpj62W+/ܴ f`g6Aw Iaxv,q9 _7e .&=sܷv/f*X77&u㗣0<#^ `nS 7aqh]8]GK N0,$y$w+h>*7]s|$g2h 8aɒ|A[Q]`oWs)`pWmLN؜B}|V`=2C''{dQwGO LUܹ| q& 'ևRz,NNns#q!*5"X'6=~ӴvofpLlY5J~u{{I9],:|NI#6۝F*ʾOD-e;tM^wCי Sj㥦Zg$!w8A]t?}r<\tF\rΑj! 1 L^I\0OkEwm\ALrj,6~_,!%bpV WltcNve]op6>»E)~"W(Ϳi߃4Q~z&y]xh* J[8f?Fnj 7?6e}wYzn[pyia?^ C^OY1fy)ofJ =*B6u pxJvrs7ejpO֋uB8D]sO~%iF-y=YiV|mq`n)_uS }3V|Ǵ 0X@7 oxCܰi@|`}`=`=]1-xsd±gso@0jUJM<[3 2a[ ܿgd:>sjtjٙh?=Ix0k*϶:_~zŠ p4O{Exgrp<ٻw4fAdϚ6!RM'oRkOr0҇歅 me6h;Z*#Aw4h(3:WoxgwYv306%_9Ⱦ8^ i!DÇՋ$w7HT vB-]sz9dN#JO(:yKVII,Ӊ*k)}n}=U9d 7՟ҷ~ 3Aڿy zU4uxB?.-1jG04E@XRjйepoω+~kbAhzkw=oPz-ݾ8^M!Vs)ɑǕjAgŌƋO!hx7z f3 ؞<¹F+QR5K5DCm[&eljP[}P# a0k|]"8aWeeor.Vzv솾㙛&mP$ҕyNP/zl] ^v $ZRAAK0H:x_mp<0H8xV3ezsǂN!Ut0u!oI?ʗ9{>UTQN{QȲM1ތZ 7!Pj#eggV`d&* Q?A`'od48sFOۢsjU;P+3y~ [96DS>x=D[&v閉O@o44;ze7dBWLȗ_S _lε^ ֯ %9]rk Hƿ$wV/ [ O#:~ ΫʌgWF}i{fcnW}YD'մ"pr}#ϯȽ҈e'16J<+A4G ̫m< V"3fӛ(%+C/99{6/HN"}L[v3UnSHN5˄|.xS>&\Xo(i>3D54BT;;j9;{hiQYErS<ؖԬA.c 蛬Ŏ:F"yS_SxewXHh/c=*|'As G¦+@tO:cZ\"9 ,U^y ɳ O~u֎i^pHdNcJ?lFh-w 5׷݇~%oO'{1y~*}~_0snyE ͛/,|P~܁`H9qa`;ڮDksKp8=e`ʜ7m u8 ¹+ ?iN+YkSu^Wо 5a0a]\%7_FfAt҇mfRN}5"׈Y2s|%c</QlO'?0s6P̪5 )4z|kI7^J[!# һ~܃nc6h^5~<(/ٕru>dA㟨}+ͥ6,];'_ق[i]Qu4E?~@ҏ^̚9o X^Je퀾4OE~G8tuӜ&BfL据`o?K,'3~<79'A v<ݩ\??Yp=8ܙ#nAKYx`kӞWibv=_B@MR^z8y?C߷f{rn]-1TrFdDy Apz5*KM9Ge`MѾ Gmu5w"DODS7+񰖟Kouy<Ck|m˷g;хk7``iB~wA,{SNЦb#epq;t/lOSu9s]Zh'yc{3orvmap/j}ݩ omXAtoҳK)y;Te`ߗ_y*y^0Mzm8x_cG[l-zAiy]?㡒 gD(*xa0GO^ΙFWNm^j2AO;z79կjdIn]0٢E9}LeE=!|R᳠o};/w`ͿgK-D_7ay2.cEC(w*x2KOK:׬+9`EiVs9mѹId~|+kK/ Op kHȟ\ecCM*[ Q"`vĈXfСڏ$_L#731U1֎Af0//xtXҪޕS N_1heM緭Mk]o!ye/*L>3*/ D/Lmj':&OrjhIpcMWTL5&uw|mqa.y0ogh}+zDhA.zb= {vOݤ1 sPsKHAO提d,mnjqh;q Sշ&{1qG1ɱ?px"[aK ߛXA;+|kgmjn{NݧKOKMx:m곜X_Ӿ/< z5L駛oSRAd=,f7|1ҿQ$XRqN` {m}nXJy>-c&zm+疇tB0)a? 8fl%czopWְ_g{/iT[&5\rN=fe`J?Xnz\\[TNh`mX}%GڂDWA0u\ЇI_^nUvS7>&)ٍZWzm"b=ܖ*\Bb1_³os3c}ӻj?Q'ŝgN{6]~2<ȯU'Ӟ.o"mvq~o p8+k նnmZTKlzbK}X5Dke ~P1kE9ri[Bp`Oo3H_7 ڙKt8̊=Yu`tOO^ەwz( ԴuK rB6[ }kŻt!œ-+ & n`cG|Ŵt~.-u60պZxÕv$^3)5A_G{mjZ/w ?o)]+qpQ+'UqƆ^ҋⰆ4^oZ9pk[̌3pzDs%WG/\vuM· їdB"׊ɮ`blMs2 7+sDw$?*BV#/8y ›^zn v* \[+,3C(o}ܛӳFN֛O$vlp,ޫFط= ^k l{tW[úA@OONwwhɳCmuKxS{s}8*'  -7?C?0P"#vkXLJ?ԗNuA`([A]!~ ^uƔP'AFUޠN9;*C7נZ\ո2]L XZCz";p3$[zkWfG..@fpl0TkAtb}#s "~/dDOHe:-qzVbz!ܒW9wg|cukf8vhg?ﺖ͂ط۶\̀'Y}r0o盃si^Q{(BI9"}ڛoQp8J cp kOúB}dxY (\϶z3OS!XAF\ 0eL=owKT3\Yۃ9 Wyn8i+m{9&3ޟt;bwtצR_iO/*=p.޺ ׯ'kE6Ay+QӋV`Ѫ?ǂC6`.t3h) ]f pBzf[ `p3- {lyЈgb%Y+/MoFԑV$'g?r#Uį/)XggǠވ\9C\hGEzg{bɦԦ{g>=cHZKޙg?JM{+u ,H]q's9Xs|zm, J@}ꉭpnq>C,|SAyRq?hX@zH7П ʺgo:e]+L-!r-t奱VW"!83uޜ yrwMÅo$h8*PZ=ɕYG %8 t0J ( t(=G +<Ѡv";B`LwY;bʁ,L<8ueJ@ cti%c ۾=s+X;.凃~kc*oO=^?i!}OC;Nwz AZէ Ư؆g!5W#|dDF ^uDR7wk\NCgvC)y 'UJ.U%Dӧ*ѵ߈N! uHrPRF9@yxLn~lK̓ |3(`eq㙦<Т_ |^=\K;IӮ.y#,|3=pYV`~Uc6|0vٽ 5W9 e97;G{lbz>bާ}fNHDr5c]E-/~E7r|BeiIt}s~ ^MW3eفܗ?-`ET'QBx6II|%6=:Wr?<&+ܛZWԓ|x QCkڅ,>=1zg{U5d8+m]fOUaD]-!zX8yM!gT9C?*AVlY(mGW&㻋`zYGv!WruDsh ^^^`A#]~>| 3In+#$GO^KcqY90ۛg@i_׺h} ?w?LW#CB7 . EwY){db4 X5(SBMح `ؙ_p!\]|]0˝?0lY8&"#(?vҍSIH9~"EVNO=9̹MlgiuV́^Ek]GO 8y-XR<=?{JsI%H*WYg;@?$:HVnBLw>_C<Փգe]l6=􉜲ؽ!J$ڃ`\xkh; "_*am"G\-G|zjtfCXG`m?1᳧~H_:s&۝F|;:*֢_HN^ܞ\o[<x_7mИ#;T# !z$.ԑ[?1١U^ʳXYy(]ùR^/ֻ-|pUV5 ky1s .ˢq mq ,mvQ3A9)%~+Szğ,*_r&:/vNqX o\*0}2B5z`;"}q]"y@poH?{[vb8Pj{S&y]( ޞ< RH[#  \үCMS=͏_}R Ý ,ڴr5σxs]ZTA5>,E|!qQNЎ?ֺL^UÅ9`4t䓽eD3ǞۥNnlY짡Pua/.̷` sV e=!> a!zo$%C6yIf>hMFOG;Դ4%'Z˗ڀ~U&h۪r45I_|?TGy}X? *e3:e㕼`U~C^:mj9]7 景G%gZrQV} j焎4}r?}෠"s x@=X~rS !`;]̝ sw!IO=:k3ᶊΜcஎ7r%RU~ςkϑ>SER?s`6 pxShFЌs$XߙSPs<957@mKL^W+]ófWR z7o(ӄM6Xp5r%8/#@ ek \me8N09zϚզ94о pC@lf? iK7 dL_z,Rvs(#ud/_p=lӫ]&Hz͹lȩař35)`>N_t7IG߻ճevu}$hN!8 5ZC,9º; Iq)Yb/\'K~Є)S XJkQJlC2]rT(y?󸠾8xpFUWIP:L_=bY+p_5웄c"Z-&͹R$yȋK>Pl' (NK[C|UT͢%0xa!1>t̛7hVՌ{Eģ5 A?w=@|۲jzgnxZ>Ū%7Jm{t 76o~M`%>ڴfa+w($7@_λ|0K/߁9G>UԲ'9.%HC2;s ʎ4+DBj:-A \;v̑(vi7xiG葠ksnsŽ$J J^N<\% U5.qB[ >R{g&vO'Tn;uDY<>NB3#ˍ5Mpxw5Oԥ7b5s XQ&Cq*C]nf0x6lOEZ?_ɞX9V'pcsdBo;eWlm ~L?跕'&zL lrWIf;D| *Gp-nMG]F ^^ cJ 1\]~,!ZY"hݷV"u%/:sk}`TSZGe{AT?ss= ޱ$,P*^ԸZ4hN}bXT$pۿO W"WvC0{*hABf$g?zz&2k3&̶a6gRYI0Γ oqCXOy?o -¹-S7{X7sP\Z4yۖcT𝽎!ZrI ]vזܥML­^)tT´V?Vl; W :kμ6+O'fA># OZFWoOgs4@XuS's[0%hGAWM!\c}X$A :`.Ť~\ m+`$SP㣤(õlyEX7(A0NeUYZ9~W1/㲹-NGO x} W!pn5uC6%!S5!4e0=y*]sJ!86FJ#W[07: =W/b?'VtJ8榾2`N1jʭg>T]=KSCp Gq O^Kٲ\%GA?`w| a`@ϘUuZk}&pj P|tWmMn3ir{Ы_Ny CTUץ_Rp-֎; /}*CGKSxpGwљ#WDQ!dyO(f/QRZx|2R}A KjFs@$ fsPs)0w8#ˆo?{E |5->u,.o+H:tnpwP,8ۍbްz0"vU)Um2%A?\t X{#e,*h)0/ɦ!99gz~ KSvɝχ nܿ_ Ruҷs&}05#hUw/ vC*tϋf@t\ɼs.]ٳ\kJ_Q&~ ԌWKx?QqN@$=v'g{ ёKUݿgz烝T:+Řr0l]Psvɉ!3=6OQ{^iNDZtrr'e6F !}ֲck zK-j[֪GʅU`^hmǢ-mfݿ~gʚgj|S9. J/X ] y1\:0~ *j}9K\ iuL9/iyL$0m9[s/w!S h<1]x.s|}ଌ}z9v)XQJ%ѽW¶[+h1S$RS Bs[~۴)>1UcݹE^SjD`; }wDcV e/'Vyu_Nl_KESv.s:\ NDo\pCݵp[Nr|'+X8Pq"oeu'ƀ[X]~e4:L'ͅ6ɯQx]w慔Cpu͓E3nה-6Zͯ R12s(_((^'/$|&\1o5ZC\ގ_g9<"^8~Μ90gndgl.ΧsU~|u±٠Ŭ<­XԞ&+uE5/ܡ}/`ʟ.0Wo_b^ Sc_fUߟ z"`o~8#6a⩙$ɪ'ho^e?SτLgw%2rk@ ^t2GΌ랼G8>`F'\xD7n(y o҅F[+Z5EuA+`F{pkhpb}ΤFsЏzF:If٥ɂ߸mI4&TY٣r߁}a}Nm"̾/~CSj{ۏ'n(#6"̿!Kj,u8Îjg*gupY_靅_:' I%.m{FVX{lҿg ?Vx\aSXic(˩ vW{>\4eqƛJg^'<øo^g$5E995?c'vyK\l}UASN|3xƝM8q 5W`VWg 9zuYoВz#uF?سz3.[!RT0q]Ib`W'r_{R܎gWAp}06 cnWǃn6',[7[ڢPbO[=߲4d'2 {uE0`N8N* HA$9$uFI-mnǖHCk I:` &y@S# |a7}psZalڕ":RuB}N Șe6G7zػԊ^J/mn.=[.4s8b6/5nnO5\z]-o 0Y[ us^X38LO[x^^\Dp#o{ _9`F?WIuv[;ms*Bu0g&PFZI+~ *_C@;8oC~ulG q !q%7΄0$$t;$f ~rt?^~p#m&x΋纃cs=k ]Ӿ20gc],hV `&[@vɛ{vV <']j93//_oK8 z`䝷?q BW!v;p='Pփӗzu{CzvMn_ iz\pyEYAWJow@ߠ|S2gGܘ ڹA0*;w:+H Nf٥YtRj+;^z0z+\$v$kYo%Vs'߯TPWg'%d䒮r' ۅ=g{Բn%lu&WvK:"; kO`מ>o"nL;=UqQ6lJ.˅!ѾG@\ş5slД} 歋hRߡ~ܣf@KaA5|v}f^ -==Y&!{׆CnߗY\>'>4G`UQh'>5M:xRp}~[6/۞xzE ⍎Y`VcmEWHZ0/X珽j]~6p?we\!nݰb2H^S8O)35kW}[ Ι|]܂']s<} VCI)TuNݽ-`3ATʣn`tѳ,& {TِD!wk2-6IW?|'sA{ `[9ɵoGkI/?F}: A=9[-˶}ϳŠ{d ס7͚YIؒKCg14.\f!G흐))ߥbxD_w&9wt.,#y}tx8x?s-({K눇wH]Eb_.e›>D3w;}?fvƯtp'GmsҠ8ÿ mOro(5l5YKS0v w[D0;>G]DqOVLm,3 Ym_ SϿ SgtDrf*K3͊Voi$X~ȯ$wP?AG+weRxWZ(q<9cp=^=D]e3[Y9`g+gZi"> Tz>=7e/i"p;Wf˽'9xJ*ٟx5j ;~q0Tj 7_rꥉ؜qugzU`FAxɹҶb…&>!9 QͲSlc}2ט5fy`(Xpśenz[\,Grǃ=:c jw;[l%n׏;eP^p%nxw~Dj8sȹyjxxޟʜ3e.ԴU-dn랤o${4#l_o]ݻRضL0nm&O3A[mo@>AN}:BCFϾ)2zs)\i[u֭^{ ̻`mX#ZWǵM!A!fxq9[Rb)ZuNGw<9OQ$ǥՕAp[,o/X* ̬Vd(u;K_G T4~c A]jQFО$)s;BkSM {e>iN_y㳚z #2r^\;c쥊 (#Ycc 05g@>S ʉ%e-.5ʃ߶d X:&?/~aI'`]Wy_'v{H[B;2H}],2[]F֔+@[ [n=B @)p :1$ F}>^3GgxuZ#'kTzaƟ~#~;iy? lȦɯ;) eH1qrw -kS0AtB!N4hE'+Jfs'՗,>a+ dM]P'sbySǃ@0C7 2!/p8?Ty{[Гv<HϺ?n, v~@0| EFڔmSp(M!73]3V8faʄ|4^30$W6l.m%{ (F:iq>x]+_גoBZ҃|ӶW=<53 0XFv DGf_FסnOaCxuKߟ:yC +.Jm[-rvW\m,%_`c֛ogHky_0+ߚR8b)]˯iH@^}+] ,_~ Ry.ޟ](^`\n9?-lm+q*XOb8x@mþ%#۸vB4-H⫥Ŗq ^ &se9zQ{|\hŠ(0O~I/\On9A;gt=n+ kW 2Cj|}d?)m@_J+|;M@-=Ve𢩽[ *mȧB?Ŗ8\zpc K#A+l n84~ l{d갍 лt+6:m+9+/跼I۝1eђ&r?sdž'2ev)fx^[= IOIrpz6wl+ TOƣd{Z7xs0yú;)`廷]A`^=A` 7fr¦]Ro7ze˦K_4i;$7S,Q(mg~521hwp/L#|~o@uu55쫳cNo%>!&W3xKM3!Is`Ds_rԟS-;2v& 60]u<]V'^Kq?UmI_B\{Vp.8~"'^ϓ[ =ioríM}_,lYU3B֞m>͹a.}Zs!ӗ<.4ƒGc`\53== -5B\6b3|ncrm4.M~L _T!P=| eqdۢ荠Ok֪`ݝp' g)g "kmN7jD :%G5~U/ՙP6G ; E3~ا#q4C=!*XaSU O^'NZ*~`څ`U`8fuk|`C>]Ǭ[L8 {Pk6eʼnp + ҵVl]S[ӕ`h K;@M|H3q`R]^RGFLU]o9!m7ns-y?^bvŰ>?q(ʷ3{4 | uiz!'b'V RJک7!`tI؁>x8exyˇ`pCd~2vfgxb+r~0wh< MDUx=ez` `];Wc?!֢{Լ{ ŧdNM}'A]t Xy`Il UrxєAO#yoMT>*3 ӧG^{[c'[_I{1A?o `hK~]Lt?/AلįLnyL|c+Jo>zܗ rWϩ mXğj.^oM!) XӷXOBKאsِ6KnP0%paY\Ao3ݡr͐'.MR rIGN@YB $r{ _? j^3~h!O&qSaXlR?I]Sʔ( Qq\•3 -rv)5%ZAo0i5ٛ9 13`*ڈPbDW,՞ F[95P{s ; 6Qk L{ e^|?$!bְN*P/wu>+ֺ,uWWTZ`քC>PYMLe[~_Cb8+~#} Ӟ-!]da7`gO]y?ws)FhkC h̽#;@2fA%_}) oAѫ$|opXO;0T/"LS;8"d,_ֱV! tls:؞xʶoqď/ Kϰ8׃)l&оkXC޿H'fN\Ȫ_ * GrӺDiPs<1iM|0?S_Dc7 Zwp.ho/PY>mK5̫ B XEY^s059/%޻o댃Hywg/i8n;,e!SL M?&d ܤE✡"Sc/|Bk0-r7=f~yWW[T=Es񾞟YM13{K+Do~?oi8ve~%-j`}g'W,zg-}׬I:(S>(oDU1%irzgspKڅgzz\=:/{MR瑞>Ma|8Bt=#ZQo5xX6ܗ\Hi]y=ufn2_FnK]/d]PDF!ܲߏOLXK;1I= oIV\ ѹ ޹F_@P~8ʊ;_&sңY \GѵK-Ժ3.0MzD%ss72LJT*q} ;rroNvYqt-(TǦOc$!v~'&^{R3x9lYF9Pw=SN)BW"Dg8^)V~%fy'#2Se N؞O-h,h8qxq>{eGTG"!P 9s0i%pz|'yq=Ћwq_K 2]0c5w 9"g|uzm`?w+([z3d۸l;/q3۾A0ҎUyyPb6 ),b:_le9ԯ^|}Z1Dk8Ev`2 \aN^;e mʙ)`.wS7:gȫ/ҵI5S$"YOjMQ|tH{m܋ʭ..0LZZvEɑ& 9 E=5F A` 3NyRdOiiH>+<>33978{wFoTVKߘ!^Sw/zlvp_$Y.Ons&3p'5]ՌҺ*%0Cy=;5:?>I.ؼzLJJ@Äl8%Iv@BTVy]S~Kש(?5º*?}spL]_!fOg_ap$C_`>>uܵv0G p]G8ւ}sQηHy h2 7_OW8jM&}e&f?_Ϲ FmxW.@(̺讚Jݠ.EJ-?=~t u%=WK3p4ZJN ZKI(rǁoN$wN.o ~.'{ޥ+ןLqrqm7!|zw*X^ FBp%|Lx kY99WʉdR$.LƽխOsUk >Հ!=I*굵I&\wA[,j4x7w: N)0sԿfq\>'̭֝#9:Ty`Y&F^2iE_gzys`XUq>xP^\;tNiȡ`./v5azak?Юѹ6Z"p2iSNѶgeDxoq݊f`/As_]tXR^Z׿M|v$+W!=5sĉOxW͈\T[*WSӯ.:8A5e<.9D&Թ=v?x%=m4͈ SfƐ!h纕Cdn )6 le; z_)] C3XMWG]od?)włģOGGK>*gwȭp)cTř)nixJz(᮴zNyqɟW>\>4-ۼ]չ[5}-?Tp1r{~Tfc6Xi|#23Fj|~ԶSN[e & *m~ V8ĺ6!OEݼRwT{xs7芹9g֚.v  C )9Z`W!4w51盫o43_>Yu:,dm?BgW;_Փ"}Am|Fw^CvЋp1b[psS;bk{Bzwpt `D7\.5]O W=ԓEjOh>5#`kրpR5]gQz &UbPjX5ogK|Z;kf Zف8= vukpKynԔ H]ZRJx+sf+_`:ncԌbP~("sB}QKzN8( o7eɅ"Ñ`hkܗ Ĥ4MqV SJq!<헞LίRGqc=Wܱ~ڠm_2XFs[E] nA{6A#-f;z# W{͟t)8cRІ5O9lы zJN/9pO{^[xq/_200..)R$/-#Q Dv4zNsC]d|6i K<vU|2_m,:V6.3XXih bCO ]Q]y^W2=&w%Iwm̽U!4^e?b1z +z g,zY0ĵd<]/諞hl sP(}FA:@(+Kvmc!Xr?ryc AuGux^^ӵs-2AoT]4GVքo%?$!@ >_}]oT++ fM`Bq /' RרC(ST5 }1Ɵ A?xO  Ocˢpi9qy-*u암hǾfA>سN@f0wXž_\-EjdkUК]CXzhr'~V`d+hׇ?)2h+Dɵ068x^mw䜾ݶ`Ou5="schVaGXma0|MmoQtMi փ2.vm[{6EtW|+'>JxW^·Ukr~a7zz7L"9Nr7bQ лʴ^@¹‰Gk'P\3ٷCY iٴ23 :qYXf twؾ_E@2MxBrɳPs#^~38jÛgݡDkX&nt;on<i'c?\  r-h? $|>1_"ub: OR7LAQ{"`,8Gz~yՑn/o~|]+TuOd xxغIZ?o ?ils0{'=Xzu3 ȱO[xk~^Mp҃'$O'|Ci =á? : mQ\lO/0>\hU ჶCAO>I!_ B<>CVp$yY'u}{:΃ & P9+9zM?);/ιnRBW#X#A4oI}*6o65I{L0nƍE۲@ZSǤ3+8P|5'@["\1#s)wPڳcL3uE.cǔruۛ΃УwMJгgO)…0lv TY"35`Q¡&!Ο_ 򢚕珃9x\I0$>hfHp[LJA_sa|W $99ˣL->Y0&-7SvzV3h%HyeMk _( D,kY=nXp^F֫ OY ]!gW&˯0K+&‘ΣKwݹ Iq&}z~sm)? nO*!F3!:| 1X?۞] ^U Eť(")-w_fji ŲT*AŸeQ1 Bb `X`T ztw=?_i]Sx`[뽏ߖl~vwYڋ;o>A9oo|}e5{.hзauוi_v~|sڋ~8y?h+65o^>]C3s^{ێOe[v?Vf.}qտjifW?mvm7]v}Oeo|ϝ-絋fܰ-ށDGk8[x3GniL^'e~<1i'9ml֧͜rK޻[+fv|AjK͟lr6?Oo+'?p^3n=;[}ޭG>>}o[$=c=hoo֣^rsk|і%C.ckuqMƟ=>2]'7vĩoןA]t3֖}sw] ˟i˷o?ݟ^M^#~-3`337-״#ny.brЖ|v/>${lkxzG[#۱ Y y33Yy]ګ1o/w7w?}܎~so~oٶyfs.|6p]> L{OY|ZQl yU)ZAީuW[ղV`O̒zm 䤭+S)ҬnLzYJ?_ 8MT3l%5f:3\yXG`ʻXSUX^)J.`aմu>WŊUsFؐ\aL1pLI{Ɨhw=F& )ųbxV&Rjȣ{D7woє͒T\ _Õ& z+r-Z_#(oZÒ".=d'MæU0؃jJ!I2]M%I%~aI}6emW.F3̩gQH%GFQVn'rf\*=vT3V7zLٌ:W!u%=cD]uN(1B  dc6,[L)IxҠFׅ~)LY=NZkqu \k.„MC(K2(ˤ@PRs\4e&vUljLj@}!4H$IsPsPSV!EL R3!C`uL1YЯlQȰz2*NzJaQvr@.RIf)`QfZEѓAs.Ļ @3ZʋXRٌhCOD֚Kk-2Q E@X GxesIԮTg\l66B\"ځ(91[buP9]Ԟ<#ϋF5%`LI=e"ON9'sW+զ:C+RC!{š{Z]M;iM)A(u]U]4 *8&( e !%^ԿH};#z}fܻèA P g-dE&D]Cq{I. }G$ެLV+q=8M2hLYtoBθU;y)Vg(E''vDb=/ 6¢'DP2E%aꪭ) TT~V` [g!mؑ(>H=dQFh5قD6 ȵ_lc* "1D1 񘂞XR"WIn\2l/FE?=QjuGqCQx>g=+teV;EQIzajNlC&|dGJKFUSA~qr hAz"ݬ|D}g[f?!#Q a&^Ŵmvj!úCۨfyكjzeNfIm6T698aq裨Wk+xўtzj U)j,ֻ*ܙ%fYMO 29z舊P"! 2;ٹ;тhk _ՋKT-l?duh6>RByŝQᡒ$@XewA+J\qϛaL5qT$OLj^gb)}G2鈝kmlyE)1#xȨ3 !ݨFNU8u 60Ž>+tMrašx|3a6ƄPN*f"BeaEcAQIŪ.kczCėQgDP96FTUTa&І>qH {j!ZɭHY? ;cEWzF⻥< @B8>39dEUxA5q; /I?p-:4MlEk]˳OAn&",٥b{ 6uqI $))M G9̀`۶Vp k{fՀ{`k6JY= hp8:U:ւd|" >\d "eUIsv[*ax}w~ B$8C^$B,pG,^jgvapbvwT3G>(`_ /kaGd m!<ש u϶  DyP>j uv:pf/~3> UenL9ώ2&Pt#Y vnPx+@nZKvq?I?;@> Tɧzi/?Yu]~֜(HJ+@l 2=B,ƃh'@;Y^`xE렇*-ut^Z6iڵ)`T,O›Z3¾*EּۛkwzY*P F%R2@)m4ơe\ZHB%qAWxF yi#-%4)@{VufE6i {.2`# g; >s;VO 㹴>30"~LaBQs8i[T=0)\Al˭TRz yeo7A=SWs[: qB*q(T;;CT֋g]]?s&d]E]o.޴MLT8}MHvML݌cJ֭rLSȷU{;} ʫnqFիC} J{UB\mꅸ?Aj`po-ς| ǺVCUfK7=p^)sgW@y9}`]-%mvBizUv8XS ٵ0}X@Uo84 %seA3ڋ3r>`o칚*hךmds0o<B3+7_S×-̺6b")3 3G!;G"c{b{|rٞ K>M䣉kn=<㇂e:-MoYkB- .Xarned27j4D3K8tm ]Ah3οf^(+'o8U[_n5`^$! s7n:" ۼ/O[0~{`m" 1sv1.#Hd>\YU5hOc/@c9n=`Fێ 'ڷ: VgWvMy˴p> W,@]in>8c;CM^56_K'9``5(W?(.I[җI<1T 'Ju{_[SH3eJ5##0Ɗf6DU?q$^}.glsJzBҊdНGA!s (xrݵ8lhA2b OvFq`d޻> nDHmpj׊$0Wg3|##M?+Y/Z̕Py6;lNshfa s^geuГ{, [\]`~KA\NS  br#׀ݞcF6.V͜=eO@ra{8 wł]zw,=/bs 2VւM6\e[@nSlџ5<Br]aї> N/~dw{p\kjm _#S γ/alI_NKP=?eK~TȗR^; U=!BXC1qLC<\?H .]߈V)ު Qȶ{bP%quá`z$x)݁Νuc?/ӗԞ/{>iGf, uH }_7[@pMxN5dVϞgޣ-F%g4W@jmzbg} 9 QLm()xL_' M\΋%[xO ^TH[!P).`/2g|-⒚`~l|^b{Oo0zAѭWST<_}4t~sRִOAzRZP:wzު;Ml.%E2bOiǧPi$vm`~a.yC~/b!lܩK/KU8V[Z.-dc;W%9u5/6)wG;x%}bK}PH[f 3[ 8m_j ގ).rzf9>G>\dsPH+݌>ڸx؟n޻_f5]i/\H}oπgR0o?-.z0qzU,/s[ 4ofaruHgCu!¿>;7Z;>=vC[ t*QX0ȾrHe|au$,]ߞJ~VznL}~:(Y =8#8nlkJY 6p{DUXl~)k޴ B!git6qݶ7a9w?oɆ#%'5\3=.@W+o+nM gzM^}t7irrF}_#%^}]D[@Ϸm%^*|Jw޽ eR"PHxՂ$}`B?yn9lxn;Tq"1wDK Ȭr7ևGq[^ 0g#u!s+e`gn,YhN*Pz6Ͻ~+̠R3b_*_ytZ5%c z;5Z)&@#^g^1*7Ydn(6vq ?2|4Ax/ jNjZ5@Mwo__#9d2[voR],,D\\JSڵ'bCo{F\%2԰|9a-^H..<{Bݕ&TOe/>FQT'Y U 1-@'Qyvh7ŵevP(e SJ=Kzi["7襳@ado !S}0^ggIZ NK\嶿6xr|c6c@|o[_4$0~b Ζ9?bZIkV#PKܞs˒@-h׺`-Lv#wi|U0G ڙH* $·oCջS.WwgV;b'!⽺Cij!0j_ɜ/PZ~|\ʉ֘.r`fօ5vaХT4g#׀yM0.-ؖpKcM̄F˅cP:S( G9OLcIN|8Ä~3&sTQ1Ûkݛ)s֟}W4C@XT} є˗l@Қ5IPmL~m\uM% ؁ǠKED~CN{޽DsK{bR Ϋig)1slq^/!ZRFи#WoJ=g@S <Z8=Dn._{ ˆ`FombF٥LO Fܔ ]n8dwLw'{80D3.I$HF(Mn@1T1(4h\XDW _`5kZ7$# o.#x>7䊘>-[ ^p\IN#9/^e6g(g >^*.ugcj5 yqë毃Z[knm̜/TWgX dѬO}yd=@.Syfl(?NKKqD :A󪷗g]Tuy=<Ne}k,8v"rAjtiqk,lsޞY$fv+}i s@P/n耘ӹ~H ,qt]]0`8ZO@ܹv,(۪ڀvvdG99(VU$+PrqfL/|*azm:WK̤Acg4Ԃ.ʜ/qoz:OuT>gc6n\/?Ax5^92rM3|GkG^t dWrt#@]mh:3/n'|$=#Jr*Uӗ.0KOSCsuj6HGYԥbɃy3z78Y1ݸQU*e3jHԋ𶻧 2aƩBbeU2W*&0 D2,m]`%$7rRSooy)O$p[@Ț'Xv,p.m~i|W]nN!W9\~i(MfOAiM2nĖLYٽǡvi!;Ӆկ7X w#B%BwXDY @y6v3ߣCD{ B]KbpٱLJOw(K!Jo潊~P_xI;N>BSu5uBzNխR4"| +kv}{G0&;c_&%322[ݤNxeÁP ~M#stH?LTټ虔APT\[ Mf(p :n3= qA^p/v˗BRuSl-߮<򂝣 U߼q~c'ݦnmc.2OZKo}H+[d&Ac.~Z jLjN%c+=v?ccfX̥KRp. )_-`UxRa搷˶Ki', w8umMpkUμ*.J7ؤ UDo(m'>FY˶9ǩ<$4U`kV7U T~=,y.&͕{Rߵ5=P⧿qeAik2$%O>1e~_~zD+RһC 3--ڒ=JROh&Ş?0C6|;],,Nq%2o .^eA $Ia1o͌XGD՘i/h]m#O 8r? m*\Q朂& oL0|5ìׯ vVxw&U5{+u#UˍOCYl?(37H/;ɡy7gB)jZP}Wł=ߡLMf Z}bp^7 /yyYL&#=ny!?3UNKjDM`BmkoF^ܲcJ(E,IEHr?Wk ΜCb_Nm??Ck74nuƫV.$BY_d Ÿ>MoY>9 ADZ:fA%)pV{+KjOaT68lIB5(o:(hߖ.Ks? &kU nɅGeUK:r) v+_akxJԝ$<}泧PD|Ucyo X()%~ŪbӮd5;[} ~`xP->|"O}N2qk#Y?H=tqe: [jpmo07.nFS$FOp1-w~?{k]Pi'0^@slXy} AmJJRc3#ݓҕ@S 6Bf0坶$THbwZy~F.89qۂy $S灦8wo Tv#jsw|˴؊?ST.iA39RP8Q55Öj۟-~ C;Dzc>q=ʪ&cc Z$.-=j V-u >8'*x>] -ka=Pt&gp'hrSɻF}u￁~?)uHn5yu}]ւ>6lCR>!#6BeVW{K6/U}YJC-\٠iޙw̟uk!t!pw?j˭W]6റ7xgdѵעu 47>#Fp-{-jB M[W: G>iAA F2Z.x.u;tǟ #*.Sj[O >(l.@ie2)\+/wTw7C^ga `R]4|(~('\F+(~Uj(a}< ;޽/7A"-k[^%Ε)^7;7 NPTn0$kfᱯS7Z5o{o ovՀyeNcf ǻ@^:xׯ@vS0 K٦}QM/LσGrl;:Nzo)zDUߏO>@77O?qv@T vV|I.[`w47OvFb}]9y]c*>wnP5^B79oϚ̍q9,s=//H[% ?|AUBq"YiIjY  j1:̗^o%x$?s9W9@N50򵄷YVLkRϭA_K[*,qYޔ)NvNB0拓o֢Y qp0~I5μCGy~Jo.myD٠e?3ttV])t'6,=^![Dy2f|J*XN\zCq!Aߧ~b fxҕݾ>޺KY e7vPUR8x7|@Qcٟݻ[g30=p0,9KJSފ<#_ IC}ot;X{Otzͽy+D}kM<&{-5i#`HUyiCydN'qM-mh^y5CMA`( "١bP|EEHV{^DxD)Ñ+@ySYʺF|FΑ^LܳD{XҦ)."_" `?P[TzGO`(]Nxs@if%kOKmBt{P\%#fyFp?$}BE%~|=/^ $Ǐ@]$VfЍA*w~2gW*lȑ{*L)yL(9\#%ϾY1.+;Sq>,*l/s{ r.hw vCirPԺAub~Wk&6N{+Sq1GkN}ǂD'qΪ`-q͙EiG~?æ?W5$@wevz7(rKU] v%pPno# RpeVgoڣ^1Pt/^kN ,\ $yvn/(?_sK?LƵ纐{+l| гIS_rFm֖ MY g*|'؟_>o{]_J`6\{{edX_ɠ]e+NB<`s}}K>@)6/*\$-=R':7(9*8n> D=X%??=JeJ%(,7feZ*ye[F4sMwϽwN&`'DV%Vs!w{oޒ Dn|(;x)l\i^5Mp^3E1({:Pl>}[p!X]$6fg˗ VQ~V+] 33tfJZEuK6}J5]S>="]7H[$)J^V !<1)-WnT); qk {D5cvԀf1:?BUoc`t~k~y2_@uyP1 VA=#Ej{Zx}=Z_ "| H矍^$ʵfx/7<iX%Vr&h #9Z@ViKj{'VmZStqPܿh @O1щ_Az_'_cl]͑~g=!Z/2ًʉs8gtov<a>عAn=}ZD0pf~1Owj֨Nλm#幠weyTmpg[᥊"~{kŠ,k1gOSG{,ev*c`Z ҢkՅ^~҂?3U)eP muOTxI pZkҚп]xfIoW3}I@% }Mox=^@|<4lr Z?m'8a*@wE#88p"HO_Cm=;@?tijP٧>p̒{=Bul஝@:uM]u <&A` 3V`Nа3W:S_lֵs@_l>Us@ R *c8GoTrfYGPRkƖC"DnUF؊곬w"@훫!8d uzW=K7mc7TIHACS5B7-iRKD~RZe@6<|>Hsr!lҿj=>gSȼ:nx%;|'M[~Mnة P>i>tx6 {@ZhJ[@= ߧ:0hQ=6?2kι|afbS UoNLJI䲖d/*7u <7!- #Crkfr|iaiT_p߸LVr_~X8jHxlwy\ Gwxد}xᔸ旊PNc,cH$~^J9wjpL>ˊ?sjFTRQ6}c,|w7*k9~b|ܡO}_|M02fM&괶?ribOgz9&f;XG\.9MO%: /2XD.FV<*_jς_l4x#ӆ_Sb]mU䡑+2ܳ*V*h)恷GػYkl-/i[ΕZ05rЗN '@(zk`>1͌́\}?(muK /p{M!>&ߋaE|[1uX ja[])j+Ꮩ]X 畧y4>oWTA*߇\'oiWbfl8*4ơ@vzS^jsihi\> خ`>~Lnhgfmթ 3c(&C䦹Fs,bgӿ\L .'ĥK[Ƕ@uoP^Nii}v0VzOmDO%H3 )XʥRde=6 QQx†$~:M};8'i`'wv%oj0|f+y ¼}fB3{*>u5`]yh  +Z9 pئ}_}ɯh}a؊> 02ܿ#{b_({t1 W昆>< ;pV(Z,?r-u- Cy~} ୻^Dق=Tf<=zg(6}g }!Ѕsz8([\%1s;d,wnFCHgߦCNn_u?43vjp"7Dې\vʂRP8bY{j? }ݳ!'lrPcO@93{wHGہ>F ִ[~!L9be9R?&0S۪Aqש| ~wM6u˵θz/ukgd$xO<HC)׭%x=tʚR`Qjz]-vf0O /u^p&rīޠ&\zGk A>s~e=߈ ,SmD'jJnpk|3u,f3׼WytMYu i5g.έ!`h|``o1NS Do>-}zy` :(3J'׮I-۾r!Xfdz>  ~'Qmڏg y9NHpMFN P.=/ں҄Ϯ[]:aڂ _QT>Nᅕug ;Š; o]OhcxdAݴfנELߞl+?Iʲi8LoB!!InBcr+/<oM0* i/=R;M/#M_2Y Iz"HζD>~7ɝICD~}\JpS8,H_RPr(>ϙ`@pWg{lӻ5S|. TUvb' ˜yaeus@~4iNBŞV I,I 0w!_'h5].$`'W;`Ԥq'5jo檜+?s{zȇZy}RX=g6ԯi~s%lŤOޗ̼0 ϭešWs'L;A?6) i 5 {퟽ Xm &6ɪb8ndA - s@b0.\?;ag8j%?T  @~v0&%X3l:{ZX1a%SY#k TmKݻ:8-MpTH-/䕴gylu!-fꛀ9ic2DArXu_68.13=[×pP28ҦP jUGy͍o#$h}Km vrhFD#6mt*l$k@?龐gGl#zU\M'1֒t|V@Ncpw]W3c?o{ת~"*n~ؽZ(,7v*Pծp#kI mv060$8 ʭy wqajn͠oR9NEZ)36M=K쟻'=զ6>P2˵,6^]EK@;.6^= Au,ӫ`z]`>3:>uq|ޖa0>OmH5 ]#!xYY8iGlBLA0/ۧGs$NJ~L FSf*C2nZܭfQ6Tc1b(pya/b6\(k{3hy_zٖ03{Va)Xkpn}}LқV>ě+w$lוּ|0pW1 6L Ӱ ~|Ŋ,KfԶB2ϰql(Wbn#ΗS~ɬ]2h&HB* 'ށ Bv ByVKuxL_s!8nɥMCu]息"O2ϛiCoMϯ<ʪ;AOwVRK;Cq܏I%/Rȃ|PVLڦ5 (ٵwtd2QA7 59rjGGXYzQy`6hRPJRs-/$60(FΌ.(n;Qqa=gu'/-1-n4=9_}"c!H,bĂP;90m:#4pk03k]ݛ Yzu[h"趫@[6c4ЪSO۵Xfr҇׃jLֳ8jo-xb5*5+]4L,:ɝ5m`JhOn{`ey^6p'Ab~4$ԑ݃Px̚QìSNx9u'/ [0n]P 8_kʂî>s(gٿ̛ ytJh"V[T_<߳q>bJf㖒K 3 ;A4 IvbŧDO2 MziܞZ` |: D۠xSOD{{phyz7\U^ZC3p XIB/iv⹴:nZ _j 0n,psiχ/-<.5Lu1 7 =@^cإu{> *<\ (m;^#j4=_Dݥs/?Տ+td,X>| hW-C2=2SDp6䈨U_*Ś Ae$Ш2eP|m{]zVs{Hdmx|f@^ ރ#S>B︙x"#v)k:&sIgtofX]#%߀ o U ;R$lg=oxX*wpRu[WKH3gmQfQi ..*D]ANMSx# fxc9a,jbʯ|+TN)+.Ҋry<߶QiF*A7* DŽyNgӞ&6CMyNfwB=eyGrx_\(Xo'( J(zkU74p:2 !P?`d>Va4eXVƢOsdcr|Ccļ^3 ^Ay+`0Xݍʂ8o7\Mbrg61^O%ZS ȩa WZ_ظ _^&Om :'zK o@aI$x~Kr\ua{4]Wr#S\",B\]ej(UM_U`E;i`߈\r3MU([:?(}HRVY&6 eaxNT0u `'ߤ2sxZ+4+oWA̝W?yN'Ygp{? >p`>x=3wm`~TǸ']dKH#(P.ȁ4@vA.3 8}>SO8cϽ\lFA/Y\Co*'`*9W@WG㩔@˝ Ճ|Rw?< e|}m&У@VR̭uIt{O8xσ7+u%J3VlG7׭͖`lGx0{Fu φsTmޢn.D:YfkTAdlA:"0 b=I{ W#LP&wZ)ӌ1sѣu=X'1j>,Ţ<(^hbE*I;B']q$ @tWD wf𗀳Б=tVl2yA)?*A.\=(y'?җ\ 1?q{#Ayam^]}G^FPMf6rª wAqݻ/h><#$xi76Rڠ\Apwm6kZ! ss?z;d2Xהl  4ZՂq4URp3I-c?Ȳ5?<JD+^/{ ekf1rRw=;-Y2@Lt.%ZIb UO_t:1|R]d1(M.J_K n<.NW9: [P~Wctޥ;t~ݹֽd$$OKU9 v5';A,IS|w7 UNoKT6fJVG}&?P5v/4/6+hɮc_DhoDwxM\iRL!gj|kCOWhֿ@<Xy`JFofSzhԔ ,P?/tpڦiAer '?AU)WBdassڭ^Kmfnfesݵo['V,jZ5h H[ʢMNxT+SٵP]-&z>XQ:a6㼣' /6X'TŠl1e8 ~ؗ1#6@襟E |¡`8:A맀S9Q#jD~Z,lV@'kBP_} 獱_*:<g~ne~񎁆%w.PMf NݧY| Ÿ_utzkJb>ңO]B|3AU7)lCd/c͞$׆5gϩw:uXuPt( s|9Xyp1QCQ n5+"SFxU'P)Y$gܑ/Gv 9!P AEO`r^z.ݠPuH'C~ƣ6Zg qȎb̐>!rp֚!ef`vENӄhu!VuK |f J5^_˄5ՠY&did8pglYqY5PTzg|,ݿT c` rO3MtdHD5 p#FPxt.~8 pk$ vW5Fn(Jbxii?CsƬnB8nzrd:s  ۖrJwzqU r6|-PJ/y%#O2y$?P0ܥudWt@9_^ڶ'!{|pהn}.v{FĔjoQ rK ̽4߃ fJacpj/?kY)8W6CσSԱ +|ξτr]'_^+(ˢE?Op=/} /J 潫 igX=; ]m~{==N+|B%pxgK+w>1g&UAi{bJF, ^UrV%C lQߊITh3N0wS(7&4@iŭ;@[+d^TgbbţSmg{m}Mp//؂IVjn75:_#tC|rŷM^j΄+1n৫,S R8|`ܜ&~q[SBt->|_Љ_+/[~&e}]xbTX;О[r =0V jw349pGI`AJ0o0Szk(s+@y*@{swv?O]dx-Eϩ-Zo3۩SG1 񈕟N^4|=k->ઙ+HNyؕ3ԴT|,:94S:ywV/[&!`=xS ӽ oP|wi\wh# ;Mw4uM27~|ºstoc J_H~$l@ӧSl}б'^!Rt6)vWA[9֠*O!zUm7o\,YS:rVs}͜djŝt(}<Tg}Z/:Tz^2T ^uJxh^#Ӣ@z gE0%9/oŅi`E!Hu&)ĺ5W@R~s? h?ZtmWblZ;{r-` YV9vC= bL_׃w!ՒqP7*@(Qxw_m.Ugs:\ٵx=uégi + yTa 70f/OlzrҖ s֖%"x| 5盃6S֔29WˎܝmMO8p& ϶HBfwRKg]'t0z?N`9gQN6AL_֥jߐUt9w$=@| ԃemRHʆaz;b ^8R-偵8X7E~`6:Ҷ4ٝ]L:2KڡmƓaTک{BrE+583؅utE@pft_^\|<}CP~Xaa%*5էb>ݲ6 BV[րVyIn*?gՅW6jyJ6ww9 3Ptt) quy|֜F㬪Z]P. _f o@`!w:r[H^^ "0jO<}`#T_߮x /ܒ?=`? ˯<8lNha˯9bлj9–qx=U?UYU'# V'@d;+ 1>s+ G6[K:9NŭJ |& C0w?^MVۚ p.N.TOU?#~;c+X_W}cUj6AmJ qk}ugN lp'<2").6>6ԗr6؃\GLhv#zsÄ,ʑo[߹ L dΊ:CXZ~J> }џqr-:"\{җQ> x+ݻ!*#PnX]:c3vZ [j3ހuA_:8w.ρqT:>JfՃA?\^};:95v% /$)/GU g+whկ ;mA]!^%K^{Jg:%Ql!ȋ~<Ox*?# sva"7 ~w"o~}.87Y,اGY{w&Ht" \V/xμ@rky18[lA?BZr:H eiB"8kt07U Ӡ|,ykLX'fVVꩁް1?zh<&pɐN0$HV7X1xkCD;+HA4q'T^?z@SóVĤH^Mw/JF Zc aOHQ}u}}ױ ,muyPe:Ut r~r^ר;NfIis},k s`΍z61HԛmpvouHu;zUnٸcx߽NsA˻V7TsCCpd{>K ڋ+bfCȦ37Bɿ3C^wh#gؒmA"ξw̞EK@I]3w? ܙ[Vⲡ{yDyYstu`3: h gݮ^ŧpsC~p.ݝ whCvhA{\ܦ-<\0@P{yMǽAmjcA鲓3z_?#k?7<*J!7Mϟ@=;a~ŝ-|}Cz'bNp>HrO>&z[{ g/Pq8Q@k\up2DiL ]VI𶃁g*eV_|yEy8O`gAԐQ Uu0vd!_~1 mJ+Bs"8X@xiۢyN`Os$|&a$ #?/^GpuRaY4uEPLf>rm}~:GG6[o{>EE':^|xwC{"#>n̿|]5ɗf A~b/CnH/78Hbu5XO?rῆfX,6=C#8_m\؂x"#(@BnL+Vi]"To<롶Φ0Y =,._  ]M+]L]fP6U"@{L㮼DշZCgQ[q.P3ԧ&؀(W=ls-:Nl]]:}&0/U:rn(x-Zv $PM ՞:ѲhY{NMuK/40V*#V u[ʁ_A˴_@oqE3M!.}6W2!l5-EW̵@K!Ӻ <Ӂ$~A`{-̟=T عد&yy~}J_nRcX;jn΁ŸsOҁOؾjOYJz= zHS| Ʒ I*讟r;( `Vпx1="xݵL5}] #jA_p'ꮚ ၡv  {0?e%*P>Ѫm'iOUd33zΞ%,2kϭxM߽1qΆ*Up."s.N@ueO*.A[NRuz#eBsڳ!l-7ssA}n2ģ DRڏ7Ihs,;TлF5$+DΓO Ԇo:m8s2-jK# ']h!zc*yHuћ Yֱjo~> vo`֡1(./?Yss=؞T8DO^Opla(ΛD.JhmF\󕌯roC `򞴀\]}}_!H3ޔۃ#3ă uQ (/ zL#=jn8 QU2b BVi?ZXwtu*A$m~,Ezoc;u.{u7!An?'O^"|No}|8;4jgCb~Tz=J '9I  ^pN]-x"u5H RЙ]drb{뚁{E7N- 6⵺s/GBm3=q~r@oo" ţnm+#Vv ̝I ._肀`lK Y;w->KA55RԆ:o{]y~T~6˘mNcF6on"#yyF::>\` hrl~[>v] zRX'+Lo=8wox SS?冝EiT;'. :W:Q6B=J|_1lTǗBgNxG-_Cc,> .Biٖ';AejB γf-ٳ rս^={{#τWm/B/'@9rJ W3l}ܥsAwed𢴪7Mvгdo){_wrK d>Iz1فe'!yTbɷڦy󞧠:=9SŽ >nIaA#X8L?ck@i_4_7Kc |3knr/Ws/?Brɠ]kb254ϞS}:z 13mJ) sEv+"sAືSsWA鈟p_>{ƒgV'ⴅ8_) /'=]v`=M{ς=At$pew4@'epjQYSy9X ޭ5m~whcWTo cB7 ɬvPNRs#uPjԞk~AT2aN>Zs*ҕ2˔I`.p, pc0v5$PRdFmS<myl̅~p"R(Nwl0)9 Z'# zNHh_|z^Sf 7- {7}ОP/Ye.7@-#@(~bnzP }>Z#렡8.ᗿWUq|+;on*M@8y^$ T 7^ @)wgx7X:'Izz< O_/U_?W;bCPv1Х++(A` ~|o ^ǵo҉S~ҫxܘ1BpfX\{|X^,N8Xx-9e9*!/w{0_纳 Nߵ>VI ፝:Sg@|ګ侍'ؘq0U߶-OJ,K#x!Av8١7:8ri%$[OD$c<낸AYeEK. $,#Cw:R#:B(K[{upe.8_ )r}.SIp2+|0sóLAqĀӆ0 f{7)HZ_↢pg݃yح.r8/!#ze KΝXcOk~Eh!'isPXܞ?;|w{PTJ*RF!Q%[pя+@.$w벼P*Xlwt}Vۛ`n.y_ڧ{c''\C '~S 7X4[t_Gߥi`70gIV<1~dPT.uxV|eQ t+Ҧ1ƴK`Feʒs}=&~_[[5sKcn760Y8器B1:zTJ:W${bgg).-1Tu{Wr>h ~ w_ 0ME]<5}-O6Jkj^?\øy*8OWش`xs'~'BUNXl+fh#vMB 7X>o nK9K9]sJK?M&gh(߽7GB? GyaXRg}N{iPB"R)ѠE4i$#-%$3BH BB Qԇrz8α#禍0_D4~ 9p4UL(#7Z>o.pJa<1Ho Z2uvVgn)_BY'wo} B|tO]Mvqx>V 5ZDy0)O0^n3IGx[Kͪ P\ S}= ҆dvu W[gIszm)|n>xZ @ZbΧq{順:4L}* +<Zm@ϧYp1~r:jxn4_d/خ - ĕuC} HJĿ_BbL0:-pܹC2ݶ 1M#A5@~否D4'%b߲-sBP(JМVCeA7A1{e}x`-tm;'>̲q]$:8˃y@`lD1@jP9-9Kouo^k?՜ȷ/o O;e5fka`S='9=uS2vZHs0K0d#٠i0AP8E\g@sr+[9,E%/g-"XF Iyf<ϭ⨁H9k^T^[ʌ }Rn]_"|/C6iȽH{n@f::꫈bk0Ο7-ɸ".7Ƚ"m>vy[ݩ{@Q;ٯ7eEWX*߾"2팪'[4yAeY؝g9[ d:pLMT0o.Mq9%bk_ڇ{jj!Юhp%_,o5'8c^/p'_2u"ߗ{ZW ż@^U_d[Q1{h;$; >d3  Q " ^u?Ē)ijE`t9 Ǒ|7V{QL],IY6ЏΚJX=柵oMȩ I  ' B.SNy}B+.A HXsd-*ui2HZc {n:hr?utEuunl0gffiFȌoZ3_~lEIJ,_ t%H,q'3<6/3җX!c5%-5Lt.b ҩGG .ʼn<˒-j)/_ N㳏(^zۋ`Wv؁Nݠ_/-CyqPz֞3hw_&avXqm}V6[q02>337WoHhh_ 7gWf/,v FC3+qf4FlK*8e"9IiS-ZںnTsY#EmϮl3m|W~g&a{,n̰ yQoCq}?vzn\(~NouB8Yna]pY-k>z䐅]$KҵͽNwQ=m3Bjbc['~m /gė鵯fF¿?Ǚ\%x}apnv݆\T/^Sj!Sأe[uvh6^vy'D2%l{rmQ >cGg] Cfvuq޻}tA6eF"X'"_ue_ S uOCfdr'bOuȚe(^;ǧN@W|MARIta>*F=Vs,XS> _9_jC= ڙO+p,xmhYWNԱ@+sNw"wp,zmCҞS؅:{i+yX~WPغT&_֎:m׏uϐ<|y7$V[.ݐ?uG :X3w(o&gnqW i[S$A;\g2ԿC<-sFM|e< Ԏ {@[ lӿvƅV< `2%dM 倣fϒBGqtWvB6jgN3Brdi3۝96x@pͽӠlڬb3 ;͹ /;ædk v)P~;RP [n9;kE/KJ4^d hW5O0ׁi ' DyYpOHC}#y uR2Ao(3,ybƗ`Np@`d3ޝOhʣ>.0,息[^/̷N:>A۬g![?HC?|T',:XAzD6RVMGع Gn)*K:R )@-8t RKvJJ6u& }ՠQ,#Oo$=ANK#-~Ѵ.@K+O )HTЋ7k.0c"FJ/~?#$cF>-ݗ`$'xg"ݘ{&Oge^vv^IdTGHm3wM-_{-4 &֫cQP> _b͗X ʡH ѹӧdUKk>{ $ܶ,ƅ#]|,ƺE=kj[(YA4=}_̗/2$N}`{M&C 3g 勍}IN,,[ހtlvP/*Iтf˾]^h gO{M^%eED#D.9} ֞D_yB*69 t] c/tQo$zkIDqeX]?Y*8O[}}@|xe#ƌZ1BrVzH;֡zC -v|Qwe='no:;m_`8~oHE` tx|9 WO@i]feZgɾ?f=Gs9 F5 mY{\T֫[NJ[A?HLm]Aw@z[lԘSW$ICMWЮyTd2$7l6H;Q .WsFͳ aY~#]T~(g16T(3b wV>z9`_z54~=Ja!mK(JP5렖@ gA)B8m5m`4 >2huP&eech}5k:E}_TBi_;-9)y  z:,8kQs@dFRz1].:em-(m5];*LuCË!0ʢn`جR巘 r+aF0o6ˮR!NٙMu,/0A!=iOex'cN8u+{W@#+*ˁu"Rl߁孻T{Z>PjW,$P4u h/aPSVmKxX;$M1v&k@X7V5:CZ5z ~y !sπPy67!b4 J\Ykĩ=`=Y`i^D޻; 0!*j/veeSV4RL˚W4s8gASO2'zOG_鏠uxpwVL.%~/뗿pf&TWoxȺFcRAQ͋:Z?37;mwm?%i͘GUZJP`q=W mfӡqJٮ0 )@m욹51@%«(6Ahΐ(+?91 &=Tx{!ǡc6;/?W[! lAT@Wjq޿F EMH7O3ws:0~Z>?Btc}>]&s/j-&N`鮴3_n}$0]O]rI+KYڪ9`=CC3 菕}l5!*`T=- j@(>4s拔_6~任ς2%?"wfe~y0,l=hjSPP>X>n`An3^|S!t¾{,Zwgq܂dKp]詷s ů +Ef 6+}"x.{Bߧ)*BczA}H>cņ22d?MLp:'v 9{`0(L!+¼T̼SŃ1 ]$㠯[߂td10^]\w5~k;RWBkܾy7mBZ9^|+oBlzd0橜@rpG\G D"W5o=wTݵ{Nt{o`R>_N,)"A]73A>πszsfqhw@wi۲eG.>SIPn6} C")KUJ ~ r;X^ 5rk_#}DxG,wMG}HL1-N D>_XEޅOYFMw[j +0Ny<$y[)){6k˨P/4n۹N_2rt3Cd.+Д3S`aP58'w,Wv(SM7<@wU|ܵ_?YuCzlY/k)lM$}Lmۑ j^ZAS&s]{ojwƊk*l6|ۑ7_[ z҉.zp\Z} ./Li":_<^(\=ilȳ4'qSn|m,}x@fϳ+`:jܽKV_߈-m_ }f6Liҹ>~8=f `uKk%h : z,S g!;(>5_;kAڋ̭@5~S2aLO; g*gx<4>.rOg 044!,Xd }w3.K=Ӹu\fHx`P?E%u M6<Fx.Y `Eđ~ˇӗA^VMm M@psPaSo4@Vk%sR&.ҹ,_KLme*D#, d^uO˸G_>4^介&u{j! Gygh[Gv?㠮6Bxrm0dzuȇνxx y?&/MK7x鴻w>&|Woҙt1hwz+~=/vr lKKVze%$o}=Q5y fS"iE=~ЖK#b=GH=kl#ahue)l l-f0䴮y ڡNB揋!&]{x8U*e׀mf(ON9ϗW̹4&zGwN"s.ZqtXyߞ$X›mZw~늨[5ZKᯏ<76Fd,*%ȧPE,iaL኱[`x]Z<)DO/kÖDsw?}{㕭GN}0 v=AƯ#םA;Հ[Y~O(,%wQ60FLhʗ!,<{D2a ([ijьbpz}Z봲BU+^une7y sE.,(e.4FjœؿG0ұ>09~wߜs7=bB ퟣNrRifn.5Wto{zYUk~.} wr3A%]Yr?kAVOp_etY&~J)8{✼W\/MM-91 f$6ں3_;[zhRgx7*xT>І߁{l<اgY ({6[8'sugU艊'vx`nCw#K=-zK!Yg5:4ݓ6rʿ0Np[B5+=2IF&u`yjbx7|bɳUG^rNY|J<ѺS&%qdr?q%,̲/]D=]!ptc8!yf MxJ˺K'V@vQa=󯔋6p2m \3>0`{-w,3 ?/fivxe2_x^u\"7-NTfx D7cض8AѺ5e ~;iW0${1F6/1IRԜpbNYCa1Wuh [D 8e`\h bxpJ-͉|6+}/NG%{Shaõ~;`kpgSp|hňT6#%?NW !;z:#"b>4lpDm'K>= )j(_ozNhy-ԍ^ [k9$-wU7xZ ֩=6nR92w#I*& 4oKw)eO}Ռ3v\2jX)Hφ6͜UĻn2B[+ԓ[S!hy I:m%4&YC~MR64#>gPqߟ&i_fDdn3E䬝mu>`zb|?&ف->9ͅ5նw!3; *h M)~5 u(SoA6᣶*6gA;?&lm>K\s]]HbMw!y[i-MխrAezՠK5h%Q!oQi R]ױkk?L~ "=oͽ!4 c y3?Z@qFd3*5BRg_&?xʅ/\yfܷq{ϊ\ߺOD9,fjiұQ]\.v3 7Ys(ܲ~|vMB˂)TZN^-,{ffC,zV~UwFR ^oz!r%6>kGxJTCmj Y_#/]YiWBՃe S̿TbL > F]іQR7(f97!Q~g0!'ν!`"R.sfo8~}ūYrHL7嶃{FPh^K'Aeܗ@}ʬ+Օ0zEw7 beO&ҿJpԹ 2L~QKpLC.(D57[cEA t|~nsO| ;_ 0s4%渘 $a* 0[p=@XAIڵg#Ke`.pyXB{7+b3xi@TvX h.@虩NpNivڅ³dSƎ2.\<3g XǛ{@h۱Nzt[^]\1 Aˍ E`=)ઍp{y~nAhs"Xwu!kY 0?k^jxH+WȹdDpB#眉&ΧVVBkB_W} omh_@8zڣ3>oRsgHL渔^PpYs⥅@e_R~cC&9DU^}W' ɖOAr. (w O̚ 2^ F`LB.0Zm =s57 3XKn;A뚠mpMɠzoϝojf Y`L<3@[{7Q *X˯\n, CO͞.Ȍ:gg;Lx;pxSs6ΒuG1(e[ ˦vXdt2n?Z+w#?A_S!co_y'5o9 y^7Sje 㽧kvB緶_\ mNAz[v;i }wm Un7BӝY82Q Z @! &oץj85 Rgs\C߶CQ w7ݤOyf8?W0yY`<[0J%=㕁u5{zx FPֿ`4Uyb"V 'Clwc.̶'乆D `E$C`6yG;7?ik^Ъ^vLO^DzM|NS='/U,bѩN[4s4x]ۢ??7ieBbi/=ԺszQ_|\hr 6KՄ!'Avݟ,P(j,4^&tC6˽ {vH8YYu׹iZo>AY55y 0=>u##Z4ޝt}x2{O}A~ w"=uwN*r*4Jg3%9o6 z_{&[c) Tt ߩXɑVO6C$K qh/vX-̳VAHdUrR}`qwX$Cf.u5Hc.o}h;8m Z 5fOe!~_dw짃:\i,Cx(t봟`VSGw>-ߵ1A9v?o%| ,OӸl ȵUiS {YQ^qx%Hvod/jWCpeC"U|Z!SBcQ0Akm-刻'審wϓZrĵCNГo0}guKC] I&<`Ms/0? : I <$qπan&3D2ZfWAy%ڥG^qjfC$go:X6)׬ ܼ>z;VZVp_zxiᄟP |4j49wsqOP2VNX5ئow:%{$Wz!uw,|6WCP2<+gMÃk|- ٨'& ɩ4|0 <6y~ozR#ylb/کؘ\@}a^f;\cWJ02~~k@m3mB#1Ln $?h| oeS= ۀlΉbJ@Bǒ*T[mf ]gOk"z1D/g-#?h9x>~} jOscV][~5g!iřfr4;y sfh@!u0;YOF@"7պz3\:'f߿A54G~ˈ(E.%A{v`>ndKױ<dOwvrY&M[㶣;I]vIj|G5S ?fQB=&z?gW:W@=o4 j[goQtnH|5z5ќՄM5KLEv[(~_*m߼4Ŏpkڀp}jMBg 8kLʃvp/?>UOU2nؿޟ1 : Fvsq,]*lNHLEZW@4qqB"f)U o/OC:zt!li6׃]zԾ; V'&{ogRud)gxOupGTt~WNyۮÒ z8//G|Sw߿ `,esbE-)2tmJ?;PnZG֝va,9+fak6na~Xv2 ;טNp mq0RsLu 9)f^z/t)&_NsΪm;fv^@x%7~c:KwbMҹ[(?nz-݁eDQgi4pV9;{ ӛzXd|oBN;"!^-Q4;7Qʝ?k5UX;1mIH-/Ne"Ĕ2`^vV=>֍;U4րAwdg>@uWs$ Qϧg<_ ֥K~5nˈo]TS:ص/7ZP ٘pJ}7yЃU5^;Y %ZZW;#?{5.d%a[ZޖOi;q +l(es~Ud;Gƅ]u`a- K/Z Qi[m-n%P{"7(wm n p!,N`}bmỷ[!SÇdڝI^*P)):bâ^ZCk/7 da-}7~Ǡ3WSz FMFd/wYiƷO>sɥΝDOߕSlJom({BtOdv:I?[@*gB8lM63[/-Z Gހk} 8q~1uJDuarlYyd8C'\G?fnt #V~A.lPP'5#~!QJ_ vR:D#g+`)l oQZy| 2oNf!0fD1vtPۙJxɟJwq}&W??6|#x; "%7߷s*xseb[!]St=č9/~|ϊ:UTI+{& v}52Wwsf9">HI`טND<񱨂hP7`oT>bv`6>b{k({U[7Bcŭx([%*|gj[#"\@x6膼Xy-D^n7u+xs(^siEG,Lh4)>:) ]x X'cCsWj_ر#EG' y-O0bQ-ww"zD%4x9Gg@y{x?vBcigr- -o/T[#Q,f'kƷE$A8]d1cɫ1Bf_]>Y.*ӨO"~db)8m~s( ]9$y'k!&뼱.kI`n+.ڎH00lxWٳ;# ٹ?U5hz_LViYlvn'Uڠ=.96&Pǹȳ[S>}U.S0.; X/%wPZDx)K.b /ԫthᏙP7$PA7Jw(NiJ -]nn;[ &wty;al3Ԁڄ̟>]wե/\z)yDg^_ꃥS&+^Apm-\#9s摄}rˤ0/f7˜ ]c7jEp׳z, EƳzcVcqR:<-Nݑں26ė[@]fj]/,4c@Y068.1I HB=x^Zoy$o]zEV4s rqttcqw;j)WWV9!Dӣ!(O9o9t+,[XDx]ǜ\0| 39j36FNarYS@18 .L.=uep1A`D<;8" |pknse.鼸k^c٬m_ɏL:0e?/5}k`d ;3v#89K0 XYd0{6hʞ?@ZϪ ʠؘv &oEz,Κ֡WGE1]1.xiK& Ĺ9 YUA֬lL'z&A՗<;En͜;X]w+qe T?7~)y2X#͗(i]Lm#PbY|2x+& yg>c`|sx Ԓ$&U+L*iОc^ZvVzYgo}**(Mǃ_Al"*8 Uʚe<~̍cqc{9v *7-} hlނJr~ԣD~viCRy~:='@o=lGO9I痟 ͊_'Ĺjt/c8id>z6cFl{#ds {ҎHra\ jsuBpvz vL=ϵݱ`Οl RAr;KcD0Df\ZAE?m_ǰ҉L.Daurap4D,ӗτﳉsB?lKދx[;=Zwqm/Q=[_3ۮ%КSqK\v`n76O|O!ń+sԛmK5꧊tfo\yԜ7|N fgŰ v *@+YIҼQ@ + 4tq%_H=zgL S-vOݢC;/MX4.t/S漃Gu~br;>O÷)lՄc !\wDZrlv,ޒ} 2ePl5nvȮ5U x 3ȏiW2b>uM4x!:Ϥ+@QςM@{jvRCVMZTo;bɎ;29^܌*5>(\6;.Kz(C/ k ??kh;#&|ߟT;SHnTqo S:|7nLu%r_l!NxF8*Ixɿקlqw7^= H0@WuIǗvF"= = Aѽ牜U`,~ Yy[DyO\`L; YK,fª!E̺}FFqjܦ=>ZC-ږ_1HR23#oޡDsj8AZfpYY>hII#AO`xZCZZNBʽA-p{A?}G&/s\A.oŇ:An,Ck־bp^\2X 9+X9/h9?{~~77+iuUs6@My-2/rFȆ/c\ ֚%RǃԚViKҤd / ms+U`q<ᛖ`Ek' KbZ%qn TT5K@2{mqk= ڻ93{z>o9軾hE۩U*Qj]3P.>\9IJD*рo͔uyޒ'y]?-Kv%Mv"]`F]Ϲ2wD{="w:Ȍ6IJ6@P2ћ6޽]k c[Amˍ](:z⌳mP'iNxܛNy%+ctc0"|B;E51s~Dxpjߴie0D fNS'@kj8q4l[Dž}æ5 ϻSJcZ|?cPמee&C}'in%~3\˛Erg' g 3/^I|yfڄL+O|+3|ij8H. Osn #jo*A8>qwH+"[Mn2}ztW^ |9"x/eEs~ם^r"f4^s2L5fZ.˵z9N]lo)*ֲ>) 0wѴ%ԴV%AHC|_M@d/25Hb`{HH:Aߗz8lM|}6"Ü5L<NE3IkW&Yk?[w/{/GZpRxŗKCi@Ge;Xl*cK^x8} hJlprH:n>ܸOWBʐo^j4"w.w+P ?UPg\(Mv#JM rZ`trA̕]/≠x "dt.jwKcrmN7$[~ O3F_:9܌ `_J~u-P/ڀ*fc{e/?=% 2B8J!uUF\5ǶE*Y+͵Gy&GߝN(ġiV;wgk41YVT1NJvvs'b`nL-͟z jrQIPM5⛫? GM+Vsj';.RQܙJF'&yARџ6K'DU`*u\Pwe ZsK@x '$/3tPWfB90N^8[ l˨AO7w+h ^T=t^|*:& ?]|D%>U7'+qέP SV'W3ȧVѶ'ѣZę Bs%AQsL]2>PXCsH vfN2I -?^ȝy!]gcKΩ@#S8n[\ߔдG>Dod$XcU}S} *BI9*Gy8IhV:6-I2iG?:C&)p?F13XL7,֚w(ӎ֓ ;vh'&NpurEkN8 !ͬA/m'ib%=2>a s7 u5 ]QwM% '\=Jy%;l4r qł=Ly QX!'Ne*6x0֞߿? 8?M8 A._@_4 7ouwF7)53 > +JAP/xiDS(Z Y9Hpj'my5U'tMۺ VG}DNM3[?xqz~q4 o}Kx]| OS`spR7M>]j#9QZMov, htݳ_Β@[@+ފ޻@Khvҍ/!=kIbhzF䧠x%R?]&]vbduA?Z[ P83zrǃ̊ m;lZeTԆu\[}>me]]k^ܐ!0z焂m=\0|+Ð-2O OOǶS#o κ4N3QbQE')}!Z;xyt;KS새;}n;,T\hVl9yƍ9iasS;;?S1 ,k $C7 >jwvѶ~[gT\ v ܔc ^Fh B]E{<AS!h}l!1/4ȃʚ r!fs:śTׁI2:ۼ\` րɜLNg1s 3s^Tm 1.5^!vۅ4U y@ߖ]ٴ%dd$ zӠ 4ċ2ȏzKRϿbe$Vh~137gnL^Mo#rVPpt -7" IC:KLqA{fos$UMӌ}X/`WV?.z|؍ O\ ,o4y-u_oEII \\Q?ź2в⾵B5317∈kC7^,ĐY_joy7 Q~I]ZRʭ`͈}/ 탷AR<~mp SnhsϘ`utЕ`$lOgPI,V|就hzk*GkljmrȒzH7Y>$.֨ "ڍ,gM@+i+#/%mtp&1wS$ KiZ; (Љee1Pӿ]*:ʘCok=:"g7 ?H>?^.] s'iyn1h@Soޡl), ٥e]_Cm*%AT8<'}QߩsH'i1m!Zׁ½kPM9`OnSSh';A:qƝ:ִ|_FGBdex7LnoMVl7ӈ7V Ɣ_kY`益;Ʋzgb*Z?ufKy[z,[!Ij^wP GMtiRa1=O tR5wJ^bSC+eD"LJӽ0Ig'q|ߞːuLs{Ã\BՓv5{Ua+eR߉Gwko3/v~tcr ̕{^ si@r%-} K[6&N00x>/j۲ MU]\<2\Pi ĕ9!ؿ_t2ۣ}4g:OUzP[O zQ:>?Lo&H`X2ViM0f`_h` 9O ܕ=qײ1Y-:`%lf7k!q]3'R[!{> xut^ۘ e;.2z=١y(Wm yBx6H"I35umaK^_BsۭxHO/z2 ܀2-7tB"̧'?LjHl1A3^ޟճwqrn"Wᥗ1}q "g2恛Zq{9s?WY >c #=^4f޽ٻނBZtk;׎~=57j׷~? ڤU^W9ysUK06xWc ~t{kuhW.wde.G>o!}liKk>GoǕB|tFֽ3j2q97\V X+ǝ ZMZ%0r6jvG&O gfܺY|}YN\߷̌U?Z!2}j ,}ܤ kUdΠȾl#~usk@Wy'^:qnh53kqvPtݎC2s֡3W ikqj«~ U]gQ1GԆC7,Q2#bٗ?,b69͟~ew]̼W/ғ۩^Z|~x.G? ~h3D_OtN@P'\vZ8k`Lz5sG=|v%Dv4Iy-4k9g套ڲMn)0;ǞAHg}UH{g;J|y@'KGIS^WC$'C3 "C5l7 >=vUHŚSR jΡ@u-\[ Te^Q^5nǸ#~ڝOu&= . ^^7)X_E@4qu_ |^V9B`e+hOr/ ͬnPߵzGA;ߥ%sγ;)+Og Pѧ`=ᄋR6 ;qu˰m 1&P#o:-$v`7[bhWBr7ɷcDE)`Ke uP;:}?~x\!|嘾cOoNrY}G9ǼD\*oXS-.dywhDo{f}=<ܦt @uEKO3 [}|5\'XX<@ctC^2 z +֮p{|<WwE[ r]WVwĕ֐ƚs31 SNݨN= VvՎF=m] ni/\&9UN;Pt_=\%nTciM&so?Ă;hRUMԞA͜B8<SUK&Bi1n8RSD`>Z|v%huMn{25kPJV&8rv(w| Xa H\aLp.TWDw*vYו~m7ݡ:)jA;:6kUق2# [i [)xVA'xRi154)z`\iw\-d찀n_PS W[C6_ !Z:ƈ ƚӿ+BUcn0f:RMx1B "iڣ(E+Nfpph97;4Ư# @y(ny-* 4Y" d`7ǘ/>kh'!~cx |OVxb[o.xѪ)֏f20-/EU#w!%C`?)T|Im,'$ s=ςL¼Phib}*Sz!&LדHq /~@{cVE o,Mo.wԏ&ݼ pF6"U[C-y 8]'Ćx|Q@[.'ʣ^ J)[1 ;K4Z; ' :zvkq\d'| MHSIrX._;ShUl [n<4KLxnPU݀y쟘{1቏~3>i.U;fn:7`k g";'] * N A :(w҈D֧{$fMKwo$m[D>^,ى,/ָ|,n^wT&{bbH~LJj/P'fJ!({tH 6ؼ$vxI%9=`l9.9m;fTuk#nFyJ-S.KG B)8OUK@,:8?F@t.Or[ ޷Th-<(y{ӲA6v|6iێ!>,}tDg篩8>N) @@ ybc)( \`7p70nX:BB3/{a7[BnKZ3A➛>/m*]i遼f|xǷvPyW IW#ލ- nD+=.)ՉCz8ז%L'Hǰ(W/2I`%THQ_uwf15X?QLdǹ/lz(X *ĜFƮa`z>Uj? +7C~9sxpǿ @!J+pYFp2TvTĀ #b#;վ*7w z]y!}}̎>u?b2v';Y7 ²ܷގLT ܽkPQ1 ў=ʍܠ8W;A N*xaO5(,-y jYQ'/T%Vcx|SGfN$N뜀nܗ8 8{濊:g]Ċzvfڃ`hH{Od_,Qp_QxJV>.%x+46uҷ^4-[ (w 򱥆Ӛ?Ml [N2&kuҘsH1UOeҦ0w%]SfOci}iK_>/͠tG;P?R!8-nzPw;đu!)POXp43_W`Uxlts:{syhn9S蕂M~s֨Imy7OC~bG.&v*ϡ~D&^NPw)m^hX>ƭS''X4+L9=!ՃS'Hǫ`Jy"C|$S7#zF~-`5սg酤{ fpo8H[|"|.qkP;v֠“=(ǯoQ'rbe8$9<&VDzD VyÖ+`m@^/bn̋24H1ԃ4`K3Hn$v5φyn NQAs&oNJcp7,g7 k:uׅ8:вj*L;2 e7]Ȋ]P?;s!4:w}ᅩE ᜇɠ=?!~~DTm#5C "Õ-{ + OCg6ޛ7m?AoZ"Jc3ad4 y_ `:1AO`[PӝK:)=VҝwG VQ A%SD+K_ bMui/K>'kʴLbcnt#][ק틯30V+<>'ʠ^'Ƃiup50O[O47\7hK68~[mEl|f/l%RP|vh:r}Plc8D7f+I>?nTו܁狟˥&t{(MG G7GКK @1khԒ2lI.o;Om'qEp„CuAR]#dq+^vxYU/P'̼e?B)V~ljX^^BLw9Bdjnss&LvQr󾄋zߟ OCO;Cc`;Fy`^7Fܯ+M}}pmknrO?ꚫkU=w,_ E_y? bTA}A }E:^~58l ++۟Ĺ]Eni@+HZ6ew]2s?_:7Y#6K| @!WK"=d#׆$Ud;geLI=V}Nfe|iwYs8v8bB>v8p$zۿ󯡺8Fl 䵍&&BѻSq6@JׇĞMq_=Nw~sܖ@6qA'Afq*7${f$Aj#|{ZP[f4 e vbiVp׼bȜOʝ`&_ߨ{t*'|C^zbN{ ֯m Jb@TnQ1BQ[݅go\\aj'ֺzu/%i Aq6{~U Nyqh@Pli>Iw( l"n 5*iqEv=P|YdlHjeP1vH_.xrA\7aBo{e2N2,326&&(1?@Vy7J+;y _5>ߛ k=žh'oƁ׻Uw!\N @=gwr2>1?[n]j|o ǝk]KIaPPhí'@ۧěZ}MdΪ;>Oț^Y#oOF=4@qoM_@knmACJu|l ԷЁr¨Yl]_v[GuA2{}[@xtJhU1mb7yɾ .ޑA!x%ٯVBd0MOKb{>} W^5#=t}*hL,Q_Sk_xj4 ?о(庶Z_MIN+@@Żs3B4!4芭);fj"n_F7}hCnډM[ ^zo5(?,ra Z5:3aEs?rٷ1G4燂ΖDɀY8xwּ{:ffg]g?{ nJva'ouV' M_ASn U n<6{k_}YOp_P9Gu|OZr*Iwh }qgducP4l_{r ^X B+:F.o!CU'=Gϓ+?N+ >3=Nܟ^gmDF@Zmjw[Zߵ5{ƷOY4]V^'ħ=M]"|[65^ۯ!+kpy,Ȉli膓߀=]&z2|p/R?nk^M[<-W}V X,'$6M b.֟839_6Z ڻ;zwrײv톀R;u7<[!/Mt/!V5+. dJh o = ~K}1Q 7Bfy@OADJn׻$LiAwFud5;N]KV2VQͬPUAu}͏#*7 ^>ɬ飾5'NԂգtYGoޔ whɃZ5js+{F=&hTjH}]OA 1 Udea ]IdH&}r%n߅^=l}UiT7smG6\챫e~u BUT,՗)ϯȾz^d2OYmF'~QSva4pIv͉g_{ƞA O8OvXfk#-nh_i>[6ߋ7dRU:Je@̐=&y\a&'R݉Lu9T-dL}JSnhS'iւW=bA3!cJ^}t6]ߨN}vX7V߯όE !-lSſGe|a>m^z-.ۗx}PvXUt,!o h}]{@PtT QgOL].ӏn|N-}[6 wM=>9en2: |&Nm}<[kp}J zTK[P{UZ#_Ͻ#=|Gd!Lچ0ز[WA[#x[MY`8.x[2ժ p(ڼx+{qI2v1NEo cQS*G/сN!tQH'4'ڍa໘27QwPv2X^ Bۮ[x0} sqDXC/P~K eN=2O~,^:8SGz1x?z)`TjJvFw 'הimc/T; _ɀG]O͕X|w~t)zu]aT徬]k4ï&®Ėav^18* Jub$WoV]:SycG rj>+x4Û~G  l) C5xaP6zܴQVPq{# gj8L:$q{(xX}Ȓ䟻ҪKK.jIV<<5Ecpc6 ;U"SP9~ޚ%cAGZƅ{=o/ @2O߳ǃMKcv(C_@鷥fg.Yُcx >5&KxGiBdZz6{%xsi "Axc9i-zx-hYV{.,faUg}fhgO-[W4mT ^Nqc<ڃfj_޼aƨ@)&L@tɍ{h5Swi@\|MAi}3?X K4p 2 蒗@>gG^ 'dϚdJ<(f_OES2TٟfJNj Y1rakeAu-@n{Ժ#u0AP/ +{HХ.\?Y;,6d yh,ԥpcKgE濍/bb)iYlq.\pc[PrKAj?hۍ 4՗vվF}V_JwrIm w<յ΃[r||ٯR}ap9ёZ-EcEЛ^_xe3uc@8z~&$FيBe?٪o$%tAJ1 sWʂ&fy.wLovq+~lYS77BPן^)ֿV?Y Ur0^`g=-kEc/£+Ndȡ֓jR씡|램}vJ,.:(] h~T0 wR':WJ?rsgw)}6LSwmy٧! m$Fhug8_=v}o5TU9Q&H~1!y^zظfY S5]<<΍hmʪ,~m_ۗ=nxk).t\d5;4hdŕ'-xQ=:zk(֭T2[oMr=8 FϪw=n2𓅅,. ڇ_6c P칓eRQrIS-%{$fTs?;LP* 3' ^3{r w\|7'g,ޣ)=(>lod!ʥ -[|_ݾ|m_S#nOov5%%5f+v[gAm:xtVF-Ϩ%[4 d-^6g,@জ5cMo> -}g}dt_x]}y mȃ/GG\Z}~Y_l,T|t6CժR)A _hIAZIX5ieTfG뗚fŭ ~z! ϻ k2-q6xYW4TyK>At1[N^btoMA͕6Γ6WU2+σ#YPXށ_"+_O%AqrߴA#;A>pf/gB=~=(u*C{HA '1l_oub|2ۭRm2f⅁*U;=Ϳ̘> ;LCzRwk<7#u^Mj-Lmzn:Z [W@p@y:ۙr֠-RѧLB"zg/M"cV7х{O #K/5/;Zo'3߽kz`P7i:Ҵ@5t[wOK$ ;# [c:fY}ªPlߙNMz-/_+7_vJ@=$}޹WV2dqzW8!ځxuk~BbF^{lvVJ~rE\p~be]`^"_}_&={>p҅\w}oJ=?9u֭U@8_w4g} @C/ٰI8֡N5 ӧ4dqZb#d-CIs堮5pʾ @aL=MSN|\?!!F5XK\]?OԛrY}ew#v9> >}+Myyh@Ə@Zf^=IP}XNPٻؽL(á)g ?]1a(Rޞ;5gE'~':o;%qaqrvI׿&[[li@V)xK@Y ޳wIdW~)*/\f׭‚Zn>ڛl\ M@^|kmPZ~9;HeR\u&8(8-Ȼ6qcjZ 頶/ˀRKͭј۳)׵lPtV4Z8ۯO4[_êOgiyVśnCM _~]G#:NMɳo+ -X T5V$ʕ`~WnUroN@`IA5v˗ AQJ?5WKA}LL>AXP {svBαS)p*7.p/VrP6?x|S\ |[u{}R~vTƂvs(?[ \ £u@zN܉!SW ] !*R#AѮ;xSfKjHG^?*ߟ> 2/ޱ;oD}1GWa,N_۳C7:V | qQӁC= MJ˰)/A;g῏l| ?[u> T] /Blg?:gj6Ax',ᄎ-( 7{qccN_ a}hf[3GE0]Z.bfx^{U%_=ӫZ};OiW pK=7baFiP=Q){#nP -u/ُg A1. w[ af\xC߿( p toz |{@ڃ_tnvswPwk6oc/3 Ϯ Ew.~>>-x:?%|I=^#:sN|aTt P{Xa8 g}Wk(q[ʗuqƌ'5N} ݑ#,0 T:4;y;uPqPGQvfZŬGu@]&@]M\{rYǓ?ctoA'eq}d\ۑڦ`=̞0u)(){P̋0 (( >훜<|pbx'^|e dW fu$k[& C\me,ϒ] 紑 (ݵȅOzt^y[{nߛ ªgC'/bx~}5rksO/P u^Z}4nˠ>Zݽ[ P1eAZhя@yc#{owގbxENoKjϱ@gdrXcx.͸{)A'wu\s][cNX^~rKw3}PNoѯ h=rFTj5j9?&yWqb^"=vtR+M G'.z.>f<^{BAV&vrU/=CloH5V{m̎ʃi۠yT٠lxul閠vnw{^fڏ)ܫywҮ ګ ֽ"d=jX ?S/!(wF뮀{ZWC'n:;ojjZ;3ʩb͗k=h],IK1i@ ໫2AWÝ{OKdl)]c'71j P䆎Ún.\ӎz/[<=, v9?߬rw߁NMǡ껅[4*H8q8&oe{׬[̣N h:L wH4[r6?O54LJ'䫖UI@=w|?PK7d["%<hvyN-ZU?A^nѥMxelY<ڤR|w:i޸ -yiEjRe7xFZE O@^Z[rAyxGD  jꝛ;ʂwdH 44[e|͉v g?Zz ]tKP?h<&ao? ;*Uy3K^TGZlU2 L`*t>NTJߞnr daqJhk{XB!vMC6qU:ee=Ii~ԜSq]V2=׃Ii/;]1@O6eK,l{ԗVEWN)Z<3E&MKsՇ9] lV4xp|۝ 6Ȟ3Z^ +ֈ0}`vМ[}f,9mMtPGA4RuhH4 ޲g㟃o#^ݙVwWJw ?7];)6ZxF3 &. o>?!Ȏ)3u?{d@:SV]s!(©l$˼xPl޳1/{W|skո@(w۠\?rx{:p꟨bXܳnY<}Տ[RLTLS>W[!#44rƃsOB/ ާ/ߞ]Y%b0?~Il0||PmyohZy{$ BVVO=<N m-w)Ac~^h!zf1/}ؾ:ٵܴr+8E(k+h𖢣]>@`U0{jݶǥ} пVw+ftt_/ygԓN3tOVJx#Jy_ލX\~[n]Ⱥ˿ -<]z᎓>ׂGT4tix;cA^萢d'ݒCh [ -9a#nqn/g@d.fܝ{ [$ ||+OU. qsk,[ ~?#ڗo)x-4d瞻t{c{[O( Kjk ^iԏ@Pg5!xA}pXgPg7Pxҹs@Yi^|=[ߖ. X1gnqcfG/eA~ج4njnwW ~A5' WB^:US4 OڗxH7s=eɲmA^c|[ۗ:Yw ^[fAvJuh&ܓMqYNuesjdU+{f;Ax̶Y@a+Y{}}4H܄oӶ3_EG] c:ҩ#FY Aς=ۚu\im5iewz0n5x=z_ p֮G=Jnt{`$hׯpxs9jQ3hG7e@SɠU7Ry;mq/h\ݝ9JYnNavql# owHeXxlM+i|~ښ[>y #fw;{AAR`5ƴ\}A/X AMR:m"1)'S灡jʃ7M*TXB .Th~/`.NR%[t8z_!Kp&md5:?w7,F[~9鹙36O&KO>/Ve;;8`Y9l6s]]K4KbCynF#|K6-ٍ#zyE0;3x9`Cl-#dDchx,.zZՂ~eECluBw]-v Ό$tFfNW2]V5![Čo N(a0sh{q͌~*nv6 Ft,Y1dFCDz1ů;v^IDdž;\<f?g YlA+±25CMJF8vo(Y(Hp~m-4ɼςقLf xڍV(6u&fVt; q;ah{fnv436Glwv.Lavh=x .c,hM17C&2NJَ͆V)gg#fFnh6Vx uؐr FaJ2p $<z"Hy4kA`s;ff 08wH Ev Mcf.q(b vlRaFUb49B2C a$asW `|"Z(sf40lᔭ 'V %MQpfdZxzteF;3}f0)EI^bj?x`!l~bbmx-6zM3iV["2>8Fc΂- ?I G,) Rld#XHbn7*DVqD8Fɾ2sX2qn$Fčyi|\ĿMx,(f y%0ݱ%Ǎhd!ɈGǂn|nY/"")3l:܄OxVU9YVčpfbm"3`%ۑFrvp`cm(llgn7$'%n< F;$fnp8a |m:Yqv'D0Ն{v݄-UVÚ2Vnptfa{cD C pLvdldo<# fg_<& qQ~F™#vs KmPp<9+cۇȑ+ɇIZ\@0'16gJ~l\#;6Hтi\ ٍdxZQ6nلw [>; Vm0vbSs$Jqَ48W l-8`q(r\68ԲImjw!HB8vy͌)3h+cWN%5F" $hj$h8S |J:F?9 ֌Cu]q8㠈`,b|P$:v^q6-B {Ǝg&yA egƇwGuϳ/w>ha©/΂n1+b*prHI61rahfx[z0*g&Y^ÅEd W DŽohŠO9hBVCs;Vg#P# ''o KpTfr1;N#Њ&OB"r,tll4MN9N8rę6Lf9|ᾅ,xș6#6FjLY mgRJ`4sKZ0沓B ;ⵖt$4i%JE*g3$(!IF,8o }YCR#N?o"F.V#6c<57vRo?8h2qLLlwL=9h5mf|8;j#;̰ALMl5# #̹Z°۩ cl. ${L8,f0E _lc) $4 YGR@t!9 Hh5S86zswjۜĂ `-F+ +8G BA*wfV] z-?^?fEsx-?6?\`r- y޽Z 7WØ}[@[@K];1! ;q'-b-cv (ɏt)M)RMyBSG(g' lD  -`eJL7U,s4A$)t&RႯK<G"q,{Dq<=aɑSDzi1MCУ1Axr2$HQʌ\%8E-"+R !Xv`#t8LYVcbBZ9~Vb_%iv&DI{JOzE(k^%+ZHPTfKXTwHaВjL& ,W<R$NkD8[OixI"ͣ*QN\!GSV 9ѹ5N)R0e#8}5v¨*P=%]|T+bKH/eC/ $"oIwh%-<ԋ 8+ (ZtTaBRpRE0Ls H4mH*MzK(لpRE4, 笸dYh6-%1V=ՄH .pEMNtKDILrE8,F+D숋 (m a^"U!*=IrLSZDlGTB W*kNF|8V: ! q΄ӊq~υߺ(l4ER $9-XWaD]'9IR$.+b.We)"=ƒk 3ZNZ~r:R")"^A4\6p R:\0g.],ET^9:bBXf͉K ~L\bƈbݦL+̾pQb|Q= !iÚ$eq6J H_2JD'촎KL:#tbC8/> H JinXn ruKt8FU*q %Rt 6R=suNX?*+M]DҪ(lH0m*3J((eCyS#T\UQ^k3d8W$ғzǤėhBd{.*+J- SHDDtT"14sUz3˦9jDFd Å*H: ɋ4&\BDd 됊D.ƦHFdԠX'!RXIJ"m9@#:\p^Ц"o\.'B*DYCp撌Nº(F=V]MiK%<%]uFKJ.ˑ8mjTu \ԱR>m3B)dJcv&sR( wCEZD-(*}"W%Ēs"H7Jb;\f,+DZ\LH<0 "lтYZC5L\ZciH2N(U*Bb^..PZX"tZhu]tVq!w˯\tK@BTATC5[ĭZD$vQ#.ǥ튗O{7J>]j 3N;҃G$ NUI&9ĚQM+Pt%BJ|HG&XkRR"\D7z⇊t ]IGReuF E+vE h =}sDj7VZLsibH$Ct]l>()juL,I]ĒDx! .8G,!nB{.Z`Iq=FHQ4,C{舅iekMDD2\Xn hG7q< wm]]#]+&*t{ 8pÁoX" J{[bQ}ܪL"jNI:*"j6X*jc&ǑcDS$ hq?m{9\$=רL nD\{gW] nq$M¤c;qᖨL*"?I D3$-ɬv*-m]M a&˹&QBj~K~==UP-({S{Tem{d  dp.NK]xp/T)q&Ѹ3O"OV(T4fROTS/NAMESPACE0000644000175000017500000000070214136051433012411 0ustar nileshnilesh## Export functions from the ROTS-package export(ROTS, print.ROTS, summary.ROTS, plot.ROTS) S3method(plot, ROTS) ## Load shared library ROTS.so/dll useDynLib(ROTS) importFrom(Rcpp, evalCpp) importFrom(stats, median, na.omit, heatmap, loess.smooth, prcomp) importFrom(utils, setTxtProgressBar, txtProgressBar) importFrom(graphics, plot, points, abline, legend, lines, text, hist, par) importFrom(grDevices, colorRampPalette) importFrom(methods, is)