[Gmm-commits] r49 - in pkg/gmm: . R inst/doc

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Thu Apr 12 18:58:13 CEST 2012


Author: chaussep
Date: 2012-04-12 18:58:12 +0200 (Thu, 12 Apr 2012)
New Revision: 49

Modified:
   pkg/gmm/DESCRIPTION
   pkg/gmm/NEWS
   pkg/gmm/R/FinRes.R
   pkg/gmm/R/Methods.gmm.R
   pkg/gmm/R/getModel.R
   pkg/gmm/R/gmm.R
   pkg/gmm/R/momentEstim.R
   pkg/gmm/inst/doc/gmm_with_R.pdf
Log:
Cleaned the codes

Modified: pkg/gmm/DESCRIPTION
===================================================================
--- pkg/gmm/DESCRIPTION	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/DESCRIPTION	2012-04-12 16:58:12 UTC (rev 49)
@@ -1,6 +1,6 @@
 Package: gmm
 Version: 1.4-0
-Date: 2011-11-30
+Date: 2012-04-12
 Title: Generalized Method of Moments and Generalized Empirical
         Likelihood
 Author: Pierre Chausse <pchausse at uwaterloo.ca>

Modified: pkg/gmm/NEWS
===================================================================
--- pkg/gmm/NEWS	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/NEWS	2012-04-12 16:58:12 UTC (rev 49)
@@ -25,6 +25,8 @@
   and avoid NA's when computing log(1-lambda'gt).
 o Sometimes, problems happen in GMM estimation because of the bad first step estimates used to compute the weighting matrix.
   The first step estimates are usually computed using the identity matrix. The vector is now printed for better control. 
+o Cleaned the codes. The data are in object$dat and we can get the moment matrix by calling gt <- object$g(object$coef,object$dat) for linear and 
+  non-linear models, where object is of class gmm.
 
 Changes in version 1.3-8
 

Modified: pkg/gmm/R/FinRes.R
===================================================================
--- pkg/gmm/R/FinRes.R	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/R/FinRes.R	2012-04-12 16:58:12 UTC (rev 49)
@@ -21,23 +21,12 @@
 FinRes.baseGmm.res <- function(z, object, ...)
   {
   P <- object
-  if(!is.null(object$gform))
-    {
-    dat <- z$dat
-    x <- dat$x
-    }
-  else
-    x <- z$x
+  x <- z$dat
+  n <- ifelse(is.null(nrow(z$gt)),length(z$gt),nrow(z$gt))
 
-  n <- z$n
-  gradv <- z$gradv
+  G <- z$G
   iid <- z$iid 	
 
-  if(P$gradvf)
-    G <- gradv(z$coefficients, x)
-  else
-    G <- gradv(z$coefficients, x, g = object$g)
-
   if (P$vcov == "iid")
     {
     v <- iid(z$coefficients, x, z$g, P$centeredVcov)
@@ -94,7 +83,6 @@
   dimnames(z$vcov) <- list(names(z$coefficients), names(z$coefficients))
   z$call <- P$call
   
-  
   if(is.null(P$weightsMatrix))
     {
     if(P$wmatrix == "ident")
@@ -112,7 +100,6 @@
   z$weightsMatrix <- P$weightsMatrix
   z$infVcov <- P$vcov
   z$infWmatrix <- P$wmatrix
-  z$G <- G
   z$met <- P$type
   z$kernel <- P$kernel
   z$coefficients <- c(z$coefficients)

Modified: pkg/gmm/R/Methods.gmm.R
===================================================================
--- pkg/gmm/R/Methods.gmm.R	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/R/Methods.gmm.R	2012-04-12 16:58:12 UTC (rev 49)
@@ -170,7 +170,7 @@
 	{
 	if (is(x, "function"))
 		{
-		gmat <- x(y, theta)
+		gmat <- x(theta, y)
 		return(gmat)
 		}
 	else

Modified: pkg/gmm/R/getModel.R
===================================================================
--- pkg/gmm/R/getModel.R	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/R/getModel.R	2012-04-12 16:58:12 UTC (rev 49)
@@ -42,8 +42,12 @@
       object$type <- "One step GMM with fixed W"
       }
     object$gform<-object$g
-    g <- function(tet, x, ny = dat$ny, nh = dat$nh, k = dat$k)
+    g <- function(tet, dat)
       {
+      x <- dat$x
+      ny <- dat$ny
+      nh <- dat$nh
+      k <- dat$k
       tet <- matrix(tet, ncol = k)
       e <- x[,1:ny] - x[,(ny+1):(ny+k)] %*% t(tet)
       gt <- e * x[, ny+k+1]
@@ -51,14 +55,17 @@
 	for (i in 2:nh)	  gt <- cbind(gt, e*x[, (ny+k+i)])
       return(gt)
       }
-    gradv <- function(tet, x, ny = dat$ny, nh = dat$nh, k = dat$k, g = NULL)
+    gradv <- function(dat)
       {
-      a <- g
-      tet <- NULL
+      x <- dat$x
+      ny <- dat$ny
+      nh <- dat$nh
+      k <- dat$k
       dgb <- -(t(x[,(ny+k+1):(ny+k+nh)]) %*% x[,(ny+1):(ny+k)]) %x% diag(rep(1,ny))/nrow(x)
       return(dgb)
       }
     object$g <- g
+    object$x <- dat
     }
   else
     {
@@ -85,7 +92,7 @@
     {
     gt <- g(thet,x)
     if(centeredVcov) gt <- residuals(lm(gt~1))
-    n <- ifelse(is.null(nrow(x)), length(x), nrow(x))
+    n <- ifelse(is.null(nrow(gt)), length(gt), nrow(gt))
     v <- crossprod(gt,gt)/n
     return(v)
     }

Modified: pkg/gmm/R/gmm.R
===================================================================
--- pkg/gmm/R/gmm.R	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/R/gmm.R	2012-04-12 16:58:12 UTC (rev 49)
@@ -125,8 +125,12 @@
 }
 
 
-.tetlin <- function(x, w, ny, nh, k, gradv, g, type=NULL, inv=TRUE)
+.tetlin <- function(dat, w, gradv, g, type=NULL, inv=TRUE)
   {
+  x <- dat$x
+  ny <- dat$ny
+  nh <- dat$nh
+  k <- dat$k
   n <- nrow(x)
   ym <- as.matrix(x[,1:ny])
   xm <- as.matrix(x[,(ny+1):(ny+k)])
@@ -147,7 +151,7 @@
   	     else
   	     {
   	     	par <- c(t(par))	
-  	     	g2sls <- g(par, x, ny, nh, k)
+  	     	g2sls <- g(par, dat)
   	     	w <- crossprod(g2sls)/n
   	     	gb <- matrix(colMeans(g2sls), ncol = 1)
    			value <- crossprod(gb, solve(w, gb)) 
@@ -168,7 +172,7 @@
 	whx <- w%*% (crossprod(hm, xm) %x% diag(ny))
 	wvecyh <- w%*%matrix(crossprod(ym, hm), ncol = 1)
         }
-     dg <- gradv(NULL,x, ny, nh, k)
+     dg <- gradv(dat)
      xx <- crossprod(dg, whx)
      par <- solve(xx, crossprod(dg, wvecyh))
      }
@@ -185,7 +189,7 @@
 	else
 		par <- solve(crossprod(hm,xm),crossprod(hm,ym))  	}
 	}
-  gb <- matrix(colSums(g(par, x, ny, nh, k))/n, ncol = 1)
+  gb <- matrix(colSums(g(par, dat))/n, ncol = 1)
   if(inv)
 	  value <- crossprod(gb, solve(w, gb)) 
   else

Modified: pkg/gmm/R/momentEstim.R
===================================================================
--- pkg/gmm/R/momentEstim.R	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/R/momentEstim.R	2012-04-12 16:58:12 UTC (rev 49)
@@ -148,12 +148,17 @@
   else
     names(z$coefficients) <- names(P$t0)
 
-  z$x <- P$x
+  if(P$gradvf)
+    z$G <- P$gradv(z$coefficients, P$x)
+  else
+    z$G <- P$gradv(z$coefficients, P$x, g = P$g)
+
+  z$dat <- P$x
   z$gt <- P$g(z$coefficients, P$x)
   z$gradv <- P$gradv
   z$iid <- P$iid
   z$g <- P$g
- 
+
   class(z) <- paste(P$TypeGmm,".res",sep="")	
   return(z)
   }
@@ -162,10 +167,7 @@
   {
   P <- object
   g <- P$g
-  if (is.null(P$data))
-    	dat <- getDat(P$gform, P$x)
-    else
-    	dat <- getDat(P$gform, P$x, P$data)
+  dat <- P$x
   
   x <- dat$x
   k <- dat$k
@@ -177,42 +179,40 @@
   if (q == k2 | P$wmatrix == "ident")
     {
     w <- diag(q)
-    res <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, P$g)
+    res <- .tetlin(dat, w, P$gradv, P$g)
     z = list(coefficients = res$par, objective = res$value, dat = dat, k = k, k2 = k2, n = n, q = q, df = df)
     }
   else
     {
     if (P$vcov == "iid")
     	{
-      res2 <- .tetlin(x, diag(q), dat$ny, dat$nh, dat$k, P$gradv, P$g, type="2sls")
+      res2 <- .tetlin(dat, diag(q), P$gradv, P$g, type="2sls")
       initTheta <- NULL
       }
     if (P$vcov == "HAC")
       {
-      res1 <- .tetlin(x, diag(q), dat$ny, dat$nh, dat$k, P$gradv, P$g, type="2sls")
+      res1 <- .tetlin(dat, diag(q), P$gradv, P$g, type="2sls")
       initTheta <- res1$par
       if(P$centeredVcov) 
-       	 gmat <- lm(g(res1$par, x)~1)
+       	 gmat <- lm(g(res1$par, dat)~1)
       else
         {
-        gmat <- g(res1$par, x)
+        gmat <- g(res1$par, dat)
         class(gmat) <- "gmmFct"
         }
       w <- kernHAC(gmat, kernel = P$kernel, bw = P$bw, prewhite = P$prewhite, 
 		ar.method = P$ar.method, approx = P$approx, tol = P$tol, sandwich = FALSE)
-	 res2 <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g)
+	 res2 <- .tetlin(dat, w, P$gradv, g)
       }
-    
     z = list(coefficients = res2$par, objective = res2$value, dat=dat, k=k, k2=k2, n=n, q=q, df=df, initTheta = initTheta)	
     }
-  z$gt <- g(z$coefficients, x) 
+  z$gt <- g(z$coefficients, dat) 
   b <- z$coefficients
   y <- as.matrix(model.response(dat$mf, "numeric"))
   ny <- dat$ny
   b <- t(matrix(b, nrow = dat$ny))
   x <- as.matrix(model.matrix(dat$mt, dat$mf, NULL))
   yhat <- x %*% b
-  z$dat <- dat 
   z$fitted.values <- yhat	
   z$residuals <- y - yhat	
   z$terms <- dat$mt
@@ -222,6 +222,8 @@
   z$gradv <- P$gradv
   z$iid <- P$iid
   z$g <- P$g
+  z$G <- P$gradv(dat) 
+
   
   namex <- colnames(dat$x[,(dat$ny+1):(dat$ny+dat$k)])
   nameh <- colnames(dat$x[,(dat$ny+dat$k+1):(dat$ny+dat$k+dat$nh)])
@@ -249,11 +251,8 @@
   {
   P <- object
   g <- P$g
-  if (is.null(P$data))
-    	dat <- getDat(P$gform, P$x)
-    else
-    	dat <- getDat(P$gform, P$x, P$data)
   
+  dat <- P$x
   x <- dat$x
   k <- dat$k
   k2 <- k*dat$ny
@@ -264,13 +263,13 @@
   if (q == k2 | P$wmatrix == "ident")
     {
     w <- diag(q)
-    res <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g)
+    res <- .tetlin(dat, w, P$gradv, g)
     z = list(coefficients = res$par, objective = res$value, dat = dat, k = k, k2 = k2, n = n, q = q, df = df)
     }
   else
     {
     w <- diag(q)
-    res <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g, type="2sls")
+    res <- .tetlin(dat, w, P$gradv, g, type="2sls")
     initTheta <- res$par
     ch <- 100000
     j <- 1
@@ -280,10 +279,10 @@
       if (P$vcov == "HAC")
 	{
         if (P$centeredVcov)
-          gmat <- lm(g(tet, x)~1)
+          gmat <- lm(g(tet, dat)~1)
         else
           {
-          gmat <- g(tet, x)
+          gmat <- g(tet, dat)
           class(gmat) <- "gmmFct"
           }
 	if (j==1)
@@ -292,7 +291,7 @@
  			   	   ar.method = P$ar.method, tol = P$tol) 
         w <- vcovHAC(gmat, weights = fixedKernW, sandwich = FALSE)
         }
-      res <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g)
+      res <- .tetlin(dat, w, P$gradv, g)
       ch <- crossprod(abs(tet- res$par)/tet)^.5
       if (j>P$itermax)
         {
@@ -305,14 +304,13 @@
       }
     z = list(coefficients = res$par, objective = res$value, dat=dat, k=k, k2=k2, n=n, q=q, df=df, initTheta=initTheta)	
    }
-  z$gt <- g(z$coefficients, x) 
+  z$gt <- g(z$coefficients, dat) 
   b <- z$coefficients
   y <- as.matrix(model.response(dat$mf, "numeric"))
   ny <- dat$ny
   b <- t(matrix(b, nrow = dat$ny))
   x <- as.matrix(model.matrix(dat$mt, dat$mf, NULL))
   yhat <- x %*% b
-  z$dat <- dat 
   z$fitted.values <- yhat	
   z$residuals <- y - yhat	
   z$terms <- dat$mt
@@ -322,7 +320,8 @@
   z$gradv <- P$gradv
   z$iid <- P$iid
   z$g <- P$g
-  
+  z$G <- P$gradv(dat) 
+
   namex <- colnames(dat$x[,(dat$ny+1):(dat$ny+dat$k)])
   nameh <- colnames(dat$x[,(dat$ny+dat$k+1):(dat$ny+dat$k+dat$nh)])
  
@@ -493,7 +492,12 @@
   else
     names(z$coefficients) <- names(P$t0)
 
-  z$x <- P$x
+  if(P$gradvf)
+    z$G <- P$gradv(z$coefficients, P$x)
+  else
+    z$G <- P$gradv(z$coefficients, P$x, g = P$g)
+
+  z$dat <- P$x
   z$gt <- P$g(z$coefficients, P$x)
   z$gradv <- P$gradv
   z$iid <- P$iid
@@ -509,11 +513,8 @@
   fixedKernWeights <- TRUE # to be changed or included as an option in gmm() in future version
   P <- object
   g <- P$g
-  if (is.null(P$data))
-    	dat <- getDat(P$gform, P$x)
-    else
-    	dat <- getDat(P$gform, P$x, P$data)
   
+  dat <- P$x
   x <- dat$x
   k <- dat$k
   k2 <- k*dat$ny
@@ -524,15 +525,15 @@
   if (q == k2 | P$wmatrix == "ident")
     {
     w <- diag(q)
-    res <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g)
+    res <- .tetlin(dat, w, P$gradv, g)
     z = list(coefficients = res$par, objective = res$value, dat = dat, k = k, k2 = k2, n = n, q = q, df = df)
-    P$weightMessage <- "No CUE needed because the model if just identified"
+    P$weightMessage <- "No CUE needed because the model is just identified"
     }
   else
     {
     if (is.null(P$t0))
 	{
-	P$t0 <- .tetlin(x,diag(q), dat$ny, dat$nh, dat$k, P$gradv, g, type="2sls")$par
+	P$t0 <- .tetlin(dat,diag(q), P$gradv, g, type="2sls")$par
 	initTheta <- P$t0
 	if (fixedKernWeights)
 		P$weightMessage <- "Weights for kernel estimate of the covariance are fixed and based on the first step estimate of Theta"	
@@ -550,7 +551,7 @@
 
     if (fixedKernWeights)
 	    {
-	    gt0 <- g(P$t0,x)
+	    gt0 <- g(P$t0,dat)
 	    gt0 <- lm(gt0~1)
             P$fixedKernW <-  weightsAndrews(gt0, prewhite=P$prewhite,
  			   bw = P$bw, kernel = P$kernel, approx = P$approx, 
@@ -559,15 +560,15 @@
 
 
     if (P$optfct == "optim")
-      res2 <- optim(P$t0,.objCue, x = x, P = P, ...)
+      res2 <- optim(P$t0,.objCue, x = dat, P = P, ...)
     if (P$optfct == "nlminb")
       {
-      res2 <- nlminb(P$t0,.objCue, x = x, P = P, ...)
+      res2 <- nlminb(P$t0,.objCue, x = dat, P = P, ...)
       res2$value <- res2$objective
       }
     if (P$optfct == "optimize")
       {
-      res2 <- optimize(.objCue,P$t0, x = x, P = P, ...)
+      res2 <- optimize(.objCue,P$t0, x = dat, P = P, ...)
       res2$par <- res2$minimum
       res2$value <- res2$objective
       }
@@ -578,7 +579,7 @@
 	z$algoInfo <- list(convergence = res2$convergence, counts = res2$evaluations, message = res2$message)
     }
 
-  z$gt <- g(z$coefficients, x) 
+  z$gt <- g(z$coefficients, dat) 
   b <- z$coefficients
   y <- as.matrix(model.response(dat$mf, "numeric"))
   ny <- dat$ny
@@ -595,6 +596,8 @@
   z$gradv <- P$gradv
   z$iid <- P$iid
   z$g <- P$g
+  z$G <- P$gradv(dat) 
+
   z$cue <- list(weights=P$fixedKernW,message=P$weightMessage)
   
   namex <- colnames(dat$x[,(dat$ny+1):(dat$ny+dat$k)])
@@ -679,7 +682,12 @@
   else
     names(z$coefficients) <- names(P$t0)
 
-  z$x <- P$x
+  if(P$gradvf)
+    z$G <- P$gradv(z$coefficients, P$x)
+  else
+    z$G <- P$gradv(z$coefficients, P$x, g = P$g)
+
+  z$dat <- P$x
   z$gradv <- P$gradv
   z$gt <- P$g(z$coefficients, P$x)
   z$iid <- P$iid
@@ -878,11 +886,8 @@
   {
   P <- object
   g <- P$g
-  if (is.null(P$data))
-    	dat <- getDat(P$gform, P$x)
-    else
-    	dat <- getDat(P$gform, P$x, P$data)
 
+  dat <- P$x
   x <- dat$x
   k <- dat$k
   k2 <- k*dat$ny
@@ -901,10 +906,10 @@
       warning("The matrix of weights is not strictly positive definite")
     }
   
-  res2 <- .tetlin(x, w, dat$ny, dat$nh, dat$k, P$gradv, g, inv=FALSE)
+  res2 <- .tetlin(dat, w, P$gradv, g, inv=FALSE)
   z = list(coefficients = res2$par, objective = res2$value, dat=dat, k=k, k2=k2, n=n, q=q, df=df)	
 
-  z$gt <- g(z$coefficients, x) 
+  z$gt <- g(z$coefficients, dat) 
   b <- z$coefficients
   y <- as.matrix(model.response(dat$mf, "numeric"))
   ny <- dat$ny
@@ -921,7 +926,8 @@
   z$gradv <- P$gradv
   z$iid <- P$iid
   z$g <- P$g
-  
+  z$G <- P$gradv(dat) 
+
   namex <- colnames(dat$x[,(dat$ny+1):(dat$ny+dat$k)])
   nameh <- colnames(dat$x[,(dat$ny+dat$k+1):(dat$ny+dat$k+dat$nh)])
  
@@ -1020,7 +1026,12 @@
   else
     names(z$coefficients) <- names(P$t0)
 
-  z$x <- P$x
+  if(P$gradvf)
+    z$G <- P$gradv(z$coefficients, P$x)
+  else
+    z$G <- P$gradv(z$coefficients, P$x, g = P$g)
+
+  z$dat <- P$x
   z$gt <- P$g(z$coefficients, P$x)
   z$gradv <- P$gradv
   z$iid <- P$iid

Modified: pkg/gmm/inst/doc/gmm_with_R.pdf
===================================================================
--- pkg/gmm/inst/doc/gmm_with_R.pdf	2012-04-10 16:22:36 UTC (rev 48)
+++ pkg/gmm/inst/doc/gmm_with_R.pdf	2012-04-12 16:58:12 UTC (rev 49)
@@ -117,634 +117,320 @@
 77 0 obj
 << /S /GoTo /D [78 0 R  /Fit ] >>
 endobj
-93 0 obj <<
-/Length 3298      
+81 0 obj <<
+/Length 3317      
 /Filter /FlateDecode
 >>
 stream
-xڍksÛ6ò»?R3C€àý–v7½dz×ønæ&íZ¢-M%Q¥8¾_ûƒåx2I`±Xì{Ê“Ç$Onoryþtwóæ}•'ªÎ´*Mr÷X™¢Ij­2elr·L¾¤?ÏTÚoá¿ý鸆Çîq6/ê2½íð£;´ðØÀßú8°äÉOÝ>V=|ù±Fdß·„` LJMŠ¨vËÙŸw¿&E•™²Hæ@‰U5SòâŽïˆÄõÇAãq þþš:íh‘•§#âžp‚hÆí/eÌ—¢(2Uh`ò»À ²Ô3×¹Îl]%s£³ÊTúOÄÛ!U‡Žùó
-©;
-ðß0ÓUúG®‹YYÔi‡XoÞÝÝü}£`'@ž4*©Š<y$‹íÍ—?ód	ã¿&yVØ&y"¨mbÂo’Ï7ÿòÂ	¹Ö‰Íl¥+¤S×6+mTy“™\„üöžÈQ ©íâH´œ#{ó¾‰ÍUYe -sˆ€RBt·~ƒH
-ðuèö³9¸ C&¤Ÿé:}xdÅ_üq¤YZÜE‚pÛâ[Ç3[‚UËN´A6¼Ÿé&}¨V¿?²ò  ڍ túƒó[ÖØ€—‡û™îE]aêH»¡–Εɬ1ð$=`´;ÑÊJy
-ðý%
-p¾c
-Æy™]´žÚx%†ÃuîkÅ”zz‹*g½Z#h¦•NÝ©:ÖÙÚƪ ÖUVÍ™ZÇ2Vy–ëڐ0È‚¿fe•¶‚´É£%E`5²äq»½ÄŠÛ!’Í楶é[>**âaM³»€±%)Ô›
-~ö;ž[ah›g¥nDb€ý¹*:¶?fuÓðbx™3ü΢ÌIj‡[’`¾D2‹N«±¤!8O³=ó›F.TjLNA`uM=œPG‘Ú÷;¯,GQm:ÁÃå	ö(›f$àñH7Å2cÒ=jYX·Ãed]KžsT!Hz\ñ(Á~%<8ÆÀ0rë~oQ?6]Ø‚Â… -úÒë ÒîdK“ApbtZ^“~8"@“Þâ£$z68ʐUÏ´uvÁÌCü¬l	‡
-ºá˜ÌnþeerxLÜëï·7É€)(<®ZÛ îܲ;7µwî\§@ÿ‘—ù‹8Uªs•Ÿ-ÅeŠIÚãN÷îàƒÓYdbQx†:xxÿ•Äx önüÑèùáZ§lƒ{ñŠH?ãê§Ohþ-™H&–­ÐMØÜ*ƒ6kŒÜeV[	/ÿ{~†¿§þ0+5ƒø…h±Á¨¯œcø÷o^ö›0ß‘Þy¿Hob¿Y§.P¬ƒEù•&÷"4´—3Œ¢áœå|¯37Œ#{maÏ]û÷I„¿9;5aÉ\YéR²‹à6ª!©õ>D±2 %§þ$¶£Ê_Ù‘-% 2#aª‹5€ÃmÞ öî›_ÚïFÁpíΣŒÿÞÀ@_‹"X0¢ZË·wM0x-JÂÔ4+çÞà_栏‘:Bê¥+u#ˆ:Ë‹:²©Î@¾UYóÚÎgå&+LE™¥6`R]d-x3E8/ó<ýàóhä
-'·ËÓâ(®ì’깪*Â8×&ÓU”¹uÌÉMæIË/ò%œ!KPÅD¾DÃèÿnáó“ü‰cƒ…ˆ©øý>ZDC+ÛÏ‘nŠ
-¡[±6‚
-ãÖû5òæ0·î EV(È'.5:×çJ•S c<óWKK˜T‰þ8ºßG¶ËÊj§£žÎC ï.ð!½ù;÷‰Ü¢ûN‚~!ŒC·»:ʾ&è(Ûè+A¬cI"‘Ñq}Ì¡w,z9ó6û˜Ý€I'>aÔ0¹1îÜŽ…4¾¨-ç5;<R¥á¡c?LP$+lùñØ!¯\
-#Ê݆|‹¡H°°xËúõ,£>_;ðô”ÂEX.ãë Lsú)܈¢!†¹nªtø9ŽûHîF£Â¯Ÿ…M?àpÉBsÔN¡à9¢×Äå_)]tδ½ßˆ˜"ìè`þÃê€C`wô¤#ƒ¤0³åá×ݘxñÇ cœy+´ü Œc8¹ˆ€‡´KvØá*9N]qÚʨg-Ócϳ^‡ðƒŒvpY?â(ÄôTï6q¥Ô½¯vCßÉî¨TøŒ²~]×WïÙ*0=Q‰:ÙE	í&Ws{Qú¨Œ˜`mTŽ1À')Û£/O*æïº,½íãàÂåcT²mœÂÊæäIqÉKÛQN¦ÝH¢‹"¯!¤Ã&Àû84È ã-ÓOù{Š_¥ðër{ªo	ßš¯Ã9Á°¸z+ìkËô¢ž¬óP¡ ‚á‘òCWö`v‰”(’‰’rè:U‰_ß©3Í
-.[tóQò×]”yÁ7¡tÎf}O9ø°\o³Üî#çwÅ[)’Oh¶VŸe	4ÄséÚq²›;YÚ.B$âTaGÙ7e×”xCjô@¾
-À»¨BÅãÈüZvõ©§ïKi[¸V:š	í¨åÇàb#	èèr@|í¢Ò´ÃÜñ{×r‹™$cÏ`J%L)lyVDwl4Få°ãpd,KBÐ2üÀ´uÅ*qâèy+=>¸¼É8ìD'pSBx÷Ôº^¢DÛ(‹œÐ
-׸+¯îZÄóUªÆ9…,WpŸ¢r݈ŒlrO.ä,Ï2®k	÷'gvA± „üDJÔR‡©ãåÎB`ƒ¥(škBÔdJý1 º¤tèmNvÆù´˜ŠÅ(U ü¬œ#àÆGôµ4N#DØ×~àçÈ9åRîµ?ð—O¸´åк÷V•¯‹ÊÕÅã…ËÙn¼€w^¹¡Â0¾)HZ;ÌœKˇ²A¢tŒ¦l ‰Xæ§Ï®³Â¸¨#bãê³Æ ÍJ¼‰#ê_c¸€%Ìàä/ôBŸ1Ûo²ßY64Qej(Â*ë«ÈOx=p¤ y?Q»:S¯I'ËÖ*«kqKJÍí©	lPá*¯Îr0Õ˜ÒÁ|¦šÈ%2ÝdJû¶nh¼2#‚Gé…a1ß$IŠ :ÑͶ b/3S”×08·[8á}?ªUÈ.O®Œ~F?ˆStA^w>84D²ï;ûjýU9g
-„äŸÈ]©w$¸Š6¹R?[×2êEMÜk˜jF(•”ƒxrŠ¿Šh$Quÿäû÷±úÔ™µÕD?î UgE­Faíòz ó†Ygàcå®iãk¢7o!—Á#å&]‘/€ÁŸ“—®t6ßÊËpÌÞ9´c0TNqÄÄ!,R™øՍC„f¢žÏ%,ž\~â‚L¬$X‰×CÐp˵SÖ£ïIGϝŠ+u„‘.‹Q#™UJÉ,|4Ø…i%å»ñø:pŸ’Wk9ø*A÷‘ 0™B´k‡†r!öÔ~ ’,_B¢™5
-¥'ŒK’/’P`¢RwŸq™3MÜö*¥ópLü¸—@
-r¥Iܤ6¤Kqkkò%>påEï§ÇÖE0ÀUç³j%Ý‚ü<¡åš]&r%´eÉÌA8i®9ÊŽp³—y¡úÀhª!`EÅáázçHW*êq……C‹uýN†\Ã
-·ùfi¬÷Ð_ôšpòU½&[M÷šwÛ‘ãídçQOI3nÇ ßN°6pjBòK—µð¨/¹~V/5}Æã3q"Ô¢ôQH×ßøp'f·<9{U&ꛪ$ýZs÷ž.o¾ß½÷þ3ìúó¿ß¹
-¯‹äÍ{'àòë\òtì6)2[Z×jŽ¥u~e“áeO1	ïQKN΄Ü=Õaë/XåJ å<z%‡9¸`iNnÇœ ï²¥ª®ØâóZçWW…ôeÎó ×—©Lè•ù‹R¹Ê¸ªä;fdÒß(šJ ¹´ŒÊ¼îê/W“–!͏FšQ 1s‡¤ç‹f‡1.ñ回c5¡ïWr*¡+<µ´Xóüj§øäêÑ%ýŠ­Ö¦Ÿ·£ßåŒxj_ÙÙ¶õžRG¡ ë“c Ÿj.ÖóïÜ
-Â|ÇåŸ4½Fu̾®+äüݨ~¹6’éª~érIÕ|×ã&­’L¾¦ŸcXHðu	¸tV©2²ù7ïË<i2[U†MfÁÔ÷«!L7ºŽSu÷£¬¡ÿÎmdø¿ w~sq]aÔëVã_y†À»WÀóлâCó/X‹)ïn}qéÊB¬ܯ!@ümÜ›s¿c@·2<H}x î¬6ûŠݦŸñÛHJR
-k…¤Ã2¾4e4þ
-$›üMV¤ÿV1j?
+xڍ]sÛ6òÝ¿‚ÒLÄ øÕ—›¶“dÒKfîß½´} %ÚÖÔU’ª“ûõ·Ÿ (Ñn&㐠‹å~ïBYòdÉû›Lž?ÞÞ|÷®4‰©Rk
+—ÜÞ'M]^'•5©qMr»K~]ý´6«þ ÿÎÓLJõ&¯ŠÕûÝÐÂã	þöÿÉ/~ê&<ö0òs=ÌÜË2¾Á ¦§Ý
+QwëßoNò2uEžl€’ÆTLÉ«'¾%÷Îo‚æ?âüý±Îíª£mDV¶š÷ŒD3|)c¾äyžšÜÛˆ_xä…E˜ÍlÚTe²q6-]É ÿB¼R5tü‘?="uçþ׶\ý–Ù|]äÕªC¬7oooþ¼1pR–˜¤6I™g)È#Ùn~ý=Kv0ÿs’¥yS'ÏuHœCø§äóÍ¿½pgB®ò¤I›Ò–H§­š´hª¤ÌêÔe"äÚn'¢åÙwïêÑÆe
+Ú²1€(%D·Âo©¾žÝi½.À”[Ò¯mµzyæ‘G<˜h•6wD‘ <´øÖñʁ`×®mïÖ¶^}
+¨;~`åAA´O‚Rõ׬±/O÷÷²Ü‹ºÂÒD§¡–nŒKçàIzÀ,h¢•¥ñàûkàznj벺mŸxéÉ+1|\§£G¦ÔÓ›—ëÕ)@3-íJ¿ªc­³XÀºŠ²¾PëXÆ&K3[) 	s‹,øc]”«öA‘šhK^¥9Xly8®±â±U£ ézSØfõ**â°'‚Ù]ÀÜŽjë͇ý‘×öA¶ÉÒÂÖ"
+1Àþ·ÌäÛ³º®y3<'æ¿³¨ 3A’Úá‘$XoGQã­¬¢ÓªÒ\¿£ÕžùM3W*5
+&UØÄCK÷gÔ‘m¤öýÑ+Ë$ªM_pý'”M=“
+ðx¦›b™yš†ZFÖqY׎הª¡GzyvD¾üE*8(c`ºû‚ƒÃIì°ü+bKBQ„x* íQÎ9'ÎlñP
+×4«S@¦›ðac€‹‚A? P©Ê²Àà!©æÌ=€óñE‹°¥‰-â|§ñhTB*\åYઙœaø3uh]8	³$TW®>#t«0N3w€ë (êðŒÖØ’(‘euÉ, Çvd¬¬˜šfÚyåI¬lHì#j…Ôˆ•H‡°sqgÆP“„Ûd©°Í"·š¬1!žVÒ‹´j$îüSHø
+Ïý°ÁîFez´Ùa:à¹þ=P–ׯ;TXïH'½CõÆK‘C­VAöÁTÕ§šÕäBŸEhè,U¸¼ædf
+NY¦I¢¸LºmD´yséóÿžÄ
+s_ø±1yZh¢vE=žaêŸ.ÖI ãL¶:bŠ¾²{Ûµ±ZÀR« á~Æ v²~ÞÚg!r¯cœ?À¯|+
+þö¯‚j/cï°`ò¥Ø	K¯ñ1c/2Pcf¤ŠùÌü² ¬UšåUˆnKY+«´‚Üé³:Ÿª»L›ÒMëÀœÊ"q¦H!ódÏYdÙêƒO®ÉSÆ»;o§à/¨Þ˜²$ŒÉn”ÍuÌÇW­
+ÖIÁ¯r(\!#0ùBEÓ¿eEö†ŸäƆ7"&òbð~‚/¢¡í‘×H3EPþS+†FP!‹<x·J	 ¬„9@Ñ–Õ	üù é’ê‡Z˜øs×d`GM4aÄIÅåŒ8‹ØOÊ+TUœElû#})ªìÒ¬ ß/ã!MúÌnÛù¸ÉÏV
+{º"P•&@ìcY‘ЀÛˆà(tñruøxÌÒ):6a Y~’(Q×P¹9Qà c?ÃïgRç¸osÒÞ	_-ò‘_Ž£Æ3ãaWˏ—|u«ÊO›HJðŒ$‰³œP
+<Zð}1Š¥ç/\ŽŸ
+™–ôjüyŽš@ÁaÓÇρ;oxE訒;Ï
+‹\ŸÅ,3Aʦۻ8=Ø?üWÌÍ’[§%2“/l0(<ýEˆ5ŠûÓÇ TœþAŽnùAiöxŽ¼9}ž“\×鎧ã‚ë^tò0láóðš
+Ñ<Yß8Jìám[Í%ɱ¡2Bì÷^öžÔVžAÕ¢SbKvyr¶ß],¹¢~yM·€¼é‰vØIÉ¡‚#ÌŠÞ¿ôAígÅ£^кmn5È<°\Æ~ÐÏÉCÅïáàœ|&]ªÍžTƒåüŠÏ·òió­zå绳úQtàùQÃ|ííÇ0¡HÑy|äM‹,Ë…eùüƒ‘x Œ—ò®€öoxiÛ7šB^-t¨V¥øIú£|OU³E¤7
+‰’BJ@*Z¬¥ôwOamT÷°íæIòÑcd0&”ê}öC¤Ä𕣏µ9–¿j­‡Säµø¾àW+Õð卽ý4Å1p§}·€ÙÉʇ£lm·!8]W’¨/îÜ£óBðËjTÖ÷rªÏ&}Ê6¹ºÛ¸%—ß1Pˏàt‘Å“&€x‡S;tÊx€wö!i0¿{™ƒx¶ WJáJÞ3|¨3˜ôãÄX¨È›Z†9ªƒº>òåU¸0yæJ÷€¦Í搌á(JûTáÝ[P«]CÕb”^ûjíÐaqI6Õ"š¿¤
+ÜP óÆ¿ãb–;ð2²É=«Ÿ—Úu×ÊJÁÝYÍ.(V]¬~$%jÏc(ÇÕBà€]ï»ÔÏ”ªMP3ͱSÚTt0à S±³ªò*ÞpAkvÚL˜´†Ñû<C”gR\fsç”I×¾á‘dcàÛŽ¸'oåQ9Ê°¨+P1<\ù±ŒíÆË÷èÕ—»£íŽˆ¤½bæY2ÉBTƒ¤`k9IȹÍ0Ìϐ$,p‹»&uDlÔû“èðS™Pÿjǵ=Ö%£Ê_4h¡÷âÛ4æ²Ï&ç]¤ •£µ.-_~Â{€é‰“³ëd=·©©}¹XŠ–iUyˆ÷¤Ô>AºÄU«ñ©?8ËtÀTç
+…ùL…økd¶NõýÛÐaeF‡ÒÃ$ c¾h
+ s:ÑͶ b/R—/`ðmï5pÂûiV¾/¤|b>b	³Ä'j…×£Š†Hö
+fR'A¾™!ù'òÖùÊ;|Œy¡(JŽ‹ý…¼ŽûK
+cR€RˆgUüLj†@e„ϾQ«O•6M¹Ð©»ÎTi^]´š®/Ro™%õöùVéÉ7Å|9+‚KÊœt)aòÊéd…ö„¦Ð:ó=¥,Ê­{õhS°TÎqÄÆ!,jïZRöM{Ò\A«tœ5ö‘/Öh ­Äí!h¸Ï:Î)k§h¼èé¹ÿàïÇB–ˆ6â¤wâÌL¨ÎR;öVZ	BÎ8ߧ€×‘¼‹X3ÊÇà„¯‡ô	 ³)D»W4”±«öeù¢í¬®)=a\’x‘„ê •ÜéÍÅu~°pëÇER•…Ïāo€~®|¸¤Xÿ 9nűsï¿|Ç“÷k©w+IŸ¸o¤!°_–#S´AJæ-ïÀج©È4Ëh‹‚™ƒpÓ´áÉžp³›y¥ü pjl(žÎÚS}³Ô*\j3÷jG(ƒˆdãÛÕÆÞsËØ誡ç‰Þß–
+<Á÷,éìYï6
+fûÄ“ömèþ|6<†å}œs\ä¸;* LèhÜúyí$-`)¾”.­Áí½^lYQm"©Ñž›åt_ƒÕBY®ÎrÜ¥öˆ0BÌOÿy«Ý¾P‡i‘‰¾þ‚×ê6KÀWˤªRq8O›¢Ñ¾n|y7’â­J2	ïÖuÎéûÚ„ÛÍáà¯8Ám-Ç™@ñcîÉÀ÷¡\ÄIT~DýRK×NQ,ž·Tõμ6ð­ÅBkuŒ›ø4“¤0ZRï25Eñšzc¿Ó…Š;¢}qm1ŒÚ%²ü“‚Ðß!‹–&×Ï_¥_v”~Ùìr‡¦.\A¨AÞp—ÍeŒÛy¸ù….lNÝOÊZؐÛ*-LõÍ|®¥DÖÄ-¶(Na}—v.¤êªèåïÅ@ݼxái¡]ruÛFHÄrИÞÆ
+D@ò¹gû8”dùÜ=.]¼ó6 ᄄƒw®M¸8î^¸šo49i-Â}ÕÉ‹Å›çå]ÉšŒçµ»S•0®æ÷=֠ܪŠ®ÈÍm¸lZš"ò
+ß½+²¤N›²tì`œA­¿ìÁD¡ë8ËÖN=ï4ÂÖü¢½4§ò&E}€û^S~îè:ΕˆõxÐ>Ôï†#‹ÿ±ó6´ÓõšÜø߈9´*®¿h~ š]÷†Ãþ‰î©_ó‡Ù##º!iØÅ·ŒÆ‡ tñ'O‘PÿI1Q^
 endstream
 endobj
 78 0 obj <<
 /Type /Page
-/Contents 93 0 R
-/Resources 92 0 R
+/Contents 81 0 R
+/Resources 80 0 R
 /MediaBox [0 0 595.276 841.89]
-/Parent 108 0 R
-/Annots [ 79 0 R 80 0 R 81 0 R 82 0 R 83 0 R 84 0 R 85 0 R 88 0 R 89 0 R 90 0 R 91 0 R 86 0 R 87 0 R ]
+/Parent 97 0 R
+/Annots [ 79 0 R ]
 >> endobj
 79 0 obj <<
 /Type /Annot
 /Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [152.427 538.62 189.926 550.481]
-/A << /S /GoTo /D (cite.chausse10) >>
->> endobj
-80 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [195.116 538.62 217.034 550.481]
-/A << /S /GoTo /D (cite.chausse10) >>
->> endobj
-81 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [335.972 382.36 372.851 395.158]
-/A << /S /GoTo /D (cite.hansen82) >>
->> endobj
-82 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [378.581 382.36 402.392 395.158]
-/A << /S /GoTo /D (cite.hansen82) >>
->> endobj
-83 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [132.862 161.637 264.442 174.435]
-/A << /S /GoTo /D (cite.hansen-heaton-yaron96) >>
->> endobj
-84 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [269.342 161.637 293.152 174.435]
-/A << /S /GoTo /D (cite.hansen-heaton-yaron96) >>
->> endobj
-85 0 obj <<
-/Type /Annot
-/Subtype /Link
 /Border[0 0 0]/H/I/C[1 0 0]
-/Rect [407.382 148.087 414.105 161.835]
+/Rect [257.249 141.463 263.972 155.211]
 /A << /S /GoTo /D (Hfootnote.1) >>
 >> endobj
-88 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [285.857 134.538 314.805 147.336]
-/A << /S /GoTo /D (cite.owen01) >>
->> endobj
-89 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [319.931 134.538 343.742 147.336]
-/A << /S /GoTo /D (cite.owen01) >>
->> endobj
-90 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [224.405 120.989 254.848 133.787]
-/A << /S /GoTo /D (cite.smith97) >>
->> endobj
-91 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [260.362 120.989 284.172 133.787]
-/A << /S /GoTo /D (cite.smith97) >>
->> endobj
-86 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [131.403 94.522 150.01 107.474]
-/A << /S /GoTo /D (cite.hall05) >>
->> endobj
-87 0 obj <<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[0 1 0]
-/Rect [154.662 94.522 175.053 107.474]
-/A << /S /GoTo /D (cite.hall05) >>
->> endobj
-94 0 obj <<
+82 0 obj <<
 /D [78 0 R /XYZ 80 770.89 null]
 >> endobj
-95 0 obj <<
+83 0 obj <<
 /D [78 0 R /XYZ 81 733.028 null]
 >> endobj
 2 0 obj <<
-/D [78 0 R /XYZ 81 437.442 null]
+/D [78 0 R /XYZ 81 428.751 null]
 >> endobj
-103 0 obj <<
-/D [78 0 R /XYZ 81 437.442 null]
+91 0 obj <<
+/D [78 0 R /XYZ 81 428.751 null]
 >> endobj
-106 0 obj <<
+94 0 obj <<
 /D [78 0 R /XYZ 97.575 109.765 null]
 >> endobj
-92 0 obj <<
-/Font << /F60 96 0 R /F65 97 0 R /F72 98 0 R /F8 99 0 R /F79 100 0 R /F80 101 0 R /F81 102 0 R /F20 104 0 R /F21 105 0 R /F50 107 0 R >>
+80 0 obj <<
+/Font << /F61 84 0 R /F66 85 0 R /F73 86 0 R /F8 87 0 R /F80 88 0 R /F81 89 0 R /F82 90 0 R /F20 92 0 R /F21 93 0 R /F50 95 0 R /F104 96 0 R >>
 /ProcSet [ /PDF /Text ]
 >> endobj
-135 0 obj <<
-/Length 3989      
+100 0 obj <<
+/Length 3993      
 /Filter /FlateDecode
 >>
 stream
-xÚÍM“Û¶õî_±GíŒÅH‚Íôàt'¦‰ÝÉ!Ɂ–¸Z5’¸%oì_ß÷	€´»M.ÌF ð <¼ï÷ ç7››üæí«¯Þ¿úâwSäY›·ÅÍû»WÜ4U“µ¦ºy¿¾ùiQÞþòþï cb ¢n³Ú4°Á¼½-ß»4¦\tøXcÛPÿ×ð÷þ|ÜBû÷üý.ý*Tfx,u¥©2W×¼Ó;˜=Àìª]ÜA³;Âÿ^Ãwmeáb›Œâû7¼ç9eChUÍ⾓qDu8qça»Õ-€á„^`iÕžÛ´Èð ]çîÎg*Ýâ¯9Ü1°§	´»ƒ¬ÆÀÔ|ĝ.qƒß+ÜâŒÄì…¢~š@hÚhô[&«lËTëî¤ÄÐÆ
-{wLûÚ_o«zÑmzfß™VÕ;a~>a~Qgy­¼ßì÷ÔMV֥„³ÂtœØÓÓRt)Ÿ"8ÈÛáÈë6íD<]V´­.üCbkhÖµ‡x¼÷‡'βŒîF‘#Ø‹HºTÎkä½`Ú‰G"Œd;²0­XJ`ŠAŸ#–¥-A”Þ¬iÆáÍø	 öð÷pbF+JKëòÅÃQiP/ú£¨ÈVð@ )üU‘²MëÕû7=~ÐÔ±ý,ŒƒHÕýƒ¬x¤mQp
-‚ýùMœØŠññ¼Æà"?çU#¤Ïÿ€B “3Èa@?òÇ£gï.%Ÿý(§ì>ìTHUé¬-TÊ­-½V÷ü‰k®RVîcDKßyT‚œD‹H¿3±8ð_VÝÑðpó‡·¯n~Z6M¾øgï‘ÿÄؐöbã²pËÅ–fâ0é©õ‹E™çv6u!䤍ˆ§O¢ˆ‡|sЃ
-;BSðýø‡°B¤ª$RçÄ ':ÜNôwiòƒä‹…aÍ}dt{9îç¤DýÛväŽn¤Ãˆ¸žb5ÁaR½©µ8zMA	Ên—U[,¾;ðŽ]¬K«³hxwDѵìÄf\w¿W!ƽî$gâ	){;=œq³ÃAÇD‚M øãbáÆÏ~¦§Þ\»ª*BŠªªšÓuÛî½àL›²Î»Phv†+º¯¶j„æØOOÆ–âuŠX²¸ÍëŸ'{µce…®ŠIÒx<V~øô4Ä2ŠsFÏ;¼½œ5ìxG´¦öÓeHˆ¥ÏÛ[Àkߟ&4_dN–5DßÜ:Ë6Æ#ƒËìiãmK‹x'ˆAÁ„Ä£êOÍܸ)XHœSL„>?àYI°ê|±<F>PXCÞÍq 3ÊôILv¹:Eç=ÊÆvP"Ò0F¼®ñœ(V½Ô…û‡udŒ·¤¤£ öNF¡¤JÅx8Øö缨xÛkxô‰G¶j0ˆ³b›ûp&ùîü1[ÔÎÑá8Çâ…¿³“léSÈÃ!¸|ž‰›Ìª¶åý¶:jvüóñ¶ªØiŸ½;ìÒöŽB>·,a¿ëå݁?cdë`ôˆÿÖxn¬åƒíÄ"âج±[V<väøD"á“ïÅš8)Xv-²Mç Å,+Âe$»¼îNº¶[ó‡Æ½ÐɈívò…„â.$­kã½JÈ#.Uà:||zÚá"Ü[dÎfÃ"þ!j›þ8w¹þ"—ë’.—lŠµ9{1Xk8®Å:â—š…²â`¡Û‰ËüŒ'+3’Õc£ê;€>Jèy֏¾æ
-ÕÅÃœØï;판!i`\RFÍy	VŒ•Gò‹ž;ÿF¸ãµlÉ~˜”÷#¯í3oCšÜi„-‘s‘¾nñ”_ùX»Ì=®]rHÀÞ•}NÄy*àØÑÉ Yjú£ON`æÄ`ÏdË
--ÚKà¯ÁC^8L¶‡eÛÇ'u9¦1›áÙØû½¨an~'¨²Àp§aòïÙŒóè¾[sR³´õ|EN¿;«Ý@ï0
-’ØÈ gÈÃŒp’ÊxG‰8bÓX†õˆ6,µ'MÇ”=8àO mvmYôh¨¨uxèÈ„õ¹ÚZX½ÂUµ[¼×´7ÔþFrÆ#d1È­¹G }ènç1 …v½©„u{]èbµdBtÉ-È®ˆßn«¢“jª†(!ÄvÒ'† Î!ìð;H
-C6P?‰À£†4ä¿!4þª'äÂÁ[_ڐæÈÍÈÈÈ>ãpÄVýëT†oÚ*Ëó§Sü"+šJ!ˆ
-™1Ù´ãTB¸¬pvâ"£,ûŽ„úÄ©þƒ·3w1î'¥jO4;&|-"§eÿïï5Æ™RJmž-¤¸ºP˜dÕƹ…£Ù&ŽÜ«Ú¹TXLSˆÞXC´#sI×µµ‘õîôS,cÇ[±|´æ<X·bói€‰ˆQYd+‹iy‚øWåpt7UÍïëGÛT*„ä9H#ñ€÷¿‹èCŒw`¹,¯ù”ÔÈŠG´Ad ¼œ‡8•wê£6¡x8Ì눐„tTHÐX§’h~}©©jÒH0ðÊ®+_£Ÿ=­¹¬)¦§kýWSza
-	 ÙÆy¿‰=Zď¸
-6Œ½LúàkœO”D î]°ûÒC'[Ík" í/«Ô4W"4dˆÚßhWdë—Š}&Æ©dÅ+$pç=LüÏ8‹÷ì5
-.ÍD£ pl>ê qŒäe%ð<YÕíwÙÿ.¹Øž+m>·+M*·”}ðúï±—œ›&Àî—É
-ÉÞHyAX'rÃÙ‰×+J{|^ÓØNùäN¢mÁšï$óKÙV—3Ó¨ZçÉw¼ûA°ã\'&Új‘"˜‹R)™ò›„ÛcP'$—k#›`áùJLuµÈÒû0v”¹w—s÷ÁÐöù[5>dIð"•«¦’Bæ”t­µæGöÆrU/*t¤xQ”yVWÞmi^¹Œé‡CŒËŠPº®¬
-ghýÒL7^R£F$÷¿^Àÿ¼t@Ò;úJ·C¼^·=ø[!i«ésw¡	UÞªó§ES)3ߘÎ]NÙ㥩•R€dí‘	W‘jkŸCs¤´\j€Ê”:Îx©#
-ÝaXQ›¬­ªgÂ0pZ
-Áفê}	$:.B :
-ÝÚí5ÕßrÝXð‹‹ë	¶7YáÑÙ]aiQKƒ ný§W•¥ ¤À¢xaEh"žïC¸3 -7;ÌEYØ)—(M·–µÒÈ6;
-ãc·—Ö•Ä’ÊG­_ó­”
-¥!ÜíŠj”¹ƒvˆ(Eå’¶š
-n.×&—&^²./–t×iϸ³ŸYÙJÕÊڐƒX8°½uãËúÓ”Yn›)g®ßԍÏDê !Íâ¡ó©}kÕš”lº©½ÞZÉÀïÝ0Æ¹RÜ6‹wýÌyЄœ/ÌôS-—Uã:w]p‘y~ÅËøÈV¡B‡S©r>_Ñð—žúRb—¶®Ùk´kë&V`ø®À|Ô¸ðH8AÅ£Q½näµô¯l‡Ã †u% þÂÚ¨¾‡Ö q5̾#¥—›{ôG”D•6ˆPz×Óõgº78kÙ90¯ÛÍ®ÿñžàòZâÊ
-z|Ø•ÌÏE·ì—‰ßÈûmå÷Á‹vH0æÀ¿k•oUFºÁ0>{1ñ¢	Ç0üsōÉkšðꃃù<¸Ù	y2…•£Ém|¡&ÕJÉizkÝ=±S–2àÙߨäáå®zqT\§¤bW5£Å s,ÿð%ßôiÆÈó}Œ`—zŽ½n¶\œ§KŠg®>ŒÁëUŒe´>ÕM_TLù*¯ø*®Y{úÕ‡ØÂ/¾©ADmf,"MWY‹µƒOœ>’¸&_¼%9菝:òϾ¸Té³ôþ¹ö6ÅrƒW·F‹ƒó§?ºyi2ÛÖ‘qV+!éxiJ¡÷	Z‹*º&:/¤Èø(ÃwüËuOÊ»ð¹WªGu´D5}wb]?UÌCô¬Gw¸y¯¥ô‡$q”•2Sk_®;ÝúWË/¤d%lILžO.½K½ÂJ±Êf!ÔºbÃÀÎåOW¯`OÊ‘ã#fÔt©Šñ¸ÇbÐj#Ly¢c;TµsÁ„“¤Ì¢e‰NÖŠmÌô„@JWdÖ¼ÄVU‘¾Wl)ÝÓJVÏrŒuÊþb´Xˆ0÷Ï\DÁrßv‡ÑgÀ“k'|AU£h]™~èÃ8^Lr¸¼ÍJãW/q5½ºŠ^à$ßü᫱Æ¥/:O[_?Ïèô]2å‚¡à›:«Šjû¨¬ƒvwß?M°è	ØŒd+eHhüxëŒfÚsþÁðËÎ{åýnôrvñ†ÌIåãx‰ÆŨ-®£áÉ^T_VTQg«©B|C…üEõL üS–£V±
-+%ƒk˜Ïlå·!=ùlbB
-cþS®¤?¢e“X‰K Z^Ó0&Ò™Öñ»0U†ã4õ²:®ÇK’t¶,§9^›Ù2R¼R^ý–ù
-øÿ&'¨*+J4YmÄ'çUMêpYÞBG€’µŒÕjè™V ÏÛ5™[€EŸÑ]:˜6+\ª üÅ"’Bè´ùf¿ã‘üF"äá½>ê¹=OãȃoRäƒ$«„Ài–€þ–"N“Õ®tÎËôÖ(5/8r»d5öjŒwÖ·4©§*&î‡}Q×Õw:IKB®¤°¬iå”_'àà¾¬úSj%“åQIár…*«Újîæ‹Ø¬´å–ÙÙR1±Ì~y*Û€Y¹”KÜܙɚÛT-33èš„_PÝâ¯ü“D…| 'Η)ùhŠ¬*§ä+äŸl.-¬‘;á“‹n˜ûcÈHg)!ÙôÄL»¯^ñ©›ë§nÀs¶7 ¹R4üä))ÉN$فDRyˆ^-)Ș–ÚI–¿œ ƒØ½æ¢7“½¼æìñÓ~oJS¹î=¨g¢W£V^^¼Jîa0Üq–árÕHIk)į2WÕ“ "Ô¹0†7’DŽ[-YÇZ	éW²?òPx¿X›ij ô•“ÅïsqŽ<L½¼­y”¿ÚB»~^•)½šYçÒ¸è^pÖ&ä<&¼n at tOÑ‘´ê²Õ«éO?Ù«&tÓf®˜UÙÿ¯Ì׃O6<ž¢ZÿYÃÓ ¯`+2C^wÒæÉø«ìýÄq”ò<’ ùGjk5u¾ƒ^É£OtAÑ~ƒÏW»ã'^¹#Ý?û-'¨8qÜ´°¹ge0ýýúý«ÿå8v|
+xÚÍËŽ#·ñ¾_1G
+0j7É~Æ;ðnxÀÞ Û‡©õH$µV-y<ûõ©'Énµf&ÈұÉb‘¬w¹éÝú.½ûðîÛOï¾z_Ý™4©ÓÚÜ}ZÝUæ®ÌˤvùݧåÝÏ3{ÿ맿L™¢N
+W
+‚ùpof?Þϝ³³æ Kl;êÿþýÀŸO[hŸá߆¿DÔïRÙÊhs]cîò¤*
+^©[ÁÔÊÌ>|Ä%¹Ý–Ü`ôÔ|º·å¬éñÃÎpGÝ9Àðgÿ.KøÓF³<Î`«Ù3÷÷¸ãÿ D¯E³ãñ#/p½ÿÜçŬY·ŒäBø ÍØ	M|FgŠÄÁÑ„Œëý^ b [&eía¢ƒ™[@ýö´r¢îx?—Ï%oc…½'Á›8]'UjñKÏ3璺Ȁ.ɳZ¶°QàÊaû®Ç…˜±ÈÚ¹0ŒH*Ž'ž¸Ì`öµ	n	ö¢”eÉ«Ó?ÃØþÏÌWÝÌÜeŽ¸q⤠øÑ3ÉQfƒäf‘äB{ÝâG‹˜¤ëö‹J
+"žýq++a€¡tüßê׆ÇÉ/ižÂ©Èðadtrn:$ðã	ã.좟{E"}DH’XÜ€„͝Ê96Ï<m@·èHOö­(éI¨Š€z³'ÊyÈ¥¯Þ—n` ª2Is/\™.hfe¥Bü	T6Mœ-_Åä!P:$–(`AG#U=	'=ð›™I}H¯–à՝TŠOL«†eð(a\+æÖV‰s¢2bCI(I"&Ÿ—H\,¹Ÿg&Ÿ}LÉJ¶'§ Ö@çîûQdÊ7ƒ&
+§ô,c,,Ø¡ç6…ï6 G烞áù ãQG;C «k4­R`;P›,-¬*„¯ã^	‰((À„(”{’ºîTp5ðìMÙFs³áŸ^èŽGÞ’žšöÚ‹žYÃÆ :Ù*=\!ê÷jv-Ë	ö1šOUÊà@L½ýy£K¦Óç’åVjÂö²Ï»¡è8xjsZ°E矸õö<àÀR…Îå³÷÷UFžŠ¤r£ê½ïNb/‘FÎ’æ`V™š]¯.Ö8‹åW`x¯`<< 
+|/ý¦ZYà@Žl¦€¹´Ï.˜4#p›ô!÷{ÙãßÇà`Vž2Wàw߉ÄSS—*G°y[²=­Îg?aí­å	ñ)á³ý%5o3´0–Èjæ¶8<¶PŸf=©R"¤‚‘B~Ï–·Ï2±qê駈³ŽoRÂ~$n‹}Q€±­ü6,¿QœC»9º17Ü/S h$tÅìobª€©pRa‹„¦ˆ½_4x YôY¶5eŽ%$0¼BEvô¬Ç2‰Hâ¸Äír•+4¡ä€{2ÍÛhCp˜M·í€+mM¦wߨ‡±¾¡]+„ŒlTHždò#“qÊCš2ò’‹Ì“Ú:@6@ ñý—bóï-[íõ·sPÓ÷ü%lò
+çxÙå=¨¯tà+«Qx)n%aÓ5	²Aì)˜¯^rúýØù°»eÈ¿“va*îaKv}kPUsW1…ÅG2Z½u‘³f[
+‚ýFoÙfé/A,'t—¥ÄŒ½¥8ßwk„
+ŸÄÛ ”.YÃÛ€ßYÀãλñ³Øþ%O'F¯;uódn÷âÛ8X )6}Š«¢:ðàF"LÝ7KŽAÓÙ·–4ïš-Z¶ü^s~ÀØé–Š×ûRr¤õ¨4:Í!ð‡€¶Ï¡Ý’ïzft*ŠuÉë{ÛÇœ¼°ƒ W[@žóipöd â,bÇ$ú\ÔxÔ™úBgù‹™§nvŠDÌÔ=b¶•WiŒ¿0H«ªë,;Àûuur«¹/…Î JY76¶j{O‘O“t&_¼ìñ^ÐÃÇ3·}D	m>ÓI5Ð|;D'9>-Üóoäkd÷”ŠRv²hÕÚŒ³ß½~œÎ+Š¢V«ÙWwd%‡¹läéàß
+‹3CM$u’,8MZ‘ª	­×熜Bá!K)[áL¸â
+}òqϸ® f5MËWË
+UafºˆQIÔë]QϽ*ˆUä"²4µÙc=ÐÒ„ÌEyè5¸[¾M˜FmÒ'é¥À96—ˆm at jAnŒŒÚ8I'bæ)}äu¢Ä=TS¶i‹Cò¤b4P–ßEÒ!:>°0ÚÒ»=J<dEÚ 2 S) £Ñh„¥!/Uwê›ÖÜ­ÈËÁVÍžkM졇#Ã"\r$¢ÆÏC"â|
+$/#‚N%f¯ÖDÖÕáÔZC@ãàIG9i²KI$Ly[%‘}ÎõE2>Fñh×G‹‹š
+¨ê*)LõZ@•) ¦å@°oHÌ;Þƒ*h’åð¶ûúa䫧;d9PÞ^;A’{K	s4+G?Ïö9ÿ¶mB£ÓTW~çN	ú”}ÄoÎ;H6—㤃\_ž¦³öÑéqÃÄèãk”j<@ásÄ,î= TÂ'ZcŒ1/XöîžÓOŸ)cX%ye#vf{lÉnƒmÉ9àæÉûÄb7<3Àd@Þ–üù¢2.‡#è³a‚ŒŸ‹Î{L"[?‰võ×­2Ûû Î /~Xö­I#õ·WÒì“c‡JèL—8÷iCöM<â€3Iå³
+MÖö‘Á{œà«À*{§ÕMc6Y^(ß”Ë!‘ÿñ–3e^ÅÅ?C0Y‰4{7”êßL5TÐ=þùÒ\É|	îHÃ=œÄ2sQØs¯™™©}ÞÜönK…ÐÛƒD¹M27*É#Û‚3õ"C(ñvD…Á©ˆ2ÌKØô,"OîµWwéŠ(_‡þÈ-m¹’ÉàA’&YíòÄñ±»ÁG“ÇW(ˆyžÍþ-Q˜:¶µ)SßV¤þª¨HIxB9»Ù‰ÙsC	2í_µœ•ƒP£`Ñkö­¨LfSŒlõ¤ËåxÏ
+ÛÁ@«·l5©†`quK+ à+2o¿Ö¢m“–.MÊ`éâªû§5‰	×NkÆÝ-”æ64LžÎŽäªðQoÜà˜ÞÛ@{l©|º„áõÍ›£>Šœ«"ðpx‰”³œ_¥ o©{a“"öus 5÷F€Cü]uãð˜³=Èòç×ã˺|CÛkìL>¹&_`ÔÀû‰jÜSÅ^bŒÑGÔQݵœÎ³Bj}fEI•³­”`³×Ö§}'ÚôQ„Õ…zÆ%å0lÊ-D§ža! „f‘ÞJ¬Ô­2É¥O
+ÑzÀã¢!-m¡ecðB5|#Ñ­<î5áŒÅ4øàb'S1bW×æ•\¬JÒâv*&>+¿G/âm¨A-FŠ¥ŠŠ7$˜S…£âu;ŒZøŽŽzŸp-›ƒ³Òg(4±®ey’æf/Lˆ”K«Q¿‚ p¯þšÃδÞÔ$^cŽ2àEãzüЂ+b½:)â±rù1$E's2þá(`¡uš¥_­I€]ë9öæ¸Þú ¿EòÐJ!î";jòGoÄV)D¹ÐnF¸&z1‰_½q”ËÀKðՐÊTO8|ôQ飻 1hOæÄ_Ôj—¹0wC—?ÚG»))53IE=tqp`Y]DÆY­0¸ßþÚ”Bï64'TT’:/¤Î÷$Ã+þÅ>£²*~NÕiÑÙlöý™A¢ínãwtû³Ô0NV긹Ñúõqrqx5!;®äj^uV‰Ém.±Ý‡õmäV:¼#®ýæ”
+Ë!ýt¯˜00séËå$Xs˜	“Z¾ƒÄàÛïÂg~iTBÛÇJiê˲8IL½lnWlc†'Ä°À@m^u\îÑ¢ˆ\:|F£à3:Ð+Sú ŽŸƒí}@±
+nbü^¼Vq0˜P¿á½,Ï^ԍ3Ÿq9ë-”¤½ÖÈV“çIó$nïpÉŽ`pË¡'WVÊ"±e>ª¬®ãÐAñdŠ'¿‹M>M’ÅÙ¤Qõ«…%a!7¦”"
+aÿ…Z#n˜Ó<½ÂÖ²BǃO
+dZÃ?lÕRE7þÍLÃÅW©€ÓÆ­2ªN2ë9úKjåí MïÀ·@RÌç3ÕŽÞö`*PyŒ¬NÒ:”àrÙˆó…ËF«uÑreR•õKê¼VÓtMó:1U
+ ü½’BètU_Éé=CÓkð5¨éHAgœ"wXO‘xN¹Êâç)â”IQÎ©½‘ª§ž†£‚kVc¯ÊûEŸíEo¼×Ðd\þsöö{‰?MÓ.Áš¸ü²–S~7q ù¨þ<…É%iðJ“ª”×y SžN!É2ç×e¶ÊìUéÜ]õõ=¨l	1ëµ\‚䦕àÜNŇ¾8 áC©_Q«ÙŸùgr+¶³æ‰óõ”|”`5í<ffüC¬y8Òjȧ'ÿB¨dˆ…<ÆsêØ`m]þê©KÈ껐Ü9ªlU“’\‰$W–
+uô8cÎïÝ?Ýu¤Êd›‡p¥»å°•ðpüåo†+ëWâ‚t§AËuÆ#†ŠžT ¸÷J0.´l¸IÓw°s!~žTy14K¾*” ÑiRßxžcµ„Ø~òV ç¡•¾/C<ƒ¸ÓáËQ:Zü„çÜ,ò?L
+`‘A»xƒbÙ)ř矟 <!ÓÝwÜ%î"$C8 ýö³dsÒ]òÅ:i¥Ë:©Ì¨¾÷‡²_sÐ²<Å´å)’õ:ò­/[žrÚò”À+y	 ·ýeün€"úÕP±x[ñõ$Aò$ÀRn¥®Þw´ò(à'}CÖë|2ÔœžsCÊñïÄãì'v²7Í5×ÖVÖ>Ì
+FÄÃw‚œíe•<P3¥0‰3åk¼ÍÞÂ[÷?ó¶|o혷|)‘Éå¿<ëÇo¾Íä>K¹ð¨ª‰W}áU^-•š< .ˆ¢ÂE—PR:•7%úÒ”úšƒÜcà‡#-CzÕÍJÿg{5xÛÌ
+êR4·ßºc0wTrŒ»Á_ð®*ÿGwåÞéuYé+]‹ö(ÆÊ›30ØøIéÚ?™0âuDJþqX„©
+è3ì{ÔôŽ+&y>~ÇpOþ±ªqþ>EšÒð…ÅÙÿg”»9d¼iêng^Û}¨fùíl[.ÄÿqH¿ûôî¿f‚µ
 endstream
 endobj
-134 0 obj <<
+99 0 obj <<
 /Type /Page
-/Contents 135 0 R
-/Resources 133 0 R
+/Contents 100 0 R
+/Resources 98 0 R
 /MediaBox [0 0 595.276 841.89]
-/Parent 108 0 R
-/Annots [ 115 0 R 116 0 R 117 0 R 118 0 R 119 0 R 120 0 R 121 0 R 122 0 R 123 0 R 124 0 R 125 0 R 126 0 R 127 0 R 128 0 R 129 0 R 130 0 R 131 0 R 132 0 R ]
+/Parent 97 0 R
 >> endobj
-115 0 obj <<
-/Type /Annot
-/Subtype /Link
[TRUNCATED]

To get the complete diff run:
    svnlook diff /svnroot/gmm -r 49


More information about the Gmm-commits mailing list