From 3d4b9f7f4aa4462f94a0ba7e7eae740bf92ee349 Mon Sep 17 00:00:00 2001
From: Morten Hjorth-Jensen This part should be included in your theory description of the report. This exercise deals with various mean values and variances in linear regression method (here it may be useful to look up chapter 3, equation (3.8) of Trevor Hastie, Robert Tibshirani, Jerome H. Friedman, The Elements of Statistical Learning, Springer). The assumption we have made is
@@ -349,7 +347,7 @@ $$
\mbox{Var}(\boldsymbol{\beta}) = \sigma^2 \, (\mathbf{X}^{T} \mathbf{X})^{-1}.
$$
- We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \).
+ We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \). .
A given parameter \( \beta_j \) is given by the diagonal matrix element of the above matrix.
Part a): Paper and pencil part (also as weekly exercise for week 36)
-Part b) : Ordinary Least Square (OLS) on the Franke function
@@ -436,7 +434,7 @@ dataset \( \mathcal{L} \) consisting of the data
\( \mathbf{X}_\mathcal{L}=\{(y_j, \boldsymbol{x}_j), j=0\ldots n-1\} \).
Let us assume that the true data is generated from a noisy model
+As in part a), we assume that the true data is generated from a noisy model
$$ \boldsymbol{y}=f(\boldsymbol{x}) + \boldsymbol{\epsilon}. @@ -462,14 +460,26 @@ $$Here the expected value \( \mathbb{E} \) is the sample value.
-Show that you can rewrite this as
+Show that you can rewrite this in terms of a term which contains the variance of the model itself (the so-called variance term), a +term which measures the deviation from the true data and the mean value of the model (the bias term) and finally the variance of the noise. +That is, show that +
$$ -\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=\frac{1}{n}\sum_i(f_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\sigma^2. +\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=(\mathrm{Bias}[\tilde{y}])^2+\mathrm{var}[\tilde{f}]+\sigma^2, $$ -The answer to this exercise can be included in the theory part of the report. -Explain what the terms mean, which one is the bias and which one is -the variance and discuss their interpretations. +
with
+$$ +(\mathrm{Bias}[\tilde{y}])^2=\left(\boldsymbol{y}-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right]\right)^2, +$$ + +and
+$$ +\mathrm{var}[\tilde{f}]=\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2. +$$ + +The answer to this exercise should be included in the theory part of the report. +Explain what the terms mean and discuss their interpretations.
Perform then a bias-variance analysis of the Franke function by @@ -479,6 +489,7 @@ studying the MSE value as function of the complexity of your model.
Discuss the bias and variance trade-off as function of your model complexity (the degree of the polynomial) and the number of data points, and possibly also your training and test data using the bootstrap resampling method. +You can follow the code example in the jupyter-book at https://compphysics.github.io/MachineLearning/doc/LectureNotes/_build/html/chapter3.html#the-bias-variance-tradeoff.
Note also that when you calculate the bias, in all applications you don't know the function values \( f_i \). You would hence replace them with the actual data points \( y_i \).
diff --git a/doc/Projects/2022/Project1/html/Project1-bs.html b/doc/Projects/2022/Project1/html/Project1-bs.html index 2a2707c2d..229495544 100644 --- a/doc/Projects/2022/Project1/html/Project1-bs.html +++ b/doc/Projects/2022/Project1/html/Project1-bs.html @@ -302,8 +302,6 @@ plt.show()This part should be included in your theory description of the report.
-This exercise deals with various mean values and variances in linear regression method (here it may be useful to look up chapter 3, equation (3.8) of Trevor Hastie, Robert Tibshirani, Jerome H. Friedman, The Elements of Statistical Learning, Springer).
The assumption we have made is @@ -349,7 +347,7 @@ $$ \mbox{Var}(\boldsymbol{\beta}) = \sigma^2 \, (\mathbf{X}^{T} \mathbf{X})^{-1}. $$ -
We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \). +
We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \). . A given parameter \( \beta_j \) is given by the diagonal matrix element of the above matrix.
Let us assume that the true data is generated from a noisy model
+As in part a), we assume that the true data is generated from a noisy model
$$ \boldsymbol{y}=f(\boldsymbol{x}) + \boldsymbol{\epsilon}. @@ -462,14 +460,26 @@ $$Here the expected value \( \mathbb{E} \) is the sample value.
-Show that you can rewrite this as
+Show that you can rewrite this in terms of a term which contains the variance of the model itself (the so-called variance term), a +term which measures the deviation from the true data and the mean value of the model (the bias term) and finally the variance of the noise. +That is, show that +
$$ -\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=\frac{1}{n}\sum_i(f_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\sigma^2. +\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=(\mathrm{Bias}[\tilde{y}])^2+\mathrm{var}[\tilde{f}]+\sigma^2, $$ -The answer to this exercise can be included in the theory part of the report. -Explain what the terms mean, which one is the bias and which one is -the variance and discuss their interpretations. +
with
+$$ +(\mathrm{Bias}[\tilde{y}])^2=\left(\boldsymbol{y}-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right]\right)^2, +$$ + +and
+$$ +\mathrm{var}[\tilde{f}]=\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2. +$$ + +The answer to this exercise should be included in the theory part of the report. +Explain what the terms mean and discuss their interpretations.
Perform then a bias-variance analysis of the Franke function by @@ -479,6 +489,7 @@ studying the MSE value as function of the complexity of your model.
Discuss the bias and variance trade-off as function of your model complexity (the degree of the polynomial) and the number of data points, and possibly also your training and test data using the bootstrap resampling method. +You can follow the code example in the jupyter-book at https://compphysics.github.io/MachineLearning/doc/LectureNotes/_build/html/chapter3.html#the-bias-variance-tradeoff.
Note also that when you calculate the bias, in all applications you don't know the function values \( f_i \). You would hence replace them with the actual data points \( y_i \).
diff --git a/doc/Projects/2022/Project1/html/Project1.html b/doc/Projects/2022/Project1/html/Project1.html index 5873ccbfd..2034ad644 100644 --- a/doc/Projects/2022/Project1/html/Project1.html +++ b/doc/Projects/2022/Project1/html/Project1.html @@ -338,8 +338,6 @@ plt.show()This part should be included in your theory description of the report.
-This exercise deals with various mean values and variances in linear regression method (here it may be useful to look up chapter 3, equation (3.8) of Trevor Hastie, Robert Tibshirani, Jerome H. Friedman, The Elements of Statistical Learning, Springer).
The assumption we have made is @@ -385,7 +383,7 @@ $$ \mbox{Var}(\boldsymbol{\beta}) = \sigma^2 \, (\mathbf{X}^{T} \mathbf{X})^{-1}. $$ -
We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \). +
We can use the last expression when we define a so-called confidence interval for the parameters \( \beta \). . A given parameter \( \beta_j \) is given by the diagonal matrix element of the above matrix.
Let us assume that the true data is generated from a noisy model
+As in part a), we assume that the true data is generated from a noisy model
$$ \boldsymbol{y}=f(\boldsymbol{x}) + \boldsymbol{\epsilon}. @@ -498,14 +496,26 @@ $$Here the expected value \( \mathbb{E} \) is the sample value.
-Show that you can rewrite this as
+Show that you can rewrite this in terms of a term which contains the variance of the model itself (the so-called variance term), a +term which measures the deviation from the true data and the mean value of the model (the bias term) and finally the variance of the noise. +That is, show that +
$$ -\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=\frac{1}{n}\sum_i(f_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2+\sigma^2. +\mathbb{E}\left[(\boldsymbol{y}-\boldsymbol{\tilde{y}})^2\right]=(\mathrm{Bias}[\tilde{y}])^2+\mathrm{var}[\tilde{f}]+\sigma^2, $$ -The answer to this exercise can be included in the theory part of the report. -Explain what the terms mean, which one is the bias and which one is -the variance and discuss their interpretations. +
with
+$$ +(\mathrm{Bias}[\tilde{y}])^2=\left(\boldsymbol{y}-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right]\right)^2, +$$ + +and
+$$ +\mathrm{var}[\tilde{f}]=\frac{1}{n}\sum_i(\tilde{y}_i-\mathbb{E}\left[\boldsymbol{\tilde{y}}\right])^2. +$$ + +The answer to this exercise should be included in the theory part of the report. +Explain what the terms mean and discuss their interpretations.
Perform then a bias-variance analysis of the Franke function by @@ -515,6 +525,7 @@ studying the MSE value as function of the complexity of your model.
Discuss the bias and variance trade-off as function of your model complexity (the degree of the polynomial) and the number of data points, and possibly also your training and test data using the bootstrap resampling method. +You can follow the code example in the jupyter-book at https://compphysics.github.io/MachineLearning/doc/LectureNotes/_build/html/chapter3.html#the-bias-variance-tradeoff.
Note also that when you calculate the bias, in all applications you don't know the function values \( f_i \). You would hence replace them with the actual data points \( y_i \).
diff --git a/doc/Projects/2022/Project1/ipynb/Project1.ipynb b/doc/Projects/2022/Project1/ipynb/Project1.ipynb index 4758c2997..28018807d 100644 --- a/doc/Projects/2022/Project1/ipynb/Project1.ipynb +++ b/doc/Projects/2022/Project1/ipynb/Project1.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "98e2a2bd", + "id": "2f0d0303", "metadata": { "editable": true }, @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "1951a8ff", + "id": "383fa1e8", "metadata": { "editable": true }, @@ -27,7 +27,7 @@ }, { "cell_type": "markdown", - "id": "755dd202", + "id": "00edcc37", "metadata": { "editable": true }, @@ -63,7 +63,7 @@ }, { "cell_type": "markdown", - "id": "3b39d52d", + "id": "b8f880fc", "metadata": { "editable": true }, @@ -85,7 +85,7 @@ }, { "cell_type": "markdown", - "id": "92521420", + "id": "1e667978", "metadata": { "editable": true }, @@ -100,7 +100,7 @@ }, { "cell_type": "markdown", - "id": "5034b29f", + "id": "3ce1ab3a", "metadata": { "editable": true }, @@ -129,7 +129,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "9ee70500", + "id": "965d1f48", "metadata": { "collapsed": false, "editable": true @@ -181,15 +181,13 @@ }, { "cell_type": "markdown", - "id": "94aa10c7", + "id": "6171ab22", "metadata": { "editable": true }, "source": [ "### Part a): Paper and pencil part (also as weekly exercise for week 36)\n", "\n", - "This part should be included in your theory description of the report.\n", - "\n", "This exercise deals with various mean values and variances in linear regression method (here it may be useful to look up chapter 3, equation (3.8) of [Trevor Hastie, Robert Tibshirani, Jerome H. Friedman, The Elements of Statistical Learning, Springer](https://www.springer.com/gp/book/9780387848570)).\n", "\n", "The assumption we have made is \n", @@ -199,7 +197,7 @@ }, { "cell_type": "markdown", - "id": "1c6e721e", + "id": "969dd687", "metadata": { "editable": true }, @@ -211,7 +209,7 @@ }, { "cell_type": "markdown", - "id": "d3b0bc88", + "id": "9194b1fc", "metadata": { "editable": true }, @@ -222,7 +220,7 @@ }, { "cell_type": "markdown", - "id": "76226748", + "id": "cb6e0c5a", "metadata": { "editable": true }, @@ -234,7 +232,7 @@ }, { "cell_type": "markdown", - "id": "735571e2", + "id": "ef0c8ce0", "metadata": { "editable": true }, @@ -246,7 +244,7 @@ }, { "cell_type": "markdown", - "id": "7b93fc13", + "id": "c4e904d3", "metadata": { "editable": true }, @@ -258,7 +256,7 @@ }, { "cell_type": "markdown", - "id": "80c44548", + "id": "8ce55ba5", "metadata": { "editable": true }, @@ -269,7 +267,7 @@ }, { "cell_type": "markdown", - "id": "1e70c3f1", + "id": "3aa94ac5", "metadata": { "editable": true }, @@ -281,7 +279,7 @@ }, { "cell_type": "markdown", - "id": "31f5d975", + "id": "8a15da0c", "metadata": { "editable": true }, @@ -294,7 +292,7 @@ }, { "cell_type": "markdown", - "id": "a564fee7", + "id": "9761270b", "metadata": { "editable": true }, @@ -306,7 +304,7 @@ }, { "cell_type": "markdown", - "id": "05fc2911", + "id": "12f47ebc", "metadata": { "editable": true }, @@ -316,7 +314,7 @@ }, { "cell_type": "markdown", - "id": "ca40d503", + "id": "be6e6c6e", "metadata": { "editable": true }, @@ -328,18 +326,18 @@ }, { "cell_type": "markdown", - "id": "039784c1", + "id": "734989a3", "metadata": { "editable": true }, "source": [ - "We can use the last expression when we define a so-called confidence interval for the parameters $\\beta$.\n", + "We can use the last expression when we define a so-called confidence interval for the parameters $\\beta$. .\n", "A given parameter $\\beta_j$ is given by the diagonal matrix element of the above matrix." ] }, { "cell_type": "markdown", - "id": "df1c03c6", + "id": "7e01db05", "metadata": { "editable": true }, @@ -361,7 +359,7 @@ }, { "cell_type": "markdown", - "id": "7e229e98", + "id": "6431c5d5", "metadata": { "editable": true }, @@ -374,7 +372,7 @@ }, { "cell_type": "markdown", - "id": "00b00673", + "id": "e4eae5de", "metadata": { "editable": true }, @@ -386,7 +384,7 @@ }, { "cell_type": "markdown", - "id": "506c2d83", + "id": "6b7f7088", "metadata": { "editable": true }, @@ -398,7 +396,7 @@ }, { "cell_type": "markdown", - "id": "2cfcf061", + "id": "57e680b6", "metadata": { "editable": true }, @@ -408,7 +406,7 @@ }, { "cell_type": "markdown", - "id": "84225fa8", + "id": "bbee460a", "metadata": { "editable": true }, @@ -420,7 +418,7 @@ }, { "cell_type": "markdown", - "id": "7f22646c", + "id": "ab772d43", "metadata": { "editable": true }, @@ -449,7 +447,7 @@ }, { "cell_type": "markdown", - "id": "05fd370a", + "id": "022b31d9", "metadata": { "editable": true }, @@ -476,12 +474,12 @@ "dataset $\\mathcal{L}$ consisting of the data\n", "$\\mathbf{X}_\\mathcal{L}=\\{(y_j, \\boldsymbol{x}_j), j=0\\ldots n-1\\}$.\n", "\n", - "Let us assume that the true data is generated from a noisy model" + "As in part a), we assume that the true data is generated from a noisy model" ] }, { "cell_type": "markdown", - "id": "ac09204e", + "id": "38c61204", "metadata": { "editable": true }, @@ -493,7 +491,7 @@ }, { "cell_type": "markdown", - "id": "09bceede", + "id": "aa00d7dd", "metadata": { "editable": true }, @@ -512,7 +510,7 @@ }, { "cell_type": "markdown", - "id": "f5bae3fa", + "id": "6240984f", "metadata": { "editable": true }, @@ -524,38 +522,83 @@ }, { "cell_type": "markdown", - "id": "a8afd8c5", + "id": "0f01484d", "metadata": { "editable": true }, "source": [ "Here the expected value $\\mathbb{E}$ is the sample value. \n", "\n", - "Show that you can rewrite this as" + "Show that you can rewrite this in terms of a term which contains the variance of the model itself (the so-called variance term), a\n", + "term which measures the deviation from the true data and the mean value of the model (the bias term) and finally the variance of the noise.\n", + "That is, show that" ] }, { "cell_type": "markdown", - "id": "66c12c5c", + "id": "37f1b3f8", "metadata": { "editable": true }, "source": [ "$$\n", - "\\mathbb{E}\\left[(\\boldsymbol{y}-\\boldsymbol{\\tilde{y}})^2\\right]=\\frac{1}{n}\\sum_i(f_i-\\mathbb{E}\\left[\\boldsymbol{\\tilde{y}}\\right])^2+\\frac{1}{n}\\sum_i(\\tilde{y}_i-\\mathbb{E}\\left[\\boldsymbol{\\tilde{y}}\\right])^2+\\sigma^2.\n", + "\\mathbb{E}\\left[(\\boldsymbol{y}-\\boldsymbol{\\tilde{y}})^2\\right]=(\\mathrm{Bias}[\\tilde{y}])^2+\\mathrm{var}[\\tilde{f}]+\\sigma^2,\n", "$$" ] }, { "cell_type": "markdown", - "id": "80d3e8a0", + "id": "0673dacf", "metadata": { "editable": true }, "source": [ - "The answer to this exercise can be included in the theory part of the report.\n", - "Explain what the terms mean, which one is the bias and which one is\n", - "the variance and discuss their interpretations.\n", + "with" + ] + }, + { + "cell_type": "markdown", + "id": "281ae919", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "(\\mathrm{Bias}[\\tilde{y}])^2=\\left(\\boldsymbol{y}-\\mathbb{E}\\left[\\boldsymbol{\\tilde{y}}\\right]\\right)^2,\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "3604e435", + "metadata": { + "editable": true + }, + "source": [ + "and" + ] + }, + { + "cell_type": "markdown", + "id": "cb6e58c2", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\mathrm{var}[\\tilde{f}]=\\frac{1}{n}\\sum_i(\\tilde{y}_i-\\mathbb{E}\\left[\\boldsymbol{\\tilde{y}}\\right])^2.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "65111a57", + "metadata": { + "editable": true + }, + "source": [ + "The answer to this exercise should be included in the theory part of the report.\n", + "Explain what the terms mean and discuss their interpretations.\n", "\n", "Perform then a bias-variance analysis of the Franke function by\n", "studying the MSE value as function of the complexity of your model.\n", @@ -563,13 +606,14 @@ "Discuss the bias and variance trade-off as function\n", "of your model complexity (the degree of the polynomial) and the number\n", "of data points, and possibly also your training and test data using the **bootstrap** resampling method.\n", + "You can follow the code example in the jupyter-book atDZPI$E4N0=puXAx&9B9ukjUG(#6kgB2U4I^xIYacOU*X;qx)8Utx#eW<9
zFS|Z%Qdr>YYw{*Ru_fG$^n_h&Dogpip^j2N^xyhl+wVc64aO*AGqH&$b_0AuaudhR
zlR1h?XQD!4lpKz#wRf~gY?psJpOA|adU28%)*BL|jF4zU84{dZ0WY2ncPei`$-84)
z3{}@^B~Lf@>GCLQ#h8{jconAAjp^aPmrN7yVJ~^FpGKS^AwPI6t8Su=wCEd6M1p
z#XXBAKin1#D!Q(I%2jh?1Yj_ZWSK9fu3Gt2?S}F;c9-*ZsPekXd%3&4%j;fFW^E=8
z#ya1;zaIOcYpNHyu<>QozUqT^f?2&BKD^XbV=xgTJZgeb62BI8xb|Xr>VL~k{;^XZ
z>aNI#PH8Uh!Kz%nKOf-u*N_@uw(nGv4}c7P`_63c2X!|;{rZn6Ci}0Kj4vbq=iSaZ
z!G))*J7t#-xm!GyRZ-d{1h2QN&v|{6Zas9f%L`XJpzf0PGlc#sRaRVaW#PNA0JskcT&G1mRo@=D8~K}o0P{Q$U_KrMxIdn-7C>F8Wx`y_
zNi5R_4wXq20NdB8mNAegcOh04^1l$z$9t_DO+b+)v({V>)b@Iy77p%=aKV*0t)G7~
zS@l03r>7m)OB5*$d?kHn0OGEo$O0=%HNlaQX~C};JP{TMQJep3#Z#XYD`pf=e}v-w
zkc;BEx;JraLW#?6oWAVFfe)pbM}DO%>ru1R&I7-d5LhgyCb)KuSvT_GzHUQ^J2%Hv
zc3(}K9g_$%M7?wJdHx>4XSB)AG4OwwF6_0m8OWeK=lflPZ>xg4fDk3D*Q6k?Nx_Ui
zDGJFT@^8+sCxi6a3AesXr6ICUPX>pTWa)}4&q)T$-y|8-&q@Zx^OC^}Q;*>u)tI$U
z2KA@dF;BW{{ZXA~Dv&z~xE|g1K>es(2VKvL3>fjWJyL7g0Yp4;X-VgYg(828zwucV
zMx^l7ITXM}!beb}*AQ;l&EUQftrDD4z#|c@q0&eDc7EGFNeZ;N3}SqgNxjU!-B2N}
zzU+)3Q03SWflHL5@92W-5T&nfiNaU6a8IjST0N|dS7B}Unmmd3EkwBMO52{_g1YJi
zrNdGoMJk`yGDl!#k^*8(YqEc7K4z+=TCpL59b(ZFBT@M0d29Cz@V0`|zr*n*Ffru-vis{dhmc)ggp$fF0V|^H7^q2YLAB
zl9bf?szFn`Zu}=LrWb!S-IVYvI8(CJSBQ=7nZXP2$Cx3W=i*i0q`4?6uH-*bS9CBwQg!0K
zHbM*Q9^0hznQN43W-NC|2Pj4jch^>b*USd-HTG7nh?gDp09cU6fXZQjdFY@@e8#%|
zdN@J_e$AK!elvE8QwGz-g)}VAA&tJuOBxn@xiyU8PIFFYql7DS5OTFsL(MgLfO=6A
z^x0VMvv6y4cU6`N#kIxx1Wb5`+D9S_%r5ZDPj@f`&_mUK<(5qFl1a_QP<0u-`2f
z(7EB3uZLC}X~fa)tk~(t1>ZvR)pb!Q5)o$z;c5etZpSt-UYIRK87DzjRbrVks{eEm
zkyfF?Vwy!bwp2W}U
W=XpKc;89pMfWY)HBu!wKy)5=yhR0)6`QN+kZ6gtT~4GnO*+0F?YW-D{BxT`wv-gp+dL1rEkKFg
zmGwFIvLP}c%Wk*i_Y|26`bfBklt=DCC}>0pR-^7g_BzY+9MqMOnyaQ}JuRJS`f`qB
zz$}1mK5%5-1?w!ISq`JSltkg0Lef$ d}Mxi>jJ5SnuSJKl;x_pmLeoE9*nwz5y;RKNUYXGeKIStVp&>*7T3s#Fi_
z&|;i3oG89DY>TnBwvW@Z8tY%%o$^Q7slihKzX8`&uLKWKUixkiT1$x?i((()3FGG?
z>5SY;$(M%Sjp}sEi`yItUQrOy`KBE-_*}A`OR1flyy{Mzz@>4xfTOjpK_kIVLKmR+
zOhf_SKSnxF@fCBBH3n{czxbuF?`NipwIcHBa|AJMQJsaqgd?%8QR`-~8sd_R*)#N1
zxPuozG~}S7hQxPY9Zou~=kEGJ&WGp_Lm!a87wI>+|4`upU2LHyc(h0M-^U@DyFLgp
z)cKa5e%b|WeIS<9m+oD2aAXX#@)3Y1K`sKNa-K#acHNyM-usJox)5l6SjGO6iTzV(
z-Ctj+OU1IrMY2pO8RVm*r6Z|}II%TQ1xpXyKJy%7wNom4gi|kLcvV=ZTWv-v3`)-e
z?|poVA2Z;u3@su9qc{)X%)|lH@aAcb=;G6~7A#+A?W3y|
mH|F>Li;+F={JSfpA+CQ;U&%|&;HFG{6Fkc8HeL;%q zhN$GqexpH3%#izN0m{-FpOowX(HfGzE_(Wff@sLld;rE|gbi;8Qs>s >(G_M8c;)J4C)xAlWW x-PGb}31LXFEmuWTYuIBozR@`_l!@ XuZ0+6b+QLE_9E9fgjwV z#3_fsci`G;cyLQ#{ ny^XCA-9H$iHWIn}vtTB_}^*6CSJ&A?q60ttHR+k*W z7Z9dZ`~^07n;i69aRxeXp?lr$L9ImVK6y+6H?cTOQ*j*!s~yd+Nn^Fnxl~04BjziO zAo6;E4K^blw@5(f#_MWjSMhwxh=q8_ d>u825{kZW^$>oE6U?dP>) lR#BJ(NRt0vPmenz`E z%oaRw(jc>VR3EPzrlK;%$)lr^GTD{mob`ZzB=*{ICtM2Ts*Jx%u!4AiXvX)(0+3 0${`n5zSxsa{B9s5uCO?Y^f`1|AeP2BtaZFEVM^0~*s7v)a%4HB2_IsWGO zHKH5+W_Bj=P;v$Gw`q)Mph%YPao>yg{Y*@~B_#H9zVUE^IRVAYWnBL`wHxEJLKJxh zk#<{wy9Fik^x9f{f6bqX(Q#95^|Ps&iS!kGo+_|7l*w8z_onZ(A^OQ9H=#;ouKa*l z 9 !=?ED4+dJ+RNK+{0cQUv~Wa &ReiIn9NHb$b$_QgI1&wjXpkX8-OflIDp&aIlIoHA3BzNFowS zR^%#G=y<&{nE2k|?|nb-p5W4 C!XajzBt|XM$Or3VDIDX%MJlAed`l!WpBua1_6`@`!a;*btHKJq( zFL7$#Hk>;bc@=8(bSSqV`E>4VTN-2q4-$)$h-wb(Ru@!zP$~MZM%k5iN{Ve**Ze&N zH=dkY+2qjar>v)%BGU8{Fg4f1c|VOuQLJiTsQn~08FxtFQ~=93-3Qh)HO`hG)q$su zKmCR^3BufgQI?2TW)-Of_AwC&>}xp!Pl8z~k4k=Ez0eztSbIqam3#gvFKc@_`?zv0 zOcpauWf&J U;7Q?nncQYp)6lcOz#_{1nRJt;NYm3g+&`xZL`5TH2v Y6WCuY>ZM^*i2{|s3H1rWzyz+$; zkD{Y6pD8;7jS5fO=(LWjbEN85RUylt$WMOWkfqpSZUv &vZqC_X#r04Wlt3xYpS%SPXEvhKyMNV$)H#SqtKytwU%qf5G zethkBllcas#@k7!rX? mE2VctH$zIONxjjZx=`FmzZ(l8r5I-|XrgmJuPy2vd(pu9U@GncGS;qO4JdbZ zj|l=H3`3= -8KwPzdeLBz>G5CFOX+}!va2-kyU;U@*Q)D_DbyG>`= z91~NG{4Yw#D_^EF{$^N1=PgOlT;!_57p2;k7iYdlx zd~;K2Kd#ACaSkqVx7`@SR9!mukwmAB5CH^#CLa#2%txU%&kivU(WgxrF$O0IsBJ!- zIY;qG$V0oLtpg|tpq%-xY~a|%A;g=B#eNMKYi_ZMZZbF4$s-!PV+DY=Gm(T!f_e8B z@a2I;VnI8jfA43k$LWs$T+`Sk?yEn@AfyLHe_3hqwfY>yTeGjI0O5+>-gR*N!3HQm zQun?Kr8-25np9OJM_eGVHs6%|jkJ_2K?Iw!JKsgmJqRg4vNpVUx={&N>s?$kD(`Vv zE$|67JhvPNd6b%hxGG#W!D_Cz$Kgsq93O&v1uBw#q+Y~f_4M@((?%^q`(VlKV0tg5 z_&y pAYcLIu@PvexvFD`GW5V@>E%cs)F~O%ycEeL}c4e z5>Ix5Q28}snK@B#VKttBL>(1uH-1wyWWVM9)xSrVSI z_1Y~`GaM9xgU}+&{{z>(AtLh>S)~+&JB(wh-(;J&V;031@-5z`rf@?nG7 SRaZ*Z~E|C5_C*}x=cVoC2tbV8prdAf8`cNI_k=+czX)cW*5HT*X8 eU6x9Es-g8Y$vD7 z=yyw^F9T4^hQVzH_fbpe?>#^^bATA_d}@~{q0Dfolpw!+;ZP%u-X`NiwKf?J#R8J1 zd|&)TZ(+~Qlc&3Z!;OSx!J~EG^2&ib=Bqdc9*yHtQGyR1ayy$JMhdLSd7Z4vDb?1E zKX&ge5mTZ*sNzN_QXmKgzOYoUAF=>$^gIvOsR5}7L_l=fiVMOtju;@SY$r_OpV(J5 z&T&jZ&Y!)L@0N`ZW#?F03o4A6DCwf!3zEd@?Bb19&|l{nPUedCfq9Na_vOoho#;QA zyQCZ5NqF{yD?UA>!;UEAVCdre<9B6UKVu-Y#<#(d#6$eD5&S2SMS1`zdd70_&}NXp z?qI=MHYlU_n?jI>+YI2B)dviifEg&^ge)@>))$3FIzYMQTqy+@alz(KxU0TPf?okW z^WD1gWfEaQ%IA-p*bcJVCN* $gxtrH RF6sDWU&&Bo+ zNHe}MwW~CVvdWDO?@WbgQo>H|zE&}|RieK@X6(s0)#BkMg65poL@f>b?9)vt 8pPuI_gd;IKH=XDqT2!6l zFX66cJsEx96A=2o(+JcQxnJ=AqXyFvn2ny6S|ll)W$2Cj5vs%)oxz~gNNmjiYlyP5 zb29&DZyl)bkbpOu^fhC|BHTmHZC$csgeVCz-hdC@ve)PrjwS-#wmHv8#we4huk-f& z%)cz=BF%`wNW&-V1g8Cu?Qa=eYizO68I(_GYHHOisA%;xkZAI1h`iFOkFU#~$X4dl zy5&IU(*pe}nrfP~Z1cfugxOA?VZ>+& $HSlYssbrdrZwAgh=CnWhN z@`*J@Bsl7NSo=YlcC%e96f8)8{FyYTKTx&6NW>>B&!mNl=AeAeT)<`CrM+mX=70Nz z1YS!A$4aMcFQ%9_x&*@x b44xYxaz(GAeL8nw_34yr5^FLyXj3gH+6>-tVy%%c$h0{zl zhEAl&h~?4DCFR-F(+|oO*5xc8NG36Jj{KkW087|J07#MqIB%b*+b&)~9O2lyiA; cpD^pU|7~N8(xat);q_Ol5 zc~yR7%0Djztp BV_l{v1xG zobS(Dyss~>PTlG6PMd(w$JMt0{>suu%l3|5!q%9Q?i{df1g*ur3h#Rpz 3%@Ss4uVwcfz7)EpT7L)V$QKGYbTh|B*t3j@3?Ft%tk<9zQz4==iXt! z*m$oYd~H+*(3?eXbJ=qhaN-K5S3_1195zBPN-C b%3xnDPZTz=o%@>}4{6OJ=noe_x}>C?{2Q2>g4JX=hSXw!|Z!77lX_}mQl z5xO|!3ee^2*Nzmv{p7b j*`0=IyNH}%K|2nD#REnv+=v_|9}=1oG?`!Q$bq`F RC=lEo`%H zSV2gn!`PK*Bh kXOLMTeI{rDw2SEAYkP)I35k^vR=KLLUn;LGZsmD_SC^`$+ eT1ff$1!hfH54#g$=OJ-9S+_>Jy;gr>`?O zx}+{D4ec3dx4J(UCbN>=-tZsy_5Xd?&7*VIS@!D?g)~Hn_SKBCH^t-)_snK5^YC4l zuOjTX-orEiQ2EOh5>QwAaN8w+1UD;Ulv+?Faugy^KH09g?I8M3ug!nGB|%ql6=Vvt z+gffsSQmkrY tCpubqUaCVhJNbQ$&1`OEc3${zH zzL&}TTlu%#O_p2Wc#Lnxi#*{`?1&`-$mc7Rsju%64ladQ%H!hZ8;>7NFKQxyX yEA%$xX7~^lwx(U6L@S|6 zpIYLig3L deI3ZHnbGi-qsQJzCGkb5jL4;6TAjy3U>jgUuo2@}Rm^o?PzKp?E$jTLX zcOv{J2+4c;Bd5c94hE%tB(L=V2)ytz6=KPfn6>)I1vd2}k|QKOVtUkOvl6;1Pxg zpj*vU97Mn=e;V>eNKWB(FeE%Jtx}2(?KV^Csg%P48aA#c1nB(2`cyTcd!OV~F<>ym zn0@p)vE*Hn{pCHk+8u0H%9V0^*P_!B<7rm+Ho**Iy{vlWp3X`(NONGvhsYoWCGc zvAf#+X(0OU$&-S>GW~Jfus)_kP+qPXFfWC4;+yWd$xkHc%(tl8%*&m19P`*{&yiuD z3+LQ^lN1Ab{|IO|^uVu!iQ8UYd7Yrv<5NH3e9_%tqsKW~Zy;2RC|rN=p{~D0TeF3w zz~Jr47~mLfR3%ZsNbdQywX<0h+VX1p<6VEA)9M~6FIYX~)4c%S)#0Tc-d 9 U4cj0goL4!7=GEbPV$s2 U?Ucb)S?uG z`)bT~Ss$X5-O-5;STOQ^9-o=p5>#((2JTAzxJ@hAh!uhS#T$u!5v9+V+(Gb!LO{>` zi<{mf$!^W8pz7Bj9qni=JyzJiaxi$5YZ`$8DT =EOmBNooYI+spxPmF^Ja{d7bgR#%M z^k5@f-Y4!gA<-sG=xh *w7ql z84jpw#U}IWCU8-p0BS1QT8Ii`nyV=gBt{!mT|V6uR3sQvcTIcNJ(FnC2Ku)FwFhd` zA0s9Ktg=h=s?;m!SpjrZ0{(4ju`#Lm@?K -GC`q{AV;zpnE%2&I15L*z1g z_3_-&GDXaH2S6aYnX1|zx?PO7aAq#!+#o7%0QtcRhByTXAHt@QtNx*e zhQrDUXnKd^lFt I!n#^&GDXFU!Gl87a^oL-MW5#0JVNl@7Dj3FOJ ze3F8cA&Fp)N=5p^D7a*hJXReN8y6c*l<^!i?vL*Qc-h*_;qcLwBbBR;fsI+~4AjN{ z1F@N~O@os-Og)Kiv0|pY$ef8f%!Vx=qv7~zj;7PVTFh%YzK$dYY1;f#ku*b-Xfhfd z_CY`>-746DQ|{Lr8 Xa9esv`MF~o2qyWNqzdmp-S!~5`fKO#6 z?8$Gg_G8%2J?rWic&O&}NZ&1YRZeb8H3z>(hd&majmtSY% zT?U&Bd)ueKMvM9=!GZfrZT%G&3YQB`F)6d%=bfR}6q)(g3OQYyF=#_I8ei<8JDQwN zUTX%WQz!6kE_FZahW&FLN`7>q&&tS6xb`3hfY%f^g@0I{x+8hV_nl0moYUV(zbQum zh6v$b(k+nc*KM)HG@+>aK3|e-vV~oZ-Wva?Apd7Wa4e5UCOLUv(}IR3RXtpF#+7Mm zh!hX`H*xf`cmJYh(V01!2`36i3}y0?TaUI^LDf5<_O2!^#am-nkYXL%exAvAY;u1t z;B=ir_1yIG!CEdg={(KrW3i4rOg6coybH%_p*cB4TkCEZ@2%MF`hz~2G3I$ZeR49r zzdDBcW&8U(ppnQf$l61;IIgggQT1{tb18-n?ETFAf*e!A`z?bqba4NHO$l1>M@NvM z{}YT!o*)6I=&f(Dhf$w|x`nUB$8oC~;Pnw=9m|U7YH9~>qqbtDISpG+#XQOI@6sTF zP(;JliK{~{)Y2G9G(M_F^5u9V(mUl2(N4-a2}6lvmv6K4w-#&@X m3(TW{H}hRc&@m2i)(==wnp^1hH7H z$Jzf$F>9-VTIZX{!a+*&) zCsB6-W)dBh_@!d8gIG%O9H<8%I==|oh zDB>2Up_Yo=pb86Gz#IebaG_rWY>Zf}S71_0>26k%W5RCqEYObX@?YNZK}l|q)!t3X zQqloO2}`O?vTBjK(Y*|mc$8DX`^cq&VbD*mGU+FRjMDEXr-;=Dq9LNIil)+-3)1u> zlcO_A<_K=@?9-PQeM;frqslEzswbZs`Bu;xlaT9=+U?T#3GXC1w`-38J%WcREqiB` z9~|a9ob)2iV} wkASX*rfKNE#MDRva&kD@JGW}{Qr1`?>YT|#ZcR9pPo&^_2- zFPoYKVAF#2uMDpAbEUw8=}wmE_kZC-;GuBT7gMj?eZ%G}U2>*lL5s{mkc^L;!Mn`R z0?mgP6?pDSgL8MCO{zlxXW5Y9=v?aW)$GyR`rCr8F2_G*7n1F~V~)J~bjbU*6=93H z^y*=r%-5sG|Gmij%I}sc-bs(%Ta#S ztLnE6b30n)))+<6|e+46_X)Z{% KX);UFU)~%b%Uq;nJhe%21 z w+qLG!rJB0vb5D~0IaWx}#?X8C&V4E{bbnD~+}n@h_6KUz3AT0* zetUrDVGnh?A47i-sx535d5{3!I5Dn~rbm&I1)e0xw{0}<0V)7@(7z>f5Snmz4`B0@ zC{GgR$Q%wMPZDCE-3M=Z%byjW@;(rdjfS2{anFu7;F&3g==}!$$~{ArAGmMwo4hWN z=!T1bU@?f|lwG2b8+O`E>zB}%7v}Aj()BEp=1`2okR7R@cpB7S &Nm6BRV{$pwOV(5)uZ{~*!**A@Krg>U!<+N1 z)15Z?BLB2>wbr;bOZ-WWH=5v?hDzi>UtzQM{IM^i-S0sh0^oEmO$O_@!Nk?^?XI3` zV(is|3J1Gx!L6# exBs!duY#?TW%Uoa>Pas@*S*O?Br2U*@`KOXPV5smQ>ZSei{DEgXkBg zVPk7CQ_JO6f!V2%82ps!X9-R6!OmNQTq+OaYhB3YM|Jh00~6Kozkp%4%&B`3PNj+u z2%%Ln$G+! &p$<0inYz7xyq!FDz;dnQ%$Fi0h3RB# zo9bjtFOZ?cOu|m73ozt@tbi1->_$}sS+V@0 -R`6Mg>0JC$))w?GkOYE&sVu=8hOmHve~3q-{{t^w0D!b|mECPyYwWS@d;b+{ zdlkSr?QzW6bf=u$N>LiFSuKxHkUcl;WJCLu*_*tl`8s{v>{F;VUsr!nA5>@Sqr0e< zl~EEiPEZo%*3=0_8gkBKYo=O3RV1LA^p{TDh`_&{=k;FWyJO>I+cM8&m+v8LG;|1> z0H*Z#E^P-l2k@6R`7fx(!sDvURy@M(lR58L_?cViM$z*#%mS~p%M%uooy~6;hYbxi zoy}7DiH0X*Rww=8q8j`G^TRij!s~Pw7Q;qann&f1Mcz36hN=7&fTWP5OvxHEVM|() zO2Ry$+Gccoxv`e>i0FLPtTs9~m`M^N-c-wqizes(FreZ#JWu|`M90A2AM<`YoYQ{Y z%fWFM+s8p}gVXenmgBTGb`6K)tk`(inFn(+6CMGj*ZNMPuDsG >={SVP-KcYtykEzo8Miuo_(%Af>}yH jGDI1I%f44PVg&Y=jqr{WX(-!D0Lt`KS}{~1RP;K*Y1M3zvg_vc zR^G=Br27-}%1e4(J#TdgOPo dj+C~|O Impas= zZGkTR#Ja$EvBOzNA_8N(l~7fnI$*2e2Zhp)rONNgwVxEnQ-41HSSu!zxx1o9MSUC> zIor6Z6wKM}yP34Lwj59#=g6TItC+=GBjCD wlpr}~YhMRsBIAJ-6!i#y|c1Dq7VV*tyf zX5(W)%)<4L-)Rx+u@JKnv-|^99Ua~Nft>$>@T#y(GCwUH|DCx0dlDzs<7Z)I=VE1- zkmO_*m0;mvVU^$%<7Q*wViT9(;gV#QWD_L*e_t^`_+KK)&dx*pA0kPy(5|X3f 8vUleA=p{e684v|wlq)AF%? zuzLXcfX8Xz)uPo^yQSs#=9EH<4tsJRi3rD%aQ76hnH-8N-=XFj+ ZtK_ZcxOrJ}OjXFDulO$-ap%MA5w-dAJbaMZqIuv?EoK z91sw#&R`U$+Ad1G7rNIu1jYUr4)Q5I+1atj>)cf?%1GP>Cxm0;WaosXppa0Kg#AA(3~2fQ delta 28526 zcmV)HK)t_@!w jt9<&9LVj<6PJlfS|LP_hfANt#Sc#%e&p|hJl*dnRJbN$XmlSYqG8hv+_y60cl zS8whZjtW$8!lU&r!Yo6)h&am;p)6W&qo3nJs)nu-Mp%4nA1Pwj?E%T-;g^)9iGTiA zTpyDh7Wn#_yva~%36qJQuxm|aDW4PSDD^}Ct^TwA0W?Z5Mg?1l%{;LQ@CnJy95+wq zBr0Es3W-s27*%WUXpz`1|9m*}XcH8(~82IELk_+sj+l~2`n*x#n^a@h`5SyyE*x3_m?-OJgmWaeP3 z^UeF)*biM(y~r~gUncFVK4>SH)yv_-OI r9XRdTW-BpjsyaujXL5&pW%6_k^_R}ro z{S@W?AUDG;dqwj@J)nNyJ%72JHzaTFXtAs`C`~b3OCua%N>R>5L`90YR;K|TKdvZ= zO9h~(g2tt0^A?0-?A{#U1&O87?=yhi))Knoc2m{vVCJE<0Yr9=V{e~NnwylL>Sw!` zN2xYdFD>6)r+hNIqg?BQtX;&jYhhD{BgzHJ!BAt;dS7XwbXE#h;D4sE*1FRyepn?W zkEPvI?Pi7JdfdwGbYO2huZW1dQP~}2N~fMJ#TG8eexs^`E-v=0+s$-#p(MCSb5MhW z0V>3#bOzdD5>ducp7EvDBwxBl@3s=0X_rscu(zwvE0#mls%~_z8d b(is z@=n=qrgxRQQ=3e*YkwslmF# qZXy&iGTikEJI1d#R+|RfByt z 7wD3 zph%dUFb5DGFy>0zk)kY8kI}UJ>AS1wXG61I2?ExC)*=9ouYVa&2@<+zYwN!+`=OFr zg@VUFbq-ilBCM;2eh;=)(2OcWl*d0v)inn6B>o=R=iN%+SZPAJZOYbBuJ?}YT`e2g zYBUZmmkik8&HVs2g9e+jw(6ei3Y|a*tLl3Qa9g#HHx{1v2Pid d<)_= z70`IugjcO!Dt{ou`>~l)0rpQT7hPEIOTGELIBCkQTbU$<=ddre!_vYe4|qb_orGFH zIGWNvHl6hY;Fc8eXwa`o4T5a1x3z-fK&{A_Knz0XnX$7M7+G9cn4a+rW#a6PhL^pT z=OH;zjEFdM*YOK-@(hVgT*$#+sC_!jq~NH??G;;~A%DQ7txK)$g|$7}f ku zNTn>$&kdo#Fr^^Gw3$CRpJodZfl|sRf?raahWrkV49`S=4>+JeX@O5%SQ=s@kYF>H zZ&wNCxt2&BKNe~0sc;gr9Gr+ac0&URNQH>P@SQBEUU77eaKR?Yy7z1F?VU4C2XLj# zwVSzHY=6t44EPm#I-(fHfdb0D>*3E~x8Qt|d;6MaXNnMn89HhH3S6N;=GjCOf+t6e zFJi1~DIo;r@c?2tg7;^D@q7tbFY>c`Lg4!+n+nvwRxk&c=E-#-Fntv!pu<6R+U>^* zW;$sP2iM?vyc=6c{ms;exoeS{$OQu?wax@-D}QUd-$4bQ#n_|1tH+54bG_WYc9pQ; z=Q)=#s3p{@KDAGMdC@-2erim;-Rf9$YFo9XohEo(>uCb|h~4!-uB0RW$NPKj_M6FS zQzv0HSwEY&`- fOc9wG@uRYJfI!V $l$;Lb&d7>GjnYEG-OZ73_*7KA{fQ5X*!ZFB cL6YPu~_1*F@ z7=eO&+?+Ft-%9ICVFGc}S{Ay0>wn0YrxO;7`6Z (hiEnz!}T2jVfNUK{clxi++*dh303UIas!-$ZmQgm5K+dI~q*t*`zE z7E!zHlT92b0yQy{;EE`J MgW=eAxX_-DLZyDU9nxZE5(u6 z-Hf%2Dak#3@o&%f0FWXmNZm74@gccLT(CU6^?UEJoZZdJ*`HpN@&6AuFFt!C+{`go ziE4IpJL9Yrcva5$j7!N(WoMN(Oh`Su+04E#{@iSr&CB_ZH-G(q>`leT6Z=_}VWpeQ zdW;jqtYXecOA{2cR?ilkDW_&PD~xL6C^cHPV%pf*XwVO(EOXm~@X~<-Kj?2^gccW0 z<}9l)J)!Z3Qpbgz$xjodU=^3?v~M#<>v *mUNQylN}Q?+ zLV@2_rPE%{7qXJY;l4iLN>@d@&m4MSr8UetnN_Qc+d2aUPN&@N*6ZC|nBrj{cCG18 z7u#L8sn_Ars@)&D_TBN&?zZ8{LwmRnSDU8Z(yk|chm~l5XkMi>6E 7siexnH)txJWBOL>+K38NJ*>fqVC!nmY9*hwoHkWDrE& Q;*?e6?IGUPVd#FhSi(Y@ zRorp6r9rDE+5<1zEiD261yeEb{vk@7!zqpb%DFxqksCB7(rc H`#_y1)(*tJBg!8q{9Lv5-EQkcJ05RpMD`D70o=<4p2sK|c4*ekrU?Qa zyj^sS(f!r$;3;h3z34B4^2oRY3#XEo6gut+E- Sg1;W z6km0#c3XFk;o%pJS8N*k_UB{WHQ_P25(M7UWKwk+ 5r#kJ(e-IV tUWMHJ+!_JY>C0rxF%p#Z@|!M2uTRtsz2)Cr+X? zY06~z@8M~RYs^!XVsbj`)l*wlV49vtiU0T%%M1WrIhhsk?Zi$M4F)KIBKbjoH{Ouk zR0H$LFrXK3Lb||h=0M{;9o(gz%y~lVM2UD{(<#@KZnT}?fFsB zkzXdx9C{YLA>S| f9SzwX!#hCs<9ZdY5w6#}E>5b~`yE}m)7tfF)sD?} z8fTRT;Z_97$bBna7K9W0|7t~lk(@5~2U^(_OL9H;aH{Pxyx8tqLKAdJL;U|e9g(gE z;rqMezTMvSLz;ei$SCPL$tbU=OHVrRPAMW&bF~b|N;gJpWllL@;JP{$0?t M609_$4-f`Q(2}oLTojMq+0)gI96enu=it$Qj(%3nQ bB}~dDT*!3g?HpM1h_!)9pQ?XY zU?;%kWPU&fL_sJhI8g+DI-3q5HWF8dzx@GY>TY$NOjQE#OP+4C8^8+b|Js9<9O{Dj z8Ly%s_YufQ3enA7Uo^-lr2~%Sr^-mZe%yOd2uRaw0+kd3L|Z>@cbgV2Bs^`iCMZj$ zt0ANOkl7SQ$Mv`xlUc 6k`8ZzJG` )Vu0&kq$ja$IV)ZW( zQA$_5rHmn4BoW$!pO2`LJZ4K8Lb+>>OZ!xy1R!x?(65
HNwhy1{ z+1nR?52g3y*uzSdKz T-S}h|Gj%h~)KexBu&AJZpxs@r zM3g>tqT-F w>q=8zp{06_F-w3@0>%C2#Lb>!0<3>ql{Ps{3Mmavjl zY6yhCW(b0&QIY#oC`xuh0s$|YP}Ezfo|a>jFUP0^lut`7RKy*Pdi4Y{?qj%AJgDJj zC_ak-zpeln8xs6v?msfL8(&SO(z3o>fF4st1>h1VNmkx3JwPP7CaCf+w^#B)VQH<( zujL8YJi~>5*vn!?GHiKHtd~#Y1cY3rr||(Sve;j|hu3bGhbFTAgh1fF%TSScQX-0c zn3+f *yiYGLr&!7$voI5p)tmS0CJO~{7^a0dDcm#T>m?J@mt}$6 zPX-gyLk&7@UM#6f*a3k=46$7esN&EalcG2z@^YAey`8K>IMQqB`C$aI_KFXI?vk1C zr_97K6WcVC!}N8`82am6MRCEEgYU)y;65a9ofh#_X?x^u {ERQ_QJ>UZ27U`6uvkg`Z|!@se&oY_ z)5Q>X>Wiu3zMeKaCJ| 5o( zr*MyI%sM24`cv$fXWg~_sHQU&$h`!7k8ZuAepIQWu9sB-jCfohsH^M&BA)oPWFLlq z#Ue|%30V|I {PpdmxJ+6&cac%#aJW22^L^$Pf z%Juvf)KDiV9hZtJl6hXY9D$Wd3WzCxt=Vq*n5m9x%`TnhS?Sx%be3bdX}8O+srSu^ zxLkh2Dd`hKd9>-Kon@Ray2)5M?ginQp^HE6HfdA(aX$1;F)1h_afzMPsG}}(3nx^? zqkK2FBF?rYk`yoeRTFOS{XuPLeb7J7xIXr8>+rW<)@!6ipDmmI+lP=O*_fSwT7Ehe zuBo3J-jbq(hAwWJ4 BD&zR+jbOQSOiL4qXj>rY#|#zQe6!^bw{i;-?r# zuTn4RfHoK*4XeW#WO%$-w})^?bSH}iqUlw;jjy`8-444B%N?4~j}KFP9YTZ#*si;H z9%_^7D38!wl9F0q4QT3?ZTOmh#rA@x8`FR6Vo!|@>b!>rOC0Qat%x5e_>MYF^-Z)O zWZdrJnE2I9-(>d`^fHmXwaK*OnQMUna4 !`7CwI@L}R4x*V-Y(mp+QZ_DrtY@a`zF*I7l`tIqsgSOoBAi; zG>Yc}MaM4N4WiFM$v 1FbA>f?g;& zYC8I9@hO!m!t^UH5HP~ghty-T4xKmoy3O$exUf`1t@dA8fT>Qk7_a>qt^x;@>e;J6 zSwIq;&EW|NA>K(s2IJ!|uqWD7qGY9=%=vEaRFDky{6hDcP+k9l{FH TiG+N!JSwSP>be!Y=- z5|!{UMYL^gZ@1-vI(N3)p1aOAHN7`?^nBQ_rHGz*X1$}vzQOe#XrU);H)sB(#J3MP zsiK|^_NaJX)6%nU`t{E@e*}?df-4=1oa7$o$*AAE#Z 2`Sn#En^dea*ndX~R?PRP51B`{qi5Z;N2d<#Lp8`Es=9R=q54D~^|m}5 zp6GXIQR7eL7Ju8@x}uJ^RoT|IzNfdYKksbC8}to#o(`7xrh`Gl9n5WMVMpG*Bqhbk zrG-TrOGD@A+tT_S1qiz)OGBINg$;Z_ch&WN6gPfKbW(l5Bk&>5{(q1#>(Dhcv8=gg zw*$~LHK_^htTha?AUz=mmxleT9@b6c^+qWb-R!Hj8cb5mPm&a|O4%f23InE~XY~lG z+LE$N)K*)2T5nKR>bP@wf(GCbdLQWJi0w0(g?hYlP1Nn1^I=Er+v!ra-X6}oihn9u zj;U&=%b;TUK!u(iNPib5RvBZsL@As)^`L$27IMnTqu TT1-4 6&STYXt&2lE?yhZ)H1c6Bz^gGr zyr-X}4nmd05r5#6@bg?VIxSWj6t4@`jLbN|ysIi!3 ``=;G%rCPUA2@I{E$61+r^sDH+MShg+!gT^s9e!1T0q=>$@Ww-gT&OrFqmi4xx zAz<2FwP}7zq{NQYr(U#7R~{iMI 9#k0)6C zP#rNZK_qqucC+@?vIT}S3Ilm24Q0ld3Gju#B5L{$wmvPXYJTiAjf;f6CeS=$tfCy_ zG#_7Rj(;6b6|lT!DgJ7EOi8M685zR=wsA>lSJCUk-fr= viJSW15woG0uX7H+43_ zvz+4@#@X6CDh2~;ZyTZ@)niW`l>Ef-gLP0iqkmS;?8d-ucXmrL$y1E^5lj{*iY?HM z#30cWN#WU6_n SR=sP%R!LCp2sD)iod8v$!5HUsJ(t47Skcnm$K*KVTvOZGc zM$TOL >eY6jY4B^= zy?bG?S4_?Z#?;hdW@_(St9_^uQ>BZRxp5NO0m|CEq6k7}`==rYf zdRyU!GKp^NZMVme+m^NEKC&IIvd#g=7IW(k06Nw{7snBKECkyD_U7!E``w}LAiu-v z#Mee`bqDZdcg_*Irvq_Y9?;ajG~!TD4172D0Luf$0=3h-Hy!$$mRKY3i02HE0)JJ@ z*bp!oy)j|_0;zQ5^U!-{zbZ)0&|_-|6hMdRjp~R79OKqe?F0koJv(g5^)GZDDCB*y zxA%MA#+E#Wjs*>Xo$;`90YoCj(g^A~i&2oD5*0%jp<}q<>mu2)A$6(ffHr>bA~Y#g zx`Np??kgTNu(n@@iVX R4sE(a zGIx^1S%wOC+ M6%8^b7zDw_@AbH_R~GARaj)62W_uxjzH&6}xBF_nNi(y! z9sn!P2Dx5i#>t~4U8N>Y^?xw%OIp!AGXGXD7)pSs#*B7Ik_92KCH &CR8|1!$5B_=r-am(7_NA~uZcYIl|=#oZ7p#}Pmq}bz>|Ff zFRypDE{Sg^P??sLual^Q6x`CiLIP^)_l+a5JL(upE!+ncgRHQwcEjqmXL8qyZ<$D- zW_;VrmwSdT_gLDLlW*#!72pQo;q~^42|OhcCXG|5CW0;QmVYl1yjUU!e@n7(j`ea> z?Xjb#uijXsG&+@S3F@iZZpmkS^_~bIc_LgL0Ii-EN~I!(Dmzpap>v`Xr~l60*NgXV zq5x%Nj1f?7Yaf>ag@{!$&-tNP;EZzM7F5&oT{Q5uBO344A%vqN`yQiFQPeaTH9wyR zXzNuM5Cg=xE`R)nzby#8N#eXPv$X$Wlno7pQ8pXTy@8~8%`Onwg}nG2GZK1sN@0pv zBzzglC4l}om Ug}%Z%#dwa=#As zZ|{Z2D9Krt!U9jO+O}yg?=+KQB{Cq97~WA52%0nI*?%<~tj7_!99_3uC_w7H?%*bm zp^k*uh=%9j_|1aZO`J>l5vftnN$xBGi!>dX*9%N=G}A1>7O9veSisn8(pnzp8mXgE z6Uy}J&CRP{UJaPYpuPe+E+h x#CHV(bDOl7`xXR4Y1b-l9Ga2QB>~$*pW&sAdtKf4WGlQ1I za?J!WWiuW3GVOg@Dy4yAsY~pdS!J4MFQ%XTx%30@*MaYUyqYs}K?#93>rp>)0V5jl zALwV1fddhNO$|1H8R!WG56h+Mk-tlC2ja}1#?RHFm5mcHG;^?ZP#$`&J|+dcEjgYJ z{C`RpEC>G;0wM*(2$O|X;Jf|w_TEzpHMxGp`=XNbUW*rr53TKo8qo_;b_*whQch!N z(vVd3e-*s?CGg5m0$%e8z^fd1)yIH0n}hcvQx;SGaE=r%4L_eFm5PM|hNfL&`wvni zFO-326tmnHnmm^pD`J6Pk**~z?JmGv(tk>e>k&DRGk}*%N$TTM(%o_fF!@KNq;xqa z1@L#RnLEz}m&q{T#|0EZ1v1_S{M#s0LrVYo3Jx)IMey_ z0Fy{-vrmDrVWs~Ch;6cBk!yTH?(=`3d7#a79OT01u8S7JYkGNIG#T~f^Op+z!G9)I z60*OXmZ=6mS#)%@)6%=UfiXj-gx2tnFz$^~D>SI~=ibTxow+x^Mm01VcjE-@6a51T zwA{^#(c`eTqVJ|n+sD_wo~06ypYYeSH;<=7iMt6SqX)+Yu;mtX4Z6m`CRVhcBfH6_ zR~h(AQ}bxs&8FX4_a&KLprXb9Xhlr%LX5Wi$W^AF)fO*oQY^f*3~qaZe@t+T*>?Ds z1N`b*wI}y^t9Q3&^toyH_gaV|g}Wu)K;@VFGD` 9wzWs >7TK9)bAH>Mw2eW`Bm5QdM!Wvl^ z-4$hZ*M5@5@K~NR-%ZAXqTC=D3!2RYrTS`%SF#%|QfYRnR>F7^{gZTZl(?)OyDF6P z@r&G vk7Ooo{JoFzH zn2p_iUq75)x$o4sSL)(qzDs2;tm0FdV+DGEYG2e1tDKD=Fv(E$1C^poCb{(EI9AQC zKbpC Xq8L+zXr1{{Gnx2zKrX4=ABY76Y}tkZD7SaiGefI2|shBF?1q%E|Bnd8=$vH*wVy z7oI`N1Hy+2*^jIGan-U#9r)8Qs@%$qUFP6?EXn=3X;GpVn5v?EDmPbnXeLVm8}A86 zfNcgoFRv{qG{CV~{>T%+MnTe})sR$h_a(DPeO<;MW_+GZS1pDZp+P3k!h9y5wKz z?83%D=oeJ;_Hrtz3YZ7Oh7EMp^Qk!S-e8kwYJRDQr?HI+#bLM zQW+=GoWsfFEMdLZeQx94^o_k~sf1syagS$cJvfv4j0FQ4&~Xz+OKcfhs=svgz+IDP z!di=#^wQAiLv-m>#b`|*e`s1zn2uUsYH<0lH+QMw*P2OHz)qjR=5eyr3q-9%_XnnX zKp6;B^a5IudgA!Ly#uFls!AGufFpwmfhE}aso~h@!aTaLyA+P~n@8}uA8v}O0Md-X zd j_0hN%mMGXqM1+O{C4F4D$DfPosA!R0h?@P*E< zJyVG%rXw$aP5_`s_wV$~{X@s0;MLHX6kWBgA*lhd{T3;qK-ffrI+{LKqn4W()M5M) zNel?O;e(A8#%9su|9q%F*TdZpRnavYXP#Q2^Ko!}+*HUlfA@gh3#l0UZ+XMP?Accs z!WvsfTf@p@HBf;-#(^^r$Uf!TjB!T91h&neAXsK!1;W*Adi;RBl|s4+dv*ZUCXX#* zYR8kecGA)}L!4G<8_SiE{;7BA-+U1-uNFD5=d4iEvK%1}2JeHx&*ckpcj&iKhkG7> zzlTuRajbWGfBVB$TQH<_`DMp`#BTTz3zr6!spW)EQp$I}1Jq2zf{STNzKx1?Xx%GV z*!b8X NO>`fpmIyXofa(nd!%H+c;klra<_{@|Kl zAXb+&=3%^+t+i|I ^3wz^r5C;}RSN}$3BH&-}n^i~H z1R=Uxe|*QJDR^ndouE^Bf{Qah({i5Oz-k%j87MAagKGv9<{?MM-!kYN4z9U}mWGCB znA}xg>h{u8L-kwL9qJwz1-Ieh%JCzK59pk4itQk{WNs$5u|N!qGna_D5q#18g^pR? z2y5Y2(FN1$X{BePc2GJn3$R2X=*X u!|G;vK lKl_UHmh@C mU)TkA? z1<>A}Ap^%BlETnmP 0m!Rf$03>6>gpX3(ES&Y>5n{vcK)Ht@T=6=639 z%MfhR1E>qNQGz>UfAE~fls&H2eV{_kD{^)MS`I~DeYka<(i(zFZmzCVp4qk?U7pR@ zIBoQOcJgHqWQRI 4i8Nb@j&OC=A($S}fAbh^a-V!( z6P@GD+{!~}nE~yNnM63i`VdmMCWV+E@<|uAr;P_Qye;rMOFH)meSB;y7jJU^#nphQ z&fP>@( @F~zf3X8FG3$3$z!iB@Xm)AkJ0@~xHQxbag~>Rc84pxXa> z0Sd>nt1hI5y3G)zyb;nf7aE_oR(TgpRuc97oxuifs6u&v6>MPPf5#YSz z7~rg&eStB-H!q!nfj1v|%5?hQd>UR{mv-*&DkvPH3$b zsp;^dmdTJA48TJfuKCaLffM-eEAf$*M;7$c*O HXQmf2OzBib zcr0h8)6&=zU$;I}VRHy|nIv4JkzeV7#_M!C896^`K@>8{n06$)g@&srYr?Y@VG&c3 zbrbD4TJ|h#<9eLDG_=#`B1+Dam~nwPjR&YZ7qnvhkB3pKjWhyww99f~BIiyQL%+NK z>i;G!WLcAHLni| H%va!ZR)ZUe2Nv*Qq(SqZkkLAGg$H5%eH+bIAo@sup zd9LY?r_rwez5Uyh%*2U^a^l6^Ma6+R4b-TN+jOU`Sl`4+7W`wKNA6BANrx*H98A+6 zXw2_$#SIYcnnN>|Et7xgVJMrPX^A&z?FZ8lHC-NtNQif~88ve73NIgucr_eWzWMn* z=q!AWrsR#lhTf_!KgSYg kxvK4xyWR+N+T&$M(2HW_MnQO*~32$gY!BnK*ZDmE$)A{r+9GoL+!f6&OOp< zCT+_~gGubDYjvxu(b*J`qY%-qT5V~d9RGiLsjLA0^2PPNxIlaL=}uIpb0S*ZL|`~7 zU)@M4iX >|-+yT5r12g6=mvQ*AyC=2u|AZlW-f zz9(t(aJlV|z}$bk23dPaITyCgYDn@#Bw m|=%f94_4tM(;*4NHq7!+4g3j zA?{mtvZ_H@S2Q>1Lt}b&`ZL qJ5BP~jRec3K{KUtV~ #@Sg+MnrS*)uUHNu@{%*3%p)GI u3;7bzK% dK%=#9 `uQ^lYp8D6o7M)jO1R3_5gD|ML *&|55|poxFR1VMA_Q*Ii$3FuKk#aj(}x_M76 zJ3{VYe!xiG;V7b~ 36f8{XiE25JsN*-`&w5dd7q<~c?$5=|&n0x2Vc zoEd*b6x(gp9M7U_Y$ck`x#VMc0C{m8+v5xpgklV)35sNai+(DlOJ{)v?pmG#uryN3 z>=#5cXBhz=fLpwVBv_CHGZ!%|H7T0nwyhcYPzEhi0)du8G}n4U?}!s%FJnkzPnUY~ zY5e!dlVvGMmcXq+Ccz4V{?r}M)I`5>L&twba!qLwfi9eHy7HhK<2&
x**c6@4w`FK#(*U^~vTQgeG;Rb5=_%3h1YpZ_zjh&{OJYHXQel3K_ zLbBxkK$Aba@PsX=OV{8G^u&QYC5iBdOIcxtetr9S`{66v!q>l>;h{W#l>+?zwab6n zPi)6`xUJ2@@4o{`RqUI?X+SU#KDRYejm_9PqSsrWRB>-}k7*NIbV+K<*Dr0=bdZ!D za4#={H(t2q@rTzC7|xH^r}O&nZF#3#cb9*@c+hz!{MU z;~Ct }WvX*^5e_<4;+hHFxKXbNw+;*i z#2Bm0*8!YZ<#lF_qEzG_3&JJby&9|xT>Jqj!6hlcS{l&bOALgTdZ(VClJcM 0tK^V*6W6v2A#v0z=mvLdhTM|N^s-^sz9~q0>!@qy3HI_>t z%0PK=J8~@qK(g!)bh$jB`mu0!>u~7W;cqv`;kocJ86*L%fyO?3QCVndyRoO~w`&K$ z$NjImZMhsP4_u=@dsdzV;>qw1H4S7ZR?)jP07tD`3hxNqxya=VOVWj`bE ~!a= zaD%;vo)^ufvvOJ!j{q23xGaBA*euq!EiCNIvAK5z^^9q=lnT={yMXp-N`*HgPnc_) zZ@xH%p1V2xPfk@Ss>RDUozfo+TRplnAQ2M(Fvk2(yQJtbu5XQa3QPj5kx-b19@cER z#*vV%7s!~d2OYiuQm{28Tou5dxg3ae&{mgor6Z?G2LR4Me+w3lIO2cI1oWHF045hZ zdlY~2*!apeWSWUEW9Y(I3jmBAAzC=Eii2Ct=!^