# Standalone Model Card Toolkit Demo

<br />

This "standalone" notebook demonstrates using the Model Card Toolkit without the TFX/MLMD context.

|---|---|---|---|
| [![](https://www.tensorflow.org/images/tf_logo_32px.png)View on TensorFlow.org](https://www.tensorflow.org/responsible_ai/model_card_toolkit/examples/Standalone_Model_Card_Toolkit_Demo) | [![](https://www.tensorflow.org/images/colab_logo_32px.png)Run in Google Colab](https://colab.research.google.com/github/tensorflow/model-card-toolkit/blob/main/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb) | [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png)View on GitHub](https://github.com/tensorflow/model-card-toolkit/blob/main/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb) | [![](https://www.tensorflow.org/images/download_logo_32px.png)Download notebook](https://storage.googleapis.com/tensorflow_docs/model-card-toolkit/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb) |

## Objective

This notebook demonstrates how to generate a Model Card using the Model Card Toolkit in a Jupyter/Colab environment. You can learn more about model cards at <https://modelcards.withgoogle.com/about>

We are using a Keras model in this demo. But the logic below also applies to other ML frameworks in general.

## Setup

We first need to a) install and import the necessary packages, and b) download the data.

### Upgrade Pip and install the Model Card Toolkit

    pip install --upgrade pip
    pip install 'model-card-toolkit>=1.0.0'
    pip install 'tensorflow>=2.3.1'
    pip install 'tensorflow-datasets>=4.8.2'

#### Did you restart the runtime?

If you are using Google Colab, the first time that you run the cell above, you must restart the runtime (Runtime \> Restart runtime ...). This is because of the way that Colab loads packages.

### Imports

    import tensorflow as tf
    import numpy as np
    import model_card_toolkit as mct
    from model_card_toolkit.documentation.examples import cats_vs_dogs
    from model_card_toolkit.utils.graphics import figure_to_base64str
    import tempfile
    import matplotlib.pyplot as plt
    from IPython import display
    import requests
    import os
    import zipfile

## Model

We will use a pretrained model with architecture based off [MobileNetV2](https://arxiv.org/abs/1801.04381), a popular 16-layer image classification model. Our model has been trained to distinguish between betweens cats and dogs using the [Cats vs Dogs](https://www.tensorflow.org/datasets/catalog/cats_vs_dogs) dataset. The model training was based on the [TensorFlow transfer learning tutorial](https://www.tensorflow.org/tutorials/images/transfer_learning).

    URL = 'https://storage.googleapis.com/cats_vs_dogs_model/cats_vs_dogs_model.zip'
    BASE_PATH = tempfile.mkdtemp()
    ZIP_PATH = os.path.join(BASE_PATH, 'cats_vs_dogs_model.zip')
    MODEL_PATH = os.path.join(BASE_PATH,'cats_vs_dogs_model')

    r = requests.get(URL, allow_redirects=True)
    open(ZIP_PATH, 'wb').write(r.content)

    with zipfile.ZipFile(ZIP_PATH, 'r') as zip_ref:
        zip_ref.extractall(BASE_PATH)

    model = tf.keras.models.load_model(MODEL_PATH)

```
WARNING:tensorflow:SavedModel saved prior to TF 2.5 detected when loading Keras model. Please ensure that you are saving the model with model.save() or tf.keras.models.save_model(), *NOT* tf.saved_model.save(). To confirm, there should be a file named "keras_metadata.pb" in the SavedModel directory.
WARNING:tensorflow:SavedModel saved prior to TF 2.5 detected when loading Keras model. Please ensure that you are saving the model with model.save() or tf.keras.models.save_model(), *NOT* tf.saved_model.save(). To confirm, there should be a file named "keras_metadata.pb" in the SavedModel directory.
2023-10-03 09:12:20.736066: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1960] Cannot dlopen some GPU libraries. Please make sure the missing libraries mentioned above are installed properly if you would like to use GPU. Follow the guide at https://www.tensorflow.org/install/gpu for how to download and setup the required libraries for your platform.
Skipping registering GPU devices...
```

## Dataset

In the cats-vs-dogs dataset, label=0 corresponds to cats while label=1 corresponds to dogs.

    def compute_accuracy(data):
      x = np.stack(data['examples'])
      y = np.asarray(data['labels'])
      _, metric = model.evaluate(x, y)
      return metric

    examples = cats_vs_dogs.get_data()
    print('num validation examples:', len(examples['combined']['examples']))
    print('num cat examples:', len(examples['cat']['examples']))
    print('num dog examples:', len(examples['dog']['examples']))

```
num validation examples: 320
num cat examples: 149
num dog examples: 171
2023-10-03 09:12:30.081069: W tensorflow/core/kernels/data/cache_dataset_ops.cc:854] The calling iterator did not fully read the dataset being cached. In order to avoid unexpected truncation of the dataset, the partially cached contents of the dataset  will be discarded. This can happen if you have an input pipeline similar to `dataset.cache().take(k).repeat()`. You should use `dataset.take(k).cache().repeat()` instead.
```

    accuracy = compute_accuracy(examples['combined'])
    cat_accuracy = compute_accuracy(examples['cat'])
    dog_accuracy = compute_accuracy(examples['dog'])

```
10/10 [==============================] - 2s 77ms/step - loss: 0.0794 - binary_accuracy: 0.9812
5/5 [==============================] - 1s 74ms/step - loss: 0.0608 - binary_accuracy: 0.9933
6/6 [==============================] - 0s 65ms/step - loss: 0.0956 - binary_accuracy: 0.9708
```

## Use the Model Card Toolkit

### Initialize the Model Card Toolkit

The first step is to initialize a `ModelCardToolkit` object, which maintains assets including a [model card JSON file](https://github.com/tensorflow/model-card-toolkit/tree/master/model_card_toolkit/schema/) and [model card document](https://github.com/tensorflow/model-card-toolkit/tree/master/model_card_toolkit/template). Call [`ModelCardToolkit.scaffold_assets()`](https://www.tensorflow.org/responsible_ai/model_card_toolkit/api_docs/python/model_card_toolkit/ModelCardToolkit#scaffold_assets) to generate these assets and return a `ModelCard` object.

    # https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/model_card_toolkit.py
    model_card_dir = tempfile.mkdtemp()
    toolkit = mct.ModelCardToolkit(model_card_dir)

    # https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/model_card.py
    model_card = toolkit.scaffold_assets()

### Annotate the Model Card

The `ModelCard` object returned by `scaffold_assets()` has many fields that can be directly modified. These fields are rendered in the final generated Model Card document. For a comprehensive list, see [model_card.py](https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/model_card.py). See [the documentation](https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/documentation/guide/concepts.md) for more details.

#### Text Fields

##### Model Details

`model_card.model_details` contains many basic metadata fields such as `name`, `owners`, and `version`. You can provide a description for your model in the `overview` field.

    model_card.model_details.name = 'Fine-tuned MobileNetV2 Model for Cats vs. Dogs'
    model_card.model_details.overview = (
        'This model distinguishes cat and dog images. It uses the MobileNetV2 '
        'architecture (https://arxiv.org/abs/1801.04381) and is trained on the '
        'Cats vs Dogs dataset '
        '(https://www.tensorflow.org/datasets/catalog/cats_vs_dogs). This model '
        'performed with high accuracy on both Cat and Dog images.'
    )
    model_card.model_details.owners = [
      mct.Owner(name='Model Cards Team', contact='model-cards@google.com')
    ]
    model_card.model_details.version = mct.Version(name='v1.0', date='08/28/2020')
    model_card.model_details.references = [
        mct.Reference(reference='https://www.tensorflow.org/guide/keras/transfer_learning'),
        mct.Reference(reference='https://arxiv.org/abs/1801.04381'),
    ]
    model_card.model_details.licenses = [mct.License(identifier='Apache-2.0')]
    model_card.model_details.citations = [mct.Citation(citation='https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb')]

##### Quantitative Analysis

`model_card.quantitative_analysis` contains information about a model's performance metrics.

Below, we create some synthetic performance metric values for a hypothetical model built on our dataset.

    model_card.quantitative_analysis.performance_metrics = [
      mct.PerformanceMetric(type='accuracy', value=str(accuracy)),
      mct.PerformanceMetric(type='accuracy', value=str(cat_accuracy), slice='cat'),
      mct.PerformanceMetric(type='accuracy', value=str(dog_accuracy), slice='Dog'),
    ]

##### Considerations

`model_card.considerations` contains qualifying information about your model - what are the appropriate use cases, what are limitations that users should keep in mind, what are the ethical considerations of application, etc.

    model_card.considerations.use_cases = [
        mct.UseCase(description='This model classifies images of cats and dogs.')
    ]
    model_card.considerations.limitations = [
        mct.Limitation(description='This model is not able to classify images of other classes.')
    ]
    model_card.considerations.ethical_considerations = [mct.Risk(
        name=
            'While distinguishing between cats and dogs is generally agreed to be '
            'a benign application of machine learning, harmful results can occur '
            'when the model attempts to classify images that don't contain cats or '
            'dogs.',
        mitigation_strategy=
            'Avoid application on non-dog and non-cat images.'
    )]

#### Graph Fields

It's often best practice for a report to provide information on a model's training data, and its performance across evaluation data. Model Card Toolkit allows users to encode this information in visualizations, rendered in the Model Card.

`model_card` has three sections for graphs -- `model_card.model_parameters.data.train.graphics` for training dataset statistics, `model_card.model_parameters.data.eval.graphics` for evaluation dataset statistics, and `model_card.quantitative_analysis.graphics` for quantitative analysis of model performance.

Graphs are stored as [base64 strings](https://en.wikipedia.org/wiki/Base64). If you have a [matplotlib](https://pypi.org/project/matplotlib/) figure, you can convert it to a base64 string with `model_card_toolkit.utils.graphics.figure_to_base64str()`.

    # Validation Set Size Bar Chart
    fig, ax = plt.subplots()
    width = 0.75
    rects0 = ax.bar(0, len(examples['combined']['examples']), width, label='Overall')
    rects1 = ax.bar(1, len(examples['cat']['examples']), width, label='Cat')
    rects2 = ax.bar(2, len(examples['dog']['examples']), width, label='Dog')
    ax.set_xticks(np.arange(3))
    ax.set_xticklabels(['Overall', 'Cat', 'Dog'])
    ax.set_ylabel('Validation Set Size')
    ax.set_xlabel('Slices')
    ax.set_title('Validation Set Size for Slices')
    validation_set_size_barchart = figure_to_base64str(fig)

![png](https://www.tensorflow.org/static/responsible_ai/model_card_toolkit/examples/Standalone_Model_Card_Toolkit_Demo_files/output_ZMis4kzXdeqy_0.png)

    # Acuracy Bar Chart
    fig, ax = plt.subplots()
    width = 0.75
    rects0 = ax.bar(0, accuracy, width, label='Overall')
    rects1 = ax.bar(1, cat_accuracy, width, label='Cat')
    rects2 = ax.bar(2, dog_accuracy, width, label='Dog')
    ax.set_xticks(np.arange(3))
    ax.set_xticklabels(['Overall', 'Cat', 'Dog'])
    ax.set_ylabel('Accuracy')
    ax.set_xlabel('Slices')
    ax.set_title('Accuracy on Slices')
    accuracy_barchart = figure_to_base64str(fig)

![png](https://www.tensorflow.org/static/responsible_ai/model_card_toolkit/examples/Standalone_Model_Card_Toolkit_Demo_files/output_UPY-j2RG9Wtr_0.png)

Now we can add them to our `ModelCard`.

    model_card.model_parameters.data.append(mct.Dataset())
    model_card.model_parameters.data[0].graphics.collection = [
      mct.Graphic(name='Validation Set Size', image=validation_set_size_barchart),
    ]
    model_card.quantitative_analysis.graphics.collection = [
      mct.Graphic(name='Accuracy', image=accuracy_barchart),
    ]

### Generate the Model Card

Let's generate the Model Card document. Available formats are stored at [model_card_toolkit/template](https://github.com/tensorflow/model-card-toolkit/tree/master/model_card_toolkit/template). Here, we will demonstrate the HTML and Markdown formats.

First, we need to update the `ModelCardToolkit` with the latest `ModelCard`.

    toolkit.update_model_card(model_card)

Now, the `ModelCardToolkit` can generate a Model Card document with [`ModelCardToolkit.export_format()`](https://www.tensorflow.org/responsible_ai/model_card_toolkit/api_docs/python/model_card_toolkit/ModelCardToolkit#export_format).

    # Generate a model card document in HTML (default)
    html_doc = toolkit.export_format()

    # Display the model card document in HTML
    display.display(display.HTML(html_doc))

# Model Card for Fine-tuned MobileNetV2 Model for Cats vs. Dogs

## Model Details

### Overview

This model distinguishes cat and dog images. It uses the MobileNetV2 architecture (https://arxiv.org/abs/1801.04381) and is trained on the Cats vs Dogs dataset (https://www.tensorflow.org/datasets/catalog/cats_vs_dogs). This model performed with high accuracy on both Cat and Dog images.

### Version

name: v1.0 date: 08/28/2020

### Owners

Model Cards Team, model-cards@google.com

### Licenses

- Apache-2.0

### References

- <https://www.tensorflow.org/guide/keras/transfer_learning>
- <https://arxiv.org/abs/1801.04381>

### Citations

- https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb

## Considerations

### Use Cases

- This model classifies images of cats and dogs.

### Limitations

- This model is not able to classify images of other classes.

### Ethical Considerations

- Risk: While distinguishing between cats and dogs is generally agreed to be a benign application of machine learning, harmful results can occur when the model attempts to classify images that don't contain cats or dogs. Mitigation Strategy: Avoid application on non-dog and non-cat images.

## Datasets

![Validation Set Size](data:image/jpeg;base64,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+/bthiTj008/zbf/9ddfNyQZqampRosWLYyZM2da+yZPnmy0a9fOuly3bl0jOjra5vkvvPCCERQUZBjG/4WduXPn3rSu3r17G08++aR1mbCD/OzYscOQZHzyySeFet6qVauMSpUqWZeXLVtmeHl52bk63EluFHYGDx5sNG7c2NiwYYPh6OhoJCUlWfv27dtnSDJ++OEHwzAMo127dkZkZKTN8zt27EjYsRNOY93hjALcQDs8PFzR0dHW8e+//77Cw8MlSZmZmUpISNCoUaPk7u5ufbz44otKSEiwWU/r1q1tlrOzs/XCCy8oMDBQPj4+cnd319dff62kpCQ77R3MqiCfW0natGmTunXrprvuukseHh565JFHdObMGV24cKGEKwT+/JxaLBYdOHBANWrUUI0aNax9TZo0kbe3tw4cOCBJOnTokNq2bWvz/L8uo+gIO3eoevXqWX8J83PgwAFVrFhRVapU0dChQ3Xo0CHt2rVL27ZtU3JysgYPHixJ1vkPS5YsUXx8vPWxd+9e67yJXG5ubjbLr732mubNm6dnnnlGmzdvVnx8vEJCQnT58uUS2GOYSf369WWxWHTw4MHrjklMTFSfPn3UvHlzrV69Wjt37tTChQslic8YbokDBw6odu3apV0GRNi5Y1WqVEk9evTQokWLdPHiRZu+lJQUrVy5UoMHD5bFYlH16tXVuXNnrVy5UitXrlSPHj3k6+srSfLz81O1atX066+/ql69ejaPm/2Sf//99+rfv78efvhhtWjRQnXq1NH//ve/EttnmIePj49CQkK0cOFCZWZm5ulPS0vTzp07lZOTo//85z9q3769GjRooOPHj9uMc3JyUnZ29q0qG3eQ2NhY7dmzR2FhYWrcuLGSk5OVnJxs7d+/f7/S0tLUpEkTSVLDhg31448/2qzjr8soOsLOHeyNN95QVlaWQkJC9M033yg5OVnr169Xjx49dNddd+mll16yjg0PD9cHH3ygVatWWU9h5ZoxY4Zmz56t+fPn63//+5/27NmjZcuW6fXXX7/h9uvXr6+NGzdq27ZtOnDggP7+97/nuToBuJ6FCxcqOztbbdu21erVq3X48GEdOHBA8+fPV1BQkOrVq6crV65owYIF+vXXX7VixQotXrzYZh21atXS+fPnFRMTo9OnT3N6C0WSlZWllJQU/f7779q1a5dmzZql/v37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)

## Quantitative Analysis

| Name | Value |
|---|---|
| accuracy | 0.981249988079071 |
| accuracy, cat | 0.9932885766029358 |
| accuracy, Dog | 0.9707602262496948 |
[Performance Metrics]

![Accuracy](data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAjcAAAHHCAYAAABDUnkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA2PUlEQVR4nO3deVhWdf7/8dcNCigILggoIuCuE+KOlGZOEJlrqZnjDIhljbkVU5Na7iaNjUtuMWmmM6GSS47fySxDvawRdVxwySVFCVJB0RRFA4Xz+6Of98SAy23ADcfn47rOdXV/zudzzvvc122+/JzPuW+LYRiGAAAATMLB3gUAAACUJMINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINANhBQECABg8ebH29detWWSwWbd261W41AWZBuAEqkIULF8pisSgkJMTepeA2Dh48qH79+snf318uLi7y9fVVeHi45s2bZ+/SgAeGhd+WAiqORx55RGfOnFFqaqqOHz+uRo0a2bsk/ML27dvVtWtX1a9fX1FRUfLx8VF6erp27NihlJQUnThxwto3ICBAjz32mJYuXSpJKigoUF5enpycnOTgwL87gV+jkr0LAHBvTp06pe3bt2vt2rV66aWXFB8fr4kTJ9q7rGLl5OTI1dXV3mWUubffflseHh76z3/+o+rVqxfad+7cuTuOdXBwkIuLSylWBzw4+OcBUEHEx8erRo0a6t69u/r166f4+Phi+126dEmvvvqqAgIC5OzsrHr16ikyMlJZWVnWPj/99JMmTZqkJk2ayMXFRXXq1NEzzzyjlJQUSbdf/5GamiqLxWKdbZCkwYMHy83NTSkpKXrqqadUrVo1DRo0SJL09ddfq3///qpfv76cnZ3l5+enV199VdevXy9S99GjR/Xss8+qdu3aqlKlipo2bao333xTkrRlyxZZLBZ9+umnRcYtX75cFotFSUlJd3z/Tp48qf79+6tmzZqqWrWqOnbsqM8++6xQn1vX/cknn+jtt99WvXr15OLioscff7zQrMvtpKSk6De/+U2RYCNJXl5edxx7u/d8586deuqpp1SjRg25urqqZcuWeu+99wr1OXr0qPr166eaNWvKxcVF7dq10/r16wv1uXHjhiZPnqzGjRvLxcVFtWrVUqdOnbRp06a7XhdQ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AABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTsXu4WbBggQICAuTi4qKQkBDt2rXrjv3nzJmjpk2bqkqVKvLz89Orr76qn376qYyqBQAA5Z1dw01CQoJiYmI0ceJE7d27V8HBwYqIiNC5c+eK7b98+XKNGTNGEydO1JEjR/Thhx8qISFB48aNK+PKAQBAeWXXcDNr1iwNHTpU0dHRatGiheLi4lS1alUtWbKk2P7bt2/XI488ot/97ncKCAjQE088oYEDB951tgcAADw47BZu8vLytGfPHoWFhf23GAcHhYWFKSkpqdgxDz/8sPbs2WMNMydPntSGDRv01FNP3fY8ubm5ys7OLrQBAADzqmSvE2dlZSk/P1/e3t6F2r29vXX06NFix/zud79TVlaWOnXqJMMwdPPmTf3xj3+8422p2NhYTZ48uURrBwAA5ZfdFxTbYuvWrZo+fboWLlyovXv3au3atfrss880derU244ZO3asLl++bN3S09PLsGIAAFDW7DZz4+npKUdHR2VmZhZqz8zMlI+PT7Fjxo8frz/84Q964YUXJElBQUHKycnRiy++qDfffFMODkWzmrOzs5ydnUv+AgAAQLlkt5kbJycntW3bVomJida2goICJSYmKjQ0tNgx165dKxJgHB0dJUmGYZResQAAoMKw28yNJMXExCgqKkrt2rVThw4dNGfOHOXk5Cg6OlqSFBkZKV9fX8XGxkqSevbsqVmzZql169YKCQnRiRMnNH78ePXs2dMacgAAwIPNruFmwIABOn/+vCZMmKCMjAy1atVKGzdutC4yTktLKzRT89Zbb8liseitt97S6dOnVbt2bfXs2VNvv/22vS4BAACUMxbjAbufk52dLQ8PD12+fFnu7u4lfvyAMZ+V+DFRPqW+093eJdzdJA97V4CyMumyvSu4q6BlQfYuAWXkYNTBEj+mLX9/V6inpQAAAO6GcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMA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)

You can also output a Model Card in other formats, like Markdown.

    # Generate a model card document in Markdown
    md_path = os.path.join(model_card_dir, 'template/md/default_template.md.jinja')
    md_doc = toolkit.export_format(template_path=md_path, output_file='model_card.md')

    # Display the model card document in Markdown
    display.display(display.Markdown(md_doc))

# Model Card for Fine-tuned MobileNetV2 Model for Cats vs. Dogs

## Model Details

### Overview

This model distinguishes cat and dog images. It uses the MobileNetV2 architecture (<https://arxiv.org/abs/1801.04381>) and is trained on the Cats vs Dogs dataset (<https://www.tensorflow.org/datasets/catalog/cats_vs_dogs>). This model performed with high accuracy on both Cat and Dog images.

### Version

name: v1.0

date: 08/28/2020

### Owners

- Model Cards Team, model-cards@google.com

### Licenses

- Apache-2.0

### References

- <https://www.tensorflow.org/guide/keras/transfer_learning>
- <https://arxiv.org/abs/1801.04381>

### Citations

- <https://github.com/tensorflow/model-card-toolkit/blob/master/model_card_toolkit/documentation/examples/Standalone_Model_Card_Toolkit_Demo.ipynb>

## Considerations

### Use Cases

- This model classifies images of cats and dogs.

### Limitations

- This model is not able to classify images of other classes.

### Ethical Considerations

- Risk: While distinguishing between cats and dogs is generally agreed to be a benign application of machine learning, harmful results can occur when the model attempts to classify images that don't contain cats or dogs.
  - Mitigation Strategy: Avoid application on non-dog and non-cat images.

## Graphics

### Validation Set Size

![](data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAjsAAAHHCAYAAABZbpmkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAABEs0lEQVR4nO3deVwVZf//8fcBZZFVVEBTcd9RyxU1NDckt27JLUpc0vsu3LK6y25zq7TlvnNLs7xT0qTFrMxKU0FtEa00cvdWksAU3AIUFRXm90c/ztcTqCwHwfH1fDzOI+a6rjPzmXMO8XbmmjkWwzAMAQAAmJRDaRcAAABQkgg7AADA1Ag7AADA1Ag7AADA1Ag7AADA1Ag7AADA1Ag7AADA1Ag7AADA1Ag7AADA1Ag7QAlLTEyUxWJRVFSUtW369OmyWCwFer7FYtH06dPtWlOXLl3UpUsXu67TbLZs2SKLxaItW7bc0u3++OOP6tChg9zc3GSxWBQfH39Lt389f/3M5Pe5Bsoqwg5wjX79+qlChQo6d+7cdceEh4fLyclJZ86cuYWVFd7+/fs1ffp0JSYmlnYpNhITEzVixAjVrVtXLi4u8vf3V3BwsKZNm1ak9X311VeFCoM5OTlavny52rVrJx8fH3l4eKhBgwYaNmyYtm/fXqQa7OXKlSsaOHCgzp49qzlz5mjFihUKCAgo0W3a+/0AyqJypV0AUJaEh4dr7dq1+vTTTzVs2LA8/RcuXNCaNWvUq1cvVapUqcjbmTJlip599tnilHpT+/fv14wZM9SlSxfVqlXLpm/Dhg0luu3rOXLkiNq0aSNXV1eNHDlStWrV0okTJ7Rr1y698sormjFjRqHX+dVXX2nhwoUFDjzjx4/XwoUL1b9/f4WHh6tcuXI6dOiQ1q1bpzp16qh9+/aSpODgYF28eFFOTk6FrqmoEhIS9Ntvv2nJkiV69NFHS3x7xXk/AgICdPHiRZUvX77E6wSKi7ADXKNfv37y8PBQdHR0vmFnzZo1yszMVHh4eLG2U65cOZUrV3q/frfyD/i15syZo/Pnzys+Pj7PEYuTJ0+W+PZTU1O1aNEijR49Wm+//bZN39y5c3Xq1CnrsoODg1xcXEq8pmvlvgbe3t52W2dmZqbc3Nzy7SvO+2GxWG756wMUFaexgGu4urpqwIABiomJyfd/9tHR0fLw8FC/fv109uxZPfXUUwoMDJS7u7s8PT0VGhqqX3755abbyW/OTlZWlp544glVqVLFuo1jx47lee5vv/2mxx9/XA0bNpSrq6sqVaqkgQMH2pyuioqK0sCBAyVJ9913nywWi838k/zm7Jw8eVKjRo2Sn5+fXFxc1KJFC7377rs2Y3Lnafz73//W22+/rbp168rZ2Vlt2rTRjz/+eNP9TkhIUPXq1fM9NePr65unbd26dbr33nvl5uYmDw8P9e7dW/v27bP2Dx8+XAsXLpQk6z7eaC7U0aNHZRiGOnbsmKfPYrHY1PDXOTtRUVE227j28dfX8r333lOrVq3k6uoqHx8fDRkyRMnJyTd8bYYPH67OnTtLkgYOHJhnvbGxsdbXwtvbW/3799eBAwds1pH7udq/f78eeughVaxYUZ06dbruNgv7flzrenN2Dh48qEGDBqlKlSpydXVVw4YN9a9//ctmzO+//66RI0fKz89Pzs7Oatq0qZYuXZpnGwsWLFDTpk1VoUIFVaxYUa1bt1Z0dPQN6wLyw5Ed4C/Cw8P17rvv6qOPPtLYsWOt7WfPntXXX3+toUOHytXVVfv27dNnn32mgQMHqnbt2kpNTdVbb72lzp07a//+/apWrVqhtvvoo4/qvffe00MPPaQOHTooNjZWvXv3zjPuxx9/1LZt2zRkyBBVr15diYmJevPNN9WlSxft379fFSpUUHBwsMaPH6/58+frueeeU+PGjSXJ+t+/unjxorp06aIjR45o7Nixql27tlatWqXhw4crLS1NEyZMsBkfHR2tc+fO6e9//7ssFoteffVVDRgwQL/++usNT2sEBARo06ZNio2NVdeuXW/4eqxYsUIREREKCQnRK6+8ogsXLujNN99Up06d9PPPP6tWrVr6+9//ruPHj2vjxo1asWLFzV5i6x/1VatWaeDAgapQocJNn5MrODg4zzZ+++03TZkyxSYYvPTSS3r++ec1aNAgPfroozp16pQWLFig4OBg/fzzz9c9avP3v/9dd911l2bNmqXx48erTZs28vPzkyRt2rRJoaGhqlOnjqZPn66LFy9qwYIF6tixo3bt2pXnNOXAgQNVv359zZo1S4Zh3PD1KOj7URC7d+/Wvffeq/Lly2vMmDGqVauWEhIStHbtWr300kuS/jy61r59e1ksFo0dO1ZVqlTRunXrNGrUKGVkZGjixImSpCVLlmj8+PF68MEHNWHCBF26dEm7d+/Wjh079NBDDxW7VtxhDAA2rl69alStWtUICgqyaV+8eLEhyfj6668NwzCMS5cuGdnZ2TZjjh49ajg7OxszZ860aZNkLFu2zNo2bdo049pfv/j4eEOS8fjjj9us76GHHjIkGdOmTbO2XbhwIU/NcXFxhiRj+fLl1rZVq1YZkozNmzfnGd+5c2ejc+fO1uW5c+cakoz33nvP2nb58mUjKCjIcHd3NzIyMmz2pVKlSsbZs2etY9esWWNIMtauXZtnW9fau3ev4erqakgyWrZsaUyYMMH47LPPjMzMTJtx586dM7y9vY3Ro0fbtKekpBheXl427ZGRkUZh/lc2bNgwQ5JRsWJF429/+5vx73//2zhw4ECecZs3b77u62cYhnHx4kWjVatWRrVq1YwTJ04YhmEYiYmJhqOjo/HSSy/ZjN2zZ49Rrly5PO3X2+aqVats2lu2bGn4+voaZ86csbb98ssvhoODgzFs2DBrW+7naujQoTfcTq6Cvh+Gkfczk9/nOjg42PDw8DB+++03m+fm5ORYfx41apRRtWpV4/Tp0zZjhgwZYnh5eVk/3/379zeaNm1aoP0AbobTWMBfODo6asiQIYqLi7M5NRQdHS0/Pz9169ZNkuTs7CwHhz9/hbKzs3XmzBm5u7urYcOG2rVrV6G2+dVXX0n6c/LstXL/lXstV1dX689XrlzRmTNnVK9ePXl7exd6u9du39/fX0OHDrW2lS9fXuPHj9f58+e1detWm/GDBw9WxYoVrcv33nuvJOnXX3+94XaaNm2q+Ph4Pfzww0pMTNS8efP0wAMPyM/PT0uWLLGO27hxo9LS0jR06FCdPn3a+nB0dFS7du20efPmIu2nJC1btkxvvPGGateurU8//VRPPfWUGjdurG7duun3338v8Hoef/xx7dmzR6tXr5a/v78k6ZNPPlFOTo4GDRpkU7e/v7/q169fpLpPnDih+Ph4DR8+XD4+Ptb25s2bq0ePHtbPzrX+8Y9/FGjdBX0/CuLUqVP65ptvNHLkSNWsWdOmL/fUomEYWr16tfr27SvDMGxeo5CQEKWnp1s/w97e3jp27FiBTo8CN0PYAfKROwE5d37AsWPH9O2332rIkCFydHSU9OclzHPmzFH9+vXl7OysypUrq0qVKtq9e7fS09MLtb3ffvtNDg4Oqlu3rk17w4YN84y9ePGipk6dqho1athsNy0trdDbvXb79evXt4a3XLmnvX777Teb9r/+McsNPn/88cdNt9WgQQOtWLFCp0+f1u7duzVr1iyVK1dOY8aM0aZNmyRJhw8fliR17dpVVapUsXls2LChWJOZHRwcFBkZqZ07d+r06dNas2aNQkNDFRsbqyFDhhRoHW+99ZaWLVumBQsWWK/eyq3bMAzVr18/T90HDhwoUt25r31+n4XGjRvr9OnTyszMtGmvXbt2gddfkPejIHKDbrNmza475tSpU0pLS9Pbb7+d5/UZMWKEpP+bGP3MM8/I3d1dbdu2Vf369RUZGanvv/++wPUA12LODpCPVq1aqVGjRnr//ff13HPP6f3335dhGDZXYc2aNUvPP/+8Ro4cqRdeeEE+Pj5ycHDQxIkTlZOTU2K1jRs3TsuWLdPEiRMVFBQkLy8vWSwWDRkypES3e63cwPdXxg3mh+S3jsDAQAUGBiooKEj33XefVq5cqe7du1v3Y8WKFdajJtey15VslSpVUr9+/dSvXz916dJFW7du1W+//XbDe9v88MMPmjBhgh599FGNGTPGpi8nJ0cWi0Xr1q3L9zVyd3e3S903c+3Rv4K60fthL7nv68MPP6yIiIh8xzRv3lzSn0Hu0KFD+uKLL7R+/XqtXr1aixYt0tSpU4t0iwLc2Qg7wHWEh4fr+eef1+7duxUdHa369eurTZs21v6PP/5Y9913n9555x2b56Wlpaly5cqF2lZAQIBycnKUkJBg8y/4Q4cO5Rn78ccfKyIiQv/5z3+sbZcuXVJaWprNuILeoTl3+7t371ZOTo7N0Z2DBw9a+0tS69atJf15ykaS9QiXr6/vTf/YFmY/b1bD1q1bdeLEievu76lTp/Tggw+qZcuW1qvArlW3bl0ZhqHatWurQYMGdqkrt5b8PgsHDx5U5cqVr3tpeVH99f0oiDp16kiS9u7de90xuVcaZmdnFyhEubm5afDgwRo8eLAuX76sAQMG6KWXXtLkyZO57B2Fwmks4Dpyj+JMnTpV8fHxee6t4+jomOdIxqpVqwo17yNXaGioJGn+/Pk27XPnzs0zNr/tLliwQNnZ2TZtuX8A/xqC8nP//fcrJSVFH374obXt6tWrWrBggdzd3a2XRBfXt99+qytXruRpz513khv0QkJC5OnpqVmzZuU7/tr74RRmP1NSUrR///487ZcvX1ZMTIwcHBxUr169fJ+bnZ2tIUOG6PLly1q9enW+9yoaMGCAHB0dNWPGjDzvkWEYRbrrdtWqVdWyZUu9++67Nvu4d+9ebdiwQffff3+h15mroO9HQVSpUkXBwcFaunSpkpKSbPpyXwtHR0eFhYVp9erV+Yaia9/Xv75WTk5OatKkiQzDyLdm4EY4sgNcR+3atdWhQwetWbNGkvKEnT59+mjmzJkaMWKEOnTooD179mjlypXWf+EWRsuWLTV06FAtWrRI6enp6tChg2JiYnTkyJE8Y/v06aMVK1bIy8tLTZo0UVxcnDZt2pTnjs4tW7aUo6OjXnnlFaWnp8vZ2Vldu3bN9/4pY8aM0VtvvaXhw4dr586dqlWrlj7++GN9//33mjt3rjw8PAq9T/l55ZVXtHPnTg0YMMB6umLXrl1avny5fHx8rBOyPT099eabb+qRRx7RPffcoyFDhqhKlSpKSkrSl19+qY4dO+qNN96Q9OcpR+nPyd0hISHWCeb5OXbsmNq2bauuXbuqW7du8vf318mTJ/X+++/rl19+0cSJE697VG7x4sWKjY3VP/7xjzwTjf38/NSjRw/VrVtXL774oiZPnqzExEQ98MAD8vDw0NGjR/Xpp59qzJgxeuqppwr9ur322msKDQ1VUFCQRo0aZb303MvLq1jfm1bQ96Og5s+fr06dOumee+7RmDFjVLt2bSUmJurLL7+0fsfXyy+/rM2bN6tdu3YaPXq0mjRporNnz2rXrl3atGmTzp49K0nq2bOn/P391bFjR/n5+enAgQN644031Lt3b7t9HnEHKZ2LwIDbw8KFCw1JRtu2bfP0Xbp0yXjyySeNqlWrGq6urkbHjh2NuLi4Al2i+9dLzw3jz0uZx48fb1SqVMlwc3Mz+vbtayQnJ+e59PyPP/4wRowYYVSuXNlwd3c3QkJCjIMHDxoBAQFGRESEzTqXLFli1KlTx3B0dLS5jPqvNRqGYaSmplrX6+TkZAQGBtrUfO2+vPbaa3lej7/WmZ/vv//eiIyMNJo1a2Z4eXkZ5cuXN2rWrGkMHz7cSEhIyDN+8+bNRkhIiOHl5WW4uLgYdevWNYYPH2789NNP1jFXr141xo0bZ1SpUsWwWCw3vAw9IyPDmDdvnhESEmJUr17dKF++vOHh4WEEBQUZS5YssblE+q+Xnue+Z/k9/vparl692ujUqZPh5uZmuLm5GY0aNTIiIyONQ4cO3fD1ud6l54ZhGJs2bTI6duxouLq6Gp6enkbfvn2N/fv324zJrfHUqVM33E6uwrwfBflcG8afl7P/7W9/M7y9vQ0XFxejYcOGxvPPP28zJjU11YiMjDRq1KhhlC9f3vD39ze6detmvP3229Yxb731lhEcHGxUqlTJcHZ2NurWrWs8/fTTRnp6eoH2DbiWxTAKMaMQAADgNsOcHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGrcVFB/fl/L8ePH5eHhYbdbzwMAgJJlGIbOnTunatWq5fki42sRdiQdP35cNWrUKO0yAABAESQnJ6t69erX7SfsSNZbjycnJ8vT07OUqwEAAAWRkZGhGjVq3PQrRAg7+r9vTfb09CTsAABwm7nZFBQmKAMAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMrV9oFmF2tZ78s7RJwiyS+3Lu0SwAA5IMjOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNRKNey8+eabat68uTw9PeXp6amgoCCtW7fO2n/p0iVFRkaqUqVKcnd3V1hYmFJTU23WkZSUpN69e6tChQry9fXV008/ratXr97qXQEAAGVUqYad6tWr6+WXX9bOnTv1008/qWvXrurfv7/27dsnSXriiSe0du1arVq1Slu3btXx48c1YMAA6/Ozs7PVu3dvXb58Wdu2bdO7776rqKgoTZ06tbR2CQAAlDEWwzCM0i7iWj4+Pnrttdf04IMPqkqVKoqOjtaDDz4oSTp48KAaN26suLg4tW/fXuvWrVOfPn10/Phx+fn5SZIWL16sZ555RqdOnZKTk1OBtpmRkSEvLy+lp6fL09PTrvtT69kv7bo+lF2JL/cu7RIA4I5S0L/fZWbOTnZ2tj744ANlZmYqKChIO3fu1JUrV9S9e3frmEaNGqlmzZqKi4uTJMXFxSkwMNAadCQpJCREGRkZ1qNDAADgzlautAvYs2ePgoKCdOnSJbm7u+vTTz9VkyZNFB8fLycnJ3l7e9uM9/PzU0pKiiQpJSXFJujk9uf2XU9WVpaysrKsyxkZGXbaGwAAUNaU+pGdhg0bKj4+Xjt27NBjjz2miIgI7d+/v0S3OXv2bHl5eVkfNWrUKNHtAQCA0lPqYcfJyUn16tVTq1atNHv2bLVo0ULz5s2Tv7+/Ll++rLS0NJvxqamp8vf3lyT5+/vnuTordzl3TH4mT56s9PR06yM5Odm+OwUAAMqMUg87f5WTk6OsrCy1atVK5cuXV0xMjLXv0KFDSkpKUlBQkCQpKChIe/bs0cmTJ61jNm7cKE9PTzVp0uS623B2drZe7p77AAAA5lSqc3YmT56s0NBQ1axZU+fOnVN0dLS2bNmir7/+Wl5eXho1apQmTZokHx8feXp6aty4cQoKClL79u0lST179lSTJk30yCOP6NVXX1VKSoqmTJmiyMhIOTs7l+auAQCAMqJUw87Jkyc1bNgwnThxQl5eXmrevLm+/vpr9ejRQ5I0Z84cOTg4KCwsTFlZWQoJCdGiRYusz3d0dNQXX3yhxx57TEFBQXJzc1NERIRmzpxZWrsEAADKmDJ3n53SwH12YA/cZwcAbq3b7j47AAAAJYGwAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATK1Uw87s2bPVpk0beXh4yNfXVw888IAOHTpkM6ZLly6yWCw2j3/84x82Y5KSktS7d29VqFBBvr6+evrpp3X16tVbuSsAAKCMKleaG9+6dasiIyPVpk0bXb16Vc8995x69uyp/fv3y83NzTpu9OjRmjlzpnW5QoUK1p+zs7PVu3dv+fv7a9u2bTpx4oSGDRum8uXLa9asWbd0fwAAQNlTqmFn/fr1NstRUVHy9fXVzp07FRwcbG2vUKGC/P39813Hhg0btH//fm3atEl+fn5q2bKlXnjhBT3zzDOaPn26nJycSnQfAABA2Vam5uykp6dLknx8fGzaV65cqcqVK6tZs2aaPHmyLly4YO2Li4tTYGCg/Pz8rG0hISHKyMjQvn37bk3hAACgzCrVIzvXysnJ0cSJE9WxY0c1a9bM2v7QQw8pICBA1apV0+7du/XMM8/o0KFD+uSTTyRJKSkpNkFHknU5JSUl321lZWUpKyvLupyRkWHv3QEAAGVEmQk7kZGR2rt3r7777jub9jFjxlh/DgwMVNWqVdWtWzclJCSobt26RdrW7NmzNWPGjGLVCwAAbg9l4jTW2LFj9cUXX2jz5s2qXr36Dce2a9dOknTkyBFJkr+/v1JTU23G5C5fb57P5MmTlZ6ebn0kJycXdxcAAEAZVaphxzAMjR07Vp9++qliY2NVu3btmz4nPj5eklS1alVJUlBQkPbs2aOTJ09ax2zcuFGenp5q0qRJvutwdnaWp6enzQMAAJhTqZ7GioyMVHR0tNasWSMPDw/rHBsvLy+5uroqISFB0dHRuv/++1WpUiXt3r1bTzzxhIKDg9W8eXNJUs+ePdWkSRM98sgjevXVV5WSkqIpU6YoMjJSzs7Opbl7AACgDCjVIztvvvmm0tPT1aVLF1WtWtX6+PDDDyVJTk5O2rRpk3r27KlGjRrpySefVFhYmNauXWtdh6Ojo7744gs5OjoqKChIDz/8sIYNG2ZzXx4AAHDnKtUjO4Zh3LC/Ro0a2rp1603XExAQoK+++speZQEAABMpExOUAQAASgphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmFqRw87ly5d16NAhXb161Z71AAAA2FWhw86FCxc0atQoVahQQU2bNlVSUpIkady4cXr55ZftXiAAAEBxFDrsTJ48Wb/88ou2bNkiFxcXa3v37t314Ycf2rU4AACA4ipX2Cd89tln+vDDD9W+fXtZLBZre9OmTZWQkGDX4gAAAIqr0Ed2Tp06JV9f3zztmZmZNuEHAACgLCh02GndurW+/PJL63JuwPnvf/+roKAg+1UGAABgB4U+jTVr1iyFhoZq//79unr1qubNm6f9+/dr27Zt2rp1a0nUCAAAUGSFPrLTqVMnxcfH6+rVqwoMDNSGDRvk6+uruLg4tWrVqiRqBAAAKLJCH9mRpLp162rJkiX2rgUAAMDuCn1kp2vXrpoxY0ae9j/++ENdu3a1S1EAAAD2UugjO1u2bNGePXv0888/a+XKlXJzc5P05x2VmbMDAADKmiJ9XcSmTZuUkpKi9u3bKzEx0c4lAQAA2E+Rwk7VqlW1detWBQYGqk2bNtqyZYudywIAALCPQoed3PvqODs7Kzo6WhMmTFCvXr20aNEiuxcHAABQXIWes2MYhs3ylClT1LhxY0VERNitKAAAAHspdNg5evSoKleubNMWFhamhg0baufOnXYrDAAAwB4KHXYCAgLybW/WrJmaNWtW7IIAAADsqUBhZ8CAAYqKipKnp6cGDBhww7GffPKJXQoDAACwhwKFHS8vL+vEZC8vrxItCAAAwJ4KFHaWLVuW788AAABlXZG+G+taW7duVWZmpoKCglSxYkV71AQAAGA3BQ47r7zyis6fP68XXnhB0p+XoIeGhmrDhg2SJF9fX8XExKhp06YlUykAAEARFPimgh9++KHN1VYff/yxvvnmG3377bc6ffq0Wrdune8XhAIAAJSmAoedo0ePqnnz5tblr776Sg8++KA6duwoHx8fTZkyRXFxcYXa+OzZs9WmTRt5eHjI19dXDzzwgA4dOmQz5tKlS4qMjFSlSpXk7u6usLAwpaam2oxJSkpS7969VaFCBfn6+urpp5/W1atXC1ULAAAwpwKHnatXr8rZ2dm6HBcXpw4dOliXq1WrptOnTxdq41u3blVkZKS2b9+ujRs36sqVK+rZs6cyMzOtY5544gmtXbtWq1at0tatW3X8+HGby9+zs7PVu3dvXb58Wdu2bdO7776rqKgoTZ06tVC1AAAAcyrwnJ26devqm2++UZ06dZSUlKT//e9/Cg4OtvYfO3ZMlSpVKtTG169fb7McFRUlX19f7dy5U8HBwUpPT9c777yj6Ohode3aVdKfV4M1btxY27dvV/v27bVhwwbt379fmzZtkp+fn1q2bKkXXnhBzzzzjKZPny4nJ6dC1QQAAMylwEd2IiMjNXbsWI0aNUqhoaEKCgpSkyZNrP2xsbG6++67i1VMenq6JMnHx0eStHPnTl25ckXdu3e3jmnUqJFq1qxpPWUWFxenwMBA+fn5WceEhIQoIyND+/btK1Y9AADg9lfgIzujR4+Wo6Oj1q5dq+DgYE2bNs2m//jx4xo5cmSRC8nJydHEiRPVsWNH60TolJQUOTk5ydvb22asn5+fUlJSrGOuDTq5/bl9+cnKylJWVpZ1OSMjo8h1AwCAsq1Q99kZOXLkdQPNokWLilVIZGSk9u7dq++++65Y6ymI2bNnc+UYAAB3iAKfxipJY8eO1RdffKHNmzerevXq1nZ/f39dvnxZaWlpNuNTU1Pl7+9vHfPXq7Nyl3PH/NXkyZOVnp5ufSQnJ9txbwAAQFlSqmHHMAyNHTtWn376qWJjY1W7dm2b/latWql8+fKKiYmxth06dEhJSUkKCgqSJAUFBWnPnj06efKkdczGjRvl6elpM6foWs7OzvL09LR5AAAAcyr210UUR2RkpKKjo7VmzRp5eHhY59h4eXnJ1dVVXl5eGjVqlCZNmiQfHx95enpq3LhxCgoKUvv27SVJPXv2VJMmTfTII4/o1VdfVUpKiqZMmaLIyEibS+UBAMCdqVTDzptvvilJ6tKli037smXLNHz4cEnSnDlz5ODgoLCwMGVlZSkkJMRmfpCjo6O++OILPfbYYwoKCpKbm5siIiI0c+bMW7UbAACgDLMYhmEU5gkjR47UvHnz5OHhYdOemZmpcePGaenSpXYt8FbIyMiQl5eX0tPT7X5Kq9azX9p1fSi7El/uXdolAMAdpaB/vws9Z+fdd9/VxYsX87RfvHhRy5cvL+zqAAAASlSBT2NlZGTIMAwZhqFz587JxcXF2pedna2vvvpKvr6+JVIkAABAURU47Hh7e8tischisahBgwZ5+i0WC/euAQAAZU6Bw87mzZtlGIa6du2q1atXW7/SQZKcnJwUEBCgatWqlUiRAAAARVXgsNO5c2dJ0tGjR1WzZk1ZLJYSKwoAAMBeCj1BOSAgQN99950efvhhdejQQb///rskacWKFbfkqx4AAAAKo9BhZ/Xq1QoJCZGrq6t27dpl/ULN9PR0zZo1y+4FAgAAFEehw86LL76oxYsXa8mSJSpfvry1vWPHjtq1a5ddiwMAACiuQoedQ4cOKTg4OE+7l5dXni/sBAAAKG2FDjv+/v46cuRInvbvvvtOderUsUtRAAAA9lLosDN69GhNmDBBO3bskMVi0fHjx7Vy5Uo99dRTeuyxx0qiRgAAgCIr9BeBPvvss8rJyVG3bt104cIFBQcHy9nZWU899ZTGjRtXEjUCAAAUWaHDjsVi0b/+9S89/fTTOnLkiM6fP68mTZrI3d29JOoDAAAolkKfxsrl5OSkJk2ayM/PT0lJScrJybFnXQAAAHZR4LCzdOlSvf766zZtY8aMUZ06dRQYGKhmzZopOTnZ7gUCAAAUR4HDzttvv62KFStal9evX69ly5Zp+fLl+vHHH+Xt7c0XgQIAgDKnwHN2Dh8+rNatW1uX16xZo/79+ys8PFySNGvWLI0YMcL+FQIAABRDgY/sXLx4UZ6entblbdu22dxcsE6dOkpJSbFvdQAAAMVU4LATEBCgnTt3SpJOnz6tffv2qWPHjtb+lJQUeXl52b9CAACAYijwaayIiAhFRkZq3759io2NVaNGjdSqVStr/7Zt29SsWbMSKRIAAKCoChx2/vnPf+rChQv65JNP5O/vr1WrVtn0f//99xo6dKjdCwQAACgOi2EYRmkXUdoyMjLk5eWl9PR0m3lJ9lDr2S/tuj6UXYkv9y7tEgDgjlLQv99FvqkgAADA7YCwAwAATI2wAwAATI2wAwAATK3Q33oOAIA9BL4bWNol4BbZE7GnVLdf6LCTnZ2tqKgoxcTE6OTJk3m+7Tw2NtZuxQEAABRXocPOhAkTFBUVpd69e6tZs2ayWCwlURcAAIBdFDrsfPDBB/roo490//33l0Q9AAAAdlXoCcpOTk6qV69eSdQCAABgd4UOO08++aTmzZsnbrwMAABuB4U+jfXdd99p8+bNWrdunZo2bary5cvb9H/yySd2Kw4AAKC4Ch12vL299be//a0kagEAALC7QoedZcuWlUQdAAAAJaLINxU8deqUDh06JElq2LChqlSpYreiAAAA7KXQE5QzMzM1cuRIVa1aVcHBwQoODla1atU0atQoXbhwoSRqBAAAKLJCh51JkyZp69atWrt2rdLS0pSWlqY1a9Zo69atevLJJ0uiRgAAgCIr9Gms1atX6+OPP1aXLl2sbffff79cXV01aNAgvfnmm/asDwAAoFgKfWTnwoUL8vPzy9Pu6+vLaSwAAFDmFDrsBAUFadq0abp06ZK17eLFi5oxY4aCgoLsWhwAAEBxFfo01rx58xQSEqLq1aurRYsWkqRffvlFLi4u+vrrr+1eIAAAQHEUOuw0a9ZMhw8f1sqVK3Xw4EFJ0tChQxUeHi5XV1e7FwgAAFAcRbrPToUKFTR69Gh71wIAAGB3BZqz8/nnn+vKlSvWn2/0KIxvvvlGffv2VbVq1WSxWPTZZ5/Z9A8fPlwWi8Xm0atXL5sxZ8+eVXh4uDw9PeXt7a1Ro0bp/PnzhaoDAACYV4GO7DzwwANKSUmRr6+vHnjggeuOs1gsys7OLvDGMzMz1aJFC40cOVIDBgzId0yvXr1svqLC2dnZpj88PFwnTpzQxo0bdeXKFY0YMUJjxoxRdHR0gesAAADmVaCwk5OTk+/PxRUaGqrQ0NAbjnF2dpa/v3++fQcOHND69ev1448/qnXr1pKkBQsW6P7779e///1vVatWzW61AgCA21OhLz1fvny5srKy8rRfvnxZy5cvt0tR19qyZYt8fX3VsGFDPfbYYzpz5oy1Ly4uTt7e3tagI0ndu3eXg4ODduzYYfdaAADA7afQYWfEiBFKT0/P037u3DmNGDHCLkXl6tWrl5YvX66YmBi98sor2rp1q0JDQ62nynJPrV2rXLly8vHxUUpKynXXm5WVpYyMDJsHAAAwp0JfjWUYhiwWS572Y8eOycvLyy5F5RoyZIj158DAQDVv3lx169bVli1b1K1btyKvd/bs2ZoxY4Y9SgQAAGVcgcPO3Xffbb0iqlu3bipX7v+emp2draNHj+a5Usre6tSpo8qVK+vIkSPq1q2b/P39dfLkSZsxV69e1dmzZ687z0eSJk+erEmTJlmXMzIyVKNGjRKrGygzptv3HyQow6bnPQIP3KkKHHZyr8KKj49XSEiI3N3drX1OTk6qVauWwsLC7F7gtY4dO6YzZ86oatWqkv786oq0tDTt3LlTrVq1kiTFxsYqJydH7dq1u+56nJ2d81zVBQAAzKnAYWfatGmSpFq1amnw4MFycXEp9sbPnz+vI0eOWJePHj2q+Ph4+fj4yMfHRzNmzFBYWJj8/f2VkJCgf/7zn6pXr55CQkIkSY0bN1avXr00evRoLV68WFeuXNHYsWM1ZMgQrsQCAACSijBBOSIiwi5BR5J++ukn3X333br77rslSZMmTdLdd9+tqVOnytHRUbt371a/fv3UoEEDjRo1Sq1atdK3335rc1Rm5cqVatSokbp166b7779fnTp10ttvv22X+gAAwO2v0BOUs7OzNWfOHH300UdKSkrS5cuXbfrPnj1b4HV16dJFhmFct78gXyzq4+PDDQQBAMB1FfrIzowZM/T6669r8ODBSk9P16RJkzRgwAA5ODho+vTpJVAiAABA0RU67KxcuVJLlizRk08+qXLlymno0KH673//q6lTp2r79u0lUSMAAECRFTrspKSkKDAwUJLk7u5uvcFgnz599OWXX9q3OgAAgGIqdNipXr26Tpw4IUmqW7euNmzYIEn68ccfuZwbAACUOYUOO3/7298UExMjSRo3bpyef/551a9fX8OGDdPIkSPtXiAAAEBxFPpqrJdfftn68+DBg1WzZk3FxcWpfv366tu3r12LAwAAKK5Ch52/CgoKUlBQkD1qAQAAsLsChZ3PP/+8wCvs169fkYsBAACwtwKFndzvxcplsVjy3Aww95vQs7Oz7VMZAACAHRRognJOTo71sWHDBrVs2VLr1q1TWlqa0tLStG7dOt1zzz1av359SdcLAABQKIWeszNx4kQtXrxYnTp1sraFhISoQoUKGjNmjA4cOGDXAgEAAIqj0JeeJyQkyNvbO0+7l5eXEhMT7VASAACA/RQ67LRp00aTJk1SamqqtS01NVVPP/202rZta9fiAAAAiqvQYWfp0qU6ceKEatasqXr16qlevXqqWbOmfv/9d73zzjslUSMAAECRFXrOTr169bR7925t3LhRBw8elCQ1btxY3bt3t16RBQAAUFYU6aaCFotFPXv2VM+ePe1dDwAAgF0VKOzMnz9fY8aMkYuLi+bPn3/DsePHj7dLYQAAAPZQoLAzZ84chYeHy8XFRXPmzLnuOIvFQtgBAABlSoHCztGjR/P9GQAAoKwr9NVYAAAAt5MCHdmZNGlSgVf4+uuvF7kYAAAAeytQ2Pn5558LtDIuPQcAAGVNgcLO5s2bS7oOAACAEsGcHQAAYGpFuqngTz/9pI8++khJSUm6fPmyTd8nn3xil8IAAADsodBHdj744AN16NBBBw4c0KeffqorV65o3759io2NlZeXV0nUCAAAUGSFDjuzZs3SnDlztHbtWjk5OWnevHk6ePCgBg0apJo1a5ZEjQAAAEVW6LCTkJCg3r17S5KcnJyUmZkpi8WiJ554Qm+//bbdCwQAACiOQoedihUr6ty5c5Kku+66S3v37pUkpaWl6cKFC/atDgAAoJgKPUE5ODhYGzduVGBgoAYOHKgJEyYoNjZWGzduVLdu3UqiRgAAgCIrcNjZu3evmjVrpjfeeEOXLl2SJP3rX/9S+fLltW3bNoWFhWnKlCklVigAAEBRFDjsNG/eXG3atNGjjz6qIUOGSJIcHBz07LPPllhxAAAAxVXgOTtbt25V06ZN9eSTT6pq1aqKiIjQt99+W5K1AQAAFFuBw869996rpUuX6sSJE1qwYIESExPVuXNnNWjQQK+88opSUlJKsk4AAIAiKfTVWG5ubhoxYoS2bt2q//3vfxo4cKAWLlyomjVrql+/fiVRIwAAQJEV67ux6tWrp+eee05TpkyRh4eHvvzyS3vVBQAAYBdF+m4sSfrmm2+0dOlSrV69Wg4ODho0aJBGjRplz9oAAACKrVBh5/jx44qKilJUVJSOHDmiDh06aP78+Ro0aJDc3NxKqkYAAIAiK3DYCQ0N1aZNm1S5cmUNGzZMI0eOVMOGDUuyNgAAgGIrcNgpX768Pv74Y/Xp00eOjo4lWRMAAIDdFDjsfP755yVZBwAAQIko1tVYAAAAZR1hBwAAmBphBwAAmFqphp1vvvlGffv2VbVq1WSxWPTZZ5/Z9BuGoalTp6pq1apydXVV9+7ddfjwYZsxZ8+eVXh4uDw9PeXt7a1Ro0bp/Pnzt3AvAABAWVaqYSczM1MtWrTQwoUL8+1/9dVXNX/+fC1evFg7duyQm5ubQkJCdOnSJeuY8PBw7du3Txs3btQXX3yhb775RmPGjLlVuwAAAMq4It9B2R5CQ0MVGhqab59hGJo7d66mTJmi/v37S5KWL18uPz8/ffbZZxoyZIgOHDig9evX68cff1Tr1q0lSQsWLND999+vf//736pWrdot2xcAAFA2ldk5O0ePHlVKSoq6d+9ubfPy8lK7du0UFxcnSYqLi5O3t7c16EhS9+7d5eDgoB07dtzymgEAQNlTqkd2biQlJUWS5OfnZ9Pu5+dn7UtJSZGvr69Nf7ly5eTj42Mdk5+srCxlZWVZlzMyMuxVNgAAKGPK7JGdkjR79mx5eXlZHzVq1CjtkgAAQAkps2HH399fkpSammrTnpqaau3z9/fXyZMnbfqvXr2qs2fPWsfkZ/LkyUpPT7c+kpOT7Vw9AAAoK8ps2Kldu7b8/f0VExNjbcvIyNCOHTsUFBQkSQoKClJaWpp27txpHRMbG6ucnBy1a9fuuut2dnaWp6enzQMAAJhTqc7ZOX/+vI4cOWJdPnr0qOLj4+Xj46OaNWtq4sSJevHFF1W/fn3Vrl1bzz//vKpVq6YHHnhAktS4cWP16tVLo0eP1uLFi3XlyhWNHTtWQ4YM4UosAAAgqZTDzk8//aT77rvPujxp0iRJUkREhKKiovTPf/5TmZmZGjNmjNLS0tSpUyetX79eLi4u1uesXLlSY8eOVbdu3eTg4KCwsDDNnz//lu8LAAAom0o17HTp0kWGYVy332KxaObMmZo5c+Z1x/j4+Cg6OrokygMAACZQZufsAAAA2ANhBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmFqZDjvTp0+XxWKxeTRq1Mjaf+nSJUVGRqpSpUpyd3dXWFiYUlNTS7FiAABQ1pTpsCNJTZs21YkTJ6yP7777ztr3xBNPaO3atVq1apW2bt2q48ePa8CAAaVYLQAAKGvKlXYBN1OuXDn5+/vnaU9PT9c777yj6Ohode3aVZK0bNkyNW7cWNu3b1f79u1vdakAAKAMKvNHdg4fPqxq1aqpTp06Cg8PV1JSkiRp586dunLlirp3724d26hRI9WsWVNxcXGlVS4AAChjyvSRnXbt2ikqKkoNGzbUiRMnNGPGDN17773au3evUlJS5OTkJG9vb5vn+Pn5KSUl5YbrzcrKUlZWlnU5IyOjJMoHAABlQJkOO6Ghodafmzdvrnbt2ikgIEAfffSRXF1di7ze2bNna8aMGfYoEQAAlHFl/jTWtby9vdWgQQMdOXJE/v7+unz5stLS0mzGpKam5jvH51qTJ09Wenq69ZGcnFyCVQMAgNJ0W4Wd8+fPKyEhQVWrVlWrVq1Uvnx5xcTEWPsPHTqkpKQkBQUF3XA9zs7O8vT0tHkAAABzKtOnsZ566in17dtXAQEBOn78uKZNmyZHR0cNHTpUXl5eGjVqlCZNmiQfHx95enpq3LhxCgoK4kosAABgVabDzrFjxzR06FCdOXNGVapUUadOnbR9+3ZVqVJFkjRnzhw5ODgoLCxMWVlZCgkJ0aJFi0q5agAAUJaU6bDzwQcf3LDfxcVFCxcu1MKFC29RRQAA4HZzW83ZAQAAKCzCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXCDgAAMDXThJ2FCxeqVq1acnFxUbt27fTDDz+UdkkAAKAMMEXY+fDDDzVp0iRNmzZNu3btUosWLRQSEqKTJ0+WdmkAAKCUmSLsvP766xo9erRGjBihJk2aaPHixapQoYKWLl1a2qUBAIBSdtuHncuXL2vnzp3q3r27tc3BwUHdu3dXXFxcKVYGAADKgnKlXUBxnT59WtnZ2fLz87Np9/Pz08GDB/N9TlZWlrKysqzL6enpkqSMjAy715eTdcHu60TZVBKfH7vLMkq7Atwqt8HnMftidmmXgFukpP7/mLtew7jx/9tu+7BTFLNnz9aMGTPytNeoUaMUqoFZeM0t7QqAa7zsVdoVAFZej5Xs5/HcuXPy8rr+Nm77sFO5cmU5OjoqNTXVpj01NVX+/v75Pmfy5MmaNGmSdTknJ0dnz55VpUqVZLFYSrTeO0FGRoZq1Kih5ORkeXp6lnY5uMPxeURZwufRvgzD0Llz51StWrUbjrvtw46Tk5NatWqlmJgYPfDAA5L+DC8xMTEaO3Zsvs9xdnaWs7OzTZu3t3cJV3rn8fT05JcZZQafR5QlfB7t50ZHdHLd9mFHkiZNmqSIiAi1bt1abdu21dy5c5WZmakRI0aUdmkAAKCUmSLsDB48WKdOndLUqVOVkpKili1bav369XkmLQMAgDuPKcKOJI0dO/a6p61wazk7O2vatGl5ThUCpYHPI8oSPo+lw2Lc7HotAACA29htf1NBAACAGyHsAAAAUyPsAAAAUyPsoEzr0qWLJk6caF2uVauW5s6dW2r1AABuP4SdO1xycrJGjhypatWqycnJSQEBAZowYYLOnDlT2qUBN5WSkqJx48apTp06cnZ2Vo0aNdS3b1/FxMQU6PlRUVHcUBTFMnz4cFksFlksFpUvX15+fn7q0aOHli5dqpycnNIuD/8fYecO9uuvv6p169Y6fPiw3n//fR05ckSLFy9WTEyMgoKCdPbs2RLb9pUrV0ps3bgzJCYmqlWrVoqNjdVrr72mPXv2aP369brvvvsUGRlZ2uXhDtKrVy+dOHFCiYmJWrdune677z5NmDBBffr00dWrV0u7PIiwc0eLjIyUk5OTNmzYoM6dO6tmzZoKDQ3Vpk2b9Pvvv+tf//qXnnvuObVr1y7Pc1u0aKGZM2dal//73/+qcePGcnFxUaNGjbRo0SJrX2JioiwWiz788EN17txZLi4uWrlypc6cOaOhQ4fqrrvuUoUKFRQYGKj333//luw7bn+PP/64LBaLfvjhB4WFhalBgwZq2rSpJk2apO3bt0uSXn/9dQUGBsrNzU01atTQ448/rvPnz0uStmzZohEjRig9Pd36L/Pp06eX4h7hduXs7Cx/f3/ddddduueee/Tcc89pzZo1WrdunaKioiRJSUlJ6t+/v9zd3eXp6alBgwbl+U7HF198Ub6+vvLw8NCjjz6qZ599Vi1btrz1O2RGBu5IZ86cMSwWizFr1qx8+0ePHm1UrFjR2Lt3ryHJOHLkiLUvt+3w4cOGYRjGe++9Z1StWtVYvXq18euvvxqrV682fHx8jKioKMMwDOPo0aOGJKNWrVrWMcePHzeOHTtmvPbaa8bPP/9sJCQkGPPnzzccHR2NHTt2WLfVuXNnY8KECdblgIAAY86cOfZ/QXBbudnnN9ecOXOM2NhY4+jRo0ZMTIzRsGFD47HHHjMMwzCysrKMuXPnGp6ensaJEyeMEydOGOfOnbsV5cNEIiIijP79++fb16JFCyM0NNTIzs42WrZsaXTq1Mn46aefjO3btxutWrUyOnfubB373nvvGS4uLsbSpUuNQ4cOGTNmzDA8PT2NFi1a3JL9MDvCzh1q+/bthiTj008/zbf/9ddfNyQZqampRosWLYyZM2da+yZPnmy0a9fOuly3bl0jOjra5vkvvPCCERQUZBjG/4WduXPn3rSu3r17G08++aR1mbCD/OzYscOQZHzyySeFet6qVauMSpUqWZeXLVtmeHl52bk63EluFHYGDx5sNG7c2NiwYYPh6OhoJCUlWfv27dtnSDJ++OEHwzAMo127dkZkZKTN8zt27EjYsRNOY93hjALcQDs8PFzR0dHW8e+//77Cw8MlSZmZmUpISNCoUaPk7u5ufbz44otKSEiwWU/r1q1tlrOzs/XCCy8oMDBQPj4+cnd319dff62kpCQ77R3MqiCfW0natGmTunXrprvuukseHh565JFHdObMGV24cKGEKwT+/JxaLBYdOHBANWrUUI0aNax9TZo0kbe3tw4cOCBJOnTokNq2bWvz/L8uo+gIO3eoevXqWX8J83PgwAFVrFhRVapU0dChQ3Xo0CHt2rVL27ZtU3JysgYPHixJ1vkPS5YsUXx8vPWxd+9e67yJXG5ubjbLr732mubNm6dnnnlGmzdvVnx8vEJCQnT58uUS2GOYSf369WWxWHTw4MHrjklMTFSfPn3UvHlzrV69Wjt37tTChQslic8YbokDBw6odu3apV0GRNi5Y1WqVEk9evTQokWLdPHiRZu+lJQUrVy5UoMHD5bFYlH16tXVuXNnrVy5UitXrlSPHj3k6+srSfLz81O1atX066+/ql69ejaPm/2Sf//99+rfv78efvhhtWjRQnXq1NH//ve/EttnmIePj49CQkK0cOFCZWZm5ulPS0vTzp07lZOTo//85z9q3769GjRooOPHj9uMc3JyUnZ29q0qG3eQ2NhY7dmzR2FhYWrcuLGSk5OVnJxs7d+/f7/S0tLUpEkTSVLDhg31448/2qzjr8soOsLOHeyNN95QVlaWQkJC9M033yg5OVnr169Xjx49dNddd+mll16yjg0PD9cHH3ygVatWWU9h5ZoxY4Zmz56t+fPn63//+5/27NmjZcuW6fXXX7/h9uvXr6+NGzdq27ZtOnDggP7+97/nuToBuJ6FCxcqOztbbdu21erVq3X48GEdOHBA8+fPV1BQkOrVq6crV65owYIF+vXXX7VixQotXrzYZh21atXS+fPnFRMTo9OnT3N6C0WSlZWllJQU/f7779q1a5dmzZql/v37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)

### Accuracy

![](data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAjcAAAHHCAYAAABDUnkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA2PUlEQVR4nO3deVhWdf7/8dcNCigILggoIuCuE+KOlGZOEJlrqZnjDIhljbkVU5Na7iaNjUtuMWmmM6GSS47fySxDvawRdVxwySVFCVJB0RRFA4Xz+6Of98SAy23ADcfn47rOdXV/zudzzvvc122+/JzPuW+LYRiGAAAATMLB3gUAAACUJMINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINAAAwFcINANhBQECABg8ebH29detWWSwWbd261W41AWZBuAEqkIULF8pisSgkJMTepeA2Dh48qH79+snf318uLi7y9fVVeHi45s2bZ+/SgAeGhd+WAiqORx55RGfOnFFqaqqOHz+uRo0a2bsk/ML27dvVtWtX1a9fX1FRUfLx8VF6erp27NihlJQUnThxwto3ICBAjz32mJYuXSpJKigoUF5enpycnOTgwL87gV+jkr0LAHBvTp06pe3bt2vt2rV66aWXFB8fr4kTJ9q7rGLl5OTI1dXV3mWUubffflseHh76z3/+o+rVqxfad+7cuTuOdXBwkIuLSylWBzw4+OcBUEHEx8erRo0a6t69u/r166f4+Phi+126dEmvvvqqAgIC5OzsrHr16ikyMlJZWVnWPj/99JMmTZqkJk2ayMXFRXXq1NEzzzyjlJQUSbdf/5GamiqLxWKdbZCkwYMHy83NTSkpKXrqqadUrVo1DRo0SJL09ddfq3///qpfv76cnZ3l5+enV199VdevXy9S99GjR/Xss8+qdu3aqlKlipo2bao333xTkrRlyxZZLBZ9+umnRcYtX75cFotFSUlJd3z/Tp48qf79+6tmzZqqWrWqOnbsqM8++6xQn1vX/cknn+jtt99WvXr15OLioscff7zQrMvtpKSk6De/+U2RYCNJXl5edxx7u/d8586deuqpp1SjRg25urqqZcuWeu+99wr1OXr0qPr166eaNWvKxcVF7dq10/r16wv1uXHjhiZPnqzGjRvLxcVFtWrVUqdOnbRp06a7XhdQ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AABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTIdwAAABTsXu4WbBggQICAuTi4qKQkBDt2rXrjv3nzJmjpk2bqkqVKvLz89Orr76qn376qYyqBQAA5Z1dw01CQoJiYmI0ceJE7d27V8HBwYqIiNC5c+eK7b98+XKNGTNGEydO1JEjR/Thhx8qISFB48aNK+PKAQBAeWXXcDNr1iwNHTpU0dHRatGiheLi4lS1alUtWbKk2P7bt2/XI488ot/97ncKCAjQE088oYEDB951tgcAADw47BZu8vLytGfPHoWFhf23GAcHhYWFKSkpqdgxDz/8sPbs2WMNMydPntSGDRv01FNP3fY8ubm5ys7OLrQBAADzqmSvE2dlZSk/P1/e3t6F2r29vXX06NFix/zud79TVlaWOnXqJMMwdPPmTf3xj3+8422p2NhYTZ48uURrBwAA5ZfdFxTbYuvWrZo+fboWLlyovXv3au3atfrss880derU244ZO3asLl++bN3S09PLsGIAAFDW7DZz4+npKUdHR2VmZhZqz8zMlI+PT7Fjxo8frz/84Q964YUXJElBQUHKycnRiy++qDfffFMODkWzmrOzs5ydnUv+AgAAQLlkt5kbJycntW3bVomJida2goICJSYmKjQ0tNgx165dKxJgHB0dJUmGYZResQAAoMKw28yNJMXExCgqKkrt2rVThw4dNGfOHOXk5Cg6OlqSFBkZKV9fX8XGxkqSevbsqVmzZql169YKCQnRiRMnNH78ePXs2dMacgAAwIPNruFmwIABOn/+vCZMmKCMjAy1atVKGzdutC4yTktLKzRT89Zbb8liseitt97S6dOnVbt2bfXs2VNvv/22vS4BAACUMxbjAbufk52dLQ8PD12+fFnu7u4lfvyAMZ+V+DFRPqW+093eJdzdJA97V4CyMumyvSu4q6BlQfYuAWXkYNTBEj+mLX9/V6inpQAAAO6GcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMAAEyFcAMA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)

## Metrics

| Name | Value |
|---|---|
| accuracy | 0.981249988079071 |
| accuracy, cat | 0.9932885766029358 |
| accuracy, Dog | 0.9707602262496948 |