### 💍 Key Features
-- **Unified Implementation Framework:** MarkDiffusion provides a modular architecture supporting eight state-of-the-art generative image/video watermarking algorithms of LDMs.
+- **Unified Implementation Framework:** MarkDiffusion provides a modular architecture supporting eleven state-of-the-art generative image/video watermarking algorithms of LDMs.
- **Comprehensive Algorithm Support:** Currently implements 8 watermarking algorithms from two major categories: Pattern-based methods (Tree-Ring, Ring-ID, ROBIN, WIND) and Key-based methods (Gaussian-Shading, PRC, SEAL, VideoShield).
- **Visualization Solutions:** The toolkit includes custom visualization tools that enable clear and insightful views into how different watermarking algorithms operate under various scenarios. These visualizations help demystify the algorithms' mechanisms, making them more understandable for users.
-- **Evaluation Module:** With 20 evaluation tools covering detectability, robustness, and impact on output quality, MarkDiffusion provides comprehensive assessment capabilities. It features 5 automated evaluation pipelines: Watermark Detection Pipeline, Image Quality Analysis Pipeline, Video Quality Analysis Pipeline, and specialized robustness assessment tools.
+- **Evaluation Module:** With 31 evaluation tools covering detectability, robustness, and impact on output quality, MarkDiffusion provides comprehensive assessment capabilities. It features 6 automated evaluation pipelines: Watermark Detection Pipeline, Image Quality Analysis Pipeline, Video Quality Analysis Pipeline, and specialized robustness assessment tools.
### ✨ Implemented Algorithms
From 9eb8c1b1302e0c1736809bbbed4f8bc0e2bcb84c Mon Sep 17 00:00:00 2001
From: Zheyu Fu <166843990+GaryFuzheyu@users.noreply.github.com>
Date: Sun, 21 Dec 2025 15:54:44 +0800
Subject: [PATCH 02/27] Delete docs/_build directory
---
docs/_build/doctrees/BUILD.doctree | Bin 18156 -> 0 bytes
docs/_build/doctrees/api/detection.doctree | Bin 171207 -> 0 bytes
docs/_build/doctrees/api/evaluation.doctree | Bin 861245 -> 0 bytes
docs/_build/doctrees/api/utils.doctree | Bin 203314 -> 0 bytes
.../_build/doctrees/api/visualization.doctree | Bin 473169 -> 0 bytes
docs/_build/doctrees/api/watermark.doctree | Bin 469468 -> 0 bytes
docs/_build/doctrees/changelog.doctree | Bin 20790 -> 0 bytes
docs/_build/doctrees/citation.doctree | Bin 25930 -> 0 bytes
docs/_build/doctrees/code_of_conduct.doctree | Bin 11383 -> 0 bytes
docs/_build/doctrees/contributing.doctree | Bin 34470 -> 0 bytes
docs/_build/doctrees/environment.pickle | Bin 6326745 -> 0 bytes
docs/_build/doctrees/index.doctree | Bin 18397 -> 0 bytes
docs/_build/doctrees/installation.doctree | Bin 31347 -> 0 bytes
docs/_build/doctrees/quickstart.doctree | Bin 24796 -> 0 bytes
docs/_build/doctrees/tutorial.doctree | Bin 30264 -> 0 bytes
.../doctrees/user_guide/algorithms.doctree | Bin 73146 -> 0 bytes
.../doctrees/user_guide/evaluation.doctree | Bin 50385 -> 0 bytes
.../doctrees/user_guide/visualization.doctree | Bin 33581 -> 0 bytes
.../doctrees/user_guide/watermarking.doctree | Bin 29065 -> 0 bytes
docs/_build/html/.buildinfo | 4 -
docs/_build/html/BUILD.html | 1046 ------
docs/_build/html/_modules/detection/base.html | 928 -----
.../_modules/detection/gm/gm_detection.html | 1182 -------
.../_modules/detection/gs/gs_detection.html | 999 ------
.../_modules/detection/prc/prc_detection.html | 1068 ------
.../detection/robin/robin_detection.html | 963 ------
.../detection/seal/seal_detection.html | 987 ------
.../_modules/detection/sfw/sfw_detection.html | 992 ------
.../_modules/detection/tr/tr_detection.html | 953 -----
.../videomark/videomark_detection.html | 1230 -------
.../videoshield/videoshield_detection.html | 1153 ------
.../detection/wind/wind_detection.html | 1057 ------
.../html/_modules/evaluation/dataset.html | 1141 ------
.../evaluation/pipelines/detection.html | 1123 ------
.../pipelines/image_quality_analysis.html | 1635 ---------
.../pipelines/video_quality_analysis.html | 1342 -------
.../evaluation/tools/image_editor.html | 1248 -------
.../tools/image_quality_analyzer.html | 2142 ------------
.../tools/success_rate_calculator.html | 1144 ------
.../evaluation/tools/video_editor.html | 1281 -------
.../tools/video_quality_analyzer.html | 1788 ----------
docs/_build/html/_modules/index.html | 987 ------
.../_modules/inversions/base_inversion.html | 1021 ------
.../_modules/inversions/ddim_inversion.html | 1014 ------
.../_modules/inversions/exact_inversion.html | 1436 --------
.../_build/html/_modules/utils/callbacks.html | 951 -----
.../html/_modules/utils/diffusion_config.html | 1012 ------
.../html/_modules/utils/media_utils.html | 1312 -------
.../html/_modules/utils/pipeline_utils.html | 1007 ------
docs/_build/html/_modules/utils/utils.html | 981 ------
.../visualize/auto_visualization.html | 1034 ------
docs/_build/html/_modules/visualize/base.html | 1702 ---------
.../_modules/visualize/gm/gm_visualizer.html | 1333 -------
.../_modules/visualize/gs/gs_visualizer.html | 1135 ------
.../visualize/prc/prc_visualizer.html | 1180 -------
.../visualize/robin/robin_visualizer.html | 1095 ------
.../visualize/seal/seal_visualizer.html | 1095 ------
.../visualize/sfw/sfw_visualizer.html | 1095 ------
.../_modules/visualize/tr/tr_visualizer.html | 1040 ------
.../videomark/video_mark_visualizer.html | 1202 -------
.../videoshield/video_shield_visualizer.html | 1286 -------
.../visualize/wind/wind_visualizer.html | 1344 -------
.../_modules/watermark/auto_watermark.html | 999 ------
docs/_build/html/_modules/watermark/base.html | 1510 --------
.../_build/html/_modules/watermark/gm/gm.html | 1720 ---------
.../_build/html/_modules/watermark/gs/gs.html | 1213 -------
.../html/_modules/watermark/prc/prc.html | 1319 -------
.../html/_modules/watermark/robin/robin.html | 1453 --------
.../html/_modules/watermark/seal/seal.html | 1265 -------
.../html/_modules/watermark/sfw/sfw.html | 1431 --------
.../_build/html/_modules/watermark/tr/tr.html | 1238 -------
.../watermark/videomark/video_mark.html | 1439 --------
.../watermark/videoshield/video_shield.html | 1414 --------
.../html/_modules/watermark/wind/wind.html | 1178 -------
docs/_build/html/_sources/BUILD.md.txt | 162 -
.../html/_sources/api/detection.rst.txt | 96 -
.../html/_sources/api/evaluation.rst.txt | 83 -
docs/_build/html/_sources/api/utils.rst.txt | 72 -
.../html/_sources/api/visualization.rst.txt | 104 -
.../html/_sources/api/watermark.rst.txt | 101 -
docs/_build/html/_sources/changelog.rst.txt | 138 -
docs/_build/html/_sources/citation.rst.txt | 231 --
.../html/_sources/code_of_conduct.rst.txt | 50 -
.../_build/html/_sources/contributing.rst.txt | 283 --
docs/_build/html/_sources/index.rst.txt | 136 -
.../_build/html/_sources/installation.rst.txt | 201 --
docs/_build/html/_sources/quickstart.rst.txt | 245 --
docs/_build/html/_sources/tutorial.rst.txt | 367 --
.../_sources/user_guide/algorithms.rst.txt | 445 ---
.../_sources/user_guide/evaluation.rst.txt | 600 ----
.../_sources/user_guide/visualization.rst.txt | 272 --
.../_sources/user_guide/watermarking.rst.txt | 302 --
.../_sphinx_javascript_frameworks_compat.js | 123 -
docs/_build/html/_static/basic.css | 914 -----
docs/_build/html/_static/check-solid.svg | 4 -
docs/_build/html/_static/clipboard.min.js | 7 -
docs/_build/html/_static/copy-button.svg | 5 -
docs/_build/html/_static/copybutton.css | 94 -
docs/_build/html/_static/copybutton.js | 248 --
docs/_build/html/_static/copybutton_funcs.js | 73 -
docs/_build/html/_static/css/badge_only.css | 1 -
.../_static/css/fonts/Roboto-Slab-Bold.woff | Bin 87624 -> 0 bytes
.../_static/css/fonts/Roboto-Slab-Bold.woff2 | Bin 67312 -> 0 bytes
.../css/fonts/Roboto-Slab-Regular.woff | Bin 86288 -> 0 bytes
.../css/fonts/Roboto-Slab-Regular.woff2 | Bin 66444 -> 0 bytes
.../_static/css/fonts/fontawesome-webfont.eot | Bin 165742 -> 0 bytes
.../_static/css/fonts/fontawesome-webfont.svg | 2671 --------------
.../_static/css/fonts/fontawesome-webfont.ttf | Bin 165548 -> 0 bytes
.../css/fonts/fontawesome-webfont.woff | Bin 98024 -> 0 bytes
.../css/fonts/fontawesome-webfont.woff2 | Bin 77160 -> 0 bytes
.../_static/css/fonts/lato-bold-italic.woff | Bin 323344 -> 0 bytes
.../_static/css/fonts/lato-bold-italic.woff2 | Bin 193308 -> 0 bytes
.../html/_static/css/fonts/lato-bold.woff | Bin 309728 -> 0 bytes
.../html/_static/css/fonts/lato-bold.woff2 | Bin 184912 -> 0 bytes
.../_static/css/fonts/lato-normal-italic.woff | Bin 328412 -> 0 bytes
.../css/fonts/lato-normal-italic.woff2 | Bin 195704 -> 0 bytes
.../html/_static/css/fonts/lato-normal.woff | Bin 309192 -> 0 bytes
.../html/_static/css/fonts/lato-normal.woff2 | Bin 182708 -> 0 bytes
docs/_build/html/_static/css/theme.css | 4 -
docs/_build/html/_static/doctools.js | 149 -
.../html/_static/documentation_options.js | 13 -
docs/_build/html/_static/file.png | Bin 286 -> 0 bytes
.../html/_static/fonts/Lato/lato-bold.eot | Bin 256056 -> 0 bytes
.../html/_static/fonts/Lato/lato-bold.ttf | Bin 600856 -> 0 bytes
.../html/_static/fonts/Lato/lato-bold.woff | Bin 309728 -> 0 bytes
.../html/_static/fonts/Lato/lato-bold.woff2 | Bin 184912 -> 0 bytes
.../_static/fonts/Lato/lato-bolditalic.eot | Bin 266158 -> 0 bytes
.../_static/fonts/Lato/lato-bolditalic.ttf | Bin 622572 -> 0 bytes
.../_static/fonts/Lato/lato-bolditalic.woff | Bin 323344 -> 0 bytes
.../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 193308 -> 0 bytes
.../html/_static/fonts/Lato/lato-italic.eot | Bin 268604 -> 0 bytes
.../html/_static/fonts/Lato/lato-italic.ttf | Bin 639388 -> 0 bytes
.../html/_static/fonts/Lato/lato-italic.woff | Bin 328412 -> 0 bytes
.../html/_static/fonts/Lato/lato-italic.woff2 | Bin 195704 -> 0 bytes
.../html/_static/fonts/Lato/lato-regular.eot | Bin 253461 -> 0 bytes
.../html/_static/fonts/Lato/lato-regular.ttf | Bin 607720 -> 0 bytes
.../html/_static/fonts/Lato/lato-regular.woff | Bin 309192 -> 0 bytes
.../_static/fonts/Lato/lato-regular.woff2 | Bin 182708 -> 0 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 79520 -> 0 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 170616 -> 0 bytes
.../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 87624 -> 0 bytes
.../RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 67312 -> 0 bytes
.../RobotoSlab/roboto-slab-v7-regular.eot | Bin 78331 -> 0 bytes
.../RobotoSlab/roboto-slab-v7-regular.ttf | Bin 169064 -> 0 bytes
.../RobotoSlab/roboto-slab-v7-regular.woff | Bin 86288 -> 0 bytes
.../RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 66444 -> 0 bytes
docs/_build/html/_static/jquery.js | 2 -
docs/_build/html/_static/js/badge_only.js | 1 -
docs/_build/html/_static/js/theme.js | 1 -
docs/_build/html/_static/js/versions.js | 228 --
docs/_build/html/_static/language_data.js | 192 -
docs/_build/html/_static/minus.png | Bin 90 -> 0 bytes
.../_static/nbsphinx-broken-thumbnail.svg | 9 -
.../html/_static/nbsphinx-code-cells.css | 259 --
docs/_build/html/_static/nbsphinx-gallery.css | 31 -
.../html/_static/nbsphinx-no-thumbnail.svg | 9 -
docs/_build/html/_static/plus.png | Bin 90 -> 0 bytes
docs/_build/html/_static/pygments.css | 75 -
docs/_build/html/_static/searchtools.js | 632 ----
docs/_build/html/_static/sphinx_highlight.js | 154 -
docs/_build/html/api/detection.html | 1300 -------
docs/_build/html/api/evaluation.html | 3078 -----------------
docs/_build/html/api/utils.html | 1472 --------
docs/_build/html/api/visualization.html | 2086 -----------
docs/_build/html/api/watermark.html | 2394 -------------
docs/_build/html/changelog.html | 1020 ------
docs/_build/html/citation.html | 1101 ------
docs/_build/html/code_of_conduct.html | 938 -----
docs/_build/html/contributing.html | 1140 ------
docs/_build/html/genindex.html | 2682 --------------
docs/_build/html/index.html | 1163 -------
docs/_build/html/installation.html | 1072 ------
docs/_build/html/objects.inv | Bin 16085 -> 0 bytes
docs/_build/html/py-modindex.html | 1240 -------
docs/_build/html/quickstart.html | 1122 ------
docs/_build/html/search.html | 955 -----
docs/_build/html/searchindex.js | 1 -
docs/_build/html/tutorial.html | 1238 -------
docs/_build/html/user_guide/algorithms.html | 1349 --------
docs/_build/html/user_guide/evaluation.html | 1472 --------
.../_build/html/user_guide/visualization.html | 1148 ------
docs/_build/html/user_guide/watermarking.html | 1187 -------
182 files changed, 104792 deletions(-)
delete mode 100644 docs/_build/doctrees/BUILD.doctree
delete mode 100644 docs/_build/doctrees/api/detection.doctree
delete mode 100644 docs/_build/doctrees/api/evaluation.doctree
delete mode 100644 docs/_build/doctrees/api/utils.doctree
delete mode 100644 docs/_build/doctrees/api/visualization.doctree
delete mode 100644 docs/_build/doctrees/api/watermark.doctree
delete mode 100644 docs/_build/doctrees/changelog.doctree
delete mode 100644 docs/_build/doctrees/citation.doctree
delete mode 100644 docs/_build/doctrees/code_of_conduct.doctree
delete mode 100644 docs/_build/doctrees/contributing.doctree
delete mode 100644 docs/_build/doctrees/environment.pickle
delete mode 100644 docs/_build/doctrees/index.doctree
delete mode 100644 docs/_build/doctrees/installation.doctree
delete mode 100644 docs/_build/doctrees/quickstart.doctree
delete mode 100644 docs/_build/doctrees/tutorial.doctree
delete mode 100644 docs/_build/doctrees/user_guide/algorithms.doctree
delete mode 100644 docs/_build/doctrees/user_guide/evaluation.doctree
delete mode 100644 docs/_build/doctrees/user_guide/visualization.doctree
delete mode 100644 docs/_build/doctrees/user_guide/watermarking.doctree
delete mode 100644 docs/_build/html/.buildinfo
delete mode 100644 docs/_build/html/BUILD.html
delete mode 100644 docs/_build/html/_modules/detection/base.html
delete mode 100644 docs/_build/html/_modules/detection/gm/gm_detection.html
delete mode 100644 docs/_build/html/_modules/detection/gs/gs_detection.html
delete mode 100644 docs/_build/html/_modules/detection/prc/prc_detection.html
delete mode 100644 docs/_build/html/_modules/detection/robin/robin_detection.html
delete mode 100644 docs/_build/html/_modules/detection/seal/seal_detection.html
delete mode 100644 docs/_build/html/_modules/detection/sfw/sfw_detection.html
delete mode 100644 docs/_build/html/_modules/detection/tr/tr_detection.html
delete mode 100644 docs/_build/html/_modules/detection/videomark/videomark_detection.html
delete mode 100644 docs/_build/html/_modules/detection/videoshield/videoshield_detection.html
delete mode 100644 docs/_build/html/_modules/detection/wind/wind_detection.html
delete mode 100644 docs/_build/html/_modules/evaluation/dataset.html
delete mode 100644 docs/_build/html/_modules/evaluation/pipelines/detection.html
delete mode 100644 docs/_build/html/_modules/evaluation/pipelines/image_quality_analysis.html
delete mode 100644 docs/_build/html/_modules/evaluation/pipelines/video_quality_analysis.html
delete mode 100644 docs/_build/html/_modules/evaluation/tools/image_editor.html
delete mode 100644 docs/_build/html/_modules/evaluation/tools/image_quality_analyzer.html
delete mode 100644 docs/_build/html/_modules/evaluation/tools/success_rate_calculator.html
delete mode 100644 docs/_build/html/_modules/evaluation/tools/video_editor.html
delete mode 100644 docs/_build/html/_modules/evaluation/tools/video_quality_analyzer.html
delete mode 100644 docs/_build/html/_modules/index.html
delete mode 100644 docs/_build/html/_modules/inversions/base_inversion.html
delete mode 100644 docs/_build/html/_modules/inversions/ddim_inversion.html
delete mode 100644 docs/_build/html/_modules/inversions/exact_inversion.html
delete mode 100644 docs/_build/html/_modules/utils/callbacks.html
delete mode 100644 docs/_build/html/_modules/utils/diffusion_config.html
delete mode 100644 docs/_build/html/_modules/utils/media_utils.html
delete mode 100644 docs/_build/html/_modules/utils/pipeline_utils.html
delete mode 100644 docs/_build/html/_modules/utils/utils.html
delete mode 100644 docs/_build/html/_modules/visualize/auto_visualization.html
delete mode 100644 docs/_build/html/_modules/visualize/base.html
delete mode 100644 docs/_build/html/_modules/visualize/gm/gm_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/gs/gs_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/prc/prc_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/robin/robin_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/seal/seal_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/sfw/sfw_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/tr/tr_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/videomark/video_mark_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/videoshield/video_shield_visualizer.html
delete mode 100644 docs/_build/html/_modules/visualize/wind/wind_visualizer.html
delete mode 100644 docs/_build/html/_modules/watermark/auto_watermark.html
delete mode 100644 docs/_build/html/_modules/watermark/base.html
delete mode 100644 docs/_build/html/_modules/watermark/gm/gm.html
delete mode 100644 docs/_build/html/_modules/watermark/gs/gs.html
delete mode 100644 docs/_build/html/_modules/watermark/prc/prc.html
delete mode 100644 docs/_build/html/_modules/watermark/robin/robin.html
delete mode 100644 docs/_build/html/_modules/watermark/seal/seal.html
delete mode 100644 docs/_build/html/_modules/watermark/sfw/sfw.html
delete mode 100644 docs/_build/html/_modules/watermark/tr/tr.html
delete mode 100644 docs/_build/html/_modules/watermark/videomark/video_mark.html
delete mode 100644 docs/_build/html/_modules/watermark/videoshield/video_shield.html
delete mode 100644 docs/_build/html/_modules/watermark/wind/wind.html
delete mode 100644 docs/_build/html/_sources/BUILD.md.txt
delete mode 100644 docs/_build/html/_sources/api/detection.rst.txt
delete mode 100644 docs/_build/html/_sources/api/evaluation.rst.txt
delete mode 100644 docs/_build/html/_sources/api/utils.rst.txt
delete mode 100644 docs/_build/html/_sources/api/visualization.rst.txt
delete mode 100644 docs/_build/html/_sources/api/watermark.rst.txt
delete mode 100644 docs/_build/html/_sources/changelog.rst.txt
delete mode 100644 docs/_build/html/_sources/citation.rst.txt
delete mode 100644 docs/_build/html/_sources/code_of_conduct.rst.txt
delete mode 100644 docs/_build/html/_sources/contributing.rst.txt
delete mode 100644 docs/_build/html/_sources/index.rst.txt
delete mode 100644 docs/_build/html/_sources/installation.rst.txt
delete mode 100644 docs/_build/html/_sources/quickstart.rst.txt
delete mode 100644 docs/_build/html/_sources/tutorial.rst.txt
delete mode 100644 docs/_build/html/_sources/user_guide/algorithms.rst.txt
delete mode 100644 docs/_build/html/_sources/user_guide/evaluation.rst.txt
delete mode 100644 docs/_build/html/_sources/user_guide/visualization.rst.txt
delete mode 100644 docs/_build/html/_sources/user_guide/watermarking.rst.txt
delete mode 100644 docs/_build/html/_static/_sphinx_javascript_frameworks_compat.js
delete mode 100644 docs/_build/html/_static/basic.css
delete mode 100644 docs/_build/html/_static/check-solid.svg
delete mode 100644 docs/_build/html/_static/clipboard.min.js
delete mode 100644 docs/_build/html/_static/copy-button.svg
delete mode 100644 docs/_build/html/_static/copybutton.css
delete mode 100644 docs/_build/html/_static/copybutton.js
delete mode 100644 docs/_build/html/_static/copybutton_funcs.js
delete mode 100644 docs/_build/html/_static/css/badge_only.css
delete mode 100644 docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff
delete mode 100644 docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff
delete mode 100644 docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/fontawesome-webfont.eot
delete mode 100644 docs/_build/html/_static/css/fonts/fontawesome-webfont.svg
delete mode 100644 docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf
delete mode 100644 docs/_build/html/_static/css/fonts/fontawesome-webfont.woff
delete mode 100644 docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/lato-bold-italic.woff
delete mode 100644 docs/_build/html/_static/css/fonts/lato-bold-italic.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/lato-bold.woff
delete mode 100644 docs/_build/html/_static/css/fonts/lato-bold.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/lato-normal-italic.woff
delete mode 100644 docs/_build/html/_static/css/fonts/lato-normal-italic.woff2
delete mode 100644 docs/_build/html/_static/css/fonts/lato-normal.woff
delete mode 100644 docs/_build/html/_static/css/fonts/lato-normal.woff2
delete mode 100644 docs/_build/html/_static/css/theme.css
delete mode 100644 docs/_build/html/_static/doctools.js
delete mode 100644 docs/_build/html/_static/documentation_options.js
delete mode 100644 docs/_build/html/_static/file.png
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bold.eot
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bold.ttf
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bold.woff
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bold.woff2
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-italic.eot
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-italic.ttf
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-italic.woff
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-italic.woff2
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-regular.eot
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-regular.ttf
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-regular.woff
delete mode 100644 docs/_build/html/_static/fonts/Lato/lato-regular.woff2
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff
delete mode 100644 docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2
delete mode 100644 docs/_build/html/_static/jquery.js
delete mode 100644 docs/_build/html/_static/js/badge_only.js
delete mode 100644 docs/_build/html/_static/js/theme.js
delete mode 100644 docs/_build/html/_static/js/versions.js
delete mode 100644 docs/_build/html/_static/language_data.js
delete mode 100644 docs/_build/html/_static/minus.png
delete mode 100644 docs/_build/html/_static/nbsphinx-broken-thumbnail.svg
delete mode 100644 docs/_build/html/_static/nbsphinx-code-cells.css
delete mode 100644 docs/_build/html/_static/nbsphinx-gallery.css
delete mode 100644 docs/_build/html/_static/nbsphinx-no-thumbnail.svg
delete mode 100644 docs/_build/html/_static/plus.png
delete mode 100644 docs/_build/html/_static/pygments.css
delete mode 100644 docs/_build/html/_static/searchtools.js
delete mode 100644 docs/_build/html/_static/sphinx_highlight.js
delete mode 100644 docs/_build/html/api/detection.html
delete mode 100644 docs/_build/html/api/evaluation.html
delete mode 100644 docs/_build/html/api/utils.html
delete mode 100644 docs/_build/html/api/visualization.html
delete mode 100644 docs/_build/html/api/watermark.html
delete mode 100644 docs/_build/html/changelog.html
delete mode 100644 docs/_build/html/citation.html
delete mode 100644 docs/_build/html/code_of_conduct.html
delete mode 100644 docs/_build/html/contributing.html
delete mode 100644 docs/_build/html/genindex.html
delete mode 100644 docs/_build/html/index.html
delete mode 100644 docs/_build/html/installation.html
delete mode 100644 docs/_build/html/objects.inv
delete mode 100644 docs/_build/html/py-modindex.html
delete mode 100644 docs/_build/html/quickstart.html
delete mode 100644 docs/_build/html/search.html
delete mode 100644 docs/_build/html/searchindex.js
delete mode 100644 docs/_build/html/tutorial.html
delete mode 100644 docs/_build/html/user_guide/algorithms.html
delete mode 100644 docs/_build/html/user_guide/evaluation.html
delete mode 100644 docs/_build/html/user_guide/visualization.html
delete mode 100644 docs/_build/html/user_guide/watermarking.html
diff --git a/docs/_build/doctrees/BUILD.doctree b/docs/_build/doctrees/BUILD.doctree
deleted file mode 100644
index ad891158c2b4567d73171e2bb8cccd6490215ade..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 18156
zcmeHP`)?fAb*4;Ge3POqQFisn*o-Tx)sl4Mq=^Ezv85`KDN(FQ#Rd{#J-a*0ndR)v
zdLAMfz(Cy8g%-IentE!~eIRX6AV7hlK+z<9puhG3qd|i-Z4jV9V>JB-ineHh7X8kh
zd*|MneQ38d`a@ya9PHlbIp2BQbI;tnUl{+DA6y^d|JXv%{{v*t^MFqNllZh9pZ;I?^b|ZD_J7EJf5d)&%zmF{zyHC0e}cbAKi3@2gv1R# zkAai0i%_i@7+|0mLeTewptGkepu_UDn0qR?gC(O7ZQm&U1CTWlh2bBA^xm7&REbMH`Yq6O<(tx|aiQeR?H98|cWpXm(#pN4WFXx=r@@Byoa zIaHS2fd=e`GUsxxfq{lc!wv#JS)ifS7||t<$X=kB%P07+3Z04*Ls7Qnc37$@RYYm) zr$dBX+L|xFq5QC6dnGX-X+a}~|Bu)V2U3MZ7AnD#K * zAyv+e^kt;$f`X&Xt=(FcX>PsNk $4%HTt04$r}ZhQL|G->)A~DBwr`%+ z_p-qI?Ox!u{i)QR){Hsa;J5`jhQz<@1!TjeQt%qDU7pqnSs+~nmC^}=a! ?_K+IBlo&%)j-q+Re6zCI1M?%jk2Nqg7 zkEAG!qK_eQ`H m32oa{C2 z<`Q!~Ed5Y_j`C3BJp+5y%?!|`8SwXLQe%N`XE^kfhNHXzdpS<{1oms?8Qe*V7M&fk zKdc)ZJc6EqNy(^x@Eetsa(_s}6h6c6LZzg`#P6`On$IxJNhyzHLFjD^$V7C89z28n8nWA)YKY 9Sf(Oqo^xFv5MLJhc;IN2?frO#vG5*BStLfBm(!bEUubEO;{g zHG6oINhqshG17cDNn`NcT0%@9hbocp=6@H~(&bu-$UX6&)ZPU~ZiyI-jdyA!z7Wt# zywoc5P0qtgVZMp~ORaB_jeq2GOm-klF*zpBCy`7S&wC!UMU8?)Jg)#%)5r5r@K}zC z7SD@MGr7S5o o zt>#q=rTP^7Ro*Wi_CbDjLCgNo9?i2ZrYRBRiBN !=HuCa3EFm zW1*5l36%ay0dY(hAgDwTHxO!hVpk*?gUNee dcAiXsUq&s_obg^z|ZFn6Y z2Ltn^f_*9r?A2aipC^U|8*KAE977??DPZr*0_@9r0d}c5blEUFKMw}>YlXp^vtaOW zFBtT^H1`)-K>o8{KsMIkQY_7VCJUthkQ&nX*#z1_E#TuGQTnztXE_8a3F=rt$($r( ziU%e^DTpGGov(vKk}k4iIRj=A6vDul;eLrv_@_*Q!e;~slc3~q53v2K@Q9p2n(0b{ znmOO}TKbm+wHRBblc1JbotsW(x}eEIXp0)6O?fbqppJ*C>4PSWtt<(Ov6}78>2ng4 zCE(dTUXU(iH07J4Kw=Wqvydm?e?paCgPe*L-)yHf$OdFYA@jU2CJD+?KyAk7OoECp zt|jFdNl+04h?(M)^3lWQj>MEv%@S0Cl+Zi%LJhz-B7b9dNzv<~*N1hJW=!=%f m+Pi7deWRWHEWlM4%G=Vxk4^7Skj ze5Dr*dY+Q}XBLou+zZHArzA@kP{U1(ZCePH(%H7eQxY|V`MZ&beO`mM#=CGz60CH1 z2QjP93dG19 sy z>Mx^Z$y$6At6CBe>4Tb*(mh-7W+V{H7Q6+Y*rFVJ%CxM-9Lj0U7L0dtl~1f?3&t0x zvjx+5##=S1F>~A;hj#Hq#_;HwQ8?YQSSp1Fb184v&W#X0ul-tizEh<5(4KEKteZ3= z(6R)X=57%daBHPP@*ASrmNE2Wfjd3G9z9UX8b@Oa&__|-8`3F-D|-)AN^0(3%*tx6 z>~S>0$^~0u6y$--K|CH?KfOpv%bT)b@&*Q7qIAD^k?oUtW1<%$Z*0MOsVNdO?Ty0f zFX>)0 XNgd4zYhzsk{t zRZb??p`dgL8q4Im83|ey$#qgYq(;XN2mrFoPLn3dU8%btKLPM@Kfa7l%#UYJJ^S&A zz?X|VB>3^kb?p%PeIfMhDHHT80m_kF_Ze7$3QnAmnQl#<>E_I_i eY8>=X1{uB-5HT% zliUT(1Um&ScQCRqq%hiUrE=_?@Ia=W5(AEvjoYx%w3TufL4a6D* upIdl zmEIeQjbKFAM7j@KH7xhVeWDU}L)l&FRAVCDpN1VIb$l3yM=a4KCa6w{u-VO>bCp-8 z>_LpUNSCmCL8a%P3vqQ#FX qOK2ejdMc zyCpvT%RIUhTc$IQ?y@>JN9A-g%7f4rWiL#rFfxzsg{tXil#Hz`^N6uJRpwE`{p?O* z?}Li~!iIdOd>cMZUE@E5EP_EAs?_kYm(!SJ19JA2*?+#weHxQfD@_kct-hS!MVrlf zTK0>PniN5a@TjjcT$`}PjIOnEnN)s}P&f5LIZ7WE%#*aYRE<2M=>uWi;HAk9VweWO z4e1rlKRRk1wJ(H(b2-W}j@oCT5@pDAN9|LrY~LKUC$qr&y VUxT*r`j z22{#S;;fF^nk kQ&m&j+)YH{~wU=J*?}bchrJGw=s-a+EK7ZoVPy**!$+ZF*l8; zWLyE1=l y3U?c}B4I}BYS}aakS^t#?_mOq+PNGJ!7)MV*9C7sa z0S43I=$)}dI(ozK6mj(8l6g+1u+yAANqBJj4hY#v>h$$BMde~ZF7e{5Oi{TAD;;Gi zDz_j^F)1o9AdyTLP<%eLMGcKaK(Pc>(+3n${CJ9r3Mj^>s65XB9+{$Y15`*X0POsy z>l|I^Lk#AHi1VLNP`ZQ@Ws1uA30f5?D(9pDS*EB+Ez3Hic^Eq7Gn(JWCpM#DPd(3Q z;_Wt4QcTF?DgX(7e2U5=A@uJIp=VE-pl1mKjue$Q!BR!AjLnHuLV|Yo6aS>vl)Ik$ zgqa^iGRo3huHCjZnu}t;R^iSM0P@L&9nW`qUs!{sqCBg&RFu=BsVMv5Ch}qY(GyYD zMG{e5#mqDm1t}jRGl$X7MXFLsC=OU41!aSp6*~$HYmHjzClSDjVEGMNGkLhEz3CMu z8uj)RTqw@|i 7i`1Qa(IDgouvUge&_u5UM4thdN9Q(H3}A7OW_ zQA6Q9MB*JY%gaM0%B7MLj5#RlSXnLFu+-Fh8+zww*l=pqQW$K_g2AP|V9@ho$8A|a zzO@&Svo3bDvOqf33#7|9qeGi7WM30+y#SXU5O3q95{@7X{P!{V6UClhPqt46F+?v$ z5M$<9n G2!GXjNaLvq*x`2I}{_0Fh*zDuZ| zX+vKHSakooe`!PC#+K={p(m`)P46k)EdN_b)KRkqeU59&gpoG%BdD5wme1JA(uNqT zQ>6_hydcXV=smh}AZEyM%KJpg#FL9=E#nRqRQZzN6HKMlG2v{|k-G&pt2HKzjlE)0 zhqnmt++W|gqg9;na@*^p?Pg2O_qhLF9t^ToR_1Ua0vCJij?Q<1&NJsd8}!S#RbMhd z#u75m6t}n&uDZ+uRI=6Cqy^Ncj9QwHv3wdqg_t|uthw)DdwrWks%e7Cvmz3&E+9pY zUL`#ztQ)*2*(zyYRX?O%bY=8to| )HtBKHCM5+(>OI5&w{~d zFBtSZH93?8 JgH3^P&4QDayrwY! fADK41AcJOxIS%#kEF=)y%?EtSLt4sAj@$DMwV(INVkXj3{w*3jTik&}SPN~X|s zPmx=>97x1c GX0 zhe&kUI>Aaz2(7m&5b+uk;h5! Gqqh)~aeh;nzKez=18X^e zX;@2_)!aN~cl~E0+(**QJ28G_i*fc8v=L`-9YEiIXYcdSDtGq&1)eNtFD_B;q 1YPXgMcB2fLI~lKO9=U+L$O&LKPED&cOpX&;+` zXx~&si=K6r@19Ax@TOv;I0?xhjiy{l(qAbm{X7koWFFyvVkI( g|cLJS#0XRv8~}H(`%=Zr2q<*9_gVTUh#mU}+V)ZWOD9W~))JO=vL0c`UR; za^ecgKh(!6n6vuFW9ilYvG5-Vrw;}*b9rr<4`1uPrf*p9QwBCq9URzPsur8gfz1PZ z1`f6AjZ%4-(`8@}L(yEpIRR?$3Y+&BrA6WV40SW9e>V2cmu%+pHZ{=BwLmkqD&1nu zCWgJ)f=(!6vE~w}ntrhc%^Xk3JRa6Ee70D#SSMZwd2=cd1EhN{4i~_qAqSLXW@gCL z85=ah**pcN&&fT0_X9b)%-I=4Txqx6Y5d5^7f4q7D;(JBJV632gEByv#jL2m9R6c! zx2C?=M5b)H{EbsBP{?9+7Z Wq;3r)*lA3xuLpGwR_*!qv)YNOarj8X`MWLt%r{I>$VMzhd z-P>{lw+-y-qR|7wY?(^E8kHK`Mx8brcB%C%5mc_$^CbY9?7hmu#8gXNvFA-4+=$&m zf~XZ?S&y2t+J6P3mDzw^l+f#kpsJ?VvspjEB4qS|scNNEX>|^>@B535TIaBTCG_aK z)Owjk5tnA)%isi_&Kk(=(nx{t4W_Qu%wv$smc9p@inFDUS^bz4(@8!bNY3niEY07| za4}m*Nb?UtRgLB%8958lyV}x_;xl#=^fs*&X=_8ZG;FP{l`dQBD3j}Igp?7ntD7+E zl$VyZ)`deUE$efQNo_6 #ZWl&q!gm2qLZOe=wRvtSY`X6wvU0jE=>siwZjt_V6UA+8^Cy_@Rth?#)66aHPtGJTp|zW|>Rn9Az$witFQdzb+D; zc>L~%A|k6q&u+K7F8(O3E|N|93sGKI`|}dCDmK{Q45~}|joe`KG%MPD$~SMj*J?us zz4U>?zZId1q)^*B`h%Gas~2J=a Ga76DgG|1@v-tic)*Xim-$MgLAD2OrV9R8(}oD-GRQ+SQM7hJEt& zi$SUmLS@Q&gyY5*zdAMASj&ZWuA4mB zD8ECY+`X QYjM=$ z?Q$@e2cSB^jE&6sXGYr4k%oY}i*~Will25Z3fqnbv(L7D5x4C*nACV&S_cE;onpn0 z1yYH^o-&~K6jn-T _W5R27k^{!tY)*M47~x8t`+@~973X{Z zI&3-`z>JLt+&V0~B6Pe~`?CO(Boa5!y`0>xi|k7!aq(({fQs$9G6pRriLNB}yUJ+4 zyHeg?1y}`hAu?UAkC~HM{|7ji$L~D5;u3sf*%j=m=j@6^;LGg$81T6~#c$WWK7{_c zA@uAi6ZC9@rDMD9=V6OLuoRaeHilZK?bc;qls 1navEC|0 z-35pzQ&bQ&c53{sVGXub_w3%b>Yf(es@ojjKMeoWPRLHMHnLGSTFBg{tDxkobD5K` z&jxyOj~27!SyU%isVROTs3y3uNq2q7=;-HRtwAdlCjvB;X00_tA7Z(`P%0N|HLvR2 ztP7WjqIKP}{+b;-w}+WGd!-8=^mVUp5Xz3=O4q%*9jk^FGIJjtkKIrPR;C}|Ufuh` z4uX2JEN@`=h#{ZE_Kt{fnB3 ?lW-aD6d3R80tU55*A0f+qkC;Q@dTd+W|+;ru=~7)yVFbMp
EiWR!fDlj)_+oSRdTy$A3Euyx;5v z-UT7!Y?9kw1_SMlBJnS?fc*2GKn{;Vh=6Q;0g%-j1@fw6$#K}dZDIvf$}AOGGx#@V zfpkMJkS;aHD50uKjOU5(ob+%*v;13;_sT3lU&eq=l&-gfY@f{d61^BP^SOL9mI%o| z6+T6}zYKX@9E^CcJ8EI*vRYo3+lpt}S-j4%vp6yyt9`}q2c0&<_2|XozG4MaBzx-~ zsFWakOPu0|7ZOB9d2?4WLctTaUIlFP@lUy{7@rX&+*K?GT7d55@EX1HBf6`&W66{e z3<&bt^2{OSri>Pw-tgt{BYkAoy3HH0WgdiGte4dmaNcZnZu)uY7H}ShwkWe`N`xMO z@E?Jy=@)PqTiLE+#_CkNik}gu6GRNTP5H Uax0&5S0`US z6;dBggMU`0fe2B^2IO=-^Q7$A?j5laJ=DEzwI6nq5?`{0wgc1H4I4p&n5GppM>%Y- z|MNBFnJ3y7`%S?~$p}l^$omMs7S;_89N`I5NWkcxh~LDSz|TTTx+Z8bGlBnrN|bTa z$LSxkvVEHgEMLX--z_yU@Ggc*nc>yEdp3S3pU?ghGZV;X0eM|dAS>_Q2HE-&GZVNp z3& =wz^z#z-PsGIeV7SMWdXX%fKD_MI7GHj&ICj+>1F}}-Cu^800)Ei?$JBI zSOd2(bXjdCpvDgWDKvgOtaJos0>QDaaX4mYhk`OPH~11j-Iuumn+5PqypI6~`Sjo~ z;VCe}Xs%7XE=;t&9FnlWov$E` dU~1 z $DAxD*X z7Hn14BDWb9#0&c;ht544{=XrI=GrUPG+o0IXAPY@bUyxn1KT51^$whWu9WxwG^T{@ zE>hTZA(7#&?+P{p1?~`)DU$@% +Zy$40y1lXQjXd%KiZ!(DO8r6}rBZ((3>OMRwp?Ru0HP}=8sB&-`8 zI?^7VNzQ2a?KkSKu8)U=Oc8hc7*wJxgFfnfh?Uixm1#bV @*hJgLzz zN48J0P4r^0E#+NZ!*uT%7|DT3!$`WU=J+Yw>VFUg@W=(GPK+P5V!~4j)<}5jtpIzU z{Zs$>z(?+c?uIAJ35`8=Bpxfx{gk8z=j-i4?VawYBUIIWgO!nRFIJz8cS=$AlA@~H z3iSWPMyoPbN|=N%E|Nkh%q{1G*5=6ZYQ5NUZjW4{t-rHUu7&pBMws|QyXaCOc^`>n zx)t`9L0i;dNUX5m4^`8zu%qblqaf4@d;INOcRRo%H%Yz-DkRT>-U#w~(9wl0C}M*N z3W_~7u!}yyH}81~S`};QqiH~va~7#(S>v#O51sP)%0J)}o3F5^9_A~y5p(4ah%mBD ziy^^}Pxt?F2>n+==-E>y=vlJ1Bi+9ZxjVrUnDaQZ{qciJ9`Bm$kJ K&I z%>pW&8cqJ6m>iy%)KmX+k<@>?h?)4WAPfr0W=Rv1BYKxaHg}|F7Ud2%n+7?Z9bsTU z*KXmVD1iB}bkn*QR7{$Cd>STU%FZ0D!Bci5HGoecn75t`F`}L2N>h+FR~#!&!KqBG zvX`rm!v?8Ju^I#5RAtJm!pTj!Rvn8kM9JG4p4p@@h67=SbJw Qec>2v%^LG^`^&J?2t>J<3$w3bOJ{Bh_NamI;G`W-K*0TLqxDuf zS1vZ7J*bLDMm2NA+StNk`v4HT2%Fv5?&M}JKU!&xOnS{GUTsh;mD-JB30N_d8*g~G zx8ZbBI31-v3A^F|Fus`6+#vb%zm)1uDJ7`KW);*~nqkRmP|CZ4k*jamO5LYtX)kQk zSr d)>mP|tHEJraFi8nQjm9XxOXs2dc|hD z;Y~8}AM^HAN^pQKh;$)LCJ~3~3K5UIubvfoHBoE8mLRXRcdA~gwM2dP63-~ZLjW3l zPtYdVO#x-W0(;d$ZG6jFXJ5$Qj8 &$oNMKlosBj?jLp~( z!%1(@Q3MeF+Fdx**+R2ata@8E4R3<=zz5GA07Aq6(Dluir)lrf1(tZ1yY5|jj#b0V zvWvNA5WAtgMH#KYy-VkW9R&U~k9CGZ@Y%82wsc~=9?21pDxyrt&JZD2WRBjlq=@0~ zz-Bm*YL$4Q(nJZA{z?Hc+64$|!;%|_aAEe=n?X=RjsIUWfTw}?$qX=_>KnLLI_S(9 zuU1~;%fQLHuKG$!4v _~fc7F2>> zP_Z_iDGaO+?j31=lm*^D>;>K>`wQAYY)g^r>tJBLRg&}3EZ~2z7x1$tcz!7hq@V8v z(qp2ojZkbQBTI}joEboF^Q|KH53?Zg1BOJRDEqI-_Q@!_=*5V#lZzvZPoU<4eukJj z2Z4^0%Vf`pMH+NFoe_?$h?J9Db9_;pJDtQf#>Acql@hLxoI|!xa!&M;oO74aeP!Sr z2O%TpRz#)+5vDEHi%5Q%FBPkPi$pJmRW~PRRhev`WR>V8Iji>3ePv)32O%S?Ryw9@ z5oRql3rTj_uNA{yMIsr)uva8!*zc3=lMEBRBxl$=>Ao^BjDwJoVXGJ~?5T8wWt^{O zG08XQH^sdFOClV@ypJYl-anD;lgtyn7|fdyUXKh<3X6ZGd&$5y-g!p0El0NLp^ga0 z7V9M>tIU@QyPuQT#qj7S$$2#IMA8+w9Tt>|_A1jDUu6=#7(AK*$^`@Q(wKk$)#3SDax&Hv{dW5=+Lw$VY{Ci9|bwfraD@yq#>HWT5E9VBl;FluF$A z9}1Tj(|u)NAqOEN3y(n-ni1Lv@0J*4Bx2TEh2iT+3}d*}NzSdek?oV*61|w*!kg?Q zQhds$aQQR3uMFJcAY|m$DrbZ(!m#CbF^OLEgF^LFB&soN`@7_9`zqN!$u`kTa<+Ys z?kfY^I0zZpcC2e5B*L|2Rw>D}$a}@JnX4(!A% p2A**c zGV<(1&JEWxRfKawEv>SWe=%Pb7cU?&kKy7uP${8*awXY5$wkqN$wgeMlgQ0xe<)mb z(0yg#A_pN27wNKEs;GO3C(|D0wT{z_tZWo@meCl*8O^*pjLYF!MhYT3m&zZ8N(mA| zPl#Q>Gfy%?7 !MZSU1h2Ewv$(=VK$X0e ztgy0fe=d5I86&1ZSaWm)_lPg%10@w%G9_E C&WUBSwU?nQm+V6I2 zgvd<{bKrtkhm2LL@VPwWe5F|1Q7(=_KF$^8BK)7-({pW&Cx=0X9G4Hf6y(DdTMNte z>X^u+Yg8s6OQxz4d@yZ?C8_0jyJv68?e!o}t<~^~lRV`tZ{C>ZT!I$lb$(NH{&p%l zi~9|~36&rL%f8 *}C;l)Ql?&{+9?ZH_|)> z*5;KqRQ%e)%~Z~G*7_HWd}a%}dK1=q!AbqH)~6>To9lkHpE|%Nv*tr_F|HP}r3J(( za&w}i%wk=`GzQs4&9VGsc}=EM#$3WN0+dcF9A{x!7%SYCJDqTBgtjsc< Y9ZJh-)st%8D8{ z=|qfwE7TF0beYqyslCe1490_{b9wL#s>M;S3bz+cZGbc2$0{Yb@Dg&7F%!DsP2go3 zI0)oQ#RlfN<9lWOod!N*!p;~emo{O9ao@uPFk;;CwJzhPai8wXYhQ%Db5k9?y!Ma< znrT_nsoxz8d$R?dP=sy1532UZlkR%q;ywqIqzMk0YM5Y~r!EuhD0A~P3BJ;NyVLHP zzuQ3(oo^{M|5|xEyrJ;h;l9!aYz5HNH3w(N!-dl|yz2q=I1JO|_-+BGIw#6r`v_p9 zD_p!xB5p!?|B{g*qP+N8Z|le^?>}SjamxE;3p5kWbjte$hP~N>E(C<~ehaD|A?5w7 z14>ePL#7(aYxC5lypA&GW)fnhns$@jRr4<#`089qshS6j97}aW>J4fK1a4UJa(Qof zVt6RG7V?wu(rGwQW^JzCSh%)XnSl9L_-?~cZnDy7)Ei=mR(qQ&SP6Gj!0-*Hck{@s zIrFlTH-(g2Zx!)QTx05Cyr^nAJqVQ?vn_lbuhV_JP4#T-h^w!4o9ek12qrq|baxZO z(riJO5<+(`fvWw{-MHIShaA9>DjV|5P+6O0E|qnZIX+Ibwds#t&CkOQ0=eTdSiWbE zt_FMfga^7`tiRTp8znib^92P}To7)<0PW94jnmq-i @3t(E>sX$$Bf6|(5^$FY! z$&G ; z0?*Kezi-P8+%~Yw3NHZ_;L}jfdJUD48pE7EPy!C22iul6!v)7 HI&(oCa-OyCVxWI>?s%9T&vwmFHC+;scYMsOW zm0&vjm%#j(pQNB7{EKzMyFx?nWIzIYXAR_bX>`E%27lM;)+xb_-e155oMX^GTTRE4 z818P|$nIr}rSaz&_+|^bUJ_%_H=(LVV{y1Z79z)uK_P8t4&@S)_5?jps!P60l7Fs< z998#U^pVa#%}(bzC-;laVv@}b0V&Kgb`$hAtv%@!gvQTs3T)d4+7pR`I?9~d-Kr~F zZPzz}) I&AE^$>ndHVt36}cd;XC_%J2kGK0YrQRVW`1eR$R|k^H~5L;f!u@J>geDm+jCikTM nm+uNg@8$nR72d&j6`Mwx@;2WcMPg(<~REgw@eIiA*RT}Q(?4%b;Y@2X?Qz> zGdjxQdxMw8D3|D9rWauo!kJ)9)F^$(YThK2PU-F=-5m@CvxS7Dz7MKur0!v)i$9nt zq_AOnZTgy4j5NKW_8F$vRz8>Mb(DF56pnscs>knssHu ne2gx#m*{VZ60%SO}QLGL^NhF%p>#=+q>v z?TetQW&) b~3wRM!aKE~Q+GDga**gcu(>D-ZK_<3Ep7%{_Slm5aL zAbhL+FD1xt5~s;xE^L>SXJ4Eq`+pO(Do&G?>Ax~1E8D4_a0uUp?weWTkJnRIVX5;{ ziPQMBD?p7qStAI<-#vBfUYPc)!@$B8|Mz@8IA#+Qn8k^J_I^O)b?EdMZ$ou7&gVnx znlG!9*b-e)J0oXWcGGauH)Z@XG}}S*$eoK93R2{HjQ>6M&E78j8++{A@uXPBY`Z%a zDp3 W zJz2oNtrzg+VxI-K@!FLEa3Bk$tzICVhGXAeodt=2A(80Vw>OgQllx;uFGi4$JofF6 z>Ao`TkL4i5`=+Etn&xBQK2BmAV`4uBl@ji3{v6pp$vM$Wa?X8|?kfZ5I0zXz*Y9KB z{) |%KIU~(S4oot`vk?6(X5pnF>pVK{M;1dTRBcG1Yv2XuKVjaW3PbTNzzmV;d z{1d&H{EI*K?ceF1GVqTBkdc2!>e#ngYblo@hJn9M&cGF9`y>NJF9rk2W8Y4p`^vyV z4njs2PQ$Tp7m^spaO+&Cl+Yi!ifo_cmgvRg7Io~~PP(rQ+~Oc) LiKKFLMVi^)am*te(YzA|u;gOG-cbXo1#H?^kZFT j6SNOT=7D zw3hkhU8xcfxg>5%N z(RQVNq$2vAA9hhcHx&=qCY1|@nN$U>;AkH3-!Tmn$(z$<{KVtCV?%F z1#yWa-VG@ZageXX$}|TVuB3w<0N$4MxFrPkoUGr#_Xldr()L}}A}Ppzt+GdMCdG #bth2S_wyWbnPoS@ySN`y|UmF9ypN zgtkv&roB;EeUa`p1M@gAX_!Zs)x0ugM*T5_`$&0ZC&Z3SF}|4sG~%1x0D$+`H~S^D z$bGXp>ulf59?qnPwmKFg%} (K4&4u+7l3# #L;R~bndKHqEs`X-PH$PgyOdEe7 zdLF^SDL8p%7#kW$be2K7a}W?9Xm`jy2qD}e>fR*EPC#J0<<$`g2%>9;=r9tDXGYJ) zGTQdDO(X--B}NZHThypb Q7P;r5EhC3p$t!)I-ClgyS6tp&wz|3pyPX8 z63z1_5}bgr9UI_8woc*MX*F%mTGG+@CI-IQf P*+_-GS z>ydoIMqnAuMm&t4`m|N;b 6b7*|1Ko>+8#9(9 zXjO!+7N!ANhOVS B?I!GZZ0z+KYWoUA15X1V@$}stqX6uY zY #gex<7Z%B_zvL2ecp7fb z<0oq=VY)dK4MFsF*w2idoVLM}s_{arhUJC6#J;Ao+yV*2ZYXOi13o^K-5z!j)RV H?SEFsM>|KNE0pzm+?-4@sciJysP}E6O1> tU zRqx=eI{dDX_&pMdm}uPtP>J$8CBgp!Fntv(s{y!p%v0KGL+bbl$95Vu6zuQL0{c6A zfqmxHSJ@DUui*F+_^P1$n=H`%buZ8@2(6wCr2SN+RVQDEo;URRsK2HGN17;#;e!1GC#Dgo7(fN&dm`&UF7O4Xp6GIrbHN5pgjkw zrl0vUwz4bG7^_oVf%c5JA0T4LZOU6hsl K!E5;hT *OPR`)^VJCJ1_zF?XB^Tenq-ieVr+2l!R32ph`!5xj&b=8LnX@K=q}&O zS=niE`QDlZ_P6u`d+6UO?<9O>yL=zY0^R$2flhPdn6fA!?JqGd-xsog{MlYWHhen; zukqUD@;#Xa((k2)G_lL4tcd?I1g(cf_H-^^aIDMV#;mX_C?ihbBtYF4Cy=>&JpXa! zdg%wQhNr-oIXe;{2VIzGE9;W5Ff!K#`d(;Ocx%r)$ECo zm8QxB^~U;<4|yXgWOP2{^ B~{7L6nROib#d8Y^N7(7BQ0 zAuUt5J)=-5soV2HR#tO+ra3qAP!@#lU_d6yjSR^4$wWKRi;-wYp5^g+x~~lBbsPlK zIO`T&cUU8wJDD4^Fg@BWu}UDVWJtO6WVE7%1|K7_jq$+Wot$$YBikoACwehBw|u<| ze^>^Ieozy%Pt!1D;3x+z4M*v+TKG=cS${XeedK((6XOT57>`cD8u93^0@(ZQ(fud1 z$s>Eef+x$Pi%Xk4DIP1$yOX2_@9r9;dXi}1`YZ8bi(*T^loA#t EpGitUQ}j#cSh}iZ(gG zBXfp^NZRP*EDy3mFxJt9RZiv%p`dh$+seaSS0!jw #h!S7n#nmAX&% z?gaSwWbZ}z#3p;}sprXF{MZH*mvdFQ$U=f2pEGngg#LFz=-E>y=vj`3BWLJ2uo4t3 zfoY~na?x^y@Po=b=$a#hNjXH0(9#`OUiRE*l92sc4F(SZ;)z29EKBIMVGWigbX{** zLZ?TwgqmKlI*dPhp3u5To{+1UnJJ_o<(@?5wTknQs$0d1mort!0SqJyJxj$590i8; zR;@Te1axA3qOP}--#e5W#rz YCqwZPOzWCy^iNg|E6U~0G{SBu8!V?! zm}&Hhu!EqLEJ}gg9>E_a!bGl7ciG_nx=J?^^EbTh(^Z+LM+^qtiYYVjM2Mm*ctEEd zDf0N=!DcwHYQ1Z*E}s%K^Q8jhCtU!c*1g<-sHCIfwChGB)H7o*M_5gz<(t6(o)q4T zHjsAs?<47Q9|pmk2bCzVOA0aODa~SKwdl=^(Fkbb4S+VPfp%IJ&`#+EG+5ga=F0}r z{=!y$WLZVcXJ-NVf?hygVwhPQY}Z#fG}x@8z~7Mt{2O}#e?d4b*r3~Afa0pG0(oy1 zkSBTp`B>NRWkXLC8VuYY6;AhL!Rf`l;B 4edN}O~F0KUJ5*NK8)BbZ^<+?-35ua<{^ z?L1LY8@;}5iH;dW=_MuZDQuZeiTjb&x#^mw3$Z*2ZBc{0DHBFY+%KSN`Vb3aD@%!E ztWK2@_ssdpAZN&O%D3ksn>GHDXK`;8syr?j $Vf!yx#lJAyf~Meulv<1 zHBLLNr&}d0Tg%9fiy%YHJ`d x=)=r<=T*k^~nc5VyfVR6A(Ci6}a)RtHF;km^ zSwL?00 IJ9x35kVQmx9TrHeb$y-xqqp&zQp~^)Oz$rZzvy0_l^fAx%8BQG=X+DT3BR zszBPQO|Z)8OT^>}C_p2#oecnZpJqF3Uc+-gk2_ONcus+*z>Huzl0T1gVx#2;Ncw{R zd8UwperA8J11RHNotOnd35fJ#O}Xj5Ab1fHiDiFo#wWHQ$euDSsWC^i*X+-&W~QH+ z{n^b$R(|zG ~W}+)Xg4cWi>b3ak8Z~mdBOoaw_Iav!HUQ7gX$oNJ~uw3l)b_CPcnI3qr4D2qj8o z{Ufq{G9gm*VkJbn@Mj5;_6IeyelHC}hJ;8CnmGdL! y$MMS_;THd1V28@uNXo< z8bZ&WGC|KWvm9A|kHO+ruoR~g&NM&vB}JYerqvO7eyeV-jCu7P<%(Awi>CX <7nnp zn(H+BZ>16gyFv(Qg3nPi%dW+T9UWWq%LtOh>P^SdTt2)i!g0 m96;VXIKp*VT%PJK%6>iHf(=^g%nj*QR`bIwPF?mzX6pfpHu1) z<~V+pmDM5?u%;%?NsNGOePOF@vaAC67g<35X)hof3kHhB#%tF)!pe>0knT<(T?Umh z6L*<45(t4&FfUXEIQa(y{gtBfnOR_8&tOj!9=V8YpA3(PUX1VvxzqP*x~~jj5Dr4T zr%Y IJ-A@L7@a{A6W3fJmi11{g`YIWt zzf#=!HHlRWcYcwaJ4=SCv6$qJ=*8g9j7<_9cv4ubrhCc28{T ?j64xt%aWDoG9+P|D^pJapR#bm>UVJ{bIz1&3il7S7p^XzPZ z8MTWIB?&&Tp`;;DArXjSgO{8Q`^ol6Hi%wKHgM!%HEPCL8Wu07d&$5C-g$O5Kt#jE zhO)+nvWCDLNd#ip@cQIz_+zqtk`1C4lMUerK0_bCKS1}AfepO#>}-IDl8X)dH8$+m z*zh?LffzP?IyoD@Nw!b2LG+S@4NuX%WMBjDJPjM@vf5&-I}(y Qq9Ue*7&~n)gsSP6IT>5o zP8-JRR6A{s>VPqbB1#1n2bY_1u0sYwXcnrRf{!dIK)ajqbS+Ao3!{r+dRva&STZb) zdcxAmSA3r6Q?4 o@lb? z|GX8K2Sa|imd#?E+1EfNYWUOR&97u-`?=!st}GzGqZg2kr4_Y$VZ3&&xO_Ydq#x@A z(*CWud@T#?UuLi;3cY-vY@eLvh+d3Y4!Pp;bGok#a~%!>J%2&J1=k!S8qn_*mt!`W zZnfo^xEJ=8LZyUJvK-ky$tuxHa#jt~ePv)32O%S?dRcL~nnWeWv|f>%Ezc+0C)px; zG1wBj;!>jf$-olceMXjKUU7L5iAM}S4kYKt?~v`2{1Ck) A+$%0sx|a-W;GJh@L&_DGmy-y@u;C@i+3*0_ zKFJ2rOA L!S z*J#QW2>q3!<&$Y>DYqQ{J658$9Qun^3=GJ-waasHsVwg=kG#`XQ_fT?DEXaU4NivM zklVO1w-aP1{DOC)k5*b7qr88D)}Ef DmAm)jUO2K^5bfMh65p;>_~%UTt0sV z1Oq!k>eu<<_JUlVUEv|rOYAVn!C~u4(X?%WTy;%V3!9RrMcdV&P%Z%ix_ZP*5TYVf ztsuE#sv5r5+nUxZO76tYVm2?|WdUL$l}@n^GF;6TbPf}WbuU!yk7C7dUT! s%V;D0AvgxltxoG?l2?^}B1=Z4Tsg+Nad6bH}`Wm6Dgs^Z$lJmw4T(=h{t= zAyTSOPPJRb7MzsNw8t98x~}nj7y#EbAzpkmt@;4NHZp+WYrQQ~tKtSQj#JVBjF)x| zU|+=E#Q?@jX*Tvt7HB4#>GbUL412Q$o!5k(Jq}g-qi13O6Nn;jtO4vZ4k$@=3z=%D zo6S>~x;e^#x_MyrnGnZFt5P?+es^_yp949a1u50-a XDmlDJ zd>yZZmvS$1tk^0JY#!JHPUOKUaD#^>((vlG+`w%EyDV>$(E>j17Di^R<~jze(a*#t zH}A3Ab1CXs2q9P0`LbV4RnM^yFo~h7>b$9g8?jrsZ0K|VY(4zju$wt^>(QB8?T;`L znGNVg2~FJsRW(hW&H4!zHN0`}z*MzTs*?|aM45lbU+DUUOrjS &NtWIlbA|LF+lawa%G`^oXm#@@X%!9m!9T=0VkF)UgK0FJ^IbZ9x z5BijIO)-y`B7|5(K~_U0hpULM4V5v>-?5ep2$(o0Y0I=IBb0GDAs1jrT(M?B5p4v% z$O6GcC!JcI$FMY8&{<7buq&Wyf7FWMhorZrV`n*lBb6rPnV~c`%Unw1D6`Tfeo9^J z8r{|9cn3N zp}VFu9oXokPN^wpsUrZCx@>Dtj(QE$7k>O$4lY#3RnpjDMn5$`NSppj;rj)EUYGlL zk M7M}9UR`E^yn&F dfU1;7FYbd1mO0%`%tHILaIsCwxj<>{{KmWrG7Ho!%+6 QXV zkji%eMqS9` Y?iqc#!=?@Sm{&xVpr>~FW+$Bq!T=)zJNcrU+D{ `;te zFJgOvdE1tG5gQA}Q0M=<&hSvDfo$vbG!PRu>qz}HXM)_ICEtf o(a`1o}LWe+cUaZ#!Dg^Ds#pJ=J4F^a{5aV)H &T5~ZYS5;?shL` zKbOKGvY+d30H^8R&viNQoA2kk4xVE6bH!bGwyrzY+TJe7B5*bSPUue8y #kGGpKS@fAk!I!3@jF@&Ff=Z5QC%)EQ95YH2ms#Jhtzoan-uYZKx;5-!3pC67 zN_G9->lpTC3%W8A)6us<)%4R*w1=s;hIJfJlJnA#sm8q2=BaC5>L_z2X4WT_Wu>Qf zOY!3`%obVF=$#HUb!KRD)dQ?3y a$?IsKJ;gXa_gI| zVr>jmb^TDzYn6tb8TTpOyRQM ZcY6COYXNLr*g-%@%a-6RJ4l!hWgZEW{5 sH# z2HGrhX`rLbWvGF%BK!E=uM 1ccp1K(^xw-*GBUjtS9L*qD09@2K^kiI3JCM^?WbH5qW7Z;7+p=dmZ71AX6or$U3 zb@#;EvlIExO(G}TJ>hm-`CdMbW Zy|}N+e2V7oB! Xm=1TQit5~VwVL5z$hKZ4I%tyQ0YUW@{h6To9KMP!r zoNJcq@I`uXnd>VYpOXeh# o5Er-REFN%>zZ~Yu^1|YrS3}I z7emW{3SSJZ;1gR6WludXhSE3-@a1(ZB>3?c*zXIW-ycHHo-#qtt_OEqVE+oZGbUK2 zEyFtRvDXVIf$tQx?d9c#VB)K@r1pjP#S_=r^E1?LC^q&+FSB=kQ!4P=K$7^e)RHH5 zmHj!t%m@|U?k=$`$<5CUu%I+>SFFrFzmj@ zKDL5+g}s8FFP3D3y}T>f%2qCr=3Bd7U>^q?TwZ@sX!R7f>Pg|vm+$rNtTpxsV#K{0 zV-eW%aIJi^IN=qV-tBEPws7-2EQmA^@}ZpC6*83DSA?nSm{+Qgfz8Hi?1yq!U*)*z zewweLe_tqtf{$IVq5p_g! c2{=X#gkxw7e2-LQpNJC#@|x*e0)_Ov~p(dbk$q z=}YGoE&b17GkjfEUB$A(fh3 X}lBz58Z^ZKqrjQDvi5n;LA1!s>+ zK!_;-2^Eo=iYPxLi4t>w?0-Nd$`O)^fp dQBi zqn7(phs97SGsyY|HVfv+C%C6wSxgP;d={wJ^#b)Qu-3MWsCN)^!tY8FF3keq#k~Ny zSRYAjNF5&s1M{VV{njk7@9YKknO9$BLma+>^&9xApqt79U9}hJv{Mc(d9}ZQj;S*e z70CBx0r_RUfNUHmr)+}p+I5rAo3lXraB4{7=PGFIw4@^UNRjD6&P{O_a>jWL>N3uM z1FLIBUorOZ6T?x7Bn&+Yl@cTjtxxDbbo^y_R@Pj8@-srjGlf0{#P{(}c@ZZ*BY0!w zHQ|5{kp2n0#@R{tET7AZO|Q8*rv(-dDHuoL<1m)kDqM9Q9Lq!0eV(YO>FPgO;$+4y z^QpS WHt@E#2ots{2y4dDdpe<^^Go{10i1WKpHGOQ8v6WrK$ylB0 zBF>}GWd;F6S)lxXl-Z3Sv;T!`<7fMR8XvjLM$f{Iof>1{NQ8J~12Wu^d5U@iad9Nt z52wc;ajaF6_~lBY_TdpT$=lFw4Kyx`jG#(PS|=lrg{@BC>{ZP;=1XGoF@I1yqF#-e zr#zeUUb4>8-ZC}6SRK|4UVBtcA44+BdF20qInVhav0Zc1m^shcP>Hgq`kZH&mF?%8 zXImDKuj>V5eHLT+kdaSubDr@mP>=QkwVK~37gD{8%y|xF0q~Aq05oSX7GWJ9 w)Vy}%w$a1?FBSN5Fe(JatC(hGFjJjNoc{Uv73^NB1V|5Yy_8 1M|YV`6qB4|Bqq{u$!2~Ldn5n?t^D7YhYp+Uf-?{gtG>*3R(*%!;{&|-KB z9Dz&C$GErSuY{?TxbWu&@ZRKHCLEr%jS`Xt;K3d*1jRXpa@^LE#6w*H@Frd~^2I8i z1Vs8qrf79vgggVu^&}pIydIy}A|!jtw2a3*&t7+A?tom(W}#It@F2ZoM`m&tS-IKv z&FsnB7&hUtR*2F#+h;@-$!t51f66r; q)(sv$x;$o^ z3fvkhzj-zm;KX@ay8|jE^ gVKD`LWGJ`*u$j)G;4WyNN5) w%V{DnF7PY zMaZAH$Qn5Y2y-qQ$ZF1CizqX5{(Jbu%sG2{=FItX8?das&ujF_j$f8NTp|GJ!GPZs zHQ*Av%GiNIwbE=2!H~lj{rO*G@U93;|Mo|(Hqk0aP5rzONFLD)|5o 4D8nmgJoMt$KJiJz6dI%6CTs`*OSbwl{94p{0}2>pBabZgjib|GpSTyM?8tQ z0~*umNt_4F;GV=5cyf9Yp`n&8#Ohf5G~YqeAAE;*2sw97DfN3*pSzt8sO-4ldZRK? zft!!ysFRbaW_+u3r8Wk4k~PCY37# 2iS& zaH-q #qEFTc2}-r3i8bc z^3_t44{Is%#T$A5tH*$m`WN^?7O-Q+3>GNKjc)^MikXNsM-of3Qun}82N2~mkq7aK z%|zJKGdC02VV=s=rwK_9fh7~39_A&b=vZU6?Ks>EuSIKMQnEaKW6QRB4KkGZ{AxN5 z{d$yC96BoXNLcr1i%OY hA3WDqQcO5j*{`e8^j zwn$3ClOkh|Y@cMA=*3`}c2t{iH?%jZ*I~NX49w%eq+uRiRtq;POY46Sh3=V|9Xi6z zmZ5crn-%ntN#a`po9Ub+J|DQuCyBe^$vH`kJFv|WZZ@&iri_v);1<4J7=^A=#`Raq z |#9j!g1+tzoG%iOVY)_edGn4U6!Ke*?yGAn~X`3rHNzJM8NrDR-nHpxhd~ zA1fu?8Z5SMqoFbnLm9LVLlI|^Fkvv$bQA4|e-L5flds5r_}?RuOqYoJ0JKH99;SgX z5^>)GRnsTpqFVEl$5bM2{C@aXIlv>gyT1Y|5My5?RI=K?&(VdYX>z+e3QCuhTX~3d zD?zIwsa9%-dy;5_B4(D-YPl 9xxBu_kP~ zJ`E0B0%6rYiYyHLxIVn_8+T-v7juDUd!CmWO^ajUU^C^$;#5UzR(;6v4_1@2v?gcL z_MusCH%j1g4+Y1z8pT=@PAi4}3R8{x1RROb?A+DK2Xk8WR LXm^-{Z4sWyk<9LpM JeZf-9#hEIU>XVaDu?Y>X=5M^J$KDk7S6bx)JJt%2f&N5=YOx7h zNZ`d{xDo<_pM|Qo&jWJK3>KD))$q?b!3ysH94`*owc1TtXihL^%o}Y_K=q|~XFKkV zhIYN;B)nMw>?nDN62e!h0nG{!&R{#JJHdi>YkcE{8=IAhPH>X>vEVft5Z-{RXvV5u z12}-7!f{!_GERA|l{u`HPO!%MVm0B9JO|WmDQ{Q7AZwpwey}PB%Mk~Vy=ECmR0W(m z!IEmRHqpkN Bx#kj>-qS17c5y~c3GYmKu$z$A>6Ta#7jY(c9y3VHe{X zUN?bME7{-t&qB3cDhlGRflJ{59$-D!IG{5lBId@mr=W|a03BSb2OQvr;4sKfy;P}< zgA@qMa15G?W_#2sR+&WUt=5ZppaBAgMhS!lF1;KB9X<#Uls&HneXJ@$sl5envRJ7W zieqDFc^T9zuw}HzO|Lr6t=i#WmRH-?+14Hn=5u=j3JkJ{%Urk;P-qn!6CT(n9DV>O zkgXONTxes=8%KK{9Amt#!QFxEHMBM!{xKJgDhy>%d>+2!&v}0)Xu1Du9JMQO$c8_T zKmUb){uF=yWG?)?3x8g`5Pn{SKYz9ae%^yW&tC~Y+wtdH$HC9P;?F6k!_P_h^FSVc zUX4F{;lLBWj6Zk75bocFKR?FipMsxuumIt~6BpUw#2`A%pgGJSIn1Cq%pf?-dOys1 zKFoSO%z8Y`dOOT|I?Q@G%z8N7E}sem9z(Fam|<7mQr=x2_a`ttw2D77A;jX(!ykq+ zo~Oc5z6+n;06*mg!CcOSa6~K5;m1{n`A@81=qE^*Aed8W!XYG``_R{F1F2yxu#hZA zrPUZ|HMH{;;?H#`7EG>~m@CCAuBN9*G&+sz%IR}5% zEr*{C_`^)kt!Rnb_(LI!1ri|(Ls)&%8yRokQT7hDM_AsZJe++boFj}h$M@sEM5sc! zVWX@>6hRk=-h&9-hd*CB7Jj~lKi^peKR>{qw+_P3BlyE??03-Q&N?1`D3q~4B9s%F zrisasiOEC=PfQN$B_+BDwm^3nfj h>!~%(s zOvu-%Mrj28B|;O*4I5=8q6oS`^aey=JN`_b0Y44=xoSQ9T#r9&bbKuimXF~Ng(wzC zglIx-ZF v8O6$=iVr6sZmzCiY4h{PxGXT!7LXBdC3I}?6x#2@AW;OS^S9)(6C zivm%EugeA9Lt^ z%yIKE2hPWZ3?COd+QAZie!x7|C8Y|?GSKA(FP6W-iJ&aUU1R+XF9!}Y%qJ#C>(y|| z!HOPhy$nk)Fj`z7du5f5G1`YYeWTTZ8QLnlE%60HD= L!vjd57U_)p)%qe9fi_iz>BJwLON@k_nt4EW~4SAh-g= Lf@lj9!r}i9OVv*Q diff --git a/docs/_build/doctrees/api/evaluation.doctree b/docs/_build/doctrees/api/evaluation.doctree deleted file mode 100644 index 563b198bcf03aa1bbbe43cab775492d82e48fe4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 861245 zcmeEv37A|}m46blkbndbqZk4O2 ^S`zt+OWXtg$cMPGSvaCl^}(wJ!NJ~%QkzN0eSoOu1j zvKLM~Z=$C)f2@3YV`O}6pfb^#0VM{iwV}bW%J9UNiPm0NyjdG+^r`yu8kK=&ZDcs9 zUY%2&Tb;LMqNh5)HK$o?4ppq5T6?X&tUNSc#u}wl&RH{oC86N#O_eK J5<|<0pw`LF3hAR{6$G4VS3(C#rSZ(Wg6F5YUcB>6GkotK8 zL*+&TUc&R7;qngowEN)rsQF`SdEk<<$~G)B-kR4eZ^xe|stc=&t9w=tsP0x>(mHlU zb!10n#kTP)tCgMOE7q0AE;+rnZQFPQxLN_kHCB{IYbz=Vr+s4$p!~qKv&Odquk(SG z^7gUvXw??X(oNM`qcmFHUMXqz8l`5nQZmh;!1|=b7PW%QD+vPmD XFsu)g{$lpm?_C8YtgG4iAIx-ugvr{yDYL3W~p>$+O-V z0-hdD0E&B+EG`I{#}n|_(<@Cm4ohvMcz-iQotuxS^%hYJfT$U*Ikn-z$`uxta{Q;t zw>1w2@>orby`I+W(Q<8UqILL=k-_ny$_W 5j4YUE$16b{azw|e1pwvJzu}p_B{q>+KSC)yvjm<0+&6J0SN1DQv zS$(yR*?i)mO|WJwOG||;mY&pGI#GAq-xw_qR92RfBBiA#odjwp?B$}?98qJ!49=E4 zIBoi6Lw3J2OIr8f$+YlBy9KKBt(liklwHlAfZ@^_-o@zVolxF|< llyk*tW5u z8qAOuD076uNrJW3CWX@r3TdKx_q%ej8w5R*%^P0tN$0gSbGThg?gplQ#7&|ayB|Qo z?`9Qj?Z0Dus9EdB8MHrP6aECDT#F;%+wC%JJyyALU~2j )+Y)sS_flFMy<7E@zPvTou2BrNHaDIfI0nIPOfngbtfsx^+?JOH_s87$T zttF?H!N*)#S_yVc5VG>(=U0Zucl51>e=bgp{XA9780-4MNR#j})l@yBwdZJMco6Jh z{}mu!3(eLdrg`u(=MB|BugXJKmHKjQ9v$vQt=UM6)$`F#&vd2$H$`;cnl-u;jsDK% zQosZs5M6x*HnX^XB>W#Y=##Nh-xEs0f&)j+j&f~yqJAR2m dMUm rzfnpSp5Wk~9N$hK5< y{r0lVhZ%^2XlY@illDq6;r||RQyXn>XnHAW*)69^Bc@7 zuS;Ejb;6NXQQqnEsq3$VN@5<_Pk27)ql}IZ4>aXoh-IZ)GgoOx4W0}JZ)baL%^Yp> zQtH=ZmBqU2OujzE_E2T{TGRsh8Df!Jdm^)DduO*n4;5HDSVN`$3T!|?WUAI1@KX8; z^}XS-z7PCE#$Ek!@Fvqes6QS`Rqv=j0SjkqN_~GQSO0e`%zDl(sY2IG)E8rgyWk(? zO(fg^kK^!KTI>1}c+_Jp!#TtG>Hw^18qj9I$VYlnVv3%h*df=4((~+3p|#dL@Uz4` zTfZCs6rQ~O_wdMaxw!!|?(m3y+)KY+jvE;}VGiC?{iy%m2TCYUsgV>~I6R`?>2lZ- z_SdL1o8aR}XZHnS;HY^`%|&s07GTlWZ9MJl4XZa6X46mUz@|%5I
=f~RizvGaUd!ntWVcRvgZPxvmQ0u-QD~}W_xHnW9-&%hg z$U|#%njJrcZNL70Xu_R9v>}(hR5K0vQEV413ot}x9%C7D>@vS0H{+td5F2m}`CkQ- zxacd+kcTLTH0A4oqzqH8)kGWfv!RMM=9(k0#eY-dAE1vj=DGo`e7THy{a)z4-VdbJ ze}+#N-oNMj&;uzz-Jimj+xv!0J-U*P}>X*kjk0*6o6H~)DyWF=K z>0?8UbSvR4hYS94s1#_V-^{kp8fn=}wvm1>+eM0zR*i#^KGrhQ_|_gJ)Qb4Fl+oKZ z pM`%b8;jke|x_#Q)M#ePYo(bf%gV6?vv zG)SZU1AG!jTRe4aw9~OSYY4fk$jQ0eMQ%r`$zNdHAbx_F8q9Zn`Y_3%$UzYH6l zJMau%pOS8 ;vKIlB+oU=0fGaJ(y?Acx!#yz{rVE@Qi|5ybNiZ6pd zc2ovy<=ztfi$AHq1_i@V3fa}ClV(Sw$dkzWLjbmIW3mn0yxnLGI(MZQIP8Yo|FpLY z{x>11^`c!j!KERG7d-G}?v`W$ka=RL_Tn?k8GqmaR;E4Gf31FosH_$j93j??xay0s z8A-0$0enI_XL46Cy?`O`hztU`okBl>-$~^8v}oN>Zp9CirVikmlG|_pnWylg7T=-~ z(9>A~Re$BK{i<-(SU(Xeapx%-W;kuEKUI{i8eaFbjfTsc=f_1Y`qI#TK@9DiI-wm7 zbn#w~GI1{PzF!yNk-A;SkUttj{!ni6(`R6WsrtYAL^nkt|DnfS#+D#C+RA-iTki$F z=rJ6+N^neTktKa=!%zLsU~vm`3FnFpSV4$%^{xk!#GfxyTc}8*cHp$h0s{Z4?7nx^ z-BUG(VEeZp#L9zZ_7L_4=+&O->PNsLS%cEr*E)8!8>=5>m8yRL+mKdst~$#$ sj3U4XP6pAen;*+{Eq5j{+GsybCB zWEd`pC+AY&2*V@QuR=MT6rsx7@lhVB&TlQ)R;vsR%G(&`ib{rdqA0$Ft(e9-_H@_w z_t%DN&HnzLWtm$lX>)lAuG>^c2H|w_>5(pPpQeKPzKP5dHW~N#qBQc7#yj_ejbpRB zp;)S <8qU4JP!A6y5m6^#j8JrIw+SkyT*fR z9h_;zCg|*o6Ae08hUzv4>we&(C !RALj9`~>cvwG^#yF# zo!&m2^k)QlHte33+k4TyP`4#~%kItTg!c@Vn{ef`*$dtkY}57Qf*W@4@c! hn*VKmrB|B!)`b?UC+>Xba7+SLF*-x>2PUCw5Qe8 zy}vIeO#9Bf_`N?Pu=*X?jJx;u#Pq=}H(eIBxFW`l{!Rvw-2R`RNaMXee{$7K2%^Vw z3+E|%+-)iPeo-s=+lc7_R!k{A?9ZW6s1N&JqO3*iem>KrSTg?LK5eBm{GMM7J2U4{ z6X7Vle^c}ClEfLUeUclIBcpisLB3i@yGFAQ+huF!Nc(ljg;-^AUG+P^HMce_J{dKO z`qr$?@?$JGl*dQI;URo?;74yO!y!z+{IG;<;=-3213gPh^=*8J$msO5p454gaSdyEN>c$+llV z0DdMCL{Ta5R4)hHz0AfLRWl|3FuYvA_qE*ZD;q6ILL^#?nR&k*Hd0t~sMc)Cb+E?h zr7Wu{u #3KAz^C zyfd8N#B!d3>kZ+!-paPm;;MQfxQ1NBQ+wkfMU5Oj&(j$(0wno)MgU*dI^6L)GrMMM zqW(RYTK#(uhOD-|hqpteqV^uD>Tm}MksA-c1Mmc0`fvw-!W|LZHqbsP%x~|6*K+IK zb33Q=!<|1lV<_fu=OJt(?Qm!2T+S8BcewL+=!kRpD8%G&XAdAF|KW}RNgVD7;L;9v zrp}rR1`Hy~ts8NS;qlHA1V$e3{9X+LnD^rLp>zX!PbU8J1bs9Sb)=)0pXN~K)aY#y z>(syw9Z_#%l{waVSNbY4X?}|AmE=4fI+fRI_H^i^q;BiFsjyj*K%sXn9+oTY3lpjP zc1u#6rt_c@XK?L>*tw$Yu3BMV8pF;GL1NI7>;-K5tPiMqAwFR0I{G@kp9mjLcF+4| zI0xY3xec=}ES_&-IZPRNH-sZ~E89MclW9Ddjyb@s7N4p;o^Dkd7M9 7rSJex_HDpB` zwRrC3>5LcwlKea)fG=w;o{h^?KL 4ozPp6naC+g8_413rpc zU5j hU)Ig3$u&(YIc )SV(r zxr9GuBF$3nxEPVDU25~~!2F~YDN=J%=>D>(WxX-dzA2Gdj%C;lP$_g7_BK)0T82GV z9-5G$qWCh@@9h@SBc}Za!^>x5c=@!TFK7++?`-?5E1`NJuEeaXo~OCON5jXD_ z0ogq@y|%r!*UfE!?dMbOHpKR6E2Ww9{9<_h1IufQ`}f;$%x3P+xtA zU?#iIgBf4ea^H-ZtY44vpEB-SVlMseo1weSeR~=3(FOPIcz{*9ZzsW1hWnOKudilu z?wc-bUCz{4fcy4xr4~iHZ>O f#^yO$61+|dmF!X<>UD-+)x0H> z4dxW0>(@1VOGltz3;%b7^l-H!+odnJuZE$O@BZe?of^({E`K06?1nps(>?&+-+XS; z!K8dJlRn<$Ox4wEoYyD3`#fU)8mEz4{jJ!HB-bo}%qI!yEXsrHfRe_Ex;cYn?oy|p zWV23brC;jY^_r->PP6_=u5LQt&CvJWE1tKrLQC;H{|zdIu6#Zv%33QQ&lOFF?6eY# zTAp7F{y&Ui<$Im5(uH%G2V _4W|kKD!c7y^xgvdoJ^s`P8IS16_|;4M-Bw zeI9MS@f59X;C1s{=5UtP6g4^oDh2M}AIG-O!lrs5u;o0LIhF4{0!T?zB#^uCTxK)N zc?z!QhvQmf+h=iAy%1cxb}n-{PiMpkkmN^>fH}f9mGhuu_KwgSE;Em?Hj`e%)6d=I zZV5E2W>;=D`o+2z`G=W=-o|#6GGJsEk+RrbJLo=f%sL{G2R<4)Kf%(;4!n=L0+}lp z2wEiiPt(~QY-cG#k=^7G3SZXR`SE*uyXe;I2Vn;GZ|oSd+BSABhe}0l?C4vsNQm6k zc@Xfa Mk`E<8-BJK=TEt=Dz!Ax)mIwt6tk|7d&4sJ>(|+_so!!=U`x z8CvwF>={-Vluiktp;Klo08z+AO4ui7v#^2)LhM~o 14P`o6@y0Hxb5KER@|CW5m+W85=Hu|6IQA)%yCR{djzN%cvts8gj81fgBph5 z&c)r;)eYz^y6C&Qn_}+jrb)zH+06=So2YMEQ|3|v$% E z43rTuFU+)g8gDY#>%1o?b$4Z0-Ee%`Z}mQGw^*K?K;g6eDc;Yspi<}-%LY+)S8TD2 z#jrBm2`gRLVtGXj6E71?IBN}m3Y0go?X#}6>V>T7*e#Zu_`V|6Ws(HmmBtAWw^-T+ zUN^T`KF6|}qDKE34%=O9`z&m#7Xn+(EtVhiy+;5kiHZbr7jCiqk>xxE*WZQXI%^Nk z@n&&Vy%1cxw#BkHPiMpkkmN^>fZSUw%Xs>^EtbQeD#RoX++ukO+fmAZkzGW}B5sT2 zY?e-T;H`B9qW4skx2XR#zTy_PvlOAoZt@6)FKcbF82__=E-JV@1Kc%REUhDQ_@Q*I zj58Zvkv8PFZN;nvc8c1H5t}aZiu8*CK)D<9N_euuwxunoAj73z>P_gYHof7DTQ_br zK*0Bj$`}`U Ei+*y%})I8zP^iCN| ze)^4@k0sRKnouvEVyG|R#?89(hBHT2o;x>L9{>k*7klgGI{|I8n+G!XP-A3#Y@mYq zhaoK5_OX%i;lcjq*m$!FanVQ^o8kkh?dqF3cfk;}cP_Idt9{R@;p|lUZ{}b(+^(BG z+r^tXUr9RHl{ef2MvmUr=<3~^Unbo9HWc`~IYx5z2e29UZqA`WOv;V#pt8nA`D+H* z-2EIs+2(%Ehq(JWQ%_^%QJuA8LvQLBN0`3%-r(75PpY1dviYN$Er3d)+e>prS&LZD zEu3O*@Ejh)$|0SwqC#P&TXTh!K}0cc)zIgjo?p!1KPiT_m4daPO{cTi_SwaT>V>Rw z_o8!}X3>3Z_ 1dMFP1Cw+(;F za-M?g55sZ&727_GtLlZ|+O=)N|KaJ37y**}$Ptix+i>5 ly z$Sxvf5w~slRF+OwAji1^(ffp{+lFVbouvpxc9Taad|7MT(C_E(nr*}S-(Z2_-wrfn zwQUF90hNl{4%9cZkPx{S*Z_P4UHWDg{)C&9cr!~c;J^X;61<*bH?yvAhSsjSne`&< zH_y$impFvd1ysIRh*v{f+`5VmFLE>MRZunm%`7oM#LX-*XbQZUwF{%b1?@S=i&i+Q zxLqQBH|re;s;n}Ok1~^P+}$kQfZoiFzMJ(dy gw}dLipZ zcgIb6HtuV)5!b`_AF&>kWbrP%z7f_oM7yvNcM8j43WBS`5j>l1pG8phLJ(v(; *!Ef2R4)X!oEvek<9m+)QW6yj f z#LZpEc?#^nn*~+L&Sd6B+ 7sN_xE~ptwHFXioU^T z7--wF`wTEt)RvvtoRc^BRsw`_*X~q!Y6abn@Z90+%fq~Ni%-J@E0NDC_r1tld}s0l z)PIXl6QZ4MI{dP4@m+)>6}R}d;FGw;C!S*N!PUi9MxI-IdRLVtKm8V8J)!=RgnIE5 zL%q4hXN1^O9d4OGlFO6NY9T-Dp^zaCFtL6vnV-wmrSS8zEg~WAg6iVxDtW)F+6#KV z01Ve2Iyah3dfQXoTfb ewmxp#XYK@W(KAe0RpIy)_TCN27 z*jLQxE{T2WkLtY;hWO=44MFt2K=j3$#*9q8t$CH<=2#7~+ijWXsSdS{g-d+nLzNRs z-c7U`vfF>DWVgSp*qvw{BWo?sQ;B~0XjqUIDw2V#TIVP*Gz2E~YSx`hKXc0_TB~!g z)tA~my`yPirWj_n67>LU=cz{|FYIzOvYV6PrAU2)9$c-NC4CzPp3D&bm{Y?U!u~st z*bTRvt#^O$&f|NM4qDge-VO8v-8Z^(<>1Ib1GHgydue1_9u447m(GH@1KFErG->JP zt7L%qav~=Q9R-5F9cg4-zZ090jF>Io{h6UIkDQnihQ$BKAd$NX=_k=_z|N7mJ;gqe zi4bPLHFw$Uw~JcpFGJ>kvt*|Dr1wLm&<)M|0?JxGsh{
cnGXJ+i^3+z79Oj*XZ20(uOO@90|%|F8i%4g^x{shu7J zFCqatXoEE1Mh~_lb!;|vYMI_6oGu)V&lOtZaA=Dgz7%zGfO{NN&3}L^pb`hT0zPqo zJHMhOfgYL;l`##hJ`5?uo14;b6k_m Q*8opIh-XO((# zn5c9=p;T^y Y0gr{p3XB@-HW=FvhId$PY3dP%~m&t0qf{pPEo5^Qd~4JN L|Yc`>v2+DT$jCMv+xeK3zh}Q;0~fPV+OmlXG`Ng=oP(Qy4y c2ezmexM>-~-1xi|skKB?PrM_pae-4Ukw?%UXz|@gR zd84O2txxr!=YftM3>zG34@650r_uu?vbq6n6O62|lG>M=pV%kZPqFs5>i0q;^=|+T za%<|F_$0Qb#8b@Xjx^1kX5_hG<7sDaSiP|u=J~8*%(Eo00|TADEzqaic1-kK>pf_j z{?n-318Okou|Q{g-c0{IsoT17YMW^-g*HQdOsJv$zl7HuhWf8iDbP?a*oT@viUVt? zWiQ!=`Uz|oDTZ1#4u<*|%TVLn{D#_$m-=6@0oPF9124O6sIyf_n(E_0Sgfhms-%te zQ=o!2)|xvo*7qt&c@HB(jJ0k+D` si*7r-b?1sfY zw-}3UQQ3jnJ}lj@CLK7odk^ _IX{Mb-a z-b@(IVai9LQlKe+5!*g%%4ILvru;Q*7b&J(H4diySj&{-TYKnG`(k^3w$E(_O??C# za83CI@Uq*cJW#EqJ^v68#M*PBS=y-I0=2YJ*L;Fee>Sq*i3hG5=)kCd4rq`@{Wg3O zMqNC0Y}C_7fVGCud#5Z1>4(F2CDeaCp f7Jx0MH)BV#*H>Me~AU#`=8dVhzl z|H@cp7=pgE*R2f?R<5X!=0?Xxc8oTyS6x1_{C_ZtY%7*+LVxSjpi^dw3B_)>?OoeM z{w(RB^`@yXulfds{(@nW4l8HxOHrd3@Q0N~y!G9%8R-w0&B^`z{L0Nr|BuF>+BbtR z?ugP)m^q@ndWvYGIUYTLQ+;`=U`|Z~3NLE$g^ZkgSUIPhu|5eZafeh|2{ANANtCrd z8aa?RbS}3+#TT`*iW!cd9>ej8opAibbkpr}n^|;Giz{NdydZ|lO`UMLPunEqGM82Y z@@lo$HLQ%rurkyUD{Yf!8!IU#fR*-N3@a~>VdW*cSxNUFQ8TR@4Sq{G88;gC119O& zHhTRS3e(WocBA2LnBcpz#?dz#kSe))`8Yn|pZZ1vKI?^vp8kN^dz8=N-EHcz&X@OZ zztJ$VwO$!$vbPyN4ZYf47QM}|uXUTjZj9b!xC7gev+!J5%36$m$?3px2y)$J_&kbe zD{aAE&QiR|U50N$)% Oq;T?v15iD@K zpvu4CqkD(p@yY`$Z5tW0@776cwy2f*yRldgsCM-#GaXGu)D(BMiKrrTrD$1enM7Zl z?QeJc@@>WXJZy5UVPl?MSYK;>?Ib$u;x=h8>*A%sT{t_j`})X`Hq7^v8NZ7jOARI+ zzx=-JzDeEI%~N=*7p~nSIOh<+aB0u|{+Ga%+ZoK3r{rd$)aO)f&x z~dWhI@(0Zv#W+Mgx94XU$oCYw%jS{P*JCQdX;JHMeYmV{(Mrxk|B8Td0{U zt+{Dgf`@P0nBCSr464Ev{mfg`Phq=A*^`is)2a9gX(ADv(FyrX>{Jfs*$9Tk@*0+& ze6e9x3mH%a2%L^LLe*lX<2|fFXI(CYPbTC%rhtMi^39eQ@NK%=BV_FxxE@(wf-Ol| z&k>{B>Sc%13l)_u?0KU*mt%+YVg|YxE93=_8Z;H@`dkiGEm_YN{j~PLHRKheL$!fg zbK+X@`{m`a;fZVO>+m*+&-2++iCVI0{GX0weSkf#T|?lJ_p2>=3!7od`?bOH-W}vE zY)GoWuZtJ>Td2U*mU)cC7dirA2l%XB`}2)}5w4A>r9pD7K&{EgjKp1Q^6>%%{*icr zf37frcf*?G9pT?M@}A?4@E;Z^@bAS7{AYy;Jl6={4X1bGin&9a-=)Ci1b%j8oUr zmNe{fxv~-4ybB5_Z|3}S+0)) z%2`O^TU(DkvJPBGy%bwYSx8;u^g=~t3p;Zm^ KTZYS!Qc*YGZUfHg;c-@4_rvyWhCw{q`pz0z`qtR@E;Z?@NQU> zyd(TUBk#6_)E^2I_;2F{{`bNJo@<0V3n_PqQ-9u`iS$JbTu2!=tbP(o(_Kg{g_qr4 zNab)} 5P5dtFTl5 z;^uiQJ+{A{?f>l*GN8lMo>G`g8`nTp%i-?8|I2bm6j09M2H)DcMrEDX9eF#prWQD^ z!~IUDCn~Od0>2*Gid^B`3{{H}c!)b ;C*g#Mr^$0dHmO^n z1^XV)=y(%X(ba*=ae#O3Oxkrkjd}JDusfUlZTyPAsv)FDfMbDJzv7Qc-PSv%?1pS2 z0@s~5KDRqj8*b+EAof^9=MgGf_MXW+s2buy?9X 8zILp2;%o)bBwY$+S=NDbIC>b=ZIu@orGWI{iG`X`0F> zpM=*!Tahlqg;2E^2@C#Ua#OczlUpT5vbLMxN;b?*FqW!57v<-=3BLtP))hD54KrrI zwHo-JbqdVeaOoyoh2l+d6A~+~y@Tf>jOx5svj^V6gUUR6uaJiXEYJ<;xq-?$D7s7w zNR!^db@(K_1MxJ8-hukCV#;|3imt-FgQQ*8JFtI1??C@;yn~wnG~13j#)kC{Zb<4* zVede*EG $Pm-PSv&?6!pwg50-wH0nSS;>4QnE=i#D`A{iQ2ev~cZeG(<14bPf5M`%O)PWbr zaQuQ!IOgI62q(lul*lX^8g<|;F bdB24E$0gK@rzq+R35K>_g{(Xc!g!U(YK@WM z4VA|DP%}Cn+G%-w+LX>6Z#GXzv~4L(_B0^=S*3rp+^qJN?615pRVl9;1MqvpjgRL3 zs%&SMgPirj=&;?_><@~McWOAw=npTC-Ei?Aw5NmD`i@9CXuV}Bc*Q9&PjZ~IwTYB` z4ksVy%t*NYOl(Fv_GaPp_*9nVR!{2hW`@2ngFG(UnV&qf?pRl-f(e(T$8xL}nC4w~ zrR}FhE&G*We}rW}WjSyOR0>@VY!_uMs-Ku{X *pKBVHr +C?VbEfUj@fm--r?<8mhUD)ikD~(9b$6a zxU0iHO`Wq+Yh#}Y(lwGoY0`FgmTbnMHd`yoAet9uoUdlbIUm^Tl%(#IN}I!g=^iFb z1E>C?M997+SBg`A0aW59C%y8;J^oFi>?Aw&%@{66JK>Ud!5!~6pm4ZT--_Y&<(=?K zop-YlPTzZ-`Ws`2eMfF$jo<60dvlz6V{_^oku<5%li<|1bONSyb3 -W}zbIN1zs#zIp$ej<^ zjIv%C$^IdaWa|%N>BaTm;QuYD_5%4Ze;F#ajtuU!s7UDFW9#_PP^H;Fgy9~2T+GK` z`fJU~j<%nzb;L1d^Q{D4+1Rqu^5vyXkf|8A(@V{flK5SWNjdZya_sd~XSDVjg4V~% zL;X;1WO%#P4cVnrE|`DgZqXB^h6Ihm`hHk?aeZ(2KakO))~r&GbteE{+Y6Wa!E+4o zt^H=e<@*^c#kZ0(R?fH>h@PRY*c|~kwe>J)1>C~x!;ZYS@Q!jwph}f*ncXY6q%GL1 zFKT1SGJ7Rd&A-e>t5|oI*=e`%dOXCnmNZ7Iwc#uJ%j3 `>Yt+=OoIVlDMfu|TV?0dTh(Nje9#95& z+FcZ_?+O2>N0w4uvxXl?-}Ei@oL(DfZiX@1Tf%^@o3{;(l$%?&B gsR1u3w GU|nIAb;D)*bQg& z-2#RD&3GZ-U6_#dKt@^kZlNc_wgxhoeSF>6N_X$~u|E0}X2mDlKcfKU_?;sPSytk& z_*<%(%{PMo2yJoOBaD@pwYaDetT^QC!z>c`)g8lhs;-|6Or<#&$#g@U3wO5hITxNX zz35y7Prb&~aGRp^+ZIH-8kc0?l+)GN&YikOIvb=(#@#4%2Wb@y!gO75B&l7Fr$Hsp zdI4YCZ9RNkj`NT+zsqsH!!(`D@)?tjLaww08v@3dl%Z-d)1kK1X)edvg2;B41K$($ z^ST^6u>r5kah20Fl~6tzUoOa}Ed v5obGZYVx=yJ zJBI0$&AJ@PbVFPYcee4l9G)_L=`M$N0ya*E+Zg4*wjtW-I6ecZoKDBd>Pl^?2ZuCn zW|;j8{nL1(GKkxZ+bhGcmDsd)zx75V-Ma`lx7qywZtOaIYZqZQRPwk8_}bP3>LQ#F zv$G&~C4zSq(iUSSq)bim!eSWU4{?a5lSjVk=RhGB+JY@YW{U5Hs>LX8mSudRAhLam z$M*!iyi@$?*noG6Kf`I7N+_R