From 3042ca49ca192f09c96314423be875ce98a7ab9d Mon Sep 17 00:00:00 2001 From: mhjensen Date: Thu, 11 Nov 2021 16:56:13 +0100 Subject: [PATCH] Update with video of week45 --- README.md | 1 + doc/pub/week45/html/._week45-bs000.html | 465 ++-- doc/pub/week45/html/._week45-bs001.html | 449 ++-- doc/pub/week45/html/._week45-bs002.html | 454 ++-- doc/pub/week45/html/._week45-bs003.html | 444 ++-- doc/pub/week45/html/._week45-bs004.html | 437 ++-- doc/pub/week45/html/._week45-bs005.html | 437 ++-- doc/pub/week45/html/._week45-bs006.html | 446 ++-- doc/pub/week45/html/._week45-bs007.html | 445 ++-- doc/pub/week45/html/._week45-bs008.html | 443 ++-- doc/pub/week45/html/._week45-bs009.html | 461 ++-- doc/pub/week45/html/._week45-bs010.html | 450 ++-- doc/pub/week45/html/._week45-bs011.html | 444 ++-- doc/pub/week45/html/._week45-bs012.html | 460 ++-- doc/pub/week45/html/._week45-bs013.html | 447 ++-- doc/pub/week45/html/._week45-bs014.html | 454 ++-- doc/pub/week45/html/._week45-bs015.html | 441 ++-- doc/pub/week45/html/._week45-bs016.html | 442 ++-- doc/pub/week45/html/._week45-bs017.html | 448 ++-- doc/pub/week45/html/._week45-bs018.html | 454 ++-- doc/pub/week45/html/._week45-bs019.html | 447 ++-- doc/pub/week45/html/._week45-bs020.html | 440 ++-- doc/pub/week45/html/._week45-bs021.html | 444 ++-- doc/pub/week45/html/._week45-bs022.html | 441 ++-- doc/pub/week45/html/._week45-bs023.html | 445 ++-- doc/pub/week45/html/._week45-bs024.html | 441 ++-- doc/pub/week45/html/._week45-bs025.html | 444 ++-- doc/pub/week45/html/._week45-bs026.html | 461 ++-- doc/pub/week45/html/._week45-bs027.html | 461 ++-- doc/pub/week45/html/._week45-bs028.html | 461 ++-- doc/pub/week45/html/._week45-bs029.html | 464 ++-- doc/pub/week45/html/._week45-bs030.html | 465 ++-- doc/pub/week45/html/._week45-bs031.html | 444 ++-- doc/pub/week45/html/._week45-bs032.html | 451 ++-- doc/pub/week45/html/._week45-bs033.html | 450 ++-- doc/pub/week45/html/._week45-bs034.html | 447 ++-- doc/pub/week45/html/._week45-bs035.html | 461 ++-- doc/pub/week45/html/._week45-bs036.html | 468 ++-- doc/pub/week45/html/._week45-bs037.html | 459 ++-- doc/pub/week45/html/._week45-bs038.html | 461 ++-- doc/pub/week45/html/._week45-bs039.html | 461 ++-- doc/pub/week45/html/._week45-bs040.html | 461 ++-- doc/pub/week45/html/._week45-bs041.html | 484 ++-- doc/pub/week45/html/._week45-bs042.html | 484 ++-- doc/pub/week45/html/._week45-bs043.html | 436 ++-- doc/pub/week45/html/._week45-bs044.html | 440 ++-- doc/pub/week45/html/._week45-bs045.html | 447 ++-- doc/pub/week45/html/._week45-bs046.html | 443 ++-- doc/pub/week45/html/._week45-bs047.html | 448 ++-- doc/pub/week45/html/._week45-bs048.html | 444 ++-- doc/pub/week45/html/._week45-bs049.html | 465 ++-- doc/pub/week45/html/._week45-bs050.html | 453 ++-- doc/pub/week45/html/._week45-bs051.html | 452 ++-- doc/pub/week45/html/._week45-bs052.html | 461 ++-- doc/pub/week45/html/._week45-bs053.html | 461 ++-- doc/pub/week45/html/._week45-bs054.html | 464 ++-- doc/pub/week45/html/._week45-bs055.html | 530 ++-- doc/pub/week45/html/._week45-bs056.html | 462 ++-- doc/pub/week45/html/._week45-bs057.html | 446 ++-- doc/pub/week45/html/._week45-bs058.html | 468 ++-- doc/pub/week45/html/._week45-bs059.html | 484 ++-- doc/pub/week45/html/._week45-bs060.html | 444 ++-- doc/pub/week45/html/._week45-bs061.html | 462 ++-- doc/pub/week45/html/._week45-bs062.html | 445 ++-- doc/pub/week45/html/._week45-bs063.html | 467 ++-- doc/pub/week45/html/._week45-bs064.html | 453 ++-- doc/pub/week45/html/._week45-bs065.html | 449 ++-- doc/pub/week45/html/._week45-bs066.html | 455 ++-- doc/pub/week45/html/._week45-bs067.html | 447 ++-- doc/pub/week45/html/._week45-bs068.html | 449 ++-- doc/pub/week45/html/._week45-bs069.html | 464 ++-- doc/pub/week45/html/._week45-bs070.html | 444 ++-- doc/pub/week45/html/._week45-bs071.html | 454 ++-- doc/pub/week45/html/._week45-bs072.html | 443 ++-- doc/pub/week45/html/._week45-bs073.html | 451 ++-- doc/pub/week45/html/._week45-bs074.html | 461 ++-- doc/pub/week45/html/._week45-bs075.html | 461 ++-- doc/pub/week45/html/._week45-bs076.html | 447 ++-- doc/pub/week45/html/._week45-bs077.html | 461 ++-- doc/pub/week45/html/._week45-bs078.html | 463 ++-- doc/pub/week45/html/week45-bs.html | 465 ++-- doc/pub/week45/html/week45-reveal.html | 2023 ++++++---------- doc/pub/week45/html/week45-solarized.html | 2065 +++++++--------- doc/pub/week45/html/week45.html | 2143 +++++++---------- doc/pub/week45/ipynb/DataFiles/cancer.dot | 54 +- doc/pub/week45/ipynb/DataFiles/cancer.png | Bin 221561 -> 246246 bytes doc/pub/week45/ipynb/DataFiles/ride.dot | 10 +- .../Results/FigureFiles/votingsimple.png | Bin 39880 -> 42831 bytes doc/pub/week45/ipynb/ipynb-week45-src.tar.gz | Bin 294340 -> 293595 bytes doc/pub/week45/ipynb/week45.ipynb | 914 +++---- doc/src/week45/week45.do.txt | 1 + 91 files changed, 17888 insertions(+), 25678 deletions(-) diff --git a/README.md b/README.md index 458ee77cd..4c047da5e 100644 --- a/README.md +++ b/README.md @@ -385,6 +385,7 @@ Recommended prereading: Chapters 1-2 (linear algebra) and chapter 3 (statistics) ### Week 45 November 8-12 - Lab Wednesday: Work on project 2, project 3 available Friday 12th. Deadline project 2 is November 15. - Lecture Thursday: Decision Trees and Ensemble methods, Bagging and Voting + - Video of Lecture at https://www.uio.no/studier/emner/matnat/fys/FYS-STK3155/h21/forelesningsvideoer/LectureNovember11.mp4?vrtx=view-as-webpage - Lecture Friday: Ensemble Methods, Random Forests, Boosting and gradient boosting - Reading recommendations: - See lecture notes for week 45 at https://compphysics.github.io/MachineLearning/doc/web/course.html. diff --git a/doc/pub/week45/html/._week45-bs000.html b/doc/pub/week45/html/._week45-bs000.html index d7e0ee14e..6fb3409bc 100644 --- a/doc/pub/week45/html/._week45-bs000.html +++ b/doc/pub/week45/html/._week45-bs000.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
+

 

 

 

+ -
-
-

Week 45: Decisions Trees, Random Forests, Bagging and Boosting

-
+ + +
+

Week 45: Decisions Trees, Random Forests, Bagging and Boosting

+ +

+

Morten Hjorth-Jensen [1, 2]
- -
-[1] Department of Physics, University of Oslo -
-
-[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University -
-
-
-

Nov 11, 2021

-
-
+

+ + +

[1] Department of Physics, University of Oslo
+
[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University
+
+

+

Nov 11, 2021

+
+

Read »

@@ -438,18 +360,25 @@ MathJax.Hub.Config({
  • »
  • +
    + + +
    © 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license
    + + + diff --git a/doc/pub/week45/html/._week45-bs001.html b/doc/pub/week45/html/._week45-bs001.html index dde0d8852..264e8879f 100644 --- a/doc/pub/week45/html/._week45-bs001.html +++ b/doc/pub/week45/html/._week45-bs001.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Overview of week 45

    + +

    Overview of week 45

    • Thursday: Basics of Decision Trees, Bagging and Voting
    • + + +
    • Friday: More on Bagging, Voting, Random Forests and start Boosting
    +
    - +

    +

    1. Video on Decision trees
    2. Video on boosting methods by Hastie.
    3. @@ -408,9 +337,11 @@ MathJax.Hub.Config({
    +

    - +

    +

    1. Decision Trees: Geron's chapter 6 covers decision trees while ensemble models, voting and bagging are discussed in chapter 7. See also lecture from STK-IN4300, lecture 7. Chapter 9.2 of Hastie et al contains also a good discussion.
    @@ -418,6 +349,7 @@ MathJax.Hub.Config({
    +

      @@ -438,18 +370,25 @@ MathJax.Hub.Config({
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs002.html b/doc/pub/week45/html/._week45-bs002.html index 53975cdb9..a90db8f43 100644 --- a/doc/pub/week45/html/._week45-bs002.html +++ b/doc/pub/week45/html/._week45-bs002.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Decision trees, overarching aims

    -

    We start here with the most basic algorithm, the so-called decision +

    Decision trees, overarching aims

    + +

    +We start here with the most basic algorithm, the so-called decision tree. With this basic algorithm we can in turn build more complex networks, spanning from homogeneous and heterogenous forests (bagging, random forests and more) to one of the most popular supervised algorithms nowadays, the extreme gradient boosting, or just XGBoost. But let us start with the simplest possible ingredient. -

    -

    Decision trees are supervised learning algorithms used for both, +

    +Decision trees are supervised learning algorithms used for both, classification and regression tasks. -

    -

    The main idea of decision trees +

    +The main idea of decision trees is to find those descriptive features which contain the most information regarding the target feature and then split the dataset along the values of these features such that the target feature values for the resulting underlying datasets are as pure as possible. -

    -

    The descriptive features which reproduce best the target/output features are normally said +

    +The descriptive features which reproduce best the target/output features are normally said to be the most informative ones. The process of finding the most informative feature is done until we accomplish a stopping criteria -where we then finally end up in so called leaf nodes. -

    +where we then finally end up in so called leaf nodes. +

      @@ -439,18 +362,25 @@ where we then finally end up in so called leaf nodes.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs003.html b/doc/pub/week45/html/._week45-bs003.html index a34c4b2da..0e668130e 100644 --- a/doc/pub/week45/html/._week45-bs003.html +++ b/doc/pub/week45/html/._week45-bs003.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Basics of a tree

    -

    A decision tree is typically divided into a root node, the interior nodes, +

    Basics of a tree

    + +

    +A decision tree is typically divided into a root node, the interior nodes, and the final leaf nodes or just leaves. These entities are then connected by so-called branches. -

    -

    The leaf nodes +

    +The leaf nodes contain the predictions we will make for new query instances presented to our trained model. This is possible since the model has learned the underlying structure of the training data and hence can, given some assumptions, make predictions about the target feature value (class) of unseen query instances. -

    +

      @@ -427,18 +350,25 @@ given some assumptions, make predictions about the target feature value
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs004.html b/doc/pub/week45/html/._week45-bs004.html index 3cd5a9901..394302409 100644 --- a/doc/pub/week45/html/._week45-bs004.html +++ b/doc/pub/week45/html/._week45-bs004.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    A Sketch of a Tree, Regression problem

    +

    A Sketch of a Tree, Regression problem

    + +

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs005.html b/doc/pub/week45/html/._week45-bs005.html index 841e2acbf..6afc48a68 100644 --- a/doc/pub/week45/html/._week45-bs005.html +++ b/doc/pub/week45/html/._week45-bs005.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    A Sketch of a Tree, Classification problem

    +

    A Sketch of a Tree, Classification problem

    + +

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs006.html b/doc/pub/week45/html/._week45-bs006.html index 922fc2459..50dda9297 100644 --- a/doc/pub/week45/html/._week45-bs006.html +++ b/doc/pub/week45/html/._week45-bs006.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    -
    -

    -
    -

    +

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches.

    +

    +



    +

    +This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches. + +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs007.html b/doc/pub/week45/html/._week45-bs007.html index ba1f73877..19106a405 100644 --- a/doc/pub/week45/html/._week45-bs007.html +++ b/doc/pub/week45/html/._week45-bs007.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    General Features

    -

    The overarching approach to decision trees is a top-down approach.

    +

    General Features

    + +

    +The overarching approach to decision trees is a top-down approach.

    -

    This process is then repeated for the subtree rooted at the new -node. -

    +This process is then repeated for the subtree rooted at the new +node. + +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs008.html b/doc/pub/week45/html/._week45-bs008.html index d31aad625..03360d14f 100644 --- a/doc/pub/week45/html/._week45-bs008.html +++ b/doc/pub/week45/html/._week45-bs008.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    How do we set it up?

    -

    In simplified terms, the process of training a decision tree and +

    How do we set it up?

    + +

    +In simplified terms, the process of training a decision tree and predicting the target features of query instances is as follows: -

    1. Present a dataset containing of a number of training instances characterized by a number of descriptive features and a target feature
    2. @@ -403,8 +325,10 @@ predicting the target features of query instances is as follows:
    3. Grow the tree until we accomplish a stopping criteria create leaf nodes which represent the predictions we want to make for new query instances
    4. Show query instances to the tree and run down the tree until we arrive at leaf nodes
    -

    Then we are essentially done!

    +Then we are essentially done! + +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs009.html b/doc/pub/week45/html/._week45-bs009.html index 705f6fbe3..cfd2b1713 100644 --- a/doc/pub/week45/html/._week45-bs009.html +++ b/doc/pub/week45/html/._week45-bs009.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Decision trees and Regression

    + +

    Decision trees and Regression

    +

    -

    -
    -
    -
    -
    -
    import numpy as np
    +
    import numpy as np
     import matplotlib.pyplot as plt
     from sklearn.preprocessing import PolynomialFeatures
     from sklearn.linear_model import LinearRegression
    @@ -487,22 +405,8 @@ plt.ylabel(&quo
     plt.title("Decision Tree Regression")
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs010.html b/doc/pub/week45/html/._week45-bs010.html index 1db65912e..51fead3ea 100644 --- a/doc/pub/week45/html/._week45-bs010.html +++ b/doc/pub/week45/html/._week45-bs010.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Building a tree, regression

    -

    There are mainly two steps

    +

    Building a tree, regression

    + +

    +There are mainly two steps +

    1. We split the predictor space (the set of possible values \( x_1,x_2,\dots, x_p \)) into \( J \) distinct and non-non-overlapping regions, \( R_1,R_2,\dots,R_J \).
    2. For every observation that falls into the region \( R_j \) , we make the same prediction, which is simply the mean of the response values for the training observations in \( R_j \).
    -

    How do we construct the regions \( R_1,\dots,R_J \)? In theory, the + +How do we construct the regions \( R_1,\dots,R_J \)? In theory, the regions could have any shape. However, we choose to divide the predictor space into high-dimensional rectangles, or boxes, for simplicity and for ease of interpretation of the resulting predictive model. The goal is to find boxes \( R_1,\dots,R_J \) that minimize the MSE, given by -

    $$ \sum_{j=1}^J\sum_{i\in R_j}(y_i-\overline{y}_{R_j})^2, $$ -

    where \( \overline{y}_{R_j} \) is the mean response for the training observations -within box \( j \). -

    +

    +where \( \overline{y}_{R_j} \) is the mean response for the training observations +within box \( j \). +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs011.html b/doc/pub/week45/html/._week45-bs011.html index a4d1b5fd1..ed0276b43 100644 --- a/doc/pub/week45/html/._week45-bs011.html +++ b/doc/pub/week45/html/._week45-bs011.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    A top-down approach, recursive binary splitting

    -

    Unfortunately, it is computationally infeasible to consider every +

    A top-down approach, recursive binary splitting

    + +

    +Unfortunately, it is computationally infeasible to consider every possible partition of the feature space into \( J \) boxes. The common strategy is to take a top-down approach -

    -

    The approach is top-down because it begins at the top of the tree (all +

    +The approach is top-down because it begins at the top of the tree (all observations belong to a single region) and then successively splits the predictor space; each split is indicated via two new branches further down on the tree. It is greedy because at each step of the tree-building process, the best split is made at that particular step, rather than looking ahead and picking a split that will lead to a better tree in some future step. -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs012.html b/doc/pub/week45/html/._week45-bs012.html index 2f44618c0..4ce37b00f 100644 --- a/doc/pub/week45/html/._week45-bs012.html +++ b/doc/pub/week45/html/._week45-bs012.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Making a tree

    -

    In order to implement the recursive binary splitting we start by selecting +

    Making a tree

    + +

    +In order to implement the recursive binary splitting we start by selecting the predictor \( x_j \) and a cutpoint \( s \) that splits the predictor space into two regions \( R_1 \) and \( R_2 \) -

    $$ \left\{X\vert x_j < s\right\}, $$ -

    and

    +and $$ \left\{X\vert x_j \geq s\right\}, $$ -

    so that we obtain the lowest MSE, that is

    +so that we obtain the lowest MSE, that is $$ \sum_{i:x_i\in R_j}(y_i-\overline{y}_{R_1})^2+\sum_{i:x_i\in R_2}(y_i-\overline{y}_{R_2})^2, $$ -

    which we want to minimize by considering all predictors +

    +which we want to minimize by considering all predictors \( x_1,x_2,\dots,x_p \). We consider also all possible values of \( s \) for each predictor. These values could be determined by randomly assigned numbers or by starting at the midpoint and then proceed till we find an optimal value. -

    -

    For any \( j \) and \( s \), we define the pair of half-planes where +

    +For any \( j \) and \( s \), we define the pair of half-planes where \( \overline{y}_{R_1} \) is the mean response for the training observations in \( R_1(j,s) \), and \( \overline{y}_{R_2} \) is the mean response for the training observations in \( R_2(j,s) \). -

    -

    Finding the values of \( j \) and \( s \) that minimize the above equation can be +

    +Finding the values of \( j \) and \( s \) that minimize the above equation can be done quite quickly, especially when the number of features \( p \) is not too large. -

    -

    Next, we repeat the process, looking +

    +Next, we repeat the process, looking for the best predictor and best cutpoint in order to split the data further so as to minimize the MSE within each of the resulting regions. However, this time, instead of splitting the entire predictor @@ -437,8 +360,8 @@ have three regions. Again, we look to split one of these three regions further, so as to minimize the MSE. The process continues until a stopping criterion is reached; for instance, we may continue until no region contains more than five observations. -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs013.html b/doc/pub/week45/html/._week45-bs013.html index cc72ac5de..5bc32e1f5 100644 --- a/doc/pub/week45/html/._week45-bs013.html +++ b/doc/pub/week45/html/._week45-bs013.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Pruning the tree

    -

    The above procedure is rather straightforward, but leads often to +

    Pruning the tree

    + +

    +The above procedure is rather straightforward, but leads often to overfitting and unnecessarily large and complicated trees. The basic idea is to grow a large tree \( T_0 \) and then prune it back in order to obtain a subtree. A smaller tree with fewer splits (fewer regions) can lead to smaller variance and better interpretation at the cost of a little more bias. -

    -

    The so-called Cost complexity pruning algorithm gives us a +

    +The so-called Cost complexity pruning algorithm gives us a way to do just this. Rather than considering every possible subtree, we consider a sequence of trees indexed by a nonnegative tuning parameter \( \alpha \). -

    -

    Read more at the following Scikit-Learn link on pruning.

    +

    +Read more at the following Scikit-Learn link on pruning. +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs014.html b/doc/pub/week45/html/._week45-bs014.html index 88408fb6b..28abda8e9 100644 --- a/doc/pub/week45/html/._week45-bs014.html +++ b/doc/pub/week45/html/._week45-bs014.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Cost complexity pruning

    -

    For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that

    +

    Cost complexity pruning

    + +

    +For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that $$ \sum_{m=1}^{\overline{T}}\sum_{i:x_i\in R_m}(y_i-\overline{y}_{R_m})^2+\alpha\overline{T}, $$ -

    is as small as possible. Here \( \overline{T} \) is +is as small as possible. Here \( \overline{T} \) is the number of terminal nodes of the tree \( T \) , \( R_m \) is the rectangle (i.e. the subset of predictor space) corresponding to the \( m \)-th terminal node. -

    -

    The tuning parameter \( \alpha \) controls a trade-off between the subtree’s +

    +The tuning parameter \( \alpha \) controls a trade-off between the subtree’s complexity and its fit to the training data. When \( \alpha = 0 \), then the subtree \( T \) will simply equal \( T_0 \), because then the above equation just measures the training error. However, as \( \alpha \) increases, there is a price to pay for having a tree with many terminal nodes. The above equation will -tend to be minimized for a smaller subtree. -

    +tend to be minimized for a smaller subtree. -

    It turns out that as we increase \( \alpha \) from zero +

    +It turns out that as we increase \( \alpha \) from zero branches get pruned from the tree in a nested and predictable fashion, so obtaining the whole sequence of subtrees as a function of \( \alpha \) is easy. We can select a value of \( \alpha \) using a validation set or using cross-validation. We then return to the full data set and obtain the -subtree corresponding to \( \alpha \). -

    +subtree corresponding to \( \alpha \). +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs015.html b/doc/pub/week45/html/._week45-bs015.html index d2009c726..1ec7d6e61 100644 --- a/doc/pub/week45/html/._week45-bs015.html +++ b/doc/pub/week45/html/._week45-bs015.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Schematic Regression Procedure

    +

    Schematic Regression Procedure

    + +

    - +

    1. Use recursive binary splitting to grow a large tree on the training data, stopping only when each terminal node has fewer than some minimum number of observations.
    2. Apply cost complexity pruning to the large tree in order to obtain a sequence of best subtrees, as a function of \( \alpha \).
    3. Use for example \( K \)-fold cross-validation to choose \( \alpha \). Divide the training observations into \( K \) folds. For each \( k=1,2,\dots,K \) we:
    4. +
      • repeat steps 1 and 2 on all but the \( k \)-th fold of the training data.
      • Then we valuate the mean squared prediction error on the data in the left-out \( k \)-th fold, as a function of \( \alpha \).
      • Finally we average the results for each value of \( \alpha \), and pick \( \alpha \) to minimize the average error.
      +
    5. Return the subtree from Step 2 that corresponds to the chosen value of \( \alpha \).
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs016.html b/doc/pub/week45/html/._week45-bs016.html index bfabe467e..bb7d44c17 100644 --- a/doc/pub/week45/html/._week45-bs016.html +++ b/doc/pub/week45/html/._week45-bs016.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    A Classification Tree

    -

    A classification tree is very similar to a regression tree, except +

    A Classification Tree

    + +

    +A classification tree is very similar to a regression tree, except that it is used to predict a qualitative response rather than a quantitative one. Recall that for a regression tree, the predicted response for an observation is given by the mean response of the @@ -404,9 +327,9 @@ in the region to which it belongs. In interpreting the results of a classification tree, we are often interested not only in the class prediction corresponding to a particular terminal node region, but also in the class proportions among the training observations that -fall into that region. -

    +fall into that region. +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs017.html b/doc/pub/week45/html/._week45-bs017.html index 9ff761564..3d648e5c0 100644 --- a/doc/pub/week45/html/._week45-bs017.html +++ b/doc/pub/week45/html/._week45-bs017.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Growing a classification tree

    -

    The task of growing a +

    Growing a classification tree

    + +

    +The task of growing a classification tree is quite similar to the task of growing a regression tree. Just as in the regression setting, we use recursive binary splitting to grow a classification tree. However, in the @@ -403,15 +326,15 @@ error rate. Since we plan to assign an observation in a given region to the most commonly occurring error rate class of training observations in that region, the classification error rate is simply the fraction of the training observations in that region that do not -belong to the most common class. -

    +belong to the most common class. -

    When building a classification tree, either the Gini index or the +

    +When building a classification tree, either the Gini index or the entropy are typically used to evaluate the quality of a particular split, since these two approaches are more sensitive to node purity -than is the classification error rate. -

    +than is the classification error rate. +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs018.html b/doc/pub/week45/html/._week45-bs018.html index 91a4949b7..ef7dfc4e8 100644 --- a/doc/pub/week45/html/._week45-bs018.html +++ b/doc/pub/week45/html/._week45-bs018.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Classification tree, how to split nodes

    -

    If our targets are the outcome of a classification process that takes +

    Classification tree, how to split nodes

    + +

    +If our targets are the outcome of a classification process that takes for example \( k=1,2,\dots,K \) values, the only thing we need to think of is to set up the splitting criteria for each node. -

    -

    We define a PDF \( p_{mk} \) that represents the number of observations of +

    +We define a PDF \( p_{mk} \) that represents the number of observations of a class \( k \) in a region \( R_m \) with \( N_m \) observations. We represent this likelihood function in terms of the proportion \( I(y_i=k) \) of observations of this class in the region \( R_m \) as -

    $$ p_{mk} = \frac{1}{N_m}\sum_{i\in R_m}I(y_i=k). $$ -

    We let \( p_{mk} \) represent the majority class of observations in region +

    +We let \( p_{mk} \) represent the majority class of observations in region \( m \). The three most common ways of splitting a node are given by -

    + $$ \frac{1}{N_m}\sum_{i\in R_m}I(y_i\ne k) = 1-p_{mk}. $$ + + $$ g = \sum_{k\ne k'} p_{mk}p_{mk'}=\sum_{k=1}^K p_{mk}(1-p_{mk}). $$ + + $$ s = -\sum_{k=1}^K p_{mk}\log{p_{mk}}. $$ - +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs019.html b/doc/pub/week45/html/._week45-bs019.html index 9cf90fe45..726a31a39 100644 --- a/doc/pub/week45/html/._week45-bs019.html +++ b/doc/pub/week45/html/._week45-bs019.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Gini Index (or Coefficient or Impurity)

    -

    The Gini index \( g \) gives us the degree of probability of a specific +

    Gini Index (or Coefficient or Impurity)

    + +

    +The Gini index \( g \) gives us the degree of probability of a specific variable that is wrongly classified. -

    -

    It takes values \( g \in [0,1] \),

    +

    +It takes values \( g \in [0,1] \), +

    1. \( g=0 \) means a pure case where all elements belong to one class only.
    2. A value \( g=1 \) means that all elements are randomly distributed across various classes.
    3. A value \( g=0.5 \) means that the elements in a node are uniformly distributed across classes.
    -

    It favors binary splitting.

    +It favors binary splitting. + +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs020.html b/doc/pub/week45/html/._week45-bs020.html index e8cfabfaf..108f8bf3a 100644 --- a/doc/pub/week45/html/._week45-bs020.html +++ b/doc/pub/week45/html/._week45-bs020.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Why binary splits?

    -

    It is custom to split to a tree uising binary splits. The reason is +

    Why binary splits?

    + +

    +It is custom to split to a tree uising binary splits. The reason is that multiway splits fragment the data too quickly, leaving insufficient data at the next level down. Multiway splits can be achieved by a series of binary split and this is normally preferred. -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs021.html b/doc/pub/week45/html/._week45-bs021.html index 446666575..f6c5ebf52 100644 --- a/doc/pub/week45/html/._week45-bs021.html +++ b/doc/pub/week45/html/._week45-bs021.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing a Tree using the Gini Index

    -

    Consider the following example with attributes/features and two +

    Computing a Tree using the Gini Index

    + +

    +Consider the following example with attributes/features and two possible outcomes (classes) for each attribute. Assume we wish to find some correlations between the average grade of a student as function of the number of hours studied and hours slept. We want also to correlate the grade in a given course with the general trend, whether the students recently has gotten grades below average or above. -

    -

    We have three features/attributes

    +

    +We have three features/attributes +

    1. Trend of average grades before present course, classified as either below or above the average grade of the whole class
    2. The number of hours studies, classified again as either higher (more than 3 hours per day) or lower . Here we have used a standard for one \( ECTS \) which is scaled to 25-30 hours of work for a semester which lasts 18 weeks, with 15 weeks of lectures and 3 weeks for exams, assuming a total of 30 ECTS per semester.
    3. The number of hours slept as high for more than \( 8 \) hours and below for less than 8 hours of sleep, classified again as either high or low
    4. The final grade whether it is above or below average
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs022.html b/doc/pub/week45/html/._week45-bs022.html index f78ceea8b..b5c665efb 100644 --- a/doc/pub/week45/html/._week45-bs022.html +++ b/doc/pub/week45/html/._week45-bs022.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    The Table

    + +

    The Table

    + +

    - +
    @@ -414,7 +338,7 @@ MathJax.Hub.Config({
    Grade Trend Hours slept Hours Studied Grade
    - +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs023.html b/doc/pub/week45/html/._week45-bs023.html index 0017eee72..c5ff76402 100644 --- a/doc/pub/week45/html/._week45-bs023.html +++ b/doc/pub/week45/html/._week45-bs023.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing the various Gini Indices

    -

    In computations we will translate all classes into numbers. Being +

    Computing the various Gini Indices

    + +

    +In computations we will translate all classes into numbers. Being these binary classes, they can easily be split into ones and zeros. -

    +

    - -

    See handwritten notes for Thursday November 11

    +

    +See handwritten notes for Thursday November 11

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs024.html b/doc/pub/week45/html/._week45-bs024.html index 77b337b16..121f93c24 100644 --- a/doc/pub/week45/html/._week45-bs024.html +++ b/doc/pub/week45/html/._week45-bs024.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing the various Gini Indices, Hours slept

    +

    Computing the various Gini Indices, Hours slept

    + +

    - -

    See handwritten notes for Thursday November 11

    +

    +See handwritten notes for Thursday November 11

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs025.html b/doc/pub/week45/html/._week45-bs025.html index 23a2909ec..63cc1f7fe 100644 --- a/doc/pub/week45/html/._week45-bs025.html +++ b/doc/pub/week45/html/._week45-bs025.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing the various Gini Indices, Hours studied

    +

    Computing the various Gini Indices, Hours studied

    + +

    - -

    See handwritten notes for Thursday November 11

    +

    +See handwritten notes for Thursday November 11

    -

    For final tree, see the above handwritten notes

    +

    +For final tree, see the above handwritten notes +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs026.html b/doc/pub/week45/html/._week45-bs026.html index fa9dc631c..5c73f6d99 100644 --- a/doc/pub/week45/html/._week45-bs026.html +++ b/doc/pub/week45/html/._week45-bs026.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    A possible code using Scikit-Learn

    +

    A possible code using Scikit-Learn

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -467,22 +385,8 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/grade.dot -o DataFiles/grades.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs027.html b/doc/pub/week45/html/._week45-bs027.html index fe7872523..8f0758db4 100644 --- a/doc/pub/week45/html/._week45-bs027.html +++ b/doc/pub/week45/html/._week45-bs027.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Visualizing Trees, More examples

    + +

    Visualizing Trees, More examples

    +

    -

    -
    -
    -
    -
    -
    import os
    +
    import os
     from sklearn.datasets import load_breast_cancer
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.model_selection import train_test_split
    @@ -432,22 +350,8 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs028.html b/doc/pub/week45/html/._week45-bs028.html index 30bf163d3..c581505c6 100644 --- a/doc/pub/week45/html/._week45-bs028.html +++ b/doc/pub/week45/html/._week45-bs028.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Visualizing the Tree, The Moons

    + +

    Visualizing the Tree, The Moons

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.tree import DecisionTreeClassifier
    @@ -423,22 +341,8 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/moons.dot -o DataFiles/moons.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs029.html b/doc/pub/week45/html/._week45-bs029.html index 05c540319..c46ac0f08 100644 --- a/doc/pub/week45/html/._week45-bs029.html +++ b/doc/pub/week45/html/._week45-bs029.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Other ways of visualizing the trees

    -

    Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data.

    +

    Other ways of visualizing the trees

    +

    +Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data. + +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn import tree
     X, y = load_iris(return_X_y=True)
     tree_clf = tree.DecisionTreeClassifier()
     tree_clf = tree_clf.fit(X, y)
     # and then plot the tree
     tree.plot_tree(tree_clf) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs030.html b/doc/pub/week45/html/._week45-bs030.html index c4b42d0a1..b9c15c4bb 100644 --- a/doc/pub/week45/html/._week45-bs030.html +++ b/doc/pub/week45/html/._week45-bs030.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Printing out as text

    -

    Alternatively, the tree can also be exported in textual format with the function exporttext. +

    Printing out as text

    + +

    +Alternatively, the tree can also be exported in textual format with the function exporttext. This method doesn’t require the installation of external libraries and is more compact: -

    +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.tree import export_text
     iris = load_iris()
    @@ -412,22 +330,8 @@ decision_tree = DecisionTreeClassifier(rando
     decision_tree = decision_tree.fit(iris.data, iris.target)
     r = export_text(decision_tree, feature_names=iris['feature_names'])
     print(r)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs031.html b/doc/pub/week45/html/._week45-bs031.html index fac19847c..ef5a3a6b2 100644 --- a/doc/pub/week45/html/._week45-bs031.html +++ b/doc/pub/week45/html/._week45-bs031.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Algorithms for Setting up Decision Trees

    -

    Two algorithms stand out in the set up of decision trees:

    +

    Algorithms for Setting up Decision Trees

    + +

    +Two algorithms stand out in the set up of decision trees: +

    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. The ID3 algorithm based on the computation of the information gain for classification
    -

    We discuss both algorithms with applications here. The popular library + +We discuss both algorithms with applications here. The popular library Scikit-Learn uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs032.html b/doc/pub/week45/html/._week45-bs032.html index 97c060217..c00bfa723 100644 --- a/doc/pub/week45/html/._week45-bs032.html +++ b/doc/pub/week45/html/._week45-bs032.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    The CART algorithm for Classification

    -

    For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). +

    The CART algorithm for Classification

    + +

    +For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). This could be for example a threshold set by a number below a certain circumference of a malign tumor. -

    -

    How do we find these two quantities? +

    +How do we find these two quantities? We search for the pair \( (k,t_k) \) that produces the purest subset using for example the gini factor \( G \). The cost function it tries to minimize is then -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}G_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}G_{\mathrm{right}}, $$ -

    where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) +where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) is the number of instances in the left/right subset -

    -

    Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets +

    +Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets and so on, recursively. It stops recursing once it reaches the maximum depth (defined by the \( max\_depth \) hyperparameter), or if it cannot find a split that will reduce impurity. A few other hyperparameters control additional stopping conditions such as the \( min\_samples\_split \), \( min\_samples\_leaf \), \( min\_weight\_fraction\_leaf \), and \( max\_leaf\_nodes \). -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs033.html b/doc/pub/week45/html/._week45-bs033.html index 1ce0995b5..bbc14d948 100644 --- a/doc/pub/week45/html/._week45-bs033.html +++ b/doc/pub/week45/html/._week45-bs033.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    The CART algorithm for Regression

    -

    The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the +

    The CART algorithm for Regression

    + +

    +The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the training set in a way that minimizes say the gini or entropy impurity, it now tries to split the training set in a way that minimizes our well-known mean-squared error (MSE). The cost function is now -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}\mathrm{MSE}_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}\mathrm{MSE}_{\mathrm{right}}. $$ -

    Here the MSE for a specific node is defined as

    +Here the MSE for a specific node is defined as $$ \mathrm{MSE}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}(\overline{y}_{\mathrm{node}}-y_i)^2, $$ -

    with

    +with $$ \overline{y}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}y_i, $$ -

    the mean value of all observations in a specific node.

    +the mean value of all observations in a specific node. -

    Without any regularization, the regression task for decision trees, +

    +Without any regularization, the regression task for decision trees, just like for classification tasks, is prone to overfitting. -

    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs034.html b/doc/pub/week45/html/._week45-bs034.html index b9ca0528d..c11d4ae99 100644 --- a/doc/pub/week45/html/._week45-bs034.html +++ b/doc/pub/week45/html/._week45-bs034.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing the Gini index

    -

    The example we will look at is a classical one in many Machine +

    Computing the Gini index

    + +

    +The example we will look at is a classical one in many Machine Learning applications. Based on various meteorological features, we have several so-called attributes which decide whether we at the end will do some outdoor activity like skiing, going for a bike ride etc @@ -403,12 +326,13 @@ etc. The table here contains the feautures outlook, temperature, attributes for each feature are then sunny, overcast and rain for the outlook, hot, cold and mild for temperature, high and normal for humidity and weak and strong for wind. -

    -

    The table here summarizes the various attributes and

    +

    +The table here summarizes the various attributes and +

    - +
    @@ -431,7 +355,7 @@ humidity and weak and strong for wind.
    Day Outlook Temperature Humidity Wind Ride
    - +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs035.html b/doc/pub/week45/html/._week45-bs035.html index d834fc2e5..d59952b30 100644 --- a/doc/pub/week45/html/._week45-bs035.html +++ b/doc/pub/week45/html/._week45-bs035.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -467,22 +385,8 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs036.html b/doc/pub/week45/html/._week45-bs036.html index d704ceffe..f710c35d0 100644 --- a/doc/pub/week45/html/._week45-bs036.html +++ b/doc/pub/week45/html/._week45-bs036.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Computing the Gini Factor

    -

    The above functions (gini, entropy and misclassification error) are +

    Computing the Gini Factor

    + +

    +The above functions (gini, entropy and misclassification error) are important components of the so-called CART algorithm. We will discuss this algorithm below after we have discussed the information gain algorithm ID3. -

    -

    In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc.

    +

    +In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc. +

    -

    -
    -
    -
    -
    -
    # Split a dataset based on an attribute and an attribute value
    +
    # Split a dataset based on an attribute and an attribute value
     def test_split(index, value, dataset):
     	left, right = list(), list()
     	for row in dataset:
    @@ -468,22 +387,8 @@ dataset = [[0= get_split(dataset)
     print('Split: [X%d < %.3f]' % ((split['index']+1), split['value']))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs037.html b/doc/pub/week45/html/._week45-bs037.html index 8e9de3ab8..c68f6235a 100644 --- a/doc/pub/week45/html/._week45-bs037.html +++ b/doc/pub/week45/html/._week45-bs037.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Entropy and the ID3 algorithm

    -

    The ID3 algorithm learns decision trees by constructing +

    Entropy and the ID3 algorithm

    + +

    +The ID3 algorithm learns decision trees by constructing them in a top down way, beginning with the question which attribute should be tested at the root of the tree? -

    1. Each instance attribute is evaluated using a statistical test to determine how well it alone classifies the training examples.
    2. @@ -405,24 +327,26 @@ them in a top down way, beginning with the question which attribute should be
    3. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
    4. This forms a greedy search for an acceptable decision tree, in which the algorithm never backtracks to reconsider earlier choices.
    -

    The ID3 algorithm selects which attribute to test at each node in the + +The ID3 algorithm selects which attribute to test at each node in the tree. -

    -

    We would like to select the attribute that is most useful for classifying +

    +We would like to select the attribute that is most useful for classifying examples. -

    -

    What is a good quantitative measure of the worth of an attribute?

    +

    +What is a good quantitative measure of the worth of an attribute? -

    Information gain measures how well a given attribute separates the +

    +Information gain measures how well a given attribute separates the training examples according to their target classification. -

    -

    The ID3 algorithm uses this information gain measure to select among the candidate +

    +The ID3 algorithm uses this information gain measure to select among the candidate attributes at each step while growing the tree. -

    +

      @@ -452,18 +376,25 @@ attributes at each step while growing the tree.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs038.html b/doc/pub/week45/html/._week45-bs038.html index 43f7a5b2d..c2ae0e78c 100644 --- a/doc/pub/week45/html/._week45-bs038.html +++ b/doc/pub/week45/html/._week45-bs038.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Cancer Data again now with Decision Trees and other Methods

    + +

    Cancer Data again now with Decision Trees and other Methods

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -440,22 +358,8 @@ svm.fit(X_train_scaled, y_train)
     # Decision Trees
     deep_tree_clf.fit(X_train_scaled, y_train)
     print("Test set accuracy with Decision Trees and scaled data: {:.2f}".format(deep_tree_clf.score(X_test_scaled,y_test)))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -485,18 +389,25 @@ deep_tree_clf.fit(X_train_scaled, y_train)
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs039.html b/doc/pub/week45/html/._week45-bs039.html index 438a5bf3d..7021d9ca6 100644 --- a/doc/pub/week45/html/._week45-bs039.html +++ b/doc/pub/week45/html/._week45-bs039.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Another example, the moons again

    + +

    Another example, the moons again

    +

    -

    -
    -
    -
    -
    -
    from __future__ import division, print_function, unicode_literals
    +
    from __future__ import division, print_function, unicode_literals
     
     # Common imports
     import numpy as np
    @@ -463,22 +381,8 @@ plt.subplot(122
     plot_decision_boundary(deep_tree_clf2, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False)
     plt.title("min_samples_leaf = {}".format(deep_tree_clf2.min_samples_leaf), fontsize=14)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -508,18 +412,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs040.html b/doc/pub/week45/html/._week45-bs040.html index 6799500af..9339cd068 100644 --- a/doc/pub/week45/html/._week45-bs040.html +++ b/doc/pub/week45/html/._week45-bs040.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Playing around with regions

    + +

    Playing around with regions

    +

    -

    -
    -
    -
    -
    -
    np.random.seed(6)
    +
    np.random.seed(6)
     Xs = np.random.rand(100, 2) - 0.5
     ys = (Xs[:, 0] > 0).astype(np.float32) * 2
     
    @@ -419,22 +337,8 @@ plt.subplot(122
     plot_decision_boundary(tree_clf_sr, Xsr, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -464,18 +368,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs041.html b/doc/pub/week45/html/._week45-bs041.html index b25099b5c..5689be618 100644 --- a/doc/pub/week45/html/._week45-bs041.html +++ b/doc/pub/week45/html/._week45-bs041.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Regression trees

    + +

    Regression trees

    +

    -

    -
    -
    -
    -
    -
    # Quadratic training set + noise
    +
    # Quadratic training set + noise
     np.random.seed(42)
     m = 200
     X = np.random.rand(m, 1)
     y = 4 * (X - 0.5) ** 2
     y = y + np.random.randn(m, 1) / 10
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg = DecisionTreeRegressor(max_depth=2, random_state=42)
     tree_reg.fit(X, y)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -473,18 +362,25 @@ tree_reg.fit(X, y)
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs042.html b/doc/pub/week45/html/._week45-bs042.html index 5547d35c9..e3a962cc8 100644 --- a/doc/pub/week45/html/._week45-bs042.html +++ b/doc/pub/week45/html/._week45-bs042.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Final regressor code

    + +

    Final regressor code

    +

    -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg1 = DecisionTreeRegressor(random_state=42, max_depth=2)
     tree_reg2 = DecisionTreeRegressor(random_state=42, max_depth=3)
    @@ -437,26 +355,11 @@ plt.text(0.3.title("max_depth=3", fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    tree_reg1 = DecisionTreeRegressor(random_state=42)
    +
    tree_reg1 = DecisionTreeRegressor(random_state=42)
     tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)
     tree_reg1.fit(X, y)
     tree_reg2.fit(X, y)
    @@ -484,22 +387,8 @@ plt.xlabel(&quo
     plt.title("min_samples_leaf={}".format(tree_reg2.min_samples_leaf), fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -529,18 +418,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs043.html b/doc/pub/week45/html/._week45-bs043.html index cf03d8c4f..34e7bc1a6 100644 --- a/doc/pub/week45/html/._week45-bs043.html +++ b/doc/pub/week45/html/._week45-bs043.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Pros and cons of trees, pros

    + +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -402,6 +324,7 @@ MathJax.Hub.Config({
    • Can model interactions between the different descriptive features
    • Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)
    +

      @@ -431,18 +354,25 @@ MathJax.Hub.Config({
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs044.html b/doc/pub/week45/html/._week45-bs044.html index fc1bef8a3..58531463d 100644 --- a/doc/pub/week45/html/._week45-bs044.html +++ b/doc/pub/week45/html/._week45-bs044.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Disadvantages

    + +

    Disadvantages

    • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
    • @@ -402,11 +324,12 @@ MathJax.Hub.Config({
    • If the number of features is relatively large (high dimensional) and the number of instances is relatively low, the tree might overfit the data
    • Features with many levels may be preferred over features with less levels since for them it is more easy to split the dataset such that the sub datasets only contain pure target feature values. This issue can be addressed by preferring for instance the information gain ratio as splitting criteria over information gain
    -

    However, by aggregating many decision trees, using methods like + +However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. -

    +

      @@ -436,18 +359,25 @@ trees can be substantially improved.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs045.html b/doc/pub/week45/html/._week45-bs045.html index 7e5da7ce7..7d99bef41 100644 --- a/doc/pub/week45/html/._week45-bs045.html +++ b/doc/pub/week45/html/._week45-bs045.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    -

    As stated above and seen in many of the examples discussed here about +

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    + +

    +As stated above and seen in many of the examples discussed here about a single decision tree, we often end up overfitting our training data. This normally means that we have a high variance. Can we reduce the variance of a statistical learning method? -

    -

    This leads us to a set of different methods that can combine different +

    +This leads us to a set of different methods that can combine different machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are -

    1. Voting classifiers
    2. @@ -412,8 +334,10 @@ try to explain here. These are
    3. Random forests
    4. Boosting methods, from adaptive to Extreme Gradient Boosting (XGBoost)
    -

    We discuss these methods here.

    +We discuss these methods here. + +

      @@ -443,18 +367,25 @@ try to explain here. These are
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs046.html b/doc/pub/week45/html/._week45-bs046.html index 654698428..f49d3fe2c 100644 --- a/doc/pub/week45/html/._week45-bs046.html +++ b/doc/pub/week45/html/._week45-bs046.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    An Overview of Ensemble Methods

    -

    -
    -

    -
    -

    +

    An Overview of Ensemble Methods

    +

    +



    + +

      @@ -428,18 +348,25 @@ MathJax.Hub.Config({
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs047.html b/doc/pub/week45/html/._week45-bs047.html index 5e9725d9f..4a4ff3992 100644 --- a/doc/pub/week45/html/._week45-bs047.html +++ b/doc/pub/week45/html/._week45-bs047.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Bagging

    -

    The plain decision trees suffer from high +

    Bagging

    + +

    +The plain decision trees suffer from high variance. This means that if we split the training data into two parts at random, and fit a decision tree to both halves, the results that we get could be quite different. In contrast, a procedure with low variance will yield similar results if applied repeatedly to distinct data sets; linear regression tends to have low variance, if the ratio -of \( n \) to \( p \) is moderately large. -

    +of \( n \) to \( p \) is moderately large. -

    Bootstrap aggregation, or just bagging, is a +

    +Bootstrap aggregation, or just bagging, is a general-purpose procedure for reducing the variance of a statistical -learning method. -

    +learning method. +

      @@ -436,18 +359,25 @@ learning method.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs048.html b/doc/pub/week45/html/._week45-bs048.html index 9d05897ca..878656ea4 100644 --- a/doc/pub/week45/html/._week45-bs048.html +++ b/doc/pub/week45/html/._week45-bs048.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    More bagging

    -

    Bagging typically results in improved accuracy +

    More bagging

    + +

    +Bagging typically results in improved accuracy over prediction using a single tree. Unfortunately, however, it can be difficult to interpret the resulting model. Recall that one of the advantages of decision trees is the attractive and easily interpreted diagram that results. -

    -

    However, when we bag a large number of trees, it is no longer +

    +However, when we bag a large number of trees, it is no longer possible to represent the resulting statistical learning procedure using a single tree, and it is no longer clear which variables are most important to the procedure. Thus, bagging improves prediction @@ -415,8 +338,8 @@ trees. A large value indicates an important predictor. Similarly, in the context of bagging classification trees, we can add up the total amount that the Gini index is decreased by splits over a given predictor, averaged over all \( B \) trees. -

    +

      @@ -446,18 +369,25 @@ predictor, averaged over all \( B \) trees.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs049.html b/doc/pub/week45/html/._week45-bs049.html index 0e7964635..b95738ba6 100644 --- a/doc/pub/week45/html/._week45-bs049.html +++ b/doc/pub/week45/html/._week45-bs049.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Making your own Bootstrap: Changing the Level of the Decision Tree

    -

    Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with +

    Making your own Bootstrap: Changing the Level of the Decision Tree

    + +

    +Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with a decision tree wth different depths and perform a bootstrap aggregate (in this case we perform as many bootstraps as data points \( n \)). -

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.pipeline import make_pipeline
    @@ -454,22 +372,8 @@ plt.plot(polydegree, variance, label.legend()
     save_fig("baggingboot")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -499,18 +403,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs050.html b/doc/pub/week45/html/._week45-bs050.html index 746f86b38..ff2263d30 100644 --- a/doc/pub/week45/html/._week45-bs050.html +++ b/doc/pub/week45/html/._week45-bs050.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Why Voting?

    -

    The idea behind boosting, and voting as well can be phrased as follows: +

    Why Voting?

    + +

    +The idea behind boosting, and voting as well can be phrased as follows: Can a group of people somehow arrive at highly reasoned decisions, despite the weak judgement of the individual members? -

    -

    The aim is to create a good classifier by combining several weak classifiers. +

    +The aim is to create a good classifier by combining several weak classifiers. A weak classifier is a classifier which is able to produce results that are only slightly better than guessing at random. -

    -

    The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. +

    +The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. In voting we simply apply the law of large numbers while in boosting we give more weight to misclassified data in -each iteration. -

    +each iteration. -

    Decision trees play an important role as our weak classifier. They serve as the basic method.

    +

    +Decision trees play an important role as our weak classifier. They serve as the basic method. +

      @@ -439,18 +363,25 @@ each iteration.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs051.html b/doc/pub/week45/html/._week45-bs051.html index edee3cf62..f9bcbdbad 100644 --- a/doc/pub/week45/html/._week45-bs051.html +++ b/doc/pub/week45/html/._week45-bs051.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Tossing coins

    -

    The simplest case is a so-called voting ensemble. To illustrate this, +

    Tossing coins

    + +

    +The simplest case is a so-called voting ensemble. To illustrate this, think of yourself tossing coins with a biased outcome of 51 per cent for heads and 49% for tails. With only few tosses, you may not clearly see this distribution for heads and tails. However, after some thousands of tosses, there will be a clear majority of heads. With 2000 tosses you should see approximately 1020 heads and 980 tails. -

    -

    We can then state that the outcome is a clear majority of heads. If +

    +We can then state that the outcome is a clear majority of heads. If you do this ten thousand times, it is easy to see that there is a 97% likelihood of a majority of heads. -

    -

    Another example would be to collect all polls before an +

    +Another example would be to collect all polls before an election. Different polls may show different likelihoods for a candidate winning with say a majority of the popular vote. The majority vote would then consist in many polls indicating that this candidate will actually win. -

    -

    The example here shows how we can implement the coin tossing case, +

    +The example here shows how we can implement the coin tossing case, clealry demostrating that after some tosses we see the law of large numbers kicking in. -

    +

      @@ -447,18 +370,25 @@ numbers kicking in.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs052.html b/doc/pub/week45/html/._week45-bs052.html index 482065ccc..8dda82166 100644 --- a/doc/pub/week45/html/._week45-bs052.html +++ b/doc/pub/week45/html/._week45-bs052.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Standard imports first

    +

    Standard imports first

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     from IPython.display import Image 
     from pydot import graph_from_dot_data
     import pandas as pd
    @@ -437,22 +355,8 @@ DATA_ID = "
     
     def save_fig(fig_id):
         plt.savefig(image_path(fig_id) + ".png", format='png')
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -482,18 +386,25 @@ DATA_ID = "
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs053.html b/doc/pub/week45/html/._week45-bs053.html index 45769e468..9e9e47705 100644 --- a/doc/pub/week45/html/._week45-bs053.html +++ b/doc/pub/week45/html/._week45-bs053.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Simple Voting Example, head or tail

    + +

    Simple Voting Example, head or tail

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import matplotlib
     import matplotlib.pyplot as plt
    @@ -421,22 +339,8 @@ plt.legend(loc=
     plt.axis([0, 10000, 0.42, 0.58])
     save_fig("votingsimple")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -466,18 +370,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs054.html b/doc/pub/week45/html/._week45-bs054.html index 0164fb968..a03e2e31d 100644 --- a/doc/pub/week45/html/._week45-bs054.html +++ b/doc/pub/week45/html/._week45-bs054.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Using the Voting Classifier

    -

    We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn.

    +

    Using the Voting Classifier

    + +

    +We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn. +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -443,22 +362,8 @@ voting_clf.fit(X_train, y_train)
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -488,18 +393,25 @@ voting_clf.fit(X_train, y_train)
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs055.html b/doc/pub/week45/html/._week45-bs055.html index dc1ef998b..be6d4888b 100644 --- a/doc/pub/week45/html/._week45-bs055.html +++ b/doc/pub/week45/html/._week45-bs055.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Voting and Bagging

    +

    Voting and Bagging

    + +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -418,51 +336,21 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='hard')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    log_clf = LogisticRegression(random_state=42)
    +
    log_clf = LogisticRegression(random_state=42)
     rnd_clf = RandomForestClassifier(random_state=42)
     svm_clf = SVC(probability=True, random_state=42)
     
    @@ -470,47 +358,18 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='soft')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -540,18 +399,25 @@ voting_clf.fit(X_train, y_train)
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs056.html b/doc/pub/week45/html/._week45-bs056.html index 7f069046d..e1a1509c0 100644 --- a/doc/pub/week45/html/._week45-bs056.html +++ b/doc/pub/week45/html/._week45-bs056.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Random forests

    -

    Random forests provide an improvement over bagged trees by way of a -small tweak that decorrelates the trees. -

    +

    Random forests

    -

    As in bagging, we build a +

    +Random forests provide an improvement over bagged trees by way of a +small tweak that decorrelates the trees. + +

    +As in bagging, we build a number of decision trees on bootstrapped training samples. But when building these decision trees, each time a split in a tree is considered, a random sample of \( m \) predictors is chosen as split candidates from the full set of \( p \) predictors. The split is allowed to -use only one of those \( m \) predictors. -

    +use only one of those \( m \) predictors. -

    A fresh sample of \( m \) predictors is +

    +A fresh sample of \( m \) predictors is taken at each split, and typically we choose -

    $$ m\approx \sqrt{p}. $$ -

    In building a random forest, at +

    +In building a random forest, at each split in the tree, the algorithm is not even allowed to consider -a majority of the available predictors. -

    +a majority of the available predictors. -

    The reason for this is rather clever. Suppose that there is one very +

    +The reason for this is rather clever. Suppose that there is one very strong predictor in the data set, along with a number of other moderately strong predictors. Then in the collection of bagged variable importance random forest trees, most or all of the trees will @@ -430,8 +353,8 @@ lead to as large of a reduction in variance as averaging many uncorrelated quantities. In particular, this means that bagging will not lead to a substantial reduction in variance over a single tree in this setting. -

    +

      @@ -461,18 +384,25 @@ this setting.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs057.html b/doc/pub/week45/html/._week45-bs057.html index cb0021b6f..6ad783b5c 100644 --- a/doc/pub/week45/html/._week45-bs057.html +++ b/doc/pub/week45/html/._week45-bs057.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Random Forest Algorithm

    -

    The algorithm described here can be applied to both classification and regression problems.

    -

    We will grow of forest of say \( B \) trees.

    +

    Random Forest Algorithm

    +The algorithm described here can be applied to both classification and regression problems. + +

    +We will grow of forest of say \( B \) trees. +

    1. For \( b=1:B \)
    2. +
      • Draw a bootstrap sample from the training data organized in our \( \boldsymbol{X} \) matrix.
      • We grow then a random forest tree \( T_b \) based on the bootstrapped data by repeating the steps outlined till we reach the maximum node size is reached
      • +
        1. we select \( m \le p \) variables at random from the \( p \) predictors/features
        2. pick the best split point among the \( m \) features using for example the CART algorithm and create a new node
        3. split the node into daughter nodes
        +
      +
    3. Output then the ensemble of trees \( \{T_b\}_1^{B} \) and make predictions for either a regression type of problem or a classification type of problem.
    +

      @@ -437,18 +366,25 @@ MathJax.Hub.Config({
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs058.html b/doc/pub/week45/html/._week45-bs058.html index 40dd5f841..9efaf5668 100644 --- a/doc/pub/week45/html/._week45-bs058.html +++ b/doc/pub/week45/html/._week45-bs058.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Random Forests Compared with other Methods on the Cancer Data

    + +

    Random Forests Compared with other Methods on the Cancer Data

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -465,31 +383,18 @@ skplt.metrics.<
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -

    Recall that the cumulative gains curve shows the percentage of the +

    +

    +Recall that the cumulative gains curve shows the percentage of the overall number of cases in a given category gained by targeting a percentage of the total number of cases. -

    -

    Similarly, the receiver operating characteristic curve, or ROC curve, +

    +Similarly, the receiver operating characteristic curve, or ROC curve, displays the diagnostic ability of a binary classifier system as its discrimination threshold is varied. It plots the true positive rate against the false positive rate. -

    +

      @@ -519,18 +424,25 @@ discrimination threshold is varied. It plots the true positive rate against the
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs059.html b/doc/pub/week45/html/._week45-bs059.html index fbcbd02ed..df89c7a1d 100644 --- a/doc/pub/week45/html/._week45-bs059.html +++ b/doc/pub/week45/html/._week45-bs059.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Compare Bagging on Trees with Random Forests

    + +

    Compare Bagging on Trees with Random Forests

    +

    -

    -
    -
    -
    -
    -
    bag_clf = BaggingClassifier(
    +
    bag_clf = BaggingClassifier(
         DecisionTreeClassifier(splitter="random", max_leaf_nodes=16, random_state=42),
         n_estimators=500, max_samples=1.0, bootstrap=True, n_jobs=-1, random_state=42)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    bag_clf.fit(X_train, y_train)
    +
    bag_clf.fit(X_train, y_train)
     y_pred = bag_clf.predict(X_test)
     from sklearn.ensemble import RandomForestClassifier
     rnd_clf = RandomForestClassifier(n_estimators=500, max_leaf_nodes=16, n_jobs=-1, random_state=42)
     rnd_clf.fit(X_train, y_train)
     y_pred_rf = rnd_clf.predict(X_test)
     np.sum(y_pred == y_pred_rf) / len(y_pred) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -473,18 +362,25 @@ np.sum(y_pred =
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs060.html b/doc/pub/week45/html/._week45-bs060.html index a56cad14d..b3b184b9e 100644 --- a/doc/pub/week45/html/._week45-bs060.html +++ b/doc/pub/week45/html/._week45-bs060.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + +
    +
    +

     

     

     

    + -

    Boosting, a Bird's Eye View

    -

    The basic idea is to combine weak classifiers in order to create a good +

    Boosting, a Bird's Eye View

    + +

    +The basic idea is to combine weak classifiers in order to create a good classifier. With a weak classifier we often intend a classifier which produces results which are only slightly better than we would get by random guesses. -

    -

    This is done by applying in an iterative way a weak (or a standard +

    +This is done by applying in an iterative way a weak (or a standard classifier like decision trees) to modify the data. In each iteration we emphasize those observations which are misclassified by weighting them with a factor. -

    +

      @@ -434,18 +357,25 @@ them with a factor.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs061.html b/doc/pub/week45/html/._week45-bs061.html index 7687916d9..1406ec497 100644 --- a/doc/pub/week45/html/._week45-bs061.html +++ b/doc/pub/week45/html/._week45-bs061.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    What is boosting? Additive Modelling/Iterative Fitting

    -

    Boosting is a way of fitting an additive expansion in a set of +

    What is boosting? Additive Modelling/Iterative Fitting

    + +

    +Boosting is a way of fitting an additive expansion in a set of elementary basis functions like for example some simple polynomials. Assume for example that we have a function -

    $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    where \( \beta_m \) are the expansion parameters to be determined in a +

    +where \( \beta_m \) are the expansion parameters to be determined in a minimization process and \( b(x;\gamma_m) \) are some simple functions of the multivariable parameter \( x \) which is characterized by the parameters \( \gamma_m \). -

    -

    As an example, consider the Sigmoid function we used in logistic +

    +As an example, consider the Sigmoid function we used in logistic regression. In that case, we can translate the function \( b(x;\gamma_m) \) into the Sigmoid function -

    $$ \sigma(t) = \frac{1}{1+\exp{(-t)}}, $$ -

    where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and +

    +where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and \( \gamma_1 \) were determined by the Logistic Regression fitting algorithm. -

    -

    As another example, consider the cost function we defined for linear regression

    +

    +As another example, consider the cost function we defined for linear regression $$ C(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    In this case the function \( f(x) \) was replaced by the design matrix +

    +In this case the function \( f(x) \) was replaced by the design matrix \( \boldsymbol{X} \) and the unknown linear regression parameters \( \boldsymbol{\beta} \), that is \( \boldsymbol{f}=\boldsymbol{X}\boldsymbol{\beta} \). In linear regression we can simply invert a matrix and obtain the parameters \( \beta \) by -

    $$ \boldsymbol{\beta}=\left(\boldsymbol{X}^T\boldsymbol{X}\right)^{-1}\boldsymbol{X}^T\boldsymbol{y}. $$ -

    In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \).

    +

    +In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \). +

      @@ -467,18 +392,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs062.html b/doc/pub/week45/html/._week45-bs062.html index c59f6d1fa..33e806ee1 100644 --- a/doc/pub/week45/html/._week45-bs062.html +++ b/doc/pub/week45/html/._week45-bs062.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Iterative Fitting, Regression and Squared-error Cost Function

    -

    The way we proceed is as follows (here we specialize to the squared-error cost function)

    +

    Iterative Fitting, Regression and Squared-error Cost Function

    + +

    +The way we proceed is as follows (here we specialize to the squared-error cost function)

    1. Establish a cost function, here \( {\cal C}(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f_M(x_i))^2 \) with \( f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m) \).
    2. Initialize with a guess \( f_0(x) \). It could be one or even zero or some random numbers.
    3. For \( m=1:M \) +
      1. minimize \( \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2 \) wrt \( \gamma \) and \( \beta \)
      2. This gives the optimal values \( \beta_m \) and \( \gamma_m \)
      3. Determine then the new values \( f_m(x)=f_{m-1}(x) +\beta_m b(x;\gamma_m) \)
      +
    -

    We could use any of the algorithms we have discussed till now. If we + +We could use any of the algorithms we have discussed till now. If we use trees, \( \gamma \) parameterizes the split variables and split points at the internal nodes, and the predictions at the terminal nodes. -

    +

      @@ -439,18 +365,25 @@ at the internal nodes, and the predictions at the terminal nodes.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs063.html b/doc/pub/week45/html/._week45-bs063.html index e98cee2b2..101af800e 100644 --- a/doc/pub/week45/html/._week45-bs063.html +++ b/doc/pub/week45/html/._week45-bs063.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Squared-Error Example and Iterative Fitting

    -

    To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function.

    +

    Squared-Error Example and Iterative Fitting

    -

    For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \).

    +

    +To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function. -

    This means that for every iteration \( m \), we need to optimize

    +

    +For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \). + +

    +This means that for every iteration \( m \), we need to optimize $$ (\beta_m,\gamma_m) = \mathrm{argmin}_{\beta,\lambda}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2=\sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta(1+\gamma x_i))^2. $$ -

    We start our iteration by simply setting \( f_0(x)=0 \). +

    +We start our iteration by simply setting \( f_0(x)=0 \). Taking the derivatives with respect to \( \beta \) and \( \gamma \) we obtain -

    $$ \frac{\partial {\cal C}}{\partial \beta} = -2\sum_{i}(1+\gamma x_i)(y_i-\beta(1+\gamma x_i))=0, $$ -

    and

    +and $$ \frac{\partial {\cal C}}{\partial \gamma} =-2\sum_{i}\beta x_i(y_i-\beta(1+\gamma x_i))=0. $$ -

    We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector)

    +We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector) $$ \gamma \boldsymbol{w}^T(\boldsymbol{y}-\beta\gamma \boldsymbol{w})=0, $$ -

    which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have

    +which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have $$ \beta\gamma \boldsymbol{x}^T(\boldsymbol{y}-\beta(1+\gamma \boldsymbol{x}))=0, $$ -

    which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting -for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    +

    +which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting +for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as -\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). -

    +

    +The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as +\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). +

      @@ -462,18 +388,25 @@ for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equa
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs064.html b/doc/pub/week45/html/._week45-bs064.html index de19e60b3..be7b6b11c 100644 --- a/doc/pub/week45/html/._week45-bs064.html +++ b/doc/pub/week45/html/._week45-bs064.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Iterative Fitting, Classification and AdaBoost

    -

    Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of +

    Iterative Fitting, Classification and AdaBoost

    + +

    +Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. We define a classification function \( G(x) \) which produces a prediction taking one or the other of the two values \( \{-1,1\} \). -

    -

    The error rate of the training sample is then

    +

    +The error rate of the training sample is then $$ \mathrm{\overline{err}}=\frac{1}{n} \sum_{i=0}^{n-1} I(y_i\ne G(x_i)). $$ -

    The iterative procedure starts with defining a weak classifier whose +

    +The iterative procedure starts with defining a weak classifier whose error rate is barely better than random guessing. The iterative procedure in boosting is to sequentially apply a weak classification algorithm to repeatedly modified versions of the data producing a sequence of weak classifiers \( G_m(x) \). -

    -

    Here we will express our function \( f(x) \) in terms of \( G(x) \). That is

    +

    +Here we will express our function \( f(x) \) in terms of \( G(x) \). That is $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    will be a function of

    +will be a function of $$ G_M(x) = \mathrm{sign} \sum_{i=1}^M \alpha_m G_m(x). $$ - +

      @@ -451,18 +375,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs065.html b/doc/pub/week45/html/._week45-bs065.html index 3ad6d17c8..7604fea82 100644 --- a/doc/pub/week45/html/._week45-bs065.html +++ b/doc/pub/week45/html/._week45-bs065.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Adaptive Boosting, AdaBoost

    -

    In our iterative procedure we define thus

    +

    Adaptive Boosting, AdaBoost

    + +

    +In our iterative procedure we define thus $$ f_m(x) = f_{m-1}(x)+\beta_mG_m(x). $$ -

    The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the +

    +The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the exponential cost/loss function defined as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}\exp{(-y_i(f_{m-1}(x_i)+\beta G(x_i))}. $$ -

    We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. +

    +We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. This is normally done in two steps. Let us however first rewrite the cost function as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}w_i^{m}\exp{(-y_i\beta G(x_i))}, $$ -

    where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \).

    +where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \). +

      @@ -444,18 +368,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs066.html b/doc/pub/week45/html/._week45-bs066.html index 82b471882..e90ad2d7f 100644 --- a/doc/pub/week45/html/._week45-bs066.html +++ b/doc/pub/week45/html/._week45-bs066.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Building up AdaBoost

    -

    First, for any \( \beta > 0 \), we optimize \( G \) by setting

    +

    Building up AdaBoost

    + +

    +First, for any \( \beta > 0 \), we optimize \( G \) by setting $$ G_m(x) = \mathrm{sign} \sum_{i=0}^{n-1} w_i^m I(y_i \ne G_(x_i)), $$ -

    which is the classifier that minimizes the weighted error rate in predicting \( y \).

    +which is the classifier that minimizes the weighted error rate in predicting \( y \). -

    We can do this by rewriting

    +

    +We can do this by rewriting $$ \exp{-(\beta)}\sum_{y_i=G(x_i)}w_i^m+\exp{(\beta)}\sum_{y_i\ne G(x_i)}w_i^m, $$ -

    which can be rewritten as

    +which can be rewritten as $$ (\exp{(\beta)}-\exp{-(\beta)})\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i))+\exp{(-\beta)}\sum_{i=0}^{n-1}w_i^m=0, $$ -

    which leads to

    +which leads to $$ \beta_m = \frac{1}{2}\log{\frac{1-\mathrm{\overline{err}}}{\mathrm{\overline{err}}}}, $$ -

    where we have redefined the error as

    +where we have redefined the error as $$ \mathrm{\overline{err}}_m=\frac{1}{n}\frac{\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i)}{\sum_{i=0}^{n-1}w_i^m}, $$ -

    which leads to an update of

    +which leads to an update of $$ f_m(x) = f_{m-1}(x) +\beta_m G_m(x). $$ -

    This leads to the new weights

    +This leads to the new weights $$ w_i^{m+1} = w_i^m \exp{(-y_i\beta_m G_m(x_i))} $$ - +

      @@ -460,18 +384,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs067.html b/doc/pub/week45/html/._week45-bs067.html index 8feb69494..0a059ff03 100644 --- a/doc/pub/week45/html/._week45-bs067.html +++ b/doc/pub/week45/html/._week45-bs067.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Adaptive boosting: AdaBoost, Basic Algorithm

    -

    The algorithm here is rather straightforward. Assume that our weak +

    Adaptive boosting: AdaBoost, Basic Algorithm

    + +

    +The algorithm here is rather straightforward. Assume that our weak classifier is a decision tree and we consider a binary set of outputs with \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. Our design matrix is given in terms of the feature/predictor vectors \( \boldsymbol{X}=[\boldsymbol{x}_0\boldsymbol{x}_1\dots\boldsymbol{x}_{p-1}] \). Finally, we define also a -classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    +classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    We have already defined the misclassification error \( \mathrm{err} \) as

    +

    +We have already defined the misclassification error \( \mathrm{err} \) as $$ \mathrm{err}=\frac{1}{n}\sum_{i=0}^{n-1}I(y_i\ne G(x_i)), $$ -

    where the function \( I() \) is one if we misclassify and zero if we classify correctly.

    +where the function \( I() \) is one if we misclassify and zero if we classify correctly. +

      @@ -438,18 +362,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs068.html b/doc/pub/week45/html/._week45-bs068.html index 770b86b48..1d75e5d15 100644 --- a/doc/pub/week45/html/._week45-bs068.html +++ b/doc/pub/week45/html/._week45-bs068.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Basic Steps of AdaBoost

    -

    With the above definitions we are now ready to set up the algorithm for AdaBoost. +

    Basic Steps of AdaBoost

    + +

    +With the above definitions we are now ready to set up the algorithm for AdaBoost. The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. -

    +
    1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is easy to see that we must have \( \sum_{i=0}^{n-1}w_i = 1 \).
    2. We rewrite the misclassification error as
    + $$ \mathrm{\overline{err}}_m=\frac{\sum_{i=0}^{n-1}w_i^m I(y_i\ne G(x_i))}{\sum_{i=0}^{n-1}w_i}, $$ +
    1. Then we start looping over all attempts at classifying, namely we start an iterative process for \( m=1:M \), where \( M \) is the final number of classifications. Our given classifier could for example be a plain decision tree. +
      1. Fit then a given classifier to the training set using the weights \( w_i \).
      2. Compute then \( \mathrm{err} \) and figure out which events are classified properly and which are classified wrongly.
      3. Define a quantity \( \alpha_{m} = \log{(1-\mathrm{\overline{err}}_m)/\mathrm{\overline{err}}_m} \)
      4. Set the new weights to \( w_i = w_i\times \exp{(\alpha_m I(y_i\ne G(x_i)} \).
      +
    2. Compute the new classifier \( G(x)= \sum_{i=0}^{n-1}\alpha_m I(y_i\ne G(x_i) \).
    -

    For the iterations with \( m \le 2 \) the weights are modified + +For the iterations with \( m \le 2 \) the weights are modified individually at each steps. The observations which were misclassified at iteration \( m-1 \) have a weight which is larger than those which were classified properly. As this proceeds, the observations which were difficult to classifiy correctly are given a larger influence. Each new classification step \( m \) is then forced to concentrate on those observations that are missed in the previous iterations. -

    +

      @@ -452,18 +380,25 @@ observations that are missed in the previous iterations.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs069.html b/doc/pub/week45/html/._week45-bs069.html index 46eb07359..8a992c2e9 100644 --- a/doc/pub/week45/html/._week45-bs069.html +++ b/doc/pub/week45/html/._week45-bs069.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    AdaBoost Examples

    -

    Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here.

    +

    AdaBoost Examples

    +

    +Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here. + +

    -

    -
    -
    -
    -
    -
    from sklearn.ensemble import AdaBoostClassifier
    +
    from sklearn.ensemble import AdaBoostClassifier
     
     ada_clf = AdaBoostClassifier(
         DecisionTreeClassifier(max_depth=1), n_estimators=200,
    @@ -423,22 +342,8 @@ skplt.metrics.<
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -466,18 +371,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs070.html b/doc/pub/week45/html/._week45-bs070.html index e523a9c78..e129fc405 100644 --- a/doc/pub/week45/html/._week45-bs070.html +++ b/doc/pub/week45/html/._week45-bs070.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    -

    Gradient boosting is again a similar technique to Adaptive boosting, +

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    + +

    +Gradient boosting is again a similar technique to Adaptive boosting, it combines so-called weak classifiers or regressors into a strong method via a series of iterations. -

    -

    In order to understand the method, let us illustrate its basics by +

    +In order to understand the method, let us illustrate its basics by bringing back the essential steps in linear regression, where our cost function was the least squares function. -

    +

      @@ -429,18 +352,25 @@ function was the least squares function.
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs071.html b/doc/pub/week45/html/._week45-bs071.html index 75d9a0826..0e918baa2 100644 --- a/doc/pub/week45/html/._week45-bs071.html +++ b/doc/pub/week45/html/._week45-bs071.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    The Squared-Error again! Steepest Descent

    -

    We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize +

    The Squared-Error again! Steepest Descent

    + +

    +We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize This means that for every iteration, we need to optimize -

    $$ (\hat{\boldsymbol{f}}) = \mathrm{argmin}_{\boldsymbol{f}}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as

    +

    +We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as $$ f_M(x) = \sum_{m=0}^M h_m(x). $$ -

    In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as

    +

    +In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as $$ g_m(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{m-1}(x_i)}. $$ -

    With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that +

    +With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that the gradient is \( g_m(x_i) = -2(y_i-f(x_i)) \). -

    -

    Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have

    +

    +Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have $$ (\rho_1) = \mathrm{argmin}_{\rho}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i+2\rho y_i)^2. $$ - +

      @@ -446,18 +371,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs072.html b/doc/pub/week45/html/._week45-bs072.html index 1dd1e1816..6ca85cc88 100644 --- a/doc/pub/week45/html/._week45-bs072.html +++ b/doc/pub/week45/html/._week45-bs072.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Steepest Descent Example

    -

    Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that

    +

    Steepest Descent Example

    + +

    +Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that $$ f_1(x) = f_{0}(x) -\rho_1 g_1(x)=-y_i. $$ -

    We can then proceed and compute

    +We can then proceed and compute $$ g_2(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{1}(x_i)=y_i}=-4y_i, $$ -

    and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting.

    +and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting. +

      @@ -429,18 +353,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs073.html b/doc/pub/week45/html/._week45-bs073.html index 77f000054..3ed5a4b47 100644 --- a/doc/pub/week45/html/._week45-bs073.html +++ b/doc/pub/week45/html/._week45-bs073.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Gradient Boosting, algorithm

    -

    Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, +

    Gradient Boosting, algorithm

    + +

    +Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, so we do not learn a function that can generalize. However, we can modify the algorithm by -fitting a weak learner to approximate the negative gradient signal. -

    +fitting a weak learner to approximate the negative gradient signal. -

    Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function

    +

    +Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function $$ C(\boldsymbol{y},\boldsymbol{f})=\sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    The way we proceed in an iterative fashion is to

    +

    +The way we proceed in an iterative fashion is to +

    1. Initialize our estimate \( f_0(x) \).
    2. For \( m=1:M \), we +
      1. compute the negative gradient vector \( \boldsymbol{u}_m = -\partial C(\boldsymbol{y},\boldsymbol{f})/\partial \boldsymbol{f}(x) \) at \( f(x) = f_{m-1}(x) \);
      2. fit the so-called base-learner to the negative gradient \( h_m(u_m,x) \);
      3. update the estimate \( f_m(x) = f_{m-1}(x)+h_m(u_m,x) \);
      +
    3. The final estimate is then \( f_M(x) = \sum_{m=1}^M h_m(u_m,x) \).
    +

      @@ -437,18 +365,25 @@ $$
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs074.html b/doc/pub/week45/html/._week45-bs074.html index c5771590b..fef1961d2 100644 --- a/doc/pub/week45/html/._week45-bs074.html +++ b/doc/pub/week45/html/._week45-bs074.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Gradient Boosting, Examples of Regression

    + +

    Gradient Boosting, Examples of Regression

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.ensemble import GradientBoostingRegressor
    @@ -445,22 +363,8 @@ plt.plot(polydegree, variance, label.legend()
     save_fig("gdregression")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -483,18 +387,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs075.html b/doc/pub/week45/html/._week45-bs075.html index 3c660d539..99e0a7595 100644 --- a/doc/pub/week45/html/._week45-bs075.html +++ b/doc/pub/week45/html/._week45-bs075.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Gradient Boosting, Classification Example

    + +

    Gradient Boosting, Classification Example

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -439,22 +357,8 @@ plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     save_fig("gdclassiffiercgain")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -476,18 +380,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs076.html b/doc/pub/week45/html/._week45-bs076.html index b543dd96f..cabb1c10b 100644 --- a/doc/pub/week45/html/._week45-bs076.html +++ b/doc/pub/week45/html/._week45-bs076.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    XGBoost: Extreme Gradient Boosting

    -

    XGBoost or Extreme Gradient +

    XGBoost: Extreme Gradient Boosting

    + +

    +XGBoost or Extreme Gradient Boosting, is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting that solve many data science problems in a fast and accurate way. See the article by Chen and Guestrin. -

    -

    The authors design and build a highly scalable end-to-end tree +

    +The authors design and build a highly scalable end-to-end tree boosting system. It has a theoretically justified weighted quantile sketch for efficient proposal calculation. It introduces a novel sparsity-aware algorithm for parallel tree learning and an effective cache-aware block structure for out-of-core tree learning. -

    -

    It is now the algorithm which wins essentially all ML competitions!!!

    +

    +It is now the algorithm which wins essentially all ML competitions!!! +

      @@ -428,18 +352,25 @@ sketch for efficient proposal calculation. It introduces a novel sparsity-aware
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs077.html b/doc/pub/week45/html/._week45-bs077.html index 0a6233b53..1d38c90ae 100644 --- a/doc/pub/week45/html/._week45-bs077.html +++ b/doc/pub/week45/html/._week45-bs077.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Regression Case

    +

    Regression Case

    + +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     import xgboost as xgb
    @@ -446,22 +364,8 @@ plt.plot(polydegree, bias, label.plot(polydegree, variance, label='Variance')
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +

      @@ -481,18 +385,25 @@ plt.show()
    • »
    +
    + + +
    + + + diff --git a/doc/pub/week45/html/._week45-bs078.html b/doc/pub/week45/html/._week45-bs078.html index 83e55f6a5..ebc6718b6 100644 --- a/doc/pub/week45/html/._week45-bs078.html +++ b/doc/pub/week45/html/._week45-bs078.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -

    Xgboost on the Cancer Data

    -

    As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now.

    +

    Xgboost on the Cancer Data

    + +

    +As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now. +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -452,21 +371,8 @@ xgb.plot_importance(xg_clf)
     plt.rcParams['figure.figsize'] = [5, 5]
     save_fig("xgparams")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - +
    +

    @@ -485,18 +391,25 @@ plt.show()

  • 79
  • +
    + + +
    + + + diff --git a/doc/pub/week45/html/week45-bs.html b/doc/pub/week45/html/week45-bs.html index d7e0ee14e..6fb3409bc 100644 --- a/doc/pub/week45/html/week45-bs.html +++ b/doc/pub/week45/html/week45-bs.html @@ -1,28 +1,31 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + - + + + @@ -287,6 +202,8 @@ MathJax.Hub.Config({ + + +
    +

     

     

     

    + -
    -
    -

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    -
    + + +
    +

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    + +

    +

    Morten Hjorth-Jensen [1, 2]
    - -
    -[1] Department of Physics, University of Oslo -
    -
    -[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University -
    -
    -
    -

    Nov 11, 2021

    -
    -
    +

    + + +

    [1] Department of Physics, University of Oslo
    +
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University
    +
    +

    +

    Nov 11, 2021

    +
    +

    Read »

    @@ -438,18 +360,25 @@ MathJax.Hub.Config({
  • »
  • +
    + + +
    © 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license
    + + + diff --git a/doc/pub/week45/html/week45-reveal.html b/doc/pub/week45/html/week45-reveal.html index 762a6b33a..976909ff8 100644 --- a/doc/pub/week45/html/week45-reveal.html +++ b/doc/pub/week45/html/week45-reveal.html @@ -1,18 +1,19 @@ - - - + - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting - + + + + + + + @@ -54,81 +55,36 @@ document.getElementsByTagName( 'head' )[0].appendChild( link ); + + + @@ -314,38 +222,49 @@ MathJax.Hub.Config({ - -
    -

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    -
    + + + + + +

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    + +

    +

    Morten Hjorth-Jensen [1, 2]
    - -
    -[1] Department of Physics, University of Oslo -
    -
    -[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University -
    -
    -
    -

    Nov 11, 2021

    -
    -
    +

    + + +

    [1] Department of Physics, University of Oslo
    +
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University
    +
    +

    +

    Nov 11, 2021

    +
    +











    -

    Overview of week 45

    + +

    Overview of week 45

    • Thursday: Basics of Decision Trees, Bagging and Voting
    • + + +
    • Friday: More on Bagging, Voting, Random Forests and start Boosting
    +
    -Videos +Videos.

    +

    1. Video on Decision trees
    2. Video on boosting methods by Hastie.
    3. @@ -353,83 +272,98 @@ MathJax.Hub.Config({
    -
    -Reading

    +

    +Reading. +

    +

    1. Decision Trees: Geron's chapter 6 covers decision trees while ensemble models, voting and bagging are discussed in chapter 7. See also lecture from STK-IN4300, lecture 7. Chapter 9.2 of Hastie et al contains also a good discussion.
    +











    -

    Decision trees, overarching aims

    -

    We start here with the most basic algorithm, the so-called decision +

    Decision trees, overarching aims

    + +

    +We start here with the most basic algorithm, the so-called decision tree. With this basic algorithm we can in turn build more complex networks, spanning from homogeneous and heterogenous forests (bagging, random forests and more) to one of the most popular supervised algorithms nowadays, the extreme gradient boosting, or just XGBoost. But let us start with the simplest possible ingredient. -

    -

    Decision trees are supervised learning algorithms used for both, +

    +Decision trees are supervised learning algorithms used for both, classification and regression tasks. -

    -

    The main idea of decision trees +

    +The main idea of decision trees is to find those descriptive features which contain the most information regarding the target feature and then split the dataset along the values of these features such that the target feature values for the resulting underlying datasets are as pure as possible. -

    -

    The descriptive features which reproduce best the target/output features are normally said +

    +The descriptive features which reproduce best the target/output features are normally said to be the most informative ones. The process of finding the most informative feature is done until we accomplish a stopping criteria -where we then finally end up in so called leaf nodes. -

    +where we then finally end up in so called leaf nodes. +











    -

    Basics of a tree

    -

    A decision tree is typically divided into a root node, the interior nodes, +

    Basics of a tree

    + +

    +A decision tree is typically divided into a root node, the interior nodes, and the final leaf nodes or just leaves. These entities are then connected by so-called branches. -

    -

    The leaf nodes +

    +The leaf nodes contain the predictions we will make for new query instances presented to our trained model. This is possible since the model has learned the underlying structure of the training data and hence can, given some assumptions, make predictions about the target feature value (class) of unseen query instances. -

    +











    -

    A Sketch of a Tree, Regression problem

    +

    A Sketch of a Tree, Regression problem

    + +

    +











    -

    A Sketch of a Tree, Classification problem

    +

    A Sketch of a Tree, Classification problem

    + +

    +











    -

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    -
    -

    -
    -

    +

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches.

    +

    +



    +

    +This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches. + +











    -

    General Features

    -

    The overarching approach to decision trees is a top-down approach.

    +

    General Features

    + +

    +The overarching approach to decision trees is a top-down approach.

    • A leaf provides the classification of a given instance.
    • @@ -437,16 +371,18 @@ given some assumptions, make predictions about the target feature value
    • A branch corresponds to a possible values of an attribute.
    • An instance is classified by starting at the root node of the tree, testing the attribute specified by this node, then moving down the tree branch corresponding to the value of the attribute in the given example.
    -

    This process is then repeated for the subtree rooted at the new + +This process is then repeated for the subtree rooted at the new node. -

    +











    -

    How do we set it up?

    -

    In simplified terms, the process of training a decision tree and +

    How do we set it up?

    + +

    +In simplified terms, the process of training a decision tree and predicting the target features of query instances is as follows: -

    1. Present a dataset containing of a number of training instances characterized by a number of descriptive features and a target feature
    2. @@ -454,18 +390,17 @@ predicting the target features of query instances is as follows:
    3. Grow the tree until we accomplish a stopping criteria create leaf nodes which represent the predictions we want to make for new query instances
    4. Show query instances to the tree and run down the tree until we arrive at leaf nodes
    -

    Then we are essentially done!

    +Then we are essentially done! + +











    -

    Decision trees and Regression

    + +

    Decision trees and Regression

    +

    -

    -
    -
    -
    -
    -
    import numpy as np
    +
    import numpy as np
     import matplotlib.pyplot as plt
     from sklearn.preprocessing import PolynomialFeatures
     from sklearn.linear_model import LinearRegression
    @@ -503,7 +438,7 @@ c=lin_reg.intercept_
     print ("first power: ", b[0])
     print ("second power: ",b[1])
     
    -z = np.arange(0, steps, .01)
    +z = np.arange(0, steps, .01)
     z_mod=b[1]*z**2+b[0]*z+c
     
     fit_mod=b[1]*X**2+b[0]*X+c
    @@ -553,102 +488,96 @@ plt.ylabel("Darget")
     plt.title("Decision Tree Regression")
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Building a tree, regression

    -

    There are mainly two steps

    +

    Building a tree, regression

    + +

    +There are mainly two steps +

    1. We split the predictor space (the set of possible values \( x_1,x_2,\dots, x_p \)) into \( J \) distinct and non-non-overlapping regions, \( R_1,R_2,\dots,R_J \).
    2. For every observation that falls into the region \( R_j \) , we make the same prediction, which is simply the mean of the response values for the training observations in \( R_j \).
    -

    How do we construct the regions \( R_1,\dots,R_J \)? In theory, the + +How do we construct the regions \( R_1,\dots,R_J \)? In theory, the regions could have any shape. However, we choose to divide the predictor space into high-dimensional rectangles, or boxes, for simplicity and for ease of interpretation of the resulting predictive model. The goal is to find boxes \( R_1,\dots,R_J \) that minimize the MSE, given by -

    $$ \sum_{j=1}^J\sum_{i\in R_j}(y_i-\overline{y}_{R_j})^2, $$ -

    where \( \overline{y}_{R_j} \) is the mean response for the training observations -within box \( j \). -

    +

    +where \( \overline{y}_{R_j} \) is the mean response for the training observations +within box \( j \). +











    -

    A top-down approach, recursive binary splitting

    -

    Unfortunately, it is computationally infeasible to consider every +

    A top-down approach, recursive binary splitting

    + +

    +Unfortunately, it is computationally infeasible to consider every possible partition of the feature space into \( J \) boxes. The common strategy is to take a top-down approach -

    -

    The approach is top-down because it begins at the top of the tree (all +

    +The approach is top-down because it begins at the top of the tree (all observations belong to a single region) and then successively splits the predictor space; each split is indicated via two new branches further down on the tree. It is greedy because at each step of the tree-building process, the best split is made at that particular step, rather than looking ahead and picking a split that will lead to a better tree in some future step. -

    +











    -

    Making a tree

    -

    In order to implement the recursive binary splitting we start by selecting +

    Making a tree

    + +

    +In order to implement the recursive binary splitting we start by selecting the predictor \( x_j \) and a cutpoint \( s \) that splits the predictor space into two regions \( R_1 \) and \( R_2 \) -

    $$ \left\{X\vert x_j < s\right\}, $$ -

    and

    +and $$ \left\{X\vert x_j \geq s\right\}, $$ -

    so that we obtain the lowest MSE, that is

    +so that we obtain the lowest MSE, that is $$ \sum_{i:x_i\in R_j}(y_i-\overline{y}_{R_1})^2+\sum_{i:x_i\in R_2}(y_i-\overline{y}_{R_2})^2, $$ -

    which we want to minimize by considering all predictors +

    +which we want to minimize by considering all predictors \( x_1,x_2,\dots,x_p \). We consider also all possible values of \( s \) for each predictor. These values could be determined by randomly assigned numbers or by starting at the midpoint and then proceed till we find an optimal value. -

    -

    For any \( j \) and \( s \), we define the pair of half-planes where +

    +For any \( j \) and \( s \), we define the pair of half-planes where \( \overline{y}_{R_1} \) is the mean response for the training observations in \( R_1(j,s) \), and \( \overline{y}_{R_2} \) is the mean response for the training observations in \( R_2(j,s) \). -

    -

    Finding the values of \( j \) and \( s \) that minimize the above equation can be +

    +Finding the values of \( j \) and \( s \) that minimize the above equation can be done quite quickly, especially when the number of features \( p \) is not too large. -

    -

    Next, we repeat the process, looking +

    +Next, we repeat the process, looking for the best predictor and best cutpoint in order to split the data further so as to minimize the MSE within each of the resulting regions. However, this time, instead of splitting the entire predictor @@ -657,83 +586,95 @@ have three regions. Again, we look to split one of these three regions further, so as to minimize the MSE. The process continues until a stopping criterion is reached; for instance, we may continue until no region contains more than five observations. -

    +

    -

    Pruning the tree

    -

    The above procedure is rather straightforward, but leads often to +

    Pruning the tree

    + +

    +The above procedure is rather straightforward, but leads often to overfitting and unnecessarily large and complicated trees. The basic idea is to grow a large tree \( T_0 \) and then prune it back in order to obtain a subtree. A smaller tree with fewer splits (fewer regions) can lead to smaller variance and better interpretation at the cost of a little more bias. -

    -

    The so-called Cost complexity pruning algorithm gives us a +

    +The so-called Cost complexity pruning algorithm gives us a way to do just this. Rather than considering every possible subtree, we consider a sequence of trees indexed by a nonnegative tuning parameter \( \alpha \). -

    -

    Read more at the following Scikit-Learn link on pruning.

    +

    +Read more at the following Scikit-Learn link on pruning. +











    -

    Cost complexity pruning

    -

    For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that

    +

    Cost complexity pruning

    + +

    +For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that $$ \sum_{m=1}^{\overline{T}}\sum_{i:x_i\in R_m}(y_i-\overline{y}_{R_m})^2+\alpha\overline{T}, $$ -

    is as small as possible. Here \( \overline{T} \) is +is as small as possible. Here \( \overline{T} \) is the number of terminal nodes of the tree \( T \) , \( R_m \) is the rectangle (i.e. the subset of predictor space) corresponding to the \( m \)-th terminal node. -

    -

    The tuning parameter \( \alpha \) controls a trade-off between the subtree’s +

    +The tuning parameter \( \alpha \) controls a trade-off between the subtree’s complexity and its fit to the training data. When \( \alpha = 0 \), then the subtree \( T \) will simply equal \( T_0 \), because then the above equation just measures the training error. However, as \( \alpha \) increases, there is a price to pay for having a tree with many terminal nodes. The above equation will -tend to be minimized for a smaller subtree. -

    +tend to be minimized for a smaller subtree. -

    It turns out that as we increase \( \alpha \) from zero +

    +It turns out that as we increase \( \alpha \) from zero branches get pruned from the tree in a nested and predictable fashion, so obtaining the whole sequence of subtrees as a function of \( \alpha \) is easy. We can select a value of \( \alpha \) using a validation set or using cross-validation. We then return to the full data set and obtain the -subtree corresponding to \( \alpha \). -

    +subtree corresponding to \( \alpha \). +











    -

    Schematic Regression Procedure

    +

    Schematic Regression Procedure

    + +

    -Building a Regression Tree +Building a Regression Tree.

    1. Use recursive binary splitting to grow a large tree on the training data, stopping only when each terminal node has fewer than some minimum number of observations.
    2. Apply cost complexity pruning to the large tree in order to obtain a sequence of best subtrees, as a function of \( \alpha \).
    3. Use for example \( K \)-fold cross-validation to choose \( \alpha \). Divide the training observations into \( K \) folds. For each \( k=1,2,\dots,K \) we:
    4. +
      • repeat steps 1 and 2 on all but the \( k \)-th fold of the training data.
      • Then we valuate the mean squared prediction error on the data in the left-out \( k \)-th fold, as a function of \( \alpha \).
      • Finally we average the results for each value of \( \alpha \), and pick \( \alpha \) to minimize the average error.
      +
    5. Return the subtree from Step 2 that corresponds to the chosen value of \( \alpha \).
    +











    -

    A Classification Tree

    -

    A classification tree is very similar to a regression tree, except +

    A Classification Tree

    + +

    +A classification tree is very similar to a regression tree, except that it is used to predict a qualitative response rather than a quantitative one. Recall that for a regression tree, the predicted response for an observation is given by the mean response of the @@ -744,13 +685,15 @@ in the region to which it belongs. In interpreting the results of a classification tree, we are often interested not only in the class prediction corresponding to a particular terminal node region, but also in the class proportions among the training observations that -fall into that region. -

    +fall into that region. +











    -

    Growing a classification tree

    -

    The task of growing a +

    Growing a classification tree

    + +

    +The task of growing a classification tree is quite similar to the task of growing a regression tree. Just as in the regression setting, we use recursive binary splitting to grow a classification tree. However, in the @@ -760,105 +703,124 @@ error rate. Since we plan to assign an observation in a given region to the most commonly occurring error rate class of training observations in that region, the classification error rate is simply the fraction of the training observations in that region that do not -belong to the most common class. -

    +belong to the most common class. -

    When building a classification tree, either the Gini index or the +

    +When building a classification tree, either the Gini index or the entropy are typically used to evaluate the quality of a particular split, since these two approaches are more sensitive to node purity -than is the classification error rate. -

    +than is the classification error rate. +











    -

    Classification tree, how to split nodes

    -

    If our targets are the outcome of a classification process that takes +

    Classification tree, how to split nodes

    + +

    +If our targets are the outcome of a classification process that takes for example \( k=1,2,\dots,K \) values, the only thing we need to think of is to set up the splitting criteria for each node. -

    -

    We define a PDF \( p_{mk} \) that represents the number of observations of +

    +We define a PDF \( p_{mk} \) that represents the number of observations of a class \( k \) in a region \( R_m \) with \( N_m \) observations. We represent this likelihood function in terms of the proportion \( I(y_i=k) \) of observations of this class in the region \( R_m \) as -

    $$ p_{mk} = \frac{1}{N_m}\sum_{i\in R_m}I(y_i=k). $$ -

    We let \( p_{mk} \) represent the majority class of observations in region +

    +We let \( p_{mk} \) represent the majority class of observations in region \( m \). The three most common ways of splitting a node are given by -

    • Misclassification error
    + $$ \frac{1}{N_m}\sum_{i\in R_m}I(y_i\ne k) = 1-p_{mk}. $$ +
    • Gini index \( g \)
    + $$ g = \sum_{k\ne k'} p_{mk}p_{mk'}=\sum_{k=1}^K p_{mk}(1-p_{mk}). $$ +
    • Information entropy or just entropy \( s \)
    + $$ s = -\sum_{k=1}^K p_{mk}\log{p_{mk}}. $$ - +











    -

    Gini Index (or Coefficient or Impurity)

    -

    The Gini index \( g \) gives us the degree of probability of a specific +

    Gini Index (or Coefficient or Impurity)

    + +

    +The Gini index \( g \) gives us the degree of probability of a specific variable that is wrongly classified. -

    -

    It takes values \( g \in [0,1] \),

    +

    +It takes values \( g \in [0,1] \), +

    1. \( g=0 \) means a pure case where all elements belong to one class only.
    2. A value \( g=1 \) means that all elements are randomly distributed across various classes.
    3. A value \( g=0.5 \) means that the elements in a node are uniformly distributed across classes.
    -

    It favors binary splitting.

    +It favors binary splitting. + +











    -

    Why binary splits?

    -

    It is custom to split to a tree uising binary splits. The reason is +

    Why binary splits?

    + +

    +It is custom to split to a tree uising binary splits. The reason is that multiway splits fragment the data too quickly, leaving insufficient data at the next level down. Multiway splits can be achieved by a series of binary split and this is normally preferred. -

    +











    -

    Computing a Tree using the Gini Index

    -

    Consider the following example with attributes/features and two +

    Computing a Tree using the Gini Index

    + +

    +Consider the following example with attributes/features and two possible outcomes (classes) for each attribute. Assume we wish to find some correlations between the average grade of a student as function of the number of hours studied and hours slept. We want also to correlate the grade in a given course with the general trend, whether the students recently has gotten grades below average or above. -

    -

    We have three features/attributes

    +

    +We have three features/attributes +

    1. Trend of average grades before present course, classified as either below or above the average grade of the whole class
    2. The number of hours studies, classified again as either higher (more than 3 hours per day) or lower . Here we have used a standard for one \( ECTS \) which is scaled to 25-30 hours of work for a semester which lasts 18 weeks, with 15 weeks of lectures and 3 weeks for exams, assuming a total of 30 ECTS per semester.
    3. The number of hours slept as high for more than \( 8 \) hours and below for less than 8 hours of sleep, classified again as either high or low
    4. The final grade whether it is above or below average
    -









    -

    The Table

    - +









    + +

    The Table

    + +

    +

    @@ -875,54 +837,61 @@ recently has gotten grades below average or above.
    Grade Trend Hours slept Hours Studied Grade
    Above High High Above
    - +











    -

    Computing the various Gini Indices

    -

    In computations we will translate all classes into numbers. Being +

    Computing the various Gini Indices

    + +

    +In computations we will translate all classes into numbers. Being these binary classes, they can easily be split into ones and zeros. -

    -
    -Gini index for Average trend

    -

    See handwritten notes for Thursday November 11

    +
    +Gini index for Average trend. +

    +See handwritten notes for Thursday November 11

    -









    -

    Computing the various Gini Indices, Hours slept

    - -
    -Gini index for hour slept

    -

    See handwritten notes for Thursday November 11

    +









    + +

    Computing the various Gini Indices, Hours slept

    + +

    +

    +Gini index for hour slept. +

    +See handwritten notes for Thursday November 11

    -









    -

    Computing the various Gini Indices, Hours studied

    - -
    -Gini index for hour studied

    -

    See handwritten notes for Thursday November 11

    +









    + +

    Computing the various Gini Indices, Hours studied

    + +

    +

    +Gini index for hour studied. +

    +See handwritten notes for Thursday November 11

    -

    For final tree, see the above handwritten notes

    +

    +For final tree, see the above handwritten notes +











    -

    A possible code using Scikit-Learn

    +

    A possible code using Scikit-Learn

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -989,32 +958,15 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/grade.dot -o DataFiles/grades.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Visualizing Trees, More examples

    + +

    Visualizing Trees, More examples

    +

    -

    -
    -
    -
    -
    -
    import os
    +
    import os
     from sklearn.datasets import load_breast_cancer
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.model_selection import train_test_split
    @@ -1047,32 +999,15 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Visualizing the Tree, The Moons

    + +

    Visualizing the Tree, The Moons

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.tree import DecisionTreeClassifier
    @@ -1096,72 +1031,39 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/moons.dot -o DataFiles/moons.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Other ways of visualizing the trees

    -

    Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data.

    +

    Other ways of visualizing the trees

    +

    +Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data. + +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn import tree
     X, y = load_iris(return_X_y=True)
     tree_clf = tree.DecisionTreeClassifier()
     tree_clf = tree_clf.fit(X, y)
     # and then plot the tree
     tree.plot_tree(tree_clf) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Printing out as text

    -

    Alternatively, the tree can also be exported in textual format with the function exporttext. +

    Printing out as text

    + +

    +Alternatively, the tree can also be exported in textual format with the function exporttext. This method doesn’t require the installation of external libraries and is more compact: -

    +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.tree import export_text
     iris = load_iris()
    @@ -1169,92 +1071,87 @@ decision_tree = DecisionTreeClassifier(random_state='feature_names'])
     print(r)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Algorithms for Setting up Decision Trees

    -

    Two algorithms stand out in the set up of decision trees:

    +

    Algorithms for Setting up Decision Trees

    + +

    +Two algorithms stand out in the set up of decision trees: +

    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. The ID3 algorithm based on the computation of the information gain for classification
    -

    We discuss both algorithms with applications here. The popular library + +We discuss both algorithms with applications here. The popular library Scikit-Learn uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. -

    +











    -

    The CART algorithm for Classification

    -

    For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). +

    The CART algorithm for Classification

    + +

    +For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). This could be for example a threshold set by a number below a certain circumference of a malign tumor. -

    -

    How do we find these two quantities? +

    +How do we find these two quantities? We search for the pair \( (k,t_k) \) that produces the purest subset using for example the gini factor \( G \). The cost function it tries to minimize is then -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}G_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}G_{\mathrm{right}}, $$ -

    where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) +where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) is the number of instances in the left/right subset -

    -

    Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets +

    +Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets and so on, recursively. It stops recursing once it reaches the maximum depth (defined by the \( max\_depth \) hyperparameter), or if it cannot find a split that will reduce impurity. A few other hyperparameters control additional stopping conditions such as the \( min\_samples\_split \), \( min\_samples\_leaf \), \( min\_weight\_fraction\_leaf \), and \( max\_leaf\_nodes \). -

    +











    -

    The CART algorithm for Regression

    -

    The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the +

    The CART algorithm for Regression

    + +

    +The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the training set in a way that minimizes say the gini or entropy impurity, it now tries to split the training set in a way that minimizes our well-known mean-squared error (MSE). The cost function is now -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}\mathrm{MSE}_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}\mathrm{MSE}_{\mathrm{right}}. $$ -

    Here the MSE for a specific node is defined as

    +Here the MSE for a specific node is defined as $$ \mathrm{MSE}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}(\overline{y}_{\mathrm{node}}-y_i)^2, $$ -

    with

    +with $$ \overline{y}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}y_i, $$ -

    the mean value of all observations in a specific node.

    +the mean value of all observations in a specific node. -

    Without any regularization, the regression task for decision trees, +

    +Without any regularization, the regression task for decision trees, just like for classification tasks, is prone to overfitting. -

    +











    -

    Computing the Gini index

    -

    The example we will look at is a classical one in many Machine +

    Computing the Gini index

    + +

    +The example we will look at is a classical one in many Machine Learning applications. Based on various meteorological features, we have several so-called attributes which decide whether we at the end will do some outdoor activity like skiing, going for a bike ride etc @@ -1264,10 +1161,10 @@ etc. The table here contains the feautures outlook, temperature, attributes for each feature are then sunny, overcast and rain for the outlook, hot, cold and mild for temperature, high and normal for humidity and weak and strong for wind. -

    -

    The table here summarizes the various attributes and

    - +

    +The table here summarizes the various attributes and +

    @@ -1288,18 +1185,15 @@ humidity and weak and strong for wind.
    Day Outlook Temperature Humidity Wind Ride
    14 Rain Mild High Strong 0
    - +











    -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -1366,41 +1260,25 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Computing the Gini Factor

    -

    The above functions (gini, entropy and misclassification error) are +

    Computing the Gini Factor

    + +

    +The above functions (gini, entropy and misclassification error) are important components of the so-called CART algorithm. We will discuss this algorithm below after we have discussed the information gain algorithm ID3. -

    -

    In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc.

    +

    +In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc. +

    -

    -
    -
    -
    -
    -
    # Split a dataset based on an attribute and an attribute value
    +
    # Split a dataset based on an attribute and an attribute value
     def test_split(index, value, dataset):
     	left, right = list(), list()
     	for row in dataset:
    @@ -1460,28 +1338,15 @@ dataset = [[0,0
     
     split = get_split(dataset)
     print('Split: [X%d < %.3f]' % ((split['index']+1), split['value']))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Entropy and the ID3 algorithm

    -

    The ID3 algorithm learns decision trees by constructing +

    Entropy and the ID3 algorithm

    + +

    +The ID3 algorithm learns decision trees by constructing them in a top down way, beginning with the question which attribute should be tested at the root of the tree? -

    1. Each instance attribute is evaluated using a statistical test to determine how well it alone classifies the training examples.
    2. @@ -1491,34 +1356,33 @@ them in a top down way, beginning with the question which attribute should be
    3. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
    4. This forms a greedy search for an acceptable decision tree, in which the algorithm never backtracks to reconsider earlier choices.
    -

    The ID3 algorithm selects which attribute to test at each node in the + +The ID3 algorithm selects which attribute to test at each node in the tree. -

    -

    We would like to select the attribute that is most useful for classifying +

    +We would like to select the attribute that is most useful for classifying examples. -

    -

    What is a good quantitative measure of the worth of an attribute?

    +

    +What is a good quantitative measure of the worth of an attribute? -

    Information gain measures how well a given attribute separates the +

    +Information gain measures how well a given attribute separates the training examples according to their target classification. -

    -

    The ID3 algorithm uses this information gain measure to select among the candidate +

    +The ID3 algorithm uses this information gain measure to select among the candidate attributes at each step while growing the tree. -

    +











    -

    Cancer Data again now with Decision Trees and other Methods

    + +

    Cancer Data again now with Decision Trees and other Methods

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -1559,32 +1423,15 @@ svm.fit(X_train_scaled, y_train)
     # Decision Trees
     deep_tree_clf.fit(X_train_scaled, y_train)
     print("Test set accuracy with Decision Trees and scaled data: {:.2f}".format(deep_tree_clf.score(X_test_scaled,y_test)))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Another example, the moons again

    + +

    Another example, the moons again

    +

    -

    -
    -
    -
    -
    -
    from __future__ import division, print_function, unicode_literals
    +
    from __future__ import division, print_function, unicode_literals
     
     # Common imports
     import numpy as np
    @@ -1648,32 +1495,15 @@ plt.subplot(122)
     plot_decision_boundary(deep_tree_clf2, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False)
     plt.title("min_samples_leaf = {}".format(deep_tree_clf2.min_samples_leaf), fontsize=14)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Playing around with regions

    + +

    Playing around with regions

    +

    -

    -
    -
    -
    -
    -
    np.random.seed(6)
    +
    np.random.seed(6)
     Xs = np.random.rand(100, 2) - 0.5
     ys = (Xs[:, 0] > 0).astype(np.float32) * 2
     
    @@ -1693,86 +1523,37 @@ plt.subplot(122)
     plot_decision_boundary(tree_clf_sr, Xsr, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Regression trees

    + +

    Regression trees

    +

    -

    -
    -
    -
    -
    -
    # Quadratic training set + noise
    +
    # Quadratic training set + noise
     np.random.seed(42)
     m = 200
     X = np.random.rand(m, 1)
     y = 4 * (X - 0.5) ** 2
     y = y + np.random.randn(m, 1) / 10
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg = DecisionTreeRegressor(max_depth=2, random_state=42)
     tree_reg.fit(X, y)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Final regressor code

    + +

    Final regressor code

    +

    -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg1 = DecisionTreeRegressor(random_state=42, max_depth=2)
     tree_reg2 = DecisionTreeRegressor(random_state=42, max_depth=3)
    @@ -1810,26 +1591,11 @@ plt.text(0.3, 0
     plt.title("max_depth=3", fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    tree_reg1 = DecisionTreeRegressor(random_state=42)
    +
    tree_reg1 = DecisionTreeRegressor(random_state=42)
     tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)
     tree_reg1.fit(X, y)
     tree_reg2.fit(X, y)
    @@ -1857,24 +1623,11 @@ plt.xlabel("$x_1$", fontsize="min_samples_leaf={}".format(tree_reg2.min_samples_leaf), fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Pros and cons of trees, pros

    + +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -1885,8 +1638,10 @@ plt.show()
    • Can model interactions between the different descriptive features
    • Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)
    +









    -

    Disadvantages

    + +

    Disadvantages

    • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
    • @@ -1897,26 +1652,28 @@ plt.show()
    • If the number of features is relatively large (high dimensional) and the number of instances is relatively low, the tree might overfit the data
    • Features with many levels may be preferred over features with less levels since for them it is more easy to split the dataset such that the sub datasets only contain pure target feature values. This issue can be addressed by preferring for instance the information gain ratio as splitting criteria over information gain
    -

    However, by aggregating many decision trees, using methods like + +However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. -

    +











    -

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    -

    As stated above and seen in many of the examples discussed here about +

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    + +

    +As stated above and seen in many of the examples discussed here about a single decision tree, we often end up overfitting our training data. This normally means that we have a high variance. Can we reduce the variance of a statistical learning method? -

    -

    This leads us to a set of different methods that can combine different +

    +This leads us to a set of different methods that can combine different machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are -

    1. Voting classifiers
    2. @@ -1924,45 +1681,50 @@ try to explain here. These are
    3. Random forests
    4. Boosting methods, from adaptive to Extreme Gradient Boosting (XGBoost)
    -

    We discuss these methods here.

    +We discuss these methods here. + +











    -

    An Overview of Ensemble Methods

    -

    -
    -

    -
    -

    +

    An Overview of Ensemble Methods

    +

    +



    + +











    -

    Bagging

    -

    The plain decision trees suffer from high +

    Bagging

    + +

    +The plain decision trees suffer from high variance. This means that if we split the training data into two parts at random, and fit a decision tree to both halves, the results that we get could be quite different. In contrast, a procedure with low variance will yield similar results if applied repeatedly to distinct data sets; linear regression tends to have low variance, if the ratio -of \( n \) to \( p \) is moderately large. -

    +of \( n \) to \( p \) is moderately large. -

    Bootstrap aggregation, or just bagging, is a +

    +Bootstrap aggregation, or just bagging, is a general-purpose procedure for reducing the variance of a statistical -learning method. -

    +learning method. +











    -

    More bagging

    -

    Bagging typically results in improved accuracy +

    More bagging

    + +

    +Bagging typically results in improved accuracy over prediction using a single tree. Unfortunately, however, it can be difficult to interpret the resulting model. Recall that one of the advantages of decision trees is the attractive and easily interpreted diagram that results. -

    -

    However, when we bag a large number of trees, it is no longer +

    +However, when we bag a large number of trees, it is no longer possible to represent the resulting statistical learning procedure using a single tree, and it is no longer clear which variables are most important to the procedure. Thus, bagging improves prediction @@ -1977,22 +1739,19 @@ trees. A large value indicates an important predictor. Similarly, in the context of bagging classification trees, we can add up the total amount that the Gini index is decreased by splits over a given predictor, averaged over all \( B \) trees. -

    +











    -

    Making your own Bootstrap: Changing the Level of the Decision Tree

    -

    Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with +

    Making your own Bootstrap: Changing the Level of the Decision Tree

    + +

    +Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with a decision tree wth different depths and perform a bootstrap aggregate (in this case we perform as many bootstraps as data points \( n \)). -

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.pipeline import make_pipeline
    @@ -2043,81 +1802,69 @@ plt.plot(polydegree, variance, label='Variance&
     plt.legend()
     save_fig("baggingboot")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Why Voting?

    -

    The idea behind boosting, and voting as well can be phrased as follows: +

    Why Voting?

    + +

    +The idea behind boosting, and voting as well can be phrased as follows: Can a group of people somehow arrive at highly reasoned decisions, despite the weak judgement of the individual members? -

    -

    The aim is to create a good classifier by combining several weak classifiers. +

    +The aim is to create a good classifier by combining several weak classifiers. A weak classifier is a classifier which is able to produce results that are only slightly better than guessing at random. -

    -

    The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. +

    +The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. In voting we simply apply the law of large numbers while in boosting we give more weight to misclassified data in -each iteration. -

    +each iteration. -

    Decision trees play an important role as our weak classifier. They serve as the basic method.

    +

    +Decision trees play an important role as our weak classifier. They serve as the basic method. +











    -

    Tossing coins

    -

    The simplest case is a so-called voting ensemble. To illustrate this, +

    Tossing coins

    + +

    +The simplest case is a so-called voting ensemble. To illustrate this, think of yourself tossing coins with a biased outcome of 51 per cent for heads and 49% for tails. With only few tosses, you may not clearly see this distribution for heads and tails. However, after some thousands of tosses, there will be a clear majority of heads. With 2000 tosses you should see approximately 1020 heads and 980 tails. -

    -

    We can then state that the outcome is a clear majority of heads. If +

    +We can then state that the outcome is a clear majority of heads. If you do this ten thousand times, it is easy to see that there is a 97% likelihood of a majority of heads. -

    -

    Another example would be to collect all polls before an +

    +Another example would be to collect all polls before an election. Different polls may show different likelihoods for a candidate winning with say a majority of the popular vote. The majority vote would then consist in many polls indicating that this candidate will actually win. -

    -

    The example here shows how we can implement the coin tossing case, +

    +The example here shows how we can implement the coin tossing case, clealry demostrating that after some tosses we see the law of large numbers kicking in. -

    +











    -

    Standard imports first

    +

    Standard imports first

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     from IPython.display import Image 
     from pydot import graph_from_dot_data
     import pandas as pd
    @@ -2154,32 +1901,15 @@ DATA_ID = "DataFiles/"
     
     def save_fig(fig_id):
         plt.savefig(image_path(fig_id) + ".png", format='png')
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Simple Voting Example, head or tail

    + +

    Simple Voting Example, head or tail

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import matplotlib
     import matplotlib.pyplot as plt
    @@ -2201,34 +1931,18 @@ plt.legend(loc="lower right")
     plt.axis([0, 10000, 0.42, 0.58])
     save_fig("votingsimple")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Using the Voting Classifier

    -

    We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn.

    +

    Using the Voting Classifier

    + +

    +We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn. +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -2270,33 +1984,16 @@ voting_clf.fit(X_train, y_train)
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Voting and Bagging

    +

    Voting and Bagging

    + +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -2314,51 +2011,21 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='hard')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    log_clf = LogisticRegression(random_state=42)
    +
    log_clf = LogisticRegression(random_state=42)
     rnd_clf = RandomForestClassifier(random_state=42)
     svm_clf = SVC(probability=True, random_state=42)
     
    @@ -2366,76 +2033,49 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='soft')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Random forests

    -

    Random forests provide an improvement over bagged trees by way of a -small tweak that decorrelates the trees. -

    +

    Random forests

    -

    As in bagging, we build a +

    +Random forests provide an improvement over bagged trees by way of a +small tweak that decorrelates the trees. + +

    +As in bagging, we build a number of decision trees on bootstrapped training samples. But when building these decision trees, each time a split in a tree is considered, a random sample of \( m \) predictors is chosen as split candidates from the full set of \( p \) predictors. The split is allowed to -use only one of those \( m \) predictors. -

    +use only one of those \( m \) predictors. -

    A fresh sample of \( m \) predictors is +

    +A fresh sample of \( m \) predictors is taken at each split, and typically we choose -

    $$ m\approx \sqrt{p}. $$ -

    In building a random forest, at +

    +In building a random forest, at each split in the tree, the algorithm is not even allowed to consider -a majority of the available predictors. -

    +a majority of the available predictors. -

    The reason for this is rather clever. Suppose that there is one very +

    +The reason for this is rather clever. Suppose that there is one very strong predictor in the data set, along with a number of other moderately strong predictors. Then in the collection of bagged variable importance random forest trees, most or all of the trees will @@ -2447,36 +2087,41 @@ lead to as large of a reduction in variance as averaging many uncorrelated quantities. In particular, this means that bagging will not lead to a substantial reduction in variance over a single tree in this setting. -

    +











    -

    Random Forest Algorithm

    -

    The algorithm described here can be applied to both classification and regression problems.

    -

    We will grow of forest of say \( B \) trees.

    +

    Random Forest Algorithm

    +The algorithm described here can be applied to both classification and regression problems. + +

    +We will grow of forest of say \( B \) trees. +

    1. For \( b=1:B \)
    2. +
      • Draw a bootstrap sample from the training data organized in our \( \boldsymbol{X} \) matrix.
      • We grow then a random forest tree \( T_b \) based on the bootstrapped data by repeating the steps outlined till we reach the maximum node size is reached
      • +
        1. we select \( m \le p \) variables at random from the \( p \) predictors/features
        2. pick the best split point among the \( m \) features using for example the CART algorithm and create a new node
        3. split the node into daughter nodes
        +
      +
    3. Output then the ensemble of trees \( \{T_b\}_1^{B} \) and make predictions for either a regression type of problem or a classification type of problem.
    +









    -

    Random Forests Compared with other Methods on the Cancer Data

    + +

    Random Forests Compared with other Methods on the Cancer Data

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -2542,374 +2187,362 @@ skplt.metrics.plot_roc(y_test, y_probas)
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -

    Recall that the cumulative gains curve shows the percentage of the +

    +

    +Recall that the cumulative gains curve shows the percentage of the overall number of cases in a given category gained by targeting a percentage of the total number of cases. -

    -

    Similarly, the receiver operating characteristic curve, or ROC curve, +

    +Similarly, the receiver operating characteristic curve, or ROC curve, displays the diagnostic ability of a binary classifier system as its discrimination threshold is varied. It plots the true positive rate against the false positive rate. -

    +











    -

    Compare Bagging on Trees with Random Forests

    + +

    Compare Bagging on Trees with Random Forests

    +

    -

    -
    -
    -
    -
    -
    bag_clf = BaggingClassifier(
    +
    bag_clf = BaggingClassifier(
         DecisionTreeClassifier(splitter="random", max_leaf_nodes=16, random_state=42),
         n_estimators=500, max_samples=1.0, bootstrap=True, n_jobs=-1, random_state=42)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    bag_clf.fit(X_train, y_train)
    +
    bag_clf.fit(X_train, y_train)
     y_pred = bag_clf.predict(X_test)
     from sklearn.ensemble import RandomForestClassifier
     rnd_clf = RandomForestClassifier(n_estimators=500, max_leaf_nodes=16, n_jobs=-1, random_state=42)
     rnd_clf.fit(X_train, y_train)
     y_pred_rf = rnd_clf.predict(X_test)
     np.sum(y_pred == y_pred_rf) / len(y_pred) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Boosting, a Bird's Eye View

    -

    The basic idea is to combine weak classifiers in order to create a good +

    Boosting, a Bird's Eye View

    + +

    +The basic idea is to combine weak classifiers in order to create a good classifier. With a weak classifier we often intend a classifier which produces results which are only slightly better than we would get by random guesses. -

    -

    This is done by applying in an iterative way a weak (or a standard +

    +This is done by applying in an iterative way a weak (or a standard classifier like decision trees) to modify the data. In each iteration we emphasize those observations which are misclassified by weighting them with a factor. -

    +











    -

    What is boosting? Additive Modelling/Iterative Fitting

    -

    Boosting is a way of fitting an additive expansion in a set of +

    What is boosting? Additive Modelling/Iterative Fitting

    + +

    +Boosting is a way of fitting an additive expansion in a set of elementary basis functions like for example some simple polynomials. Assume for example that we have a function -

    $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    where \( \beta_m \) are the expansion parameters to be determined in a +

    +where \( \beta_m \) are the expansion parameters to be determined in a minimization process and \( b(x;\gamma_m) \) are some simple functions of the multivariable parameter \( x \) which is characterized by the parameters \( \gamma_m \). -

    -

    As an example, consider the Sigmoid function we used in logistic +

    +As an example, consider the Sigmoid function we used in logistic regression. In that case, we can translate the function \( b(x;\gamma_m) \) into the Sigmoid function -

    $$ \sigma(t) = \frac{1}{1+\exp{(-t)}}, $$ -

    where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and +

    +where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and \( \gamma_1 \) were determined by the Logistic Regression fitting algorithm. -

    -

    As another example, consider the cost function we defined for linear regression

    +

    +As another example, consider the cost function we defined for linear regression $$ C(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    In this case the function \( f(x) \) was replaced by the design matrix +

    +In this case the function \( f(x) \) was replaced by the design matrix \( \boldsymbol{X} \) and the unknown linear regression parameters \( \boldsymbol{\beta} \), that is \( \boldsymbol{f}=\boldsymbol{X}\boldsymbol{\beta} \). In linear regression we can simply invert a matrix and obtain the parameters \( \beta \) by -

    $$ \boldsymbol{\beta}=\left(\boldsymbol{X}^T\boldsymbol{X}\right)^{-1}\boldsymbol{X}^T\boldsymbol{y}. $$ -

    In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \).

    +

    +In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \). +











    -

    Iterative Fitting, Regression and Squared-error Cost Function

    -

    The way we proceed is as follows (here we specialize to the squared-error cost function)

    +

    Iterative Fitting, Regression and Squared-error Cost Function

    + +

    +The way we proceed is as follows (here we specialize to the squared-error cost function)

    1. Establish a cost function, here \( {\cal C}(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f_M(x_i))^2 \) with \( f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m) \).
    2. Initialize with a guess \( f_0(x) \). It could be one or even zero or some random numbers.
    3. For \( m=1:M \) +
      1. minimize \( \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2 \) wrt \( \gamma \) and \( \beta \)
      2. This gives the optimal values \( \beta_m \) and \( \gamma_m \)
      3. Determine then the new values \( f_m(x)=f_{m-1}(x) +\beta_m b(x;\gamma_m) \)
      +
    -

    We could use any of the algorithms we have discussed till now. If we + +We could use any of the algorithms we have discussed till now. If we use trees, \( \gamma \) parameterizes the split variables and split points at the internal nodes, and the predictions at the terminal nodes. -

    +











    -

    Squared-Error Example and Iterative Fitting

    -

    To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function.

    +

    Squared-Error Example and Iterative Fitting

    -

    For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \).

    +

    +To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function. -

    This means that for every iteration \( m \), we need to optimize

    +

    +For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \). + +

    +This means that for every iteration \( m \), we need to optimize $$ (\beta_m,\gamma_m) = \mathrm{argmin}_{\beta,\lambda}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2=\sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta(1+\gamma x_i))^2. $$ -

    We start our iteration by simply setting \( f_0(x)=0 \). +

    +We start our iteration by simply setting \( f_0(x)=0 \). Taking the derivatives with respect to \( \beta \) and \( \gamma \) we obtain -

    $$ \frac{\partial {\cal C}}{\partial \beta} = -2\sum_{i}(1+\gamma x_i)(y_i-\beta(1+\gamma x_i))=0, $$ -

    and

    +and $$ \frac{\partial {\cal C}}{\partial \gamma} =-2\sum_{i}\beta x_i(y_i-\beta(1+\gamma x_i))=0. $$ -

    We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector)

    +We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector) $$ \gamma \boldsymbol{w}^T(\boldsymbol{y}-\beta\gamma \boldsymbol{w})=0, $$ -

    which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have

    +which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have $$ \beta\gamma \boldsymbol{x}^T(\boldsymbol{y}-\beta(1+\gamma \boldsymbol{x}))=0, $$ -

    which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting -for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    +

    +which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting +for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as -\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). -

    +

    +The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as +\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). +











    -

    Iterative Fitting, Classification and AdaBoost

    -

    Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of +

    Iterative Fitting, Classification and AdaBoost

    + +

    +Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. We define a classification function \( G(x) \) which produces a prediction taking one or the other of the two values \( \{-1,1\} \). -

    -

    The error rate of the training sample is then

    +

    +The error rate of the training sample is then $$ \mathrm{\overline{err}}=\frac{1}{n} \sum_{i=0}^{n-1} I(y_i\ne G(x_i)). $$ -

    The iterative procedure starts with defining a weak classifier whose +

    +The iterative procedure starts with defining a weak classifier whose error rate is barely better than random guessing. The iterative procedure in boosting is to sequentially apply a weak classification algorithm to repeatedly modified versions of the data producing a sequence of weak classifiers \( G_m(x) \). -

    -

    Here we will express our function \( f(x) \) in terms of \( G(x) \). That is

    +

    +Here we will express our function \( f(x) \) in terms of \( G(x) \). That is $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    will be a function of

    +will be a function of $$ G_M(x) = \mathrm{sign} \sum_{i=1}^M \alpha_m G_m(x). $$ - +











    -

    Adaptive Boosting, AdaBoost

    -

    In our iterative procedure we define thus

    +

    Adaptive Boosting, AdaBoost

    + +

    +In our iterative procedure we define thus $$ f_m(x) = f_{m-1}(x)+\beta_mG_m(x). $$ -

    The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the +

    +The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the exponential cost/loss function defined as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}\exp{(-y_i(f_{m-1}(x_i)+\beta G(x_i))}. $$ -

    We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. +

    +We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. This is normally done in two steps. Let us however first rewrite the cost function as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}w_i^{m}\exp{(-y_i\beta G(x_i))}, $$ -

    where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \).

    +where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \). +











    -

    Building up AdaBoost

    -

    First, for any \( \beta > 0 \), we optimize \( G \) by setting

    +

    Building up AdaBoost

    + +

    +First, for any \( \beta > 0 \), we optimize \( G \) by setting $$ G_m(x) = \mathrm{sign} \sum_{i=0}^{n-1} w_i^m I(y_i \ne G_(x_i)), $$ -

    which is the classifier that minimizes the weighted error rate in predicting \( y \).

    +which is the classifier that minimizes the weighted error rate in predicting \( y \). -

    We can do this by rewriting

    +

    +We can do this by rewriting $$ \exp{-(\beta)}\sum_{y_i=G(x_i)}w_i^m+\exp{(\beta)}\sum_{y_i\ne G(x_i)}w_i^m, $$ -

    which can be rewritten as

    +which can be rewritten as $$ (\exp{(\beta)}-\exp{-(\beta)})\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i))+\exp{(-\beta)}\sum_{i=0}^{n-1}w_i^m=0, $$ -

    which leads to

    +which leads to $$ \beta_m = \frac{1}{2}\log{\frac{1-\mathrm{\overline{err}}}{\mathrm{\overline{err}}}}, $$ -

    where we have redefined the error as

    +where we have redefined the error as $$ \mathrm{\overline{err}}_m=\frac{1}{n}\frac{\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i)}{\sum_{i=0}^{n-1}w_i^m}, $$ -

    which leads to an update of

    +which leads to an update of $$ f_m(x) = f_{m-1}(x) +\beta_m G_m(x). $$ -

    This leads to the new weights

    +This leads to the new weights $$ w_i^{m+1} = w_i^m \exp{(-y_i\beta_m G_m(x_i))} $$ - +











    -

    Adaptive boosting: AdaBoost, Basic Algorithm

    -

    The algorithm here is rather straightforward. Assume that our weak +

    Adaptive boosting: AdaBoost, Basic Algorithm

    + +

    +The algorithm here is rather straightforward. Assume that our weak classifier is a decision tree and we consider a binary set of outputs with \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. Our design matrix is given in terms of the feature/predictor vectors \( \boldsymbol{X}=[\boldsymbol{x}_0\boldsymbol{x}_1\dots\boldsymbol{x}_{p-1}] \). Finally, we define also a -classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    +classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    We have already defined the misclassification error \( \mathrm{err} \) as

    +

    +We have already defined the misclassification error \( \mathrm{err} \) as $$ \mathrm{err}=\frac{1}{n}\sum_{i=0}^{n-1}I(y_i\ne G(x_i)), $$ -

    where the function \( I() \) is one if we misclassify and zero if we classify correctly.

    +where the function \( I() \) is one if we misclassify and zero if we classify correctly. +











    -

    Basic Steps of AdaBoost

    -

    With the above definitions we are now ready to set up the algorithm for AdaBoost. +

    Basic Steps of AdaBoost

    + +

    +With the above definitions we are now ready to set up the algorithm for AdaBoost. The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. -

    +
    1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is easy to see that we must have \( \sum_{i=0}^{n-1}w_i = 1 \).
    2. We rewrite the misclassification error as
    + $$ \mathrm{\overline{err}}_m=\frac{\sum_{i=0}^{n-1}w_i^m I(y_i\ne G(x_i))}{\sum_{i=0}^{n-1}w_i}, $$ +
    1. Then we start looping over all attempts at classifying, namely we start an iterative process for \( m=1:M \), where \( M \) is the final number of classifications. Our given classifier could for example be a plain decision tree. +
      1. Fit then a given classifier to the training set using the weights \( w_i \).
      2. Compute then \( \mathrm{err} \) and figure out which events are classified properly and which are classified wrongly.
      3. Define a quantity \( \alpha_{m} = \log{(1-\mathrm{\overline{err}}_m)/\mathrm{\overline{err}}_m} \)
      4. Set the new weights to \( w_i = w_i\times \exp{(\alpha_m I(y_i\ne G(x_i)} \).
      +
    2. Compute the new classifier \( G(x)= \sum_{i=0}^{n-1}\alpha_m I(y_i\ne G(x_i) \).
    -

    For the iterations with \( m \le 2 \) the weights are modified + +For the iterations with \( m \le 2 \) the weights are modified individually at each steps. The observations which were misclassified at iteration \( m-1 \) have a weight which is larger than those which were classified properly. As this proceeds, the observations which were difficult to classifiy correctly are given a larger influence. Each new classification step \( m \) is then forced to concentrate on those observations that are missed in the previous iterations. -

    +











    -

    AdaBoost Examples

    -

    Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here.

    +

    AdaBoost Examples

    +

    +Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here. + +

    -

    -
    -
    -
    -
    -
    from sklearn.ensemble import AdaBoostClassifier
    +
    from sklearn.ensemble import AdaBoostClassifier
     
     ada_clf = AdaBoostClassifier(
         DecisionTreeClassifier(max_depth=1), n_estimators=200,
    @@ -2930,115 +2563,114 @@ skplt.metrics.plot_roc(y_test, y_probas)
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    -

    Gradient boosting is again a similar technique to Adaptive boosting, +

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    + +

    +Gradient boosting is again a similar technique to Adaptive boosting, it combines so-called weak classifiers or regressors into a strong method via a series of iterations. -

    -

    In order to understand the method, let us illustrate its basics by +

    +In order to understand the method, let us illustrate its basics by bringing back the essential steps in linear regression, where our cost function was the least squares function. -

    +











    -

    The Squared-Error again! Steepest Descent

    -

    We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize +

    The Squared-Error again! Steepest Descent

    + +

    +We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize This means that for every iteration, we need to optimize -

    $$ (\hat{\boldsymbol{f}}) = \mathrm{argmin}_{\boldsymbol{f}}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as

    +

    +We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as $$ f_M(x) = \sum_{m=0}^M h_m(x). $$ -

    In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as

    +

    +In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as $$ g_m(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{m-1}(x_i)}. $$ -

    With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that +

    +With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that the gradient is \( g_m(x_i) = -2(y_i-f(x_i)) \). -

    -

    Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have

    +

    +Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have $$ (\rho_1) = \mathrm{argmin}_{\rho}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i+2\rho y_i)^2. $$ - +











    -

    Steepest Descent Example

    -

    Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that

    +

    Steepest Descent Example

    + +

    +Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that $$ f_1(x) = f_{0}(x) -\rho_1 g_1(x)=-y_i. $$ -

    We can then proceed and compute

    +We can then proceed and compute $$ g_2(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{1}(x_i)=y_i}=-4y_i, $$ -

    and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting.

    +and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting. +











    -

    Gradient Boosting, algorithm

    -

    Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, +

    Gradient Boosting, algorithm

    + +

    +Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, so we do not learn a function that can generalize. However, we can modify the algorithm by -fitting a weak learner to approximate the negative gradient signal. -

    +fitting a weak learner to approximate the negative gradient signal. -

    Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function

    +

    +Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function $$ C(\boldsymbol{y},\boldsymbol{f})=\sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    The way we proceed in an iterative fashion is to

    +

    +The way we proceed in an iterative fashion is to +

    1. Initialize our estimate \( f_0(x) \).
    2. For \( m=1:M \), we +
      1. compute the negative gradient vector \( \boldsymbol{u}_m = -\partial C(\boldsymbol{y},\boldsymbol{f})/\partial \boldsymbol{f}(x) \) at \( f(x) = f_{m-1}(x) \);
      2. fit the so-called base-learner to the negative gradient \( h_m(u_m,x) \);
      3. update the estimate \( f_m(x) = f_{m-1}(x)+h_m(u_m,x) \);
      +
    3. The final estimate is then \( f_M(x) = \sum_{m=1}^M h_m(u_m,x) \).
    +









    -

    Gradient Boosting, Examples of Regression

    + +

    Gradient Boosting, Examples of Regression

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.ensemble import GradientBoostingRegressor
    @@ -3084,32 +2716,15 @@ plt.plot(polydegree, variance, label='Variance&
     plt.legend()
     save_fig("gdregression")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Gradient Boosting, Classification Example

    + +

    Gradient Boosting, Classification Example

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -3149,51 +2764,37 @@ plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     save_fig("gdclassiffiercgain")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    XGBoost: Extreme Gradient Boosting

    -

    XGBoost or Extreme Gradient +

    XGBoost: Extreme Gradient Boosting

    + +

    +XGBoost or Extreme Gradient Boosting, is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting that solve many data science problems in a fast and accurate way. See the article by Chen and Guestrin. -

    -

    The authors design and build a highly scalable end-to-end tree +

    +The authors design and build a highly scalable end-to-end tree boosting system. It has a theoretically justified weighted quantile sketch for efficient proposal calculation. It introduces a novel sparsity-aware algorithm for parallel tree learning and an effective cache-aware block structure for out-of-core tree learning. -

    -

    It is now the algorithm which wins essentially all ML competitions!!!

    +

    +It is now the algorithm which wins essentially all ML competitions!!! +











    -

    Regression Case

    +

    Regression Case

    + +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     import xgboost as xgb
    @@ -3239,34 +2840,18 @@ plt.plot(polydegree, bias, label='bias''Variance')
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Xgboost on the Cancer Data

    -

    As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now.

    +

    Xgboost on the Cancer Data

    + +

    +As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now. +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -3317,26 +2902,18 @@ xgb.plot_importance(xg_clf)
     plt.rcParams['figure.figsize'] = [5, 5]
     save_fig("xgparams")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - +
    +

    + +

    © 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license
    + + + diff --git a/doc/pub/week45/html/week45.html b/doc/pub/week45/html/week45.html index aaac23f18..000c3c589 100644 --- a/doc/pub/week45/html/week45.html +++ b/doc/pub/week45/html/week45.html @@ -1,105 +1,36 @@ - + + Week 45: Decisions Trees, Random Forests, Bagging and Boosting + + + + @@ -391,38 +227,49 @@ MathJax.Hub.Config({ - -
    -

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    -
    + + + + + +

    Week 45: Decisions Trees, Random Forests, Bagging and Boosting

    + +

    +

    Morten Hjorth-Jensen [1, 2]
    - -
    -[1] Department of Physics, University of Oslo -
    -
    -[2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University -
    -
    -
    -

    Nov 11, 2021

    -
    -
    +

    + + +

    [1] Department of Physics, University of Oslo
    +
    [2] Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University
    +
    +

    +

    Nov 11, 2021

    +
    +











    -

    Overview of week 45

    + +

    Overview of week 45

    • Thursday: Basics of Decision Trees, Bagging and Voting
    • + + +
    • Friday: More on Bagging, Voting, Random Forests and start Boosting
    +
    -Videos +Videos.

    +

    1. Video on Decision trees
    2. Video on boosting methods by Hastie.
    3. @@ -430,83 +277,98 @@ MathJax.Hub.Config({
    -
    -Reading

    +

    +Reading. +

    +

    1. Decision Trees: Geron's chapter 6 covers decision trees while ensemble models, voting and bagging are discussed in chapter 7. See also lecture from STK-IN4300, lecture 7. Chapter 9.2 of Hastie et al contains also a good discussion.
    +











    -

    Decision trees, overarching aims

    -

    We start here with the most basic algorithm, the so-called decision +

    Decision trees, overarching aims

    + +

    +We start here with the most basic algorithm, the so-called decision tree. With this basic algorithm we can in turn build more complex networks, spanning from homogeneous and heterogenous forests (bagging, random forests and more) to one of the most popular supervised algorithms nowadays, the extreme gradient boosting, or just XGBoost. But let us start with the simplest possible ingredient. -

    -

    Decision trees are supervised learning algorithms used for both, +

    +Decision trees are supervised learning algorithms used for both, classification and regression tasks. -

    -

    The main idea of decision trees +

    +The main idea of decision trees is to find those descriptive features which contain the most information regarding the target feature and then split the dataset along the values of these features such that the target feature values for the resulting underlying datasets are as pure as possible. -

    -

    The descriptive features which reproduce best the target/output features are normally said +

    +The descriptive features which reproduce best the target/output features are normally said to be the most informative ones. The process of finding the most informative feature is done until we accomplish a stopping criteria -where we then finally end up in so called leaf nodes. -

    +where we then finally end up in so called leaf nodes. +











    -

    Basics of a tree

    -

    A decision tree is typically divided into a root node, the interior nodes, +

    Basics of a tree

    + +

    +A decision tree is typically divided into a root node, the interior nodes, and the final leaf nodes or just leaves. These entities are then connected by so-called branches. -

    -

    The leaf nodes +

    +The leaf nodes contain the predictions we will make for new query instances presented to our trained model. This is possible since the model has learned the underlying structure of the training data and hence can, given some assumptions, make predictions about the target feature value (class) of unseen query instances. -

    +











    -

    A Sketch of a Tree, Regression problem

    +

    A Sketch of a Tree, Regression problem

    + +

    +











    -

    A Sketch of a Tree, Classification problem

    +

    A Sketch of a Tree, Classification problem

    + +

    +











    -

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    -
    -

    -
    -

    +

    A typical Decision Tree with its pertinent Jargon, Classification Problem

    -

    This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches.

    +

    +



    +

    +This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using Scikit-Learn's decision tree classifier. Here we have used the so-called gini index (see below) to split the various branches. + +











    -

    General Features

    -

    The overarching approach to decision trees is a top-down approach.

    +

    General Features

    + +

    +The overarching approach to decision trees is a top-down approach.

    • A leaf provides the classification of a given instance.
    • @@ -514,16 +376,18 @@ given some assumptions, make predictions about the target feature value
    • A branch corresponds to a possible values of an attribute.
    • An instance is classified by starting at the root node of the tree, testing the attribute specified by this node, then moving down the tree branch corresponding to the value of the attribute in the given example.
    -

    This process is then repeated for the subtree rooted at the new + +This process is then repeated for the subtree rooted at the new node. -

    +











    -

    How do we set it up?

    -

    In simplified terms, the process of training a decision tree and +

    How do we set it up?

    + +

    +In simplified terms, the process of training a decision tree and predicting the target features of query instances is as follows: -

    1. Present a dataset containing of a number of training instances characterized by a number of descriptive features and a target feature
    2. @@ -531,18 +395,17 @@ predicting the target features of query instances is as follows:
    3. Grow the tree until we accomplish a stopping criteria create leaf nodes which represent the predictions we want to make for new query instances
    4. Show query instances to the tree and run down the tree until we arrive at leaf nodes
    -

    Then we are essentially done!

    +Then we are essentially done! + +











    -

    Decision trees and Regression

    + +

    Decision trees and Regression

    +

    -

    -
    -
    -
    -
    -
    import numpy as np
    +
    import numpy as np
     import matplotlib.pyplot as plt
     from sklearn.preprocessing import PolynomialFeatures
     from sklearn.linear_model import LinearRegression
    @@ -630,102 +493,96 @@ plt.ylabel(&quo
     plt.title("Decision Tree Regression")
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Building a tree, regression

    -

    There are mainly two steps

    +

    Building a tree, regression

    + +

    +There are mainly two steps +

    1. We split the predictor space (the set of possible values \( x_1,x_2,\dots, x_p \)) into \( J \) distinct and non-non-overlapping regions, \( R_1,R_2,\dots,R_J \).
    2. For every observation that falls into the region \( R_j \) , we make the same prediction, which is simply the mean of the response values for the training observations in \( R_j \).
    -

    How do we construct the regions \( R_1,\dots,R_J \)? In theory, the + +How do we construct the regions \( R_1,\dots,R_J \)? In theory, the regions could have any shape. However, we choose to divide the predictor space into high-dimensional rectangles, or boxes, for simplicity and for ease of interpretation of the resulting predictive model. The goal is to find boxes \( R_1,\dots,R_J \) that minimize the MSE, given by -

    $$ \sum_{j=1}^J\sum_{i\in R_j}(y_i-\overline{y}_{R_j})^2, $$ -

    where \( \overline{y}_{R_j} \) is the mean response for the training observations -within box \( j \). -

    +

    +where \( \overline{y}_{R_j} \) is the mean response for the training observations +within box \( j \). +











    -

    A top-down approach, recursive binary splitting

    -

    Unfortunately, it is computationally infeasible to consider every +

    A top-down approach, recursive binary splitting

    + +

    +Unfortunately, it is computationally infeasible to consider every possible partition of the feature space into \( J \) boxes. The common strategy is to take a top-down approach -

    -

    The approach is top-down because it begins at the top of the tree (all +

    +The approach is top-down because it begins at the top of the tree (all observations belong to a single region) and then successively splits the predictor space; each split is indicated via two new branches further down on the tree. It is greedy because at each step of the tree-building process, the best split is made at that particular step, rather than looking ahead and picking a split that will lead to a better tree in some future step. -

    +











    -

    Making a tree

    -

    In order to implement the recursive binary splitting we start by selecting +

    Making a tree

    + +

    +In order to implement the recursive binary splitting we start by selecting the predictor \( x_j \) and a cutpoint \( s \) that splits the predictor space into two regions \( R_1 \) and \( R_2 \) -

    $$ \left\{X\vert x_j < s\right\}, $$ -

    and

    +and $$ \left\{X\vert x_j \geq s\right\}, $$ -

    so that we obtain the lowest MSE, that is

    +so that we obtain the lowest MSE, that is $$ \sum_{i:x_i\in R_j}(y_i-\overline{y}_{R_1})^2+\sum_{i:x_i\in R_2}(y_i-\overline{y}_{R_2})^2, $$ -

    which we want to minimize by considering all predictors +

    +which we want to minimize by considering all predictors \( x_1,x_2,\dots,x_p \). We consider also all possible values of \( s \) for each predictor. These values could be determined by randomly assigned numbers or by starting at the midpoint and then proceed till we find an optimal value. -

    -

    For any \( j \) and \( s \), we define the pair of half-planes where +

    +For any \( j \) and \( s \), we define the pair of half-planes where \( \overline{y}_{R_1} \) is the mean response for the training observations in \( R_1(j,s) \), and \( \overline{y}_{R_2} \) is the mean response for the training observations in \( R_2(j,s) \). -

    -

    Finding the values of \( j \) and \( s \) that minimize the above equation can be +

    +Finding the values of \( j \) and \( s \) that minimize the above equation can be done quite quickly, especially when the number of features \( p \) is not too large. -

    -

    Next, we repeat the process, looking +

    +Next, we repeat the process, looking for the best predictor and best cutpoint in order to split the data further so as to minimize the MSE within each of the resulting regions. However, this time, instead of splitting the entire predictor @@ -734,83 +591,95 @@ have three regions. Again, we look to split one of these three regions further, so as to minimize the MSE. The process continues until a stopping criterion is reached; for instance, we may continue until no region contains more than five observations. -

    +

    -

    Pruning the tree

    -

    The above procedure is rather straightforward, but leads often to +

    Pruning the tree

    + +

    +The above procedure is rather straightforward, but leads often to overfitting and unnecessarily large and complicated trees. The basic idea is to grow a large tree \( T_0 \) and then prune it back in order to obtain a subtree. A smaller tree with fewer splits (fewer regions) can lead to smaller variance and better interpretation at the cost of a little more bias. -

    -

    The so-called Cost complexity pruning algorithm gives us a +

    +The so-called Cost complexity pruning algorithm gives us a way to do just this. Rather than considering every possible subtree, we consider a sequence of trees indexed by a nonnegative tuning parameter \( \alpha \). -

    -

    Read more at the following Scikit-Learn link on pruning.

    +

    +Read more at the following Scikit-Learn link on pruning. +











    -

    Cost complexity pruning

    -

    For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that

    +

    Cost complexity pruning

    + +

    +For each value of \( \alpha \) there corresponds a subtree \( T \in T_0 \) such that $$ \sum_{m=1}^{\overline{T}}\sum_{i:x_i\in R_m}(y_i-\overline{y}_{R_m})^2+\alpha\overline{T}, $$ -

    is as small as possible. Here \( \overline{T} \) is +is as small as possible. Here \( \overline{T} \) is the number of terminal nodes of the tree \( T \) , \( R_m \) is the rectangle (i.e. the subset of predictor space) corresponding to the \( m \)-th terminal node. -

    -

    The tuning parameter \( \alpha \) controls a trade-off between the subtree’s +

    +The tuning parameter \( \alpha \) controls a trade-off between the subtree’s complexity and its fit to the training data. When \( \alpha = 0 \), then the subtree \( T \) will simply equal \( T_0 \), because then the above equation just measures the training error. However, as \( \alpha \) increases, there is a price to pay for having a tree with many terminal nodes. The above equation will -tend to be minimized for a smaller subtree. -

    +tend to be minimized for a smaller subtree. -

    It turns out that as we increase \( \alpha \) from zero +

    +It turns out that as we increase \( \alpha \) from zero branches get pruned from the tree in a nested and predictable fashion, so obtaining the whole sequence of subtrees as a function of \( \alpha \) is easy. We can select a value of \( \alpha \) using a validation set or using cross-validation. We then return to the full data set and obtain the -subtree corresponding to \( \alpha \). -

    +subtree corresponding to \( \alpha \). +











    -

    Schematic Regression Procedure

    +

    Schematic Regression Procedure

    + +

    -Building a Regression Tree +Building a Regression Tree.

    1. Use recursive binary splitting to grow a large tree on the training data, stopping only when each terminal node has fewer than some minimum number of observations.
    2. Apply cost complexity pruning to the large tree in order to obtain a sequence of best subtrees, as a function of \( \alpha \).
    3. Use for example \( K \)-fold cross-validation to choose \( \alpha \). Divide the training observations into \( K \) folds. For each \( k=1,2,\dots,K \) we:
    4. +
      • repeat steps 1 and 2 on all but the \( k \)-th fold of the training data.
      • Then we valuate the mean squared prediction error on the data in the left-out \( k \)-th fold, as a function of \( \alpha \).
      • Finally we average the results for each value of \( \alpha \), and pick \( \alpha \) to minimize the average error.
      +
    5. Return the subtree from Step 2 that corresponds to the chosen value of \( \alpha \).
    +











    -

    A Classification Tree

    -

    A classification tree is very similar to a regression tree, except +

    A Classification Tree

    + +

    +A classification tree is very similar to a regression tree, except that it is used to predict a qualitative response rather than a quantitative one. Recall that for a regression tree, the predicted response for an observation is given by the mean response of the @@ -821,13 +690,15 @@ in the region to which it belongs. In interpreting the results of a classification tree, we are often interested not only in the class prediction corresponding to a particular terminal node region, but also in the class proportions among the training observations that -fall into that region. -

    +fall into that region. +











    -

    Growing a classification tree

    -

    The task of growing a +

    Growing a classification tree

    + +

    +The task of growing a classification tree is quite similar to the task of growing a regression tree. Just as in the regression setting, we use recursive binary splitting to grow a classification tree. However, in the @@ -837,105 +708,124 @@ error rate. Since we plan to assign an observation in a given region to the most commonly occurring error rate class of training observations in that region, the classification error rate is simply the fraction of the training observations in that region that do not -belong to the most common class. -

    +belong to the most common class. -

    When building a classification tree, either the Gini index or the +

    +When building a classification tree, either the Gini index or the entropy are typically used to evaluate the quality of a particular split, since these two approaches are more sensitive to node purity -than is the classification error rate. -

    +than is the classification error rate. +











    -

    Classification tree, how to split nodes

    -

    If our targets are the outcome of a classification process that takes +

    Classification tree, how to split nodes

    + +

    +If our targets are the outcome of a classification process that takes for example \( k=1,2,\dots,K \) values, the only thing we need to think of is to set up the splitting criteria for each node. -

    -

    We define a PDF \( p_{mk} \) that represents the number of observations of +

    +We define a PDF \( p_{mk} \) that represents the number of observations of a class \( k \) in a region \( R_m \) with \( N_m \) observations. We represent this likelihood function in terms of the proportion \( I(y_i=k) \) of observations of this class in the region \( R_m \) as -

    $$ p_{mk} = \frac{1}{N_m}\sum_{i\in R_m}I(y_i=k). $$ -

    We let \( p_{mk} \) represent the majority class of observations in region +

    +We let \( p_{mk} \) represent the majority class of observations in region \( m \). The three most common ways of splitting a node are given by -

    • Misclassification error
    + $$ \frac{1}{N_m}\sum_{i\in R_m}I(y_i\ne k) = 1-p_{mk}. $$ +
    • Gini index \( g \)
    + $$ g = \sum_{k\ne k'} p_{mk}p_{mk'}=\sum_{k=1}^K p_{mk}(1-p_{mk}). $$ +
    • Information entropy or just entropy \( s \)
    + $$ s = -\sum_{k=1}^K p_{mk}\log{p_{mk}}. $$ - +











    -

    Gini Index (or Coefficient or Impurity)

    -

    The Gini index \( g \) gives us the degree of probability of a specific +

    Gini Index (or Coefficient or Impurity)

    + +

    +The Gini index \( g \) gives us the degree of probability of a specific variable that is wrongly classified. -

    -

    It takes values \( g \in [0,1] \),

    +

    +It takes values \( g \in [0,1] \), +

    1. \( g=0 \) means a pure case where all elements belong to one class only.
    2. A value \( g=1 \) means that all elements are randomly distributed across various classes.
    3. A value \( g=0.5 \) means that the elements in a node are uniformly distributed across classes.
    -

    It favors binary splitting.

    +It favors binary splitting. + +











    -

    Why binary splits?

    -

    It is custom to split to a tree uising binary splits. The reason is +

    Why binary splits?

    + +

    +It is custom to split to a tree uising binary splits. The reason is that multiway splits fragment the data too quickly, leaving insufficient data at the next level down. Multiway splits can be achieved by a series of binary split and this is normally preferred. -

    +











    -

    Computing a Tree using the Gini Index

    -

    Consider the following example with attributes/features and two +

    Computing a Tree using the Gini Index

    + +

    +Consider the following example with attributes/features and two possible outcomes (classes) for each attribute. Assume we wish to find some correlations between the average grade of a student as function of the number of hours studied and hours slept. We want also to correlate the grade in a given course with the general trend, whether the students recently has gotten grades below average or above. -

    -

    We have three features/attributes

    +

    +We have three features/attributes +

    1. Trend of average grades before present course, classified as either below or above the average grade of the whole class
    2. The number of hours studies, classified again as either higher (more than 3 hours per day) or lower . Here we have used a standard for one \( ECTS \) which is scaled to 25-30 hours of work for a semester which lasts 18 weeks, with 15 weeks of lectures and 3 weeks for exams, assuming a total of 30 ECTS per semester.
    3. The number of hours slept as high for more than \( 8 \) hours and below for less than 8 hours of sleep, classified again as either high or low
    4. The final grade whether it is above or below average
    -









    -

    The Table

    - +









    + +

    The Table

    + +

    +

    @@ -952,54 +842,61 @@ recently has gotten grades below average or above.
    Grade Trend Hours slept Hours Studied Grade
    Above High High Above
    - +











    -

    Computing the various Gini Indices

    -

    In computations we will translate all classes into numbers. Being +

    Computing the various Gini Indices

    + +

    +In computations we will translate all classes into numbers. Being these binary classes, they can easily be split into ones and zeros. -

    -
    -Gini index for Average trend

    -

    See handwritten notes for Thursday November 11

    +
    +Gini index for Average trend. +

    +See handwritten notes for Thursday November 11

    -









    -

    Computing the various Gini Indices, Hours slept

    - -
    -Gini index for hour slept

    -

    See handwritten notes for Thursday November 11

    +









    + +

    Computing the various Gini Indices, Hours slept

    + +

    +

    +Gini index for hour slept. +

    +See handwritten notes for Thursday November 11

    -









    -

    Computing the various Gini Indices, Hours studied

    - -
    -Gini index for hour studied

    -

    See handwritten notes for Thursday November 11

    +









    + +

    Computing the various Gini Indices, Hours studied

    + +

    +

    +Gini index for hour studied. +

    +See handwritten notes for Thursday November 11

    -

    For final tree, see the above handwritten notes

    +

    +For final tree, see the above handwritten notes +











    -

    A possible code using Scikit-Learn

    +

    A possible code using Scikit-Learn

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -1066,32 +963,15 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/grade.dot -o DataFiles/grades.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Visualizing Trees, More examples

    + +

    Visualizing Trees, More examples

    +

    -

    -
    -
    -
    -
    -
    import os
    +
    import os
     from sklearn.datasets import load_breast_cancer
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.model_selection import train_test_split
    @@ -1124,32 +1004,15 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Visualizing the Tree, The Moons

    + +

    Visualizing the Tree, The Moons

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.tree import DecisionTreeClassifier
    @@ -1173,72 +1036,39 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/moons.dot -o DataFiles/moons.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Other ways of visualizing the trees

    -

    Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data.

    +

    Other ways of visualizing the trees

    +

    +Scikit-Learn has also another way to visualize the trees which is very useful, here with the Iris data. + +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn import tree
     X, y = load_iris(return_X_y=True)
     tree_clf = tree.DecisionTreeClassifier()
     tree_clf = tree_clf.fit(X, y)
     # and then plot the tree
     tree.plot_tree(tree_clf) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Printing out as text

    -

    Alternatively, the tree can also be exported in textual format with the function exporttext. +

    Printing out as text

    + +

    +Alternatively, the tree can also be exported in textual format with the function exporttext. This method doesn’t require the installation of external libraries and is more compact: -

    +

    -

    -
    -
    -
    -
    -
    from sklearn.datasets import load_iris
    +
    from sklearn.datasets import load_iris
     from sklearn.tree import DecisionTreeClassifier
     from sklearn.tree import export_text
     iris = load_iris()
    @@ -1246,92 +1076,87 @@ decision_tree = DecisionTreeClassifier(rando
     decision_tree = decision_tree.fit(iris.data, iris.target)
     r = export_text(decision_tree, feature_names=iris['feature_names'])
     print(r)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Algorithms for Setting up Decision Trees

    -

    Two algorithms stand out in the set up of decision trees:

    +

    Algorithms for Setting up Decision Trees

    + +

    +Two algorithms stand out in the set up of decision trees: +

    1. The CART (Classification And Regression Tree) algorithm for both classification and regression
    2. The ID3 algorithm based on the computation of the information gain for classification
    -

    We discuss both algorithms with applications here. The popular library + +We discuss both algorithms with applications here. The popular library Scikit-Learn uses the CART algorithm. For classification problems you can use either the gini index or the entropy to split a tree in two branches. -

    +











    -

    The CART algorithm for Classification

    -

    For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). +

    The CART algorithm for Classification

    + +

    +For classification, the CART algorithm splits the data set in two subsets using a single feature \( k \) and a threshold \( t_k \). This could be for example a threshold set by a number below a certain circumference of a malign tumor. -

    -

    How do we find these two quantities? +

    +How do we find these two quantities? We search for the pair \( (k,t_k) \) that produces the purest subset using for example the gini factor \( G \). The cost function it tries to minimize is then -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}G_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}G_{\mathrm{right}}, $$ -

    where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) +where \( G_{\mathrm{left/right}} \) measures the impurity of the left/right subset and \( m_{\mathrm{left/right}} \) is the number of instances in the left/right subset -

    -

    Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets +

    +Once it has successfully split the training set in two, it splits the subsets using the same logic, then the subsubsets and so on, recursively. It stops recursing once it reaches the maximum depth (defined by the \( max\_depth \) hyperparameter), or if it cannot find a split that will reduce impurity. A few other hyperparameters control additional stopping conditions such as the \( min\_samples\_split \), \( min\_samples\_leaf \), \( min\_weight\_fraction\_leaf \), and \( max\_leaf\_nodes \). -

    +











    -

    The CART algorithm for Regression

    -

    The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the +

    The CART algorithm for Regression

    + +

    +The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the training set in a way that minimizes say the gini or entropy impurity, it now tries to split the training set in a way that minimizes our well-known mean-squared error (MSE). The cost function is now -

    $$ C(k,t_k) = \frac{m_{\mathrm{left}}}{m}\mathrm{MSE}_{\mathrm{left}}+ \frac{m_{\mathrm{right}}}{m}\mathrm{MSE}_{\mathrm{right}}. $$ -

    Here the MSE for a specific node is defined as

    +Here the MSE for a specific node is defined as $$ \mathrm{MSE}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}(\overline{y}_{\mathrm{node}}-y_i)^2, $$ -

    with

    +with $$ \overline{y}_{\mathrm{node}}=\frac{1}{m_\mathrm{node}}\sum_{i\in \mathrm{node}}y_i, $$ -

    the mean value of all observations in a specific node.

    +the mean value of all observations in a specific node. -

    Without any regularization, the regression task for decision trees, +

    +Without any regularization, the regression task for decision trees, just like for classification tasks, is prone to overfitting. -

    +











    -

    Computing the Gini index

    -

    The example we will look at is a classical one in many Machine +

    Computing the Gini index

    + +

    +The example we will look at is a classical one in many Machine Learning applications. Based on various meteorological features, we have several so-called attributes which decide whether we at the end will do some outdoor activity like skiing, going for a bike ride etc @@ -1341,10 +1166,10 @@ etc. The table here contains the feautures outlook, temperature, attributes for each feature are then sunny, overcast and rain for the outlook, hot, cold and mild for temperature, high and normal for humidity and weak and strong for wind. -

    -

    The table here summarizes the various attributes and

    - +

    +The table here summarizes the various attributes and +

    @@ -1365,18 +1190,15 @@ humidity and weak and strong for wind.
    Day Outlook Temperature Humidity Wind Ride
    14 Rain Mild High Strong 0
    - +











    -

    Simple Python Code to read in Data and perform Classification

    +

    Simple Python Code to read in Data and perform Classification

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import pandas as pd
     import matplotlib.pyplot as plt
    @@ -1443,41 +1265,25 @@ export_graphviz(
     )
     cmd = 'dot -Tpng DataFiles/cancer.dot -o DataFiles/cancer.png'
     os.system(cmd)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Computing the Gini Factor

    -

    The above functions (gini, entropy and misclassification error) are +

    Computing the Gini Factor

    + +

    +The above functions (gini, entropy and misclassification error) are important components of the so-called CART algorithm. We will discuss this algorithm below after we have discussed the information gain algorithm ID3. -

    -

    In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc.

    +

    +In the example here we have converted all our attributes into numerical values \( 0,1,2 \) etc. +

    -

    -
    -
    -
    -
    -
    # Split a dataset based on an attribute and an attribute value
    +
    # Split a dataset based on an attribute and an attribute value
     def test_split(index, value, dataset):
     	left, right = list(), list()
     	for row in dataset:
    @@ -1537,28 +1343,15 @@ dataset = [[0= get_split(dataset)
     print('Split: [X%d < %.3f]' % ((split['index']+1), split['value']))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Entropy and the ID3 algorithm

    -

    The ID3 algorithm learns decision trees by constructing +

    Entropy and the ID3 algorithm

    + +

    +The ID3 algorithm learns decision trees by constructing them in a top down way, beginning with the question which attribute should be tested at the root of the tree? -

    1. Each instance attribute is evaluated using a statistical test to determine how well it alone classifies the training examples.
    2. @@ -1568,34 +1361,33 @@ them in a top down way, beginning with the question which attribute should be
    3. The entire process is then repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
    4. This forms a greedy search for an acceptable decision tree, in which the algorithm never backtracks to reconsider earlier choices.
    -

    The ID3 algorithm selects which attribute to test at each node in the + +The ID3 algorithm selects which attribute to test at each node in the tree. -

    -

    We would like to select the attribute that is most useful for classifying +

    +We would like to select the attribute that is most useful for classifying examples. -

    -

    What is a good quantitative measure of the worth of an attribute?

    +

    +What is a good quantitative measure of the worth of an attribute? -

    Information gain measures how well a given attribute separates the +

    +Information gain measures how well a given attribute separates the training examples according to their target classification. -

    -

    The ID3 algorithm uses this information gain measure to select among the candidate +

    +The ID3 algorithm uses this information gain measure to select among the candidate attributes at each step while growing the tree. -

    +











    -

    Cancer Data again now with Decision Trees and other Methods

    + +

    Cancer Data again now with Decision Trees and other Methods

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -1636,32 +1428,15 @@ svm.fit(X_train_scaled, y_train)
     # Decision Trees
     deep_tree_clf.fit(X_train_scaled, y_train)
     print("Test set accuracy with Decision Trees and scaled data: {:.2f}".format(deep_tree_clf.score(X_test_scaled,y_test)))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Another example, the moons again

    + +

    Another example, the moons again

    +

    -

    -
    -
    -
    -
    -
    from __future__ import division, print_function, unicode_literals
    +
    from __future__ import division, print_function, unicode_literals
     
     # Common imports
     import numpy as np
    @@ -1725,32 +1500,15 @@ plt.subplot(122
     plot_decision_boundary(deep_tree_clf2, Xm, ym, axes=[-1.5, 2.5, -1, 1.5], iris=False)
     plt.title("min_samples_leaf = {}".format(deep_tree_clf2.min_samples_leaf), fontsize=14)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Playing around with regions

    + +

    Playing around with regions

    +

    -

    -
    -
    -
    -
    -
    np.random.seed(6)
    +
    np.random.seed(6)
     Xs = np.random.rand(100, 2) - 0.5
     ys = (Xs[:, 0] > 0).astype(np.float32) * 2
     
    @@ -1770,86 +1528,37 @@ plt.subplot(122
     plot_decision_boundary(tree_clf_sr, Xsr, ys, axes=[-0.7, 0.7, -0.7, 0.7], iris=False)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Regression trees

    + +

    Regression trees

    +

    -

    -
    -
    -
    -
    -
    # Quadratic training set + noise
    +
    # Quadratic training set + noise
     np.random.seed(42)
     m = 200
     X = np.random.rand(m, 1)
     y = 4 * (X - 0.5) ** 2
     y = y + np.random.randn(m, 1) / 10
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg = DecisionTreeRegressor(max_depth=2, random_state=42)
     tree_reg.fit(X, y)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Final regressor code

    + +

    Final regressor code

    +

    -

    -
    -
    -
    -
    -
    from sklearn.tree import DecisionTreeRegressor
    +
    from sklearn.tree import DecisionTreeRegressor
     
     tree_reg1 = DecisionTreeRegressor(random_state=42, max_depth=2)
     tree_reg2 = DecisionTreeRegressor(random_state=42, max_depth=3)
    @@ -1887,26 +1596,11 @@ plt.text(0.3.title("max_depth=3", fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    tree_reg1 = DecisionTreeRegressor(random_state=42)
    +
    tree_reg1 = DecisionTreeRegressor(random_state=42)
     tree_reg2 = DecisionTreeRegressor(random_state=42, min_samples_leaf=10)
     tree_reg1.fit(X, y)
     tree_reg2.fit(X, y)
    @@ -1934,24 +1628,11 @@ plt.xlabel(&quo
     plt.title("min_samples_leaf={}".format(tree_reg2.min_samples_leaf), fontsize=14)
     
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Pros and cons of trees, pros

    + +

    Pros and cons of trees, pros

    • White box, easy to interpret model. Some people believe that decision trees more closely mirror human decision-making than do the regression and classification approaches discussed earlier (think of support vector machines)
    • @@ -1962,8 +1643,10 @@ plt.show()
    • Can model interactions between the different descriptive features
    • Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)
    +









    -

    Disadvantages

    + +

    Disadvantages

    • Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches
    • @@ -1974,26 +1657,28 @@ plt.show()
    • If the number of features is relatively large (high dimensional) and the number of instances is relatively low, the tree might overfit the data
    • Features with many levels may be preferred over features with less levels since for them it is more easy to split the dataset such that the sub datasets only contain pure target feature values. This issue can be addressed by preferring for instance the information gain ratio as splitting criteria over information gain
    -

    However, by aggregating many decision trees, using methods like + +However, by aggregating many decision trees, using methods like bagging, random forests, and boosting, the predictive performance of trees can be substantially improved. -

    +











    -

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    -

    As stated above and seen in many of the examples discussed here about +

    Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods

    + +

    +As stated above and seen in many of the examples discussed here about a single decision tree, we often end up overfitting our training data. This normally means that we have a high variance. Can we reduce the variance of a statistical learning method? -

    -

    This leads us to a set of different methods that can combine different +

    +This leads us to a set of different methods that can combine different machine learning algorithms or just use one of them to construct forests and jungles of trees, homogeneous ones or heterogenous ones. These methods are recognized by different names which we will try to explain here. These are -

    1. Voting classifiers
    2. @@ -2001,45 +1686,50 @@ try to explain here. These are
    3. Random forests
    4. Boosting methods, from adaptive to Extreme Gradient Boosting (XGBoost)
    -

    We discuss these methods here.

    +We discuss these methods here. + +











    -

    An Overview of Ensemble Methods

    -

    -
    -

    -
    -

    +

    An Overview of Ensemble Methods

    +

    +



    + +











    -

    Bagging

    -

    The plain decision trees suffer from high +

    Bagging

    + +

    +The plain decision trees suffer from high variance. This means that if we split the training data into two parts at random, and fit a decision tree to both halves, the results that we get could be quite different. In contrast, a procedure with low variance will yield similar results if applied repeatedly to distinct data sets; linear regression tends to have low variance, if the ratio -of \( n \) to \( p \) is moderately large. -

    +of \( n \) to \( p \) is moderately large. -

    Bootstrap aggregation, or just bagging, is a +

    +Bootstrap aggregation, or just bagging, is a general-purpose procedure for reducing the variance of a statistical -learning method. -

    +learning method. +











    -

    More bagging

    -

    Bagging typically results in improved accuracy +

    More bagging

    + +

    +Bagging typically results in improved accuracy over prediction using a single tree. Unfortunately, however, it can be difficult to interpret the resulting model. Recall that one of the advantages of decision trees is the attractive and easily interpreted diagram that results. -

    -

    However, when we bag a large number of trees, it is no longer +

    +However, when we bag a large number of trees, it is no longer possible to represent the resulting statistical learning procedure using a single tree, and it is no longer clear which variables are most important to the procedure. Thus, bagging improves prediction @@ -2054,22 +1744,19 @@ trees. A large value indicates an important predictor. Similarly, in the context of bagging classification trees, we can add up the total amount that the Gini index is decreased by splits over a given predictor, averaged over all \( B \) trees. -

    +











    -

    Making your own Bootstrap: Changing the Level of the Decision Tree

    -

    Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with +

    Making your own Bootstrap: Changing the Level of the Decision Tree

    + +

    +Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with a decision tree wth different depths and perform a bootstrap aggregate (in this case we perform as many bootstraps as data points \( n \)). -

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.pipeline import make_pipeline
    @@ -2120,81 +1807,69 @@ plt.plot(polydegree, variance, label.legend()
     save_fig("baggingboot")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Why Voting?

    -

    The idea behind boosting, and voting as well can be phrased as follows: +

    Why Voting?

    + +

    +The idea behind boosting, and voting as well can be phrased as follows: Can a group of people somehow arrive at highly reasoned decisions, despite the weak judgement of the individual members? -

    -

    The aim is to create a good classifier by combining several weak classifiers. +

    +The aim is to create a good classifier by combining several weak classifiers. A weak classifier is a classifier which is able to produce results that are only slightly better than guessing at random. -

    -

    The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. +

    +The basic approach is to apply repeatedly (in boosting this is done in an iterative way) a weak classifier to modifications of the data. In voting we simply apply the law of large numbers while in boosting we give more weight to misclassified data in -each iteration. -

    +each iteration. -

    Decision trees play an important role as our weak classifier. They serve as the basic method.

    +

    +Decision trees play an important role as our weak classifier. They serve as the basic method. +











    -

    Tossing coins

    -

    The simplest case is a so-called voting ensemble. To illustrate this, +

    Tossing coins

    + +

    +The simplest case is a so-called voting ensemble. To illustrate this, think of yourself tossing coins with a biased outcome of 51 per cent for heads and 49% for tails. With only few tosses, you may not clearly see this distribution for heads and tails. However, after some thousands of tosses, there will be a clear majority of heads. With 2000 tosses you should see approximately 1020 heads and 980 tails. -

    -

    We can then state that the outcome is a clear majority of heads. If +

    +We can then state that the outcome is a clear majority of heads. If you do this ten thousand times, it is easy to see that there is a 97% likelihood of a majority of heads. -

    -

    Another example would be to collect all polls before an +

    +Another example would be to collect all polls before an election. Different polls may show different likelihoods for a candidate winning with say a majority of the popular vote. The majority vote would then consist in many polls indicating that this candidate will actually win. -

    -

    The example here shows how we can implement the coin tossing case, +

    +The example here shows how we can implement the coin tossing case, clealry demostrating that after some tosses we see the law of large numbers kicking in. -

    +











    -

    Standard imports first

    +

    Standard imports first

    + +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     from IPython.display import Image 
     from pydot import graph_from_dot_data
     import pandas as pd
    @@ -2231,32 +1906,15 @@ DATA_ID = "
     
     def save_fig(fig_id):
         plt.savefig(image_path(fig_id) + ".png", format='png')
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Simple Voting Example, head or tail

    + +

    Simple Voting Example, head or tail

    +

    -

    -
    -
    -
    -
    -
    # Common imports
    +
    # Common imports
     import numpy as np
     import matplotlib
     import matplotlib.pyplot as plt
    @@ -2278,34 +1936,18 @@ plt.legend(loc=
     plt.axis([0, 10000, 0.42, 0.58])
     save_fig("votingsimple")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Using the Voting Classifier

    -

    We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn.

    +

    Using the Voting Classifier

    + +

    +We can use the voting classifier on other data sets, here the exciting binary case of two distinct objects using the make moons functionality of Scikit-Learn. +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -2347,33 +1989,16 @@ voting_clf.fit(X_train, y_train)
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Voting and Bagging

    +

    Voting and Bagging

    + +

    -

    -
    -
    -
    -
    -
    from sklearn.model_selection import train_test_split
    +
    from sklearn.model_selection import train_test_split
     from sklearn.datasets import make_moons
     
     X, y = make_moons(n_samples=500, noise=0.30, random_state=42)
    @@ -2391,51 +2016,21 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='hard')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    log_clf = LogisticRegression(random_state=42)
    +
    log_clf = LogisticRegression(random_state=42)
     rnd_clf = RandomForestClassifier(random_state=42)
     svm_clf = SVC(probability=True, random_state=42)
     
    @@ -2443,76 +2038,49 @@ voting_clf = VotingClassifier(
         estimators=[('lr', log_clf), ('rf', rnd_clf), ('svc', svm_clf)],
         voting='soft')
     voting_clf.fit(X_train, y_train)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    from sklearn.metrics import accuracy_score
    +
    from sklearn.metrics import accuracy_score
     
     for clf in (log_clf, rnd_clf, svm_clf, voting_clf):
         clf.fit(X_train, y_train)
         y_pred = clf.predict(X_test)
         print(clf.__class__.__name__, accuracy_score(y_test, y_pred))
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Random forests

    -

    Random forests provide an improvement over bagged trees by way of a -small tweak that decorrelates the trees. -

    +

    Random forests

    -

    As in bagging, we build a +

    +Random forests provide an improvement over bagged trees by way of a +small tweak that decorrelates the trees. + +

    +As in bagging, we build a number of decision trees on bootstrapped training samples. But when building these decision trees, each time a split in a tree is considered, a random sample of \( m \) predictors is chosen as split candidates from the full set of \( p \) predictors. The split is allowed to -use only one of those \( m \) predictors. -

    +use only one of those \( m \) predictors. -

    A fresh sample of \( m \) predictors is +

    +A fresh sample of \( m \) predictors is taken at each split, and typically we choose -

    $$ m\approx \sqrt{p}. $$ -

    In building a random forest, at +

    +In building a random forest, at each split in the tree, the algorithm is not even allowed to consider -a majority of the available predictors. -

    +a majority of the available predictors. -

    The reason for this is rather clever. Suppose that there is one very +

    +The reason for this is rather clever. Suppose that there is one very strong predictor in the data set, along with a number of other moderately strong predictors. Then in the collection of bagged variable importance random forest trees, most or all of the trees will @@ -2524,36 +2092,41 @@ lead to as large of a reduction in variance as averaging many uncorrelated quantities. In particular, this means that bagging will not lead to a substantial reduction in variance over a single tree in this setting. -

    +











    -

    Random Forest Algorithm

    -

    The algorithm described here can be applied to both classification and regression problems.

    -

    We will grow of forest of say \( B \) trees.

    +

    Random Forest Algorithm

    +The algorithm described here can be applied to both classification and regression problems. + +

    +We will grow of forest of say \( B \) trees. +

    1. For \( b=1:B \)
    2. +
      • Draw a bootstrap sample from the training data organized in our \( \boldsymbol{X} \) matrix.
      • We grow then a random forest tree \( T_b \) based on the bootstrapped data by repeating the steps outlined till we reach the maximum node size is reached
      • +
        1. we select \( m \le p \) variables at random from the \( p \) predictors/features
        2. pick the best split point among the \( m \) features using for example the CART algorithm and create a new node
        3. split the node into daughter nodes
        +
      +
    3. Output then the ensemble of trees \( \{T_b\}_1^{B} \) and make predictions for either a regression type of problem or a classification type of problem.
    +









    -

    Random Forests Compared with other Methods on the Cancer Data

    + +

    Random Forests Compared with other Methods on the Cancer Data

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -2619,374 +2192,362 @@ skplt.metrics.<
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -

    Recall that the cumulative gains curve shows the percentage of the +

    +

    +Recall that the cumulative gains curve shows the percentage of the overall number of cases in a given category gained by targeting a percentage of the total number of cases. -

    -

    Similarly, the receiver operating characteristic curve, or ROC curve, +

    +Similarly, the receiver operating characteristic curve, or ROC curve, displays the diagnostic ability of a binary classifier system as its discrimination threshold is varied. It plots the true positive rate against the false positive rate. -

    +











    -

    Compare Bagging on Trees with Random Forests

    + +

    Compare Bagging on Trees with Random Forests

    +

    -

    -
    -
    -
    -
    -
    bag_clf = BaggingClassifier(
    +
    bag_clf = BaggingClassifier(
         DecisionTreeClassifier(splitter="random", max_leaf_nodes=16, random_state=42),
         n_estimators=500, max_samples=1.0, bootstrap=True, n_jobs=-1, random_state=42)
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    +

    + -

    -
    -
    -
    -
    -
    bag_clf.fit(X_train, y_train)
    +
    bag_clf.fit(X_train, y_train)
     y_pred = bag_clf.predict(X_test)
     from sklearn.ensemble import RandomForestClassifier
     rnd_clf = RandomForestClassifier(n_estimators=500, max_leaf_nodes=16, n_jobs=-1, random_state=42)
     rnd_clf.fit(X_train, y_train)
     y_pred_rf = rnd_clf.predict(X_test)
     np.sum(y_pred == y_pred_rf) / len(y_pred) 
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Boosting, a Bird's Eye View

    -

    The basic idea is to combine weak classifiers in order to create a good +

    Boosting, a Bird's Eye View

    + +

    +The basic idea is to combine weak classifiers in order to create a good classifier. With a weak classifier we often intend a classifier which produces results which are only slightly better than we would get by random guesses. -

    -

    This is done by applying in an iterative way a weak (or a standard +

    +This is done by applying in an iterative way a weak (or a standard classifier like decision trees) to modify the data. In each iteration we emphasize those observations which are misclassified by weighting them with a factor. -

    +











    -

    What is boosting? Additive Modelling/Iterative Fitting

    -

    Boosting is a way of fitting an additive expansion in a set of +

    What is boosting? Additive Modelling/Iterative Fitting

    + +

    +Boosting is a way of fitting an additive expansion in a set of elementary basis functions like for example some simple polynomials. Assume for example that we have a function -

    $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    where \( \beta_m \) are the expansion parameters to be determined in a +

    +where \( \beta_m \) are the expansion parameters to be determined in a minimization process and \( b(x;\gamma_m) \) are some simple functions of the multivariable parameter \( x \) which is characterized by the parameters \( \gamma_m \). -

    -

    As an example, consider the Sigmoid function we used in logistic +

    +As an example, consider the Sigmoid function we used in logistic regression. In that case, we can translate the function \( b(x;\gamma_m) \) into the Sigmoid function -

    $$ \sigma(t) = \frac{1}{1+\exp{(-t)}}, $$ -

    where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and +

    +where \( t=\gamma_0+\gamma_1 x \) and the parameters \( \gamma_0 \) and \( \gamma_1 \) were determined by the Logistic Regression fitting algorithm. -

    -

    As another example, consider the cost function we defined for linear regression

    +

    +As another example, consider the cost function we defined for linear regression $$ C(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    In this case the function \( f(x) \) was replaced by the design matrix +

    +In this case the function \( f(x) \) was replaced by the design matrix \( \boldsymbol{X} \) and the unknown linear regression parameters \( \boldsymbol{\beta} \), that is \( \boldsymbol{f}=\boldsymbol{X}\boldsymbol{\beta} \). In linear regression we can simply invert a matrix and obtain the parameters \( \beta \) by -

    $$ \boldsymbol{\beta}=\left(\boldsymbol{X}^T\boldsymbol{X}\right)^{-1}\boldsymbol{X}^T\boldsymbol{y}. $$ -

    In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \).

    +

    +In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters \( \beta_m \) and \( \gamma_m \). +











    -

    Iterative Fitting, Regression and Squared-error Cost Function

    -

    The way we proceed is as follows (here we specialize to the squared-error cost function)

    +

    Iterative Fitting, Regression and Squared-error Cost Function

    + +

    +The way we proceed is as follows (here we specialize to the squared-error cost function)

    1. Establish a cost function, here \( {\cal C}(\boldsymbol{y},\boldsymbol{f}) = \frac{1}{n} \sum_{i=0}^{n-1}(y_i-f_M(x_i))^2 \) with \( f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m) \).
    2. Initialize with a guess \( f_0(x) \). It could be one or even zero or some random numbers.
    3. For \( m=1:M \) +
      1. minimize \( \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2 \) wrt \( \gamma \) and \( \beta \)
      2. This gives the optimal values \( \beta_m \) and \( \gamma_m \)
      3. Determine then the new values \( f_m(x)=f_{m-1}(x) +\beta_m b(x;\gamma_m) \)
      +
    -

    We could use any of the algorithms we have discussed till now. If we + +We could use any of the algorithms we have discussed till now. If we use trees, \( \gamma \) parameterizes the split variables and split points at the internal nodes, and the predictions at the terminal nodes. -

    +











    -

    Squared-Error Example and Iterative Fitting

    -

    To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function.

    +

    Squared-Error Example and Iterative Fitting

    -

    For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \).

    +

    +To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function. -

    This means that for every iteration \( m \), we need to optimize

    +

    +For simplicity we assume also that our functions \( b(x;\gamma)=1+\gamma x \). + +

    +This means that for every iteration \( m \), we need to optimize $$ (\beta_m,\gamma_m) = \mathrm{argmin}_{\beta,\lambda}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta b(x;\gamma))^2=\sum_{i=0}^{n-1}(y_i-f_{m-1}(x_i)-\beta(1+\gamma x_i))^2. $$ -

    We start our iteration by simply setting \( f_0(x)=0 \). +

    +We start our iteration by simply setting \( f_0(x)=0 \). Taking the derivatives with respect to \( \beta \) and \( \gamma \) we obtain -

    $$ \frac{\partial {\cal C}}{\partial \beta} = -2\sum_{i}(1+\gamma x_i)(y_i-\beta(1+\gamma x_i))=0, $$ -

    and

    +and $$ \frac{\partial {\cal C}}{\partial \gamma} =-2\sum_{i}\beta x_i(y_i-\beta(1+\gamma x_i))=0. $$ -

    We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector)

    +We can then rewrite these equations as (defining \( \boldsymbol{w}=\boldsymbol{e}+\gamma \boldsymbol{x}) \) with \( \boldsymbol{e} \) being the unit vector) $$ \gamma \boldsymbol{w}^T(\boldsymbol{y}-\beta\gamma \boldsymbol{w})=0, $$ -

    which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have

    +which gives us \( \beta = \boldsymbol{w}^T\boldsymbol{y}/(\boldsymbol{w}^T\boldsymbol{w}) \). Similarly we have $$ \beta\gamma \boldsymbol{x}^T(\boldsymbol{y}-\beta(1+\gamma \boldsymbol{x}))=0, $$ -

    which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting -for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    +

    +which leads to \( \gamma =(\boldsymbol{x}^T\boldsymbol{y}-\beta\boldsymbol{x}^T\boldsymbol{e})/(\beta\boldsymbol{x}^T\boldsymbol{x}) \). Inserting +for \( \beta \) gives us an equation for \( \gamma \). This is a non-linear equation in the unknown \( \gamma \) and has to be solved numerically. -

    The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as -\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). -

    +

    +The solution to these two equations gives us in turn \( \beta_1 \) and \( \gamma_1 \) leading to the new expression for \( f_1(x) \) as +\( f_1(x) = \beta_1(1+\gamma_1x) \). Doing this \( M \) times results in our final estimate for the function \( f \). +











    -

    Iterative Fitting, Classification and AdaBoost

    -

    Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of +

    Iterative Fitting, Classification and AdaBoost

    + +

    +Let us consider a binary classification problem with two outcomes \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. We define a classification function \( G(x) \) which produces a prediction taking one or the other of the two values \( \{-1,1\} \). -

    -

    The error rate of the training sample is then

    +

    +The error rate of the training sample is then $$ \mathrm{\overline{err}}=\frac{1}{n} \sum_{i=0}^{n-1} I(y_i\ne G(x_i)). $$ -

    The iterative procedure starts with defining a weak classifier whose +

    +The iterative procedure starts with defining a weak classifier whose error rate is barely better than random guessing. The iterative procedure in boosting is to sequentially apply a weak classification algorithm to repeatedly modified versions of the data producing a sequence of weak classifiers \( G_m(x) \). -

    -

    Here we will express our function \( f(x) \) in terms of \( G(x) \). That is

    +

    +Here we will express our function \( f(x) \) in terms of \( G(x) \). That is $$ f_M(x) = \sum_{i=1}^M \beta_m b(x;\gamma_m), $$ -

    will be a function of

    +will be a function of $$ G_M(x) = \mathrm{sign} \sum_{i=1}^M \alpha_m G_m(x). $$ - +











    -

    Adaptive Boosting, AdaBoost

    -

    In our iterative procedure we define thus

    +

    Adaptive Boosting, AdaBoost

    + +

    +In our iterative procedure we define thus $$ f_m(x) = f_{m-1}(x)+\beta_mG_m(x). $$ -

    The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the +

    +The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the exponential cost/loss function defined as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}\exp{(-y_i(f_{m-1}(x_i)+\beta G(x_i))}. $$ -

    We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. +

    +We optimize \( \beta \) and \( G \) for each value of \( m=1:M \) as we did in the regression case. This is normally done in two steps. Let us however first rewrite the cost function as -

    $$ C(\boldsymbol{y},\boldsymbol{f}) = \sum_{i=0}^{n-1}w_i^{m}\exp{(-y_i\beta G(x_i))}, $$ -

    where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \).

    +where we have defined \( w_i^m= \exp{(-y_if_{m-1}(x_i))} \). +











    -

    Building up AdaBoost

    -

    First, for any \( \beta > 0 \), we optimize \( G \) by setting

    +

    Building up AdaBoost

    + +

    +First, for any \( \beta > 0 \), we optimize \( G \) by setting $$ G_m(x) = \mathrm{sign} \sum_{i=0}^{n-1} w_i^m I(y_i \ne G_(x_i)), $$ -

    which is the classifier that minimizes the weighted error rate in predicting \( y \).

    +which is the classifier that minimizes the weighted error rate in predicting \( y \). -

    We can do this by rewriting

    +

    +We can do this by rewriting $$ \exp{-(\beta)}\sum_{y_i=G(x_i)}w_i^m+\exp{(\beta)}\sum_{y_i\ne G(x_i)}w_i^m, $$ -

    which can be rewritten as

    +which can be rewritten as $$ (\exp{(\beta)}-\exp{-(\beta)})\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i))+\exp{(-\beta)}\sum_{i=0}^{n-1}w_i^m=0, $$ -

    which leads to

    +which leads to $$ \beta_m = \frac{1}{2}\log{\frac{1-\mathrm{\overline{err}}}{\mathrm{\overline{err}}}}, $$ -

    where we have redefined the error as

    +where we have redefined the error as $$ \mathrm{\overline{err}}_m=\frac{1}{n}\frac{\sum_{i=0}^{n-1}w_i^mI(y_i\ne G(x_i)}{\sum_{i=0}^{n-1}w_i^m}, $$ -

    which leads to an update of

    +which leads to an update of $$ f_m(x) = f_{m-1}(x) +\beta_m G_m(x). $$ -

    This leads to the new weights

    +This leads to the new weights $$ w_i^{m+1} = w_i^m \exp{(-y_i\beta_m G_m(x_i))} $$ - +











    -

    Adaptive boosting: AdaBoost, Basic Algorithm

    -

    The algorithm here is rather straightforward. Assume that our weak +

    Adaptive boosting: AdaBoost, Basic Algorithm

    + +

    +The algorithm here is rather straightforward. Assume that our weak classifier is a decision tree and we consider a binary set of outputs with \( y_i \in \{-1,1\} \) and \( i=0,1,2,\dots,n-1 \) as our set of observations. Our design matrix is given in terms of the feature/predictor vectors \( \boldsymbol{X}=[\boldsymbol{x}_0\boldsymbol{x}_1\dots\boldsymbol{x}_{p-1}] \). Finally, we define also a -classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    +classifier determined by our data via a function \( G(x) \). This function tells us how well we are able to classify our outputs/targets \( \boldsymbol{y} \). -

    We have already defined the misclassification error \( \mathrm{err} \) as

    +

    +We have already defined the misclassification error \( \mathrm{err} \) as $$ \mathrm{err}=\frac{1}{n}\sum_{i=0}^{n-1}I(y_i\ne G(x_i)), $$ -

    where the function \( I() \) is one if we misclassify and zero if we classify correctly.

    +where the function \( I() \) is one if we misclassify and zero if we classify correctly. +











    -

    Basic Steps of AdaBoost

    -

    With the above definitions we are now ready to set up the algorithm for AdaBoost. +

    Basic Steps of AdaBoost

    + +

    +With the above definitions we are now ready to set up the algorithm for AdaBoost. The basic idea is to set up weights which will be used to scale the correctly classified and the misclassified cases. -

    +
    1. We start by initializing all weights to \( w_i = 1/n \), with \( i=0,1,2,\dots n-1 \). It is easy to see that we must have \( \sum_{i=0}^{n-1}w_i = 1 \).
    2. We rewrite the misclassification error as
    + $$ \mathrm{\overline{err}}_m=\frac{\sum_{i=0}^{n-1}w_i^m I(y_i\ne G(x_i))}{\sum_{i=0}^{n-1}w_i}, $$ +
    1. Then we start looping over all attempts at classifying, namely we start an iterative process for \( m=1:M \), where \( M \) is the final number of classifications. Our given classifier could for example be a plain decision tree. +
      1. Fit then a given classifier to the training set using the weights \( w_i \).
      2. Compute then \( \mathrm{err} \) and figure out which events are classified properly and which are classified wrongly.
      3. Define a quantity \( \alpha_{m} = \log{(1-\mathrm{\overline{err}}_m)/\mathrm{\overline{err}}_m} \)
      4. Set the new weights to \( w_i = w_i\times \exp{(\alpha_m I(y_i\ne G(x_i)} \).
      +
    2. Compute the new classifier \( G(x)= \sum_{i=0}^{n-1}\alpha_m I(y_i\ne G(x_i) \).
    -

    For the iterations with \( m \le 2 \) the weights are modified + +For the iterations with \( m \le 2 \) the weights are modified individually at each steps. The observations which were misclassified at iteration \( m-1 \) have a weight which is larger than those which were classified properly. As this proceeds, the observations which were difficult to classifiy correctly are given a larger influence. Each new classification step \( m \) is then forced to concentrate on those observations that are missed in the previous iterations. -

    +











    -

    AdaBoost Examples

    -

    Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here.

    +

    AdaBoost Examples

    +

    +Using Scikit-Learn it is easy to apply the adaptive boosting algorithm, as done here. + +

    -

    -
    -
    -
    -
    -
    from sklearn.ensemble import AdaBoostClassifier
    +
    from sklearn.ensemble import AdaBoostClassifier
     
     ada_clf = AdaBoostClassifier(
         DecisionTreeClassifier(max_depth=1), n_estimators=200,
    @@ -3007,115 +2568,114 @@ skplt.metrics.<
     plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    -

    Gradient boosting is again a similar technique to Adaptive boosting, +

    Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent

    + +

    +Gradient boosting is again a similar technique to Adaptive boosting, it combines so-called weak classifiers or regressors into a strong method via a series of iterations. -

    -

    In order to understand the method, let us illustrate its basics by +

    +In order to understand the method, let us illustrate its basics by bringing back the essential steps in linear regression, where our cost function was the least squares function. -

    +











    -

    The Squared-Error again! Steepest Descent

    -

    We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize +

    The Squared-Error again! Steepest Descent

    + +

    +We start again with our cost function \( {\cal C}(\boldsymbol{y}m\boldsymbol{f})=\sum_{i=0}^{n-1}{\cal L}(y_i, f(x_i)) \) where we want to minimize This means that for every iteration, we need to optimize -

    $$ (\hat{\boldsymbol{f}}) = \mathrm{argmin}_{\boldsymbol{f}}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as

    +

    +We define a real function \( h_m(x) \) that defines our final function \( f_M(x) \) as $$ f_M(x) = \sum_{m=0}^M h_m(x). $$ -

    In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as

    +

    +In the steepest decent approach we approximate \( h_m(x) = -\rho_m g_m(x) \), where \( \rho_m \) is a scalar and \( g_m(x) \) the gradient defined as $$ g_m(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{m-1}(x_i)}. $$ -

    With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that +

    +With the new gradient we can update \( f_m(x) = f_{m-1}(x) -\rho_m g_m(x) \). Using the above squared-error function we see that the gradient is \( g_m(x_i) = -2(y_i-f(x_i)) \). -

    -

    Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have

    +

    +Choosing \( f_0(x)=0 \) we obtain \( g_m(x) = -2y_i \) and inserting this into the minimization problem for the cost function we have $$ (\rho_1) = \mathrm{argmin}_{\rho}\hspace{0.1cm} \sum_{i=0}^{n-1}(y_i+2\rho y_i)^2. $$ - +











    -

    Steepest Descent Example

    -

    Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that

    +

    Steepest Descent Example

    + +

    +Optimizing with respect to \( \rho \) we obtain (taking the derivative) that \( \rho_1 = -1/2 \). We have then that $$ f_1(x) = f_{0}(x) -\rho_1 g_1(x)=-y_i. $$ -

    We can then proceed and compute

    +We can then proceed and compute $$ g_2(x_i) = \left[ \frac{\partial {\cal L}(y_i, f(x_i))}{\partial f(x_i)}\right]_{f(x_i)=f_{1}(x_i)=y_i}=-4y_i, $$ -

    and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting.

    +and find a new value for \( \rho_2=-1/2 \) and continue till we have reached \( m=M \). We can modify the steepest descent method, or steepest boosting, by introducing what is called gradient boosting. +











    -

    Gradient Boosting, algorithm

    -

    Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, +

    Gradient Boosting, algorithm

    + +

    +Steepest descent is however not much used, since it only optimizes \( f \) at a fixed set of \( n \) points, so we do not learn a function that can generalize. However, we can modify the algorithm by -fitting a weak learner to approximate the negative gradient signal. -

    +fitting a weak learner to approximate the negative gradient signal. -

    Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function

    +

    +Suppose we have a cost function \( C(f)=\sum_{i=0}^{n-1}L(y_i, f(x_i)) \) where \( y_i \) is our target and \( f(x_i) \) the function which is meant to model \( y_i \). The above cost function could be our standard squared-error function $$ C(\boldsymbol{y},\boldsymbol{f})=\sum_{i=0}^{n-1}(y_i-f(x_i))^2. $$ -

    The way we proceed in an iterative fashion is to

    +

    +The way we proceed in an iterative fashion is to +

    1. Initialize our estimate \( f_0(x) \).
    2. For \( m=1:M \), we +
      1. compute the negative gradient vector \( \boldsymbol{u}_m = -\partial C(\boldsymbol{y},\boldsymbol{f})/\partial \boldsymbol{f}(x) \) at \( f(x) = f_{m-1}(x) \);
      2. fit the so-called base-learner to the negative gradient \( h_m(u_m,x) \);
      3. update the estimate \( f_m(x) = f_{m-1}(x)+h_m(u_m,x) \);
      +
    3. The final estimate is then \( f_M(x) = \sum_{m=1}^M h_m(u_m,x) \).
    +









    -

    Gradient Boosting, Examples of Regression

    + +

    Gradient Boosting, Examples of Regression

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     from sklearn.ensemble import GradientBoostingRegressor
    @@ -3161,32 +2721,15 @@ plt.plot(polydegree, variance, label.legend()
     save_fig("gdregression")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Gradient Boosting, Classification Example

    + +

    Gradient Boosting, Classification Example

    +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -3226,51 +2769,37 @@ plt.show()
     skplt.metrics.plot_cumulative_gain(y_test, y_probas)
     save_fig("gdclassiffiercgain")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    XGBoost: Extreme Gradient Boosting

    -

    XGBoost or Extreme Gradient +

    XGBoost: Extreme Gradient Boosting

    + +

    +XGBoost or Extreme Gradient Boosting, is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting that solve many data science problems in a fast and accurate way. See the article by Chen and Guestrin. -

    -

    The authors design and build a highly scalable end-to-end tree +

    +The authors design and build a highly scalable end-to-end tree boosting system. It has a theoretically justified weighted quantile sketch for efficient proposal calculation. It introduces a novel sparsity-aware algorithm for parallel tree learning and an effective cache-aware block structure for out-of-core tree learning. -

    -

    It is now the algorithm which wins essentially all ML competitions!!!

    +

    +It is now the algorithm which wins essentially all ML competitions!!! +











    -

    Regression Case

    +

    Regression Case

    + +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import train_test_split
     import xgboost as xgb
    @@ -3316,34 +2845,18 @@ plt.plot(polydegree, bias, label.plot(polydegree, variance, label='Variance')
     plt.legend()
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - +
    +











    -

    Xgboost on the Cancer Data

    -

    As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now.

    +

    Xgboost on the Cancer Data

    + +

    +As you will see from the confusion matrix below, XGBoots does an excellent job on the Wisconsin cancer data and outperforms essentially all agorithms we have discussed till now. +

    -

    -
    -
    -
    -
    -
    import matplotlib.pyplot as plt
    +
    import matplotlib.pyplot as plt
     import numpy as np
     from sklearn.model_selection import  train_test_split 
     from sklearn.datasets import load_breast_cancer
    @@ -3394,26 +2907,18 @@ xgb.plot_importance(xg_clf)
     plt.rcParams['figure.figsize'] = [5, 5]
     save_fig("xgparams")
     plt.show()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - +
    +

    + +

    © 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license
    + + + diff --git a/doc/pub/week45/ipynb/DataFiles/cancer.dot b/doc/pub/week45/ipynb/DataFiles/cancer.dot index 5b4b48a9b..0c1e8242f 100644 --- a/doc/pub/week45/ipynb/DataFiles/cancer.dot +++ b/doc/pub/week45/ipynb/DataFiles/cancer.dot @@ -1,57 +1,57 @@ digraph Tree { node [shape=box, style="filled, rounded", color="black", fontname=helvetica] ; edge [fontname=helvetica] ; -0 [label="worst perimeter <= 106.05\ngini = 0.465\nsamples = 426\nvalue = [[269, 157]\n[157, 269]]", fillcolor="#e5813908"] ; -1 [label="worst concave points <= 0.159\ngini = 0.067\nsamples = 259\nvalue = [[250, 9]\n[9, 250]]", fillcolor="#e58139db"] ; +0 [label="worst perimeter <= 106.05\ngini = 0.465\nsamples = 426\nvalue = [[269, 157]\n[157, 269]]", fillcolor="#fefbf9"] ; +1 [label="worst concave points <= 0.159\ngini = 0.067\nsamples = 259\nvalue = [[250, 9]\n[9, 250]]", fillcolor="#e99355"] ; 0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ; -2 [label="worst concave points <= 0.135\ngini = 0.031\nsamples = 253\nvalue = [[249, 4]\n[4, 249]]", fillcolor="#e58139ee"] ; +2 [label="worst concave points <= 0.135\ngini = 0.031\nsamples = 253\nvalue = [[249, 4]\n[4, 249]]", fillcolor="#e78946"] ; 1 -> 2 ; -3 [label="radius error <= 0.643\ngini = 0.008\nsamples = 242\nvalue = [[241, 1]\n[1, 241]]", fillcolor="#e58139fb"] ; +3 [label="radius error <= 0.643\ngini = 0.008\nsamples = 242\nvalue = [[241, 1]\n[1, 241]]", fillcolor="#e5833c"] ; 2 -> 3 ; -4 [label="gini = 0.0\nsamples = 239\nvalue = [[239, 0]\n[0, 239]]", fillcolor="#e58139ff"] ; +4 [label="gini = 0.0\nsamples = 239\nvalue = [[239, 0]\n[0, 239]]", fillcolor="#e58139"] ; 3 -> 4 ; -5 [label="worst symmetry <= 0.208\ngini = 0.444\nsamples = 3\nvalue = [[2, 1]\n[1, 2]]", fillcolor="#e5813913"] ; +5 [label="texture error <= 1.938\ngini = 0.444\nsamples = 3\nvalue = [[2, 1]\n[1, 2]]", fillcolor="#fdf6f0"] ; 3 -> 5 ; -6 [label="gini = 0.0\nsamples = 1\nvalue = [[0, 1]\n[1, 0]]", fillcolor="#e58139ff"] ; +6 [label="gini = 0.0\nsamples = 2\nvalue = [[2, 0]\n[0, 2]]", fillcolor="#e58139"] ; 5 -> 6 ; -7 [label="gini = 0.0\nsamples = 2\nvalue = [[2, 0]\n[0, 2]]", fillcolor="#e58139ff"] ; +7 [label="gini = 0.0\nsamples = 1\nvalue = [[0, 1]\n[1, 0]]", fillcolor="#e58139"] ; 5 -> 7 ; -8 [label="worst texture <= 29.455\ngini = 0.397\nsamples = 11\nvalue = [[8, 3]\n[3, 8]]", fillcolor="#e581392c"] ; +8 [label="mean texture <= 20.84\ngini = 0.397\nsamples = 11\nvalue = [[8, 3]\n[3, 8]]", fillcolor="#fae9dd"] ; 2 -> 8 ; -9 [label="gini = 0.0\nsamples = 8\nvalue = [[8, 0]\n[0, 8]]", fillcolor="#e58139ff"] ; +9 [label="gini = 0.0\nsamples = 8\nvalue = [[8, 0]\n[0, 8]]", fillcolor="#e58139"] ; 8 -> 9 ; -10 [label="gini = 0.0\nsamples = 3\nvalue = [[0, 3]\n[3, 0]]", fillcolor="#e58139ff"] ; +10 [label="gini = 0.0\nsamples = 3\nvalue = [[0, 3]\n[3, 0]]", fillcolor="#e58139"] ; 8 -> 10 ; -11 [label="mean texture <= 16.22\ngini = 0.278\nsamples = 6\nvalue = [[1, 5]\n[5, 1]]", fillcolor="#e581396b"] ; +11 [label="area error <= 13.475\ngini = 0.278\nsamples = 6\nvalue = [[1, 5]\n[5, 1]]", fillcolor="#f4caac"] ; 1 -> 11 ; -12 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139ff"] ; +12 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139"] ; 11 -> 12 ; -13 [label="gini = 0.0\nsamples = 5\nvalue = [[0, 5]\n[5, 0]]", fillcolor="#e58139ff"] ; +13 [label="gini = 0.0\nsamples = 5\nvalue = [[0, 5]\n[5, 0]]", fillcolor="#e58139"] ; 11 -> 13 ; -14 [label="worst texture <= 20.645\ngini = 0.202\nsamples = 167\nvalue = [[19, 148]\n[148, 19]]", fillcolor="#e5813994"] ; +14 [label="worst texture <= 20.645\ngini = 0.202\nsamples = 167\nvalue = [[19, 148]\n[148, 19]]", fillcolor="#f0b68c"] ; 0 -> 14 [labeldistance=2.5, labelangle=-45, headlabel="False"] ; -15 [label="worst radius <= 17.74\ngini = 0.375\nsamples = 16\nvalue = [[12, 4]\n[4, 12]]", fillcolor="#e5813938"] ; +15 [label="worst concavity <= 0.318\ngini = 0.375\nsamples = 16\nvalue = [[12, 4]\n[4, 12]]", fillcolor="#f9e3d4"] ; 14 -> 15 ; -16 [label="gini = 0.0\nsamples = 11\nvalue = [[11, 0]\n[0, 11]]", fillcolor="#e58139ff"] ; +16 [label="gini = 0.0\nsamples = 11\nvalue = [[11, 0]\n[0, 11]]", fillcolor="#e58139"] ; 15 -> 16 ; -17 [label="mean texture <= 13.745\ngini = 0.32\nsamples = 5\nvalue = [[1, 4]\n[4, 1]]", fillcolor="#e5813955"] ; +17 [label="area error <= 23.16\ngini = 0.32\nsamples = 5\nvalue = [[1, 4]\n[4, 1]]", fillcolor="#f6d5bd"] ; 15 -> 17 ; -18 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139ff"] ; +18 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139"] ; 17 -> 18 ; -19 [label="gini = 0.0\nsamples = 4\nvalue = [[0, 4]\n[4, 0]]", fillcolor="#e58139ff"] ; +19 [label="gini = 0.0\nsamples = 4\nvalue = [[0, 4]\n[4, 0]]", fillcolor="#e58139"] ; 17 -> 19 ; -20 [label="mean concave points <= 0.049\ngini = 0.088\nsamples = 151\nvalue = [[7, 144]\n[144, 7]]", fillcolor="#e58139d0"] ; +20 [label="mean concave points <= 0.049\ngini = 0.088\nsamples = 151\nvalue = [[7, 144]\n[144, 7]]", fillcolor="#ea985d"] ; 14 -> 20 ; -21 [label="concave points error <= 0.01\ngini = 0.48\nsamples = 15\nvalue = [[6, 9]\n[9, 6]]", fillcolor="#e5813900"] ; +21 [label="compactness error <= 0.016\ngini = 0.48\nsamples = 15\nvalue = [[6, 9]\n[9, 6]]", fillcolor="#ffffff"] ; 20 -> 21 ; -22 [label="gini = 0.0\nsamples = 9\nvalue = [[0, 9]\n[9, 0]]", fillcolor="#e58139ff"] ; +22 [label="gini = 0.0\nsamples = 9\nvalue = [[0, 9]\n[9, 0]]", fillcolor="#e58139"] ; 21 -> 22 ; -23 [label="gini = 0.0\nsamples = 6\nvalue = [[6, 0]\n[0, 6]]", fillcolor="#e58139ff"] ; +23 [label="gini = 0.0\nsamples = 6\nvalue = [[6, 0]\n[0, 6]]", fillcolor="#e58139"] ; 21 -> 23 ; -24 [label="worst smoothness <= 0.096\ngini = 0.015\nsamples = 136\nvalue = [[1, 135]\n[135, 1]]", fillcolor="#e58139f7"] ; +24 [label="mean smoothness <= 0.079\ngini = 0.015\nsamples = 136\nvalue = [[1, 135]\n[135, 1]]", fillcolor="#e6853f"] ; 20 -> 24 ; -25 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139ff"] ; +25 [label="gini = 0.0\nsamples = 1\nvalue = [[1, 0]\n[0, 1]]", fillcolor="#e58139"] ; 24 -> 25 ; -26 [label="gini = 0.0\nsamples = 135\nvalue = [[0, 135]\n[135, 0]]", fillcolor="#e58139ff"] ; +26 [label="gini = 0.0\nsamples = 135\nvalue = [[0, 135]\n[135, 0]]", fillcolor="#e58139"] ; 24 -> 26 ; } \ No newline at end of file diff --git a/doc/pub/week45/ipynb/DataFiles/cancer.png b/doc/pub/week45/ipynb/DataFiles/cancer.png index 2ceb5e1f87d923a1cbee266c6cdd1b116e2ed85a..4d0fc1208aaad71884069ee860b1ba2c0aad1451 100644 GIT binary patch literal 246246 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

    $SlJpzY(BB_TeUdD` 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 diff --git a/doc/pub/week45/ipynb/DataFiles/ride.dot b/doc/pub/week45/ipynb/DataFiles/ride.dot index 50aaa7638..b9d720cda 100644 --- a/doc/pub/week45/ipynb/DataFiles/ride.dot +++ b/doc/pub/week45/ipynb/DataFiles/ride.dot @@ -1,13 +1,13 @@ digraph Tree { node [shape=box, style="filled, rounded", color="black", fontname=helvetica] ; edge [fontname=helvetica] ; -0 [label="X[7] <= 0.5\ngini = 0.48\nsamples = 15\nvalue = [4, 10, 1]", fillcolor="#39e5818b"] ; -1 [label="X[1] <= 0.5\ngini = 0.408\nsamples = 14\nvalue = [4, 10, 0]", fillcolor="#39e58199"] ; +0 [label="X[9] <= 0.5\ngini = 0.48\nsamples = 15\nvalue = [4, 10, 1]", fillcolor="#93f1ba"] ; +1 [label="X[1] <= 0.5\ngini = 0.408\nsamples = 14\nvalue = [4, 10, 0]", fillcolor="#88efb3"] ; 0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ; -2 [label="gini = 0.48\nsamples = 10\nvalue = [4, 6, 0]", fillcolor="#39e58155"] ; +2 [label="gini = 0.48\nsamples = 10\nvalue = [4, 6, 0]", fillcolor="#bdf6d5"] ; 1 -> 2 ; -3 [label="gini = 0.0\nsamples = 4\nvalue = [0, 4, 0]", fillcolor="#39e581ff"] ; +3 [label="gini = 0.0\nsamples = 4\nvalue = [0, 4, 0]", fillcolor="#39e581"] ; 1 -> 3 ; -4 [label="gini = 0.0\nsamples = 1\nvalue = [0, 0, 1]", fillcolor="#8139e5ff"] ; +4 [label="gini = 0.0\nsamples = 1\nvalue = [0, 0, 1]", fillcolor="#8139e5"] ; 0 -> 4 [labeldistance=2.5, labelangle=-45, headlabel="False"] ; } \ No newline at end of file diff --git a/doc/pub/week45/ipynb/Results/FigureFiles/votingsimple.png b/doc/pub/week45/ipynb/Results/FigureFiles/votingsimple.png index 30ec67491f805048c416706574e52198139eb62f..f17c69ab575cf5111198630baf6a718e47aae498 100644 GIT binary patch literal 42831 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

    &i$am4NScCbF+Sth-&& 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 literal 39880 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 diff --git a/doc/pub/week45/ipynb/ipynb-week45-src.tar.gz b/doc/pub/week45/ipynb/ipynb-week45-src.tar.gz index 29c0c400c0b81880d20ae55bd6c0939bcc7c0b0c..4564704e15f665d08329e6b4b3110dfc338655a6 100644 GIT binary patch delta 246216 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ⅆ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 L*F6wn&>AUEBpeFL(={yix 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 YEB}@M%75j*@_$DD2W=%m2LP-D04&zP#3U4u35 z8Z5yjxCepX5h!h)=HtfImkbbJ-bLTR!H)hv(^p<;VF6ZYC3|LRVZo0Y z=B94aZVqnxVxq44s%+L8!uD)3781_V7Ak@YLX4~mA`*;JN(y2M!iEm=79y^8? zAjuZ+hp@4lgo(5?3@vc{1O_(fBMbt}zxi{be}CK%J_8m8{vSO+Uk2Pi|BHB<0sqfq zxKEEKhPHZ%!NBmtNC*okxxntuBf8*95FssMIb+3T_+o!*cs56h?_7iZWPd-z-6jYT z-&vdFQv-stI!-j=r;Tfd>Wx=qaXm)IMe{%SW4tqRXv%5?Fe|Ew@4l@uqGlt0F{;OM2z&#O;fUz=q_6F)7*u`+ba5(MP z(aAtwp)|5-t?ljY!)XVQ7Ao^G@)M&|tE+IFm#EbB#{3Wk-vh%g*K)eE58BNq%3Uqq zp?wH6y1fVvGG?SPZfDKC)d#o}dnkEyuzyt@wT-rfD^^XR_jI0PHJ;u(8-(7Hu6Gwy zv&XZpH|KN;xiVp_AAe`?`@)r0RmBQPK@B)cjRMthQ*60ms95pO@DW}wuB`=JoopB` z%+`t@H->NqIBLS1OY-kA(u1|STr?T7yd@t_t(sB}Jb87SUv9OK zd(L)@K4UWI9433g`}0c-%~NibcMiK_D5Ts@!gIB@ zz1fEGR#q@*^UIY_Wrr8onM|YNfN))E^|QH-IEM7RdlgJy?kqPdx^qoHKH&uM$T!I z(PEq+0d=Re$2$$(^y)y}=@!}7cBM-INnDrLdz(t;-a9WiSB^pnac*u-Zhx+sl~yUw zCy~W8aJx$F{U2HK*?M9luQggnV2Sdllb;h+DvgIwGM@hDEJsNcqkg-MB?^PIZw6xY zE9qdCTp0@eXe0BHIj_5GL{A(^D4`T~fyLYuyVUH#gzCI4XkBP>XL9Vt)#7x1^&4{? z{022bR_yM@WsO{~*tGP)1W z$>norzug+h*T`0>e}zrRa{XgF>!ZH?yg zZAXz3I+SR(z{)h#>UCAV+04P{lucq**47MvI2i&>)p&zwReuZotAA(`^RXwg^yzym zZYg|^ouI+aN zPt|_msxkW#&FOml)l1EDD3KfM3Jp)RJ~UCOPAq~f-{WDX{GnAKloTXDs#|LFG&`Ne zbU<{F$5olsV&Wb)F(Bqo|z8(8;*abz8hJO0D?laa#vBhSDjmv>J^*!n}kVyuUokV$b74><%XvOX0M= z#Z7td&TjPT_8a1fygYtpDxY-I0F!fC1?{Z&BE?vtCi2@jI%W8ylZ}C&hnYf$7Z5K< zF{jIBWPg3jp#6G==-IZ}Xg!`rjrkXmkod)pAS@flrmXGV`B4GA?bg}P@H-P^e~85~?)$3Zs4}|zO;aOBWwy&Z zoQylrdfvTtmUt6Vg9Vt3Ak^5x#h)Pr1ye>=6E%K@&e>%jvdGl5>ODli7_h&#^@gV0E;P?}{kKg{INTmE<=LxK zdbLuYi<%+w@gw)*n#L^QFU!0pV}IfY5eE-PGGAXu)o4kA#9Ho`1JG`*`Z9ds8x_BQ z_}<%BeR?&s7Gmz*mjfF2YH9WyYYv))ER1A{U8J$v3Pw&w@6>=NC%9$P=CYpmSJPY)Q#K`!8h+BQuz$*gNjef_2R(fpu`vwyeoN~tq? zb@hR#Z5O6Jivoc=+h>H{1aummn(m*MvZRhze>IUdyua)jH5qsBb4=%HEGedJL9>d| zIM|)8$iExQS9G^Po4Do_D;}+qH1(_SnopgrDX_=fgKY2`OvzRK80fi}FgbL$@VnXO zIG^;r^V67@HFAiy1QtjcW3-#&h@pw)?@0?US0CIwNfzrRAwwtS0Z- z7kXZ6yV9;0azQp$b$WezaI(RWH*klHnTO3$ezMpmgl8valD7lqMi^sv<^Co%v=CV; zaBLEA&WKoLF|JgxaDQfjPRu+7vEi`eaW2+!E7S9q6emN;HA<;OCZgRPJlOy(d@ddH z5+fK&^<~d1X{VKVo^yqUZ@~ZH)s>sifqi-?cnzB`8GY^p<9f30doG96ufNc#4NfqBy~ENE?jPr{7h_`6lyHm(3p3xiKE{b_kP{Z^s`L`gr8FEd{;b?IiS~iDx(=VH?`hz zI}hUTzkQUNO^-53-O}W8w4C3e5RblX`pW>`DzN3;CVw|+iPcq3PQpEM*={|Qk|6`b zwU+7(T0j#@U<@~t51NdJpxpQ;>`1kBoD!ZqYWM>8^ZlOzXavedr_A3a^Y^S~o%7mM z-h+g$(F=&w)s$tOD=%;NXBNHJr4moykwdb&LzOE^jmyTnvG(()uehD|$M8kZxUqLv zI=!8(7k}!Fd*Tw0nJswTt1U~b2lI|4aTze_I>WE~lUX!F2GUWtM!&P9Ji{Rdxzkzf z(ZNZ~H#o9X{?ME(9&Vq>J4YPPDa#TQK=brhdZU=BlImvO2BGW-w1D5oLeGsWQ6u~k zt#Nr1#d!frwp;7}Vli1#$icX(<@!u$-+qu}ntu|@!{}90^I|E9cOh?OBnNfptaEfd zHDLXwZ8i_1s7k8_zHLV(-j%=dv8{htB}%^LxMa-r)lTVXv< z>eF{I{>Wde>=QFvc0c8Mg`cRkUUx`Ft*pAujjvTIUmK}hh7ogQ1Z74MuBca-{7i8@ zp?`qC0)T7V@DkM+ykA!s(X~6NdgNrjDwt%v{i3ITn?^SMh3#_Z%!}H%&(FBSxi&g~ zDMm&z+<%WPR59$E_(3}-TeB}i`!xb!tI2F>IL061yUN$z9(LECY0Q>nInFvIT;5QN zzfO&mYO9N@<@LNquc;aqsxqID%M8B8cz^x`rG*NMF{#Qj006!pSx%oJOtTV}#sxU6 z4Fq!6So1G%*`&3=Ot4qedW=L-iH%fCTcDG3bwXtI&?t}{j_?PP3t-&|&05?q=&#So zGxkdwQ7BscoUCTeLY{!zcHi4mqD?v3Zss7}89&vN*yD2O%o{Nra|+uYALDh}o`2Vz zuNly+&by($ke0PeS1D01^b+HBzi4B#I-1W3Bi;#uzs1}?c;AZZ0%cBHR}r7vb+3Y- z5{pC8v;{ckQEjB}Ap~!8kZfLhd1MMAj`J6KNJjh4<4MM6==cTp7{qI@Nr=ZPzm3aJ zoN?PE=3Q^X-CWxIEGnIxsWfd@;D0ew`EmT6=X(b4dyirKev!Tjt4cWzluF;jq=L|+ zbbz{K>aXNP%5lF@$Zjnn994FqcvI2pT5K+9_`^#=VdFGkF;Xa5nI4OTny^Ns`polc zV&%5*)BSDKihPw_G+aX*N&FeS(J-%Rn#bko5@{TrdJ$3`8ZP~dps4ruCV!TfhCgQ5 zt^InRtVUE-v2{g|`bBjF0Z$xA;PB>CDbYrAC8nfS93W!Lpu2DNEiXyF^Wf!cK489XRui8}W&Kz*MvUjy ze80D~l|Rp|IyGg4d9H~!pX&A^#7c#elXG+YFd0gk`VlyVApO>_8=xZr9qSAU$yAb(o7o^MaaZP??Wkj4~T zN+!7_Ej~0!62 zz$yN2S*}nqC*O3OMfAJ$WdnVvIFvn340>H&TYvQKb25`XK7fZwhSGS^2J<)P#$hGiDO|pGzdFWK7CTmoE3Gd3N&Q3i z7+dgno&AP9z^g&zUn;=iZq^S`-EOk>b~$5suC%zm4Lw z{YKG{_TKCQkwxs8>0_K0DZ!R{qW!tIT4wrn~km48@-z!wE$o4ekZ-ULbGC3RjM z>40r(6-&tE054>S?s3h0Yr{|AwMRjwgq^Cy9|Gq6e!8EL^Kku=p^OnK3(f0Kquir(5$f%BYOL` z(s~@HaDTGsr@yV?_~LCPA&Xp|o`A#F97{$mp1#iuDi3|Fu$T-{%pO!8_Bo_ z18zN_z;yleV^0*-4TGX|3M*kMx1-WzY%k7BDTEtl<1)`~%v+U`w3ahSi#PcrMg1O( z2LMZXp~SkAl%@UsaEo|`7hboQv>?arvA`hKVt?m-3fcX+&Ee+MB@+7uJ#|15w0;M-2<&MO=3l+%VxrMy_ zG_Ji*nl<3Uy^whNEX@nDTKfxnF6Z5hfL7P=oB_?nyPFG_i+x^9^7o%=z>w>{>><>P zgMZlzl%aHxs^d)jJAFVMDrivL`0e^2L^f$({mw6%Kobx!T)%Z zTY^QO<_G%z?@&w&0dAcu>uRkpUaj1L5Pu1a#Aiz}S8qIc?Kzi=T!u5N`?=-iPOBF> z$uPNvYDp(BaGN`~MYIE%G-kXJgRb+77+zH}&}59uZFICIH3x}gBJ=ko?T70#3!${5 zt_(_{svs1y?E$zIkLhOj12Rk!p1cLd$U`oi=v*}kcguxx5j@AHm0-nOnZiwkUg z=PXVs)nxp(XL4=M+Uup@L2yb!$DKa;pMahC6UJ2;@z>>;Q0w#Ljb1TJ5_rD;2hwU^ z{9Dsn2E5+*?$7dB7&pxv)T`lSUg9QolF`$*Dsd{!Aw=heD)|6UxL|ns;p?#MdABSG zzwqw*tT4h5U}uxdix1wBx}eu!Tz{!#KKO3ThczmvW-qM;>PSQzEOH*7=$WF2?g;Wi zms_0p7N;K?W^<*KmO&;0^IVQ&Z%$G+vO+{1u{e4IH=jBLAKxVz35iXaF1#>dA8*FkbsW%u+2 zQ604a)c;*N8DE)JwY^ulaQxoq9yF-PJ(F%Cot!r;$N`@JUD3ZitK~gp;utgaCm4Ac z0*79A65_*?3T14UQ4@AT*MCp9y!uN)PPes7>$NHGEv7K@!_+G_DC8B;yg>oM_$T&+ zU*gHRoh-#&NO-qG=GJ@mo!jOEF}6F(k{<)$1$>D`KgKl?%F}6$Y4I3z+tEC)PbEq) zvB>!pz!+LhZWzXWs-4C24H(@DnelQ)d!Jwlz^*PF1^Z|UfeVrH24V~Kf z{2GpAIO4T)@E(-UdSVNUBL9NiUJ@tAWUnCBY`&Ouo5Qk5@SumkzB4=mK*HO_wk=^b zYZ=WY-ozXEF%Ne!47xf!8>YW^6IpCF_O-_VrY1N4A(^fPe19P$9D*;cTmgQ71t=Mn znsOYyGHRAsxE%ah`IA!WFYzF8%_&tfvYzGU^1Nd0aINhGe+rFe2NY)G-t6;%y@)x6 z6?YTsJ40x6ROziUsnd7*3IRGt^CGJi0ExC+%ZUA{ynRLW3?YLbYDpW4)W=(^(X9a? zAo<=K=NB{!;eRvO2~zDom~RNeB5#bO3WCUSgJxf0VPVZRx}t6U{w}gTmVcMx^>FWr z=dQZ|_xUMRVEW2>^wLxZ3cI@H(&nZay|w`e>d77`Hi69y*!v35VTW&MJ?M9^en^FK z+*x9wauwAL7rXf;qr?nfiPP>XCzh9jls?wr|Lf%G7gzA{gth1#YF_5748A*tS}U` zdIcw+CCWCNu!4w&-@4?7tdvKH!a`MXF2proYbz9RAQAIQT3mJD`rgl{b0{9d3YA;) zxk5cmKY#DPSSUAz5+Q*n9uN200|r>%)cpBKXk=342>S`Xz8cWfyX}NX_nJQV!hgo& z;B(qruriA;EPQJ|R^X?k@-gZ~6<)!3UchV(m^fUw*#l8JiS3`DB>R`*;n9j%$I<6< zO0ZE6IOz-2TX`S~dL@NlX_P?^0vH?$TBFAm4u1v_TU$JXE;{^dxptA!o6ZPwa`@}B zfX-QRUMCWbN^3vG?ueyDpTr6_%+&m69*2B|7=nuVfQZyUApp zGh1?&PZy;R zOReonL7OL_JRWz~c#jEz{89SN`B4-{i^(p4fiiiw2`b+NVda6pTFewOhtUP7$qv5BK$@R)GDntVZg@{T2iEoJPJ~EE{N=|V z=%?JAPGUrbtTx;GpCxDf0$%)-Y#$v}jNKcqLwn4obe3km*6t-+p^@q=7`M0`qatMH zBp>dEJge+S(b!CPzc?`b-Fd_pOn?31E4CtytYA3FG{zMG#PaqMm<;)=C8uW%H;U)Y zMvI%ag#u5vMr!4Sgj}uvQYj?_fcq-#Bg_i?jmvhY8)WGmX6ub5zrL2&!r;LI;3fd5 zCXudUsA8(vL?cLi;Si4tXTr(2i!pk@zJ?sgLVH5USnb1W}%|hV)tt(GloW1 z|FTD(vld)}`omDGb#M^#cz+~@XD(9x%DC^VK(*zx&BX$53dkFl+i71|XU{jFaft#< zWI0!gS!FT)TXuy5+U!aR0x;s0E%DTozs!_uhUl5Ocq$iLFJPyF@n|zXtbKUSY(}B* z{lj-!wJHO`I67U}4Ma2>O-=N30OOa|Fl=QV8~h9|@FXm%DJ|t+`+tCk(XE&xm5Ee$ z7V5C|JHO3iI{w)BL%d4G_1Vg?rz|mUJO_eKlh=2_)6MR0A|ZjA8hNP*C^&i356rU< zQ%5U#8sAa3&HUD`PBunEh?)Vo75ep!BGGvmhf#IY0rip{kpmGa+R zgW3)Hko!BciAofcfq#TzOpyDzRsc1Z$05vzxOcwYGw>le-+T2|HjAdTX{2#^p{xTZgXYRDacn=_wOf4Z}#W8JDdOz9)HEs9dRy|&V_h&ver?( z$Ia+C;}A;9K_*GSAQ-YffWBtjaS`f9j(j&A#Q|f4{V=TS-PSCnE;M_M@%%G9GM0XC zHpF(RT|}usLwaBVQtwJtpjv2>Cqbqs96_dyu`X%y7=satjxAIn?zQoQR{We7t+1Yo zbb+IFT&lWsyC~cQJ^E7kWsdJjp)A}eHJS6Mg z59o`E-hYiRS9M3E%Vk;_waq<5Q-75iTJRk1C?i%W(h3M6U=T1kB&I=$qRMok9*aOP z-5A5qAk7+ReK4GNWBoWL9snPWjEO^LI_z^FDaTWy(&9pTFz+0U?s2r3R+hal3os=3>K3? z!GHb)rbin6e7Gf@*4kqMZlf-5GJ}$c&DWW z{*6|0`3y3F-{yHU0Y6T>Nv4ytG5WnLV{$X#Ae|ovp4Kaep!k z00Bm21E|P*((urWae}*u?s?K!vWo`=Hy9C&V7R^wg3GF_13hjfn@<$8#g}x;^frD; zd3fe{>e2ivx-3$!KvEONhtR23Tl#c&obZ1W{xa4Pb!gd9qNC~6cTe}}w(#uO1L{$u zPcO^LW49`U=raGRb&?Y1M_P<|C4XW5;)g!V-!)K!!yDkgYNMVi@#D8Od0Yjvzg@sT zTIt3*(veC$buZoFaoXi<pC^(WDkj@A79N zA&?TkSJ`hbPq!>pSsEd_t{cqo`7-k}qQ|HdUT=Iy`P$o&+K()_v}!Pf%tri^*5Omt zp2#Wn-0c(WXrf_+A?$nHi-&FS=8P?>>CKy4WAHB}ak~RS9N$z@-G3fqB)GIn!!}Jm z>}0%d{!KUMg}%4R9N^`Z?g+kMoq7+#2r}NT&-y~1tKFf5&#sQw1JJ(`=k9SkEst%D zn%hE>CyO&&`&153Z@X*7Yb{SMNa%MPU;nWQijOw&4F`iLv{amEH|=H`JqJVn13Uc90)ibN|E5zQU-OLm99|H-KjE+HDe*90?jI`pr2^#RGQV6 z+fzl;_BN+eOt)nwRWl&(d$>oBWieUO!7hn^y19T+Wj>+QEqF7u&+A^b^WI>0Q+`|F zX9!+L+z-t%y%B>-vk6?uc)IRu&_ssLeEoK@A@N}@c{kooO=1T$gySb|q8=X=ZfPfs;6z!yP_r!2>a8-ggHeB)*&LbnzinZ#3 zef@&;d{1~*htg$-*8hS&?ZQ5k&h7q*1W*dZC<2@4O3G$_c~4dL-PoLSNLMd`jb2}8 z{r!+wS12JRrGLRTn_1oflCuEVYTbQ)ri#gZP^(|JbQo)+!TDfm*$(OWM{dwe|7l1( zec?PnkFsh#-|&o+;hye}kOJ&XIn$u}U@DW~;^@cF`T4=DSexFiI4Jv0nwW$AYqR}^ z7-wn%lL0@{*vs!_AK+aRMg-9y_UCi&A7f|Ck_+>9bbm!`SiHYFLS2rQmjchRsW|h) z*PYhKBzEVj$05uAjN?^tz)`0R0mgO-Xt}!=2au6wMH*asr62F{fQ>9!Y$o^8KMFcNx%O!BZNh90yBqF%#82+F5RRqQyZKFmVa@K9vjQO2jH;^ zy=L%!__wU(0K3;8)G`G*^12=) zj2Lub9@=XsFFmllaXZ~CxSOtcaIs&EK93Ywcoivdr9!7^R(5=lzfG%D{LN(HV7dWo zkIO;0Z^BB+t2pI-*+Z)UkLR`0-oaGeGr-RtAAcP#o6f8>6z!0zrf@lG1kBsoJ9i|M ztyET_1Ow>f0YnmI&u%@FO_n6}oMXZn?^PKXwZ$~XM~~_c3M52hTn#6LXgNU>NE_J1 z)B|olw?$L`+YyEH^U}&nCHQH!0#((crIYmm!zalV=0BO~7H(1TnAfWd--eU%BDvp0 zgMa3+QMh9m^#$?hMM2YjJ5<&mSuQ+tsU@QIu73LnO^drfNJa$ za1bPH{wH#%-}`7CZ~)e1p!xDFi|Q{mI3+wX@&Vh~JL{O>ZzX=C=dJ35ga#+j=LolMiTbg_IEr0n5 z_wY9tLM_dn=sPgk;%QpiS<;0n+pr=2V;@Hv6N!f7gPtqXs&;)pF&+O_y`LoUkuK-X z%nHA$h!-2@qt67{3bp6KL=*Bq^5A@4xBf|~47T^uY_@^T`3r>AA%ChwQvggPG#JeW zm8lnIgjGx&c~`cUE0r4fn4_@a4u2zNQ;P0WE%HxJCLXLy3GAPVue2Bp<0|0SZ_oHP*L-TrK})Y^vGQvk4y2j?^01Xin-FN73Vh>JAZ}8IxSup z>WivmFt_IQZf8U!?wpyj2Wi`FzGD}cM}{6Z=h7itVB@^|h_jt2PFsT>P28L$sim-I zidFgzeLef0e!R{5!RVJk7JvRFDT@=&^3Sj!zaY$|{=|yXvNHLXNv!7C?LFwkOgKL@ zSi2{zW=FuS{5_Vg5DCE(@w{Xog=25iF=U51=Vt%m=?dqP;0N!s8MYoV*=qIj42|&u zjfWx%s}KOM6G=UI9^+2U%oMaebcluL$qBp+CJ;Mb#kbiWN6uIHE`Qj8bf(NUS*+dd zBj7iZ<<8-V(X_wl(bs|CIy{`INU#g3kPLW;a_WJPhHQ_sDN&|9a>|fXB4%mJ4%`J! zCMF#Apg-6+^|5wuKdxK|ItqdpNqD_PDx?dx80`vsOm?t>CzOT+eiBVPAlJ8fGo5vL4Pjye+NB=N*LMgip;)5Mz;T{!TBn>z&N3(8_r)`q%jqJWhs79jAmed(5A@=hja3pBC>3U6 zn)W9=^)9{ac^lu`;K#59mb9xK8iw@|S;ms|)cjpGjWd9JJWpU1RJCh@(}33%sSaE-VW~EeZbE z_)R$ZN_B}PVpi5~Xytd%SWrc8f3B|9;RtShFwOY4XRY%=8qt(YJbkM9Mxknn(yeQv z!~wUfo137)Mt`4At@qYiU;NCsa_2~TZH>K?EWU@{J4>Cee)TcKScCT(XWJLFwzJeuCd`%#_5hRbxH);Z?Pe?`~yP`P6{+Mw8}BTYw_bI@-av1 ze(Av!5I*dAiDkLbFA8$V*6BxrxlyDQH2imqH^Z`f$fwxU86O%O8y`c0J?%~T3OT5G zY6)vBfqz~J@+X3ShA@X9^#IXn4+|v7fpVtKu!>(Y!I*<0s05#q8;IGh7QWT5xPw@4 z)H3+JNVsoR6S`|2E{~`tiZyc=;-2gZ2%DYH*IIWCb4)D$iC8eo0$BcE>)8>6D9ZcI z01Sb-4|2&6M#X#gS@;VMqR_@haFKe|?{1Xl3x7`%^d(YW)}iT&jm7&3?QxxEt@kP1 z&I{emw!62HW`fbw5;m8MzL9yf!rPx;gH!y)P1XO@xqr@nOpr@}c^ahum>HNJ^t(v1 zRW^~yD>Q;kw}F|>iFp(NhFqH&l<;|ud{ed{cV))bc}!2I1Mq*bH@490_^cc=yiHTw z`F|{_%6w_TUn06~rVIZ!5{hnCZeM&!hD61>cv`OlX*#Pbsu6o5^_MJ2y%l$MUxEZ_ zjFmb8|L;mdmf-?v?#GC1I>`IHq6GB_>#tlwDU9i+*kW>b4is&?t@lCS77P5!0VYe~ z@{)2q1GI7q0PFw00U^uo`v<-!^xDm#Vt)~2hMlFEe8+}eq4_^cWrMpgh_8FR&u`xw z4L51T(()bO%>p)#A*ssjOSy5c-pHq`8Ti22$Ix%lJGzn4{2-#zlK&w>Efr9;HS?Xt zeEdgH5EgkR_&`TIg_G%(bmFJp@q(4k5h}Gh55j6INVtaMcE04z!bJ)1dK`he*MHEu z6J(0~kJHuyFg&tq@EX+X_RCN(_YYniMUNVMNclj7lj%8DRj;5W>HjZ*i{4>;b?sBlsSUEd%77#xgfQ zZ@YIa(iuUn8!M5@Rppkvyg%Q-X@9#+{VJS1$Qo07ybQ338D1S-Q{Ia(=1L{jc`VG< z!V?gCqsGZU0rx0XANcF2i-n4fKg#hNO$UCD1oUzP)fAb-uC9rNxN z=zbT+jG6zQ+@5zor?8%@HJivr3C4XB%3?ZLaKda{&Yl8}>KC+v)Y`KA#@dvedg0pI z4wYNcYlaKW1UFyA@n%6qQ3Ux-e7qm-c|R*e9hCknxRlE?vu*T#SU?WU&7}d@U7<-| zu5|K5cbSiq(JSvgjjFLF?|=I%J^NweHCv0x{)q#Dt|(|$1ChWlvwC(8zXIT(5ZZTLaI9}u2E z34Mu=zg^VjffOGiwdj4IqeU5bh(3kK3D@3az`wBYZ5+Mke%4~UNPo!qa>d=v`B4;k zN-CXZ%?tNpo+&`R)&~+FLv@9tX}s>mNIQ>7YJ2)z+o3c3RsFV}5yMCT%%T&rV()O= zqV!d6>BrLhap}tRCs6uvftVknAmz6?iO@3nxa#Zf;As{p8cl(4ygm?8VLBwx-pqKX ztH=M~m8Y2-PMM`X`hV&(J{{3Na9zwW{ix~Sqc@IZ{iq=1Wy78W05-0(Z7Sztty+(z zlnAxEH;Os@>-~xHJXl%8&l z9#_A+XOIBX_i66!m#2_sLzO407Ui_FezFMUZmO$j;hAgmP3b8S%1U%hRAr~-7PyJagA@16uZMo zsU)4JWua&Bo7hZR#R_y(au^|r0~~H^*lhs0zsr+r_Q>Xl3ivcxtn)=cD6pMgjDGDA zIla@ZM*wIJ^CbzN9d4cdhJxR2V81tq)4?ivRuu2 zOW`}C+kfhlM}R6BcdvG+(*A({+hj$Oh~20(X(|16e!xsk4Z{}*O{nT@)L8_NLtRdj zdYOQxrVn&>vhgw8_^Yv@XW_3BbQ|9$_ls}RI}^1w`{?i9d7^(&D1==h>OQ5 zc1PSPbsRuiO4{e9rl#_yFWY!scdD&simqE2t$%t~7t@w=Q-Xp3($W~pYiDXFRQRp!d}n>aVn0{R(7 zXdmHI2Q;XS63PHBx7nV4_C`UoZFF?>9rxYw+S~rrjZgvx9fSsNLKYL@YRhRab4FcS za(}>8X|UeZOH<_ zds~~Y-<64->@>!ofqVtvwI9y1EtHOnQw|rZGB_M8Xk$e77Ma?Acr4M7x~STj_=q;x zjCxj_YX3gWg(6l17rM=jA_MKFX0PZ&Z~d!38eePZL`R) zXhAj$U8flQNPk7NRG`odHWOmCh3!64)}ULgP)qsMOgokwSa`<%z}Oro`OK4V@-O@aezmk)6uO@ZfMSHH`5?M7l?%)^ewuBS0nLpa9u6VT4e{7!J>oNu| zWWKJ^l7me2T`f$WtZ7Ey-;C4%?mk2*Ux89OiS@Ny28^YZmGb+0sPNtA#>aw~#)~vw zsEt5R3}F+`Kn|O7MQUYmqklQlifBoJw$EOSuK_CdH&#kURGEBVxYp zYJ}RD%ukJfxsmQYT%rrIoUg|_SsxHO+a9MX6PGk*dmd6&5L?Ozos z2#B0QAOt3LJZPjFis-aA6JR-AE`Z+}>uZd;PQ2qkP<<)sLZx1^IN#u`Z!fPC03Gtr zq;4g=&P3=lhti!-_%8Rib*KW*e2AJXXRN5<=xXTyNg(j=A04C@$mrB6NF z?CB2R9WsCpVjc&Vn|~dJ5HQ@*iWRL4Y;VKVJQ1He3CpHw2$fLtLA7Y$r;6TD!sNCoqsl ziDq*l*(O*+{6vS%?PO^=Q;8xHg0Fn>3cS$hn?}rHA_Zthk1Qcy#*t7vI+Q_R#MMK; zW9(f24qa}9+J8e~@tEGB(Qo(P)@yV*LU%n{=@#pYqZ_w0C43hzA`RU3%L|d+jzR0S(jT#vw~;W|r^N%Msq&uPdbkD`Ce7VvQ8akg>3^ z=uhJ%287BlC`c@WO%x!30A4yhiDHzCR{5b3&>Q=VmvP_54 z)S5ls_r}o`;Io$t-Q)@iH_9$?sbDV?N5_qpEl<{VorW~bK= z-ZjH!v40g7ot%$^xgz9tU7mgm_=07R8oF9{td)@$lGRXeyM6g6IMZg#A|K zT_`aJrbINg0DwF0Qb$^BmIOlySwv&wgA{;4hy-DhD)H)HX<`(W@IWOyux$~Z+tDn~ zy{-QG$K+|iCgR;Kw!yR6(87Q7efi}VL#CUSmVXun%WYFrQxwSCt3QzidAv{+Yj;eK z{O10yA!&;a{t|FYLV&o9vH5Akq6HSVW=q5X_Jv8j$b*K4#(VboY)92-AZfh2Y%E`~ zaQck7qZv@tsZxD-qgO5cm%269q^p_o@$}jrDHZk`GSsqZB&poaDp)WdzP|Pa-nW2R z|9?pHY~=Yqv@7{fHjAGS$?luTXRd_Zjs3~!B!TPB6mT(^BaTQVL~ zCUdF{uURpIj90GAKm>4II)A)!1sYYfucQ((f&A4;CF$AR>q1f<4Zuj4~|6zaq8i4;H ze|TcSqvyRh!zPq&yfnHolx_$RufRs*zPKg8@CV+d&qrR~0*j-9meK1pQ~A-m8a0kX z0G3b<1lWH7*kYoDJ)2{-nqf8S{eOy5-t6b^91ThC9KK)(BjY8)F%csp>p}N&r5LLL z>(3_Ej^jdc} zH^Jp;WDa!=jb%VvU5-~#0OwmQ$oQ*HA>v(*MT*g)ju*FB1liA5miJ$1@>7LY=jX(b8{3sGWwa48E(h_SAl)W6HuH(1e0-W%%o;F62V*gU zQMVrA%2sozE9NvZ|~Ig zz5q`^u)q6Gw0Fa?(LlrNey&up$70muqg7|u*4vA!T%aVs!`@SmYS-+)8%51@y0(Xn zGC&o=4Omb0pTiLV?EQSF;#m`M13klUu|?eXMh|+W*JpLlL!sVF3c-lIvU7iMD1j-f zh1c!s_&ch_i;(zUnpz1H`Myu}%st%h=avAl;i%0m*FwPOv{{4!@BUJCbP z00QCJi9J@?Hc`7$342)_N49eQYO(t@OAUBA(KH^{P^|pDhilC<#i!7D`Fj_b7X%~QBlI$aa|EaL!ZOCo~$gk`2`Z5N9A7ZLdQXcA4#Hc zt)wLtRA(M)qvs8NliS%R^vxjvg926`b$qAHZWK3C{Q~c;iZB3un9Rpsk6Kb|ia_ab zKH_sBkOIWZDecb;=>ZO^CykdIfZ2W)lf|}-Ae;wk>is)l7D`=?40eB~D`;>eOLw5F zj%Wd_k>h4MMGu`y$8)*6W+NdXu~}+IWb@GkJfU0@+1m(Cxb6t@Zg9(8V1?;W0V0@6 zrf*sSdgBbiBD$x2OUEublq!?^Di^Bct6!C8?6393x3zhIgrm5!T#lA)?Ccc$u60|y z!p87-d7!TN_*m@waUOrGIuOdc;UWUd^9eAJOCwogYV{6pj@SAKf>jO2pQ^Xc&Jwd( zObExlQ)hHNUj00WR}EFh-WvM20V>q`Rl}dc{MU;uKIns7+}u>MX*}j_qbD0f_KXm3 z+V%Ul*e^fezSC_cA!fJqDXM6Nia!0LViVm{u@=n|9(w&y=9+)p39M$Te*%+JX7meZ zYI-_grb?~s3MJ*eJreNp0U;r1)WXmH`VpOWMIV;a4#o6IsL1mZHeWELIbZHg04ko~ z-b|J4awiJrdQejJm5NrWo&Y*2m(tJChtsW??ajw*af`RNi>qrQxEnft0~_;L-V)PD zXNmjgajhj!v>Jb$FaWbCdV6_PW;XI-u;?C7Dy<9pHMk+rl z7HQQ*3qr{V?h}^Bq69)V2IxBHXgC0OiB1%$Gg(eC3RUSgd$diJ88X?gONEky$bjLq zkgOmfdWk$j+@9FC1UgM_0f2l90b1AE)6oGhpLP6mL$`lytqwZvL$C;PMS=vsghIYj z!g>JBGSB=Cn64$jr4%UR?C=2ggVTARgkHC~zs=)Wo$C7UQ1uFvrK^(-mxuc%qW*ZV zU+r~b;UrA)^yTEx85DkC+NoNl4WNHv=$^smcva#nou&$%-COtq0JsUQ^~Nf1#(W&j z$&}9$ePDm+r$hDk;g5PDVso~w%$5MwO6~8Dui*!%e^^Bw6gLG_=NX{lc_ZZpP<@g3 zkLm;vp{4zO>pU*Nf71f%>{(h`%D4(3ILepU06Ojb{1l#?&*M0lhpSB(vqc7Wge-v-t~X0uMe%pdj3;xZmunR%^Pe3IC7Ae zFu+uv0+1L4fAJWK-5Sjm+SMrf49z%v0e1^xBqf8oF(aX`*WLBfOqE68&KH=#C6q6^Gk@!M3Rqsykg zZ(iiD)w9QaSH+^BOJ(B1Mx5&xNvK@XCF?!=AdmRyb=GJ?64^rs!(w7k&z2z-r`%IeH z8#&`vnKat>UK^{U~5(xe}0i*({<=;4>!#p%e7ap zp-j#Pv)}Ec?oX8K@>+7a>{dEnrtW`B*@|`gAs84L<(%KqI3cXODDsy_+<4*l4X$St z|Gf6WOncLFDZ;3?<=^@RGKWOM~RgCh#v#+CU52(R{O#$Oj@Ab z5Pn0^s6ZSP!=hE+vr3=3h{KtBFK}3vcblio1UR$m#;D=7>%$YfVNbX(O@_Yx_0wu_ z=10~hr$b*5WU)j+@Idqlh1C}h3G?f~$y@uQTNIrBWWqYN{?qzqno@tJSc@Bp z!gj>rSp8Mgr5BX= zMQ)GhiSW+l1qX~!Pv$6m2(!0BW0Cd!iO22ujIl%J7R)fZVl?s?K))rgQQt{YL1TC0 zWVwpRRiXPi6ERP*UWKeXwDYy}j%!6%v3zE`XHPFBKC4^T8;yTOfb~U7v-iRX;=mtobpc=Q zFS4Be;v*{Th-Xk&C=v!Z6>1?zI?GtB$9ww=pIW#xZgE}ZWoKS%LD=FyKToAMFQ>mKV@JS#^ug@JXf4Gpol?@w&ki{rP& zUj##&B2tVdruGe-HLIHj ziZHVJ>zL_3x=WT8?|(Qe3i2hKEHJqDSDc&9p~CKqAe?^(%z;q};Q3nHI`U6UWiu{$ z-LDU9e(#Ep!Kzp2iCH{gYfRL$9yyv}-oq#S=wLx5Y4t?nxF7AxlSzzbP%qanjVSnU zKh^gq{tI-?rCx;o?|)<(`@OOEpNjO69^4lkO}+h_J-mq@&jz`cJda^g<51qP;2Fg| z;NIV*sb_zXD>@v!Vbrho4YNaxJ%KFN|4wJ;?X55JFBYppx?sf1>8L=n27m~^B^>wU zG0aAPvY61Xi01g)S9!TOf#HSHe}_*`A&XpFHG_ViO_&tlOIXJ4{~D2zKl{~%W^)86 zxiPaFxH2Q7Ww&LiyQcm2>ocSIy+6WX$?dim+2!g!XltS^aVjXA4L7lB@0Mma`w-4TSORkx6& zGIe|93u(JISgMZNSsr4%tx1`77K>xcSPqaG(w7n3HR@n`i}TNMxTm&#zkN(+Pcr1) z){uXan=B1EtGM6E{qi!$g3rW*pv*v{)(Od!j~SVpg0Yp*ZdE?;rtdXJ=<|@p2UQR> z>%xA;9i5B3Rg`Tw$Gwt-U@04QqdOGF&dyHuZu4DTdIK!i=nbuTB3aJjw9tWZ$Rp(2 zYyk^FwISDagU+lD-0J`a{SP+DM2Bb$Nv4Ps!^0eT7+z%=ci zv)pGOpqkK(u+C$6*{@;W(Xe-DK9KLvD>c5s?>eUQDSqi1692Ec)@gs54iiy@olWN= zUId6B%Bx$z4a*9$M2}Ml)ZH+Kkyv0Oxt(`$ov=EtesT4_#WtQFW40F~?zU?^g=c@n z?*27oitt_2qwB}r<0kj<{lKb>pu>YtJk4=d|B{it*BzFCh1~~&0xS7d;ek(dDdT-K z`E~COy&#`^?bxv>-KS`i=4i=_ccs43HQRmt6 zYTaP`R{+66OZMuw^)z;~i#H8A;5C0c2C_E$u9~Z$M|6@0ZSLS9sF|H%PsZfuIJV_3 zq>*LehgEe-y`!Y0=^U68b$b8#)X1;nk#CE~+biayLaeT{G<*DRTV+U>z)y(r9;3Z| zqfgIvQYQf7O7~~NPxRWas?&)!j>>}ec%0M8eU8~V3!B73Z$q?>Xev|o0Asx_!3Tb*#m#>M9@pDkGkMHgN>o2dD7WpMb^!NqXy`R`RQr*ZK$bS zB;di$;Hn78^=t+WyzCj$E5>$jv1n%V)2w?(#$L-yO;-ldyjt^vupc+;saR?yzv&{b z>Pc?;Yz@r%?C*3=l$f3 zv2U_)#BwBppo3b3LAcBWwcDuIx?bhe#3BJbXOjS?ocR_b*N1iX9g>DTzIuI6KgOcB zo%B*Vs(c?0&5rd5YSw>YQH^B-Z^+vb=T?y_Rv83uZZaJcVVm*JdExE+*(~x3}jlq*I z-r8*1?a{RX?y>8EoXX(VK@o@zg0|@7z-?koPeh<*YGk%#U8-aFs5(h!2Y<`tIf9 zqGrz*=DFq!8;{zh%ITi(?+9bBWyRb7nHZHr1`{{Ad#d z--UjWU|C;+^!-lnr!U+Ph#c&IzJR#BYyR7+eEGa(VykW7)&!|jsU|E&Ad~Q6vDmmo zDs|>OeWQPAj1tD}?$0{W87G0~=9Bv^+@>%3QEsh7C5~13G9kkAY-=Ugff}8q`)|HH zJR?iVxTOE;?ZW@gW+AL$$qwC)cqPR})~3)mgK78e*Mggy^+aJ*3&(4Pn1}P*S|qZz zYtjCgYZzQ3fj?ph@XukczkcRaR-$8hnN+=8PeOl_H}e}yFH`tib|TIUuiPr*4qf5( zqcH)t-}Dw2jeWrtJr+0jj~E7;%&4l;;kaTq@3A{Flzz9m?6otL zeDZ(T1gG9_AW-w!yM}2quyN}Xr2RIj*d-|K;!tiy4Rfn>E3S@a*Ilp)wDkNQF-Aq2 zFiQ3|oucQNI>_z4x(D!wHYJ=?N0Q?fFzDMeATqhR{D&Bd`U`OD)*gzCc-6hH`Oy)n z7df<3xs)9c7}yT!HUdTq=85@lZsoqnH5z}ZrYQ=VkGz3FkB&;UCNw9B)mRiIURswW z+Zd5w?c~FVO0&Gfdj~Mx236=-bK9b%$%ZaAX;1lTk~+drk4|T;7w?+6rK^}*lGa=V zahz$a`*b(PT7kB?^>qs4d#R%<k7*>q@GC&Q;B?{W4I|qJ|pLu z>ihy+nI+>!=#+OF4M|^pPHjsextCCE`^v1kVlgDl9o_Z(0IH3inSf>TPAh-QK0ZwB z$3nY*s+w%%mg*)*F+$Y#+E_X0X9?!(CaM5O}qK5`JD8` z!rJo@T78w(-<_VleH6p=)Ke+cpONSv-E!)etm3yA|5<9QxLLDmqeCOn{vySKN&waD z&j2Rrvq#==y;m#L9cXyt%i4d3l*KO39$05^OhT@;P?Yq(rvUA4#^Mu-#MEjwDyeR4 zo|M-70Hw%Z^66~U#|Qyqh6WA5bF0~9i%x&YuSK)s_>1OMo8=qoFcBW~}NpQIjQ7f zyLVRU?ads<=`l>03f<2@if;aN$eIWyRIlcBhvI5#FcwX*360itrM4=(`;}+%bnBOA zoB@La>)nH9Y+8U#*n0ILf1a3=QC;)e=CzkeY162TVTH7Zx`e*j!QQM=D}I+G03`0qVA1 z39!2$PsDbmQ?_VUv^rmH(8hDoq^K~8zIh^k{Te6qx>kB42ymznlidPtc&A723IJ)sQlvbV%REVns` zOz<_uTC&cmEM}(m{+{@urcq_n4BOuT-xl8?REF%Y6#Rk!y(W$z)vYn<{K0h=d~zA4y|OPI2bFk(_~J<0J0>P|G2d{Dsgjh{w2 zud5ma@z&$PK}!e_IxXnJp{;MF-_1@emzi4PZFlz^)$Q-|UwcL4AP0*G((zFf=KL?_ z8zq0bcD&qdUp3u7B+B6*x>aLlWcFkL+(^7}5*>@RC%N?ak@j$uYu5KIXGV+_f^8ktx0EJ-?zH*x? z=)CsqjTFC|OJ|bv?i%^6s91#~DN|dmR3%B0gyMk*-9~2Kw>iK{A|B?PhHcR9kdy|8 zQU80v6d9FXFLSxVqfg@Ay3{naxR8|KNRAWhkF|w6R$3KkOe3BGZd{@0+7fQKY?FVE z4rDT->2nFIi||hy7193a#4?am;jX=QPRjIJ+z;25#j0Uv>E1k)nv>E2aqNGYEZt6a zUA-+`2B$Tu4WzdOxM=QQuj|Vc3seNWE_r83r<$5#9$BpmNG~=-RO*g9G;7h;75CUV z1od#{y&q$WM`DZud&9Z{<-8$Uuf#5^D=)|P$}!>`Gw_jJCA!u)r&WQvZ31y1m89xN zD*WzdCU?cEjj5V0zgUdjlaGI)F-Nw)?ko9+I2280)Dnul?d?CZ83*4zYiA!xGXMYB z|Nn}24G#Nt&=ZnBQ$6;-l{|&)9}uw4?x;uoErdHyCZ}e9K6zB`5iy{et}!MZA2x2X zSpnn`(_5+VW~8)zVYXGet8NqnXNZ=cTiqhr5yPB<>pYCSqWL-=5Y6~Kt8y|n z=UG2`llQ|+Amo<2_%45CW)mT;-6Mg9E{~X=^^9Tx($S2A2V#$8+tI~tk@<#i!IR)Z z6GEnb1^9TxQciTAY+Ys_OBIREM0*qv!_LMS263>{GX7X&TC?`+j+EP%Sul)aRpr-e zjn$^KP_WkJI<41=&1>a0pHXv^pmtuv9h4T=GuR3#V*U>$O5J~N9chU&(rXcbCW?`_ zifCL0!`?CC*}?X0-Up#_YCV9QbVV0C*|sspfE-ON>5V1_9r>XG|C+_9yO_u))QK7W z0*YIXWv?<@*^^HB4EmstgM;R3OM|$9VYrM4UA@g=j7nmU<>ps8?pPH3Udrrg64u9M zwSw+vfxw+z>g9jua*Tm&cSV*~=2o==dM4}c=_idgwAEpq91vOf{(=HTYfXS;V!p6k zgRJmqG1z_OeFvMQUio+GC6bB5gZiv=tQJWNlkY@K#W<>%(8zR zo@|-bqTg|5U!Mf39(qJqyNL+PCz{7T`p5%TvyY|;@+`ieB5=3$(fONTx?#`%K@n=YTD` zor(`0DKmp+O8U1FhP$*^p$B9?sSNXcNL7zI%mD9ZEO$xawXhdSy5FsxIX;S`;iWj_ zat}_4nk4p*mlB>Jukpc`K8%)XAkxv#blN#@)YgAFxMlu4Yl)dpmL$>CGalg7N7r{w z0U`R+7u3(-55m}xt3+(Mmluw)MW8K=gK@xWm<3-mAZeo_ho^+Tif$oLFr)o3@0fMzW%{^-xP>+ zbP5&@aph>1+zcHtY^pa{JXxGoYJyhJk_ruy?-r7x9`V^}=WqkL_q{2J$07qZ<49)H zt}N6Dp;`ph>uK;uL(i2)q?fi@{e{UMcu2s3f?x9`Z-6?CiQPNtA~#;_*3rvS_@sZM zcUZT8>ND0>3hLm}y#+&)eNzTx=;KaA@hxe;D?Owv+8sstC4#HFrf>9+>AzE<5lb99 zDlO`BrgcTT3kiGE@iD@%VRlBs5-qT!Pet2W}I2Ef2c6|^IZl~q?xUXlTR z0xIdO4vC3)y<2rA)<+?2_EMP%TV}MH6o70;MgEzR8~ZBNh0B)L-S6Z2DbK=uxS7gP3xtgKUh9(`*R~=NoW0hq8*#rQ=|lTe^%k*9Zd!xuSpktT-$o zN8xIbOh74>&2>mw*g^9SFmi`n2FTC&r8>mv223H*Xo1t%21Clo3ly=K*!>X@{6-~_ z+MqaAoL_=QqL1fx-l)qqn|}w{qmDAJWj2{)Ic>_7iJFCMy5>g;`zQw~gkmk7D8Co& zgOMOhDUj+>CM0%u686jHs!M+n2|R?33zmku{C+0ccA;)g8}OkEsP}u_e{d*(<8fD^ z##2FqyG9cH#P}#Q)T}ZT0i=TBq*wBdqi7}V*KZLdc&Wm`ydTARP`PZ}7Nbo-)D*o# zw%)7mnhK*=3}zH7S3>)k9u0KdGfU zn}C*a3P_|?KRpc9KEzLEl0H%5TdSZbrK-^yC$NC!=ia18k~CgPzRh%A?b_#JkjGrM z!uOcJJCJ4l9JP1p#Rg*0>~(F}~WZhSm?v2rPdC=+>$c6pyX(7f`bW z-_A!(@%Ml0>x^JK`8&D~T=+*zT;W5`lbzFRr z25(agQ~`K@L3;MPcbHJoGXmq+|HfiCeX(sZrM2?7TdOHEx3#&2AF!!Om}F0^?<9Gj z3qBy6Q37-{>->L*d1ZLQtu#eRW1}KSCJq#!20>7t1-CPH>S5i6=M;Jd;qmL`k}b79 z)pH)BCjmhff?C4*51b+9k`j!E>;W-{b(w8gq-MuRycUB>RoW~39h<3-VkoM5z+1%W z$Ufd$U6i~N+mWo%NKrC!?a|_lxIGT|P0lp+3O<}S&%A$P(-*MtH0w~{^=BN?Iz7Ow zcAS&y$d01bNDRFE2OJtgG8QfCH3TG3xMO#dsf|qY`cm1~+S86OEbCgj_mJ7??1awW zGLKC|fI?%ChT-n+PJqhl5+~1$XZrA~`tmi1e%IYjK^g+%+e=((h{-N!Hk9lj1H*f< z$npa7TNZ!Dc}WjRjvTricmD~#$(Pae|ZcpC}(CE_Dne37cdBM&!a|iQU(sqdL9nh3Zua&t3wo5*9qaY z4~bf#+GCU@Kw+00>779-UCs8)LA5cR z`=@_1mbrf22xGgQQo&#){@(S@16Jv0=!HS`nC+D3&l*e?$)P-5I7X>_FA&Bq_Ht_k zq7Cp@zb7CjJ$9*l9*js*`#d`G)?wmiml>eQDzoQwXYzfVl>3f}_pUU=7n)83z)yHHQ8QD46!@Nj zT4}q-KPkL+*KO#Cc9&C8vmAzjE~`8-Ce=u9Ty8O%p^+;BcS2A|5y>%g*%uE1+>ZtS9jxsk-P zD|w~u+es_^W?5^ib!Nw5jy=yMvzHBsiPnZM1GNXL>p6XGex}9o-fA&TcZq-Gi7Gqu z(&$=Vk-OnN4+Wy>-gyJ z^pB!(IWxqR*JZCQx;bvC)Xc0{7ND98!Pi~MWh1U|upj6IKaZ+ri@ zl&@hxOKnnXwO~*wevahR91(wS&tNQL6oB1%B6ViHP>t&?fUFFYhJX6gWo=bMizC@9 zCVU?QUXW`lPve*Lr@*T(QGkg|{YnlHTlG>DAdJDv(aWB&nvLYGBU8#`i-4PoS5iXX zZ1O1dwB^%2^`!TvBiZtW!9J-Cl92U-+A6V@IX1hzP#=v!K!{R-bkTq87#DcLXDb%(8Gn^H3%<#My61__+~@;v=Yl`m(ApIYN!lH) z0-SNkiR%PYxo;S@AP;6rvHr(kgpjFlVI9!iBt_hL@0a_Vd-DN4la2K#wy!Uz-R}L@8ZEI#hi1v&?u-qOk#cl)U z(l0hHb|%$qQ-FVT(G}cY{bOzRoj0mbthR+krjXixmd+TI3hJSq|0%jB@xVHE7E&i2 z(>e$0=Cl8`%(_e@&WqH(=vz3o%Vm9=MsIxiDyz9x=!0c+94JTjXC2~LZPdzT>!2nH$bBllN_}$;I&m4F457w{6cMK!bEC02a2zSgql1);dWl6OVa96xYYgo|&Zr8KK%v&5cQWrIc8g#Jrhhrf^H zanh^r%Kt^)`Mu%|xdp!@?qjQnlv7z8Z|?wr)cR+g-L|CG11o2E_Ambk{Er5kZZ-7# zp_!?;fr5Y3Ze=%znDKklH7GPWkdH=!k;+Qidaipq@A31kFM7tdX;i1*X}vb*wIP2z z7F5K%m)rVH-h52*v;dBX!P5Sr_}yB(LaC8$9iEzLr@PCL2ll{2Za>ljO$eJg@$bx@{KYCUozdC2K2&LYWb zMm7>-W_!Y5$sVqv&Zo2e*i34-=YRM6QcY?@r>#P2gSG$Ne`*y54i-Dh?v)7UpNJ7G zNh5zP(fu1)y*BS}-%CcnPA2n8s}+c$s51(J;6#YGf?Rf-lIptf103ga-~gS?LxA8I z953)eFXd6T<@pcZHYL(pvx>g`GOjf8gjt?V>9-X%hOMG&)cOd4e(xC z%(R7W8Nt)M8>}FxFej!_PPY;1g$QOjF0<`@bcd1Nb?)kCsQCG)_ZARG%sL#^lUw0R`7O+|^!^90{qG?Cz3Eu>6 zvzE5XU6&Z^sh9Ge!tL1b1)nTZ^V5HQ93SJlcl{mm$BTtW{tdRE@(rRA!TDe4v=Z5V zYlArC)66D$%_X<#QA_y1%7}e#@TDFameIqVhxAS$18Gj-4a1Fysuw5*>uDFh96{jo zL)9^|>m$kXE~)Tbm^v~VH~^|n_HIjaYfsa*R4hEjLp`1N5ykZpUB0M2=9qt{2)!+i zJvO4alLwmL3lzjFQu=|+#Am*9Y%b%~(i;(E@KPC{#Fp*&UGQ7+$zVnSsjVDD_`~I@ zv+eRUc=*SBYG`log#ikqC&Q^+!W5{m2QJhhmU}k^dzVEe*FP-3^Vtu54YS=$jQ;jO z;V0ZRWgVr{Ql7nhw-vrhik^Se1gm}mPjB|H9Q1yV5A^0&M!V2lwfzzQW>BBO=&%yo z&GPJkEb$T=YL-BkB2Q-OQw%TU)mNi*Z{=zktGq4e7Aa{7_Jmi4)spGh>XMNKHS(hR zIwMdA{R+Ky@rn<)<1I@5EqJ3*!xX9$;ka)xysmDyqW+}aADL`Z_CzJpEWUu2O= z7D5eWdy@ThIZe4$c;ABr9k0)?7a&?59!K1i3=^Oq+%yb|*H?#^@WFE!4$cQ3`JJ@B z)`*#8q))AaV0-JhEgYF((P$q*%k#%MKx5T_IZ>(^rJ%Z`&x8<1vWdTI7 zAVuw0$nMy3Kz@1q9n*i0bgRIsuIgwKSz*aE(JGXeCxWOwzlJ3~{!~@Tbg`SFJ5<jZc@( zu8*|mPaI;n>ZgBBQy0ZaeRNtu-YB6dv)IF?gN2Unf~aUgj_w!zmW`XmZo1KQsQm5; z6RaFF-DVyp*k@^>cyG|tAGMlyRWf%C%;{D?bk){ZD)6E-j1;fnD#lP;0eqPc&#Et0 z#~U&-x}R9H#Bk=Zne#?j*R})RpL%S zhUT8e8Ha!Wml>b;FKmH$BHHNB7!3A#8Q5!MTMngV6ln*97}*#Q<&+~C2h|?F+YtpI|W8W zPb=cDJgs-vM+C{LD?Z8uI*SftuiOtNo3pM5O8IFg;7m}tYp@kwoi@&auZssz#tJm4 zH8g)kADIt$r74iGvob}=;?R}2wy z`<^8yp2gDL%&;v_C1p{T!)<*E&3BQHv$=o1wut;33mo>B3nI9Ug4Y+wq&AZeo&&qs zS>(`3`QkVC^CawrA*6iZFVr2|u|{oNIhodcR7a@}S%*)Nh{y(;0 zCH0z=;>FQrMimsBgf=w&?Vxx4k+F4ZUy~kdeK>&vL&g04^~{^`HZ6q6stWCoXgiQA z5kL&wK*l(cU@3QA?}0elE9+H8p3r|%9E;V81g_$ThIgb=H|Ve!6qhhKuAdFRmRQbtEMT=P`W)Kw8K=SJ0uAJA3YBn5Zqhrk9A~nO z(v^}LL4q0|3N01owe~y$Z2DNT`1T==F*;qj&15xm3S*)k`ouXce_5$7LWJa{4QWVZ z_ND$stSZWm34$0L^&1V%D0hGNhnU;@3d+4thp((le}C6|$B+=so<_MfkACrkh>Tc| zoslb%lLK6bzNW5Y?Nt4%K|J!VZt}XwlsR|&S$_0fnkNYDg{Awbo2Ea?X@zd-&ebw% zK^yVoy=SN|O2wO?t25(F6hC9V?Uy|XnxE37VTT}x3T#UP94)sBgeQNmey38CP7p|< zTFh>x3nInfa5atkM#?*JVDECwe9z=BWO7%+o&)9VbS31v93&1$wbzkko%qQCd-on} z&Jkwi+@4azNGzy@I(0Os8M3K%avb=HHxJTOsD#W> zU$I#)mVKV5+8;|iDOp#J`-5oj=w9E3*R@FZmgk=4{=q&0SYOR*Q-g;V{Zp%pNAmUK zki&#hV(^~jJHE7|xNE+{O>&C6bi{Uu|0)Ycf9LZVM=lgDb4`Eq)~fYFfX9z7)3KiX zTl#Y(s5gdqDbf*92NPNGJ5+8zTW*7RnO|Vq3N9i2a}i$ac$s#+JnrY33ruu$e=}wm z9ouOaIA0*X%Jz=)!IBdk0rj=zp_@ z41HnY(Nl8LxSb>4Yek;;i?a9Meq+z{ZQ|LBG3rHR9xV{ME_8vN`_3r;W;VQXU-|&q zSKjZH#NIQvS!>L~UAZpPLMuEvML%g|A=h-)vxbn4F7|&hZ|VpSM(9reS!F)O4elQc z^hI|135C)Q~c0Gk9_aKW@^H11}YW z6ljC^)vkYva*b`23Leo(wll_dJXqj4n2^`PVb_UYS3Rl)lY| z8zFyHXzFuCx78($7{H%$=?^2K#JBFw@7i^^F+fgHqxD}Irl%+fgG<3m4KQq6{QB>2 z0d(}qUpix8sXZ@YaKPJO71fo__F%&yKLq zWUan<)VhkDlPEG+4>^ZR-v$7g{5c%gdftCN;hYJD>#>^hG-%XwCaHCsY=LFm0mt!< zIsVOXGZ`%bpvfD9o>^SQxoJIpeax3HmTZByT><+;`n)O)N2P9+fJ?jU72$}B-~pgD zw-Y8mv6@hMY4Yjd2Gic%p;GO)EKq+7J)mO72j8LhxfNrc%|yXXvIgje|9|R~_ho-?X_rpvkZ3 zdx4+Q>DW(L89yFcM9kG^NC%^qee{KBEq6x4Sq2)6epkJ1aJ^ymtTO31u?c-2TZWr& z-R!UZS-w-sOr5M<>U-9YI@>+Po=JbkX+U$u8cV1X_;w2+bZ02o00Zq^Nvm9B--&l2 zFvBjp@}k@~5Qksz2S_iM3MIs)7J`4AB_oE#A%9%bkP63{rWX;=y$8PXw2wbtE(pZe ziXR}{SChfgSC4!qC&E>jrB^V1x>t7j7`CG{SL>R4uk=#8aK2YaqXtjCBHVwjPej~} zM`J9OS<-KoZ_bZud6QZ^xj^YH;j;TS3Ot#_fzE{(3}I6ZAg!feo1uqQd~*fP_NL>E0B_1*gWExMbN!NB#Z;87Av5iB5ebdlglBjT zKT4Xv*P0UM%}qGv$0FuGlUEQnDl;%=G3^`uMjGke5s4kI4Y_beYj=Oitld9$8Oa5f zlH3gsLbV|$ARqszxmbvg+9G9h_S@-jc8u8l zOosARMRZpt>EfYOdAFT_t4B`% ziH5m*CV{}sCoI2mWJwmivUlLHWMPhfhY0Zb}A>IyCF%IhHBWZNi1uP%NpLKtt1FQboUi-4Wf04)y z+DCMU*5NP{Le@4D2q)D}RM|L+`rVfE-5rkd1AM+;a24Gjp=Y+4lFu9qej9O?VK93h z)3jm*Pi9G)&)uzp2T+Ycl0jq<1Di+FyoL9}C&+I1I@1v7gW$o+x5X);#>eAZ=Y0_4 zvIC!zpw8>*o6LW~Va?VFfw?HEvSTgRsWcUwdg$h()_Zy6c zVdgw9gg=iH=(6R9O(o*|H7A6SyCZ!3CAuRLr||ynZc=>M({PfDBTuuCq+YQqqpcKn zWYR#e^GDIoF%)wghw6jG(EWd&5!P96hPAj6)Uf76F zY0SIoy&0h!(%t?SjZf5CT(bHqQT*GwbtdNE3QvC*%k63xVd(j6_**!Z`!={GHr^i| z-=6KmD6Y+7VxPl^sB7ryC%l$o%FGo$2<~9q3CGVe9!F5P$bDyLs~ z9-9_YxdMHLz-lVIYnBTYDH%Ocy=W?AB}lO7V}!nqcQ9OXARaNI@5gXZTH;t$5$5!; z`YF<`Udv}L0^}`Mc}j_qu1l*zN<&T@)Vwa}>`teBg!0r9002ioxWD6#Lnfm6-dLT4 zq4;)xOa3rLu>*E2W<9M5DmL2NsxYJ=!D*`nyp69MCYd7&t0Pmz{-jRJlTLbXA_?jn zla40ABnB6-FKFgijw2H?^`Uc84d*!eIi_1DPcWFZskQ6)>Lkf2LIZceEWsdTzCJi< zW?uUPRA^otosv(^qs^pN788?@ea&;He&f^kX8M%lQ!)YE&%$q(P*0>)&2 zuvQCq^v4IK_77s8d1B^czAcZG(JUQ|%`szEdwwXN;ZqerUgsn_p&`R*{ zqJK5&dvu8t5n|UfHdo_A0x7Bpu(+Oo8umqYPXD~WWrA1UvL)on6l%r*^7h!EYdxPc z!>@4p)~MmlahDgww9b1EsrN5=3R;nl43TDoTJ2T%h1@qADmBOVt;D$1ZmExY?6DgPDh>b*3`^^C-3u-v>_6<8##$NtL3% zphW-Z@?nsk>P4Y{%aM;AbXQL{ht^Fw=!r4(iM;kYe5Q8XgE?k@{?m_QMZ!#{R1bx1 z#JRb4)N@lQJE!yqBf@lx8pqGEJ_RR+x8jehSBm?J5tZJz(S|_Z6O|l zl0pst;>x7=>A<@6R6$9#?W}x%OSz@2=XcU)!B{eWnx5^woB6}*9Qo>jIG=i)e~jdd z6EolRy?jis$fswE6~vr>r`lK@P14HE`jrKX(v@o7eGsezP=AE5qqomG865=6xat*} z>wC@+c#!@0=5HG6YW7m~U^D*--#-vGh4ND$8iZRA9l2%3y$^v%$j6JMq#v>Lvkv#h z07kY-^_$VH4AGpia&tSmG?Aj(~6bac`Q+isx^2WdWmUbv2f!7#PwM0opA znq*_ zu@U`d;^3jUOHgNi7q{z*zSN@quccc8nf=G8n0}C*1{pY3cGyB1G)VLq*ozI=mI^gv zm4a?L4x^u>jS$ou6DOPqgqY@@oruov+VH{4?G5&uD=Qs;qb2OpCC~&Ja2+%>)H5J{ z$B6_~*K@2eeJzi)(8QQHAC*P11?x4SB*fj`a6mL}z2-4pjfed`0nW`xu8LbvISQ2f z?{Opu7sL-V%Mw^uQ$v~6L zyJtpD8Mv5OqtPkn;Z3-Zh|BlUuh%|>;y97yvagDNl55H&a^pG2#=*I?|K!t?7mePy zoIhht&ewDN9s?V?=gUvVbbTQ~udH^|={7=+-zF5QYssK}qAqY7-q53$fIr->C$AO4 zNFts2$B*&PTb!a0T0D3YVvS+et@J77tg^FcqFNukM)IUno9GRvl&#nZySLa&G&Sc1lJP`p7M5#H+Wvo3ePvjb-`BMQlF}gEE#2MS(p{o-NOy~LNJ@7|cQ?}A z9YgofL-P**=V!d1=DKcXIJNg)Ywfeoef*fot2ZCj?M*)%9$+*3sFQ`qI)iNGH)W;E82w+56JK(llozJtA?{SvjQvBw5_B! zhClx*X6g2y@)7$KZU5n2KzC68CLog52T?xy39Sm$4+GXlQqrg?OOMLEL`gsz#TuBV@F+bDEYW(m1m%z2_SjozjO-g z?vgw5c2$gUa$xsY8_}d|P*)xvNUci;G>jBF7S!S+vOHA0LX9uzg)}YnrZ+ zC4a3;^{j6xP;u02skh{-+arDEzAZP0SO;O!JTb=|Mzp#0))}!$PF9d+q zw)#KfuZw2Zy#u}}c6|SrhG;;5MAJ84x1RT^NSL^8`on$Oi8dfkSAx)y zodkfg&hW30mAyfbaNI4FlMwCI;|?VZHB^^?t7JOD%4ED*~8*;7WZ*xe0~> zGw?5hH*lWIEL8o}5>7vffZj-{&EIwz^}9%&Wa7^3g7)27c%S+a6{A0)P=P)dYxawJ zqYIp0L@)i#9fzd&a$TZ>F1}Cv9_vjZlq#uYj$;{-6IaN_P8gDI_hnk5-P7(3?>3qR zDgQ1}*VO4;zqGP2SqkQVuiaP|G7kyM8frkOcWsMZd=04Gz#INZh)N9(V>tb_AUh4L zi)31LJNFDSiM6-rq0SV-%*8%_;?me!_tA>Rmr%6z9lJ`=dYMM0K(se~y_$jPZlV^5I>K+5# zvL}>^`pLJo7$U*D`KG5TSfjCSfQ0*%j#R+fr7j*ZRqpZW1w?8RFVwfjS4ak@eNhgx zn|$V=W*$?q*2&v((8YW0YR%Sa8}EI>P39kH=N#{Cz5VQW;SAXDI1s|V)k)TVZ2G!} zWxL$nf*4fczGg0e18)@s{rMtCB~96IfOw~Qw}$9sVne#4XyP*E6!65V)>dBWex&?2 z^C%?-C9vEchc=P>nfkBxID)MxV|rGkJ43rEDxz{%JyTWiAlwcur!D%`%4pCooCdc9 z7UA#)8X$iH^JB$%M?!-U!EnUKV&B;PlO}9mZ}wJzT!uw_oiQe_bu?-~6hLpPqxgG*^dfO;(*&FmfG5y+5kSs5Bv>IQ9}* z6Zc}*ZAA}%z6*F3gJaZqxKl&FS@Q^<@UiZ#K25})tTPeop^p4F@3z_!wF@X8o^5%i z#yB=-25cA4-Qm-v&exA9UZ_s4GOyqQkSGWV1#BVxMY@<;RP=_i=W)SYRdk4G_s8*t z*SkT`mDgl^Tj0MT2LBEiP;^Q2*Vil{=nGDSZK!xDALbi;y;HlXV;)yGO@GX0k&mt* z^=2%2RR(4E6IjuyIo_g#GSst#kdu{)FACQ7bkD=(w2A89lg^4Be=K`#QgazGr1_(w zm7bhl(cX4AJC%*m31K@n!QGRe5tscH$v5`ls8LME0iG$%T(JTzn2HqAYs(w*aL17S zAKSXHV&a+mAXb2M$Y)7!oXTpG{_vTGdnTxAnA*+-OBW`$Tbm;uH=Lx&rA$Ww&bNmj zmZ+Q3?oA|}L2$B6f43<+{jn=rD>iort@DbJmyH2SMHjIeHh`do!!Lf>>-<$b*&f~Y zg(~keny%ZP>6Y9e`aErY(OZ)jLstso(7ly2cKS~~l`~|VH%I)W1sNI+SxBY5ze{7` zE9b^TTF2x*$YF7gbit{I6~EZ(n9aeunu+|LI~u=)d@35me^V&i3^DI&XL#&aJ(yKq zP7U)9%A!CpqebU7Fq6i>|JhT~gP>8)CGJeyDzH6CWkB2kUO@6TETk*v?zgmh%arY4 zir2ZMy1nX?ib^M2JH!|+`egdRGPQ3-eNZwu}fvCQp2{fbeo&+i1)&!>+93`=M#ss=8D8vb!(t<5NdkP}D@V-JAG_ zI>f8iv+-LgFFU_RV3WE@o$%YhO%IOV(Y3qvVoFTXnYZ5Oaqp;=e^R?0XSbHJr;n%F zsQmJje^W27i8{E?0Ho!V@SJ53oVMeAMNK=zouOGz7q2ulPYbBIsrechsNoXRzGu6QRPJNl*Orp^JR zYQK=*V^91w*G!k7gtts@f#y zQDHHUGwsfYxaNG7@++sHcdy~S+7);sF5B*X*w>|bt}AO_>IV`{F3g4fa}I~LomC%8 z_}vf~^;0Vz92BM-}<8$k=eB8sT{Xp%);ne+TTK@6)sd{fVQ#Tcw z=?Q3knWpG>jPB7*8IgB~uljOiw`?gYf0?2s;_f4r`zoUZc05ix{zG-UHMx*5EZht;Vg{WGSQ@@^Ww2EGi+ z`UX-k`;*%1QFT3tVd0T!Q(8D_eb>JPPvM}SymaaHPyKuLOafI^GOYH`1hs3{^!I&|f8>M5Re@M~ zDFi!g=ovg4wHIAf2su*V(JFIwEKY_B5)dz7_Q{gWIj0637dg{oU-wK3tc~affThMn zqmB8pJ4*Nft@CDah-{^|6>@hG(Ss)Gr68AmW7Z!&cp3@Td(V-t@*005)|MP`qr_e{ zWKeADlRWCa5u?5l0);1me=29Wdt8(>L;mGy#6d%LBKrI9&Mi3H2h>EohqIQQ3!RDv z?@hVaM60vQa60X|@_Pp?Q!vMjv>z09Q|GT8WWQfa(p? zni!!DPF+Z@EJ3uK2>PBIWzy5CYm~@w?vF27>5%&n#6mciZ)ae{Ot1Te!B4u=XUtr1Ive%@i_xjwt(!Wrqbyd#(9}9`?pGWZ({lA*Zj0t> zc*prCp<*|7<+$BUBGf+Fzg0DU`2L7JxTp1zpNlF#^F9|D2G9k9y zp{Y4Lc$foagj18rO#iJrqILQwaN>o)-;@^!z%^EW{T1XR20Cokt;dLrq$PaXm^}3%# z_0zOlPIA7t$QY`NCXeElm2TFW*L2ZmRq!rODt3@~sY}dl%&-)ydH;&um znXS?EX^Z&eVXs2E_LXJTsl$O_wUS|SDPL`c1BVAPe|;fs_4eJZeN(35l+2yCNXVF- z%-11lzgFEeyT}-%3lR%wL#Hh&mE^1fiNi zCW9Eke}2IInvM~EnjyMJN;~L~JzqS)R{F%`sLA1`yoHp|K7) zQh$)GmnEJQf8TFrSt4y+7HPEbG=z*IbNg!0jc39u!U;&bGr@iOH17_#sx_IzBtAK| z;2=)X@|dOcdPd#>7sxY+*Rg4BFsrx!ba4V{f6~K|7z1ltunbwvlc?N`q6%0NG^bPE zm|Q`5tL=`jV`lUTS$zK`JGrPNNY@v;ERW@9^PnYt;t)CXARzHoAS#N&d0u$5id8La z$IlpAhuz9FX2Yo2nG+>x-}V2JRYY(2tBSrh9&9WLHc~gG5_FWr+ggA2TPY}`?yKb$ ze{Zg4FV=*8ISW_#CS|-xTgi&cm9X2ST)h3A+UhmRS??rYz@lmtH50eJRAR-s>H-vwi!WO~ zDF;0tavC@_i=W5TJSKb&>@RJU;YbuSe~b?X`DLJK6d~xS%|H=j&0zEoO0M~veH5U4 zZMWwmcV}<=M^&c2lAJt$jwxn0l6SN3<;-yzvDg_axjg3`6UYp0sm_HQ>U*fWCH2;{ z!%aG(6Mo|ROsCad#nP^Pz9g-~pbVjj^<_hIWHG_HyHTeTyZx-i-Hx00sl6;gf3i5+ zXBYO)Cf?z2Z0&0O$Fu0no3XKJ^;n6g!u&ThGPjuSjC}rywpj07Thay(Nlz`6s|?dY zzecd86`+f!X_&L6h1m^GfE#Ij7JeHuhtK_4w(c;QKGwDyPVgs?>P2CB)V7@!-%y)h zlh#WKP#k!~%DL2$|5BMelMYVbX;_tX2%RKi_94^8mRgynNmAVZUp~vJe`4pqd{*2^ zv$4BQ>#V1?{RRjunb4nBBa6JKI%$Jg&CfkH&r4y7tecZ5?CuT-!u49jTN^6$&51mx zN~)S{Zh}7BxN{U4YQ`D%EduKRebJM?mL7km8H<eSQ+0YCH^YZr~h5TaeU$3 zSw13&C|LqP-~LpU3dK>}szB;bVO1g(u&Dd>_E=K!`z$FYi`aLjYwvysU5`^JEtY@W z8IY-K`3)f!K^+po!0WLPYsFPqkqCo2zXrOt-ZmVcS*^&0v-`KwtiSQGWhzXFhzTEkLP|`{UU4&AezvGGTb35>Q;}btx0mI^ z$kHq~Sz0Opm)2HMq>O$>t+{{hbg1nUg4|cl+13srZ3i%|2L~S?xW~l4-zwoyHL@q} zsTYsg3nb@8sV95@!i*V+O2llMtEnZXbYJr2-{;CCO-d0;7W-UoIDzH8)LfOhIB$$arLf|8x!T89s34G6N|b?j+~`Qu1`>&@L8V%jx9MHO zTY$p5Qc-KCjr*iUcLEia%7Fu7!pbbYY%n*h1h`1|SO z9HpYtISd-#IlOg`kp|w}LVqnXSxuVy`K$fguF^5xdg1KNVxdXk#uA%!&6Iei?6RCH zGHs>Ao+SI~e1ZW*NZKLDU-haheIa_3N8T!>w`uiA*gE_mIURpbFMJbj2(fYn>FqZl zxX)aS+vp9C#MqsR=|3+*1Nl0}7_+RcKoW2(pG)pzVIMVfVnY9Bjz~#fjtQR=f5QHg zx+Ht;ye#GG{g6KV;HANAy!-jnm|4Vt0frKclMq`hk|OnMv&S#HriAdXJrU?1l%WEj|YZMcHL)S5Ub zmOmfa%$(ek^;53}lmJq9%@h5Ig3JGxUDGcb?ZE>v*>-=El&rcWZ+RSzXIgnX7OB9e z%5gH7oUE2SKd%h4ulKtqtkZ06ek0wMP`n2u_UPDcUqiC5mXZfn2MwOQ3H1Ep zb>A?oa`5+5p2)fi32~Na#$arM+wZ5rFt6=odLfgA(KAZ+D}Bu5w>@{EDw+q9)~buB zpl3(JSjm6Gralf5@*((Gk9R!)hURQPn07hqw%lVIXn?vvi07N|-0SVhKAP<7P_=Zm zDhoq6r83*o?OYS|cx%Po!;fDoYJcT&^h6I0AX%I9-7~Dg@E*B^zx(O^ZAS=-I^0xKtX@0a^#a_mg0y%0IKQONB>pX^Ug8+ zK?-6Mo|zN;mF~NmfK;B}~ z=V@C6>lT?@uEUe@e${&!%aX?J=v2X})clTM1=%qBwX4>pDyVd4cA0Ko1a@g zG0)EVX;xDHr+d4!Ndd=ySsMyLM<##!J*-Tr=eKp{%wTT7m0SJoxix6s>3~IBV~Tz- z>3BGksmTLIaH4W-KSpVdlx!v77|ndw#{%hboJr6775`iAf9qdJsfc5ELmplaoc^i5 zl!M^l;BbWu;q;y}jSh1>(V8^buEaAm1>&J~8hD;2A8^p|ne^G(nDRRQ+(D^+OPHJ87Zd6m}5I+}g-nwdku&WE=r?Rx}1OVab#tlH3rvfI#505ocY4DIb z>fKM(8cGfwpB(Yp#U5=g%`|_X(ga}|t9T}XN-__!_CojrW9I@s)&kjgh#pV-kCb0n z3}t1FpMY<*c>cdF8gk<281JYrd6s`fOPX(37y^Wd)5Ny47Xy*QLmh_ET75pJL^*$P z&B;Pi{;}tJZeu0;a|adn4ajara_S>DQ5TT&xgwf&5 zqx#j)ue&uv8x-8fZ|O0)pN^%!Nzwt}PF=qJ@3ltri;MmgE+XjyL3;S;Ey+OU{dnlu zbnn0UhR_rc5sv&u+?sWKOvtyYKZapEC@p_vap6bD>i2V5ZLDwZ#eT+)o_?fkP9r3bMwuGloDAo07DalI9t zTD1^GK@YKmR%S5yz}oS~qurdPwUd**<)s?>`ffES;`4h9hoRu!b|8f0T3;_$WZmT%CHuEz|HGhp>MUV>r2IIK!ZH3tUV7 z3KmuQn@p+iq-Q6aDrTD0?Z}b(Es=wP{DOh|63LtYe7EYG64_ePkO< zCk8&B0Z;eZIcRsiXXSu9z9(zh??bmn%RYHpO=)H|xFAjAT~eKYatURd-O~MXG%3F| zc3ArEN6ZD^XPbY&mVZtPw)}xZw?V5vQ$y|d7Kf#SDuc7mpdm5y(c2=8AHgT0EiCf= zSvK(CJ`g<@oow90FH365Sjt%YWyZ1!+_1!@xV zd7PmcJlDmg&cC8sIiAagH@`f5_iXR;5$SOTW;Dk;r?--vYUbY;>~XzBIy*iXoIlwT zG1*Lya)Eyzbs&>$0t01iP28}!!7Kr@eLFt4Cp0{TwO+=5z3U(8?OF z_I}#m-A`QsXcft*>G0!Q)8uU_c7am9?X)Xx2akV|t>n);*6lYC#nmOr&M(Kq@nsj>t`$Ii|B{=2#BUSwK@POlD`8S$UG zNlYb1-d-+PKt4*-M}ip6yC}!gtDb`wwR$y*`;cFk%yurxP9JOpvjUkRMCHg@*fA>9^kA5eUR%#)-s(AXU~9J=;r%- zd%+56yv8^FBR9vz5*hs^Iq4?wNQqQatA~jLQ6$!uh9nflrSl%yO}(gh)os?LY`{jt z!-+6gG2HvJO5xIC+K4AB`F53&p>c>V#k9lTf@1O|lV4r*X7}PcT)abFCNW;YEMI?q zPe%szi_XtR*3bVl8+B01`EnrxQzqGJ)e`e^0~%?ogAKpxTBoN_3%9oAnyyFRD+}r^ zPP=pCM0)Yy?pTFNdIpAJkF^Yd4OgHIa0aq>0PXNtXYdOA(`X$Q_@Q6d0QnRru zd~F&v7Y@UQVe40$;RkQcv=AS79IlX_?ty}?G5C=b6csa8${9NtjXqku5$7w*t;HB; zQ0)w>4MC2x=G5oUQ!#6cu6ukOMD6~u4o(OqN?oxC|Lj*ueT5RUr$QCLz=?nP%L+1; z^JK93E@8HwZRo+YfT|8av3OPy>vBRUxQy&pMwCOfzizpBeJ8?m<258+L%VCEiLq;( z0Hpb`A`ruBa2TBSAg;@b%YDH(KKhC9h5 zuB}+ud-1h>0kj#DrbU2eAdn$kNTn*R9ql#uS zd2Ywk*{%d@^eE)L2#w)5VLnw=`|sZd5h^M-8yM~(xW3g5sY`3lv2A~nw!R_qYH_>R z>G`QrFm5$Zm$&^i0dt82*}oryszt!MzNSZICwMc!dx_DU-%NQW+^MT&tig>``)~qP z#2q)7f*!eVT^aUH$J2jy6=vu>H&?7xdf{oo4&SLQttj>O4Lmtek3{;Gdtm( zLr?MQQUHx-iJDDk5;jdUM3&=e2o1)exx`g`6+B*DZE*__R6l>}jAMtXFq(RYL5JP? zb)i6B*5q#`5xMgV_#P=r^-}$IBviEd8guj}p9MHK7OiZ_TYT!1lW15;8c{R|U{J?* zOJrszkW*?S`Zt;>(`Xw@qV=>_C9yap6e)*~ABp^(y>=_{|DRZLMQn-sHg{ zbCQv<&m!7$^)<$225XaTjZev;bM?i6wK?AS+Npoe(+4a9yROzbjT|6dWCRuHJh^1- zIZvX^Eeb}AFC$UX9>XH%(mt<>!`5lwYA6b}oMHhxfJOMVA4*6eP*>bI%z3;R^cgh?*N5Bqmd=1#ao z0fXqOO(`iUU1TmN%e`tasW57iANF;XKDhaJbtyO5CAZOg%{LI;u{judt!U5R6qY9* z8UZZByYJjH_}u*2%qI&EXL@?xfV-yQwoQL)h3a~Jgo8vR5PmpUzS$Ls@Wt6#{i569 z7g4(6yT`_Bot%-J1jfQO?Bm7tyGw_$UAj9*(Qv?$>ZH?x0! zx!hB#v0Wo1;C22Q5g{MFO&;)j4qrY5(OxUGEpQ5xE2sa`mzSMDA8-a6)6t-7(e*jSk%jOLz3Ao zvo*@~`(r3%=h>;*|G!0qfcmwh3fq4XQ}WL)_BSsaH3^Jv2OCtevkmjiSB~ zMaql&Uw4F1ZeGJyI6V(1v353(xtdBPv3&l}=IM5{SbGRl!ypg)PZNeX;KAthN-Dp3 z{d+X)c&LU=;izO1)ZzkDXGg28cqts#B2N#u?UfQVl)vZUfeR{zT-yINBy@jAUmpx2 z9*1heomRC;55%H%Z}X@a)SrI`?hOuXu*kD%CWAHn@0QiWJGz6AC&~>3xp;UsW=nOr zoR6?yZW}&YsMa|v{A~8$_hv(dYRo3$a&)h^nXDJtN(|cd>D7_(INnAP3D(UT4K@62 zhd7m#82<4K5A)>Tb;%}KKRka7W6*0NHtr2~y*;OxH`;u-z3A~X6HAfWFaK{6w4h`X z86rw`>OZcvc{MofMrLn;eE_jczty5Hoc!O}LP-XXM38MFuIYEXep11&9NyO3tl+-f z)mNff8K(?x3a6sFI_#_2Lj%e4`4D3;nmFOMH~z+C3^7XE%lc>V5+#4Jn)WU?I@oRY zB7%ipw(HqOp>iJl^~uV;121LiKSnS^Mr`Y+F4)5&^k-C7C=HJLXy6D3p`oFXtB|J6 zjf~G}gKuSJ)s-*&lN|-(`F`#Bbj|1aO=v7S_*cPvu>H0|H$M(P4a5LIYd#u$_q7%? zA_WR*(X6HlFPB0S33z|P5~aoI|1(xK5@L9-;$#J!@IQmUhJCq3^5uHVpUQa{j87ve zoXn1UA1W?{Q2+Feh4keH!5XUtv_wV&Xhs`GojSQ=RXlbJjE9E@QZjNDlfQNWO9myD zMI_N7Q~RgYT9TJ*q2d?~2xp2lGzL9wZEeA{2Ig$Duf8s8(Di@MtlLWXKGV7!F9xnO zyU@xI!oa{d?v1}DBqUtZEx^El`p5c2g)r`L(d_?u77Kf{+=wn7_D=j_XGE#qMz2EL zdv`Pq)1Ykt0*&UcpAXg#gJX}~@gh4DyJD6|;51Tw01Prb&tG#OhV^8H$R2+-*~`uR z<4~=zOq>_r5b=MaIc@bXj}}-vsw&iq)q@H7o34;_CI0x&R~CpP9h3PAqXw^gj`wOs zx%dMY&xfIyw5Q;~ez1`*LjT)iOG)q`W(B%g1pdr36s+gnrS#d8$w)Hh@cmHa)AGv7 zM5ZvLSO{qpB8e}{aPr;hBCFWIjTt~~aS}g_Ml^q>_k?1~(p;45w-#YMT{s8GBp82Dg+FuNAJTCT0y4Xt=yLJ$24KEbDNuOfWf%qm zv=L%mL=Y`u8|}|e2tEX{gm4i49mv8$-jLp~!$y;^&*k7ihvNY{=}Dm1`Es@){&Hco zUX!CzjkABzWTEQ&zjLl0;7fg3YV!Uw@$Xp{>PL0Gzb;i?I&XpTTwtGJ^8TY=u%HTJjByVv&BlUFAcc=OXjG$h?2<1oK z9~XaI-zEJ5T;&Iwo{HU;pyv%rfnrAQWS;DI8kPKvC1!Iylt0616Y(XOm@8C*YzedJ z{)Twqvot!2#P5FT8x=LCaZ4fc_nV~1;L$|!Ina|~{@60Kjh`mWs^jU>Z zvS6fGL*t40}?@-v;ApbHK9Du$Uhl+g^wQ7|Fwl$)auktiQjI6pCT`<6^Dl zX8(6G%~}i07b@hqKbfVNApnLa1*w0cn3jJq$?t{fK_%1e7yXGr;T@~39!gc8q}j~I zU(FP$K|1WX09Og@HhwXWzTf=^{qtZOnwmad9n5ffT+<17KLq1*+h;1}NE|H71krV) z{aHo&m*uZfVT8o`Z~6OStrn`pwKl4|m%u*VH8q89y;LV2j?GMZUXcs@+rob-0c=H} zfXeA9giku3+lOis`8aANh!jrS-XEO_0>9q{@caa72Nr6D{xb)z!r+((_)M8g^yd)@ zY(+P3U7K-nvv2@(mg!h}gZtHcFbw(^D&;^cX~+DvCE_aLXkuZAtJE(SJMuM_b4Xz8 zR%vrG8BGm&ajJLNpHlw<9qE&#vJrp1^a5uy_%} zPNlMmQ2?l576B_52>AF)Utj-)NrD$4{{eU!DY*JbMfx{9phCW8283c?khlH^fEA=r zgnX`sc5I9WZNF~LHUaDFzIx5hMvr$_^Q|8B8y&TpAJ9q({Q%uTWG2Hu3?gE^sNNFt z-4wfqy!8A~1RT^$ECqaK&G3H-2wrZIXChDp2Y?TiAI0NnHISC-ZL!iHGuUY+%l;v; z;8+V$L0y5zcjtgX%I${I+Sxh!*_q&&1bdHDOwsR*L&Zd+twzpJYZlAf-;^u$w7Mn?k<_3)A zVfD6a$wysaim8+-^jiGZge5@iAKUst24;#(L7KS#1b_;bHLwDi$QBm`hyE8Ri0@$R zdk{I^+JYh?BElE+#;4UN6Pqp3dcz|O9#hMF_gqNj{K7)#!omWV_9)o)ItIbq?iFpy z_!pK`u-W7ob$@%g82W#uW`bU)&i7g4+glt6Z;1(6FjEA8gCQ=v#X7i$cjRz?>0Sr2 z2-xfeVa?1X{#$We;_QRoQY2WU;u!_(13WqCRnu>5}r_NrJi2+Hd%X5hgj ztrr|oUufvnaFyv8q4<>XXw0)|l;|SX@3|?#d2JVJIZ{n){2wKO#e&_7zs(Tvg5N{G zNOw7!M+IAtXeb5^#0I!UO%Y#AIxv6k0h0waj-6>!!Y$RG%3AL!&0jo(;>APal z(E;0!*X4vdnV@cXj`pH)sHKNrKAA0h7`g8Pi?F#jOc0E$aC_QyRtsWDM84l%tXJ~I zdVM0hr(k0# z!u=%Oq> ztz_US(;^sxp_F$lz1%@31YrI7LJ^nSeGI}9a{e-huOtv6jp*OjWoG^x=XWeWaI7P7 z*cmp7zm^@@dY=WJC=4zy6&uRi}ZSHCkZEeJ-J0p1b{O+pU+s3j&z0p9AUXAA6+T}%{ z-@AYEv7C4SSr|wA;#eHZyGc8AY~LGmwQt>KGNMUElrp}24PJ*(+x$H<7h z7Sx3e)lsojEvR(&coA&PMd!y zVzbs^)7$)Pk-6|Zm66NMTZ~uuimXroyFiBrIfBiLAiqmH)mv8^pGd1_4TnB`Q@`Ci zf?PVL&~l-tN1R{hOUwUJSODDX%5h}HY7#G0Fy|G5J$<)&d$D8GJ1y;c0>Ze(kLlp> z#%OT^5lV0NzAD~)8}+fn$MO8OF`R#J_$^@Ujz=s@F4e|!tG9*=$-%8Oys<){J&z^T zBsFo9tun6H&0l5?q*y$4gRPpLIVqY$)M-vu$R})MM6<#rzm^~{Y&??zLse3)gK!wt zXM5MlVP{1ijEQJxd^%KiyQ!xu~?p zNFN!+mvh%Ry}>2e=dhB@cX@w7m8a~ed)X9mp<$D$U2Cy7Ri9x$Te$t*_?M(_TBkxX z8(bI`y}$fptd*$p`&8Kck24QnK zc^c5>XKUzvPCqRAlv`%Y&L&g^!!OKsNvx+-SJu!AYRhMgPEt2-b4Gs%Kn5x8g-ULf z(CemRPXw-a!$bvR23@T|QR6LI4vxSH$fE`|@=KKUH`Ris!yU_7tf%{rI$I7hk#T4J z4AJk#vLznhl&^XJIs|110tLD*01nfGyC|o;rH@hPWQEmJJoCy^QyVrmI76BL7Q5l<;XsJB@FHZl#i%Fs0(Iz$Dc8N>ghcLB5JuyLp z*R-XEOQ6bZ4E>?`oEzR&FuD_JWbiSO$ZqihHTzd^;M$_IP@h5?ilDcrnnK(EC6E^W zmp~fxtziTkCnf59r7;Xojd`G)bWWC@Fy2!3CL-mE`e7UA}^%R7~{^F_titkvGM#OTY?xWk`;)kHU3ug`qd=mT3um z+FL2G&BYPCC!*GB!M5kg|MjCx9#ybxyg)2@0J+Dn&HaDk-D3em&ri$xO6xv_`NhR= zACHx1qC|X4Yf{*3-YP~FYw~@Lqdxb+I7O`?P(P~Q<3Mq~j?`@V1oyEw97kC4{Gyrv z)2R?$k|0cV^0ugc(3W7k=p>}@Iu+Ua&LhuQ)DZ*aIk!CSA=T2siLKK^2|nqH5uapL`z#> zsK+ohFJ%d=_@o*|wA4^z5)Uh<--JrGTiOf$TaVips1yJQxYoU}pmjUy=5^SzaS&-J z8h!Ev1?7rbXp>^Y<@Chj>E#7^v*IJ7L24BXd3S&LYws*}ox726qc0NGsE>pI3rYmf zFVR*ob1}}VKfRq={h^hzra1BL|JV!%1T>JnbCdz+fBFHI7b;&dEmTXTZ*wp@2FxaS zf8_1JetUHvHa{VNOsSBDwA%V{WCI9{`X~->tXgl9JzT#N^3-X3xSGoYU0YV1`t$zw z_HloGHm}iE+?RU_j{rwNxWC;ZSXXOuvoxxi`l21PUrIBQ`)+PDBR{o%_UA?M##+=@ zCeMrL=Nm63jxzmkI#am8EYB%QasIQRLM@sTm8GWUCAzKe0-!JJXN?A5@}0yG#9;ag z%OpK1E=GbWiLK<$7%y?QgwW3>cN#bemV~`G+URi4uuKL| zkZVgf9;2VOiP;}OH}@Vl`%_f-0(Q{eTYFc>OD{YKJh_@ObRzp^BCBTMdH%OcyYJ=1GrR3X?# z2i`yFHi97X^6|R`kIy@2I;%uCbrkiDZwGik%?ySKrTcLoO@~%3qbm0bkr{3TBqdT@ z&2-oZWK63(^}HW0GjMIoSriHrSU-25{9rIW%`fJ1JH+`Y7U8dx+P@xuZ=(kNWGUJ! z%I1DAdfDp|%KA`sI{zRg%6O+-7{I6XflYDN zwv3DqMFjHyDxTD%l#<$$pDd zb3LICXr<6Oa~&jRAjl{wfxRi+>#L;xg10@uaBC^Zelu8WSnD%3z zFR-M(*AjEkCq=NaowRIQ7y+9os8aII8~sE4NAWGmdK zIAZ0m_UCbDXycIL)N{08_}neD&l((NM1Fb(dH>w;!`f6PKmp%c@NYWE^swQ#$ zG1|1}GiNWada1o(EAvWcGhlZ-O9pQn z=)kyyYa6eGSt`E+cAhFMV1(d2c7w-z9SYr4Kyl5m_esa~={hH5nh0-OLFPeSb~&0( z|E*kU3gRfuM)rb%4cCFWcH@^mV1#zKS9I3c}UX3!%lBqJP9Iy?W;+@ib?`$F4Q^twy7a_jMTY{nTyrN zMj*jToI&NAi`ipk zH}~+2sK9A;yTqd(f;9+}c`}hZ0r?&GC*8h0m#^~y*fWi&-b8FDAM?s3DIWqQ!?7c; zNASMVeiq1KvwlLu=iR&(edSP9-|gp4+@7DOS1Kv6Pn82ugq2%Fhm^QJ(HDNa)W!aU4^0b(KN9KxrM%~MkdyJ(EPF5 zf-+ek7u?GV0`%A3Q>LWVj1ZvL>kD;@jAE+@3ffG6Y>365@pkeCT~+Oeb3XBG`5`y$ zUUNU|cdoM+D6z=Cm$Oku3EBK5Hl=lMcfDimH6di={7$cfnZ{&W8Cl2s@>LTgDVmc>TUb>$eZ z8rdGTJOrOhiaS-6ov6*iRU@x(=u(Z8CVfT>BJ_@t!&T!04CMLOZD6+M9spSrA&v>J2-ArA4A*+}fWhxK`I7O`;B3neB@Oc!M zJo6K^OVleznh9NC>6&jQL#UX_iHE(T_tzm`-sSbYVfq*yA{^qmFmheH;49t#z4LXt z%Lz@`Q7Q)EWEROz`BKPn&?xocah9Wg-3J@BzKg_iX2V6aBSAM|Ee8#nbYw_>ojK7O zGbOdA=05s7{8gU=h!`q`VA95FL$f}KU`$r%ch>U}-Mb9k?2;102F>VW2Cc6XiRN;8 zG!T$t6CWV!#(mE25C`iC!qXhy%H%X!xk!A4;*WiG~;%Ke~&d3^jNTe0#JP1sRBw%_aq!!2aR@=bP_}_Fqa;Hz{q7ceH?nu zT=DVH+lopSWY4xE?eiF*)$StXho7YCredA)W{w*0WGpxXk`dR7<_~C9D%zfM&}gaf zJ-t6YJABi0xZ0*!_n9amVm}Z!556!owZF)FsdI{L71=M&DfI>j$H|p{TiKZ)7zD*O zcu{NksNiU>irE~MCfauwKht9O4T78X41Kb&|Y$@Auvh?;qG>Y>c_*T5HZJER#lW zMjtc$Zu;L?y~SpE?{=VnhT3P4KXvUMKXwkvr_d4tN4IA;Y`YUpY~P@&K#yZ+Hb$F? zui!^Tq2+ur@wdy3m?RbR-BEdmV%cn1KR$5yD;Gmmr;a;8pzbQWQWhF2F+W0EPjsS4gw-0u{fa+!I0~cCA4Rl} z=SGOG8ZO~iG~Ey!DZ{04^?E0R41hTwz{m4`>!#Rz$_pP;78lkOlDq2fvb8hb1D8;5 zxyYwVrxW~2-1s?v+sAD`M91x+T>W`nRqDwd;x9Qg!m!Ndd7(N@%#Y>eZ2C?gP!%4; z6gf7VS$1oyc~4_J%z7cWFTMlNdmG~NK)v|qlds~7rQrMRmee36F6VOtd9x2^XKAP_ z)R+VMaN(m~nlyB8x9!;UA28x%NGB#xNHV(%IWAA+V9H8=YV_>iE^~ai;xKKK4L+Sg zB=dqCy1Re@(%`m!FqXUw@tQ%J-RQDq?0&`)X!{Hz*_`bAucNKnVirjV`IN*SHZR?w z7K*%LwTq;$zSV80EbVR5n~J*O_$YkHv4ZC?;-EL(m_$QZU>xMmL^6revJ7 zolz?I%-sopDIus8G(&JXGiVo-6t4)L-F$f&&+@q$IQRS>eG$!Bi|%$e7a-K<^riYs zUh^g7)oYJLQY_s7qVtUN`UbA~Rc~yKDP3=;jn#0RRlECB`Xik5+YD$ossTUwg0+}NAby=BB;%)aQUQF-xJ!~`&0oI{edw!KCZ#pW^m|!cXywsx}%e-I={ccV7J=94B!El*?yq`R`vV9#16|ddIJrWQU z(WH`Vc8-@HvMQ@eblE8Gu5^KiOn1I%#4&)>M|YM`dSD$%uRG4%gC(XgHT&;>K~xs_ zo9+gfPX|skyYyU*7zG10Q!FJ$KV{vntDv!j869LiY=oz>Y;HTT2aIqWT9@1&$9F*Z zv~Ii&x1Umz>UTmOKlCvCr%@s074Ax9NQdnnQQ5{L^IhJ$Ei;~_YoTasDm|q%OYKs| z&CvKF^9tA2d)oyMNQDjqNsT>!wL1OAFGtm@L1D#_<{j@l4Tau#f(|W>l#03J2y?x* zV`sSr4Dq+-Zs8#{D9Mzu30Wm5EIBF}c0bS>#S}#m-xN@)`g33P3&jKel8eq;mpDE~ z(|9Xr=C7T7bFVE-sW52BJd=z)nM)Mx5!7w6AicWa=8*?n)NOUEdA-Dc;Cx}$?W>se zBM}-H^`rT1G|Z^YC>36efZ4CS4w04#&uadr*iq!vhcK?$!ZgaFUzd7&bVU-+O%?l8 z&^Ky4lp16}<@1W`pZ(`+-g_D2sDo(fE}_v}mv~KG>WgkW{2XfB*&1U$ajC^!=iQgN zB5{?aP63YxdMp&Fr%t;gsc|jB@KDK$F+X@!E}6a6iUq4sGgI% zRD^8t!nVubav46y`(kD4y6xAOj~*X1ou`Y4Ts!LvL0>{Q|8vMPS1UHV15#6Gcd;gB zzqH$Iq%MPw@Ga3Xqt&%ITBQ|i5Exh_J+>v4&dC=3a2n0i%wMd3KBXX&WKd*`SMt+b z+%Kq`H?9k&G{v~Yz38#W@%)kKfXeJ)!UgAdaP^W&GP$={pS_gWlVyaz== z3CoJ++Z7gZ>UAF?vm9{4LCRq7AmkggmFCjVtR;Y45*CVG%y{hIl-7z<@~+R3pgh{N z*GtnfGI&{k!|$a+w|3snM~XeyG))to@la-8dHD3^Q~cHbn~gB> zSEiT}HdC2g_%cffqwPZ$&|y`)7d<_$`ccy$FzvVkbL@N9pI=T@?k)NG_)C6* zRIiyu%OqbP$A0pJpfFXM_Pe*OTej^aPGT?M_K@^{3`;8x-Sw8-l;($J76P&Vhc-XF zamWsz@EVn`b*Rd$eb#1Un!lR#ODvDn1y}QsD7YjxZS!$CY}iW$=m?MqNq*N}n2QmO zhPJ+uA{pC-`>0z))%5cp!wQEH(6==<3aM(nLo2GSD$@R{lmzU{>+!DxXf?NMy6QEO zM4dl>fm>)(#&l1U_b#h&+Wp@GLgXA2*qk9fE6wG||5`E=D$IusY&35CuFxfwzq$k0HmcY<6fr!)#y1 zt~!IZ87x#6n{HOBVONzXH0T?9KO-?szi;M$q>iFYc;^b+wh+fvJFVdJ%T7MaoUS$g zT_$|B4eC9+*ITsTzMZYSdTuDB6TjC}-eRGt%yVBTvo~b|4aUHPjgct%na214T8pps zW`Cw%20ZF>(^`5d1*MH6WgUpQ4u)ZGnn_9fMUTEAnH|6czBCi;;_y}EFu{CFf_b@r zs!I4>n4hcdt9k9N_`nal+x)9~gJWe_++F#^L(dOgseJlTp|<%8hP1h%7%? zQRF$YGBP<~k9M}bRyo69+Xg1xTl0^9^^hEdz!A4vsBHmozY@SdUb4xS~Z)~-K`wB-u=-~B#L=%o? z%RcD`{wh=lJ1=>Uo^|tw3Ex#B`$r+%AR~rr$W>bm5+zo!8Na1H?v9`^qEfHps?x>!)cfd(y{@ini;h`6q-cs|@}QY)(nqd2 z(hCe{<3mhg*GqFu$BwST=?`;o>Ro6$;o&^Ics*iALw^7i5U6bSizMym& zrH|W1onem}6J5$3@IvJT1V0=kITLiZFG{+j8b69C``*xTShU(Y+TPB8scfcj^^^vc z*K#m5i)Dsb#+=InSmAP6;I!Z_}?!cpWPonyPDxve`<32*o_5?z4X()#J!X!wd01bOu1QD>Vr|Y@)8*jtg(8 zq?dh{Zo(8@Y>SR_^Ov`?VR`&jLTTb#-mt?Ymu>*Zod8(Ev-ua5%|TB|a~P*r_?UoU-F zG=|d1+?va)zAekFS=SxBf|8tmyYU_~=vUH>P42ZxRtrq<5m!^ZNm~SDt!47_%ej?~ZunP_{ZO4gUu&H;Q|O%6EsBfE?O{aK%^5t`F4d zG7{CW+K#5(>C^dgttRuIS`=n{+a6w#LX+pk_#SF1!V@Zvhzaj2bUJB4YwEjFf<1yo!=%H2+63PCB0Yn#KSgI z)9+mH`$%H94#I`41K7qj*K3d)i=|@~4jai`>bR^4`#Ldy76EghdSg$euD$T%+Y76o z-UsR>)yKykE+#v<$hMokn=_J^@P;LCc`>~wn#@RoWdX{7Pc^G)q%|y!cczR@08F^8 zD)<^Dl6^Gwz9tJZcZ$HD1aDq=+`w{>@l7C+Xb;1zNWlr99MaaLIy)r{1lDziN zv;Xlu55qBP=AGa3Vs_VieqGJGYov_Bk)1-+&);$Pf`gta516H+FBoXKE#E|kz@zJT z2}pDg-Y7c0Q*9n^eA^=u@V-%J;yk_kh1kWjT7GHpP~^R z!+%gRS|aM? z^Y@s4_NLe+E3a^bO-q-OjH;bRE6@hf&(B-Cu*v8ZFTJWb|ERbAM`jrIWZn=8i;Qm` zwUTY@`e8-&4QShIR%tRi53R+rtRJIM*&-(3YCVr3VPbN-zP#USe=NGP+>wU`$wg-C zIW~@r`me|L2+A|67?X|!_hy^^7~o18kXxi5>xuR=eN#u=i*I_iqk_nbCIRI=AocEY?WlL#budzkNe<< z8%(QJw?S8#?epq3Svt6bA{!?PCb{?Cm#ji287zK2zO;G`RjJ43#DQhGp)d(y>5Ml5gq>&%l|+%?HW%ogo`t}Lh1 zizm0;7<{jN2RecPi;>cCvR-pG;v5nU2P*GUjxuGw3kDSX2mA56t4~ z%^&EIdx8TuiN%C#8`kTeA}95_Y4=yEa7nA~%0a(gQ@{@S_6XbRX;Eua zBl!8o)q)I7A+HA>TNYcicVjh#(f7QS#S_BtDs&e@VaJOs*yE?`dkr0bV&?(s%IQ~A zvs5y*=mQ?77jwr(iAe#E(*Pc-%Pi#h0~dDi=PZ@lEk978e<9kC(XM=7@7_|Dv z5#=O_eCuOHez0FuIE~PM1BK5Ti`9#8!tSV_r~yU_83Kc=mZxs3^!^?l9!5jG8@EoC z4d^i5l+5478Y*qn;Apfzl~WFFIQ0j~1UqL@*!*0!U}y z&irld_upL?6S^!qHIYE5tZkyJ$%9%RbV;m*a&UXkD~zs z%N_bx?@d?F(yp!D-Bm1_EHX-;Tw!1$J=2S9&8&8v~W1fayO;0B;{{ggk0g93) zY8C?m#=+KQHwwRS#R!H55nmF=RX+P;5HDEOU9j+SS|9A}_+7Kgqqi7f ze7d~T$^+bAP0cQ6-%**23}6`Lr3*lwjeWu42ZR~euifQ)mTxT>8Q2d{r5_~#AgMg0*pSTh9Te|*cLBXu0pKjKtNAV3NBmF65;Uh3EUX&llWINZNu_yetOz!!% zQG?NW;Y>Tfy7HK&GQd3$5%EBEz^m=U?4T=`m9l?_InPy5Qa}Wy>90EJoRx+Khj-uf*eI~0;j zL0gv3S3G4ZvG2+o9+bUrLJY{@OYM)911MR{k84gE{{?`{MD}Z)IX$+%CF_HK{-K36 zcF&29w*(S=x1*6vF#b^83lSC*y34(Pi#~Cm=~3 zkM>tnFGbM70A7)Ld_wwY6=-ZX=|GmWOi%fuI2Y69QMVu$2PX{}>J5_%X(lLo|Kq}h zR5nY@Qjb1G`QzN{aWz4N2;V>|^mrx$OmZ@ka75v9Ru_=q#SMX^@{UEWO%B+9V%q_M zZcJZq_OA%uS#p$u9jEbQIYzX+3-HTW$B(9N(=bGei$H}imh5Q>6}?-fN6 z{nK3+j^T=-fw!x>3}f$pYZ`M4jw`A4L;CXF6YQVNO89JX$SjDOgIPFey=v5-=Lj0g zflVgbM{7B5e*xhR6mW(K2I$yI8-doVpn<+kL}P@RU7kWU{Eqid=irUZ@)S=GNE0QC zE35WRws%O--K_e%_e3&(J+UVZl+F`tukV34)X^u!1cW~-K>o=oQQv;!~DTiw~8T1HTrcv=;$?Wp0f*lfxy@M7?y- zsFP&I+4nV?DOwVkJ8S>^gnP3?q5*yxy=)2-i19btiC(tbw}m(!u;M4>fI(%!bI4y` zt(P@Q2D*zhmn*@xOkycdg1d(2fNlERen}#`?=hpKMejIM(;`vS3V%uzYK{G_gb^KE zeX<7`>5_5XHUGVT?@4E1>I(%Qw^Fm@D<>*92@hUbRQgH(9^2$~pi^guOR07w&eN1b zREICdr_0w!@ffRW-xf+d!po$1p4+k6%({467=!Mg{?!}xYED%dG&HS@r?x7)|`T4%# zi$4sx@(0Y3N804&ME^Njt~^BNRv?_#ZHDYi$j1NKCX_fZ0U_B|{YMgpzdO7<+;gB% z=2!9neUtfroja>II*YnxvY-p>z4f*-{|M6He)GDxsjI8VQtTtEP(91HnA%HUi7v;z zfkY4Nm+>e!y-m%TJ-~96y&tkZa`$vuf1U_mAPtRwWG|pJRDWOKTq7HzddX)Z^G*a1`7tVTOVU5cDX`y`h{lAe;G_oodh5AE zV#qe@`hyWqg(h^9Y3RAnEw+*z(?F;>CGgaRF9THR`L;UQyBph++4O`Mi~TBqilbfs z9COQm{j0-ZMpU#A)mXCE_Hb79TUdlW`&=}cwMAdFltZxqNG67$+a(11uA8TS43nGq zN0I3tjZswru#ROR!+*y(?A%S6Cj)F7rpFY4QhMDL71bp;*B8t|2i&HA{bhWbLi%7)(%M^d z(A?t5%WG(M$id)VlnnXIHrI6UQk`#6RyvIdauuAeslz#1wxDTlLfiaN8OnzJK252A zEXJQS`0M3tJ_Sb5Wj;d+D92lC7RE6T)zAV?$$*Vv_w##oyxge3#`%QChjTe_(Ne#6 z?&;PE;(hh9t&^@0a-HH*OU2>gq;jp%rNc&*yJmk`u7*%+D(u@1XTVi_Sagw=@4io9 zHC}gfWmC3>!^;1{56=vw3e!f$?br-|;du^n9&Y=LI-0>)B2zlym}M;M23F{ybU!yN zzLQC)f{IU4Jkf)4Kk=_Uci6iP*-Om<$hD~u=Mzr1%F0*E)Ko%mq?QsfoG5o?-+xV) z*4*FCT|t`|F$B1`Psc!Yj}N(=NOrL`+r-v|73kCz$)oc(c5};1=Pynmq59f?#cumS zb;FNz@s-X!ObqhFUCp;Y&M~J15!4xrgxyD*0N3}=6Z{Y~(|0zx)6e0BD+b<);O!Ht zus{*t=QE7I-prw$ufWSa3?AEVj!hcH(T5XNmy%mYQDuLqEeLdQ@WW`{!?iKZj;TLB z5eo)IJn0oHX5f$LHPZ0`ZBOTa>8hS?VwQ}Ucu#6%QFZHl-snHTorf`BJ^U@O?6z<= z$7U%yfz{11q`hkuj;G;h#6k}d9E&3hM7l!u7nzgjfAN$J`Pcnco$Ib?SkyJGb$}T| z8~V$mi@!^h)DFLT47}={2w0=O%4vuGv#hc&7qX?^a=T_f@7+#>7(Ld1tn7k}G^_E| zc5@I4P@&4{*+)3|k;E}65V z7g!+rcq)75 zMyuBRg;>xZ@#vA8#+J9wYgs?F)M>a3hRz*OCH?b#>Gmcm7sbPWVV!VujZ+2H>6qzV zhxhFAWej(LrjxW30e_>Ys8>pa=k!?b8w5HTeEr=f2B+l3wg}7g?sfv}HCP8Tm2zyD zu{-fL&|jq`439~e#n&>1gm4Ur(j~q6N7E~pQibd9uBe0F_s#smfXRoub zJZJQ=Djlj1?=lkIb$%PbYxEmMCkXAQdviZ~dGNT1A7p{!;$K?rsA>VNI?twqrB7N*#0? zWZ13AngF0un6HIAnzz^u3r-S48;N0@u#_Cl=PFAI21Iz0k@8>wo_;#6r3w5Ct6u1l z0IvvU3LI$YpvcfKD(S2(h$@rymTX&L)nIV`oP6?lc33kNAXLw%(PnBiL>5=gQCB9YU(3a2H;zP zCVzKMgS~KdSrCI{r(6wtrMLNF-|0i+ep`t>E$2r){own1$}LA+G+mg`Dc*$n0_pS+ zXg{leeN4q~h1}nI)3%b4f6cB540)TtTbz3Sp!6d=9P3Y|Nuy4qae@EzCNBYj495SMz9-hR_yul7y+$ zld&lzPC3kl!|RwxMR3`4!M6Pf%tDTz4E7;^5$tqVagpi8q&aLuDv z!{J3>zQNyzhrfH`+}b;touC*%V)p=QX2d+#$TB_>i|Pe+XHI3ar>V^S{vi?M#D|3RcsB@`Nt~lwoQOi{|dy08*QcS(#>q(YdzAezz8{0aB zjc^o_uKGX6u95Xe(Xi-ibieeW{3=x|h`(SlqDnK8DG?moSdau3K+VCyl>AZaqdSophCTF}{BM>O}mPBFgxXCv+8+>h^7 zS5S))HACl%<)M?qLm=fgZE-n+`q-;3+Gm?JP3$tin^`n~Uv4$0!%8h2JCSah%1-(zP96=1jbgrqiq}7bo9nG2aYsa0VQBNOte=9{ zggfpbXHOYxy`k;El4z`-z&A7!%(@Rg#^P6NHRg!gnr#0G+~CA-?w94*esWkE-9`CU zL{L}S0wll};jtybHz=j^dJ_|X#;u2;bn~|GsQSS%Sw7IASHESdO&Z;QLbv-}m99yv zU`F{D&tjJ^_Bw1R4 zx7?2n6*ZJg1Y+l!aiC%^blSZ?3vheZ6SPrUBK1k)#V3<3G;xK+C@a@qyw zD6}wq*3$Z;Z+n~D8`H3EZ4dkOnCfv^+f>zo>OncwcRvPGiLNq#JKh=_`$?3R#hLy% z_S$f=$iWQr8~jptwG9Cq0wLopu2dF_3&kniKdQ<;=9cTwmJ3Eg-Vdcyz%<+lFwJk&Y#uftt<}=FDvPh>%9ZG@-4gi`p-hLKa@7b#^@h=p6L3L=+Z54Rr) zth0N-r6g)HuDE|$UvOXXpCpXjxJ>=$JtT$DnQ3_UctG4xR;-^UGSm(^Zdi z;?xq@O8J*Q=Wl<793FITkIyhNE+&>jU)eHZp@1U7*v90QOoeb@5Ob2KMrnx=Ts7l#(CkZa zQ7G3H+FOEg7A_5ezc~tc;~hNXQ<7;RE-?QW`oZ5&ms_Wl;}BT|;q=gFwBKxXEsuA7 zbxp|M7Rs!=*B|w|%NOUN^gX7j$QtIE%5chm*W_i3&HCZSh1X?~hQgu|tow0$3712a zMSfKzKbR;?;nV|GFqzZRK$O&+Bdot?6WQ!T8NFJ`vbpEJ&h% zbqlAlmlWJmj`xaXLe=Ax3uezhc3UoMDv2B|s7pYzU)h1%IfwJ{um7g*Ou+EY)RL6r zj_{YJ9V6SFopm#T4uNi|^lXP`RA!rIG>z!dKf$+(9k_nrblC9L``FUk1PSyY%f!r6 zlszq-yipcl(61KvWHd4|=wD!D)|$_M4wJq%Oyek#GG2)?Y7Gnv4FzJmX#-kuQ4spN z)#DRJ-EJU7r2u%nWp*_rx{}BgW|8TSJ(5R|7SXvts!xisgeBKcFeBkm>w$NfV*5p9NeEJ`=!R7O5;Sm_bm6prvhUw? zq%!ia-f)A`@;eXUiBv(^>i2zkYbi$U*FU<{Mg8PhhDcNfK_a8kDkfna70yR{EASz? z7g@>B#f+fq)In9{`n}8mgZ-Uloaa0?M=cY2T))lI!E~&%ZGMRwL4W3D5FSe_YuwD! zcpLp)hdi-{J|?H|(d!UDbg$Zf3Pd9>&G^w-bL+9Q%YLfozeW-Rc+F!>o##PKZ;F3z z4Di)(gy~K@CR7+Yc{oZzo%NO*{lh$*jtFv|FLX>OyjZbX46&j_SL!UIJ2;RSqSR)` zMuF0oyuT0T*5|9xF*W&kz+{`yvgh!H;k@0@$C9$u{XZfm6RlzBwGPI4bYx729T_-Gv_HkSLd3c179YknGXj_;!9Jnn|R`OJonSLN(g9aA1qdc_r??fkv>(whybO z`(4yrw6}ZUUUvB~IEwUiv-84_vno0j^?_K&~u3>`dK>-xPzrhx>j<}>vGyg7-_rC z5~PrDvx`=pNXcaM4|#rHMQ355XN_>kV^qLh?}7PKCL6c5DY@IQ?UHiXI!pM2rG~Vu z!>8UKq_p94kEJGiAQ_WomNsvY5;mwssdExTrN@(v#c-y7(DQAxAJvBjrD?jvcfXVy zQLQ4O=R7^%@k3xc?#m}^Y%Uwxr|ot~nLlW}z*ZraXn~+YC94#d*YSc2`X@$4l)ROP_n(#Bq5xW-+Bh0UKfaP8p3jB*g-up zCeFw;xj1wa5Y==yey@m_t@`}~RZoeD%mCVP2l&d>rW4lZ{CohjT-2WwDRQi=+` zcl`O*#86DcF2^i_7eR4lJx<%7T=YpPYt-WN0hru>Jr%uLvNqtKk4aCA%X! z!V9evhGW%>*w#f1?rw@Ou#~o^=j|C3tX*fc#eroy4mp7MW&m3Gad|cu@o=iNe|8FO z&Zwk+Yj3VDc@x$HytNZJhG|P4Cd`lRFZ&P$EfMH|XVd9Wed@7Om$aG0+BBt2{H&_uYud0-d6bDnEA2o<~+s>I2>;qB=dL;%ZG(&OyC8Aln7rrB6 z&1ACfAG2+w%oH)aau81o-VjsHr*(hsYEgtSRUqQ){Y7o(GM0LIh5K5C^oKgGD)m8a z^m=$#xYF-kPJ!P&8?=@1bk8`0gr=x}-#yg7SY}DK)5F*2`9@blA`;Q4#ah(C;jY^r zr|yDgEV&&$zMm+^M94@H_R){uft~OU>|)t9aQ^M%DaG}$L2Q|y^gO(lH$`!yI{6zW z2tG{YIp93{r=yGo48(WRV)%OTM8}hW@0UOOpmes#aQmD?LuXum3Y8|=&J--heHkqu)cmPdCqz#bE z6N!E51SO)7Cs;cazNz{7I~#U?pWW-}Qt^?gpBUsf$|h_Nz^&rf4SX&pF$GmeK?#sM zoiwrgjsqF$FMrb&ODAE)RizJ~5k;_dyOxfc}n6V`u*EQY+VNRn+f9ud&I{xV(iKQgEGrYQc-Wi~!}E zp9Tljl3jr?KXFz#O<0}HT~)0dA|cD)+P&HxFH0L+mvIcI0@7PjUKz}`Chg#UPIAFz zEz=h5ZTme3E{T@zS1uEof(+~S2JbQ)H^Yxt*}$z~$3$2pC*C9i?)0q}YZ06kw!f?O z<*V1~v5R2uMOvrvSnWQ4Fb<~Dh%U3ZM2b**eo_YL=eW^Otqhn*CG()ay4lAWRH^sB zOD3>+POHk{34PJx_~o%hw6U7SV-wU^f9$S>F`AH|+>&j4-Us)y%eg~j@q*tM5_sZe za`$Jox!$7wY_r~un>ndPNVY1x4|Woi{>exHc#pzmD-7|#sV~}p-o{@dm zcD@Hcsa*6qEApycs*@2^cCGC1-f>sv%@zLy$sP7;m|t{;9*uBRx_8t*o4Og;4Jur8 zI>Ig9;xnGNd_y&V=t{T~Qd|uFA=G&APr>*RO~K7tZf;-AyITT)fK3_{!si`iN}Yq9 zLf!6n$LCk7RbX-})8JpMCW}ts$Kk^uiDn)H4C+B1KZ)F$^+;)J%#q+Ae0rV-lWRm#>w3O(Chz+07KZ< z9m?|u^-H=9nm)b--2D4+_#Q7R+zR$|)k%Q6SnN(pMY>Rj;>wmMoCKs}b* zw{Be3N%IhYB0WSyuc_-Y(x2EmyExnI(;hZV7)d<$T?yFe^NOelkoWU zK-9M$*dp)w$7d6;D<8KYYRwGL@4!iW{?puY-|Am#f4vl`XRw_{llrGub%|5zJ66iS z-GnV!kKL!+T>O>O>;$L%0T=9E&oQ)jjojenA{jjwL5pu zRMAO|e|f->F?DUB*4VEgbiikCZtkfBHoLI5h7_i&2XOqZOM11zWZUK z`%Oo!8>c%3sMZCXf9MKq?K;adY@O=!47QR#+)AbY=~2(gawY2Pr@AD>nXM$aqxkPP ze;O^qdE>E*0&7X}UR%7MCHp^hd%WP-CMFkiSi@%etz_k>Et(ZWII7BEWlV&8(@mo= zp@;8`MFk2M*ha#D69WM7oat`(W@ei`jm*JR{PcoB4{~-7hE>f8F%}RAc3*&4V!R?-n9hH;1|}a@U4+SX)QG zr<3RKe3ls1mve0La>{@9Vb|(DQPNju9z`48=8T+h8wXF^%gx5~^f{>HbGBw$Nax+h zB+pQLu@6)5)krFWArB8ziknpeh5bR`Bx((|#--2Dl?ExJ)yf+Uuh0JphG81lf1cV8 z<(I(3&7@xmSgeeU@0)owyS(5OE;KO>Z$8z;g?WE4-ZLo%LXez$)z%BF<*Te#`X4GO zj&N;P$)KwBM`7*mx9PI#@L(#P*ojs|7zBe6!=0fg?S-jsz(7siS~Aob9ByIAI@PYuY(4-4tNUPANi-)uIO ze*-45=rR5c0~JON`fDHcG!&R0ZZF^+rg)IknCbE-&^)G0@ipMF7K*X5f5@gUpqkdO zAW8=ND?hD!!xILVyGaaNIkk)RX)Jp<37dSCJSp%P4?iG#n+-3kg!%lO;&BxhA8+Ds^~ z(&-7J%U+Xjaf6kN`R!mEe`}mos_)ybFdJG;Cot{}z+3os=p<*Sulo1!x}BK(h_^gG z#+>6=S@{e*v&*AEr7 zs4KJ!smx?+&sN9o8!I3mzXB)qG`HWZBWEGIuwy-1ZHrwfYc^YYFv+?gI;Oz_BdA*$PN z1UvMe$1x0d)I~aod~N-ixG6qAHg}bKa{cyAo?y@}pCXI9oT8Fhy9L5eB6i4tpshe7 z!(GNDgijXjz1<-Kk>v8JyIlv@;}q()8|V5!ywHkjRY&lje{+NDR?E@4U{nR2x*%%X z5XjbROVqpHK-QCA2lyG=W4uq(9bU+T22JL%N~h*HZyC(G`5#ke<7cOVIL&ui=0nZ7 z8crX(DuoM9-`&`+NV?HO-O5M|SLeD;)Q5cQn`5)Pe_rDB(u zI$!lmu47%(e~Dl5PVJ{UWT27Zf-=(yhVZfpqr^nW6Cu8`nksg)pnO)f(R&ll+s@?) zydocE?X%DQeU-LkgygPf^+)7=(_95(Tawf^vz7CUJ(_4iWPw?^9Nse+04qe*+x&;Rl=CQj?)S8R0G0I6yu~$aEvf`6*`8s-2D@C@l;YyzS)yhoQ`9A! z-WR*j=9)pCx1}@jeE}rluv>GgL^3@c=kEQXkZ0d$M0?2FNMLtr9llCDSxZ8=Wyf5w zV{zo$f38EUG=CPe-ZHqMJTMC0qdd%(kD85N!|c|nZZ(+m7U3*0G8r4>?BgA>MtxhN z3x9vU5h|CSvvMuO#x~o8kGpkhcX!~u75DF+9 zP4@X+2X$Wa%Bm+F`+sY;)YXt3`wjH}-D&?Re~(!R$cpSjBep&y_!D;jJK@b<3eC^X zmwc-nFeyKgSrb_juF;)b=Jl;0whnoe<)sT6~xI`Mj|9h_9r(NKnm;78x}rN!`2$r zRX!$6eut3@a?yrPOlE~Hj_@CJlsVOw6C84Wog_m4k};2Ce-@D5&REfCxNjf(t54m* zMWgVUx79gXU5m^|r|^0_`uxdv@r8zY8(`%J`~LfQ*Yfurw`V)Q(a^mS>l9v(e@KD4 zNR&LBLV?u`;&0v59dSs&)W+PskoqtX6h3Lud`Bu6dH^(6>I>YwiqNMg!hipWP^t zeeZjs{8U2xnpgksaTaFksQG-3g<;Ol2d6jXe8Xq*NfuY&h8o6OW%RS=q`^!=AmD`h zQ{X)6EtjD55fG!Q2(6gGe_gR!Xw3Wv$PY0ZHk;0^9e$kvqb~} zV~xSPLnBApGPvw1@y|JI@WsD7aL;bDO+gEEty}mB% zhMr6t-?Ggf6z`Eb}6YYv%e+bM1SL;?lry*A1e@bpH--X6gF6_BH;H^k5OqW z%770dT{fsSjs*(2aU;7Qj8Yys<5h2bBhnfl7^|U(NXTIwJ~{dMa&gY#gL8(wH^TPj zk3=m3G&@#`_vh5^n!6kM8?|a!>zMe_O)8jNALnv~<0jv{~o> zh9!&`7*pQ^gq;HgNDT)wU_n}l7qI(IHA)1Ex~?_q1pJ=Nx|$fiWe{z48`KfoNYxX`Vq1!p7EhiyyYXdBUK58Vd zRl6ap*-2gzT&i*Z7Bp!-wPEB008gMsz=Q1)y1$kl!)Up-3mzyU&^} zdu;#Re@I0+uJk6so97M?<93d<*4HX&x5<7~=Bi#(LHD+~$p=q5|FRr*&*%6_Oa=p2 zyZ}s*nR*?Z1z!S+lcRm^^w9FUBFtGUWEyYzG&_*^x2kK-47kzK$qp>Yzl*qn+#zDvo+iB3Tp?x_c`rCzCk8_mgy!(ei0$K5y#6a^)75$e1GCQ zH{-M=-*n2M>N3*^4>G}_&j=fDuzh#7E8&^o79-}KlZ1S`W>(WA8TXW&ZlsGFgfvb(WJ?0Vbu6-I2g8vFdm#<2uS*lcA6jMSn$Q7p;BDIZS1g9k80>3aElRb9CvL2o zfAH`5XIL%R?Z+Kct2U&MELh+7x#)^8j@dOi_P|V1y^7(9lyQUX!@ZY#vF*OamnNlG zZ$%cSCwa7%@-{)wXMl1~?#+JgIbrDiwu4JznIa7ZG}S*Fk|eVN*QF&*Op$VynV0OB zb!C$zZ#geZCEjie&f&!^WGPEsjN-gPfBRMM^>8a-UxbB`bBz1HE@Dle8ItptORAp8 z0G)3!>@V)L8s{kB6{$&IyGQ%X?p;QHdRG6!TYs^ZYDLeV($u|=29LL*?V2T@ps*mL z#ZM@%g72i_M6-X%!+f-aG)b5q|M|t=>Op1AJ?A{Bl%w`bsg~R>2P9Cm>Pn*$f5;ni z+jl24g`YdpRnIfl3wUs-3$mO)gfO^xHupn3EgHUUBP5A_wR~-%0+K12p#_=z8R8Z? z`{j%+hhZ}1#aS(Bdh`Hawrqys_i$#1lf<8bX}d};wQV?47fj*SJEo!ITwG@%vBy0o zE9aHl?nZp?7bkhOtyQnS6fl-Ee;D%Bq$e=aJY0RV4iD=g6b~~WL73TX1e|q6;~G_2 z+ndBbfAUTY6-_H0vrReErXlC!-&(A3Y7NKNnn*4ddhE4kl*{lgjV7q*a6)^KpB7@^}Aoo^=>#jl+Mnr_e_$=32DoI?CIvXuWPLT zX=AqI&8o-7w4Ic$GIR5ge{$P-kSdf|?cRmmh+zdmam@=iJWv;-M-6uGZS8eCu)2hcX*BPbmx=_zoEKfyH5@fKOVv zwwU5E(!B(jTi(mp25i(!vnFWHCk(G=av1x{pFy2)W|KCPr1u0H79IFId2155!UiUJ zj)M~>eKJG!wY9mZe{TWu$^Q)s3vxh0yqRsnWtduy>Z3->!*Fs#?e=)VJLlLpKS8Z9 zcO%@MWz{#t-ldPvfN|Vz;KFDEb>3)CW$1$M9wN=um(j%<{lJQ@HKTgqKrNm+#7ce|o+ZY_$^Jjk!%?b}Akq zNq+kp00>=H_zXa}qP|_QshPhMfIe5dHT;A8Xq#2Uy4>NCTaYy>xzT>s45rzCi$rgA z1)_gVfHhU{e;`-KN`!DHBA&ZV@qt0<2rmpK^YKmX?Neg<_X(u9DPvGM3rRt`Hv~=- zkE4FW{4k}!%MhppGtik99y!oS>*>hCcS%RcV$WAl-yBrn7rID`+?7~5F68UN@B3;a z`z{<&KR{=(_BRzk15Q_ByR2sr^DkHXSGkyA)WN9Sf7RBspnpUE0}DkmyemdHPCeYk zSy)|LP9s*+k?U!;CJoiN5{sdx5 zeW|+!V7zNnY>3rEVdS#cIie)hM&S>4V{ZDd@dsqT_3z{FL&>wi?;xOU$%y-BXUagu zhEmkXf2v>?f(kFfh;`)Q-VTp??l*GNi!)c`B@1A5tk3J6fc`>tC}dtXVE{AChMAcn zP$l~v`={jL@&0Y^cXQhShU2?A3{A$d_nBb=AvgN})N|HNM;Z2gRdapL<&SmD@!*tSir z*>S!HdE?B=IVj@=}2zl~v47p9YztLN{GC$#e-WF8ed#bgK4| zX~usE5J0>Bq+-mQia-Df1zp10cd?6qr2!gt@udGY_600k>*_v)21lKlpBwstQwqW$ z;2}iauaORFbz^7hY&cMK1LYD%rr+dde;y;1U6}TwqPg&kKm{g432>xZH|ihZ!A=1K z1(4ewtsYtSnni!im)>H59a~6E@s=_*%O<`5A~P~Yf90#w2d@va{CW5t8699gw%t*t z$J}GBk(K^`qt%oYC%V%>)GgQkcw-X65mm43A-dCyWb?h>LakCb zf+YOj+Nb7q+*1+HBLSFCJE+%}HhsSev=-F7<#+s^?SiX{T}5L35;@V@ zI4TN>kq*?d6^qf_DD2yDmVQYB3f z>u+`I?;)lQJCNm&M1|UIgyw6?Vq9I{^4Sim)r5ce`LIn^4kI? zg3iPOVK=N|qPgch?oO|GM1x+x>s7W;Q=RbWFWutZ`&O~QD@&68@xQro%5C+)MtdIf zuMNgeWz*BW)WmaI2}@f=qdJrMUdC1EEVsO`0oxwuFzJ^@!#+2{hVTLNhEK-AW~!`V zXDgD7M9&1hAQh2Q)1ctLeNFdJEIQXYCu?NPyaYkXS!q1kRndT$&#g zrSS*sFjq0(_IGsR52K&52`^^UtbY%TR4K3@YS3+XaK08sIlCqm4S4-Vh^(`-;wJUsM*M@EDDGS-9iRqhNab$rc;TwksUX@|w{wW{zf7xH;R5lHy6gjle zK*$BO=GNidHBkKr-OTNA%kyd-yxZ#rZDGEzwBnxPP51Jlp2pM|=8^R7`hxRCu^YyL z-}iRdR!d2s{A=J$@1sHdj}$m)=_OQG)#g#%gilb&XlwoTLMo7=+u)f^4JcGt@9 zN5@Qe`hHM(mF?yef4(Mb=+P9^Eu@0}9p-}(x2?BNGzzL)YXW&pedB8|w-1|=TaEIW znBe!t*zST1H~Z5F@>84zp)4!83-hTlQ2#`p$X2j}8XW9x#gPx0stGds#&Es^B=Br-AyLC=!x%d-vV?=YW4yN#HQLae=Li&%h4w>?@gs-=N~-x zUIZgYy4L^OJ17a_H)3yG{NLPO{s#ys5x)04e=~NdO&;;ZL!q|d>ACVU_9etj1+E(O zn0UhCzZoMH`w#5!>ITIG+2*3+RBU#FzfVAJ6SN-FI!-ng>IQK!)1cpH2j@yIPMRQw zJtFEOWHvm8f0PA_aU)HXz18GU9;wfw(TpyOd6l9s{wOrmS$+~TKP6p07*DvcH0-&5 z!X=s#iPdoyi>U|$w}pRs-zHF$eN_m*F-4o*dX+N1fBD{$J?wR~cqniSC54O{Lt@-& zYQ_e7lpYy~#j+vm66fnL0i9GX`&`%SPYqgMJavVie~e)GV@`>jFpYN_-Bg^8ewU`8 z!Ss1%L^29`hEBJvB44j0b+ZJNfA1~`>(6_$LK_<=uE=)-8oktEXfw@OO@ z46^H({O3g5xh}B}DjWeR(ovunwvwqL>&3g#e+UBuYjK(noyqHrNHkv+L$BX-y5>#) z5}zv`0p_GPDk3PEHVT!Zn~r*+n>LaLo6sfIUj`Gbf&8VrgW}=NgL+eD*gtxIh^~)e zDgx`|^qubY-oShN%~MEvhDyTFVsXCkC-&{6d(K~M*`2#-)T7Pf#v;kUZt$qe&#c4X zf6?XgrV`;suw&rB@KeTy@Eop6gbC-m%pt-Rs6 zt!C(h6R~0G;e2L?&f8EcctIWUe()w|c!N6dP0J>U%^MA;WkSmM*gLAk8opshNPxIg zWi2ptY_&G#eY-+wY!Y3vq>)A_C+v z!m<6w{*nBbW-S}f=TaQom)(yZjsu)Q1cNzGQrgy{o& zSHiEjNMC!&u_yeQq==zI?=sX5w1q?;gl+75m|@bg8RP=PN9YztMu zHRA^OUKL*1nyeM3j@D`nBBhn)e+{zk)HqAe^9Z9E<7{~a;53X!Px^J<`kH;iN4<-# z^i(DRwKZsC!sCG?EWYyDQ5J3v6OT$DlR9dsv$4MP4E8KZx$L^a z4D-51ik!Qc>dC~CNwut*6C*HU)SQ*GeV}|I1QLFCSm%u{xe;0()v;m(fBl8Z(9MII zp_ICex=AOr(on|4w?8=C8T)%_22YQp0xnZERyp4zh5g4H zxyyE76Vn6h-mdg+aHfe)e>2_Hz9}hfhliM0gMVfHQpPWV=)~unRyT3qF-v0XmPr8& z$2{Ls4ZW<7xSaJXF%z!pRMvDRA^ensc_0`0+*i9<0Dte{U270ZRntVF{QAh!{vc61e|^p#^aRma6y8e; zpRh$lxa**;cJ6Y0L!ZEN8;lQpUAnjL>v9XMT5E-s3VxBOP83Cf7+AzxfG-gKcu(5P`G54S#2b7$#*EQmTj5GJC6&R_b*N$AO=(0 zT9H(1l7Yz3@XYybE+S12(;!||xdb2P3uI|H%3MERD__ibliuue_PvNUOTVp3u!VCN zXCe2b)ShXPPA?uD8PAbQNIN&)9T^1}3~7~1UhVCOt2*b9k`PXB%up-sHml16b9GHV_rJ)o!ghG z^OLi92@gGd32G&~BH8uizq8PyLjE6lZQAcRg`T8yo<3cSi~v$Y4$AkVwIF3{D#|3Hr>cM zh13Hiy9h9%@b)sBJmg-oDdzXTcZk`%<%^V+O6E^%KNG-2yjKWUJP%2)Asct_( zeU>RGY{9?LJCGVGZ<+KcjSH$a5=$?;D?w);dD8P!X~LL zp8Rfvk%HqdT3L5|*esdPPw=x(`a=TNp3n;O#d*++concRQvu4SL|}o-vBPyJ(wzCh z`H;5}Ge^mU5W@L3d?n(1`jGz`%v2i>j!E7zv zjb3HhjrMd_s8+D^zz$FF?uL{}F26tK25#p(>eH`ir?s%IOaAkwE|37Fw{Z>$E% z2=RiiW1)4F&;hYx55<0J2J?*C5YWWwIKC*ouQeOXE(ak61!mbfT#r()=Lxj@R>14iWnR}%wtHrY>HvJw)R%w*PO>mj4!*G>HlgXxs;m#h-DPf0**7*G zw=p&*VK+_5Ea(9rc!I05i&u)JN00fxvcr%dex{v{bE)uun}HA?@-9oRge-OCw zqUg@`^-v_2{DMVzqf$|fq1VhJ*b@l@MBb5m8bwIB%rnGoa3-9FC(smss%SP4S;CH* zM5QKuS}Z^D=QsTimHjck3kUB$V9(`)1~XLxSTB+cQzzK9i8aNfoOSvuZ^;%l$4&Nc z7H>UYSR1?RB4<<^v);o@NM;h8f5!~CulAm=VI@|_ul!z@0s-{a5dL@gCGR(L{W9<| zG*?b-P^Ku}hUjT-!safDIs2ODjI$&u0)#gf*azE7sgLBMNMHS?Ix{e5hkNCV_SJqGe}&o8YmZ7W zV-50JTd7Id4G6(M$(PaZo=U?7@~XO2eS1KyL<|#Uv*pL1%uv;8$p0ssjGCE;4&>+{ zqP+#~{p-O1-DGbU7if?RXnf7wT&X3QXPv4Bbbj+i4bNe`tN(Hksmq?W$9?6>fw{KGNw6wf#MSB4?m^z_Ivdfk5A%`&MmhDCZ2nOX+%g zyA$>Q#E7RG1Y3j1?f`Iu+s%BhcRT_&QJwb!f41v7fMZu>5g%5Rt!zQkQQPT$ZXRJ;Jl+=-I=079--g)h8h&gF z;T?f8R^lxo<__l2y%VCljO0h~&n}K?4B7dR_IJy7ei8_Ldi(b!2 z;nVrZ!%pihJw}=!3YLW1-(|3{FczJTl1zF3bkRg$DJxy&X-Buj$wOk)1}*&^VGRFj z`7M86h_4=FIwRHapk2v!R-G;NnNu~!QYO6Tb3|pORp0PB0atMKi$2%3y-KVdQ>m@> zYz<_ZcM&+Hf0TavfPNf`e#$&gN8JRGVh`XE4*~CfkBrj4T=+KV3fh29t=z;Sx#G1! z!xj!EOla%?N61}MndkeXldCKS2$WS(DVkstyu!$=H+kpQFNuEHZ}>Ho$v+hVcI7(g z?=GlD5GP*EGBgU!d&k zdR6b8y~&|6%E*K8&XrVcijo5n*RfC+Uczf(+;D_c^dCKcIZYJwL2} zwc zq$xIJL^{f}Nj8@b4pRcD6nX|a*TDxne|}K4fny{ZWQ#%cYR|@@W*OFVSib2hlQxta z4e_<>SY8T)bY^qp_erhQt%D@;AtREzljJO{kh|{?Y*FZ>e57sBf~9(4f>bjs#K6C! z)5tc==%ZKpVgR1>+RZqPL$+d%F>@-@uj&V50k`p|^WV4#&x5n>B7F{smuhN$e~k~1 zV=XYH4OA$tsuo2N$0X~#?+GAZKR$^3({PQG{_CN-G(K*Za1>H$%h%tnzi0kZ{%rZ7 zY(0>@ph^Ki9e#hOYp~J^q@C2QBMG;2{WiiVLuE>jaP|0nq=bK*C(Oi8;7H-R(kO*Y z{5NgA%JDleV-?0hd1K@+yvi7tf2i}H&9P&Vmn9|qnK1q*uqX(F4+;<_@WeB;vL>y1 z&Ay;gAL^_6efVbN;&j=sPsQccAO-)G5$PxB=3WTJRu!t#o#$-9z(=4QZ;8hu%NZ$?Ls4>-;&gf^=jvE7tnX6dd%QUIH|e_smypcSZ4 ze+mG+trNyH|4v~d#FcjZY#2$=URRu{O(o|!r^alJBT@bUqKqS-Z#rt*XjK{P9b(=s z#Q}j&g}N}dCcnQKH!U+6VJ63Q;{-hT+v@aU-FN`AkHJ@-V*%0*yPql?xCbs-Vs=1U zIn-5y#oFnXyRA+He+{m zGeKTtr@XVD|8VQw-+HOs=V(FP_$Sfr!NnVn91)jyxtc%>BCmYY`fWJYdh)i%Yuwb5 zw%dr|BZ3pe--tHKf4*o6ZlXWQkSN;BmFP)v7g00;L<6w`p3nW!aORlRezHeAo`*05 zv*N*dy6Zp91?1nG_3eWngJ*%l{>{OlU10z2Mz-*ZO*|NONQ}6jr|0reg*1$J9aJoJ z*(b?ziI>S?%}@Afw0&_xa+>KmvZYr<|0EwnzpFM~MNK^Wf3-SWD1Mj+K}qld$KF@2 zFG7avm`mb)PZ4RlLFt4-wbCbOo<5yCP&*$BUgOHe)DTUQX=BW&de-ThV^)B8>F+mD z2Ow%(iFo6t_98gH{F(X6|MxJHKvgs_-y4>hcKW$0t4DH8SmR zzMW0&{9$_?e+qlWr<}oiSss}GSgEpxZ($MUS1ZT?*#03sF(BtA?Jla+MdCUI7Ff&+ z`lfWKDHI)p&FbEvsjQ6OQ2l?w`w2S)Os(9SDLpl&$(Zxyzx@22s?PB*CyBlw=3LIn zejvLfo{ zX<^LZj#8(pA`3qh?HcUP~$ zMM9~qf4eM6S}noPl)n^%u?esu8iovEojXhPStk@B?apt?g%2bFk<>zj-BV))0D>`- zV(bX@-t`NX)4mZld4d~(BP+-Lwe?4O)2~mJ^nGEqt0smP2}(ASw_;c{y`-DsmXu+6 zu|}epxm<-#a}~y_qg?YB0&wrrrBp*#7*91{e{3`vvi1WY|BtW?;-V!E{0l>Rn7A$_n-yv%wm6z|-|tc5}E zX5|Yuw9tN0tiBydBzHaBkg}ZqL0F@V<~mK?JY1l1`NASp57+@z={IVdxJCeTL<0q1 zf6;3C%dCHKqTqG!g@d1l98zfqS}%kIGOiy5;G3*`iLPbmIjC#j2S>kYmAVQY(RiU( zCkiE+PzC4beymHN-v`IJ{u7B^8f3Q9w{*^Sa}IBKgNkj%+lKY{wXn8la4*{1ZNpzQ>e>{vjA>=V@@;Jno`+uH-HH53|qHc&f*A|7I zUyAqxk)pFxE!+#dBu5U|I%NJ!^!X323l>0AozrELNu@EV(N!AXd{NhXavj1%7G7Ym z@vEsH*@|B7_V9Gef1BY% zr5z%7M<=Xo;KtK&y!l~p!6j)PLR2*NMji3(+pkv^O+uigrks@7l|&| z(C;bB+dDc?PU&O0zc?$TUPDDTG*Zyq{YpiVEDf`QDDm3{WA(GP&3|tfBtXpT2f)W zoRH>s`z4w`r{LMzE2i|1kw|#lHYOTxokxPBZg0V=q5L;&>RWp0P`(WV;hnpvS~V~c zb6!?j1%E1Pe4|TsQ>Nxs$B{_C_57gBJ^cHAwbqe^ia@x;l6<_^UK3Om=OU{O=Kz+{`GGVE~-AKyz>P>>=A* zMouIfHY40;FKOu1&0+o1Z0PxtG{a6mDVX#9cL!gc)XfPyPio7aXi17suki(|3|}+& z)Xr1KclGVy8+C3{+(g~QaGW=Te~RB_sfG@_Z*OZ9M%aZI?p&Rye<+wR{5^=-?o;G;wrI``yuN>iL;no3o2|F++Z^gIl!d-_iPHLjx2C<#tS z%&9ej?^3KU**0{T&r@#o7rvPs3D~L2o_F>B|NRT##)1NNGLQf-d=|Vhl-7$-zc62H z%6b(FrLk>`bbGs$f8!39mV3MNm_8(p>8xZF&`<7Q*R5iQIgql0^r|`pxj^sZV*bye zbyW9?mF|5b&Vt0<`P53TEb0@2@#j>ikaviRoi$9fR)t{B-NF$7z4<1Hjr*nDVmRq* z^qY?I?8{?RaE~3p)uq6+nUr`50{&s4lWeg%t-WWPOK0mie-?q6a84%=-(=@wGardr zxyIRd;K%jVf8k^IJQf=~2NT4O+(~r6Ett=LsYF4ecT@zb=x=B0zm<#t!*GdtEvA2H zA+%Q@S!d}l50)-PK0Oi#u97Br!OoO>y3g0D$(+7qyjPeuR~;@N-{O4t#<2nY7%B3fBM)b1fRWF8_p313O)XYMGc<_ke!?EsEQRjhW%a@-fA#*xaH-mTl@ z7B_=xPN`N?v_K2LAQZ^CRFbe)VR_MP5ZIU!>b^loIM!|IIOULadvb^=v&Wp}oYAM` zp7~734Jr?WCKErtUvK-u@3OVNSu!Q@9>9CF*~P`DlJs2|RSIM*wmT4+c;bW0WTVoT zfAAJLTjT(MIhH?GxB)YMmDYM1G?Gg%5rGOk!5vBTj0x@9(EI&vr~`8$vX6~rQRuhX zEN&QpBimu$oacBq6}oxsZTx_54E}<)DKlmMe6J-%4-0?s`-z~-9bC!>m)(8yY*cA_ z*$m;4>n&ZYY%$9H`_av!mCg+fDbDT3OVv_39vjY1{P# zr4TO`>Wr5^lAlwUy`aGo7~gpV=z0HUMJn>$CXl!m>PT+^GXuKcb=UQK`=%DRfA;ho zYA5J%$kb;!%fe%~zszKkNTY`V39YsHEVZZIDFE>ua=Zg!eEExD;#1v^eMGsfll925 z_jQ*u0avwk`jaVx`ImS6s%1a%z3RV=mOfhdLu#OgJOO%*bxZ2goi2q znM2*qTU+euQegNGL4WT}BW_Xq^;zgl&_`3`tZb=Pty&MB*`VX|UiE4xbiB}=xI|(_ z|7qZU1j|W#b~G&0QsMsNitOp4*xkS%pkFKN62oQzE>c=03(DrZL|-zXsKil_8 zeFn-oK&O|-Psrsg6#=5t=1slH))0LF^dR0GvtQ@402id`xDVag`dxzxs{;6&_k)yOw4o?Y_keM^E3$bOOR zY(Bpv1cgnmdt=)~FOGbwe7|%F`u&k&qB)h*{YtS++BRf4HU2}!@-RQ*zHuMX5eoiQ z{a0uaVY**VDhbGF7z+8SJ(n|W225L3al;RaoRP!aPXJmYn}05{3dkJK{FFARBu~$INkZ)Xev}2g^?}A2obAk9+y4U zn-rsLtM#P%d7rlW2at@HXH)Fy=me@U+)$EzO>Wjx(RvAvGo25VBcJXH{BwbiS^e?TGeS;+?<0s<7? z6{d#AJ(}FEApCrpT-SV`o=XLU)-;qr!YIu$dm; zLi={lc)pT#AB#a+;8#iUyZR8fv+tvUfuA`PVgBsg7U-Jc3t!P7@pFE3>2St%d(61q zk|Vbx0Cn@8Ji$?~(e$Ixxbgr*~uv7D}lt;0+H-l=vL1+Y0q2t1K>I zKz#RBh+VVUe~x@vyGpsE_0t;LQ;-JWt1al?FQ2>72Knaiq5W9+sgo&nXfHV|^-I9Z z9U}VMYckE3em+l?oEDtKS7?ssr9OL+h@`DcrRTMgAUe$_0(_A|&eec6_boQgcBTZb z+UUrjeGYPd-Rv0en;PWAoev20NDF)%&VMi+c&pg0e|X}GK@)`+jve#_A7<;d$}WWf zwKo0HC8=g?Psm_;eqIi($Q?y5fFOkXmly>T5`6)}WjatkkZqIt$P9EkDCKO_@&={uA5f5mHs)r$#CG>g=eh(?p9u@k5r$PfY{EtT;FH0rhMc~ z_x$~;OXM>u;LF!RN&rDt;1gzdQOoGMwCliY*6VJ;#Tl2bt007DjILd|pJFV86|D?0 zeKXSW&S+4?4&%P7p5BE%!C$dmxWd0c`Ry=+Z*tv0;=jmM{4$VA!qt6@feb`CqK! z6~);ZS7PyAh$K9ci&8KVUbK)2hEYv>(Q7Reu11%Xd~SBr<+4iBO>)$4gnAcnLFyPQ zf9~<0ctPxDsq#PJyxA#!sHCfmvqi1&=_|G(pOuTGbJrF|ae{`Y$MJ71PrrUQwaQW_%>`c%FMntIP3wu(P z|DUt)r-+qWgQrN_rT=Nc@^`c4o?I+Oj<4jrLG9Z4Zrc|-ag~uROc@MrU)A|uxFVs? z-uch?V1$E0#pvP{l7dQZ2>C2nADndI=5l9|9}w+x$J3ttHAEll!>alZgX?wVe@AFo zCIrmR$3TN`?*#V>E8D&I6n=DInCU|Tl?3e)f{l4>GJwcm;2L_L@=X=E&^lRq%J1Of zbW}Qa$Ul+?hIo{4P9NLb{O@c>nL$HAdd&!1(H2KQqjvtm(6yS9Du3`FFTe%GN$!_! zvt_QPkdkrBUw>DFR}w0hg$vLEe-CY<3z@oa2vFmg!vY!i4r7zoH3dkc#RbJF%(PQH z*f9m9|B1bUR7rUGJ|GsXta9WMMfys#E`~V3o2|y zY$wXEAS+UL>Z>8*KqCUD{JR;IH-puZZoc%d8v@2P9eI1c|wfiX7`AQdZG-i4zAJwOThjU4x@U zw&V%!paer16@@&5h00J&wCC9-S=d6iF)@Fcq_qVhv|_o+RIX1y=Y4QR{z#cf^s@u) z?u}<^d@Y!byD%eF@?{o~jF$ti2xJ4$s8*{aoIbX+^$Wm9oa{8Ce`W(`i{>VIL<$V? zU9MB|sPT}1-M;7r&T>2zkz__&=Va+FB0eps9mT!z2-b7mYpiRd`w;`~RS*+s5@B(% zH+%HpROzGDT>wKsyuZ*+>W?nl^EFR(c0%LwBHSnKr#b9#Avs^`@L8eB*aF1aTL&c-_U-? zBG6K&Y&0gb0dnuDtjekGJ}`p)oaPI1F64!+v_gMNP0CPfLe4yj_QU$6(k8ihLW&r3 z@id<1HymJn$QTsy^M67DTl7bP4*uL^W%7?_qrm*>$7UO*P^S!Q+keVQ8>fqV=xl!M z&0|NYuHz%vU`)LNfnG1;d)c)_=O+MNXPYlvQxf+dllnFd4(1Z)z(;ij)jZvs=>P>>h3>@4R=#MQQRy2UHi$?x3L28dN2PwSOyqb_ot3h(S5IiCveZj1?LZiVg$Iau?vr18c4uhs7-Bjt!6sEUj1n*XPTTBwiUy0SBp+ z!K!oNR}ap(&VS9+Y4f~_T4!#}tH`%>#)dFNCFBZ5X0r%xuY(?o{zgS}xjYRLDiVuu zQ`)OnqXpY2psy@%Yi*~r${a5@6KW&&r0_ku4MxnNW6IQ9psgYF*VT#)QVf{%$PLXJ z$h7;-zETl5ns3w^C)FGH(gi=ikanej$?vb#P{s9Zn13>}2JdWvSuDulpIcvZn5J)Bt2?n4)dXwq z0m)q%rMm`{k*xpj|H+31MYONGHDEywNQwKv5SGgg@a0GimYBe3cMId*k@zdtP zXsl|!88s&rG%X2VzLZOb#vLo<)Qx)E)*po~`_}!4doGcFE=EY~@aB=*SI>R3J3H8G z+mk^?3)sXbd;CQX3zh;9DHr7)d)2^qNeUs=5Pt*MjS@@V%e(U|9Mo!= zIDgO@p5N{gTyF<6m{sKUS$1A-)-#-FGqSX!qWH?@u7aa|AWZB@J|D~Z{h@(vW?Q2D zh{UHX=hZ6Af49zEb{cCH0&cvXorVSvnf1aY6TDhmgJXRT!ld$x_*{=pv4ak%847Bs z9QP9Zs#jzVENk_XDh+>g52KyaRj{L?&wtG?<7?jkYTCX1PdKdzVr2QBZrWviZ&|wZ z+Gs>@OP4?p1@QM&O6|syS!0(ko?_CkYjxR&LlP1y)HPd@K30ey-wD(ho{qxRUvS5F zaBXL^)te@~MPD2K>7;WNu~D3p;fdqEBA@@vR6G2)SWTNCIP4lA>g55vllpQnI#@b( zY#~3q*Op3M7pu|CjupY)7O1S7pLiuV(YyV9Bs6rKRQv8FfWwd^H0|aoMXfygh(z7p z=4Out2`x*p@?zc_mMWF4raz}Dhk}Bvn$CHV19KJ*)X>wl!z}RQWV9+?raufK|0r;i3y}eq?7$)L7 zCH-9+`!qVBSv|EY#*aEwzJG#AJyhhxB#BNGKJKmE&o?f=Mb^mCBAIxhGsa?SnwtLN zMBMoKA@lbu`N<_t>N>>9cxsty1H0_&j6TuTFb6+W+pXP^sK`7i=JX9$l-y zWWU+tl?%%LClf3XDSy(_!U6Xe*FgjVzO*kMr%^;{6O|JJ+xu#gBnq@_e$1~9B7!YW ztetOZuTB5`tRY!P#M^c0Gw_#VmG_iQf=uKE0$YHCJ2nStjv=FcjvUTenw{?=#?t#= zconsnlhf`Ld|H*ejJ;W4EL6PkIlDxdeq>tnM{1*V0Gf~Y=zq-oHm5x6B8sXvU@Z&| zJik<_nJ@-P5oPTCG_Gf#s^Jssp4{~Y6vX79Hds&p)ViPE%^>L6=k%L*i)`_q9FnRY z7sSs`NZ*o5PP$ss4Vs5PXX+?WMqHq>3fNaLun?JeM6&2=bTj@)#j@f=cc`HE(b>;1 zab%DWnL7iz`+vmf28xsx{u6&@*?{-4ddS_c7dY(czsjl^UQ!@~9=0P18t34(E!VW! z%Xhybq6@i8$lM+#%bAM&WTBE;^Z6utW z?$NToL?Yt~iy8f0X=G;3Z8))ZFyeXx*82lze{{Zzy?;N7NdN~(z$9xK`_n1%XB}^v zsaCV^Mn%6O*=+fmF{s~l)RnGoP4Y``#EP_%l-W@3-M^up4H=QR0782hg|AUu0T1!B zu1_d9PAgx|Qjca@1y3~Z2Ayvgk&ws^Y;}HycoU{FoKQgxPwTd&b^aCEHYb1cy*gy; znh84M_J4TZN1y#3Hl_@E7BXAY@u0Us_qMsZ{`Dy??gzKTdOc-qX0kcCGvk?RXZfXo;JD*wj!%wrAl;a@4y2PDP#7~3Y|WB&PD$WHtKi4@<3L2*qWa&4u5{1bLo^p%nMIN?*c=%q{I6>$3G*x zAjYQf7iGV6>o`K?;XobN>gSP0X|=0lq9S4F@hlL(|8cf%+|eKBOzn)xT_D_BDG*?B z7(%VTY^ycjYMPCW2a6wH#QmA*@jI& z>y~V<`)l`YJHM_O^`Fg_peFAQC_4A^$Ev&r;6vkRODi!6D;{=gQ0i@?j&uE`9|cjy zZ=Hr80otNmIEEg$Lpn7En*=rS=Urg?*C)ztfQ)IzPB$W2ugQ%N_Tgc(jC&$-CfcxNOz}#bPI>>lJ15> zcf9xU`To{={qJV6&Y9V>_jP^t%y26YqnTM`)J=V^eOU$t_Cv^4(X{${WpOjXUA)&H zFAP71S`}NJ%y=56yR^H}FDT4|c7Kgb@Kf6-SPT~YQZ_q1qsXImGKrNGD(xS8{5M_` zl(ZUQ>8|v`iFNxF9I;Cw=W&&hA;r8{hE?RWxjyxd)vHvem}haW2GOE*9}Zzu?n7I9 z7yNj}*84Ltxak<&7M8U-RzcygSa&aiwZ7*JllRS;7P5DltKmnDzOW^2e}DH#XX2h< z;J|)V`4e~#(1hkNdEqZtly3DidNw z=UR&NqOXgq-evhLjbE?J6MsJ_l&P}VD}7$Bk}@_exm9LQs@zw8>xbvpXB$=Z^!#RFDOVT3p_(S8NLXU?;X9^jb zrUD2>k-}}8vyAV`$13a96;xeeJ=P8ml2NE-4Ky z+Q0%rEsnGeF>!xvba3eJ$+0Q5$MC@2r@x;_QfozZ^R6N)3{-~35t)s9A8D0wF4Gf8E%nJ(;!Ywi;Ig^XcsapUj*-Z~QG7B`8J&#m$E8fNEGCdG2M zuh;bUY9bNXO$^Pd4}U9n*t9nD>-cncd!15O-4lBbik+C}BJ;F%Ck}Q0@ns-ey@9k; zPxFEn-Qx0++vn_C^tD-JztU_U;?-yd?~Ss4M+{0%@Lu2FNgO6q6kqXk{Ffe8Wt^3B zZzz&5>L+2<^0d~uT1+LMs*!OV#Mh1vwz-|t{Pu;K8UvL}4S$Rx6oR#17OK9D^z$jh zWt;kx>fq+#`K~BjgQEJF{CAU$zF@LrK_3A!b=9I+k2T8WqJ8OrSDFuJb<@HNY6Gq_ ztS-8~#oLqf>Ve}@{=R0JptrW6Q#8N%WJmXM8$AzhgZLfie>uDlkh8o0)ZNFYl!8Md z7;30hxL}NG(SN5#yX;H#2HyT{QIL7>XFA@i4|@g!2{N#3=+GBc)D$bWyqXaKP~=_2 zq9gpYeJp6SCONtecVKE5Uey~lQVOBzZ9Sw&nQJJNs-vJWtVHt(VZT?r(@?2*UnwHT ztzEv@WQ$l0{;+jI{3RIZ~eeuWGDw-Z%J<2nV7qB|ih6~h#PkIU&VI^xdr z&T<(o|86FS-J8Hz5r2KTY4qiaNXYZ8`>AkUxW_wZ++Ur1-k=~^@Hu$3e;m2ANhj!fMhjT84KtvE2wl};qfWAd1 zDr=A~cWPZt2H7{bmC8v3J@9>Cz}3V!YNNK23b|1ef~hIW^Y&_rv_#$3>r>39Em?s_ zh4G}RpSkUBUDb>dSjk$R3NE5HdKMcVP$WXn%6~_Ezq8;FU+um;ZarY6_n&xXVrGTS zgthNS4+4gcXBoo4eEu|@+2W-8Y1Wh?*fV8{Zn$Vzzm*rWYc+K1?4=i;u+s$zO1X!{ z)<{$9)5I`;M<9>KP5C#pu5Qn3S!zUw47K|fDbF+GZ{&hkAI_^K;s(=%QIxVuA?rz50tz)@BE{Q z@|1UQhLeaN9L2LH1+TWGXkMnm^U%&{P&~d*DSZ#hrg_nbsHiK=Xw(Qk2|l#a2f22; zhhQ8gh&+e{_#4T-J{7K1s9V6)Z5NUpM+EyTEuo*)4;N{;9IvvwX!*Sx=J(9~-kQQE zT>YoFmNxq3mZ=(63c=4RE~pt++K-F@E2ngdYjYHSCc{~3;`C`%1#3S_a1A@>41ctE zDeCcXn1wrxqE7f}bQHRTSO}zmxcC@=P0F*+7`4j@4@ybYg57UU;MYY*O7ETpb9r$Y zbb3k?Uf(-d9!ThQJimD^`54POwu00jaDR(I-)m9bHI0L&#a3KniGKgU_*PLj5~Q3{ zkgn;-QKOHhn))K%_8cdPy5#nuoPSEKp%QZEff6PVOuJw+bHx2e)IQE+Y0lE>OU*-Z zmbdZr6fdTX=8{8+`seY!y6L_1lel1qIFFZK);=1QYd zUq45G*q!Zvjv|YZ&nrtUFxZi{hc9@}2|v@UIV7K`wkztk9y1z-GhBWxsIp5~wVvyP za=Mlcr>{`K|EFZ)j&=mXS)5$E8ZE??`Qw^`A+cd)qcJ!fmn7} zo^MUg`9?2DVp6mY^!g)8lf}PJCnQX8T4#U7eH)hVmM9WvK};sE9D6)om+E;3asa|> zb$?56GK%OK>FA(ysefbbAmw6w{HiHu2=o=T8h-N6-lJQR+1dM!v1MPFk>|DI zAa=gQ&zz8?Y6$FD4`DpRu%K2nTAO5>D1F+g4?0+Y&RLG%Uc)-Dl;N zb<*$(IRZvK8Q<>@m25As#x`1gHY<5z1qq#ZUxuLH(;&k}4@W8aA(z@+KL;2kyEseC z@49X_-9ALEc7HquXje2wi6xB(vRuz6H%A9N<**;W21jqxj;t-MT@%D!WK-3pMxR9_ zd{}bZcuF~{M?iH>xb3P_bpW6!`&xdM9wmn-s;`0zA-IE&9foS#ndEWw`@)}CMHRVf z^qS`(6QR4(y}xQ#=fBpx?`4z8BD2N0Nf`bf{xV!(cz>_wi_aOg3p(&7JAArBCu-Mk zC?8q&)z_;z(5F!3xoUW8@(1Svk8Lx9p@bTZ1nUZ8_4(|=s>B(Ib%7}1Q?bDPxlr9?UBY+{^5 z`=_abe|21r&?e_3k?dq#z@e|+Tcr6orA=o7&qb5hZ&F&fs-s#2s>#X6QJ!3XbbnUAR62i}sr_O`l%(KWQ^ z5`X{utDlenj{OqUc$FB))i4fN1x3YklIY8s%L`WnPfchZmp6hRzbWfQ8k5H}Xxbspq_JW@{9v+Jj&9cCawb=B zF0QPrl3l?MV$T6zFzDbOi#&m)I1VNNXX*mBWp2-%!YU zXCUsrS<8Hsc12R@H*QdHk{E?6CVz0RD7RpQ2RCbm*ZdsIgHo|aKGx#@c9t%raXV|1 z^8lA#nPPP{Me`f@l3~Hximhq!;2@2gSesw2-JpIL7jf`I1@^zZw`({o(af)QC+*b5xmfPeM)61uV} zQrC75yx7=w_yWU5rPBSP&7aCKfp%-&2*jKjUqBrcY5blXe)|)AoGq*#S>1Wc2{|3s zg#ZiJd0rg0zliNDtOfBlaaU{(IR?9ohQ9K}1D| z@*qJC3!8tjTSQg$NE}h1KDQX^-324$5}Wzu_y&v0U{c3fvTl~Vj+Liem!JBs*yPN9Y zsRHG{Qw1^h>312`A2#MD8_b==PcSZ>atMMY*#>Uau|)P~%WV3L+E3%86P z%oPm1NV!SwOjz*1kM1^+Eh%ckh%n;W8yJjZShc_Jrg~WqUw#ww#vT0H!@DM&zTEyg zR~ey{#kcu4Dz$bX>59lAELJpv+zxl9qQWb!hW7hFD1QU@r-i@o`Vg(*8`L!AB)*Ia zFNL!DZ+;8B(=N!7C}l}6XYQqN*xfXaC@7^4r5O+FPr zR3-aVZ$x}mrmOHlni8&|^Z4;S6W1aP0Da}?UfTOguOSt zTeXbV7;RCizS?2q{{8ewb)5;8=YedQ=QQmR4}YPp#D!XEpb5+mePl@go>-4PBq&>U zng1(qpVv}Pu8bW)P`zBOJN)&T1UaWQ41Y%s|4&-S6)B-jl|!H#-4ll+lpE^KSW+!c zTCF9F=Yg5nFCDBthnAS^4>}Jcc zc7GWSqYU9+EN!M$$3epduy>zAtirHg8i=!&xNwNCGhg*PHyj+Dx|pB6>1WY>R{w7w zn!p;Ma@CcwKa{QMx`tU++Yz1&^Lg6S<}B>&>=!?%?Y#uOZ@Yu8FY6@muae+R1*!yz z7`wyC$u?^0o=Q;`HQhwB(BV>Su02^j7k@9sqIydF_s->`*PQSKzc#CO={;XX33YEE z#CSxd_fd`};}59GedM`#v*L{pc2}qGrk<697-;~+NZ))@356J`0PJFeb$En{)JE4y z$=5CC3yz^VL*H0ysXEnJr#)H98?=6sh@VtZN+ZirFB|!*$-cL<*C~JIvdzw4kAL;y zJk)q`1e;oQ=}u2Oc%oWc8Bc+KEd!fKNPWJJ?(UJTttYR0g@tWO7R6k)C0Tkx4;P!f zo|oIZyUSXGJ>{yuK!<-ZzN}rRmNHd7X$v2C7S9cRlX)xe{|nBwFb;LW_nPi`&+raD&aduG8$8~w`M>6k&lFwgIRCL8G1%+V>wLI52`3Ed$kkpsl)+tN z2h}&Ti3&1pkHa^fFD`fNy%}f#r<@VXeU=W3%jTmQ>PQ)L@T{gZ$kakEnt$+ry5cQ< zZGJBuORSE%UjPTIQ*RUDXd<<_Fj`{Xyuye%J-I5Uh!UjZuBy_KF<%k1XBn5K0D@z^cGAO2}J(_gUcMQZWuNy=Oi+i zof1se_yr!zd#-H-E|fu$nAq|e=AdB|!}GII3sVJLb+cJ%0x}VuLOUkzT8}>bkarmU zQVomBoU`TXy=~3ECjI-J-rM7}VSj9kx&Vhd1-$nCYZ_j+f7WKHsI zJay+gt8gg2nVfD2H-uL@Xe%AsFlU{g?TFUQ1Y8Hs;z)%51WDP~ThAlYsT4ZMy!T<- z|At2KW#~%Va=L}r?SGa&q7yIa;vUaohKBi(;MqwcRbXHh{C5Ir}KfZTEar(LxI=>kt{=8z44)9 z0vb_ib?Rv!-s1*U_TFw@gX~x73)rE?LlWILHoQF^PNPyC6n~y?x$t)`vnd#v8Ggl+ z6@NO;puemU@S}OWQ`9gBnz!(1|dJ*kBJTw8^XTYBAQnk~RW?|%+6D?BcClR9rAH8$L{J8|j- zg>Gw{@4FfPg6w;QQTncy4f%0du)Vrr(h!MhSPij1an22T!Led2(|56le#k{Z6~ z@09N>0<1IaqWkf;?3I?>i#F$6&Y##v2t1(3fIpKIT|37n0^YZ?UgimlztrS7hK@QB zeVwzKu795jj!lU7aKB;j5-N<3rc63^qUHu~a0I_d24mY!G+Q?szUyYeWYpmh@O#2F z!F~yLM4Erwi{?eBavEJm6*~4H2oj*y;^D9Lc>l9l(T;4^>1wZLt=0AHJaqsQ85huZv@@@A+}X4CKVg|C>i7Y$tgi^lEtF)jPCkjZ;Q z-mA(%mThyO>{9EuO*1?_x%Y8R`?b|Xd|s(x33fR`C{9ZCdSh_u({lrV`}q!JDd;Zrrm$Wd8+)8%%t5g_By?magDvr>Fh3hW>c%4ebXxy zJriIF3yHdjIB7_&$2%cv=D@cFc3ObE)KWoXfZ}?a5_(yhzsg}^D(N&>!V+QyiZ>eM z_og51PgLP}T^;YRun73vp?0P+h1$?ze1A~`g^{MVVaEh0qureyuv0Vr4TymsH(m=2 z*7*TeeRD$jI$vWrS!yiawAvOcOoJ?rXffP2={9Ay5+fqfb-fD1aWsYU4xQilJ~9Pa zbbi~=0p)lNCu(oBe?+P|o9qaI=YN<0 zDN+w|)UWaJ>%1I-^pM9=@_1%{Khu%K4_VYqeSsOw2`qB78>Z?ES3!q9hklQQff()v zCS7y+c0AC(vuF z{P{*a+Ru1!7{msxwvCb_KtS~HLHzQ26^qrBsbb9z=pCa@B~K!yd>|La-sVVFszW3m z@p-=Fl}S}glN9MbnZwJe{ChXvxUyC|qme?Z{fRo&34)N*Iw=tf)ML~M?0<)DJGtus z4(M+9KxV@Zqn9?%G(IbV)i$rd<-spxpSR=hC@ZhONENDnD!*Um!gH)aYur<9I{zlx z@G29k7&lU}x!gmx?CGVQy4YpkaDzC^UpCLLRRqN~@ls1C#j$ijQNKtNC!`5)Q|Gl~Fj%U#?0M92^}*cR2sCYoqboe)3dSJv46G1gGOmKZ>X%G z$YYDM=;FeXu9G#+YC%Q6_jsmag1S-GmXS_QE?vX=_&7dIz0x&i4=4IqYU|^;_H| z+dR%q(_c&oV1<0{0`R6wOm3pf?#{2-ov7o2?-In3@GHUJD1S?r-#3~+fxIur-3c7w zQ;mt~$nHPx3O?^m;)2+U@6+s}xx;Kz%#UGucmFIHIv*52vyE=4d+y#UWd~S-D*QZV z;ip}!_kPQ$x-R?QL&<)Ta_bCJYvaQQ6>WMHmL4U~*EIPP}TC@0r$+Z63hg=RE^Jh>jQE#4j_(Zd_g?Yl4viBJ3-gdl#FAd*! z)wPQWmaerfYuIZpJW~92NAM!de%t)@Q~!#7QI1?QrGK5J>G>3tVx?`O+h1!X9BuWz zr@uvg;mWcy_4?DywN>S9Ulfi^GA&vnrEE|puQNFS|7x*Il^1(-N8*R2k6y? zov{mbCap9rbe?|Aa4NSjSmOmf`hBb@lB2=t{I_zFU9FCl!Ol%)!`R8phQwEJBA;D{ zF?vayuYYxh?P(9`EX$ab@g!mWr~k0pueN0;GG5QpobO(wALR^{#2!Z@62!eH*h}1d zQZ^Pi(zrPO%U-DP109deRK%}tcz6=02a~D$df;Bz^P;e=xNN(mC&78_C|K`tw;F5u z@y%sgD|4v_gm?IJWp4nzgyt*a3#BnbZK$Vt>Wv4vlT%Xg%LhbdQA>_YWRQkX@8#c#Kpsr;hLj7XCTC;B^5CAhmhAP*Z=jU zRI?^~Cps{*X9d}8_N7wX^mABwE zkU$-~3M8S83=#I-osKTMLzn;lvKY4io-Y~oWuewsCR?EST8vNqAA`d>!utK-f`2;? z+&{JcH(*_guGHR*-tghL+lT8Tlh>DLCjwcJ?hmz@nvjx4sT<(s_Wb)MI9L|Jt0&`oBcyrLy;&Kqw`T9bD zMj`bcJ-AY@nQg907l-npoWBgM762&*LRQURIS3WZ2`bo~Mm=U26Or|(iPVCgvGK@`1Kcy0Gj6h`m}@w(Y^d4Qt9 zdzVx=ZuLtBzx}}C_vFDZV&E?NFDvdoK=Cmd)*3;%oh*iC@w=0|9)Heg{WOhm2{~#^ zceMh@1n}%T1j|sr_3^;dK*-Yof&&3{6?nj3&}xeEqhSZ3HfBXDkCHm z1$yJq`^&wp>!bNt7JofKsTh%X5s}WMN85BZ^O0{K2)Ja-UZU~X;~90invs_58xE%+ z^OquZK$}QU@9HybtcGL?8?;Zed@2*sUB1u36cr$ULh;_F!lSQX|JP~kk2mZ@Ei`T+ zT|i~l`98Xh{9p&gdhI+{TP_lTO^TfPn4p1Vl>iE1$9^RN`+pvTN)Gm6F^$JDe@m%@ zxLK-e40Qs${rg9J5FFCxM4mVrvR6-{S}ASi(BRofho>0@eiy*c+JYjAc!+)uBKMy!!0(!|Eju%)tY!@*zxNOBDG3f}A;dKs_bA#|LqmjCQ344zh z&tau<&n9jCf$?8JyBJ_Qd>_Mr5Xo2Q+sz}FqjTA4eSazgZ*HQih37t2p`CHVR_nKh zA!5-R0qQuAKoQ>AU^0&7j8@=sFh$B4`o9nmqLIQG7f8i)dHcOQ-G46qL>4b~-W?3z z?b!6MC`DKxIUc-Gct{4x`CYUocQCQv>$7__5kIzWqg~(rWC5CxkH_T?*UEpM%_5o$ zgb^r1)_=uDd;3K6D<#eorHKso6_Z!#_46%|O2X)EFq_%Xoqw>~ve;UOFRO76EFjc_ zvEF5^#s8}ODeO%roNTA_R{w_yR*zzZ9}@-AC~aQXL-trl|D{t`4%!5wum4*u%^FBL z2|;gX6{cvLOuKGOUU0h!u2gb)NY=!Yx;BWhC7AlRwKMZhN<4`=8A z6i{KZdAU2MFyhPAokV~b!m5Ob_1Cs{$$w*zAj2}kcKE->CQwMr9sLA~V-uhjnIvk( z3496C+wc4YFOT3(k<(B+0}9k8gfp0GjVc`{elD!_Zdr~KC5LoHLF_g1E(;>Yi-T=1 zz&$#usI|Ut+4X3wQ*5@LXHv-G!|Dx3k$*m2ZrA_UdHw+r3+P*x%_EqxmY~V}bi_vNWAYxk7+k3LqNMSybhV677#_HbArp0;EOqsee-KUf0`9%+h@lak{_~AqYTn{H%7K5yB2!BI^J;TF#cI zY&Q`L`w0v<;_|!M5X@9o{5Lfy`l`eEnmE91w;I>{kmgv_Dz(t8=c_-=nal)FBczdw zP`sHsw_Ryb*U8B!K5~vjNdBme4rJuqEn-~lK0Bn$MbQw5`09PamVetkF|4MGQ`BmR z_*}ZCOO%N)(FAQEmB|7T%PtZ9#xjUR!v-p5aFOY^xJ-SC{*JDuVD(?>`$+~6mH|>D z-s$)Jq?59eIv!63(-ZP8nB8J*!Pn3go)h}FNI>fykfzih-ZcGEj=Du%e|7)}WOcaG z`9H6R7a>(Cl-XbF6o0NZXs7qBJ!^HD$QAW?eQAe@HbD6d36BjVJhc`gjSx|~!wuXU z&nd85Y00JflSn1c;(cQSu@lhsKJI|vnYSgyrbEF(-K98I)6pZ;jlti%Hj(Jv{?34 z!e`9q`GHd=R@z+$G9rA4!A+#mtjGgjxK0B-{GCz!;p!lP_A~il3d!;T%heyqQbL7y z0c|oR_u*z=R05zR0oFY6y5;{vrGfT|QES*IoWS`SL-~#^fEI?=nqPloKYgWf=cu}B z4wn6|oF@=Gq<=`QrV7{jw*it7ef?ObTJqMH)#{ZZyKaj0zYGRMyVIo9`rj_-8z`OG z6b4NtzS;uU1)x(xBNGdGW2wyz@md~e=%IUcjorK?Qgz2G}A2MlJUr7G! zkLM8wN|7#*J3K$QVlwGz>2MPYczm+EF20odpY?x7AQbk~JAKh^cA^psN46a<4_44m zccU3lNI5MGr7qP3lt$rM}H2Hpx2B&*1`YmQxtWbe-6O7$y#Ia znM!R{KJyX^{r`PBGerLkC#KB+gog4L4N#f~s6AA`^I{-1`}y&f!gjI#W$Jsi8nEOJ zHn6L0o)lnqfDuEJl9GCZKIcok%M|j}IaP7cLcQt=CV~c*tsfwj?bD=MRvvH6E5X3MKz#4iJ3`RC+a92so*2?~P{Qz#(FaL}4?Yoo$F;!nyp17H80b zs6k_!{s!BVga7$*7b=hQ?)!8OtDq*wt)59N8>qJ}c@Uq0kT_cywnrg7;A$}fd%q_E z91qYvZ2)=*BsL z#DZRD#P!5k5Ia$Ym|U^L;SfYb*2vH9FD(X{dF)pOqDh1e>}0QO^;D(YGB`)Pty7d*o8ax=yUe2y-lr>StiyMM!- zV+x3RO(Cn-{RPz>GKdJ(rIJY4&nHK%;PNYwb=VLX#twLAJ{d%wx{AWv=YPRig}%0v(rMmH@A@Q1EyMu z`mHVnX<5P7`D(@#iuCI78=OBtz~b30loZlA-k}f+#NQ$@-Kavjf>#BXxPMEnXApR3 zf%q=7QfKoIn2%@208RNIkr|yzVb|0B<<2P$NJJz~1u}Ld#Rxx<%0 zy+Q**f~@8vxY{=mpPDX?*{&hxcdM*_Pc<9+y-Pe`>~usMHo-hRHWO%=gJ7V+Yn`dL zL{rBAJhAb-AEY)}*Ra260e=L1miqcY4p7OMH*1_tEPYwrK;@w9?-Jz;PC1?Hp8{<* zald>~hsM5lfJ6>}uOR^U++z5MRy!Qdl9lq(=Cx&;7dlg~XHAb&ZSq`s3eTG9cT zP4(|tvG|Z?Bb8Ovt~@_U=DHru(dsqTUcEz81FaiAR|D#O$66*yfjWcg@$%H{Gmpz+ z^u~k8`kVxoS}F6}H#7>b^31jeAaL)niSp3SI3b~)pMX0EYIfR5ba8B(MoAa;t_ka)Vk0BVg{p(UIw;@e}^%V(+ zDLK}@Kr(7K>#Ixl8?k`cAJHU7Xyg)*s)jCgU5S?J@<&_u-J2;>U3^y!m)6|W;&%$0$%vCilS~Dyl-WM$W7w;V^mw=ploVhZ-Qp9t$~#<=<^P`fLpg z4GX2y?RLB{i7`%3P-3zS)Kb^%ET_mrKEb&V^p#1xpntd9E%dfSVJ|f!>VYXr#FOP9zxV8^ujE%hZR_Oq$9pYsDWa`@ejCtR2iG5Psk z&Oszi4jVygi7b`>Qj~OjAL!O=0V*GSr@Z6${iF6oz14IsSMr-9@WFJ+&S@xsqnncj z(hwe8)|W(NvIEcMqai53T1Ef_r1B>M10EiQSbqX&(O4`eNC&AD{EQ81bfB@J=&!9r z`G6MFs_p#ld@JB2z)q23{S72%;L}VQ#J7LN&6IG2vD5enA59j7`*0UfL|2_@UrNaf}J8V4wGK) z)!-^Y5rv)~0y@7+K3*uIuZk6=T=D>JRWE+v8_57QZN2y{Z@4Orr3P#GsRtrnCkc8s z=z8`RRulw>ZZ*1V*}ph|f1(^bNI(Qp5Pwq4w+nFLi7t1*VmZr(4p@@`_&SBhg!Lq) zZg6+DQRnyU1pqgobh>f>cGurRMD#RIcgW@oMtbJDi zRPm^m4M;`5!)k3xYow20N!{4hbbpE7#!Jn$%)@o8AOJ%^yuV$X(;pF*p38ZAAW*GL zCGS(7n2KZN)YYUADv#e2Pb3yY*e!Ui)%{!MJz%Jyfdq=3>!a*k7<4GRC8Z25#?!S< zu-^%TWfOwfP!`aJm(%*rAi(lKw}BIf;>1E({ij_J(`b~l-+-eG@e3Pv0QV{S)eC?8 zU?3}6&xHdqN4EbK=~_W$oMJ0sCwiR8gtxeCFN2S5jP`fr+AoVZHJ$|B94SJ%kF(=0 zYlZj4(LK`FvP6utJJTNOoqYJ9;?0=^EBeaCjf7WTclsFVNG}{?zJp>9;oVja_spG< zAJcYj#SUcQVFG(&SxMt)H=2ycrAL42F$vO~T$~2k6}5aiktUv@QLHuYn=!6zHuU{` zK8gKpb3`E;4U5yF<=Bw1{H1xHNGtKYLV_x)7@q zg8QCwC}q*_tA;Eh1W&Gj))ieTlZR}r)1bqL4(ncT!tddV&SQ*XZM5`kuiAe-HfAf& zX+{T|C3+y`yij=C6kH2{bBg}ju1l6 z4i4_68iOUgZZilQ^=5dPTM~bw{Y@LF$ZM#q3Nj(cJ2$yhq%;0um?d9_zwx~)OPqO* zWYXIxnBesjgx>!E(e7S&a*yfxRxasznq(9k=WI77&+D}{zx;^0w9-y7ob7Y&k+V@J zjKd_Jd1`ySAR1ru7k{EPKHq^q6O_Qs^uNGs%xQ3;G9Q4kiwzk_c7K43j)s2xy{k_v4ZH9Ew^9{H*jcDyP^|;|)u} zod&*X_kwM;)YFTc`!9thN6Q4z{Owjdf}0$_ zY+YPu@VFeqUhED=+4X-+evLqycT2XtWI8zP}Ax5l5o4@2ZnlJ^1LRLu}8W=RusV{Wse_~a_9^l62&W*b{u{g&a5?W?z~ zIlPtEo;yjsm~&vQn)f)(s;#rb;?f+`BfM0Np2q`{f197&Jx&!*X{eik+b$P!Tk>{B zajJDN8tN(B_XpYCnZw~!|AKf{ZkNsR9Lu1U;7W52K%#SmMKpcoQSp9f4y#4;q=fY2S zh6n=pn9zSEr|rFQ@x~M7ir)2DQmXxZKD)D%T_e)ISJ(ReXlSn~O< zD{?aFv>k%3pKqzYkvo7lFh+Fhh@)QqMxK5lYqc0R5X-w(CDttIDgp{2(#k;-9AAu)*fn3 zDU9mSWQNOsnw%og_EfA7E9q*0j;M5BjP5dsa zHT}9oE@C)w?1=1=V-xj8*akG77Eb4kvzg;RM{d~R^V?Qre%BV(ZnZ5U8jsyeWid&& zUOtrxm(BFs%d>Z&`OZ)Zq#t#EFPmZ1veX?#@A6Zs%N!w|CQV3xgz=AKLTm?-OsIc( zTo2qIz6R@!$t>M8?tK1C^!{HUyF(#3N7&K@`$>O+FElbiRPw2^eDtq`=vHbKYGvd& z1HdpzEL&looTFRpK#~Dt?HQcb)N9@vH3mea8X#Zq+dq+^&aCZnY^Ji6Sog8s*KjKd zIsSLZCvz?Nax49~f^I$&L^7yH%^H9E@OAHy5Lb3I>Hyv(*FOHnGr{WpY5(V`2`Slx z`>?)E#|`l4UDkS#B7;$vD@KNtl*R2> z>)=+D?sedoB7C~_e069x23Qfn7o|`s3%?K{&w({$X$nASXqdpizbp!XU&w#`V)(Ai zZNPh^z9$r^!m^bw(Si$rFOTa(tktX~rUSm?^57QsZbT@2Y>q=#Xny4EaZ;>%RvmA#^7!W7FR@zC|3O@2dK_x4OoUHMehS_>XmRVPz_nUW$ zD8GjE*$1Y>UUpeutzq{=GWeZn)pnB*jR4ksaq_QoT{|fgGU$YyCuo06>J`$2cVNee z7?H*ccsc>yu`ZWll+Q~Jn_1-5ph?Y;1br~QdSyVZu+V0W<1;i2*Gh3PIV!8TV=}WQ zHq#OJf)82*f5T8R9gKyA#YhJCxG36OuNx)o-HZ4uBLMYhI9u#GyY^aqC`_Ylq-|%+ zr4Xh^yL)&R=0RDGBVK=Lv6O#)lcwN1kMJg*s4U`ll}^588}m!?i2uzCgVM4u1DWsB z4bs5hA}UJ?mJSss${y!v685QG7zh~-MZ~2yV@Q29>lmG!#nKVWl?iOq;`MK7y8(d1 ziY_De79KWR(EBalcp=8*+=*xs}YdITW3+sP&@H%_p?=bqSABy?6 zcn}ErTo4L{bAuJ>FCMRtXtH#s9rN1hFM0W49&SP5n&Y*W3M8N(9|cufMb@A1iS8aw zsUB_`o*SeWTN0_{gE}zg`?adzu2-@p;6WI6VAD|#gVUS zMTWZ!?8@3hNfsY;8MX(DwN|9Y|q zzVqG1+m^@vuti^zXvGXC?e{v`=x{uy8-hdxEveckQgwVD&njw)Vm3QiQX~AyqhGS} zZ((Y(BM`Bag-e1*^Sd0AUI6EWS0 z`_2&7!7HhLiwo^15gT9ZdgvR{K;D|^5@ir%?>r`@6|DGM3cdXT#a89S z{i>BauEQJWHCBEm+VG2Qb`7 zju;Qap8XHR9|7oNW~&0tjzea|n}4E-KaGDb7G_(Wd;JswV9QlD4 z>ST8AtRJY|eG3+juaI-TvR*=%9eUbbP4NYd8Qn$qHF=zHO%=;TPK7!ZNS;J~Bc8o< zF8F#Rvho@cI6>+hQ%W7zuxn zN8XaD8teXL-~_$Ez(cNcOq&{JInQHPUDg=1)0e6Hsz<=!YzmyUn_ifXUs@s#x40gi zt#`xJ+b+#<3>uF&+N~gV#AOP2LT)z23nf5Ko_~3q@dDB;voU>0a{nUMsj<}`bGdzF z3|?(7Rj+gTlx&3PZyXUrLW-#fCk~)p4GWsmG`eI=$V`_F3 z_=VXrkvl>0@Uliu;ZfUilQmfe0|{oh_^gKdx2Ps*CACJPgZDGVt=sx?Q(w_huT%# z#I5Pe{49FvL7a8Z@oQoUVEG6`$7Y-+wFXez1 zJKa%S=m^KxlJEZ?09rt$zoy-pN08;a{Bs@uG|%h-&K@o|;QI12a*2n6lIF`V zzTKE=HG^Kkjl zPCwP-AB88+{!?->np5bz-nox4Q)i)R{hEGO=x^P<7bi}i3$hCR?f-x7L&G+mC5_kI zNuzM>=4}idH313Z$494DO;NSsAGmY>0lKwoiRjUyV#18MC|A2N_HSA(75YvzZ0C{JH@rvuWNfz|1ZT)%H+ z4gzsMe_XwDcqLn~HyllDClgF;O>En?CKKDXZ5uo0Bomtx+qNdQ-<@;Mx%Yd%zw_)) z^{T2LR#&gyJ5#4-xhs&Hw*Sp)nI`I$;1J}RCzn$w&i5S;zB105tnS?|W*;isNCV%S zI)j~keWfX)di@@2iaQ+D>^$@Z*mTV=CG2!le`=BmltlR2+~OLyLx%_tdmbsb=kRB) z7JXi=o*zUV2WTNJ%LV)e_-h6Aq3Yu^_nNRtbQ!rB^VKq%%o*%sJ?4S2olt;sIcJ~_ zYut>Jy0UlL)@^YhlfjC_pb-NF1%>#NU8z}*dbukoF`C9iqTA{usSP!9UT-=H8~F~= zf37E+!_&fs1loPB)9x03zScs5x7S-hh-gX@VfO<>?Y_xo9o5^_(Q%dyA=tM$gSFWb{{dO7oebphURoXrM!e=98mt-@y2e!sie`Z{k?;S{eByG6g95 z$d5c$AkJ39BGFtD#;VWEw*&EnhxZb0e@&CTb5!^kNgvK70=NIAutQ-xyRj`tHd{~D zd2S*oDW+)l=PPasQI{^2V4t6p0_f)agYry2*|_7GOJyo)t%N(|cxrgiohH+B$JRtr9Pm+4C2PgGz^Zj0se@Z2MqJ`9RD1!65*_|x5p2t_6cK&{GfaLK8Fy1PY zN|G|tpq;+YNftyT(If@tp~DEJqCK9;AX7jJyL04xSC%9a1kK=)ELCD@Z^yUSW5OJx zL%(#}2HQA}GU{pQd-!s8matffb`Ro%Gn^{tdV^514briDR5aJVO`ht2(H$v<^c3Ujz<01*ZT{qCz5H8AtzFgFCo|6G^Q!FDaj!t zAr#j0_irjG-XQ&Nb?eV_eMWs877&K}M?rIZ5 zktLe6QuYQ9fwjkevasI0VnJP9{1{Y9BK*=6Hh*Bw?@kwwAFp=h>c|&yqLNX@vQbk8 z17ee{xrMJ};J?sPB(|mzO8L6GyDwF@V&C5+W<_&37SB{Fv;Wd7e-83gq8==Pmzf4Y z*;0jhV;{(4`Sfv6UfyJs1;U%)Z!IGy`Y)5k&%dB^< zdtZxaR+#pv+K6Tde}(0?+lWd_XeVF(Qy*q)Pau6q^k{1u&FOfA)jmOhfPK+p`&F;^ z*gA`2kbN`is`=12cfod`q-3SHe0_C%iiF6nqv3t*tIx##%`}bB6XtffB9^pC4Z)UsA|Rh|hPkE6Mvhp>xc>Dtam|B zi35&mCiLh^f4vHWA@F*HHq`{de;k5dvmbANj;4pXRMa*}g{Oe~j!7%3=Pgx{A7DOW`YSe5-8R zw-zeN3)&B?C3SFs^KQ}U{TlM+krI!6xM`0g5p?O{t!IEex_7~eg*FKE__i^uunemz>?vN zS)iVGK59B^$8&1(i!I+r1#j>krMGG;q1~Q#bJ*D?&1a^|O*PjG2cwtF zU#HeVdr`_cHG5sh!9#50XK6OZCX!cJvLf5Pe|`ohXQ&IHk{)jMa(j&sh2mgmhT+j1 z9FR>8i1Ru7&tiQWLtxw9;|nJKB_F?@LP&TjAIAvV(u(V&ra8+W{iTGJwZLRq*{bLL zcoZvQbVShLf<~5ejd|)FW7hrcDmq5LSqO=M-`MM&Ac7)1<@T_M~?0Z5zhz`!XkrP0RwsVXMq@iQrTY$6FI$d8)91j>n)lyS?z8Gr>f5&AA z!q(}+1F{u_T30oC*7}gYus;Pa+)W9R;_hW%Yu2-h67w4HV81&tA{A z4(*Oy+WUBFT_G$>+_r0~%gP{;t`)@@AIc8-FD9@Ba29q!cm zsx7h;cJG>>*Ij45rtYpNOy$BQw8ujgJCFKZpR#I|kqB7VD^t!261KSTe}@)&aew|S z7M0|?MZ?46GNbzeDx_S7IDT4_$i;G#Om1C$spiEti^;@yE}sqY{!=Gh2{UmrRj?Rh z|Ai`T<Q8WL=M|oiD#_H}wpb!Ln5sx6;Fq%oU3gaJ@)AHhqt1XQmnn{%X2XNEH|nzt7iiAfP#0e_8xZ6YCQxxZk)J z+Tv=bLhDoJEB9;%A|5@7awP&%YJWy;YMd&%PGbZpL8!$DSF|J&-W+vMsW35I;nbcH zteb{*I=F$&Z4Q2g?sI*a{oz9Y@T^QJXIl7LCPKJ9hgd|I`p9*vTJ|DAo06pp4SV0_ z8$03TwJ6q8cg(PUfAo0lI9KP)jLTd^s6C$xh`7s`eL*@fB&vSgK!<%9!H1pvbP`)! z)?QW}$7j87Z;rf0#UhfOmv;C=?C0&_H7y>rv7G(s3p-H?e`;{NIfiOQ>xF&ea<;OW zL^)&y=O$_!Q?LVXe1VI6Rc?>xu?y|0-KoCoo31N!x6a}xtn92obiI;!J zppC43o3MYN7_*;q%7BxP0XRRbiq&m}@=>TuG$k~*>GD_a%OJe^m5E>yQ+SBK>NcwIy3 zGV}4*tzy#bvD&lY5uMv*aeAN#(;I$%;An8)Tcr;dhVs5c z@e8gP*oaX?khzd-7$WK;6|4=j{yzSO?*uxe-O7 zS~kU&T92&L6udetWn!^dko?SaK$_U)9WG0`gZje-%!nuyk9e@9ZlI|hr~qTyBJ#{^BCqA84#@F_o)Y^zo; z#jlYu{+lSN6nbgD0)>F2=MMD(hL}NchFkpiGy%~YkEu?yL)!BV(~!H&PNxpa3)IP1 z7@|lV@xTD7^;oH^a7f}NvoIeYAE)a*$qXL%UkZbTO0SPsW%j#+Lc_Kb8U`Eff9|&@ z^EB6YcYvV3lduqk-^yoX!g_5!(BB9spJptZP{iqXD|#+8ux=!VjucO(xy3j*2p>a= z*+)d9;mlsy+MgezA#K`5A<1%aP8j_Kq>ps@NLU&ElB?D~!s?E-qaler9Ti2^X$YvH ztJpfz1YyJ!lne3W2`N_uC3lPSf9*WvDizNgE{jV^At0&u9>Vm&qi1++l=G3se2o-a zuv_ebgQUl!l#_`Lc*oQpj5grNPPV?DGP?l5e}`##VA)#?aVce*ZcfQWhK`+m@d zdK(j)RgO*#n(B6SbRECGm!nwN0OS51a6qRkY4<0cTfA{9KujokB&ERoe5@xnk z@XVs&#~FEJ^-C;usw*O%CP`mJ+)uKL0YrSRnVDcXvx9JoxrzoON@%pYE))(~guO(u z+$9e&LJDuGj!LHly7uwu#u&YW2o90=9Y>;DzG|AcXG_z8=iRUytzf#AE0`af-*esd z?01OoV-K+)ZEWs)5+I=14;;7wdsh!si!nEH*|cY7>sQDJ)dx^No-a5_Gq*mrRACtvKwDOrNi}4X>_h zTS0cCcDY^ctgy}bU86p}XTMEey7s6&-=BRw*3MiVVWwWFNv9y&2G^D82{&~L31i*Q z*9)c+{^dseHV|6Ve{efSB9%>vXe^JDYxj(Z`EGjNl^^J;rvyKEJ0RIl{)NudHGqDw zO`E8v?L1(V%en&Pl=Lz=o?^>Zp6o?JK=o)Zz2r=x-E$bgW2i zzrOuBQ}RTD2*=P%|HM&iWt(VKWKsUkUtL|YXo#&Xc1@+#e|>)=KrOL4l?qrbSW4yP zX~U7g22^a=7|yP^#$H%6EX}zzI=w`q$v76F3cYFrV=|SV$fe>3PAUjq^g#62MK@3y z2RnV+)iYW1nWFr?E1v?jU{*CMwOWOuqn5m;Bpx4H3$1U-Df-2G8KS@0w#5yu^PyO( ze2%0md^+nMe@kpXW}Zih_C9u)0aDo70%_SmWo*lDw;VlRZ~9zJL)5VKO4GXK7>=;_A9D$3wP#cgg;KrX;BjX6o&Qv+Kj@&X6qyvwNB&HBVPIn3UA5u7=ku*i;2U zP%bp6MisIU3a(uVw^*$!&1x}+Y{wy;N{{iy&)+u2VB7b2hHT}xB^Cyyf}dXrzw5cq zO1pbKf2PF{9un)O2h0|C9BsOB99?nquFAlNPlS1SSca(>7$c)U1|M`BPpF1D60SBy zrdv(0qi#F>-;Sp&DPu`7EQ0p@>_uS+rQSbU2MEg$%y+rOsE?^XlnO*zFTf%g)zYD1 zLOk{S(8P=_MEj!~jf4>pTPwYxXW*%aSZp~q`)H;~htA3c1 zUItwdH8~wyV?q(&a$v%w;UxD;ZN+Z3&Xfvz508>i+~Ko@(CgnIXiG2{-zKFyJ@=BG zOr4l&)th1dwq8gh@}h^P@$D$EP$Bn6`pby@*d^7jAZ?{wB1eZ;f^dUafPv+NFCuCD zf7hKZi7&r9VXbdzH6_mVuwCnjNqR)uxYO%{(7NqCYiICTQsWJ({gre_l$rcTEQBu|%%0%VgUn_rYFrS^>jl)u#4?hX^ci;TKp*4zfq{aL}piGC8%G|hjX5G>u;Pu#3 zFmgPYAeGBX3qklQcDh(o0{p#FtJAUB%l+98i4-fwAM|$DJ4e%nPFFjk*AEX^f0;vt zV$lvJbsS!sM6P40z*72aB2N}fIu&W?45>Cu3s3$zB4!!8an&Xaf1=11So=$V<~vgM zg?`qEiL6+p+?QEqRZ~FR9-Yxm6jJy$PC6g(Q^-A>GqhAeE zj8EkLA{FTFJiXBr4>^9GS0)mtsq29djw2($AwW*M}wbSl-Yn`_w33_vJ&}|^8D<%l zGhIEDJ9%2n-{7^PeGKQciK}Liw9v~#WP-*+ze7xRrNQ~@Z}aIW$P{T&I@n?r9|cGb6Gvy58{Y2< zGMS`Lom1qL=-A52i?Dk9f7J@iCd-vK?sB_`{Q10|_sDn()Uv^_SjAn3a_SjX$~UVn zTO7P@uTe4Cclje#z9bsafgy6b65xXroOh3SEjNeNoB1YZR-vIZDy7JuU;XyD zJ=*@$=Um>2fb%^l0+Wt<4_3G+flOK{7#1Vw0>cs99~4CHKAEb}e|@M&l2PNiMyF*) zN0oIG5+;k!J3}go5uVi)VfFJ&aKCR^8lyjDS$|i`fW>ZlZ6~%7mO3pId0jJxKdOwx z2b52=NW9o~b*V>HeZ(sayoeu;!YCbg*)bkM~N0V+~-S(5odhHbygLQdDzmY2qSLPbetsRH~`#S-IV zLOw)t)~>YlBro7WU!@c(xL=x3BV|;x7;w0e_h26RtFmTAHJ#y3J6l~6^}a=Hq5TJo zLNgw(dj{JVih`BVSF?v`EXeGRWz)UsRGI~>4X*;|@A{6L!H9(X##qLDq&h7Q#$4{( zupREE1Z*U&e`8^$F|>0f!pzjlEM2uz3~A!^R9Stz;O;*c*N?*KzlVp}ckZGE3{B`2 zTg;a)uj!0uunv$fnck-tC!C@BIeVALWe3#_JznjaUvBmEju4bYIvy@$9k9(y9gL+9 zNRBh;cbY|hfrLawf1_R&2Xj*g>sLHm`E70U4d}Mfe;EvkTYHgRse|RgVsX^F$b`=x z|NKnj@jtjdSNA#i@a9U>qHUA1XQFxf@{yOhXib`kgjokqqAp93tZ8dxa> zI*mVBe~K(jvfa6c^j6jr+kzw)sn7>VGHduqYTBRB`+ixkx3cczF=q_Ip9oh|IblpI z>Lfvis{jASMktRcCbB3-)GAcubXJ`&q?dpFEYA1tmXW8-W2E~-B3t=KFu|t{W3^)UNDDmc=da7iM|{GlC4HLMOOh*+-P>3{9XzV z(YpInwilSb(mZvt`B3LJ#A$yRsk0vIOv(W?lcOP(zK@A4OxSRc=9Zdc65m$XQ|4v+9>4#DXrTm82Je+wNV z7+USds0a)i@~!wJgD1;Hf(E;Fyo|y_Qwf-jX@7ChluYd%4wn5b@4@lO35C2(vxRA> zA4eFDq*yUdv9&oSe`4Btl|H7u5sN^j zhnhx3PITl=c-2(=nV{F^i;7(;sgSgactHfp!CLeosj|N4Y$-`y}fLwPnwLW+~jYpWUzTZ%2o3XkkWA zr47q+(1$P}T1X9A+^_2%e+F9|6w8zV&@rRLiF5ArYb9ym<{QW<2XX`{*8m>z9QE7Z zf`O1bH-DFzxtveXfeDTch{4Mzg~x&#I{)S+4zMSp4+b!e%*q5;4bL(}HUs;DJ+(w% z4Hx_*eS}$ULZP)E%Kfq1K7Vw7GzsA4UfxTQo^s>LMNFq2`o@_Re}P3Kb%r~imo#kc zDpAg0WEwlP#R)cG01Xj-pUWZNy`nCO1H*_xHuA49?NLMKTI9kI-oHX@gZn}V5zS&aeNvGwFS#4!F=IR8RkQ6#(j;E zgJ>`8@(f``Z;+3iPOK=Oip{yPNmc9<>T-DtVKI0R%$WU_f2g|>248HBIt1972K2G; zmRgW=ji%huKd*Sva~6nUUco32OY}C%Jw@#yTffY^*Uc%F zzX*pQ0=%BCX9myOVA3w8voqMsrJc*w3%Gqih0r;FwJP^Qz%=~Od|Y(n^4e)&qem)o zk`=7Lnjpoyf8f1vj9$aGp|CtCz2QxbRSmza_6{|B=potLbrgkh!Mu^^zR~<`p?X!< zoS-$eO_n!N(I>Ci%pEp<_zaH%72qIFc9<&AXti8wxo9)@9vj}^{jO1Gzx`UMWCKx# z(|J*NA&4L1D1KL12#;hGgIJScTrJTsIdtGO)RS0Be!KK=eZBNTN&dEQ~L7`8P{+-Nj-*d~pERdsY<$|ouu zY2*Y~e}Aad3EJogseDInk+6$GJ%lafLnvJ8dxTJ*R~e-vEEd)9k+bI^nApu6d><-E zyYT}ZD2wx;RX{9q@?Q$jXw8hb$BL}Nbclm7eF>sEW##j_jBEwduRecXY@^a&mxwP8 z>tlI~*hJTfy~6B30{MJ)6G6YdxdplY8HD_}e?=@ZZ~(Z&VXgk5vT~-4bG_IQ9_PL* z5*|vbSAtzl*e%ZDarIZLTrE2LhW_~F#v>wDCp{LdkK$dlDuZn*g%v&QD?5EMy_$x2 z`p5CCX-1b7#`;^GqTSnpHA)ji=BC2ei5!=|x11-Js{$)^MkU1J>)E;l79XlGrKk#I zf5_{kj25?MQgO6oWVbU}VUaewLvHfAt#UL?S_h+MbCrO(f}Fcw&$myJeitoRj|yQ+ z4>o>bzApq3nRx3zH*LDzA`&S%we4b+y^eg}?yx$1-ZFLuB1%xzKV-VZ6 zitHFc6M<3m#4)HJ6cWgZL3BLJJaJBHp|)b37sk+wVK$}ctI&KT8zOzBYmLaB_P zQ^CIZVdaVtM*ad{Pl7Q@^jXvC!l&xmu_DxRxCV76$(_MNMDXZ3Osf2B;1dIUJv;|Z3QSk`qfEo-Rh$6mHul$S~- zPG_ym>ZGN;(S=(q=z!O6@aYq4%Yp|D+T7^y{8EWgnPS*cnP80CP4!dY$ZGl5KmjZk zgI*EP8EC1f=|RUtE>`Q(u<5q9w;!Faw-M_By(V-pLE^(OPG56V{r8`%uTMAThZETl z_@TUJe;>o=iVVFi+Fvm{e?CyX*@=l($D*ur>CJgoMttt_mYOK`jYQuY^>KC>Q|?X_ zeECrP_%O$lg6KXzmpSLn#c887ge_U^hQ`5}n`~hIS zJKYHXF*xVwg`5tixa#5ovnBdm<1TGB*b8Vdjb-0A#j{FQ`KNF4q`rAbgD^VNX|t5X zZ3$>`6cZZDWO8}HiQsqWl3s32E1$4fQIkn0r?Af1;Rzndc>U!q_VOD3Q2i;rK+@-M?b@hBQ2-1{z9(e zMvCV7_7!InTsam(`KhH7onN1BWl~Oq-A6L_IvKrJC z;fWHdqnP`5NV$IOBcsFD4YjY`LkixUzHhax`_aj)Nj7fnhA&pux@GPCg!W^pV(ip)6_$f1LX*g^Qc@F3sL}}t^tQ{4%&cb8qV|K? z-$-_Y23@B)m=kW|dS_Jm5UIu!D&}m>CjgJSA?Oa$*%3AycZIWu3`*fY2Fh$d-c^83 zvn4>%)|<{$4be+)f`AaYqctxn;uudfgXuA80SRLaFN1v(-h z;3GZloQ{voi9XNo!LTM0GUhusH(Om7==_ZbPMm8;S4O)-%z|iQ`~W8%CZ}UleB*t0 zN=s^lr|ajzUI#wtQOTXpIWq?zrHoe#>P-~_w=@f^r{a^$k;u|kKV2zgisHwre`&(V zcHhC?Yc8cF1x+e>KKe4eYk?W>pi-xgEq92h*N->!z#N~~&rcendF0Tqdni5R@Tx*J zBkMpU0@b8}zxd&Soz>Y|i=)%o3TvzHM`w3I;_mde;a6m2flPMW;!l(1b-Wz~^__2q zSmC25%87HB@K&j{Upivf!aRe>e`oMy^yxHodgK0VwM-(O*u)+l;ci?bGvwKnavWJ+ zc)y6HteppOd6xvR4cn`lK^Wit(OIwj-GH;TtqsmHv_LdcEDaDi2c@jeaUT#!%@Nb; zaYt=Dnj#w|i%T+ylrRJ|2FBlpB|josLuN>qiS&ufvd~kjLq>=vSFTHqe-LVb-c;eY z#XNLO@LiXFu^WzMp9;R^PyicHU7^Dn+%|o@qV!gAAEi;-CUABS}3P*$ko@T7&(&v z6t(8@GPy3m<4@ve5q-m6f5YSV(c#!&xy@Q+s42r3k&lp8w;V0ZspC>2!1L&IzX_2_ zq9kH9YK+ORlW>^+{)ED~(E0lq)%TeCj?g=PrikXcsCEvqdPYlmq)$~3(=ZDbB8E4s zv{zm}UnrQkpIG0ie~iEK=_)7mj)kp8;D|;d0las{n@&FU-2G`ue-}jJJM1x@(+KflzBP_tH38_|z&AHnS2MRIzs8Ls8R57S%0#cL zLFRZN6MJW<~V3emO*C3P`8pWG=t!(M1jmr4=LaFVeRd6IDP+A~7yg zR|SJ4L$+`*W7L*aAv5rWF?hg9S=HF<_TZlG`!Ml`4n8(*)xPu=pc16#on# z>~p$MRR$DNT9%CBC%G$F|4BLpvMn>zxTGhJaHvx*e{phwCXfIjpx&FH{XByy91Rdt zITq?wSIy^qlC*T>XyRVstxon$5@cbIBYgX4lees^b|jR;^@;QL*!S;qVjq_Cs{01QsGg8+SYxZe^w<%TORDwkZw_ePkD*GeM4-s)-1;a ziHCB&(b2Yq*I#Fn{C{}|#;OaG#pxLG%Vb=t!}Gxf)|k(uhWgg|P$8N#7XkzUMjz^O zb{`%>Vo3=gHGR3=m!02cL8uComgL7wearMs}bD&aq5`X|D85Ca!GFJEAqSge*9OHd+VTXtEL0WNc4Kqr|_5+xV)ll$lO?eVPn z@-O4P-QC@|H)U>sRJRfgM}-jKZXlYLe;3yFH>^x6BtpIhrzMLPGg5zzX|u``1rkj# z1=RcF+0gs*b?MK2MN~2=5r-w%YNl@*nbOK z+C#)jl&FS)^Uk_dl}z@lm)x4KP;c;lamiq_&Zu|RUELgr#8L)cu~e~8>~j;tx)m7D z7A>mV%>e?Le9oF?tL3lUuGecg!^E~90})_+NRQ9dWuM2BobVd3!|=FW3badrfb9ak zb`p^=WZUn3nJCrZPUdm7+rKn=Ie*y$MAdaT0flEA_B&ysNJ-Bvj)!b&Dzg8d1u@wJ2I7%=L(v!_ew9$9NaiibGLC1(JGtoA-CmeG;0-Co67XjE#JxS=p-pfA`{?x6ND&J8jTBk+ zo9iC4dZ8G?O0zu)tIb-P9e=9)XHfG({2r5CJB3heJeUlo6In#Iwzkw7wRt<%9Nfb5 zLYvE`j3*EL<&?Kf%AW_=F4Y++1EiA8fQm4QLBF$<-~R+!^*{TkB_&Wj=E?@uJV-91 zdh|6hD&xEq)h~h0dZj^ehZh?;1*l&0ft&;@%xlVLzg7AWxx(-w34a3n2JGn78vl=a zSBy(VJl)srpe;UGT)f_GZCoD4Garac4?c%L8m(80`p(LfOO$R7#z{&k)~rNGx^bUT z#zEOFK7h=a#P92KeSdkG2efm|1JY3>OW>=fR!DOwe;l&4i2Rgl?{2BpfqD z@NP;gP&7gA?Ceykvj+C94eJ50l@uqkIL(3iieDIR)Mg5TGC~16r=5ZV0ai;fkkCdF zk1knf+gxoU?SHmq&I3U#kJ^wJNPd#qHL4cN;BdM8#m?sU%?WVaO0_G^Q?1%Lf?ga8F!AS<%iZ3(n7?ZOgc zfzeLI>byFXZ3r={{rV|sUWj{t-O=8zQ|?>6g439PQJ%H!Lj_y`0m9u1-8MEl-BuOY z2PAy1BKY(g;OhL7E`cK9?)Bg&18B=5@m6yjWA4|3@vl!Y%Vo+GP5pT`>#Zua27;e6 zj@mJ?P=EVA&>~;_`I;ef@u%iCe;LC$pDsjqdOhv{)nZ0|akyfyae?WWNIhww$$Oi@8$4&t1SC_{sOTmv!ef9{PWm ziCt{#Xu9y4^L~>5Bd(33n{}|dKOC*TOv^^>jUqm5fFqr;x+rURmMihz57-j@rxxW*705LJm*;qFDE>LhCnmmDcYFTy`5; zc7O7-@+dfFuzwd&PGsv~JX57yg$kG1BuX3Z29#cy4vZ@&Fk};28l! zhYU!kr95G3VE|U6tNw-s+po{<%Wzb(KZ}d%T%ExtG>P8OwJDw6kM`z6#C}k|?QU0i zt6`CIdeu6dE47A!w_ko)ud-nsW4H$XlY3wZKu7wmnD_)jBJ`Tr^Z*NJuosfF)j=2C3he&w|fctlPdrP2j09&Qh6%=t{9bzcx#Us27-4mlihiT{jS*a z)exaM5Eg+@^uL{(DkwlV=4zVx6yjGO(n&<@bzuSh`1B;nj0LO=hu_tlm4E!4jt5B- z?1dxbA$@*(5%?hjDws#$Dpu{|x%|06Pa=jvt&&$FpUVYrSd8W<>lp7^i)&IVnblLC-AKt?zV>v z`mRJSTZ&^^9f)B-|L?PBK=3g0141LumPtjCVmF0OyHvm*Or=zT2&het!%W?te<`0qO8^fb5rj z4qOxw97k>o+8;wPvcNShtk!Lt0gB{#Njwt>VmwgHqtIUlM^pKqVu5PzlmE@YLWz07 zm`L8B-9R#kK#24%HadpJm#K!&J^h1zVv1XEPaL!w8g*U=!z ztX3?9^ae5pP&b`ujel)#{9E}VI1mM`jD%4p2yc|k>m>UE`5<67%s`ZnNqTE)nvKKq z0#eIdldb;q%_RR>Rm>Liv&r#(IF^da3qlT;X`tbb!PwHq`uk){DQ!^BpzrTMHi@DMRc9dA5pZT)+Y_THHTpk0p2k!jHya?$hZ^j?B39RaOdgTL! z779WCqrLCP+kXT76wSlm-i;2=W1ynAE`;D7tT!1iAd^m!sM*D!Q7ZxhaNA+GyGlGF zs29gj^jG$oJMB@#!|}{iASDZ{maF7%Z5dcB{{p1UJL>*N9)6M#8fk>E2oTQ-96x|` zjNl)M#V~WW+63^nP(RINeo3TMB!1qFdL^Rn3hSaDsg2p*kC#MmkGruDtG>XJEr7@QZng@th#Am* zx>&RS1BXV9mI|+5EFuGFF$TfBS-;`MC_n@R1Qaxcbb|R*>$E_BwNIu||3rOdpnFax z?fm{9YJVdNZUMc<=jp>*9UiQL+a%>^t5dNj%-zmI{NB$_CrfoCqOlWVNVu#PB0#t) zU@{t<$`cIKNi|=qrwjziTw@wP(fVyM>LHO&H(_*R!OXM{g8dOcD+e- z14i^N+spl#kzwa&xZCv>`r-KsM6ja&Hye%#^hKTedMQ#p|!-DWipF!z1YaU z?0>0szcDdq-(;e*uL^+{Fzd449b|M7Fs#XP6-Aidc?lB%()#m}r>Ey=^du|>wM4!U z(7N0)U*i84r2z$)mB|o`A7ds6sKu|J!!o8j=wjXB&_GL|;L`<=NuLR?YIRXQo&gjB zO_~yLNdVtv8qB73+WOYGo5X;Z->%2vV}AigLnk}7gA<7+E)x&;*A^Lv|Kw{;3AynoEz zU!SU1M91Pu%vVt0 zZ}nOQm6Vk1;_hY05>HjAGw}Z1?GNvZ36m`tfI$fcVtOUa6vK3?tqnKnNMXcGg`YIHe+)6pd0Bj*bo<`l5J=@|ZSl6(TJI0qcwsz0~uIr3kl zv&}Aji~T-&3gv#HsRB{BV|4XnP&w(j8h!nieHxN2ROniPO_r})Ja{H3CV%4@qPs(} z?Ah_k|3-=JZ-?Bi=t{Y^*6JL|dNXb?0OrlSWtY&0;%A^B%WN`caOTDO4RRYOswC^V z8E;1Wp+(Sv!k`K9iN$(Ra&StS)goAVq ztZ+2EX+iKZpp~CEkt#BWO6w{1`Lu}LexUKin`?^yGSs4gpY=iJA-GKN^W&q$`0M9R zGLU+yOvch~U!NS!+p?_RGKON6e+z?vogfkNNsP|}-LxXGa*u(?d4J8T*`~HuL7uig zoJbMNqO95GV(oGNH@#uD!{tnCB!jiW6Cp)>7Zn<4xBW6$%!MxZHJeY9P4lph8(t$wGDNAu8VlaQO+ZXb?Z z=3?cr&n76oFuG_9u?$J7~<%&Ecf{+si|0TFAix^1miPMWlOjQXUrl zTT%!cUs&+dfobn-i9BEiP9~_=i8826AxIIrB=+HKwPfu&8Gpr&5=_C(f0%-@0|E+4 zd4D8%UveDCD%=h0fAl!zz6lDNZFT!A4PTCDvd^?H0p&5t%T)6ReHchig&SKb%t7?0 zNW;(;kH#fqot!_$V~YXVQ@K1vW6IY{bfArCOpgGBp3UsK0l~(dMkf2}wT4}L~fp+b~{eRFLaQ=CD-dbh~5`RRKAj^2k;p=?-)Ze1WsxAkvA}nsvkV( zJ7=`m<47wv)gaQiCs%m>R(jOQS znp|utjAQ-psY-uG8uD3agR?*}XgP6S_iGUgTfs;;q5ntMTL;C_FK@hoKyY`5;7+g* z+}&M5aCdhW2$J9gcXxMp2(F8}F7EDkdCz<5p8D0j{I^xi?9P0}j|BpRg%wf(Ey9Ln~$OS)qGkDnKh-If(21|%OVl; zYF=@!W()UY=5K21k6(f75yRwHsNgdWp%2>kifO9yvsua}+j6m=ax^IwyMOu)gsp!G z%IIZ-UC<<0Ym33UD~+i~4*Sjlq#HIioTQ|JmNeTXsKnu1w{8d1l(bN4TSPwnF`JP+ zpS%VA1YYJ^aX4%h6_!?9om;;Pkbkg=LQ3TXHc6@Ui!8;0egWz3yNqgx{J~Tn+t}E+ zHf2yo4>roR?b9@h=mf=+%71>zM58hs-M7qy`rAdH|LtZ8&Io^KXfQBDn}8DuD0q#d zRmq#6?`7{m5qlqku{-ZiqMCe!RVSl4p0Ct1r$YV$i7eVRKc5JX!^AM=N;4)n(gxOz zI?o%+LSHZX6NzAY@4g$b?2n4WK1KpNS=PJzV9g^wq^WH`VHIv;_J7k=yT2 zlJ$UEv^N!sp$po{7R*95p%#LD`?l;{js%|1f7VeKGyOvO1RF~wpH>vcb!765h?kPI;vlfjrp zRP2pd;$`;sD!UJgEf-9rwWzR&h;bmL_}i*tC@Oqj)gn4k+De@@qKwMC4@$yzokDkZwZWPb$vh;DZ!g&fQ@V`MJh zgY5I5VZsl$nWU{y32zR71GKHi=b9)6uQ|;C<-N$0IHvP>v|p%D+znPDRvL`41#ahC zgWw|s^AsQLkK<~kUr3@7t=hNnrTn|+)N9w)i9cKR_Fnc2?(!kU8 z&dv;V=HRd~M}IDtpk!q0Pa?6=L+p@XBNY$nP51;OlmuTcNG0B-1>3a~DXd5{oc68O zyHX@+h!-+nCb8iCwJN78&G|<5ly_jkha;c_pBHjezi&TwlObX!?mJ9sh#|^cSoU;l zjHP;th41H7Fm|HOkMIoDbM&lI|MM^{5lI+B+!IBzBEwOt!I7D)f(JoOrr2T($6aT}qgJl1wq)Y0Tx&ZoyZtu; zj)W%kinNSTc9VRv&O*f^#e6J*{4U+$R+im^u9cU)x z+Zy$abjbt+1bXh6!C3m<^XgsOO30=~kiZKb`{)ZBCkRdx?Zc}H*2fV(m%^NV2L;^3Y zO@B56T&_O&T5g1WSm$>iFfxQn`~87^$bp-f+G@jE#b&%W`Q_KBjZhUl%qHOZBIKE< z)AvQ2dnSC;Xse@@2@(wRiPBXIP^VM5AxEz4=r@Se+xn)6{O}tD9}AH#VEQ?d_SI7V zhKcq%hE-^vVB+x1yk9P-QYb%!qjEeE?5%&7q z@t=gp;s)RevoJ z{gT3BN|7%WyF}C0F>g1??DGWttx~v~qF5$rkizSWXfgp}yjsWTxkJkx0FJME^=tq6 zbqG)i`E+wczQ@B_wtmn2Qh!LY)cW=zo?bwjNdgH6*3*d_K+3yF8`(?RFdAhrk&#Idzr>n8Lg zD_&N)gL{~{JM=E-IeeDZ94cMehKJ+_|Gl?m51w(YvdF(Oo8)4@nnhMBWbnqAPTQ~G z8sUKfkXU}0YbuV_Ri<~)tb}(OQ7V0&MQ*jhfd2-3VvDP|JJHoI>F$~WzJDiI2IF45 z`|`lg`nIc1`FqJVpuk&R_PjEgUtdNGJ2dv#u+;Y??!nP@*^5)SV(-WT{wB|fr@?#P zF!PSBcDRl|aj{7IQD2m=B*$<>_)D*n;Y&y84Ja!eqv(HSnsIju#cc9vY^EEhbpzl5 zXyrRkPiLLGJmv$DM7tou>3^9A*`WB#!}xBAxPWcx;bnn6Z2UNmijZQ z9g-HqB;etaatw9+&2%D7zB<<@N7#aoR;`Ws`qqbq^75C^RG+{k&NIfD<~~ftl-LFv zWWbC8CDFxUl>tBFw0}|vS@Dx$Qm|LAGviZHg$|MWlA@k}DPU3p9u~eJ@51np*~-H8 zz70FK(;G+o8~V>Bw?kRo);GeMVnb^N?LOU3UtM^h?L%53h@!4YC5)RCszRv|LbugD zxW;s-Oe`MlM@VUuMPJedyXiAU3YROU$!K(jcsQPfLMDHqjDJ~V&=hyCVJ4>xa_AXe zrtj$^2Bmadw0K0iAlMk@l0Uf)sZj5h%%IMrusiOPdOjZG-Q3@NwOl@wNa1!MOy>dk z!zVIGbUv>{(5cf%q;lG2f4jmNs_75I`Z7$UHyG1vPHZM_c;(c#aK6yu zLVz`z6z510CVv(6tQYI%h!TpX+h}VTp*jb-dsn%VTM6dDNOzeY&@lN}^o$K&LGd!% zXrX*9MHy3NV7%inUj^xg)6I~MbSeY?120NJt=n_4XMM@_au-=(h@NOPhc}Y{Ut0^@2ibUu6tdzgeDDrA|IZFJc7ICAIK3ypbdU|JS$n#9XLG+S zAvetJSM}%rcS}27fQ;53_|#fO`^U#{36k#)t41A%9a`Na9GzG{KL3EDKlpdo$4MBk z+Yj3rR|7HLJ~+?6Guj>{@&5G9K8?|KGMg;Xb+WAx6wrFam2y|27k-~LLAojiGQhnj zRel;csecA_=b$CVp`m#;Oz6Vdp>=w_o4!)G{ODzOAqak$u}BD<-HoqOmTw-w+6i?M zqJKDzFth9bYHJ-zgfYCz-G@c!?DqI9lGc78-F{da(9A7Q#3|d@h;j%{!dU~#s7Lq* zCSy=j2YSsl*A`SP-=%IC)Z<73W9}MXt4h%5MSrpG6h$0Qd?7vovIHt5f7DO&*WwRL zE-#c3sqFFE^_II;8Iork-DehYa3{~}Z%JZS^LBZw%dhb~<$%!?nGy9e%t$9QrO4yO z{hofAnQR$1ZB_uX$#9bYCnO@Nw=!J?=DrG5II^Umzpmqii$TS4Ff-R73D>2QO_^)} zGJh=8R#oy~$>12uv!G89_EVEh;*H{v3%rh}x0m*V*u2si8Euf=~-DenzPNyY~ z_!EnYaoO>*+nMp=8XurQ9O-a~RddF2)=Kux3i#*!9Tdy1$2su3!_zC!VR`95Jx^zH z*dl7Vba`gI4)l~QIpK5jwHzcYR4P5&m47CwW!KXj;m?Q=H)YLN2kVT>c^|xHs=CR1 zVJ6kje1DqHXZURG8+^AUt(y)(Jf?(<7>h zsWkwa;`2DLmVa+igk5CYH_$)+J8_0Krq>qNQLGyazcXRR5H{2lNIR|k)KG3d-G4O2 zI?>%LQ6xO8U1z!Y*>bwb|3`D~fV^U|^z8o5rjKfoK1A~EUfRP<{Q$G`;h^tOZwpfD zw2;9Yu{ZR~vkZxLl{+3^hgW(qB8eQ^-e_(Y^<6%dgrXuUrF3%Skg>7Tbe^f(@_*D~orAcUIzh)!5{dQX@LrzH0;D#Nx8LfSUgE$g z-u&TN%js(YGnwVSaa^XWSqB;k3O%B)bQQ^Hzn)>wTlTn!#dlf;yj>JJxNTJ*Ij)|k z21G`9e&E!J0$mP6B|DY^Am9Gl2#wXSqVeHqc39zMrlpTyKiD>LUIR{Me}9T!za(RS zl~Ra3DljtWsBN|^XixibVJ>`9S9iRO$Zjggd^lAe#@k^~@M}yemD3h8zz%3C&zh$o z0fS7G5a7iQx%qm5QD{EV@v&x%sP!&-LQQY@&$n321^M(Zu}clMLPiqE`8;lCO8tlR za41NyOG>9aWTc%gPmz-yjDMn6*i6||+f>S7XPvp@M9aV-pjna8d?szYhIGmI>b9~@ z`LV+|ajw-b6e=cDC<2`Wb=Q^gWMU20%R&-SnOOnCT|Q@PJ{HQRD|xi4t>P{gF!f@o zw=?Btc653Tb=PDpu3MO7(d+ahnOG@1A3vew((`K+|7L-y^*Zw{)_+2_c~TePq&AN* zx`GHK=j1rz$myIf%MHFc9PWfu@hwD7ZzUiCzQCYRW}E;H#k-pAvjd!u@1>U7Tw2Re z-Waty0>IE=tDY3)>UOp&vHm(4%4#}6UVkj$i)Jk8S_Wf(Q%D;*JE z&GJ1QE+_@fjbBk?B1i)Jz=py`>3Ud$%MT-mK)&oD4!#5noywkBK+Eq=3!IZMIZ z7ipS*DZFL37-nBu`I~xKU|Q~N#x^s3Yi|h2%U$PzHH#=QXd+3+*`2scxH~N9R3twxj`j#XXv01`7O3#7H1+=Y_Y9Yd8y8#$iOGv)hAV* zamUo(TJ|QhxTZ=jsHO32g)wM=1~T=0O{-SYzgf9Ia(|4#{J6+qTAbGxLzlY&gBpTr zy5}2P{@?p%1f2LXWpf|>J5JiJ;4EU!K6M5y!QK$WJYOH*Y(GC7D6b2hKvH7Jhed#F zE}W6X@OAe`-`rjLw**jlcm&-0jT=!7FRd9JHYTVA@p!Mec}EHl5`6DZ{FGLIA|2Xi41|lLqmQMClYE!>9|r+ zHnWLb)_mzh8ycG38I80B_wx<^m0wB&JmiQlMSu2d>Xc(<`09*|{ShXP$u8nCI z5N4Mgc}g%a?yp?9`f4}hX#%4fSm(&d+_9Anh(UV+j75v;f0N%Mr{RL;v$PiZdW1#E z&wtL_W1*0Sid>za(vn`11(yzOR-_wf^q>><`<_efU*0ysqTRQLjc>E1-jk4|z1jovJPW2Vgz|NLk6@P>76+LYo)R;79;Up>m;X zZ*n_Z8}YhUlPi+wmLvk>(OQdKdh1;tQS0qw)L5$2m87KC(``Co;~x}_8EEMY20SDZ zj)X`;9{H1{x||XrM{z>YfsgY3SH*tv7+gL4WTr-g`LQ zUJWI4Xwt27lyJ8g51}tzPbh2Oh^Qx`f;yk>lgIho<%CH1gTk^oJbKF+{+Rs2BInj6 z(M)S7*Q0D7u$uLO4Xe(@Ay%tY7qi?a;qulrZ^ntfT_k~Z`ZDPqGIo#unP_Q?R79wH z3r)x3qxLeq+D}q9Aa{vM?SChm)#}(3-}OH!>~`4{sqHEB2&t!wwH_G96TR%nvP0g~ zfot%Tn8IEntk{J+Uu0!S>*gZRWD)$U4lW*V2p(WIU5>B?P&whlV+zf9EmFj#L<9^J zh#@a;2;SnCP9H8oN`FKuz^ooG{8kWwj|#P6X~56w;pr(2!4r7=_kR_gTAolD2a>ka z64Xl=DZG%?odnLfe9;5liC;+J%2*|^SKMDMdJp3rKSB@)l2*pi<`t9bS57(s0JJkO zc5|>mxvGmOAR=z>^Ws*X|Kzb=^&tsm>kvH%Q$CR^tZGO}@1DY3hb9{s_%K)IHn-z~ zZK~aHmA)W|r$`>A>3?Q9xSpWy!lqX*Jl)_)*srnd*_)5+U*!Lx(hF_GOrji|*mpan zwc`C(16q;7Qy)N54JT+;ypYa=$a0!Vq&7jJ6L0Po3}M z`63ILQBb%rOr0Ba1qs?dbmlKPF-?kfDrRRE- zlX3D&n;^e+6UD8x-Q~pIA%~00^o-It(#KLI!MMK1XMETMyyz z;x` zB2ysBu){-?NJjgw2;)+nX?rbIC8dv3e|@!+#b)Wo3tI}?z;!W(%-@3XUhjx|vkdb4 z63~|rJbwsrK@x}`cPma{FV#Y=cLQjTZ2iYNg}mo&y$R(;^G3#dem-`7(ugzIzf*i; z;(f5i^?watFI37egQJP68abtlqqX?HG|5yc=2Jsu=f3Sl@|?U>-X?8!+F5{B&!&`$ zUTiV98NzOSWRok#{0k|>mA+ERaYB>5KKrYQ+<&Q1`P*f7ZzE&`$W4_ZjaGFc<5z)P za+wxJg89A(JxPHR=`o{TML4^FO7?fH0~(yA2U7Exz0nxm1*J@Cn`QyPse(vwR1TNJ z7OHFyZtjt={d%bafHp3esu5EdVa&n&!OOibUJRLp&s3FQ`MVZoU^2dWBC}5QaGv6d zW`E}K@6tCpn*hb*U(NvESG>Jd@a)^dImaHzTAh2z(?urvNGo{v=@QE%!*i z(BaX3%`;hSg(96wS;+4H5$Trfqc7WonYlO&{!2tq@1m9y&Sa+{IYgwr*Bt=`^f^m9 zR8O$b&w{c1gzFzj5DPR%y!pl}IY za3rHehTKif9I)+rYgM@yJ0FL|;v_^>2q9#O{Sb$?J|!qaKyWEYmtG8zNY9 z*Y&U=RHcQEz~>BH>zq#xfwyA-O($1YT#W+%RD#^cEy4v=CH&_3?!Mn8Rh|xMn17XP z@B&txURm^3!6mv3ffr}Rjj77}>ov~iFl+eak6@(a*t0{pYqIB*mpzi1Y|ZJadM+-| zcHsoO;j#_g-4ouU>lCH7(<$vs(>1)V$8&H-$E&1~+giRC^BU0R%}rIq{K)R=qL2!K zS;_x`TkihpGg98Tm0cnVoY3<_h<}~=_jU$VJ_%*ZA6)tD`PEz37@k&r&l5dHzHt;k zWK(9kQt8~O3zS?~Ri@pm&4+#u+`9H3UY>+e(Ge2{y!jHj0p@?D&! zG^q&P9T~EUu;gC8s_N}DekHUprIP6AiDUJ_rrp4DIXxCX(-t9S^q+E+sIgClSc%E=$G5iR| z2i%c&cVAX@e>85ki2W<0!XqLcPBof%E8vnVjWrDXMfMZ16)XErr+>jZdsJ$htIvb0 zGGeZpGcl3cL;)?4(`Lz7SBSj%zd<9eIi?i;f&3ine{>?f-u~j*VdA0p-D)n?Fr9z5 zpLj0-FM2N2oTXyY#b*#P?EB$V_0d5GFR3$<<~~2$YE5GvMi9oVgY=JHhnr)a%_oq#U5o`*J6vOy8f_S3 zvkxL$h}T-g*Jq0JG2xn1=u3?QPP~!=q++S+(J7&azxs@atRylh$=)K|&|W`p+TgEr zR<^Z!-$KdZ@_#5x{V}zz_yOBbjKA9jal0;51@m@3r^a1lhm+3lDHw@j>MR&+bV!|s z@U(gxZ*lmxg<#`xo-fkMdAM)iYmd#7byn%TJ^Za157idpCt?)<;C?25+3uV$p3cQE zMrvRrO19xw{WlCJiYkJDvA5~#Grdkr9D{O!s?;}_NPm(Q`iCZmu@cmQCi}l_h6lo) zj%S}vmLD=VZt#|>O+I$Vskj>-q#;!j%S?Z*(3Nwk`CCmY+)a_Z*WgB)?Y z0U({ytba!o6K^H6nHAY{@1-tzJU)Ib=e`Q`RF#xyrz=R*9sUfp7kjs+;ika6qO$W+ zU&Ca_9s{`vaA!Z76v3~4iJY=t>){>mu!X*vwuSfiHH=CU2I4dB!5rVa-pp^6mN7hG!Nqde`0epvp) ziaIV_WE-xSn25K0RWRJ6byST}m`9tbt8+3B;+XsDwUNY@$H~M#P@@Hvj+bGOIs}gE4rBkF&%(dXgMdp1HnqLA=YR5oSWXnj1U`#9!m;1DuwB1NdI@KE-94E|ci zL>~9gSD!5|@gO8JypB&L#v!)=hF)`zOn*|_aF&a+K%^J_k1$PNI^gdNqz9tcU;x=0 z3XhPYJ6{v#tIEhv+qZn*XK<~h!GbHvOXIF?3q9~4W^Li4z_D925ttZ5{K1|aw2X3_ zf$^T-_NLnGcM1mp(jK0j0HUrm4wGBSqtiz|U*TeOcPm}SizRb{ykhje0*M~7+JE*w zZ%W7f_XDqY`(f`P-j$BF;WEKD&j%{?x}4RrLYpADdv};%KxI6FoPfSdLtt2+edB1# z_0~|xdb>0s6{Gg?uj7Y`Z1#HK*HkAIkS~JHGS2YSMF85jX=Zx_t&D#jPWVi`IiV~~ zmbUze5Gx?mv!l?q!0j&}`=K9G*niV}jR5_!cf2ztnnWJ)b3kA{sVClj&uIY`hM23y zjv>})68GXj_?qoQv$OIi#}R z;wQ6mDcbzDo1W6qR`K3)#z6A$=WUt{K4 zgsH$fnZ6QJ`Rtvxt2P>_Xy4uGsg{b@vmC^5^dw(#3h|;CtVwv~fqyjzO{F``-Qh&< zDXCJF>1Gu8tCDk^j_EI~C>)ggs?)@Ooo7zp|AqwrN98EfH?`JgVwin6x znxGVP)}^M8t6S@ct;tF_T&@o1F!?|2s$8 zEt$!aF^iOvXfB|8G&}K3;j<(2aCgTYo30+2aNY(n23%>0cz-g;_Om}#bND>pD>(_k z1>1akT1&o~n^qB?Gwia;t^XASnh&7Xo5M z$DVs`6}fsa1%HOL9XNwG4q}*eMv*IIS(h_1vI`|sxXD{U^%H~Y$4uD)aE{5h&*>H- zmsTh}bA2h2Kh5h=I#uCg!v;~+XU`HDd0gfHR=BT?;|)ws?-$s~!yfT2Ivl;K(Nr@C z>2#w^XItxX>#p0@{xCZhD_bx-m>lQJl$qcwaPDVHbbp)M^d%Qqm6BYnuRXF{S7(<1 z0tOT&v5(h?*&Z|<55a8S_;vSMfKOH&la03J>Ltv9zU%RzK^(IkaSG?Q0-bsttjp;_ zWJ;sCh{;G?0nluGI&#&EMr%56rgDP$+GacWdjG;mYvL?+K;;Kg;3Ec=LT)DavqD4I z#rr&uPJgvr%-(M~Pw8W>NQcW4r;xs0t~S;Z;M_im*9pX&vrVm_GETVIn`dBK_pAp) zr`1Mdv)aKX>uDSX*2C}Tgd9{7jOlHhOXFYuKbF9WNxbU?&3?u%e4cN4FA|$~DhJt! zT)zWfq`!ts;-ar+u6$&-sN?dvIuhk@Mf+SdjDLH^N4aNI0~+qAGIC4GozFqFl^3T+ zWX-t+yse)u?BloU(_$T-&n9B4Pbs?FhD?62<**wMK3Ec6uH9^0pS(?Y$>2i^MG z8h`K)qPf=ho^;J4vi1EHt}|Q*7EKv3FdDLFMn$2_R_aAnr12TB^VNt6f9NnjaHQo0 z+#WZxsMU%m$vgNJCyhoVVVxq^l$!Z*A1ymz({QQE zlX90{`44A>mY9p>tl}T?7Y@MGbe&;7u1<$HGKtKz=*5BJ-b&n{h+WjosjG)g9e+|! zW6znC|IpsP%OuY--Mx0`!=d)Owp-5UZS;iurIL3YWq4Km+hs{0&k#8M2KdLB>C8cA zAe?@CAJaU~Z^&Qj@*QA6MQ4iaKK+$A^V2-u2w(KjNLf12p=_Tlp~P?7#om=U!Q1Td zM#Om;u?sQ<^fY}bw&zYC^MUCyaes*4*h`$qWE{7n%Vpz8m%9-vb%!0oVbT)+_;eE! z;5d`YnEDlogk#Pa!^3eehj01ohzk6qX{CBAzix-4T2l9Kqngn?3t+KAr;s=>n-Op@ z>d?-VZR;L*!}S>;w=1cw{`e_*;L$7^EM7v+*0u z0QHDMX8-V{N$%G7aKRZ-uzwx7CtjTU4+qpJEoO%8MVa7Uwq*7G?$l#QWe#rse94yx z*bZJ{@g-UG-DX(l7?*JS^M7t+vpK>6XhP(cW(Awew!p?PW);M#sGfr@;Pv0d&pGtA zz=9dbfzw~<*IL%_NkGoVTF*l4&ch>_On#r7l6d;yI-PQ9%38=5M-%CwB*NjiFS!hN zE9;rl1yc{ou*H&CMY_4%9{IAxp>Rl4(n&1WAgle=);m^ALc+2{Y=1UWS?L&F)xk=N z9?@}C2knin3L9~oy|-r>y=0f2s;X3YE`xKQkvF9Y+w@}RA#~@v3e? z9Uh{em|&~69jZ2Qjv0PazkgT-faX|Zy_)4>0vXnCl{Ry7MWFpUggw6+tvB^k|96s8 zrUW)?*wYF1y+;8iTz_H>-?cAh6CD2O+!1Psmo{f@(_1?6Uo=+SCjHD*e$rK|&k!WJ zz#jyt&FT;bra#o%Tup*}~r7P4D) zHVN*%a!!n(c?Z3*tbRq_CjJEZk3pO3{e-cR@86tIUm5b_^nW<6>{dHOu!iH~`>QU_ zxB3x!;2=Z-4oG01yzU5SVoz5Af_Cd2@tk)CPk`>N{5XDH?h>WOY}rod#Sr7w9;!Dt zIRY87*Nhh!gmJ~FlX*D!uBaI#G}+J!bw$0ZXaDc^R*Nwwm)}{yMUTDQJx7hNz{`?X456de z`zu33FgR=deMO0e6y1O#3zLoUEoHa)hIr_cMci7}<$uDlj%PuB)-#bjb$5>lmtGJ4 ztke-Qx+D4do*phKb0K!n(>v{VLlUr48(*^=8~SEyH0dk=1iVRZGg0bkzQPJW0C~cO zxw$^YGphVnhNVxzEp;r-r_J;)c+dpNpSzs{Hs`Zf zpJInhPC4yEV5x*8K4jzRN_O9G^r35S52vI2PS2N6dDwyGZ#8CYEgo4KN)#;)pf;D8 zFJc@kw`CEBo`}77AJ{W1K?6hf-B4FarrGE)6&1HlDKS030x9Zmj!v~ULOpqW6VydOJ-G%-=Zj#aH zf3gjxa43ILugIGzZ@cM0s80cV2%CHOpc%NsQxTG>S z%QCO~D3`=&+?SUpkpKSi-Tmv|omNjsAIT^3;T?Z@_w*>)gO8l+IWBvdO0~kYd8Dsr zwF*VG3)X)2#Q1CL%Wd1tX%!)oDJ($8!f)FuLk(yFglpc+F_mi$MXONg@o*^OpAuS-C2^G@bdMWSw|T#J#8x(aS{$(vrtE*mQnNbC9WDu@CNCQ`XgxMIJsTmp&e4z6 z2F9n!g_+CG>FVAb>+prFkV*t#_fxm|cEQ7(e{Q>ZA#r^?Cb4M-lY@UGRSKqjOTJr> zv^Dy=nT!H|gGKD88_RwTC!ZPCh`p#6^EJ=cgcQaWSux;1;g@ye?AF(_ynuC{Y}kK= zR>x1J_>-2eEPCYutH!2-z72XvS;)e0Y^7WmylOPIx7q+*?MxP}LCFB{FHv@BQUXI$ z&|nT?#l!Kys9_C^KMeC4u!Dfve7k?o`DIZj0J2ed)90uI`*Q8&D`asY>PDe7t`4nu za;#S4W=Oz&IzI8lG{(Nn?@lD6jOIOdcW|Upnp6GAGOX3WKN*Ia=E`ELkp{Ra4<~&Akq!a&mio*0vC3DN;ZGD$ z8Y4P8Iqp5YsIW^#EFKWrKBu&s?!z1S$vZv|48P4wyKqRL=HRcp6%3w#%o$Ap9R1y5 zBOsEBwW^IF>Q5GeI$pA|C?$WR1>vW07=T@d!9;G;0%3BrJZOz8^gni!Z2o09e0n}~Pa`8-bQ<)HB z2_Hc@*>U7wcN5w<3+Yql>G%>`zwk8bl zLA4QgW@W-SxeI>=!tDg~#zD%2ZyD}fO!L`G5zRW^*`2oSmWY4IdUVgzT)!z3EUT4O zIWlfT(0cJ^SpF`3xPgt{*~j%yGACEY8DD}(1==wq8(&8x2x(!d5Sv~~temxBA9>&m zRBXud{IkrPQ3d_&dEuB_J8heUiUZY6GgLF`HWtV|!XZ%V&)^I5M0$9~?pNJRd>N7u z#2x{{UBHs2M9hENs0CjMYpVUj*yN5^m`wp!8Q?En)TFZRzEYk$$aeG>$eTs?Sow7v zo3L&4d{*i_JQ$M6r7MNbgt^W^Xn8-gy2JKinEvw4JfwdLKtCHTWwkYHI4Ek^aOMrSDaYxnO6eLkT|IsR-MO=DBbV_Uu1NuNB+oKTrgd@W^m7D{H( zk+xnlD1J1~@3Qc>0vj@K)<@wacy8A{EF{d-Ja;G;#>C*YU(f4sFgprAe4-By-$u*R zL62n>B5?G)EUs#oH1poYe6+tMWUC>bqvcn8q)LA$`13y+zEo}yRh#<7y=r-KgebXB zh`Q}qxli!QIP7}AKm4Qx_Phlr;cM=ZY4#g8D3RK>w?I4+7i6W$@AG_}%>A}46M>MI zRioFr+5_6cCGEPB01$tOYT9b$&sS7dg*|Jx1@5Y-0&ZJ#y>Y%*#M38x7wSA3Rj|mSoax*Z zXp(RBg^L4k*9%F4^05aym>=8WRHDk!Jn)N=@b332zwUQF0r22zy`K*H@ zRy{OeL;01JCzzGFkRo0ng^viKkd$C^UNwJMT_nl*=nHaxU;$9mMoIA~1jB zr~(1P*ZH^7w0kuy0Ci=L1R!kA^oO^6@|2#qxt-Ud6Sb#%Mf5Px!MxDUkGCXsP^2)w ze8y@>&62wHw`n`&c0C0O`!$%+#2pL=ve86fq>)aEJ71~l53;J0b`WUi2-c3Z{R6EE(t6&6~E(=Oat0cf<>7w0^}3)TWrmI&~Cq z!Kqm;;bkjb1|IHAS;S`DZI-9sqkgGhqYf{<VB3%m*stq zt5*`&yeC1%wsheB`S2KXy!#$T2wHTt{{YiYTezUA2pHL(=J^=+!r$$P8bNUf4IcfP-RDVf?(h9ThKDB%q=}?;dj#b<@LclKQsg1K&6c}CrZ1^l zxtc;sEv;4?E~73BbxD73&vxTSFr8WGLf=-T!}ULYG~lO6UZ8-YwW6NmN<#msua~X7 z3 zI-R?^B$0nA;?qNm1dY~ayYb802Y2jtsY*)ET9 zw~{-s6=yx@)f~V6@Na1NJZrlx;SHDf1_4B2Paok!7Flu;oyO<5{?3M0Havqom=*+Z zth-lL@ybB~k(GZ%V~#Z%;{FLMN*x5m0RYo1p#~h>yp6~J;0PWU#{830V}x^G+$VabiG4h>u~6ukN2$6hI#@_Z zg3)0&V^erLml8AvXboVWXQ3jdQ4BX#fnk-VE~qdnnDBobXsw&gZO)J^3{4NvO+0}< zYzy~qK5rjWmRRUH7?YHTm?}||XocC@q1e8f*PeuyUa|{+byz70J9k9R=G}i5N#~PG z(=1|^XWKvtXguiQ4L$>s4pVbtxxT6jp00_6b=I-Ku-mNrOu?YAF>-UlF%z5`>$Pi6 z_0+iyV0(W)-7@xvVufYZpUFO+Z+=Ygw3kW(4vAlEhpdV^n(D1IGmdKQiY;OdSez|c zjDFI2<|^2$*<5;1N)qjrDNO0n;TgO6Ry--K6kBh#=UQzQfguCL_fWyE_CkWkMnSX= z7jB9gTNxAtu>?dVoM-$#{X2i2;W5XrN8U@g!4H3CdZhP>M(p;ehEIoZQWS8dw{bNF z4y9k>n>-_D8X(4(E;YDhZ}Q=7iW$r0%>8x$ia3C9P&R8HmaRuCP>;|2fce|Sf^F;Y zBjdN*$cK_ByUWUT0Y&V7H?tMZsUoRvOyw*T6Ll-7$48FVSE32%`MnrMzPiLpbKvSu zE69Hy@k|GY%HzBcm2g{qG(|HdLu2c>IVIs$Q8FJczdd}YrBqvJ!j2JKzQJbEu68hH@4mN>Kz&P*kjxO$>#zQ&LmS21L`d{ zP#;#_{1h(Yt$%BCQLN3o9yKKkwX0DRByxY%7nYJO2*{p%C83Yhz|Sq)5^57$7+|MZ zP!F{88zZ_zi<~cpi)7{e?k->G%ZQF%&I?OAnnKS0C;%&@qfw3a!IMcIPtfUxr}~IM zDKNc#qGz$7H6|qFwasDf{&b~Xf^t|bXLb2CAAWb3yHqRpnVaGg**(w(Y>Td&s(bRdV{VE~2eFZugJrI$e`^k+(P zBd7?v-A@rFApDUdr?6sWf?K( z2+I#yB!PUpzf_lMO>DvR@R0Ia`qOBzcLN1IkcB45za}=^Irq(-X@3IR&7i#Y0Ur;% zp6&!|jkY0b8nn6gaeRVFV(R;+VQx^}9oTu)lLHl>U$sQ0#PH1Nx}HUBHW`05gf?Jk zqsKE?iG@C5LTxHpk|k+5JXYJg-b-^?U&oCbm0L&*JzcI+(&M(r2_Szpj^exTKkT!p5)RG`u9w{VWX-#V3Q=jUCUS1bNUh;aSuXkr&G}v{x z{QJa3=5`z`-jH&>^uP!?TsXo;%xAx?CcN~^=a3PFfS6Ts?mcGDW(wOwp zDpcY5iOhORmHaRJ&kqQ7h6ln%VqD`;kS+B<(VXAr;AOQM7sx&AarJ-wwCU`19og!* zs&a;%n+mS+%xk`^&1(e6z@>VOf&~zXkLbt1c10c7hHclR|8)2FsS7;;MrQaelN-lVq?PsJD&na^-V@r)N7?nA9}s( zGb_~s4@|lG(kVu1`q5sy_~H720w{dZj_KcjWE1!$uxR~L9t?>8@j4>1C(ZMgO#Ant zOAORzBQ)Q2!OHHK;C(dCdmrtHkj(ClFI@e67~9C+Bwpkv(8hlm=X|aL`z=n#V-{n7 z+0dxCrpirEDG7K`eH#4y^8uIZZ#flqqk=FGws1-$Krc4J097DSfqrbHOWo1wCk}bO zSxv5wS{8HFz^mwU{34Yo%a%Ft7 zV<^9$KG1rlqIG{-74_7hvDxT=9rh4Sc4K2gIe?RolU3gr7GU|PH>Ap5W=gdQOWlmQ zBw~*;%;0KW@bxx$V5B_k$lgiGXjOluDtD!TsG>$|Ow;iE5<-o06RxxBWTl2?ijU z%_L81TU@0Wz2Br|6YzeGIdoX!G_Y_&G{cbHcNBIwn!kP2v|=LoM$@U&YJ&gq`T)ab zu_}d^&xL=P&}!ZebLla$yg2ykA6|7)T&Q*3!X+SX0KpQ(A2MhHcz)O8Qv2D{nX9Ic z8rA}1ZGUfPk(#j0uPnhaepWeZH_$87<+)%v*8Rp;&ifK*Io3g1`m_BtS*`|y5Tq@# zAU(I`{OOA0+C3|vv)-HWb4EER!$Z0~;d}j7DW!jn1F<-1$@@JIFGm@kr!*7lyCv^; zn$5Nhc+VzOCY+CdCoaFYtUzJ}{zD(r@Vk723<>ZC$fI9{Od;1*O=>A>Qq=xy$58Sst4dJ!oIl!jA+(Kn&#HstWIZOX{>E)y?%y}BvDj! zh%DjLX<88Zm#Y_NABp2%^9JJ(36C`SlGEk zPivlQRU;WmGi=>eR=FAw^lN47Qg@wtV%O!RgKds3-1e)mz{DJbUEi}#0fNlI55#no z*`dds-xyUk=~a1;zgE)9_jD4zpw{TB_K;i8opkO*65O)Jx&+XRXx1hbBcMF*KM8-7 z@S626=>Oo{-Q1M9Je(`wuu`AbR{uyIaJuoNXed1jVz-zYNyetafi_nCcRr`zt42A{ z6CTuCn6RvNjFzu~J;li?=$j1TWhncrj|IHv6(|KA-xR53MF!kgQ&hn&c#NPfTFG`d z-CkSBJ>IIN+K6T+V|8tI?Lx*fzNde$(aQhMXOV2kd;uO_(VT(3Lyf@!s_)Lpae3SL zZ5G`Rrkq{^v`Uhf-=^{dUxWQGl{WAjc#Cf{SvBX$rDn$7JzqYE;bW8l!qp!zFcL?^ zDo6roMch-_=Sr20fCo}qEQ`WcT>`Wignw(Pn3O~J6U6_9dewIWE8D%*F8hBcL*uN# zUUU=x?%w94o=?SwahKz+SewjqKX@@~$G`5WI%A{yUd?#@PY6C%2djbd+k#}^hTb#Z z60tK|2OlQMb8YFahyRqf{&-|fa$~R0tH9F8zx}hi*Qe@#?v`G`#!UguWao#voqX@H z9}CI`Ssdr>Uo+_lZ%~+!TM2)>{4ZT$2A1EF7nZ$}Pgf89C2dbprsV-{r}tFCVX@~^ zjkhrk{&PMZcz@M&(oaPhp_t3pc}cF$79@RJpjpM~r1WURZ{$ybeFJYL+Q#c!!st^! z3mlKkJQllK{XlOX>AY2yi4WQ+K4@U3rFyy}MEI*OiYWwjwQjBo%>RF|>LBK&EZt$@d@Jd7#q_Ma-wNoyFeT23I_f+BoSMJLR>RkXxBrE#NlLj+x=hxH zP&@2hbYlRs95y5rIUL0*;R5{)<#L*T%(F8i))aE*--|VAQm|$7adv!6@7{=L9S>J= zO`JfdkX&lYD{Z@(f&*<1t&xKn>oq3;t2R3iZdd(}bL-PH=u^tGIsY1Bf!U!HE@I4= zSbHybf@?7zm1}>3%R87AetzHRjgqekq4E8}p2)@V1OEDyOs$O^U>8HeS=7T)R1co3Bs_%RA~%QdqWgrE11(m&bnW`w>LUpM$RNgOb84rKsZ+@O8$ag<|i@DD5`_TCM zm24mN@Z7+F;M_j{7~S0Zk7V(05ZegLt?H=V4_iAqWvhP^k%TX~Uraj}{V_Gohdpy_ zu^jNO(UN&co=k0Yvuo;JZ2h;8XY}4=<%rFCCRw7KNaZQnsGU*LC@!(|+t*lK`)#7=ws@_z~O1?IjhH0v7}wd$u#eAdIVW`Oe1` zbz8TPYcCS=*__$=;6l&F7Keo>UC@RRy@895;w67(o+8bu(3!C)rcj%FgaIp&-l7l- zHO#RugFDA{HIv|JVOtJP+c8nkmLq7|JSCp{^9(=PKSFg+yraIB^E8G0ddsyN;2(2z z{_Ae+sR+^kZ-*C68(Hb$&i}i^OB?OUg@69PEq%&BjN#VNxvrFz*om97+(eE~`sf9@D z14ysB119>S#`fdq3t6+?5zY*zB~ot9**J8^-gFcMG=32A@_%#xgoMaqDMd+jyMejc z+MQJr_51On>p~9ZDz;Yq#i@<+rAngG_49vJjstOjj-Ry9TLod9q@R$doaKr9gqcID z5VsV$7gU^R`bKWUdg>9Q*3|buYGE+R?`pKG@;{!D{j_#iY3}Bpt~S2JXCqL(zaya4 zfG@Xw*mybci!GsphePE$*MvTGokGaFajy{i9VXBNVc53#v}PvL*_gCpfuyC%vV ztMxzCRP02k_^)hINkzp<=ARRMLkfS=da!1tvs>XEN)5i6eK2JJjssivuUAq?zX2L4wuJI4Uj~hBkK(X&R_ph;pmPsnq?*j^4o^Z)1 z)kou9W&r|*_L*MTF zX$l0B(y#Y_0w#;KL9Bv!e(d_VZWju4kr3?ljTlVc<2Ozd(7aP}3R=~0u7!ULsU{mj zn>3q}I?OkwaT|7gT=Baki;{H@TA&m3@hK`)A|1rjlH{s9pr0;v|1#0?M5w`pU9I4*zhXJ1juJbAu$XSNzs*L^S>Ej?R?f_2caU z#~XRO)X0LbA&$q&TenS>VmUh=s+AR8W7jfk#qogqDjW*=atk z+%mVo)UEimOZh@B^E&(~B>j-%|N2iKpihJhz2#(jEEyBsjj{BQ+}3a-i8uc!hR_(l z1;G3E_OZw99VLJy_N^pvqE`;fB!^dUBHg{? z{%{|>G&UJ>X8?OiwA$tzNKIq1FVEb)aF+*8L$@T zebksG9+WLr6i_`l9qVvr0o0WdP#O<9R`yv2ZQ!D9Ey7q#7kOZxZt_x$qQG;xs6suc z@DYYSd|uH-K>9JSR7Y!#b(&aDAY;hiN`&P{ZFGW`kWaKp7OxU0y@#r$+&s6_O192L z6m0XWC6IrgZ7&F_;}wfj$ctT?Z?C65@a}xr?@D*zr5+oWAt<$|`#i0G^emX@84LrT z+%P|D4ztvec1XZT^Tj<0`t<e3;mzm=q7-+7}GEnpS zrb&_}#+2hoU7G;xj7M*)9T}V0( z@0pH_DLB8-*0-ibc^vRMoZ~vf7g?~`=Oo2&hW%$S!c~tLy9k2MhAZfWD(V8kTRmnz zA4aH$YeFJgiM>oFNKQNKKWTWCzmf76K{0voJ`KdX4^2O?oqf9-#T zQAA=X+f5j?|11h^+oPXe?VRm9C;QjvX~=h+a`1F)<5&eBmQTtVMxzfw2=&--YW&x*ssrtsmR`G z`GzF6GSPO?TZetH3-|!YN`8-p;wO+uw5hcr@O@4Dlp-PI+1SQY4Bd_|yaRv8veAcz zVe<`1`)Dk{HK*{0M9#E?-Xv*z`;S=CC)C+*#opXnIAk~rfLun{{~bi}bh=B)UWF*WxrvL3}rpp zo*ffW1+yT)#r`%M%3>EQb4KLMjqY8}nFsqELXT*}Jtlv48HicY_$q%q?%6S;tkW?g zCdsJu*fpkqZyz0BC#V&{pA0jko|U?0rhwjYchW8o(0CQ@=s$5%$bzl=OJo!!?!gE0!T$ zU}-(PQ*#MOb3O!J?s9*M66_h{KZkh}-uy=!(jEiD5fBgt!rD0|TIq8lR4&P*Gy8`4 zTFq)yKxa+NTx5WO%-9YPV z231^HV<{hb{$c~&ee7TTa^Ls5pNmr^k0Vig;0x@T9^8oGjEsLN&Q(yDhx29@%(fWD zxkFwDY5d~(qYu%p%%eJBnJB~s{)^WJpGxCviJ_m4%#WZqAK;8KtWWYh%?QzFV6~qs zElSwzC#0Oz4QTcG&kwMssk=j#;AX2eAG}B&Vq%X$AcK^3GMww99L?;6XJVG|Ih+-8dUv7L_w@THMjTC zkw-mHJ$F9ZTfL09FE49j{Y2#{FOg3w>_%EoMM#5hOk?)o2TAdY&^c(;BKYI? zrXTt9u4Hxm(+c1ByP+r+hupShf+(0Pcp&aT7d>Ahsoltf;h6G%>mib$?Ucy4%^jov z{wE#ij4+;5WkVU3lv;;y)85gTuygelf=-!LItzcS^GE|lUVWWoA(30;^uNJm;8^}> zyg4tp$j$`tJqmvGG&Mu2^ulk|8Uw-Ke=&IL7b%S3FH0J(&Hi02Vj1l?1Rd$3))nZf z4pD-xsooK8#=lCmbdpd*rT3Ph_B*;v7^7Ge(ltNG*6{5sb-d+N5zX5Wb5I}pl%Os_ zxA1=p`y5N#iYOcfZnza`Cu4W$)I_bkqbqfIO>zV>)kwij@CDw)c)O;Dw=SQ_Z8>$% zI2qYc@ey*TLxmN9k}fvSP=n36H%JeS-436Cx|vkBc)Gc2|2^cIo^O*k?xerai$9ZZ z^*nh3j~kU#XeTlQmYqM3Y^40Iuei#pPj`QSJAPwwmSW1LImeDOw*EEJSH6;2QWfsX zsF2T4#-?1X^!l#VjXW5PCEu3(SS;4+afoq`__%?tP#zOCiOma~T0k7?KyviqgchM2 zSN#qBd&TFcG-ad!Jw=<1#>}Mkh0i=Z3dj=gKk|C>28&eWOK|JkvyX{&J&gQ`;%t9j zZwsr8xw7-$MCp2C$z*BZ^kZ=XN;VH&WsQ^T+ZB`jjd~iSdVVBhnG&{jcnFpoFa@pN z96mbU)-%ZvdDRkLvPpQy@9NXoB85*6c`K~9{ThAhCs*amF6t6c0*orB4j&4Deu~g# z_hFyJ87vRZXlE{^Un3Gx38?h%eVl*4Q8AkKY7u!F9Q~F|riLu$51)))U`fi`0G3|) zB`2|4_ghpQ;Gi6X7MB%$)&X|MAh;U%o(y`UHW)o#0UDDLefd-ta}U`uC%S4COObqu zByn1`s>k#jj#IR~EKt#@ZHb(88L6tlTD*IX3X%n`Hs&bBlkO2dtfGa0b18q{2l?9M zv0FbLfW9%*CjLHyY98bGHk~BuUDbDa@6b5RM1FR`Wjn=#nfU)Ml7>a2z>um|P+apG zH(USy@H`o(ZxU^HT}Ti>_W|N?TybWg(=!EYh*czdcUvV^2@v#rZ4wvSSl6na@@IpH zQTK?k#clY7m+ZwK$*` z2QMofVd&;l9B<<}#mOa4pQ-2-&rLoy>2@ti&pIlT9X}iRi3a*@yeKE3QocNx;UdLz zIW!B&6!nOF&;!d^%;W}$lXmC=kA~Koa0rUWuV@qx7HH;?P^^<5^DJNY#g0v;MhD}d z?b==MvgJZ=Cs}#O9N2$Ko<~O#sO~c`!Uq7HMmeMIX*m|I1i#%BZwfX*=1wA@ov?yGS2wEI?&RwkM#gqH zkyUY0mXO7gka^MKix+QUQLx|@@1jtDZU~kyFfzUCN73p=|@e*W;FW|7 z^y@^W@UgtBcPjpE)?sh?)f;Z=o@SSolqGM|LOZHJhy%q;KzDZ<@^rZ@4&s z$ohk2Dwo|BxD0?ZL8NKda48S_&(@I9k>x5eAz*Rzn$w2Hi=ltr@VmNB;iLhORs-%C z+Eh~w|Mflg?1uv_56!scip|iWLj$Sz28S_m+IFs_<8Ob7y|~QL0^}%8c9J{)ES+XR zY@=UemDG`#Pl4wbQ?Xt6)$}mFS-a;ZZvfomeYf!ey|mx z3R%hVM5lo)F(1v@<+{Xf`$I_M>P$WL-p`p-DqPS?JUq4nT5k~rb3 z*hIg-BT>zGU{HP7BVKIhiZ9o#kn0XJR;+>CV@81JyqF{!6 zpo=BPm56CmFL$egeSYdS*^icJm9@0<%OkAbq%~(JS4l^8bDI;xE4rhIfk(y1zY8jV z5<$_`J<))i3cjIBjq!@-*bZCTZhWnr$6C!5@5Zad;JJ)1Mn_=wCFqp}wUJSB%k;7N z_ZfeBXjgnpO!}_@n0ey}pMobHW7OzAjza|7YR8zqn-qu_d`Kb~Q@M<}`1>>{y*}#0 z5<)^Y;)68{$?X%TMRiYO43rhzm~ye2Qrt^VW`>WEzCgjvQN}V!W84n#5R=&B^4vVM zsfV999>yK3!+YpKTKX5fUcljD9}JvRet>`71DDByRv;Cs_RE7pI%(!?Z-i!xXBZR> zcf1*@0}h#sv(_P!Y4BYH0iOn|Yxwcp6Z>Z=sbQ;;Nzx_{3Px?q@i>ur2KOAmD|Pm} z@5Cwi$wAiD4n5kc4niCLQ0|zAZ8{XqK~LhBY99XO-fIR73~no!xf3U+XBETPt5JVA zn>j@nsDtzPc2sbWAbUnM`!T0PkMfm+tmU!f>YVSiOb)a0Zk#c2b>blsoaP=0Exg=$ z6vr2=!Lz}jAAQ3wOvB`&JMldj1Kqxz>dNnu!majwxAkXbP_<%XK_WI6-0H4g`C<%uYa}j04UOMGM zw+c|+``$HRf)1(~e0ym#vUqvmvv_*{1UOmM0#i-70*6T4dDrtnpdxU=a;+92aiJ^e z6pJO`+9Oom3D526u3q9m!>OAqColDu9O!HG`v08;z`HiYQf~WobQoy`YPx^O;&z#G zroGP`K9#m?7>dW$HL$E3GTP`C*y>9Euh3B&UsUT&Wlv zo)OYHK%MEB#+pgfD7H!w(PDI^Lszs`{X`lE+C-e%CS$BVcz93-jmAJ4C6w24aCkI z%ql3dkjutqf=qyDv?Xx%|McQEED*qpzMrJB3m($DeF)MO&I9bX4Q@tTLOqIgcela~ zQL{-H-IwpL(bGJBdtrY|i{pe3@Dpw%icj(U*_Gv5M7V^*F-XUWz$@9@nt%j2zVTSi z@SQbZsdlC-xeMZXR7R|jy^3!t{t40ARg&a<=}4agt~-ud^nDVkiW zj&S`1bF6KEr#1r}A@9B9Jg89G#Bvn=!Es=^w^(hD((lIJWfIG_PtDoP_ z-1n1Cu1S-hL7CChwQKd)bCy5BfB6GGmCbN>+yvg(ds$sW356Lh4vr{nqj!cQ?$E=l zr9BXx<#@|fK<Xi{t&!!|I|X`IS#W-HGZF1y6tvvJI9h9POUR0|wS7zcJjA zGzBy76whHbkh}ubDID-5d53<1ZFcsrxqzFj6!$>S_J4|80> z4~rgD)(5*L8phcc9*UaG^QYn8ixBRBs8&`&1`w89{O^CJ^yR4rp%t-B5~J$}Q8+^c z4lnWa*RtVka^PLE@zk$HZ5SKe5uObR?z?Z)T6sBw(PYxrQD=l?-Jn&Gko!|XZS^sf zj*;y5(D_xFJyYtn7B#EUM;#8uToa1MMwZY^KxW$k`bfMd*loPx$t-;U^bg3N2s$LW zGviYqX}^EG)+ZZ^Z{?fBLpx?N`(3yBI8S+AFe|(#(Z|PGW;>w&3=8>?(rgi8yy8ds zDNxFqND8`}y_$9D_v`Urx(VD&+WwCzG;_&7Y9g!+hT{FuIRA%e)~q(?^v??-IL?uu zhURoDp7)OI0I`MKYbN$S{o@3>c+=T272{K=Lk@q2C4$|@qy*nU3I0e@+{TC1PaI

    XK#*`Fj+ z-12{IXdpYH!o;{MM}|@c%OeESyx* z&6L*S@v|w(De}9G#}i3(A6;Tz%XzspFf{Bn&ES5bO-n)_S5;~EY{?wiX$D~*ZZBZq zYuA3IC~INiQ$llqaEW3Ue13T1yIjE=#94oCIdxY-OpL!uY{{{=%nT$A%b%F)x zLp#sHYLa|bZeymKJvcl>zHNkEOgEtODymyE9cg{Qd_R$`=8qg;Cp`Zq*@KF#D;|Gd zM#WZog*35D?rs=QgLLEa4W2!FW{u1?kBn(@bd$xk_Y5@wkp9^n&-+{st85yX`7Lo_ z1tNvH!EGI1BWao^i;S7{FBQla`;_Yo&E}ToKi55%a>Q0Lw|aafz9 z=5rE!1+b|!$;F2EE0G8(pKpJD&BTAaC(8QGL2$vte$&NiLPlLB#8-*f3_2{B_tPif z62B;qrx#>psH5qbGs#Hj9b~OB@+i{P>w8yg@xDbdD(5%zOnxMGYt#GXg+W*T1Y5pBnz_azG7a*2z&1G1r5DzDIcI-({9np` zsFVAP$V4W!P7P|d#Ss6T8f_&nJh>*iy{0cUW()mIt-lfxZD&i$PD_7t6w;~#N91uO znv*_91XvKbOhHJ7uZ$+Ddt8>z+=ZK4%*$pr(^Dwgb`G2jC#_9uj9PE2I8MK8Gc;#W zHzOjsdSHCu17BQ?D$@S=akRzuz0kBb(tSm+dmehP?tXQo_l$s`B**F@Zn1xs5aL!6D`0n3 zBM=Q3L5m#Q34V1suFVq&UKza?@{)*YLvpv+vHQdU&yCtWuV(}{K{e9=K85je8Qt_h zW3K>*BRW1deZY!@T>||kduf9?155jPkRxJwoFj}REBR47AFIpSnshqfJ}Un_uYGgO z)9xdb&7{yC2i;SY!r*^0>!oCz-GlFP@mzkl3G(Tjzl_EXP?9-!b?H+n=B)%C5N-cL z`n3i@jCQM-pEJsi!FvOExCJn{n|`G2EY!U@WeZks-iS3e^JWeL&(K@s=`NjZzQU5q zP5sxF1Mpg>5V+bMW06bA0X3D-67O?~sW}-a-7tdx0&f--)N+4Z@*}I&+hXD`Dw$o{ zCO;U%c-sDI+^;KS)Gm09UeM|8rz?xi$5KrQou?fA@HJ&$7H8d>*u@{2UKa+sz&P=x z*p@3Jj$p{E-&-cE3c9gxfvG5R6hu6$y_Rktk4nc>_#F#ta*EkJ|3`{HTWp>q3?}Bv z48R8UmMr-();WKT-G* zqlSn9YBJdPh3U9gfJxmt{tOdfO#^BHI+|A(Coa2BL2-XE5k@yI?iK5q{GPG;reQ_@ zc66#`5nPobVvQ}EOul{SQVF9|$OPbN6{gWNYBm2UABrM(dv5^U@ zT(96E80%&8u;WuDyvzn$tor zIsCeJltaYI#j5LP$e8w z=y|+IMq?*-_WtG-8$vZ*MP1@N$d&7&6Xe8}b1Sz)SL*ZkLk+^*_e1xhi$LjCwY#;T z3};UuGXxn!h8xNa*wzaO{TP}ep>coS@Ak-OAJ0PL^X&(DKu)DSdzIm6=fL)6?0{Cs zzEyvdl~he{Yu+hmU)$YK8d4SVWmoT$~$&}=4nch4U>%_-&>n@uRkwEgY$bhm#y zS|)COMx!^9bk9ARNu!=|{;!Ns{B9J_979>=fXF7Fu-i2Le76y5wQT34(T$x27#+*~<72;o`^~(x--)zk{HNtl3v}cdZM31K^2RYJE!EvER?Znxd^W=xXMFUr&H)95Edn-5icl?&uxyoeN!U@w^Z~5o++H3l|PmzClUNw$`Sph!2 zYr9#?Qn3|>In^pfDZ9s;kA$>sFimPGwF4bc&vHnl_|Ox$P>bk>qPbX&=h%E zK4sYH1OWWI7-2(s8yk7+TXp{ZQS!I6!4TJ-7=beokEHN)Zg#>`h732ZMuQ?iIbY2TAL*dGB@1mnr z4196V?=pM==Xi`3-Svu$su;X18#%=c;Jm#@q`;<81}zRH74p&MEi%f>gFLB3 zH*TSjh;}vKTrVSwVR9qiDKE!uo^G#)+Terp-v>SGBMSc8EBt@rikASQ9>ZHm=lg3m z(@}^z=|}~7xO@&&jLilv`@Q$zTp&Z7*CAhw53*d)aA31bhJ| zGQN!&{)mcrygm4TbTTTKvdr&JpzOoB$lGJ`_n^9lthMi>gP+LeqQ}bwD3?OD$UN9a z_?Mb2zzv5PSs>2@EXd5(L><8-eoJ&QbCqbVUF;dV_wicbREgda?9QvD*^{Ek^m}yD$gShseGEN-1nCww#*Xm z8*WVm=ieT@IP82xVf`}~Dj!F)DFr>>qcmE{5;rh$vf9U7PnTS(QUs};6(jD`?jQ;; z9Pf_4hcaTAGk$ID@ZM#y#8QCm0yqQuIEZ=anObER+O z3Rjp_`-%g9^q$l}jLB7>l#>)Xir){nFoC8IsyVaKcb3x;6z}p>=r!~)Em2hGJAmX2 zV623(i^A)ON^8NCvc}YV-yA|w-Zum$+WG+%?=Q}|N!O`ojs=wmA< z-xpQyoRw5(L7VxD<*}OYdDWS7!sCHom4^z6<&)%p?|A!%jr?v;i=ioqhP0!JZ>Nv5 zKL1quBboO}M0a*IVc4s>@?m!HpsiY9P1WEx$mF4KWZ^`(D7)Bcwy=!iw%Or#7OZ_E z(84~)cQDn-4_dML8*x|VVQVoyHZroEMmSr*Q2qV-)|V3GF5=d#@g#62d!|*taB;INsF{?Jan&pEBU)lo)A0{ z>uP2~`?bjGSABstT#)mobIavOb#xH5vJsdq#~sV^`1x|#T#QiTNj*N)SyS{GCx2vBjbYakMFvVp$ zUY2E1Gyjw^%T-oSj^S9v=jBoh+!ZQeyS-{lb=+C|J(4cul3uNrwfNb&4@IY`#?Svp z7TCO`WmT^#I3)Xd%>l*+SYzS%w0{h}s^}b{po*;>;>%Y~*SnQVC|&r*JG%8{qgF(J zWv%ZC|ABV2CNOqi;d1lMXZ+ZPyDT2v63r1M(lVcz4P<7)!SN1-GPzJ=Yz;kkI?)Y) z@~LTv@#DN~R)(jEq!|2Heyfl%Q=d2E2&AWmLd}D{n_eE*rCZD%a=26%e*k^zRD+^; zcd@NnH9#CJv1&yr4Racq58!j-tRSL)>NS86;691iXRMC`mJryNdD1+DUCEfsfqj=? zEDapyF5n9mP>SL3;}Fx`wqhB4&jmyKF_(E(73a?I2Z+GT)4t~KUXt+?$Dm1xrg`r$ z_3WZ*;#qw`Jzb~=Q!-3CdmS3Nd4uXD?qGW8{!XU7->!zMb0Z@9bPEE@2FwkA=9;v* zl8Tx|j>q<17ip1|k!cxz#%+Do&2VBm;LJ2)_pu?Kp`CT1dK zi9IP1uXd2^@_I9#J7?Vi=7U>f*!~?b@rS_SCR_o^3b`2JUU)A;WzxHUkujE0pRQR$ zx?lwn!b9sA7qeCje`L&!72~k~OYzIhjD~ClV^oQ08PR6)p`O-@Rhqtn4o@`SzI==E zzrd?}Z<>~UTMpwdFn$vG&xwY={m+R$et+li1F2V*k<>4oUWXFcMsV}JbGq8uoUYN! zT+A7*IFe-)3gwW#`*x>)^ztDfK8b4M$G2~jxTFTQe)`Gj*Jn2a$pWoS=h{@&i_tYT zR5P%Y;>^x@GNtZLPUNc@vSDkONALV!hJs>ooo4L5IT9?gDqwGn)vZQ1Uy7hta`IeK zgk6)w)!{FeVO>{8Af4H2QI7)+{n#0{6e<5Ksq>OVr%jDI%($L^&t`PL;e!(JWv6>z zDsj{ytzZS3A3lBQ%7#Pge>lkeo>(wj-cN19??~6=Bc^}?MLV=5mOH!A_~sx%vjAIL z)x2#=_hU;=vR15ZgOi6-Zw`MJn9Htq#iZ;Lr_pi+3)j6HVU6C+8!6QV0Q#=Vl+}?n>Q#1fZk2!efmh{2 zI~brBz>X1q@g{I<;~jU#|P!xHL}>(FCI1?uc8RA*BuLP?K{&2|bbChfRUP;DeaVftb=-{EPZ;GU35Ab%1DBCY4G4WbgqRmxivXTveq;Txpkx#iqapzMIX(+eG_= z#iok6xU*dqs~Wt+-RH?wUlj4?=OONTiY*dyBt;fcJB{9*hPP&;==mgdjz!=a{oO7w z0fO4l^57gx&V|M@a&it=>4C1`bOD#z2McHSL$}C=l%DBbb5DpEe{xLe$2muG*V_3h zIdhADFSM&yS(7-;+YoqGp6Y&i^UR+3)xv7f9at|TmO@9)#G*0Q!$rCUZfxZw2OhNL z^>K>u>u~JQ|8S3^qr$16>Z^6hxIYL zlRGYrcO7#$^2eRecVi9^%33L3?eU7%zb5-d+u~U^BHB%l4q6;htqQ*I`q1fc^r)!T*J3Se^{dpg6hQM#d`Vn?4WR;nrhkm$Zj(K*cvz%WwDS#Ioe) z0Cn0$fAv}zkDcC8kX#~qiwBgHV_gL?eMExx+sIKcXUCcN6_3W@sjdiuyPH3TK7Seh zZD{xn28kG%Lx2VY9-rdz&8eOsJ8*8W>1&O8# zq2v!1ydG&QmddLdconi_2V~bbH0)pOb5h>TC%7LE80>A&t>*Rud9?b2Ybe$59`v`^ z4GfXIfq8S$x$i(#F@+KVg+oW+V=;@J%;U=Abn4ISSus${ls1stUimsh2X`@l#bx>+ z1l#GsQp`btjn;q8zt0xIWks5@aDNt?g5f~8P`y(W3GYzP+CGf4`x{j{i(Y;ydX4`@ zm8`V=rz_PAB2BZV%C2|(Rkp=k@Jg=nZ*G+6Y+Y-xoxb>Bm7;-n&P|O)Mjgt0mvo%C z!HeUm>2f^oi@Q+NOdd5|bT%>r?KQ#A_J9+Y!LwQui zgX_2wLxc6;yyaY}6OhBmx(Zl3(X>tgp7M#EY7c&#!tr1=_!E{b3^4$)vlu5gy8lSr?Vsh9d}b}+Ru1H)zvSpIXdU`UDaj_ z7bn9;_aB~?m*h{lVp+*XLrxK^CxhaqwvjkpEi+9SYKudaJ< zEn#9SLxk)5r%LaEojLA*hsRzOzd<>G_i6A~01hyE9X%nR6HtwL>IiEM4K?!k;XBGD zyej2tNU19d+4+`yk6N${drr~yFz=c)Cf6_x%YwKa4QF*=&1@JCH!l-u*y_151KQ7C z{#Ccdh&dX~en5J<7;E+Qpo-`qHmah!zUo(hzvZ;uZhPIqKXWmE+3VLeT>!krTwBVi#Q1`mWs^pXjFC!f`97w zWi7qjmEYeNvIOLakA;3YW@xCAmGe~0rMh7VLZ)?T?4Z-?P#?9Q7cge$p4?}ei;h4q zdvnhG?pLfox1`&DGD$4P9a@_G$G?Vb@ofmkTmYJi1ww5V`th`|cDlgVDU5Mr`?WuEx55@;O1lf;G<@1|G?1+k#}> zfjU-I%-e_|jDQw{2u@u>pSzl00aKQBPEAWbKC47RJFx4^tNc6c2D>a4o~oKyi<`d5 zl{EL2l%>xP8^Omio(sgp-_CRMK|=v7yfHqE7N0hj`=4_}Lk&}2>8$Y$D%>xtqweuu zFdDo!-E-7`B;&k~O8=jU*S=jNtGt(>j#iF~0o3kMdoHuA)p#1znacW}Ce7_7A^Rty zGblkOQgkKmGhW;q-^*DJ7M&_;Tz_h(b)#M&vv|gqN|e|;dvZ*XW|qmiS?0jzy96TlY!LJ`L$Q~$HyI6jgKR;r*W=4+plFRBwh1BqGAR0yL0V}076{mZ<3oOi>{rGJGv zzcsvnf!kT~*8hJMPXXs`|5x#LLv7SqXw2W_%QsaVv|7bAl3m0NT-D!uRZn{C(#!1Q z&I^y9C{oydYCU$_5_t*46Kg;uzunU<`}AWq!0Cs&4pT?JXG? zoHxCv#SpE?FS45(ZcW+_Gqa@26@~$FHZ~%4DZI6G()Rst8{6)K{j}&zRyhK8x83$M z*k_z(7YpPs+giyl;WGt$*+D^=i(r;CQ?n7?TAk0ej~4!jCTzFlwgzpDiXrlOiUU4> zBqY-m*MaTQf__y%&Q~fjehur_vGCoZCOo*Nf6c_Om9Pcg$&Tn|fiEmYkP8O|?xOjk zD{f=pP}2TrUz*iCYK8)*(sSf$^^pPzlI^^6_HmPrArwpM zFiY*S|4ga?i)QladY6{(SDWo4ssG{kMu3ewQvblO`g(kB$ zj0`LEZp0ckbMXeyeC%gZ-F92W!Eu+p4Qr@>CT~whM4(MfF%2q~xqRcqz378~68af{ z2de)UMP*s}7)n{HxvHX_O%}~FAa|kj)i;C_Ar;G1eC2A9Y|Ex`%7qo?J39CG!aWqI=g^Z-;L!L5?Jj{`7u{hhA za@o`P?a$x2f#L?}%$Ym&auNDDuVzl&6ua14wKM?w;jNW8ohB9%z2eiCV7%4K7inp{0Qs#)LW>w1RHBI*4zzV56vsXNHe!vp!<yinm@v(K z?|bp;PxNVR?XL>@=YUsy1q;y8_3tg}n!a+_fQxk;_pz)3>0TLs%=+@JlXZb|BT#dg zmv2gkdH31uG8aC_bIFZsy>~l!FW3wAN#gQyUw*}fAZu&k4t;m(=OJ2diwU@$2xF9Xecg*CG$$$c5;{k37j%e%FrcsbI-3DyQY%Cd2)+5bTqR> zJ)V!ig!uP=W|G65Vo_DPuxZS;ASvgUQqWyG@mmlq*f?0L=An#~a4`<3P+)RGU``Lx>ky)s1#d8LR{@B}zNb}+?n~-8dv&lEzdjm; zrv5+dy$4hjU6(crf&vPnD3U}FB}>jZ=bUo`A~|P&XlR0fNES(wB};6{(9nPZkeq2U zNQNc|G^wHCHu}z;nQuPcnYHfB{r|iETdTSYtE$gAd!N0Z{p@q9jv+xWFn!&eZqIUB zh=~YYh-8x;6x8VvP%3g=>OC$SdyM_M^x?ennFQIv{A01$fKy)}o<)Gm*m!;I>D6Q! zausOd03tKWA11U1U2`NMVp7`3FHY8q)J<{s^O5(Rp;xAFV zb?|~2nq0VgLcvDBbG*w~dL`c(TE4^rw0xO=IbiVjt^|79{rm_-S7O&gKt+(?SWJ$g z#u~$!!xJ5I(`FinOZwDZHY!Kc=}oZEbUoDSd*!k@GtzAmkYF(lmwf_1sHz8NCX@qI zEAKPszPzc}!zxFiS;cT{Ogig+iG^sBvM5Fa4l@7EE;?0=0wUHWx+2mU1O=ylon!HT zNU2$`&wH&wN6QSfkOS3fNuTx)`Q~KxYn5&iue%^^W2e7VGWK7_Ps6!t z1H`-GeJ#~z+m(Z2Jx7p>w1D|ZF2sg^@wPqe(5TDkYpRiQzL*y!Mt!$biqCF;nry&Qxgz^*g$UB>a}pD!rp$-xtopD86CGSBu|fjw zKMEIOi}i~+D##z^oA-yas~8yn=bDUn!4!qC^At3UXmqyB$vkhLX)><@H z%)=^re7%n{XW3v5GM6u=?U8Gfg(If!)~122b>P_|${tH86CY|=FQwxB)o7Yf8j37|Qk&kxz4dSOe6i{NZ)bMz{57*%d(LCiYE;`w zuzg(WwY7EC#il({tz)|s=JSUWAHh1f(}T}k)(4-y4-N&3U54H=p5jAbOcYl>3u(#B z-yCIY?JJN`N*+GjZQfvih!{CwUl(eZ>e0K9dgk<4hBM(KK*Y<85EJtr#y{PIsc9BQ z!vpS(J<#C@3c}9F;IV&10C6KNH)xs*dK~gBYK8eC2i%gms%r`Gw`?AZ2Gu()N-xT; z<`rja5jBYtO;&lP3-(hpzTu!ExPdKyj`7cSY6iTvk5q|v zhb9Hz<1QB4qc#>VLTomwR$BbjgO>d@j_)vth=g1m_c%Kx`SeB7juyDn*AH(#SXo{k zMo?b&on7Mo0jI{rpGB<b#KkNtRbceQI>5CO7^c&Y3y=WrI^T=%IY$1nR1!{c9 z&g^Il$ZxCyc(^IUGtuxjE~8F!)hD(To-91Uq9Ej;WBshG_Z%7N-i?+Eq&;#yFV1GA zJE@?5g3Af}x-u~Dv6BQJw6OH*FeIY$0%^0=-qfondFtl_no=WIYF^aO0hw1;S4+ez zRUa(UT&va~@wR(y_^2Qa;@gIgu=}$_lpLpOa@0gmLy^b3rjKM84!KfTO%(HFV{$2l zyws(orHc=~#9U{`=zWzshzz+ph^1(*c_V>;Uab&qpEwyDrY@1`AJGhMmrDBlPR3wtiQHXm^2 zc$<)ruvc+{(X&00cq7w$PQx=nQ1V)xU|`>f!@x%d7jY#{gk!fLH<=?NB699OlRf#x zXqj;M+5Fol!&*DU=~{M*3g$2EYemAq1mjXOROp?!xU=8qcVET7a%HQ5ER|V*i07Tc z65=sS^dBDW#Cizf7Qc0lBab zJM?rlJs>x-^IAv1z$KNz;6lXEMEKuGYs--e{{%WastG^=?FK(eh{M`-eo7TrROl}V zUJp@3Xo$j6Fk&bjz>R()lD0X2Uaqv%8FxI%)tk82!`50hv*Uj}>utsKsQbp>bWkW- zwW6CgVA1pYByO$%K~WD?;9p8>Gsu6&Ch?nIaW&IINy?4q6gmjIV*qn zZ^~l3a+xUZEDNR^MEJaXe0q)396DdRKd}>vowE}^d^ot=mC*AE+vmmgFdM{-E~AMi z6fPlW2CFdf7?L3=Cfne#8^whnlL{p_Ha5CZgZnEzW8GoH%fWtsf8%=oN*JODP!CCC zdQclWgDF?sTTW0L)>0FZVP7S&h=_|TTFdf_&GK1{SWIZP?&;s8x%)Szohzc@t#z^E z+qufZubOtc3yKU>fXE z_khzC65#n>=LR}Lc&zr433~5jL~^mCv!FL-Vd>!Geb04>i6wly%2 z_%WZTD1akj>IXi^9Pe7{gjSu=mFidmg=fRDpMS9T^5P8(57){R^t4&(h#4)`qNft& z;IDF;Z-Ktl0Ru$ZS^4-AG?^vXPGx zSoFnzt_o`6(Wi@6MN;8+BY&b{<1nT2Zvw3PEo`R5FI;;+IG?{mn@UeIOWyW$Ju{36 zjbb17S6G$=*ZMQ_+*Z2d9afCZ&CQ1@9~v~#q0?*cW7^ETvz4^+^^qySh}bl5=7rC6 zo#S)a^QTg82GMSz1A5LTcWi%b2dlN1jKocU`Tkvcb0`m|)@e5FigThPlat(cM4lW5@v(85i%L_fAu=aD3MzCHjy zK0LNZ>tI{Ij^?XnXS_p+5lb>r+}g++&<6LfDojN09X1U#ZaPM7q*w%Q=;-rCM`?Qw zpV$zO@^@8k^RUF!jTMdc+Zv&ubsGqO*vuqs9=vUTY};8y%#jD+p}Trc`Wj%)Lfa^i zT%sXx@jD*5(5fiXV(u~Ull2V~SfyaQZ0JpM6_jZ~*~|^3?GgvlWkmymsQQBVDVMEo zY@A_w`vw$w*WF-q%)3^y|5}I=M`w3tgSjDs`2__U;3$YjD{y6fvZa=>ibj%uj$eFb zY$Kyt66n`uZuprkdzHml8tp8{Ok#R`Qs4?)GWXeeAWz}wkDJ#e!yoY4zEb2*si>+J zqG^}LrC=EMP8EcG^-O($Q+VLSUND6{9_^;$g<~>aeWvT z!oK$qb~jO6jFzk64AJ~m}SK!x=!Pv!f2v^S4H4mzC?swjak~YMije@Af7Q_BMCj zW$ofrM1kT{Noo~M%xXdVVE34P@yqteH`-W09_&25)DuZCfEbrARbr>k=#ZtHg?0 z(;dx*cuMrrTN(;kYfCAAm+I3j*N6wlzgd6sl;m!g=FiUARWQ^e{?W&lZ=UU(Q+>L& zzJYnT;iD@GJ@Mm=d4)EDySB!QM}5Kz>|50=++`ph@~H|z)Yb5ff%}I5(y=!{-U>|` zC?9=Yk>yai*pvKatZ)Vzny=|)xL1t?jxo4!UE4^a-;F$*X>>1tcJ&Wci$3+e8HU(A zhkESgA9|otj5e-jJd&O35=blJvikG*NOp>_=-q6cfp<;1st?!b3rF6v)oFItvvB<+ z+~>IuGISndQ|r%H39ni&&rz{4>+yk9D!q;*`-Or$O9a(@ls+;oQ!Hp$zs+r~&jrah z&>;_$v51VTkT<=5OxL9;uctSJMdv)?q1k|$1|IS?|MN?!2T+3mGx1>Z)ExTX?9yj zQG^nUZI3H|6URl<`?wUUT)oQ)Yd(YOO^ur6993P|(PxQPJMEiHrhqK7cv**!Bnn~) z)&eV@|#a9y#1e=Y_<>U-O=;Q)Es44p*ZD;DP2 z#vLme?fpgG)$4WCAVtDgY?$bsU8s{uj_~7V&B8N(ZM6$E!Sd6vTJuKMzni=yc2p}} zQjDhs9jtvOMER#bgzB0s?|P+l&>Q*~+(}1p*a1j2U;S1Ps%R%6EbR z5wA7Cx{4i`*D|sO2{dEnqrR#5ekrwxp(=L|kf^%4%8Xrkzui|a%5}~o*K>tIPdIpv zv3r$&Cs#pqM=|C@q_FxsHS38LHIIh&1vb_orqA&JtGVgOd=jxsU_7GS4sxlCf>s>m zeeKZ#uG;E#83V!r3XNX3d7%((VWR6C#UYKYz_}C7@zR%jJ*~ib z#`k7m8j8C>=TCJk#n|Pbg8{6%qOr;o^=v|@&Ss)`X{1Nv*g;Eu!~9W_i4Iu z`H|-BA%s&Z?*o={Mw+J*3FYofL>zv~D zZ>L~s5_&Kw?t>65@grEzZKrn!35UIwL{%oh9msceEVJ=xJpp+jX#Qi0_Qe%xNMomuD@Ev`5l@Thk%6#V_3prJ3qXkABt?OQd- zbmM!qCNAo}S(gLf?LC=+GbVGNi^si(6hhe@L&c0`_f65V@MfoBX?kAPon_Au-5 zz|Osyw|y#_IDe(kYBA2&)x0P%5y%MHeAD!zTY(p`yEu8~I01Uc_VTXH%^z0t7nJkU z@(v!%qE!Pkx& zast;ddm&ND#CjhOz6 zs}b48zv7!5TX|yo-*GcZ>oJOr0>s;F1?P8r`ZtPqsSKJ_7Q;i~j)3f-%sF5#0um$?YZU44XQuw6F&N?&kZQ!iCaJti(Q`4~R zS^dR|S@*OpU#I3T?dajsq5&D;wJFP0gtfzJ@#rIx{$Q+YdDxOrv)aape0gXtn4DB( zOwicerFtXJxLO?SwE*;C0)Kq>CZI0t<=1cPIZ<%Uf*Ek+5lQC^uJvtpP=>g`89z0~)Gv|3YkGr!1>ODP&I zp7AH2%Xy>7mfE#{wcgUVXhTfVtG6RkoOL+7AnPFkI>WSUeHDT{hR3Q4Qj9gZrCs7X z$a|K`esU9Fu2x)V54@cAj~*||pzGL3`mvq+!1*SywnoO8-$^i0hRk|@<4nU*o87ug zNf#i@N1s}kZ>1r0_t#bhX@Q=1cDTp2>B-0YK|Pc)(r=xAxT+6qd)0&{^-Y5bP7fI) z2@dm$XotHp{JYus<-FC@ay=c^TjK~0r3^b0NGDq@mZ0*to4QUxeu651WXTlXxI8ZF zJL_Lkg*JS7-vdTJ5qW-kpp9ptT-r zcDlOm!b5yp$l_rnu)LRRzjJRvqcrprjR;-Q+9#9?Rl_?bAgn`OD@O(U+}mXq}c%M6%|zf)a%H29kGlF8z{U8UsH87(fn6UIZ&2w%|M8?{&j zrnOw)nhe#YL0B&pf@UI=2#1Ls7i~8QSjJ8By0*~}NSTyN2+F!%@)-q!^Wi>~B#)i*h8j}pQ?4a@0P8J&{*_KYbP z&0A4ao~DsklIbZKjlxT6fU}*|``M?CgeSSel$_Ij~-0VQ@7wUSD5n4%qTx)RD?{M{v^stJT8A_jGKX2Ij@}Locj{`{> z=+CpZS&&Ol%s#i_J+l5Bhw?r4WVrnt3G06V5b-{)+{!((tV84^SQi)cgBy(>@`=&R zQfTX1z6ZH}<1*iqDCy)vW+t8Hh#o%ojrXr)N}4-A5Fe@xD6*}UPwQ#f57Eef;J7UV zee%~++_g(=6Ca$NshLQpF*mPMH(m^+ zk+d#y`T?ZzcWWna4jjXW*XL11{1cARw?7z>dx$v;%3@7=2Vn6|wYHdv?a>4gaTVBq zf1|~A@}$F%N$ao*3ZrAukA;BTDM$s4bcN$Yzp!`a(fP`}&@%;p37c#l-XT&9aH#I7`1nE~j7-w5N%(HB~l7Y6tAyFhPXjFi&g| z(8T*!jpqDxV3Kh;2RycaZgdta1a0bvH6l+%t{+{su*j*!a%acWzoEn2J{XBJtvSXp z&}sW($JwpeeOB>dmn;bSqxQB#D!6CIN%}iTK|0LsvG#cNS`83Xd%MBU=s2wgu75Ye z)%3hk=)I)ZMC+Q*UCSyp)FX%Q^`NY3PND9R?6vmGz;JKA!PE?YWAKwZP+-`=uk@JV z(w{e_-dyK{5^8N+Q4WJkxU;u;qvM{RPCS@C7_*r5R(r|T`YF;}M)Y*s1lFHqZ4t=D zyDUUxZRzEq_9@f51D$Z!jt3#H8~eZ(#Do`51Oq4%=SQ&@C#|8|TY*|6q+#w+7>LbB zbkDD!{sZHgy=j4e;Y!hmWXcVwEBla+6~AYqe zwgFJC)tj-_htqw7AqnA}?vp0(+UHxb;Yk=R!K{PK8tj`qgVVI#*9~K;zsJBw(xxs% zW8ENh37T>uU~;9Nrn{?ovW9Tt{WO1a=v6WxigI4h5GR^{&&l;s}#+ zz2Bt>l(Cpf$x`|zIxi{U8)j$LF%R@C9sEy20XDLtS6p;0pXlX!i`%A^;fF+x#LeEx z8xUl5Uw04-y|t6DA{xSD1e;N81HgG%u`(geMBUbB)$`8Q&l&+c=K(mN`of6@Cfi$} z<_L&?ivHEx+cX@BXHqTtNs6vpVAJT96z(g?!A19%&&r8%ZJdFBv7A%(Iw|O(s59=~Q*>#V7u7GMtI;G1AMM-`y5} zpPw0?%3QY0qSHnI?^EoWJ|6w_)?4DIz*Ks?6!DBcOT5?Si%bC{d6JDOnI*e;CN|f3 ztm~ii5U0kVLI!`N4e8eBC=)j6;!3x66qU7}j8W#N*jaNBQDw1{);OEuK%5;daX07) zgMdm4c>e2|bwvy{zd4MA8MvV=5J=LSyO!w-^AaW}X~vgpxAgkOoIPn&9|s zq$eLvwTO~4U{YUb+ajs*cXRePVJ%gSu?yD?P>3B}n&{ zx#J>2l=@(4A^0?6191a<@vg0Z&e>!v)T!}fp;y;W-Kdav1J%ew&ERPnp4i%j2z0uj zmK9O+H?tXNa**q_&<%rV*BXT=I@Ayr`9_c>e&gC$;fjtqr*W^NEb=R)*Kp6OWUElv zf$M~4p&a8NtNnp5&4}GM@G^}k_lCe-xOW+*AyzeB`ZbP#XKC36`~Dh#HweA$J_qai z=fP>0ltpW+4je$_dB)(xn0a17XRg3qaoPktlZD2*P@!SXUDrQ=5X|AarGp#t; zWTEetYIKCcwaUNBw#m>bPj?LW^(hZMMo3GREbdm%i;JI>c7upRxkRzECk_oM2B$Pv zYhuVcP@~+H<=&HRFM6MUZr!GO5#Vd}O^F@#Eu{4yhsq{5nm-$%?ta?q~H9S;7POwo(#cF-QKA z=+mpk;5rZ$@cUk_jSst63+pIZk5VoNS`wJzbf1tTM1br>*I{&jP*5)*eN)AA2$@ z_JwPI{=!|XX)~gT@6iq$%L(V@V8u<9hijMLdV7K{vqz9E@>3<)*mKaNkgaTzl_oRj$9gOv&za$D}R2IW4&n@4%g!@gl-6MUoEQG z>b2s6G}or6jr_(WMS_FI{dNl%vTNst74HQ}v|_(+6Vb>j{{_rzs!n_Hs$TG4SB6XW zl5L!ei2012Kbsw&H?!Z{+Io`J9Zzi2FS5-TW{r@4(|e)jIy4?E(_Vin?3GjXb!oHA^;yD5+ApT;yu}wM5)?jtIPQQT=%{I}((AkDdCW zgj2kKzLe5Jr{$JwJJ)VG>#yL|!1<%*$5BrqWEA@#S}}CA7V%vX$3BxK8H#OkH^#V6 z=J8JAwvmDNuZLaKGM$=bx8;|=#OiGMiNvAyo1Xn1NR=k}lB*{-Gdora6^B^n=*b8*6&v^C`u@k$g50V0Z1YFF&Db{!#<4t)mL^;G!&ggm=;-6kN zRa1s#Q{gf|7CKbjfV`bg_&YEInd2LPu5_}ER>1%kpjU@s#mzK;$rujo+EJ&rWN`uB zM-aZTi6hm=>9OMeN&1GOg#Lrd+y_g%<&+-pzJuiW{;ry=`|3#5z#st;btrHDn_8T;uS6LnPwM zFRRfS;KP`|*72d9E3gn6SVH%vW#_PKW{a%HP?J&$ntY5RcYemJUi>_!Z;_RM2E>NW#k(I7&429|l!*Z@jEwZFn2E2F6noFfiS1l=p;rSblEvxSvRf9T7` zRGVsNK`+9w77WjRlIV#>Y!%YpTUJ)BfVFey0Y)bJhEl7;JmOXPVoGI7Adz<{T?3bu zpVz$xfNzGa**MGIZ4V6>XzJsJMGuzRGKIXp_MsB|tHgs;r;*jBmMLk*&3jRh{vcmo zb)e9WV|+e9ov>z>af-dcR^X(~vU*rKy# zKkFqC$TSis?3+;t=NuT$Br&u)E4@R98eo8?)c_eDU1wAgc=|?)D#q#$`*?z_No+;0KP7`UGE&4nG?>4fwKZFfmOjFHf0}JQ4llR? zFC_02a?x9*FD%7qAkscAFHIX{AsO{J9_LiDP6YIn-SA<*Zib-kYGye|$E54E_qNy5 zaxovsau|lFR!Gb@9R5!g0M7nptYlqyg7f2Pj zIm-D(WY!e>@)HppHJxRn9|fdVUkXb)5}7mBYA&qSibew3i*sm~Fo` zZuZI0o_8in&5Pqv)DN%23$4*^l{{Ai&JRsO;T7bfU*R+#G{B2T3{{f8Q(g`H$zR0I zR7)U`y!33|#|3(;yLoGD_Tr|qGil^*#-ZZ(^AO|=hcW`!fnl!{f5t7)!TMMDdwep^ z(Dx(mwn}!%FyB+IkjgDF6sjF(ThvXuh&=IY%h(n1I4WElv=7|Mi{296gf*AUBCG@& zMOdQV$5u&PmXtQLz9&0GUT)7i+8F6P?%XrAvs+RQPlV7p>M{5ZY5uC@)E9cSo|wai zNMiHn2;HdT8zFhke-N4H&ZKP4?!tfn4K58<(o-AHMVE>^xZzRIxT6VW=|c+6>XLF3 z$8=w{RmX$Dd~;ujLMzFX-;*8aTE>7FSkE^FKo2bdiyC@Co^quL#9XgTz8M<^v*iwclX<^`^lBR#azd!OK} z%9H3-JM=Zwe>z`-UQi;xckZjtbpOGWsY*!RRS{^2WF8{MX& z_l!UHArQfvArj?I4(i_x=d4Dsl+;Sr+#0rH05K>OxTS7fYT%V*s~>#UZJwwVUyTlx zngy+p5;M_AnkEJbooo6qrJ0Usvs8O1<;3w3f5zF&S85Ot5OnPxuQmHF8fLlno#KSy z(EKw)Di4A~JQKIqlTX{;gooFksXMk4C?Vc3aDe@S@%2uqrF4+rrWmi2ACwOBp z*qSH9cOG!_0U?`*@frnP@IO&?koav(Yc|=e+>wXYboX$vJ@!Y*RKS4J*yDil;Fgbc ze}!wDO{t~H4?onr5UWy#ZBvX&qsV)Z4s-MeDn)PM?{m5~U%zbUDOGjn`X`0ARoz=4 zKv~|mvNbakZI0##a%;4Ha4<)#gcf6*iPS}h0?D3ha_{Fq`oopW@w=&-M7?EJm` zduOa(NsS4WA1_RhqoUCC@qcU$`s?{^_MB`6&DGPcE`>t`!p6l#9SVio+1kcWx{N)J zmzO3cCLXHpNju~&<(Txptjd-fxUg3q|3EkJQ(Or zK}J=&LelIt#{V9hw7G}5tgVBke>)qisil*;H~A*xA{6 z+1aVDj(og4zmM#k+<%T&8y6=pH3v5bHzzkc2OkF~H9IFe2M-ShHT!=@<^S2{>F#0f zhHi?Zjop>}PS@RszRk+&Z_4>23ibbe{Qt^!^AQfl4Gatwa|>!UEoy!0f4{b?a~OE& z4=4JQkN#Z!d;Gsvq=dG%=3jqa{o(`qBl-`wVE*fQVhd+SR&y5@2TN90PjfeOCl6aE zOAJ>wc6NRaA++7RwBqOD5^}dOce8b}ekCNpE6L6&BO%SgFD=QuwWEivqooK3FBdO27dO8EJ1Zv#7Y`>7J15U=4o*&LWd%tIO(}T=T^Uv% za}N(U)_>-&A}Z1n+$!4coGQ|iwuW}rKoy_|&|FT|*IbXs$xzyze@E3`!CS>%S5i}o zom*2zfn8Z!Q%+Ob!b8JehFe98-CM&>#aB~CQAR~uRaVo^`nCWcwHCTkWrM$~^#1`w z-2Pv!`2S6|fA#pti& zrhU?YLF!Drx8ZO@n5U=bm?w+gQ2VCgCE$yG4{HIm?7wY|o(*CaAe_z`Fh-iP6_FoX~uhRY(i}o+2{Vx{n zf6_4iu3mg@MwQ>ky4=m?=v>gGrJP+FQ=;8Xg4Y4=E-vwqlWwdBuRH0&)$op^auggK z1)u;m=Br-lYGyX@tNiab9CXKrdcZkf6lRaK?}x9Y;NQ8 z(?=ZaTFoR9aU}iAb-KNPDwNJs{<#k7TaZ$#dDWe5O4#p9SYUL~Q6|ot3eBX(NOT!w z>tx-&{m_M-KJ?YLHY0DBTE$X_-PM(L`+KHLsJ zBdco*G(U{MZPibE{aZo!VTiBLjEU%+M2&`&!RZI8&bQEKZ|QrH5i)#z*Uhxl`})by z$nQHpmvnFffgCmI#sV>al>FwcX5Pp9?1|bAZX!#F-x$o_d?{Qgq-N3D6e<4roRE%shEqfs{oZIwz)&V|$HBq1v zCbn9qGxDBbcd30ZC2kGDZhq444vw*J#nq(96>IqEe&%2rvlmkrKCb)TSK_x0WR+KI zKaL&gN`)EXrX0uUbfsUgW<5niSuP!?ZQblKaGZI1eS#mxxlpNr3U zf0GGkw5} zeUv|&nk3@hRL9r%BI(t9Jh;$hZJ4m&e@U)_hQh_p6GsX8X+vGl6Y&e@(>@X1wsz2d zZ$s*v+cw%Uo&-1L_F+`E3$F6N-Nj7WS`jsABn47SP#{X~YxdODPE>*kyzh)_F>Bmk zPBYz^93S+Y>1C{Exf74~G*O}i$Gdn3@(XFhSB+2fUYOR_*Wl=EV9Q{-oMz{af7OMB zfy0N>k0-y1@6dtIJx9_Dn;a(tRGh^pV)zDHsM{3uAMv~Phr*enTF!P?2_a*%mtRlg z*zOWmJ?8h6?cPr=Ib^#y2hvg?4Zi*fQ?~@QHn+D6cGG-o*a3(6l3v~^)VkUf2yrzC(JJF z9Y3UL13%L#@;m|OwoXOY&;w93Blq)-%?O-2D)xfGhH$pK$D0{Y#!Is=96v?rXql$k zy9x2f_3GRkb{)NyRe3=rER&T_?cH6Y-p019pXWc63MK*@)GN;(j?Qhrv3>P45W+4$ z&Jj}K4{zD!EQ!n%d0!M~fADT=*Sd3_^EU#v{fLHI@kFK~;x3hj^;0`Ea5MFSqQ)le z;D!&smixlK@QLNS(TSAgHhF1}u?#L60g$%-iya$e~HLbn#=N2Bix=Bq7%`oh+8wlef1VEEl*RxR6-6MItL_F`2!GUT8PL&=Rn;402j9Ni1Q6d z_Y5#p7d?k%|ngo!GzO$Y8`cH=LN80CCKoR5;OmwzQKZ=DJLxbvH%m%mY7# zRIS-7y2WX)FY5@InYDT>Bsus8xn;L%O>1S+k92GK4d9oW@EN+o{9E!!{re;-KiCHt zocRc?pK3F4e{hVJ?s~$wb&be$bc^o)OpZD@}|J66g(;^I$1p(owTySlDpJvU;pt=wmy&0!4F8SoEV#CmE(io=rvKl|2htqxxNuB zgqahunge_PYKC?MocZ|v_QvyV?{n{(!{cD~?4W+af2oV}5;M<_lWthKkJvs}P7zSG zdiyMHFD=GoLy0;8N&H78Q~TRuI{}{FQd~y&|A2Pm*0}&wGa?RPI`mCm@8EFV_&)U4 z?ZyLe)T5?D=spk{GD(lqqX8Y5Y~fGp_mC)$DwUpxRr?4sPkI{MoxOD=ljk@_(F*OY z@yl{VfA;igX@Pp5cq~8QJ}a@TUZeCqoy3Aqiwb?NeDEj6qyh(~$T!LZ-CCEO4!)OG z^uJJM`@~qGS3GLSVY_)4!C5VU81EUGZs3O&=QTD;OlB*386>y#i1+1C4mj97>=!AA z)V-*NwE2r`?A(c4ZFxs}9PZxPA9c(rLarYge}`JyJ~RNYK5}7X`7I#zVb&NAH-JnC zSQ+Q4F7=Z{%?UY36C(>qCS9?V>H-=)g5}x}eSODnB0M`IGu_E*=*Te6uWn5~oMGC0 z7MeTHl9YM|wAz7ZwJ7QKH?mHaKAWLeg@{rgS1Q&asxiI)1bk8TspE3cA+M?}Iq9ZF ze|NJ?wj)w~2o4Hyd^|R?c$-PZK$Dja=x}UcEUEkaM_Hn+r$K6aVZRX=Z!b@+5fg4d zj@oS!@*cPEt>*T2ru!Ysz5~vBrBUh1U`rKnU=^JYPRXuxAtzy4u5Swe@;8d zYZek+9~FkKJAC2!jf_F`%Fs+ba0+?aJV7`2WKPDj)~F9oK2#h>Eo)!dM2t07w^KeW zz~`YsS$Y6)y{+qtJt5@>e*5uYebH%1y40C@m6x^3pxqv%-P%BP$_ox`!-&rO zbT*^uVSR05z0#xxpzjF|(8oKGe~F5c8WEPsp^(MDgOuwqF)&Eg8=ql1j*i(o**mRjTeAyW6nU&2Fmo7y*{04L>D2T#;l0ee~xRzDDdH)gD#LgpwYg-Habn;Rl$ zIve z4wpPlt*yO0G*p`D#6lKOLx10eds~gDJjh^|-y5yE>f1&BclFc&Vv>y%p zgkm{5#X2$@v^XkZK0Ucj17onNsXGXzyGOV#c4|$1EJ+1CILttYd%hn{-QK1bHGP-C zwe)q=bpo}_I(dSPn_^Ak{%~%Ub?7_Uws+xkR5sY94e`WR0ig{svxxhd!uU60W02PU zMWG*yK>uQ=74a#(e|IJb{t$Ewd?Uo4#2~f;&;}U%hhGh^TFf8(plJ*ED*$|`f_&v^ zn$M;Dlk%|7*m$JX^NHpSGuYg23vdB)U7cianLP%Wd#VOm+sG(AEytYr%d{|EnwJN` z;V^zdMJIV^_Bh5Cj>vC!*s#;(ZD~3cc#2S>15iHrARmHAe~^2pmtUmKKs-j=XPH5H z_jh$>rlM0vnkMc##)A`g=*seWkk5|1*UnjZIA>lYGu++vJx|IzvmyUOcAGwbf#!(Y4JF<)DxfS^BRM7VOyqEbE+8Eo6_fIQeVfXaR4Tq#o|FC;@ zL%)S@=iN&!`ybKioh`@f*twRQaYymq%{p7Apk9~z&K6#Kf=^#}GIC2=y=7AAvpYD# z&k*&JmGlF|#J@N}=8p|duW|R)iX;>MR&9`%fF+q&0cdA^!AEKnRnfomYA(Pn!TY=F zkTEE~fA^*Kq@QW#Wx4RA)|94(ckbB!8g^J^f^MVbwuf}cHPU>89VPU4BR+` z+@S*yQwi7k?c_!vhjWL>=k0W6jmqj6q2p7=xv)lutiqzdG(`QKe%iFcmMQKoDQM_> zX?gUMtzNj<9^=Gru0f^N*XHwAL{CFyhqRMSf2#cS=8%Hbw#_KkwEK@2pKE*8p4BJ6 z(r44<^)&Z*pZ>kEU~llvYp97VT_`|+g-$?yXY$e0nsVACoa5z+9w)o?mT}Hqnc|-u zs**a!h{Isyt*53nFV7p}-Sl!C85pKc-8Fn)imNAZKA)NpV)cy6ybqC=x0IwwW2%3} zf6eo?VnrWtWjF5T2{;3BxLql`{3U(uEX25?tf0@2c5^Ny(e(2#UR~)t{Ia+Ff_dP zWcC8vo?RFU+Nbf?tz*};g0d+%V}^^lc8sl0oG#+~ElYigf0sV* zP0o3@YFd1qYB#?xFZ`6aa=sjW$HZ2x`PApQ+}OCVn%eX7bUQHwx~gc|rtd#QiQmYn zw>lonOR()C?DICrZ^*i;TbtH2zb6UCpwak)JlzyARUh2+YIU!15^SPK)qGjC)Ys+R_w@r z<<`w6`HhSRSe@z_^0^sLCbTx~&rx3z(t#xJh+~|^Uo53Pe3FFtP8rf?9hF%uKt6gJ z$C*NH!!AEj^oCeP)^D*#dh$s*>B~2VRRu{Bg=hSp*yBy(0l@#iOTKj z9=ywo1$log^Rclc@Pfc z46(HftG)DblQIqe77oYcd_Uj}{;(*9Q{kZyt8s-l>k}jh_vGtE#>jph=H;D~o4uH0 zI9ywTGYl@?FXjEs)owVdb{eqtagjObgI*F&D}^+JLQVk_jAdumtF^h9SdXgl7~w5eqEWzjl$v#SGFTwoDfD< zXx`bl{P%^Hxk`o{|;`XX08gI%S+Z+B;kgivQak?z0)XUw-=hJsLG6z+=Y z479YmG0z*ou$5@ze>Y#JhCIFpTc}k*-8!qrldEVSJORIjhJGaH(qZ8V^OLt4gSlq6=Tvt0j z_ygX$8Zd84NoOZ zo^-s7v#mz8h_U400*cVd-X9b+#QS}et`X69@9(64STZ|GMRFqw z6YQsHA7>X{?zVA7hSm;b>VWL|eD4zPZdj2JNAUVRe^H_W>EGVD1#T|h^kfUauV_m0 z4{>1?vK@WF%RIsv9?rdoBlOEd_Ld*NGNrZ8hSreumME&9O)Ta@NEUbR?OJqk@j(op zxjR-&kGI`>;1h|i=0>;?VIp`rr7KO5RC7tO3E03*)PRe%f3cR>K5`z$ToNS&9dyDI zD2-7#f1vzZF2PAuZY;`WTyMmQdJG*6j3eKY7e9ys)ypM(EPOsJzxdR@{l~Q);j_4J z!*W7V*Qo5(iKRvvRowVQ+Efg|G7^Gmaw`sJ z!d%Vt&GF*NXJArjLT99yVxAi7*NwW{TDbz6wi;`(onPWbT607U@311ikFUgg-@C>ppT&wC$}Vh>{z0TIY0e52pdbgHhg!{Q zh^M%klF4-8(tQVX;<%kwFlz$MRlWtvf8v*G;>}!&|A2=2j2|@3*6RnJZ_a1wt@6!~ zk61U0c9M@}8HsGGxZgxtm0aKkyYdTnL3iWNGLFU{E=O6>l|Ay4b6!>gfypEFo7n*- zI{$pgL#7XtGvNpvam)kXjEP~kq!jK# zdCQ{FE=*uj$Pl06Td)55;#zNIf8I=_f&U?5d5ytF37vX)A4aW{zC}VNlwH2wB25iHBD6!HQaT92epWVj#`)l-lM;;ns{o&w;Q!f1zY-zSjWH zeU-3JK&hI{@5zV1+Atcr=X*+vCJsMPW;fv+k%iFg3~=%vd~}RIdyHhd%XEbsd8+%03ZWTJ z+Z$hs;LYW#g|#edjlX?WtW(E|8|8fJRJxy}-IAH}G?n%7T20Il0`RYwOdHEDK`H(f z5!yb@N5^4jIdA5Z6$(&q2o`Njw93TCE8H5g(YlYFj}oq2FZWObf9^E3@`v}DFEbyM z@#MqLo&W@jIku{KeAl7(6b#wJOMc_?YZRagS@Y_?ZDzlEhLq)SB^QXR<`z&(XReJD zQ*`rTz=7-PF%|9kspZ$>;EIFUMWdG$ox2H2H;lIga4uH@EhToOqbJ`@T5@vcp!j46 znsV!WBbwi*U)*Sde|LJ$DH8LuFR9t9-ZVlx_Yq~Oa;_Rn5uloc))4P-X^Lg}S8i|- zXUtaOPgIm2uTxQozDN)}7C9t78%R??&BII&zdjI&TC>b8Yg}qf7_eL&u&cNJT&_4N zl+BOMFqYWU%jgC2kSTQc^%L^#DxT+qp%T*<%T0a4OO@lUf4ww14t9>r>}91RvIcOm zTermEBCHE<8D+T+rLWY>OF696BnM*;A$iPF>qWS)NxpoI**)-5$}pgW&{f(;WPwoU zI1)bC;&?I?u}vG6@F^-@HeZr8;VuPJePg4)#Yw+38CB-lS&zC$>Hozr58OE>=p233 z?mAD`P)Ygbf9zJrm3~zbhdN}PK8!P%4SaR$75n3IVe~+BdF|w{!g4?wV5B zTkE{Olf#`|!U|#o{$i>{WR#^Jb9aRkzzgk!nO6O2S_|^B>NG%8&-@vpC;`6Wp}{@wp_B_xP(43frfQ;- zHQca7f7KV2{j}Nb<`qkrw;oV(pZrPWPK^J>01EbCm#*Ah7nvVKH~Gv=xX%X2)f%Oy zTi6Jce=8hWn)AU{(y#wOY};M~pwJPB#E9;PP^p7&@qo^RUm zk%Djt?*GmO3xKi~+bt!oI6H=)8{j&bD6WPDKk2tM`cL&=0(`Ij=2wEioYW`tdtjBj zf6jAFjVeM1#65iQ#Bqj{e1;T!W@$47+H5?wu4O-1Twyz!I2o5XR{YMGp+=`G@jkBl z&(;8=^_W&!^B+Y>52xy5G`w1>F{k4F@TwrD4sx9=ZB(KtCy-QGBQ_I9@rjTR$_4L- z1tK>KKcK?b4Cj1(6qn-r+9MGcMO3V|f0aC6{!(;529m%i_ENFuJ2YOWHEFgFr*beW z*;a3x@zl1(rG#P@8nTZ_e^djhAApkkBy?_~2aH-*niT5^GdveKZ1n zEK~63wJyANhrBn5p9F~y3a%%ve2a=6yv+T`L2c>K9%p{#OV5+`->ZLQ={qUFe=ec^ zB}Y)5#TNS2#gcN%J4f3iPWU2YmK&@U=5YG~yiur`z1;^=?5E%})1A0&_xpE{H@ z2N;@dbV#!#jZkisH|?xnCgRhJw@=jCasy|@W*Ju3$MJ1H^mU1cQze?U*qh;r8?qz-%yDnFLR&BPn;dg{-=%cJR48of03)?Mv`(f zW3Pm1YahtjB|rA<_o)@{w#{pb_?ff#?3tvmf|8_Duh(+fvxvi6Vp1yFtHXoOxW8m( z^WOZskWDq;QAka^h+)Pmq5!qN@P?V`E2E5}m~MiShWYQj4~n^uyxae+_r7;Kym{(4 zm~?4N$RCqHNIa?z>EifNfB5!0q$7Xyu2}Y8PWRPU?E|=WlOXU$E@V)bU zbM=>y0*W2Tz}wsEFAKWwL}t_ck2U)k2E@UQRTFm6kE&cIX#(LT#cQ*h?C#kEZ>Q4p zIdul=<30YiEKKtHSj8>?XOuF8-BjeWTvQkObHV3bvsD|5SZnOze-hs(F8U6Ra9Uzq zq$wf#&R^QuQ zXKMfLKfzvYCy~G|fArT@u=|$fXW-jevBE2fbaV05Z*!f1x`wgpbG=Ccmofr`De-_9 zolh9(4=R!=e>YsT6sC5721(T`K z%^I}5_s2rVjK@jBul(pA-uy>{FD{=4(yeP*ob}!+PaWVffBaw1FXGSk_|4%0V&bUl zyIo^1c>lj&6q(04u2(8RWJp|w1uZX&89#{!b7Px&;ZF5HWfrS(5Cf|HJy(|Fy|fvH$^Z+?>|dI_lV% zu9nG?3H+zme=s>YIT$VwvV4x(yDVP2Oqu+r-)P;B)rqa&Tj-V)yzsk(?{U)d-u-87 z@V)$o;|!&tEw`D@(bVUdn9ptj-t6Q5LCq@Ub^OTteKl>9vEwe@X;$$Ty;k@OpuQt%RZ^56j{1@V4c> z*Koi`?sXv@0hYZhAM4xzaU&v5l9Z!roqi0}#ZkJy^7+L!9PQa~cIj{mpylRjbcp%? zL^Jw#&*WdYVZ0?{|2bJK}V5KwDt0SkxS<3-jH4fHhNt`h~Fp77bfN9dq5H*-p4v%65mQd zNfzg`7)18o$dp$)>pBdd3%;;%WH>OpOU+(vMEZo1HvqkEpoy$uC=Q})ddmy5NH7o< zvfAHUFBxT?N1dpYDp#BAFnFYSjy=Hne^qXCKoecr-n3T9j~%f_T{(6su{_eSjYP@O zf+N`I2-3Zf_j?bwQf&x{Zs-)gMj-$lWtTHG@iGd4X`(m07|A*zk;n%)s=Pyqxr42d zC49E{NG-dM>=JY3P{(->R>$4DY_{#k@FsNg>v=#^`v!WKMhs4{BdP50Dw2R7e?}jp zW-#zo>DiK!^0%NiW})4c!O|27Sq5bRPS0UEvuMOt5`x0Na$AY^UhsR!l^G)KPyAlF zX1u{V)3d$rZv@+$Q}q-ZYa;vkKbuzcOw^A1)E!IHcUX=&5*?uH`_jWl*~s-kVcXf5Gpn<$sYV{xQL^wQu|n(9_QZs*f{$RWW*lH9I#r zXy2MG8Fk|)Ac`y*#k6lddE{5gdncRXGk(cOfoQIaze*>o+r<3Yh1V6wa$2tR`6_q$ z{7?(xz2MY(SOLY}YKIk3endMw=-OzPy98Li^y4tVVKeGHiganl3j}UBf17d;tM2oB z_b6CXTlega*`3{M*Bl~Tq7J(yRaNe+cW2Pbu5_z3@@o7KSm|PaP9ZdxS*$nlsjG#b zXqQn(`PJXB)4d?rSUQc@w%zS9L4WHjm^WM3(z1K%WBg2>m0##OoV>s+l_aXwfyPGA zucQ8+uhzY%f5x5GFM?O-Zl=*a+Rp-d-CxaC<7bLN^OOhi%2q zlBY$LDRIp%uPr&_FV1(c&!zv#&!j9AKec`Wg;w>cmcoiE8ERqmf0Di)C0`4wa~G8= zTDD~``4zVBPwsdr+^w`5G(_$BSt~&6TOVJ?($73DFT`&KMR{LVO&N6|v=Yka(huZ9 z;nv2H(`k>=vUr6DkW^QNlg!qU!a((YY7f(En2+u&Z1jo%e|VmyNc_>l^9HlE(jA9idM62emqNOzM5VB(=98st! zYu4he9WQiqK)+T8f>IPmg;-6OR=U~vMN{(`d8bRwI|&g5{<|B@_0Da#IF-vjpuUii zzmb@ksNW|3p)~=0n!vZhZxhncwxUea_PUiRnU3ghGAQsie-OGE#W0}r7JwK$k8-1( z=nj$=^XN%7F~?+x^St-Fuvwn2kbkugLk{!?l?N?*vT6%3N;(yNV*&bmb!4%@Zop&-zB@`LixDN+C0EuzG!*dJ& zU)Dpd4`!qMe2cOR$2(`B8i>W4mS$HZH{H&wD$EZ3X4_cn^T=w=nS zzg(xt;QAi5?81X)dRk70?uU9xre3R%{wn;#1`Vz^oVW2O)}uZ<1+umL z!rIlzhuVbpQeMigRR>kZGNA1c$*B0{0P7I%GjN@^f3V2?(z5JI`d8&kNAZ(vtBc!U zxtfsp;kEUo3+-Hhaoc|9!Hu@ED9MeYVgQVeg_o#yaAG<2o~hjBUfE;%n%*Z&eG(D| zx{N^@#>J1Ro;vOQ{LBnQz@C3CgH|5fsCAZi1A5QOvX^%%)z&+`!3~1<^Q$WA4!3Wu zGWA19e~9nbnJKE~)rQx=FI)1-93>*l&!5`&T^y)hdgxf=wl&ZoCnrG>o^s!H{_5(a z1dfS^TUbBs(EhQBzRn%i&l`Ej^3tA@1&ayWHPsNmE`vSahkr7F={JAJ&%S$rN@wS2 zF6Fx(uxH6npSYkRoGrb&(fVmRlS4Pf+FxE(fAg};R<%Ai&*dl>4Qi^r+zq~=+r77b zr&uA?t$l9f45RD_;!xIoihi{%tTP^NFu_Pg{rcV(K8ti!u^*0=^( z7;a_xI$iDRhio((uO4@1q0h2Nmx`wSG4X^|NMhJUO~@4}=ji?LjT>x^dUc|$&wRU8 zKCSv3O0ULTt}gx{xYZxaNMOPxv()7Ie{dS`0d41vG;-MGwH)oZ;@C{}6miw*-vE`% zh3(pCrrjS8i9ECLLUaHkmGfcnB12>?W4e={~f z8kl!SUOAm^?1ds^g&nt6xDr2Z4K!08QI_H1(o1}C8K46U*_RvTDB+=(2b2to=@+A~ z1>k}S=zQa}pMMGf>%Rqn_eFc5bK!+KRbJ9*?aSDce>f^?DGCSxjw-lNN{{|bW@B{Eds(QmvRr6c%&(1v znc%EBBltQCi*#mg~w?uF837whc{9huS0FnqsO20$UB3<1$fypMcGsftfgW zjy3a)3#DTXmZ-Ia9kvqSxcpM?ueE3_Pt<`P-!CwJa%N9qw8mJH9dUm|f4iAcq+lgz z)Ye7vTg%&(5EVteD$8wQ^T3YC3?~Og>!xwu@xA`S$C;NJr4UE>COFielP}M;u4vWC z;~-l;Ke`+@9<*;_o_ZW5=j~v(>j0)~K&V>%%+_`mtS&(f0IVXS51dr}#(H}o9&D`4 zJ$BzC6o?K4_;p5WMtaUke=LX&$wwJ>Dz65ca^Zaow z)(<3x@R2qOr7-zJ5YDCrn++}5+W&Gff0zb_tD+c$+}-TbRbmv79#fw_Rav`YA^&A3 zeM*}gbDhi^mMv7}(?m~e=#Kja3@?PoHLXe_ziaIKHYdoRMMvuKfAaHAA}6$L^wU!N zl*xCejV6)WKCFP-fASyEinHM7>>0$K@lyw3dBG-!b7L&1qX51NMHfi>c=&e1e*|=Q zDNTQZBN876ws%pz(ls1hB-;){&hzi!8_aM4y8bllmcK2ZHdOMa~~e`dGohfFv3B8D~;>Anius-+3ZlIIDBrgRQLy2~3y+hU}DElUN~ zPA2M!{2aCUs`-)^D(!Ea(LCXFRdUQ^ROgHp^pYt`7nnIcUoOJp;ISo*z8=#XMB^*4W^wgV%>C%w~ZIiXGUp;p)4%U8|({KQKub$(M(zrXd6=$Z7jKvfphV9D2>KL;mVYq~rZ^c|j)1P_ zF1|n?Je{TJf4}IintIcx3*k&|Iz%V|S;r;o+)9V?uC=wc^G7vL!o_{->HuFJCFL1W z%+n?%JQ^gqgmw8C98O*7^O@#^uM%l|G_Ei(Y<4)8Ks==&?x0-UX}vDvf238MoOZc> zChL?@3ayorT66_Rrl>A~dTgxq!y+E=cPdS&=yOCFeYpgZd+c|Q)twKQ4+N}*ITcRKrV&b$Ne zAnT>wfBnmbj7G)z1lQJHM`I`bgDQu7KFUC1>5c1oY$ zlgco>XmjpQk$A0VFnCV!-3@!yo>#lBg9s;RP>xAo0LV9`k}DzZnLVZhGeZI5JBrbZ zeYEu(j#rKklrpZeI71N_Ym0++LZ;sXe#>tMe{)7D!9YIBd?=aPGXbMgRL+3)kk4wD zV<_Up{L^sycncSn`ZHfuBgHioYVGQ4UuqJIT>Mz=xZJb%WM?|f*qVJzW6feL--^;a zOk;x1u7bLF((cT-M*|KSP^(E4$F2?G^7(MZQ=^bUVHmbX)nRvDLP*<8sEEE+aOfHR ze=02vg-q9Jn%<`s8sXS6XzQem#8gJX?hK&ru%TD;8t@PzI6aSqw%&e?k<$JK{EW+WA*aoZ%pziDS>WOOgSItM3)x3at{3r;fmgE5|+})R*7aR1awyS9V{}fBtT! zMFk$=KIE#i)JV$axmZ`zof-OC-4+B26>h<)Npy5`%E2+SJ<@mcCHq6aALE%6@>yZr znrgX^-zMUs?jP_Sw-tG;ei8$W_8Q2ULL8kYns=;p~ck{{)GWWPiZ1pQ1;IiJh_XnH| za>!Hz=Fjih$8Yo(QUJylM+s?CJgd{hhe_eXLMF~*4 zlQ~NH7i11@{c@@vend@I>-HjSfTdXD+h?ql?PlkC^yy~2xe$%Hg$lde8(OpN`$bQ0 zC6h(jPoJ&7D#9WcPw>Y%ay&PQWW=kExKdp9^J!W>NeCV`flZfYKhXiLyZy?m^3aoS zA|j6kM8fsWw=0{}0g44Pe`^=Pv}@`BGD){|=AvDGB|1L0aisRu7p;j;*y$*pucT~N zb9?AVqN7+C52x_zAd`9n(b%)H8$(k^{#kk$%!5ZxN4(1^L%oMw#u6S=X7>LROy}e2 zEus#NaxadQVOib_V9T%&XUf$!9gq(I_EQY#3mz)UA5uAp!%ASbe;WNUL@mw%2i{H& z183GAS2p6(Qk~sHJ}^F^*UXJIOEr^s{}eUPU?Kkzi0I>D@<(Pg?R5tsXF*5E#+dvY zBS6&i$BU)#NC+TL%s0Gv`JOF(hJu;*C*t> zk`(-1pGc>qFT)p;;5Yf1E#8*~qu}l7@iD3`3KKnTM=j~Be`0^Tzqo@yu+JR}D~ihci4-G^ z{%O$Qxx^f*drF?MmCn@^1;_S19PQhT` zTP;12evqLL1f9$c!BSrb zkP&`>=7tJCPbWTOZlIuLLv=aQu9w)}xH8|=e;@`_6WuTUEx0QY6BhjV*re1VNy`tY z({rdGEbQ@7DdORDmXR4X**37jK@(p*pIL%dse}nsneJ4^S-qW%ImmnR5xmj2-JrPk zoF;x}#=UH|Nc++BqlALU<4IuQw$Y_me7j2np~y$zmzlY^LgeT4s>eeptq-my*0LV*~_9&h1a&yrHi$X#rtea9$jb6g`Gr0#1GQ< z!8^Qmhsm3bxLugL_Vh%x+2c8yiC#z+E^~HnMt?|j#Aqo-YXGh&BPER3J=WYQdCsIAo4?@X1?M2kvNk9|7W2$jTH@Yx1Xy6J5JQbYIiDa z7JvLC;R@YuZW`!jdm7(lLF3B6fvjI{U_m30qxN z%zsyEeT>FDM7WoDUA@Mz399Byw`nv{QvKO$gVZX3Z^Nl*hN~U%uBVko?#6-8+)P!! z-Ew}l_gEp#z(aW|yS!TNPrzjZh^aDdv!o_w`hEfI@5?0+5gUabylY}!PwK6+ys=w= z7b3h^K06pHlRNLp*&f@xSoztkXfHbQ@SQ;l`QzdBzQw+=m{H88lB_dAZBjkUWU?#4fE2 z^3+tjO6W{$O8NTpKgJVS*29_j(Sy?q>omGsada(Bh^@GCW5Zr&sE%t^a=y_CKlx80x)iC)93 z>2)vGf|~0iZQU2*{kDG?=IXrTjmlR>lxQdM!@h41R(UAX#JkBQH)`IMRu~Xzbcx=Y z!VKrGPp)TzExY4`@{F=c=19*9&dvfTzv{g_K6W8Fh;yfw@;sFe7ajAp6@Q%-CgDhB z=VHd&%w>-wA(2~$wT1cYynqz-_W^BzB1dQ z6N_tQkxu`KRE*BEE5x9uW#c#&A$2}v$cx+;7v6LkGWQq2S0v~fyvQM1&jBlaql42g z*Ks^x{#o+$UT}z7PuGWNd;?^={#8{B*}Wvvh-oz>&%K^!l2CY6XzFsJl;!HS8Z2J`z#nR%^ z2D7u9TM}4WM;}$RTS4yEe=97ReJ6Nw_)SzJ_m-1bvJ~vaFn34!7phfEZOT{fT zGR2cGfk8ivY;L`1NCLYa$v}BTqt6+A4_hVMR5Y_bKT|(ahkp?V*oaT+&X-=Q!!ert z^xM1Ub#IO`l!jnMsZ1XRQsX^ufRWF=kG1usHw984r9%#*USIYgYGjdjAY<{l@xX6T z2WK+NZbhWG>{3{n>uK2;GN+Ssa@%|h7HRy9V#2-bh|_JGAF&v}IWtIUGyxA@9P#(D zIHgLW)Y%%J+<#y{)qB5jr#1V%arwJ?0D8g$bfhP2xg>Q!yG9s|Js;ifS6&(|?wrO) zX9NbkM4kr~46)>()-j|YkkY8~vp9b*Li%zrMV<$S`aDx=IsBDdF-=qk@=(kc7|^G{zt2@riKpieG|9M1dA0sOtS>DO0Q z_J3sdH3vtjZmE?irws;DyhKD3>;?8Ps)obPeFO}h_t3wH;+aw4^V(WUZ_ZK`<-uG7 zX@%k<*|~GxIC5ywZ~30MdyA-CWcfR7em)?(-J5je=IRRd3TrQw<{Ta4&gvHR>knSV zMIq}%3hjm&Un?5emzSC>C37`cQw7!pl7H{t1G(>dmBF-SdtT>{uYG-*uV3!xKx&lTXDI_L$w0J^&CC#u3U`5vT{>#v(vR)OYE)wM4-OJZrx(0uc*vbK1FZ;S*4`su&Lv2oMS zzjBkbfFYeSZWoUd`a^N&OYidM%725_0(ZeJ@jari8+xtCYPX(cD<9N4?q*lbNLj*^ zkfYu|_32iAlBz7f4Ov3WK_`n%do^a(X3tRa+iCI%`NA2tH6izlN!+RQ%GD=uZxnnL zRGe#bTXPa8QK_{RXE9KzO`~-?{jV8cCqx_oaVWr4Uy=KGiyy&WM(H>+3V(H?lA+wl zyjr!G;W>0OPQ0a51*cUe%G6r1{GUpAB+54I8(+Ctb?5dMFIPpDk%3pDZLga2?@g?! zG?e}JT{&97m3`xzvr}5zp70VYgRQmRaNik!fp$EeI^K(#i|*gL$R8aTn71#R13%5R z4)(|>eu;~XzGc)RoLw!?>3?`ho>4P%vCDKMBJrmTU1Yx&gY2vd&JGR*CJ4(9gw*nD zU-{~+YrW&7&HQ5BlLCj{mwsPeA!LOW$f8P}^8u93C?MeghL3wpJ3>5XtB3X2@{+ zMCtel6DybD)}S5PP*+wd>EL%(gLSfu&$$}wvp7t-+}n$4Xn=G%@MYZjJu9|$S}*j# z(AoXC&B_q`Zq4h zcG2qZ&_i=FB_&F^m@I2EH5JUR<*4kfm~hf0Ug#fHkJkvpAih_YppsN;tzj0B%={CHwW2jhyxJKFEel14iU!1ptr zl2xitoNQ+1Qk9B{s;<#sT30qy`y__qUrMqUjQZ7j&3_9^w-jV0eXkS!fluc*bZ9Hr zg?twWVr+gnS=R3@sLciPESpn=wxG38n=gv?K1gU z0<377QS+WFIj9DE)f7~B_X_nuw|R&?gra*zE~Yn4`Ddxs3nrn6f~>J(_nD{%^}OEs z)08Q}jkiDG!C&GVp)Vz0EzxNe)Al)v9?zIroPT@&!Zs}hf!8}bewWhu@lI&^)w19d zeEeQK_w!#oMmt{Wgjc;~Fw?Ue9gVG?^f|tk!Vf~e7fFsCFN#DHc?-NWq@2uP-tR4V^EkVjV{V{xetJ^MpeQtx*X1Ugc zZhxrV+#gLJ>Ay486uf~ymthMrr=-t|Qr;8(^^mT{D_`plrJVe?mhuCCX&ZYCW(PA@ z@JWAa-b!qRn5NIjogLXX;H#c26Exc+wY9=d#`?7?uWVJ;*k+}iW(ct3TSAw<-` zw=4rBP$Jk{dG(}41 z%;8paxTJ9=t!c6VuVAZ4WBnlShdskD>=2lWG8P?2vcaA;${3{y%^Ah%*XxLOD#|u8BjR z(My&U!sAJ2Nc%)SiD`f)Jg&$#g4BDB1=UPJYYofG7iXaOn+@^)#wr@V$bVsdKsXVB z;!8J5vZcyylX0$yMiwJ}fD7JOYVg75JPLx=9Ec&!&Zg9zdN)Ld@98;pOhQhg(Xqegkdwsr>8#I5>?E$ z?(|raR6`v<=1-WTZ#{GHv46S~f|4wF%c+%hdITcjdCpEA=x_>n-eAl#P`=4dKBnHv zJ%LS~5QE?}|D)-yB)GPyORDR$F}Mdb!ZIT%Y~U{DRW4N z#AM2m5qw$yaXmY%KYsg{Y1O@vO}Q|MG)(Wk(r1$^F)XtCZwxE_i+^GXRi*&3kj3w4 zWMx>-UIItpgn-ZqyW9P+pb8niMt$9jL2S=iR#rHW_8AZ3lV2ZfKE`LO>5AMBFVL-8 z%`B-qcL%8tSa?_u!sFMQHFo2i&R5+c3r0R3rqL)L-+Zxohv0>UiZe7c#)K={=c@>6 z!P>u7ovHk+0j6TCeSaaNUch+JI5f@J74mhQObf%h;H+b?kxsyMBVK&}k*NyDA%8-m zXBrS^$(~8;z2o^6Dr1Aa#bY_C|1A=_E8M5$D#aloJ0Z4lD*`RH{2S1+c0xV5GP|ky zAN99iQ=4zTJ!IsJpRBjxE?x!YOUd!Sz_`nlBRz<)9a@OVwm8~z??7{RT= zt!JEU&HIc+EPp~{W&|J+IJg5A_FjmeP!#UFbmJBGy>?K7Jgr(kz7wf~JuF$sHmofz5gMV_xA7Z(r19d^ zU%+!+rxx~jaDV&-o&Hr%UantSyI}ue8J=ZfW_*wPJoA%~5Uz1tNn*K=u#3oYNeg5^ zw|08;r3tNJ&K>C6Zg6I4Q8o011;FW`oIUU=(mQN)v(y&GH^0X@&)4N>ceSeeAG}TW zdBoG_r~y*;i`LuMZo>$NGfe!KYwK7sH59mAmh{CCs()3K8#!|~bhU|*P4PD)<&h9! z**toe$4EZjcwW71$9|0J_`f)Aj+q&BWzQa0BxyA1Ih)GnY#pf_dP^8)r89Lb$2We6 z*BRi&Xu;+nBI7g87ldz~LpNWko0DfT&(y9CL#(x%V&eo2_}1*#%Kr6Hg?$Uj=l_#Vg&ybjsC=h;I2& zJNSI-=oVJjHO5LRXLR{RwZ;gB9y1S223Ga(g7g%F985o+-vPmawq@rR_R^Wz>rOz& zS=C;VPxSH2v=BvQi*_jo4q@Pb$sK#ijf*Y=^?#$mePB+XYWuFO1GgWF*4&$ldlins z??(T=d&b5HeL)?Gt-@_3SN@BuT}37Gx-qOR4w<@HN^H+ zDNWg8?1`uSv7&CP8`s$n8gg5YwOZKXk$=06bDP|QWo_Et`DUT*$ocsTkf_65g6mtj z4JxTpE}RItfBLq$Jv(0yL7E}A;SKzV+f=%Nc*Um(`@~wIq$4nyxv@!s@UG+<0~%09 zmfW$v`Fue!RJoReYr2jv7#+`Amj27Mw?AKT3*4PcDN5wKaU&5yA3G-gv^E2{iy^;n z9@O;yaX)@Ne2qPme54?rLO4V2Zh!pX!W-R81IKSIg4IxLIaBX;uu(HGJ;Q6)>AS69 z=^fDYjc(I4bNs3DckaiNx9h%TR`QGa#Rf@zdwX?}FA&Z+4*W>Xh-<#1(sFuK4d%QA zdT%tnxq7w}P4I?)aPLQ zA^=K{-R150J0R2AKGlqj`w4;X^X>Y|(+CQ@bi?B;#w0t(ByRzgh?70DEHoEtI`7p| zMFw-|reXe@>$v)QFL2Iju761d1-C{J;&!~Z6A_TNq@)*MDho57DvSS$3HuKSRf&TnJsgL0y9X-Z?4NqS6og#g2RntlQY zu=L~-(}GSv9}Yr|#RN=+s}PZ_C!)~NgpFMrG%V7aOzBB@k4S7^Qnw$jbDH%MM3r(e*_WJoR>S4x5{WpBWs zgN+QaZd<~jwe=@$vs%rGQvXE@w*1IWSdTkYj&tW^I)AJnE1RYa%qk?|MaiGHeR+bi zC#OHt&TtkibQFl)=L$joisgu9KfV&Hfnx3mX>;aeoM}F?~}L| z_1Ov|MSo7xkU=AUheE#!HS39#p(Y2K zIr^MTZcEPIspzO*a z%p2Pkd1ui4NYE%7Q4M_p(9IzzWNPN4PqW}-I<>d8p0g*>KtN%gAxnxNZCDfRe|gj zoLq#1+jIINs_j6ihKGQ=cPbcd?tHDTrb-&dSE=~$k7epMd!Y;qT)i-M$ z=}+@&@2{p#QMbKcj#X_Ib7`jkv}e6sTann4^MAhyo_VcWyV{s9akzY^Kk7ee7Eb() zKltK}=`KIreXAgO(N8Cbn+mAm9LDBEh2YLAmNW)>>BB^}-YDW*b3@^DEZBPoHDaX6 z2EVz60HlSXSx2j@h#IJiPwN|4TwI()KN0Q9iFMbkP$T{*(UA=rIjZK}=ln>Ae|JpQ z1Aom`sGM-@(qA)OjWYN@WW8ln99_^gIzU25aCf&5+}%C62L^Z7;1+@fCqQrs?(XjH z?(QDkhdaabe)oIVz4^t;>eHvXPRZU?)jgka%^PC|8cOdxS6&Z$p__k4m5#QE9^K1C zF@DseYtf$AyO-WT$4MLemT+;R=j(R;ZGZD@=ifD#1r%b}kEF}i@nj$|G- zZf7|Jp3}#FBm{U|e~VwMR4?@dPNyVv!|4__VfZa+8QOJ9DUAzu%WbTn`ZtXlKE=?S zFPXLQ+&pw0Io;q9>t!rfvV`1dX(<^$?_VXK^UobW(}=^xj+)|y2MAO56qp|yUw`sH zARuL!lxeWs*ty`^8Hqo*?iYo{Q3xf^`pGORch9 zF7);B**S&$%w*@Dk)9L%@Ac3|KYui=NgAzjqQX%p?O(iBO5ajH_^(d-fP{7}nm_(L zh~AZkLKW~56iAUqi2JIhr0RYmbZQYyJAi4z5EoSat1R#FDV2kA(`=3XB?v_z3McN* zEVU2aLMCazu!2Htp9fRPY2}E#lTt*0Snx^$7DqSOxdJS02FGb0%T2t-!+&dZ_0Xj^ zY0*q3*Z7E-ztpS)#CrL4W(zB=g2&`%~53N)QmcH0p4S!^l)Yj>m;1|J4uGU!Esr z?SB3Ota;8#GMBW6prwR(iKTcikm8(ZeiQnh(Pg}ED&lITK~u)AIS(_Hja_UmdW(?V zGGg)4tM~12N<0v1$3{@^3#K&m*++wCecekxm3^etqoU*1{)BOs@qf&sFWOHwH$5OG z)@?gpJ)f2w(A1pK`RiWOex-Bs+zNNpDv|l3zTMUH`DioYO}rOy?-fYJkua&ydi`+N zROU?rDtoVx6C8Z^q>+}0QSVrrXMH?=M||Sy`_R>>utqd;x->-Dw3J1|Xp*;l8L;6|NLp57Xe|?nJP4w~=-F3A)c@pv~ zMU-X)07!Fm@&%Q26v!!9wT~L!IqFtdEe%D~{^8?bTv}$09)G_6%c_ZxHGhmZlV(zS z>ewwcthYS(lNaZ_d8sB4ml~S~M}b{iv+bd(%Pa80SzzwTjn|6krK+OJbug-3kYzVB z_bOnI)B0j{dclnG<{YW%W!0DPRo%wjrlEvs-46%NDXqbCF!^W&G2dg|u(-hOCg)_d zQD851@%+}}B!4@;cZrC_S~0`!1oKth{iWHP@x^R8{|+7G`CB5pblB~2e4XF1X-84n z?Qx`n?Ie>yb)AgbkL60n=P2%4$1Li47$%-NthDh*nacFd3yG%h^7?cOtnOz{uhCPW zmLM=e^o9qyh}9hK@T)L)%q(NzKTm3$Pwca`yURl;{C~NJ4-$9|5uL^B518xIlO@6` zXTIX|4a}Z`qi4%@N_`1dS1c_D3aIN?|mE#%T@<1)nP^7Mh-zmNTEo}nteGGgi32M5< zjqJptEGE`dmau*)1`$@A@kYQiXZ)qcZ!^pq8GpH?<9B@vs6r}QE=|h&zj1z_81d8M$5r^)-hyK1F4s`Ym(5zV#6g=~VHlEpl-4c*1CD<#PH3X3K!^z4$iJH!P?B)?JX%cK&=4nddFzI^Ogf#^>c$NZ3FFjE67 zsvek%QpF|0(}>g!WltfX{yDI!r^WI@d6|az^bq<__f4xdorVeQw@CZe7B27MgPn{W z?gMQO_OAFS=KcKs%4Ml@Pzs_L4&4#<(SI-|;+H8MY(2cE({qvW42I_&<6g}hH9?wb ziU(8K3=bpuhsmGGPI^S1=b0ne)DvwkrGo9Z<>U3`X96KdxETyAFEhNyqrcJ&y$iWq zXqH=A*=vi~dsLiHuAfq_knb?)AC3gyEBI6x=2DKre**4!AK4!Zxxe?9X44Q@t$*7z zp0}ldyGEZ`G!?Aft8F;5``NLG>PIa@H?Jx+ zH*$8!Qd;-VKSHw3xt&|I1%}wmaqx%)OX+ip^=PxFPaeJIkl@WTuyHYdUOXb$b+_E} zrOb0Q!3E_aPK~+$4s-Jr9-_<aJW4y45UYfBcqYQLPsINR#|*We-|Ub6ujiWKIqTl?;z9$(%? zud}4YN&{(W;P>3Zp9>CRFVNGgS$(sauiNv$Q`mHK_1a%!9&U`@rWRN(m5AC{p>vBjD=hyR$JA}^TEXa zU&-I!uW3|AXFZ3Sn~?1F7805sFr>2AsNdjZg^|~q)It6 z_w&~<;A=ZRs8jDEWZIoQNpM|=;_@VQeF$6`IjpqW4^X%|JY?rEoLli_J6*NUG&1!0 zCd$ldsU*KR8HPzMAb2^qE%W-5f0Vtz#th%5dcm=3#%YNUb$`)x6p7W)CMv0z=X+z1 zftCA;RMO|JdC?9sv2x1loUG#Vzo0JHT*|!7KC^G^Us4EUi_{LJ;j-t$l`Gqwi;4<_ zeP$)(V*|DH993d6jA~=oUO10K=IJ_jR&;(}Lj$fW>vNJ(s_4FQxRnP{X|Evw%A_c{ z5SG=f`9h+jseghc=jecKUoFzwIu_=TStqe{Ex4DMck<5L6)Rpv{AAIdn=x6yON*@IM5yMp8H=_GcxqNIcR+)C00Hew=y^sY)lzCIJ)j(wHq$~Ce&fntfyXP zSouTDznouKqFFqBmO+TcV9fjhRL;LKgmnMv70p6k_7C)z?zWLvw_=)sQ5Vx6p0a;LI??yKN6F08 zh*gY7w4JE-`-9w)tR4|*yksd?$IX^}R}>=+pSR1*&0_C|dSe?8j|Y4!qzt(x&Z}B!8kh%%3PSiXS%Fg^sB3t@#=c(xu-%hqTlq zt7(-RP-XocU{`UQE9ow%D;{&1CQ%`Hl%4n^SBqibZX8qrFN2{LYXs9ud$ZZKbk*zZ z{^VG{8r|^8b7|lu#?$uC%+w!dPWK~3U=*CGR=JIB@q&iA28+Rx@-ps5U1%xe$$v}E zyq$=FYtIc|gH;9QcToCTW#QyZtCJ==aggu3jGdygxt??&v8u_RV0iZXJ3la0{+p4e z@#Q0FSeJjJY!LeEbMy@~$*%L@7xUMqe2UYtfiqEp^w;gXaxcZ)5*tpB5WW|87yd~c zt+o5IDYiH*P*t)0ptlOWS$d+#VSgC1Oop|JDx32WuB@J2o7li{nd%O1A%NEA?IuDe>#I-(C`kPw$%z zm94YV3CcaEGQ51p!qn8;vYyMOiyo638s@2Y>RoZUUcN zhP+xz8H+*H`?2!*^J6b4X|=7a9p3r|Lo zrHfl$wtI6|eT!&Mo7yh~Uw=-sP|-R9@`=VaMQq4(n<+!NQJgnqALTnlh=D>|`i@O*w zG5Z5-{(dFvPGaM6XEplZ9nm^;h)`FSzVyV;Z7FOSJ+MoU--`ES=YMJ@Grru0MP|Cf znXBhlF|gixTU=^Ip&MWCXp&o(|17FfK}dS|9&ljfD*b0tY)SfOhQVRK*jZ8E<_Uad4;oA~k6 ziRjYZC6)%>n^n0YZ=RZDT8SPc5;hUQl4r&cG4)+sazyq|_E$~Uxxvgw%+1E0>Tz~JC5pB9-otcWdEm+p*TedTM z*sJH!$aQ$!8J$%0rSBclR8h)I!14BAJ?5T+hd^_Al?#1?4Q0Q&&nanbRZ(7Tpy59; z=*n*-NAkHXd9aC6+@MxSLqXa^Pnz9?ZS>P6w&x|)i2)ZNoHFgU$~KXesMMV6NL#a4 zZF*I=pntk{)XXZ4-m9_h!SVDny_aF=ZwiLc_8Xx!*A(Q|i!S zziW=enT)0Tj2GF^zaF;**#~MX`HjVt8XO=yKo_8ahga7D?EJ; z`+vSQ>+^Xvwt$Xri>vldFFx_((P;H0Pp~VSIlJ7$`(@oH4H70S?1-Z z8BA9V!ek;C$xFf>`b0J1!&Vp`PQ3waHI@V!fj76w==dmIRAQ1ez@@M7z;bPN4+9V@ zg-GRt>BrKqYI@7xzsfhxe`s+R#cH!B=z@69*SN{=6(#W~RTRn`Ik*>B_yE8)Hh)8; z4v*2zn3JB(;L`P$4RK{s>cx~}Jzx3E+|=QYbAye^B|oJ2d|<_U9cgxOP||u-y6+$F z;2xo&xrnt}xILsI8mg-)s;&v+GUV_vffMEjZCXK@)%1}u^mw5U85kV#Blj}v}Hl-A-B(I!C?wNMC#9B zooDol7d9hodv+2&b$_mZ4{65QkM7K{&ld8$@Nr3_2@-@F3C+O+%E)d)z9o4flje;h zx93i}l8^wHC>rvy0otZ|(zUy`x;zma;c?i2K4=#XoD5qjZRgA_H}Lt)_kRm&C0tx{ zEzC}6(*0QONYVw^M|7Er7iOi6o92Cm334Zigo2U3j#QcpgX+Ft-aTM@YzjB~CObAr z`^2E0-qo%HfYcR?Y+N1KNsX1rBb zPZ-L`0_foWxK(L(1EELdh%MmICnoH;Gt7&lfQSaxoZK2`j&EFU+81=TnOfDoNLg4- zUhcHc-tPnZR#6X+mp@HfqJoX6`^@LI0Dqy+Jj=uX^P^FRe{b?g@qhS!#S%M@H7rwn zN~#t1!7--2PjF5Z7+(EArX+W!hfjXX5ZpiTor|N;y8}E zU*UFt4V6LwVaRYu@w4WLeLVo;!VV{j;UwZO%&!6=v1B+Bu78s_>jqoK8D!vc4K%u$ z)L}+j1|$07>8}52rrdre-2q#mwK{vlW*ZgOyG=<61S9TW?|+547{tLxS(eXISzU8wzRQB!?iIeSqLZxGO5?r^!dsfj*}2(F!_JiY`5-ulP=1#Uzy7 znk3dQ9yU2w|G_S~Ez(&7aQYmjqDT9D-N9zN;UQUcwB-C~|68Lb%6>-%7>jb+Yr46P z6*P(8vQWbQaes2biMUljX{S?|K))u0k1I+ygR4lbM9y<0Y+vV_=cfJ|@>$(u^-80e zMdB}IGHfz9ux)hohEq+0{&Sxs8LWftPVX-^u>SI*ER(ViLBxMsxGfq<*uG#v~G#={UTxQGVZ%O9Y&^u5o}v` z&VL2!mC`MzqWcZO+gEW(i;BV@!<9)Zh)KSQ=+68i5U8(xK8lVFpR%kjhuCh=^TGiG z0EDlA0~lZ2YwQf?)*Wa2@L$%|BAZ!y6FoxjbHiR5FWC)|kW8n!F<;pu)AmaUB>0$> zC3llRzTY6*x6WdA1$Mf306-ZxeeQ$rI)DFEL5U8B(ak8$@k&J?<;}xlZ~Kl~TA7Nf z)lJ&{fc`-te#G$BdpQ4XlWJ2*9c)~b;AqG_CoeA+hq*8FOq8mCM%^fg0Dyf)iQ{yn znRx)8>-4e#NCgE2P$6_a3SeT3AWXh;mXqZ3*J%fOH0A$lU{*GMMIdG~P)F-4}Nz-t~gMxxcXYULfdnlxdNNQ{mhXA>dlNvQ} zC8jDJ<+As;D^JZAu1L(qHCQ*<8032jN$OI70Blf*lora3G@NWaAl(92JYU z6J-v5Shr2a=oRKWVUYoi{xz#}Rd99$>li?=4AinYtI-_#yD7#9HYRE?cj=RkRZFgW zC3xY@f_fW-^V`BQaR{4=?SGYxeNTc105F}c#DXZIPTe!NdP1_i!8!ql;va1;396_f zWyr`|Ot=uZ7S6kt?&CV@8Gv#*Iv53@^@R2l*R`C_A!sUju@iJR9xe_x7JcXiuY(Ac z-VbCjdHmIe=r$!p(tnEU>eW}zzF|A=zXTf;!zn<0xUTQv989;4a2VU4S+W3t7w3aQ z-wei_@Vpz=Jh(<{h@(;cpoux84nrQm#3aCCWFfIdupBAnX{9_qmB=ON{4j5+&Ynuo zdqfQC)KXPT|Q_~?(8cR{pZug2Sfy{onyduh}4 z`y;2}lD^L4QGfgFWm}B2@5USs`patWD^QR5#11}b9O&2(u(fhz?EQH=!3+CuEl*f{ za&R{L52fI>64{|edsAfY3@j`NMywcvPQ}SGl~&{s_e%T2$x*-#B3eoEYlEDstQ2!h zz(@cvLZW-GL@rMF{Bn0+-6Vz4y6=ZUco5&pVi?48>wo9Hl3k^9;sn&k9U)(K^yJJh zfyWr!Da8~_e;L_@Z&wcffYF)wrD#|j1(MEGJ|$!9e)@x*^5+Yp(Ayy!F)tjmq-Rba zJUO+~7LL1~cBL#G+n=F!e?yWxy;&&y4O#VO=PcwuH4(f7A=<#+6ErytpQVa*0B1D% zT!+n=QGc24(L9{K3SQa-+YZPPbQP%=UEyPDQ<0Oa{)DK|xWa2stI*CkyUJy`PyrPY zr(IU3kddoT3=Ys?s^Nf1YAh`E_XE5h*vFY@!0F)zcN}yR+>fLOayMOQDeROk8x)cq z5CW{cAG?MYs^3Ez)pRHKmj_}Hg+p$?gL;Bq$A9ub1P*P)KFuomE|ba*o%BJK#BY(% zQo#b!6Mh%g>Q3-xP=D~zGy=o&>x%GSJ-5jJi#4)BU(!HsYWxw=_+&Y6XV7G1i07@- z$4W=Fzw_q>`-^<9sj#WF}3k>Bo{2{8EgAN(DkbXCKn zgnx!+GWc7L2O#0`zfcsXC*28>O5J-8_%Ud;S(7rRLBLqj`fs-Kj!64D_&5E?s6w;! z{K~Z!OFJ!g!I)oV)$lGT0c$urs8x{=9pjYNO@E}AkKOAI-d`86RBshzvT$z1fnZ-DKmyUxu1B*ppA5MkD&MPo)o zm~e1ei8lNlSg*P!p|@G_97M6diO_yQ6mnh3aXLwR*+P36_TkFs8;0-kH-EKdPUlUy zyg3$-@En; ze6T@gu3(Sc0mBuBSiiT&*c?P%Ndqk--?d$LC(&P2X@Ys4B8$c}T-BQHRbC#SS8RX` z+$8Klx?thcX~c0i-$~>qHb<*@BO1+<*5u=fUDT!pD3G z1-O2P2vBFcJBdw_VAyrK!`?IQ9lQGLwa?uC(Aw;^r9r%9_b77zWuwcqQNFmz+LGgQ ztB&35wbjBuF0+$?)K`qb7_BXmNU&b1MmFBhwjyJt9)}b27fb3 z_cp2n@tTgzo@nkX!+-b#no}_L!jbFCG%gc87%4dC&uz^=LRj5@;1VtdRUP^1;>M}z zUwe;_rp}x71>&CH4qh}ddtozr_`tU3i##=U8R_{L7_1YNQ^Ulq)j0I3_`uXMZPaPZ z@h$Rh*HSuOr8hR7hm#i#zhrM}!^=_m57$vb0MhMkoGJw5VSkZqR6uag55JY9rp{nS z20OYHr_FZJ0ry}R@;r-ZclstY@}_)A*R@ibaxR~pp+46)u=Z3}}H_lwMCQG%_`v5n6$vA4?o zVYW#maDc5QW4UU7yfNOIGk7HFYBKrY$C)gnN1*T6p+v&$E@-mB10J5S{kDEsC!*yw zl5uM^;hXD>-THs`1L_kGh5*)9K zCsp1!c>eJ0he|U`LA+?WwQp^7m0VK;_ful2kdVH}om&R`N8P!~B`0E{*Ge-B)!TeQ z0q?vBN5#U|mul~(X+fKpdSbn{g<{;JSMPM7?I>v$i^zWqL4C#Pf|VeMMq`?FyHLgV z^zc^*yR%<=@bH^?FLsr6_A`hZW#5@XfC(AikbQ%QJe(#$$aD)>M)^jYTf3gFjpX<$ zLTJiT7b!!&;3nQ0Synmyizi5AnT_bD0V3+cZH0E_c1|3dInyP17 zcHewmEsEiKNZcUh|7@PU_`917663SN^I%Na1EO=^_zDvS>Q*5qMcI720ntX9ptPr(drW6t!dbNgSUe^QELe2|Et4b0X^c#<^g z@WOv`KP%|m9RF3E^*wl!LkvN*isfOADs)j}UK+~@3(0DRyC{kFCW6Rw-f1Qd ziUU80wfzc-Zq1$Dn{HucQJ;IZ#}kAZ*VZMWNYzKz%0;T1Dr%l!uQcOqJsYsReItc$733xypW6nD*gUhC4 zBB2Y`V)r2y*(jk6B%z}%0+q$#G|^~sr_CWys^cGBijPKtuWVQm$d~$+S?UYxioC0w zzw6-f$W`PQeEd@K29@r-n~Xs6M%sVmW!JKwc*}=hH^U2Px-A4bS)>pC3MqeMJCyd| z)lvCxr`zLO-2ZaE0ga_Ct%c2gb<&lw-+!AS|2+%`1IP-T6QjUpr{XG|j9Vo2jzV|* zBL>%R>oSJtp$DvC1dxnHFBE}lI{pft|?h9OE$1g z|N6>$QCbN3g!Bdh00~>A=hA)J zNbLDt8-7sd%RK)&V>L4(ClpZ&zHY2V1>F#b-OKG2H|sv7vstM~0hghIdYH5FzoRxVT{z zXBuyF=E}K{Hwbj46O2#9I5p{R>et0bfn4qjypj8fbf?TUMXVL$dg8ZHMQTQeptKe; z>&wtJW_Y)A1t_@Au)GdL}UPz`r_iu{C-u<{CZ&#(tm$ft97wd7{jfe?gUI>@c3m%ug4LF3m*1 z$EJ{epALTq2lf;znwimZ>*a|;mDT!{|kLhdQxMHoVNlN4y998Sq5r+-lTuCSNu)<$0(WiZ{3f*Z)!Tt^2AhI z{r6kAcHj%M4>Ycb_niXY*X~zcx+Y2{QcdfdRHSb8*_R5!9UwyB=r=I$(u43WO$-R} z0)#U#mi;?>Xn%2g&1f42&9hlt<}~#s^loVBRdS8(=njlQVs}H2rn`z!FjYq^CwT|* zn@oQ;tX+GfAzI&y?mPBMqq z&3pXXpW79+G8ByDvUU`*dFmKnaRj{WfercC`i4Vx)}`huAGu0Y3*YLBIQT@?pw>eL zG9-ZQdoyq>$>RrStR&P`)e;513pAJzz=C8h)i)Vr64h9Flp~aRfd18 z0>E~ecsL}9Wm*uA({5stAfPgZs86r_Et}pDeGe8Qw$tzOzhPL7uD7Zvm=Qc20?$LP zk3D7`9Je_c=c3x#e>H4BVq*tMoyOpf_MT`63<&xoV@F>{{%Weusy%H{R{J~2jvH}L z|1roRF6DO|Aw z?iC6zA{j}}IXJJW%%c5=pc+-17RD{>(9O?an2}jFT(onuBm%2>(z2CaXj!2)jM8X*5 zR*4J^#&7l!5gF82jl11{W=iow?dc0czn0cVnQdU$`P|8jE|w6lhM_?$x~G7uw0g9!B=01z7EZ3BM-|My!b7G~wr zM9*h6@dYW2v)sJcB!_`es)O~LMW#3~64_;6+vurICJh)#>)UecTDwz*(+TM$_`o(A zEhYaWudc`uNEm+h7hx^|R_C=3nF+l7z2r>V?pHN|Er5||;gE)Fyys|mG48vG;27cBoWe1i0(jV@ULo7DB064S7M<3!y&v8me|ufN8ErZ8sPE}WBkd0MeJSq=@&{lov_`@>FJzG zB80T8o0H#5e1>G&<(jO|FsfS8iTUiY7vYKcangy}T_i<)-R^&E<-BpV7sH`w zk~EDvg40wYi5Gva^loJQe5up*kv%yLe~Q^nfWB?7f3tjNW0tY(w6Lc3xr}X>!e@_y z_{(j4SI@|d_rE3&bk*$JA@8}ga^$Gmx|jTn4zyr&jjG(b*L_XNop)_l>fx_Dy#YBb zmfPqbphuaMU{rg|5~9bnFg<{RhR)X(?)cM0O2ssQY`eK5-%ZE0X$aML z>xzSF&g@4gP=ER*5-S>a{V*5_G7v(`Js_<(QvT$LqwZkSGAR9!WV?1NsJzj8Sk|*~-GSINk#1iXPT+p$mK*uBuz{$>)4SuffX9EwHoUP#8W?J+Bc=38_*|q_;WGv1 zR#bG&lr;R*Prq#5yLb9F&`j{8WS&hF+U(;OFZ{&4$~U13eL1mmtTJAoU~U3_Q+6ne zr=7(~glc0^7(Rb~%p2Ns5upy~RE_i2kQ}J-adN)$ye;GosdN4R4A0wYvgdt%xtJNj zmOp>1Sr?h;t=_yBeYRFHM|*G@MM87O2-RlBR}OVmB^F`bPE?< z4+=O|+f=Ppj(n%EGNoQ#o5Av_xEQEA<23u_y5Xsks|DJBY`4cICGk@YhewKf2 z!ot`g00WZI5>v%8qbN0>T(Xi~?~GeaOPw>UpHK8-*gm&w`P5Pla{791n+B^KtqDw2 z+)GqGlu&7qkmTeC8!wCZ2laKWy->MwoZc4>p0!?4elWWG`w6zcko&)ha*wx(@-^Gj z|1(g21)a@GPAN`_1f%xf_bRs9_owT6i1Ek0bT1SV{>9Ec zN5J(c{R%CP?XvV}yI1`}z(BFT5r#x|kj(y5DVVjjY$Y4er%WwQSQrgVSA~BxTL7|4 z+fs!K>yOH6GbEgi1+{#(IkFg=$E5nGS@SWP%D=lccP_&$(agA~PiQn74?)+@VS+Zz z4Y@6Pp$A^l``Z?dhGiC2ipOxaUoV|XT&AAlnfNb~DRI1#9^u#j#9tE&#;`*}W@?;+ zhj!EA42m*7s}4v)kN}mW-DOtrVKVOacXg$ft1y| zc_aoqA}`PW9|qwc%#b8@>HJ{?M<}=QatTPO5+p&M3jx4j?ZhCGvzO=^t z1RQJf|0aL4FO!g*BlPJuFHL`3>}%_&v^Gtz`=?M`ywx&R*p3N{Gj&a5oE|KkUs*V$ShKAa>JO;N>*=QK9xb?W(DLlMIP5 zL{CL7vG}J(MXrD4s=XSX<9g|>VbH-8cU}YzLh%QlLY_~PGX&i1pIB+EU`~^JZanRCPqhxt z&T3N`xuxLCJ*E~XwJ$l5IaOM>y3bh?DBOosd|R%b=HvN>T92lJs?WG)JtH>L*EXL+ z-`OLc(v*Ku1!xl!^%!nQ(n6*U_#+9XVFtHe(|K6=$#b9Xb^rIY=HhfYS`@2LamoBe zI?VtOpJ$$hf#M=CN<=-ay!h@m18@77bAoPzZ(f=JTji{2w&vBGJP<=~FG&UX~73MCrKo;ZK!Ei;vkgwo}RpP}*wD z{cL}7@`bR-59Ub=@(M?jauMBEH}SfY$bMWHD@bFKQt*py4R$d?epYURoc1_<9*NL= zLeZQ008`vOqxIk6{c zFC(5bH&HGOD-H_0BYwTD9V1O3$O+Wpv5|jaI(VeBh;ID9L!3iO*EPv`&p&O-y<011 z8*>qjA~x`{l4QBI&lZweZs4H9E934*{bg;=Wyfp9p+rq@Ml}*YH433#oau`pWq;U8Ngkzj}u_! z!`L-+18??VO?yo;N)?-Okont2VEmt`I5xw<;cO1`&~o@+(;j@k=#9%g;f;SR410Lb zuSIX;bZkA)Z!4r3JH#9dD{H?NVmT~2{e*!OV}3Zmm?;3FueX{%b>Mo27Q>MyZGzeL z8+QoL-j*Veh9)@_AA+}M-wnO}xyL~iTS@ZPP6vdOvx$hV!5g&?k*e^^W$S$9L0k%;s02GV6*F`_(s|GDQ(oF;su>D2@vYAz(rJ z65JL`Li1?BoG|I#qV+o{>2s!r&jwqo87K}fvthVs3>YnCDJ!U)NVIz{PU0S6BDj0Y zxCbld$U)NL5%Y?lYn#w#Z@%L-k}8MlfODJvN)o2~>iB+}2!Z}cju?X&O7yiZt99f; zp`$4GIJa<;1Ybhm8KHj(!FVN?qIxlBatyRL44;E1q)2>^j?2U@%t2j$i6H`IL_%sT zZ``5U1C}UpSN~;UR~NQOQ<9tOK`Ps!Fwz>aX$;R|ZMiV_b61V^>=%EFmOd3x+^R1- z0nwC7EGNMbCC@B9M73Ryx)bJ#f7Vy6OiHc2A{HkA3#8(b7EFJ8toy~*NM z-_evJwrujyvhO@;tsC*cM*>~Z$CBb^;jU{%&Km8jtGAB z?n3=U(b~QJ$oLsgPD%=$?D#10E;%eKwD5ueddQqdQC$>H^Jg<8{q{9-E6xAT^?mFI zwI6&&%z|R*H+6sHGzMi_vBFTaZlk90&-b$i$bU~eYCUa268ZJv6-!T;FJX`(V9Fv? z3xk(#n{Z@U_7Zgz)4mshhZ%RNcIivtrBJhN2kQtC5vK=y-sOTWo5(Mv=}Gs>+Ec|3 zvzubYeD__zmzFL~1S;kl*8)b4y0hx@u&}{FlrUvJE?s{%r<4?+OF==gU`6C;^Q7Lw zDp6}$OR2M7ab4eH19NQ4!)r$CQ>4{#)6)l^n)g~HP=-<`HvhUj&oTRxBCCU0eMT)a zDCCv|Eu>wqaEb845-?GHS~EANMRtD~brRsi;`qohe>Jyp^DBF`&Q_FH zT)x=42AevbOaCePl;!NsD#pakb2)}JI-anTvHV!@C&rj+buiPDfs3E#u`fCFRSoC( zqjY?qAm$+I_u}e0+i8;<;d2|88byn0v~6OHN=>5kyx=f(O~haZwKkhe(wwe?_1gJp zF6w`MYym4gYrc={2YJ^G_*^x%c8mv)Q`*iC^0o9#y!~Y?+)Zz0gBHTHS?K(#k@tm9 zt*KoozSufGrIa2H{ysv)fc0n3&qTVzYuv%G*q$V~k1=aX>Gr&G0X0+>Y#_wg_XI)p z?p#^Ctb`GPN84wvWLqGGArp7{=*}c;5#N7xR%Uplm*IeelC>`=6b&9|GI4shLAeQ9 za+ucx?|>h((9@a!_+ZEXLs?($fBqM&ToM{X6=hc2T<&fvJ1(EGCbNreO#R!*#BSMx zVOD14SL^U<%KyXGTSmndEnA~RkRZX`g1fs15AN>n?oN>45Zv88xHcrXySuvvX`Fx8 zP0qRZeq+3U$rzixYe~(TwN}+^Xbd@&>)$&)h4n8S$)m_Qdf(_NaV>Ae6p*YuojIdH z295F&NyHojDC-BemZ_~LC*aUyr)e>$M?MHtxfll-#7PE}NH$yaXK=lm!gM zu|bO=Ascx*;x6-GRER#VN4s7y;}TXZt2I%pwR z>1DNWoC}nDWItKB2A5&e66HLF&fJM%zzg}NJ?KeJ>6YZ-*FwAUSfSL!j0b6RakE18 z9#jkGo66<5!;X(LUub-k7uQ6s=qC<4N{#7Y;Y`_=xV6ww>n5H9#g#^{3S}Tq{cvZ^ zj&Q5TW!qZ#7!Xi&@GH1YPbz;^>H6uDI@kDv)cbtgC0Dwt1oBGCBwtI|aWw^0#$=`Z zDo9X^3PYfwha;iRJvw$*cBe3xwIpXm(4J)tOG=(evJR+CpRpqdwT8G-+)?J@y-st-ZACvmU%hjgJ{zm~ zBZ%88h<~4<^P0)CeX9T1A+0id$w5XHfH`MXsf}%SOnq%f6PY!bUG_AUe~N9FzO6zH zv?)BWHcbFV&O4t74Mu+u(2*gqRkODo%gB8~ge5p3ICtVr6=bUF?v^iK+S3S?1$58a zV^C0X$+z`;j4BHaI#ciJ*=A&j0CN#%UJIS1K@R>2PJFf+$3c_91s7A@4pS6E$XuO0#c_quqv?{4q zH(XNIHJ{uNxCK(Hu(#N)j=-9VyXloRO+gXL63jD!jYyPOYbznY5$)JneTpa8CQCoGY-+r00dv^2eG#g0Yy6VQ ze{}dvx-yDdPyc`ZIG4FSgS%>0bi={Mc!8K*I(@HBV<2sEiw|4f;Aj@sGhuiW*T?fn zGkrq0NA845#6$qc^*rtjjWRw)h-`l8T{L~L=rNYS_yJHpLCMb4mV}znXTofM^6np% z!cV0AL4uRH(rH4;U+k1rEu|dK+0lCYP`}Bhnbwq}S!dTgj~gD{Y-! z_Wbd2q_gxud6go{*4`X8tvg!s&lqo43I4w?_V}-Azsj5iMReUdAe(ivU9tz}p2>OC z2ClZcF0OxY4N|?z#HjB8E_~yeLM(nZ96e6I3>O47D}4>oSqCbM8=7zLMP9+h@Awil>d-k3=f^pytXY2)>!LHEO5r7Ha`@bjSUjX3cdt%U z>^JKCu%y_wB=pT|&8lVwmEqXs0i7dzJ9YHt#J(^zC@)yYOes;NV;5%SGlztI>&j2Z zW=#(jNo&Rr{p9}$^IB~7--m2FgdAo*fmy2;rHXsROaQa2V{z!}<%O=nOy+DFCan$z zTR`uUPreWr!h}FEidynCh3@vnbA_cMq3g_FEeST95^$h z5Sx#mh!9b^+&t@$@%+-fPe+~1vh_vn_35X z9k9kuuBUe7C3cvVjdNlH0uGrU^ct!0>a@&m`}6`^RbSSHnNnuf7VT2=g6cVh+Q@%A zE7Hk$fnRKb%QW@?|QYH1Pu7z8x5nwZ>nY1EDj0>_I}K85F-H1YCPo-%pj~YMU!KhYMUTqn45M;)}F3 zSN7FX0meUGax34`O-0M<2xX{xc`1MNAzDQZll`&L%1+`Zx*1QVd8s;`>cttu)JDZ; z3Nhe!uX*VFyly#r(=dIg<=!?T7A7(H6q9$v*23P|@OMPzP=ceCaKmW!WY$w_sE!=8 zZM}HQ*~EmKbLh?sDJaMRNeh>$qk`75A*-8=shUGLIKJ|S5g*#ND`jIbvS)uz=+tOs zLW`6x>(KtQdnSdEZi-VC0N$nyoN9L!CP=|eh2nSyJ33th2x7v8lT%&#WUv8{XV}gN z%d3b}DwMY(g%!5vDuuO0#sz+6Y&7siz1{ zS_@iN?)2VEcRiBwdkanu)xduffc?vMfNiI|{DHC%1*=fL0~S1Ti~vcW{jZ!S8L5pq z9wJ^=)!(IaSkcPm7`@_~C2!mA>l6=bMt2)`NJA5wVkV%lIZMT+W@&Xf9)CmvanG4< ztr-}{-Ff9Q9O9u85a!^tk{^a$k%FWeBYwMtWAidoCUw&~`t{Ir(rSOa*M=HZbi}qC zDUn`(y3JSh#(I3%=dtROi~J>NP~TNWz^ZMY{9({Usm`=Ml-cG-iBYb_rgtltRgz&o z`_7YDj`so0-$0?=2%Nyc|Kw0c8<0z;WMDsz>B`vqqK-9OejGttw@<8<;%Yl*+In$l;IyoD@|Q0};q zzPLyM(4yQhJqa+Z-owb0NvJ^F4)gk)*RYJkIx4=?knL%j<}*KZ#^^a$<&}x=$wL$w z?I=w^cY4=7)4uB+#Y?|ANSRe4RkJsBbmUj6c@&1ob_sl5+s1#!$aWSeCW$Lr3Kvj4 zUUBM^JS|i{f_k)e_#{K=O6W?nPyYi*5W4AzvPm8$k4-6=+DJx|SKi%)7 zs-pW!sc(NDHf_u{%c?TZszOM+6pNGCVEPxT<_pyK!`J=y#nWMw?k>dV4>VfusOd6f zLq~PzhvW6RoYQ|oe?q0NPMrFX^Tf;SPnJpx(UL2bPAaahmvLIVlDD1C^#rL~&w0jE zjc?(7t1L;d=Z@k$aRFQ-IvqG8JGfS}WMW8>Az%R0>y_!Xx(b*+O{PcgN3sX%fkx+Z zerYVgO5&p7C0nl4;jWOm?DYL2h#}tn)XjY^0ewx$4DNroST@_`t@B6S?LqjsX3tKx zp;qlF;Pij@Oc%O22)k!&CS)xJwb_Hn{lpt3;%<9R@Oi;hByc!Cz3Rz=EK)(W?H=@R z+ssF#ziS zWX6jG4<}YKf5CAp@U~w}zl+s4-U&1`WgN)pX8wPiV$9!gb@c0!wae9CKVz)&@$4KG z?Y*~&=-M-`Rj+yf=VMlXX5leV6{ieB1H zmPK8&Uya&vG;0b++`Gd*lh&K`Hld^H_#qmn}tIEHTJhZBoED z&*vX@ROXZ3@;UeZl2W@LDQd8^xf6v8kwSj}gVv=?IF6&joe{qd>&ZS%E{B)2vsR6)Rz;hTl^zNqpiNpg$2QIi0fiqr z9bDF=Try8JIStp{He8DIkrXiCX`sBtj14mLHi4!wSyh0M?E{#pQ8g;L_5nX0I2q4?sc!1KmMv`xhUvk8u0-%dTKydoJ1Y1?ze`CW?n1+nt}jJ{KTR{r z0m3#u%EWwb;>zHWGT~%@gHvx%AnSja*7c7yG>N+|$U6&_ZeeFj8aDm{{s_qA{sn=0U2*Gfvt60@8z7<2qB6RK= z;Yd7FY~%jm0D>%dh7wEak@po-|EAz`^)i$;JE#b5D$*w{ZU=X-t*b!zYGr@Y(v{h* zspYCCA$8{%6o8qPEZIBI`#VbX;Uy5^!VouA*^d#`Xp%`qNWd0yCcYJ<7!9dV)!6N0 zoY5yUM8<%809<4AJ9NY&7A)tDj{tf($%IG^Wg4b-J_|u|`JMy`^4lasye-p74pJ>S z*KM~`vTO3-z9jMFJRE2QEE0d9U=zVWjipp18uIL(S~=5{QCgXffgkPv-;+Zuo)Wa7 zBjZCe4>F!%V{lg*gxDADX*mA^H)n6PcaiFKWXJ+KRb_Kne`li>k%is{9F!@srHlef zC@2R!E>$2&?j{Nq)yO5-F_X?|6aTq`2WZy8{cBKWzScVoWV2*ZOIv?XGG*WV!C(Gz z3hpGoD+;Iy6fLHcid^(;vGlTVDWk;w@1lb(Q^M#MKc|kzoMTh7x~_Ro{~nx2Ct!ll zD9d5{qV=JC6tri?nD0SvN0c2F0UwXp(|>~a<_R*%XsEU)#Rokct_-Sh4QmiV>?_1S z#`lnNrT7!rb&&_JkIjD{!NtJt=x1_ztGL)VXaPeEo^j6D9t%=17mX1!T0Wrz`SbeZ zHzP#rKj>j`!YV`BqN{8cmw8_>h(Cb>2}-RlIGj(_Xef9Jb8SI%w+tg#3o0;rnM(IC zwOFc^p3I#Xi=cqMtib>p(`mLmqo^6BFrGfATgy9!Hf9M&?J9q6YNbkqE7fS`>KFUUc3k@H$q*w%?ZGiJ1{_$NngLCS@}@@Q#wwrM*UiMz*dCW zBjdrvr3Yb^2CIL#!awkMOW*=2?PhzAXlKLvuV^A<>>&!p)rs?2TpC_$krVKVp<30R zHjTfQH86M-GMc~IpSOy9%0#N;Ki@tb*R3T|1u=t|gyzRIR>;rL9o+in3Z)gG|3Ybe z%kWP|C(x9iudfzzaIwV81EHKfB*NipI*Vd7Z?a{vRH=_BF7akur z*SLsx?9=D3X|3F%;IDPonu^8+iRKeEf=4FXBSW*M{blbqHceu?+LM;w>T^x0OAQfjJo z5l9Y=i(=dX)f`K_kHaD?%%(;4yWL^+kOIThNaCab5{~oTkG)CCz7rEc$6iD~MRK{Q zE`d&gAGpx&%g_$fi|Nlm9635BSBVOS8ML(%2R%Y^Mh@%rZb#f3%2o*pyz@u4*Zv?Q zb7+4HY!_J@SlOD^85J1nLpo^S|KVWAC~NgDc{bWOepkrGMQ-X|!xed_93 z;vhwS@gg?7cq+^uQKCKYs*s+Vth@V2raXVD7%htXaV{`9 z;@U$W`ZF)#RSBFXW!2csVX}K^gIXN8p+9S0W6|zLpxW7 zB&BH1x8QQO*aVK>hoje2$9HF#Y0rKFt%XhKXc+v!exd5@i@3saa#2zkE@Jw4!4rQ~ zfS@Wdk893t1&~(jm%FbtUZA=ann33K0SwXL)Us)>EIgtilA(<)HMiP>&g0_?3Y^-g zkk+;nV3jpr1GM}mC2o z)uV2SUr$6Cd@q|v@<()28hzYWZ@;cvSWjp2*dKU^io!tjVZjDh$R?o(xh4%=q+@{g zJNg#<4rvO;sqCh-hnJPh3oU)e^O0KeZPF!*(848$&eb1MPatIFZFGOuH`VJOem3sE z%=)BY!XyDe2CfM2iZIrjV84pis^rL~1_EqUKj3(;Thn-jtzzri{+MLyY2nw0p$vO9 zg*lA)$#}`1RWM#p>K7;*Y^;48{ay_KlNC$xuIF% z&hZr(fy+L&`=lj;7(;&xC$JePao;ZCXny|X{=g*~MAo9DTFKnB)Q?x<<3J4W0_4<8 zml|??wZG0BM||Fw*9hyclOR1NA9HXmcU^|A1Sk4IbiDzZ7H8?R@`6ygA63TivRv#E=_A}~rICsZuC}jp^bh>}ftRmthwkuBLyC6GA zb?LASNH(%JbuxHAxlL2FN?BEK{T;0y?`%E2CxrdG5>*Jd$H(jAklfd*HMB8xdOBDp zQ(n$d-C#N}NJIEFa6FDOXn%Fm-LR<81g2=N_Vy^W3nt|dRq)_o5l1DhU}gna}m}}ri>`2O!Rqz9&iIAuZ-nS5?x1{Z{zw`W>%vNPmjYvF?iirkd~VHXEX^ z$Ff;+jO**Sn>k-M4x04wW0MMNtG?yt*F(Z=s`?fI?yHwDk~8d{Sfz*3z=Jc5_iCup zW-krLm3vhzCtPTVsFHS}QKrS8PgMJP*~UQ51+NOKXwt z#!1JqvZlKnb{JWQwV^LpF$~QF@lsM6Q?0Po`2mU9c0N1GUf)HEr;^*CWJBD>gp6*v zsur%EJCeID-g?Afq;Xt44B?54#U_GN-fZ_D`>&Y!it3;#R z9!`Jr@a8Q`1ud6nfS0?g=*#{ZcW|PBF0Er{sKsbrScSP<{&8k#vq=`me&jbzQs-wK z?I+>>^e6RsP3cED?-?ijLP(zaGuAY!Yt7j@=xiQK9OZ>f;l>*M-;C|p`XicHgbn%1 zuBC!XlNC}hn?zvh-JLJwGsu;&IHnJ4R)>E|_Vm$!F-9V^SIE&&h!^fww@O9rd^dl| zlqPn{yG&82psia;Pu^wnxPtoL;=|xZbM3+0dmDkQ^5y1wfH;SHm-Y86@p+hi$Wp4R z-5qF#7{mg`kTe40(!Z6Lmw)!N*U=ylH<- z3K2VoSQ~~?U-yTPZw`Q^ZoL=txt%w`${c$_!*A?C1Gl)J`~v$W`*j*h%cy+Sg~rG$ zGp}j?dSTR5h!fw>t=+BUZfoiyBbt}p=_aOsnP5=3(^YbxagSslFv~*hyQ_E-u@SI2 z3SqQ36@*0|l~!!2d;tH}r^LA6y|sVJZ6l*UOsnjSfrZa9y51|Cm*sxbh?z`Y2v53= zKx<`WV@H@e#9F02Z+nhqSxLRRoh3l*TH1UXvoJGOGl~h`4OgaxnU8{tu1dbPQKR~a@zTg6^9mxX4ctUp^Msvg;wrF<)^ZW;}j7fBeN%1B0Z zmDbWC5O(>S>H(GfO-;jQAHsi8!15xU72gu@O3L_@wA?D0_<2*Jz!?iXGC<<-Fn1n? zXkKQ$`Tn{HB56g@DL0n(usI%;#K}cy#|vGOFgf#Q$IvQ6S)$MLNXM)5;Z|fD6A6ET zxbNI^;k@=J@ME-~3k5#WCY})MnyI0~Do0zb7TsABq7JW{&&bnly}N(q(iC0)-C513 z=3*Ag_`?DZhiKu`x3F;m9!?*t1gEcLUqY#^l5)tssi5+j%?VhVAN?fa>$kb6?z;6cK7V%{3lf@$+<20XFTFJ zU5kouaq?6<&DyipwQtQ8!kgxoRZfZGfhienm@ipEl?oftrwf{LXdXDs9C=-5-o)F0->J!-bvA3cA*DPRM~4!9N)8a9h& zzRkn!hB1%V^cN$l%)32dXE>dogyH+8)1MqK5hOM)0g{4FpyPb1*Eh6|gg?uw{-9DPJ~t9$!COVBL3 zm-6adp69lG{^;sLzwO;Vnru^=h^)lRDPi^M-zGA|TIhcXB<7#$Oe^WqoadSbTICjD zsCmV~oFV!Y-*q?Abp0I+TxwaHiq7m^PF1KBKgWLu@6V6n;Gg&2pdpWNu^ zliN`GY15XSv~u^L49o{w7_c~=rN=sD12q>%PF*;)6z!c(DsDLnHT=Al9J?VKm|1B_ zM6vb?seFIxYtO%2Pp>U8L_c%8?8Zf}1ZFz+yR5GpE0@8u(=$j9+zzy#q7$CKwt8tG zEYqh~Wi9NEkv^b8dU;hjUd7^H&Fif4OQ($u-;X}TTSNC83PsgxLL zr_lg(Sa1Q=7k}4X8+wI3xB$_nQ7`9EHI<9Arq}bF+E-X-M9>RoF|KPBbyS6h7_iK1tM)AJ{Q^|xGg93Y-!ho;+na3szAuy znU6zG6O9Locu4l;@r6M@KO{Dgr{jaeHw=uZQSZ1JKShw^d=~{Lt?oYb7*X0#$Aa(a zI?z`~9TZ_&1YCWhwl0bVR$m@<>?nCKCvAUT?vu{xldrLeDj4X!A1|xdY){nZEYDi2 z#v;CZdC%~tYP*@%YSDHmceEZL#`wJ&=n4apIhWES-~@b*>K^49-Sut_Ut}BlPl6%W zQ#~~zYM-iOY<*8FrXHPQM~WW0hSy(@mpj=Xr>AUB$!^b1Ps@Y$Wc&m!${UvllN*0z zS3xnNJ0zf3^j#!jHNkk>N=^$upRbD6dwB50kwKl7-pYd(Xkc5P=B-nnbN0o7e)ZM| z^WzbyGAK2W(l|8>YzS#n)PUOT`(73!uFBMw*)MH5+^fD6`(Hc@{AE}@O~!F~ple7V zgUqFebkFWb;7meL73Yno?$sPTjmv*1rA91XqkiXE(o);f0}BDUCyo0E%Ly{FBUK+nTlRO*e7mO7j^n|obINuA6c-nY;mpi>#hQ9XOA1UH#Qxbv_IrNcL;?#ohB@AcPSzvy|tbxN{6F~It1csj!^7azIBu8ckn)( zivhTah>d1<5dKLzVF^+ORY-rtg7cZd3GitiBZL{v=l!Hpv#CW~Og@Q1cY#b-!!Fhn z)N3d(hvu2i?{3nqQa;ieqds=Z>v}taUAKsg$|m%PN2>LmdxhHv`Ub*3)x$Fy<`iS< zKjGh^4Gk4Ej;$$Tzjcu&%OO5zPgV>kjiqFF;7q;=e38uHm8$mz`yU@sR6%%=M*Hz$M*HhK%vJh z?D=HFE;axObQOpb6z}zm*)YVSb685^uu%!U1JCOObV&EhrMzo zB!A=&U<^P@m(_|xl7U%N2%zzQ0-5?ybGm}5;?hf;byu|5d1>?Mn#WK`j{!7m%~MIF zJ-^In0$RyaRb$@dLW+cZEcWlKsnCx2;IfTb0{*iK-1b=4!IzUkKTi)%AR!hh~%hTG?iNURu4+F^S|*K zgIACU?VtErq~T=y#(z)4qrqmd9w=+cwu{5Gn2dD`*?xTg{%wT;Duaqb1AoevFwzk~ zz~+BBa_H>qc!3_@%gJW&Cvu1E13eTfx%M=V5NNs}%oCBihT#!^sVb~q8uIqa64b$j zwy#phLrXH@K0trc=86DcWH0jT`$#kpN%a3*9Vpm&u?m)W`F&SlUU7FnVixoh zWa^l~<$spUwIJ+cSS~N1*R`Y!18juDfN7Jj^M*-VcPpinP7x{eKixN@(KOJm=G%2l z|Bzn`uFSkA0vd^b8U?F=X));Y35EKd^4-ewU5-+tI#xHF>Oo}xZrOcJEcn1ZlJK8* z=e&9McR{nywX78MN03-d6Vq@InUq2G>%Eq0sUzQC=Rgi=TdxkEjprSVw7*2v)E`{< zPu5L;Bn<~0qn?kj0=zuz#$A^D^KGS!d{62W? zFR%_hL@x1VsGyF6-ZM_}&mq%q^+2$lZ5m8l*$irf4L^8Qx1e6dz$EMv2GM_gS_jS(LVWi{LzYnq9VRY+U)kToF&pA)v&qC`jMl{O-9;Z# z0<&}>F6dJP_0ZNIPFwIZ0ifyLv*rPcs_4{&Qgm3{1_~?qCOLa9k5(`m;1p45aewFs z%br~<*MbupPr*g`au#B+@R_M{3BxJxD_gJ-z-%-ABo`Zvo6mx23%=VzbBg%mJCF<9 zMfDqhj>L;`PcDK`)+qG<-~b1?xGBPU;#BH^e-A6KQlqnJ9Onmd4lqK8qD!FQ zBs#VhRjru|fhEk~7eEZNL5v8QOgGbM|7X>~oJS1fA?-)JA2{)2tuAXM;7d3NtS<&g zR;toLtA{HZKgM)HIsOf-aZ3n;P4P4q2-!t{i$9;z>5z2=K_~IaOdy0=P*MmDd>GD3 zffY1H_p2YH<^3c{i`o^FoICy##_sep_WDZdv=QR z97%arc4{Qtz~gsujCWrJdRB5uV-1R}j@^<6=gr8$H*$=UJ`OtwHd02K*9C=(^9aj- zl4j%#VaVj(9y^uoW$_Cik-q*j-}!+J zB*J-9gM8p1W2TM6RkmZzR4#clZ7|&G>K6U!YvB|-{mX~IF_C}zlGiaphbJeZYGBDo zbvlf03TQo|9*^0C<*olx42X_@G;CBNSi^s}@^26%{a*vL;*;t zh>XQc!TJLJ$OqQFn@WY9%!eml7$AH=4GP+RFb#v@BKjHXEOmaqfY|{KP>k{O4{@Ir9Jc zS<)O@iBQwYlKUg_mN|cL@JQUXUl8EFsO>dPi*Ge_e8T(BgZd7sk&q4wHfpzdbs*@f z`en1OaoNK$>Wc(_8kC%K5CjC2wMU+@pULRrl4nCMSpaH~KSZRMiRI{^qe@nV zU?o$dx(y7>U4#&&H58o?60ZVvS}LV%I1;=cKJ`qpYu0O;Q0`jYg#^1%(2GFa|65Pv z_4&^4mx8);(ofu26fPnuW*K71uiw0*GNunj&>-}G^N-VTDOYBH(4eogQK3&lVCn2c zJ&Z@|bbKinr~KkiF429K5>Jlo7-AEJk$!(Jz*{g!sVdug*m{U7t}m^O(|dchjy8{> z5A=tSj2hBp@d#A+-**I|wm*@o8SAr&AAPXUeSh3xt~JK{_l%kuluEV_4Zp1$NYIe% zX`xPY$u#QXh(pYOT=eifjxP%JNb`CGbg#%Wxwn2W?F~CNW!z0zHtF~K`x{N99Gk5s z(`81>Uq{`pIE@p*f><#gl#YpctObH>F$;}QC}`4P`-c;%&pY(%wnOZ&P}oDRL|PSw zL|VSW5+3bJ?Rb=7Bjz85=**S5Usu(qaxAQw(rpe>-oO4jU^PIZ5hWc6N0Pk9`zSJ3 z;^(FJPR#SqPe<;-=u-O8>b4_gi=aFg>oAuS2gVp6y%JO;5{TSYGehwTy+6ck}h3Pkm< z!ho}_I47SNcly(&*Gkmn{=~O>hJYd;j6WMy4W@E`6g0J!DuvXdvt~~Cs2ZCsJ#Etx zekkKdNr%9qt(o3*X4JagZD&^BFi9r@x2k|mM_pCDvN=-3(dUd9^mBeS57yAZ7O%~7 zas56TD@vNG(SCl2?(6kRcD*@ydUP^kG%#B!Aq~0!AB3j5wsOa`QR-Dph(3tP^zY z$j%x?dI_+apfK@WSoZn20Q1N=FC zu@G2_^!HD#cw!%(CVRIQZv$_%DCUdd@-nuEEhvPoPr{YWf+W*Nh2Ce)mM(AvBXIeD z-pNY;8w;{Fez}u0Zkncl(jxp357`EmMaP0d?ajl|{Uv0^OQbfMDE7HI!`lVb7dK=x zw%8KKPJ-bxJ=Sbn#;EP{!S7+$5Eq5L+0;0^Ak5#}>fM;U;1_r%G}3qp@Va@Jm3l{$ zI{x+nkVPHr1shB?)=Bg)S|E>w>!Uq?US9Wy_rcbDb?lCO6o1P7VTABT=S8RUz-gc& zw&vK(oJ_=LLUp1WG1M_MefJsM{#AWOJZ(l#^!dHh(bw;ig{yT3R8W~=`3P?SiT<@v zUX@IWf0$-ffg0C-%Bpb_LzPi_Wc%FLf)gP`p{&>NZfAogh_gD)QOnz%`kzvN^hS6p z9rCNTHr+JNzY39zgb#{e>#_7NI`|t){~K}k6dWry%|BpKmB74%_=u4ysS`^{6m&wF zh_F?UhgxKi4xwMbqvddCe8^9p=`)^3QHqw)(WPH=@W)$~af>l}Ocwb)1Wfb2L+r9t zxfE_gFG8AftUd%4$WxJ5w9E>B3||kcAg}H!54Cq&RzhM}zYyEv7;W#1uaO2-WZ!)K zC}4_)Z)0Qv_sv!VIF4s)HTQ+V`}yXILd?snXx!IJIH2T)!RSoD&%1%39}67X-|0`9 zOQ9Mz>Q*f&Xl7CmiG78z$MM~rDC!B@|0bL#6c}J$SzT!wQLCY)tkWrfWq_rCzRSYR z%}CN6u#$e*SIA-~gF5kv$wH;t$7!?Kh4-xfmG8O?lwHSxvuo1~JS(P6xb47{)uzVP zDeDB929u>t--X8b;e&73UBV>&zujQEXYsmV3?JGH_r}~0%X+Z5iA;6=nDM-7M2csD zg?iQT2tlc!Z%tK;WPS{Psy#9i1lBF8)>`*4IjziR1K^!8ahL{E)YF(P6;-9Xo15t5 zKuPuJO$vwBzE_6DVD3qyb|x;hBm(g^<00Sw4Z!)8XCGt`y9wOA@2B|r=h@Nm27LDQ zpD%9YTY(Zh*j56WsXjKce}kGiRhJQ!{sbhbC)F*4GH8I4k26SrmIH8ATjHQwg7T}W z=H9OiatMg%>d&dEseU>*%j4%ZtfrEhOXU_!ulMJ%b`2y>EQ=ER&%O9bG>!M>$EIfV zC@h~Gw1;RsJH77+t_!CIIt6Z!iFO)2I(MOiqmwf@L{@jHy#~CPRsR<|s-*dxiczgv2?c2CvlvVNpbDyGhf4 zicGj^U1A?nuzi7nH~r`{wwoufmsFO8hz*Y0)bhmEmy=tAaSXtXqz!*xUKkU$O-!#$ zE?bA1E*r0v%m3srvO4@^zGsxYb5N}BIdv^Db1jGR0UJB6@6Y7i@sPW9SIwvNTFS6> zEK&yfy)l`8ZU37qtua3SacC1z({+CU{2gmc3l6bswmU@FteSC~+F4FjsZI~!-p4(D z&CBE;RqFIuuH@kw>ytA|!P6bBXcki127P}cesgZ4F zCyTjsObrn}7UWDUdt;XGylRn+OG|lDQtSu;T#SQ%dlyYus2ZSl(W`#;Q(C1Pxf`nF zcGO=z&7;BIoCSB9u>|znGS7}1vT9NiWzL_?&H6lVjVE<#dr9@n+nohj(C#Z-9hlF5 zTm9zCDsDwNxzz~+_Dx%nKPRb7$o)HIIwpU$>f(`+{1x1AvQRMrl%iO@Hn_89O@qoV z(DYP)pPI<{w~?p&fNT= zW{7dXW(MF=nJ!$*%f-taDjAxen|rCATk-5OzvOY1zhJ6lkJ9h5HLzVB&4TQyrItVH z+$>p)8vvNGX7Ta9(ED6$)Z24I6}!l3+{TDk#=eHKbjbt37b^RWLBh^^XQ|X7)c{X_ zcR6}8uVS1>>)xs`cl?o|rWT`+P7)TqPSZ^`vtn=NPuvI1tpbnq# z#Ya1QW}(sA>DXOlu09qwjgkzB@aafR)i(4(mX=@7Y9Zbc@L=mZfGf%&grIPX@Sh$QMTim=9iVp2AKy4e<|Cx9@ zPmDof<~nt9>%UCfYHD-SI|RUNa1TWR$37cXa;fNH6>*cYhSC~u3@1w2p?CU}q~v6L zO}u2a#|r7GNDYp2A|}1N#lBS+O^>mdsKCBi?6@k(v7yLw?qs^Z@c=@EUo63YZqGqu z(1FuSAIJj(=?)hnx-98mjB!*xkyA-7l^#93@i zyK6~Bh@CtwEt6K4Gd!wett3(FYz1)*S5fPB!z`MgJ{>7!lT9xj3!k`<*=4tIHrwnh zw)%LT+O2a_1q+`(ajNqAN%q-)U|zAGl{-}W?BUnwjG-?YT)sNVczszU=hNFS%I1=lVRa?^9NPn5&5^N%ZN3 zBLXiEnfqoMs4w1+J5&`_aMDs*K7lGOI|l-tN(1jFi3!!UQYyG`lLb=9E_l#j&^ywW+y` z7p)MZPVu*ru;kjv62dw66!h zv^R#MC4eLD%PH5DE=Et6jrUdn<92$%T;M9d*C&9My{6up?@fSzEq3*B0oUDwmFegf za7DUDhtSXgi*Jo^f&Iu@$NB*Xlsk;OZ2d+q{bb(p%ZG}>;iF;9Uj`t}&s~C!Yq-q5 zh2{e)ZWmU!an8&S=^3j|Yqm63FlKZ36JU)&UcPrq2a5-Pk*Pqz*DR9nqA z(^r{w=f|itJFa7Y;#)Fj9T*I2+C1%S*z1~pq-gV0uP&0|IGJ_&*u_LPeGulgn_N%6 z`Y=J9O^nC;4CLUSW7~G|L20}IS`qGg(auVFiQ>+6G%rZ?9e0JdZ60ydny()J@?JdV zW7Y+h?aO>7*cc0ZbpQy0Q+2iK)Laae63*Fbb2Me0Ty*goi!`Rjv|*?1 z+I4wCvqGA%l^;%sq@oa9{5lgdXsYph?z5wixZ@?7cwnMHu%%&@=M>PwN}jw)DkhfF zMuwqeAUbM)kt$|ZOxE8|D~;O1kG#T9V|>0zKK_MNCdJ!KXuqXFX4$#DKI@{p$ZIq^ zldlnDv`)%Sez~NR=L3$!KINyjj=$P2 z$eYH-{k?VV1%LVEGoKrpoTvm>ra8!6&st4K3ylgP*-hOgPwL$T9~nJmO`V5qWd`*% zcLd^pwX@W68zhX1`k-kvp(i=V(%q~zr}qlo4hgGW*JsC%SVUpqR1qi>#P&^dX9ju@Dgx?W>I;o zD;Hy~JT-N(v|rqat))kLnd+jsMLOph7=<)k-Tzm&c_VgCSFt@K`)N3e>eQ?@Zs%Zs zpj)Paz^cvQ&?fOk>DUj~6+#KksnN9cvXXV#!@*AC9VKN<^} z*ethdPmcThC+Ef;uXBv~Lq_wP$X(-qehp5uU{GAG2*fSOX1v%nWdMI@M67h<(`S0z zuI4>O>m}eg0rfgA7msaiIzOno548rZkf7tUII5b;9F9;A3)~;qWOM7{W&5tH$eCUq z@YfF?YL$0Y4{;)B#kB>X z_duJi*hmYx9*nk4D2y+tj0;W=$*Kc~l(z zPWGrvjKkh#P?Z2eo1ce$ThZxwU;9%TgGLt_T<-`fR0b^gFh{{$CcK{Quu_>;F5FMa3Pr{7jWBYadA+8_~iw?B<-OrHNxif(pKzF!;3 zwhbQ>{d8k}^?tA%uzjO}RP@l*r0XWu#>S*hB*>W@uoZN8HaSe!@Y*(iO#(AlRLswR zy^;yH7or$qgWF)*?vm){r?C^8WR=Y&|Gd2vy-sFSK(tf4bQ9Z;WVwW-i|y9#KHf5v zFDN~>3g;(xxqDe-#CCXtl>Iz#wR*l|V)eS2w=t95S#|n=SAOwm)-1-KuCm^tl`y}n z)SV=Ewf{ulR{5Hd*3L+OUy)ZvmyWs?H|jKM#NTwdpc~j#^(i*Ta0a-X(8PG@ch1&0gX4 zt#x8z?HAs=Hg4hbN+rMND>^+dI?d;oKM%b$OX5F%dGKz{c-nS)E))L2+#jI;})}MKK#I-- z4eR^f)wA}9Vfa&Z>K*`EEar2`S%>nCnLsBku+iyuc_E8`MI?;7$$GMPbSX+<<{)RYOjP6IBr11uDt_Z_7=X|^D1ri1aAlK&9*SQB3v zE@lEp+R$QZQe(RQ5eB(^D3&_Em@<2dfdGQIDJ-{X;rP^1?Wjr z`mOl}1`^D_&x;-@-;2eqt?lE}>RvsaIx*-x?e2GtIvw) z_RK_o7CFRk{}_gtV?^Tk_^Qu69zLbDiy~diQ-Tj{<;yj z-G#Bi<0f%R=k?-nwm{svjcrUO6R+*P;kqg^D$ZG~@nhZW^Lh*qw5z&FvQJBb0SHgG zy?!NktCbJU$DQ0da}zTMCTO1(1M0)($J$xMamIm{wwX%|{DbL#Cwh$Mtpp!}w5BP4 zR+b95Teo+L;x#|qdcO(%R!W5VoJ&tuG2gc@fO}p2AtDDV<`GrXSBu{#7DBU9l`lQ; z9&BC`@}f9w#m>onaXx^8lXeY@d*(e7 z6*t|?p>h)+!|{Z8r*^B!Do-5`eRbjrqm#v27y$pO;aS|};mU8;)Xt(hw|A2tOI?uF z%n#FtbM^G7w$(T3SiQ^%xovg|NE~Rc@S0wn6FWZN#NEy*yEiu$RwjSn;N z%m!n?&ew)DMZz|*c)5ojU)ii4zJnYo>4l>e8HL{I^QZFal;=Wt=oR+)Lgq==0NW1Y z%}5V#dtle3lfdGiyU3KKtMbE;%v#4UgK3X0&jTtUznhaht<^R4rpu9!Ch@S-mXFo{$LX;C!bC`Z1%>_ z5i}o7E`&lE79|!h9dY|fNll~WEIzTHGWM?&I_ufLu!jWl-L_Guz5_zoHcU`0fI&y+ z7P`?I7acn`;!2fSzyzC<9X3Tvt@6XwIn<}#=5r<-#$hlRo7~Z z;vYXvWqMO5YFSEb{y$c?@eUIL zWG{>*h^ZRzeApL87G4GhNd>MqOtixzC`DnE$6MCxTi0B(t6-vkNM9Ea!XwhfW1+~J zldKG8=e~@Y$+0#0b#g_1spb!Vn^uS@+Fez<*x+qz$Y8M5p@9ch7iAyd8M5ZEf5p@=EWtJLy!NtroTw`? zV3nJ1OC12<`Pf5x(r(sMJQa}05#%^jXigRC4Q~xS61_@)WS4jK51hp{j=?j)^ng$8 z)Vvgi%o5seiLxA`sY}(4EcOIUzF8bnh}rWygQl+aoHXN6`?=ym@w4>?W3GdvF{4j_e9>k|_|da($KD zyFA03k(0B3vx%rcF0~Sg(1u7s$P6?owB~{jbK>4wK#Jd2tMAw90DFQXJQ(Rz5X~nb2!gso9pYocrz#n4FyC>k@j`g(SP^C-pQ+=EIt4lOg zpdN)Vi7g%?oRdmZ=%}fdfvt(pr>iL)Q0uxc0cII$gR3E*nSVm;NMC+_Mig+e*&&i};4n zda`lWDGQ9aO_x3|sqMWLXxb`7I|Nu<`1|doDU#&jPNEY39)bu@tX{f* z+C4SJXGd>$Mdq30p|j}{pruo{x#YQv+MAOmI~9$w%`2kzR$2XTtr~&-qNrPPXduVP8Ne@8nstjfz)r0~cf9EPLj=PA7(= z3$k7Q)1Tfe0Jl|#Xlf2LC)y$FeT*dx($+R=;aEacAWE`2VP7i)3hO8 zd_(F63_@$}LN5<7MPoiZU|wfCfe&qc>-TJ+3bb^OUP}=@e@qq%;ku<3~q-IKWTLk)PJF1y&U!kt3&=>1~GcUKM_@-qz$2f!jIz%g zYw*LAzrK7#>L4!Yw;e^4b{Xd-`Fj)}OO!n&RZ-W7+>~zZ7JDwO{@E9Q026bG8FFvD z7O3-w5ARAdbS{{C`(#+N!3UmI?X{s)`l{FZ)Gz1PTK)hZJ;Z68d6%QPn#g3_?~AIj z0Q6G${ZI4X!LgW!v@)f$ucS($)fFCi=GDP;W3S&t(5tP`EVwlpt#5A@`n`w*qB$KxHfVpnlzT%2a$ih$L+ zl;^d)r+Sdzu$qmstc`YI?hb?7)u}s)5x;<0g8;Wtwyc7WnM$^Qpx7jNKyg*4Z-ov6 z;H*QC7d{JSd$gA-whbj5NINmZCUMCvteWNSxQ^q{N_A3Jj;$ZB1V#8B>aZe-BG@

    W^i z4D7j>)q7bpAbl-=)~Ak)h-YT12AcZ%CWUs}Cw+Y~O*{psy{4)y&Wkl}r6d^DUw%wr z2ne$`OX^L}ZS0dKKElirFxTdbth`E__a*Bid~VqnH1sSmrra)uU~0i(74i~#c$cB( zDQalTwQtN+$tw(8nWzoshH#$u$!;8aBF8h&>_?m7dX5W!iKWmS*$$6kh~aoU)SY}l zkJuJ%W)-;l%6Lo2(S(cW1i=er;B3jM6`$=IWo}FVLwtfjR3zy7K$Y>~6| z8xPdYM^b-u?J^^)T?GoQmGG$8ZitXWaYR0y}n@gRF zKDmKf*^U5v#2yP{`M>L|BqPzJ#6zRv8}zryDaG{qtuo7|O8Fsi4n?q?Vcw<*?u{9s z$mLb|OF;Qo5TU){fP5%y-Ul!3?R%k9VU~>s53>BXLzrZ~?RG z2BZ!AE>+GUY)~%MG%Bt+P5q6rnwodC4|VRt{Jl`#9XC8hj7MUjez($!g2xGd)Jw4X zL^~IM2#2W-gQaa0CxLkfsAE6(E}dZ24jq|_EYP?qT z^dIhbq$%pjg=NaJ_T$bMVWqPobiPcBSAmH^eoac%M;TmJHLt0CqmU1ydBe&8> zewiHz(zgd19cdKf%2r+x3pBE}%4wGKUan7nP5BOq>r@zT^rrygO$7^l`K?x?c8JMz zp)A3bPA+@FE6D^}?mx1l4 ztrWTQ7fNZ3jJ80fL#~=$fmP8a^9t`Q1o%CY?`^781+C%p9{(*D&F z8Jn;w2wJII@xHtuR`e-l3Fo`l#d0v`Cdpnq>iUB>hSh>vlTNv2zdzl!y;AglBpFtH z5$ROGQ>Gh3OAns@@r6=AiZ?aE1}W(uP@B*;8c+Pk!iP<|J&R6;(@}@o-tJ)irQrSk zW5ij~K2Rd>Hg1TxqwQR|D|_hq%B-GiTg>;|!_7Vha$Va%BvyNgTwym!9(077wr6{%;uT=0Wb zZjD@#j3UtZZMxi7Bj#nd9i=7<9j9pXxVrqSw$KBzEg?Bol@+d`CDT|3bm;xk78_}x z-8}Bqv+OXl;67HGQtH8fqs>1amhtqvsef2jR_=@BN&~!BSP7*8ar?z)o%WCP#Bk~$ zdIys9f{_VT7;9Or7Ag~yQ;0KN?`E0EYq#Ynz4a%OoT_^WMV?5lOMuTLb-C>m5P?rv zx5()EG&Yd&xlOVY5x>?hzD|l!ubHTX8#H&sXI1@cqA|6T*t^MpGFDA1+8;gnt8Ugn zxza3hq0oN$4)jbC5ysoUW>^P@gR{uDJPTCnj+6#EUnEIaIEi<-gt>9Z|MHvae<3^n zz~)58aB(0^D{39{UGeL>lHp#$ZNhrnmpPXM@`rcr)B zr1M@Q2HJ&<@3gL@l~!GVbQ zSoaSWH`@(>55}4nv|8@Yhbyt!rY0swd1%V)9x^KIcp6QNC!H7=5q~Y8eAfxlojK^% za)-AZ|Mbt*(D{Dmp1Mq-v?TT*EF|T0b5mqWvffG$axutRDXU8AP;zziaVc5!I$b() zY7zl!luqP-+w+_k9z?4V>&uA?u(HL$@A{=VKq$1r4uF2{P>!Kd?c!ka3RkWV_l2*_ z?LcC3v0Sqd#`Azj7;G*H1bLMeB6@nAZ?(p(K13-T+nHmvu`Vk(NxC{J_Zb5+@=Qpa zLiEK)fk)B{%luSXIC3o0e5AsaTXLxtuPC;kOAvN{^VfG~XuGMaefiv{isMCcMtbOl zm7>PW;;ozVp|XzKJe-Ip8J%_O4XXN}@y2Jg2&F-R@y{j60pE%X^yqsjz8BLm@ptsv zJ!Wbss2wAq+;jN$%@C-*i{!}Ifxr4=)7Gf!F`GRkTj>uN5ab6TnTs97Yk z2u|I9^)f1#$~1(2ubwdM-lls_YQ!$`!x_EjyQxNO{~X+a5pY0Xu4MxTWRavJ9qf{u zbG|Pew$`>D){6?MSe7~2Dd;yujwh|GK!YO1RY;`b;@QFWy52h{YO(==41uR&b6!zB z6BSTB{>EvC14fv6Mam}DszRbad)AK_3G6q22H1r$B86K9<1WJSC!a=)+E}RqDgGPx zlXj93*U2&gEk(D3+?Id+@0gP7TL(a4q*OP6AqJBz@y`O?S9JR8U>}Q~A$@CfQcTEV zM6Cd-DfFX@oJ?6k`Dy3$%NOtJEv?c6M5b9{j~+sY?{&s*P?Klvs*>=kInvP|QG<1V zm^U^sW?NbL?4e5fsB@>jSm^uSIUo9SVpTkR5DRAzZTrt)UXF9q>^J0Ver1YpP$FtJ ztQa`Fpq0-`pL=9H?QuOsrY}V#+>1-w6O}4ufEXBIW*DULy<*psxnUhx^GQ<`*@IuB z*BVbQWj9`igCz5eU?xzD+wb|@p%n0cnF0S#PBLStLwbnm4-=aT*g)`dWQP1Lb@pAsQMhoPKf}PKvyDqL0r|JQ?S|;Xy%RZ9w zQf5UQ7Q8%(xkcakcIQ2~c(IFON;v&D#P^pd-;Fzdr(&zfp&%EWE-(Q}!bt-?^0MDZ z4S4wTQRRN|#y4=JX-DYH&v*-gjUJ_^6Rd4o1q)%X3Y-`J+VPDsM&-n?zwC;P@xvV{ z6e1$AVPS}tpq=KFw8M5{K~PkG8n`%w$KvM=c{f^{!K&zY^iPvvmd?@JzTU4R5zl|N ze`vw7R4U`FuI7YJZlF75V6=)K{dRwZjp>Yr?lUqjyf-V?sYAsS4gSudrWWp7)NA_i zO-FWG_I9#;yRzX{4`j9Gkf1XotW8kK_fXj&TVK*mZn|nK@990c3CF^JN{WqLi6qrA zDyB#gSxD=gnG3`H5AHszRyE6)eb=9&lh8EdnI74JGj?THmS#)I_*Mrt2qeaAzws{4 z(`!V28M-)(_=srMea9ZUX_9(jxYYKrO|+W96;j?!kHE$zc}9|L{OXE6^|LgQO#7A2 zj?Y<2GCOGR^@~MQE=b>hMMOE+P0!F>Z&B1FFDE7E)5}~UTq0Lfr`^6s(tx*K`UNSo zAwDI7qm-gH`e+*;sj6bT9BcD{ivBl=t$_nZm=`;UUJ}ksz^u{tG@^#M_NoWDC9>tT_h65ef^rI!Be}g4-?UBoG ztpA|scMtegk9iJc#kbf}f%kbmYs8;LKvOgH8*jI*-lD2qfM!kms!nd>UVX{^vS;dn z%aaFpW>%H&KkPz(o~Iwy{!YJ-l$kBnF_K!Y=P5fS!gC$6bGBcYpSr>Cs;sO8DKp+C)j;a(Sc>xY?tDqETvu9d*-);L%T`#mE% z#o@;HteKK{xmcpf`STasx91Ij#5M7+YWhAC#F#c@ zIbmY@>!|Nf$@C3Jj^EWdb~ZmXdM%aSJg(Pg{C~cG9I+KUjlkeQWRRP8x zWM(J_8BSXFXOc01c6YAkq`P`!30mILeoItNM(kHbrwOt{c_Zsq?&%3v-c@FSjMb{v zjDk%Q_xlr+z^yfjt_y29`;0L7_uO{(j;35G;oKmy;X>`TLzWj^#$Lwvmw)!|{1R$^ zcMa)(C1mHfC*vGO!L^nqRM5!5d=XxJ+pI8Mz4pLgaX!#rWW4*m7{FHlJJa-$@gJ~l zSMiJaaAwYYss9N{%(%^@JnI)6$Ge{M&1_5PHzG%4uKF8lzlkd6q!5sho1~aKBs}22 z^m|Elh(N%8&w%hOf>AJ@^y29yJCWvekm>G!N&0h^2Pogn8jhe?yO87j67^mXW2 z8Sy|hN6W>_35bcQJ$^}5a3Bg%9~r9lJTr}ypU``XW+_~Z@mb)L=b0+;W`#O>sfv() zH0Fsw;(z|)v-q7x+mxy)$>LDnDMWp%LzI(a>5f*(mj=R6eBd&HnAQbumud2oef={- zIgF@bnAz^l31yPj8@i3%4;h!u4XL!fEq=4zmAN_{o*(jwgM?QLkag}$5L6g4~e!LE9L-Rw@YK@vY6j>8xeJk;La6gt#6KCx86^5f4b zFYT|5qi*}b;M&K+?^q1M?W?6!Q*qTaTIP~#RN6E*C;f~PIoH;4M}m*!d0$>Oei;?M zYck|ClVGUY6j`5Uf7*^$v%JdnT545@2ev9Mr{ZW_7WZ%%#H}2C_UhvVHin>oHtGI{ zKkC!veQ0ngWt_&Nlrl>7wagqQ@^bfu&R5|`n}fy}IbZJ#eNHXIA9|@>8oJ~p1TAlu zIAezL2cJa`RV9_8E0v&|+unP>t_Q_IybMyrI zA{ZXSf`PHyQyyF2bI7Oz=)4$lE0(M4FaXk7Pn3_I1pt30mQ!|jni$r99$w$T)pksi z7vJy9Wqgu|e!R%3-EQ+vjls=~Os%p2&8uxy*jsMn5GpYH*17EV>OM{y1cYN?`U}Cc z@F!O~Tpr7OnO#7fUpm0to0_X2TbMoi!WwV>Txnf!}y$ z;7Gk;(bbHt(_9@@u~_3jbnLCpEKpj}nsMNAMpqw-3jEAI7^4fCDoXdb?A9)%!D}4J z$Y!Dj+^T*pnF-A>Uvkex8sqkZgP0Yd1ysex9iM620tdB`_??{x`%$%DzIBDY-FN8h zGs}IgV9Mhl+;TL3{Ge+jtU`b#ezp)F%Z?Uz+bDG#?phCa)R`=sdZk>Gy+ z<@yC@QOgy%IL0>KRWxyH-;JGS- zGvTDb(`hTRrnD}phkVFU7O6{XflRl%-h@c^54_j_=f=Z&md+kSddK^F@L^4asB2VL zS#_iR8`sa@EO<&~!4kmGPkl+=jwGR52&KMi7`BNy0#RDvgye*MO(&Q#xH%cG6B-Q% zzvBjS?}zt)XT>kNEcC=~LQ@-6X%U*w{_80nWW;o@Ul%D^pObkqpJV@X<3_TnI`NIS zZfW`K6u&YDOL%Fd@E=RC3IPijvl2?QBzx zQ!5K9?~To!!)C$H2&(zArb-nANgl_sDZ=c+G4@M;OWlU(ZYplfUc_+U7wN)Zgui9+xeK)td02RB99j)K3_U0rt0-cAl$NJovesp& zonHAPSr0Q2$zZtvOeW2G2&_G1(IQhN{%)hv0yGaJkM5NhJrolQw0Q_a7zS5;*A4PC@bOBW z0TZm*#+>O&m)5hsR0fy)sTynUv)7*mU8$qh8XUYkb$o=|J$yR{Z`ng#^0So&zWr){ z5-M)TPK&C1zTAM(29uTrtHOd@XlS=4FK{n#C5V`vZUX(6i4Mo}Z5+YP8qx4**p_ zs=scnNT6C1FFUS>2J$usQu=}{-Pn-1<&`~Ie=*80Upu<=?Gp;e1|PN@bUw-rZT;qO zQ^h`-dex>NRU@m7z9W-?PW!F<&Dg*RYg6D+gC2G&HlqX5Ht_wfHF+#fm2+H@lMX)> z;YsAy>C|0aN_54z5KzQekdvM%PLem3Xc1}+ju1GiJ`s3ww)C~DwQA!$Vab$5YOW)b ze<#dRkk`>at|?$QTIls_vY^$ti5Dv_UQ%B1Q~M2f=3|@AFR08u!ShI)m?SCp)_3I2 zLF}g$mMDLr%v>3)stihEc;9Arh`muIVhUn5Z~E4i+HjVh;NP-Tw5Y`#<+Eva@4UP* zh!^Gjg2o+0WpMOlWtx*M_Fyj6eX-o_e{43Iho^=m^{1@z*J2_j@K9ghP@lVz;XvTi zm#B)R6#dpY&S`SO_LqV?iNc`Cx!QW$G*h;zdB4)3*P{r};`ww_5EN=+`rN%(B&x?G z@iPenQ(h-ikF7*N4U4xaotUODN{=n!de)iSviTD2&M*`$@k_z?WGr$hLGhNBf9R}6 z8L-4X*lEgtRx&7NYHl1Fc_$CM+^fzmF)Ep! z-3jqy01FS8dZvIkbuIf2J8xC580Aj(l}I-v0=1UVnR~wb&NQjm1MB9T@q|27a%!>o zu2+?kM4#+TRnFBjXu7=~irH7Ge}f;6nnTBn>VE+)?Ktg+Q+E|xZj!&FF0P)qUY9hq zIai(;qc5e9n4J+nY|u6NS0cC5%U?>jy^*fJ z9elR%4NMi9`I@mRkc)ZP-A7T|l7w>>Mk#cQNG#T0P(30!O)s_OymSxx&cq_fOuzSY zq0ae;=DO;|;#t1*5%@34f8rm^29#A-S0eUt>#)L&3OOoMom5o=?+ijpRuoT@>+S#v zJAgkqjmvyxXR+81ZJcKfJ1pAv-NN2`ZmRVQYt|e4tgVn7CTC}TF8^%``_wugDAI@? zCfbOF*%-&t9s!ImjnYG234`|R)iJbjee}N|Mi`}dprc~k= zIkUSI1$=mY?H7fYlwf1=_4t&+%6Tcj!g+VDNr;=KTGKQKXEei2juTWo@0)j{7dpxX&_llDUFr>cZ(V4zkR@)7-qd5^q z_e|l;gt-32VIroNf0e1aE<*Lx#=(jBaYGM(noRFAKA^T0HbT(et9O9)*N7wv?}PCx zPRgUc8la4ks`DDO03ba4rHgBLh@8p6NY|MbePn)mBFcEe=>3YxX<#azaPI(KJ!$Ns zS$~(lDBr=L`qFgqe41CLQhOe;UI8aKX zr~8NhgAtoohWLlW!q72CniH*{u=I}lb8mCXAS|lG^T)q6L>tTlZ=<>o#Qgcln6|wi z#5LvZ&h5l!SEn9|ezqAVl}?-+v#5@iU}t83t(3^4_)~IbSG_!5(AKuaIb-uP$mOH) z4pwWyMe=gLfBY0wtA1BXDvMVb^{2i5WSSXP8m$(a@fUiu;+ZklP>hC0f9V4G2S%TwAG`~_Vokx63L zOv1#mqg$k`^Im;&i?p^o+or)yWvOHjw^D87Hb;q+f7;jg`vtG!YTcFF$~Ts$##{c{ zS_X9z=@nzWmWr(u&ARH?$FGj<(#B#PX8O-FCEv`C;CZWg))9L}OxUaBuAH+^Zo~CW zG* zoQRqItmwT@t3T$;uN}jiy(c~p=xrqUqBews^%{H*Dt*@Y&LR6$8Dgzxs<~^}voQ~S z{~q+E;JT?l(;krMn-jQb3t5}I5SDTj3FB?%f1MOGGa;`D{-{(RO4y?dNgCWV^5NCh zJZb%a%lJ-I(K=oebAu)$;Bt)&c}~5K)RVcMPw-KlA3EjOGZ3HrnbH@zGq}~!lHanL zT?Ojt%r)ns?`aZdNjw@A*Qutn>UA}LBe7y4+UB+ch3<3)-M-y0`|OS%IJfoS7S5%c<)X#p#>e}dMdJq3j4?(zd4ZaVOyowRuTByy zC9SN?&!)LmjN?9Tk#YNSQNCYVUH;qH{Bxg$G^(}bROs`U6x7&pq8E$ zuxXl4Z`FQd1cSb!l1CtY@xqhKr_1a3f8fL^{ZStP(F=6&5pD_E*5Rig6CYZ`VUg|r z?7Y`n`=!7C$_R)kSnwTm?*&lKYpQOxtKIKUhr|K%oyW!gi!?azvi2Z%DELG0I%lpO zyQy}_!p6bQ{IFV@qS`7KD)rk=;6&S43VfxUddg8k|KDth8L`XY3N@PKM%rOD$h0 z1hnn$mbno?Dne)UoYx0r6*CUVRj2H^e#q%k>8dSFy=uUADUC-S+G)~q)cA!IJfMi$ zai0zE=j6AFwQO@5F=$i!8G0$$f0})8ob}8BZZ|)fH6GNqxjnk$LomcxV|Y@%t!cj@ zAhdKeM&ucPQs6Kj=I`&Kn!mZKo>g!<_GSr;e^+ik`T1qN z`PzWu7ox#?wyB}e`HK8;xLD2iwd|BWxT+IH^1*vEDIHm5vT=on?v#dLAw=`hXN z2qojS2kJz7`m9nVFL00>l{0er!J>1+64-YhKa;GkRY}QH>j+ROy(qG=A3AYn+-Q^? z?e6l^kPc=w4*b>c^W|-Sf1jv0!^e-N`U}A=y&)X!c<@={v)JcrWYH_+t^k*%gQSoX zFldTKJt(fw9MZqa!(1!faSQicU9qP*d3_nvd}Q`8GL^X6h8*J4d?hy8dIRZrj0CJq z*Pc;r4iqbjr%~z5y6t@54$!%1HYO20Uk2ixlp2ENqa8q?}e;UBF(}F{S-{Ob{ zRBLWKa-tGwwU_`qhQ}I%Ue)Xg_rgmPv>&dY8ay_&_@n&|mPXhXCE@g{M$rm50of) zyO^D9Mo!bjHs&k&f9s*bJ;`+}^K{`!DB`9pZa>*UXTA(CP-OG+Jf+zwW8EU}xXq1* zg=JhF40cbh4?qhU19U9jQ3tEZmYL1k6{H^~yuNbz8Nm05$W+-J#b3X~t*dS3pVVj= zA(H1zrrt@U2>k)u5+nghiZsBy1sscy5h5CdyZ-AePtDO)w z(Hx22$aVW@Qjc6QMvU zuvhL3PtRP-qfX7SOMT>%XIOCLx_HyG+d)%-GiV7~-K=Tp`WtouwSjKlXsU>5T28OS zji~wAApCIr{h)Zs2s0>^aFo^M` zNQae7R+R?|x#ePUy)TF#0V#)+h6(YfXZ_MNT!r@ThIDG6LeIeI-&!_Hu!n14IDjFI z?u~7Ee~)TG@I<_r92?Hn)-hRx-3*JkP^~HKIO2`D?9{Xt#xwV(@PEVXS=g&h9iISit7FXCFFh{f z_`EU1dtXK)yZPR3P#v&%c;5R@)*|^zb_-D@f2z$*uT{Fx*o6?)-WOV zi)oC)V+clxNP<_jliCV=)ll7H@of~F{O|mG;lqRoR;7>y-Zjg%LW74_@pw=ZFs1#n z*sNt|ThWXmjmJdVcEfr8;l9ztZNxG!e+{F^Kbq}EN_rAgIbsH4@w94_4RHI5<_WAo zNm?UNiQc5q(wr7Z9yfl&bjgJVFp(J{h}B8HS8two8v?FkDxt^9eMd*K@U$`u);sQ@ z&#QdVKl+AZ_dKdn(ffFJc(9~J0G@DC7ic-l%5=W>fNkn^I2I$F9P*Ha+)Fgqe_gRK z90Ql!SL}*g@rxh%a#xn*x-s-$FUGL2-uuqGEr1U*Z^noe)g)DS?v;&QC_@?XY!6yj zC5G}GO3k}MMl1Q8d*;UVn*zGJ_r)Fith#MRALN@>YMYaaGz4rfX7r5$G?TMB(7N@> zV_zE7cTKuCMI4|1=k;^#2nS=b z>nmI&%K_SityfSwBp*JI*jkTM(A0Y<%?TzQyc<5=DmR}w3gwlamnfa?e^g^4?W?Dd z-&9i|-4rw&P0!}Zj+*fqwmH!U2V6pfYwkkUQG)Is`Aj&d3NeXVkd2cw44Vhu(-2u(sNL}ga$&7UMco}ARNO?_GRD8fBDG86m#$0*xI{UEsx;}&n=ESpO^2cDg>_YO5pLQsF@dm zD%(uVzkVQiJ;dDhS(G1Y9?s_vvJzd)E#d>wJL<)4`BOmURoG%O z<+zGDF)#Ey3CMdH1s=K~1Z8(toqt9n&o_paWtJbMrMiUpKLkWGT>SLykHQYrdMDOB zBO>U@8#bkfnLJT za$VQll3&%S5m~OyQ>6(cN#RooFGy60wbvbO48^!Fxpn2YbyL-=YXVV8**pGiMrv;H zz?^Hm^*(?+cCes>uekf8oi)_%`|_x=OL3A`b_3 z%!!}O3x63laeUuZkwlFlVG`}KXFXIpA^>dJiv-n9|M+%8$D8V)gE1y3-?JpY`v!w3 zz8qLFz^O5>(Lm-RTkpQF>jETJjcbL^GP1{uDLmvusIcXMOu6s4{yHo&1@QsydiXQf zMlALAXIzWze`N};;ZXV6yu!f1Fp*Zv6(Jgm?`Hk#pv(rT6Mr1S)gIO6`(91O09JeO zR{zf6F%bnXP22PWTqi=2P?#CS(7v*OGGaul)h^FtnpnA5n5B)JB*uoa^@GZk+Ach1 z64NVvQt^(yHiKY$RnN4|+`Nma+U|@)_^9K4*=sFYf9mJCCypInzb+Vzhd9sAyKi3Z zjxLQ;v)49#T~iD28}u6m%nV?9C!oS}5s32QpTP|EB~PEDI;pW-5~wiOv1LihXT77< zTR7YLp8T|ebp>AS5Zxc{gjQycPB-n*#187k{__VI)h`Om0aK15f^WW#^L{WHFe&j@ zz&Q@Me}NeqlSFH(PHxf58uP*$bY;swAW3-F&(z0S78g@T^e8FYE^6rzRJ5x8PbKVb zb4CuJjKoKQdpk8+{oFqEBv=tOUz_A80>XPQQxBHuyz;)oAFJH(EbYX<`U>Rm1~jf0 zwFy^?Z_|Ifm|g%QzoZHr2JSUYr@JTzucxJOf3k_*&Sv9_@r9nn^p_U;OIw&y1fF9t z4t?wu30Ut>l`FLP>ne=+V%9sGFIFdv>gZQt*2~DQ?d-It1B(p#D0OAO&2akI#psTE zf#B=kCC2ExK#_K6W~s;}$UM*{)EmVN3S^yfxx*SF8{)Ki7VS*4;#{u5AWYan0*V-%Uhe-`KzQ>0dZ0RyBCvxv&NQ*EKarv- zul;@=S+KC|P|`Z}jTI>OJY`_hy-zya6~tkJcD5boT2gSO?!MD9bg(zQhm?wkf4<$m zu?S>CuHJDti>97H=3&{@I45CG^VlXvieCy@9ABH5mBP<)PC(6f4H~OnL92w>Bb5Qd z&23bz6$6`8M(lso0sF4a8gNg}8k|grd&->SQ<9!h4w!;y$B>+VfKclSY@oO$*QA=F zU&x50{y2U5Y!jefC!>0&SgB8?f60pYr%zsJOZK#yhh3=4UyU2pWyq>_pMEW9?WohN zC~SRkBQ75F(}u4#@q#b;HDw~!tHXZ>-v8E!>(Ip|3PtVqKN?DkkIYo3Dw~*(w>Z0A zzn6-h)1@`N+MC4GPgUZqZzQz6MxhwwpUum6v@P5X;g9ZPUk>C&`Ygj*e_lS_(bqxp zj&B&KG0tpwb)>B1kgA{tK`illr2@Oc4TSI;`JfJ7FN56Nwkc{A!_lI8ZEXBvBAOvQ zD?K1;3_zA3#?9mR{%77F?hReuocr0RAAG3$U#lPYcrD(pRtk8sivG|)|@=<5Pp)OX{(qg|_%r0MXPLj~D z*CC@@5Bmi0sOq~F$G2k(r3QzvWS?rha$Qt2=Iq0Y|L^a{`mok9D6OU^>kn}KK0~1c z0?E=Buikrng6RYB?Q-b4-46G|Y9M))-mqic)vVOCuKjRYVbv`{EqcdJ_R%g11oBQCD zfwaYrh497ujEkP}y(2U~y3;x3q4gjt5kDxK;b(84g~7)u0)x%qIhEk2Uq(wrRi59R zY=v4YF<%+&8MA9Enr`pXR%rq}kjj}xQwFDp=J%-HZw|(QZDC-Y z{@KXbbs_9)(r8ruscccZJFcVNs?N@Q`{@yt-jf9E96#V?rr?S?oX4s<86g zyu#n%2hs}8g(Ekn2KZOZ++95?QoL=p2OFL3G!50UjMEISWWH|q^CJrRe8f5&3I-z$#p7G`)pXyCJpNk*WNpxejUv7s3?-oEP8! zfieb0;kQ?PTr>?jGDsg}*jfT1ooYtQ`{~=De*!sEZZ=~9%jJ?;7>;lu)2%4`ex%IL ze{FLH*QJ)P?wdI(1|iJe-fbRF*iKBL)R4*%CeY|A@E*ER6j=M>Kj9t*#>YP*$ydL5xeV;(B8Z2Vic$I z&E+mCv>WZo0E~3Tz#uq({M#+TU-K!(Tu=Tp@@;mMr;*%n?@Dq5OXWsTaf9Dz=7q2M z)f<>N#yMqx>)&3JI%{%b;q(=uY(>1tH+z1N*j2}EwzhMo=k?{{{HNoCZ;^80e=N)k zV&Fu5)SPo3z9N+3r$Q>yfsx|n#)`^e7Al* zlsFz}V@EUW#)e7C@^1}Fl;xk;N0=P3_yi>TR-{K+lc)_`4w{gU_QCJ? zF-XT$@lq$qmi{|*QMM!kRq*-~mns#{+w3JVp1k$;Z!aA_;9I*;Wnoh@f2s`zhv0+@ z^~W-9KKnY=Pod_n$|J#%!UChLOjo%PU-YU^+P+3(9qKuEIX?N zLdMd54j4tlU&;a9Ym|02f2Y_K;Wra~YWygwhiqd&d+<78K#1<2Xp}#w#YHg4f;6Y6 zp*CI^vcmNRoWEX*g?0CmA^dV5mk`T~SeZd$i}rcd58?-(kWGTBFR8O)!$tMK=zo8- znlfaq34DDq@pJ)M)16?1@%f!>fyU0vs0KdQbK6L)epEn0Q}N|me_fc^@?S3S3G?%p zO{qV|$|Veuw>bOXs#wLw7;6*!TgYt|3r^>gtf@S31=d)MD`lgZgu-{ zb+eIVUF6VX;3li2PR<71KS3r9k_wZtP+YHfut`lWQF5Z5e@J{SRU#UEwpjb+TUm@t zD`|X7KQ@N6TBOSTX^&34T4KfLN4-VRdm&e)@1LV9{#5*+9^+7FuV79eF>Vy@V5A5L z6;>2fk^BD4SE*&S!{Frig~`m*Z&jxU2bFxnGqj!$X@8-~4hAJsyqxdtOCN>I@amR% zvxKF%?Ot^4fAre6+`N3e**}~@yAyX3FPr+G!2dv{b!)Zs!!h<#OwSm#`wzi)I@~J; z*jyfzqw{F!@Ppg@oql={^V(O9cNiZf&ulSB3&NgsynQ6lS)u02o6nz5Q)|~yS~8$c zg!;*XA(u>WRJO6Oq-5{zZN*IO{sbei1^Ty-My)FMf9QdZI7EQX)AQJqd$TLGuf&DA zJiis_w3SwuE;FQNI)ZKyKjsF?2r&N1LHgt@!uM7D!SssZGSxbJ=YBf`0iOA^PQu{y zA;sg19G1)2<2U(A7;?WFHa3y?o#3MS2OkumE9|4r^M49%jDPzh+x%q~kT;aiPZEsU zuW9x5f5};%V3=tBtHa>3WXrp6`3l!IO79jyGfrdue>X+`2eJMnB(t4l66w?1KmSMY z_qW6`Y2KflZKjjs+~Uf^?7bZRHuWEB|GjHFtw{Gv!7n4jZP@fh8Sa0J1pXa;`|`h8 zr>9x0n+D^DqucPmR{V#F|IR)B@qeSCT;%`re+n3+nmYsR-_B!QT~hDeHVFT|+yC3j z!2hOnPrgB)KGXc)r@i@KSiA3#G>d)t=${$?^|U}GK0}1tD@v(w$!{yTaPsT_uWE_s zjI1lWET7@*4y(=t1zE)(~zd#M}WzI?bVt#TT_}41wF6am~E1ZQO z`nnM@lF;Frt~gx`G}DNLOHV|5(9u6_4^ZZ7(G`vj~Eo22@H*Qf4%qi@1cvRtU$^XRnwW4n-F>$dF`q$^6dF0l)e~Eq` zjTffh<36)9uRJn?=9#{Y2)!8d(Zej=TMIS!OWJs?YsDxsVs4Yt650tkNNyt(^gbdP z&LQwH`5I+Hh{qG<+1O5)EJHWls`^BJ51c&Sf_C9i254Pf#yldV*T!ob_wkXRV##{OXaP z+pT`=;Ca;N*7d-f4J}DZx!6p z9$~k)mNAY8$ZaEpdJu=2AgQgpo_#Xo1uVbE{mm}6Gv1NvJF79SgaORdmm3p{d9l~# z7jn)#PK!v;@RLRzXepbFr-mof0LJ?q$wSG>iRzwz0G>Hm09;I$g145NpPH(gpPGxU zsyS|_z3CuGdi)Q^QlVSXe`zeJe)DceiLF{C*x#s#5O_U)`pp}Hj4@ti_}|_Uq!M0{ zU1(;rG`7Swc}ews`W5%HgU!n_`e@0rYaTkk`kTCbDi0a|#{0Q5>Ov_V+^FW=mzDpO zZOOvf-wA@Ur1CeJGw6$m%eLP{V@XNUT&FL!ru z7t@j=%XJGs#p|VN6g_*>Tva0_%wA+f%lwo>VeH*LUT(Y2IUmZ9BoZ(SND*) znkhz*5L-FV=dnVXjO~*MyCBD+i*CpxrxU^|55Kic|9er?dgf7+0EKoDZuhf(MZ^KUzj@|ZNN zho0qV0*(YVPl*aHq?TdLbc4Gphg?6r?25-@^kCfg!dk^87bPwe7^~ywiK(A|^!Zc0 zjA*|)7UZJh^|q{wzqQ}~LM_L^2Ke2csCG{(vaE({=XsB^C@ar##NwqFQauTflNjsH z59qX*f0y)_-*3ebU9Dqt4^d6U@_aqqH`?9qz>D$%buQ(>kAM9BE%r$NPj74ers?Sq z%hVz(=|FBtEk@b%&C%Oiy*WNjgGRF=>I({}#lU6}T{|B=wd@h0+02>uMB+*1m5W-o zYL7xBof|I~MdOHf{(!eWyL=mJrJe=#C$lNW#bnwtFe6ONLtO_yxw-jN9E`ViaH1U%g_3oeG^=x zfAbu*_FX>Y+0EHYciAC%j(`*^XyOQHdy1}8n1q>Vc34sT*eUKsqArbh1>cT)J2q}; z+?J1lnlRjI0_ZO0T40XettNZWp?y572UC3%UGr+hvhT6H!D=G6gFLoVbpT+5JK4$1 z57$+S2=y$wCUQ!4PCstm4+Pf-UdWa@e}=D$Z zkWWc8+~%0kc4oIwkKAA4TeUP4*80HQUfkOz*AgmIcV4i2R9t9cSo-5c-sAgGf9g_h zQLk7|Zv8I5bm0uJeSP38>$s*?<;=Wx8jgMJuNO+VQPd+cFBs#ny~*N7qNa6=T#$uL zjySuDTn4zhz06iui`O_N2C9tU&nC{66S4{R;qu*^aJ)(JJQvFgm@mbp^79t6r}w4s z7x|?0*c-d)0?G){fj{0!Ce-HYe*m&zQ8bz2Bf2quD`OwC7vXuOd07C!4n$=sQeheh>HdSx7I9{NuCh1TOh4{gXeFxJD+~kox@+i8 zZ{(|XVPV;I?ZH~4&(0VB0OERW%ErQFr*7awK6@$8tkEN_T9zy2KCoDQ;*g56xBI&Q*UX=_L|4)E`&MT51HXW4D_oR7GlLE?0qbMQ1*J7 z0p_NEED1gAZlIa^y(pt^YUyqn0n(IzBk(MA{Nd|D1%6<)?>f*kTb%SLDQROkR{RAI zdhLKc*dq%vI6GUjZK^){e@(`vh0G~?Lzfe?UmwFHV+!eI&kB1>W!;N9kUU}BakX8H zG9zL3U2ncN7dmVv9iHY^zE5vQ+r4iZ!F8507W|9uzFmwDA!3zFJygh!-xZi)`te9_ zvmOsqFJHbIwl3<~Jow`4p-nl#XveJ!5 zq*d{@T7vbph;wx^+2$*%c5_uw6P1PX6LJ=g6DkXzAhk1anUe&`Y%N{JER|ogVPLwD zU9hg$13M6F|Lbw-pQjA{v=77ST}Vl7Xr|6_QJ`B7g8$ROe;)37)JZhTd^SFd(pzQ~ zyk1K@Ros%QKk&PMcNGvc{nv=9ogoeAHqaEd96PQ>IY^B{}oihOHW*I5wJlP zFn*|X;^$R$e=PM?H#(7<&%XAtf*^Ld;G=3{$GNaYvS+0vKKHWom3hE3{;9O9-(=T6 z?K@W`f2f?f#B5q_uvG1Xj*2lf%?NLNZAqqedI8(tcI-@*tfxn_oCOPN+*BuDfcCMQ z6>0{e%8YH+-PNCyeQtF*2RsTqQ@{uaWMa=6H0gg0e_Czwf{Q?MQCqa*_{pEDevxX; zTH%HOuh9ivn4>61&r)udWpxkuwjYo?vv@uiY}QcQ0S~ts^}+C2FV|c>)~KzX>RfKT zR~6;~t^J%6UesOX`Dar7ybspkO*>Zbb+!8ct)9t-NDkMQ*@@xCexu-{IX?pj-@y2h z>k%{>e@OStAOYab2XEeG^<#B1;ji^@FAXAm@&er`v3Y?Y$)a(NnekeyaqnBAhNGX1 zQVrM(;%!6>Wt5-!-VGj$lO|7QyC6ml!=znDrD^!r=n)wj@s^KqkC7Q6Ixn^Fy(xw+ z2piZpeH~X;r2;^5K{_&RPjX`^8-!cByl)9ge<=@)bZ#v{qudknGyp61P=+ElLQxG$ zN|}j9sq9MccDX3;_2<2R0D`QS6_Af9lfx z!K2B6RPTscn}4?nEfdx6g)T79Y3n^ft|!Wfxu~=d4@RDT9-9EVvW3<1;-b<`aPM}?6`8<6L248uCUeQsqT5UOg5a^P4`$*oD_S5*!U}TD$ktLG z>y2Yq+nv*HxR09(zuXV>SYm-@LvCx0YAH3%S~!sfl^IZF0~ub^7owL z1s{~|wu!i|ZThuRC~9`4%GkHdz|NBK(+8kyO+}(#-A#1iaEVp3C9(hQC2q%_*nx^8 zU{o0A4j`m3zRX7#-=v%?YG@hZb5Jf$@nf}QN11keILWBiPjvP~zyE1dtu)ute=7y) z;SeSAoX5O;m5~4_b77kdw zuMbuRm2vh!d?&6&4(z&^Xne;{e_+n`O-;uw60^Oxd-C5voCqoUfR=YFmXg~u*Chwh zqw4F)#c$L1n|V5AHYWkq@x0U!wMZ#?qlLBAX}+@ivx;8iS{BOpF`k0ESkd;@X<=^q8W2)|k$3NlF4hPhVNz)&&}TQk~Q zEvK)%$%Vm_QZkpciC3-BE_xs$$Ug)UxX z1LS|^KD$zJ>4F?#@6pgC;j6~~f)XCxa z(CYTP&!EX!HFw<``>Mxzdi9S%xicUG`O(MaVCaZ}NpAj;{IUprNYP6( zl-J5z=W0otW-36=XBD#w;(AwV;q*?*XE6F& z^!K{|lBFwRaocUN{4$=hb1`snUfMlLe3(q5&lvKVBVs_LJf2#72K&cVPP*7y8lsY( zUyzVJv{a=!C9J%%rikSYODK_UH^eOlU}9J|(rk&`t-T*u$L$S23Rf%J;ra1Dh6j(mfS)bMZ;)|roL;?dZk zTVB8Ev0Nkmf8#90bjHqUMI+%VZ*O!apVzcDnIV}@cS>p;NTCt#^#THTmGr)bP{22?q7kvCHecRl^Uyls^FHRt9lWaICGd)O>C!));MWW{kph5#lzq@!8;t;1?QODZDgJnw~E?`>C&!W z2(rF#7XQw39vx$OecEs(Sl@!Ng$wPdVAW0EpR!ZB@EKd5(d$y3)!{ke11*GpkPc46-uQ@64#5+QNRmaQijk}VKdp}cwO!YuP)F@_JZ#80Uz%?IV;$_8% z)3L5X2rpZfx#__kb4!53^a{S}+}3$cf5avqs6eEwzPs@&4Rl#KqP_*^{7$;{#Bcp* z!Yg2YWBQnd;5~=Pu56&mz`Cr!{3k9GUKGeN$8NQB*(h&KpZl3R-@wk|;a$YTvxZ~i zrPX-I_liqQCn9vJNno77*X1!8cxQ3X;J6>vr7O0V0#Bj*N00*gMS}lvqL9#ie}!Q~ zqX+~DuHkFy-0b?x6`Zz6&bhfQbdR!8XEN{WLyJ<{$bnZ~Ba3S3ZC?bf3{~{w<=OLB zJJsBaXh6)8*4VC$vj;L1ZEpt}N z?1P5z<~uXLtjO!P7L^NV!v^j^G0onQk-FwQ{SSHpImB>e2mffA;IJ_N|)@ z#do-wq`>tn_UIPHoB0-ba^?GR1+GY;{ZD`^QprBPYcLWe_i;arUX=~5&6age#VAFH z(WugIIpPumjMmUOOonHphX|!|P0W1$Sf?Q;5DGkp}VU6iIbTwk&I)7EnfYV7mtzYtmUh%GjQBC%n>Y`m4s6 zu2PT`9N;SC`g_;i8OrhZV6nBVPLlDDOZYM6f@@FsSCTz|^5v~dfAyh<`*H6-NFYy1 z?1tyk&Kp9yFW6GWR+*l5y9c~H+~tHeE%#pnY^&s9w#F+z8r1*+Zld0qWwEw`@gN@q zV17BfBUz94)CU0wphAIs&wge zKyRu(Hy6&=!*d6}J?9?O_!(wp6L#Zf6f}M5ZHv+LI@ui4!bs2C1LIkB#h*2po_Y>L zX}(1r&&B4OS@J|Xc_6>U9y+kvL4e#*qp3Ul!a#~K=WhI+qsHCXzA<|-DrRKa%jE`^ zKv&=XC{M|qe}3y(_3hYad?SS`BNbEaFOY1E0-oUldQCVi&>hBHdThzLe z)8*+vCdW$h#X$f(eijI;Pu%Kbe3Bky*B2}M3^kV|o=7;f%T+r6DQ@FCti@<5QZr7L zAxhJVfB5aHi^!eS)&*W{5$9 zn>*ReQRp8~%2`R4zGHW1`$$wkXt(907;9z)%Op+mz;o{}A=2*5h#MZ*k%o5}9B!pY ze`2*xmdT2cxmSge{kkedUhYOy+-2Tut@HV)}3*KggJ2cKJ8|ZxwM(!Oz8QeQp zSH%SPN89_T_^x{(562L*>)EhEPm9A29W`{E=d{q^Va{T*{VcU3j;W4VzN&5Di*VFJUr=lVUz|3y2z-CJnRfl(P&Rlq)QEQ(*pH#`D6AdfBs~( z!taP9U|Pj8nM|dM`h&^J50{L#O})5%mxC)u)xqxfE~lTtWM*$&Q`DLpm5@r4ytgvd zf9cv(oNvu61R4HKNy4Wpa;&%*IUlUgd-I6lix@yj_`6Drs;vBECI|tEjC#Q59Pf_G z3}*&oyV-IRjvWw{*1o11J4@ia|K-`>uCce zs%}leT#(TWsI~b`em@hC_&Xg#TaTZ25mITMaFurBWAqn4T{Ayj#~N`q5lO)sYl9zE zD-YvB06uFO{wK-1y@%#Df4*B$$w`j=BBF+`Sm_aZ@IjZ5Z{%o&8%|@ZRv}IoiAm$O z4`yUc6J@$pranTEAF)9B&VJ}dp%g0eyH5V%!JJ(G$*!b5F4o~YyQond7j>y&p!9b? zYSuN;3X&d^$LRyvHV7a3igC%R*$x{r)v6VXq8!OGS%d=$7kAhle_5KX%mA@9$uk^6 zsT(z#xEpSJtk7DW<7Y2r3|-{!52|297de*hu7@@~_jN*7nW(BGcB$4Xy@#v>aU$>B z*X!4h)@Qdak>N!X%zhUyfq?W-o!tGV`kQ7tCczW za<3VAp_Jd6v=nswcdR7&{T>d9TL_NwSoB^ zMUz+Zmn}tZSiE*J1%Ueld-9$`c=U;!$DoeJOhZSpgHeo%wP~@ zmC_mAFEcIeae-&2KXoKeMaR-u`h9mpnb!HqoW=0Q=MYorVj^VWTkx6e`2Jicsmlni zK2wNfn*o7!jRBDJM?dN3-SF9w1O#Nn7dbvs6@2OZYd1%fyN z-x;FQmbh-3e^WvrP?9nfh`VQg`h^*4$$e_8jsVgLh*&#oQbmEi+&Zqd!v zQ|p~^gNgR!1Eo*WpFQgW?%XHqNJ%hFXW7e{QV>>1;MdWi0R8Gmr^%5pOpC zR>QQWsB4^M_FxX2?{T=?v34~gGWR|DS}Qg8yAwg+KJeMKGYin`>NFPlnUJV%(;Cda ztUAi;Uf$!s6OyN``|=Skm=UVNQ1{j2;N>59CPMa4;Fzvq0M!+xoLp3Qpi|1}kb+x}bpoIm|X{F>^* xZR;1SU;n>pjUzc1`svv}mjAMFn11X(Ly6zR28KN>3;+-wpa%c| diff --git a/doc/pub/week45/ipynb/week45.ipynb b/doc/pub/week45/ipynb/week45.ipynb index 18443a8f1..45668051b 100644 --- a/doc/pub/week45/ipynb/week45.ipynb +++ b/doc/pub/week45/ipynb/week45.ipynb @@ -2,36 +2,27 @@ "cells": [ { "cell_type": "markdown", - "id": "6038c455", - "metadata": {}, - "source": [ - "\n", - "" - ] - }, - { - "cell_type": "markdown", - "id": "85e8fd68", "metadata": {}, "source": [ + "\n", "# Week 45: Decisions Trees, Random Forests, Bagging and Boosting\n", + "\n", + " \n", "**Morten Hjorth-Jensen**, Department of Physics, University of Oslo and Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University\n", "\n", "Date: **Nov 11, 2021**\n", "\n", - "Copyright 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license" - ] - }, - { - "cell_type": "markdown", - "id": "f8028a3d", - "metadata": {}, - "source": [ + "Copyright 1999-2021, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", + "\n", + "\n", + "\n", "## Overview of week 45\n", "\n", "* Thursday: Basics of Decision Trees, Bagging and Voting\n", "\n", + " * [Video of Lecture](https://www.uio.no/studier/emner/matnat/fys/FYS-STK3155/h21/forelesningsvideoer/LectureNovember11.mp4?vrtx=view-as-webpage)\n", + "\n", + "\n", "* Friday: More on Bagging, Voting, Random Forests and start Boosting\n", "\n", "**Videos.**\n", @@ -40,18 +31,18 @@ "\n", "2. [Video on boosting methods by Hastie](https://www.youtube.com/watch?v=wPqtzj5VZus&ab_channel=H2O.ai).\n", "\n", + "\n", + "\n", "**Reading.**\n", "\n", - "1. Decision Trees: Geron's chapter 6 covers decision trees while ensemble models, voting and bagging are discussed in chapter 7. See also lecture from [STK-IN4300, lecture 7](https://www.uio.no/studier/emner/matnat/math/STK-IN4300/h20/slides/lecture_7.pdf). Chapter 9.2 of Hastie et al contains also a good discussion." - ] - }, - { - "cell_type": "markdown", - "id": "87e9cace", - "metadata": {}, - "source": [ + "1. Decision Trees: Geron's chapter 6 covers decision trees while ensemble models, voting and bagging are discussed in chapter 7. See also lecture from [STK-IN4300, lecture 7](https://www.uio.no/studier/emner/matnat/math/STK-IN4300/h20/slides/lecture_7.pdf). Chapter 9.2 of Hastie et al contains also a good discussion.\n", + "\n", + "\n", + "\n", + "\n", "## Decision trees, overarching aims\n", "\n", + "\n", "We start here with the most basic algorithm, the so-called decision\n", "tree. With this basic algorithm we can in turn build more complex\n", "networks, spanning from homogeneous and heterogenous forests (bagging,\n", @@ -62,6 +53,7 @@ "Decision trees are supervised learning algorithms used for both,\n", "classification and regression tasks.\n", "\n", + "\n", "The main idea of decision trees\n", "is to find those descriptive features which contain the most\n", "**information** regarding the target feature and then split the dataset\n", @@ -71,14 +63,8 @@ "The descriptive features which reproduce best the target/output features are normally said\n", "to be the most informative ones. The process of finding the **most\n", "informative** feature is done until we accomplish a stopping criteria\n", - "where we then finally end up in so called **leaf nodes**." - ] - }, - { - "cell_type": "markdown", - "id": "7cbc9228", - "metadata": {}, - "source": [ + "where we then finally end up in so called **leaf nodes**. \n", + "\n", "## Basics of a tree\n", "\n", "A decision tree is typically divided into a **root node**, the **interior nodes**,\n", @@ -89,50 +75,35 @@ "to our trained model. This is possible since the model has \n", "learned the underlying structure of the training data and hence can,\n", "given some assumptions, make predictions about the target feature value\n", - "(class) of unseen query instances." - ] - }, - { - "cell_type": "markdown", - "id": "8d8cad8e", - "metadata": {}, - "source": [ + "(class) of unseen query instances.\n", + "\n", "## A Sketch of a Tree, Regression problem\n", "\n", - "" - ] - }, - { - "cell_type": "markdown", - "id": "1910a78f", - "metadata": {}, - "source": [ + "\n", + "\n", + "\n", + "\n", "## A Sketch of a Tree, Classification problem\n", "\n", - "" - ] - }, - { - "cell_type": "markdown", - "id": "b8ad32fa", - "metadata": {}, - "source": [ + "\n", + "\n", + "\n", + "\n", "## A typical Decision Tree with its pertinent Jargon, Classification Problem\n", "\n", "\n", "\n", "\n", - "

    Figure 1:

    \n", + "

    \n", + "\n", + "\n", "\n", "\n", - "This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using **Scikit-Learn**'s decision tree classifier. Here we have used the so-called **gini** index (see below) to split the various branches." - ] - }, - { - "cell_type": "markdown", - "id": "b4f17c84", - "metadata": {}, - "source": [ + "\n", + "This tree was produced using the Wisconsin cancer data (discussed here as well, see code examples below) using **Scikit-Learn**'s decision tree classifier. Here we have used the so-called **gini** index (see below) to split the various branches.\n", + "\n", + "\n", + "\n", "## General Features\n", "\n", "The overarching approach to decision trees is a top-down approach.\n", @@ -146,16 +117,12 @@ "* An instance is classified by starting at the root node of the tree, testing the attribute specified by this node, then moving down the tree branch corresponding to the value of the attribute in the given example.\n", "\n", "This process is then repeated for the subtree rooted at the new\n", - "node." - ] - }, - { - "cell_type": "markdown", - "id": "9d2b7455", - "metadata": {}, - "source": [ + "node.\n", + "\n", + "\n", "## How do we set it up?\n", "\n", + "\n", "In simplified terms, the process of training a decision tree and\n", "predicting the target features of query instances is as follows:\n", "\n", @@ -167,22 +134,21 @@ "\n", "4. Show query instances to the tree and run down the tree until we arrive at leaf nodes\n", "\n", - "Then we are essentially done!" - ] - }, - { - "cell_type": "markdown", - "id": "f9c47829", - "metadata": {}, - "source": [ + "Then we are essentially done!\n", + "\n", + "\n", + "\n", + "\n", + "\n", "## Decision trees and Regression" ] }, { "cell_type": "code", "execution_count": 1, - "id": "a9b40c02", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "%matplotlib inline\n", @@ -279,7 +245,6 @@ }, { "cell_type": "markdown", - "id": "46f5b18a", "metadata": {}, "source": [ "## Building a tree, regression\n", @@ -299,7 +264,6 @@ }, { "cell_type": "markdown", - "id": "9016ab06", "metadata": {}, "source": [ "$$\n", @@ -309,18 +273,11 @@ }, { "cell_type": "markdown", - "id": "3c493861", "metadata": {}, "source": [ "where $\\overline{y}_{R_j}$ is the mean response for the training observations \n", - "within box $j$." - ] - }, - { - "cell_type": "markdown", - "id": "5b4203d6", - "metadata": {}, - "source": [ + "within box $j$. \n", + "\n", "## A top-down approach, recursive binary splitting\n", "\n", "Unfortunately, it is computationally infeasible to consider every\n", @@ -333,14 +290,8 @@ "further down on the tree. It is greedy because at each step of the\n", "tree-building process, the best split is made at that particular step,\n", "rather than looking ahead and picking a split that will lead to a\n", - "better tree in some future step." - ] - }, - { - "cell_type": "markdown", - "id": "38afe033", - "metadata": {}, - "source": [ + "better tree in some future step.\n", + "\n", "## Making a tree\n", "\n", "In order to implement the recursive binary splitting we start by selecting\n", @@ -349,7 +300,6 @@ }, { "cell_type": "markdown", - "id": "5ee51e92", "metadata": {}, "source": [ "$$\n", @@ -359,7 +309,6 @@ }, { "cell_type": "markdown", - "id": "d44d4233", "metadata": {}, "source": [ "and" @@ -367,7 +316,6 @@ }, { "cell_type": "markdown", - "id": "42b18eb4", "metadata": {}, "source": [ "$$\n", @@ -377,7 +325,6 @@ }, { "cell_type": "markdown", - "id": "40ea65e5", "metadata": {}, "source": [ "so that we obtain the lowest MSE, that is" @@ -385,7 +332,6 @@ }, { "cell_type": "markdown", - "id": "5765dd31", "metadata": {}, "source": [ "$$\n", @@ -395,7 +341,6 @@ }, { "cell_type": "markdown", - "id": "c441521b", "metadata": {}, "source": [ "which we want to minimize by considering all predictors\n", @@ -421,14 +366,9 @@ "have three regions. Again, we look to split one of these three regions\n", "further, so as to minimize the MSE. The process continues until a\n", "stopping criterion is reached; for instance, we may continue until no\n", - "region contains more than five observations." - ] - }, - { - "cell_type": "markdown", - "id": "4600886b", - "metadata": {}, - "source": [ + "region contains more than five observations.\n", + "\n", + "\n", "## Pruning the tree\n", "\n", "The above procedure is rather straightforward, but leads often to\n", @@ -443,14 +383,8 @@ "we consider a sequence of trees indexed by a nonnegative tuning\n", "parameter $\\alpha$.\n", "\n", - "Read more at the following [Scikit-Learn link on pruning](https://scikit-learn.org/stable/auto_examples/tree/plot_cost_complexity_pruning.html#sphx-glr-auto-examples-tree-plot-cost-complexity-pruning-py)." - ] - }, - { - "cell_type": "markdown", - "id": "2c95bc5f", - "metadata": {}, - "source": [ + "Read more at the following [Scikit-Learn link on pruning](https://scikit-learn.org/stable/auto_examples/tree/plot_cost_complexity_pruning.html#sphx-glr-auto-examples-tree-plot-cost-complexity-pruning-py).\n", + "\n", "## Cost complexity pruning\n", "\n", "For each value of $\\alpha$ there corresponds a subtree $T \\in T_0$ such that" @@ -458,7 +392,6 @@ }, { "cell_type": "markdown", - "id": "b37ec50f", "metadata": {}, "source": [ "$$\n", @@ -468,7 +401,6 @@ }, { "cell_type": "markdown", - "id": "1cad8e0d", "metadata": {}, "source": [ "is as small as possible. Here $\\overline{T}$ is \n", @@ -484,23 +416,20 @@ "having a tree with many terminal nodes. The above equation will\n", "tend to be minimized for a smaller subtree. \n", "\n", + "\n", "It turns out that as we increase $\\alpha$ from zero\n", "branches get pruned from the tree in a nested and predictable fashion,\n", "so obtaining the whole sequence of subtrees as a function of $\\alpha$ is\n", "easy. We can select a value of $\\alpha$ using a validation set or using\n", "cross-validation. We then return to the full data set and obtain the\n", - "subtree corresponding to $\\alpha$." - ] - }, - { - "cell_type": "markdown", - "id": "cc370b93", - "metadata": {}, - "source": [ + "subtree corresponding to $\\alpha$. \n", + "\n", + "\n", "## Schematic Regression Procedure\n", "\n", "**Building a Regression Tree.**\n", "\n", + "\n", "1. Use recursive binary splitting to grow a large tree on the training data, stopping only when each terminal node has fewer than some minimum number of observations.\n", "\n", "2. Apply cost complexity pruning to the large tree in order to obtain a sequence of best subtrees, as a function of $\\alpha$.\n", @@ -513,14 +442,12 @@ "\n", " * Finally we average the results for each value of $\\alpha$, and pick $\\alpha$ to minimize the average error.\n", "\n", - "4. Return the subtree from Step 2 that corresponds to the chosen value of $\\alpha$." - ] - }, - { - "cell_type": "markdown", - "id": "fa639bd0", - "metadata": {}, - "source": [ + "\n", + "4. Return the subtree from Step 2 that corresponds to the chosen value of $\\alpha$.\n", + "\n", + "\n", + "\n", + "\n", "## A Classification Tree\n", "\n", "A classification tree is very similar to a regression tree, except\n", @@ -534,14 +461,8 @@ "classification tree, we are often interested not only in the class\n", "prediction corresponding to a particular terminal node region, but\n", "also in the class proportions among the training observations that\n", - "fall into that region." - ] - }, - { - "cell_type": "markdown", - "id": "c4334771", - "metadata": {}, - "source": [ + "fall into that region. \n", + "\n", "## Growing a classification tree\n", "\n", "The task of growing a\n", @@ -559,14 +480,9 @@ "When building a classification tree, either the Gini index or the\n", "entropy are typically used to evaluate the quality of a particular\n", "split, since these two approaches are more sensitive to node purity\n", - "than is the classification error rate." - ] - }, - { - "cell_type": "markdown", - "id": "65e09794", - "metadata": {}, - "source": [ + "than is the classification error rate. \n", + "\n", + "\n", "## Classification tree, how to split nodes\n", "\n", "If our targets are the outcome of a classification process that takes\n", @@ -581,7 +497,6 @@ }, { "cell_type": "markdown", - "id": "2351ab6b", "metadata": {}, "source": [ "$$\n", @@ -591,7 +506,6 @@ }, { "cell_type": "markdown", - "id": "827a3f8d", "metadata": {}, "source": [ "We let $p_{mk}$ represent the majority class of observations in region\n", @@ -602,7 +516,6 @@ }, { "cell_type": "markdown", - "id": "35f85c1c", "metadata": {}, "source": [ "$$\n", @@ -612,7 +525,6 @@ }, { "cell_type": "markdown", - "id": "b1909c9f", "metadata": {}, "source": [ "* Gini index $g$" @@ -620,7 +532,6 @@ }, { "cell_type": "markdown", - "id": "4c72e5c9", "metadata": {}, "source": [ "$$\n", @@ -630,7 +541,6 @@ }, { "cell_type": "markdown", - "id": "9354027b", "metadata": {}, "source": [ "* Information entropy or just entropy $s$" @@ -638,7 +548,6 @@ }, { "cell_type": "markdown", - "id": "cd7b6f3e", "metadata": {}, "source": [ "$$\n", @@ -648,7 +557,6 @@ }, { "cell_type": "markdown", - "id": "9fe8b307", "metadata": {}, "source": [ "## Gini Index (or Coefficient or Impurity)\n", @@ -663,27 +571,16 @@ "\n", "3. A value $g=0.5$ means that the elements in a node are uniformly distributed across classes. \n", "\n", - "It favors binary splitting." - ] - }, - { - "cell_type": "markdown", - "id": "a39f2477", - "metadata": {}, - "source": [ + "It favors binary splitting.\n", + "\n", "## Why binary splits?\n", "\n", "It is custom to split to a tree uising binary splits. The reason is\n", "that multiway splits fragment the data too quickly, leaving\n", "insufficient data at the next level down. Multiway splits can be\n", - "achieved by a series of binary split and this is normally preferred." - ] - }, - { - "cell_type": "markdown", - "id": "e3274b4e", - "metadata": {}, - "source": [ + "achieved by a series of binary split and this is normally preferred.\n", + "\n", + "\n", "## Computing a Tree using the Gini Index\n", "\n", "Consider the following example with attributes/features and two\n", @@ -700,17 +597,11 @@ "\n", "3. The number of hours slept as high for more than $8$ hours and below for less than 8 hours of sleep, classified again as either high or low\n", "\n", - "4. The final grade whether it is above or below average" - ] - }, - { - "cell_type": "markdown", - "id": "6a3183bd", - "metadata": {}, - "source": [ + "4. The final grade whether it is above or below average\n", + "\n", "## The Table\n", "\n", - "\n", + "
    \n", "\n", "\n", "\n", @@ -726,14 +617,8 @@ "\n", "\n", "\n", - "
    Grade Trend Hours slept Hours Studied Grade
    Above Low Low Below
    Above High High Above
    " - ] - }, - { - "cell_type": "markdown", - "id": "e5d4eb28", - "metadata": {}, - "source": [ + "\n", + "\n", "## Computing the various Gini Indices\n", "\n", "In computations we will translate all classes into numbers. Being\n", @@ -741,61 +626,43 @@ "\n", "**Gini index for Average trend.**\n", "\n", - "See handwritten notes for Thursday November 11" - ] - }, - { - "cell_type": "markdown", - "id": "98bac75b", - "metadata": {}, - "source": [ + "See handwritten notes for Thursday November 11\n", + "\n", + "\n", + "\n", + "\n", "## Computing the various Gini Indices, Hours slept\n", "\n", + "\n", "**Gini index for hour slept.**\n", "\n", - "See handwritten notes for Thursday November 11" - ] - }, - { - "cell_type": "markdown", - "id": "263f4079", - "metadata": {}, - "source": [ + "See handwritten notes for Thursday November 11\n", + "\n", + "\n", + "\n", + "\n", "## Computing the various Gini Indices, Hours studied\n", "\n", + "\n", "**Gini index for hour studied.**\n", "\n", "See handwritten notes for Thursday November 11\n", "\n", - "For final tree, see the above handwritten notes" - ] - }, - { - "cell_type": "markdown", - "id": "16de86aa", - "metadata": {}, - "source": [ + "\n", + "\n", + "For final tree, see the above handwritten notes\n", + "\n", + "\n", "## A possible code using Scikit-Learn" ] }, { "cell_type": "code", - "execution_count": 1, - "id": "6206aec1", - "metadata": {}, - "outputs": [ - { - "ename": "ModuleNotFoundError", - "evalue": "No module named 'pydot'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msklearn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcompose\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mColumnTransformer\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mIPython\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdisplay\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mImage\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0mpydot\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mgraph_from_dot_data\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 12\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'pydot'" - ] - } - ], + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [], "source": [ "# Common imports\n", "import numpy as np\n", @@ -868,7 +735,6 @@ }, { "cell_type": "markdown", - "id": "280ae557", "metadata": {}, "source": [ "## Visualizing Trees, More examples" @@ -877,8 +743,9 @@ { "cell_type": "code", "execution_count": 3, - "id": "6c8124ac", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import os\n", @@ -918,7 +785,6 @@ }, { "cell_type": "markdown", - "id": "8a5e6e58", "metadata": {}, "source": [ "## Visualizing the Tree, The Moons" @@ -927,8 +793,9 @@ { "cell_type": "code", "execution_count": 4, - "id": "7fc84427", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Common imports\n", @@ -959,7 +826,6 @@ }, { "cell_type": "markdown", - "id": "51420499", "metadata": {}, "source": [ "## Other ways of visualizing the trees\n", @@ -970,8 +836,9 @@ { "cell_type": "code", "execution_count": 5, - "id": "d01a0b57", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.datasets import load_iris\n", @@ -985,7 +852,6 @@ }, { "cell_type": "markdown", - "id": "0d5f2779", "metadata": {}, "source": [ "## Printing out as text\n", @@ -997,8 +863,9 @@ { "cell_type": "code", "execution_count": 6, - "id": "18b6d8ae", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.datasets import load_iris\n", @@ -1013,7 +880,6 @@ }, { "cell_type": "markdown", - "id": "17129339", "metadata": {}, "source": [ "## Algorithms for Setting up Decision Trees\n", @@ -1026,14 +892,8 @@ "We discuss both algorithms with applications here. The popular library\n", "**Scikit-Learn** uses the CART algorithm. For classification problems\n", "you can use either the **gini** index or the **entropy** to split a tree\n", - "in two branches." - ] - }, - { - "cell_type": "markdown", - "id": "08011876", - "metadata": {}, - "source": [ + "in two branches.\n", + "\n", "## The CART algorithm for Classification\n", "\n", "For classification, the CART algorithm splits the data set in two subsets using a single feature $k$ and a threshold $t_k$.\n", @@ -1046,7 +906,6 @@ }, { "cell_type": "markdown", - "id": "624b8153", "metadata": {}, "source": [ "$$\n", @@ -1056,7 +915,6 @@ }, { "cell_type": "markdown", - "id": "353969b6", "metadata": {}, "source": [ "where $G_{\\mathrm{left/right}}$ measures the impurity of the left/right subset and $m_{\\mathrm{left/right}}$\n", @@ -1066,14 +924,8 @@ "and so on, recursively. It stops recursing once it reaches the maximum depth (defined by the\n", "$max\\_depth$ hyperparameter), or if it cannot find a split that will reduce impurity. A few other\n", "hyperparameters control additional stopping conditions such as the $min\\_samples\\_split$,\n", - "$min\\_samples\\_leaf$, $min\\_weight\\_fraction\\_leaf$, and $max\\_leaf\\_nodes$." - ] - }, - { - "cell_type": "markdown", - "id": "bcdb3558", - "metadata": {}, - "source": [ + "$min\\_samples\\_leaf$, $min\\_weight\\_fraction\\_leaf$, and $max\\_leaf\\_nodes$.\n", + "\n", "## The CART algorithm for Regression\n", "\n", "The CART algorithm for regression works is similar to the one for classification except that instead of trying to split the\n", @@ -1082,7 +934,6 @@ }, { "cell_type": "markdown", - "id": "661abdb2", "metadata": {}, "source": [ "$$\n", @@ -1092,7 +943,6 @@ }, { "cell_type": "markdown", - "id": "b1baa1b7", "metadata": {}, "source": [ "Here the MSE for a specific node is defined as" @@ -1100,7 +950,6 @@ }, { "cell_type": "markdown", - "id": "5aeb1ed8", "metadata": {}, "source": [ "$$\n", @@ -1110,7 +959,6 @@ }, { "cell_type": "markdown", - "id": "d7f66eb1", "metadata": {}, "source": [ "with" @@ -1118,7 +966,6 @@ }, { "cell_type": "markdown", - "id": "6bcb07d8", "metadata": {}, "source": [ "$$\n", @@ -1128,20 +975,14 @@ }, { "cell_type": "markdown", - "id": "a5cd6be2", "metadata": {}, "source": [ "the mean value of all observations in a specific node.\n", "\n", "Without any regularization, the regression task for decision trees, \n", - "just like for classification tasks, is prone to overfitting." - ] - }, - { - "cell_type": "markdown", - "id": "f7c1aca8", - "metadata": {}, - "source": [ + "just like for classification tasks, is prone to overfitting.\n", + "\n", + "\n", "## Computing the Gini index\n", "\n", "The example we will look at is a classical one in many Machine\n", @@ -1156,7 +997,7 @@ "humidity and weak and strong for wind.\n", "\n", "The table here summarizes the various attributes and\n", - "\n", + "
    \n", "\n", "\n", "\n", @@ -1176,22 +1017,17 @@ "\n", "\n", "\n", - "
    Day Outlook Temperature Humidity Wind Ride
    13 Overcast Hot Normal Weak 1
    14 Rain Mild High Strong 0
    " - ] - }, - { - "cell_type": "markdown", - "id": "dd90d405", - "metadata": {}, - "source": [ + "\n", + "\n", "## Simple Python Code to read in Data and perform Classification" ] }, { "cell_type": "code", "execution_count": 7, - "id": "055dfb75", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Common imports\n", @@ -1265,7 +1101,6 @@ }, { "cell_type": "markdown", - "id": "8fa370be", "metadata": {}, "source": [ "## Computing the Gini Factor\n", @@ -1281,8 +1116,9 @@ { "cell_type": "code", "execution_count": 8, - "id": "2eae920c", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Split a dataset based on an attribute and an attribute value\n", @@ -1349,7 +1185,6 @@ }, { "cell_type": "markdown", - "id": "76e6b68a", "metadata": {}, "source": [ "## Entropy and the ID3 algorithm\n", @@ -1381,22 +1216,18 @@ "training examples according to their target classification.\n", "\n", "The ID3 algorithm uses this information gain measure to select among the candidate\n", - "attributes at each step while growing the tree." - ] - }, - { - "cell_type": "markdown", - "id": "c3ef1baf", - "metadata": {}, - "source": [ + "attributes at each step while growing the tree.\n", + "\n", + "\n", "## Cancer Data again now with Decision Trees and other Methods" ] }, { "cell_type": "code", "execution_count": 9, - "id": "7637aca8", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -1444,7 +1275,6 @@ }, { "cell_type": "markdown", - "id": "e2a20f84", "metadata": {}, "source": [ "## Another example, the moons again" @@ -1453,8 +1283,9 @@ { "cell_type": "code", "execution_count": 10, - "id": "6dc739e6", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from __future__ import division, print_function, unicode_literals\n", @@ -1525,7 +1356,6 @@ }, { "cell_type": "markdown", - "id": "ffd5aca0", "metadata": {}, "source": [ "## Playing around with regions" @@ -1534,8 +1364,9 @@ { "cell_type": "code", "execution_count": 11, - "id": "a535e0a3", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "np.random.seed(6)\n", @@ -1562,7 +1393,6 @@ }, { "cell_type": "markdown", - "id": "c43dd40f", "metadata": {}, "source": [ "## Regression trees" @@ -1571,8 +1401,9 @@ { "cell_type": "code", "execution_count": 12, - "id": "2f92a4bc", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Quadratic training set + noise\n", @@ -1586,8 +1417,9 @@ { "cell_type": "code", "execution_count": 13, - "id": "786d574c", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", @@ -1598,7 +1430,6 @@ }, { "cell_type": "markdown", - "id": "4667ad89", "metadata": {}, "source": [ "## Final regressor code" @@ -1607,8 +1438,9 @@ { "cell_type": "code", "execution_count": 14, - "id": "1a164143", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", @@ -1654,8 +1486,9 @@ { "cell_type": "code", "execution_count": 15, - "id": "39ad2aed", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "tree_reg1 = DecisionTreeRegressor(random_state=42)\n", @@ -1690,7 +1523,6 @@ }, { "cell_type": "markdown", - "id": "5b0a0240", "metadata": {}, "source": [ "## Pros and cons of trees, pros\n", @@ -1707,14 +1539,8 @@ "\n", "* Can model interactions between the different descriptive features\n", "\n", - "* Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)" - ] - }, - { - "cell_type": "markdown", - "id": "f05ef6f9", - "metadata": {}, - "source": [ + "* Trees can be displayed graphically, and are easily interpreted even by a non-expert (especially if they are small)\n", + "\n", "## Disadvantages\n", "\n", "* Unfortunately, trees generally do not have the same level of predictive accuracy as some of the other regression and classification approaches\n", @@ -1733,14 +1559,9 @@ "\n", "However, by aggregating many decision trees, using methods like\n", "bagging, random forests, and boosting, the predictive performance of\n", - "trees can be substantially improved." - ] - }, - { - "cell_type": "markdown", - "id": "50ea5d1d", - "metadata": {}, - "source": [ + "trees can be substantially improved.\n", + "\n", + "\n", "## Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods\n", "\n", "As stated above and seen in many of the examples discussed here about\n", @@ -1762,28 +1583,22 @@ "\n", "4. Boosting methods, from adaptive to Extreme Gradient Boosting (XGBoost)\n", "\n", - "We discuss these methods here." - ] - }, - { - "cell_type": "markdown", - "id": "3dfb29fa", - "metadata": {}, - "source": [ + "We discuss these methods here.\n", + "\n", + "\n", "## An Overview of Ensemble Methods\n", "\n", "\n", "\n", "\n", - "

    Figure 1:

    \n", - "" - ] - }, - { - "cell_type": "markdown", - "id": "9505410d", - "metadata": {}, - "source": [ + "

    \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "## Bagging\n", "\n", "The **plain** decision trees suffer from high\n", @@ -1796,14 +1611,9 @@ "\n", "**Bootstrap aggregation**, or just **bagging**, is a\n", "general-purpose procedure for reducing the variance of a statistical\n", - "learning method." - ] - }, - { - "cell_type": "markdown", - "id": "807639f2", - "metadata": {}, - "source": [ + "learning method. \n", + "\n", + "\n", "## More bagging\n", "\n", "Bagging typically results in improved accuracy\n", @@ -1826,14 +1636,10 @@ "trees. A large value indicates an important predictor. Similarly, in\n", "the context of bagging classification trees, we can add up the total\n", "amount that the Gini index is decreased by splits over a given\n", - "predictor, averaged over all $B$ trees." - ] - }, - { - "cell_type": "markdown", - "id": "a3763486", - "metadata": {}, - "source": [ + "predictor, averaged over all $B$ trees.\n", + "\n", + "\n", + "\n", "## Making your own Bootstrap: Changing the Level of the Decision Tree\n", "\n", "Let us bring up our good old boostrap example from the linear regression lectures. We change the linerar regression algorithm with\n", @@ -1843,8 +1649,9 @@ { "cell_type": "code", "execution_count": 16, - "id": "e9d87bdd", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "\n", @@ -1903,7 +1710,6 @@ }, { "cell_type": "markdown", - "id": "daf49858", "metadata": {}, "source": [ "## Why Voting?\n", @@ -1920,14 +1726,8 @@ "In voting we simply apply the law of large numbers while in boosting we give more weight to misclassified data in\n", "each iteration. \n", "\n", - "Decision trees play an important role as our weak classifier. They serve as the basic method." - ] - }, - { - "cell_type": "markdown", - "id": "6a146f2d", - "metadata": {}, - "source": [ + "Decision trees play an important role as our weak classifier. They serve as the basic method. \n", + "\n", "## Tossing coins\n", "\n", "The simplest case is a so-called voting ensemble. To illustrate this,\n", @@ -1949,22 +1749,17 @@ "\n", "The example here shows how we can implement the coin tossing case,\n", "clealry demostrating that after some tosses we see the [law of large](https://en.wikipedia.org/wiki/Law_of_large_numbers)\n", - "numbers kicking in." - ] - }, - { - "cell_type": "markdown", - "id": "42892d97", - "metadata": {}, - "source": [ + "numbers kicking in.\n", + "\n", "## Standard imports first" ] }, { "cell_type": "code", "execution_count": 17, - "id": "231bdf38", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "# Common imports\n", @@ -2008,7 +1803,6 @@ }, { "cell_type": "markdown", - "id": "094cf1cb", "metadata": {}, "source": [ "## Simple Voting Example, head or tail" @@ -2017,8 +1811,9 @@ { "cell_type": "code", "execution_count": 18, - "id": "48790785", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "\n", @@ -2048,7 +1843,6 @@ }, { "cell_type": "markdown", - "id": "d5339f7b", "metadata": {}, "source": [ "## Using the Voting Classifier\n", @@ -2059,8 +1853,9 @@ { "cell_type": "code", "execution_count": 19, - "id": "6a1080ec", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", @@ -2109,7 +1904,6 @@ }, { "cell_type": "markdown", - "id": "47d98581", "metadata": {}, "source": [ "## Voting and Bagging" @@ -2118,8 +1912,9 @@ { "cell_type": "code", "execution_count": 20, - "id": "c7fd3f00", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", @@ -2145,8 +1940,9 @@ { "cell_type": "code", "execution_count": 21, - "id": "c9f7b269", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", @@ -2160,8 +1956,9 @@ { "cell_type": "code", "execution_count": 22, - "id": "b45c2311", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "log_clf = LogisticRegression(random_state=42)\n", @@ -2177,8 +1974,9 @@ { "cell_type": "code", "execution_count": 23, - "id": "f16cc6d0", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.metrics import accuracy_score\n", @@ -2191,7 +1989,6 @@ }, { "cell_type": "markdown", - "id": "4018fbab", "metadata": {}, "source": [ "## Random forests\n", @@ -2212,7 +2009,6 @@ }, { "cell_type": "markdown", - "id": "d2e3facd", "metadata": {}, "source": [ "$$\n", @@ -2222,7 +2018,6 @@ }, { "cell_type": "markdown", - "id": "7a73c7de", "metadata": {}, "source": [ "In building a random forest, at\n", @@ -2240,14 +2035,9 @@ "lead to as large of a reduction in variance as averaging many\n", "uncorrelated quantities. In particular, this means that bagging will\n", "not lead to a substantial reduction in variance over a single tree in\n", - "this setting." - ] - }, - { - "cell_type": "markdown", - "id": "761888c6", - "metadata": {}, - "source": [ + "this setting.\n", + "\n", + "\n", "## Random Forest Algorithm\n", "The algorithm described here can be applied to both classification and regression problems.\n", "\n", @@ -2264,22 +2054,19 @@ "\n", "3. split the node into daughter nodes\n", "\n", - "4. Output then the ensemble of trees $\\{T_b\\}_1^{B}$ and make predictions for either a regression type of problem or a classification type of problem." - ] - }, - { - "cell_type": "markdown", - "id": "4a3c676f", - "metadata": {}, - "source": [ + "\n", + "\n", + "4. Output then the ensemble of trees $\\{T_b\\}_1^{B}$ and make predictions for either a regression type of problem or a classification type of problem. \n", + "\n", "## Random Forests Compared with other Methods on the Cancer Data" ] }, { "cell_type": "code", "execution_count": 24, - "id": "0839a696", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -2352,7 +2139,6 @@ }, { "cell_type": "markdown", - "id": "57e88525", "metadata": {}, "source": [ "Recall that the cumulative gains curve shows the percentage of the\n", @@ -2361,22 +2147,18 @@ "\n", "Similarly, the receiver operating characteristic curve, or ROC curve,\n", "displays the diagnostic ability of a binary classifier system as its\n", - "discrimination threshold is varied. It plots the true positive rate against the false positive rate." - ] - }, - { - "cell_type": "markdown", - "id": "4515344d", - "metadata": {}, - "source": [ + "discrimination threshold is varied. It plots the true positive rate against the false positive rate.\n", + "\n", + "\n", "## Compare Bagging on Trees with Random Forests" ] }, { "cell_type": "code", "execution_count": 25, - "id": "d80e2f55", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "bag_clf = BaggingClassifier(\n", @@ -2387,8 +2169,9 @@ { "cell_type": "code", "execution_count": 26, - "id": "27457485", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "bag_clf.fit(X_train, y_train)\n", @@ -2402,7 +2185,6 @@ }, { "cell_type": "markdown", - "id": "e25dd4ec", "metadata": {}, "source": [ "## Boosting, a Bird's Eye View\n", @@ -2415,14 +2197,9 @@ "This is done by applying in an iterative way a weak (or a standard\n", "classifier like decision trees) to modify the data. In each iteration\n", "we emphasize those observations which are misclassified by weighting\n", - "them with a factor." - ] - }, - { - "cell_type": "markdown", - "id": "92dafde6", - "metadata": {}, - "source": [ + "them with a factor.\n", + "\n", + "\n", "## What is boosting? Additive Modelling/Iterative Fitting\n", "\n", "Boosting is a way of fitting an additive expansion in a set of\n", @@ -2432,7 +2209,6 @@ }, { "cell_type": "markdown", - "id": "bc20c85e", "metadata": {}, "source": [ "$$\n", @@ -2442,7 +2218,6 @@ }, { "cell_type": "markdown", - "id": "4ba594a4", "metadata": {}, "source": [ "where $\\beta_m$ are the expansion parameters to be determined in a\n", @@ -2457,7 +2232,6 @@ }, { "cell_type": "markdown", - "id": "8593117f", "metadata": {}, "source": [ "$$\n", @@ -2467,7 +2241,6 @@ }, { "cell_type": "markdown", - "id": "cc0781ac", "metadata": {}, "source": [ "where $t=\\gamma_0+\\gamma_1 x$ and the parameters $\\gamma_0$ and\n", @@ -2479,7 +2252,6 @@ }, { "cell_type": "markdown", - "id": "ce1a2a56", "metadata": {}, "source": [ "$$\n", @@ -2489,7 +2261,6 @@ }, { "cell_type": "markdown", - "id": "93ab835c", "metadata": {}, "source": [ "In this case the function $f(x)$ was replaced by the design matrix\n", @@ -2500,7 +2271,6 @@ }, { "cell_type": "markdown", - "id": "d9a0cc62", "metadata": {}, "source": [ "$$\n", @@ -2510,17 +2280,11 @@ }, { "cell_type": "markdown", - "id": "a4e87a0b", - "metadata": {}, - "source": [ - "In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters $\\beta_m$ and $\\gamma_m$." - ] - }, - { - "cell_type": "markdown", - "id": "4cd671b2", "metadata": {}, "source": [ + "In iterative fitting or additive modeling, we minimize the cost function with respect to the parameters $\\beta_m$ and $\\gamma_m$.\n", + "\n", + "\n", "## Iterative Fitting, Regression and Squared-error Cost Function\n", "\n", "The way we proceed is as follows (here we specialize to the squared-error cost function)\n", @@ -2537,16 +2301,12 @@ "\n", "c. Determine then the new values $f_m(x)=f_{m-1}(x) +\\beta_m b(x;\\gamma_m)$\n", "\n", + "\n", "We could use any of the algorithms we have discussed till now. If we\n", "use trees, $\\gamma$ parameterizes the split variables and split points\n", - "at the internal nodes, and the predictions at the terminal nodes." - ] - }, - { - "cell_type": "markdown", - "id": "f9e4e4c5", - "metadata": {}, - "source": [ + "at the internal nodes, and the predictions at the terminal nodes.\n", + "\n", + "\n", "## Squared-Error Example and Iterative Fitting\n", "\n", "To better understand what happens, let us develop the steps for the iterative fitting using the above squared error function.\n", @@ -2558,7 +2318,6 @@ }, { "cell_type": "markdown", - "id": "98051368", "metadata": {}, "source": [ "$$\n", @@ -2568,7 +2327,6 @@ }, { "cell_type": "markdown", - "id": "b89afedd", "metadata": {}, "source": [ "We start our iteration by simply setting $f_0(x)=0$. \n", @@ -2577,7 +2335,6 @@ }, { "cell_type": "markdown", - "id": "4ce53503", "metadata": {}, "source": [ "$$\n", @@ -2587,7 +2344,6 @@ }, { "cell_type": "markdown", - "id": "bfd354cd", "metadata": {}, "source": [ "and" @@ -2595,7 +2351,6 @@ }, { "cell_type": "markdown", - "id": "1cdd2ab0", "metadata": {}, "source": [ "$$\n", @@ -2605,7 +2360,6 @@ }, { "cell_type": "markdown", - "id": "abc6bca0", "metadata": {}, "source": [ "We can then rewrite these equations as (defining $\\boldsymbol{w}=\\boldsymbol{e}+\\gamma \\boldsymbol{x})$ with $\\boldsymbol{e}$ being the unit vector)" @@ -2613,7 +2367,6 @@ }, { "cell_type": "markdown", - "id": "15ab72b0", "metadata": {}, "source": [ "$$\n", @@ -2623,7 +2376,6 @@ }, { "cell_type": "markdown", - "id": "30076526", "metadata": {}, "source": [ "which gives us $\\beta = \\boldsymbol{w}^T\\boldsymbol{y}/(\\boldsymbol{w}^T\\boldsymbol{w})$. Similarly we have" @@ -2631,7 +2383,6 @@ }, { "cell_type": "markdown", - "id": "036983c0", "metadata": {}, "source": [ "$$\n", @@ -2641,21 +2392,16 @@ }, { "cell_type": "markdown", - "id": "01855f77", "metadata": {}, "source": [ "which leads to $\\gamma =(\\boldsymbol{x}^T\\boldsymbol{y}-\\beta\\boldsymbol{x}^T\\boldsymbol{e})/(\\beta\\boldsymbol{x}^T\\boldsymbol{x})$. Inserting\n", "for $\\beta$ gives us an equation for $\\gamma$. This is a non-linear equation in the unknown $\\gamma$ and has to be solved numerically. \n", "\n", "The solution to these two equations gives us in turn $\\beta_1$ and $\\gamma_1$ leading to the new expression for $f_1(x)$ as\n", - "$f_1(x) = \\beta_1(1+\\gamma_1x)$. Doing this $M$ times results in our final estimate for the function $f$." - ] - }, - { - "cell_type": "markdown", - "id": "ea3b23fd", - "metadata": {}, - "source": [ + "$f_1(x) = \\beta_1(1+\\gamma_1x)$. Doing this $M$ times results in our final estimate for the function $f$. \n", + "\n", + "\n", + "\n", "## Iterative Fitting, Classification and AdaBoost\n", "\n", "Let us consider a binary classification problem with two outcomes $y_i \\in \\{-1,1\\}$ and $i=0,1,2,\\dots,n-1$ as our set of\n", @@ -2667,7 +2413,6 @@ }, { "cell_type": "markdown", - "id": "785ad3fb", "metadata": {}, "source": [ "$$\n", @@ -2677,7 +2422,6 @@ }, { "cell_type": "markdown", - "id": "bcdd75ca", "metadata": {}, "source": [ "The iterative procedure starts with defining a weak classifier whose\n", @@ -2691,7 +2435,6 @@ }, { "cell_type": "markdown", - "id": "4066ea94", "metadata": {}, "source": [ "$$\n", @@ -2701,7 +2444,6 @@ }, { "cell_type": "markdown", - "id": "2bd9f2bd", "metadata": {}, "source": [ "will be a function of" @@ -2709,7 +2451,6 @@ }, { "cell_type": "markdown", - "id": "4e0d1bcd", "metadata": {}, "source": [ "$$\n", @@ -2719,7 +2460,6 @@ }, { "cell_type": "markdown", - "id": "c843142c", "metadata": {}, "source": [ "## Adaptive Boosting, AdaBoost\n", @@ -2729,7 +2469,6 @@ }, { "cell_type": "markdown", - "id": "fa9764ef", "metadata": {}, "source": [ "$$\n", @@ -2739,7 +2478,6 @@ }, { "cell_type": "markdown", - "id": "08271d96", "metadata": {}, "source": [ "The simplest possible cost function which leads (also simple from a computational point of view) to the AdaBoost algorithm is the\n", @@ -2748,7 +2486,6 @@ }, { "cell_type": "markdown", - "id": "730500b4", "metadata": {}, "source": [ "$$\n", @@ -2758,7 +2495,6 @@ }, { "cell_type": "markdown", - "id": "a5cfcea5", "metadata": {}, "source": [ "We optimize $\\beta$ and $G$ for each value of $m=1:M$ as we did in the regression case.\n", @@ -2767,7 +2503,6 @@ }, { "cell_type": "markdown", - "id": "f120a894", "metadata": {}, "source": [ "$$\n", @@ -2777,17 +2512,10 @@ }, { "cell_type": "markdown", - "id": "b9b9773e", - "metadata": {}, - "source": [ - "where we have defined $w_i^m= \\exp{(-y_if_{m-1}(x_i))}$." - ] - }, - { - "cell_type": "markdown", - "id": "945e7c76", "metadata": {}, "source": [ + "where we have defined $w_i^m= \\exp{(-y_if_{m-1}(x_i))}$.\n", + "\n", "## Building up AdaBoost\n", "\n", "First, for any $\\beta > 0$, we optimize $G$ by setting" @@ -2795,7 +2523,6 @@ }, { "cell_type": "markdown", - "id": "02655c91", "metadata": {}, "source": [ "$$\n", @@ -2805,7 +2532,6 @@ }, { "cell_type": "markdown", - "id": "a75a0f9b", "metadata": {}, "source": [ "which is the classifier that minimizes the weighted error rate in predicting $y$.\n", @@ -2815,7 +2541,6 @@ }, { "cell_type": "markdown", - "id": "ae35403a", "metadata": {}, "source": [ "$$\n", @@ -2825,7 +2550,6 @@ }, { "cell_type": "markdown", - "id": "091c1c6f", "metadata": {}, "source": [ "which can be rewritten as" @@ -2833,7 +2557,6 @@ }, { "cell_type": "markdown", - "id": "30eb3053", "metadata": {}, "source": [ "$$\n", @@ -2843,7 +2566,6 @@ }, { "cell_type": "markdown", - "id": "f6a6d37d", "metadata": {}, "source": [ "which leads to" @@ -2851,7 +2573,6 @@ }, { "cell_type": "markdown", - "id": "37e33765", "metadata": {}, "source": [ "$$\n", @@ -2861,7 +2582,6 @@ }, { "cell_type": "markdown", - "id": "fffc2eed", "metadata": {}, "source": [ "where we have redefined the error as" @@ -2869,7 +2589,6 @@ }, { "cell_type": "markdown", - "id": "f5a1e2cc", "metadata": {}, "source": [ "$$\n", @@ -2879,7 +2598,6 @@ }, { "cell_type": "markdown", - "id": "922eb174", "metadata": {}, "source": [ "which leads to an update of" @@ -2887,7 +2605,6 @@ }, { "cell_type": "markdown", - "id": "e20016de", "metadata": {}, "source": [ "$$\n", @@ -2897,7 +2614,6 @@ }, { "cell_type": "markdown", - "id": "2c6ddb1a", "metadata": {}, "source": [ "This leads to the new weights" @@ -2905,7 +2621,6 @@ }, { "cell_type": "markdown", - "id": "d10fc0fe", "metadata": {}, "source": [ "$$\n", @@ -2915,7 +2630,6 @@ }, { "cell_type": "markdown", - "id": "da5a926c", "metadata": {}, "source": [ "## Adaptive boosting: AdaBoost, Basic Algorithm\n", @@ -2933,7 +2647,6 @@ }, { "cell_type": "markdown", - "id": "d5985efa", "metadata": {}, "source": [ "$$\n", @@ -2943,17 +2656,10 @@ }, { "cell_type": "markdown", - "id": "19bb8280", - "metadata": {}, - "source": [ - "where the function $I()$ is one if we misclassify and zero if we classify correctly." - ] - }, - { - "cell_type": "markdown", - "id": "7608b386", "metadata": {}, "source": [ + "where the function $I()$ is one if we misclassify and zero if we classify correctly. \n", + "\n", "## Basic Steps of AdaBoost\n", "\n", "With the above definitions we are now ready to set up the algorithm for AdaBoost.\n", @@ -2965,7 +2671,6 @@ }, { "cell_type": "markdown", - "id": "0ae121e3", "metadata": {}, "source": [ "$$\n", @@ -2975,7 +2680,6 @@ }, { "cell_type": "markdown", - "id": "6a21a16e", "metadata": {}, "source": [ "1. Then we start looping over all attempts at classifying, namely we start an iterative process for $m=1:M$, where $M$ is the final number of classifications. Our given classifier could for example be a plain decision tree.\n", @@ -2988,6 +2692,7 @@ "\n", "d. Set the new weights to $w_i = w_i\\times \\exp{(\\alpha_m I(y_i\\ne G(x_i)}$.\n", "\n", + "\n", "5. Compute the new classifier $G(x)= \\sum_{i=0}^{n-1}\\alpha_m I(y_i\\ne G(x_i)$.\n", "\n", "For the iterations with $m \\le 2$ the weights are modified\n", @@ -2996,14 +2701,10 @@ "classified properly. As this proceeds, the observations which were\n", "difficult to classifiy correctly are given a larger influence. Each\n", "new classification step $m$ is then forced to concentrate on those\n", - "observations that are missed in the previous iterations." - ] - }, - { - "cell_type": "markdown", - "id": "5a06c2c0", - "metadata": {}, - "source": [ + "observations that are missed in the previous iterations.\n", + "\n", + "\n", + "\n", "## AdaBoost Examples\n", "\n", "Using **Scikit-Learn** it is easy to apply the adaptive boosting algorithm, as done here." @@ -3012,8 +2713,9 @@ { "cell_type": "code", "execution_count": 27, - "id": "5879f377", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "from sklearn.ensemble import AdaBoostClassifier\n", @@ -3041,7 +2743,6 @@ }, { "cell_type": "markdown", - "id": "e9279b9f", "metadata": {}, "source": [ "## Gradient boosting: Basics with Steepest Descent/Functional Gradient Descent\n", @@ -3052,14 +2753,8 @@ "\n", "In order to understand the method, let us illustrate its basics by\n", "bringing back the essential steps in linear regression, where our cost\n", - "function was the least squares function." - ] - }, - { - "cell_type": "markdown", - "id": "89199bb6", - "metadata": {}, - "source": [ + "function was the least squares function.\n", + "\n", "## The Squared-Error again! Steepest Descent\n", "\n", "We start again with our cost function ${\\cal C}(\\boldsymbol{y}m\\boldsymbol{f})=\\sum_{i=0}^{n-1}{\\cal L}(y_i, f(x_i))$ where we want to minimize\n", @@ -3068,7 +2763,6 @@ }, { "cell_type": "markdown", - "id": "d1d4dff1", "metadata": {}, "source": [ "$$\n", @@ -3078,7 +2772,6 @@ }, { "cell_type": "markdown", - "id": "15d22a20", "metadata": {}, "source": [ "We define a real function $h_m(x)$ that defines our final function $f_M(x)$ as" @@ -3086,7 +2779,6 @@ }, { "cell_type": "markdown", - "id": "0a210fee", "metadata": {}, "source": [ "$$\n", @@ -3096,7 +2788,6 @@ }, { "cell_type": "markdown", - "id": "5cf2a6a3", "metadata": {}, "source": [ "In the steepest decent approach we approximate $h_m(x) = -\\rho_m g_m(x)$, where $\\rho_m$ is a scalar and $g_m(x)$ the gradient defined as" @@ -3104,7 +2795,6 @@ }, { "cell_type": "markdown", - "id": "ace744f9", "metadata": {}, "source": [ "$$\n", @@ -3114,7 +2804,6 @@ }, { "cell_type": "markdown", - "id": "5b5c897f", "metadata": {}, "source": [ "With the new gradient we can update $f_m(x) = f_{m-1}(x) -\\rho_m g_m(x)$. Using the above squared-error function we see that\n", @@ -3125,7 +2814,6 @@ }, { "cell_type": "markdown", - "id": "5562a17c", "metadata": {}, "source": [ "$$\n", @@ -3135,7 +2823,6 @@ }, { "cell_type": "markdown", - "id": "a37be653", "metadata": {}, "source": [ "## Steepest Descent Example\n", @@ -3145,7 +2832,6 @@ }, { "cell_type": "markdown", - "id": "ad73dbb2", "metadata": {}, "source": [ "$$\n", @@ -3155,7 +2841,6 @@ }, { "cell_type": "markdown", - "id": "126d482b", "metadata": {}, "source": [ "We can then proceed and compute" @@ -3163,7 +2848,6 @@ }, { "cell_type": "markdown", - "id": "4d415cc8", "metadata": {}, "source": [ "$$\n", @@ -3173,17 +2857,10 @@ }, { "cell_type": "markdown", - "id": "a1ef6ad9", - "metadata": {}, - "source": [ - "and find a new value for $\\rho_2=-1/2$ and continue till we have reached $m=M$. We can modify the steepest descent method, or steepest boosting, by introducing what is called **gradient boosting**." - ] - }, - { - "cell_type": "markdown", - "id": "8961dc18", "metadata": {}, "source": [ + "and find a new value for $\\rho_2=-1/2$ and continue till we have reached $m=M$. We can modify the steepest descent method, or steepest boosting, by introducing what is called **gradient boosting**. \n", + "\n", "## Gradient Boosting, algorithm\n", "\n", "Steepest descent is however not much used, since it only optimizes $f$ at a fixed set of $n$ points,\n", @@ -3195,7 +2872,6 @@ }, { "cell_type": "markdown", - "id": "769a885a", "metadata": {}, "source": [ "$$\n", @@ -3205,7 +2881,6 @@ }, { "cell_type": "markdown", - "id": "94f43097", "metadata": {}, "source": [ "The way we proceed in an iterative fashion is to\n", @@ -3219,22 +2894,18 @@ "\n", "c. update the estimate $f_m(x) = f_{m-1}(x)+h_m(u_m,x)$;\n", "\n", - "4. The final estimate is then $f_M(x) = \\sum_{m=1}^M h_m(u_m,x)$." - ] - }, - { - "cell_type": "markdown", - "id": "f7fb4f86", - "metadata": {}, - "source": [ + "\n", + "4. The final estimate is then $f_M(x) = \\sum_{m=1}^M h_m(u_m,x)$.\n", + "\n", "## Gradient Boosting, Examples of Regression" ] }, { "cell_type": "code", "execution_count": 28, - "id": "8b3f2c0c", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -3287,7 +2958,6 @@ }, { "cell_type": "markdown", - "id": "bf4be4e9", "metadata": {}, "source": [ "## Gradient Boosting, Classification Example" @@ -3296,8 +2966,9 @@ { "cell_type": "code", "execution_count": 29, - "id": "bee1829a", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -3344,11 +3015,11 @@ }, { "cell_type": "markdown", - "id": "ac9eb4bb", "metadata": {}, "source": [ "## XGBoost: Extreme Gradient Boosting\n", "\n", + "\n", "[XGBoost](https://github.com/dmlc/xgboost) or Extreme Gradient\n", "Boosting, is an optimized distributed gradient boosting library\n", "designed to be highly efficient, flexible and portable. It implements\n", @@ -3360,22 +3031,17 @@ "boosting system. It has a theoretically justified weighted quantile\n", "sketch for efficient proposal calculation. It introduces a novel sparsity-aware algorithm for parallel tree learning and an effective cache-aware block structure for out-of-core tree learning.\n", "\n", - "It is now the algorithm which wins essentially all ML competitions!!!" - ] - }, - { - "cell_type": "markdown", - "id": "fbe2011a", - "metadata": {}, - "source": [ + "It is now the algorithm which wins essentially all ML competitions!!!\n", + "\n", "## Regression Case" ] }, { "cell_type": "code", "execution_count": 30, - "id": "878c0380", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -3428,7 +3094,6 @@ }, { "cell_type": "markdown", - "id": "7cf64b38", "metadata": {}, "source": [ "## Xgboost on the Cancer Data\n", @@ -3439,8 +3104,9 @@ { "cell_type": "code", "execution_count": 31, - "id": "65a3e655", - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "\n", @@ -3498,25 +3164,7 @@ ] } ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.8" - } - }, + "metadata": {}, "nbformat": 4, - "nbformat_minor": 5 + "nbformat_minor": 4 } diff --git a/doc/src/week45/week45.do.txt b/doc/src/week45/week45.do.txt index 2fe0ba0ec..9280cea04 100644 --- a/doc/src/week45/week45.do.txt +++ b/doc/src/week45/week45.do.txt @@ -6,6 +6,7 @@ DATE: today ===== Overview of week 45 ===== * Thursday: Basics of Decision Trees, Bagging and Voting + * "Video of Lecture":"https://www.uio.no/studier/emner/matnat/fys/FYS-STK3155/h21/forelesningsvideoer/LectureNovember11.mp4?vrtx=view-as-webpage" * Friday: More on Bagging, Voting, Random Forests and start Boosting !bblock Videos