Unverified Commit 8d5e4e53 authored by Vít Starý Novotný's avatar Vít Starý Novotný
Browse files

Update gdown in Jupyter notebooks

parent 4a60085e
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
%% Cell type:markdown id: tags:

# First Term Project: Cranfield Collection
“The Cranfield collection [...] was the pioneering test collection in allowing CRANFIELD precise quantitative measures of information retrieval effectiveness [...]. Collected in the United Kingdom starting in the late 1950s, it contains 1398 abstracts of aerodynamics journal articles, a set of 225 queries, and exhaustive relevance judgments of all (query, document) pairs.” [1, Section 8.2]

Your tasks, reviewed by your colleagues and the course instructors, are the following:

1.   *Implement an unsupervised ranked retrieval system*, [1, Chapter 6] which will produce a list of documents from the Cranfield collection in a descending order of relevance to a query from the Cranfield collection. You MUST NOT use relevance judgements from the Cranfield collection in your information retrieval system. Relevance judgements MUST only be used for the evaluation of your information retrieval system.

2.   *Document your code* in accordance with [PEP 257](https://www.python.org/dev/peps/pep-0257/), ideally using [the NumPy style guide](https://numpydoc.readthedocs.io/en/latest/format.html#docstring-standard) as seen in the code from exercises.
     *Stick to a consistent coding style* in accordance with [PEP 8](https://www.python.org/dev/peps/pep-0008/).

3.   *Reach at least 22% mean average precision* [1, Section 8.4] with your system on the Cranfield collection. You MUST record your score either in [the public leaderboard](https://docs.google.com/spreadsheets/d/e/2PACX-1vT0FoFzCptIYKDsbcv8LebhZDe_20GFeBAPmS-VyImlWbqET0T7I2iWy59p9SHbUe3LX1yJMhALPcCY/pubhtml) or in this Jupyter notebook. You are encouraged to use techniques for tokenization, [1, Section 2.2] document representation [1, Section 6.4], tolerant retrieval [1, Chapter 3], relevance feedback and query expansion, [1, Chapter 9] and others discussed in the course.

4.   _[Upload an .ipynb file](https://is.muni.cz/help/komunikace/spravcesouboru#k_ss_1) with this Jupyter notebook to the homework vault in IS MU._ You MAY also include a brief description of your information retrieval system and a link to an external service such as [Google Colaboratory](https://colab.research.google.com/), [DeepNote](https://deepnote.com/), or [JupyterHub](https://iirhub.cloud.e-infra.cz/).

[1] Manning, Christopher D., Prabhakar Raghavan, and Hinrich Schütze. [*Introduction to information retrieval*](https://nlp.stanford.edu/IR-book/pdf/irbookonlinereading.pdf). Cambridge university press, 2008.

%% Cell type:markdown id: tags:

## Loading the Cranfield collection

First, we will install [our library](https://gitlab.fi.muni.cz/xstefan3/pv211-utils) and load the Cranfield collection.

%% Cell type:code id: tags:

``` 
%%capture
! pip install git+https://github.com/MIR-MU/pv211-utils.git
! pip install gensim==3.6.0
! pip install -U gdown
```

%% Cell type:markdown id: tags:

### Loading the documents

Next, we will define a class named `Document` that will represent a preprocessed document from the Cranfield collection. Tokenization and preprocessing of the `title` and `body` attributes of the individual documents as well as the creative use of the `authors`, `bibliography`, and `title` attributes is left to your imagination and craftsmanship.

%% Cell type:code id: tags:

``` 
from typing import List

from pv211_utils.cranfield.entities import CranfieldDocumentBase

from gensim.utils import simple_preprocess

class Document(CranfieldDocumentBase):
    """
    A preprocessed Cranfield collection document.

    Parameters
    ----------
    document_id : str
        A unique identifier of the document.
    authors : list of str
        A unique identifiers of the authors of the document.
    bibliography : str
        The bibliographical entry for the document.
    title : str
        The title of the document.
    body : str
        The abstract of the document.

    """
    def __init__(self, document_id: str, authors: str, bibliography: str, title: str, body: str):
        super().__init__(document_id, authors, bibliography, title, body)
```

%% Cell type:markdown id: tags:

We will load documents into the `documents` [ordered dictionary](https://docs.python.org/3.8/library/collections.html#collections.OrderedDict). Each document is an instance of the `Document` class that we have just defined.

%% Cell type:code id: tags:

``` 
from pv211_utils.cranfield.loader import load_documents

documents = load_documents(Document)
```

%% Cell type:code id: tags:

``` 
print('\n'.join(repr(document) for document in list(documents.values())[:3]))
print('...')
print('\n'.join(repr(document) for document in list(documents.values())[-3:]))
```

%% Cell type:code id: tags:

``` 
document = documents['14']
document
```

%% Cell type:code id: tags:

``` 
print(document.authors)
```

%% Cell type:code id: tags:

``` 
print(document.bibliography)
```

%% Cell type:code id: tags:

``` 
print(document.title)
```

%% Cell type:code id: tags:

``` 
print(document.body)
```

%% Cell type:markdown id: tags:

### Loading the queries
Next, we will define a class named `Query` that will represent a preprocessed query from the Cranfield collection. Tokenization and preprocessing of the `body` attribute of the individual queries is left to your craftsmanship.

%% Cell type:code id: tags:

``` 
from pv211_utils.cranfield.entities import CranfieldQueryBase

class Query(CranfieldQueryBase):
    """
    A preprocessed Cranfield collection query.

    Parameters
    ----------
    query_id : int
        A unique identifier of the query.
    body : str
        The text of the query.

    """
    def __init__(self, query_id: int, body: str):
        super().__init__(query_id, body)
```

%% Cell type:markdown id: tags:

We will load queries into the `queries` [ordered dictionary](https://docs.python.org/3.8/library/collections.html#collections.OrderedDict). Each query is an instance of the `Query` class that we have just defined.

%% Cell type:code id: tags:

``` 
from pv211_utils.cranfield.loader import load_queries

queries = load_queries(Query)
```

%% Cell type:code id: tags:

``` 
print('\n'.join(repr(query) for query in list(queries.values())[:3]))
print('...')
print('\n'.join(repr(query) for query in list(queries.values())[-3:]))
```

%% Cell type:code id: tags:

``` 
query = queries[14]
query
```

%% Cell type:code id: tags:

``` 
print(query.body)
```

%% Cell type:markdown id: tags:

## Implementation of your information retrieval system
Next, we will define a class named `IRSystem` that will represent your information retrieval system. Your class must define a method name `search` that takes a query and returns documents in descending order of relevance to the query.\n\nThe example implementation returns documents in decreasing order of the bag-of-words cosine similarity between the document and the query. The example implementation returns documents in decreasing order of the TF-IDF cosine similarity between the document and the query. You can use the example implementation as a basis of your system, or you can replace it with your own implementation.

%% Cell type:code id: tags:

``` 
from typing import Iterable

from pv211_utils.cranfield.irsystem import CranfieldIRSystemBase

from gensim.corpora import Dictionary
from gensim.matutils import cossim
from gensim.similarities import SparseMatrixSimilarity
from gensim.utils import simple_preprocess
from tqdm import tqdm

class IRSystem(CranfieldIRSystemBase):
    """
    A system that returns documents ordered by decreasing cosine similarity.

    Attributes
    ----------
    dictionary: Dictionary
        The dictionary of the system.
    index: MatrixSimilarity
        The indexed documents.
    index_to_document: dict of (int, Document)
        A mapping from indexed document numbers to documents.

    """
    def __init__(self):
        document_bodies = (simple_preprocess(document.body) for document in documents.values())
        document_bodies = tqdm(document_bodies, desc='Building the dictionary', total=len(documents))
        dictionary = Dictionary(document_bodies)
        document_vectors = (dictionary.doc2bow(simple_preprocess(document.body)) for document in documents.values())
        document_vectors = tqdm(document_vectors, desc='Building the index', total=len(documents))
        index = SparseMatrixSimilarity(document_vectors, num_docs=len(documents), num_terms=len(dictionary))
        index_to_document = dict(enumerate(documents.values()))
        self.dictionary = dictionary
        self.index = index
        self.index_to_document = index_to_document

    def search(self, query: Query) -> Iterable[Document]:
        """The ranked retrieval results for a query.

        Parameters
        ----------
        query : Query
            A query.

        Returns
        -------
        iterable of Document
            The ranked retrieval results for a query.

        """
        results = []
        query_vector = self.dictionary.doc2bow(simple_preprocess(query.body))
        similarities = enumerate(self.index[query_vector])
        similarities = sorted(similarities, key=lambda item: item[1], reverse=True)
        for document_number, _ in similarities:
            document = self.index_to_document[document_number]
            yield document
```

%% Cell type:markdown id: tags:

## Evaluation
Finally, we will evaluate your information retrieval system using [the Mean Average Precision](https://en.wikipedia.org/wiki/Evaluation_measures_(information_retrieval)#Mean_average_precision) (MAP) evaluation measure.

%% Cell type:code id: tags:

``` 
from pv211_utils.cranfield.loader import load_judgements
from pv211_utils.cranfield.leaderboard import CranfieldLeaderboard
from pv211_utils.cranfield.eval import CranfieldEvaluation

submit_result = False
author_name = 'Surname, Name'

print('Initializing your system ...')
system = IRSystem()

evaluation = CranfieldEvaluation(system, load_judgements(queries, documents), CranfieldLeaderboard(), author_name)
evaluation.evaluate(tqdm(queries.values(), desc='Querying your system'), submit_result)
```
+1 −0
Original line number Diff line number Diff line
%% Cell type:markdown id: tags:

# Second Term Project: TREC Collection

“The U.S. National Institute of Standards and Technology (NIST) has run a large IR test bed evaluation series since 1992. [...] TRECs 6–8 provide 150 information needs over about 528,000 newswire and Foreign Broadcast Information Service articles. [...] Because the test document collections are so large, there are no exhaustive relevance judgments.” [1, Section 8.2]

Your tasks, reviewed by your colleagues and the course instructors, are the following:

1.   *Implement a supervised ranked retrieval system*, [1, Chapter 15] which will produce a list of documents from the TREC collection in a descending order of relevance to a query from the TREC collection. You SHOULD use training and validation relevance judgements from the TREC collection in your information retrieval system. Test judgements MUST only be used for the evaluation of your information retrieval system.

2.   *Document your code* in accordance with [PEP 257](https://www.python.org/dev/peps/pep-0257/), ideally using [the NumPy style guide](https://numpydoc.readthedocs.io/en/latest/format.html#docstring-standard) as seen in the code from exercises.
     *Stick to a consistent coding style* in accordance with [PEP 8](https://www.python.org/dev/peps/pep-0008/).

3.   *Reach at least 13.5% mean average precision* [1, Section 8.4] with your system on the TREC collection. You are encouraged to use techniques for tokenization, [1, Section 2.2] document representation [1, Section 6.4], tolerant retrieval [1, Chapter 3], relevance feedback, query expansion, [1, Chapter 9], learning to rank [1, Chapter 15], and others discussed in the course.

4.   _[Upload an .ipynb file](https://is.muni.cz/help/komunikace/spravcesouboru#k_ss_1) with this Jupyter notebook to the homework vault in IS MU._ You MAY also include a brief description of your information retrieval system and a link to an external service such as [Google Colaboratory](https://colab.research.google.com/), [DeepNote](https://deepnote.com/), or [JupyterHub](https://iirhub.cloud.e-infra.cz/).

[1] Manning, Christopher D., Prabhakar Raghavan, and Hinrich Schütze. [*Introduction to information retrieval*](https://nlp.stanford.edu/IR-book/pdf/irbookonlinereading.pdf). Cambridge university press, 2008.

%% Cell type:markdown id: tags:

## Loading the TREC collection

First, we will install [our library](https://gitlab.fi.muni.cz/xstefan3/pv211-utils) and load the TREC collection. If you are interested, you can take a peek at [how we preprocessed the raw TREC collection](https://colab.research.google.com/drive/1vT4UwsFCsi1xEZckqFVRzLgQS1kVzTuO) to the final dataset that we will be using.

%% Cell type:code id: tags:

``` 
%%capture
! pip install git+https://github.com/MIR-MU/pv211-utils.git
! pip install gensim==3.6.0
! pip install -U gdown
```

%% Cell type:markdown id: tags:

### Loading the documents

Next, we will define a class named `Document` that will represent a preprocessed document from the TREC collection. Tokenization and preprocessing of the `body` attribute of the individual documents is left to your imagination and craftsmanship.

%% Cell type:code id: tags:

``` 
from pv211_utils.trec.entities import TrecDocumentBase

class Document(TrecDocumentBase):
    """
    A preprocessed TREC collection document.

    Parameters
    ----------
    document_id : str
        A unique identifier of the document.
    body : str
        The abstract of the document.

    """
    def __init__(self, document_id: str, body: str):
        super().__init__(document_id, body)
```

%% Cell type:markdown id: tags:

We will load documents into the `documents` [ordered dictionary](https://docs.python.org/3.8/library/collections.html#collections.OrderedDict). Each document is an instance of the `Document` class that we have just defined.

%% Cell type:code id: tags:

``` 
from pv211_utils.trec.loader import load_documents

documents = load_documents(Document, cache_download='/var/tmp/pv211/trec_documents.json.gz')
```

%% Cell type:code id: tags:

``` 
print('\n'.join(repr(document) for document in list(documents.values())[:3]))
print('...')
print('\n'.join(repr(document) for document in list(documents.values())[-3:]))
```

%% Cell type:code id: tags:

``` 
document = documents['FT911-3']
document
```

%% Cell type:code id: tags:

``` 
print(document.body)
```

%% Cell type:markdown id: tags:

### Loading the queries
Next, we will define a class named `Query` that will represent a preprocessed query from the TREC collection. Tokenization and preprocessing of the `body` attribute of the individual queries as well as the creative use of the `title` and `narrative` attributes is left to your imagination and craftsmanship.

%% Cell type:code id: tags:

``` 
from pv211_utils.trec.entities import TrecQueryBase

class Query(TrecQueryBase):
    """
    A preprocessed TREC collection query.

    Parameters
    ----------
    query_id : int
        Up to three words that best describe the query.
    title : str
        Up to three words that best describe the query.
    body : str
        A one-sentence description of the topic area.
    narrative : str
        A concise description of what makes a document relevant.

    """
    def __init__(self, query_id: int, title: str, body: str, narrative: str):
        super().__init__(query_id, title, body, narrative)
```

%% Cell type:markdown id: tags:

We will load queries into the `train_queries` and `validation_queries` [ordered dictionaries](https://docs.python.org/3.8/library/collections.html#collections.OrderedDict). Each query is an instance of the `Query` class that we have just defined. You should use `train_queries`, `validation_queries`, and *relevance judgements* (see the next section) for training your supervised information retrieval system.

%% Cell type:markdown id: tags:



If you are training just a single machine learning model without any early stopping or hyperparameter optimization, you can use `bigger_train_queries` as the input.

If you are training a single machine learning model with early stopping or hyperparameter optimization, you can use `train_queries` for training your model and `validation_queries` to stop early or to select the optimal hyperparameters for your model. You can then use `bigger_train_queries` to train the model with the best number of epochs or the best hyperparameters.

If you are training many machine learning models with early stopping or hyperparameter optimization, then you can split your train judgements to smaller training and validation sets. Then, you can use `smaller_train_queries` for training your models, `smaller_validation_queries` to stop early or to select the optimal hyperparameters for your models, and `validation_queries` to select the best model. You can then use `bigger_train_queries` to train the best model with the best number of epochs or the best hyperparameters.

%% Cell type:markdown id: tags:


 ![visualization](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACR8AAAN9CAAAAAA1XMOsAAAS8XpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjarZpndls5toX/YxQ9BOQwHMS1egZv+P1tXNKWbLnsqnqmLVI3AThhB9Bm/99/j/kPf5Ir1sRUam45W/7EFpvvfKj2+dPuT2fj/fn8cr4d/XTclGXD/eQ5pE/Pb7b0142d4+n7De8x3Ph83NTXGV9fD3qdeD8waGTPh/Vxkhz3z3EXXw9q+/mQWy0fpzr88z5fF96pvP6d6e/z0nhO6Xfz8UAsRGklBgre7+CCvT/rM4Ogfy70+975l7nO3c8hWHNP2NdMCMin5b3frf0YoE9Bfn8yP0Y/vy/4Ifi+v64IP8Qyv2LEhy9PuPR18G+IPwwcvs3Ifz5xpvM/Lecd5LPqOftZXY+ZiOZXRVnzjs59yFmEPYZ7W+ZV+Jf4XO6r8aq220nKl5128JquOU9WjnHRLdfdcfu+TzeZYvTbF969nyRKx2oovvkZlKeolzu+hBZWqORt+m1IXQz+21zcHbfd8aarjLwcl3rHw5TqX77MX538Oy9zzlSInIKZb9iUYK+AMw1lTj+5Kt6GffKWboDfr1f67YfColTJYLphriyw2/E8YiT3vbbCzXPgusT700JO3f88gBAxdmIyLpABpheSY47F++IccawkqDNzH6IfZMCl5BeT9DHQLab46jU29xR3r/XJZ6/DYBOJSCGHQm5a6CQrxkT9lFipoZ5CiimlnEqqJrXUc8gxp5xzyQK5XkKJJZVcSqmllV5DjTXVXEuttdXefAtgYGq5lVZba7170xmo86zO9Z0jw48w4kgjjzLqaKNPymfGmWaeZdbZZl9+hQVMrLzKqqutvp3ZIMWOO+28y6677X6otRNOPOnkU0497fRvWXtl9afX38iae2XN30zpuvItaxw1pbwf4QQnSTkjYz46Ml6UAQraK2e2uhi9Mqec2eZpiuSZZFJuzHLKGCmM2/l03Lfcfc/cH+XNpPpHefO/y5xR6v4/MmdI3c95+yJrSzw3b8aeLlRMbaD7uKb7avouhVJn/NrGjOEshQIo3P74vWo8fq7iXRuh5SlKpKlOaDx3VxawS9jz7GCAxXb28uHsM8NhhEoD5XJcLWfq99xo/rKdPs9cLbzT/WjzjHAqt+xyRqxGp8fhcTvEstqZmTuYV4/lrMPDzsNSLPr78FZHP41fzafh7+BMXsP/evBz7sg8/MPYRgH7MPxXg//R0s3v1v6nSze/W/ufLt38bu1/unTzt9PuVtynzJSAUvqt1zXj6smsSSe7FHyMzQ0Uim/Q8LY7HvVp38NBbDyBiUw4kHPUMX+t/fRufjyg9138ukuM3a2tT4tnMW3osjPY64L36XvyFqTOo/xoS9dp3dn62nRqyHXn5X3bezPPXPiQXFuJBeSqdpGO8GuVsLrp/gxX6iZWNfDkIrUx9PjjZk+LMDNyyjXpWNquEPLuQKGQ1tobMAMv8jDwWJpT6oIjjjhFntBm9dwQGpf20DZaYbFob389qJmdNKYdSD6CZVfWzh335ESAlDRXPmLCEQ/I1NbJI8SWRyZ3ycc8pMkSOtvbDGJMt22d254VRkqjZarCZuROziMFC1OOErMHWgA95lHr2MWNirRxe0UoO573hKx9T0k6i0mpfsDtv4rhWiv4ndPoZrjUPHW8AWtwG2yWKI91QgEBvEw8yoJpf/U4Bcf8KjoD8P79I+YmDMeNULAQPapHiSUNNoFTIHzSho5QVL8G9LQOmU4FdUL3QB3jwQSb+i1bKj5a4xyVOWahpSLF5u5gt2ZOpfxO9oxMy9pMsKXKeBi9CoWhQXqfJ68O9VWTZz1zNlRPgqsCuZr0aZjHp9JP3q4mHnH6XGv2gbQdO5B7Ff/GqNCKG5QYzAiUqfDQqPI57ZczYN2viUuRvad+J68sb5MS/FzT9HGOjKmrzcOfxHlGDJKfrgTXoHTSuAsNttvKfcTSW9qTlltuwud2mlbQbrQCNFwbJJ7gUteotVi2z5L7XyZNAPuhKYDaL4uQmdONZQU7tjBqQsXUGkAQSXckrn5CnVLiGIRCuJfxuzeiAUjII1bnd8qLhI7YGoBkTxtoiQXKzRLB2V5+DKOY3BXzYPSHWH5RBGmrAzlI/Q/alJYlcmkBvCmybI+8MfnEHVFOoI6no6nlCYgjMgAPl44F6OwqrpNxRFWNjps9csSFE6jFUlZGMWR4TTGPpa4cWHvGeTwJLsiR09VrYeYbO+8zwudOdbKyXZFvqi9GRQAZPlP7Pc1YLIGBbwaCjfrPPA22gVRGkXefc1SdXmNbd4fNOSy015ND40qypS3K9QGSnt85jE8OCQUJWaq1dSLPQVEiMedCW7YEjgWQqRSjmiYfIU6RXrrxi+g08tqoSecyuBZgqMzCg3dnQ5t0OtW0sOfkIud6CootkQcm1bkwQZpAyEZoDa5+V+GFlo/ggaqjlr2PrLcD+Ha2ZJzWAPsVl2BQ+FB7BgjQszEvVC/akdsS+EaPk4tW7WU6RC896HdzmcjNYEAVOAcs8sRkIYGf8gciDnCAyl07eXAeRGhHVEKOU9N0qTkPVrknkeZb0REzHjiTzO0DbxzqQDIicktQqv3qtuSwtokkxiPj3FLlWLPFUKA0E6N4igPFkvoW1NLLmbwv5hmTo1pQBHTFyElyBOQRv1NbaJpxp2SapzpvGDOFeudHoXaky+ua9wXPaRUrpykU18+GgUNPuJWwDF24IhNfe2Uvr4BhAR7lVvaulAZYaBuyAPw4reMwJ/odgcQ1CYcinY6U8QZ9HiBlqqekgeRPA0WF1Gb1qowUgIi6VrPDd2137Ow3yx7o+4Wqx1Tk41FeZmRiw7hppAjpFtqUeYNsm/DYnJYePlXaVPOk8nuDBwWD1J64D4N0pk/MyIUlWUY2IurL7r3g91ZJN6UccBqh9lQ7/YEfOiwMk4XGsNBY9xbYyABhwNPuyrzxZoAf1e20UXNnt5/ZxSQ1WFO6vptSwmVhuqg0gGLjfS4J4I5OzWqF7NbDshbbgw6lR2YupAXMmx4K8BOMWB3BuKmyENCbURUhT2WBWpyaJputhCKpotXjsAOveCWRExS0z6NpBs9ot1xqnMhZ8RoFuhsVU5Fa0uXDUn51gO+O2iEbWD5Ivi/t0IXj0WdEoeZB3oXga+AzDd607EnB7Pu3X6h+BnnI8DWKiOGOk5oWjCYFJQbWFbBKK3RzSOzm9MITo34ddUygGuElWculGqhkxxMmapl2c1pibwfqEY1j6SjPdbbxekZqiz4khgiTpdKLZMiXSbdeqweNOEQb0Af8cT2cQq+SPcq628iEJsEWR1P4lE/acbaS8ZKA/zwJsgDPQUAWXH2+dQ8fo5VZhkNylJlhTnDALoMoAwSAC3fiGhacCqlwS84a9Gqf2CMQmyBFLH7XU/u+hNOjhMPK1tMiDe1XhcZ9QGpQyqDmF+GJi0Ui2nGwMsZUcQKZ0BloZeod0b6kXybdRkQGvUaEB6um5sNO88Cauz6q75EKzKT6k2IAVrUxaCvCn07dmCJissFuVIHx8JIPnVo7TJN2WMg7tf+VdfLXl6YcTgXv0Am4T/gIGqUc7X2D73EMlD+MT2XsSXiAkhwm0VLvilYGOgmCjwct2chzGA6IrKD9IYBYBstotNymTcwoFJqtkm1jsbDl56GvHOqKSAx7hK0VTZ+1NQAioqJQDk5dDA8jPvzwqDODhDg+N8C5Im5JPuXAAHQ1GDI4uSarXSTCJyZESTg/RHk14nTWs10LDhokKSAPFjrQ5NAuhzq4k0CJFhkRSpSoBaoZYohIiscQ79JFYORsgiQRL7IKorEudSt3SW1T2ZfHFvhUlG6s54AtER74KyUdjdJeGiVBKmgTw8TdI7vzSotV3Ctot/cVzwU6zQPOAkchVL8JGAMkjQp6b5h24K93qowpCSUaKeACle9pi85ribKhpd2QlTtd+KuJpCNcUXE1i4a2wXiGgq7JE79ManAMZYqPm5w5ePjlY3yeSCXay8taNvDWbKgWQNxX1fPC3WlrnOolxYc+6P2SK7VNagl1AjZagaqhTweoUjez4o6aevKgTphlR3biTaqigbFhAOoLVJt4pfx0Tb8zvPsEoC3Miu/lF1x2Rj4SUgr5NUdN0asfHbnXAq5uAxrQR/55asDkgjMZFe5hYVJYhunBykxOxBdOIWgzHoG2J0JYggpkk57FbORm1S0efeEqyB8X5EYoQXF665g7Mh83BINga9I7m3K+NFC+Pp5EbnGETlPFpqpa08A4PnZ+29o7u/KVGhqv+kVMS/ktUvDQz6/OsLT4RHG8r3ldAYT8ePdPZ8aHm83fH/t193x2cQJ6b8AsWFG/Ykzaq2woTKEpUs7NNgZuEkAHWOh61GwB43vwa+UqF4/K441WBM4JliwEwXThFgdtw0+gHvxPLo+FGaFSStxg3kB/QX4bo5TsknI8km6kSpM3X629cw+uA07As8xVWr8mywHpT9LCwg0CoDBytVXTKxSkGAHMsQXBAJrvRya0M2/XnxXvzRmrkBE4iHDcwAYD5t1G65n10QymxBVFphCDOw6Oi5AQhS0JC1iiz5ZXEcMU+ZRHjjP3EJ7ID/vkzZl6aAsCqc2WgzKsk+WTjHtdyxsjeJw0I3ASFdVNvQ+E/CmsBBkuyXQI9hIHYnO9VHbGXfA0IW/S95QCRCk47VwcbUIEpCqGg5k9JMW1iFidvsr/fYW2Ke41usLaew04nF3PaVMuR/oF3x7xnsgAaXqGRhKiI820XltAIyGCsa1DO06DBqaX8Ht5yRJ2sJKUVcgd5IR36t0ymnALs0cp4KhQbAVcvbsGhIbYYD3JKcsnWhvpYpUzUpxEpIAIBgWvCxxHYFXKCsLXV9DIl4CXy1Ab9FtlYa0UC+kGNqBLlJuTlwos8EhkDpktObxKDuymZjdiyLSyHKA5QhpoMxjHw9eS1ZWxh+dAG4h2BLG3CF3lWgFE9ucUV8GA4MKgdLNlA5ulmHcC6+GUvBZLg5igw0LjxJ4nmInOg9SpiFAcEoW0U03EF77HhREj1AUR8jicJvs8754N4miTIysRHehn6Ng+G9Ijx0ryCEZA3YPy8APL3aZUuhK3SPVBU6URLPC+5CJ3L9xNd5dGnLLhl4vlQ0qsNC9XATIAR7jsGErTRi8SB82BAmFBuOUpkw1YzmMLGnToexDoEBUJscuPIqHCiHSKRAuTwvihZBEWiQzAjvylrMlQBKw61BvgnXLQgKPAL2KWgZ2QNKbHkSYdL6PtMBO0M5ZUnqU+49L+A2+9CpGZAz7NFAF5xFPVjhtEaKJrwbyhL2n4CPaljTtCJzSAanreZip29x6J0o573W90NQdmiTlFLSC3UBNIaODvkHmcW8STpooa6bC6dNUAAqi8Q6PWiMfJeM0pcxiAg3AtDti4qIaak75UWlH2lRtRXN3sMUdqDNS1W4yOhKSx/droCh2kECC3DqGh5Vk9yB877iPAj60FVrJ6kRAz1NtuDLvU0EvCf6lVSSpc4EgjavzwYRfZTj4QRuge0U8/VOFowhflDdPS5PVqdVp7ybX7Td9RVpsG4a4Vtd+NTyHjFBrmbc55v5RFEfFS5dIiZNrri018N+IC+iHsAOqgupks7Psd317vhcIIF9je5CNPYfL9IAYa+gKTZrqlkSTzIDTgGsTzzF3y5dtW1oD8ruQ6FI2E7zEINW16tbmQ52PMWssp8vcIYEF7h3YQT8hVlcd2g5KMsln6Vhu6K0KAkLqpE8MUu77t1yY71r1VbZGq5YcoGb4iQBWnB+o3Wo2aLPTqzXXCftOq0LoJglr4jwql8nql15cqlA4cOGXJ9KKdQGxt0dadvrTBJXbfZOgqSi7SyQgt4DtWoRBwqT0LeW/ttSlbMXiXvQqi01t0lCALPiCsCIEzd791TpXWZlACSMUEhvbh7oZyrIehGbcjk1FuVgYwICenvqrdNAuNhwjL2rlwqSE2gk1GMNZVPpdBQeqYG/4Q/xDx/ja1+386YvUAnw/r1NS1j4LfWvHxCt5v7IdBmKgfjkv6oglml6b0BDeyvoK+VusQCc0P+qDtkcFQBDI/At/tsfgZebzAgq5NdTADfdVYHhHR184soNIyRLfXseQwLRm5TgS9PDD8COpTaTCGMWUjzhAyTAopDRxuRgnyOL5rfnQydUcjSKv1RzHom8Cob3XbU8zc78yzx7BUvzNdf4OloKtUwAiVW/f4sQX3A3x73K01bBx6HHnivLaja+vVaMsc3Ho8mIhfuwj7ES/duZDss2ONArn7jpT5t2lpg+U1sWjuvLTBcid192bdsyP048SeaXHzp4nx807NfJvb96l9nth7Wq9Jyd98mtZrUuZ7uP5dtIz7Ykr/JFrme7j+XbTM93D9u2iZr4rrn0TLMJ0DSmH3/ak1xK2tKj08ogQmsKWNDihlH2QvoJQjbqqmrO3OAIJqpyMhz01HcYdxge/nr4P/xrv5pzf+0wfp++dm/gd/yN5iHIDYnAAAASVpQ0NQSUNDIHByb2ZpbGUAAHicnZA9SsRQFIW/jKLiT6VYDAopbAdsHBBs/MFgMTBmIhitMkkGB5MYkgyDO3AnupgpBMEduAEFa8+LFham8cHlfFzuPee9By07CdNyfhfSrCoc99C/9K/sxTdatFlhm/0gLPPe4NSj8Xy+Yhl96Riv5rk/z0IUl6F0psrCvKjAOhB3p1VuWMXGreceix/EdpRmkfhJvBOlkWGz66bJJPzxNLdZjbOLgemrtnA4o0cfmyETxiRUdKSZOid02ZM6FATcUxJKE2L1ppqpuBGVcnI4Enki3aYhr13n9ZUylMdYXibhjlSeJg/zv99rH+f1prU5y4MiqFtzqtZoBO+PsObD+jMsXzdkLf1+W8NMt5755xu/ADwHUI91XR0vAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5QIaCx4AFy0UNAAAAAJiS0dEAP+Hj8y/AACJMElEQVR42uy9eZwU9Z3///HamPidTbKbTPLNTvb3DZslWbLhmzDLxsSQsORHWJYQ4hJcwuLqQuQhRl3QFdTFAwEREU9Qh1NFQVAEAVFAEBAEuQTkPoZmTua+7+mub/dMV3VVd1V19TX96e7n8x+Y7qpPV7+7uj7PrnrV5yMUAAAAANAjKAEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAAB+BAAAAIAfAQAAAOBHAAAAAPgRAAAAAH4EAAAAgB8BAAAA4EcAAAAA+BEAAAAA4EcAAAAA+BEAAAAAfgQAAACAHwEAAADgRwAAAAD4EQAAAECa+lHNoTXzJg7tKwAAoKfIGnrzI8t3FLnp+wCk9KPKTeM5TgEAJIkBS86iSADS+VH+HI5OAABJZeyedjpAAJn8qHwWByYAgKQz8jA9IIA0ftS5sRdHJQAAGZhZQx8IIIcf1T7MEQkAQBIGnaATBJDBj0pv5HgEACAPm+gFAZLvRxcHcDACAJCJdXSDAMn2oxL0CABAMjbTDwIk149qRnAgAgCQjf10hADJ9CP3YxyGAACko28pPSFAEv1oI0chAAAJmdhBVwiQND8q781BCABARoggASTPj2ZyCAIAkJI+1fSFAEnyowscgQAAJOV1+kKAJPkRU9ICAMhK71o6Q4Ck+FGF6Vfyjtc2AQBAz7FmlmkW9H06Q4Ck+NEmk+/j4stUHwCgh2nePij0eHyrh8IAJMOPxod8G4ecpfYAAEmg3uR+mSLKApAEP6oJ1SNOHgEAJIeOp0KOyduoCkAS/OhQyHfxHJUHAEgSrSHn9OdQFIAk+NGa4K/iEgoPAJA0Toec06cmAEnwo3nBX0Wm+wEASCKTgo/KTdQEoOf9aELwjf3UHQAgiWwloA0ggR+NCPoivkbdAQCSSMicBuepCUDP+1G/oC/iJuoOAJBEKoP96AQ1Aeh5Pwr+Im6l7gAASSRk1JUj1AQAPwIAwI/wIwD8CAAA8CMA/AgAAPAjAPwIAADwIwD8CAAA8CMA/AgAAPAjAPwIAADwIwD8CAAA8CMA/AgAAPAjAPwIAADwIwD8CD8CAMCPAPAj/AgAAD8CwI/wIwAA/AgAP8KPAADwIwD8CD8CAMCPAPAj/AgAAD8CwI/wIwAA/AgAP8KPAADwIwDAjwAA8CP8CAA/AgAA/AgAPwIAAPwIAD8CAAD8CAA/AgAA/AgAPwIAAPwIAD8CAAD8CAA/AgAA/AgAPwIAAPwIAD8CAAD8CAA/wo8AAPAjAPwIPwIAwI8A8CP8CAAAPwLAj/AjAAD8CAA/wo8AAPAjAPwIPwIAwI8A8CP8CAAAPwLAj/AjAAD8CADwIwAA/Ag/AsCPAADwI/wIAD8CAAD8CAA/AgAA/AgAPwIAAPwIAD8CAAD8CAA/AgAA/AgAPwIAAPwIAD8CAAD8CAA/ig8drt2rn5p25wQAAAjHLcGH5RupCfQ0d0ybs3Ln+Xb8KJF+1HroqX4CAAAAUoteM/Y04UcJ8qPqN5EjAACAFFWkJWX4UQL8qOmNHHYuAACAlCXr5Vr8KN5+dHAoOxYAAEBK03+HBz+Kpx+1LWOnAgAASHnmNOBH8fOj+knsUQAAAGnAmHL8KF5+VHkL+xMAAEBaMKQQP4pPs3Vj2ZsAAADShMFl+FE8aLmLfQkAACBtuKkWP4oDeexJAAAAacTDnfhRzOxjPwIAAEgrNuJHsdI4mN0IAAAgrci5jB/FyFL2IgAAgDTjMfwoxlv7s9mJAAAA0o1z+FFMMG42AABA+jEdP4opfdTLrKjXz1i8GqDHGR+0Iw6jJCA7IT8xxyRtUxbNl4BFUnwqS2Uoxctv9txeOGeQqSCV4EcxsNukotNOdCgASSB4qIn7KAnITk3wAXRO0rbEJQFFUvQe9TKUwtXWk2/ZfW6OSW++Fj+KgYdC6tl7t4dDHuBHAKnlR41SOEGLDJ9JixSlaOzpt310QEh/Pgo/imE3Ckln9z7DAQ/wI4AU86NWKZxAinnjO4pkKEVNz7/x4tCLbHLMMpKafnQqpJr7ON4BfgSQYn7kLpbBCaql+Eguy1CKimS88zNZwXvjHvwoaj4IbnEmhzvAjwBSzY/KZXACOU5WVMlQipLk5FRC7hZ4BT+KmkWyDpcA+BF+BPiR462QIpstxYRfUmSzL7Ul581XhNxuhR9FzdSgBkeQzQb8CCDF/KiBbLZKsxSlaErW278/aG8cjB9FzbigBhdwtAP8CCC1/IhstkZHoQylqE3a+18btDdmSXHOIzX9aLicgyUAfoQfAX7kkE6y2RpSZLMrk/f+Q4Y0bJPhU0lNP7o+qMGNHO0APwJIKT+SIptdLsWnIUU2uzSJ52z2B++OjTJ8LOnhR+9xtAP8CCCV/KhaBicoliKbXSdDKQrak1gB/Ag/AvwIAD/yIUc2u1WGzyLDs9n4EX4E+BEAfuRHjrk0pMhmt2d4Nhs/wo8APwLAj7rpzNS5NEzI9Gw2foQfAX4EgB91U0Y2W6Uy07PZ+BF+BPgRAH7UhRzZbLcMHwTZbPwIPwL8CAA/8kE2W0OObHZzssuAH+FHgB8BZLwfyZHNlqIHbi+QoRR1Sa8DfoQfAX4EkOl+1EE2W8VTKkMpqpJfCPwIPwL8CCDT/UiKbHaFFJ+CFNnsyxIUAj/CjwA/AshwP5Iim10iRTa7VoZSFLZLUAn8CD8C/Aggs/2oXgYnuCTF9KdNZLNV9uBH+BHgRwCZ7Edy3K9FNluibLaXzvfwI/wI8COADPajDinm0iCbLVM220v5evwIPwL8CCCD/UiKuTTIZkuVzfZF0vAj/AjwI4AM9qMqKbLZHhk+ADmy2R0ylKLBhR/hR4AfAWSwH5HN1iCbreEbLhQ/wo8APwLIWD+SI5vdJEP52y7JUIp6GUrRWYQf4UeAHwFksB/Jkc2ulaH67hKy2Spdw4XiR/gR4EcAmepHUmSzK6WofoUMpSiTohTdw4XiR/gR4EcAGepHUmSzS6XIZtfIUIoiKbLZ/kgafoQfAX4EkJl+VCeDExTIMJeG0ihFDqtFhlK0uPAj/AjwI4AM9iOy2RptUpRCimx2RxF+hB8BfgSQwX7ULkU2W4q5NOTIZldLsReWufAj/AjwI4AM9iMp5tKQI5tdTjZbpdqFH+FHgB8BZLAfSTGXRqkchZcim90pQyl0w4XiR/gR4EcAmedHZLM1yGZr6CNp+BF+BPiRbJya52dDvFveq7b8CXtIhvsRc2lotEpRigYZSmEYLhQ/wo8AP5KNPepGPxnvlteoLb/FHpLZftReQDbbj7uYbLaKYbhQ/Ag/AvwIP4IM8yOPFNlsOebSIJutYRwuFD/Cj8zYN1RlEsds/EgmP9qo7ZrPpp4fndA2fjg7aHL9SIps9mUpil4tQymKZctm40f4kRUfa+9iDMds/EgmP3pHe0MzUs+Pjmobn80OmlQ/qpXBCQqlmEujQYrwUasMpQgeLhQ/wo/wI/wIP8KPMsqPyGZrkM3W6CjEj6T1o2rt3HvyzzTiR/gRfhTJD0/ty9uEHyXTj5q0D8JOPtp6Opt9caDKUcmy2Z1kszUuu/Ajaf2oSlsTPwL8KLX8yNkRFD9KtB81amva+JGnx+fSuKht1hGy2aGUS1GKKhd+hB/hR/gRfoQfZbAfVbgk8COy2ZJls02GC8WP8CP8CD/Cj/CjzPGjJGSzQ/2IbLbk2Wz8CD/Cj/Aj/Ag/yig/SkY2O9SPpMhmt0ihR1JIh+lwofgRfoQf4Uf4EX6UKX7UdkkGP6qXodqdRTLoUY0Ue57pcKH4EX5kRv5qFUYBx4+k8qPj2q65K/X8qFjb+NXsoMnxI3eJSwI/kuN+rTKy2Srmw4XiR/gR4Ecp5Ecxklw/gqT7UYVLAj+SYy4NKbLZJW4ZSlHnwo/wI8CP8CP8KIP9qMYlgR8VSZHNrpcifNQmQymsImn4EX4E+BF+hB9lhB81umTwoxYZSk02W6O9AD/CjwA/wo/wowz2o6TNpWHwIymy2R1ks1U8pS78CD8C/Ag/wo8y14+Sk80O9iOy2RoVUpSi0oUf4UeAH+FH+FEG+1Hy5tLQ+RHZbMmy2TbDheJH+BHgR/gRfpT+flTjksCPjklxdJcim31J6mw2fpQ5ftRYdOzAzq2bVm/YvPPTw+cqE3D7RMPxD199dtbMeUvf+6xKAfxIT0fF2QN7dmxa+86mj3YfOFEU/iATHz+qOfrBsnmPzXnxtTWfFLRF5EfumvzDe3e+v371pm27Dhx11Xp63o+aTn/8Vt68x2bNW/zuvvz26Nqo/GzT0nnTZz+9fMvJ+tTYaRPpR7bZ7CObVzw3Y9qkKdNmL1qz66zzPv7kx5tWLFs4f+krazbvPe3Ej4plKHOzFNnsJhlK0VaAH0nuR435Pg5ra57PD+aibmmX+mDQrDXt5UX5RZdrgg6lNae2vnxP/6BNy5n02qE6200qVF8k9FdYtfpUYGCvqk2T9M2P21iLnqS+HxVru19Yn27Kt9hf2gr2rZxxU/B3bfjTWwvc0frRRfWl7H99Vqy/Xf+S2fdtrXDiR52XP1v31PheQRt8/WNrz1i8XHPXtpzUFj0R8uXN19lVifqYva+UrrvL8Pq9Htlh/329rLYbWKxw1Rh9Ew/sakmBnTYGP+r+IE5oa54M+hRO795t0Que3zxrkOFFs25bfthB/37i3ZmDDesNfGj5xxeCFjq328cubZlDoftHj59R6iiUQY+k6CQ8tpE0/EgGPzoqwtFPt7T2VS7UHRsOLxunPnzTTL84uV3bnhls3eaMgzbfywnqUqdDnvpAfWqZ/4HzT4S03euNJgVS3I/Waqsedrxof10nXHP4jTuyLHe/keuqo/OjbPU5uyDHxcdNXnLSvg5bP2o+ue6h3tbfwaUXzV7pfNgvr9D9ZHlMfWy/zSH72L0mjWS/UGTzfuepi+32a97hu0NaGLC1Q/qdNgY/Ohv+g8g36wM/f7Gf2bJTd9j37vnvTzHduftOX3dMv9yn4Terx8/tXSabrf2McuFH6e5HBYv6GJb2u0l1uFZvPhgHP3JNM2176FkMJcX9qMLxTGedw9Qll+sefT7M7pezvCFBflQzz+IlR2xdauNHu8J9YWYV94AfXbzLqp35dU796Mgtpg3cVSH7TtvjfnT6hRyrpacdsek53xtp8zpTt+bL7EdVMuhRqUeG/a3WhR+luR8VzA5e2qkfCfFEXYx+1LDIqunsvShKavuRMktbt9J+wePagkUR+JEQQ44mxI/2XR9+z4/Kj0TOBneC/ajjTetTbmLAfkd+VPqIZQMu/MjA+4NsFu/7nlW/eWxSmFca/pG8flQngx4VSJHNDjdcKH6U6n7U8Ero8dS5H4mbimPyoyNDrJvOOoSjpLYfBfbLDfYLPq0uN0WJyI+8DXvi7kedbwiRKD/yblBLQv2o7gH7plZ2hvUj95Ze1uvfUCz3TtuzfnRhfpgVFpt3m7tuCPtSr0vrR2SzNdou4Ufp7UdHzAJGEfiRGHw5ej9qX2bbdB/Jj8X4URg6tMtmN9pGSOs0Zfk0Uj8Sa+PtRx1PiUT6kZjenkA/qropXFvzOsL4Ud1DtuuPlTsY2KN+dHZy2DVeMus1N/cSqetHZLM1wg8Xih+ltB8155kuHYkfidHN0frRY/eEafouBnJKaT9SAoeHk3aLbdUu37RF7EdiX3z9qOMZkVg/EosS50fVY8M39myHrR+9PCLM+kvxIz9n7ghKBAwZd+fo4DNDq0M7zY8d6JG8fiRFNrtSip2twoUfpbMfFZunME39qP+0+a+s2bTp7RXP3zvQuPTL0fpRyOX6kEd2YSkp7UdV2rXb52yW8mi3Tr6pWPlR1m1zF725cdO7qxfNCNpp+1fF1Y9WBJ3DnLxgycrFz82+OWI/GjH75TfWbdq4+rUn7gzqD48kyo9aDR32iKV7L5TV1JSe/ug5ww1Wy239KPgid5+Qh6SOIPWgH13Q3+E3ZMH2E/770g69+1C2TppCBgU4qT9+Zt21cP3H+w4c2L1l5TO3pIIfkc0O7Gsu/Cgl/Khip48N2pof7Qxmt5kfvdFHOPKjfnO2nqzW7ZGe8gMz9YtfjNmP+j+/t6DZ+9u9vvTQQr0ljZT/hmL8yA5t5IYcm+F38rWXKDX1o4lvHizWn1hqPrtmgG67XoynH+3Tv+Nha13aDthW8vHcPg796MZFe/L1l6E6Crbp/Wq04QpbTdcXdIv27OaQL+9OtzM/8ujTMA+e1J18bdkzSvfUXmd+NGzZoVJv2dtqC/c8oc8oPpWmflTdVevN2ppbtPpvXO3nor7ve1J30XGz8czS588ECnbT+aA+8zHdTbqrThruhdv8RL8QPzrZ9cpvauusD90/ejCqLEc2u12GXa3RhR+lhh/5zV5b0/6ylPkdF73HTrrn1iGhfvTgVpeZpJToxod5PEY/une//gvesFL31GEFUtmPjmlrb7NeSLtl/iElxI+GvXHU7Ndx64c6jb4cPz+q0p1pGbAj+DDcdnh6WD/qO3+v2U3w7mOjA6vuDn3e6fjZdn6kO9MwMPjehvY1gR67b6UDP3rqpP5Ou3KdDAiZb/JPxPjZDaZdX2B0r5zXQ+9r2xU4yr5ifGZv4NTS4guhQ01umhLkR8HjZyf10hLZ7MAhyIUfZYgfXf/yoXL/0bC15PCGF1pVP7pnm+UYfJ53A+tXx+JHdx4PPll6ODs1fqviR2Hp1NIs4yxPiTdrqhPUqT8/aPk5y125JJCTWRM3P/LorP/hGrOXLX/Mzo96PXu41WqDmwK558kJ8aOGwK0W402uOX4eMMpZnnB+NLswuDLvBJ58P7P8qMX8Dn3NpK83HVb7M+3O3P7GaUO0XSxrs3mfenButqx+1F4ggx7VybCjhc9m40fp4Ufj9lgc0zuqbdsJ3Hy2PXo/uvmQyTwRWwM/zVrxlFT2IyVw0feC1SLaD+pBQedrqm2vrhZqqZ6RcfOjY7qxFC1e3G787MZm29/et9qcgYmDHy0PfKlMAylnAzGoY/Z+9OB5k9Wft9O7NPajjiLTnk+z3d77zLvGfVq5lxumC9EeXmTZq372aIgfVUvhR6Vks7UfSi78KBP8aOiuaDM+LcO1e4aj9aOs1aaXzjsDM18xinZq+1G1dllnidUiU23OA9nxrk2XEZ0fuScGrhlbfSuczU9rymmbe+5i96NqrePtZzGw0yfaa9ztsfGjfrtMT/XVauefsiS+xT/+flRm2vFpO1jWB1Z9o+arI/WPbtd++p206Ve3DzP6UblbBj+qlCKbLcd+5sKPMsCPeq+PYdJJLco4MEo/GnMu3CkFsRlPSWk/UrTgSl+Lkyul2guUR9ZyQ2/rlFp0fhSY4fkmSwWIwY8UbVq01xLgRyvt4k3dPKstctzajx60ihe9mgo/WuLuR9XmHd/kMCNA+s4Uabf67zazpjtsO9Yzn+n/KnHL4EdSZLMLUyabjR+lvB9NLIllg8uCb3iL0I8etHSzBq3lPDwltf0oMHXIHvMF3lafnxFp009YB2Ki86MHHBhALH70oTbyV/z9qF3rje9yWx4helnm+jQ/etVy7VPaJu7IHD+qN+/39ms3+Z2z7hwXa6dOdQ9qhZ4VgRS0KRL4UZMU2exmGfayVhd+lAF+tDy2G0M9/dWGiqPyo2XWTd8cW6cM0vhR543q+veYPt8xxHxYIAe8Z70jReVHxdpbfVpJiB9pQx3dFH8/+kxr4Kj12trJi+xaKz/arYT/0bIyY/yoxaLf00ZS2GjTOWppttvM7u6f4dwJvLtE8v2IbHbgmFaMH2WAH+2JdYu1SRbPx9uPFmqD3OEpqe1HAYsRptPFaJ3IsIhzcPutB5+Myo+0M1miMDF+VGU2XGuc/Gi+k6lcAgb4ceR+FPjR8kKm+JFFNtuVrx6rh1y06x1HqjaqGwJphtr87Y6dwHcjZdL9yCNFNrtKip2s3IUfZYAfFca6xY9Yzx4Rox9pd7BleRRIaT8KJLTfNHtayye9G3HLmlrNjo8faf3/g0pi/ChwBsYTbz/q1C6vrbZb/XarM2RO/Og5beiDTPEjq7k0tIHS82x7R20mP90tbtr0NdmnHPaxXXmwpPuRFNnsy1LsY9Uu/Ag/csAM6/uFY/Sj/WZzK0Aq+lGg6x1o8lnWqPaUFflPQy3a9Ehc/KjU8uRKvPyoyXqvjtWPXM7C09pwC/06IvejFfZXStPPjyzn0lhoIj4maPvKhsBjS0T4+/tdxmy2DH5UK0U2W4rpFBpc+BF+ZH2itbH8wvEDOzetXvrs4IT50enQUWwhRf3ohLAY/9GHdg/kE06ba68uOHV4z9a1y1+8L75+tMduvNMY/Kizvvjs0X3bN6xcNDtxfrRTOy1hO2LYWauLnU786H3t0lBm+FG9ZbenHt165dv2jltCJgtxuQLzl2RvdtLDXurOiCbZj8hma7S68CP8KJS2ks+3rXjh/tE5JpOTxN2PimxujYPU8qPOUda3bXlutrzjPHjJ6vN71y6aOfF6k90vPn70ija8ohIXP2p0Hdr06pOTh4WZcTY+fvSKs3M7gZc5ELkfaeMnjc8IP7K+jHJBvQ9wgn3v+LE22GjgsRO6qWsXnXM8l0Zy/ajtkgx6VC/DDtZZhB/hR8EHjcMr782xmUA67n5Ujh+ljR8pm6yP7eedpIqVzosfPDXYZveLjx/dpT6+NHY/KtuVN9ZuxvW4+9G9jjZeUUZZDMbpxI8OZZYfWcuLdvX/8bO2aHvh42YjJ/muOL92NEwHq95nmFQ/8pTIoEdyZLPLXPgRfqSn4aMHsoQ9cfejKvwoffyoRjOS9cFPLQq/s7tPLxwYZveLix95ejmYSteRHxW/NSbMBsffjwY6HFB1pnZKI3I/OppZfnTastfbLCLkEeuVJy7bddbBXBpJ9aMKstkq1S78CD/SH+xfzAn//Y+7H9XhR+njR8ozVmeJmvuolxpqLFZt3XqTg+4nHn5UrzX3eSx+5P7sPgcdZrz9qE1Yz8tmYKm63P2R+9FJ/Kib1ZH60VT92AC3hTw99qk1e8+bzqXhkcGPamTQo9TLZuNH6e9HVfMdff/j7keN+FEa+ZHWsYoTFhpjMSCje8dQRz/P4+FHReFn0nXgR6fudPSFibcfVTkZHdLHm+pyoyL3o9P4UTd5kfrRvfq1D5j+4My+7dm1n14wvk5BYDdJoh81yqBHrhYZ9q4WF36EHwU4cIPAj/CjWP3IPVpt41njE/eoj58y36Mfcnj5Ih5+dMZ+HEtHftT6msMOM95+VCKsv28GtAN2f/woaj96KiY/cm3Mtlqu76Nrj4dms5PrR21S6JEU2eyOIvwIPwp8J5fbfOWHTHz0+eH4EX7kBC1zkW2YH0Abznm06aRf+QOsd79+Y6fMeSSufnTcWQ9k50d1d1tvcK9Rk2Y9mzA/KtBWv2j/SWhTwGXhR1H70azY/Mj1vk1kIXvGx8HZ7KT6kVuKbHa1FDtXmQs/wo+0b0botbXrJz+7attnZwurmrsujM/Aj/AjJ9RqTvKh/uFVtqHiU32Cd7+csTOXvbf3xMWy+g6D0cTFj45oL9MQpR9V3xzyhbnxwZfX7j52vqSmaxSbxI0Pma+tHmbG6d3agh34UbR+9HCMfuQ6bHsVdsphYzY7qX4kRTa7TIp9q9qFH+FHGm8bf9dMf/dYsMXjR/iRM7SpKcbpZtZoV/fEHLNZJy8bvw9jl+0JjmjG148OOBuS1NqP2oxnjwbO//B8UEuJ86MLTv1oD34Uux89qC7Se6AzHgmZwG3NSBtB6rXakM1Oph9Jkc0ukiKbXe/Cj/AjjWP6bbntE7MPFj/Cj5xx2iz8fMTiXvNueRqne+neKwpN5uGLrx99pr1aXXR+tEhfrLmnTI7pTTJdX/PgR9H60WMm4z5GSv4H92VbG9IL+QXGXSRJfkQ2W6PFhR/hR4H+aXRgSwbvN82H4Ef4kUPc2miJiwMPPm43ZZh+mJg8c2OJrx8Ffg9UROVHF/VXSMy/Wonzo8jz2f0U/ChaP5qjLjIvpm7/1PpHLe9/eTHo1GNy/KhVCj1qkGHHijybjR+lsx9tD2zINKubB/Aj/Mgh2lRUfbQDf7U66uitJueGmvoHbuqxumU9vn50ytklKks/0t1rt9b850QC/Sjw3T9i/zlo9/ePxI+i9iMtZz8j5r7/yHsvjDc9j3RUAj9yF5PNVrnswo/wowATtdYeb1fwI/woNj+qywnpgDfZjVe9V3vZPheVHvGjS84uUVn5UUWgUNut1k2cHwXGh9xn/zlo08dPxY9MaXDgR69qg1/HRQDO7X3nmXHBkjSsLfl+VE42W+tcXfhR2vhRR+x+VBoIxlrHVfEj/Mgp2s2Qk9UjvnoBt1eD3a5lMyB0fP2oUnvFw9H4UeB6oPUMaI78qCEaP1IGODxqaOu/gB+ZEkhynbLs9d5VF7khfhpwdvtCY2R7l4UfVfRcLaXIZnfKsFvVu/Cj9PGjttj96GMnExbgR/iRUwLDLxZ1P3BWSxeZLN2hTYY22dNDftTi7Itn5UdamKpPXWx+VBOVH2mznr5s/zEMs9h8/KibWt1Y75a93o7AVbC4usDeJ3RnkW638KPSniplgwx6JEc2u9mFH6WRHzXF7kfa0JD9OvAj/Ch2P/JogwOt7H7gJbvpPAKnL/cqPeRHijaVyUvR+NEgB4LiyI8qo/KjZdqdpva/g61+9uBH3Z+Q66QD9zmhLfN+nG1g/1hhfhulO/jnRcIhmx34tVaIH6WTH9XF7kfaEB9zFfwIP4rdj5StajsDuk5vNvb2/znB7ATRESeXE+LsR9PVx++Mwo/qnASAHPnR5aj8aIezI/AJq24WP/LRXqDzo8PW3Z42ccDsePvAieHmSfuAH7l6ppCdZLM1Lrvwo9T3o2ptzerY/Wi8utBq/Ag/iocf1WsJ7UO+P3epf+00W3iPk3sN4uxHb2hDA9VH7kdlTma3deRHxVH50UVnE9RqM8/37cCPQs9xlrpcgdsYD1h3ezO1Mp6LtxFsFKa3LXjUmz3F+Z4ppBTZ7HIp9qkqF36UBn4UcIry2P1oqO3UD/gRfhQxC9SGpvv+Ugeb7mP6AWvDGA5UesyPAgNofxq5HxU4yYfY+FHg/MClqPyoQzt6LLITgNFWp4XxIy+V3h4tMBL5Putub4O20Jp4K8F5LXm31rBtNzgc4CpOVMugR8VSZLPrXPhROvhRh8MInyM/6qsutBE/wo/i4kfn9NfMCu3v9tJ+RfftOT8K3KH/XOR+dF44+FbZ+FHg238hKj9StDF5+tlMjxLYyp34UQi1XV2a5ie7rbu9k9o+dOOFODtB4b1q08sNG6cFk473RBnlyGa3yrBHNbvwo7TwI0Wbz/NM7H40WF3odfwIP4qLH3luVVtarygr7eMUW5zcixlnP/KM0m5Ba4zYj1xOBrC286PRjkYXsPajQ1rbO6zXfkG7hFiNH4V8Ot1d2hAn2espWvvL4+wEzU+aJxsmO/iA4kaLFHokhUu0F+JHaeJHI+wG3IvQj7TZr6bZLPQIfoQfOWeb2tKIzjZ1vJ67zBfd4+R0zLH4+lEgnCM2Wb/oKnM/uhx+dEj92IOhfnSX+tS66PyoTTt8DLf82V2kvf4TCn4UXMBL3V3aGHXNJTb93tbA1ID7w/eS+nNMB+0XrVfuV1v+wLB5081PKyWEziIZ9KhGih3qsgs/ShM/mqqu+XTsfqT9ism2PF3fot1TjB/hRw5o0C5dnNDOduwJ0xWLLdZ6NDTOfhS4+tTf6g7Qzg9yzP2oVVt3luUGl0628aO56lMPRudHgRE5goIrAdwPWX9hM96P3CXBp4butptd9kbtBW46FaaPvLh8pu6vXi/YRbqrdCNUGYP2i8zHRUoIZWSzVSpd+FG6+NEyy7PnkfvRurDv64JuqA78CD9ywMtqU8+o3Xy/lnDd3BiL8beaFwe2LE5+FLgAKJ4yH5Wy4oHAi75lccI12+IGffe23sLGj9Y4u4HN2o8qtfeVZXGL0weBsQfd+FHwR6t2aQuc3MCmu81M3Hbatos8cLdhmrZeYvRHdnNpuCzuQg6Mz57wG9jkyGa7Zdid6lz4Udr40S6rY3cUfhQYBuQG0/OcDSuyBH6EH0WEdoImO+zFAm00SfMbKD2HbxJx9yPdIEJijcmLtm7tJyz9KHD6Zrbpkb1gmr6WoX50WHtucXR+FPh5JAaZzln1WZbNDCqZ7kc1JvemPWV3UmhC4CXGfGa93NGns0WQHwnxqMUKRR26iFjQlefAuAPzElxCstmBH2Eu/Ch9/Cgw6HCOK1Y/atfuJxUTQz/T1k39DZuKH+FHDvCMD/7SWO6Ca7VFsg6FPnvuXkMr8fKjliGBNpcHn7dq3znM8KJvWfVfYnnoyaeKBcb3HepHtYEnT0XnR3UDApObmtR1f06gXh78KOh4ozOawJ73kU3Pty9QTtH3HasJQ+Z07WzBfiSynzhkMZfGDov515SWbGfzA8YM2ezAV74AP0ojPwpM4SCGGgWp+tNI/SgwWp4QI4NuKa3fNjxoU/Ej/MgJ2x03Gcg7i6wVxotw7lOzg5qJlx/pTyCJiSf0FlH74aigFw3yo07d8zOCBv0uXp4jwvmRcl/gjO1Zozl96nbkR7pQu+izI+gkVstrgSd7m5xeymw/atP3aeMCMbSdhs7u83UXdX+t1L/KuC35oYMArJmo7g/BfuRlyub80Gx2x6qA4gZfeQ7s9H2Mh9v6A21xLGAH2WytPy114Udp5EfKe4GVs9+45P8B3HZpyz2iX8R+VKmbKlHcsa3If0RvK971VPDBHj/Cj5zR2NvYpM1cHM/qFuv/yil/YNpT8/nKUSG7X9z8qGOivtlb1p+t8WpGR/WZ96dlhbzoWzZulT33cIVfUBrPb5gUsq6ZH+3SGeGSfP8C7YXbHzAsbedHnqd1r3DnEd0JsKaPhlrODI8fBbLZXbyp+yDm7vbfe3Z+7wrvvmFQmhmG1xm6cNd53R1rn6yYEjiAmvmRENc/udWQXKqu3jLC5qtxUPdiL57zK1FH8c5HskR9HAsoRTa7Qop9qdKFH6WVH9X30a/f++b7Zs97eFzXkT1yP1LeMm5N9i2Tpz9672hhCn6EHzlioaHFG2xCBuVBKjXk9mkzp93Wx3T3i5sfKYUh7t/H/CVD/ahjgvH5fhPunzntzkHmK5v4UYth0Zyx986a9+iEnOCl7fxIaR6nb2LQy7vPltZUl5za9qShlqYDbGe0Hxnn0jhjyA7kjLhtyrS7R3fvNAY/ujAl6KWyx814+ZXVK5cteHSscTcy9yMfN89bsXn3/gP7d3/45ou36594PuQSaIfhd0H2mMkz502f2N1aHP1Iimx2iRTZ7FoXfpRefqS8a3Esj8aPWseLMIwegx/hRxFxwdDiSrtFt4bb/bIejL8fBcZosiD7Zst7IC7mhNviaXZ+FHLx0dSmbP1IqRwpwvJEO34UtE5Qp/a6Ze2Ml8TOPSCcYe1HVkw2GVVln+XS8fOjehn06FKbDHtSkws/Sjc/ap8QPz9SSq+3/w6/3Mz42fhRZHgMO2iJ7aLP2e9+o84dT4AfKa/YvuigM2us7xHdYb/BfXY22vpR55SY/UgpvzFczzvbVI8y2Y8aQwY3us2ZH7nyn0+QH93dYPaFmJVwP2qWQY/kyGa3FeBHaedHSsXg+PmRcqGvzVd4wCHmF8GPIkbvEA+Gkf2Zdl3Ii01KQvyoc5HNiz5crdj4kbLeboMnXbadX8R3Qn9kzH6k1Nxn3/MutxhOKnP9qDW0V/t8iDM/crneH5AIP3rSfFSwxnEJ9qOOQhn0qFaG/SgO2Wz8SD4/UkpHxs+PlEvDLL/Cz/j2YvwIP4r0rLUuznMw3NnQBZa73wjfHpcQP1I8a6xetO9Wt2LrR8q2LKt1e3/QoYTzI6VqXMx+pLS/btPxXr/XqtYZ60fuYpNu7chIh37kOjEnK5zt3PXuWd0K++eFM6Q+OzwW21p3V2L96LIMeiRHNrvChR+lox8pDU/Hz4+UmukWl8dPdj2NH+FHkRIY9npQe9gfcdvN+5L+67viGYnxI0U5YX76YEHXgMa2fqScGWEelcrrOuqH8yOlOS9mP1KU/Duset7nrX+aZ6wflZv2a6dnOvQjl+vAY9k2sjN80eHgFU69PtouVbfIZvKDtuWJ9KMqKbLZHhl2o1oXfpSefuQ9jE0L/QbdFp0fKe59w0O/wU+d8u/D+BF+FCn5WntvO1i67MnQfXnMVv9BJlF+pDS/HeJlWc/5p/2w9yOlaVVoSvv6N/2vFNaPFOWCScc8qiMiP1LcRyebdbzP2X3fM9WPLO/X2nVPaAmH5psuevy1MeauM+5Vi8lrD74y1nyNYWuq7Le3YG7o+arh8TlGks0OfItd+FHa+pGilG6ert2jmjPuhfeOGX43uvL9OBrCvf3Th/Ub1euJXYHfNyVqS6GfeqH6VOiNGNXqUzYzEHaqy+R3Iipp5UfKRfWTdXZUL3p1oKHLefu8dvNvk9pSaM67Tn2q1GYDbA7FDR/eaThfukXb6avUta06stqNNxvGJVhytDV0r7b5kVyxbZY2dn3WLc9sOGI4n6B95ezPGZS8e7fhs+v16I462xUuq+3aLNasLlMo704boR/ZzaVx+I17tflkskc+vPT9YzbTiKyZM9YgLjneT+6YXc95eO2To40nnno/vP68gxvbq3bMCYwEMWbeu4er4lM5ObLZUvwcbruEH6WzH/l+Q9aXu06dyC+sj8NQEg3HNy2e99DcF19dd7CkXQH8qEfpKNi58tmZM55dvGrHufqee9naox8se/qx2S8s334i0oNa2afvzJ/zyLxFb3xwoiqaywWehvJLp05cKKyN5cdB05ndby+cN33WvCXr913MmK9tZH7UGqZ7u3jy8Cfbtn6893i+g77w3OEdG1avXLbs9dWbdh52soLrwsGPNqxYtvi1dzZtO3C6yvmR2tNYUXD6xIWCmjj+eCSbHeg7S1z4UZr7EUCa+BFAYvyos1gGJ6iWonBSZLMrpShFhQs/wo8A8CPIYD8ql8EJyqWomxTZ7FIpstk1LvwIPwLAjyCD/UiKuTSKpQhY1slQigIprgI3uvAj/AgAP4IM9qMGKQLJrTJUjWy2RpsLP8KPAPAjyGA/amEuDZX2AhlKUSdDKeKYzcaP8CPAjwBSz486i2RwghopilYqQynkyGbHOZKGH+FHgB8BpJYflZHNVqmUIpstx+7jwo/wIwD8CDLYj6TIZpe4ZSgZ2WyNRhd+hB8B4EeQwX4kxVwacmSzm6QoRbMMpWh14Uf4EQB+BBnsR2SzNchma7iL8SP8CAA/ggz2ow6y2SoeKbLZVVLsOwkYLhQ/wo8APwJIHT+SIptdIUW9pMhmX5aiFImIpOFH+BHgRwAp40dkszVqZShFYYcMpUjIcKH4EX4E+BFAqviRFNnsS20yVItstkarCz/CjwDwI8hgP2IuDY02KbLZ9TKUorMYP8KPAPAjyGA/6iiUwQlqZaiVp0SGUsiRzU5QJA0/wo8APwJIDT+6TDZbpYJstkqiImn4EX4E+BFASvhRlRRzaXhkKBXZbI0GF36EHwHgR5DBfiTHXBpSZLMbZSiFHNnsxA0Xih/hR4AfAaSAH5HN1mi7RDbbT2cRfoQfAeBHkMF+RDZbwy1FNrtain0mgcOF4kf4EeBHAPL7kRTZ7Eop6iRFNrtMilIkcrhQ/Ag/AvwIQHo/IpsdKJMMpSiSIpud0OFC8SP8CPAjANn9SI5sdrsMVZIjm90iQylaXPgRfgSAH0EG+xHZbI1WKUohRTa7owg/wo8A8CPIYD9ql2IujToZakQ2O0CZCz/CjwDwI8hgPyolm61STjZbJdGRNPwIPwL8CEBqP6qUIpstR4mkyGZ3ylCKehd+hB8B4EeQwX4kRTa7kGy2XNnsxEfS8CP8CPAjAIn9qIm5NFTkyGY3yFCKHhguFD/CjwA/ApDXj8hma3QWk81W6YHhQvEj/AjwIwBp/cgjRTa7Sor6SJHNLpeiFD0xXCh+hB8BfgQgrR9Jkc2+LEV5qmUoRbEU2eweiaThR/gR4EcAsvpRrRTZbCnm0miQInzUKkMpema4UPwIPwL8CEBSPyKbrUE2W6MHstn4EX4E+BGAvH70+CXm0vDTWSRDKTImm40f4UeAHwHI60fTyGarlMlQiszJZuNH+BHgRwDy+tH9ZLP9yJHNdstQih4bLhQ/wo8APwLAj8hmk83Gj/AjwI8A8KPUmUujRQo9kkIPenC4UPwIPwL8CAA/kjib3SFFNrtGhlL05HCh+BF+BPgRAH4k8f1aUmSzK6QoRU8OF4of4UeAHwHgR2aUSVEWKbLZJZmVzcaP8CPAjwDwIwuKpMhm10sRPmqToRQ9O1wofoQfAX4EgB+RzSabjR/hR4AfAeBHqTGXBtlslZ7MZuNH+BHgRwD4EXNpkM3Gj/AjwI8A8KNUyWZXyaBHJR4ZSlHrwo/wIwD8CPCj5PpRUacMFZEim30pA7PZ+BF+BPgRAH4kaza7WQY9cjXJUIq2S/gRfgSAHwF+lGQ/kiObXSiDHtXKUApPiQs/wo8A8CPAj5LrR2SzNSqlKEWFCz/CjwDwI8CPkutH5VKUQ4psdqkU2ewaF36EHwHgR4AfJdePiqXIZtfJoEcF7TKUotGFH6WfH7VeOrhp9SuLAXqK5W9t+ay4Az8C/Ch6WmUoBtlsjTYXfpRuflT23rQcAdDz9Jm9vQY/AvwohbPZ7WSzVdwl+FG6+dGNdNOQPLKG40eAH6XsXBpkswNUuPCjdPMjAJnAjwA/Sp1sdqUMepTB2Wz8CD8C/AgAP9Jns90yVIJstkajCz/CjwDwI8CPkuxHZLM1mmUoRasLP8KPAPAjwI+S7EdSdIHtBTLoUZ0MpXAX40f4EQB+BPhRkv1Iimy2p1QGPaqSYpcod+FH+BEAfgT4UXL9qEKKMkiRzb4sxx7hwo/wIwD8CPCj5PpRiRTZ7FoZ9KiwQ4ZSNLjwI/wIAD8C/Ci5fnSpTYYiNJHNVml14Uf4EQB+BJBkPyKbLVc2u7MYP8KPAPAjgCT7kRRzaZDNDlDuwo/wIwD8CCC5fkQ2W7JsdrULP8KPAPAjgOT6UYkUc2mQzdZocOFH+BEAfgSQXD8imy1ZNrvFhR9lgB99sVe/XLDnz4Jq9peUJEp+9H+uwY8AP4qYJhnef9slGfSoXoZSdBbhR2nvR1++75Cbo15Y/r+gst1CSaKmfecfv4AfAX6UetlsdwnZbJUyF36U7n70h0oOefhRj3Phl/gR4EcRIMeBukIGPSqTohTVMpRiE36USD+azgEPP0oGHbfgR4AfOaZUimx2jQxOUCRFNrteihzWHvwobn7UN6RH+hPHO/woOXQOCdkb76YqgB+ZUtAuw5tvlMIJWmQoRYsUpWjcjx/FzY96B7f43RaOd/hRkij58+Dd8VaKAviRxNlsKZxAimx2R5EMpahR8KP4+VGv4BZf4XCHHyWNB4J3x1HUBPAjaefSkCObXS3FbiBDNts3XCh+FD8/yg5q8LomDnf4UdI4E7yDD6EmgB9Jm80ul8EJyGYHhgt140fx9KOsoAZ/xdEOP0oi3w6q6UBKAviRSTZbjncuRTa7U4ZSSJHN7houFD9KnB/dztEOP0oivwqq6fWUBPAjstmyZ7Ob5chmK/hRXP0ouMH/5miHHyWR3wXVtB8lAfxIzrk0WqVwggYZStFRKEMpuocLxY8S50dTONrhR0nkX/EjwI9SI5tdTDZb5bIk2Wz8CD/Cj/AjgMz1Iznm0iCbrVElRTbbgx/hR/gRfgSQwX50WYp3LcX9WsVks7VIWpuCH+FH+BF+BJC5flQoxVwaDVKEj1plKIUc2WxtZB78CD/Cj/AjgEz0I7LZZLOtstn4EX6EH+FHABnqR1LMpdFJNltDimy2brhQ/Ag/wo/wI4DM8yOy2RrlUpRCimx2qQc/wo/wI/wIIIP9iGy2ZNnsOimy2frhQvEj/Ag/wo8AMs2PyGaTzbbLZuNH+BF+hB8BZKIfSZHNbpFnLo1k014gQymMw4XiR/gRfoQfAWSYH8mRzS6SwQlqpPjoSyXLZuNH+BF+hB8BZJ4fyXG/VhnZbJVKKbLZCn6EH+FH+BFABvuRHHNpSJHNLnHLUAr5stn4EX6EH+FHAJnmR0VSZLOlmEvD1SZDKZqkKEVIJA0/wo/wI/wIIJP8qEWG90o2W0PGbDZ+hB/hR/gRQIb5kRTZ7A6y2SoeKbLZJsOF4kf4EX6EHwFkjh+RzdaokKIUUmSzzYYLxY/wI/wIPwLIGD8imy1ZNrtWhlKYDheKH+FH+BF+BJApflQkxVwaUmSzL5HNth8uFD/Cj/Aj/AggU/xIimy2hHNpJIs2KbLZ5pE0/Ag/wo/wI4AM8aMGGd5mR6EMTlArQyk8JZJms/Ej/Ag/wo8AMseP5MhmXyabrVIhazYbP8KP8CP8CCBj/EiOuTSqpJhLwyNDKeTNZuNH+BF+hB8BZIofFUuRzZZjLg0pstmN8maz8SP8CD/CjwAyxY9aZXiPZLM12i7Jm83Gj9LRj85Mnbqg6z9VU6dOx48CdE6dOrV7+sE5U6cW98B7+mzq1GXWz+6bOnUFfgTQg35ENluubLZbimy2TSQNP0o3P3pfiJ92/eeCEH/Zg69bPWHChAMy+1G7t9nu30zfEeKzHqjIG0IM6/rPLm9pQm4qflmI0c7aOeRdvRI/AvyIbHa8qJSiFFJks+2GC8WP8CMrXpowYbfzpQu97/hN/MjMj/K8r1wfkR+dmzAhcO7vLe/qF/EjwI/IZqdVNrtGhlIUdeBH+FF0/esS/CgpfvSxED/EjwA/iqMfFUsxl4Yc2ex2GUohRzbbdrhQ/Ag/io8f1U6dOvUofmTmR596S9MavR8d865eHd3nhx8BfkQ2W8psdqsUpahX8CP8KPF+FBtp7UemOPejGD4//Ajwo26k6NnapZhLo06GUkifzcaP8CP8CD8CSH8/qpHi7ZWSzVYplz2bjR9J50f7H/qXf8j91cSlRd1/rs/LcyntK37/971/OadrghjXzIHf6/3rF7QzxQVr/ufWf+mfO+A/FxTb+1HVS//6f3v98DfPqUeJmry85T6H37/ilffMB8fakPdjIf4jz8cH3j935uX5rp5VvbfkTe+/9TueuuPGn+f+5F8f2qut8FpeXvc9o2vy8oqUznfG/qhX7p+OxcmPCuaN/GnugJuf9l/BO5iXt8d3X1hur5/efdr3QP2i3/6g188eLNUOs1tmTxjxs9yfjpp51N6POt7+z5/0+v4vHz6rPrA8L89XpDNrF681HwTgeF7e64G/Orz18f0GyV91/38M/YfcgX9cWB7iR+V5eYFk1pn/+fl3/+ZXjxUG/KjgnWm3DvvH3AG3zvd/7K68+4T4q67S53l/6tXl5b0SePVpv/j+3/70vz7WHlibl1eouNfd/KNe/SYexY8AP5I3m10pRTZbjg9aimx2uOFC8SOJ/OjCL9VVr/hVl+P/Qoj1W7/X/VDOZ0rDPX/W/f++/m97Y+DF/uyBThs/eu6r/sW+6h9z56QQ31Jan/6W77EjphvzT4G2f+v9849CzFVOjbzG++evFGVk4MlfXvSvkC1Et2TkCvHh5j7dz175TDz8qHHiVeoT3//E98CjQvxX/pDuR77wquJZ+I3u/395j3+Nn+q2vtzGj7b5qyuuvtdfP29JTirr+/kem2e6qWevEOK49tc6Ib7j9jpO4PW+NMsT5EcHhPhbVdImX9291FW9VD9q1X2IU7o2Yr2uEOe6Psi/8K/e9Mcr/Y8PU2cM+okQm7f+wF/tufgR4EehlJDN1ubSIJvtLJuNH8nlR+e/6V3pm//Q92u+lc/4/eif1A5RfGf/32lN/0bvR9nZPmsRt1n6kec279N/NeIPQ/7ca16vaH501O8wTv3oyce7+3bVj76Uc12XuJWH+tGvrtBM7/3Y/ajtFz71+WH/HN8zL/r9KPcr6rJXb79RW+9/1+j8KOtbX/T98/fNln70mrdyWb/+w4i/8j73H5of7fa3Z+5Hyq+EmKz98VshHldUP/rm17sqNNXSj9qH+Z6/9svd7ev9yP8hjrP1o4YbfO/qH3/2de8/3y3Q/ChQbbERPwL8KAQp5tJoknsujZ5Ejmx2+OFC8SN5/GiIED/znR3xHJn2Dc2PhOi7rKAp/xGvJl0hrvjdprKGw77eu7t/b/zSbxee9O7vnmOjvU/vtfKjOd7u9x3fSY3GqUJcV+D3oy9c65WmYaOGffdz0605c9BrSA8f9HG+24+8vfpV//ivv79hlNeP+j28x6dF5c95FelPoX7klZL555uKX/6qEP1j9yPv9v/v1b4jXMGCH2p+JMTXZ51sKnvta77CiB8tvdSY/7C3SE91r3LDzx7f77vsVfSYVztmWfnR3mvE1Y/7jheeN7zvY7XqR943mjVo1IgfLzDf1lVCfE29wllytbjGd766IGvksjPeXyOdB73CdNUpKz960PfWjnoPD8cfDZw/+tLwl0/4PsTP/937rG/EqdqDi73+01X6g616Pxrn3bCF3kfc67xC9/NO1Y+E+MEL55qKF/6lED/GjwA/Ipstdza7szgFstn4kVR+VHyFuLbK///mhy75/ehLT3YPX3Wnt8HvdV896ugjRPfogZ7Ab4GhQtxj4Ueua8RXTytaDzvF70dCXL/V9qyzIZ/9R995j/vURE7g/tAVXvdyh/jRV5Z2P7bOu1ZhzH7kfb/r1f+/sc7vR1fcUtH1wFrv0n++pPvlJgrxi+ANfEqI/2vhRx5vw28o2smeXNWPRM5iux9Zbd53usr//yeEGNX1mWg/UN0/FWKmhR+dv0qIJ/3Lafkj3Yc4XIi7u/5jyGdrfvSpEFd+1P3YOa/Dvar60ZcXdb/9jcaBkvAjwI+kyWZ7pMhmV0nxKUuRzXYSScOPpPEjb5/4zaCHfhHoiD8S4otqp/8/Qvw+eO2VQgy18KNJQjyv62u/7/ejq+eFGUM12I/+/qTJQh1fFKIixI/UyzyevzBe8onOj76gD/wofj+6Td2Aa4XY4v//9kBSJ/BVFOILFn60QYgR2tGrlxBFfj/6d/sxMZSpQvzav1ZvIT4MenaBtwELP/qTEP/kCfYjHW8JMdjGj24W4j/VB59Ufc7rR++q78H7EazDjwA/MlAhxTuTIpt9WYpSVMtQiuJOB1uKH0njR2e8q+wP8SP1xInL+6w6EPpibzdrXLDR5e1uf2LhR98RfxY4qZojrqhT/PlsJTI/mmtyyrjk828IcTrEjzRnuF6IV2L2o293Z3yMfvRf6v+/K8QHgSJdYdzrW4uPXilEg7kfjdfL2y1CrPX70ckwG3v+SnGlq+t/u7zmY7TM+vwnVVMN9aMcnb+E+lGja7EqPeZ+5C31R+qDl68QV5T5/Wiz+uDPhViMHwF+ZMhmSzGXRq0U2ewOGUrRIEX4yNFwofiRNH7U/k0hvjz9tIUfVWm9u6KsFuJn6iIlL47vn3Nt1+v1N/ejIiG+uVrjO12R39j9qHX9vb/+7p93v9GT1n70z0K8HLMf/ZsQV477uNPCj35sLJJ6tapp1d2DvpPV3VqduR99T4gFWmF+699SB36kDBbika7/3KqryqXnbsn91he6Xm+IuR95P5Er6838qPSlP/6j/0P8sbUfXfSuHvh6et/EhmA/+o0Q8/EjwI90XCKbLVc2uyVFstn4kVz57EXdNzL9y8MftIf6UavOj97T/OjiyCsDr2fhR/uCt+tQ7H7UNucrugZt/OimePjRqS51uO7nk1fWmPjRz41F6j4END5wna41Cz/6X0EvOtepH70lxF/7Ij9114kv+E/enx4auInMyo92CJGjhPrRpVFXBVa18aO93p0jsA3/JMTCYD8agx8BfiThXBptl+SfS6OH6CxKkWw2fiTZ+Efz/fd9i6892hHsR206P9qk+tEh3wrX9Rszff7KuZZ+9H7wdh2M2Y9aBvlG8Pmb3/z3069uyLb1o9Hx8CNl53f9D3/hD+UhfjTAWKQuP6r5kfd/13zvxvuffe29K638qD24MHOc+pHvVJ9v3IKFQozxb6FvJIGs/jc/tuDNRyz96B0h+oT60ZGvdH2If3h0/sqnbf3I+0F+J7ANv/VHvfV+NBY/AvzIQK0M78ojxVwacmSzy1Ilm40fyTZ+dvPyG7/Zve7AVgd+1PZtIb6xvPs66keWfrTdH8k2EJsf/bcQV/yX/760v+4BP1LcH47zD+T4rXNO/OgPXjt6xP8duMrKjzxXCxE6RLYTP1Ie6E7IXy/Erq6/6/9CiL9+u/u03xpLP3pXiO+F+FG7961//dUWVYts/GiH4TMbIsQL+BHgRykwl0YF2WwVObLZTocLxY9km3/NtWai1zTEMw78yNsB/6/z/ses/eioEF/1ROlHi039qOnPtXGGesiPur5YW6f5BrQc5sCPirzms0J93tKPlK93n0uLwo/yrxR/Vq4c184HzRfia+qw/dZ+5P2Mvh7iR6uEuO6c/zG9H/19iB8dE+LaQAjrx/63iB8BfmQ5l4YU2Wwp5tIgmx1hNhs/knR+2vpf+m9QC+NHU4W4WQnrRy3XmgyR7dCPXjT1I68XXNPW437kO400xfvKLeH9aLP+3Vn70SCzIbId+ZHv7M1Tyj1CPNf9523qwEW2fnTJuwXlwX70P0L8QTHxo78N8aMW/TgHbd5P9XP8CPAjGwqYS8P5XBo9gRzZbOeSgx9J6Ee+cwp/58CPblHHhLT1I1+S97Zo/Ojf9fqg96Nt+vMgPelHSqXoviQWxo9eU8eEtPejmUJ8ryM6P3rH+wm1fV18yR/zG66OCWnrR8rXhFge7EfjdWql+dFBfZJbu7//Bt2reDfgL9z4EeBH0mezpXACKbLZHVJksyMYLhQ/ksaPdm7Q/uvtWQc68KPJ6nCC3qfvsvajt4S46j2t7daFTv3I2/ytpn502LstJf7/b70u4X5UO0eTmMtCXN0W3o82CvEl9RTq6iss/ajkWiHuC7zO61XO/ajDu9g9gfp4TfXf/P9tvsXaj7xF/JH/F23d7/x+dF9gMKv2SaofFQhxZUWIHy0R4mv+PEXHj4W4V8GPAD+SPJvtliKbXS3FpytFNjuS4ULxI2n8aIUY/rH/GJHrz/eE8aO13l70Fd8Fdvf6H1jf398148W1T3f7Qs0L3/k7p37k7d+/eLTr/HCQH3V8VYiRXRJ+7t+vEAn3o3Lxwze6rcJ9u3/sxTB+VHWNELd3VevocJv7+7umQxtX1u0m7/5cGz/bgR8p07qmfdvr/8trLtes6SrNqu9a39+vHPCu8m++g3bzom+r89Ou9za0pOtD3Pj32v39yjeFuMP3YGu7zo9avG3/tGtzG/9NiC8X4keAH5HNdkCZFKWQIptd4o5gi/EjifxIiF63Pb1k3i1fFuLvmh34kW8iNvF3Y/400tubXm3tR0rJX/vGVfrDQzPu+uXV/it3TvyowatB1/1+8i39RgT5ke/ClPjKb/90cz9v335VD/iRVxBGPb7kuXv+j9fYPnfgR8od3v9848Y/jfUW6CobP+oc5ptVbuiUJyb/zjfUZSR+5PINPKVdxGv2VfiHN//pd3/Z9UlY+ZEvpySu++cx//+XvGbr96POH3of+/6YP/2++0P0+9EU74O5E+/+ly+f089P++m1Qnx14sJl/53jLfxKBT8C/IhsdniKpMhm10txoTGi4ULxI2n8aOsXA6vmdt93Hm78o1PfUFcY+rqNHyllv9Zt1m+d+pHy1tWBNQx+1Pk7tbGcjYnPH9X+78Dj2R8pTvyo+efqCr13W+ePvIb537qhGb9dGYEfKf/iXeMl7a8D2niZv8+z8aNW7YP4zSx1/KMz39SGlVyp+VFDX/9jBj9Sdv6FuuwX1CATfgT4EdlsstnxzmbjR3Lls+sW/VPXiM7X3LDEfxv3H3Nzd/mfbM/NzVX38j25uf55SgtH+xTmmt9sVA7m5nbfy/ZJbm53KqYoN3eQ1vaOP3RJxjX9pp/p+js/N/efw2/R7l/75svoNcP73xm5ucsDT3TO/bqvuR880agMy83N73pscG5uQXcvnZurzSP3QG7umlj9SOnYOKpLBK/4/qP+y+gLc3M1WwsqUvd1xNb/6Rprs/8LbUr/3NyunbpDq+Dw3Nwz6trn/6tP18DXf3PHru7zrv+svp8wfJCb+5PAtHbK+d/6TOvaf92mbM/NvbPbVHNzuyXuZG7u79S38uRfeRe78oZ3lTW5uQ90P1Y8putDHLZe+Sw3d4z6W2vKt3wjTv6itOuD1Kbbq5jUZVNf+Q9tG2/JzVWv8inTcnNX40eAH8kyl0ZrCs2lkWBSLpuNH0l3/5rb9dnBMxGdAKzdvXWfs1sTyk8dPN8a8fe7sMj8t0fn0a0fFcbvwwh7/1rp5wePRxS3bD+4daezEdEazh08XRP7W6jatXW/g/tl3Ce3fRKcEKzbvXVv6IdYccFsqzxndm0/7uh0OX4EmetHdTK8G3cx2WyVy6mWzcaPZL2/P/NweH8/RAB+BBnrR3Jks8vJZms/H6XIZkcaScOPMt6PPFvNKO/ZjZDSjw6aFeY0fgQguR/JMZeGHNnsThlKIUU2+1JbpJuNH2W8H3UKM9bhR8pAs8LchR8ByO1HhVJks+WYS0OKbHazFKWIfLhQ/Cjj/cg9yowD+JHyiFlhluBHAHL7EdlsybLZhTKUIorhQvEj8kcyQP4IPwKIjx9Jkc3uJJutIUU2O5pIGn6EH+FH+BFA2vhRlRTvRIpsdrkUpZAimx3VcKH4EX6EH+FHAOniR3Jks6WYS6NYimx2nQyliG64UPwIP8KP8COANPGjQinm0pAjm90qQylSNZuNH+FH+BF+BJBGfiRFNjsV59JIEO2pms3Gj/Aj/Ag/AkgfP6qX4V10puJcGgkiZbPZ+BF+hB/hRwBp40dyZLPLyGarVKZsNhs/wo/wI/wIIF38SI65NOTIZrtlKEUKZ7PxI/wIP8KPANLEj4rIZpPNjmckDT/Cj/Aj/AggDfxIirk0yGZrtBfIUIoYhgvFj/Aj/Ag/Akh9P5Iim91BNlvFUypDKWKJpOFH+BF+hB8BpLwfyTGXhhTZ7AopSiFFNjum4ULxI/wIP8KPAFLdj8hma5RIkc2ulaEUsQ0Xih/hR/gRfgSQ4n5UJMVcGvUyOMGlNhlK0ZTi2Wz8CD/Cj/AjgDTwIymy2XLcryVFJ96W6tls/Ag/wo/wI4DU96MGGba+I5Xn0ogvqZ/Nxo/wI/wIPwJIeT+SI5stxVwacmSzK1I+m40f4Uf4EX4EkOp+JEc2u0qKbLZHhlKkQTYbP8KP8CP8CCDF/aiYbLY2lwbZ7Dhls318Grw7NuFH0ZIV1OC9HO3woyQyIqim/SkJpKcfMZeGhhQdeNslGUoRh+FCdwTvjlJMYJOafpQT1OB4jnb4URIZEFTTGygJpKUfkc2WK5vtLkmHbLaP5UF7Y44UX5LU9KN+QQ3+hKMdfpTEg9RfBtV0IDWBdPQjstkalVKUQopsdjwiaZ7RQXvjaPwoakYFNXh1OYc7/Chp7A3ewYdSE0hDP5LjMCtFNrtUimx2jQylKIrHlbAzwXvjHPwoah4ObvFxDnf4UdL4j+Dd8SZqAunnR3Jks+ukyGa3y1CKRilyWPEYLtR9b/De+BZ+FDVrglv8SinHO/woSRy6SpCHg/T3I7LZkmWzpShFfTzeyvrgnVEcxY+ipjCkmoPaOODhR0mhunfI3jiZqkDa+ZEUA9K0p8NcGvFBjmx2XCJp20MOoUKKOwFS1I/coV3S75o44uFHSaCsf+h3+z7KAunmRzVSbLUUc2nIkc0uT5dsdsPC0EPo/XJ8SVLTj5SZoQX9wS4OefhRT+N5+1sCP4L09yM5stmVUmSz5fj8pMhmxxxJa72wyuQXptiNH8XAaZOKigHzP6ushjB8O6hqf6Ak0VK+d84PzXZEkTMUQHIGh+y1A+2QY5sHysAQShG3UgwwPYCK3o34UQy4BwoAAABIN1Yo+FEsbGMXAgAASDdyqvGjmGi/gZ0IAAAgzVij4EexsZ+dCAAAIL0Y2YIfxXrj0D3sRgAAAOlE1mkFP4qV6r7sSAAAAGnEOgU/ip0j7EgAAADpw9Od+FE82MiuBAAAkC481K7gR3HhdXYmAACA9GB6s4IfxYn17E4AAADpwKIOBT+KW8s7s9mjAAAAUp1eOyWbpDDF/UgpGMVOBQAAkNrMLFfwo7j6kdK6llNIAAAAKcwdRxUFP4qzHylK6fws9i0AAICUJOvxzz0KfpQAP1KUslWD2cEAAABSjQHPf1yrSEla+JGidJx+ZzLX2aDnyb7x/vmrVgOkGsuCd+Ux1AR6mve27Tld5VZkJU38qMuRyk8f3rsToKf49MhZib/aAHbUBB+W51ATgHT1IwAAwI8A8CMAAMCPAPAjAADAjwDwIwAAwI8A8CMAAMCPAPAjAADAjwDwIwAAwI8A8CP8CAAAPwLAj/AjAAD8CAA/wo8AAPAjAPwIPwIAwI8A8CP8CAAAPwLAj/AjAAD8CAA/wo8AAPAjAPwIPwIAwI8AAD8CAMCP8CMA/AgAAPAjAPwIAADwIwD8CAAA8CMA/AgAAPAjAPwIAADwIwD8CAAA8CMA/AgAAPAjAPwIAADwIwD8CAAA8CMA/Ag/AgDAjwDwI/wIAAA/AsCP8CMAAPwIAD/CjwAA8CMA/Ag/AgDAjwDwI/wIAAA/AsCP8CMAAPwIAD/CjwAA8CMAwI8AAPAj/AgAPwIAwI8S5UedjVQX8CP8CAAAP9Jz8DzVBfwIPwIAwI90eO44SHUBP8KPAADwIx3HxRaqC/gRfgQAgB/peFC8QXUBP8KPAADwowBnhXiK6gJ+hB8BAOBHAW4XYgzVBfwIPwIAwI80Crwt9aK6gB/hRwAA+JHGs76mmikv4Ef4EQAAfuSnLMvX1GXKC/gRfgQAgB/5WdTV1BnKC/gRfgQAgB91U5Xd1dQ+ygv4EX4EAIAfdbOiu6lNlBfwI/wIAAA/6qK+T3dTr1BewI/wIwAA/KiLtf6mHqe8gB/hRwAA+JGP5hv8TY2nvIAf4UcAAPiRj81qU7091BfwI/wIAAA/UpS2IVpbDdQX8CP8CAAAP1KUHYG2iqkv4Ef4EQAAfqR0jA60dZL6An6EHwEA4EfKPl1be6gv4Ef4EQAAfuQer2trPfUF/Ag/AgDAj47o21pEfQE/wo8AAPCje/VtPUp9AT/CjwAAMt6PThnaGkN9AT/CjwAAMt6PHjO0ld1JgQE/wo8AADLcj/KDGqujwIAf4UcAABnuR3ODGiukwIAf4UcAAJntRyXBjR2jwIAf4UcAAJntRy8GN7aTAgN+hB8BAGS0H1VmBze2hgIDfoQfAQBktB+9GtyWeJECA36EHwEAZLIf1fYK8aMHKDDgR/gRAEAm+9FbIXokRlBgwI/wIwCADPajxn6hfpTVQYUBP8KPAAAy1482ChOqqTDgR/gRAEDG+lHrYDM/ukiFAT/CjwAAMtaPtpnpkThChQE/wo8AADLVj9pHmPrRdioM+BF+BACQqX60RxfKfibw/9VUGPAj/AgAIEP9yH2r1sCNZ5T+2h/PUWHAj/AjAIAM9aND2vrzGhQlENW+hwoDfpSCfrR7k44m9gEAwI+i8iPPnf61++7x/Rnwo8FUGPCjFPSjSfptqWQfAAD8KCo/Ou5fedJlxehHoo0SA36EHwEAZKQfPdi97vJ2RfWjqf7mKigx4Ef4EQBAJvrR+e5g9ln1b68fnRvU3dx5Sgz4EX7kp2q1gQJ2LkgKncYdkYH6IGF+NMu34rONis6Pyo52N3eQEgN+hB/5uWh8kwfYuSAptBt3xBVUBBLkRwVaMNvPEK8fKa90NbeFEgN+hB/hR4AfQQb60fNCTC5Tgv2odbyvuTcoMeBH+BF+BPgRZJ4flWVpwWy9HymFOd7mnqLEgB/hR/hR2nD4gA43fgT4kQ1LAsFsgx8pW73N3UmJAT/Cj/CjtOEG/SfYjh8BfmRN9fONwQ8NFcI3EJL7MSGup8SAH+FH+BF+hB9BxvlRbehDo4Uo6npqkBDN1BjwI/wIP8KP8CPIND8y4W513KOj3SeSAPAj/Ag/wo/wI8h0P3pEiOPd/3tFnKHGgB/hR/gRfoQfAX6kPK0d+FrH76PGgB/hR/gRfoQfAX6kLBLiY/9/CzdTY8CP8CP8CD/CjwA/UlYKoWkRE9QCfoQf4Uf4EX4E+JGirBdiLaUF/Ag/CqJogoHP2bnwo6TQYdwR3+NjhZ7yo61CvE5pAT/CjwA/AsCPAuwRIo/SAn6EHwF+BIAfBTgsxJOUFvAj/AjwIwD8KMBZIe6mtIAf4UeAHwHgRwEuCzGQ0gJ+hB8BfgSAHwVo8rbTRm0BP8KPAD8CwI8C9BGiitoCfoQfAX4EgB8FGCdEPrUF/Ag/AvwIAD8KMIeRcQE/wo8APwLAjwy8KcRGagv4EX4E+BEAfhRgBwNEAn6U3n7UXFGSfzq/uLylR7erpbzowqn8/KKaOHfMHZUl+Sfz8wsq4/92GspL8s+eyy8pa8KP4ozbLUE92ry7zqn8grJmjpT4kSNOCnEftQX8KD39qPHIyhnDtWdHPrHhQkcPbFLH+Q1zRwU2avD0lQeq49Gup+Sj+ROytXb7Tlm6szg+/W7L2U3zJ/ULbHL/u+dvO9+S6l+HJPtRZ/WF/RsXzZw8ur+/qCPvnjF/zccnK5LgSu3nN8wbq9ViwANvHWngcIkfhaNMiH5uigv4Ufr5Uf2H94gQ+i9xOWu3qVRHfQRydPTpvqEvK8atK1C7Kl27lyOQI9fyYSbtDl52UlW+Ml3DkYxaUrH5niyTlkX243tqnbVQpa+VhYh0NNXUNLR4emCPqFa3pL/+3RSUWlEetH6z/sk6i0+jpbamtsVKtt0VRzfMuyVbWNB/+rqzzj8g/f5San23daN+MaP8tB+e2yf00525j0uO+FEYxe/FDf6AH6WhH118Mceie5p80km7n+hXWeu4b1492KpXFHfs7LqwcVT3UG+n7bZ+NN6y3aFru952o15yLjnuffdMEdZkPe/o9t7HDSISWpT9Kx8b4n+217i5q3ZUJHSPmCsi45ag9ffrn3wr9KM4tf7ZcerTNz6ybPMp45v9bNW0fuFftNfTxxyeyizWr/aI5WIf6Rd7X38OYMUAi20YtoXB//CjcEfXkxQX8KP08qP8mXad0+MOzttE40dlS7NtO8UBG5sUZWXkftS0aZBtu9mLyhTluIjcj5q3DgvXkU+9GJsfVayfENLmxynrRy37ZvYKXv/BwNMNi25y/rqDP3AUBIrNj4oXZNlswlg6P/zIjsVJP74D4Efx9aPyOWG6pj57EuBHLauzw/aJ/dc23B6pH3n2DgrbbtaCktUR+5Hnk0FO+vFFdVH7kefYdLMWU9WPyl41OzOk86PLkb3ywG2difWj6gXhNmF1J4dN/MiSbUK8RHEBP0ofP2pd2yt81/RiuPBFxH50fJSjPtEQTnLiR2XTROQNO/Gj0gcdduNDz0TnR+4jd5o3mJp+VPqi+amY6P1IiHtLEuhHbRv7hN+CGa0cN/EjK84JcRPFBfwobfzo/FhHPdP0lrj6UedbIgoc+NHhftE07MCPdvdy3FrWe54o/Mh1j1V7qehHja9ZXaiKxY9E77DjE0ftR/m3ONqCRxAk/MiKZm9L9VQX8KP08KO2N7Mc9kz3N8fRjxoeEQnxI/fqqNoN70dtiyJqb7knUj9qWGbdWur5kXuP9aXImPxIiHcT40ftbzn9IjzBHdz4kRW3CXGK6gJ+lBZ+VDnJecf0eGfc/KjudpEQP+p8SSTGjxrvjbDBJe7I/OjoEJFGflT5sM36MfpRuBkcovOjijudb8AGjpz4kQVLmGEE8KM08aMPB0TSMa2Ilx/VjhcJ8aPO+SIxftRwV8QtronEj5oX2raVYn7k2dNfJNCPxJ74+9HnN0Tw+lkXOHTiR+bstdvnAPCjFPKjCDkQHz9qvl0kxo8Wi8T4kenprkEzX920c8+BnR+tfWmy2dBR+5370YUwUfXU8qPGMA3G7Ed9Lsfbj8ZGtgF3cBMbfmROuRC9GCUL8KMM9KMBtfHwo87ZpgMAPrB40879B/Z8uH7lnGHR+dEW03Vun792594D+7a/t3r++Oj8qC3k4lrO3L2V+oRR+8V1IeHe3qUO/cizLdw4BynlRwWjRSx+dMODC97ctH3nzq2b3l3+1KSBpi3c3RFnP4qUnRw78SNzRghxjvICfpR+ftRn9roDBeW1LbWV+Z++eZvJAnM8cfCjlaHtjngn3zB+QMOF7bN7RepHn4cGbPsuOt6oX6S1cF/eoEj9yBN81W7Y+ya3qHhOPRS02JROR3506vmw3XFi/WjjPD+Gs2BPzrNimZ0frQ5/m5+VH2VNWrr9dE3QHtaUv8Ukyr87wX40YP4Hx0uqm5pqys7sXjom9PlRHRw88SNTFgqxnvICfpRmfjR41TnjGEcV74T+ej8Wux8dD2l08jGzMHPbqdU3RuJHtSFbO3y72ZgE7oL3J0XkRxuDtmG9xUgHns+C5kr50JEfXS+S7EcaUc5Puz/Cd2PqR3e/daLJ6gWq1wWP2TC8LYF+NGxtvsFsPa4l2RFcPIWM9iPvt+Euygv4UVr50Uyz6a2aVgafkrndHasfNQ4PanLIIcuTUp3Hn8xy6kee4DHAs9dZd6IFr/Vz7Ecu4ybcYTNCYc1Uw6L9G534kQmjpz7+9Lx5j913U07K+ZHZqNeTHp339Lwnpo3rb+FHNyw91mj/EvUvOD+BFKMfPXrU5ItQdr+14wF+pN9VvYeLauoL+FHa+FH2omKLpc8ETx/7aax+FHyxak6D7eZWr3foR3uD2h1bZNtuy57hzvyo3Xid8Vnb8GWr8VrQusj9qM+8PQW681MNhUc2zB6Qun40eeNZXWattezUjrybjX7UL++4k5fabrTUexPkR09ctDD14Og/s7TjR+bcJ8Re6gv4Ubr40XNl1otXjDAuO84Tmx+dDXrt1eEG2+t05kfNQbGihxvCFWK2Mz96x9DssjCb2zJRv3S/xgj96NGj7UncNeLtRzdtqQ2zavWio05v9tlhbPtyIvzIZm5h93PGRbdx9MSPTNkkxJPUF/Cj9PCjuy7aLn85aGSYszH5kWeysTUHE5E486N3gvQofLfrzI8qDaHlBWGHTq4wXLjbHokfZS0qTe6uEV8/mnQsvnfBG4eI2h5/Pxp5yG7Q86aRhoVnc/TEj6z2v+wGCgz4URr4Ud+t4Xqxw8YVno/Jjw4ETcMRfnud+VF1b2Pf3BK+YWd+ZOiV73dw25LhPMftEfjRS2XJ/jrE04/uOOaJ89Y1GMYyfTbufrTcfv4c5VPj94Y72PAjc24XYh8FBvwo9f1okoNOeYExq1Qfgx+5jaMETXXQyTjzo+XG27MrHRTCkR+V6GMvg2scNOueoG/X5dSP7rmY/K9D/PxowM4EjKC41jA6pye+fjQ27JjYncZBPAs4fOJHpmwU4nEKDPhRyvvRG05+BVf3MWz/vhj8yHhvf38n93k48qNG4yYedlIIR370ktPhwwMcDl+IED/qv1uGOU/j5kd5Cbm+UGl4jbq4+tGC5vCvv97ZjQqQ4X5UKkRWDRUG/CjV/ajS0SqrDdv/VAx+9Jiz8YEi9iPjyNnOfr058aMG/WCHM50VuFM/+vfdjvzoUTnuhoqTHw09mqDtGx/+zFyUfvSak5cvcDy/HmSyHylThPiACgN+lBl+VGm4t7p3S9R+VGooxK2OIhxO/MhtyM5mOQvyOPGjbdFcUXkn7GkOox9lb3HL8XWIjx/NSlg4dZmjc4RRzU/raE80jH05j8MnfmTObiHGeigx4EcZ4UeKcejF01H70QZDO584Ox3jwI8uGK+VOHtTDvzIMy6aA2i+vuEjYf1o+HlZvg7x8KOsDYmTvQ/1L7Sjx/3IePZzModP/Mic5j5WB0kA/Cjt/Mh419mmqP3IMNTiMGc9sBM/WhVNctaBHxXpFznptMId/XVrrQ/rR9LoUVz8aHkCt8/wQpt73o/eNOy+HD7xIwuWCPEEJQb8KDP8qDk7fLzHgR8ZZ2t/29lrO/Ajj+Hy2p0OC+HAjzbrp9B1fl5Ef55hblg/kudGqHj40VsJ3L5jIpx4JtaPdhlOlLkVwI8sf1eVxHmD1y72Uc4nlwTaumq/uDPT3jd+5HClBw03W7mj9KNt0ZzmceBHhtM8Ykv8/OjB6E6MvK2/eoYfxY0ThoHXe96Pjhr2s1b6DfzIgulCvBrnDb6jayvz+eSSQHOkh0T8KLP8aEP4uacc+JFhktFRDhOMDvxoj2HrnA6zGN6PGvW59OPOS/xJuG4UP4rdj1b1vB8ZgmWiiX4DP7LeU3PiPEktfoQf4UeS+tFJwzs4E6UfGS6DLXX40g78yHBf0winhQjvR6ccjbcTplqV+FEMtFcXnD7yyYfvrsh78oHbbkiyH1WIKHcIyDA/8twd9yQefoQf4UeS+lG14R3sis6Pag2N7I+fHxnmhF0YPz/Sx49GRVDiQn3LF/GjiOmsOnd4+9pFsyZeLyxJgh81GzaAIQDxI0uOCZET30HNUsKPpnXRmJq7RHnXxj+LH+FHkfqRx9B1vhmdH51yOAF7pH7UmhVW3qLzo/n6UX0iKHGZvuWj+FEkVB15Z95tOSI8SfAjN36EHzk/gfRy5vlRSp9Z7T5wjMaP8KNI/Ui5T7/Wc9H50W7DoIhO5/cM70cGHRFn4+dHo/Wzx9Y4Jz/cPBT4kfkPuF1PDxZOSYIfKb3wI/zIGSfshnjHj/Aj/Cid/MgwR+206PxonYOZ7aPxo7PR/awP60ftIh7sxo8cUbj61ojqmgw/GoAf4UcOmSnE/fEcRBs/wo/wI1n9yDBnxi3R+VFeVNMzhPejffolchwfk8L6UVVc/Gg7fhSepl13RVrXZPjRCPwIP3LI5Wwh/l979/YTxb0AcHz/AV554okHHnjggcTExJgYE2OMMcYYjTE1NW00atRUG9vaUFsv9W69tl44So+24qFeKioeSvWISr0geANFRFBBUG6i3Fl25wAzC/Oby85vl112F76fp1ZmZ3cHdua7c/lNAX1EH9FHY6CPhKGLUoProzT9FNLDgzj3UY4rqPOoHfuoMiR9lEsfOdbR+dTAl2sk+mgBfUQfyfrd5ZrYQh/RR/TR6O+jW8JbcAfVR8LdRS6Ero+Eu4t8Fbo+uh+SPvovfeRfT86EYJZrJPpoEX1EH8nqmO1y7aGP6CP6aPT3kTh0cGdQfTTX6bBTkH10XD+F/H2PHPsonz4agT56syy45UofIar7aOB2OLfoI/qIPhr1fSRem98WVB8J1ybdCF0fpeun2B26Psqjj8LfR3mJLvoIo7GPlIMuV+q7UM2MPqKP6KNo7aNyx6GDnfsoWT+F9Bcr5z4SblvyS+j66BJ9FO4+8hyXXIoTF679KWMXfYQY6qOO+S7Xyu7gH99WVVJUWtnodewjT9Pz0sKS8sZh3TK543Vpcdnrj/4n8jZXlBY+flbvjlwfeTua37yu/+B/fJjexuel956+aggkaeT7qKXi8YPnb5xuwNhZ+/Rh32TvvQ7vpvbVuw/+X6enqaL03pOX9d0j/CGhj2Qf9UJ4C83B9JE3qOGzJfpoe1DDZzv30Tn6KMx95N7vb8mlLN3x28VrRX1ruVb1ztml9BFiqI+UVwku154gL/JvvOA78Dxx261WP33UcXu7b5j5cdtudcg/Q1lhP/XPuPnyam0eK87b5k130d5J2lTJG6+3Gn7YPzP1h9cKhzgMR/diYKIG87sf+PcK07/X/b17svokcUvSr1ZbL9uP1zf7LvhI+CpXahjz5r5nU6/zmaJ78YVvLPqo6nftRJHETTftI+3VH4NX5E7aV2SzMq2/un+qNtGiQ3kvrfO2rWDw9xu/6lI9fRSNfVTpOMaQ8/6jOKdhgYLsI2G3wr7Q9dEp+ijMfZRuvchSvz1580mt+SAufYSY6qOBQ/SXg3lg0yFhbRmfXmvTR53nxXvwjP+zU/Y5vh94QGl/HWTE67+XZPdaTd6TKw7emnyq1e8CVW33/xoODUz0j+nfC60GIvYWpxnmPu1ohSmRmjPE4ffjD0ncKfiR9avPMfXRi2/1P5/30Hp2JV8aXuc1i0X6eKPh2SYfLjO9mw8nk8WJ9jbQR9HXR89DcP5Rin6KK6HrI/1tQFybQ9dHWfoJZqUF6TZ9ZOeKxRopflt+jd1hAvoIsdVHyr8st/6OCswDXsRb9tHzuaYJ5z4PsI+6TycZZrHD4kBO9eemZ5r6aET7qGmj1RMsFfeoeK+kmL9v3QtVHzVuk9maf9hpntMa426slp1WT/hZjeEPwXxtb9LNEfuQ0EeyjxLPz+4Kqo8m66e4FLo+OqKfYm3o+kgY7zszlL8D+qhfRbzps7/8lr97W9JHiLE+6l7TVzalAT7Ic8J2b7Shj27EW33FkNyAan1Uu8Siakz7Me4nW72cSyPYR69shgEp00/UtVt6ELog+qhwnHkS8/0+X860mtWMOmGiuqnWz3hfP5H7sOU05+ijaOujx8Jb6A2qj2bppzgTuj7K0E+xLHR9JIw7mUEfhbiPekz3E/mi1P+5GvQRYqyPlI+fuVzJTwN6iDfDJdlH13UHxeak+ttm2/fRniSZuyI9GAqxpDm6SsgesT6qHlo7JU9LtOmjznWD+7a+35e+fdXgq74dij46YDVJsvEKxReDi2fp5kMHNg7exHO2/ryud9OGlue0JJs+6tk6eArTur3pO75MDHhwHPpohPrormOlOPfRYv0UJ0LXR8JxsPmh6yPh8M9B+ijEfXTVeDr2lV6HR9BHiLU+UprnuFwJDwJ5xOC4IvOyisvfVJbd/M8y6z4q085RSj35rP+ko67yTG3THFcm30e+85YO5ORf+XO7b1M9XjyLqVr798SM0v4TwLsrz/gOBhT6Jmnd1Uf9tx93DbkQoj5ya5+9yWcq2vv+t73h4Ym5pj7yaJfqTMiuVb9pdZVqwZTkMM5CVd9LVSdN0b34XUVCH/k2MRl/5/+VNXiG0Q5xTm+1tejKIu30rKYr09V/2Tj07c+j3e99QlZ5/1QdDSWZC0x95P1FWzGe0c446C7TNhzxI7TNoI9kHyW0wsLg+miDforDoeujv4QLwUPXRzfDtvqkj/pWeNMNp03UOj6EPkLM9ZHydkZfIAUwTuRrbafHp0+Gtqfv8z4x91Gbdr70vqG/xBbtgtAprYH10U+PtI9753nt5Gbh1nHd2rP/OHSuT5u2kyul0bytC+D6fuk+0lbyWfpTO96cSBH76II2xku7fu2k7nX5wfm1OF7fP/B+T73Ufi2N2glEccKZRd3qXvGUu7pd4V171SnvGTctv+qvNnx7arzYR9oXyF363+Uj9eyqVd4R+ZDQR7KPEu5P+2NwfSQcTE0LXR/ddhzbO7g+Eo4pLqKPQttHTwxnHkmsVOkjxF4fKY39h1iyZMcm8qxUX89+8QPo/dzUR1qhZOq3ld5M9R+PBtJHP742f5rX6Kc8r3WHsINXO/1gy4j0kfcTy+1KR26qro9q4q1ObdXWGhWh6KPETN178x4SDsKp1IMZU9+Iv1P1yNxCj7gRNh5D6fzfBF0fNahnfJ0W/3BeqO/xMX0UVX10xPFcHOc++kM/xfTQ9ZG4pX0bsj6q1k+Q6Anh74A+Ml7bP13iGlz6CLHYR0rTZ33z39kuN7E2htBe48Fm0/X99erRtQPirgTtoEycxLjdWh9NN2xr96kz0O2o+ajutNhgeElair0YiT6qUY/6mS8Mat4z1EebrM/cUJPl5xD00TfitXJd6kHGTbp/ahjY/ZZUZZzBXOFQYKO6STHv5PtwaKiP1KY6aNxTlBPgZdr00Uj00WqLs9YC7aOrQe3nce4jYYPoKglZH31whWtzGAt9JD9Wa1B91C1ewVwu8xj6CLHYR0rbD/0HkKtkJvWqf2OzTOM8mvrod/XMXeOA163qRvu4bB/tMm6lK0xH8tRNcpJxaMIu9dTjXSPRR+q9wr/zO68qdUe/aczG1oEdMUmOX/gc++iysVnVEYTHe4z79MyXy10X0q1s4P+W+H01bwemmWNaDXdNHMjX9pH4kNBHkg/yCoNKFAfXR+J+nirJp3buoy6XY7wF1UeehKC6a5T0kfRxyuD66KXL8YgtfYTR0UeKu3+7GX9W4juHNtCcedxBYx/1TLTZFP+tbrSdn2tofEhBT6KhWbRjW/+x+eDHfxiBPlI/rRv9zuuo9ftRB6FyuV4Ou49MhfXUeDuJjoHt5DxzinUOLNTFwoJb5ffVZImnvw/5j3lUA/oown3ULLyD+uD6qMFh3Ihg+0iZp5/kp5D1kbIqXINOxEIfyd+oIKg+KhD+GCqkHkMfITb7qO9D0r+/dOEzx+nUoY8+8Tr20TO7Wz21qMfdngTbR8qXhs3UG7v1VGeK8dr5sPXRNfVQoL/Tkt0De6Tnee1WUI4XxQfeRx/Vfx+6suSe7dokTT+wsvruxvm7hZx34PKVKRaTqKfFXqSPoqiPHgiXgnqC66Ne4VbtB0LXR8IN2CbJnijk3Ecnght4cnT0kfwO3KD66DfhL6pX6jH0EWK1j5R3A9mx3eH0SHWzaLUT3NhHZ20vc1GvE84Kuo/Ua+DOD/6/el7EAtu6OTgCfVRsMXqiQbntlqdO7s6cgfeRN8FwBtYh2/0Hpwd+8lzY71Tg58VU246C02w1qgB9FNE+EoYY2qQE10fKGuFCfLltokwfnXcF0xvOfXQrXCcgxUIftUo/LKg+Eu6ktEfuMfQRYraPlN6BO1/EH/E7joW2j73GuY/W2w6zmz3wk2+D7qNMww0DDtrmxXXjkHNh6yNtuYzzc5aDepbUI4uffJQ7pTnwPlLmGnbVzR74tme1l0s96vlA2O+UVGT/YtRFe8fiJ93m6wvpowj30XL9gy4G20dn/A2VP4w+euoK5s4lzn1UI8z32tjqI/mVXFB9JKTGBfoIo72PFKVRvTRs5xP7r4bqjvpEt3MfTbQ7P0WbR4rjEDl2fXTe0EdLbG+YWWE8FB++6/uX+s5UvG934H+PerCv0kzds/RlGPpoudhHreoZ4hYvofKMsMfId5PbdffsdtOrJ3rnW80qwW53Hn0UoT5qkNhBI9FHJcJsfgtZH3UI97peIDl2lnMf9U4S7n4x6vtIuD+3/G2ig+qjGUGkJ32EWO4jRan8Wr3VRJ3dBHm2m3JDH7ntVx61kjuA7foox9BHk2zPZ/poHFIlfONDDg1yl7D50hOrZ1jq8u+TMPTRV+Kiee3wElx/aRMO3c4kfsOFEqs1yTqHOU2gj6Knj/4WhqrxBNtHbcJymCR3BblEH4mjDwgDcgyrj7QLH3yehex3EKV9NEf/st6Et4+E210W0kcYC33UV0j9N6Ef12X345O2x5sNfdRq/y1Ge2t1wfZRnthHHvvrjXtc+rNqwtpH3vXCb2vWvrxyw0Ic51AUU8PQR+vEPnrk1EeDO8rF2+hO3/3fMsNusflOs6KPoqaPvMKd0/6tBNtH4kknrvyQ9ZFwJ1lhQI7h9ZH4975xtPfRwiAOfwbZR8Jv1SV59wX6CLHeR4pSfWJchu0PD9uOfm3oowb7FGl3yV3PLtlHHcaLtHQSDEOfhK+PlPavjL+xxM1Fbrs1SmT66K50H3WtN/4oYf0d/fzH00cx00dlwut/GnwfXRfvuCW1A8kt0Ud14hKukXpXm5z7qFO8t3XpKO+jL4J7s8H0kddytzN9hFHfR32rlRbbH6lnKJ1y7qPX9qOUuY17dYbXR81+NhVTDFeVhbGPlO6sOFMkzB566q4o6KMC6T5S3NkJpp9OuzN0akg8fRQzfbRRqBpP8H30Ps4V6Gm57zdI9JF2CuHgpfgSZyD1CJfk2fSR4SYYC3pC9DuI0j7apn9ZN8PaR4owfPZp+ghjp4/82C/bR2/sR+HoljzNQLKPWvwMejfeMJhlOPtIUd7+mmTKhHS32EfZ+XYKRqqPFtq+hPwq3WMbM1NN72ZPt9hHp+1nRR9FSx+VSI1PLdNH4j4bV1K143MXT3bJ9FGeuIgdhwJT3qxwyfTRK3GqzNHdR8f0L+tkePtIGNNzK30E+kjxXbaU4dxHzXbDQw6emuS4XpHsIy08rNbV2qlJT0aoj/pey8OMhYbf2z7ty3BvIMcOwtRH6ppwpewTdpccX2x4Nz/69j5MkNsHSB9FvI+6P9U/Iu79cPrIcNP2+Q7XWDRsNiw7uz5qSxGP5TqMx9yZZdx9adNH4pBN/scns/Juayz1Ubb+ZS0Obx8J+yTHu2Ue0rKePsLo7iN1r/Yvzn3UYX837kbJC1Al+0g7ychqldppPHU7yD4qkO2jgfx7cnHHVIsd3eOHe9+N4feROrT1zECetL3s8m79tby++8XM14+XRB9FcR8JexVch5Th9JH3c3FZLPP3Ufp42rQ71a6PtJs1Dm1w/e1cdt+cadqxaddHxeJk46oCWtZF41yx1Ef3hPf6Nqx9dCLgmwqXCsMP0EcYhX100fY+rIY+8sTZ5sALyRsoyvbRDNtrTOvVZ2oybOtaAu2j64H00YCmW7t9X4lnaV+uVgRyKaz9imPOMPpIHfQ6vjfgP8a7B3xX303Sfm3rA7oJF30UsT4SzzmLezesPtINY6ENSmEbHC3nzIdn7fuowXC2W7Lt0ebugnkWZ7vZ9ZHXcNXEhABqpnGb3Wl0UdpH1cJbPRPWPhLHJv/B+XvWUcNvjD7C6OujG+pG0rmPFPWmsX9bTHldci+GbB99a3uOoGk0S2MvSfbR1YD7qD9acrT7VWmNeEDytioOfTR1GH3U5udSPwfdV7Te03YZHbe9kJE+iqY+KhJPqT6sDK+PPMsNSyP+jzarLHlx0PIEfts+0u5qrLPd8q+04ewky6sB7PpIqTRMOK5Ecjm3nktyxVgfdQuRmSp7h5Gg+uituFgf+p/aWzzDRR9h1PdRpe0RKmMf7bfdnZ8hOcqJbB+p++Y3WMwh2ziapZ9Tua2l21yoI9FHivJQOyVb/7I/H24fjRtGH2nReiWopy8XznFVd0vM8ET0r5E+cpr6ppgpifXD7CPfX4H+WNgpQyF0P8+aZXNRo30ftU82Thu3r0Q8rcVTk7vS7mpJ2z7SvpboZntJZvfpx7Opfi7DjNI+Ur4T3umv4ewjrzAYpWuK3++cNRajydJHGH19pG2Ji5z7SP37nWQ+c693huRmRraPitRVf7vda9J95JMC3X9yymZIPak+Ur7R72SpDHTcNuuvbPHD6SP1XJQlwVWNevnwbvV/6kI8pAx9FEwf7Sjzeyl8t+G0HptbrwXSR6beGMjkX64+rml4/76h9un1rG8S7Ad9SJJ8ft8ukC05xS/fvX/fVFdx+/w2f0Nu2fdRq+lkpdWOQ0tXH0vyO0xFtPbRxYB26gyrj5Rz4nMtsA+khiNxLvoIY6GPtDFaDzr3UZ3dmXtlshdyyfbRhzibi8xqTAPizQh0jXbR5lMq10dn9VP1TnH4xEv+SfQOo4/UE7Rdd4N6/tyBx64XdkWt9Ebyj3HM91HfdulKm/2+HuO1lIvcw++j9rmu4PnpI2XvMObrp4+UctPWOe6Iv2tD2u9+6zSMV7T2keH+QcmW3146q0PSR4YxPV2TiqxXBW8yrIdKo48wCvtI/Uaa9N6xj7R/2GCzG2KR84ZVto+0UVlWmMJB3VsyVbdRWBzoVVfq+VbJpu1KgaGPev3U1Qnt/7QR7R4Nc99d0zD6qEe9sG6+w7nxvX7WSL5rF7V7QtymjyLaR32fxV+KrW6J7C03DYEe72/fpWwfKS/iwtNH7bPD00fGPR0DS2JXiXUqthf9lOA8zGm09pHymSEEzxpvFNV296ekT0PSR8oO40L95q7ptlQt/3xp9xujjzAK+0g7/+CE4Z89/00w9lG+9aE47Z5I/3N+Kuk+um89y0rzun6z7fCWNl66rIrKey3Z0EcZuVbr23ThkvgG9YvUeMvDe12/v3N6LV71AMO9YfSRb4iULZYFVJPhK7lsq5GGTwmXxXxQD0EkW94mpuf0K/pohPqof7ygLTeqhMPL3RV/Wlzl9bcSij5SbgZULp/I9pFSMz6Q+abOkO0jz0Grx48/cLtW+Mx6mh9nfSE3DHzU9lGe8eVPPPGwyfdZby65tKF/FRSiPnpp8Ts5eLX8g3bwvu1lYdYSP78/+gijsI88n1plz9u15rsidk9Xb0ohbvcb1dMBpnaFsI886qgs48SV5Af1y1TyR8WYBxM6pd9uj5p9K4ReeOsbRnivroRWmFfRXRPFG81pY4bMMZ//4C35ROKG2+rTrh1OH3VoIzMdNN87qz07YbX2n5muz83DSblniUcrta/l06rM76ZssauCPhq5PlIvCN2ekXXxSn5+7rkDKy1PATrgDU0fGW4n69+BVuk+Up4nyc932bstsn2kuLfazCTxiz2ZOVfz8//Kztq/LEn+NjlR20cdE6zew5wlaWkrZif6/jdEfaT8y2apjpuzeME0x18gfYRR2Ee+b49JBUNr26ajg4eY9XvwtSEyZuoHKnunXfZQIPFM0n3kG7h+on5T/X6xxf0UtFstBHBZ+lbDbUIUpSF98ADDXmFP0bZy8aG9P6uro8EF5TtVNOmauPvGfbv/tTr3UbbdnZXk+0g7ccrlWmo4C6E5K9XlGuojl2vDE3Fz6vm3mkODL71zgXaswrDrrLdopc1wnfRROPvIydf+v5IE0EfKn9LH066L92VO8T/fJymyMz7arWyRjxTz3ZalxVYfKZck3lKo+qh1aoDLMp4+wmjvI7fvj2xdYdvAXumCLbpvq/o+8mq3pky66Fszd+VoX9I2yJzWK99Hyi/aBzDLd5TBfU3bWb9S2Hh3a1cRH1Lve+Kpueh0rM13z6AvHrar7/YH3ekXYh/1TZSva8Hna0172sp9a4i5/xs8i6ir/KS6nnHuo1rtXV5U36X7eebNgPto6JadW54MbjCb72wdeGX6PnK5llytHfo1VWm/zBtDc3rt+8Y9M2/wOvPuiqyZtsOZ00cR7KOVbUrI+kj5J17qOb+sU8Q+muww35qZUvOd2j/KqtBHDpek9maMkT5yLx65PhpancnZfYs+wmjvI6VqKBDGfz7f8BERzgBt9V3qkrzn2oPyB/n7fF8P53yUeaIA+qhrme9MjG1Xissf3jjsO5VhkmGEmDO+F/rZjz8f+L5vqu0OL8IztMKZ9NmnieK73WuujtlHrxSXlhZfyfCdbbrHZlU058DJCzlnDq8ajEvnPlJ8w4jEfbHt8J41iYM7xwLpI/fQdiV+zdHTOZcydwxekST2UZ/p6XlFfe/m6vH5LouwfTT0y5+5/7fsnLPpawYXEH0UXX20ut0peQLpI6VMImSSc/v3NQp9NMtpvk1rJd7LoYHUE/rIaUgz76Wx0UdKZcLI9ZH5dCc/xt/l/rQYA32kXLXc4b3AYnSfeuu16Cy5ARoD6COlZaHlM000rrxMVyc79ZFSbbXC2Z1n10dG68Vzne4n265AJPqoxtBnwfSR0vOL/UbU2EdGX4lb2SfjbGdFH0VVH23qcJpvYH2ktB90espd6leTXn+bZovvI/lOJyEt126KLPRRs+OMK+aPiT6SOHs+dH0k3hHXrzX1Cn2EsdBHFp+K1Dvm6/sHvg6usPiorJC8v0cgfaR8TLN4pgV15u9XKQH2kXY7FOEsigLT+EcnbFYLe43N8maFzZQpMtF4IwR9pHjz7U7z+FGb4pzNz7cYT2yv/9ruxJNq+iiK+ijTeUTQAPtIUcpW+3vGDb47zAp9tExivvU/+9243/G9FaGPJG453ZEe+HKbnBVzfWQcJDKsfTS0P95hV2Je/65E+ghjoY+UW4YN7N4GxbqPlO4zxmPU8We6JZ8loD5S3JdNXzx/tfrSXDMvwD5Sig0z/qXJPD6kt2y7xbAwsy1GsHVfn2518uytDqllcj91+H2kKM1HLc4cSPlXhe/gmbdir8UE0wrNZ4313p5j8W5W3Wgfkb/DMd9HO6XGIppUJDHfgPtI8T7aZPOECXuH1gNu/Q/SpN5izb/sAv6re73WkdIlM9/n3wQUR3HbHtqMpxnVfaRcjx+5PjLewMbaOvW7H32EMdFHStMh3cdiU1X/P1n3kaI0/KrfpKdmyN/8LLA+6ltk/5mo34Nx0OaAVecV3cgpcy5IvJCGQ7rN0NaB9aHF+NkfCjaKh+I2FFqXoPv+LuEoW/zG6/J3zG3J0m07FhcH10d9y+qyuB9rSkaJuIlpu71NPJj37W3rURF6H+0Tmi1u3dWGkfozHOt9NN1bf8x5+7S1RWa+gfdR/3og93vT4ecpe27r67hDuNpfcr4dt/aYrlRP/iFX+MPSn6mUKjdb7+Nl0nX06V/2G9Do7iPl5YKR6yOlyvG45ef3te9V9BHGRh/1badv/rxkimva8oM3HLftXSVntnwyxTV5/ubTj7vC+qLcT89vXzjVNXHuhlMP/OyP8dTePHc8PfPyzWeyt7huKti/alZc37u96fdEh57qW5kHt32zJG1nem6Zv3PQe6pu/HFgfdrabYdP/VPdE+CbrLpyJiP99F+3qjqH9xsszT2xM23t97uPXXjUaHU9ofvNnVOHtq9dnLbjyOUn/g5guF8VnPl5Q9rarYcyb77qHsE/wrHeR/250XTc/wk7iyTHaw+qj/o/3c9vZG1bu3j2tEXL0nZl/v2gwetnRRbAyKye6jvn96ctnT9tweK1P/475261cV+O/kot6bs+e18cTpSIo1WX/V4QF+V9pHTlpI5YHykdv/tN9BV3B3f50UcYK30ERNxY76P/aTtb0my3Tktv9UrON9g+cvJWP9/cEC4I/fjZ6wN4XGvBrmR/G/SEzTeczvaO9j7qe5O5drfJm7jjemj7SFHqdtsd5k08rD+gQB+BPgLoo7D5+H7I4J7HhksrLbZO04+/DGCfg26+7ztC93pf6l/R3RAuCP1+oPTAHtr9NHvrZKvt+YRNOeUSe2Vb9cvKHZ2fDU9V9teGXWVzd/557635TP3u4f/m67MsrlSelvFInFuP1BP16qdqlft7ldyT/kH/GI8C+gigj0ZRH9l204PsnZ8MbhBT1qRfq/VGw+t6qF92IbwrX/tw90s1l9++fOKntLWLF85ZvDxtx/HsgoqWUfb5cNeWFuSczso8k3P1XkVDWI98e1/m/TR05cuU734tqCFAQB8B9FG0aGuoq3lZ19zqjZpXJAwGEsL9UhX6+ZbwWYiKHmuue11T39JJGYE+Augj+LdNt+jmhXC+wvknDSxngD4CQB/FDv2d3HeHcL76u8ensMMCoI8A0Eexo16/6K6Gbr7e+awbAfqIdQBAH8Wmv/SLriZ0832ln+8VljNAHwGgj2KGR3/f6EkhPAz2b/2vpJoFDdBHAOijmPFAv+QOhm6+H/SDhk/rZUED9BEA+ihWdH+iX3JPQjfjI/r5ZrGgAfoIAH0UM04J4ymHbqTpEheH1wD6iD4C6KOYVOgKz26e+on6+S5hQQNjvI+Os0wA+iji6mX3Az1MEO772uS0ypMdXbthtvALuRPtC6y5MGzaWAmAPurzgGUC0EcRN2P8gQcSieTNixeWW4bTA44lbPqnXeL5n00X5jvPHe0L7L4rbF6zEgB9RB8B9FF09FH/DUjTiz76n6p2g7jY4h3vAXKsb6rE7fnv/E/VdjJOnPGtqF9g9BFAHwH00Zjoo35fZFf02E3z6oihYlxnHed7TJtyzolHtoeN3mdPNMx3TfRf3E8fAfQRQB+NmT7q393z3fnSBuOoj90vL64wbcg/65buo35Lfy+qNcaX523+5njjfBNqo3+B0UcAfQTQR2OpjwYkrT5wKu9uYUlp6YPCq2cPLo+32I7Hv3Ce7zHDY+IW7TyRc6vwUWnpo8Kb2RlpKVaBcDEGFhh9BNBHAH005vpIxjWJ+R4LYr4/eWJggdFHAH0E0Ef0kdlvMvMNoo9WdsXCAqOPAPoIoI/oI5N0qXOoA++jlR9iYoE9WRw2tawEQB/RRwB9FJt9dMYrNd+A+2hdBx8BgD6ijwD6KBb7KPUfyfkG2kcn3HwCAPqIPgLoo1jso9XvZOcbWB9NfcTfP0Af0UcAfRSLfTTjhvzwjYH0UWIWdx4D6CP6CKCPYrGPpuQGcn2ZfB8lZjTzxw/QR/QRQB9Fkca7GfNlKmbT/cBOEGovOb06TmK+i6628qcP0Ef0EUAfRZ3m4tObp/ppmIk/334fzHw7nl7au8DPfBM2XnnjZfED9BF9BNBH0erD8/wzB742HG5LXrjtXPHbYQ1r3fnqzvn09fPF+5TEzf3u5D+vuljqAOgjgD6KAe73dTWVz0qLSktfVL5rD918PR/f1VY+L33wqPR5Zc1HDwsaAH0E0EcAAPoIoI8AAPQRQB8BAOgjgD4CANBHAH0EAKCPAPoIAEAfAfQRAIA+AugjAAB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BIA+AgD6iD4C6CMAAH0E0EcAAPoIoI8AAPQRQB8BAOgjgD4CANBHAH0EAKCPAPoIAEAfAfQRAIA+AugjAAB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcA6CMAoI/oI4A+AgDQRwB9BACgjwD6CABAHwH0EQCAPgLoIwAAfQTQRwAA+gigjwAA9BFAHwEA6COAPgIA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH9BEA0EcA6CMAoI/oI4A+AgDQRwB9BACgjwD6CABAHwH0EQCAPgLoIwAAfQTQRwAA+gigjwAA9BFAHwEA6COAPgIA0EcAfUQfAQB9BNBH9BEA0EcAfUQfAQB9BNBH/qUYPog5LHcAiKBGYx+VskyAke+jmYYP4nGWOwBE0AtjH1WwTICR76Mlhg/iEpY7AERQnrGPalgmwMj30W7jJ7GOBQ8AkbPSuFZuZ5kAI99HZ42fxHQWPABEzBPjSnkaywSIQB8VGT+KrmcseQCIkM6FxnXydhYKEIE+Ml1J6prylkUPABHh3mFaJ19lqQAR6CNlkTmQyln2ABABHzeY1sicng1Epo8umz+NriOcpA0AI639yiTz+vhzlgsQkT5qdFlZ9GvOtXwAwAjJ/WNjotXaOJeNIRCRPlK2uwAA0SmphY0hEJk+qmQFBABR6iTbQiBCfaRsYQ0EAFEp5T3bQiBSfdSQxDoIAKLRX2wKgYj1kZLDOggAotAyN5tCIHJ95NnAWggAok4Kw/UCkewjpWU26yEAiDb32BACEe0jpW4SKyIAiC55bAeBCPeR8pJAAoCocp7NIBDxPlLqOMQGANEjjr1HQDT0kfLhB9ZHABAlpj5lIwhERR8pnpxEVkkAEA02c1sRIFr6SFHqGUkbACJv7gO2gEAU9ZGiVO1gxQQAEfXpLUaFBKKsjxSlKXcJaycAiJDJvz73sPkDoq+P+rQUn9u9fEYq6ykAGDFx0xau/+36Gy/bPiBa+wgAAIA+AgAAoI8AAADoIwAAAPoIAACAPgIAAKCPAAAA6CMAAAD6CAAAAPQRAAAAfQQAAEAfAQAA0EcAAAD0EQAAAH0EAABAHwEAANBHAAAA9BEAAAB9BAAAQB8BAADQRwAAAPQRAAAAfQQAAEAfAQAA0EcAAAD0EQAAAH0EAAAA+ggAAIA+AgAAoI8AAADoIwAAAPoIAACAPgIAAKCPAAAA6CMAAAD6CAAAgD4CAACgjwAAAOgjAAAA+ggAAIA+AgAAoI8AAADoIwAAAPoIAACAPgIAAKCPAAAAQB8BAADQRwAAAPQRAAAAfQQAAEAfAQAA0EcAAAD0EQAAAH0EAABAHwEAANBHAAAA9BEAAAB9BAAAQB8BAADQRwAAAPQRAAAAfQQAAEAfAQAA0EcAAACgjwAAAOgjAAAA+ggAAIA+AgAAoI8AAADoIwAAAPoIAACAPgIAAKCPAAAA6CMAAAD6CAAAgD4CAACgjwAAAOgjAAAA+ggAAIA+AgAAoI8AAADoIwAAAPoIAAAA9BEAAAB9BAAAQB8BAADQRwAAAPQRAAAAfQQAAEAfAQAA0EcAAAD0EQAAAH0EAABAHwEAANBHAAAA9BEAAAB9BAAAQB8BAADQRwAAAPQRAADAWPV/6VZ6hvnfpBIAAAAASUVORK5CYII=)

%% Cell type:code id: tags:

``` 
from collections import OrderedDict
from itertools import chain

from pv211_utils.trec.loader import load_queries

train_queries = load_queries(Query, 'train')
validation_queries = load_queries(Query, 'validation')

bigger_train_queries = OrderedDict(chain(train_queries.items(), validation_queries.items()))

pivot = int(len(train_queries) * 0.8)
smaller_train_queries = OrderedDict(sorted(train_queries.items())[:pivot])
smaller_validation_queries = OrderedDict(sorted(train_queries.items())[pivot:])
```

%% Cell type:code id: tags:

``` 
print('\n'.join(repr(query) for query in list(train_queries.values())[:3]))
print('...')
print('\n'.join(repr(query) for query in list(train_queries.values())[-3:]))
```

%% Cell type:code id: tags:

``` 
query = train_queries[301]
query
```

%% Cell type:code id: tags:

``` 
print(query.title)
```

%% Cell type:code id: tags:

``` 
print(query.body)
```

%% Cell type:code id: tags:

``` 
print(query.narrative)
```

%% Cell type:markdown id: tags:

### Loading the relevance judgements
Next, we will load train and validation relevance judgements into the `train_judgements` and `validation_judgement` sets. Relevance judgements specify, which documents are relevant to which queries. You should use relevance judgements for training your supervised information retrieval system.

%% Cell type:markdown id: tags:


If you are training just a single machine learning model without any early stopping or hyperparameter optimization, you can use `bigger_train_judgements` as the input.

If you are training a single machine learning model with early stopping or hyperparameter optimization, you can use `train_judgements` for training your model and `validation_judgements` to stop early or to select the optimal hyperparameters for your model. You can then use `bigger_train_judgements` to train the model with the best number of epochs or the best hyperparameters.

If you are training many machine learning models with early stopping or hyperparameter optimization, then you can split your train judgements to smaller training and validation sets. Then, you can use `smaller_train_judgements` for training your models, `smaller_validation_judgements` to stop early or to select the optimal hyperparameters for your models, and `validation_judgements` to select the best model. You can then use `bigger_train_judgements` to train the best model with the best number of epochs or the best hyperparameters.

%% Cell type:markdown id: tags:


 ![visualization](data:image/png;base64,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)

%% Cell type:code id: tags:

``` 
from pv211_utils.trec.loader import load_judgements

train_judgements = load_judgements(train_queries, documents, 'train')
validation_judgements = load_judgements(validation_queries, documents, 'validation')

bigger_train_judgements = train_judgements | validation_judgements

pivot = int(len(train_judgements) * 0.8)
smaller_train_judgements = set(sorted(train_judgements)[:pivot])
smaller_validation_judgements = set(sorted(train_judgements)[pivot:])
```

%% Cell type:code id: tags:

``` 
query = train_queries[301]
relevant_document = documents['FBIS3-10937']
irrelevant_document = documents['FBIS3-10634']
```

%% Cell type:code id: tags:

``` 
query
```

%% Cell type:code id: tags:

``` 
relevant_document
```

%% Cell type:code id: tags:

``` 
irrelevant_document
```

%% Cell type:code id: tags:

``` 
(query, relevant_document) in train_judgements
```

%% Cell type:code id: tags:

``` 
(query, irrelevant_document) in train_judgements
```

%% Cell type:markdown id: tags:

## Implementation of your information retrieval system
Next, we will define a class named `IRSystem` that will represent your information retrieval system. Your class must define a method name `search` that takes a query and returns documents in descending order of relevance to the query.

The example implementation returns documents in decreasing order of the TF-IDF cosine similarity between the document and the query. You can use the example implementation as a basis of your system, or you can replace it with your own implementation.

%% Cell type:code id: tags:

``` 
from multiprocessing import get_context
from typing import Iterable, Union, List, Tuple

from pv211_utils.trec.irsystem import TrecIRSystemBase

from gensim.corpora import Dictionary
from gensim.matutils import cossim
from gensim.models import TfidfModel
from gensim.similarities import SparseMatrixSimilarity
from gensim.utils import simple_preprocess
from tqdm import tqdm

class IRSystem(TrecIRSystemBase):
    """
    A system that returns documents ordered by decreasing cosine similarity.

    Attributes
    ----------
    dictionary: Dictionary
        The dictionary of the system.
    tfidf_model: TfidfModel
        The TF-IDF model of the system.
    index: MatrixSimilarity
        The indexed TF-IDF documents.
    index_to_document: dict of (int, Document)
        A mapping from indexed document numbers to documents.

    """
    def __init__(self):
        with get_context('fork').Pool(None) as pool:
            document_bodies = pool.imap(self.__class__._document_to_tokens, documents.values())
            document_bodies = tqdm(document_bodies, desc='Building the dictionary', total=len(documents))
            self.dictionary = Dictionary(document_bodies)
            self.__class__.DICTIONARY = self.dictionary

        with get_context('fork').Pool(None) as pool:
            document_vectors = pool.imap(self.__class__._document_to_bag_of_words, documents.values())
            document_vectors = tqdm(document_vectors, desc='Building the TF-IDF model', total=len(documents))
            self.tfidf_model = TfidfModel(document_vectors)
            self.__class__.TFIDF_MODEL = self.tfidf_model

        with get_context('fork').Pool(None) as pool:
            document_vectors = pool.imap(self.__class__._document_to_tfidf_vector, documents.values())
            document_vectors = tqdm(document_vectors, desc='Building the TF-IDF index', total=len(documents))
            self.index = SparseMatrixSimilarity(document_vectors, num_docs=len(documents), num_terms=len(self.dictionary))

        del self.__class__.DICTIONARY
        del self.__class__.TFIDF_MODEL

        self.index_to_document = dict(enumerate(documents.values()))

    def search(self, query: Query) -> Iterable[Document]:
        """The ranked retrieval results for a query.

        Parameters
        ----------
        query : Query
            A query.

        Returns
        -------
        iterable of Document
            The ranked retrieval results for a query.

        """
        self.__class__.DICTIONARY = self.dictionary
        self.__class__.TFIDF_MODEL = self.tfidf_model

        query_vector = self.__class__._document_to_tfidf_vector(query)
        similarities = enumerate(self.index[query_vector])
        similarities = sorted(similarities, key=lambda item: item[1], reverse=True)
        for document_number, _ in similarities:
            document = self.index_to_document[document_number]
            yield document

        del self.__class__.DICTIONARY
        del self.__class__.TFIDF_MODEL

    @classmethod
    def _document_to_tokens(cls, document: Union[Query, Document]) -> List[str]:
        return simple_preprocess(document.body)

    @classmethod
    def _document_to_bag_of_words(cls, document: Union[Query, Document]) -> List[Tuple[int, int]]:
        return cls.DICTIONARY.doc2bow(cls._document_to_tokens(document))

    @classmethod
    def _document_to_tfidf_vector(cls, document: Union[Query, Document]) -> List[Tuple[int, float]]:
        return cls.TFIDF_MODEL[cls._document_to_bag_of_words(document)]
```

%% Cell type:markdown id: tags:

## Evaluation
Finally, we will evaluate your information retrieval system using [the Mean Average Precision](https://en.wikipedia.org/wiki/Evaluation_measures_(information_retrieval)#Mean_average_precision) (MAP) evaluation measure.

%% Cell type:code id: tags:

``` 
from pv211_utils.trec.leaderboard import TrecLeaderboard
from pv211_utils.trec.eval import TrecEvaluation

submit_result = False
author_name = 'Surname, Name'

print('Initializing your system ...')
system = IRSystem()

test_queries = load_queries(Query, 'test')
test_judgements = load_judgements(test_queries, documents, 'test')
evaluation = TrecEvaluation(system, test_judgements, TrecLeaderboard(), author_name, num_workers=1)
evaluation.evaluate(tqdm(test_queries.values(), desc='Querying the system'), submit_result)
```