commit 1710432d38e497762daca7bbcd7bb3e9726c1038 Author: Aleksey Filippov Date: Fri Nov 1 11:04:05 2024 +0400 initial diff --git a/.flake8 b/.flake8 new file mode 100644 index 0000000..79a16af --- /dev/null +++ b/.flake8 @@ -0,0 +1,2 @@ +[flake8] +max-line-length = 120 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..a550b61 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=crlf \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d9d355f --- /dev/null +++ b/.gitignore @@ -0,0 +1,278 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/python,pycharm+all +# Edit at https://www.toptal.com/developers/gitignore?templates=python,pycharm+all + +### PyCharm+all ### +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### PyCharm+all Patch ### +# Ignores the whole .idea folder and all .iml files +# See https://github.com/joeblau/gitignore.io/issues/186 and https://github.com/joeblau/gitignore.io/issues/360 + +.idea/* + +# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023 + +*.iml +modules.xml +.idea/misc.xml +*.ipr + +# Sonarlint plugin +.idea/sonarlint + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintainted in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +# End of https://www.toptal.com/developers/gitignore/api/python,pycharm+all + +# JS +node_modules/ + +test.csv \ No newline at end of file diff --git a/data/1-s2.0-S2352340919309023-mmc1.xlsx b/data/1-s2.0-S2352340919309023-mmc1.xlsx new file mode 100644 index 0000000..ee525d4 Binary files /dev/null and b/data/1-s2.0-S2352340919309023-mmc1.xlsx differ diff --git a/data/1-s2.0-S2352340919309023-mmc2.xlsx b/data/1-s2.0-S2352340919309023-mmc2.xlsx new file mode 100644 index 0000000..767f0f7 Binary files /dev/null and b/data/1-s2.0-S2352340919309023-mmc2.xlsx differ diff --git a/data/1-s2.0-S2352340919309023-mmc3.xlsx b/data/1-s2.0-S2352340919309023-mmc3.xlsx new file mode 100644 index 0000000..0c9ba41 Binary files /dev/null and b/data/1-s2.0-S2352340919309023-mmc3.xlsx differ diff --git a/data/density_test.csv b/data/density_test.csv new file mode 100644 index 0000000..7c80a45 --- /dev/null +++ b/data/density_test.csv @@ -0,0 +1,18 @@ +T;Al2O3;TiO2;Density +30;0;0;1,05696 +55;0;0;1,04158 +25;0,05;0;1,08438 +30;0,05;0;1,08112 +35;0,05;0;1,07781 +40;0,05;0;1,07446 +60;0,05;0;1,06053 +35;0,3;0;1,17459 +65;0,3;0;1,14812 +45;0;0,05;1,07424 +50;0;0,05;1,07075 +55;0;0,05;1,06721 +20;0;0,3;1,22417 +30;0;0,3;1,2131 +40;0;0,3;1,20265 +60;0;0,3;1,18265 +70;0;0,3;1,17261 diff --git a/data/density_train.csv b/data/density_train.csv new file mode 100644 index 0000000..98fb199 --- /dev/null +++ b/data/density_train.csv @@ -0,0 +1,39 @@ +T;Al2O3;TiO2;Density +20;0;0;1,0625 +25;0;0;1,05979 +35;0;0;1,05404 +40;0;0;1,05103 +45;0;0;1,04794 +50;0;0;1,04477 +60;0;0;1,03826 +65;0;0;1,03484 +70;0;0;1,03182 +20;0,05;0;1,08755 +45;0,05;0;1,07105 +50;0,05;0;1,0676 +55;0,05;0;1,06409 +65;0,05;0;1,05691 +70;0,05;0;1,05291 +20;0,3;0;1,18861 +25;0,3;0;1,18389 +30;0,3;0;1,1792 +40;0,3;0;1,17017 +45;0,3;0;1,16572 +50;0,3;0;1,16138 +55;0,3;0;1,15668 +60;0,3;0;1,15233 +70;0,3;0;1,14414 +20;0;0,05;1,09098 +25;0;0,05;1,08775 +30;0;0,05;1,08443 +35;0;0,05;1,08108 +40;0;0,05;1,07768 +60;0;0,05;1,06362 +65;0;0,05;1,05999 +70;0;0,05;1,05601 +25;0;0,3;1,2186 +35;0;0,3;1,20776 +45;0;0,3;1,19759 +50;0;0,3;1,19268 +55;0;0,3;1,18746 +65;0;0,3;1,178 diff --git a/data/dtree.model.sav b/data/dtree.model.sav new file mode 100644 index 0000000..d3c8f85 Binary files /dev/null and b/data/dtree.model.sav differ diff --git a/data/readme.md b/data/readme.md new file mode 100644 index 0000000..9db67f5 --- /dev/null +++ b/data/readme.md @@ -0,0 +1,3 @@ +Dataset on fuzzy logic based-modelling and optimization of thermophysical properties of nanofluid mixture + +https://www.sciencedirect.com/science/article/pii/S2352340919309023 \ No newline at end of file diff --git a/data/viscosity_test.csv b/data/viscosity_test.csv new file mode 100644 index 0000000..034ca74 --- /dev/null +++ b/data/viscosity_test.csv @@ -0,0 +1,18 @@ +T;Al2O3;TiO2;Viscosity +30;0;0;2,716 +40;0;0;2,073 +60;0;0;1,329 +65;0;0;1,211 +25;0,05;0;4,12 +45;0,05;0;2,217 +65;0,05;0;1,315 +70;0,05;0;1,105 +45;0,3;0;3,111 +50;0,3;0;2,735 +65;0,3;0;1,936 +30;0;0,05;3,587 +55;0;0,05;1,953 +65;0;0,05;1,443 +40;0;0,3;3,99 +50;0;0,3;3,189 +65;0;0,3;2,287 diff --git a/data/viscosity_train.csv b/data/viscosity_train.csv new file mode 100644 index 0000000..3b90b39 --- /dev/null +++ b/data/viscosity_train.csv @@ -0,0 +1,39 @@ +T;Al2O3;TiO2;Viscosity +20;0;0;3,707 +25;0;0;3,18 +35;0;0;2,361 +45;0;0;1,832 +50;0;0;1,629 +55;0;0;1,465 +70;0;0;1,194 +20;0,05;0;4,66 +30;0,05;0;3,38 +35;0,05;0;2,874 +40;0,05;0;2,489 +50;0,05;0;1,897 +55;0,05;0;1,709 +60;0,05;0;1,47 +20;0,3;0;6,67 +25;0,3;0;5,594 +30;0,3;0;4,731 +35;0,3;0;4,118 +40;0,3;0;3,565 +55;0,3;0;2,426 +60;0,3;0;2,16 +70;0,3;0;1,728 +20;0;0,05;4,885 +25;0;0,05;4,236 +35;0;0,05;3,121 +40;0;0,05;2,655 +45;0;0,05;2,402 +50;0;0,05;2,109 +60;0;0,05;1,662 +70;0;0,05;1,289 +20;0;0,3;7,132 +25;0;0,3;5,865 +30;0;0,3;4,944 +35;0;0,3;4,354 +45;0;0,3;3,561 +55;0;0,3;2,838 +60;0;0,3;2,538 +70;0;0,3;1,9097 diff --git a/data/vtree.model.sav b/data/vtree.model.sav new file mode 100644 index 0000000..e219a2d Binary files /dev/null and b/data/vtree.model.sav differ diff --git a/density_fuzzy.ipynb b/density_fuzzy.ipynb new file mode 100644 index 0000000..c371a00 --- /dev/null +++ b/density_fuzzy.ipynb @@ -0,0 +1,956 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0200.00.01.06250
1250.00.01.05979
2350.00.01.05404
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 20 0.0 0.0 1.06250\n", + "1 25 0.0 0.0 1.05979\n", + "2 35 0.0 0.0 1.05404" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0300.000.01.05696
1550.000.01.04158
2250.050.01.08438
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 30 0.00 0.0 1.05696\n", + "1 55 0.00 0.0 1.04158\n", + "2 25 0.05 0.0 1.08438" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "density_train = pd.read_csv(\"data/density_train.csv\", sep=\";\", decimal=\",\")\n", + "density_test = pd.read_csv(\"data/density_test.csv\", sep=\";\", decimal=\",\")\n", + "\n", + "display(density_train.head(3))\n", + "display(density_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n", + " fig.show()\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAGyCAYAAAAMKHu5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAACJKUlEQVR4nOzdd1RU19rH8e/QQQFBFCwo9g72hi2xd03UFBNj6tXYS4IFsYFdY4xGo+k31RKx9y5iV+y9YENsgILUmfeP817uNZYADuwpz2etWSs5nDnnB4eDz+x99t46g8FgQAghhBDCitioDiCEEEIIkdekABJCCCGE1ZECSAghhBBWRwogIYQQQlgdKYCEEEIIYXWkABJCCCGE1ZECSAghhBBWRwogIYQQQlgdKYCEEEIIYXWsrgAyGAwkJCQgE2ALIYQQ1ktpAbRz5046duxI0aJF0el0hIeH/+N7tm/fTs2aNXF0dKRs2bL8+OOP2Trnw4cPcXd35+HDhzkLLYQQQgizp7QASkxMJCAggHnz5mVp/8uXL9O+fXteeeUVjh49yuDBg/noo4/YsGFDLicVQgghhCXRmcpiqDqdjuXLl9OlS5fn7hMUFMSaNWs4ceJE5rY333yTuLg41q9fn6XzJCQk4O7uTnx8PG5ubi8bWwghhBB5wGAwoNPpjHY8s3oGKDIykhYtWjyxrXXr1kRGRj73PSkpKSQkJDzxAniYnJarWYUQCpxcDj92gOQE1UmEEEa24uIKox7PrAqgmJgYvL29n9jm7e1NQkICjx8/fuZ7Jk+ejLu7e+bL19cXgBkbzuZ6XiFEHoq/DisHwpVdsDFYdRohhBHFJMYwdf9Uox7TrAqgnBg5ciTx8fGZr2vXrgGw7PANtp2NVZxOCGEUBgOs6A8O+aHFeDj8E5zfpDqVEMIIDAYDIREhuNi7GPW4ZlUA+fj4cPv27Se23b59Gzc3N5ydnZ/5HkdHR9zc3J54ATQsW5ARy44RnyRdYUKYvYPfw6Vt0PkrCBwEZZrDygHw+IHqZEKIl7Tk3BIib0UyoeEEox7XrAqgBg0asGXLlie2bdq0iQYNGmT7WBM6VSEpNYNxq04aK54QQoX7l2HjGKj1PpRtAToddPoKUpNgXZDqdEKIl3Dt4TVmHJxBt/LdCCwWaNRjKy2AHj16xNGjRzl69CigDXM/evQo0dHRgNZ91atXr8z9+/Tpw6VLl/j88885c+YMX3/9NYsXL2bIkCHZPrePuzPjOlZh+ZEbrD8RY5TvRwiRx/R6CP8U8hWEVhP/u929GLSdCsf+hNOr1OUTQuSY3qAneHcwnk6eDK893OjHV1oAHTx4kBo1alCjRg0Ahg4dSo0aNQgJCQHg1q1bmcUQQKlSpVizZg2bNm0iICCAmTNn8u2339K6descnf+1msVoWdmb0cuPc+9Ryst/Q0KIvLVvPkTvgS7zwdH1ya8FvAkV2sOqwZB4V0k8IUTO/XLqFw7HHmZi4ETy2ecz+vFNZh6gvPL3eYDuPEyh1Rc7qF+6IF/3rGnUOQaEELnozjn4prHW9dV2yrP3eRQL8+qBXyPo8bPWPSaEMHmX4i/RY1UPupfvTlDd3OnKNqtngHJDIVdHQrtUY92JGFZG3VQdRwiRFRnpEN4H3ItD85Dn75e/MHSYBadXwolleZdPCJFj6fp0gncH45PPh4E1B+baeay+AAJo71+EDv5FCFlxktsJyarjCCH+yZ4v4eYR6LIAHP5haGyVrlDlNVgzDB7K835CmLofT/7IyXsnCQ0Mxdnu2SO8jUEKoP83sXNV7G1tGPnXcVkpXghTFnMCtk2GhgPBt07W3tN+Jtg6aBMlyv0thMk6e/8s847Oo3eV3lQvXD1XzyUF0P/zyOfAlNeqsfVMLEsOXlcdRwjxLOmpWtdXwbLwyqisv8/FEzrNgfMb4OivuZdPCJFjaRlpBEcE4+fmR7/q/XL9fFIA/Y8Wlb3pVqs4E1af4vqDJNVxhBB/t3M6xJ6GrgvAzjF7763QFqr3hHUjIO5a7uQTQuTYN8e+4cKDC4Q1CsPB1iHXzycF0N+EdKyMq5MdQcuOoddLU7kQJuPGYdg1E5p8BkWr5+wYbSaDkxus7K/NISSEMAkn757k2+Pf8on/J1QuWDlPzikF0N+4Odkz9XV/Ii7c49d9V1XHEUIApCXD8j7gUxUaD8v5cZzctVmiL22Hg98ZLZ4QIudSMlIYtXsU5T3K85H/R3l2XimAnqFJ+UL0rFeCSWvPcOVuouo4QohtYfDgsjbqy9b+5Y5VtjnU/gA2hcD9S8bJJ4TIsXlH5nHt4TXCGoVhb/OS93c2SAH0HKPaVcLL1YHPlkaRIV1hQqgTvRf2fKU99OxtpKbxlhMhXyFtGQ19hnGOKYTItqOxR/nx5I/0q96Pch7l8vTcUgA9Rz5HO2Z0C+Dg1Qd8v/uy6jhCWKfURAjvC8Vra8PejcUxv7Z8RvRe2DvfeMcVQmRZUloSo3ePplqhavSu0jvPzy8F0AvUK12QDwJLMX3jWS7EPlQdRwjrs3kcJNzSur5sbI17bL9AqP8pbJkAd84a99hCiH/05eEviU2KJSwwDFtj399ZIAXQP/isdQWKezgzbHEU6RkyakSIPHNpB+xfCC3GgVfZ3DlH8zFQoIT2gHVGeu6cQwjxlH239vHbmd8YXGswfu5+SjJIAfQPnOxtmdk9gOM34lmw46LqOEJYh+QEWNEP/BpD3U9y7zz2ztqcQreOQsQXuXceIUSmR6mPCIkIoY5PHd6q+JayHFIAZUGNEh70aVqGL7ec59TNBNVxhLB8G0fD4wfQeS7Y5PKfqeK1IXAwbJ8KMcdz91xCCGYcnEFcShwTGk7ARqeuDJECKIsGtShHmUL5Gbr4KKnp0hUmRK45txEO/wytQsHDL2/O2WwEeJXXusLSU/PmnEJYoV3Xd7Hs/DKG1xlOcdfiSrNIAZRFjna2zOwRwIXYR3y19bzqOEJYpscPYNVAKNMcavXOu/PaOWpdYXfOwM5peXdeIaxIfEo84/aMI7BoIN3KdVMdRwqg7KhS1J2Bzcvx9faLRF2LUx1HCMuzLghSk7TZmnW6vD13EX9oGgS7ZsGNQ3l7biGswJT9U3ic/phxDcehy+v7+xmkAMqmvs3KULmIG8OWRJGcJhOoCWE0p1fBsT+h3TRwL6YmQ6Mh4FMNlvfVlt8QQhjFlqtbWH1pNSPrjcQnn4/qOIAUQNlmb2vDzB4BRN9PYuZGmTtECKNIvAurBkOF9uD/hroctvZaV9iDK7AtVF0OISzI/eT7TNg7gVd8X6FD6Q6q42SSAigHynu7Mqxleb7dfZkDV+6rjiOEeTMYYPUQMOih4+y87/r6u8KV4NXRsGcuXI1Um0UIM2cwGAjdG4reoCekQYhJdH39hxRAOfRR49LULOHB8CVRJKXKBGpC5NiJZXB6JXSYBfkLq06jadAffOtqy3CkyoLIQuTUusvr2HR1E8H1g/Fy9lId5wlSAOWQrY2OGd0DuJ2QzJR1Z1THEcI8JdyCNcOg6utQpavqNP9lY6utFfYwBjaNVZ1GCLMUmxRL2L4w2vq1pbVfa9VxniIF0Eso5ZWPkW0r8XPkVSIu3FUdRwjzYjDAqkHaEPR2M1SneVrBMtByAhxYBJe2q04jhFkxGAyMjxyPg60Do+qNUh3nmaQAeknv1i9Jg9IF+XzpMRKS01THEcJ8HPkFzm+Ajl+Ci6fqNM9W5yNtOY4V/bXlOYQQWRJ+IZyd13cytsFYCjgVUB3nmaQAekk2NjqmdfMn/nEaoatPqY4jhHmIi4b1I6F6T6jQVnWa57Oxgc7z4HEcbDDNT7FCmJqbj24y9cBUOpfpTDPfZqrjPJcUQEbg6+lCcPtKLD54na1nbquOI4Rp0+u1FhUnd2gzWXWaf+ZRElqHwZF/w7kNqtMIYdL0Bj0he0JwdXAlqG6Q6jgvJAWQkbxRx5dmFQoRtOw4cUmylpAQz3XwO7i8Azp/pRVB5qBmLyjbElYOhCSZ+kKI51l8djH7bu1jfMPxuDq4qo7zQlIAGYlOp2Pq6/6kpGUwduVJ1XGEME33LsKmEKj9IZR5VXWarNPptOU50h/Dus9VpxHCJEUnRDPr0CzeqPAGDYs2VB3nH0kBZETebk5M6FyVFUdvsu74LdVxhDAt+gxY0U+b66flBNVpss+tiDZa7fgSOLVCdRohTEqGPoMxEWMo6FSQobWGqo6TJVIAGVnn6kVpXcWb0eEnuPsoRXUcIUzH3q8hei90/hoc86tOkzPVukPFDtrM1Y/uqE4jhMn45fQvHIk9wsTAibjYu6iOkyVSABmZTqcjrGs1AEYvP47BYFCcSAgTcOcsbJkI9T8Fv0DVaXJOp4MOs7X/XjNEm8tICCt3Ke4Scw7P4Z3K71Dbp7bqOFkmBVAu8MrvSFiXqmw4eZsVR2+qjiOEWhnpsLwPFCgBzceoTvPy8heCDl9oq9cfX6I6jRBKpevTGb17NEXzF2VgjYGq42SLFEC5pG21InSuXpSQFSeIiU9WHUcIdSK+gFtHtVXW7Z1VpzGOyp217rC1w7XlPISwUt+f+J5T908R1igMJzsn1XGyRQqgXDS+UxWc7G0Z8dcx6QoT1inmOGyfCo2GQHHzaRrPkrbTwM4ZVg6QrjBhlc7eP8v8qPl8WPVD/Av5q46TbVIA5aICLg5Meb0a28/e4c8D11THESJvpadqXV9e5aGpaU+IliMuntBpDlzYpE2SKIQVSctIY9TuUZRyL0WfgD6q4+SIFEC57NWK3vSoXZyJq09x7X6S6jhC5J0dU+HOGa3ry85RdZrcUb411HgH1o/SlvcQwkrMj5rPpbhLTGo0CQdbB9VxckQKoDwwpkNlCrg48PnSY+j10lQurMD1Q7D7C63lp4j5NY1nS+vJ4FxAm+NIr1edRohcd/zOcb4/8T3/CvgXFT0rqo6TY1IA5QFXJ3umdfMn8tI9/r33quo4QuSutMcQ3kcrfBoNUZ0m9zm5Qee5cHknHPhWdRohclVyejKjI0ZTwbMCH1b7UHWclyIFUB4JLOtFrwYlmbzuNJfvJqqOI0Tu2RoKD65ClwVga686Td4o3QzqfAybx2rLfQhhoeYemcuNhzcICwzD3sa8728pgPLQiLYV8XZzYviSKDKkK0xYoqt7IHIevDoaCptv03iOtBwP+b0hvK+27IcQFubQ7UP8fOpn+tfoT1mPsqrjvDQpgPKQi4MdM7oHcDj6Ad/tvqQ6jhDGlfJI+8ffty406K86Td5zyAdd5sO1/VoRKIQFSUpLInh3MAGFAuhVuZfqOEYhBVAeq+PnyUeNSjFj4znO336oOo4QxrN5LDy8rRUBNraq06hRsgE06Kd1A8aeUZ1GCKOZdWgWdx/fJbRRKLYWcn9LAaTAsFYVKOHpwrAlUaRlyKgRYQEubtMeAG45AQqWUZ1GrVfHgIef9iB4RprqNEK8tMibkfx59k+G1BpCSbeSquMYjRRACjjZ2zKzewAnbyYwf7s8MCnMXHI8rOgPfo2hzkeq06hn7wRd58OtY9pUAEKYsYepDwnZE0Jdn7q8WfFN1XGMSgogRQJ8C/BpszLM2XKekzfjVccRIuc2jNKKoM7zwEb+pABQrBY0HqpNBnnrmOo0QuTY9APTeZj6kAmBE7DRWdb9bVnfjZkZ8Go5ynm7MmxxFCnpMmpEmKGz6+HIL9A6DDwsp2ncKJp8DoUqacuBpKeoTiNEtu24toPlF5bzWe3PKJa/mOo4RicFkEIOdjbM7B7AxTuPmLPlvOo4QmRP0n1YNRDKtoSaljEqxKjsHLSusLvntJYgIcxIXHIc4yLH0ahYI14r95rqOLlCCiDFKhd1Y1DzcszffpEj0Q9UxxEi69Z+BunJ0Okr0OlUpzFNPtWgWZD2LND1g6rTCJFlk/ZPIiUjhfENx6Oz0PtbCiAT0KdpGaoVc2fYkiiS06QrTJiBk+FwYim0mwFuRVSnMW2BQ6BIda0rLO2x6jRC/KONVzay7vI6RtUbRWGXwqrj5BopgEyAna0NM3sEcP3BY6ZvOKs6jhAv9ugOrBkKFTtAte6q05g+WzvoukBbLX7LRNVphHihe4/vEbo3lOYlmtO+VHvVcXKVFEAmomxhVz5vXYHvIy6z79I91XGEeDaDAVYP1v67w2zp+sqqQhWgeQjs/RquRKhOI8QzGQwGJkROAGBM/TEW2/X1H1IAmZD3A0tRu6QHw5dGkZiSrjqOEE87thjOrIYOX0D+QqrTmJf6faFEfW25kJRHqtMI8ZTVl1az9dpWxjQYQ0Hngqrj5DopgEyIrY2OGd0DuPswlcnrTquOI8STEm7Cus+0bq/KnVWnMT82ttDla0i8A5tCVKcR4gm3E28zef9k2pVqR8uSLVXHyRNSAJmYkgXzMapdRX7ZG82u83dUxxFCYzDAygFg5wxtp6lOY748S2vLhRz8Di5uVZ1GCEDr+hobORYnWydG1RulOk6ekQLIBPWsV5JGZb34fOkxEpJlLSFhAg7/DBc2Q6c54OKpOo15q/0hlG6mLR+SLLPAC/X+Ov8XETciGNdwHO6O7qrj5BkpgEyQjY2Oqd38eZSczoRVp1THEdbuwVVtuYsa70D51qrTmD8bG+g0F1IewvqRqtMIK3fj0Q2mHZhG17JdaVK8ieo4eUoKIBNVrIAzYzpWZumh62w+dVt1HGGt9HpY0Q+cPaD1ZNVpLEcBX2gzGY7+CmfXqU4jrJTeoCckIgR3R3c+r/O56jh5TgogE9a9VnGaVyzMiL+O8yAxVXUcYY0OLIIru6DzXHByU53GslTvCeXbwMqB2rIiQuSx38/8zv6Y/UwInEB+h/yq4+Q5KYBMmE6nY/Jr1UjL0BOy8qTqOMLa3LsIm8ZCnY+1Z1aEcel00PFLyEiFtcNVpxFW5mrCVWYfms2bFd6kfpH6quMoIQWQiSvs5sSEzlVYFXWTNcduqY4jrIU+Q1u6wdUHWo5XncZyufpA+5lwYhmcXK46jbASGfoMRu8eTSGXQgypNUR1HGWkADIDnQKK0q6aD8Hhx7nzMEV1HGENIufC9QPQZT445FOdxrJVfV2bV2n1UHgUqzqNsAI/n/qZY3eOERoYiou9i+o4ykgBZAZ0Oh0TO1fFRqdj1PLjGAwG1ZGEJYs9DVtDoUE/KNlAdRrLp9NB+1mgs4FVg7U5l4TIJRceXOCrI1/Rq3IvanrXVB1HKeUF0Lx58/Dz88PJyYl69eqxf//+F+4/e/ZsKlSogLOzM76+vgwZMoTk5OQ8SqtOwfyOTHqtGptO3Wb5kRuq4whLlZGmdX15lIJXx6hOYz3yeWnPA51dA8f+VJ1GWKg0fRqjI0bj6+rLgJoDVMdRTmkB9OeffzJ06FDGjh3L4cOHCQgIoHXr1sTGPrsZ+LfffmPEiBGMHTuW06dP89133/Hnn38yapR1zFzZuooPXWsUY+zKk9yKf6w6jrBEu2ZBzHHoOh/snVSnsS6VOoD/G7D2c4iXDznC+L49/i1n758lrFEYjraOquMop7QAmjVrFh9//DHvv/8+lStXZsGCBbi4uPD9998/c/89e/YQGBjI22+/jZ+fH61ateKtt976x1YjSzKuYxVcHGwJWiZdYcLIbkXBzmnQeCgUq6U6jXVqOxUcXLRlR+T+FkZ0+t5pFkYt5MNqH1LVq6rqOCZBWQGUmprKoUOHaNGixX/D2NjQokULIiMjn/mehg0bcujQocyC59KlS6xdu5Z27do99zwpKSkkJCQ88TJn7i72TH3dn53n7vD7/muq4whLkZ4Cy/tCoUrQxPomRDMZzh7aLNEXt8ChH1WnERYiNSOV0RGjKVOgDH38+6iOYzKUFUB3794lIyMDb2/vJ7Z7e3sTExPzzPe8/fbbTJgwgUaNGmFvb0+ZMmVo1qzZC7vAJk+ejLu7e+bL19fXqN+HCs0qFOatur6ErTnFtftJquMIS7B9Ctw9p3V92TmoTmPdyrWAmu/BxmBtGRIhXtL8qPlcjr9MWKMw7G3tVccxGcofgs6O7du3M2nSJL7++msOHz7MX3/9xZo1a5g4ceJz3zNy5Eji4+MzX9euWUaryej2lSng4sBnS6PQ66WpXLyE6wchYjY0CwKfaqrTCIDWYeDsqS1DoterTiPM2LE7x/j+xPf0DehLBc8KquOYFGUFkJeXF7a2tty+/eQ6V7dv38bHx+eZ7xkzZgzvvvsuH330EdWqVaNr165MmjSJyZMno3/OHwlHR0fc3NyeeFmC/I52TO/uz95L9/kp8orqOMJcpT3WRn0VqQ6B1jshmslxdIUu87RlSPYvVJ1GmKnk9GRG7x5NZc/KfFD1A9VxTI6yAsjBwYFatWqxZcuWzG16vZ4tW7bQoMGz5x5JSkrCxubJyLa2tgBW+UBwwzJe9G7ox9T1Z7h055HqOMIcbZkIcdHQdQHY2qlOI/5XqSZQ91+weRzcvaA6jTBDc47M4eajm4Q1CsPORu7vv1PaBTZ06FAWLVrETz/9xOnTp+nbty+JiYm8//77APTq1YuRI0dm7t+xY0fmz5/PH3/8weXLl9m0aRNjxoyhY8eOmYWQtQlqU5Ei7s4MXxJFhnSFiey4EgF7v4bmIVBImsZNUotx4FYUwvtqy5MIkUUHYw7yy6lfGFhzIKULlFYdxyQpLQnfeOMN7ty5Q0hICDExMVSvXp3169dnPhgdHR39RItPcHAwOp2O4OBgbty4QaFChejYsSNhYWGqvgXlnB1smdHdn+4LIlm06xJ9mpZRHUmYg5RH2j+qJepD/b6q04jncXDRliP5oQ3s+QoaDVadSJiBpLQkgiOCqVG4Bu9Uekd1HJOlM1hZ31FCQgLu7u7Ex8dbzPNAAJPXneaH3VdYNaARFXxcVccRpm71EIj6A/pGgKd8OjR5m0Jg73z4ZAd4V1adRpi4iZETWXVpFcs6LsPXzfxHPucWsxoFJp5vSIvylCzowrAlR0nLkFEj4gUubIGD30PLCVL8mItmo7RrFd5HW65EiOfYc2MPi88tZmitoVL8/AMpgCyEk70ts3pU5/Sth8zbJg9Miud4HKfNMly6GdT+UHUakVX2TtqD6jEnYNdM1WmEiUpITSBkTwj1i9SnR4UequOYPCmALEi14u70e6Usc7de4MSNeNVxhCnaMApSHmqzDdvI7W9WitaAJsNh53S4eVR1GmGCpu2fRmJaIhMaTsBGJ/f3P5GfkIXp/0pZynu7MnTxUVLSZdSI+B9n1sLRX6HNZCggTeNmqfFwKFxJm7spPUV1GmFCtkVvY8XFFXxe53OK5C+iOo5ZkALIwjjY2TDrjQAu301k9ubzquMIU5F0H1YNgvJtoHpP1WlETtk5QNdv4N4F2D5ZdRphIuKS4xgfOZ6mxZvSpWwX1XHMhhRAFqiijxuDW5Tnmx0XORz9QHUcYQrWDIOMVOj4Jeh0qtOIl+FdBV4ZCRFfwrUDqtMIExC2L4w0fRpjG4xFJ/d3lkkBZKH+1aQ0/sULMHxxFI9TpSvMqp34C07+Be1nguuzl5kRZqbhIChaUxsVlioLIluz9VfWs/7KekbXG00hl0Kq45gVKYAslJ2tDTN7BHAj7jHTNpxRHUeo8ihWa/2p3Bmqvq46jTAWWzttVFj8ddgyQXUaocjdx3cJ2xtGy5ItaVuqreo4ZkcKIAtWplB+Pm9TkR8irhB58Z7qOCKvGQzacz86G2g/S7q+LI1XOWg+FvbNh8u7VKcRecxgMDA+cjw2OhuC6wdL11cOSAFk4d5v6EfdUp58tjSKRynpquOIvBT1B5xdqz33k89LdRqRG+r1gZKBsOJTbXoDYTVWXVrF9mvbCWkQgqeTp+o4ZkkKIAtnY6NjRrcA7iemMmntadVxRF6JvwHrgsD/DajUQXUakVtsbKDzPEi8BxvHqE4j8khMYgxT9k2hQ+kONC/RXHUcsyUFkBUoUdCFUe0q8du+aHacu6M6jshtBgOs7K8tpNl2quo0Ird5loJWE+HQD3Bhs+o0IpcZDAbG7hmLs50zI+qOUB3HrEkBZCV61itB43JeBC09RvxjWUvIoh36ES5u1WZ7dvZQnUbkhdofQOlXYMUAbbkTYbGWnl/Knpt7GB84HndHd9VxzJoUQFZCp9Mx9XV/ElPSGb/qpOo4Irc8uAIbRkPN96BcC9VpRF7R6aDzXEh9BOulVcBSXX94nekHpvN6uddpVKyR6jhmTwogK1K0gDNjO1Xhr8M32HgyRnUcYWx6PYT3A5eC0DpMdRqR19yLa12eUb/DmTWq0wgj0xv0jIkYg4ejB5/V+Ux1HIsgBZCVeb1mMVpUKsyo5ce5n5iqOo4wpv3fwNXd0GUeOLqqTiNUCHgLyrfVpj9IlKkvLMlvp3/j4O2DTAycSD77fKrjWAQpgKyMTqdj0mvVSNcbGLPihOo4wljunofN46Duv6BUE9VphCo6nTbtgT4d1g5TnUYYyeX4y8w+PJu3K75N3SJ1VcexGFIAWaHCrk5M7FyVNcdusSrqpuo44mXpMyC8L7gVgxbjVKcRqrl6a8uenFwOJ5apTiNeUoY+g+CIYHzy+TC41mDVcSyKFEBWqmNAUdr7F2HMihPEPkxWHUe8jD1z4MYh6DJfG/ouRNXXoUpXbRmUh7dVpxEv4ceTP3Li7glCA0NxtnNWHceiSAFkxSZ2roqdjY5Rfx3HYDCojiNy4vYp2DYJGg6AEvVUpxGmpN1MsLHTngeS+9ssnX9wnnlH5/FelfeoXri66jgWRwogK+aZz4HJr/mz+XQsyw7fUB1HZFdGGiz/F3iWhmajVKcRpiZfQeg4B86t00aGCbOSpk9j9O7RlHAtQb/q/VTHsUhSAFm5lpW9ea1mMcavPMnNuMeq44js2DkDbp/UVgW3d1KdRpiiiu20kWHrgrSV44XZWHRsEecenCOscRiOto6q41gkKYAEYztWIZ+jHUHLjklXmLm4eQR2zYAmw6FoDdVphClrMwUc8sOK/tIVZiZO3jvJomOL+Nj/Y6oUrKI6jsWSAkjg7mzP1G7+7Dp/l1/3RauOI/5Jegos7wuFK0Pj4arTCFPnXAA6fwWXtsHB71WnEf8gNSOV4N3BlPMoxyfVPlEdx6JJASQAaFq+EG/XK8GktaeJvpekOo54kW2T4N4FrevLzkF1GmEOyraAWu9rK8bfv6w6jXiBeUfncSXhCqGNQrG3tVcdx6JJASQyjWpXCc98DgxfGoVeL03lJunafm3Y+yujwFuaxkU2tJqoPRi9op+2bIowOUdjj/LjyR/pV70f5T3Kq45j8aQAEpnyO9oxo3sA+y/f54c9V1THEX+XmgTL+0DRmtBwoOo0wtw4umpzRV2NgH0LVKcRf/M4/THBEcFULViV3lV6q45jFaQAEk+oX7og7wf6MW39GS7eeaQ6jvhfW8ZDwg2t68vWTnUaYY78GkG9vtrv0t3zqtOI//Hl4S+JSYwhtFEodjZyf+cFKYDEUz5vXZFiBZwZtjiK9AxpKjcJl3dqn9qbjwWvcqrTCHPWPERbOX55H8hIV51GAPtv7efX078yqOYgSrmXUh3HakgBJJ7i7GDLjB4BHLsexzc7L6mOI1Ieas9tlGwE9fqoTiPMnYMLdFkANw/Dni9Vp7F6iWmJhOwJobZ3bXpW6qk6jlWRAkg8U80SHvyraRlmbz7HmZgE1XGs28ZgSLwHneeCjdyywgh860DgINg2WZtMUygz4+AM7iffZ0LgBGx0cn/nJflpi+ca3KIcpb3yM2xxFKnp0hWmxIXNcOhHaB0KntI0Loyo2UitO3V5H0hPVZ3GKkXciGDpuaUMrz0cX1df1XGsjhRA4rkc7WyZ2SOAszEPmbvtguo41udxHKwYAGVe1eZwEcKY7By1UWGxp7RZxUWeSkhNIGRPCA2LNqR7+e6q41glKYDEC1Ut5k7/V8syb9sFjl+PVx3HuqwfAamJ0Okr0OlUpxGWqGh1aPKZtq7czSOq01iVqfun8jjtMeMbjkcn97cSUgCJf9TvlbJUKuLK0MVHSU7LUB3HOpxZo63g3XaKNmJHiNzSeBj4VNW6wtKSVaexClujt7Ly4kqC6gbhk89HdRyrJQWQ+Ef2tjbM6lGdq/eS+GLzOdVxLF/iPVg1CCr8/0reQuQmW3vo+g3cvwTbJ6lOY/EeJD9gfOR4mvk2o1OZTqrjWDUpgESWlPd2ZWir8izceYlDV++rjmPZ1gwFfTp0mC1dXyJvFK4Er4yGiDkQvU91GosWujeUDEMGYxuMla4vxaQAEln2cePS1PAtwLDFUSSlygRqueLEMjgVDu1ngau36jTCmjQcAMXrQHgf7dkzYXTrL69n49WNBNcPxsvZS3UcqycFkMgyWxsdM7oHEJOQzLT1Z1XHsTwPb8OaYVClK1R9TXUaYW1sbLVRYQm3YPN41Wkszt3HdwndF0prv9a08WujOo5ACiCRTaUL5SeoTUV+3HOFPRfvqo5jOQwGWDUQbOyh3UzVaYS18ioLLcbB/m+05VeEURgMBsbtGYedzo7R9UarjiP+nxRAItvea+BH/dKefLbkGA+T01THsQxHf4Nz66Hjl5CvoOo0wprV/QT8GkN4P0iWWeCNYcXFFey4voOxDcbi4eShOo74f1IAiWyzsdExvVsAcUmpTFp7WnUc8xd/XZvzJ+BtqNhOdRph7WxstGVXHt/XlmERLyUmMYap+6fSqUwnXinxiuo44n9IASRyxNfThdHtK/P7/mtsOxurOo75MhhgRX9wyA9tJqtOI4TGww9ahcLhn+D8JtVpzJbBYCAkIgQXexeC6gapjiP+RgogkWNv1fWlSflCjFh2jPgk6QrLkYPfw6Vt2idu5wKq0wjxX7V6Q5nmsHIAPH6gOo1ZWnJuCZG3IpnYcCJuDm6q44i/kQJI5JhOp2Pq69VISs1g3CpZUTrb7l+GjWO0db7KNledRogn6XTaMiypSbBOWi+y69rDa8w4OIPu5bvTsFhD1XHEM0gBJF5KEXdnxneqwvIjN1h/IkZ1HPOh10P4p5DPC1pNVJ1GiGdzLwbtpsGxP+H0KtVpzIbeoCd4dzCeTp4Mqz1MdRzxHFIAiZfWtUYxWlb2ZvTy49x7lKI6jnnYNx+i90CXr8HRVXUaIZ7P/w2o0B5WDYZEmfoiK3459QuHYw8zMXAi+ezzqY4jnkMKIPHSdDodk7pWQ28wEBx+AoPBoDqSabtzDrZMgPqfgl8j1WmEeDGdDjrOBoMeVg/RHtwXz3Up/hJzjszhnUrvUMenjuo44gWkABJGUcjVkdAu1Vh3IoaVUTdVxzFdGenaUgPuxaF5iOo0QmRN/sLQYRacXqkt1yKeKV2fTvDuYIrkK8KgmoNUxxH/QAogYTTt/YvQMaAoIStOEpuQrDqOadrzJdw8Al0WgL2z6jRCZF2VrlD1dW25lofyvN+z/HjyR07eO0loo1Cc7JxUxxH/QAogYVQTOlXBwc6GEX8dl66wv4s5AdsmQ+Ag8JWmcWGG2s0AO0dYOVC6wv7m7P2zzDs6j/ervE9AoQDVcUQWSAEkjMojnwOTu1Zj65lYlhy6rjqO6UhP1bq+vMpBs5Gq0wiRMy6e2nIt5zfA0V9VpzEZaRlpBEcE4+fmx6fVP1UdR2SRFEDC6FpU9qZbreJMWHWKG3GPVccxDTunQ+xp6LpA+wQthLmq0Baq94R1IyDumuo0JuGbY99w4cEFJjWahIOtg+o4IoukABK5IqRjZdyc7Ahaegy93sqbym8chl0zocnnUESaxoUFaDMZnNxhZX9tTisrdvLuSb49/i2fBHxCpYKVVMcR2SAFkMgVbk72TO3mz+4Ld/l131XVcdRJS4blfcCnGjQeqjqNEMbh5A6dv4JL2+Hgd6rTKJOSkcKo3aOo4FmBj6p9pDqOyCYpgESuaVyuEO/UL8GktWe4ei9RdRw1toXBg8ta15etveo0QhhPmVeh9oewKQTuX1KdRol5R+Zx7eE1wgLDsLeR+9vcSAEkctXItpUo5OrI8CVRZFhbV1j0XtjzFbwyGgpL07iwQC0naHMEhX8K+gzVafLUkdgj/HjyR/rX6E9Zj7Kq44gckAJI5Kp8jnZM7+bPwasP+CHisuo4eSc1EcL7QvE60HCA6jRC5A7H/ND5a63Y3ztfdZo8k5SWRPDuYPwL+fNe5fdUxxE5JAWQyHX1Shfkg8BSTNtwlguxD1XHyRubx0HCLa3ry8ZWdRohco9foLasy5YJcOes6jR5Yvbh2cQmxRLWKAxbub/NlhRAIk981roCxT2cGbY4ivQMCx81cmkH7F8ILcdDwTKq0wiR+5qPgQIltAf+M9JVp8lV+27t4/czvzO41mBKupVUHUe8BCmARJ5wsrdlZvcAjt+IZ8GOi6rj5J7kBFjRD/waQ52PVacRIm/YO2utnbeOQsQXqtPkmkepjxgTMYa6PnV5q+JbquOIlyQFkMgzNUp40LdZGb7ccp5TNxNUx8kdG0fD4wfQeR7YyO0lrEjx2tBoCGyfCjHHVafJFTMOziA+JZ4JgROw0cn9be6UX8F58+bh5+eHk5MT9erVY//+/S/cPy4ujn79+lGkSBEcHR0pX748a9euzaO04mUNbF6OMoXyM3TxUVLTLawr7NxGOPwztA4DD2kaF1aoaRB4lde6wtJTVacxqp3Xd7Ls/DI+q/MZxfIXUx1HGEGOC6AtW7bQoUMHypQpQ5kyZejQoQObN2/O1jH+/PNPhg4dytixYzl8+DABAQG0bt2a2NjYZ+6fmppKy5YtuXLlCkuXLuXs2bMsWrSIYsXkl9FcONrZMrNHABdiH/HV1vOq4xhP0n1YOQDKtoCaMipEWCk7R60r7M4Z2DlNdRqjiU+JZ9yecQQWC+T1cq+rjiOMJEcF0Ndff02bNm1wdXVl0KBBDBo0CDc3N9q1a8e8efOyfJxZs2bx8ccf8/7771O5cmUWLFiAi4sL33///TP3//7777l//z7h4eEEBgbi5+dH06ZNCQiQ5QXMSZWi7gxsXo6vt18k6lqc6jjGsS4I0h9Dp69Ap1OdRgh1ivhrLUG7ZsGNQ6rTGMXk/ZNJzkhmfIPx6OT+thg6g8GQ7dnpihcvzogRI+jfv/8T2+fNm8ekSZO4cePGPx4jNTUVFxcXli5dSpcuXTK3v/fee8TFxbFixYqn3tOuXTs8PT1xcXFhxYoVFCpUiLfffpugoCBsbZ89FDElJYWUlJTM/09ISMDX15f4+Hjc3Nyy+B0LY0vL0PP6/D0kpqSzZmBjnOzNeCjp6VXw5zvQdSEEvKE6jRDqZaTBdy21+bD+tQvsnVQnyrEtV7cwePtgJjWaRMcyHVXHEUZkl5M3xcXF0aZNm6e2t2rViqCgoCwd4+7du2RkZODt7f3Edm9vb86cOfPM91y6dImtW7fSs2dP1q5dy4ULF/j0009JS0tj7Nixz3zP5MmTGT9+fJYyibxjb2vDzO4BtP9qN7M2nWNUOzOdKTnxLqwaDBU7gH8P1WlyxGAwkJ5u2UOXzZmtrS025vZAva09dFkA3zSBbaHQKlR1ohy5n3yfCXsn8Krvq3Qo3UF1HGFkOSqAOnXqxPLly/nss8+e2L5ixQo6dMi9XxK9Xk/hwoVZuHAhtra21KpVixs3bjB9+vTnFkAjR45k6ND/LkL5nxYgoV45b1eGtyrP5HVnaFnZmzp+nqojZY/BAKuHAAbo8IVZdn2lp6dz584dctAQLPKQi4sL7u7u5tX9UrgivBqsrRVWoT2UbKA6UbYYDAZC94ZiMBgY02CMef3sRZbkqACqXLkyYWFhbN++nQYNtF/qvXv3EhERwbBhw5gzZ07mvgMHDnzmMby8vLC1teX27dtPbL99+zY+Pj7PfE+RIkWwt7d/orurUqVKxMTEkJqaioODw1PvcXR0xNHRMdvfo8gbHzYqzcaTtxm+JIp1gxrj4pCjX0k1TiyD0yuh+0/aekhmxmAwEBcXh42NDR4eHvIH3gQZDAZSU1NJSNCmjShQoIDaQNnVoB+cWaMtC9M3AhzyqU6UZesur2PT1U3MbDoTL2cv1XFELsjRM0ClSpXK2sF1Oi5dev4qwfXq1aNu3bp89dVXgNbCU6JECfr378+IESOe2n/UqFH89ttvXLp0KbNJ+Msvv2Tq1KncvHkzS5kSEhJwd3eXZ4BMyJW7ibT9chfdaxdnQueqquNkTcIt+Lq+Nuqr23eq0+RIRkYGt2/fxsPDA2dnZ9VxxAs8evSIhIQEfHx8zK877N5FWNAIqveE9jNUp8mS2KRYuq7oSmCxQKY1sZzRbOJJOfq4ffmycRa1HDp0KO+99x61a9embt26zJ49m8TERN5//30AevXqRbFixZg8eTIAffv2Ze7cuQwaNIgBAwZw/vx5Jk2a9NxWJmEe/LzyMaJtRcauPEnrKj4EljXxT1sGA6wapA35bTdddZoc0+u1eZieN4BAmI7/tG5nZGSYXwFUsAy0GA/rPoNKHaB0M9WJXshgMDA+cjwOtg6MrjdadRyRi5T2N7zxxhvcuXOHkJAQYmJiqF69OuvXr898MDo6OvqJm93X15cNGzYwZMgQ/P39KVasGIMGDcryg9fCdL1bvyQbTsbw+dJjrB/cGFcne9WRnu/IL3B+A7z1J7iY2XNLzyBdX6bP7K9RnY/gzCpY0R/67gEn0219D78Qzs7rO5n76lzcHd1VxxG5KMtdYEOHDmXixInky5fviYeKn2XWrFlGCZcbpAvMdF1/kESb2btoX60IU7v5q47zbHHR8HVDqNwZumR9zitTlJaWxp07dyhUqBD29iZccArLuFb/uXeqdIHOc1Wneaabj27y2srXaFmyJRMDJ6qOI3JZlluAjhw5QlpaWuZ/P4/Zf1IRyhT3cGFMh0oELTtO66revFrR+5/flJf0eu0TrJM7tJmkOo0Q5qVACe2+WTkAKnWE8q1VJ3qC3qAnZE8Irg6ufF7nc9VxRB7IcgG0bdu2Z/63EMbUo7Yv60/EMGLZcTYO8aCAy9Mj+5Q5+B1c3gHvhmtFkFCiWbNmVK9endmzZ6uOIrKrxrvaxKErB8KnkSbVhbz47GL23drHwpYLcXVwVR1H5AEze5pOWDqdTseU1/1JSdczduVJ1XH+695FbT6TOh9BmVdUpxHCPOl00HEOpCfDOtNpZYlOiGbWoVm8UeENGhQ1r/mKRM7lqABKTExkzJgxNGzYkLJly1K6dOknXkK8DG83J8Z3qsKKozdZd/yW6jigz4AV/bS5flrIrOJCvBS3ItroyeNL4NTTSx7ltQx9BmMixlDQqSBDa734+VZhWXI0Cuyjjz5ix44dvPvuuxQpUkSe+xFG17l6UdafiGF0+AnqlPLEK7/CySz3fg3Re+H9teCYX10O8ZQHDx4waNAgVq1aRUpKCk2bNmXOnDmUK1cOg8FA4cKFmT9/Pt26dQOgevXq3L59m1u3tMJ69+7dNG/enAcPHuDi4qLyW7Eu1bprk4iuHgIlGkL+Qsqi/HL6F47EHuGHNj/gYi+/A9YkRwXQunXrWLNmDYGBgcbOIwSgdYWFdq1Kqy92Erz8BPPfqamm0L5zFrZM1Ga0Ldkw78+fxx6nZnDxzqM8P2+ZQvlxdsj+fES9e/fm/PnzrFy5Ejc3N4KCgmjXrh2nTp3C3t6eJk2asH37drp168aDBw84ffo0zs7OnDlzhooVK7Jjxw7q1KkjxU9e0+mg/RfwdT1YMwR6/FvJUjKX4i4x5/Ac3q38LrW8a+X5+YVaOSqAPDw88PQ0nYfXhGXyyu/IpK5V6fPLYVYcvUmXGsXyNkBGOizvAx4ltTWNrMDFO4/o8NXuPD/v6gGNqFosew+W/6fwiYiIoGFDrTj99ddf8fX1JTw8nO7du9OsWTO++eYbAHbu3EmNGjXw8fFh+/btVKxYke3bt9O0aVOjfz8iC/IXgg6zYfG7WndYHi8mnK5PZ/Tu0RRzLcaAGgPy9NzCNOSoAJo4cSIhISH89NNP8slJ5Ko2VYvQuXpRQlacoEGZgni7OeXdySO+gFtH4cPNYG8dS0WUKZSf1QMaKTlvdp0+fRo7Ozvq1auXua1gwYJUqFCB06dPA9C0aVMGDRrEnTt32LFjB82aNcssgD788EP27NnD55+bzsO4VqdyJ607bO1w8GusPR+UR74/8T2n7p/il7a/4GSXh39XhMnIcgFUo0aNJ7ogLly4gLe3N35+fk9NzHX48GHjJRRWb3ynKkRevEfQsmP80LtO3nSFxRyH7VOh0VAobj1N484OttluiTFl1apVw9PTkx07drBjxw7CwsLw8fFh6tSpHDhwgLS0tMzWI6FI22lweZc2P1DPJXnSFXb2/lnmR83nw6ofUq1QtVw/nzBNWS6AunTpkosxhHi+Ai4OTH3dn/d/PMDig9d4o06J3D1heqrW9VWoAjSVZVZMVaVKlUhPT2ffvn2ZRcy9e/c4e/YslStXBrRnyRo3bsyKFSs4efIkjRo1wsXFhZSUFL755htq165Nvnzms0K5RXLxhE5fwW/d4ci/oWavXD1dWkYao3aPorR7afoG9M3VcwnTluUCaOzYsbmZQ4gXeqViYd6o7cvE1acJLOtFcY9c7HrdMVV7+PmTbWBnQhMxiieUK1eOzp078/HHH/PNN9/g6urKiBEjKFasGJ07d87cr1mzZgwbNozatWuTP7/W1dakSRN+/fVXPvvsM1Xxxf8q30qbJHH9KG2x1AK59yFnftR8LsVf4o/2f2Bva6bLigijyNE8QNeuXeP69euZ/79//34GDx7MwoULjRZMiL8L7lAJd2d7Pl96DL0+S0vYZd/1Q7D7C63lx0eaxk3dDz/8QK1atejQoQMNGjTAYDCwdu3aJ7rlmzZtSkZGBs2aNcvc1qxZs6e2CcVaTwLnAtqcW3p9rpzi+J3jfH/ie/r496GCZ4VcOYcwH1leDPV/NW7cmE8++YR3332XmJgYypcvT9WqVTl//jwDBgwgJCQkN7IahSyGat4iLtyl57f7GN+pCu819DPuwdMewzdNwCE/fLgJbHM0RsBsWMQCm1bCaq7Vpe3wc2doOx3qfWLUQyenJ9NjdQ/y2eXj3+3+jZ2NZd/f4p/lqAXoxIkT1K1bF4DFixdTrVo19uzZw6+//sqPP/5ozHxCPCGwrBe9GpRkyrozXL6baNyDbw2FB1eh6wKLL36EMEmlm0Gdj2HzWG35GSOae2QuNx7eIKxRmBQ/AshhAZSWloajozYz7+bNm+nUqRMAFStWzJxhVYjcMqJtRQq7OTJ8SRQZxuoKu7oHIudB8zHaw89CCDVajof83hDeV1uGxggO3T7Ez6d+ZmDNgZQuIMs1CU2OCqAqVaqwYMECdu3axaZNm2jTpg0AN2/epGDBgkYNKMTfuTjYMbN7AIejH/Dd7ksvf8CUR9ofW996UP/Tlz+eECLnHPJprbDX9msfSl5SUloSwbuDqV64Ou9UescIAYWlyFEBNHXqVL755huaNWvGW2+9RUBAAAArV67M7BoTIjfV9vPk48almbHxHOdvP3y5g20eC49iocvXYJP95RiEEEZWoj407K91S8eeealDzTo0i3vJ9wgNDMVW7m/xP7LdEWowGChdujTR0dGkp6fj4eGR+bVPPvlEZoYWeWZoy/JsPRPLsCVRLOvbEHvbHNTzF7fBgW+h3QwoWMb4IYUQOfNKMJzbCOF9/n9QQvYf/o68GcmfZ/9kVL1RlHDL5fnDhNnJ9r8YBoOBsmXLEhMT80TxA+Dn50fhwoWNFk6IF3Gyt2Vm9wBO3kxg/vYcPDCZHA8r+kOpplD7Q+MHFELknL0TdJ0Pt45pU1Nk08PUh4TsCaFekXq8UeGNXAgozF22CyAbGxvKlSvHvXv3ciOPENkS4FuAT5uVYc6W85y8GZ+9N28YpRVBneeBTY56g4UQualYLWg8VJuc9NaxbL11+oHpPEx9yMSGE7HRyf0tnpaj34opU6bw2WefceLECWPnESLbBrxajnLergxbHEVKehZHjZxdD0d+gTaToYBv7gYUQuRck8+hUCVteZr0lCy9Zce1HSy/sJygOkEUyZ93C6wK85KjAqhXr17s37+fgIAAnJ2d8fT0fOIlRF5ysLNhVo8ALt55xJwt5//5DUn3YdVAKNcKasioECFMmp2DNirs7jmtJegfxCXHMS5yHI2LNaZL2S65n0+YrRzNBjV79mwjxxDi5VQq4sbgFuWZufEsLSp5U6OEx/N3XvuZ9kmy45w8WXlaCPGSfKpCsxGwLQwqtIPitZ+766T9k0jNSGVcw3Ho5P4WL5CjAui9994zdg4hXtq/mpRm46nbDFsSxdqBjXGyf8aQ15PhcGIpvPYtuEnTuBBmI3AwnF2rdYX12QX2zk/tsvHKRtZdXseUxlMo7CIDcsSL5fjJsIsXLxIcHMxbb71FbGwsAOvWrePkyZNGCydEdtjZ2jCzewA3Hjxm+oazT+/w6A6sGQqVOkG1bnkfUJitjIwM9Lm0QKfIIls76LIA4q/BlolPffne43uE7g2lZcmWtCvVTkFAYW5yVADt2LGDatWqsW/fPv766y8ePXoEQFRUFGPHjjVqQCGyo2zh/HzWugLfR1xm36X/GaloMMDqwYAOOnwhXV9mbv369TRq1IgCBQpQsGBBOnTowMWL2lQIDRs2JCgo6In979y5g729PTt37gQgJSWF4cOHU6xYMfLly0e9evXYvn175v4//vgjBQoUYOXKlVSuXBlHR0eio6M5cOAALVu2xMvLC3d3d5o2bcrhw4efONeZM2do1KgRTk5OVK5cmc2bN6PT6QgPD8/c59q1a/To0YMCBQrg6elJ586duXLlSq78rCxKofLw6hjY+zVcicjcbDAYmBA5AZ1OR3D9YOn6ElmSowJoxIgRhIaGsmnTJhwcHDK3v/rqq+zdu9do4YTIifcDS1GnpCfDl0aRmJKubTy2GM6s1oqffF5qA5qy1CS4eTTvX6lJ2YqZmJjI0KFDOXjwIFu2bMHGxoauXbui1+vp2bMnf/zxBwbDf9eJ+/PPPylatCiNGzcGoH///kRGRvLHH39w7NgxunfvTps2bTh//r8P0SclJTF16lS+/fZbTp48SeHChXn48CHvvfceu3fvZu/evZQrV4527drx8KE2G3lGRgZdunTBxcWFffv2sXDhQkaPHv1E9rS0NFq3bo2rqyu7du0iIiKC/Pnz06ZNG1JTU7P1c7BK9ftCiQba8jUp2ofv1ZdWs/XaVsbUH4OnkwzEEVmjM/zvX4ksyp8/P8ePH6dUqVK4uroSFRVF6dKluXLlChUrViQ5OTk3shpFQkIC7u7uxMfH4+bmpjqOyCVX7yXSZvYuXq9VjNBXC8LX9aFca3h9kepoJiMtLY07d+5QqFAh7O3/f5bdm0dhYdO8D/PJDihaPcdvv3v3LoUKFeL48eN4e3tTtGhRtm7dmlnwNGzYkCZNmjBlyhSio6MzZ7MvWrRo5jFatGhB3bp1mTRpEj/++CPvv/8+R48ezVzq51n0ej0FChTgt99+o0OHDqxfv56OHTty7do1fHx8AG3B6JYtW7J8+XK6dOnCL7/8QmhoKKdPn85sqUhNTaVAgQKEh4fTqlWrp87zzGtlze5fgvmBEPAWt18JouvKrjQp3oQpjaeoTibMSI4egi5QoAC3bt2iVKlST2w/cuQIxYoVM0owIV5GyYL5GNW+EmPCjzP09ig87V2g3TTVsUyfV3mtGFFx3mw4f/48ISEh7Nu3j7t372Y+nxMdHU3VqlVp1aoVv/76K40bN+by5ctERkbyzTffAHD8+HEyMjIoX/7Jc6akpDyxmLODgwP+/v5P7HP79m2Cg4PZvn07sbGxZGRkkJSURHR0NABnz57F19c3s/gBnlofMSoqigsXLuDq6vrE9uTk5MxuPPEPPEtDq4kY1gxjrP46zrbOjKw7UnUqYWZyVAC9+eabBAUFsWTJEnQ6HXq9noiICIYPH06vXr2MnVGIHHmnXglS9v2A562dJHX/AxfnFwyNFxoHl5dqickrHTt2pGTJkixatIiiRYui1+upWrVqZhdSz549GThwIF999RW//fYb1apVo1q1agA8evQIW1tbDh06hK3tkyMF8+fPn/nfzs7OTz1L8t5773Hv3j2+/PJLSpYsiaOjIw0aNMhW19WjR4+oVasWv/7661NfK1SoUJaPY/Vqf8hfp34l4sFpvm4yHXdHd9WJhJnJUQE0adIk+vXrh6+vLxkZGVSuXJmMjAzefvttgoODjZ1RiBzRxUXzwaOFLDW8yt5TRZlRRXUiYQz37t3j7NmzLFq0KLOLa/fu3U/s07lzZz755BPWr1/Pb7/99sQHsxo1apCRkUFsbGzm+7MqIiKCr7/+mnbttFFG165d4+7du5lfr1ChAteuXeP27dt4e3sDcODAgSeOUbNmTf78808KFy4s3fAv4UbiTabZJvJ6QgqNo1ZCqTaqIwkzk6OHoB0cHFi0aBEXL15k9erV/PLLL5w5c4Z///vfT32iEkIJvR5W9MPGxRObNpNYeug6m0/dVp1KGIGHhwcFCxZk4cKFXLhwga1btzJ06NAn9smXLx9dunRhzJgxnD59mrfeeivza+XLl6dnz5706tWLv/76i8uXL7N//34mT57MmjVrXnjucuXK8e9//5vTp0+zb98+evbsibPzf+ejadmyJWXKlOG9997j2LFjREREZH4o/E9rUs+ePfHy8qJz587s2rWLy5cvs337dgYOHMj169eN9WOyaHqDnpCIENydCjC8bhAc/RXOrlMdS5iZl1ohrkSJErRt25bu3btTrlw5Y2US4uUdWARXdkHneXStX5HmFQsz4q/jPEiUUTbmzsbGhj/++INDhw5RtWpVhgwZwvTp05/ar2fPnkRFRdG4cWNKlCjxxNd++OEHevXqxbBhw6hQoQJdunThwIEDT+33d9999x0PHjygZs2avPvuuwwcOJDChf874Z6trS3h4eE8evSIOnXq8NFHH2WOAnNycgLAxcWFnTt3UqJECV577TUqVarEhx9+SHJysrQIZdHvZ35nf8x+JgZOJH+tD6B8G1g5UFvmRogsytEoMND+EHzxxReZw0bLlSvH4MGD+eijj4wa0NhkFJgVuHdRGyFS811op/3DGJuQTMsvdtKkfCG+equG4oCmQUYW5Y2IiAgaNWrEhQsXKFOmTI6OIdfqv64mXKXbym50LdeVUfVGaRsfxsC8elC2OXT7Xm1AYTZy9AxQSEgIs2bNYsCAATRo0ACAyMhIhgwZQnR0NBMmTDBqSCGyTJ+hTZXvVgRajMvcXNjNiYldqjLw9yO0qeJDe39ZBkPkjuXLl5M/f37KlSvHhQsXGDRoEIGBgTkufsR/ZegzGL17NIVdCjO45uD/fsHVB9rPhGUfQqWOUKWrsozCfOSoAJo/fz6LFi16ol+9U6dO+Pv7M2DAACmAhDqRc+H6AfhgPTjke+JLHf2LsP7ELYLDj1O3lCeFXB0VhRSW7OHDhwQFBREdHY2XlxctWrRg5syZqmNZhJ9P/cyxO8f4qe1PuNi7PPnFqq/D6ZWweiiUDIT8shaYeLEcPQOUlpZG7dpPr8Zbq1Yt0tPTXzqUEDkSexq2hkLDAVCi/lNf1ul0TOxcFVsbHaOWHyeHvb9CvFCvXr04d+4cycnJXL9+nR9//PGJ+YVEzlx4cIGvjnxF7yq9qVH4Gd3YOh20nwU2trBqsLb8jRAvkKMC6N1332X+/PlPbV+4cCE9e/Z86VBCZFtGmtb15VkaXhn93N0K5nckrGs1Np26zfIjN/IwoBAip9L0aYyOGE0J1xL0q9Hv+Tvm84IOs+HsGjj2Z57lE+Ypy11g/zvMVKfT8e2337Jx40bq19c+ae/bt4/o6GiZCFGosWsWxByHjzaDvdMLd21dxYfXahRj7MqTNChTkCLuzi/cXwih1rfHv+Xs/bP82u5XHG3/oeu6UgfwfxPWfg5+jcFdVicQz5blAujIkSNP/H+tWrUAMqdu9/LywsvLi5MnTxoxnhBZcCsKdk6DxsOgWM0svWVsxypEXLxL0LLj/PR+HVk9WggTdfreaRZGLeSjah9RxSuLs5m2nQKXd8DKAfDOMq17TIi/yfEweHMlw+AtTHoKLGym9ft/tBXsHLL81u1nY+n9wwEmda3G2/VePP+LJZKh1ebDWq9VakYqb6x+AzsbO35r9xv2ttn43s9vhl9f17rEar+faxmF+XqpiRCFUG77FLh7Hrp+k63iB6BZhcK8VdeXsDWnuHY/KZcCCiFyan7UfK4kXCGsUVj2ih+Aci2g5nuwMRgeXMmVfMK85WgYfHJyMl999RXbtm0jNjY2cyXm/zh8+LBRwgnxQtcOQMRseDUYvHO20Nfo9pXZdf4uw5dE8fvH9bGxkaZyIUxB1J0ovj/xPQNqDKC8R/mcHaR1GFzaBuH94L1VYCOf+cV/5ei34cMPP2TatGmULFmSDh060Llz5ydeQuS61CQI7wNFa0DDQTk+TH5HO6Z182ff5fv8FHnFePlErmnWrBmDBw9+7td1Oh3h4eFZPt727dvR6XTExcW9dDZhHI/THxO8O5gqBavQu0rvnB/I0RU6z4Oru2H/QqPlE5YhRy1Aq1evZu3atQQGBho7jxBZs3UixF+HN38H2xz9GmdqWMaL3g39mLr+DE3LF6J0ofxGCilUuHXrFh4eHqpjiJcw5/AcbiXe4stXv8TO5uXub0o1gXp9YPM4KNsCvMoaJaMwfzlqASpWrBiurq7GziJE1lzZDXvnQ/MQKJTDpvG/CWpTkSLuzgxbEkWG3qrGBVgcHx8fHB1llm9zdSDmAL+e/pWBNQZS2r20cQ7afCy4FdVajfUZxjmmMHs5KoBmzpxJUFAQV69eNXYeIV4s5RGEfwolG0K9vkY7rLODLTO6+xN1LY6FOy8Z7bgid+j1ej7//HM8PT3x8fFh3LhxmV/7exfYnj17qF69Ok5OTtSuXZvw8HB0Oh1Hjx594piHDh2idu3auLi40LBhQ86ePZs334zIlJSWxJiIMdT0rsk7ld8x3oEdXKDLfLhxCPbMMd5xhVnLUdti7dq1SU5OpnTp0ri4uDw1LPP+/ftGCSfEUzaNgcS70GuF0R9orFXSk4+blOaLTed4tWJhKvhYXyvn4/THXI6/nOfnLeVeCme7rE9I+dNPPzF06FD27dtHZGQkvXv3JjAwkJYtWz6xX0JCAh07dqRdu3b89ttvXL169bnPD40ePZqZM2dSqFAh+vTpwwcffEBERMTLfFsim2YenMn95PssarUIG52RH1guUU9bJmfbJCjXGrwrG/f4wuzkqAB66623uHHjBpMmTcLb21smkRN548IWOPi9tt6PZ6lcOcWQFuXZdiaWoYuPEt4vEHtb6xo1cjn+Mm+sfiPPz/tnhz+pXDDr/yD5+/szduxYAMqVK8fcuXPZsmXLUwXQb7/9hk6nY9GiRTg5OVG5cmVu3LjBxx9//NQxw8LCaNq0KQAjRoygffv2JCcn4+T04pnFhXHsubGHxecWM6b+GHxdfXPnJM1GwbmNsPxf8PFWyO7QemFRclQA7dmzh8jISAICAoydR4hnexynzepa+hWo/UGuncbJ3paZ3avT5esI5m27wOAWxnnGyFyUci/Fnx3yfg2lUu7ZK2j9/f2f+P8iRYoQGxv71H5nz57F39//iSKmbt26/3jMIkWKABAbG0uJEtY3SWZeS0hNIGRPCA2KNKB7+e65dyJ7J+g6HxY1h10zodmI3DuXMHk5KoAqVqzI48ePjZ1FiOdbPxJSHkLnubk+rX214u70f6Usc7deoEUlb6oWc8/V85kSZzvnbLXEqPL3bnedTvfUfGQvc8z/tGq/7DFF1kzdP5XEtEQmBE7I/R6FojWgyWewczqUbwNFq+fu+YTJylH7/pQpUxg2bBjbt2/n3r17JCQkPPESwqjOrIWo36DNFHAvnien7P9qWSr4uDJ08VFS0mXUiLmqUKECx48fJyUlJXPbgQMHFCYSf7ctehsrL64kqG4QPvl88uakTYZD4cqwvI+2nI6wSjkqgNq0aUNkZCTNmzencOHCeHh44OHhQYECBWT+DWFcSfdh1SAo3xaqv51np7W3tWFmjwCu3E3ii03n8+y8wrjefvtt9Ho9n3zyCadPn2bDhg3MmDEDQJ5dNAFxyXGMjxxPs+LN6FwmDyfRtbWHrgvg/kXtoWhhlXLUBbZt2zZj5xDi2dYMA30adPwyz1d0rujjxuCW5Zix4SwtK3tTq6QU9+bGzc2NVatW0bdvX6pXr061atUICQnh7bffloebTUDYvjDSDemMbTg27wtS7yrQbKQ2qWrF9uD77GfDhOWS1eCF6TrxFyx9H7p9D1VfVxIhPUNP928iiUtKY+3Axjg72CrJkRusdYXxX3/9lffff5/4+HicnbM+9F4lS7xW66+s57MdnzG9yXTalGqjJkRGOvzQRmtp7rNbmy9IWI0cj/HdtWsX77zzDg0bNuTGjRsA/Pvf/2b37t1GCyes2MPbWutP5S7Kih8AO1sbZnQP4GbcY6ZtOKMsh8i5n3/+md27d3P58mXCw8MJCgqiR48eZlP8WKK7j+8StjeMViVbqSt+QFtGp8t8SLgBWyaoyyGUyFEBtGzZMlq3bo2zszOHDx/OfMAwPj6eSZOkP1W8JIMBVg8GG1ttzh/FyhTKT1CbivwQcYXIi/dUxxHZFBMTwzvvvEOlSpUYMmQI3bt3Z+FCWRhTFYPBwPjI8djobAiuH6w6DniVgxbjYN98uLxLdRqRh3JUAIWGhrJgwQIWLVr0RHNsYGAghw8fNlo4YaWi/oCza7XnfvIVVJ0GgN4N/ahXypPPlkbxKCVddRyRDZ9//jlXrlwhOTmZy5cv88UXX+DiIl0dqqy6tIrt17YztsFYPJxM5Lm6uv+Cko1gxafadBvCKuSoADp79ixNmjR5aru7uztxcXEvm0lYs/gbsC4IAt7SHkw0ETY2OmZ0D+B+Yipha06rjiOEWYpJjGHKvil0KtOJV0u8qjrOf9nYQJd5kHgPNppAq5TIEzkqgHx8fLhw4cJT23fv3k3p0kZavVdYH4MBVvYHh3zanD8mxtfThdHtK/H7/mh2nLujOo7RWNk4CLNkCdfIYDAwds9YnO2dCaobpDrO0zz8oHUoHPoRLmxWnUbkgRwNg//4448ZNGgQ33//PTqdjps3bxIZGcnw4cMZM2aMsTMKa3HoB7i4Fd5ZBs4FVKd5prfrlmD9iRiClh5jw5AmuDub74gcW1tbdDodDx8+xNXVVebFMUEGg4GMjAwSEhLQ6XTY2eXoT7ZJWHJuCXtu7mFBiwW4OZjoCNxa78PpVbBiAHwaabJ/h4Rx5GgYvMFgYNKkSUyePJmkpCQAHB0dGT58OBMnTjR6SGOSYfAm6v5lmB8I/t21Z39M2K34x7T6YictK3szq0d11XFeSkpKCvfv37eIFgZL5uDgQIECBcy2ALr28Bqvr3yd9qXbM7bBWNVxXiz+BnzdACq20yZLFBbrpeYBSk1N5cKFCzx69IjKlSuTP39+Y2bLFVIAmSC9Hn7qCPHR0HcPOLqqTvSPlh26zrAlUSx8txatquTR9P25RK/Xk5Ehy32YKhsbG2xsbMy2hU5v0PPhhg+5lXiLZZ2Wkc8+n+pI/+zo7xDeB978zaSeRRTGla2PEx98kLVVuL///vtshZg3bx7Tp08nJiaGgIAAvvrqq+eu2Py//vjjD9566y06d+5MeHh4ts4pTMj+b+DqbnhvtVkUPwCv1SzGuhMxjFp+nNp+nnjmc1AdKcf+8w+sELnht9O/cfD2Qb5v/b15FD8AAW/C6ZXaMjy+9U1mNKowrmz91fvxxx/Ztm0bcXFxPHjw4Lmv7Pjzzz8ZOnQoY8eO5fDhwwQEBNC6dWtiY2Nf+L4rV64wfPhwGjdunK3zCRNz9zxsHgf1+kIp87mWOp2OSa9VJUNvYEz4CdVxhDBJl+MvM/vwbN6p9A51fOqojpN1Oh10mA36DFgzVHUakUuy1QXWr18/fv/9d0qWLMn777/PO++8g6en50sFqFevHnXq1GHu3LmA1hzv6+vLgAEDGDFixDPfk5GRQZMmTfjggw/YtWsXcXFxz20BSklJeWIl6ISEBHx9faULzBRYwDT0q4/dpP9vR5jzVg06BRRVHUcIk5GuT+e99e8RnxLPko5LcLYzw5m3/7Mcz+vfQbVuqtMII8tWC9C8efO4desWn3/+OatWrcLX15cePXqwYcOGHD1EmZqayqFDh2jRosV/A9nY0KJFCyIjI5/7vgkTJlC4cGE+/PDDfzzH5MmTcXd3z3z5+vpmO6fIJXvmwI1D2oOGZlj8AHTwL0oH/yKErDhB7MNk1XGEMBk/nvyRE3dPEBoYap7FD0DV16DKa7B2uLY8j7Ao2e74d3R05K233mLTpk2cOnWKKlWq8Omnn+Ln58ejR4+yday7d++SkZGBt7f3E9u9vb2JiYl55nt2797Nd999x6JFi7J0jpEjRxIfH5/5unbtWrYyilxy+yRsnwwNB5r9KswTO1fFzsaGkcuOy2gqIYBzD87x9dGv6V2lN9ULV1cd5+W0nwk29rBqoDZXmbAYL/Xk439GJvxnrorc9vDhQ959910WLVqEl5dXlt7j6OiIm5vbEy+hWEYaLO8DnmXglVGq07w0j3wOTH6tGlvOxLL00HXVcYRQKk2fRvDuYEq6laRf9X6q47w8F09tao5z6+Hob6rTCCPKdgGUkpLC77//TsuWLSlfvjzHjx9n7ty5REdHZ3sYvJeXF7a2tty+/WTT4u3bt/HxeXpo8cWLF7ly5QodO3bEzs4OOzs7fv75Z1auXImdnR0XL17M7rcjVNg5A2JPaV1fdo6q0xhFy8revF6zOBNWneJm3GPVcYRQZtGxRZx/cJ6wRmE42Jrv6MgnVGwHAW/D+hEQLx9yLEW2CqBPP/2UIkWKMGXKFDp06MC1a9dYsmQJ7dq1y9EwWgcHB2rVqsWWLVsyt+n1erZs2UKDBg2e2r9ixYocP36co0ePZr46derEK6+8wtGjR+X5HnNw8wjsnA5NPoOi1VWnMaqQjpXJ72RH0LJj0hUmrNLJeydZeGwhn/h/QuWClVXHMa42k7VpOlb0l64wC5GtUWA2NjaUKFGCGjVqvHBSrr/++ivLAf7880/ee+89vvnmG+rWrcvs2bNZvHgxZ86cwdvbm169elGsWDEmT578zPf37t37haPA/k4mQlQoLRkWNgM7B/hoC9ia7zISz7Pz3B16fb+f0C5Vead+SdVxhMgzKRkpvLn6Text7Pm1/a/Y21je/c2FLfDLa9B+FtT550E4wrRlayLEXr16GX020jfeeIM7d+4QEhJCTEwM1atXZ/369ZkPRkdHR8skbZZi+yS4fxE+2WGRxQ9Ak/KFeLteCSatPU2TcoUoUdA8R7cJkV3zjs7jasJV/uzwp2UWPwBlm2vrhW0cA2VeBc9SqhOJl/BSS2GYI2kBUiR6nzbnT/MQaDREdZpc9SglnbZf7qSImzN/fFIfGxvzXMJAiKw6GnuU99a/x8AaA/mwmoW3jKQ81NYtdCsGvdeAfEA3W3LlRO5LTYLwvlCsljbs3cLld7RjercA9l+5z/cRl1XHESJXPU5/THBEMFW9qtK7Sm/VcXKfoyt0+Rqi98C++arTiJcgBZDIfVvGQ8JN6LIAbGxVp8kT9UsX5IPAUkzfcJYLsdmbH0sIc/Ll4S+5nXibsMAwbK3k/savEdT/FLZMgDvnVKcROSQFkMhdl3fCvgXQYix4lVWdJk993qYCxQo4M2xJFOkZetVxhDC6/bf28+vpXxlUcxB+7n6q4+St5iHgXlxbNT4jXXUakQNSAInck/IQwvtByUZQ91+q0+Q5J3tbZvQI4Pj1OL7ZeUl1HCGMKjEtkTERY6jtXZu3K72tOk7es3fWWrVvHoE9X6pOI3JACiCRezaMhsf3ocs8q31QsGYJD/7VtAyzN5/j9K0E1XGEMJrpB6YTlxLHxMCJ2Ois8/7Gtw4EDoJtkyHmhOo0Ipus9LdW5Lrzm+HwT9AqFDz8VKdRanCLcpT2ys+wxVGkpktXmDB/u2/sZtn5ZQyvM5zirsVVx1Gr2UjwKqd1haWnqk4jskEKIGF8jx/Ayv5QpjnU6q06jXKOdrbM7BHAudsPmbv1vOo4QryU+JR4xkaMJbBoIN3KdVMdRz07R21Zn9jT2iz3wmxIASSMb90Ibeh7p6/AyBNnmquqxdwZ8Go55m2/yLHrcarjCJFjU/dP5XH6Y8Y1HGf0iXHNVpEAaPI57JoJNw6rTiOySAogYVynV8OxP6DtVHAvpjqNSfn0lTJULuLG0MVRJKdlqI4jRLZtid7CqkurGFFvBD75nl6w2qo1Hgo+1WB5H23ZH2HypAASxpN4F1YPhgrtIeBN1WlMjr2tDTN7BBB9L4kvNsncIcK83E++z4TICbzi+wodS3dUHcf02NprXWEPLsO2MNVpRBZIASSMw2CANUNBnwEdZ0vX13OU93ZlaKvyLNx1iYNX7quOI0SWGAwGQveGojfoCWkQIl1fz1O4ErwyGvZ8BdF7VacR/0AKIGEcJ5bBqRXQYRbkL6w6jUn7uHFpavgWYPiSKJJSZQI1YfrWX1nPpqubCK4fjJezl+o4pq3hACheR1v+JzVRdRrxAlIAiZf3MAbWDIMqr0GVrqrTmDxbGx0ze1QnJiGZqevOqI4jxAvdSbpD6N5Q2vi1obVfa9VxTJ+NrdYVlnALNo9TnUa8gBRA4uUYDLBqENg6QPuZqtOYjVJe+RjRpiI/RV5lz4W7quMI8UwGg4HxkeOxt7FndL3RquOYj4JloOV42L8QLu1QnUY8hxRA4uUc/RXOrYdOc8DFU3Uas9KrgR8NShfks6XHeJicpjqOEE8JvxDOjus7GNdwHAWcCqiOY17qfAx+jWFFP0iWWeBNkRRAIufirsH6kVC9J1RoqzqN2bGx0TGtmz9xSamErTmtOo4QT7j16BbTDkyjc5nONPNtpjqO+bGxgc7ztIlhN0rrmSmSAkjkjMGgzfbs6AptJqtOY7Z8PV0I7lCZPw5cY9uZWNVxhAC0rq+QPSHks89HUN0g1XHMl0dJaB0Gh3+GcxtVpxF/IwWQyJmD38Gl7dpsz07uqtOYtTfr+NK0fCGClh0jLknWEhLqLT67mL239jKh4QRcHVxVxzFvNd+Dsi1g5QBIkqkvTIkUQCL77l+CjWOg9gdQtrnqNGZPp9Mx9XV/ktMyGLfypOo4wspdS7jGzEMz6VG+Bw2LNVQdx/zpdNoHxfTHsE5a00yJFEAie/QZEN4P8hWClhNVp7EYPu5OjO9chfCjN1l/4pbqOMJKZegzCI4IxtPJk2G1h6mOYzncikLb6XB8MZxaqTqN+H9SAIns2TsfoiOhy3xwzK86jUXpUr0YrSp7M3r5Ce49SlEdR1ihX07/wpHYI4QGhuJi76I6jmXx7wEVO8DqIdqyQUI5KYBE1t05C1smQP1PwS9QdRqLo9PpCOtaDQMwevkJDAaD6kjCilyKu8Scw3N4p/I71PaprTqO5dHpoMMXgEFbM1Hub+WkABJZk5GurXJcoAQ0H6M6jcUq5OpIaJeqrD8Zw8qom6rjCCuRrk9n9O7RFM1flIE1BqqOY7nyF4b2s+D0Kji+VHUaqycFkMiaiNlw66g2xbu9s+o0Fq1dtSJ0CihKyIqT3E5IVh1HWIEfTvzAqfunCGsUhpOdk+o4lq1KF6jaDdYO15bLEMpIAST+Wcxx2D4FAgdDcWkazwsTOlfBwc6GEcuOSVeYyFVn75/l66iv+aDqB/gX8lcdxzq0mw52jrBqoHSFKSQFkHix9FRY3he8ykOzEarTWI0CLg5Mea0a287eYcnB66rjCAuVlpHG6N2jKeVeir4BfVXHsR4untBxDpzfCEd+UZ3GakkBJF5s53S4c1rr+rJzVJ3GqjSv5E33WsWZsPoU1x8kqY4jLNA3x77hYtxFJjWahIOtg+o41qVCG6j+jracUFy06jRWSQog8Xw3DsGumdA0CIpI07gKYzpWxs3Jjs+XHkOvl6ZyYTwn7p7g2+Pf8q+Af1HRs6LqONapzSRtJv0V/UCvV53G6kgBJJ4tLVnr+vKpBo2GqE5jtdyc7JnWLYA9F+/xy76rquMIC5GSkcLo3aOp4FmBD6t9qDqO9XJyh85z4fJObXkhkaekABLPti0UHlzRur5s7VWnsWqNynnxbv2STF57hit3E1XHERZg7pG5XH94nbDAMOxt5P5WqswrUOcj2BQC9y6qTmNVpAAST4veC3vmwqujoXAl1WkEMKJtRQq5OjJ8SRQZ0hUmXsKR2CP8dPIn+tfoT1mPsqrjCIAW47U5gsI/1ZYbEnlCCiDxpNREbcJD37rQoL/qNOL/5XO0Y0b3AA5FP+D73ZdVxxFmKiktidG7RxNQKIBelXupjiP+wzG/trzQtX2w92vVaayGFEDiSZvHwcMY7Wa0sVWdRvyPuqU8+TCwFNM3nuX87Yeq4wgzNPvwbO4k3SG0USi2cn+blpINoUE/2DIRYs+oTmMVpAAS/3VpO+xfCC0nQMEyqtOIZxjeugK+Hs4MWxJFeoaMGhFZt/fWXn4/8ztDag2hpFtJ1XHEs7waDB4lIbyPtvyQyFVSAAlNcgKs6A9+jbUH8oRJcrK3ZWaP6py4Ec/87fLApMiaR6mPCIkIoa5PXd6s+KbqOOJ57J2hywK4FQW7v1CdxuJJASQ0G0bB4wfQeR7YyK+FKavuW4C+zcowZ+t5Tt6MVx1HmIHpB6cTnxLPhMAJ2Ojk/jZpxWtpU4/smAq3jqlOY9HkThBwbiMc+Te0nqQ1vwqTN7B5OcoUys+wxVGkpktXmHi+ndd38tf5v/i8zucUy19MdRyRFU2DoFAFCO+rLUckcoUUQNYu6T6sHABlW0JNGRViLhztbJnZI4ALsY+Ys+W86jjCRMWnxDNuzzgaFWvEa+VeUx1HZJWdozYQ5c4ZrSVI5AopgKzduiBIfwyd5oBOpzqNyIYqRd0Z1LwcX2+/wNFrcarjCBM0ef9kkjOSGddgHDq5v81LEX9oOgJ2z4Lrh1SnsUhSAFmzUyvh+GJoOx3ciqpOI3Kgb7MyVC3mzrDFR0lOkwnUxH9tvrqZNZfWMLLuSLzzeauOI3Ki0RAoEqCNCkt7rDqNxZECyFo9ugOrh0DFDuDfQ3UakUN2tjbM7B7AtQePmbHhrOo4wkTce3yPiXsn0rxEczqU7qA6jsgpWzttVNiDq7A1VHUaiyMFkDUyGGDNEMAAHWZL15eZK+ftyvBW5fku4jL7L99XHUcoZjAYCN0bisFgYEz9MdL1Ze4KV9TmB4qcB1f3qE5jUaQAskbHl8LpVdB+FuQvpDqNMIIPG5WmVgkPhi+JIjFFJlCzZmsvr2Vz9GaC6wdT0Lmg6jjCGBr0A9962qiwlEeq01gMKYCsTcItWDsMqnaDKl1UpxFGYmujY0b3AO48TGHKOplG31rFJsUSti+MtqXa0sqvleo4wlhsbKHL1/AoFjaPVZ3GYkgBZE0MBlg1EOycoN101WmEkfl55WNku4r8e+9Vdp+/qzqOyGMGg4Fxe8bhaOvI6HqjVccRxlawjLZM0YFv4eI21WksghRA1uTIv+H8Ruj0Fbh4qk4jcsE79UrSsExBPl8aRUJymuo4Ig8tv7CcXTd2Mb7heNwd3VXHEbmh9odQqom2bFGyzAL/sqQAshZx0bB+FNR4B8q3Vp1G5BIbGx3TuvmTkJzOxFWnVMcReeTmo5tMOzCNrmW70qR4E9VxRG6xsdGWK0qO1/6ei5ciBZA10OthRT9wcteWuxAWrbiHC2M6VGLJoetsOX1bdRyRy/QGPSERIbg6uPJZnc9UxxG5rUAJaDMJjv4CZ9erTmPWpACyBge/g8s7ofNcrQgSFq9HbV9eqVCIEX8d50GirCVkyf48+yf7YvYxoeEEXB1cVccReaHGu1CulfZMZ5JMfZFTUgBZunsXYVMI1PkIyryiOo3IIzqdjimv+5OarmfsypOq44hcEp0QzReHvuCNCm/QoGgD1XFEXtHpoOMcSE+BtdLql1NSAFkyfQaEfwr5vaHFeNVpRB7zdnNiQucqrIy6ydrjt1THEUaWoc8gOCIYL2cvhtYaqjqOyGtuRaDdDDixFE6Gq05jlqQAsmSR8+DaPm1VYcf8qtMIBToFFKVNFR+Cw09w52GK6jjCiP596t8cjT1KaGAoLvYuquMIFap1g0odYc1QbY4gkS1SAFmq2DPa2jEN+kFJaRq3VjqdjtCuVdEBo5cfx2AwqI4kjOBi3EW+OvIVvSr3oqZ3TdVxhCo6HbT/AtBpazvK/Z0tUgBZoox0bfVgj5LaGjLCqnnldySsa1U2nrpN+NEbquOIl5SuT2f07tEUcy1G/xr9VccRquUvBB2+gDOr4dhi1WnMihRAlmj3F3DrmLaKsL2z6jTCBLSpWoQu1YsSsuIkMfHJquOIl/Dd8e84c/8MYYFhONk5qY4jTEHlTlCth/ZAdMJN1WnMhhRAlubWMdgxBRoNgeK1VKcRJmR8p6o429sStOyYdIWZqTP3z7AgagEfVP2AaoWqqY4jTEm7adoH3pUDpCssi6QAsiTpKdpqwYUqQtMg1WmEiXF3sWfq6/7sOHeHPw5cUx1HZFNqRiqjd4+mdIHS9A3oqzqOMDXOHtoyRxc2w+GfVKcxC1IAWZIdU+HOWei6AOwcVKcRJuiVioV5o7YvoatPce1+kuo4IhsWRC3gUvwlJjWahL2tveo4whSVb6VNkrhhNDy4qjqNyZMCyFJcP6g9+9MsCHykaVw8X3CHShRwceCzpVHo9dJUbg6O3TnGdye+o29AXyp4VlAdR5iy1pO01qAV/bRlkMRzSQFkCdIew/I+UKQ6BA5RnUaYOFcne6Z382fvpfv8HHlFdRzxD5LTkxm9ezSVPSvzQdUPVMcRps7JTVsw9couOLBIdRqTJgWQJdgaqq323nUB2NqpTiPMQMOyXrzXoCRT1p/h0p1HquOIF/jqyFfcfHSTsEZh2NnI/S2yoHRTqPsJbBoLdy+oTmOypAAyd1f3aDM+Nx8DhaRpXGRdUNuK+Lg5MXxJFBnSFWaSDt0+xL9P/ZuBNQdSukBp1XGEOWkxTlsuI7yvtiySeIpJFEDz5s3Dz88PJycn6tWrx/79+5+776JFi2jcuDEeHh54eHjQokWLF+5v0VIeab/cJepD/U9VpxFmxsXBjhndAzhyLY5Fuy6pjiP+JiktieDdwdQoXIN3Kr2jOo4wNw75tGWQrh+APV+pTmOSlBdAf/75J0OHDmXs2LEcPnyYgIAAWrduTWzss9c12b59O2+99Rbbtm0jMjISX19fWrVqxY0bVjjD7eax2vovXb4GG1vVaYQZqu3nyceNSzNr4znO3X6oOo74H7MOzeJe8j1CA0Oxlftb5ESJ+tCwP2wLg9jTqtOYHJ1B8Yxo9erVo06dOsydOxcAvV6Pr68vAwYMYMSIEf/4/oyMDDw8PJg7dy69evX6x/0TEhJwd3cnPj4eNze3l86vzMVt8O8u2mrAdT9WnUaYseS0DDp8tRsnexuWfxqIva3yz0VWL/JmJJ9s+oTR9UbzZsU3VccR5iwtGb5pAvZO8NEWkCkUMin9S5eamsqhQ4do0aJF5jYbGxtatGhBZGRklo6RlJREWloanp6ez/x6SkoKCQkJT7zMXnI8rOgPpZpC7Q9VpxFmzsnellk9Ajh96yHztskDk6o9TH1IyJ4Q6hWpR48KPVTHEebO3kkbIBNzAnbNVJ3GpCgtgO7evUtGRgbe3t5PbPf29iYmJiZLxwgKCqJo0aJPFFH/a/Lkybi7u2e+fH19Xzq3cutHaUVQ53lgI5/WxcvzL16Afs3KMHfrBU7ciFcdx6pNOzCNh6kPmdhwIjY6ub+FERSrCY2Hwc7pcPOo6jQmw6zvrilTpvDHH3+wfPlynJyevSjgyJEjiY+Pz3xdu2bmSwCcXQ9Hf4E2k6GABRRzwmT0f7Uc5b1dGbY4ipR0GTWiwo5rOwi/EE5QnSCK5C+iOo6wJE0+g8KVtIEz6Smq05gEpQWQl5cXtra23L59+4ntt2/fxsfH54XvnTFjBlOmTGHjxo34+/s/dz9HR0fc3NyeeJmtpPuwaiCUaw01ZFSIMC4HOxtm9gjg0t1HzN58XnUcqxOXHMe4yHE0Kd6ELmW7qI4jLI2dA3RZAHfPw/bJqtOYBKUFkIODA7Vq1WLLli2Z2/R6PVu2bKFBgwbPfd+0adOYOHEi69evp3bt2nkR1TSs/Uyr3DvNAZ1OdRphgSoVcWNwi/J8s+Mih6MfqI5jVSbtn0RqRirjGoxDJ/e3yA0+VaHZCIj4Eq4dUJ1GOeVdYEOHDmXRokX89NNPnD59mr59+5KYmMj7778PQK9evRg5cmTm/lOnTmXMmDF8//33+Pn5ERMTQ0xMDI8eWfhstifD4cRSbdSX64tbx4R4Gf9qUppqxQswfHEUj1OlKywvbLyykXWX1zGq3igKuRRSHUdYssDBULQGhPeBVOteEFl5AfTGG28wY8YMQkJCqF69OkePHmX9+vWZD0ZHR0dz69atzP3nz59Pamoq3bp1o0iRIpmvGTNmqPoWct+jWFgzFCp1gmrdVKcRFs7O1oaZ3QO4EfeY6RvOqo5j8e4+vkvo3lBalmxJu1LtVMcRls7WTusKi78OWyeqTqOU8nmA8prZzQNkMMCf70D0Xui3D/J5qU4krMS3uy4RuuY0f3xSn/qlC6qOY5EMBgODtw3m6J2jLO+8HE+nZ0/nIYTRRc6DDaOg9xrwa6Q6jRLKW4DEPzi2GM6shg5fSPEj8tQHgaWo6+fJZ0ujeJSSrjqORVp9aTVbr21lTP0xUvyIvFWvL5RoCOGfQop1zgIvBZApS7ipPfhcrQdU7qQ6jbAyNjY6pnf3596jVCatlWn0je124m0m75tM+9LtaVHy2fOYCZFrbGygyzxIvAsbx6hOo4QUQKbKYICVA8DBBdpNU51GWKmSBfMxsl0lftsXzY5zd1THsRgGg4GxkWNxtnNmZN2R//wGIXKDZ2loNQEO/QAXNqtOk+ekADJVh3/SfiE7fQXOHqrTCCv2Tr0SNC7nRdDSY8Q/TlMdxyIsO7+MiBsRjGs4DndHd9VxhDWr/SGUfgVWDIDHcarT5CkpgEzRg6uwYTTU7AXlWqpOI6ycTqdj6uv+JKakM2HVKdVxzN6NRzeYfmA6r5d7ncbFG6uOI6ydTged50LqI1hvXa2RUgCZGr0eVvTTWn1ahalOIwQARQs4E9KxMssOX2fTqdv//AbxTHqDnjERY3B3dGd47eGq4wihcS8ObaZA1G9wZq3qNHlGCiBTc2ARXNmlLXTqZAbD9IXV6FarOM0rFmbkX8e5n5iqOo5Z+v3M7xyIOcDEwInkd8ivOo4Q/1X9bSjfBlYNgsR7qtPkCSmATMndC7BpLNT9BEo3VZ1GiCfodDomv1aNdL2eMStOqI5jdq7EX2H2odm8VfEt6hWppzqOEE/S6aDjl6BPg7XDVKfJE1IAmQp9hrZKr1sRaDFOdRohnqmwmxMTOldlzbFbrIq6qTqO2cjQZxAcEUxhl8IMrjlYdRwhns3VR1tu6eRyOLFMdZpcJwWQqdjzFVw/AF3mg0M+1WmEeK6O/kVoX60IY1acIPZhsuo4ZuGnUz9x7M4xQhuF4mLvojqOEM9X9XWo3AXWDIOHlv28nxRApiD2NGwLg4YDoER91WmEeCGdTsfELlWxs9Ex6q8TWNlqOtl24cEF5h6ZS+8qvalRuIbqOEK8mE4H7WeBjR2sHqzNSWehpABSLSMNlv9Lm5DqldGq0wiRJZ75HAjrWo3Np2+z7PAN1XFMVpo+jVG7R1HCtQT9avRTHUeIrMlXEDrMhrNrIep31WlyjRRAqu2aBTEntK4veyfVaYTIstZVfHitRjHGrzrJzbjHquOYpG+Pf8u5B+cIaxSGo62j6jhCZF2lDuD/Jqwboa0cb4GkAFLp5lHYOQ0aD4NiNVWnESLbxnasQj4HO4KWHZOusL85de8UC6MW8lG1j6jiVUV1HCGyr+0U7ZnUlQMssitMCiBV0lO0UV+FK0GTz1SnESJH3F3smfJ6NXadv8tv+6NVxzEZqRmpjN49mrIeZfmX/79UxxEiZ5w9tOWYLm7V1guzMFIAqbJ9Mtw9D12/ATsH1WmEyLFmFQrzVt0ShK05TfS9JNVxTMLXR7/mSsIVwhqFYW9rrzqOEDlXrgXU6g0bguH+ZdVpjEoKIBWuHYCIL+GVkeAtTePC/I1uXwnPfA4MXxqFXm95TeXZEXUnih9O/kC/6v0o71FedRwhXl6rUO3B6BX9tOWaLIQUQHktNQnC+0DRGtBwkOo0QhhFfkc7pncLYP/l+/yw54rqOMo8Tn9M8O5gqhSsQu8qvVXHEcI4HF2h89dwNQL2LVCdxmikAMprWydqT9R3WQC2dqrTCGE0DcoUpHdDP6atP8PFO49Ux1FizuE53Eq8RWijUOxs5P4WFqRUY6jXB7aM1x7fsABSAOWlK7th79fQPAQKSdO4sDxBbSpStIAzw5dEkZ5hOU3lWXEg5gC/nP6FgTUGUtq9tOo4Qhhf87HgVgyW94GMdNVpXpoUQHkl5SGEfwolA6FeX9VphMgVzg62zOgeQNS1OBbuuqQ6Tp5JTEtkTMQYannX4p3K76iOI0TucHCBrgvg5mHYM0d1mpcmBVBe2TgGEu9C53lgIz92YblqlfTgkyZlmL3pPGdiElTHyRMzD87kfvJ9JgZOxEYn97ewYL51oeFA2DYJbp9UnealyJ2aFy5s1uZQaDURPEupTiNErhvSshx+Xi4MWxxFmoV3hUXciGDJuSUMrz0cX1df1XGEyH2vjIKCZbWusPRU1WlyTAqg3PY4DlYMgNKvQO0PVKcRIk842tkys3t1zsY8ZO7WC6rj5JqE1ARC9oTQoEgDupfvrjqOEHnDzhG6zofYU7Brhuo0OSYFUG5bPxJSH0Hnudoqu0JYiWrF3en3SlnmbrvA8evxquPkiqn7p5KUlsSEwAno5P4W1qRoDWg8HHbOgJtHVKfJESmActOZtRD1G7SZAu7FVacRIs/1f7UsFX1cGbbkKMlpGarjGNW26G2svLiSoLpB+OTzUR1HiLzXZLg2me/yPpCWrDpNtkkBlFsS78GqQVC+LVR/W3UaIZSwt7VhVo/qXLmbxBebz6mOYzQPkh8wPnI8zYo3o3OZzqrjCKGGrb22nNP9S7B9kuo02SYFUG5ZOwz0adDxS+n6Elatgo8rQ1qWZ9HOSxy6el91HKMI2xdGuiGdsQ3HSteXsG7elbWHoiPmQPQ+1WmyRQqg3HBiGZxcDu1ngqu36jRCKPdJk9IE+BZg+JJjPE41766w9ZfXs+HKBoLrBePl7KU6jhDqNRwIxWtryzylJqpOk2VSABnbw9uwZhhU7gJVX1edRgiTYGujY2b3AG7FP2bq+jOq4+TY3cd3Cd0XSquSrWhTqo3qOEKYBhtbbXmnhFuwebzqNFkmBZAxGQywejDY2EH7WarTCGFSShfKz+etK/LjnivsuXhXdZxsMxgMjI8cj63OluD6warjCGFavMpCi7Gw/xu4vFN1miyRAsiYon6Hs2u1537yFVSdRgiT07uhH/VKefLZkmM8SjGvtYRWXlzJ9mvbGdtgLB5OHqrjCGF66v4LSjaC8H7a8k8mTgogY4m/DutGgP+bULG96jRCmCQbGx0zugcQl5RK2JpTquNkWUxiDFP3T6Vj6Y68WuJV1XGEME02NtBlHjy+DxtGq07zj6QAMgaDAVYOAId80HaK6jRCmDRfTxdGt6/M7/uvsf1srOo4/8hgMDB2z1ic7Z0JqhukOo4Qps3DD1qFwuGf4Pxm1WleSAogYzj0A1zcCp2+AmdpGhfin7xV15cm5QsRtOwY8UlpquO80JJzS9hzcw/jG47H3dFddRwhTF+t3lCmOazsD48fqE7zXFIAvaz7l2FDsHbBy7VQnUYIs6DT6Zj6ejWSUjMYv8p0V5S+9vAaMw7OoFv5bjQq1kh1HCHMg06nNQikJmmPhpgoKYBehl4PK/ppDzy3ClWdRgizUsTdmXEdq/DXkRtsOBmjOs5T9AY9YyLG4OnkyfDaw1XHEcK8uBeDtlPh2B9werXqNM8kBdDL2LcArkZA56/B0VV1GiHMzms1i9Gysjejlx/n3qMU1XGe8OvpXzl0+xATAyeSzz6f6jhCmJ+AN6FCe216mETTm/pCCqCcunsetoyHen2gVGPVaYQwSzqdjkldq5GhNzBmxQkMBoPqSABcjr/Ml4e/pGelntTxqaM6jhDmSaeDjrNBnwFrhmoDhkyIFEA5kZGurX7rVgyaj1WdRgizVsjVkdAu1Vh7PIZVx26pjkO6Pp3g3cH45PNhUM1BquMIYd7yF4YOs+DUCm2ZKBMiBVBO7JkDNw9D1wXg4KI6jRBmr71/ETr4F2FM+AliE5KVZvnx5I+cuHeC0MBQnO2clWYRwiJU6QpVXtOWiXpoOs/7SQGUXbdPwrZJ2uJvvnVVpxHCYkzsXBV7WxtG/nVcWVfYuQfnmHd0Hr2r9KZ64epKMghhkdrPBFsHWDXIZLrCpADKjvRUreurYFl4ZZTqNEJYFI98Dkx5rRpbzsSy5ND1PD9/WkYawbuD8XPzo1/1fnl+fiEsmosndJoD59bD0V9VpwGkAMqeXTMg9hR0nQ92jqrTCGFxWlT2plut4kxcdYobcY/z9NwLjy/k/IPzhDYKxcHWIU/PLYRVqNAWqveE9SMh7prqNFIAZdnNI7BzBjQeDkVrqE4jhMUK6ViZ/E52BC09lmddYSfvnWTRsUV87P8xVQpWyZNzCmGV2kzWpo1Z2V95V5gUQFmRlqx1fXlXgSYyIZoQucnNyZ6pr/uz+8JdftkXnevnS8lIYfSu0ZT3KM/H/h/n+vmEsGpO7tos0Ze2w8HvlEaRAigrtk+C+5eg6zdga686jRAWr0n5QvSsV4JJa05z9V5irp5r3tF5RD+MJqxRGPY2cn8LkevKNofaH8DGMdq/rYpIAfRPovdBxBztoWfvyqrTCGE1RrWrhJerA58tOUaGPneayo/GHuXHEz/Sr3o/ynmUy5VzCCGeoeVEyFcIwvtpEyUqIAXQi6QmQngfKF5bG/YuhMgz+RztmNEtgANX7/NDxGWjHz8pLYnRu0dTrVA1elfpbfTjCyFewDE/dJkP0ZGwd76SCFIAvcjm8ZBwC7osABtb1WmEsDr1Shfkg8BSTNtwlguxj4x67C8Pf0lsUixhgWHYyv0tRN7zC4T6n8KWCXDnbJ6fXgqg57m8E/Z/Ay3GgldZ1WmEsFqfta5AcQ9nhi2JIj1Db5Rj7r+1n9/O/MagmoPwc/czyjGFEDnQfAwUKKENNMpIz9NTSwH0LMkJWr9kyUZQ91+q0whh1ZzsbZnZPYDj1+P4ZufLPzD5KPURYyLGUNu7Nm9XetsICYUQOWbvrC0rdesoRMzO01NLAfQsG4Ph8X3oMg9s5EckhGo1SnjQp2kZZm8+x+lbCS91rBkHZxCXEsfEwInY6OT+FkK54rUhcDBsnwIxx/PstHL3/935TXD4J2gVCh5+qtMIIf7foBblKFMoP0MXR5GanrOusF3Xd7Hs/DKG1xlOcdfiRk4ohMixZiPAqzws76stO5UHpAD6X48fwMoBUKY51OqtOo0Q4n842tkys0cA528/ZO7W89l+f3xKPOP2jCOwaCDdynXLhYRCiByzc9S6wu6chp3T8uSUUgD9r3VBkJqkzVKp06lOI4T4mypF3RnYvBzztl8k6lpctt47Zf8UHqc/ZlzDcejk/hbC9BTxh6ZBsGsW3DiU66eTAug/Tq+CY39C26ngXkx1GiHEc/RtVobKRdwYtiSK5LSsTaC25eoWVl9azYh6I/DJ55PLCYUQOdZoCPhU07rC0pJz9VRSAAEk3oVVg6FCewh4U3UaIcQL2NvaMLNHANH3k5i16dw/7n8/+T4T9k7gFd9X6Fi6Yx4kFELkmK291hX24ApsC83VU0kBZDDA6iFg0EPH2dL1JYQZKO/tyrCW5Vm06xIHr9x/7n4Gg4HQvaHoDXpCGoRI15cQ5qBwJXh1NOyZC1cjc+00UgCdWAanV0KHWZC/sOo0Qogs+qhxaWqW8GDYkiiSUp89gdq6y+vYdHUTwfWD8XL2yuOEQogca9AffOtCeF9tWapcYN0F0MMYWDMMqrwGVbqqTiOEyAZbGx0zugdwOyGZqevOPPX1O0l3CNsXRhu/NrT2a60goRAix2xstbXCHsbAprG5c4pcOao5MBhg5UCwdYD2M1WnEULkQCmvfIxsW4mfIq8SceFu5naDwcC4yHHY29gzut5ohQmFEDlWsAy0nAAHFsGl7UY/vEkUQPPmzcPPzw8nJyfq1avH/v37X7j/kiVLqFixIk5OTlSrVo21a9dm/6THFsP5DdBpDrh45jC5EEK1d+uXpEHpgny+9BgPk9MACL8Qzs7rOxnXcBwFnAqoDSiEyLk6H4FfY1jRX1umyoiUF0B//vknQ4cOZezYsRw+fJiAgABat25NbGzsM/ffs2cPb731Fh9++CFHjhyhS5cudOnShRMnTmTvxJvGQvWeUKGtEb4LIYQqNjY6pnXzJ/5xGqGrT3Pr0S2mHphK5zKdaebbTHU8IcTLsLGBzvPgcRxsGGXUQ+sMBoPBqEfMpnr16lGnTh3mzp0LgF6vx9fXlwEDBjBixIin9n/jjTdITExk9erVmdvq169P9erVWbBgwT+eLyEhAXd3d+LDyuM2dD84uRvvmxFCKPPH/mhG/BVF7XpLiUu/wfLOy3F1cFUdSwhhDId+glUDYVy80Q5pZ7Qj5UBqaiqHDh1i5MiRmdtsbGxo0aIFkZHPHvoWGRnJ0KFDn9jWunVrwsPDn7l/SkoKKSkpmf8fH6/98Bq62GL7c5OX/A6EEKYkX0k9p25nkHrjParv26g6jhDCaPLxlW1VGiUk4OrqapQpLZQWQHfv3iUjIwNvb+8ntnt7e3PmzNOjOgBiYmKeuX9MTMwz9588eTLjx49/avvJIadzmFoIYfqebj0WQpi39gDT3ImNjaVQoUIvfTylBVBeGDly5BMtRnFxcZQsWZLo6Gjc3aX7S6WEhAR8fX25du0abm5uquNYPbkepkOuhemQa2E6/nMtHBwcjHI8pQWQl5cXtra23L59+4ntt2/fxsfn2ev1+Pj4ZGt/R0dHHB0dn9ru7u4uv8wmws3NTa6FCZHrYTrkWpgOuRamw1gzuisdBebg4ECtWrXYsmVL5ja9Xs+WLVto0KDBM9/ToEGDJ/YH2LRp03P3F0IIIYT4O+VdYEOHDuW9996jdu3a1K1bl9mzZ5OYmMj7778PQK9evShWrBiTJ08GYNCgQTRt2pSZM2fSvn17/vjjDw4ePMjChQtVfhtCCCGEMCPKC6A33niDO3fuEBISQkxMDNWrV2f9+vWZDzpHR0djY/PfhqqGDRvy22+/ERwczKhRoyhXrhzh4eFUrVo1S+dzdHRk7Nixz+wWE3lLroVpkethOuRamA65FqbD2NdC+TxAQgghhBB5TflM0EIIIYQQeU0KICGEEEJYHSmAhBBCCGF1pAASQgghhNWx2AJo8uTJ1KlTB1dXVwoXLkyXLl04e/bsE/skJyfTr18/ChYsSP78+Xn99defmmRRvLz58+fj7++fOZFYgwYNWLduXebX5TqoM2XKFHQ6HYMHD87cJtcjb4wbNw6dTvfEq2LFiplfl+uQt27cuME777xDwYIFcXZ2plq1ahw8eDDz6waDgZCQEIoUKYKzszMtWrTg/PnzChNbLj8/v6fuDZ1OR79+/QDj3RsWWwDt2LGDfv36sXfvXjZt2kRaWhqtWrUiMTExc58hQ4awatUqlixZwo4dO7h58yavvfaawtSWqXjx4kyZMoVDhw5x8OBBXn31VTp37szJkycBuQ6qHDhwgG+++QZ/f/8ntsv1yDtVqlTh1q1bma/du3dnfk2uQ9558OABgYGB2Nvbs27dOk6dOsXMmTPx8PDI3GfatGnMmTOHBQsWsG/fPvLly0fr1q1JTk5WmNwyHThw4In7YtOmTQB0794dMOK9YbASsbGxBsCwY8cOg8FgMMTFxRns7e0NS5Ysydzn9OnTBsAQGRmpKqbV8PDwMHz77bdyHRR5+PChoVy5coZNmzYZmjZtahg0aJDBYJD7Ii+NHTvWEBAQ8MyvyXXIW0FBQYZGjRo99+t6vd7g4+NjmD59eua2uLg4g6Ojo+H333/Pi4hWbdCgQYYyZcoY9Hq9Ue8Ni20B+rv4+HgAPD09ATh06BBpaWm0aNEic5+KFStSokQJIiMjlWS0BhkZGfzxxx8kJibSoEEDuQ6K9OvXj/bt2z/xcwe5L/La+fPnKVq0KKVLl6Znz55ER0cDch3y2sqVK6lduzbdu3encOHC1KhRg0WLFmV+/fLly8TExDxxPdzd3alXr55cj1yWmprKL7/8wgcffIBOpzPqvWEVBZBer2fw4MEEBgZmzhgdExODg4MDBQoUeGJfb29vYmJiFKS0bMePHyd//vw4OjrSp08fli9fTuXKleU6KPDHH39w+PDhzOVl/pdcj7xTr149fvzxR9avX8/8+fO5fPkyjRs35uHDh3Id8tilS5eYP38+5cqVY8OGDfTt25eBAwfy008/AWT+zP+zQsF/yPXIfeHh4cTFxdG7d2/AuH+jlC+FkRf69evHiRMnnuhfF3mrQoUKHD16lPj4eJYuXcp7773Hjh07VMeyOteuXWPQoEFs2rQJJycn1XGsWtu2bTP/29/fn3r16lGyZEkWL16Ms7OzwmTWR6/XU7t2bSZNmgRAjRo1OHHiBAsWLOC9995TnM66fffdd7Rt25aiRYsa/dgW3wLUv39/Vq9ezbZt2yhevHjmdh8fH1JTU4mLi3ti/9u3b+Pj45PHKS2fg4MDZcuWpVatWkyePJmAgAC+/PJLuQ557NChQ8TGxlKzZk3s7Oyws7Njx44dzJkzBzs7O7y9veV6KFKgQAHKly/PhQsX5L7IY0WKFKFy5cpPbKtUqVJml+R/fuZ/H2kk1yN3Xb16lc2bN/PRRx9lbjPmvWGxBZDBYKB///4sX76crVu3UqpUqSe+XqtWLezt7dmyZUvmtrNnzxIdHU2DBg3yOq7V0ev1pKSkyHXIY82bN+f48eMcPXo081W7dm169uyZ+d9yPdR49OgRFy9epEiRInJf5LHAwMCnpkk5d+4cJUuWBKBUqVL4+Pg8cT0SEhLYt2+fXI9c9MMPP1C4cGHat2+fuc2o94aRH9Y2GX379jW4u7sbtm/fbrh161bmKykpKXOfPn36GEqUKGHYunWr4eDBg4YGDRoYGjRooDC1ZRoxYoRhx44dhsuXLxuOHTtmGDFihEGn0xk2btxoMBjkOqj2v6PADAa5Hnll2LBhhu3btxsuX75siIiIMLRo0cLg5eVliI2NNRgMch3y0v79+w12dnaGsLAww/nz5w2//vqrwcXFxfDLL79k7jNlyhRDgQIFDCtWrDAcO3bM0LlzZ0OpUqUMjx8/VpjccmVkZBhKlChhCAoKeuprxro3LLYAAp75+uGHHzL3efz4seHTTz81eHh4GFxcXAxdu3Y13Lp1S11oC/XBBx8YSpYsaXBwcDAUKlTI0Lx588zix2CQ66Da3wsguR5544033jAUKVLE4ODgYChWrJjhjTfeMFy4cCHz63Id8taqVasMVatWNTg6OhoqVqxoWLhw4RNf1+v1hjFjxhi8vb0Njo6OhubNmxvOnj2rKK3l27BhgwF45s/YWPeGzmAwGF66ner/2rt/l9T6AI7jn3P7QYOS/RARKhzCKCj6sViTNQgNQgQVDYIODRGSQ/0D0VBDUHNLNbU0RZRDZEj0wwgCIQoEh0CLyKUaCuNOjyBxl+f2PHrveb+m4zl+9ftdDm+O5yAAAMAf5K+9BwgAAOBXCCAAAGA6BBAAADAdAggAAJgOAQQAAEyHAAIAAKZDAAEAANMhgAAAgOkQQAAAwHQIIABlw+v1KhKJlHoaAEyAAAIAAKZDAAEoC8FgUMfHx1pbW5NhGDIMQ+l0WslkUsPDw7JYLHI4HAoEAnp6eiqM83q9CofDikQiqqurk8Ph0Pr6ul5fXxUKhWS1WtXa2qr9/f3CmFgsJsMwtLe3p66uLtXU1Mjj8SiZTJZi6QBKgAACUBbW1tbU39+vqakpZTIZZTIZWa1WDQ0NqaenR5eXlzo4ONDDw4PGx8eLxm5ubqqxsVEXFxcKh8Oanp7W2NiYBgYGdHV1JZ/Pp0AgoLe3t6Jx8/PzWllZUSKRkN1ul9/v18fHx/+5bAAlwr/BAygbXq9X3d3dWl1dlSQtLi4qHo8rGo0W3nN/f6/m5mbd3t7K7XbL6/Uqn88rHo9LkvL5vGprazU6OqqtrS1JUjabldPp1OnpqTwej2KxmAYHB7W9va2JiQlJ0vPzs5qamrSxsfElsAD8fSpLPQEA+JXr62sdHR3JYrF8OZZKpeR2uyVJXV1dhf0VFRVqaGhQZ2dnYZ/D4ZAkPT4+Fn1Gf39/Ybu+vl5tbW26ubn51jUAKE8EEICy9fLyIr/fr+Xl5S/HnE5nYbuqqqromGEYRfsMw5AkfX5+/kczBfCnIYAAlI3q6mrl8/nC697eXu3s7Mjlcqmy8vtPV2dnZ2ppaZEk5XI53d3dqb29/du/B0D54SZoAGXD5XLp/Pxc6XRaT09PmpmZ0fPzsyYnJ5VIJJRKpRSNRhUKhYpC6d9aWFjQ4eGhksmkgsGgGhsbNTIy8vsLAVD2CCAAZWNubk4VFRXq6OiQ3W7X+/u7Tk5OlM/n5fP51NnZqUgkIpvNph8/fv/0tbS0pNnZWfX19SmbzWp3d1fV1dXfsBIA5Y6nwACYzj9PgeVyOdlstlJPB0AJcAUIAACYDgEEAABMh5/AAACA6XAFCAAAmA4BBAAATIcAAgAApkMAAQAA0yGAAACA6RBAAADAdAggAABgOgQQAAAwnZ/+RI/A80IbSgAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "from skfuzzy import control as ctrl\n", + "import skfuzzy as fuzz\n", + "\n", + "# temp = ctrl.Antecedent(np.arange(20, 70, 1), \"temp\")\n", + "# al = ctrl.Antecedent(np.arange(0, 0.3, 0.001), \"al\")\n", + "# ti = ctrl.Antecedent(np.arange(0, 0.3, 0.001), \"ti\")\n", + "# density = ctrl.Consequent(np.arange(1, 1.3, 0.00001), \"density\")\n", + "\n", + "temp = ctrl.Antecedent(density_train[\"T\"].sort_values().unique(), \"temp\")\n", + "al = ctrl.Antecedent(density_train[\"Al2O3\"].sort_values().unique(), \"al\")\n", + "ti = ctrl.Antecedent(density_train[\"TiO2\"].sort_values().unique(), \"ti\")\n", + "density = ctrl.Consequent(np.arange(1.03, 1.22, 0.0001), \"density\")\n", + "\n", + "temp.automf(3, variable_type=\"quant\")\n", + "temp.view()\n", + "al.automf(3, variable_type=\"quant\")\n", + "al.view()\n", + "ti.automf(3, variable_type=\"quant\")\n", + "ti.view()\n", + "density.automf(3, variable_type=\"quant\")\n", + "# density[\"low\"] = fuzz.trimf(density.universe, [1.03, 1.06, 1.09])\n", + "# density[\"average\"] = fuzz.trimf(density.universe, [1.06, 1.14, 1.18])\n", + "# density[\"high\"] = fuzz.trimf(density.universe, [1.09, 1.18, 1.22])\n", + "density.view()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "rule11 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"low\"] & ti[\"low\"],\n", + " density[\"low\"],\n", + ")\n", + "rule12 = ctrl.Rule(\n", + " temp[\"average\"] & al[\"low\"] & ti[\"low\"],\n", + " density[\"low\"],\n", + ")\n", + "rule13 = ctrl.Rule(\n", + " temp[\"high\"] & al[\"low\"] & ti[\"low\"],\n", + " density[\"low\"],\n", + ")\n", + "\n", + "rule21 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"average\"] & ti[\"low\"],\n", + " density[\"average\"],\n", + ")\n", + "rule22 = ctrl.Rule(\n", + " temp[\"average\"] & al[\"average\"] & ti[\"low\"],\n", + " density[\"low\"],\n", + ")\n", + "rule23 = ctrl.Rule(\n", + " temp[\"high\"] & al[\"average\"] & ti[\"low\"],\n", + " density[\"low\"],\n", + ")\n", + "\n", + "rule31 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"high\"] & ti[\"low\"],\n", + " density[\"high\"],\n", + ")\n", + "rule32 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"high\"] & ti[\"low\"],\n", + " density[\"high\"],\n", + ")\n", + "rule33 = ctrl.Rule(\n", + " temp[\"high\"] & al[\"high\"] & ti[\"low\"],\n", + " density[\"average\"],\n", + ")\n", + "\n", + "rule41 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"low\"] & ti[\"average\"],\n", + " density[\"average\"],\n", + ")\n", + "rule42 = ctrl.Rule(\n", + " temp[\"average\"] & al[\"low\"] & ti[\"average\"],\n", + " density[\"average\"],\n", + ")\n", + "rule43 = ctrl.Rule(\n", + " temp[\"high\"] & al[\"low\"] & ti[\"average\"],\n", + " density[\"low\"],\n", + ")\n", + "\n", + "rule51 = ctrl.Rule(\n", + " temp[\"low\"] & al[\"low\"] & ti[\"high\"],\n", + " density[\"high\"],\n", + ")\n", + "rule52 = ctrl.Rule(\n", + " temp[\"average\"] & al[\"low\"] & ti[\"high\"],\n", + " density[\"high\"],\n", + ")\n", + "rule53 = ctrl.Rule(\n", + " temp[\"high\"] & al[\"low\"] & ti[\"high\"],\n", + " density[\"average\"],\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[IF (temp[low] AND al[low]) AND ti[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND al[low]) AND ti[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[high] AND al[low]) AND ti[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND al[average]) AND ti[low] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND al[average]) AND ti[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[high] AND al[average]) AND ti[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND al[high]) AND ti[low] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND al[high]) AND ti[low] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[high] AND al[high]) AND ti[low] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND al[low]) AND ti[average] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND al[low]) AND ti[average] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[high] AND al[low]) AND ti[average] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND al[low]) AND ti[high] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND al[low]) AND ti[high] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[high] AND al[low]) AND ti[high] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fuzzy_rules = [\n", + " rule11,\n", + " rule12,\n", + " rule13,\n", + " rule21,\n", + " rule22,\n", + " rule23,\n", + " rule31,\n", + " rule32,\n", + " rule33,\n", + " rule41,\n", + " rule42,\n", + " rule43,\n", + " rule51,\n", + " rule52,\n", + " rule53,\n", + "]\n", + "\n", + "density_cntrl = ctrl.ControlSystem(fuzzy_rules)\n", + "\n", + "sim = ctrl.ControlSystemSimulation(density_cntrl)\n", + "\n", + "fuzzy_rules" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "=============\n", + " Antecedents \n", + "=============\n", + "Antecedent: temp = 20\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "Antecedent: al = 0.3\n", + " - low : 0.0\n", + " - average : 0.0\n", + " - high : 1.0\n", + "Antecedent: ti = 0.0\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "\n", + "=======\n", + " Rules \n", + "=======\n", + "RULE #0:\n", + " IF (temp[low] AND al[low]) AND ti[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[low] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[low] AND al[low]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #1:\n", + " IF (temp[average] AND al[low]) AND ti[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[average] AND al[low]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #2:\n", + " IF (temp[high] AND al[low]) AND ti[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[high] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[high] AND al[low]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #3:\n", + " IF (temp[low] AND al[average]) AND ti[low] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[low] AND al[average]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "RULE #4:\n", + " IF (temp[average] AND al[average]) AND ti[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[average] AND al[average]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #5:\n", + " IF (temp[high] AND al[average]) AND ti[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[high] : 0.0\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " (temp[high] AND al[average]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #6:\n", + " IF (temp[low] AND al[high]) AND ti[low] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[high] : 1.0\n", + " - ti[low] : 1.0\n", + " (temp[low] AND al[high]) AND ti[low] = 1.0\n", + " Activation (THEN-clause):\n", + " density[high] : 1.0\n", + "\n", + "RULE #7:\n", + " IF (temp[low] AND al[high]) AND ti[low] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[high] : 1.0\n", + " - ti[low] : 1.0\n", + " (temp[low] AND al[high]) AND ti[low] = 1.0\n", + " Activation (THEN-clause):\n", + " density[high] : 1.0\n", + "\n", + "RULE #8:\n", + " IF (temp[high] AND al[high]) AND ti[low] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[high] : 0.0\n", + " - al[high] : 1.0\n", + " - ti[low] : 1.0\n", + " (temp[high] AND al[high]) AND ti[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "RULE #9:\n", + " IF (temp[low] AND al[low]) AND ti[average] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[low] : 0.0\n", + " - ti[average] : 0.0\n", + " (temp[low] AND al[low]) AND ti[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "RULE #10:\n", + " IF (temp[average] AND al[low]) AND ti[average] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[average] : 0.0\n", + " (temp[average] AND al[low]) AND ti[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "RULE #11:\n", + " IF (temp[high] AND al[low]) AND ti[average] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[high] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[average] : 0.0\n", + " (temp[high] AND al[low]) AND ti[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #12:\n", + " IF (temp[low] AND al[low]) AND ti[high] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 1.0\n", + " - al[low] : 0.0\n", + " - ti[high] : 0.0\n", + " (temp[low] AND al[low]) AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[high] : 0.0\n", + "\n", + "RULE #13:\n", + " IF (temp[average] AND al[low]) AND ti[high] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[high] : 0.0\n", + " (temp[average] AND al[low]) AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[high] : 0.0\n", + "\n", + "RULE #14:\n", + " IF (temp[high] AND al[low]) AND ti[high] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[high] : 0.0\n", + " - al[low] : 0.0\n", + " - ti[high] : 0.0\n", + " (temp[high] AND al[low]) AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "\n", + "==============================\n", + " Intermediaries and Conquests \n", + "==============================\n", + "Consequent: density = 1.1882499824468897\n", + " low:\n", + " Accumulate using accumulation_max : 0.0\n", + " average:\n", + " Accumulate using accumulation_max : 0.0\n", + " high:\n", + " Accumulate using accumulation_max : 1.0\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "np.float64(1.1882499824468897)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sim.input[\"temp\"] = 20\n", + "sim.input[\"al\"] = 0.3\n", + "sim.input[\"ti\"] = 0.0\n", + "sim.compute()\n", + "sim.print_state()\n", + "display(sim.output[\"density\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "def fuzzy_pred(row):\n", + " sim.input[\"temp\"] = row[\"T\"]\n", + " sim.input[\"al\"] = row[\"Al2O3\"]\n", + " sim.input[\"ti\"] = row[\"TiO2\"]\n", + " sim.compute()\n", + " return sim.output[\"density\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'density'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[13], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m result_train \u001b[38;5;241m=\u001b[39m density_train\u001b[38;5;241m.\u001b[39mcopy()\n\u001b[1;32m----> 3\u001b[0m result_train[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mDensityPred\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[43mresult_train\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfuzzy_pred\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[0;32m 5\u001b[0m result_train\u001b[38;5;241m.\u001b[39mhead(\u001b[38;5;241m15\u001b[39m)\n", + "File \u001b[1;32mc:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\pandas\\core\\frame.py:10374\u001b[0m, in \u001b[0;36mDataFrame.apply\u001b[1;34m(self, func, axis, raw, result_type, args, by_row, engine, engine_kwargs, **kwargs)\u001b[0m\n\u001b[0;32m 10360\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mpandas\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mcore\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mapply\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m frame_apply\n\u001b[0;32m 10362\u001b[0m op \u001b[38;5;241m=\u001b[39m frame_apply(\n\u001b[0;32m 10363\u001b[0m \u001b[38;5;28mself\u001b[39m,\n\u001b[0;32m 10364\u001b[0m func\u001b[38;5;241m=\u001b[39mfunc,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 10372\u001b[0m kwargs\u001b[38;5;241m=\u001b[39mkwargs,\n\u001b[0;32m 10373\u001b[0m )\n\u001b[1;32m> 10374\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mop\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241m.\u001b[39m__finalize__(\u001b[38;5;28mself\u001b[39m, method\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mapply\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n", + "File \u001b[1;32mc:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\pandas\\core\\apply.py:916\u001b[0m, in \u001b[0;36mFrameApply.apply\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 913\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mraw:\n\u001b[0;32m 914\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mapply_raw(engine\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mengine, engine_kwargs\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mengine_kwargs)\n\u001b[1;32m--> 916\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply_standard\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[1;32mc:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\pandas\\core\\apply.py:1063\u001b[0m, in \u001b[0;36mFrameApply.apply_standard\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 1061\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mapply_standard\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m 1062\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mengine \u001b[38;5;241m==\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mpython\u001b[39m\u001b[38;5;124m\"\u001b[39m:\n\u001b[1;32m-> 1063\u001b[0m results, res_index \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply_series_generator\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 1064\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 1065\u001b[0m results, res_index \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mapply_series_numba()\n", + "File \u001b[1;32mc:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\pandas\\core\\apply.py:1081\u001b[0m, in \u001b[0;36mFrameApply.apply_series_generator\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 1078\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m option_context(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmode.chained_assignment\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m):\n\u001b[0;32m 1079\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m i, v \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28menumerate\u001b[39m(series_gen):\n\u001b[0;32m 1080\u001b[0m \u001b[38;5;66;03m# ignore SettingWithCopy here in case the user mutates\u001b[39;00m\n\u001b[1;32m-> 1081\u001b[0m results[i] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfunc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mv\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 1082\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(results[i], ABCSeries):\n\u001b[0;32m 1083\u001b[0m \u001b[38;5;66;03m# If we have a view on v, we need to make a copy because\u001b[39;00m\n\u001b[0;32m 1084\u001b[0m \u001b[38;5;66;03m# series_generator will swap out the underlying data\u001b[39;00m\n\u001b[0;32m 1085\u001b[0m results[i] \u001b[38;5;241m=\u001b[39m results[i]\u001b[38;5;241m.\u001b[39mcopy(deep\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m)\n", + "Cell \u001b[1;32mIn[12], line 6\u001b[0m, in \u001b[0;36mfuzzy_pred\u001b[1;34m(row)\u001b[0m\n\u001b[0;32m 4\u001b[0m sim\u001b[38;5;241m.\u001b[39minput[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mti\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m row[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mTiO2\u001b[39m\u001b[38;5;124m\"\u001b[39m]\n\u001b[0;32m 5\u001b[0m sim\u001b[38;5;241m.\u001b[39mcompute()\n\u001b[1;32m----> 6\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43msim\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43moutput\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mdensity\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m]\u001b[49m\n", + "\u001b[1;31mKeyError\u001b[0m: 'density'" + ] + } + ], + "source": [ + "result_train = density_train.copy()\n", + "\n", + "result_train[\"DensityPred\"] = result_train.apply(fuzzy_pred, axis=1)\n", + "\n", + "result_train.head(15)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2DensityDensityPred
0300.000.001.056961.060000
1550.000.001.041581.060000
2250.050.001.084381.096363
3300.050.001.081121.097343
4350.050.001.077811.097343
5400.050.001.074461.088627
6600.050.001.060531.060000
7350.300.001.174591.159583
8650.300.001.148121.126222
9450.000.051.074241.096363
10500.000.051.070751.096363
11550.000.051.067211.097343
12200.000.301.224171.163333
13300.000.301.213101.161428
14400.000.301.202651.162778
15600.000.301.182651.141253
16700.000.301.172611.126667
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density DensityPred\n", + "0 30 0.00 0.00 1.05696 1.060000\n", + "1 55 0.00 0.00 1.04158 1.060000\n", + "2 25 0.05 0.00 1.08438 1.096363\n", + "3 30 0.05 0.00 1.08112 1.097343\n", + "4 35 0.05 0.00 1.07781 1.097343\n", + "5 40 0.05 0.00 1.07446 1.088627\n", + "6 60 0.05 0.00 1.06053 1.060000\n", + "7 35 0.30 0.00 1.17459 1.159583\n", + "8 65 0.30 0.00 1.14812 1.126222\n", + "9 45 0.00 0.05 1.07424 1.096363\n", + "10 50 0.00 0.05 1.07075 1.096363\n", + "11 55 0.00 0.05 1.06721 1.097343\n", + "12 20 0.00 0.30 1.22417 1.163333\n", + "13 30 0.00 0.30 1.21310 1.161428\n", + "14 40 0.00 0.30 1.20265 1.162778\n", + "15 60 0.00 0.30 1.18265 1.141253\n", + "16 70 0.00 0.30 1.17261 1.126667" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_test = density_test.copy()\n", + "\n", + "result_test[\"DensityPred\"] = result_test.apply(fuzzy_pred, axis=1)\n", + "\n", + "result_test" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'RMSE_train': 0.024131296333542294,\n", + " 'RMSE_test': 0.03056470202709202,\n", + " 'RMAE_test': 0.16058558998263095,\n", + " 'R2_test': 0.7532040538162098}" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import math\n", + "from sklearn import metrics\n", + "\n", + "\n", + "rmetrics = {}\n", + "rmetrics[\"RMSE_train\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_train[\"Density\"], result_train[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_test[\"Density\"], result_test[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(result_test[\"Density\"], result_test[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"R2_test\"] = metrics.r2_score(\n", + " result_test[\"Density\"], result_test[\"DensityPred\"]\n", + ")\n", + "\n", + "rmetrics" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/density_regression.ipynb b/density_regression.ipynb new file mode 100644 index 0000000..e824dfa --- /dev/null +++ b/density_regression.ipynb @@ -0,0 +1,795 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0200.00.01.06250
1250.00.01.05979
2350.00.01.05404
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 20 0.0 0.0 1.06250\n", + "1 25 0.0 0.0 1.05979\n", + "2 35 0.0 0.0 1.05404" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0300.000.01.05696
1550.000.01.04158
2250.050.01.08438
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 30 0.00 0.0 1.05696\n", + "1 55 0.00 0.0 1.04158\n", + "2 25 0.05 0.0 1.08438" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "density_train = pd.read_csv(\"data/density_train.csv\", sep=\";\", decimal=\",\")\n", + "density_test = pd.read_csv(\"data/density_test.csv\", sep=\";\", decimal=\",\")\n", + "\n", + "display(density_train.head(3))\n", + "display(density_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2
0200.00.0
1250.00.0
2350.00.0
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2\n", + "0 20 0.0 0.0\n", + "1 25 0.0 0.0\n", + "2 35 0.0 0.0" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "0 1.06250\n", + "1 1.05979\n", + "2 1.05404\n", + "Name: Density, dtype: float64" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2
0300.000.0
1550.000.0
2250.050.0
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2\n", + "0 30 0.00 0.0\n", + "1 55 0.00 0.0\n", + "2 25 0.05 0.0" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "0 1.05696\n", + "1 1.04158\n", + "2 1.08438\n", + "Name: Density, dtype: float64" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "density_y_train = density_train[\"Density\"]\n", + "density_train = density_train.drop([\"Density\"], axis=1)\n", + "\n", + "display(density_train.head(3))\n", + "display(density_y_train.head(3))\n", + "\n", + "density_y_test = density_test[\"Density\"]\n", + "density_test = density_test.drop([\"Density\"], axis=1)\n", + "\n", + "display(density_test.head(3))\n", + "display(density_y_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.pipeline import make_pipeline\n", + "from sklearn.preprocessing import PolynomialFeatures\n", + "from sklearn import linear_model, tree, neighbors, ensemble\n", + "\n", + "random_state = 9\n", + "\n", + "models = {\n", + " \"linear\": {\"model\": linear_model.LinearRegression(n_jobs=-1)},\n", + " \"linear_poly\": {\n", + " \"model\": make_pipeline(\n", + " PolynomialFeatures(degree=2),\n", + " linear_model.LinearRegression(fit_intercept=False, n_jobs=-1),\n", + " )\n", + " },\n", + " \"linear_interact\": {\n", + " \"model\": make_pipeline(\n", + " PolynomialFeatures(interaction_only=True),\n", + " linear_model.LinearRegression(fit_intercept=False, n_jobs=-1),\n", + " )\n", + " },\n", + " \"ridge\": {\"model\": linear_model.RidgeCV()},\n", + " \"decision_tree\": {\n", + " \"model\": tree.DecisionTreeRegressor(max_depth=7, random_state=random_state)\n", + " },\n", + " \"knn\": {\"model\": neighbors.KNeighborsRegressor(n_neighbors=7, n_jobs=-1)},\n", + " \"random_forest\": {\n", + " \"model\": ensemble.RandomForestRegressor(\n", + " max_depth=7, random_state=random_state, n_jobs=-1\n", + " )\n", + " },\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Model: linear\n", + "Model: linear_poly\n", + "Model: linear_interact\n", + "Model: ridge\n", + "Model: decision_tree\n", + "Model: knn\n", + "Model: random_forest\n" + ] + } + ], + "source": [ + "import math\n", + "from sklearn import metrics\n", + "\n", + "for model_name in models.keys():\n", + " print(f\"Model: {model_name}\")\n", + " fitted_model = models[model_name][\"model\"].fit(\n", + " density_train.values, density_y_train.values.ravel()\n", + " )\n", + " y_train_pred = fitted_model.predict(density_train.values)\n", + " y_test_pred = fitted_model.predict(density_test.values)\n", + " models[model_name][\"fitted\"] = fitted_model\n", + " models[model_name][\"train_preds\"] = y_train_pred\n", + " models[model_name][\"preds\"] = y_test_pred\n", + " models[model_name][\"RMSE_train\"] = math.sqrt(\n", + " metrics.mean_squared_error(density_y_train, y_train_pred)\n", + " )\n", + " models[model_name][\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(density_y_test, y_test_pred)\n", + " )\n", + " models[model_name][\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(density_y_test, y_test_pred)\n", + " )\n", + " models[model_name][\"R2_test\"] = metrics.r2_score(density_y_test, y_test_pred)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
 RMSE_trainRMSE_testRMAE_testR2_test
linear_poly0.0003190.0003620.0166430.999965
linear_interact0.0011310.0014910.0331980.999413
linear0.0024640.0032610.0498910.997191
random_forest0.0027160.0055750.0672980.991788
decision_tree0.0003460.0064330.0761380.989067
ridge0.0139890.0153560.1163800.937703
knn0.0531080.0567760.2176110.148414
\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "reg_metrics = pd.DataFrame.from_dict(models, \"index\")[\n", + " [\"RMSE_train\", \"RMSE_test\", \"RMAE_test\", \"R2_test\"]\n", + "]\n", + "reg_metrics.sort_values(by=\"RMSE_test\").style.background_gradient(\n", + " cmap=\"viridis\", low=1, high=0.3, subset=[\"RMSE_train\", \"RMSE_test\"]\n", + ").background_gradient(cmap=\"plasma\", low=0.3, high=1, subset=[\"RMAE_test\", \"R2_test\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\numpy\\ma\\core.py:2881: RuntimeWarning: invalid value encountered in cast\n", + " _data = np.array(data, dtype=dtype, copy=copy,\n" + ] + }, + { + "data": { + "text/plain": [ + "{'criterion': 'absolute_error', 'max_depth': 7}" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "from sklearn import model_selection\n", + "\n", + "parameters = {\n", + " \"criterion\": [\"squared_error\", \"absolute_error\", \"friedman_mse\", \"poisson\"],\n", + " \"max_depth\": np.arange(1, 21).tolist()[0::2],\n", + " # \"min_samples_split\": np.arange(2, 11).tolist()[0::2],\n", + "}\n", + "\n", + "grid = model_selection.GridSearchCV(\n", + " tree.DecisionTreeRegressor(random_state=random_state), parameters, n_jobs=-1\n", + ")\n", + "\n", + "grid.fit(density_train, density_y_train)\n", + "grid.best_params_" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'RMSE_test': 0.006433043831746894,\n", + " 'RMAE_test': 0.07613841884048704,\n", + " 'R2_test': 0.989067217447684}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "{'RMSE_test': 0.005040505635233745,\n", + " 'RMAE_test': 0.06943469212568175,\n", + " 'R2_test': 0.9932880934907101}" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "model = grid.best_estimator_\n", + "y_pred = model.predict(density_test)\n", + "old_metrics = {\n", + " \"RMSE_test\": models[\"decision_tree\"][\"RMSE_test\"],\n", + " \"RMAE_test\": models[\"decision_tree\"][\"RMAE_test\"],\n", + " \"R2_test\": models[\"decision_tree\"][\"R2_test\"],\n", + "}\n", + "new_metrics = {}\n", + "new_metrics[\"RMSE_test\"] = math.sqrt(metrics.mean_squared_error(density_y_test, y_pred))\n", + "new_metrics[\"RMAE_test\"] = math.sqrt(metrics.mean_absolute_error(density_y_test, y_pred))\n", + "new_metrics[\"R2_test\"] = metrics.r2_score(density_y_test, y_pred)\n", + "\n", + "display(old_metrics)\n", + "display(new_metrics)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "|--- Al2O3 <= 0.18\n", + "| |--- TiO2 <= 0.18\n", + "| | |--- T <= 32.50\n", + "| | | |--- TiO2 <= 0.03\n", + "| | | | |--- Al2O3 <= 0.03\n", + "| | | | | |--- T <= 22.50\n", + "| | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 22.50\n", + "| | | | | | |--- value: [1.06]\n", + "| | | | |--- Al2O3 > 0.03\n", + "| | | | | |--- value: [1.09]\n", + "| | | |--- TiO2 > 0.03\n", + "| | | | |--- T <= 27.50\n", + "| | | | | |--- T <= 22.50\n", + "| | | | | | |--- value: [1.09]\n", + "| | | | | |--- T > 22.50\n", + "| | | | | | |--- value: [1.09]\n", + "| | | | |--- T > 27.50\n", + "| | | | | |--- value: [1.08]\n", + "| | |--- T > 32.50\n", + "| | | |--- TiO2 <= 0.03\n", + "| | | | |--- Al2O3 <= 0.03\n", + "| | | | | |--- T <= 55.00\n", + "| | | | | | |--- T <= 47.50\n", + "| | | | | | | |--- value: [1.05]\n", + "| | | | | | |--- T > 47.50\n", + "| | | | | | | |--- value: [1.04]\n", + "| | | | | |--- T > 55.00\n", + "| | | | | | |--- T <= 62.50\n", + "| | | | | | | |--- value: [1.04]\n", + "| | | | | | |--- T > 62.50\n", + "| | | | | | | |--- value: [1.03]\n", + "| | | | |--- Al2O3 > 0.03\n", + "| | | | | |--- T <= 60.00\n", + "| | | | | | |--- T <= 52.50\n", + "| | | | | | | |--- value: [1.07]\n", + "| | | | | | |--- T > 52.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 60.00\n", + "| | | | | | |--- T <= 67.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | | |--- T > 67.50\n", + "| | | | | | | |--- value: [1.05]\n", + "| | | |--- TiO2 > 0.03\n", + "| | | | |--- T <= 50.00\n", + "| | | | | |--- T <= 37.50\n", + "| | | | | | |--- value: [1.08]\n", + "| | | | | |--- T > 37.50\n", + "| | | | | | |--- value: [1.08]\n", + "| | | | |--- T > 50.00\n", + "| | | | | |--- T <= 67.50\n", + "| | | | | | |--- T <= 62.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | | |--- T > 62.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 67.50\n", + "| | | | | | |--- value: [1.06]\n", + "| |--- TiO2 > 0.18\n", + "| | |--- T <= 40.00\n", + "| | | |--- T <= 30.00\n", + "| | | | |--- value: [1.22]\n", + "| | | |--- T > 30.00\n", + "| | | | |--- value: [1.21]\n", + "| | |--- T > 40.00\n", + "| | | |--- T <= 60.00\n", + "| | | | |--- T <= 52.50\n", + "| | | | | |--- T <= 47.50\n", + "| | | | | | |--- value: [1.20]\n", + "| | | | | |--- T > 47.50\n", + "| | | | | | |--- value: [1.19]\n", + "| | | | |--- T > 52.50\n", + "| | | | | |--- value: [1.19]\n", + "| | | |--- T > 60.00\n", + "| | | | |--- value: [1.18]\n", + "|--- Al2O3 > 0.18\n", + "| |--- T <= 35.00\n", + "| | |--- T <= 22.50\n", + "| | | |--- value: [1.19]\n", + "| | |--- T > 22.50\n", + "| | | |--- T <= 27.50\n", + "| | | | |--- value: [1.18]\n", + "| | | |--- T > 27.50\n", + "| | | | |--- value: [1.18]\n", + "| |--- T > 35.00\n", + "| | |--- T <= 52.50\n", + "| | | |--- T <= 42.50\n", + "| | | | |--- value: [1.17]\n", + "| | | |--- T > 42.50\n", + "| | | | |--- T <= 47.50\n", + "| | | | | |--- value: [1.17]\n", + "| | | | |--- T > 47.50\n", + "| | | | | |--- value: [1.16]\n", + "| | |--- T > 52.50\n", + "| | | |--- T <= 65.00\n", + "| | | | |--- T <= 57.50\n", + "| | | | | |--- value: [1.16]\n", + "| | | | |--- T > 57.50\n", + "| | | | | |--- value: [1.15]\n", + "| | | |--- T > 65.00\n", + "| | | | |--- value: [1.14]\n", + "\n" + ] + } + ], + "source": [ + "rules = tree.export_text(\n", + " model,\n", + " feature_names=density_train.columns.values.tolist()\n", + ")\n", + "print(rules)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "import pickle\n", + "\n", + "pickle.dump(model, open(\"data/dtree.model.sav\", \"wb\"))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/density_tree.ipynb b/density_tree.ipynb new file mode 100644 index 0000000..a376bd1 --- /dev/null +++ b/density_tree.ipynb @@ -0,0 +1,1699 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "|--- Al2O3 <= 0.18\n", + "| |--- TiO2 <= 0.18\n", + "| | |--- T <= 32.50\n", + "| | | |--- TiO2 <= 0.03\n", + "| | | | |--- Al2O3 <= 0.03\n", + "| | | | | |--- T <= 22.50\n", + "| | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 22.50\n", + "| | | | | | |--- value: [1.06]\n", + "| | | | |--- Al2O3 > 0.03\n", + "| | | | | |--- value: [1.09]\n", + "| | | |--- TiO2 > 0.03\n", + "| | | | |--- T <= 27.50\n", + "| | | | | |--- T <= 22.50\n", + "| | | | | | |--- value: [1.09]\n", + "| | | | | |--- T > 22.50\n", + "| | | | | | |--- value: [1.09]\n", + "| | | | |--- T > 27.50\n", + "| | | | | |--- value: [1.08]\n", + "| | |--- T > 32.50\n", + "| | | |--- TiO2 <= 0.03\n", + "| | | | |--- Al2O3 <= 0.03\n", + "| | | | | |--- T <= 55.00\n", + "| | | | | | |--- T <= 47.50\n", + "| | | | | | | |--- value: [1.05]\n", + "| | | | | | |--- T > 47.50\n", + "| | | | | | | |--- value: [1.04]\n", + "| | | | | |--- T > 55.00\n", + "| | | | | | |--- T <= 62.50\n", + "| | | | | | | |--- value: [1.04]\n", + "| | | | | | |--- T > 62.50\n", + "| | | | | | | |--- value: [1.03]\n", + "| | | | |--- Al2O3 > 0.03\n", + "| | | | | |--- T <= 60.00\n", + "| | | | | | |--- T <= 52.50\n", + "| | | | | | | |--- value: [1.07]\n", + "| | | | | | |--- T > 52.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 60.00\n", + "| | | | | | |--- T <= 67.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | | |--- T > 67.50\n", + "| | | | | | | |--- value: [1.05]\n", + "| | | |--- TiO2 > 0.03\n", + "| | | | |--- T <= 50.00\n", + "| | | | | |--- T <= 37.50\n", + "| | | | | | |--- value: [1.08]\n", + "| | | | | |--- T > 37.50\n", + "| | | | | | |--- value: [1.08]\n", + "| | | | |--- T > 50.00\n", + "| | | | | |--- T <= 67.50\n", + "| | | | | | |--- T <= 62.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | | |--- T > 62.50\n", + "| | | | | | | |--- value: [1.06]\n", + "| | | | | |--- T > 67.50\n", + "| | | | | | |--- value: [1.06]\n", + "| |--- TiO2 > 0.18\n", + "| | |--- T <= 40.00\n", + "| | | |--- T <= 30.00\n", + "| | | | |--- value: [1.22]\n", + "| | | |--- T > 30.00\n", + "| | | | |--- value: [1.21]\n", + "| | |--- T > 40.00\n", + "| | | |--- T <= 60.00\n", + "| | | | |--- T <= 52.50\n", + "| | | | | |--- T <= 47.50\n", + "| | | | | | |--- value: [1.20]\n", + "| | | | | |--- T > 47.50\n", + "| | | | | | |--- value: [1.19]\n", + "| | | | |--- T > 52.50\n", + "| | | | | |--- value: [1.19]\n", + "| | | |--- T > 60.00\n", + "| | | | |--- value: [1.18]\n", + "|--- Al2O3 > 0.18\n", + "| |--- T <= 35.00\n", + "| | |--- T <= 22.50\n", + "| | | |--- value: [1.19]\n", + "| | |--- T > 22.50\n", + "| | | |--- T <= 27.50\n", + "| | | | |--- value: [1.18]\n", + "| | | |--- T > 27.50\n", + "| | | | |--- value: [1.18]\n", + "| |--- T > 35.00\n", + "| | |--- T <= 52.50\n", + "| | | |--- T <= 42.50\n", + "| | | | |--- value: [1.17]\n", + "| | | |--- T > 42.50\n", + "| | | | |--- T <= 47.50\n", + "| | | | | |--- value: [1.17]\n", + "| | | | |--- T > 47.50\n", + "| | | | | |--- value: [1.16]\n", + "| | |--- T > 52.50\n", + "| | | |--- T <= 65.00\n", + "| | | | |--- T <= 57.50\n", + "| | | | | |--- value: [1.16]\n", + "| | | | |--- T > 57.50\n", + "| | | | | |--- value: [1.15]\n", + "| | | |--- T > 65.00\n", + "| | | | |--- value: [1.14]\n", + "\n" + ] + } + ], + "source": [ + "import pickle\n", + "import pandas as pd\n", + "from sklearn import tree\n", + "\n", + "model = pickle.load(open(\"data/dtree.model.sav\", \"rb\"))\n", + "features = (\n", + " pd.read_csv(\"data/density_train.csv\", sep=\";\", decimal=\",\")\n", + " .drop([\"Density\"], axis=1)\n", + " .columns.values.tolist()\n", + ")\n", + "\n", + "rules = tree.export_text(model, feature_names=features)\n", + "print(rules)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "34" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T > 55.0) and (T > 62.5) -> 1.033,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T > 55.0) and (T <= 62.5) -> 1.038,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T <= 55.0) and (T > 47.5) -> 1.045,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T <= 55.0) and (T <= 47.5) -> 1.051,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) and (T > 60.0) and (T > 67.5) -> 1.053,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 > 0.025) and (T > 50.0) and (T > 67.5) -> 1.056,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) and (T > 60.0) and (T <= 67.5) -> 1.057,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T > 22.5) -> 1.06,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 > 0.025) and (T > 50.0) and (T <= 67.5) and (T > 62.5) -> 1.06,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) and (T <= 22.5) -> 1.062,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 > 0.025) and (T > 50.0) and (T <= 67.5) and (T <= 62.5) -> 1.064,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) and (T <= 60.0) and (T > 52.5) -> 1.064,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) and (T <= 60.0) and (T <= 52.5) -> 1.069,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 > 0.025) and (T <= 50.0) and (T > 37.5) -> 1.078,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 > 0.025) and (T <= 50.0) and (T <= 37.5) -> 1.081,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 > 0.025) and (T > 27.5) -> 1.084,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 > 0.025) and (T <= 27.5) and (T > 22.5) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (TiO2 > 0.025) and (T <= 27.5) and (T <= 22.5) -> 1.091,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T > 52.5) and (T > 65.0) -> 1.144,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T > 52.5) and (T <= 65.0) and (T > 57.5) -> 1.152,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T > 52.5) and (T <= 65.0) and (T <= 57.5) -> 1.157,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) and (T > 42.5) and (T > 47.5) -> 1.161,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) and (T > 42.5) and (T <= 47.5) -> 1.166,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) and (T <= 42.5) -> 1.17,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T > 60.0) -> 1.178,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) and (T > 27.5) -> 1.179,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) and (T <= 27.5) -> 1.184,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) and (T > 52.5) -> 1.187,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T <= 22.5) -> 1.189,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) and (T <= 52.5) and (T > 47.5) -> 1.193,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) and (T <= 52.5) and (T <= 47.5) -> 1.198,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) and (T > 30.0) -> 1.208,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) and (T <= 30.0) -> 1.219]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_rules\n", + "\n", + "\n", + "rules = get_rules(model, features)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "34" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) -> 1.033,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 62.5) -> 1.038,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 55.0) -> 1.045,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 55.0) -> 1.051,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) -> 1.053,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) -> 1.056,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 67.5) -> 1.057,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (T > 22.5) -> 1.06,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 67.5) -> 1.06,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.062,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 67.5) -> 1.064,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 60.0) -> 1.064,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 60.0) -> 1.069,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 50.0) -> 1.078,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 50.0) -> 1.081,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 27.5) -> 1.084,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 22.5) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) -> 1.091,\n", + " if (Al2O3 > 0.175) and (T > 35.0) -> 1.144,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 65.0) -> 1.152,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 65.0) -> 1.157,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) -> 1.161,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) -> 1.166,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) -> 1.17,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) -> 1.178,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) -> 1.179,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) -> 1.184,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) -> 1.187,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) -> 1.189,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) -> 1.193,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) -> 1.198,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) and (T > 30.0) -> 1.208,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) -> 1.219]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import normalise_rules\n", + "\n", + "\n", + "rules = normalise_rules(rules)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "24" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) -> 1.033,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 62.5) -> 1.038,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 55.0) -> 1.048,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) -> 1.053,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) -> 1.056,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 67.5) -> 1.057,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (T > 22.5) -> 1.06,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.062,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 67.5) -> 1.062,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 60.0) -> 1.067,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 50.0) -> 1.079,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 27.5) -> 1.084,\n", + " if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 22.5) -> 1.088,\n", + " if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) -> 1.091,\n", + " if (Al2O3 > 0.175) and (T > 35.0) -> 1.144,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 65.0) -> 1.155,\n", + " if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) -> 1.166,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) -> 1.178,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) -> 1.182,\n", + " if (Al2O3 > 0.175) and (T <= 35.0) -> 1.189,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) -> 1.193,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) and (T > 30.0) -> 1.208,\n", + " if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) -> 1.219]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import delete_same_rules\n", + "\n", + "\n", + "rules = delete_same_rules(rules)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['(Al2O3 <= 0.175)', '(Al2O3 > 0.025)', '(Al2O3 > 0.175)', '(TiO2 <= 0.175)', '(TiO2 > 0.025)', '(TiO2 > 0.175)']\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
(Al2O3 <= 0.175)(Al2O3 > 0.025)(Al2O3 > 0.175)(TiO2 <= 0.175)(TiO2 > 0.025)(TiO2 > 0.175)consequent
rule
if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) -> 1.0331001001.0333299999999999
if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 62.5) -> 1.0381001001.03826
if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 55.0) -> 1.0481001001.0478999999999998
if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) -> 1.0531101001.05291
if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) -> 1.0561001101.05601
\n", + "
" + ], + "text/plain": [ + " (Al2O3 <= 0.175) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 1 \n", + "\n", + " (Al2O3 > 0.025) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 0 \n", + "\n", + " (Al2O3 > 0.175) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 0 \n", + "\n", + " (TiO2 <= 0.175) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 1 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 1 \n", + "\n", + " (TiO2 > 0.025) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 1 \n", + "\n", + " (TiO2 > 0.175) \\\n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 0 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 0 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 0 \n", + "\n", + " consequent \n", + "rule \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1.0333299999999999 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1.03826 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T ... 1.0478999999999998 \n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (Ti... 1.05291 \n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (Ti... 1.05601 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_features, vectorize_rules\n", + "\n", + "features = get_features(rules, [\"T\"])\n", + "print(features)\n", + "\n", + "df_rules = vectorize_rules(rules, features)\n", + "df_rules.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (6). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (7). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (8). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (9). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (10). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n" + ] + }, + { + "data": { + "text/plain": [ + "{2: 0.5483575964237912,\n", + " 3: 0.602943554055511,\n", + " 4: 0.8221763769597347,\n", + " 5: 1.0,\n", + " 6: 1.0,\n", + " 7: 1.0,\n", + " 8: 1.0,\n", + " 9: 1.0,\n", + " 10: 1.0}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "'The best clusters count is 5'" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from src.cluster_helper import draw_best_clusters_plot, get_best_clusters_num\n", + "\n", + "random_state = 9\n", + "\n", + "X = df_rules.copy()\n", + "X = X.drop([\"consequent\"], axis=1)\n", + "\n", + "clusters_score = get_best_clusters_num(X, random_state)\n", + "display(clusters_score)\n", + "\n", + "draw_best_clusters_plot(clusters_score)\n", + "\n", + "clusters_num = sorted(clusters_score.items(), key=lambda x: x[1], reverse=True)[0][0]\n", + "display(f\"The best clusters count is {clusters_num}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Кластер 1 (5):\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) -> 1.033;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 62.5) -> 1.038;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 55.0) -> 1.048;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) and (T > 22.5) -> 1.06;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.062\n", + "--------\n", + "Кластер 2 (5):\n", + "if (Al2O3 > 0.175) and (T > 35.0) -> 1.144;\n", + "if (Al2O3 > 0.175) and (T > 35.0) and (T <= 65.0) -> 1.155;\n", + "if (Al2O3 > 0.175) and (T > 35.0) and (T <= 52.5) -> 1.166;\n", + "if (Al2O3 > 0.175) and (T <= 35.0) and (T > 22.5) -> 1.182;\n", + "if (Al2O3 > 0.175) and (T <= 35.0) -> 1.189\n", + "--------\n", + "Кластер 3 (6):\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) -> 1.056;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 67.5) -> 1.062;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T > 32.5) and (T <= 50.0) -> 1.079;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 27.5) -> 1.084;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) and (T > 22.5) -> 1.088;\n", + "if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (T <= 32.5) -> 1.091\n", + "--------\n", + "Кластер 4 (4):\n", + "if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) -> 1.178;\n", + "if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T > 40.0) and (T <= 60.0) -> 1.193;\n", + "if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) and (T > 30.0) -> 1.208;\n", + "if (Al2O3 <= 0.175) and (TiO2 > 0.175) and (T <= 40.0) -> 1.219\n", + "--------\n", + "Кластер 5 (4):\n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) -> 1.053;\n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 67.5) -> 1.057;\n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T > 32.5) and (T <= 60.0) -> 1.067;\n", + "if (Al2O3 <= 0.175) and (Al2O3 > 0.025) and (TiO2 <= 0.175) and (T <= 32.5) -> 1.088\n", + "--------\n" + ] + } + ], + "source": [ + "from sklearn import cluster\n", + "\n", + "from src.cluster_helper import print_cluster_result\n", + "\n", + "kmeans = cluster.KMeans(n_clusters=clusters_num, random_state=random_state)\n", + "kmeans.fit(X)\n", + "\n", + "print_cluster_result(X, clusters_num, kmeans.labels_)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0200.00.01.06250
1250.00.01.05979
2350.00.01.05404
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 20 0.0 0.0 1.06250\n", + "1 25 0.0 0.0 1.05979\n", + "2 35 0.0 0.0 1.05404" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Density
0300.000.01.05696
1550.000.01.04158
2250.050.01.08438
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density\n", + "0 30 0.00 0.0 1.05696\n", + "1 55 0.00 0.0 1.04158\n", + "2 25 0.05 0.0 1.08438" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "density_train = pd.read_csv(\"data/density_train.csv\", sep=\";\", decimal=\",\")\n", + "density_test = pd.read_csv(\"data/density_test.csv\", sep=\";\", decimal=\",\")\n", + "\n", + "display(density_train.head(3))\n", + "display(density_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[[if (Al2O3 = 0.0) and (TiO2 = 0.0) and (T = 70) -> 1.033,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.0) and (T = 47.5) -> 1.038,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.0) and (T = 43.75) -> 1.048,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.0) and (T = 27.5) -> 1.06,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.0) and (T = 20) -> 1.062],\n", + " [if (Al2O3 = 0.3) and (T = 70) -> 1.144,\n", + " if (Al2O3 = 0.3) and (T = 50.0) -> 1.155,\n", + " if (Al2O3 = 0.3) and (T = 43.75) -> 1.166,\n", + " if (Al2O3 = 0.3) and (T = 28.75) -> 1.182,\n", + " if (Al2O3 = 0.3) and (T = 20) -> 1.189],\n", + " [if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 70) -> 1.056,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 50.0) -> 1.062,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 41.25) -> 1.079,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 30.0) -> 1.084,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 27.5) -> 1.088,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.1) and (T = 20) -> 1.091],\n", + " [if (Al2O3 = 0.0) and (TiO2 = 0.3) and (T = 70) -> 1.178,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.3) and (T = 50.0) -> 1.193,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.3) and (T = 35.0) -> 1.208,\n", + " if (Al2O3 = 0.0) and (TiO2 = 0.3) and (T = 20) -> 1.219],\n", + " [if (Al2O3 = 0.1) and (TiO2 = 0.0) and (T = 70) -> 1.053,\n", + " if (Al2O3 = 0.1) and (TiO2 = 0.0) and (T = 50.0) -> 1.057,\n", + " if (Al2O3 = 0.1) and (TiO2 = 0.0) and (T = 46.25) -> 1.067,\n", + " if (Al2O3 = 0.1) and (TiO2 = 0.0) and (T = 20) -> 1.088]]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import simplify_and_group_rules\n", + "\n", + "clustered_rules = simplify_and_group_rules(density_train, rules, clusters_num, kmeans.labels_)\n", + "clustered_rules" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n", + " fig.show()\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "from skfuzzy import control as ctrl\n", + "import skfuzzy as fuzz\n", + "\n", + "temp = ctrl.Antecedent(density_train[\"T\"].sort_values().unique(), \"temp\")\n", + "al = ctrl.Antecedent(np.arange(0, 0.3, 0.005), \"al\")\n", + "ti = ctrl.Antecedent(np.arange(0, 0.3, 0.005), \"ti\")\n", + "density = ctrl.Consequent(np.arange(1.03, 1.22, 0.00001), \"density\")\n", + "\n", + "temp.automf(3, variable_type=\"quant\")\n", + "temp.view()\n", + "al.automf(3, variable_type=\"quant\")\n", + "al.view()\n", + "ti.automf(3, variable_type=\"quant\")\n", + "ti.view()\n", + "density.automf(5, variable_type=\"quant\")\n", + "density.view()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "15" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[IF (al[low] AND ti[low]) AND temp[high] THEN density[lower]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[low]) AND temp[average] THEN density[lower]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[low]) AND temp[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF al[high] AND temp[high] THEN density[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF al[high] AND temp[average] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF al[high] AND temp[low] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[average]) AND temp[high] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[average]) AND temp[average] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[average]) AND temp[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[high]) AND temp[high] THEN density[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[high]) AND temp[average] THEN density[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[low] AND ti[high]) AND temp[low] THEN density[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[average] AND ti[low]) AND temp[high] THEN density[lower]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[average] AND ti[low]) AND temp[average] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (al[average] AND ti[low]) AND temp[low] THEN density[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_fuzzy_rules\n", + "\n", + "fuzzy_variables = {\"Al2O3\": al, \"TiO2\": ti, \"T\": temp, \"consequent\": density}\n", + "fuzzy_rules = get_fuzzy_rules(clustered_rules, fuzzy_variables)\n", + "\n", + "fuzzy_cntrl = ctrl.ControlSystem(fuzzy_rules)\n", + "\n", + "sim = ctrl.ControlSystemSimulation(fuzzy_cntrl, lenient=False)\n", + "\n", + "display(len(fuzzy_rules))\n", + "fuzzy_rules" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "=============\n", + " Antecedents \n", + "=============\n", + "Antecedent: al = 0.0\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "Antecedent: ti = 0.0\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "Antecedent: temp = 20\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "\n", + "=======\n", + " Rules \n", + "=======\n", + "RULE #0:\n", + " IF (al[low] AND ti[low]) AND temp[high] THEN density[lower]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[low] : 1.0\n", + " - temp[high] : 0.0\n", + " (al[low] AND ti[low]) AND temp[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[lower] : 0.0\n", + "\n", + "RULE #1:\n", + " IF (al[low] AND ti[low]) AND temp[average] THEN density[lower]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[low] : 1.0\n", + " - temp[average] : 0.0\n", + " (al[low] AND ti[low]) AND temp[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[lower] : 0.0\n", + "\n", + "RULE #2:\n", + " IF (al[low] AND ti[low]) AND temp[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[low] : 1.0\n", + " - temp[low] : 1.0\n", + " (al[low] AND ti[low]) AND temp[low] = 1.0\n", + " Activation (THEN-clause):\n", + " density[low] : 1.0\n", + "\n", + "RULE #3:\n", + " IF al[high] AND temp[high] THEN density[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[high] : 0.0\n", + " - temp[high] : 0.0\n", + " al[high] AND temp[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[average] : 0.0\n", + "\n", + "RULE #4:\n", + " IF al[high] AND temp[average] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[high] : 0.0\n", + " - temp[average] : 0.0\n", + " al[high] AND temp[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[high] : 0.0\n", + "\n", + "RULE #5:\n", + " IF al[high] AND temp[low] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[high] : 0.0\n", + " - temp[low] : 1.0\n", + " al[high] AND temp[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[high] : 0.0\n", + "\n", + "RULE #6:\n", + " IF (al[low] AND ti[average]) AND temp[high] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[average] : 0.0\n", + " - temp[high] : 0.0\n", + " (al[low] AND ti[average]) AND temp[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #7:\n", + " IF (al[low] AND ti[average]) AND temp[average] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[average] : 0.0\n", + " - temp[average] : 0.0\n", + " (al[low] AND ti[average]) AND temp[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #8:\n", + " IF (al[low] AND ti[average]) AND temp[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[average] : 0.0\n", + " - temp[low] : 1.0\n", + " (al[low] AND ti[average]) AND temp[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #9:\n", + " IF (al[low] AND ti[high]) AND temp[high] THEN density[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[high] : 0.0\n", + " - temp[high] : 0.0\n", + " (al[low] AND ti[high]) AND temp[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[high] : 0.0\n", + "\n", + "RULE #10:\n", + " IF (al[low] AND ti[high]) AND temp[average] THEN density[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[high] : 0.0\n", + " - temp[average] : 0.0\n", + " (al[low] AND ti[high]) AND temp[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[higher] : 0.0\n", + "\n", + "RULE #11:\n", + " IF (al[low] AND ti[high]) AND temp[low] THEN density[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[low] : 1.0\n", + " - ti[high] : 0.0\n", + " - temp[low] : 1.0\n", + " (al[low] AND ti[high]) AND temp[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[higher] : 0.0\n", + "\n", + "RULE #12:\n", + " IF (al[average] AND ti[low]) AND temp[high] THEN density[lower]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - temp[high] : 0.0\n", + " (al[average] AND ti[low]) AND temp[high] = 0.0\n", + " Activation (THEN-clause):\n", + " density[lower] : 0.0\n", + "\n", + "RULE #13:\n", + " IF (al[average] AND ti[low]) AND temp[average] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - temp[average] : 0.0\n", + " (al[average] AND ti[low]) AND temp[average] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "RULE #14:\n", + " IF (al[average] AND ti[low]) AND temp[low] THEN density[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - al[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - temp[low] : 1.0\n", + " (al[average] AND ti[low]) AND temp[low] = 0.0\n", + " Activation (THEN-clause):\n", + " density[low] : 0.0\n", + "\n", + "\n", + "==============================\n", + " Intermediaries and Conquests \n", + "==============================\n", + "Consequent: density = 1.0774975002635008\n", + " lower:\n", + " Accumulate using accumulation_max : 0.0\n", + " low:\n", + " Accumulate using accumulation_max : 1.0\n", + " average:\n", + " Accumulate using accumulation_max : 0.0\n", + " high:\n", + " Accumulate using accumulation_max : 0.0\n", + " higher:\n", + " Accumulate using accumulation_max : 0.0\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "np.float64(1.0774975002635008)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sim.input[\"temp\"] = 20\n", + "sim.input[\"al\"] = 0.0\n", + "sim.input[\"ti\"] = 0.0\n", + "sim.compute()\n", + "sim.print_state()\n", + "display(sim.output[\"density\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2DensityDensityPred
0200.000.01.062501.077498
1250.000.01.059791.076593
2350.000.01.054041.069156
3400.000.01.051031.061106
4450.000.01.047941.045833
5500.000.01.044771.046360
6600.000.01.038261.047642
7650.000.01.034841.046360
8700.000.01.031821.045833
9200.050.01.087551.077498
10450.050.01.071051.067145
11500.050.01.067601.067145
12550.050.01.064091.067988
13650.050.01.056911.062538
14700.050.01.052911.047191
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density DensityPred\n", + "0 20 0.00 0.0 1.06250 1.077498\n", + "1 25 0.00 0.0 1.05979 1.076593\n", + "2 35 0.00 0.0 1.05404 1.069156\n", + "3 40 0.00 0.0 1.05103 1.061106\n", + "4 45 0.00 0.0 1.04794 1.045833\n", + "5 50 0.00 0.0 1.04477 1.046360\n", + "6 60 0.00 0.0 1.03826 1.047642\n", + "7 65 0.00 0.0 1.03484 1.046360\n", + "8 70 0.00 0.0 1.03182 1.045833\n", + "9 20 0.05 0.0 1.08755 1.077498\n", + "10 45 0.05 0.0 1.07105 1.067145\n", + "11 50 0.05 0.0 1.06760 1.067145\n", + "12 55 0.05 0.0 1.06409 1.067988\n", + "13 65 0.05 0.0 1.05691 1.062538\n", + "14 70 0.05 0.0 1.05291 1.047191" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def fuzzy_pred(row):\n", + " sim.input[\"temp\"] = row[\"T\"]\n", + " sim.input[\"al\"] = row[\"Al2O3\"]\n", + " sim.input[\"ti\"] = row[\"TiO2\"]\n", + " sim.compute()\n", + " return sim.output[\"density\"]\n", + "\n", + "result_train = density_train.copy()\n", + "result_train[\"DensityPred\"] = result_train.apply(fuzzy_pred, axis=1)\n", + "result_train.head(15)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2DensityDensityPred
0300.000.001.056961.073918
1550.000.001.041581.047642
2250.050.001.084381.076518
3300.050.001.081121.073918
4350.050.001.077811.069156
5400.050.001.074461.067145
6600.050.001.060531.067988
7350.300.001.174591.172492
8650.300.001.148121.136460
9450.000.051.074241.067145
10500.000.051.070751.067145
11550.000.051.067211.067988
12200.000.301.224171.204157
13300.000.301.213101.202348
14400.000.301.202651.203630
15600.000.301.182651.176072
16700.000.301.172611.172492
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Density DensityPred\n", + "0 30 0.00 0.00 1.05696 1.073918\n", + "1 55 0.00 0.00 1.04158 1.047642\n", + "2 25 0.05 0.00 1.08438 1.076518\n", + "3 30 0.05 0.00 1.08112 1.073918\n", + "4 35 0.05 0.00 1.07781 1.069156\n", + "5 40 0.05 0.00 1.07446 1.067145\n", + "6 60 0.05 0.00 1.06053 1.067988\n", + "7 35 0.30 0.00 1.17459 1.172492\n", + "8 65 0.30 0.00 1.14812 1.136460\n", + "9 45 0.00 0.05 1.07424 1.067145\n", + "10 50 0.00 0.05 1.07075 1.067145\n", + "11 55 0.00 0.05 1.06721 1.067988\n", + "12 20 0.00 0.30 1.22417 1.204157\n", + "13 30 0.00 0.30 1.21310 1.202348\n", + "14 40 0.00 0.30 1.20265 1.203630\n", + "15 60 0.00 0.30 1.18265 1.176072\n", + "16 70 0.00 0.30 1.17261 1.172492" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_test = density_test.copy()\n", + "result_test[\"DensityPred\"] = result_test.apply(fuzzy_pred, axis=1)\n", + "result_test" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'RMSE_train': 0.009765373953597112,\n", + " 'RMSE_test': 0.009031443610368107,\n", + " 'RMAE_test': 0.08581225574298121,\n", + " 'R2_test': 0.978451748357252}" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import math\n", + "from sklearn import metrics\n", + "\n", + "\n", + "rmetrics = {}\n", + "rmetrics[\"RMSE_train\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_train[\"Density\"], result_train[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_test[\"Density\"], result_test[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(result_test[\"Density\"], result_test[\"DensityPred\"])\n", + ")\n", + "rmetrics[\"R2_test\"] = metrics.r2_score(\n", + " result_test[\"Density\"], result_test[\"DensityPred\"]\n", + ")\n", + "\n", + "rmetrics" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/docs/path1.png b/docs/path1.png new file mode 100644 index 0000000..a94aff4 Binary files /dev/null and b/docs/path1.png differ diff --git a/docs/path2.png b/docs/path2.png new file mode 100644 index 0000000..3b22399 Binary files /dev/null and b/docs/path2.png differ diff --git a/docs/path3.png b/docs/path3.png new file mode 100644 index 0000000..557256d Binary files /dev/null and b/docs/path3.png differ diff --git a/docs/path4.png b/docs/path4.png new file mode 100644 index 0000000..4f65865 Binary files /dev/null and b/docs/path4.png differ diff --git a/fluid.ipynb b/fluid.ipynb new file mode 100644 index 0000000..68e6df0 --- /dev/null +++ b/fluid.ipynb @@ -0,0 +1,350 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from skfuzzy import control as ctrl\n", + "\n", + "level = ctrl.Antecedent(np.arange(1.5, 9.0, 0.1), \"level\")\n", + "flow = ctrl.Antecedent(np.arange(0, 0.6, 0.01), \"flow\")\n", + "influx = ctrl.Consequent(np.arange(0, 0.6, 0.01), \"influx\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n", + " fig.show()\n" + ] + }, + { + "data": { + "image/png": "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bE6ZmZkMGzaM2tpaPD09WbFiBXFxcapjdbvU1FR2797Njh07VEdRbujQoXz00Uf079+fM2fO8Ne//pVRo0axb9++Nu0GbCuOHj3KW2+9xbx58/jTn/7Ejh07eOihh3B2dubOO+9UHU+plStXUlZWxm9+8xvVUZR48sknqaioIDY2FgcHB5qamnjuueeYPXu26miWwySU+P3vf2/q1auX6eTJk6qjKFVXV2c6fPiwaefOnaYnn3zSFBgYaNq/f7/qWN0qNzfXFBwcbEpPT29+bcyYMaaHH35YXSgLUlpaavL29ja99957qqN0KycnJ9OwYcNavPbggw+arrnmGkWJLMeECRNMkydPVh1DmSVLlph69uxpWrJkiSkjI8P0r3/9y+Tv72/66KOPVEezGFLcKHD//febevbsaTp69KjqKBbnuuuuM917772qY3SrFStWmACTg4ND8wdg0ul0JgcHB1NjY6PqiMoNHjzY9OSTT6qO0a0iIyNNd999d4vX3nzzTVNYWJiiRJbh+PHjJr1eb1q5cqXqKMr07NnT9Prrr7d47e9//7upf//+ihJZHhmW6kYmk4kHH3yQFStWkJaWRnR0tOpIFsdoNFJXV6c6Rre67rrryMzMbPHaXXfdRWxsLE888QQODg6KklmGqqoqjhw5wh133KE6SrcaMWLERa0iDh06RK9evRQlsgwffvghwcHB3HjjjaqjKFNTU9NiQ2kABwcHjEajokSWR4qbbnT//fezePFivvjiC7y8vMjPzwfAx8cHNzc3xem631NPPcX1119PZGQklZWVLF68mLS0NNauXas6Wrfy8vK6aN6Vh4cHAQEBdjkf67HHHmPKlCn06tWL06dPs2DBAhwcHJg1a5bqaN3qkUceYfjw4Tz//PPMmDGD7du38+677/Luu++qjqaM0Wjkww8/5M4777TL9gDnTZkyheeee47IyEji4+PZs2cPr7zyCr/97W9VR7Mcqh8d2ROg1Y8PP/xQdTQlfvvb35p69eplcnZ2NgUFBZmuu+4607p161THsgj2POdm5syZph49epicnZ1N4eHhppkzZ5pycnJUx1Liyy+/NCUkJJhcXFxMsbGxpnfffVd1JKXWrl1rAkwHDx5UHUWpiooK08MPP2yKjIw0ubq6mnr37m3685//bKqrq1MdzWJInxshhBBC2BTpcyOEEEIImyLFjRBCCCFsihQ3QgghhLApUtwIIYQQwqZIcSOEEEIImyLFjRBCCCFsihQ3QgghhLApUtwIIYQQwqZIcSOEsDhjx45l7ty53Xa93/zmN0ybNq3brieE6FpS3AghhBDCpkhxI4QQQgibIsWNEMKi1dXV8dhjjxEeHo6HhwdDhw4lLS0NgIqKCtzc3Pjmm29avGfFihV4eXlRU1MDwMmTJ5kxYwa+vr74+/szdepUjh8/3s1fiRCiu0hxI4SwaA888ABbt24lNTWVjIwMpk+fzqRJkzh8+DDe3t5MnjyZxYsXt3jPJ598wrRp03B3d6ehoYGJEyfi5eXFxo0b2bx5M56enkyaNIn6+npFX5UQois5qg4ghBCXkpuby4cffkhubi5hYWEAPPbYY6xZs4YPP/yQ559/ntmzZ3PHHXdQU1ODu7s7FRUVrF69mhUrVgCwdOlSjEYj7733HjqdDoAPP/wQX19f0tLSmDBhgrKvTwjRNaS4EUJYrMzMTJqamoiJiWnxel1dHQEBAQDccMMNODk5sWrVKlJSUvjss8/w9vZm3LhxAKSnp5OTk4OXl1eLc9TW1nLkyJHu+UKEEN1KihshhMWqqqrCwcGBXbt24eDg0OJznp6eADg7O3PbbbexePFiUlJSWLx4MTNnzsTR0bH5HIMGDeKTTz656PxBQUFd/0UIIbqdFDdCCIs1cOBAmpqaKCwsZNSoUZc8bvbs2YwfP579+/fz/fff8+yzzzZ/7qqrrmLp0qUEBwfj7e3dHbGFEIrJhGIhhMWKiYlh9uzZzJkzh88//5xjx46xfft2Fi5cyOrVq5uPGz16NKGhocyePZvo6GiGDh3a/LnZs2cTGBjI1KlT2bhxI8eOHSMtLY2HHnqIU6dOqfiyhBBdTIobIYRF+/DDD5kzZw6PPvoo/fv3Z9q0aezYsYPIyMjmY3Q6HbNmzSI9PZ3Zs2e3eL+7uzs//vgjkZGR3HLLLQwYMIC7776b2tpaeZIjhI3SmUwmk+oQQgghhBDmIk9uhBBCCGFTpLgRQgghhE2R4kYIIYQQNkWKGyGEEELYFCluhBBCCGFTpLgRQgghhE2R4kYIIYQQNkWKGyGEEELYFCluhBBCCGFTpLgRQgghhE2R4kYIIYQQNuX/AzR2CNRylC5wAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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pK9nd3e3UVZWZpSVlRlZWVnGLbfcYpSVlRm7d+8261vwKyN9PR988EEjMjLS+POf/zxoamhra6tZ34JfGenr+cADDxj/+Mc/jIqKCmPHjh3GL37xCyM8PNxYuXKlWd+CXxnp6/lFmi11tJG+pj/5yU+Mv//970ZFRYWxefNm49///d+N6OhoY/v27WZ9CwEp6MKNYRjGo48+auTl5RmRkZHG3LlzjZKSkoGvLVy40LjqqqsGHf/yyy8bJ598shEZGWmcdtppxptvvunjiv3bSF7Pffv2GcBRHwsXLvR94X5qJK/nhAkThnw97733Xt8X7qdG8nreeeedxpQpU4zo6GgjJSXFmD9/vvHiiy+aULX/GunvzyMp3AxtJK/pzTffPHBsRkaGcf755xtbtmwxoerAZjEMwzDrrpGIiIiIpwVVz42IiIiIwo2IiIgEFYUbERERCSoKNyIiIhJUFG5EREQkqCjciIiISFBRuBEREZGgonAjIiIiQUXhRkT8lmEYXH/99aSmpmKxWEhOTubmm282uywR8XMKNyLit1avXs2zzz7LX//6V2pqapg+fbrZJYlIAAg3uwARkWOpqKggKyuLBQsWABAerl9ZInJiunMjIn7p6quv5sYbb8Rut2OxWJg4ceJRxxw6dIhly5aRkpJCbGwsX/va19i9ezfgHtIaP348f/7znweOLygoICsra+DzDz74gKioKDo6Orz+/YiI7yjciIhf+vWvf819991Hbm4uNTU1bNy48ahjrr76ajZt2sQbb7zB+vXrMQyD888/n97eXiwWC2effTZr164F3EFo586ddHZ28sknnwCwbt065syZQ2xsrC+/NRHxMoUbEfFLSUlJJCQkEBYWRmZmJuPHjx/09d27d/PGG2/w1FNPcdZZZzFr1iyee+45qqqqWLVqFQCLFi0aCDfvvfces2fPHvTY2rVrWbhwoQ+/KxHxBYUbEQlIO3fuJDw8nOLi4oHHxo0bxymnnMLOnTsBWLhwITt27KChoYF169axaNGigXDT29vLRx99xKJFi0z6DkTEWxRuRCRozZgxg9TUVNatWzco3Kxbt46NGzfS29s70KwsIsFD4UZEAtKpp55KX18fpaWlA48dOHCAXbt2MW3aNAAsFgtnnXUWr7/+Otu3b+fMM89k5syZdHd388QTT1BUVERcXJxZ34KIeInCjYgEpPz8fJYsWcJ1113HBx98wNatW7niiivIyclhyZIlA8ctWrSIF154gYKCAuLj47FarZx99tk899xz6rcRCVIKNyISsJ555hkKCwu58MILmT9/PoZh8NZbbxERETFwzMKFC3E6nYN6axYtWnTUYyISPCyGYRhmFyEiIiLiKbpzIyIiIkFF4UZERESCisKNiIiIBBWFGxEREQkqCjciIiISVBRuREREJKgo3IiIiEhQUbgRERGRoKJwIyIiIkFF4UZERESCisKNiIiIBJX/H98c4B4pMdkgAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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via+Pu3rfrumiC8p3IgEoXlHpTN5Qjwvr3X476JNm6Cv073YnPiOrRS6W2B3td8uuXz7co5OO5oZE2b47Zoydnv37mXx4sWkpaURHx/P1772NbZt2wa414iZOHEif/7zn4eOLyoqIidn//50H3zwATExMWGxkKHCjUgQslgsXFBi482N9XT09PvnovYKsEa595QS37GdAFjA4Z++mz09e3jX8S5fn/Z1zSYKcN/+9rdZu3Ytr7/+OqtWrcIwDM466yz6+/uxWCyccsoprFy5EnAHoS1btrBv3z4++eQTAN577z1OOOEE4uNDv2E8ANZyFxFPfOP4fH71z6387T/1XDyvwPcXdJRDbhFEjbyPm3hJbApkznA3Fc+91OeXe2OHe4X3s6ec7fNrBZp9fU6qmzv9ft2pExOJix7bAnXbtm3j9ddf58MPP2TBggUAPP/889hsNpYvX84FF1zAaaedxhNPPAHAv//9b+bOnUt2djYrV65k+vTprFy5klNPPdXr308gUrgRCVLZKbGcevREXl7r8FO4WQ0zzvf9dcQ9JXzXhz6/jGEYvLb9Nb5k+xJpsWk+v16gqW7u5JxHPvD7df/2g5OYmZcypuds2bKFyMhISkv397xNmDCBY445hi1btgBw6qmncv3119Pc3Mx7773HaaedNhRurrzySj766CNuvvlmr34vgUrhRiSIXVhi45rn17OtsYNCX27J0FYLbQ41E/uLrQzWPg3deyA+3WeX2bx7M9v2buNHx//IZ9cIZFMnJvK3H5xkynV9YdasWaSnp/Pee+/x3nvv8fOf/5zs7GwefPBB1qxZQ39//9Bdn1CncCMSxL5ybBbpCdG8sq6Gn5x1rO8uNNj/oWZi/xhcAdqxGo4502eXeW37a2TGZ7IgNzz+wfuiuOiIMd9BMcuxxx7LwMAAFRUVQwFl9+7dbN26lRkz3I3gFouFk08+mb/85S9s2rSJk046ifj4eHp7e3niiScoKSkhISHBzG/Db9RQLBLEoiOtLCrK49X1NfQ7Xb67kL0C0o6CxEzfXUP2S50EiVk+bSruGejhzR1vcv7U84mwer5BofhHYWEh559/PldddRUffPABGzZs4NJLLyUvL4/zz98/XHzaaafxpz/9iaKiIhITE7FarZxyyik8//zzYdNvAwo3IkHvwhPyaens491Pmnx3EUe57tr4k8Xi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WlrKww8/zBlnnMHWrVvJzMw86PgXXniBW2+9laeffpoFCxbw6aef8u1vfxuLxcJDDz1kwncgEpyOHdhCs5HMPrIJjW3ywttnMQk4LRamdu0xu5SAlZKSAjAUcCQwWSwWJkyYMO7waWq4eeihh7jqqqu44oorAHj88cd54403ePrpp7n11lsPOv6jjz7ixBNP5Fvf+hYAkydP5uKLL6aiosKvdYsEu+y2Kla6jiayuZOCjASzy5Fxqu7YCcCUxu0mVxK4LBYLqampJCcnDw19SOCJjIz0yl0108JNX18f69at47bbbht6zGq1snDhQlatWjXicxYsWMAf//hHVq9ezbx589ixYwdvvvkml1126EXIent76e3tHfpcqV3CnrOf6MYq/mP5L5KaOvnKsVlmVyTjtKN1BxOssaTWrBvaRFNGZrVaxz3kIYHPtHDT0tKC0+kkK2v4L9asrCw++eSTEZ/zrW99i5aWFk466SQMw2BgYIDvfe97/OQnPznkdZYuXco999zj1dpFglrDRiz93TSnz6WhsdPsasQLqlurmZpkg55PYfc2mHiM2SWJmCqo4uvKlSu5//77+d3vfsf69et59dVXeeONN7jvvvsO+ZzbbruNtra2oQ+Hw+HHikUCkKMCImKw5Mxhe1OH2dWIF+xo28GUzNlgsQ5toikSzky7c5ORkUFERASNjY3DHm9sbCQ7O3vE59x5551cdtllfPe73wVg1qxZdHV1cfXVV3P77bePeKsxJiaGmJgY738DIsHKXg55xzMlO52/btqGYRiaORLE+l397GrfxUXHXARZM93htfhys8sSMZVpd26io6MpLi5mxYoVQ4+5XC5WrFjB/PnzR3xOd3f3QQFmcP0CLc4kMgqG4f7Hz1ZKYVYi3X1O6tp6zK5KxsHR4WDANcDU1KnudYt050bE3GGpJUuWsGzZMp577jm2bNnCNddcQ1dX19DsqcWLFw9rOD733HN57LHHePHFF9m5cydvv/02d955J+eee+5QyBGRw2i1Q0e9O9xkJgGwrVFDU8FsR+sOAKakTHGvOL2nGjqbTa5KxFymTgW/6KKLaG5u5q677qKhoYGioiLeeuutoSZju90+7E7NHXfcgcVi4Y477qC2tpaJEydy7rnn8vOf/9ysb0EkuDhWu/9rKyUvLo7YKCvbmzo57ZiD15WS4FDdWk1qTKp7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9vb2GpWVlUZlZaWRk5Nj3HTTTUZlZaWxbds2s76FgDLW1/OBBx4woqOjjT//+c/DpoZ2dHSY9S0ElLG+nvfff7/xz3/+06iurjY2b95s/PKXvzQiIyONZcuWmfUtBJSxvp5fpNlSBxvra3rPPfcY//jHP4zq6mpj3bp1xn//938bsbGxxqZNm8z6FoJSyIUbwzCMRx55xCgoKDCio6ONefPmGeXl5UNfO/XUU43LL7982PEvv/yycfTRRxvR0dHGcccdZ7zxxht+rjiwjeX13LlzpwEc9HHqqaf6v/AANZbXc9KkSSO+nnfffbf/Cw9QY3k9b7/9dmPatGlGbGyskZaWZsyfP9948cUXTag6cI319+eBFG5GNpbX9IYbbhg6NisryzjrrLOM9evXm1B1cLMYhmGYdddIRERExNtCqudGREREROFGREREQorCjYiIiIQUhRsREREJKQo3IiIiElIUbkRERCSkKNyIiIhISFG4ERERkZCicCMiAeG0007jhhtuGPXxn3zyCWVlZcTGxlJUVMSuXbuwWCxUVVX5rEYRCQ4htSu4iASvV199laioqFEff/fdd5OQkMDWrVtJTEyko6PDh9WJSDBRuBGRgJCenj6m46urqzn77LOZNGkSgMKNiAzRsJSIBIQDh6UmT57M/fffz3e+8x2SkpIoKCjgySefHDrWYrGwbt067r33XiwWCz/96U8POt+zzz5LamrqsMeWL1+OxWIBwDAMFi5cyBlnnMHgFnt79uwhPz+fu+66yyffo4j4h8KNiASkX/3qV5SUlFBZWcm1117LNddcw9atWwGor6/nuOOO48Ybb6S+vp6bbrppzOe3WCw899xzrFmzht/85jcAfO973yMvL0/hRiTIaVhKRALSWWedxbXXXgvALbfcwq9//WveffddjjnmGLKzs4mMjCQxMZHs7GwAWlpaxnyNvLw8nnjiCRYvXkxDQwNvvvkmlZWVREbqV6NIMNPfYBEJSLNnzx76f4vFQnZ2Nk1NTV6/zgUXXMBrr73GAw88wGOPPUZhYaHXryEi/qVhKREJSF+cOWWxWHC5XKN+vtVqHeqlGdTf33/Qcd3d3axbt46IiAi2bdvmWbEiElAUbkQkJE2cOJGOjg66urqGHhtpDZwbb7wRq9XK3//+d37zm9/wr3/9y49ViogvKNyISEgqLS0lPj6en/zkJ1RXV/PCCy/w7LPPDjvmjTfe4Omnn+b555/n9NNP58c//jGXX345e/fuNadoEfEKhRsRCUnp6en88Y9/5M0332TWrFn86U9/GjZlvLm5mSuvvJKf/vSnHH/88QDcc889ZGVl8b3vfc+kqkXEGyzGFwelRURERIKY7tyIiIhISFG4ERERkZCicCMiIiIhReFGREREQorCjYiIiIQUhRsREREJKQo3IiIiElIUbkRERCSkKNyIiIhISFG4ERERkZCicCMiIiIh5f8HtEjKl//ZNHMAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import skfuzzy as fuzz\n", + "\n", + "level[\"low\"] = fuzz.zmf(level.universe, 2, 4)\n", + "level[\"average\"] = fuzz.trapmf(level.universe, [2, 4, 6, 8])\n", + "level[\"high\"] = fuzz.smf(level.universe, 6, 8)\n", + "level.view()\n", + "\n", + "flow[\"low\"] = fuzz.zmf(flow.universe, 0.2, 0.3)\n", + "flow[\"average\"] = fuzz.trapmf(flow.universe, [0.15, 0.25, 0.35, 0.45])\n", + "flow[\"high\"] = fuzz.smf(flow.universe, 0.3, 0.4)\n", + "flow.view()\n", + "\n", + "influx[\"low\"] = fuzz.zmf(influx.universe, 0.2, 0.3)\n", + "influx[\"average\"] = fuzz.trapmf(influx.universe, [0.15, 0.25, 0.35, 0.45])\n", + "influx[\"high\"] = fuzz.smf(influx.universe, 0.3, 0.4)\n", + "influx.view()" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(
, )" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "rule1 = ctrl.Rule(level[\"low\"] & flow[\"high\"], influx[\"high\"])\n", + "rule2 = ctrl.Rule(level[\"low\"] & flow[\"average\"], influx[\"high\"])\n", + "rule3 = ctrl.Rule(level[\"low\"] & flow[\"low\"], influx[\"average\"])\n", + "rule4 = ctrl.Rule(level[\"average\"] & flow[\"high\"], influx[\"high\"])\n", + "rule5 = ctrl.Rule(level[\"average\"] & flow[\"average\"], influx[\"average\"])\n", + "rule6 = ctrl.Rule(level[\"average\"] & flow[\"low\"], influx[\"average\"])\n", + "rule7 = ctrl.Rule(level[\"high\"] & flow[\"high\"], influx[\"average\"])\n", + "rule8 = ctrl.Rule(level[\"high\"] & flow[\"average\"], influx[\"low\"])\n", + "rule9 = ctrl.Rule(level[\"high\"] & flow[\"low\"], influx[\"low\"])\n", + "\n", + "rule1.view()" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "influx_ctrl = ctrl.ControlSystem(\n", + " [\n", + " rule1,\n", + " rule2,\n", + " rule3,\n", + " rule4,\n", + " rule5,\n", + " rule6,\n", + " rule7,\n", + " rule8,\n", + " rule9,\n", + " ]\n", + ")\n", + "\n", + "influxes = ctrl.ControlSystemSimulation(influx_ctrl)" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "=============\n", + " Antecedents \n", + "=============\n", + "Antecedent: level = 2.5\n", + " - low : 0.875\n", + " - average : 0.25\n", + " - high : 0.0\n", + "Antecedent: flow = 0.4\n", + " - low : 0.0\n", + " - average : 0.4999999999999997\n", + " - high : 1.0\n", + "\n", + "=======\n", + " Rules \n", + "=======\n", + "RULE #0:\n", + " IF level[low] AND flow[high] THEN influx[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[low] : 0.875\n", + " - flow[high] : 1.0\n", + " level[low] AND flow[high] = 0.875\n", + " Activation (THEN-clause):\n", + " influx[high] : 0.875\n", + "\n", + "RULE #1:\n", + " IF level[low] AND flow[average] THEN influx[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[low] : 0.875\n", + " - flow[average] : 0.4999999999999997\n", + " level[low] AND flow[average] = 0.4999999999999997\n", + " Activation (THEN-clause):\n", + " influx[high] : 0.4999999999999997\n", + "\n", + "RULE #2:\n", + " IF level[low] AND flow[low] THEN influx[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[low] : 0.875\n", + " - flow[low] : 0.0\n", + " level[low] AND flow[low] = 0.0\n", + " Activation (THEN-clause):\n", + " influx[average] : 0.0\n", + "\n", + "RULE #3:\n", + " IF level[average] AND flow[high] THEN influx[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[average] : 0.25\n", + " - flow[high] : 1.0\n", + " level[average] AND flow[high] = 0.25\n", + " Activation (THEN-clause):\n", + " influx[high] : 0.25\n", + "\n", + "RULE #4:\n", + " IF level[average] AND flow[average] THEN influx[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[average] : 0.25\n", + " - flow[average] : 0.4999999999999997\n", + " level[average] AND flow[average] = 0.25\n", + " Activation (THEN-clause):\n", + " influx[average] : 0.25\n", + "\n", + "RULE #5:\n", + " IF level[average] AND flow[low] THEN influx[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[average] : 0.25\n", + " - flow[low] : 0.0\n", + " level[average] AND flow[low] = 0.0\n", + " Activation (THEN-clause):\n", + " influx[average] : 0.0\n", + "\n", + "RULE #6:\n", + " IF level[high] AND flow[high] THEN influx[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[high] : 0.0\n", + " - flow[high] : 1.0\n", + " level[high] AND flow[high] = 0.0\n", + " Activation (THEN-clause):\n", + " influx[average] : 0.0\n", + "\n", + "RULE #7:\n", + " IF level[high] AND flow[average] THEN influx[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[high] : 0.0\n", + " - flow[average] : 0.4999999999999997\n", + " level[high] AND flow[average] = 0.0\n", + " Activation (THEN-clause):\n", + " influx[low] : 0.0\n", + "\n", + "RULE #8:\n", + " IF level[high] AND flow[low] THEN influx[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - level[high] : 0.0\n", + " - flow[low] : 0.0\n", + " level[high] AND flow[low] = 0.0\n", + " Activation (THEN-clause):\n", + " influx[low] : 0.0\n", + "\n", + "\n", + "==============================\n", + " Intermediaries and Conquests \n", + "==============================\n", + "Consequent: influx = 0.4315251220586045\n", + " low:\n", + " Accumulate using accumulation_max : 0.0\n", + " average:\n", + " Accumulate using accumulation_max : 0.25\n", + " high:\n", + " Accumulate using accumulation_max : 0.875\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "np.float64(0.4315251220586045)" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "influxes.input[\"level\"] = 2.5\n", + "influxes.input[\"flow\"] = 0.4\n", + "influxes.compute()\n", + "influxes.print_state()\n", + "influxes.output[\"influx\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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1q5di82bN7PAcAyMRiN27twJj8eDTZs2YfHixRg/fjzmzp0rdWhxpbOzE9dddx1WrVoFi8UidTiyMWvWrCGNoGfPno3TTz8dzz77LB599FEJI4svskpuLBYLlEolGhsbhzze2NiIrKysYZ+TlZU1quMTSSj3k45vLPfz8ccfx2OPPYb33nsPU6dOjWSYcSPU+6lQKFBYWAgAKC4uxr59+7B8+fKET25Gez+rqqpw8OBBXHrppYOPBQIBAIBKpcL+/fsxYcKEyAYd48LxGqpWqzF9+nRUVlZGIkTZktW0lEajQUlJCTZt2jT4WCAQwKZNm4ZkwkebNWvWkOMB4N133z3u8YkklPtJxxfq/fzd736HRx99FBs3bkRpaWk0Qo0L4fr+DAQC8Hq9kQgxroz2fk6cOBG7d+/Gzp07B98uu+wyfOMb38DOnTths9miGX5MCsf3qN/vx+7du5GdnR2pMOVJ6ormcFu7dq2o1WrFl156Sdy7d6940003iSaTaXAp3XXXXSfed999g8d/8sknokqlEh9//HFx37594tKlS7kU/CijvZ9er1esqKgQKyoqxOzsbPHuu+8WKyoqxAMHDkj1JcSU0d7Pxx57TNRoNOI///nPIUtDOzs7pfoSYspo7+eyZcvE//znP2JVVZW4d+9e8fHHHxdVKpW4atUqqb6EmDLa+/l1XC11rNHe04cfflh85513xKqqKnH79u3iD37wA1Gn04l79uyR6kuIS7JLbkRRFJ9++mkxLy9P1Gg04owZM8SysrLBz82ZM0dctGjRkONfe+018dRTTxU1Go14xhlniOvXr49yxLFtNPezpqZGBHDM25w5c6IfeIwazf3Mz88f9n4uXbo0+oHHqNHczwceeEAsLCwUdTqdaDabxVmzZolr166VIOrYNdrXz6MxuRneaO7pnXfeOXhsZmameNFFF4k7duyQIOr4JoiiKEo1akREREQUbrKquSEiIiJickNERESywuSGiIiIZIXJDREREckKkxsiIiKSFSY3REREJCtMboiIiEhWmNwQERGRrDC5IaKYMHfuXNx5550jPv7LL7/E2WefDZ1Oh+LiYhw8eBCCIGDnzp0Ri5GI4oOsuoITUfx64403oFarR3z80qVLkZSUhP379yM5ORmdnZ0RjI6I4gmTGyKKCWlpaaM6vqqqChdffDHy8/MBgMkNEQ3itBQRxYSjp6UKCgqwbNky/PjHP4bRaEReXh6ee+65wWMFQcD27dvxyCOPQBAE/OpXvzrmfC+99BJMJtOQx9atWwdBEAAAoihi3rx5mD9/PgZa7LW0tCA3NxdLliyJyNdIRNHB5IaIYtITTzyB0tJSVFRU4JZbbsHNN9+M/fv3AwDq6+txxhln4K677kJ9fT3uvvvuUZ9fEAT89a9/xWeffYY//elPAICf/vSnyMnJYXJDFOc4LUVEMemiiy7CLbfcAgC499578Yc//AHvv/8+TjvtNGRlZUGlUiE5ORlZWVkAAJfLNepr5OTk4Nlnn8XChQvR0NCADRs2oKKiAioVXxqJ4hl/gokoJk2dOnXw34IgICsrC01NTWG/zpVXXok333wTjz32GJ555hkUFRWF/RpEFF2cliKimPT1lVOCICAQCIz4+QqFYrCWZoDP5zvmuO7ubmzfvh1KpRIHDhwILVgiiilMbohIlqxWKzo7O9HV1TX42HB74Nx1111QKBT497//jT/96U/473//G8UoiSgSmNwQkSzNnDkTBoMBv/zlL1FVVYU1a9bgpZdeGnLM+vXrsXr1arz88su44IIL8Itf/AKLFi1Ca2urNEETUVgwuSEiWUpLS8M//vEPbNiwAVOmTMErr7wyZMl4c3MzbrjhBvzqV7/CmWeeCQB4+OGHkZmZiZ/+9KcSRU1E4SCIX5+UJiIiIopjHLkhIiIiWWFyQ0RERLLC5IaIiIhkhckNERERyQqTGyIiIpIVJjdEREQkK0xuiIiISFaY3BAREZGsMLkhIiIiWWFyQ0RERLLC5IaIiIhk5f8DX0r+F0OL8ekAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "influx.view(sim=influxes)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..f1237c4 --- /dev/null +++ b/poetry.lock @@ -0,0 +1,2955 @@ +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. + +[[package]] +name = "anyio" +version = "4.6.2.post1" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.9" +files = [ + {file = "anyio-4.6.2.post1-py3-none-any.whl", hash = "sha256:6d170c36fba3bdd840c73d3868c1e777e33676a69c3a72cf0a0d5d6d8009b61d"}, + {file = "anyio-4.6.2.post1.tar.gz", hash = "sha256:4c8bc31ccdb51c7f7bd251f51c609e038d63e34219b44aa86e47576389880b4c"}, +] + +[package.dependencies] +idna = ">=2.8" +sniffio = ">=1.1" + +[package.extras] +doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] +trio = ["trio (>=0.26.1)"] + +[[package]] +name = "appnope" +version = "0.1.4" +description = "Disable App Nap on macOS >= 10.9" +optional = false +python-versions = ">=3.6" +files = [ + {file = "appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c"}, + {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, +] + +[[package]] +name = "argon2-cffi" +version = "23.1.0" +description = "Argon2 for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, + {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, +] + +[package.dependencies] +argon2-cffi-bindings = "*" + +[package.extras] +dev = ["argon2-cffi[tests,typing]", "tox (>4)"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-copybutton", "sphinx-notfound-page"] +tests = ["hypothesis", "pytest"] +typing = ["mypy"] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +description = "Low-level CFFI bindings for Argon2" +optional = false +python-versions = ">=3.6" +files = [ + {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"}, + {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"}, +] + +[package.dependencies] +cffi = ">=1.0.1" + +[package.extras] +dev = ["cogapp", "pre-commit", "pytest", "wheel"] +tests = ["pytest"] + +[[package]] +name = "arrow" +version = "1.3.0" +description = "Better dates & times for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, + {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, +] + +[package.dependencies] +python-dateutil = ">=2.7.0" +types-python-dateutil = ">=2.8.10" + +[package.extras] +doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] + +[[package]] +name = "asttokens" +version = "2.4.1" +description = "Annotate AST trees with source code positions" +optional = false +python-versions = "*" +files = [ + {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, + {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, +] + +[package.dependencies] +six = ">=1.12.0" + +[package.extras] +astroid = ["astroid (>=1,<2)", "astroid (>=2,<4)"] +test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] + +[[package]] +name = "async-lru" +version = "2.0.4" +description = "Simple LRU cache for asyncio" +optional = false +python-versions = ">=3.8" +files = [ + {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, + {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, +] + +[[package]] +name = "attrs" +version = "24.2.0" +description = "Classes Without Boilerplate" +optional = false +python-versions = ">=3.7" +files = [ + {file = "attrs-24.2.0-py3-none-any.whl", hash = "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"}, + {file = "attrs-24.2.0.tar.gz", hash = "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346"}, +] + +[package.extras] +benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] + +[[package]] +name = "babel" +version = "2.16.0" +description = "Internationalization utilities" +optional = false +python-versions = ">=3.8" +files = [ + {file = "babel-2.16.0-py3-none-any.whl", hash = "sha256:368b5b98b37c06b7daf6696391c3240c938b37767d4584413e8438c5c435fa8b"}, + {file = "babel-2.16.0.tar.gz", hash = "sha256:d1f3554ca26605fe173f3de0c65f750f5a42f924499bf134de6423582298e316"}, +] + +[package.extras] +dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] + +[[package]] +name = "beautifulsoup4" +version = "4.12.3" +description = "Screen-scraping library" +optional = false +python-versions = ">=3.6.0" +files = [ + {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"}, + {file = "beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051"}, +] + +[package.dependencies] +soupsieve = ">1.2" + +[package.extras] +cchardet = ["cchardet"] +chardet = ["chardet"] +charset-normalizer = ["charset-normalizer"] +html5lib = ["html5lib"] +lxml = ["lxml"] + +[[package]] +name = "bleach" +version = "6.1.0" +description = "An easy safelist-based HTML-sanitizing tool." +optional = false +python-versions = ">=3.8" +files = [ + {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, + {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, +] + +[package.dependencies] +six = ">=1.9.0" +webencodings = "*" + +[package.extras] +css = ["tinycss2 (>=1.1.0,<1.3)"] + +[[package]] +name = "certifi" +version = "2024.8.30" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2024.8.30-py3-none-any.whl", hash = "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8"}, + {file = "certifi-2024.8.30.tar.gz", hash = "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9"}, +] + +[[package]] +name = "cffi" +version = "1.17.1" +description = "Foreign Function Interface for Python calling C code." +optional = false +python-versions = ">=3.8" +files = [ + {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be"}, + {file = "cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c"}, + {file = "cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b"}, + {file = "cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655"}, + {file = "cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8"}, + {file = "cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65"}, + {file = "cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9"}, + {file = "cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d"}, + {file = "cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a"}, + {file = "cffi-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1"}, + {file = "cffi-1.17.1-cp38-cp38-win32.whl", hash = "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8"}, + {file = "cffi-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e"}, + {file = "cffi-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7"}, + {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"}, + {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"}, +] + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "charset-normalizer" +version = "3.4.0" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win32.whl", hash = "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win32.whl", hash = "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win32.whl", hash = "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win32.whl", hash = "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win32.whl", hash = "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win32.whl", hash = "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win32.whl", hash = "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca"}, + {file = "charset_normalizer-3.4.0-py3-none-any.whl", hash = "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079"}, + {file = "charset_normalizer-3.4.0.tar.gz", hash = "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e"}, +] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "comm" +version = "0.2.2" +description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." +optional = false +python-versions = ">=3.8" +files = [ + {file = "comm-0.2.2-py3-none-any.whl", hash = "sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3"}, + {file = "comm-0.2.2.tar.gz", hash = "sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e"}, +] + +[package.dependencies] +traitlets = ">=4" + +[package.extras] +test = ["pytest"] + +[[package]] +name = "contourpy" +version = "1.3.0" +description = "Python library for calculating contours of 2D quadrilateral grids" +optional = false +python-versions = ">=3.9" +files = [ + {file = "contourpy-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:880ea32e5c774634f9fcd46504bf9f080a41ad855f4fef54f5380f5133d343c7"}, + {file = "contourpy-1.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:76c905ef940a4474a6289c71d53122a4f77766eef23c03cd57016ce19d0f7b42"}, + {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:92f8557cbb07415a4d6fa191f20fd9d2d9eb9c0b61d1b2f52a8926e43c6e9af7"}, + {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:36f965570cff02b874773c49bfe85562b47030805d7d8360748f3eca570f4cab"}, + {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cacd81e2d4b6f89c9f8a5b69b86490152ff39afc58a95af002a398273e5ce589"}, + {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:69375194457ad0fad3a839b9e29aa0b0ed53bb54db1bfb6c3ae43d111c31ce41"}, + {file = "contourpy-1.3.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:7a52040312b1a858b5e31ef28c2e865376a386c60c0e248370bbea2d3f3b760d"}, + {file = "contourpy-1.3.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3faeb2998e4fcb256542e8a926d08da08977f7f5e62cf733f3c211c2a5586223"}, + {file = "contourpy-1.3.0-cp310-cp310-win32.whl", hash = "sha256:36e0cff201bcb17a0a8ecc7f454fe078437fa6bda730e695a92f2d9932bd507f"}, + {file = "contourpy-1.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:87ddffef1dbe5e669b5c2440b643d3fdd8622a348fe1983fad7a0f0ccb1cd67b"}, + {file = "contourpy-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0fa4c02abe6c446ba70d96ece336e621efa4aecae43eaa9b030ae5fb92b309ad"}, + {file = "contourpy-1.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:834e0cfe17ba12f79963861e0f908556b2cedd52e1f75e6578801febcc6a9f49"}, + {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbc4c3217eee163fa3984fd1567632b48d6dfd29216da3ded3d7b844a8014a66"}, + {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4865cd1d419e0c7a7bf6de1777b185eebdc51470800a9f42b9e9decf17762081"}, + {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:303c252947ab4b14c08afeb52375b26781ccd6a5ccd81abcdfc1fafd14cf93c1"}, + {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:637f674226be46f6ba372fd29d9523dd977a291f66ab2a74fbeb5530bb3f445d"}, + {file = "contourpy-1.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:76a896b2f195b57db25d6b44e7e03f221d32fe318d03ede41f8b4d9ba1bff53c"}, + {file = "contourpy-1.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e1fd23e9d01591bab45546c089ae89d926917a66dceb3abcf01f6105d927e2cb"}, + {file = "contourpy-1.3.0-cp311-cp311-win32.whl", hash = "sha256:d402880b84df3bec6eab53cd0cf802cae6a2ef9537e70cf75e91618a3801c20c"}, + {file = "contourpy-1.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:6cb6cc968059db9c62cb35fbf70248f40994dfcd7aa10444bbf8b3faeb7c2d67"}, + {file = "contourpy-1.3.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:570ef7cf892f0afbe5b2ee410c507ce12e15a5fa91017a0009f79f7d93a1268f"}, + {file = "contourpy-1.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:da84c537cb8b97d153e9fb208c221c45605f73147bd4cadd23bdae915042aad6"}, + {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0be4d8425bfa755e0fd76ee1e019636ccc7c29f77a7c86b4328a9eb6a26d0639"}, + {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c0da700bf58f6e0b65312d0a5e695179a71d0163957fa381bb3c1f72972537c"}, + {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eb8b141bb00fa977d9122636b16aa67d37fd40a3d8b52dd837e536d64b9a4d06"}, + {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3634b5385c6716c258d0419c46d05c8aa7dc8cb70326c9a4fb66b69ad2b52e09"}, + {file = "contourpy-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0dce35502151b6bd35027ac39ba6e5a44be13a68f55735c3612c568cac3805fd"}, + {file = "contourpy-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aea348f053c645100612b333adc5983d87be69acdc6d77d3169c090d3b01dc35"}, + {file = "contourpy-1.3.0-cp312-cp312-win32.whl", hash = "sha256:90f73a5116ad1ba7174341ef3ea5c3150ddf20b024b98fb0c3b29034752c8aeb"}, + {file = "contourpy-1.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:b11b39aea6be6764f84360fce6c82211a9db32a7c7de8fa6dd5397cf1d079c3b"}, + {file = "contourpy-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3e1c7fa44aaae40a2247e2e8e0627f4bea3dd257014764aa644f319a5f8600e3"}, + {file = "contourpy-1.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:364174c2a76057feef647c802652f00953b575723062560498dc7930fc9b1cb7"}, + {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32b238b3b3b649e09ce9aaf51f0c261d38644bdfa35cbaf7b263457850957a84"}, + {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d51fca85f9f7ad0b65b4b9fe800406d0d77017d7270d31ec3fb1cc07358fdea0"}, + {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:732896af21716b29ab3e988d4ce14bc5133733b85956316fb0c56355f398099b"}, + {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d73f659398a0904e125280836ae6f88ba9b178b2fed6884f3b1f95b989d2c8da"}, + {file = "contourpy-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c6c7c2408b7048082932cf4e641fa3b8ca848259212f51c8c59c45aa7ac18f14"}, + {file = "contourpy-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f317576606de89da6b7e0861cf6061f6146ead3528acabff9236458a6ba467f8"}, + {file = "contourpy-1.3.0-cp313-cp313-win32.whl", hash = "sha256:31cd3a85dbdf1fc002280c65caa7e2b5f65e4a973fcdf70dd2fdcb9868069294"}, + {file = "contourpy-1.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:4553c421929ec95fb07b3aaca0fae668b2eb5a5203d1217ca7c34c063c53d087"}, + {file = "contourpy-1.3.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:345af746d7766821d05d72cb8f3845dfd08dd137101a2cb9b24de277d716def8"}, + {file = "contourpy-1.3.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3bb3808858a9dc68f6f03d319acd5f1b8a337e6cdda197f02f4b8ff67ad2057b"}, + {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:420d39daa61aab1221567b42eecb01112908b2cab7f1b4106a52caaec8d36973"}, + {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4d63ee447261e963af02642ffcb864e5a2ee4cbfd78080657a9880b8b1868e18"}, + {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:167d6c890815e1dac9536dca00828b445d5d0df4d6a8c6adb4a7ec3166812fa8"}, + {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:710a26b3dc80c0e4febf04555de66f5fd17e9cf7170a7b08000601a10570bda6"}, + {file = "contourpy-1.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:75ee7cb1a14c617f34a51d11fa7524173e56551646828353c4af859c56b766e2"}, + {file = "contourpy-1.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:33c92cdae89ec5135d036e7218e69b0bb2851206077251f04a6c4e0e21f03927"}, + {file = "contourpy-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a11077e395f67ffc2c44ec2418cfebed032cd6da3022a94fc227b6faf8e2acb8"}, + {file = "contourpy-1.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e8134301d7e204c88ed7ab50028ba06c683000040ede1d617298611f9dc6240c"}, + {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e12968fdfd5bb45ffdf6192a590bd8ddd3ba9e58360b29683c6bb71a7b41edca"}, + {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fd2a0fc506eccaaa7595b7e1418951f213cf8255be2600f1ea1b61e46a60c55f"}, + {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4cfb5c62ce023dfc410d6059c936dcf96442ba40814aefbfa575425a3a7f19dc"}, + {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68a32389b06b82c2fdd68276148d7b9275b5f5cf13e5417e4252f6d1a34f72a2"}, + {file = "contourpy-1.3.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:94e848a6b83da10898cbf1311a815f770acc9b6a3f2d646f330d57eb4e87592e"}, + {file = "contourpy-1.3.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:d78ab28a03c854a873787a0a42254a0ccb3cb133c672f645c9f9c8f3ae9d0800"}, + {file = "contourpy-1.3.0-cp39-cp39-win32.whl", hash = "sha256:81cb5ed4952aae6014bc9d0421dec7c5835c9c8c31cdf51910b708f548cf58e5"}, + {file = "contourpy-1.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:14e262f67bd7e6eb6880bc564dcda30b15e351a594657e55b7eec94b6ef72843"}, + {file = "contourpy-1.3.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:fe41b41505a5a33aeaed2a613dccaeaa74e0e3ead6dd6fd3a118fb471644fd6c"}, + {file = "contourpy-1.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eca7e17a65f72a5133bdbec9ecf22401c62bcf4821361ef7811faee695799779"}, + {file = "contourpy-1.3.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:1ec4dc6bf570f5b22ed0d7efba0dfa9c5b9e0431aeea7581aa217542d9e809a4"}, + {file = "contourpy-1.3.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:00ccd0dbaad6d804ab259820fa7cb0b8036bda0686ef844d24125d8287178ce0"}, + {file = "contourpy-1.3.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ca947601224119117f7c19c9cdf6b3ab54c5726ef1d906aa4a69dfb6dd58102"}, + {file = "contourpy-1.3.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6ec93afeb848a0845a18989da3beca3eec2c0f852322efe21af1931147d12cb"}, + {file = "contourpy-1.3.0.tar.gz", hash = "sha256:7ffa0db17717a8ffb127efd0c95a4362d996b892c2904db72428d5b52e1938a4"}, +] + +[package.dependencies] +numpy = ">=1.23" + +[package.extras] +bokeh = ["bokeh", "selenium"] +docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] +mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.11.1)", "types-Pillow"] +test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] +test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist", "wurlitzer"] + +[[package]] +name = "cycler" +version = "0.12.1" +description = "Composable style cycles" +optional = false +python-versions = ">=3.8" +files = [ + {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, + {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, +] + +[package.extras] +docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] +tests = ["pytest", "pytest-cov", "pytest-xdist"] + +[[package]] +name = "debugpy" +version = "1.8.7" +description = "An implementation of the Debug Adapter Protocol for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "debugpy-1.8.7-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:95fe04a573b8b22896c404365e03f4eda0ce0ba135b7667a1e57bd079793b96b"}, + {file = "debugpy-1.8.7-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:628a11f4b295ffb4141d8242a9bb52b77ad4a63a2ad19217a93be0f77f2c28c9"}, + {file = "debugpy-1.8.7-cp310-cp310-win32.whl", hash = "sha256:85ce9c1d0eebf622f86cc68618ad64bf66c4fc3197d88f74bb695a416837dd55"}, + {file = "debugpy-1.8.7-cp310-cp310-win_amd64.whl", hash = "sha256:29e1571c276d643757ea126d014abda081eb5ea4c851628b33de0c2b6245b037"}, + {file = "debugpy-1.8.7-cp311-cp311-macosx_14_0_universal2.whl", hash = "sha256:caf528ff9e7308b74a1749c183d6808ffbedbb9fb6af78b033c28974d9b8831f"}, + {file = "debugpy-1.8.7-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cba1d078cf2e1e0b8402e6bda528bf8fda7ccd158c3dba6c012b7897747c41a0"}, + {file = "debugpy-1.8.7-cp311-cp311-win32.whl", hash = "sha256:171899588bcd412151e593bd40d9907133a7622cd6ecdbdb75f89d1551df13c2"}, + {file = "debugpy-1.8.7-cp311-cp311-win_amd64.whl", hash = "sha256:6e1c4ffb0c79f66e89dfd97944f335880f0d50ad29525dc792785384923e2211"}, + {file = "debugpy-1.8.7-cp312-cp312-macosx_14_0_universal2.whl", hash = "sha256:4d27d842311353ede0ad572600c62e4bcd74f458ee01ab0dd3a1a4457e7e3706"}, + {file = "debugpy-1.8.7-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:703c1fd62ae0356e194f3e7b7a92acd931f71fe81c4b3be2c17a7b8a4b546ec2"}, + {file = "debugpy-1.8.7-cp312-cp312-win32.whl", hash = "sha256:2f729228430ef191c1e4df72a75ac94e9bf77413ce5f3f900018712c9da0aaca"}, + {file = "debugpy-1.8.7-cp312-cp312-win_amd64.whl", hash = "sha256:45c30aaefb3e1975e8a0258f5bbd26cd40cde9bfe71e9e5a7ac82e79bad64e39"}, + {file = "debugpy-1.8.7-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:d050a1ec7e925f514f0f6594a1e522580317da31fbda1af71d1530d6ea1f2b40"}, + {file = "debugpy-1.8.7-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2f4349a28e3228a42958f8ddaa6333d6f8282d5edaea456070e48609c5983b7"}, + {file = "debugpy-1.8.7-cp313-cp313-win32.whl", hash = "sha256:11ad72eb9ddb436afb8337891a986302e14944f0f755fd94e90d0d71e9100bba"}, + {file = "debugpy-1.8.7-cp313-cp313-win_amd64.whl", hash = "sha256:2efb84d6789352d7950b03d7f866e6d180284bc02c7e12cb37b489b7083d81aa"}, + {file = "debugpy-1.8.7-cp38-cp38-macosx_14_0_x86_64.whl", hash = "sha256:4b908291a1d051ef3331484de8e959ef3e66f12b5e610c203b5b75d2725613a7"}, + {file = "debugpy-1.8.7-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da8df5b89a41f1fd31503b179d0a84a5fdb752dddd5b5388dbd1ae23cda31ce9"}, + {file = "debugpy-1.8.7-cp38-cp38-win32.whl", hash = "sha256:b12515e04720e9e5c2216cc7086d0edadf25d7ab7e3564ec8b4521cf111b4f8c"}, + {file = "debugpy-1.8.7-cp38-cp38-win_amd64.whl", hash = "sha256:93176e7672551cb5281577cdb62c63aadc87ec036f0c6a486f0ded337c504596"}, + {file = "debugpy-1.8.7-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:90d93e4f2db442f8222dec5ec55ccfc8005821028982f1968ebf551d32b28907"}, + {file = "debugpy-1.8.7-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b6db2a370e2700557a976eaadb16243ec9c91bd46f1b3bb15376d7aaa7632c81"}, + {file = "debugpy-1.8.7-cp39-cp39-win32.whl", hash = "sha256:a6cf2510740e0c0b4a40330640e4b454f928c7b99b0c9dbf48b11efba08a8cda"}, + {file = "debugpy-1.8.7-cp39-cp39-win_amd64.whl", hash = "sha256:6a9d9d6d31846d8e34f52987ee0f1a904c7baa4912bf4843ab39dadf9b8f3e0d"}, + {file = "debugpy-1.8.7-py2.py3-none-any.whl", hash = "sha256:57b00de1c8d2c84a61b90880f7e5b6deaf4c312ecbde3a0e8912f2a56c4ac9ae"}, + {file = "debugpy-1.8.7.zip", hash = "sha256:18b8f731ed3e2e1df8e9cdaa23fb1fc9c24e570cd0081625308ec51c82efe42e"}, +] + +[[package]] +name = "decorator" +version = "5.1.1" +description = "Decorators for Humans" +optional = false +python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +description = "XML bomb protection for Python stdlib modules" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, + {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, +] + +[[package]] +name = "executing" +version = "2.1.0" +description = "Get the currently executing AST node of a frame, and other information" +optional = false +python-versions = ">=3.8" +files = [ + {file = "executing-2.1.0-py2.py3-none-any.whl", hash = "sha256:8d63781349375b5ebccc3142f4b30350c0cd9c79f921cde38be2be4637e98eaf"}, + {file = "executing-2.1.0.tar.gz", hash = "sha256:8ea27ddd260da8150fa5a708269c4a10e76161e2496ec3e587da9e3c0fe4b9ab"}, +] + +[package.extras] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] + +[[package]] +name = "fastjsonschema" +version = "2.20.0" +description = "Fastest Python implementation of JSON schema" +optional = false +python-versions = "*" +files = [ + {file = "fastjsonschema-2.20.0-py3-none-any.whl", hash = "sha256:5875f0b0fa7a0043a91e93a9b8f793bcbbba9691e7fd83dca95c28ba26d21f0a"}, + {file = "fastjsonschema-2.20.0.tar.gz", hash = "sha256:3d48fc5300ee96f5d116f10fe6f28d938e6008f59a6a025c2649475b87f76a23"}, +] + +[package.extras] +devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] + +[[package]] +name = "fonttools" +version = "4.54.1" +description = "Tools to manipulate font files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fonttools-4.54.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7ed7ee041ff7b34cc62f07545e55e1468808691dddfd315d51dd82a6b37ddef2"}, + {file = "fonttools-4.54.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:41bb0b250c8132b2fcac148e2e9198e62ff06f3cc472065dff839327945c5882"}, + {file = "fonttools-4.54.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7965af9b67dd546e52afcf2e38641b5be956d68c425bef2158e95af11d229f10"}, + {file = "fonttools-4.54.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:278913a168f90d53378c20c23b80f4e599dca62fbffae4cc620c8eed476b723e"}, + {file = "fonttools-4.54.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0e88e3018ac809b9662615072dcd6b84dca4c2d991c6d66e1970a112503bba7e"}, + {file = "fonttools-4.54.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:4aa4817f0031206e637d1e685251ac61be64d1adef111060df84fdcbc6ab6c44"}, + {file = "fonttools-4.54.1-cp310-cp310-win32.whl", hash = "sha256:7e3b7d44e18c085fd8c16dcc6f1ad6c61b71ff463636fcb13df7b1b818bd0c02"}, + {file = "fonttools-4.54.1-cp310-cp310-win_amd64.whl", hash = "sha256:dd9cc95b8d6e27d01e1e1f1fae8559ef3c02c76317da650a19047f249acd519d"}, + {file = "fonttools-4.54.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5419771b64248484299fa77689d4f3aeed643ea6630b2ea750eeab219588ba20"}, + {file = "fonttools-4.54.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:301540e89cf4ce89d462eb23a89464fef50915255ece765d10eee8b2bf9d75b2"}, + {file = "fonttools-4.54.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76ae5091547e74e7efecc3cbf8e75200bc92daaeb88e5433c5e3e95ea8ce5aa7"}, + {file = "fonttools-4.54.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82834962b3d7c5ca98cb56001c33cf20eb110ecf442725dc5fdf36d16ed1ab07"}, + {file = "fonttools-4.54.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d26732ae002cc3d2ecab04897bb02ae3f11f06dd7575d1df46acd2f7c012a8d8"}, + {file = "fonttools-4.54.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:58974b4987b2a71ee08ade1e7f47f410c367cdfc5a94fabd599c88165f56213a"}, + {file = "fonttools-4.54.1-cp311-cp311-win32.whl", hash = "sha256:ab774fa225238986218a463f3fe151e04d8c25d7de09df7f0f5fce27b1243dbc"}, + {file = "fonttools-4.54.1-cp311-cp311-win_amd64.whl", hash = "sha256:07e005dc454eee1cc60105d6a29593459a06321c21897f769a281ff2d08939f6"}, + {file = "fonttools-4.54.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:54471032f7cb5fca694b5f1a0aaeba4af6e10ae989df408e0216f7fd6cdc405d"}, + {file = "fonttools-4.54.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8fa92cb248e573daab8d032919623cc309c005086d743afb014c836636166f08"}, + {file = "fonttools-4.54.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a911591200114969befa7f2cb74ac148bce5a91df5645443371aba6d222e263"}, + {file = "fonttools-4.54.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93d458c8a6a354dc8b48fc78d66d2a8a90b941f7fec30e94c7ad9982b1fa6bab"}, + {file = "fonttools-4.54.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5eb2474a7c5be8a5331146758debb2669bf5635c021aee00fd7c353558fc659d"}, + {file = "fonttools-4.54.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c9c563351ddc230725c4bdf7d9e1e92cbe6ae8553942bd1fb2b2ff0884e8b714"}, + {file = "fonttools-4.54.1-cp312-cp312-win32.whl", hash = "sha256:fdb062893fd6d47b527d39346e0c5578b7957dcea6d6a3b6794569370013d9ac"}, + {file = "fonttools-4.54.1-cp312-cp312-win_amd64.whl", hash = "sha256:e4564cf40cebcb53f3dc825e85910bf54835e8a8b6880d59e5159f0f325e637e"}, + {file = "fonttools-4.54.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6e37561751b017cf5c40fce0d90fd9e8274716de327ec4ffb0df957160be3bff"}, + {file = "fonttools-4.54.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:357cacb988a18aace66e5e55fe1247f2ee706e01debc4b1a20d77400354cddeb"}, + {file = "fonttools-4.54.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e953cc0bddc2beaf3a3c3b5dd9ab7554677da72dfaf46951e193c9653e515a"}, + {file = "fonttools-4.54.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:58d29b9a294573d8319f16f2f79e42428ba9b6480442fa1836e4eb89c4d9d61c"}, + {file = "fonttools-4.54.1-cp313-cp313-win32.whl", hash = "sha256:9ef1b167e22709b46bf8168368b7b5d3efeaaa746c6d39661c1b4405b6352e58"}, + {file = "fonttools-4.54.1-cp313-cp313-win_amd64.whl", hash = "sha256:262705b1663f18c04250bd1242b0515d3bbae177bee7752be67c979b7d47f43d"}, + {file = "fonttools-4.54.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ed2f80ca07025551636c555dec2b755dd005e2ea8fbeb99fc5cdff319b70b23b"}, + {file = "fonttools-4.54.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9dc080e5a1c3b2656caff2ac2633d009b3a9ff7b5e93d0452f40cd76d3da3b3c"}, + {file = "fonttools-4.54.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d152d1be65652fc65e695e5619e0aa0982295a95a9b29b52b85775243c06556"}, + {file = "fonttools-4.54.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8583e563df41fdecef31b793b4dd3af8a9caa03397be648945ad32717a92885b"}, + {file = "fonttools-4.54.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:0d1d353ef198c422515a3e974a1e8d5b304cd54a4c2eebcae708e37cd9eeffb1"}, + {file = "fonttools-4.54.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:fda582236fee135d4daeca056c8c88ec5f6f6d88a004a79b84a02547c8f57386"}, + {file = "fonttools-4.54.1-cp38-cp38-win32.whl", hash = "sha256:e7d82b9e56716ed32574ee106cabca80992e6bbdcf25a88d97d21f73a0aae664"}, + {file = "fonttools-4.54.1-cp38-cp38-win_amd64.whl", hash = "sha256:ada215fd079e23e060157aab12eba0d66704316547f334eee9ff26f8c0d7b8ab"}, + {file = "fonttools-4.54.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f5b8a096e649768c2f4233f947cf9737f8dbf8728b90e2771e2497c6e3d21d13"}, + {file = "fonttools-4.54.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4e10d2e0a12e18f4e2dd031e1bf7c3d7017be5c8dbe524d07706179f355c5dac"}, + {file = "fonttools-4.54.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31c32d7d4b0958600eac75eaf524b7b7cb68d3a8c196635252b7a2c30d80e986"}, + {file = "fonttools-4.54.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c39287f5c8f4a0c5a55daf9eaf9ccd223ea59eed3f6d467133cc727d7b943a55"}, + {file = "fonttools-4.54.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:a7a310c6e0471602fe3bf8efaf193d396ea561486aeaa7adc1f132e02d30c4b9"}, + {file = "fonttools-4.54.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:d3b659d1029946f4ff9b6183984578041b520ce0f8fb7078bb37ec7445806b33"}, + {file = "fonttools-4.54.1-cp39-cp39-win32.whl", hash = "sha256:e96bc94c8cda58f577277d4a71f51c8e2129b8b36fd05adece6320dd3d57de8a"}, + {file = "fonttools-4.54.1-cp39-cp39-win_amd64.whl", hash = "sha256:e8a4b261c1ef91e7188a30571be6ad98d1c6d9fa2427244c545e2fa0a2494dd7"}, + {file = "fonttools-4.54.1-py3-none-any.whl", hash = "sha256:37cddd62d83dc4f72f7c3f3c2bcf2697e89a30efb152079896544a93907733bd"}, + {file = "fonttools-4.54.1.tar.gz", hash = "sha256:957f669d4922f92c171ba01bef7f29410668db09f6c02111e22b2bce446f3285"}, +] + +[package.extras] +all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "pycairo", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0)", "xattr", "zopfli (>=0.1.4)"] +graphite = ["lz4 (>=1.7.4.2)"] +interpolatable = ["munkres", "pycairo", "scipy"] +lxml = ["lxml (>=4.0)"] +pathops = ["skia-pathops (>=0.5.0)"] +plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] +symfont = ["sympy"] +type1 = ["xattr"] +ufo = ["fs (>=2.2.0,<3)"] +unicode = ["unicodedata2 (>=15.1.0)"] +woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] + +[[package]] +name = "fqdn" +version = "1.5.1" +description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" +optional = false +python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +files = [ + {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, + {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, +] + +[[package]] +name = "h11" +version = "0.14.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +optional = false +python-versions = ">=3.7" +files = [ + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] + +[[package]] +name = "httpcore" +version = "1.0.6" +description = "A minimal low-level HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpcore-1.0.6-py3-none-any.whl", hash = "sha256:27b59625743b85577a8c0e10e55b50b5368a4f2cfe8cc7bcfa9cf00829c2682f"}, + {file = "httpcore-1.0.6.tar.gz", hash = "sha256:73f6dbd6eb8c21bbf7ef8efad555481853f5f6acdeaff1edb0694289269ee17f"}, +] + +[package.dependencies] +certifi = "*" +h11 = ">=0.13,<0.15" + +[package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<1.0)"] + +[[package]] +name = "httpx" +version = "0.27.2" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0"}, + {file = "httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2"}, +] + +[package.dependencies] +anyio = "*" +certifi = "*" +httpcore = "==1.*" +idna = "*" +sniffio = "*" + +[package.extras] +brotli = ["brotli", "brotlicffi"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "idna" +version = "3.10" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.6" +files = [ + {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, + {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, +] + +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + +[[package]] +name = "ipykernel" +version = "6.29.5" +description = "IPython Kernel for Jupyter" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ipykernel-6.29.5-py3-none-any.whl", hash = "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5"}, + {file = "ipykernel-6.29.5.tar.gz", hash = "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "platform_system == \"Darwin\""} +comm = ">=0.1.1" +debugpy = ">=1.6.5" +ipython = ">=7.23.1" +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +matplotlib-inline = ">=0.1" +nest-asyncio = "*" +packaging = "*" +psutil = "*" +pyzmq = ">=24" +tornado = ">=6.1" +traitlets = ">=5.4.0" + +[package.extras] +cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"] +pyqt5 = ["pyqt5"] +pyside6 = ["pyside6"] +test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.23.5)", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "ipython" +version = "8.28.0" +description = "IPython: Productive Interactive Computing" +optional = false +python-versions = ">=3.10" +files = [ + {file = "ipython-8.28.0-py3-none-any.whl", hash = "sha256:530ef1e7bb693724d3cdc37287c80b07ad9b25986c007a53aa1857272dac3f35"}, + {file = "ipython-8.28.0.tar.gz", hash = "sha256:0d0d15ca1e01faeb868ef56bc7ee5a0de5bd66885735682e8a322ae289a13d1a"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "sys_platform == \"win32\""} +decorator = "*" +jedi = ">=0.16" +matplotlib-inline = "*" +pexpect = {version = ">4.3", markers = "sys_platform != \"win32\" and sys_platform != \"emscripten\""} +prompt-toolkit = ">=3.0.41,<3.1.0" +pygments = ">=2.4.0" +stack-data = "*" +traitlets = ">=5.13.0" + +[package.extras] +all = ["ipython[black,doc,kernel,matplotlib,nbconvert,nbformat,notebook,parallel,qtconsole]", "ipython[test,test-extra]"] +black = ["black"] +doc = ["docrepr", "exceptiongroup", "intersphinx-registry", "ipykernel", "ipython[test]", "matplotlib", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "sphinxcontrib-jquery", "tomli", "typing-extensions"] +kernel = ["ipykernel"] +matplotlib = ["matplotlib"] +nbconvert = ["nbconvert"] +nbformat = ["nbformat"] +notebook = ["ipywidgets", "notebook"] +parallel = ["ipyparallel"] +qtconsole = ["qtconsole"] +test = ["packaging", "pickleshare", "pytest", "pytest-asyncio (<0.22)", "testpath"] +test-extra = ["curio", "ipython[test]", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.23)", "pandas", "trio"] + +[[package]] +name = "ipywidgets" +version = "8.1.5" +description = "Jupyter interactive widgets" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ipywidgets-8.1.5-py3-none-any.whl", hash = "sha256:3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245"}, + {file = "ipywidgets-8.1.5.tar.gz", hash = "sha256:870e43b1a35656a80c18c9503bbf2d16802db1cb487eec6fab27d683381dde17"}, +] + +[package.dependencies] +comm = ">=0.1.3" +ipython = ">=6.1.0" +jupyterlab-widgets = ">=3.0.12,<3.1.0" +traitlets = ">=4.3.1" +widgetsnbextension = ">=4.0.12,<4.1.0" + +[package.extras] +test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] + +[[package]] +name = "isoduration" +version = "20.11.0" +description = "Operations with ISO 8601 durations" +optional = false +python-versions = ">=3.7" +files = [ + {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, + {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, +] + +[package.dependencies] +arrow = ">=0.15.0" + +[[package]] +name = "jedi" +version = "0.19.1" +description = "An autocompletion tool for Python that can be used for text editors." +optional = false +python-versions = ">=3.6" +files = [ + {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, + {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, +] + +[package.dependencies] +parso = ">=0.8.3,<0.9.0" + +[package.extras] +docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] + +[[package]] +name = "jinja2" +version = "3.1.4" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +files = [ + {file = "jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d"}, + {file = "jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "joblib" +version = "1.4.2" +description = "Lightweight pipelining with Python functions" +optional = false +python-versions = ">=3.8" +files = [ + {file = "joblib-1.4.2-py3-none-any.whl", hash = "sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6"}, + {file = "joblib-1.4.2.tar.gz", hash = "sha256:2382c5816b2636fbd20a09e0f4e9dad4736765fdfb7dca582943b9c1366b3f0e"}, +] + +[[package]] +name = "json5" +version = "0.9.25" +description = "A Python implementation of the JSON5 data format." +optional = false +python-versions = ">=3.8" +files = [ + {file = "json5-0.9.25-py3-none-any.whl", hash = "sha256:34ed7d834b1341a86987ed52f3f76cd8ee184394906b6e22a1e0deb9ab294e8f"}, + {file = "json5-0.9.25.tar.gz", hash = "sha256:548e41b9be043f9426776f05df8635a00fe06104ea51ed24b67f908856e151ae"}, +] + +[[package]] +name = "jsonpointer" +version = "3.0.0" +description = "Identify specific nodes in a JSON document (RFC 6901)" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942"}, + {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"}, +] + +[[package]] +name = "jsonschema" +version = "4.23.0" +description = "An implementation of JSON Schema validation for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, + {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""} +jsonschema-specifications = ">=2023.03.6" +referencing = ">=0.28.4" +rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} +rpds-py = ">=0.7.1" +uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +webcolors = {version = ">=24.6.0", optional = true, markers = "extra == \"format-nongpl\""} + +[package.extras] +format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=24.6.0)"] + +[[package]] +name = "jsonschema-specifications" +version = "2024.10.1" +description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +optional = false +python-versions = ">=3.9" +files = [ + {file = "jsonschema_specifications-2024.10.1-py3-none-any.whl", hash = "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf"}, + {file = "jsonschema_specifications-2024.10.1.tar.gz", hash = "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272"}, +] + +[package.dependencies] +referencing = ">=0.31.0" + +[[package]] +name = "jupyter" +version = "1.1.1" +description = "Jupyter metapackage. Install all the Jupyter components in one go." +optional = false +python-versions = "*" +files = [ + {file = "jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83"}, + {file = "jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a"}, +] + +[package.dependencies] +ipykernel = "*" +ipywidgets = "*" +jupyter-console = "*" +jupyterlab = "*" +nbconvert = "*" +notebook = "*" + +[[package]] +name = "jupyter-client" +version = "8.6.3" +description = "Jupyter protocol implementation and client libraries" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f"}, + {file = "jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419"}, +] + +[package.dependencies] +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +python-dateutil = ">=2.8.2" +pyzmq = ">=23.0" +tornado = ">=6.2" +traitlets = ">=5.3" + +[package.extras] +docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] + +[[package]] +name = "jupyter-console" +version = "6.6.3" +description = "Jupyter terminal console" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, + {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, +] + +[package.dependencies] +ipykernel = ">=6.14" +ipython = "*" +jupyter-client = ">=7.0.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +prompt-toolkit = ">=3.0.30" +pygments = "*" +pyzmq = ">=17" +traitlets = ">=5.4" + +[package.extras] +test = ["flaky", "pexpect", "pytest"] + +[[package]] +name = "jupyter-core" +version = "5.7.2" +description = "Jupyter core package. A base package on which Jupyter projects rely." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_core-5.7.2-py3-none-any.whl", hash = "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409"}, + {file = "jupyter_core-5.7.2.tar.gz", hash = "sha256:aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9"}, +] + +[package.dependencies] +platformdirs = ">=2.5" +pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} +traitlets = ">=5.3" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"] +test = ["ipykernel", "pre-commit", "pytest (<8)", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "jupyter-events" +version = "0.10.0" +description = "Jupyter Event System library" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_events-0.10.0-py3-none-any.whl", hash = "sha256:4b72130875e59d57716d327ea70d3ebc3af1944d3717e5a498b8a06c6c159960"}, + {file = "jupyter_events-0.10.0.tar.gz", hash = "sha256:670b8229d3cc882ec782144ed22e0d29e1c2d639263f92ca8383e66682845e22"}, +] + +[package.dependencies] +jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} +python-json-logger = ">=2.0.4" +pyyaml = ">=5.3" +referencing = "*" +rfc3339-validator = "*" +rfc3986-validator = ">=0.1.1" +traitlets = ">=5.3" + +[package.extras] +cli = ["click", "rich"] +docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"] +test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] + +[[package]] +name = "jupyter-lsp" +version = "2.2.5" +description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001"}, + {file = "jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da"}, +] + +[package.dependencies] +jupyter-server = ">=1.1.2" + +[[package]] +name = "jupyter-server" +version = "2.14.2" +description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server-2.14.2-py3-none-any.whl", hash = "sha256:47ff506127c2f7851a17bf4713434208fc490955d0e8632e95014a9a9afbeefd"}, + {file = "jupyter_server-2.14.2.tar.gz", hash = "sha256:66095021aa9638ced276c248b1d81862e4c50f292d575920bbe960de1c56b12b"}, +] + +[package.dependencies] +anyio = ">=3.1.0" +argon2-cffi = ">=21.1" +jinja2 = ">=3.0.3" +jupyter-client = ">=7.4.4" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-events = ">=0.9.0" +jupyter-server-terminals = ">=0.4.4" +nbconvert = ">=6.4.4" +nbformat = ">=5.3.0" +overrides = ">=5.0" +packaging = ">=22.0" +prometheus-client = ">=0.9" +pywinpty = {version = ">=2.0.1", markers = "os_name == \"nt\""} +pyzmq = ">=24" +send2trash = ">=1.8.2" +terminado = ">=0.8.3" +tornado = ">=6.2.0" +traitlets = ">=5.6.0" +websocket-client = ">=1.7" + +[package.extras] +docs = ["ipykernel", "jinja2", "jupyter-client", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0,<9)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.7)", "pytest-timeout", "requests"] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.3" +description = "A Jupyter Server Extension Providing Terminals." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa"}, + {file = "jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269"}, +] + +[package.dependencies] +pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} +terminado = ">=0.8.3" + +[package.extras] +docs = ["jinja2", "jupyter-server", "mistune (<4.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"] +test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"] + +[[package]] +name = "jupyterlab" +version = "4.2.5" +description = "JupyterLab computational environment" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab-4.2.5-py3-none-any.whl", hash = "sha256:73b6e0775d41a9fee7ee756c80f58a6bed4040869ccc21411dc559818874d321"}, + {file = "jupyterlab-4.2.5.tar.gz", hash = "sha256:ae7f3a1b8cb88b4f55009ce79fa7c06f99d70cd63601ee4aa91815d054f46f75"}, +] + +[package.dependencies] +async-lru = ">=1.0.0" +httpx = ">=0.25.0" +ipykernel = ">=6.5.0" +jinja2 = ">=3.0.3" +jupyter-core = "*" +jupyter-lsp = ">=2.0.0" +jupyter-server = ">=2.4.0,<3" +jupyterlab-server = ">=2.27.1,<3" +notebook-shim = ">=0.2" +packaging = "*" +setuptools = ">=40.1.0" +tornado = ">=6.2.0" +traitlets = "*" + +[package.extras] +dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.3.5)"] +docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<7.3.0)", "sphinx-copybutton"] +docs-screenshots = ["altair (==5.3.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.2)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.1.post2)", "matplotlib (==3.8.3)", "nbconvert (>=7.0.0)", "pandas (==2.2.1)", "scipy (==1.12.0)", "vega-datasets (==0.9.0)"] +test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] +upgrade-extension = ["copier (>=9,<10)", "jinja2-time (<0.3)", "pydantic (<3.0)", "pyyaml-include (<3.0)", "tomli-w (<2.0)"] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +description = "Pygments theme using JupyterLab CSS variables" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, + {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, +] + +[[package]] +name = "jupyterlab-server" +version = "2.27.3" +description = "A set of server components for JupyterLab and JupyterLab like applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4"}, + {file = "jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4"}, +] + +[package.dependencies] +babel = ">=2.10" +jinja2 = ">=3.0.3" +json5 = ">=0.9.0" +jsonschema = ">=4.18.0" +jupyter-server = ">=1.21,<3" +packaging = ">=21.3" +requests = ">=2.31" + +[package.extras] +docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"] +openapi = ["openapi-core (>=0.18.0,<0.19.0)", "ruamel-yaml"] +test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-validator (>=0.6.0,<0.8.0)", "pytest (>=7.0,<8)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "ruamel-yaml", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.13" +description = "Jupyter interactive widgets for JupyterLab" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyterlab_widgets-3.0.13-py3-none-any.whl", hash = "sha256:e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54"}, + {file = "jupyterlab_widgets-3.0.13.tar.gz", hash = "sha256:a2966d385328c1942b683a8cd96b89b8dd82c8b8f81dda902bb2bc06d46f5bed"}, +] + +[[package]] +name = "kiwisolver" +version = "1.4.7" +description = "A fast implementation of the Cassowary constraint solver" +optional = false +python-versions = ">=3.8" +files = [ + {file = "kiwisolver-1.4.7-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8a9c83f75223d5e48b0bc9cb1bf2776cf01563e00ade8775ffe13b0b6e1af3a6"}, + {file = "kiwisolver-1.4.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:58370b1ffbd35407444d57057b57da5d6549d2d854fa30249771775c63b5fe17"}, + {file = "kiwisolver-1.4.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:aa0abdf853e09aff551db11fce173e2177d00786c688203f52c87ad7fcd91ef9"}, + {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8d53103597a252fb3ab8b5845af04c7a26d5e7ea8122303dd7a021176a87e8b9"}, + {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:88f17c5ffa8e9462fb79f62746428dd57b46eb931698e42e990ad63103f35e6c"}, + {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88a9ca9c710d598fd75ee5de59d5bda2684d9db36a9f50b6125eaea3969c2599"}, + {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f4d742cb7af1c28303a51b7a27aaee540e71bb8e24f68c736f6f2ffc82f2bf05"}, + {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e28c7fea2196bf4c2f8d46a0415c77a1c480cc0724722f23d7410ffe9842c407"}, + {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e968b84db54f9d42046cf154e02911e39c0435c9801681e3fc9ce8a3c4130278"}, + {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0c18ec74c0472de033e1bebb2911c3c310eef5649133dd0bedf2a169a1b269e5"}, + {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:8f0ea6da6d393d8b2e187e6a5e3fb81f5862010a40c3945e2c6d12ae45cfb2ad"}, + {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:f106407dda69ae456dd1227966bf445b157ccc80ba0dff3802bb63f30b74e895"}, + {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:84ec80df401cfee1457063732d90022f93951944b5b58975d34ab56bb150dfb3"}, + {file = "kiwisolver-1.4.7-cp310-cp310-win32.whl", hash = "sha256:71bb308552200fb2c195e35ef05de12f0c878c07fc91c270eb3d6e41698c3bcc"}, + {file = "kiwisolver-1.4.7-cp310-cp310-win_amd64.whl", hash = "sha256:44756f9fd339de0fb6ee4f8c1696cfd19b2422e0d70b4cefc1cc7f1f64045a8c"}, + {file = "kiwisolver-1.4.7-cp310-cp310-win_arm64.whl", hash = "sha256:78a42513018c41c2ffd262eb676442315cbfe3c44eed82385c2ed043bc63210a"}, + {file = "kiwisolver-1.4.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d2b0e12a42fb4e72d509fc994713d099cbb15ebf1103545e8a45f14da2dfca54"}, + {file = "kiwisolver-1.4.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2a8781ac3edc42ea4b90bc23e7d37b665d89423818e26eb6df90698aa2287c95"}, + {file = "kiwisolver-1.4.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:46707a10836894b559e04b0fd143e343945c97fd170d69a2d26d640b4e297935"}, + {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef97b8df011141c9b0f6caf23b29379f87dd13183c978a30a3c546d2c47314cb"}, + {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ab58c12a2cd0fc769089e6d38466c46d7f76aced0a1f54c77652446733d2d02"}, + {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:803b8e1459341c1bb56d1c5c010406d5edec8a0713a0945851290a7930679b51"}, + {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f9a9e8a507420fe35992ee9ecb302dab68550dedc0da9e2880dd88071c5fb052"}, + {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18077b53dc3bb490e330669a99920c5e6a496889ae8c63b58fbc57c3d7f33a18"}, + {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6af936f79086a89b3680a280c47ea90b4df7047b5bdf3aa5c524bbedddb9e545"}, + {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:3abc5b19d24af4b77d1598a585b8a719beb8569a71568b66f4ebe1fb0449460b"}, + {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:933d4de052939d90afbe6e9d5273ae05fb836cc86c15b686edd4b3560cc0ee36"}, + {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:65e720d2ab2b53f1f72fb5da5fb477455905ce2c88aaa671ff0a447c2c80e8e3"}, + {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3bf1ed55088f214ba6427484c59553123fdd9b218a42bbc8c6496d6754b1e523"}, + {file = "kiwisolver-1.4.7-cp311-cp311-win32.whl", hash = "sha256:4c00336b9dd5ad96d0a558fd18a8b6f711b7449acce4c157e7343ba92dd0cf3d"}, + {file = "kiwisolver-1.4.7-cp311-cp311-win_amd64.whl", hash = "sha256:929e294c1ac1e9f615c62a4e4313ca1823ba37326c164ec720a803287c4c499b"}, + {file = "kiwisolver-1.4.7-cp311-cp311-win_arm64.whl", hash = "sha256:e33e8fbd440c917106b237ef1a2f1449dfbb9b6f6e1ce17c94cd6a1e0d438376"}, + {file = "kiwisolver-1.4.7-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:5360cc32706dab3931f738d3079652d20982511f7c0ac5711483e6eab08efff2"}, + {file = "kiwisolver-1.4.7-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:942216596dc64ddb25adb215c3c783215b23626f8d84e8eff8d6d45c3f29f75a"}, + {file = "kiwisolver-1.4.7-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:48b571ecd8bae15702e4f22d3ff6a0f13e54d3d00cd25216d5e7f658242065ee"}, + {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ad42ba922c67c5f219097b28fae965e10045ddf145d2928bfac2eb2e17673640"}, + {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:612a10bdae23404a72941a0fc8fa2660c6ea1217c4ce0dbcab8a8f6543ea9e7f"}, + {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9e838bba3a3bac0fe06d849d29772eb1afb9745a59710762e4ba3f4cb8424483"}, + {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:22f499f6157236c19f4bbbd472fa55b063db77a16cd74d49afe28992dff8c258"}, + {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693902d433cf585133699972b6d7c42a8b9f8f826ebcaf0132ff55200afc599e"}, + {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4e77f2126c3e0b0d055f44513ed349038ac180371ed9b52fe96a32aa071a5107"}, + {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:657a05857bda581c3656bfc3b20e353c232e9193eb167766ad2dc58b56504948"}, + {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:4bfa75a048c056a411f9705856abfc872558e33c055d80af6a380e3658766038"}, + {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:34ea1de54beef1c104422d210c47c7d2a4999bdecf42c7b5718fbe59a4cac383"}, + {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:90da3b5f694b85231cf93586dad5e90e2d71b9428f9aad96952c99055582f520"}, + {file = "kiwisolver-1.4.7-cp312-cp312-win32.whl", hash = "sha256:18e0cca3e008e17fe9b164b55735a325140a5a35faad8de92dd80265cd5eb80b"}, + {file = "kiwisolver-1.4.7-cp312-cp312-win_amd64.whl", hash = "sha256:58cb20602b18f86f83a5c87d3ee1c766a79c0d452f8def86d925e6c60fbf7bfb"}, + {file = "kiwisolver-1.4.7-cp312-cp312-win_arm64.whl", hash = "sha256:f5a8b53bdc0b3961f8b6125e198617c40aeed638b387913bf1ce78afb1b0be2a"}, + {file = "kiwisolver-1.4.7-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2e6039dcbe79a8e0f044f1c39db1986a1b8071051efba3ee4d74f5b365f5226e"}, + {file = "kiwisolver-1.4.7-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1ecf0ac1c518487d9d23b1cd7139a6a65bc460cd101ab01f1be82ecf09794b6"}, + {file = "kiwisolver-1.4.7-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7ab9ccab2b5bd5702ab0803676a580fffa2aa178c2badc5557a84cc943fcf750"}, + {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f816dd2277f8d63d79f9c8473a79fe54047bc0467754962840782c575522224d"}, + {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf8bcc23ceb5a1b624572a1623b9f79d2c3b337c8c455405ef231933a10da379"}, + {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dea0bf229319828467d7fca8c7c189780aa9ff679c94539eed7532ebe33ed37c"}, + {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c06a4c7cf15ec739ce0e5971b26c93638730090add60e183530d70848ebdd34"}, + {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:913983ad2deb14e66d83c28b632fd35ba2b825031f2fa4ca29675e665dfecbe1"}, + {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5337ec7809bcd0f424c6b705ecf97941c46279cf5ed92311782c7c9c2026f07f"}, + {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:4c26ed10c4f6fa6ddb329a5120ba3b6db349ca192ae211e882970bfc9d91420b"}, + {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c619b101e6de2222c1fcb0531e1b17bbffbe54294bfba43ea0d411d428618c27"}, + {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:073a36c8273647592ea332e816e75ef8da5c303236ec0167196793eb1e34657a"}, + {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:3ce6b2b0231bda412463e152fc18335ba32faf4e8c23a754ad50ffa70e4091ee"}, + {file = "kiwisolver-1.4.7-cp313-cp313-win32.whl", hash = "sha256:f4c9aee212bc89d4e13f58be11a56cc8036cabad119259d12ace14b34476fd07"}, + {file = "kiwisolver-1.4.7-cp313-cp313-win_amd64.whl", hash = "sha256:8a3ec5aa8e38fc4c8af308917ce12c536f1c88452ce554027e55b22cbbfbff76"}, + {file = "kiwisolver-1.4.7-cp313-cp313-win_arm64.whl", hash = "sha256:76c8094ac20ec259471ac53e774623eb62e6e1f56cd8690c67ce6ce4fcb05650"}, + {file = "kiwisolver-1.4.7-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5d5abf8f8ec1f4e22882273c423e16cae834c36856cac348cfbfa68e01c40f3a"}, + {file = "kiwisolver-1.4.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:aeb3531b196ef6f11776c21674dba836aeea9d5bd1cf630f869e3d90b16cfade"}, + {file = "kiwisolver-1.4.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b7d755065e4e866a8086c9bdada157133ff466476a2ad7861828e17b6026e22c"}, + {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:08471d4d86cbaec61f86b217dd938a83d85e03785f51121e791a6e6689a3be95"}, + {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7bbfcb7165ce3d54a3dfbe731e470f65739c4c1f85bb1018ee912bae139e263b"}, + {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d34eb8494bea691a1a450141ebb5385e4b69d38bb8403b5146ad279f4b30fa3"}, + {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9242795d174daa40105c1d86aba618e8eab7bf96ba8c3ee614da8302a9f95503"}, + {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a0f64a48bb81af7450e641e3fe0b0394d7381e342805479178b3d335d60ca7cf"}, + {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8e045731a5416357638d1700927529e2b8ab304811671f665b225f8bf8d8f933"}, + {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4322872d5772cae7369f8351da1edf255a604ea7087fe295411397d0cfd9655e"}, + {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:e1631290ee9271dffe3062d2634c3ecac02c83890ada077d225e081aca8aab89"}, + {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:edcfc407e4eb17e037bca59be0e85a2031a2ac87e4fed26d3e9df88b4165f92d"}, + {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:4d05d81ecb47d11e7f8932bd8b61b720bf0b41199358f3f5e36d38e28f0532c5"}, + {file = "kiwisolver-1.4.7-cp38-cp38-win32.whl", hash = "sha256:b38ac83d5f04b15e515fd86f312479d950d05ce2368d5413d46c088dda7de90a"}, + {file = "kiwisolver-1.4.7-cp38-cp38-win_amd64.whl", hash = "sha256:d83db7cde68459fc803052a55ace60bea2bae361fc3b7a6d5da07e11954e4b09"}, + {file = "kiwisolver-1.4.7-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:3f9362ecfca44c863569d3d3c033dbe8ba452ff8eed6f6b5806382741a1334bd"}, + {file = "kiwisolver-1.4.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e8df2eb9b2bac43ef8b082e06f750350fbbaf2887534a5be97f6cf07b19d9583"}, + {file = "kiwisolver-1.4.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f32d6edbc638cde7652bd690c3e728b25332acbadd7cad670cc4a02558d9c417"}, + {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e2e6c39bd7b9372b0be21456caab138e8e69cc0fc1190a9dfa92bd45a1e6e904"}, + {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dda56c24d869b1193fcc763f1284b9126550eaf84b88bbc7256e15028f19188a"}, + {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79849239c39b5e1fd906556c474d9b0439ea6792b637511f3fe3a41158d89ca8"}, + {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5e3bc157fed2a4c02ec468de4ecd12a6e22818d4f09cde2c31ee3226ffbefab2"}, + {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3da53da805b71e41053dc670f9a820d1157aae77b6b944e08024d17bcd51ef88"}, + {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:8705f17dfeb43139a692298cb6637ee2e59c0194538153e83e9ee0c75c2eddde"}, + {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:82a5c2f4b87c26bb1a0ef3d16b5c4753434633b83d365cc0ddf2770c93829e3c"}, + {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ce8be0466f4c0d585cdb6c1e2ed07232221df101a4c6f28821d2aa754ca2d9e2"}, + {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:409afdfe1e2e90e6ee7fc896f3df9a7fec8e793e58bfa0d052c8a82f99c37abb"}, + {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5b9c3f4ee0b9a439d2415012bd1b1cc2df59e4d6a9939f4d669241d30b414327"}, + {file = "kiwisolver-1.4.7-cp39-cp39-win32.whl", hash = "sha256:a79ae34384df2b615eefca647a2873842ac3b596418032bef9a7283675962644"}, + {file = "kiwisolver-1.4.7-cp39-cp39-win_amd64.whl", hash = "sha256:cf0438b42121a66a3a667de17e779330fc0f20b0d97d59d2f2121e182b0505e4"}, + {file = "kiwisolver-1.4.7-cp39-cp39-win_arm64.whl", hash = "sha256:764202cc7e70f767dab49e8df52c7455e8de0df5d858fa801a11aa0d882ccf3f"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:94252291e3fe68001b1dd747b4c0b3be12582839b95ad4d1b641924d68fd4643"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:5b7dfa3b546da08a9f622bb6becdb14b3e24aaa30adba66749d38f3cc7ea9706"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bd3de6481f4ed8b734da5df134cd5a6a64fe32124fe83dde1e5b5f29fe30b1e6"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a91b5f9f1205845d488c928e8570dcb62b893372f63b8b6e98b863ebd2368ff2"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40fa14dbd66b8b8f470d5fc79c089a66185619d31645f9b0773b88b19f7223c4"}, + {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:eb542fe7933aa09d8d8f9d9097ef37532a7df6497819d16efe4359890a2f417a"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:bfa1acfa0c54932d5607e19a2c24646fb4c1ae2694437789129cf099789a3b00"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:eee3ea935c3d227d49b4eb85660ff631556841f6e567f0f7bda972df6c2c9935"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f3160309af4396e0ed04db259c3ccbfdc3621b5559b5453075e5de555e1f3a1b"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a17f6a29cf8935e587cc8a4dbfc8368c55edc645283db0ce9801016f83526c2d"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10849fb2c1ecbfae45a693c070e0320a91b35dd4bcf58172c023b994283a124d"}, + {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:ac542bf38a8a4be2dc6b15248d36315ccc65f0743f7b1a76688ffb6b5129a5c2"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:8b01aac285f91ca889c800042c35ad3b239e704b150cfd3382adfc9dcc780e39"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:48be928f59a1f5c8207154f935334d374e79f2b5d212826307d072595ad76a2e"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f37cfe618a117e50d8c240555331160d73d0411422b59b5ee217843d7b693608"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:599b5c873c63a1f6ed7eead644a8a380cfbdf5db91dcb6f85707aaab213b1674"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:801fa7802e5cfabe3ab0c81a34c323a319b097dfb5004be950482d882f3d7225"}, + {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:0c6c43471bc764fad4bc99c5c2d6d16a676b1abf844ca7c8702bdae92df01ee0"}, + {file = "kiwisolver-1.4.7.tar.gz", hash = "sha256:9893ff81bd7107f7b685d3017cc6583daadb4fc26e4a888350df530e41980a60"}, +] + +[[package]] +name = "markupsafe" +version = "3.0.2" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.9" +files = [ + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, + {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, +] + +[[package]] +name = "matplotlib" +version = "3.9.2" +description = "Python plotting package" +optional = false +python-versions = ">=3.9" +files = [ + {file = "matplotlib-3.9.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:9d78bbc0cbc891ad55b4f39a48c22182e9bdaea7fc0e5dbd364f49f729ca1bbb"}, + {file = "matplotlib-3.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c375cc72229614632c87355366bdf2570c2dac01ac66b8ad048d2dabadf2d0d4"}, + {file = "matplotlib-3.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d94ff717eb2bd0b58fe66380bd8b14ac35f48a98e7c6765117fe67fb7684e64"}, + {file = "matplotlib-3.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab68d50c06938ef28681073327795c5db99bb4666214d2d5f880ed11aeaded66"}, + {file = "matplotlib-3.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:65aacf95b62272d568044531e41de26285d54aec8cb859031f511f84bd8b495a"}, + {file = "matplotlib-3.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:3fd595f34aa8a55b7fc8bf9ebea8aa665a84c82d275190a61118d33fbc82ccae"}, + {file = "matplotlib-3.9.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d8dd059447824eec055e829258ab092b56bb0579fc3164fa09c64f3acd478772"}, + {file = "matplotlib-3.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c797dac8bb9c7a3fd3382b16fe8f215b4cf0f22adccea36f1545a6d7be310b41"}, + {file = "matplotlib-3.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d719465db13267bcef19ea8954a971db03b9f48b4647e3860e4bc8e6ed86610f"}, + {file = "matplotlib-3.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8912ef7c2362f7193b5819d17dae8629b34a95c58603d781329712ada83f9447"}, + {file = "matplotlib-3.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7741f26a58a240f43bee74965c4882b6c93df3e7eb3de160126d8c8f53a6ae6e"}, + {file = "matplotlib-3.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:ae82a14dab96fbfad7965403c643cafe6515e386de723e498cf3eeb1e0b70cc7"}, + {file = "matplotlib-3.9.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:ac43031375a65c3196bee99f6001e7fa5bdfb00ddf43379d3c0609bdca042df9"}, + {file = "matplotlib-3.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:be0fc24a5e4531ae4d8e858a1a548c1fe33b176bb13eff7f9d0d38ce5112a27d"}, + {file = "matplotlib-3.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf81de2926c2db243c9b2cbc3917619a0fc85796c6ba4e58f541df814bbf83c7"}, + {file = "matplotlib-3.9.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6ee45bc4245533111ced13f1f2cace1e7f89d1c793390392a80c139d6cf0e6c"}, + {file = "matplotlib-3.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:306c8dfc73239f0e72ac50e5a9cf19cc4e8e331dd0c54f5e69ca8758550f1e1e"}, + {file = "matplotlib-3.9.2-cp312-cp312-win_amd64.whl", hash = "sha256:5413401594cfaff0052f9d8b1aafc6d305b4bd7c4331dccd18f561ff7e1d3bd3"}, + {file = "matplotlib-3.9.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:18128cc08f0d3cfff10b76baa2f296fc28c4607368a8402de61bb3f2eb33c7d9"}, + {file = "matplotlib-3.9.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4876d7d40219e8ae8bb70f9263bcbe5714415acfdf781086601211335e24f8aa"}, + {file = "matplotlib-3.9.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d9f07a80deab4bb0b82858a9e9ad53d1382fd122be8cde11080f4e7dfedb38b"}, + {file = "matplotlib-3.9.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7c0410f181a531ec4e93bbc27692f2c71a15c2da16766f5ba9761e7ae518413"}, + {file = "matplotlib-3.9.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:909645cce2dc28b735674ce0931a4ac94e12f5b13f6bb0b5a5e65e7cea2c192b"}, + {file = "matplotlib-3.9.2-cp313-cp313-win_amd64.whl", hash = "sha256:f32c7410c7f246838a77d6d1eff0c0f87f3cb0e7c4247aebea71a6d5a68cab49"}, + {file = "matplotlib-3.9.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:37e51dd1c2db16ede9cfd7b5cabdfc818b2c6397c83f8b10e0e797501c963a03"}, + {file = "matplotlib-3.9.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b82c5045cebcecd8496a4d694d43f9cc84aeeb49fe2133e036b207abe73f4d30"}, + {file = "matplotlib-3.9.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f053c40f94bc51bc03832a41b4f153d83f2062d88c72b5e79997072594e97e51"}, + {file = "matplotlib-3.9.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dbe196377a8248972f5cede786d4c5508ed5f5ca4a1e09b44bda889958b33f8c"}, + {file = "matplotlib-3.9.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5816b1e1fe8c192cbc013f8f3e3368ac56fbecf02fb41b8f8559303f24c5015e"}, + {file = "matplotlib-3.9.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:cef2a73d06601437be399908cf13aee74e86932a5ccc6ccdf173408ebc5f6bb2"}, + {file = "matplotlib-3.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e0830e188029c14e891fadd99702fd90d317df294c3298aad682739c5533721a"}, + {file = "matplotlib-3.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ba9c1299c920964e8d3857ba27173b4dbb51ca4bab47ffc2c2ba0eb5e2cbc5"}, + {file = "matplotlib-3.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1cd93b91ab47a3616b4d3c42b52f8363b88ca021e340804c6ab2536344fad9ca"}, + {file = "matplotlib-3.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6d1ce5ed2aefcdce11904fc5bbea7d9c21fff3d5f543841edf3dea84451a09ea"}, + {file = "matplotlib-3.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:b2696efdc08648536efd4e1601b5fd491fd47f4db97a5fbfd175549a7365c1b2"}, + {file = "matplotlib-3.9.2-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:d52a3b618cb1cbb769ce2ee1dcdb333c3ab6e823944e9a2d36e37253815f9556"}, + {file = "matplotlib-3.9.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:039082812cacd6c6bec8e17a9c1e6baca230d4116d522e81e1f63a74d01d2e21"}, + {file = "matplotlib-3.9.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6758baae2ed64f2331d4fd19be38b7b4eae3ecec210049a26b6a4f3ae1c85dcc"}, + {file = "matplotlib-3.9.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:050598c2b29e0b9832cde72bcf97627bf00262adbc4a54e2b856426bb2ef0697"}, + {file = "matplotlib-3.9.2.tar.gz", hash = "sha256:96ab43906269ca64a6366934106fa01534454a69e471b7bf3d79083981aaab92"}, +] + +[package.dependencies] +contourpy = ">=1.0.1" +cycler = ">=0.10" +fonttools = ">=4.22.0" +kiwisolver = ">=1.3.1" +numpy = ">=1.23" +packaging = ">=20.0" +pillow = ">=8" +pyparsing = ">=2.3.1" +python-dateutil = ">=2.7" + +[package.extras] +dev = ["meson-python (>=0.13.1)", "numpy (>=1.25)", "pybind11 (>=2.6)", "setuptools (>=64)", "setuptools_scm (>=7)"] + +[[package]] +name = "matplotlib-inline" +version = "0.1.7" +description = "Inline Matplotlib backend for Jupyter" +optional = false +python-versions = ">=3.8" +files = [ + {file = "matplotlib_inline-0.1.7-py3-none-any.whl", hash = "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca"}, + {file = "matplotlib_inline-0.1.7.tar.gz", hash = "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90"}, +] + +[package.dependencies] +traitlets = "*" + +[[package]] +name = "mistune" +version = "3.0.2" +description = "A sane and fast Markdown parser with useful plugins and renderers" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205"}, + {file = "mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8"}, +] + +[[package]] +name = "nbclient" +version = "0.10.0" +description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "nbclient-0.10.0-py3-none-any.whl", hash = "sha256:f13e3529332a1f1f81d82a53210322476a168bb7090a0289c795fe9cc11c9d3f"}, + {file = "nbclient-0.10.0.tar.gz", hash = "sha256:4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09"}, +] + +[package.dependencies] +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +nbformat = ">=5.1" +traitlets = ">=5.4" + +[package.extras] +dev = ["pre-commit"] +docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"] +test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] + +[[package]] +name = "nbconvert" +version = "7.16.4" +description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbconvert-7.16.4-py3-none-any.whl", hash = "sha256:05873c620fe520b6322bf8a5ad562692343fe3452abda5765c7a34b7d1aa3eb3"}, + {file = "nbconvert-7.16.4.tar.gz", hash = "sha256:86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +bleach = "!=5.0.0" +defusedxml = "*" +jinja2 = ">=3.0" +jupyter-core = ">=4.7" +jupyterlab-pygments = "*" +markupsafe = ">=2.0" +mistune = ">=2.0.3,<4" +nbclient = ">=0.5.0" +nbformat = ">=5.7" +packaging = "*" +pandocfilters = ">=1.4.1" +pygments = ">=2.4.1" +tinycss2 = "*" +traitlets = ">=5.1" + +[package.extras] +all = ["flaky", "ipykernel", "ipython", "ipywidgets (>=7.5)", "myst-parser", "nbsphinx (>=0.2.12)", "playwright", "pydata-sphinx-theme", "pyqtwebengine (>=5.15)", "pytest (>=7)", "sphinx (==5.0.2)", "sphinxcontrib-spelling", "tornado (>=6.1)"] +docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] +qtpdf = ["pyqtwebengine (>=5.15)"] +qtpng = ["pyqtwebengine (>=5.15)"] +serve = ["tornado (>=6.1)"] +test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest (>=7)"] +webpdf = ["playwright"] + +[[package]] +name = "nbformat" +version = "5.10.4" +description = "The Jupyter Notebook format" +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b"}, + {file = "nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a"}, +] + +[package.dependencies] +fastjsonschema = ">=2.15" +jsonschema = ">=2.6" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +traitlets = ">=5.1" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["pep440", "pre-commit", "pytest", "testpath"] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +description = "Patch asyncio to allow nested event loops" +optional = false +python-versions = ">=3.5" +files = [ + {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, + {file = "nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe"}, +] + +[[package]] +name = "networkx" +version = "3.4.2" +description = "Python package for creating and manipulating graphs and networks" +optional = false +python-versions = ">=3.10" +files = [ + {file = "networkx-3.4.2-py3-none-any.whl", hash = "sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f"}, + {file = "networkx-3.4.2.tar.gz", hash = "sha256:307c3669428c5362aab27c8a1260aa8f47c4e91d3891f48be0141738d8d053e1"}, +] + +[package.extras] +default = ["matplotlib (>=3.7)", "numpy (>=1.24)", "pandas (>=2.0)", "scipy (>=1.10,!=1.11.0,!=1.11.1)"] +developer = ["changelist (==0.5)", "mypy (>=1.1)", "pre-commit (>=3.2)", "rtoml"] +doc = ["intersphinx-registry", "myst-nb (>=1.1)", "numpydoc (>=1.8.0)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.15)", "sphinx (>=7.3)", "sphinx-gallery (>=0.16)", "texext (>=0.6.7)"] +example = ["cairocffi (>=1.7)", "contextily (>=1.6)", "igraph (>=0.11)", "momepy (>=0.7.2)", "osmnx (>=1.9)", "scikit-learn (>=1.5)", "seaborn (>=0.13)"] +extra = ["lxml (>=4.6)", "pydot (>=3.0.1)", "pygraphviz (>=1.14)", "sympy (>=1.10)"] +test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"] + +[[package]] +name = "notebook" +version = "7.2.2" +description = "Jupyter Notebook - A web-based notebook environment for interactive computing" +optional = false +python-versions = ">=3.8" +files = [ + {file = "notebook-7.2.2-py3-none-any.whl", hash = "sha256:c89264081f671bc02eec0ed470a627ed791b9156cad9285226b31611d3e9fe1c"}, + {file = "notebook-7.2.2.tar.gz", hash = "sha256:2ef07d4220421623ad3fe88118d687bc0450055570cdd160814a59cf3a1c516e"}, +] + +[package.dependencies] +jupyter-server = ">=2.4.0,<3" +jupyterlab = ">=4.2.0,<4.3" +jupyterlab-server = ">=2.27.1,<3" +notebook-shim = ">=0.2,<0.3" +tornado = ">=6.2.0" + +[package.extras] +dev = ["hatch", "pre-commit"] +docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.27.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] + +[[package]] +name = "notebook-shim" +version = "0.2.4" +description = "A shim layer for notebook traits and config" +optional = false +python-versions = ">=3.7" +files = [ + {file = "notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef"}, + {file = "notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb"}, +] + +[package.dependencies] +jupyter-server = ">=1.8,<3" + +[package.extras] +test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] + +[[package]] +name = "numpy" +version = "2.1.2" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.10" +files = [ + {file = "numpy-2.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:30d53720b726ec36a7f88dc873f0eec8447fbc93d93a8f079dfac2629598d6ee"}, + {file = "numpy-2.1.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e8d3ca0a72dd8846eb6f7dfe8f19088060fcb76931ed592d29128e0219652884"}, + {file = "numpy-2.1.2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:fc44e3c68ff00fd991b59092a54350e6e4911152682b4782f68070985aa9e648"}, + {file = "numpy-2.1.2-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:7c1c60328bd964b53f8b835df69ae8198659e2b9302ff9ebb7de4e5a5994db3d"}, + {file = "numpy-2.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6cdb606a7478f9ad91c6283e238544451e3a95f30fb5467fbf715964341a8a86"}, + {file = "numpy-2.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d666cb72687559689e9906197e3bec7b736764df6a2e58ee265e360663e9baf7"}, + {file = "numpy-2.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c6eef7a2dbd0abfb0d9eaf78b73017dbfd0b54051102ff4e6a7b2980d5ac1a03"}, + {file = "numpy-2.1.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:12edb90831ff481f7ef5f6bc6431a9d74dc0e5ff401559a71e5e4611d4f2d466"}, + {file = "numpy-2.1.2-cp310-cp310-win32.whl", hash = "sha256:a65acfdb9c6ebb8368490dbafe83c03c7e277b37e6857f0caeadbbc56e12f4fb"}, + {file = "numpy-2.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:860ec6e63e2c5c2ee5e9121808145c7bf86c96cca9ad396c0bd3e0f2798ccbe2"}, + {file = "numpy-2.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b42a1a511c81cc78cbc4539675713bbcf9d9c3913386243ceff0e9429ca892fe"}, + {file = "numpy-2.1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:faa88bc527d0f097abdc2c663cddf37c05a1c2f113716601555249805cf573f1"}, + {file = "numpy-2.1.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:c82af4b2ddd2ee72d1fc0c6695048d457e00b3582ccde72d8a1c991b808bb20f"}, + {file = "numpy-2.1.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:13602b3174432a35b16c4cfb5de9a12d229727c3dd47a6ce35111f2ebdf66ff4"}, + {file = "numpy-2.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ebec5fd716c5a5b3d8dfcc439be82a8407b7b24b230d0ad28a81b61c2f4659a"}, + {file = "numpy-2.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2b49c3c0804e8ecb05d59af8386ec2f74877f7ca8fd9c1e00be2672e4d399b1"}, + {file = "numpy-2.1.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2cbba4b30bf31ddbe97f1c7205ef976909a93a66bb1583e983adbd155ba72ac2"}, + {file = "numpy-2.1.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8e00ea6fc82e8a804433d3e9cedaa1051a1422cb6e443011590c14d2dea59146"}, + {file = "numpy-2.1.2-cp311-cp311-win32.whl", hash = "sha256:5006b13a06e0b38d561fab5ccc37581f23c9511879be7693bd33c7cd15ca227c"}, + {file = "numpy-2.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:f1eb068ead09f4994dec71c24b2844f1e4e4e013b9629f812f292f04bd1510d9"}, + {file = "numpy-2.1.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d7bf0a4f9f15b32b5ba53147369e94296f5fffb783db5aacc1be15b4bf72f43b"}, + {file = "numpy-2.1.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b1d0fcae4f0949f215d4632be684a539859b295e2d0cb14f78ec231915d644db"}, + {file = "numpy-2.1.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:f751ed0a2f250541e19dfca9f1eafa31a392c71c832b6bb9e113b10d050cb0f1"}, + {file = "numpy-2.1.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:bd33f82e95ba7ad632bc57837ee99dba3d7e006536200c4e9124089e1bf42426"}, + {file = "numpy-2.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b8cde4f11f0a975d1fd59373b32e2f5a562ade7cde4f85b7137f3de8fbb29a0"}, + {file = "numpy-2.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d95f286b8244b3649b477ac066c6906fbb2905f8ac19b170e2175d3d799f4df"}, + {file = "numpy-2.1.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ab4754d432e3ac42d33a269c8567413bdb541689b02d93788af4131018cbf366"}, + {file = "numpy-2.1.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e585c8ae871fd38ac50598f4763d73ec5497b0de9a0ab4ef5b69f01c6a046142"}, + {file = "numpy-2.1.2-cp312-cp312-win32.whl", hash = "sha256:9c6c754df29ce6a89ed23afb25550d1c2d5fdb9901d9c67a16e0b16eaf7e2550"}, + {file = "numpy-2.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:456e3b11cb79ac9946c822a56346ec80275eaf2950314b249b512896c0d2505e"}, + {file = "numpy-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a84498e0d0a1174f2b3ed769b67b656aa5460c92c9554039e11f20a05650f00d"}, + {file = "numpy-2.1.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4d6ec0d4222e8ffdab1744da2560f07856421b367928026fb540e1945f2eeeaf"}, + {file = "numpy-2.1.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:259ec80d54999cc34cd1eb8ded513cb053c3bf4829152a2e00de2371bd406f5e"}, + {file = "numpy-2.1.2-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:675c741d4739af2dc20cd6c6a5c4b7355c728167845e3c6b0e824e4e5d36a6c3"}, + {file = "numpy-2.1.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05b2d4e667895cc55e3ff2b56077e4c8a5604361fc21a042845ea3ad67465aa8"}, + {file = "numpy-2.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43cca367bf94a14aca50b89e9bc2061683116cfe864e56740e083392f533ce7a"}, + {file = "numpy-2.1.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:76322dcdb16fccf2ac56f99048af32259dcc488d9b7e25b51e5eca5147a3fb98"}, + {file = "numpy-2.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:32e16a03138cabe0cb28e1007ee82264296ac0983714094380b408097a418cfe"}, + {file = "numpy-2.1.2-cp313-cp313-win32.whl", hash = "sha256:242b39d00e4944431a3cd2db2f5377e15b5785920421993770cddb89992c3f3a"}, + {file = "numpy-2.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:f2ded8d9b6f68cc26f8425eda5d3877b47343e68ca23d0d0846f4d312ecaa445"}, + {file = "numpy-2.1.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:2ffef621c14ebb0188a8633348504a35c13680d6da93ab5cb86f4e54b7e922b5"}, + {file = "numpy-2.1.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:ad369ed238b1959dfbade9018a740fb9392c5ac4f9b5173f420bd4f37ba1f7a0"}, + {file = "numpy-2.1.2-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:d82075752f40c0ddf57e6e02673a17f6cb0f8eb3f587f63ca1eaab5594da5b17"}, + {file = "numpy-2.1.2-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:1600068c262af1ca9580a527d43dc9d959b0b1d8e56f8a05d830eea39b7c8af6"}, + {file = "numpy-2.1.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a26ae94658d3ba3781d5e103ac07a876b3e9b29db53f68ed7df432fd033358a8"}, + {file = "numpy-2.1.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13311c2db4c5f7609b462bc0f43d3c465424d25c626d95040f073e30f7570e35"}, + {file = "numpy-2.1.2-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:2abbf905a0b568706391ec6fa15161fad0fb5d8b68d73c461b3c1bab6064dd62"}, + {file = "numpy-2.1.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:ef444c57d664d35cac4e18c298c47d7b504c66b17c2ea91312e979fcfbdfb08a"}, + {file = "numpy-2.1.2-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:bdd407c40483463898b84490770199d5714dcc9dd9b792f6c6caccc523c00952"}, + {file = "numpy-2.1.2-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:da65fb46d4cbb75cb417cddf6ba5e7582eb7bb0b47db4b99c9fe5787ce5d91f5"}, + {file = "numpy-2.1.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c193d0b0238638e6fc5f10f1b074a6993cb13b0b431f64079a509d63d3aa8b7"}, + {file = "numpy-2.1.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a7d80b2e904faa63068ead63107189164ca443b42dd1930299e0d1cb041cec2e"}, + {file = "numpy-2.1.2.tar.gz", hash = "sha256:13532a088217fa624c99b843eeb54640de23b3414b14aa66d023805eb731066c"}, +] + +[[package]] +name = "overrides" +version = "7.7.0" +description = "A decorator to automatically detect mismatch when overriding a method." +optional = false +python-versions = ">=3.6" +files = [ + {file = "overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"}, + {file = "overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a"}, +] + +[[package]] +name = "packaging" +version = "24.1" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, + {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, +] + +[[package]] +name = "pandas" +version = "2.2.3" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d9c45366def9a3dd85a6454c0e7908f2b3b8e9c138f5dc38fed7ce720d8453ed"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86976a1c5b25ae3f8ccae3a5306e443569ee3c3faf444dfd0f41cda24667ad57"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8661b0238a69d7aafe156b7fa86c44b881387509653fdf857bebc5e4008ad42"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:37e0aced3e8f539eccf2e099f65cdb9c8aa85109b0be6e93e2baff94264bdc6f"}, + {file = "pandas-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:56534ce0746a58afaf7942ba4863e0ef81c9c50d3f0ae93e9497d6a41a057645"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:66108071e1b935240e74525006034333f98bcdb87ea116de573a6a0dccb6c039"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7c2875855b0ff77b2a64a0365e24455d9990730d6431b9e0ee18ad8acee13dbd"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd8d0c3be0515c12fed0bdbae072551c8b54b7192c7b1fda0ba56059a0179698"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c124333816c3a9b03fbeef3a9f230ba9a737e9e5bb4060aa2107a86cc0a497fc"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:63cc132e40a2e084cf01adf0775b15ac515ba905d7dcca47e9a251819c575ef3"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:29401dbfa9ad77319367d36940cd8a0b3a11aba16063e39632d98b0e931ddf32"}, + {file = "pandas-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:3fc6873a41186404dad67245896a6e440baacc92f5b716ccd1bc9ed2995ab2c5"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b1d432e8d08679a40e2a6d8b2f9770a5c21793a6f9f47fdd52c5ce1948a5a8a9"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a5a1595fe639f5988ba6a8e5bc9649af3baf26df3998a0abe56c02609392e0a4"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5de54125a92bb4d1c051c0659e6fcb75256bf799a732a87184e5ea503965bce3"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fffb8ae78d8af97f849404f21411c95062db1496aeb3e56f146f0355c9989319"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfcb5ee8d4d50c06a51c2fffa6cff6272098ad6540aed1a76d15fb9318194d8"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:062309c1b9ea12a50e8ce661145c6aab431b1e99530d3cd60640e255778bd43a"}, + {file = "pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb"}, + {file = "pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc6b93f9b966093cb0fd62ff1a7e4c09e6d546ad7c1de191767baffc57628f39"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5dbca4c1acd72e8eeef4753eeca07de9b1db4f398669d5994086f788a5d7cc30"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8cd6d7cc958a3910f934ea8dbdf17b2364827bb4dafc38ce6eef6bb3d65ff09c"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99df71520d25fade9db7c1076ac94eb994f4d2673ef2aa2e86ee039b6746d20c"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31d0ced62d4ea3e231a9f228366919a5ea0b07440d9d4dac345376fd8e1477ea"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7eee9e7cea6adf3e3d24e304ac6b8300646e2a5d1cd3a3c2abed9101b0846761"}, + {file = "pandas-2.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:4850ba03528b6dd51d6c5d273c46f183f39a9baf3f0143e566b89450965b105e"}, + {file = "pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667"}, +] + +[package.dependencies] +numpy = {version = ">=1.26.0", markers = "python_version >= \"3.12\""} +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.7" + +[package.extras] +all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"] +aws = ["s3fs (>=2022.11.0)"] +clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"] +compression = ["zstandard (>=0.19.0)"] +computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"] +feather = ["pyarrow (>=10.0.1)"] +fss = ["fsspec (>=2022.11.0)"] +gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"] +hdf5 = ["tables (>=3.8.0)"] +html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"] +mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"] +parquet = ["pyarrow (>=10.0.1)"] +performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"] +plot = ["matplotlib (>=3.6.3)"] +postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"] +pyarrow = ["pyarrow (>=10.0.1)"] +spss = ["pyreadstat (>=1.2.0)"] +sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.9.2)"] + +[[package]] +name = "pandocfilters" +version = "1.5.1" +description = "Utilities for writing pandoc filters in python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc"}, + {file = "pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e"}, +] + +[[package]] +name = "parso" +version = "0.8.4" +description = "A Python Parser" +optional = false +python-versions = ">=3.6" +files = [ + {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"}, + {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"}, +] + +[package.extras] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["docopt", "pytest"] + +[[package]] +name = "pexpect" +version = "4.9.0" +description = "Pexpect allows easy control of interactive console applications." +optional = false +python-versions = "*" +files = [ + {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, + {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, +] + +[package.dependencies] +ptyprocess = ">=0.5" + +[[package]] +name = "pillow" +version = "11.0.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pillow-11.0.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:6619654954dc4936fcff82db8eb6401d3159ec6be81e33c6000dfd76ae189947"}, + {file = "pillow-11.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b3c5ac4bed7519088103d9450a1107f76308ecf91d6dabc8a33a2fcfb18d0fba"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a65149d8ada1055029fcb665452b2814fe7d7082fcb0c5bed6db851cb69b2086"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88a58d8ac0cc0e7f3a014509f0455248a76629ca9b604eca7dc5927cc593c5e9"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:c26845094b1af3c91852745ae78e3ea47abf3dbcd1cf962f16b9a5fbe3ee8488"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:1a61b54f87ab5786b8479f81c4b11f4d61702830354520837f8cc791ebba0f5f"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:674629ff60030d144b7bca2b8330225a9b11c482ed408813924619c6f302fdbb"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:598b4e238f13276e0008299bd2482003f48158e2b11826862b1eb2ad7c768b97"}, + {file = "pillow-11.0.0-cp310-cp310-win32.whl", hash = "sha256:9a0f748eaa434a41fccf8e1ee7a3eed68af1b690e75328fd7a60af123c193b50"}, + {file = "pillow-11.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:a5629742881bcbc1f42e840af185fd4d83a5edeb96475a575f4da50d6ede337c"}, + {file = "pillow-11.0.0-cp310-cp310-win_arm64.whl", hash = "sha256:ee217c198f2e41f184f3869f3e485557296d505b5195c513b2bfe0062dc537f1"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1c1d72714f429a521d8d2d018badc42414c3077eb187a59579f28e4270b4b0fc"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:499c3a1b0d6fc8213519e193796eb1a86a1be4b1877d678b30f83fd979811d1a"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c8b2351c85d855293a299038e1f89db92a2f35e8d2f783489c6f0b2b5f3fe8a3"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f4dba50cfa56f910241eb7f883c20f1e7b1d8f7d91c750cd0b318bad443f4d5"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:5ddbfd761ee00c12ee1be86c9c0683ecf5bb14c9772ddbd782085779a63dd55b"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:45c566eb10b8967d71bf1ab8e4a525e5a93519e29ea071459ce517f6b903d7fa"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:b4fd7bd29610a83a8c9b564d457cf5bd92b4e11e79a4ee4716a63c959699b306"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:cb929ca942d0ec4fac404cbf520ee6cac37bf35be479b970c4ffadf2b6a1cad9"}, + {file = "pillow-11.0.0-cp311-cp311-win32.whl", hash = "sha256:006bcdd307cc47ba43e924099a038cbf9591062e6c50e570819743f5607404f5"}, + {file = "pillow-11.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:52a2d8323a465f84faaba5236567d212c3668f2ab53e1c74c15583cf507a0291"}, + {file = "pillow-11.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:16095692a253047fe3ec028e951fa4221a1f3ed3d80c397e83541a3037ff67c9"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d2c0a187a92a1cb5ef2c8ed5412dd8d4334272617f532d4ad4de31e0495bd923"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:084a07ef0821cfe4858fe86652fffac8e187b6ae677e9906e192aafcc1b69903"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8069c5179902dcdce0be9bfc8235347fdbac249d23bd90514b7a47a72d9fecf4"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f02541ef64077f22bf4924f225c0fd1248c168f86e4b7abdedd87d6ebaceab0f"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:fcb4621042ac4b7865c179bb972ed0da0218a076dc1820ffc48b1d74c1e37fe9"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:00177a63030d612148e659b55ba99527803288cea7c75fb05766ab7981a8c1b7"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8853a3bf12afddfdf15f57c4b02d7ded92c7a75a5d7331d19f4f9572a89c17e6"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3107c66e43bda25359d5ef446f59c497de2b5ed4c7fdba0894f8d6cf3822dafc"}, + {file = "pillow-11.0.0-cp312-cp312-win32.whl", hash = "sha256:86510e3f5eca0ab87429dd77fafc04693195eec7fd6a137c389c3eeb4cfb77c6"}, + {file = "pillow-11.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:8ec4a89295cd6cd4d1058a5e6aec6bf51e0eaaf9714774e1bfac7cfc9051db47"}, + {file = "pillow-11.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:27a7860107500d813fcd203b4ea19b04babe79448268403172782754870dac25"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bcd1fb5bb7b07f64c15618c89efcc2cfa3e95f0e3bcdbaf4642509de1942a699"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e038b0745997c7dcaae350d35859c9715c71e92ffb7e0f4a8e8a16732150f38"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ae08bd8ffc41aebf578c2af2f9d8749d91f448b3bfd41d7d9ff573d74f2a6b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d69bfd8ec3219ae71bcde1f942b728903cad25fafe3100ba2258b973bd2bc1b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:61b887f9ddba63ddf62fd02a3ba7add935d053b6dd7d58998c630e6dbade8527"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:c6a660307ca9d4867caa8d9ca2c2658ab685de83792d1876274991adec7b93fa"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:73e3a0200cdda995c7e43dd47436c1548f87a30bb27fb871f352a22ab8dcf45f"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fba162b8872d30fea8c52b258a542c5dfd7b235fb5cb352240c8d63b414013eb"}, + {file = "pillow-11.0.0-cp313-cp313-win32.whl", hash = "sha256:f1b82c27e89fffc6da125d5eb0ca6e68017faf5efc078128cfaa42cf5cb38798"}, + {file = "pillow-11.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:8ba470552b48e5835f1d23ecb936bb7f71d206f9dfeee64245f30c3270b994de"}, + {file = "pillow-11.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:846e193e103b41e984ac921b335df59195356ce3f71dcfd155aa79c603873b84"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4ad70c4214f67d7466bea6a08061eba35c01b1b89eaa098040a35272a8efb22b"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6ec0d5af64f2e3d64a165f490d96368bb5dea8b8f9ad04487f9ab60dc4bb6003"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c809a70e43c7977c4a42aefd62f0131823ebf7dd73556fa5d5950f5b354087e2"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:4b60c9520f7207aaf2e1d94de026682fc227806c6e1f55bba7606d1c94dd623a"}, + {file = "pillow-11.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:1e2688958a840c822279fda0086fec1fdab2f95bf2b717b66871c4ad9859d7e8"}, + {file = "pillow-11.0.0-cp313-cp313t-win32.whl", hash = "sha256:607bbe123c74e272e381a8d1957083a9463401f7bd01287f50521ecb05a313f8"}, + {file = "pillow-11.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5c39ed17edea3bc69c743a8dd3e9853b7509625c2462532e62baa0732163a904"}, + {file = "pillow-11.0.0-cp313-cp313t-win_arm64.whl", hash = "sha256:75acbbeb05b86bc53cbe7b7e6fe00fbcf82ad7c684b3ad82e3d711da9ba287d3"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2e46773dc9f35a1dd28bd6981332fd7f27bec001a918a72a79b4133cf5291dba"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2679d2258b7f1192b378e2893a8a0a0ca472234d4c2c0e6bdd3380e8dfa21b6a"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eda2616eb2313cbb3eebbe51f19362eb434b18e3bb599466a1ffa76a033fb916"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ec184af98a121fb2da42642dea8a29ec80fc3efbaefb86d8fdd2606619045d"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:8594f42df584e5b4bb9281799698403f7af489fba84c34d53d1c4bfb71b7c4e7"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:c12b5ae868897c7338519c03049a806af85b9b8c237b7d675b8c5e089e4a618e"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:70fbbdacd1d271b77b7721fe3cdd2d537bbbd75d29e6300c672ec6bb38d9672f"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5178952973e588b3f1360868847334e9e3bf49d19e169bbbdfaf8398002419ae"}, + {file = "pillow-11.0.0-cp39-cp39-win32.whl", hash = "sha256:8c676b587da5673d3c75bd67dd2a8cdfeb282ca38a30f37950511766b26858c4"}, + {file = "pillow-11.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:94f3e1780abb45062287b4614a5bc0874519c86a777d4a7ad34978e86428b8dd"}, + {file = "pillow-11.0.0-cp39-cp39-win_arm64.whl", hash = "sha256:290f2cc809f9da7d6d622550bbf4c1e57518212da51b6a30fe8e0a270a5b78bd"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:1187739620f2b365de756ce086fdb3604573337cc28a0d3ac4a01ab6b2d2a6d2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:fbbcb7b57dc9c794843e3d1258c0fbf0f48656d46ffe9e09b63bbd6e8cd5d0a2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d203af30149ae339ad1b4f710d9844ed8796e97fda23ffbc4cc472968a47d0b"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21a0d3b115009ebb8ac3d2ebec5c2982cc693da935f4ab7bb5c8ebe2f47d36f2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:73853108f56df97baf2bb8b522f3578221e56f646ba345a372c78326710d3830"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e58876c91f97b0952eb766123bfef372792ab3f4e3e1f1a2267834c2ab131734"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:224aaa38177597bb179f3ec87eeefcce8e4f85e608025e9cfac60de237ba6316"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5bd2d3bdb846d757055910f0a59792d33b555800813c3b39ada1829c372ccb06"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:375b8dd15a1f5d2feafff536d47e22f69625c1aa92f12b339ec0b2ca40263273"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:daffdf51ee5db69a82dd127eabecce20729e21f7a3680cf7cbb23f0829189790"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7326a1787e3c7b0429659e0a944725e1b03eeaa10edd945a86dead1913383944"}, + {file = "pillow-11.0.0.tar.gz", hash = "sha256:72bacbaf24ac003fea9bff9837d1eedb6088758d41e100c1552930151f677739"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=8.1)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] +typing = ["typing-extensions"] +xmp = ["defusedxml"] + +[[package]] +name = "platformdirs" +version = "4.3.6" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." +optional = false +python-versions = ">=3.8" +files = [ + {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, + {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, +] + +[package.extras] +docs = ["furo (>=2024.8.6)", "proselint (>=0.14)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2.4)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=8.3.2)", "pytest-cov (>=5)", "pytest-mock (>=3.14)"] +type = ["mypy (>=1.11.2)"] + +[[package]] +name = "prometheus-client" +version = "0.21.0" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.8" +files = [ + {file = "prometheus_client-0.21.0-py3-none-any.whl", hash = "sha256:4fa6b4dd0ac16d58bb587c04b1caae65b8c5043e85f778f42f5f632f6af2e166"}, + {file = "prometheus_client-0.21.0.tar.gz", hash = "sha256:96c83c606b71ff2b0a433c98889d275f51ffec6c5e267de37c7a2b5c9aa9233e"}, +] + +[package.extras] +twisted = ["twisted"] + +[[package]] +name = "prompt-toolkit" +version = "3.0.48" +description = "Library for building powerful interactive command lines in Python" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "prompt_toolkit-3.0.48-py3-none-any.whl", hash = "sha256:f49a827f90062e411f1ce1f854f2aedb3c23353244f8108b89283587397ac10e"}, + {file = "prompt_toolkit-3.0.48.tar.gz", hash = "sha256:d6623ab0477a80df74e646bdbc93621143f5caf104206aa29294d53de1a03d90"}, +] + +[package.dependencies] +wcwidth = "*" + +[[package]] +name = "psutil" +version = "6.1.0" +description = "Cross-platform lib for process and system monitoring in Python." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ + {file = "psutil-6.1.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:ff34df86226c0227c52f38b919213157588a678d049688eded74c76c8ba4a5d0"}, + {file = "psutil-6.1.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:c0e0c00aa18ca2d3b2b991643b799a15fc8f0563d2ebb6040f64ce8dc027b942"}, + {file = "psutil-6.1.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:000d1d1ebd634b4efb383f4034437384e44a6d455260aaee2eca1e9c1b55f047"}, + {file = "psutil-6.1.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:5cd2bcdc75b452ba2e10f0e8ecc0b57b827dd5d7aaffbc6821b2a9a242823a76"}, + {file = "psutil-6.1.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:045f00a43c737f960d273a83973b2511430d61f283a44c96bf13a6e829ba8fdc"}, + {file = "psutil-6.1.0-cp27-none-win32.whl", hash = "sha256:9118f27452b70bb1d9ab3198c1f626c2499384935aaf55388211ad982611407e"}, + {file = "psutil-6.1.0-cp27-none-win_amd64.whl", hash = "sha256:a8506f6119cff7015678e2bce904a4da21025cc70ad283a53b099e7620061d85"}, + {file = "psutil-6.1.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:6e2dcd475ce8b80522e51d923d10c7871e45f20918e027ab682f94f1c6351688"}, + {file = "psutil-6.1.0-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:0895b8414afafc526712c498bd9de2b063deaac4021a3b3c34566283464aff8e"}, + {file = "psutil-6.1.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9dcbfce5d89f1d1f2546a2090f4fcf87c7f669d1d90aacb7d7582addece9fb38"}, + {file = "psutil-6.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:498c6979f9c6637ebc3a73b3f87f9eb1ec24e1ce53a7c5173b8508981614a90b"}, + {file = "psutil-6.1.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d905186d647b16755a800e7263d43df08b790d709d575105d419f8b6ef65423a"}, + {file = "psutil-6.1.0-cp36-cp36m-win32.whl", hash = "sha256:6d3fbbc8d23fcdcb500d2c9f94e07b1342df8ed71b948a2649b5cb060a7c94ca"}, + {file = "psutil-6.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:1209036fbd0421afde505a4879dee3b2fd7b1e14fee81c0069807adcbbcca747"}, + {file = "psutil-6.1.0-cp37-abi3-win32.whl", hash = "sha256:1ad45a1f5d0b608253b11508f80940985d1d0c8f6111b5cb637533a0e6ddc13e"}, + {file = "psutil-6.1.0-cp37-abi3-win_amd64.whl", hash = "sha256:a8fb3752b491d246034fa4d279ff076501588ce8cbcdbb62c32fd7a377d996be"}, + {file = "psutil-6.1.0.tar.gz", hash = "sha256:353815f59a7f64cdaca1c0307ee13558a0512f6db064e92fe833784f08539c7a"}, +] + +[package.extras] +dev = ["black", "check-manifest", "coverage", "packaging", "pylint", "pyperf", "pypinfo", "pytest-cov", "requests", "rstcheck", "ruff", "sphinx", "sphinx_rtd_theme", "toml-sort", "twine", "virtualenv", "wheel"] +test = ["pytest", "pytest-xdist", "setuptools"] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +optional = false +python-versions = "*" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] + +[[package]] +name = "pure-eval" +version = "0.2.3" +description = "Safely evaluate AST nodes without side effects" +optional = false +python-versions = "*" +files = [ + {file = "pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0"}, + {file = "pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42"}, +] + +[package.extras] +tests = ["pytest"] + +[[package]] +name = "pycparser" +version = "2.22" +description = "C parser in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, + {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, +] + +[[package]] +name = "pygments" +version = "2.18.0" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, +] + +[package.extras] +windows-terminal = ["colorama (>=0.4.6)"] + +[[package]] +name = "pyparsing" +version = "3.2.0" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pyparsing-3.2.0-py3-none-any.whl", hash = "sha256:93d9577b88da0bbea8cc8334ee8b918ed014968fd2ec383e868fb8afb1ccef84"}, + {file = "pyparsing-3.2.0.tar.gz", hash = "sha256:cbf74e27246d595d9a74b186b810f6fbb86726dbf3b9532efb343f6d7294fe9c"}, +] + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, + {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, +] + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-json-logger" +version = "2.0.7" +description = "A python library adding a json log formatter" +optional = false +python-versions = ">=3.6" +files = [ + {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"}, + {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"}, +] + +[[package]] +name = "pytz" +version = "2024.2" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2024.2-py2.py3-none-any.whl", hash = "sha256:31c7c1817eb7fae7ca4b8c7ee50c72f93aa2dd863de768e1ef4245d426aa0725"}, + {file = "pytz-2024.2.tar.gz", hash = "sha256:2aa355083c50a0f93fa581709deac0c9ad65cca8a9e9beac660adcbd493c798a"}, +] + +[[package]] +name = "pywin32" +version = "308" +description = "Python for Window Extensions" +optional = false +python-versions = "*" +files = [ + {file = "pywin32-308-cp310-cp310-win32.whl", hash = "sha256:796ff4426437896550d2981b9c2ac0ffd75238ad9ea2d3bfa67a1abd546d262e"}, + {file = "pywin32-308-cp310-cp310-win_amd64.whl", hash = "sha256:4fc888c59b3c0bef905ce7eb7e2106a07712015ea1c8234b703a088d46110e8e"}, + {file = "pywin32-308-cp310-cp310-win_arm64.whl", hash = "sha256:a5ab5381813b40f264fa3495b98af850098f814a25a63589a8e9eb12560f450c"}, + {file = "pywin32-308-cp311-cp311-win32.whl", hash = "sha256:5d8c8015b24a7d6855b1550d8e660d8daa09983c80e5daf89a273e5c6fb5095a"}, + {file = "pywin32-308-cp311-cp311-win_amd64.whl", hash = "sha256:575621b90f0dc2695fec346b2d6302faebd4f0f45c05ea29404cefe35d89442b"}, + {file = "pywin32-308-cp311-cp311-win_arm64.whl", hash = "sha256:100a5442b7332070983c4cd03f2e906a5648a5104b8a7f50175f7906efd16bb6"}, + {file = "pywin32-308-cp312-cp312-win32.whl", hash = "sha256:587f3e19696f4bf96fde9d8a57cec74a57021ad5f204c9e627e15c33ff568897"}, + {file = "pywin32-308-cp312-cp312-win_amd64.whl", hash = "sha256:00b3e11ef09ede56c6a43c71f2d31857cf7c54b0ab6e78ac659497abd2834f47"}, + {file = "pywin32-308-cp312-cp312-win_arm64.whl", hash = "sha256:9b4de86c8d909aed15b7011182c8cab38c8850de36e6afb1f0db22b8959e3091"}, + {file = "pywin32-308-cp313-cp313-win32.whl", hash = "sha256:1c44539a37a5b7b21d02ab34e6a4d314e0788f1690d65b48e9b0b89f31abbbed"}, + {file = "pywin32-308-cp313-cp313-win_amd64.whl", hash = "sha256:fd380990e792eaf6827fcb7e187b2b4b1cede0585e3d0c9e84201ec27b9905e4"}, + {file = "pywin32-308-cp313-cp313-win_arm64.whl", hash = "sha256:ef313c46d4c18dfb82a2431e3051ac8f112ccee1a34f29c263c583c568db63cd"}, + {file = "pywin32-308-cp37-cp37m-win32.whl", hash = "sha256:1f696ab352a2ddd63bd07430080dd598e6369152ea13a25ebcdd2f503a38f1ff"}, + {file = "pywin32-308-cp37-cp37m-win_amd64.whl", hash = "sha256:13dcb914ed4347019fbec6697a01a0aec61019c1046c2b905410d197856326a6"}, + {file = "pywin32-308-cp38-cp38-win32.whl", hash = "sha256:5794e764ebcabf4ff08c555b31bd348c9025929371763b2183172ff4708152f0"}, + {file = "pywin32-308-cp38-cp38-win_amd64.whl", hash = "sha256:3b92622e29d651c6b783e368ba7d6722b1634b8e70bd376fd7610fe1992e19de"}, + {file = "pywin32-308-cp39-cp39-win32.whl", hash = "sha256:7873ca4dc60ab3287919881a7d4f88baee4a6e639aa6962de25a98ba6b193341"}, + {file = "pywin32-308-cp39-cp39-win_amd64.whl", hash = "sha256:71b3322d949b4cc20776436a9c9ba0eeedcbc9c650daa536df63f0ff111bb920"}, +] + +[[package]] +name = "pywinpty" +version = "2.0.14" +description = "Pseudo terminal support for Windows from Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pywinpty-2.0.14-cp310-none-win_amd64.whl", hash = "sha256:0b149c2918c7974f575ba79f5a4aad58bd859a52fa9eb1296cc22aa412aa411f"}, + {file = "pywinpty-2.0.14-cp311-none-win_amd64.whl", hash = "sha256:cf2a43ac7065b3e0dc8510f8c1f13a75fb8fde805efa3b8cff7599a1ef497bc7"}, + {file = "pywinpty-2.0.14-cp312-none-win_amd64.whl", hash = "sha256:55dad362ef3e9408ade68fd173e4f9032b3ce08f68cfe7eacb2c263ea1179737"}, + {file = "pywinpty-2.0.14-cp313-none-win_amd64.whl", hash = "sha256:074fb988a56ec79ca90ed03a896d40707131897cefb8f76f926e3834227f2819"}, + {file = "pywinpty-2.0.14-cp39-none-win_amd64.whl", hash = "sha256:5725fd56f73c0531ec218663bd8c8ff5acc43c78962fab28564871b5fce053fd"}, + {file = "pywinpty-2.0.14.tar.gz", hash = "sha256:18bd9529e4a5daf2d9719aa17788ba6013e594ae94c5a0c27e83df3278b0660e"}, +] + +[[package]] +name = "pyyaml" +version = "6.0.2" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, + {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, + {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, + {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, + {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, + {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, + {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, + {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, + {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, + {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, + {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, + {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, + {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, + {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, + {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, + {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, +] + +[[package]] +name = "pyzmq" +version = "26.2.0" +description = "Python bindings for 0MQ" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pyzmq-26.2.0-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:ddf33d97d2f52d89f6e6e7ae66ee35a4d9ca6f36eda89c24591b0c40205a3629"}, + {file = "pyzmq-26.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dacd995031a01d16eec825bf30802fceb2c3791ef24bcce48fa98ce40918c27b"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89289a5ee32ef6c439086184529ae060c741334b8970a6855ec0b6ad3ff28764"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5506f06d7dc6ecf1efacb4a013b1f05071bb24b76350832c96449f4a2d95091c"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ea039387c10202ce304af74def5021e9adc6297067f3441d348d2b633e8166a"}, + {file = "pyzmq-26.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a2224fa4a4c2ee872886ed00a571f5e967c85e078e8e8c2530a2fb01b3309b88"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:28ad5233e9c3b52d76196c696e362508959741e1a005fb8fa03b51aea156088f"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:1c17211bc037c7d88e85ed8b7d8f7e52db6dc8eca5590d162717c654550f7282"}, + {file = "pyzmq-26.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b8f86dd868d41bea9a5f873ee13bf5551c94cf6bc51baebc6f85075971fe6eea"}, + {file = "pyzmq-26.2.0-cp310-cp310-win32.whl", hash = "sha256:46a446c212e58456b23af260f3d9fb785054f3e3653dbf7279d8f2b5546b21c2"}, + {file = "pyzmq-26.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:49d34ab71db5a9c292a7644ce74190b1dd5a3475612eefb1f8be1d6961441971"}, + {file = "pyzmq-26.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:bfa832bfa540e5b5c27dcf5de5d82ebc431b82c453a43d141afb1e5d2de025fa"}, + {file = "pyzmq-26.2.0-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:8f7e66c7113c684c2b3f1c83cdd3376103ee0ce4c49ff80a648643e57fb22218"}, + {file = "pyzmq-26.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3a495b30fc91db2db25120df5847d9833af237546fd59170701acd816ccc01c4"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77eb0968da535cba0470a5165468b2cac7772cfb569977cff92e240f57e31bef"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ace4f71f1900a548f48407fc9be59c6ba9d9aaf658c2eea6cf2779e72f9f317"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92a78853d7280bffb93df0a4a6a2498cba10ee793cc8076ef797ef2f74d107cf"}, + {file = "pyzmq-26.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:689c5d781014956a4a6de61d74ba97b23547e431e9e7d64f27d4922ba96e9d6e"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0aca98bc423eb7d153214b2df397c6421ba6373d3397b26c057af3c904452e37"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1f3496d76b89d9429a656293744ceca4d2ac2a10ae59b84c1da9b5165f429ad3"}, + {file = "pyzmq-26.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5c2b3bfd4b9689919db068ac6c9911f3fcb231c39f7dd30e3138be94896d18e6"}, + {file = "pyzmq-26.2.0-cp311-cp311-win32.whl", hash = "sha256:eac5174677da084abf378739dbf4ad245661635f1600edd1221f150b165343f4"}, + {file = "pyzmq-26.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:5a509df7d0a83a4b178d0f937ef14286659225ef4e8812e05580776c70e155d5"}, + {file = "pyzmq-26.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:c0e6091b157d48cbe37bd67233318dbb53e1e6327d6fc3bb284afd585d141003"}, + {file = "pyzmq-26.2.0-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:ded0fc7d90fe93ae0b18059930086c51e640cdd3baebdc783a695c77f123dcd9"}, + {file = "pyzmq-26.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:17bf5a931c7f6618023cdacc7081f3f266aecb68ca692adac015c383a134ca52"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55cf66647e49d4621a7e20c8d13511ef1fe1efbbccf670811864452487007e08"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4661c88db4a9e0f958c8abc2b97472e23061f0bc737f6f6179d7a27024e1faa5"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea7f69de383cb47522c9c208aec6dd17697db7875a4674c4af3f8cfdac0bdeae"}, + {file = "pyzmq-26.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:7f98f6dfa8b8ccaf39163ce872bddacca38f6a67289116c8937a02e30bbe9711"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e3e0210287329272539eea617830a6a28161fbbd8a3271bf4150ae3e58c5d0e6"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6b274e0762c33c7471f1a7471d1a2085b1a35eba5cdc48d2ae319f28b6fc4de3"}, + {file = "pyzmq-26.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:29c6a4635eef69d68a00321e12a7d2559fe2dfccfa8efae3ffb8e91cd0b36a8b"}, + {file = "pyzmq-26.2.0-cp312-cp312-win32.whl", hash = "sha256:989d842dc06dc59feea09e58c74ca3e1678c812a4a8a2a419046d711031f69c7"}, + {file = "pyzmq-26.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:2a50625acdc7801bc6f74698c5c583a491c61d73c6b7ea4dee3901bb99adb27a"}, + {file = "pyzmq-26.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:4d29ab8592b6ad12ebbf92ac2ed2bedcfd1cec192d8e559e2e099f648570e19b"}, + {file = "pyzmq-26.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9dd8cd1aeb00775f527ec60022004d030ddc51d783d056e3e23e74e623e33726"}, + {file = "pyzmq-26.2.0-cp313-cp313-macosx_10_15_universal2.whl", hash = "sha256:28c812d9757fe8acecc910c9ac9dafd2ce968c00f9e619db09e9f8f54c3a68a3"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d80b1dd99c1942f74ed608ddb38b181b87476c6a966a88a950c7dee118fdf50"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c997098cc65e3208eca09303630e84d42718620e83b733d0fd69543a9cab9cb"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ad1bc8d1b7a18497dda9600b12dc193c577beb391beae5cd2349184db40f187"}, + {file = "pyzmq-26.2.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:bea2acdd8ea4275e1278350ced63da0b166421928276c7c8e3f9729d7402a57b"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:23f4aad749d13698f3f7b64aad34f5fc02d6f20f05999eebc96b89b01262fb18"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:a4f96f0d88accc3dbe4a9025f785ba830f968e21e3e2c6321ccdfc9aef755115"}, + {file = "pyzmq-26.2.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ced65e5a985398827cc9276b93ef6dfabe0273c23de8c7931339d7e141c2818e"}, + {file = "pyzmq-26.2.0-cp313-cp313-win32.whl", hash = "sha256:31507f7b47cc1ead1f6e86927f8ebb196a0bab043f6345ce070f412a59bf87b5"}, + {file = "pyzmq-26.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:70fc7fcf0410d16ebdda9b26cbd8bf8d803d220a7f3522e060a69a9c87bf7bad"}, + {file = "pyzmq-26.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:c3789bd5768ab5618ebf09cef6ec2b35fed88709b104351748a63045f0ff9797"}, + {file = "pyzmq-26.2.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:034da5fc55d9f8da09015d368f519478a52675e558c989bfcb5cf6d4e16a7d2a"}, + {file = "pyzmq-26.2.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:c92d73464b886931308ccc45b2744e5968cbaade0b1d6aeb40d8ab537765f5bc"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:794a4562dcb374f7dbbfb3f51d28fb40123b5a2abadee7b4091f93054909add5"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aee22939bb6075e7afededabad1a56a905da0b3c4e3e0c45e75810ebe3a52672"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ae90ff9dad33a1cfe947d2c40cb9cb5e600d759ac4f0fd22616ce6540f72797"}, + {file = "pyzmq-26.2.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:43a47408ac52647dfabbc66a25b05b6a61700b5165807e3fbd40063fcaf46386"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:25bf2374a2a8433633c65ccb9553350d5e17e60c8eb4de4d92cc6bd60f01d306"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_i686.whl", hash = "sha256:007137c9ac9ad5ea21e6ad97d3489af654381324d5d3ba614c323f60dab8fae6"}, + {file = "pyzmq-26.2.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:470d4a4f6d48fb34e92d768b4e8a5cc3780db0d69107abf1cd7ff734b9766eb0"}, + {file = "pyzmq-26.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3b55a4229ce5da9497dd0452b914556ae58e96a4381bb6f59f1305dfd7e53fc8"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9cb3a6460cdea8fe8194a76de8895707e61ded10ad0be97188cc8463ffa7e3a8"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8ab5cad923cc95c87bffee098a27856c859bd5d0af31bd346035aa816b081fe1"}, + {file = "pyzmq-26.2.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ed69074a610fad1c2fda66180e7b2edd4d31c53f2d1872bc2d1211563904cd9"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:cccba051221b916a4f5e538997c45d7d136a5646442b1231b916d0164067ea27"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:0eaa83fc4c1e271c24eaf8fb083cbccef8fde77ec8cd45f3c35a9a123e6da097"}, + {file = "pyzmq-26.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9edda2df81daa129b25a39b86cb57dfdfe16f7ec15b42b19bfac503360d27a93"}, + {file = "pyzmq-26.2.0-cp37-cp37m-win32.whl", hash = "sha256:ea0eb6af8a17fa272f7b98d7bebfab7836a0d62738e16ba380f440fceca2d951"}, + {file = "pyzmq-26.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:4ff9dc6bc1664bb9eec25cd17506ef6672d506115095411e237d571e92a58231"}, + {file = "pyzmq-26.2.0-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:2eb7735ee73ca1b0d71e0e67c3739c689067f055c764f73aac4cc8ecf958ee3f"}, + {file = "pyzmq-26.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1a534f43bc738181aa7cbbaf48e3eca62c76453a40a746ab95d4b27b1111a7d2"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:aedd5dd8692635813368e558a05266b995d3d020b23e49581ddd5bbe197a8ab6"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8be4700cd8bb02cc454f630dcdf7cfa99de96788b80c51b60fe2fe1dac480289"}, + {file = "pyzmq-26.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fcc03fa4997c447dce58264e93b5aa2d57714fbe0f06c07b7785ae131512732"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:402b190912935d3db15b03e8f7485812db350d271b284ded2b80d2e5704be780"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8685fa9c25ff00f550c1fec650430c4b71e4e48e8d852f7ddcf2e48308038640"}, + {file = "pyzmq-26.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:76589c020680778f06b7e0b193f4b6dd66d470234a16e1df90329f5e14a171cd"}, + {file = "pyzmq-26.2.0-cp38-cp38-win32.whl", hash = "sha256:8423c1877d72c041f2c263b1ec6e34360448decfb323fa8b94e85883043ef988"}, + {file = "pyzmq-26.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:76589f2cd6b77b5bdea4fca5992dc1c23389d68b18ccc26a53680ba2dc80ff2f"}, + {file = "pyzmq-26.2.0-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:b1d464cb8d72bfc1a3adc53305a63a8e0cac6bc8c5a07e8ca190ab8d3faa43c2"}, + {file = "pyzmq-26.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4da04c48873a6abdd71811c5e163bd656ee1b957971db7f35140a2d573f6949c"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:d049df610ac811dcffdc147153b414147428567fbbc8be43bb8885f04db39d98"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:05590cdbc6b902101d0e65d6a4780af14dc22914cc6ab995d99b85af45362cc9"}, + {file = "pyzmq-26.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c811cfcd6a9bf680236c40c6f617187515269ab2912f3d7e8c0174898e2519db"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6835dd60355593de10350394242b5757fbbd88b25287314316f266e24c61d073"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc6bee759a6bddea5db78d7dcd609397449cb2d2d6587f48f3ca613b19410cfc"}, + {file = "pyzmq-26.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c530e1eecd036ecc83c3407f77bb86feb79916d4a33d11394b8234f3bd35b940"}, + {file = "pyzmq-26.2.0-cp39-cp39-win32.whl", hash = "sha256:367b4f689786fca726ef7a6c5ba606958b145b9340a5e4808132cc65759abd44"}, + {file = "pyzmq-26.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:e6fa2e3e683f34aea77de8112f6483803c96a44fd726d7358b9888ae5bb394ec"}, + {file = "pyzmq-26.2.0-cp39-cp39-win_arm64.whl", hash = "sha256:7445be39143a8aa4faec43b076e06944b8f9d0701b669df4af200531b21e40bb"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:706e794564bec25819d21a41c31d4df2d48e1cc4b061e8d345d7fb4dd3e94072"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b435f2753621cd36e7c1762156815e21c985c72b19135dac43a7f4f31d28dd1"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:160c7e0a5eb178011e72892f99f918c04a131f36056d10d9c1afb223fc952c2d"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c4a71d5d6e7b28a47a394c0471b7e77a0661e2d651e7ae91e0cab0a587859ca"}, + {file = "pyzmq-26.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:90412f2db8c02a3864cbfc67db0e3dcdbda336acf1c469526d3e869394fe001c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2ea4ad4e6a12e454de05f2949d4beddb52460f3de7c8b9d5c46fbb7d7222e02c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fc4f7a173a5609631bb0c42c23d12c49df3966f89f496a51d3eb0ec81f4519d6"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:878206a45202247781472a2d99df12a176fef806ca175799e1c6ad263510d57c"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:17c412bad2eb9468e876f556eb4ee910e62d721d2c7a53c7fa31e643d35352e6"}, + {file = "pyzmq-26.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:0d987a3ae5a71c6226b203cfd298720e0086c7fe7c74f35fa8edddfbd6597eed"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:39887ac397ff35b7b775db7201095fc6310a35fdbae85bac4523f7eb3b840e20"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fdb5b3e311d4d4b0eb8b3e8b4d1b0a512713ad7e6a68791d0923d1aec433d919"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:226af7dcb51fdb0109f0016449b357e182ea0ceb6b47dfb5999d569e5db161d5"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0bed0e799e6120b9c32756203fb9dfe8ca2fb8467fed830c34c877e25638c3fc"}, + {file = "pyzmq-26.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:29c7947c594e105cb9e6c466bace8532dc1ca02d498684128b339799f5248277"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:cdeabcff45d1c219636ee2e54d852262e5c2e085d6cb476d938aee8d921356b3"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35cffef589bcdc587d06f9149f8d5e9e8859920a071df5a2671de2213bef592a"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18c8dc3b7468d8b4bdf60ce9d7141897da103c7a4690157b32b60acb45e333e6"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7133d0a1677aec369d67dd78520d3fa96dd7f3dcec99d66c1762870e5ea1a50a"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:6a96179a24b14fa6428cbfc08641c779a53f8fcec43644030328f44034c7f1f4"}, + {file = "pyzmq-26.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:4f78c88905461a9203eac9faac157a2a0dbba84a0fd09fd29315db27be40af9f"}, + {file = "pyzmq-26.2.0.tar.gz", hash = "sha256:070672c258581c8e4f640b5159297580a9974b026043bd4ab0470be9ed324f1f"}, +] + +[package.dependencies] +cffi = {version = "*", markers = "implementation_name == \"pypy\""} + +[[package]] +name = "referencing" +version = "0.35.1" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de"}, + {file = "referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" + +[[package]] +name = "requests" +version = "2.32.3" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.8" +files = [ + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +description = "A pure python RFC3339 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, + {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, +] + +[package.dependencies] +six = "*" + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +description = "Pure python rfc3986 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, + {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, +] + +[[package]] +name = "rpds-py" +version = "0.20.0" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "rpds_py-0.20.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3ad0fda1635f8439cde85c700f964b23ed5fc2d28016b32b9ee5fe30da5c84e2"}, + {file = "rpds_py-0.20.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9bb4a0d90fdb03437c109a17eade42dfbf6190408f29b2744114d11586611d6f"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6377e647bbfd0a0b159fe557f2c6c602c159fc752fa316572f012fc0bf67150"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eb851b7df9dda52dc1415ebee12362047ce771fc36914586b2e9fcbd7d293b3e"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e0f80b739e5a8f54837be5d5c924483996b603d5502bfff79bf33da06164ee2"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a8c94dad2e45324fc74dce25e1645d4d14df9a4e54a30fa0ae8bad9a63928e3"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e604fe73ba048c06085beaf51147eaec7df856824bfe7b98657cf436623daf"}, + {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:df3de6b7726b52966edf29663e57306b23ef775faf0ac01a3e9f4012a24a4140"}, + {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cf258ede5bc22a45c8e726b29835b9303c285ab46fc7c3a4cc770736b5304c9f"}, + {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:55fea87029cded5df854ca7e192ec7bdb7ecd1d9a3f63d5c4eb09148acf4a7ce"}, + {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ae94bd0b2f02c28e199e9bc51485d0c5601f58780636185660f86bf80c89af94"}, + {file = "rpds_py-0.20.0-cp310-none-win32.whl", hash = "sha256:28527c685f237c05445efec62426d285e47a58fb05ba0090a4340b73ecda6dee"}, + {file = "rpds_py-0.20.0-cp310-none-win_amd64.whl", hash = "sha256:238a2d5b1cad28cdc6ed15faf93a998336eb041c4e440dd7f902528b8891b399"}, + {file = "rpds_py-0.20.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac2f4f7a98934c2ed6505aead07b979e6f999389f16b714448fb39bbaa86a489"}, + {file = "rpds_py-0.20.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:220002c1b846db9afd83371d08d239fdc865e8f8c5795bbaec20916a76db3318"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d7919548df3f25374a1f5d01fbcd38dacab338ef5f33e044744b5c36729c8db"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:758406267907b3781beee0f0edfe4a179fbd97c0be2e9b1154d7f0a1279cf8e5"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3d61339e9f84a3f0767b1995adfb171a0d00a1185192718a17af6e124728e0f5"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1259c7b3705ac0a0bd38197565a5d603218591d3f6cee6e614e380b6ba61c6f6"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c1dc0f53856b9cc9a0ccca0a7cc61d3d20a7088201c0937f3f4048c1718a209"}, + {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7e60cb630f674a31f0368ed32b2a6b4331b8350d67de53c0359992444b116dd3"}, + {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:dbe982f38565bb50cb7fb061ebf762c2f254ca3d8c20d4006878766e84266272"}, + {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:514b3293b64187172bc77c8fb0cdae26981618021053b30d8371c3a902d4d5ad"}, + {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d0a26ffe9d4dd35e4dfdd1e71f46401cff0181c75ac174711ccff0459135fa58"}, + {file = "rpds_py-0.20.0-cp311-none-win32.whl", hash = "sha256:89c19a494bf3ad08c1da49445cc5d13d8fefc265f48ee7e7556839acdacf69d0"}, + {file = "rpds_py-0.20.0-cp311-none-win_amd64.whl", hash = "sha256:c638144ce971df84650d3ed0096e2ae7af8e62ecbbb7b201c8935c370df00a2c"}, + {file = "rpds_py-0.20.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a84ab91cbe7aab97f7446652d0ed37d35b68a465aeef8fc41932a9d7eee2c1a6"}, + {file = "rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:56e27147a5a4c2c21633ff8475d185734c0e4befd1c989b5b95a5d0db699b21b"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2580b0c34583b85efec8c5c5ec9edf2dfe817330cc882ee972ae650e7b5ef739"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b80d4a7900cf6b66bb9cee5c352b2d708e29e5a37fe9bf784fa97fc11504bf6c"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:50eccbf054e62a7b2209b28dc7a22d6254860209d6753e6b78cfaeb0075d7bee"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:49a8063ea4296b3a7e81a5dfb8f7b2d73f0b1c20c2af401fb0cdf22e14711a96"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea438162a9fcbee3ecf36c23e6c68237479f89f962f82dae83dc15feeceb37e4"}, + {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:18d7585c463087bddcfa74c2ba267339f14f2515158ac4db30b1f9cbdb62c8ef"}, + {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d4c7d1a051eeb39f5c9547e82ea27cbcc28338482242e3e0b7768033cb083821"}, + {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e4df1e3b3bec320790f699890d41c59d250f6beda159ea3c44c3f5bac1976940"}, + {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2cf126d33a91ee6eedc7f3197b53e87a2acdac63602c0f03a02dd69e4b138174"}, + {file = "rpds_py-0.20.0-cp312-none-win32.whl", hash = "sha256:8bc7690f7caee50b04a79bf017a8d020c1f48c2a1077ffe172abec59870f1139"}, + {file = "rpds_py-0.20.0-cp312-none-win_amd64.whl", hash = "sha256:0e13e6952ef264c40587d510ad676a988df19adea20444c2b295e536457bc585"}, + {file = "rpds_py-0.20.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:aa9a0521aeca7d4941499a73ad7d4f8ffa3d1affc50b9ea11d992cd7eff18a29"}, + {file = "rpds_py-0.20.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4a1f1d51eccb7e6c32ae89243cb352389228ea62f89cd80823ea7dd1b98e0b91"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a86a9b96070674fc88b6f9f71a97d2c1d3e5165574615d1f9168ecba4cecb24"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6c8ef2ebf76df43f5750b46851ed1cdf8f109d7787ca40035fe19fbdc1acc5a7"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b74b25f024b421d5859d156750ea9a65651793d51b76a2e9238c05c9d5f203a9"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57eb94a8c16ab08fef6404301c38318e2c5a32216bf5de453e2714c964c125c8"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1940dae14e715e2e02dfd5b0f64a52e8374a517a1e531ad9412319dc3ac7879"}, + {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d20277fd62e1b992a50c43f13fbe13277a31f8c9f70d59759c88f644d66c619f"}, + {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:06db23d43f26478303e954c34c75182356ca9aa7797d22c5345b16871ab9c45c"}, + {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b2a5db5397d82fa847e4c624b0c98fe59d2d9b7cf0ce6de09e4d2e80f8f5b3f2"}, + {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5a35df9f5548fd79cb2f52d27182108c3e6641a4feb0f39067911bf2adaa3e57"}, + {file = "rpds_py-0.20.0-cp313-none-win32.whl", hash = "sha256:fd2d84f40633bc475ef2d5490b9c19543fbf18596dcb1b291e3a12ea5d722f7a"}, + {file = "rpds_py-0.20.0-cp313-none-win_amd64.whl", hash = "sha256:9bc2d153989e3216b0559251b0c260cfd168ec78b1fac33dd485750a228db5a2"}, + {file = "rpds_py-0.20.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:f2fbf7db2012d4876fb0d66b5b9ba6591197b0f165db8d99371d976546472a24"}, + {file = "rpds_py-0.20.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1e5f3cd7397c8f86c8cc72d5a791071431c108edd79872cdd96e00abd8497d29"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce9845054c13696f7af7f2b353e6b4f676dab1b4b215d7fe5e05c6f8bb06f965"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c3e130fd0ec56cb76eb49ef52faead8ff09d13f4527e9b0c400307ff72b408e1"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4b16aa0107ecb512b568244ef461f27697164d9a68d8b35090e9b0c1c8b27752"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa7f429242aae2947246587d2964fad750b79e8c233a2367f71b554e9447949c"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af0fc424a5842a11e28956e69395fbbeab2c97c42253169d87e90aac2886d751"}, + {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b8c00a3b1e70c1d3891f0db1b05292747f0dbcfb49c43f9244d04c70fbc40eb8"}, + {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:40ce74fc86ee4645d0a225498d091d8bc61f39b709ebef8204cb8b5a464d3c0e"}, + {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4fe84294c7019456e56d93e8ababdad5a329cd25975be749c3f5f558abb48253"}, + {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:338ca4539aad4ce70a656e5187a3a31c5204f261aef9f6ab50e50bcdffaf050a"}, + {file = "rpds_py-0.20.0-cp38-none-win32.whl", hash = "sha256:54b43a2b07db18314669092bb2de584524d1ef414588780261e31e85846c26a5"}, + {file = "rpds_py-0.20.0-cp38-none-win_amd64.whl", hash = "sha256:a1862d2d7ce1674cffa6d186d53ca95c6e17ed2b06b3f4c476173565c862d232"}, + {file = "rpds_py-0.20.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:3fde368e9140312b6e8b6c09fb9f8c8c2f00999d1823403ae90cc00480221b22"}, + {file = "rpds_py-0.20.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9824fb430c9cf9af743cf7aaf6707bf14323fb51ee74425c380f4c846ea70789"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11ef6ce74616342888b69878d45e9f779b95d4bd48b382a229fe624a409b72c5"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c52d3f2f82b763a24ef52f5d24358553e8403ce05f893b5347098014f2d9eff2"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d35cef91e59ebbeaa45214861874bc6f19eb35de96db73e467a8358d701a96c"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d72278a30111e5b5525c1dd96120d9e958464316f55adb030433ea905866f4de"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4c29cbbba378759ac5786730d1c3cb4ec6f8ababf5c42a9ce303dc4b3d08cda"}, + {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6632f2d04f15d1bd6fe0eedd3b86d9061b836ddca4c03d5cf5c7e9e6b7c14580"}, + {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d0b67d87bb45ed1cd020e8fbf2307d449b68abc45402fe1a4ac9e46c3c8b192b"}, + {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:ec31a99ca63bf3cd7f1a5ac9fe95c5e2d060d3c768a09bc1d16e235840861420"}, + {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:22e6c9976e38f4d8c4a63bd8a8edac5307dffd3ee7e6026d97f3cc3a2dc02a0b"}, + {file = "rpds_py-0.20.0-cp39-none-win32.whl", hash = "sha256:569b3ea770c2717b730b61998b6c54996adee3cef69fc28d444f3e7920313cf7"}, + {file = "rpds_py-0.20.0-cp39-none-win_amd64.whl", hash = "sha256:e6900ecdd50ce0facf703f7a00df12374b74bbc8ad9fe0f6559947fb20f82364"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:617c7357272c67696fd052811e352ac54ed1d9b49ab370261a80d3b6ce385045"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9426133526f69fcaba6e42146b4e12d6bc6c839b8b555097020e2b78ce908dcc"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deb62214c42a261cb3eb04d474f7155279c1a8a8c30ac89b7dcb1721d92c3c02"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fcaeb7b57f1a1e071ebd748984359fef83ecb026325b9d4ca847c95bc7311c92"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d454b8749b4bd70dd0a79f428731ee263fa6995f83ccb8bada706e8d1d3ff89d"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d807dc2051abe041b6649681dce568f8e10668e3c1c6543ebae58f2d7e617855"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c20f0ddeb6e29126d45f89206b8291352b8c5b44384e78a6499d68b52ae511"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7f19250ceef892adf27f0399b9e5afad019288e9be756d6919cb58892129f51"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4f1ed4749a08379555cebf4650453f14452eaa9c43d0a95c49db50c18b7da075"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:dcedf0b42bcb4cfff4101d7771a10532415a6106062f005ab97d1d0ab5681c60"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:39ed0d010457a78f54090fafb5d108501b5aa5604cc22408fc1c0c77eac14344"}, + {file = "rpds_py-0.20.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:bb273176be34a746bdac0b0d7e4e2c467323d13640b736c4c477881a3220a989"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f918a1a130a6dfe1d7fe0f105064141342e7dd1611f2e6a21cd2f5c8cb1cfb3e"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f60012a73aa396be721558caa3a6fd49b3dd0033d1675c6d59c4502e870fcf0c"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d2b1ad682a3dfda2a4e8ad8572f3100f95fad98cb99faf37ff0ddfe9cbf9d03"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:614fdafe9f5f19c63ea02817fa4861c606a59a604a77c8cdef5aa01d28b97921"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fa518bcd7600c584bf42e6617ee8132869e877db2f76bcdc281ec6a4113a53ab"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f0475242f447cc6cb8a9dd486d68b2ef7fbee84427124c232bff5f63b1fe11e5"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f90a4cd061914a60bd51c68bcb4357086991bd0bb93d8aa66a6da7701370708f"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:def7400461c3a3f26e49078302e1c1b38f6752342c77e3cf72ce91ca69fb1bc1"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:65794e4048ee837494aea3c21a28ad5fc080994dfba5b036cf84de37f7ad5074"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:faefcc78f53a88f3076b7f8be0a8f8d35133a3ecf7f3770895c25f8813460f08"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:5b4f105deeffa28bbcdff6c49b34e74903139afa690e35d2d9e3c2c2fba18cec"}, + {file = "rpds_py-0.20.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fdfc3a892927458d98f3d55428ae46b921d1f7543b89382fdb483f5640daaec8"}, + {file = "rpds_py-0.20.0.tar.gz", hash = "sha256:d72a210824facfdaf8768cf2d7ca25a042c30320b3020de2fa04640920d4e121"}, +] + +[[package]] +name = "scikit-fuzzy" +version = "0.5.0" +description = "Fuzzy logic toolkit for SciPy" +optional = false +python-versions = "*" +files = [ + {file = "scikit_fuzzy-0.5.0-py2.py3-none-any.whl", hash = "sha256:e456c365146bc5c58d9f593f4127ac783112e2daf89f87b12c6ef3c38e4087dd"}, + {file = "scikit_fuzzy-0.5.0.tar.gz", hash = "sha256:2ee5340523aa7635ca568b9d8029c7738d05f9ea550fc89d4054b4cb50f34e7f"}, +] + +[[package]] +name = "scikit-learn" +version = "1.5.2" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.9" +files = [ + {file = "scikit_learn-1.5.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:299406827fb9a4f862626d0fe6c122f5f87f8910b86fe5daa4c32dcd742139b6"}, + {file = "scikit_learn-1.5.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:2d4cad1119c77930b235579ad0dc25e65c917e756fe80cab96aa3b9428bd3fb0"}, + {file = "scikit_learn-1.5.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c412ccc2ad9bf3755915e3908e677b367ebc8d010acbb3f182814524f2e5540"}, + {file = "scikit_learn-1.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a686885a4b3818d9e62904d91b57fa757fc2bed3e465c8b177be652f4dd37c8"}, + {file = "scikit_learn-1.5.2-cp310-cp310-win_amd64.whl", hash = "sha256:c15b1ca23d7c5f33cc2cb0a0d6aaacf893792271cddff0edbd6a40e8319bc113"}, + {file = "scikit_learn-1.5.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:03b6158efa3faaf1feea3faa884c840ebd61b6484167c711548fce208ea09445"}, + {file = "scikit_learn-1.5.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:1ff45e26928d3b4eb767a8f14a9a6efbf1cbff7c05d1fb0f95f211a89fd4f5de"}, + {file = "scikit_learn-1.5.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f763897fe92d0e903aa4847b0aec0e68cadfff77e8a0687cabd946c89d17e675"}, + {file = "scikit_learn-1.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8b0ccd4a902836493e026c03256e8b206656f91fbcc4fde28c57a5b752561f1"}, + {file = "scikit_learn-1.5.2-cp311-cp311-win_amd64.whl", hash = "sha256:6c16d84a0d45e4894832b3c4d0bf73050939e21b99b01b6fd59cbb0cf39163b6"}, + {file = "scikit_learn-1.5.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f932a02c3f4956dfb981391ab24bda1dbd90fe3d628e4b42caef3e041c67707a"}, + {file = "scikit_learn-1.5.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:3b923d119d65b7bd555c73be5423bf06c0105678ce7e1f558cb4b40b0a5502b1"}, + {file = "scikit_learn-1.5.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f60021ec1574e56632be2a36b946f8143bf4e5e6af4a06d85281adc22938e0dd"}, + {file = "scikit_learn-1.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:394397841449853c2290a32050382edaec3da89e35b3e03d6cc966aebc6a8ae6"}, + {file = "scikit_learn-1.5.2-cp312-cp312-win_amd64.whl", hash = "sha256:57cc1786cfd6bd118220a92ede80270132aa353647684efa385a74244a41e3b1"}, + {file = "scikit_learn-1.5.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:757c7d514ddb00ae249832fe87100d9c73c6ea91423802872d9e74970a0e40b9"}, + {file = "scikit_learn-1.5.2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:52788f48b5d8bca5c0736c175fa6bdaab2ef00a8f536cda698db61bd89c551c1"}, + {file = "scikit_learn-1.5.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:643964678f4b5fbdc95cbf8aec638acc7aa70f5f79ee2cdad1eec3df4ba6ead8"}, + {file = "scikit_learn-1.5.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca64b3089a6d9b9363cd3546f8978229dcbb737aceb2c12144ee3f70f95684b7"}, + {file = "scikit_learn-1.5.2-cp39-cp39-win_amd64.whl", hash = "sha256:3bed4909ba187aca80580fe2ef370d9180dcf18e621a27c4cf2ef10d279a7efe"}, + {file = "scikit_learn-1.5.2.tar.gz", hash = "sha256:b4237ed7b3fdd0a4882792e68ef2545d5baa50aca3bb45aa7df468138ad8f94d"}, +] + +[package.dependencies] +joblib = ">=1.2.0" +numpy = ">=1.19.5" +scipy = ">=1.6.0" +threadpoolctl = ">=3.1.0" + +[package.extras] +benchmark = ["matplotlib (>=3.3.4)", "memory_profiler (>=0.57.0)", "pandas (>=1.1.5)"] +build = ["cython (>=3.0.10)", "meson-python (>=0.16.0)", "numpy (>=1.19.5)", "scipy (>=1.6.0)"] +docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.3.4)", "memory_profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "polars (>=0.20.30)", "pooch (>=1.6.0)", "pydata-sphinx-theme (>=0.15.3)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)", "sphinx (>=7.3.7)", "sphinx-copybutton (>=0.5.2)", "sphinx-design (>=0.5.0)", "sphinx-design (>=0.6.0)", "sphinx-gallery (>=0.16.0)", "sphinx-prompt (>=1.4.0)", "sphinx-remove-toctrees (>=1.0.0.post1)", "sphinxcontrib-sass (>=0.3.4)", "sphinxext-opengraph (>=0.9.1)"] +examples = ["matplotlib (>=3.3.4)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)"] +install = ["joblib (>=1.2.0)", "numpy (>=1.19.5)", "scipy (>=1.6.0)", "threadpoolctl (>=3.1.0)"] +maintenance = ["conda-lock (==2.5.6)"] +tests = ["black (>=24.3.0)", "matplotlib (>=3.3.4)", "mypy (>=1.9)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "polars (>=0.20.30)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pyarrow (>=12.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.2.1)", "scikit-image (>=0.17.2)"] + +[[package]] +name = "scipy" +version = "1.14.1" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = ">=3.10" +files = [ + {file = "scipy-1.14.1-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:b28d2ca4add7ac16ae8bb6632a3c86e4b9e4d52d3e34267f6e1b0c1f8d87e389"}, + {file = "scipy-1.14.1-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:d0d2821003174de06b69e58cef2316a6622b60ee613121199cb2852a873f8cf3"}, + {file = "scipy-1.14.1-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:8bddf15838ba768bb5f5083c1ea012d64c9a444e16192762bd858f1e126196d0"}, + {file = "scipy-1.14.1-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:97c5dddd5932bd2a1a31c927ba5e1463a53b87ca96b5c9bdf5dfd6096e27efc3"}, + {file = "scipy-1.14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ff0a7e01e422c15739ecd64432743cf7aae2b03f3084288f399affcefe5222d"}, + {file = "scipy-1.14.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e32dced201274bf96899e6491d9ba3e9a5f6b336708656466ad0522d8528f69"}, + {file = "scipy-1.14.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:8426251ad1e4ad903a4514712d2fa8fdd5382c978010d1c6f5f37ef286a713ad"}, + {file = "scipy-1.14.1-cp310-cp310-win_amd64.whl", hash = "sha256:a49f6ed96f83966f576b33a44257d869756df6cf1ef4934f59dd58b25e0327e5"}, + {file = "scipy-1.14.1-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:2da0469a4ef0ecd3693761acbdc20f2fdeafb69e6819cc081308cc978153c675"}, + {file = "scipy-1.14.1-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:c0ee987efa6737242745f347835da2cc5bb9f1b42996a4d97d5c7ff7928cb6f2"}, + {file = "scipy-1.14.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:3a1b111fac6baec1c1d92f27e76511c9e7218f1695d61b59e05e0fe04dc59617"}, + {file = "scipy-1.14.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:8475230e55549ab3f207bff11ebfc91c805dc3463ef62eda3ccf593254524ce8"}, + {file = "scipy-1.14.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:278266012eb69f4a720827bdd2dc54b2271c97d84255b2faaa8f161a158c3b37"}, + {file = "scipy-1.14.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fef8c87f8abfb884dac04e97824b61299880c43f4ce675dd2cbeadd3c9b466d2"}, + {file = "scipy-1.14.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b05d43735bb2f07d689f56f7b474788a13ed8adc484a85aa65c0fd931cf9ccd2"}, + {file = "scipy-1.14.1-cp311-cp311-win_amd64.whl", hash = "sha256:716e389b694c4bb564b4fc0c51bc84d381735e0d39d3f26ec1af2556ec6aad94"}, + {file = "scipy-1.14.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:631f07b3734d34aced009aaf6fedfd0eb3498a97e581c3b1e5f14a04164a456d"}, + {file = "scipy-1.14.1-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:af29a935803cc707ab2ed7791c44288a682f9c8107bc00f0eccc4f92c08d6e07"}, + {file = "scipy-1.14.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:2843f2d527d9eebec9a43e6b406fb7266f3af25a751aa91d62ff416f54170bc5"}, + {file = "scipy-1.14.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:eb58ca0abd96911932f688528977858681a59d61a7ce908ffd355957f7025cfc"}, + {file = "scipy-1.14.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:30ac8812c1d2aab7131a79ba62933a2a76f582d5dbbc695192453dae67ad6310"}, + {file = "scipy-1.14.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f9ea80f2e65bdaa0b7627fb00cbeb2daf163caa015e59b7516395fe3bd1e066"}, + {file = "scipy-1.14.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:edaf02b82cd7639db00dbff629995ef185c8df4c3ffa71a5562a595765a06ce1"}, + {file = "scipy-1.14.1-cp312-cp312-win_amd64.whl", hash = "sha256:2ff38e22128e6c03ff73b6bb0f85f897d2362f8c052e3b8ad00532198fbdae3f"}, + {file = "scipy-1.14.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:1729560c906963fc8389f6aac023739ff3983e727b1a4d87696b7bf108316a79"}, + {file = "scipy-1.14.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:4079b90df244709e675cdc8b93bfd8a395d59af40b72e339c2287c91860deb8e"}, + {file = "scipy-1.14.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:e0cf28db0f24a38b2a0ca33a85a54852586e43cf6fd876365c86e0657cfe7d73"}, + {file = "scipy-1.14.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:0c2f95de3b04e26f5f3ad5bb05e74ba7f68b837133a4492414b3afd79dfe540e"}, + {file = "scipy-1.14.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b99722ea48b7ea25e8e015e8341ae74624f72e5f21fc2abd45f3a93266de4c5d"}, + {file = "scipy-1.14.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5149e3fd2d686e42144a093b206aef01932a0059c2a33ddfa67f5f035bdfe13e"}, + {file = "scipy-1.14.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e4f5a7c49323533f9103d4dacf4e4f07078f360743dec7f7596949149efeec06"}, + {file = "scipy-1.14.1-cp313-cp313-win_amd64.whl", hash = "sha256:baff393942b550823bfce952bb62270ee17504d02a1801d7fd0719534dfb9c84"}, + {file = "scipy-1.14.1.tar.gz", hash = "sha256:5a275584e726026a5699459aa72f828a610821006228e841b94275c4a7c08417"}, +] + +[package.dependencies] +numpy = ">=1.23.5,<2.3" + +[package.extras] +dev = ["cython-lint (>=0.12.2)", "doit (>=0.36.0)", "mypy (==1.10.0)", "pycodestyle", "pydevtool", "rich-click", "ruff (>=0.0.292)", "types-psutil", "typing_extensions"] +doc = ["jupyterlite-pyodide-kernel", "jupyterlite-sphinx (>=0.13.1)", "jupytext", "matplotlib (>=3.5)", "myst-nb", "numpydoc", "pooch", "pydata-sphinx-theme (>=0.15.2)", "sphinx (>=5.0.0,<=7.3.7)", "sphinx-design (>=0.4.0)"] +test = ["Cython", "array-api-strict (>=2.0)", "asv", "gmpy2", "hypothesis (>=6.30)", "meson", "mpmath", "ninja", "pooch", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "send2trash" +version = "1.8.3" +description = "Send file to trash natively under Mac OS X, Windows and Linux" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ + {file = "Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9"}, + {file = "Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf"}, +] + +[package.extras] +nativelib = ["pyobjc-framework-Cocoa", "pywin32"] +objc = ["pyobjc-framework-Cocoa"] +win32 = ["pywin32"] + +[[package]] +name = "setuptools" +version = "75.2.0" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-75.2.0-py3-none-any.whl", hash = "sha256:a7fcb66f68b4d9e8e66b42f9876150a3371558f98fa32222ffaa5bced76406f8"}, + {file = "setuptools-75.2.0.tar.gz", hash = "sha256:753bb6ebf1f465a1912e19ed1d41f403a79173a9acf66a42e7e6aec45c3c16ec"}, +] + +[package.extras] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.5.2)"] +core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.collections", "jaraco.functools", "jaraco.text (>=3.7)", "more-itertools", "more-itertools (>=8.8)", "packaging", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] +cover = ["pytest-cov"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +enabler = ["pytest-enabler (>=2.2)"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] +type = ["importlib-metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (==1.11.*)", "pytest-mypy"] + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, + {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, +] + +[[package]] +name = "soupsieve" +version = "2.6" +description = "A modern CSS selector implementation for Beautiful Soup." +optional = false +python-versions = ">=3.8" +files = [ + {file = "soupsieve-2.6-py3-none-any.whl", hash = "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9"}, + {file = "soupsieve-2.6.tar.gz", hash = "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb"}, +] + +[[package]] +name = "stack-data" +version = "0.6.3" +description = "Extract data from python stack frames and tracebacks for informative displays" +optional = false +python-versions = "*" +files = [ + {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, + {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, +] + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + +[[package]] +name = "terminado" +version = "0.18.1" +description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0"}, + {file = "terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e"}, +] + +[package.dependencies] +ptyprocess = {version = "*", markers = "os_name != \"nt\""} +pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""} +tornado = ">=6.1.0" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"] +typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] + +[[package]] +name = "threadpoolctl" +version = "3.5.0" +description = "threadpoolctl" +optional = false +python-versions = ">=3.8" +files = [ + {file = "threadpoolctl-3.5.0-py3-none-any.whl", hash = "sha256:56c1e26c150397e58c4926da8eeee87533b1e32bef131bd4bf6a2f45f3185467"}, + {file = "threadpoolctl-3.5.0.tar.gz", hash = "sha256:082433502dd922bf738de0d8bcc4fdcbf0979ff44c42bd40f5af8a282f6fa107"}, +] + +[[package]] +name = "tinycss2" +version = "1.3.0" +description = "A tiny CSS parser" +optional = false +python-versions = ">=3.8" +files = [ + {file = "tinycss2-1.3.0-py3-none-any.whl", hash = "sha256:54a8dbdffb334d536851be0226030e9505965bb2f30f21a4a82c55fb2a80fae7"}, + {file = "tinycss2-1.3.0.tar.gz", hash = "sha256:152f9acabd296a8375fbca5b84c961ff95971fcfc32e79550c8df8e29118c54d"}, +] + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx_rtd_theme"] +test = ["pytest", "ruff"] + +[[package]] +name = "tornado" +version = "6.4.1" +description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." +optional = false +python-versions = ">=3.8" +files = [ + {file = "tornado-6.4.1-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:163b0aafc8e23d8cdc3c9dfb24c5368af84a81e3364745ccb4427669bf84aec8"}, + {file = "tornado-6.4.1-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:6d5ce3437e18a2b66fbadb183c1d3364fb03f2be71299e7d10dbeeb69f4b2a14"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e20b9113cd7293f164dc46fffb13535266e713cdb87bd2d15ddb336e96cfc4"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8ae50a504a740365267b2a8d1a90c9fbc86b780a39170feca9bcc1787ff80842"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:613bf4ddf5c7a95509218b149b555621497a6cc0d46ac341b30bd9ec19eac7f3"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:25486eb223babe3eed4b8aecbac33b37e3dd6d776bc730ca14e1bf93888b979f"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:454db8a7ecfcf2ff6042dde58404164d969b6f5d58b926da15e6b23817950fc4"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a02a08cc7a9314b006f653ce40483b9b3c12cda222d6a46d4ac63bb6c9057698"}, + {file = "tornado-6.4.1-cp38-abi3-win32.whl", hash = "sha256:d9a566c40b89757c9aa8e6f032bcdb8ca8795d7c1a9762910c722b1635c9de4d"}, + {file = "tornado-6.4.1-cp38-abi3-win_amd64.whl", hash = "sha256:b24b8982ed444378d7f21d563f4180a2de31ced9d8d84443907a0a64da2072e7"}, + {file = "tornado-6.4.1.tar.gz", hash = "sha256:92d3ab53183d8c50f8204a51e6f91d18a15d5ef261e84d452800d4ff6fc504e9"}, +] + +[[package]] +name = "traitlets" +version = "5.14.3" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +files = [ + {file = "traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f"}, + {file = "traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7"}, +] + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,<8.2)", "pytest-mock", "pytest-mypy-testing"] + +[[package]] +name = "types-python-dateutil" +version = "2.9.0.20241003" +description = "Typing stubs for python-dateutil" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-python-dateutil-2.9.0.20241003.tar.gz", hash = "sha256:58cb85449b2a56d6684e41aeefb4c4280631246a0da1a719bdbe6f3fb0317446"}, + {file = "types_python_dateutil-2.9.0.20241003-py3-none-any.whl", hash = "sha256:250e1d8e80e7bbc3a6c99b907762711d1a1cdd00e978ad39cb5940f6f0a87f3d"}, +] + +[[package]] +name = "tzdata" +version = "2024.2" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd"}, + {file = "tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc"}, +] + +[[package]] +name = "uri-template" +version = "1.3.0" +description = "RFC 6570 URI Template Processor" +optional = false +python-versions = ">=3.7" +files = [ + {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, + {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, +] + +[package.extras] +dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"] + +[[package]] +name = "urllib3" +version = "2.2.3" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.8" +files = [ + {file = "urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac"}, + {file = "urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "wcwidth" +version = "0.2.13" +description = "Measures the displayed width of unicode strings in a terminal" +optional = false +python-versions = "*" +files = [ + {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, + {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, +] + +[[package]] +name = "webcolors" +version = "24.8.0" +description = "A library for working with the color formats defined by HTML and CSS." +optional = false +python-versions = ">=3.8" +files = [ + {file = "webcolors-24.8.0-py3-none-any.whl", hash = "sha256:fc4c3b59358ada164552084a8ebee637c221e4059267d0f8325b3b560f6c7f0a"}, + {file = "webcolors-24.8.0.tar.gz", hash = "sha256:08b07af286a01bcd30d583a7acadf629583d1f79bfef27dd2c2c5c263817277d"}, +] + +[package.extras] +docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] +tests = ["coverage[toml]"] + +[[package]] +name = "webencodings" +version = "0.5.1" +description = "Character encoding aliases for legacy web content" +optional = false +python-versions = "*" +files = [ + {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, + {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, +] + +[[package]] +name = "websocket-client" +version = "1.8.0" +description = "WebSocket client for Python with low level API options" +optional = false +python-versions = ">=3.8" +files = [ + {file = "websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526"}, + {file = "websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da"}, +] + +[package.extras] +docs = ["Sphinx (>=6.0)", "myst-parser (>=2.0.0)", "sphinx-rtd-theme (>=1.1.0)"] +optional = ["python-socks", "wsaccel"] +test = ["websockets"] + +[[package]] +name = "widgetsnbextension" +version = "4.0.13" +description = "Jupyter interactive widgets for Jupyter Notebook" +optional = false +python-versions = ">=3.7" +files = [ + {file = "widgetsnbextension-4.0.13-py3-none-any.whl", hash = "sha256:74b2692e8500525cc38c2b877236ba51d34541e6385eeed5aec15a70f88a6c71"}, + {file = "widgetsnbextension-4.0.13.tar.gz", hash = "sha256:ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6"}, +] + +[metadata] +lock-version = "2.0" +python-versions = "^3.12" +content-hash = "ee2a6fb525a389426dad97d7f57b9ed7a8187d5892d01cc39a54830695f83a95" diff --git a/poetry.toml b/poetry.toml new file mode 100644 index 0000000..ab1033b --- /dev/null +++ b/poetry.toml @@ -0,0 +1,2 @@ +[virtualenvs] +in-project = true diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..7e276fa --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,21 @@ +[tool.poetry] +name = "fuzzy" +version = "1.0.0" +description = "Fuzzy Controller" +authors = ["Aleksey Filippov "] +readme = "readme.md" +package-mode = false + +[tool.poetry.dependencies] +python = "^3.12" +jupyter = "^1.1.1" +numpy = "^2.1.0" +pandas = "^2.2.2" +matplotlib = "^3.9.2" +scikit-learn = "^1.5.2" +scikit-fuzzy = "^0.5.0" +networkx = "^3.4.2" + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..fba5c63 --- /dev/null +++ b/readme.md @@ -0,0 +1,55 @@ +## Окружение и примеры для выполнения лабораторных работ по дисциплине "Методы ИИ" + +### Python + +Используется Python версии 3.12 + +Установщик https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe + +### Poetry + +Для создания и настройки окружения проекта необходимо установить poetry + +**Для Windows (Powershell)** + +``` +(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python - +``` + +**Linux, macOS, Windows (WSL)** + +``` +curl -sSL https://install.python-poetry.org | python3 - +``` + +**Добавление poetry в PATH** + +1. Открыть настройки переменных среды \ + \ + \ + \ + \ +2. Изменить переменную Path текущего пользователя \ + \ + \ +3. Добавление пути `%APPDATA%\Python\Scripts` до исполняемого файла poetry \ + \ + + +### Создание окружения + +``` +poetry install +``` + +### Запуск тестового сервиса + +Запустить тестовый сервис можно с помощью VSCode (см. launch.json в каталоге .vscode). + +Также запустить тестовый сервис можно с помощью командной строки: + +1. Активация виртуального окружения -- `poetry shell` + +2. Запуск сервиса -- `python run.py` + +Для выходы из виртуального окружения используется команду `exit` diff --git a/src/cluster_helper.py b/src/cluster_helper.py new file mode 100644 index 0000000..ca7317f --- /dev/null +++ b/src/cluster_helper.py @@ -0,0 +1,36 @@ +from typing import Dict + +import matplotlib.pyplot as plt +import numpy as np +from pandas import DataFrame +from sklearn import cluster, metrics + + +def get_best_clusters_num( + X: DataFrame, random_state: int, max_clusters: int = 10 +) -> Dict[int, float]: + silhouette_scores: Dict[int, float] = {} + for cluster_num in range(2, max_clusters + 1): + kmeans = cluster.KMeans(n_clusters=cluster_num, random_state=random_state) + labels = kmeans.fit_predict(X) + silhouette_scores[cluster_num] = float(metrics.silhouette_score(X, labels)) + + return silhouette_scores + + +def draw_best_clusters_plot(clusters_score: Dict[int, float]): + plt.figure(figsize=(4, 4)) + plt.plot(list(clusters_score.keys()), list(clusters_score.values()), "bo-") + plt.xlabel("Clusters count", fontsize=8) + plt.ylabel("Silhouette score", fontsize=8) + plt.title("The Silhouette score") + plt.show() + + +def print_cluster_result(X: DataFrame, clusters_num: int, labels: np.ndarray): + for cluster_id in range(clusters_num): + cluster_indices = np.where(labels == cluster_id)[0] + print(f"Кластер {cluster_id + 1} ({len(cluster_indices)}):") + rules = [str(X.index[idx]) for idx in cluster_indices] + print(";\n".join(rules)) + print("--------") diff --git a/src/rules.py b/src/rules.py new file mode 100644 index 0000000..83aa73f --- /dev/null +++ b/src/rules.py @@ -0,0 +1,360 @@ +import enum +import sys +from functools import reduce +from operator import and_ +from typing import Dict, List, Tuple + +import numpy as np +import pandas as pd +from skfuzzy.control.fuzzyvariable import FuzzyVariable +from skfuzzy.control.rule import Rule as FuzzyRule +from skfuzzy.control.term import Term +from sklearn.tree._tree import TREE_UNDEFINED # type: ignore + + +class ComparisonType(enum.Enum): + LESS = "<=" + GREATER = ">" + EQUALS = "=" + + +class RuleAtom: + def __init__(self, variable: str, type: ComparisonType, value: float) -> None: + self._variable = variable + self._type = type + self._value = value + + def get_varaible(self) -> str: + return self._variable + + def get_type(self) -> ComparisonType: + return self._type + + def get_value(self) -> float: + return self._value + + def __repr__(self) -> str: + return f"({self._variable} {self._type.value} {np.round(self._value, 3)})" + + def __eq__(self, other: object) -> bool: + if id(self) == id(other): + return True + if not isinstance(other, RuleAtom): + return False + return ( + self._variable == other._variable + and self._type == other._type + and self._value == other._value + ) + + +class Rule: + def __init__(self, antecedent: List[RuleAtom], consequent: float) -> None: + self._antecedent = antecedent + self._consequent = consequent + + def get_antecedent(self) -> List[RuleAtom]: + return self._antecedent + + def set_antecedent(self, antecedent: List[RuleAtom]): + self._antecedent = [] + self._antecedent.extend(antecedent) + + def get_consequent(self) -> float: + return self._consequent + + def set_consequent(self, value: float): + self._consequent = value + + def __repr__(self) -> str: + return f"if {" and ".join([str(atom) for atom in self._antecedent])} -> {np.round(self._consequent, 3)}" + + +# https://mljar.com/blog/extract-rules-decision-tree/ +def get_rules(tree, feature_names) -> List[Rule]: + tree_ = tree.tree_ + feature_name = [ + feature_names[i] if i != TREE_UNDEFINED else "undefined!" for i in tree_.feature + ] + + rules: List[Rule] = [] + antecedent: List[RuleAtom] = [] + + def recurse(node, antecedent, rules): + + if tree_.feature[node] != TREE_UNDEFINED: + name = feature_name[node] + threshold = tree_.threshold[node] + p1, p2 = list(antecedent), list(antecedent) + p1.append(RuleAtom(name, ComparisonType.LESS, threshold)) + recurse(tree_.children_left[node], p1, rules) + p2.append(RuleAtom(name, ComparisonType.GREATER, threshold)) + recurse(tree_.children_right[node], p2, rules) + else: + rules.append(Rule(antecedent, tree_.value[node][0][0])) + + recurse(0, antecedent, rules) + + # sort by values + values = [rule.get_consequent() for rule in rules] + sorted_index = list(np.argpartition(values, 1)) + rules = [rules[i] for i in sorted_index] + + return rules + + +# from +# if (Al2O3 <= 0.175) and (TiO2 <= 0.175) and (T > 32.5) and (TiO2 <= 0.025) +# and (Al2O3 <= 0.025) and (T > 55.0) and (T > 62.5) +# to +# if (Al2O3 <= 0.025) and (TiO2 <= 0.025) and (T > 32.5) +# if (Al2O3 <= 0.025) and (TiO2 <= 0.025) and (T > 32.5) +# max(<=) +# min(>) +def normalise_rules(rules: List[Rule]) -> List[Rule]: + for rule in rules: + dict: Dict[str, Dict[ComparisonType, float]] = {} + new_antecedent: List[RuleAtom] = [] + for atom in rule.get_antecedent(): + old_value: float | None = dict.get(atom.get_varaible(), {}).get( + atom.get_type(), None + ) + new_value = 0 + if atom.get_type() == ComparisonType.GREATER: + new_value = min( + old_value if old_value is not None else sys.maxsize, + atom.get_value(), + ) + if atom.get_type() == ComparisonType.LESS: + new_value = max( + old_value if old_value is not None else -sys.maxsize - 1, + atom.get_value(), + ) + if dict.get(atom.get_varaible(), None) is None: + dict[atom.get_varaible()] = {} + dict[atom.get_varaible()][atom.get_type()] = new_value + for key_var, other in dict.items(): + for key_type, value in other.items(): + new_antecedent.append(RuleAtom(key_var, key_type, value)) + rule.set_antecedent(new_antecedent) + return rules + + +def _is_same_rules(rule1: Rule, rule2: Rule) -> bool: + antecedent1 = rule1.get_antecedent() + antecedent2 = rule2.get_antecedent() + if len(antecedent1) != len(antecedent2): + return False + match: int = len([atom for atom in antecedent1 if atom not in antecedent2]) + return match == 0 + + +def _get_rules_accum(rules: List[Rule]) -> Dict[str, Dict[str, float]]: + accum_dict: Dict[str, Dict[str, float]] = {} + for rule in rules: + key = str(rule.get_antecedent()) + if accum_dict.get(key, None) is None: + accum_dict[key] = {} + cv = accum_dict[key].get("V", 0) + cv += rule.get_consequent() + cc = accum_dict[key].get("C", 0) + cc += 1 + accum_dict[key]["V"] = cv + accum_dict[key]["C"] = cc + return accum_dict + + +def _recalculate_consequents( + accum_dict: Dict[str, Dict[str, float]], rules: List[Rule] +) -> List[Rule]: + + for rule in rules: + key: str = str(rule.get_antecedent()) + value: float = accum_dict[key]["V"] + count: int = int(accum_dict[key]["C"]) + if count == 1: + continue + rule.set_consequent(value / count) + return rules + + +def delete_same_rules(rules: List[Rule]) -> List[Rule]: + same_rules: List[int] = [] + accum_dict: Dict[str, Dict[str, float]] = _get_rules_accum(rules) + for rule1_index, rule1 in enumerate(rules): + for rule2_index, rule2 in enumerate(rules): + if rule1_index >= rule2_index: + continue + if _is_same_rules(rule1, rule2): + same_rules.append(rule1_index) + break + cleared_rules = [ + rule for index, rule in enumerate(rules) if index not in same_rules + ] + return _recalculate_consequents(accum_dict, cleared_rules) + + +def get_features(rules: List[Rule], exclude: List[str] | None = None) -> List[str]: + atoms: List[str] = [] + for rule in rules: + for atom in rule.get_antecedent(): + if exclude is not None and atom.get_varaible() in exclude: + continue + if str(atom) in atoms: + continue + atoms.append(str(atom)) + atoms.sort() + return atoms + + +def vectorize_rules(rules: List[Rule], features: List[str]) -> pd.DataFrame: + columns: List[str] = [] + columns.append("rule") + columns.extend(features) + columns.append("consequent") + df = pd.DataFrame(columns=columns) + for rule in rules: + data = [str(rule)] + mask = np.isin(list(features), [str(atom) for atom in rule.get_antecedent()]) + data = np.append(data, mask.astype(int)) + data = np.append(data, rule.get_consequent()) + df.loc[len(df)] = pd.Series(data=data, index=df.columns) + df = df.set_index("rule") + return df + + +def _get_clustered_rules( + rules: List[Rule], clusters_num: int, labels: np.ndarray +) -> List[List[Rule]]: + clustered_rules: List[List[Rule]] = [] + for cluster_id in range(clusters_num): + cluster_indices = np.where(labels == cluster_id)[0] + clustered_rules.append([rules[idx] for idx in cluster_indices]) + return clustered_rules + + +def _get_variables_minmax(X: pd.DataFrame) -> Dict[str, Tuple[float, float]]: + itervals: Dict[str, Tuple[float, float]] = {} + for column in X.columns: + itervals[column] = (X[column].min(), X[column].max()) + return itervals + + +def _get_varibles_interval( + antecedent: List[RuleAtom], +) -> Dict[str, Tuple[float | None, float | None]]: + intervals: Dict[str, Tuple[float | None, float | None]] = {} + for atom in antecedent: + if intervals.get(atom.get_varaible(), None) is None: + intervals[atom.get_varaible()] = (None, None) + if atom.get_type() == ComparisonType.GREATER: + intervals[atom.get_varaible()] = ( + atom.get_value(), + intervals[atom.get_varaible()][1], + ) + if atom.get_type() == ComparisonType.LESS: + intervals[atom.get_varaible()] = ( + intervals[atom.get_varaible()][0], + atom.get_value(), + ) + return intervals + + +def simplify_and_group_rules( + X: pd.DataFrame, rules: List[Rule], clusters_num: int, clusters_labels: np.ndarray +): + minmax = _get_variables_minmax(X) + + new_rules: List[List[Rule]] = [] + for cluster in _get_clustered_rules(rules, clusters_num, clusters_labels): + cl_rules: List[Rule] = [] + for rule in cluster: + intervals = _get_varibles_interval(rule.get_antecedent()) + new_atoms = [] + for key, value in intervals.items(): + val: float = 0 + if value[0] is None and value[1] is not None: + val = minmax[key][0] + if value[1] is None and value[0] is not None: + val = minmax[key][1] + if value[0] is not None and value[1] is not None: + val = (value[0] + value[1]) / 2 + new_atoms.append(RuleAtom(key, ComparisonType.EQUALS, val)) + cl_rules.append(Rule(new_atoms, rule.get_consequent())) + new_rules.append(cl_rules) + return new_rules + + +def _get_fuzzy_rule_atom( + fuzzy_variable: FuzzyVariable, value: float +) -> Tuple[Term, float]: + values = {} + for term in fuzzy_variable.terms: + mval = np.interp(value, fuzzy_variable.universe, fuzzy_variable[term].mf) + values[term] = mval + best_value = sorted(values.items(), key=lambda x: x[1], reverse=True)[0] + return (fuzzy_variable[best_value[0]], best_value[1]) + + +def _get_fuzzy_rules( + rules: List[Rule], fuzzy_variables: Dict[str, FuzzyVariable] +) -> List[Tuple[List[RuleAtom], Term, float]]: + fuzzy_rules: List[Tuple[List[RuleAtom], Term, float]] = [] + for rule in rules: + antecedent = [] + for atom in rule.get_antecedent(): + antecedent.append( + _get_fuzzy_rule_atom( + fuzzy_variables[atom.get_varaible()], atom.get_value() + ) + ) + consequent = _get_fuzzy_rule_atom( + fuzzy_variables["consequent"], rule.get_consequent() + )[0] + fuzzy_rules.append( + ( + # FuzzyRule(reduce(and_, [atom[0] for atom in antecedent]), consequent), + [atom[0] for atom in antecedent], + consequent, + sum([atom[1] for atom in antecedent]), + ) + ) + return fuzzy_rules + + +def _delete_same_fuzzy_rules( + rules_cluster: List[Tuple[List[RuleAtom], Term, float]] +) -> List[Tuple[List[RuleAtom], Term, float]]: + same_rules: List[int] = [] + for rule1_index, rule1 in enumerate(rules_cluster): + for rule2_index, rule2 in enumerate(rules_cluster): + if rule1_index >= rule2_index: + continue + # Remove the same rules + if str(rule1[0]) == str(rule2[0]) and str(rule1[1]) == str(rule2[1]): + same_rules.append(rule1_index) + break + # If antecedents is equals, but consequents is not equals then + # Remove rule with the higher weight + if str(rule1[0]) == str(rule2[0]) and str(rule1[2]) <= str(rule2[2]): + same_rules.append(rule2_index) + break + if str(rule1[0]) == str(rule2[0]) and str(rule1[2]) > str(rule2[2]): + same_rules.append(rule1_index) + break + return [rule for index, rule in enumerate(rules_cluster) if index not in same_rules] + + +def get_fuzzy_rules( + clustered_rules: List[List[Rule]], fuzzy_variables: Dict[str, FuzzyVariable] +) -> List[FuzzyRule]: + fuzzy_rules: List[List[Tuple[List[RuleAtom], Term, float]]] = [] + fuzzy_rules = [ + _get_fuzzy_rules(rules, fuzzy_variables) for rules in clustered_rules + ] + fuzzy_rules = [_delete_same_fuzzy_rules(cluster) for cluster in fuzzy_rules] + return [ + FuzzyRule(reduce(and_, item[0]), item[1]) + for cluster in fuzzy_rules + for item in cluster + ] diff --git a/viscosity_regression.ipynb b/viscosity_regression.ipynb new file mode 100644 index 0000000..bc76097 --- /dev/null +++ b/viscosity_regression.ipynb @@ -0,0 +1,814 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Viscosity
0200.00.03.707
1250.00.03.180
2350.00.02.361
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity\n", + "0 20 0.0 0.0 3.707\n", + "1 25 0.0 0.0 3.180\n", + "2 35 0.0 0.0 2.361" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Viscosity
0300.00.02.716
1400.00.02.073
2600.00.01.329
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity\n", + "0 30 0.0 0.0 2.716\n", + "1 40 0.0 0.0 2.073\n", + "2 60 0.0 0.0 1.329" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "viscosity_train = pd.read_csv(\"data/viscosity_train.csv\", sep=\";\", decimal=\",\")\n", + "viscosity_test = pd.read_csv(\"data/viscosity_test.csv\", sep=\";\", decimal=\",\")\n", + "\n", + "display(viscosity_train.head(3))\n", + "display(viscosity_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2
0200.00.0
1250.00.0
2350.00.0
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2\n", + "0 20 0.0 0.0\n", + "1 25 0.0 0.0\n", + "2 35 0.0 0.0" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "0 3.707\n", + "1 3.180\n", + "2 2.361\n", + "Name: Viscosity, dtype: float64" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2
0300.00.0
1400.00.0
2600.00.0
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2\n", + "0 30 0.0 0.0\n", + "1 40 0.0 0.0\n", + "2 60 0.0 0.0" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "0 2.716\n", + "1 2.073\n", + "2 1.329\n", + "Name: Viscosity, dtype: float64" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "viscosity_y_train = viscosity_train[\"Viscosity\"]\n", + "viscosity_train = viscosity_train.drop([\"Viscosity\"], axis=1)\n", + "\n", + "display(viscosity_train.head(3))\n", + "display(viscosity_y_train.head(3))\n", + "\n", + "viscosity_y_test = viscosity_test[\"Viscosity\"]\n", + "viscosity_test = viscosity_test.drop([\"Viscosity\"], axis=1)\n", + "\n", + "display(viscosity_test.head(3))\n", + "display(viscosity_y_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.pipeline import make_pipeline\n", + "from sklearn.preprocessing import PolynomialFeatures\n", + "from sklearn import linear_model, tree, neighbors, ensemble\n", + "\n", + "random_state = 9\n", + "\n", + "models = {\n", + " \"linear\": {\"model\": linear_model.LinearRegression(n_jobs=-1)},\n", + " \"linear_poly\": {\n", + " \"model\": make_pipeline(\n", + " PolynomialFeatures(degree=2),\n", + " linear_model.LinearRegression(fit_intercept=False, n_jobs=-1),\n", + " )\n", + " },\n", + " \"linear_interact\": {\n", + " \"model\": make_pipeline(\n", + " PolynomialFeatures(interaction_only=True),\n", + " linear_model.LinearRegression(fit_intercept=False, n_jobs=-1),\n", + " )\n", + " },\n", + " \"ridge\": {\"model\": linear_model.RidgeCV()},\n", + " \"decision_tree\": {\n", + " \"model\": tree.DecisionTreeRegressor(max_depth=7, random_state=random_state)\n", + " },\n", + " \"knn\": {\"model\": neighbors.KNeighborsRegressor(n_neighbors=7, n_jobs=-1)},\n", + " \"random_forest\": {\n", + " \"model\": ensemble.RandomForestRegressor(\n", + " max_depth=7, random_state=random_state, n_jobs=-1\n", + " )\n", + " },\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Model: linear\n", + "Model: linear_poly\n", + "Model: linear_interact\n", + "Model: ridge\n", + "Model: decision_tree\n", + "Model: knn\n", + "Model: random_forest\n" + ] + } + ], + "source": [ + "import math\n", + "from sklearn import metrics\n", + "\n", + "for model_name in models.keys():\n", + " print(f\"Model: {model_name}\")\n", + " fitted_model = models[model_name][\"model\"].fit(\n", + " viscosity_train.values, viscosity_y_train.values.ravel()\n", + " )\n", + " y_train_pred = fitted_model.predict(viscosity_train.values)\n", + " y_test_pred = fitted_model.predict(viscosity_test.values)\n", + " models[model_name][\"fitted\"] = fitted_model\n", + " models[model_name][\"train_preds\"] = y_train_pred\n", + " models[model_name][\"preds\"] = y_test_pred\n", + " models[model_name][\"RMSE_train\"] = math.sqrt(\n", + " metrics.mean_squared_error(viscosity_y_train, y_train_pred)\n", + " )\n", + " models[model_name][\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(viscosity_y_test, y_test_pred)\n", + " )\n", + " models[model_name][\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(viscosity_y_test, y_test_pred)\n", + " )\n", + " models[model_name][\"R2_test\"] = metrics.r2_score(viscosity_y_test, y_test_pred)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
 RMSE_trainRMSE_testRMAE_testR2_test
linear_poly0.1507450.1395070.3362390.978119
linear_interact0.3613090.3033890.5279110.896517
random_forest0.2264200.3410140.5457650.869259
ridge0.4723990.3785730.5594090.838873
decision_tree0.0545330.3790170.5874670.838495
linear0.4417600.4289400.6172120.793147
knn0.6669030.5669010.7027000.638689
\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "reg_metrics = pd.DataFrame.from_dict(models, \"index\")[\n", + " [\"RMSE_train\", \"RMSE_test\", \"RMAE_test\", \"R2_test\"]\n", + "]\n", + "reg_metrics.sort_values(by=\"RMSE_test\").style.background_gradient(\n", + " cmap=\"viridis\", low=1, high=0.3, subset=[\"RMSE_train\", \"RMSE_test\"]\n", + ").background_gradient(cmap=\"plasma\", low=0.3, high=1, subset=[\"RMAE_test\", \"R2_test\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'criterion': 'poisson', 'max_depth': 9, 'min_samples_split': 2}" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "from sklearn import model_selection\n", + "\n", + "parameters = {\n", + " \"criterion\": [\"squared_error\", \"absolute_error\", \"friedman_mse\", \"poisson\"],\n", + " \"max_depth\": np.arange(1, 21).tolist()[0::2],\n", + " \"min_samples_split\": np.arange(2, 20).tolist()[0::2],\n", + "}\n", + "\n", + "grid = model_selection.GridSearchCV(\n", + " tree.DecisionTreeRegressor(random_state=random_state), parameters, n_jobs=-1\n", + ")\n", + "\n", + "grid.fit(viscosity_train, viscosity_y_train)\n", + "grid.best_params_" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'RMSE_test': 0.37901722760783496,\n", + " 'RMAE_test': 0.5874671455143883,\n", + " 'R2_test': 0.8384951109125148}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "{'RMSE_test': 0.39412315184917696,\n", + " 'RMAE_test': 0.593196723643326,\n", + " 'R2_test': 0.8253648477295591}" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "model = grid.best_estimator_\n", + "y_pred = model.predict(viscosity_test)\n", + "old_metrics = {\n", + " \"RMSE_test\": models[\"decision_tree\"][\"RMSE_test\"],\n", + " \"RMAE_test\": models[\"decision_tree\"][\"RMAE_test\"],\n", + " \"R2_test\": models[\"decision_tree\"][\"R2_test\"],\n", + "}\n", + "new_metrics = {}\n", + "new_metrics[\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(viscosity_y_test, y_pred)\n", + ")\n", + "new_metrics[\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(viscosity_y_test, y_pred)\n", + ")\n", + "new_metrics[\"R2_test\"] = metrics.r2_score(viscosity_y_test, y_pred)\n", + "\n", + "display(old_metrics)\n", + "display(new_metrics)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "|--- T <= 32.50\n", + "| |--- TiO2 <= 0.18\n", + "| | |--- Al2O3 <= 0.18\n", + "| | | |--- T <= 22.50\n", + "| | | | |--- TiO2 <= 0.03\n", + "| | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | |--- value: [3.71]\n", + "| | | | | |--- Al2O3 > 0.03\n", + "| | | | | | |--- value: [4.66]\n", + "| | | | |--- TiO2 > 0.03\n", + "| | | | | |--- value: [4.88]\n", + "| | | |--- T > 22.50\n", + "| | | | |--- TiO2 <= 0.03\n", + "| | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | |--- value: [3.18]\n", + "| | | | | |--- Al2O3 > 0.03\n", + "| | | | | | |--- value: [3.38]\n", + "| | | | |--- TiO2 > 0.03\n", + "| | | | | |--- value: [4.24]\n", + "| | |--- Al2O3 > 0.18\n", + "| | | |--- T <= 22.50\n", + "| | | | |--- value: [6.67]\n", + "| | | |--- T > 22.50\n", + "| | | | |--- T <= 27.50\n", + "| | | | | |--- value: [5.59]\n", + "| | | | |--- T > 27.50\n", + "| | | | | |--- value: [4.73]\n", + "| |--- TiO2 > 0.18\n", + "| | |--- T <= 22.50\n", + "| | | |--- value: [7.13]\n", + "| | |--- T > 22.50\n", + "| | | |--- T <= 27.50\n", + "| | | | |--- value: [5.87]\n", + "| | | |--- T > 27.50\n", + "| | | | |--- value: [4.94]\n", + "|--- T > 32.50\n", + "| |--- T <= 47.50\n", + "| | |--- TiO2 <= 0.18\n", + "| | | |--- Al2O3 <= 0.18\n", + "| | | | |--- T <= 42.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | | |--- value: [2.36]\n", + "| | | | | | |--- Al2O3 > 0.03\n", + "| | | | | | | |--- value: [2.68]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- T <= 37.50\n", + "| | | | | | | |--- value: [3.12]\n", + "| | | | | | |--- T > 37.50\n", + "| | | | | | | |--- value: [2.65]\n", + "| | | | |--- T > 42.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- value: [1.83]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- value: [2.40]\n", + "| | | |--- Al2O3 > 0.18\n", + "| | | | |--- T <= 37.50\n", + "| | | | | |--- value: [4.12]\n", + "| | | | |--- T > 37.50\n", + "| | | | | |--- value: [3.56]\n", + "| | |--- TiO2 > 0.18\n", + "| | | |--- T <= 40.00\n", + "| | | | |--- value: [4.35]\n", + "| | | |--- T > 40.00\n", + "| | | | |--- value: [3.56]\n", + "| |--- T > 47.50\n", + "| | |--- TiO2 <= 0.18\n", + "| | | |--- Al2O3 <= 0.18\n", + "| | | | |--- T <= 52.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | | |--- value: [1.63]\n", + "| | | | | | |--- Al2O3 > 0.03\n", + "| | | | | | | |--- value: [1.90]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- value: [2.11]\n", + "| | | | |--- T > 52.50\n", + "| | | | | |--- T <= 65.00\n", + "| | | | | | |--- TiO2 <= 0.03\n", + "| | | | | | | |--- value: [1.55]\n", + "| | | | | | |--- TiO2 > 0.03\n", + "| | | | | | | |--- value: [1.66]\n", + "| | | | | |--- T > 65.00\n", + "| | | | | | |--- TiO2 <= 0.03\n", + "| | | | | | | |--- value: [1.19]\n", + "| | | | | | |--- TiO2 > 0.03\n", + "| | | | | | | |--- value: [1.29]\n", + "| | | |--- Al2O3 > 0.18\n", + "| | | | |--- T <= 65.00\n", + "| | | | | |--- T <= 57.50\n", + "| | | | | | |--- value: [2.43]\n", + "| | | | | |--- T > 57.50\n", + "| | | | | | |--- value: [2.16]\n", + "| | | | |--- T > 65.00\n", + "| | | | | |--- value: [1.73]\n", + "| | |--- TiO2 > 0.18\n", + "| | | |--- T <= 65.00\n", + "| | | | |--- T <= 57.50\n", + "| | | | | |--- value: [2.84]\n", + "| | | | |--- T > 57.50\n", + "| | | | | |--- value: [2.54]\n", + "| | | |--- T > 65.00\n", + "| | | | |--- value: [1.91]\n", + "\n" + ] + } + ], + "source": [ + "rules = tree.export_text(\n", + " models[\"decision_tree\"][\"fitted\"],\n", + " feature_names=viscosity_train.columns.values.tolist(),\n", + ")\n", + "print(rules)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "import pickle\n", + "\n", + "pickle.dump(models[\"decision_tree\"][\"fitted\"], open(\"data/vtree.model.sav\", \"wb\"))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/viscosity_tree.ipynb b/viscosity_tree.ipynb new file mode 100644 index 0000000..730a6b0 --- /dev/null +++ b/viscosity_tree.ipynb @@ -0,0 +1,1769 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "|--- T <= 32.50\n", + "| |--- TiO2 <= 0.18\n", + "| | |--- Al2O3 <= 0.18\n", + "| | | |--- T <= 22.50\n", + "| | | | |--- TiO2 <= 0.03\n", + "| | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | |--- value: [3.71]\n", + "| | | | | |--- Al2O3 > 0.03\n", + "| | | | | | |--- value: [4.66]\n", + "| | | | |--- TiO2 > 0.03\n", + "| | | | | |--- value: [4.88]\n", + "| | | |--- T > 22.50\n", + "| | | | |--- TiO2 <= 0.03\n", + "| | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | |--- value: [3.18]\n", + "| | | | | |--- Al2O3 > 0.03\n", + "| | | | | | |--- value: [3.38]\n", + "| | | | |--- TiO2 > 0.03\n", + "| | | | | |--- value: [4.24]\n", + "| | |--- Al2O3 > 0.18\n", + "| | | |--- T <= 22.50\n", + "| | | | |--- value: [6.67]\n", + "| | | |--- T > 22.50\n", + "| | | | |--- T <= 27.50\n", + "| | | | | |--- value: [5.59]\n", + "| | | | |--- T > 27.50\n", + "| | | | | |--- value: [4.73]\n", + "| |--- TiO2 > 0.18\n", + "| | |--- T <= 22.50\n", + "| | | |--- value: [7.13]\n", + "| | |--- T > 22.50\n", + "| | | |--- T <= 27.50\n", + "| | | | |--- value: [5.87]\n", + "| | | |--- T > 27.50\n", + "| | | | |--- value: [4.94]\n", + "|--- T > 32.50\n", + "| |--- T <= 47.50\n", + "| | |--- TiO2 <= 0.18\n", + "| | | |--- Al2O3 <= 0.18\n", + "| | | | |--- T <= 42.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | | |--- value: [2.36]\n", + "| | | | | | |--- Al2O3 > 0.03\n", + "| | | | | | | |--- value: [2.68]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- T <= 37.50\n", + "| | | | | | | |--- value: [3.12]\n", + "| | | | | | |--- T > 37.50\n", + "| | | | | | | |--- value: [2.65]\n", + "| | | | |--- T > 42.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- value: [1.83]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- value: [2.40]\n", + "| | | |--- Al2O3 > 0.18\n", + "| | | | |--- T <= 37.50\n", + "| | | | | |--- value: [4.12]\n", + "| | | | |--- T > 37.50\n", + "| | | | | |--- value: [3.56]\n", + "| | |--- TiO2 > 0.18\n", + "| | | |--- T <= 40.00\n", + "| | | | |--- value: [4.35]\n", + "| | | |--- T > 40.00\n", + "| | | | |--- value: [3.56]\n", + "| |--- T > 47.50\n", + "| | |--- TiO2 <= 0.18\n", + "| | | |--- Al2O3 <= 0.18\n", + "| | | | |--- T <= 52.50\n", + "| | | | | |--- TiO2 <= 0.03\n", + "| | | | | | |--- Al2O3 <= 0.03\n", + "| | | | | | | |--- value: [1.63]\n", + "| | | | | | |--- Al2O3 > 0.03\n", + "| | | | | | | |--- value: [1.90]\n", + "| | | | | |--- TiO2 > 0.03\n", + "| | | | | | |--- value: [2.11]\n", + "| | | | |--- T > 52.50\n", + "| | | | | |--- T <= 65.00\n", + "| | | | | | |--- TiO2 <= 0.03\n", + "| | | | | | | |--- value: [1.55]\n", + "| | | | | | |--- TiO2 > 0.03\n", + "| | | | | | | |--- value: [1.66]\n", + "| | | | | |--- T > 65.00\n", + "| | | | | | |--- TiO2 <= 0.03\n", + "| | | | | | | |--- value: [1.19]\n", + "| | | | | | |--- TiO2 > 0.03\n", + "| | | | | | | |--- value: [1.29]\n", + "| | | |--- Al2O3 > 0.18\n", + "| | | | |--- T <= 65.00\n", + "| | | | | |--- T <= 57.50\n", + "| | | | | | |--- value: [2.43]\n", + "| | | | | |--- T > 57.50\n", + "| | | | | | |--- value: [2.16]\n", + "| | | | |--- T > 65.00\n", + "| | | | | |--- value: [1.73]\n", + "| | |--- TiO2 > 0.18\n", + "| | | |--- T <= 65.00\n", + "| | | | |--- T <= 57.50\n", + "| | | | | |--- value: [2.84]\n", + "| | | | |--- T > 57.50\n", + "| | | | | |--- value: [2.54]\n", + "| | | |--- T > 65.00\n", + "| | | | |--- value: [1.91]\n", + "\n" + ] + } + ], + "source": [ + "import pickle\n", + "import pandas as pd\n", + "from sklearn import tree\n", + "\n", + "model = pickle.load(open(\"data/vtree.model.sav\", \"rb\"))\n", + "features = (\n", + " pd.read_csv(\"data/viscosity_train.csv\", sep=\";\", decimal=\",\")\n", + " .drop([\"Viscosity\"], axis=1)\n", + " .columns.values.tolist()\n", + ")\n", + "\n", + "rules = tree.export_text(model, feature_names=features)\n", + "print(rules)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "35" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 52.5) and (T > 65.0) and (TiO2 <= 0.025) -> 1.194,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 52.5) and (T > 65.0) and (TiO2 > 0.025) -> 1.289,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 52.5) and (T <= 65.0) and (TiO2 <= 0.025) -> 1.548,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 52.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) -> 1.629,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 52.5) and (T <= 65.0) and (TiO2 > 0.025) -> 1.662,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T > 65.0) -> 1.728,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 42.5) and (TiO2 <= 0.025) -> 1.832,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 52.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) -> 1.897,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 > 0.175) and (T > 65.0) -> 1.91,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 52.5) and (TiO2 > 0.025) -> 2.109,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T <= 65.0) and (T > 57.5) -> 2.16,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 42.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) -> 2.361,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 42.5) and (TiO2 > 0.025) -> 2.402,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T <= 65.0) and (T <= 57.5) -> 2.426,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 > 0.175) and (T <= 65.0) and (T > 57.5) -> 2.538,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 42.5) and (TiO2 > 0.025) and (T > 37.5) -> 2.655,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 42.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) -> 2.682,\n", + " if (T > 32.5) and (T > 47.5) and (TiO2 > 0.175) and (T <= 65.0) and (T <= 57.5) -> 2.838,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 42.5) and (TiO2 > 0.025) and (T <= 37.5) -> 3.121,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 22.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) -> 3.18,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 22.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) -> 3.38,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) and (T > 40.0) -> 3.561,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T > 37.5) -> 3.565,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 22.5) and (TiO2 <= 0.025) and (Al2O3 <= 0.025) -> 3.707,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T <= 37.5) -> 4.118,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T > 22.5) and (TiO2 > 0.025) -> 4.236,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) and (T <= 40.0) -> 4.354,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 22.5) and (TiO2 <= 0.025) and (Al2O3 > 0.025) -> 4.66,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T > 22.5) and (T > 27.5) -> 4.731,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (T <= 22.5) and (TiO2 > 0.025) -> 4.885,\n", + " if (T <= 32.5) and (TiO2 > 0.175) and (T > 22.5) and (T > 27.5) -> 4.944,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T > 22.5) and (T <= 27.5) -> 5.594,\n", + " if (T <= 32.5) and (TiO2 > 0.175) and (T > 22.5) and (T <= 27.5) -> 5.865,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) and (T <= 22.5) -> 6.67,\n", + " if (T <= 32.5) and (TiO2 > 0.175) and (T <= 22.5) -> 7.132]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_rules\n", + "\n", + "\n", + "rules = get_rules(model, features)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "35" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.194,\n", + " if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.289,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.548,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.629,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.662,\n", + " if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 1.728,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.832,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 1.897,\n", + " if (T > 32.5) and (TiO2 > 0.175) -> 1.91,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.109,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 2.16,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 2.361,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.402,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 2.426,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 > 0.175) -> 2.538,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.655,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 2.682,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 > 0.175) -> 2.838,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 3.121,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.18,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 3.38,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) -> 3.561,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 3.565,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.707,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 4.118,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.236,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) -> 4.354,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 4.66,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 4.731,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.885,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 > 0.175) -> 4.944,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 5.594,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 > 0.175) -> 5.865,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 6.67,\n", + " if (T <= 32.5) and (TiO2 > 0.175) -> 7.132]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import normalise_rules\n", + "\n", + "\n", + "rules = normalise_rules(rules)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "26" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.194,\n", + " if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.289,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.548,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.629,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.662,\n", + " if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 1.728,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 1.897,\n", + " if (T > 32.5) and (TiO2 > 0.175) -> 1.91,\n", + " if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.109,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 2.097,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 2.293,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 2.682,\n", + " if (T > 32.5) and (T <= 65.0) and (TiO2 > 0.175) -> 2.688,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.726,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.18,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 3.38,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.707,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 3.842,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.236,\n", + " if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) -> 3.958,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 4.66,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.885,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 5.162,\n", + " if (T <= 32.5) and (T > 22.5) and (TiO2 > 0.175) -> 5.405,\n", + " if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 6.67,\n", + " if (T <= 32.5) and (TiO2 > 0.175) -> 7.132]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import delete_same_rules\n", + "\n", + "\n", + "rules = delete_same_rules(rules)\n", + "display(len(rules))\n", + "rules" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['(Al2O3 <= 0.175)', '(Al2O3 > 0.025)', '(Al2O3 > 0.175)', '(TiO2 <= 0.175)', '(TiO2 > 0.025)', '(TiO2 > 0.175)']\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
(Al2O3 <= 0.175)(Al2O3 > 0.025)(Al2O3 > 0.175)(TiO2 <= 0.175)(TiO2 > 0.025)(TiO2 > 0.175)consequent
rule
if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.1941001001.194
if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.2891001101.289
if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.5481001001.548
if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.6291001001.629
if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.6621001101.662
\n", + "
" + ], + "text/plain": [ + " (Al2O3 <= 0.175) \\\n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 1 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 1 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 1 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 1 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 1 \n", + "\n", + " (Al2O3 > 0.025) \\\n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 0 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 0 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 \n", + "\n", + " (Al2O3 > 0.175) \\\n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 0 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 0 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 \n", + "\n", + " (TiO2 <= 0.175) \\\n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 1 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 1 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 1 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 1 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 1 \n", + "\n", + " (TiO2 > 0.025) \\\n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 0 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 1 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 0 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 1 \n", + "\n", + " (TiO2 > 0.175) consequent \n", + "rule \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <=... 0 1.194 \n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0... 0 1.289 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 1.548 \n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.17... 0 1.629 \n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.17... 0 1.662 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_features, vectorize_rules\n", + "\n", + "features = get_features(rules, [\"T\"])\n", + "print(features)\n", + "\n", + "df_rules = vectorize_rules(rules, features)\n", + "df_rules.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (6). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (7). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (8). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (9). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n", + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\sklearn\\base.py:1473: ConvergenceWarning: Number of distinct clusters (5) found smaller than n_clusters (10). Possibly due to duplicate points in X.\n", + " return fit_method(estimator, *args, **kwargs)\n" + ] + }, + { + "data": { + "text/plain": [ + "{2: 0.42601604060235754,\n", + " 3: 0.7018993361356377,\n", + " 4: 0.8249121250065079,\n", + " 5: 1.0,\n", + " 6: 1.0,\n", + " 7: 1.0,\n", + " 8: 1.0,\n", + " 9: 1.0,\n", + " 10: 1.0}" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "'The best clusters count is 5'" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from src.cluster_helper import draw_best_clusters_plot, get_best_clusters_num\n", + "\n", + "random_state = 9\n", + "\n", + "X = df_rules.copy()\n", + "X = X.drop([\"consequent\"], axis=1)\n", + "\n", + "clusters_score = get_best_clusters_num(X, random_state)\n", + "display(clusters_score)\n", + "\n", + "draw_best_clusters_plot(clusters_score)\n", + "\n", + "clusters_num = sorted(clusters_score.items(), key=lambda x: x[1], reverse=True)[0][0]\n", + "display(f\"The best clusters count is {clusters_num}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Кластер 1 (6):\n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.194;\n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.548;\n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 1.629;\n", + "if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 2.097;\n", + "if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.18;\n", + "if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) -> 3.707\n", + "--------\n", + "Кластер 2 (5):\n", + "if (T > 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 1.728;\n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 2.293;\n", + "if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 3.842;\n", + "if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 5.162;\n", + "if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 > 0.175) -> 6.67\n", + "--------\n", + "Кластер 3 (5):\n", + "if (T > 32.5) and (TiO2 > 0.175) -> 1.91;\n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 > 0.175) -> 2.688;\n", + "if (T > 32.5) and (T <= 47.5) and (TiO2 > 0.175) -> 3.958;\n", + "if (T <= 32.5) and (T > 22.5) and (TiO2 > 0.175) -> 5.405;\n", + "if (T <= 32.5) and (TiO2 > 0.175) -> 7.132\n", + "--------\n", + "Кластер 4 (6):\n", + "if (T > 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.289;\n", + "if (T > 32.5) and (T <= 65.0) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 1.662;\n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.109;\n", + "if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 2.726;\n", + "if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.236;\n", + "if (T <= 32.5) and (TiO2 <= 0.175) and (TiO2 > 0.025) and (Al2O3 <= 0.175) -> 4.885\n", + "--------\n", + "Кластер 5 (4):\n", + "if (T > 32.5) and (T <= 52.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 1.897;\n", + "if (T > 32.5) and (T <= 47.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 2.682;\n", + "if (T <= 32.5) and (T > 22.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 3.38;\n", + "if (T <= 32.5) and (TiO2 <= 0.175) and (Al2O3 <= 0.175) and (Al2O3 > 0.025) -> 4.66\n", + "--------\n" + ] + } + ], + "source": [ + "from sklearn import cluster\n", + "\n", + "from src.cluster_helper import print_cluster_result\n", + "\n", + "kmeans = cluster.KMeans(n_clusters=clusters_num, random_state=random_state)\n", + "kmeans.fit(X)\n", + "\n", + "print_cluster_result(X, clusters_num, kmeans.labels_)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Viscosity
0200.00.03.707
1250.00.03.180
2350.00.02.361
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity\n", + "0 20 0.0 0.0 3.707\n", + "1 25 0.0 0.0 3.180\n", + "2 35 0.0 0.0 2.361" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2Viscosity
0300.00.02.716
1400.00.02.073
2600.00.01.329
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity\n", + "0 30 0.0 0.0 2.716\n", + "1 40 0.0 0.0 2.073\n", + "2 60 0.0 0.0 1.329" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "viscosity_train = pd.read_csv(\"data/viscosity_train.csv\", sep=\";\", decimal=\",\")\n", + "viscosity_test = pd.read_csv(\"data/viscosity_test.csv\", sep=\";\", decimal=\",\")\n", + "\n", + "display(viscosity_train.head(3))\n", + "display(viscosity_test.head(3))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[[if (T = 70) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 1.194,\n", + " if (T = 48.75) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 1.548,\n", + " if (T = 42.5) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 1.629,\n", + " if (T = 40.0) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 2.097,\n", + " if (T = 27.5) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 3.18,\n", + " if (T = 20) and (TiO2 = 0.0) and (Al2O3 = 0.0) -> 3.707],\n", + " [if (T = 70) and (TiO2 = 0.0) and (Al2O3 = 0.3) -> 1.728,\n", + " if (T = 48.75) and (TiO2 = 0.0) and (Al2O3 = 0.3) -> 2.293,\n", + " if (T = 40.0) and (TiO2 = 0.0) and (Al2O3 = 0.3) -> 3.842,\n", + " if (T = 27.5) and (TiO2 = 0.0) and (Al2O3 = 0.3) -> 5.162,\n", + " if (T = 20) and (TiO2 = 0.0) and (Al2O3 = 0.3) -> 6.67],\n", + " [if (T = 70) and (TiO2 = 0.3) -> 1.91,\n", + " if (T = 48.75) and (TiO2 = 0.3) -> 2.688,\n", + " if (T = 40.0) and (TiO2 = 0.3) -> 3.958,\n", + " if (T = 27.5) and (TiO2 = 0.3) -> 5.405,\n", + " if (T = 20) and (TiO2 = 0.3) -> 7.132],\n", + " [if (T = 70) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 1.289,\n", + " if (T = 48.75) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 1.662,\n", + " if (T = 42.5) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 2.109,\n", + " if (T = 40.0) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 2.726,\n", + " if (T = 27.5) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 4.236,\n", + " if (T = 20) and (TiO2 = 0.1) and (Al2O3 = 0.0) -> 4.885],\n", + " [if (T = 42.5) and (TiO2 = 0.0) and (Al2O3 = 0.1) -> 1.897,\n", + " if (T = 40.0) and (TiO2 = 0.0) and (Al2O3 = 0.1) -> 2.682,\n", + " if (T = 27.5) and (TiO2 = 0.0) and (Al2O3 = 0.1) -> 3.38,\n", + " if (T = 20) and (TiO2 = 0.0) and (Al2O3 = 0.1) -> 4.66]]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import simplify_and_group_rules\n", + "\n", + "clustered_rules = simplify_and_group_rules(\n", + " viscosity_train, rules, clusters_num, kmeans.labels_\n", + ")\n", + "clustered_rules" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\user\\Projects\\python\\fuzzy\\.venv\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n", + " fig.show()\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "from skfuzzy import control as ctrl\n", + "import skfuzzy as fuzz\n", + "\n", + "temp = ctrl.Antecedent(viscosity_train[\"T\"].sort_values().unique(), \"temp\")\n", + "al = ctrl.Antecedent(np.arange(0, 0.3, 0.005), \"al\")\n", + "ti = ctrl.Antecedent(np.arange(0, 0.3, 0.005), \"ti\")\n", + "viscosity = ctrl.Consequent(np.arange(1.18, 3.71, 0.00001), \"viscosity\")\n", + "\n", + "temp.automf(5, variable_type=\"quant\")\n", + "temp.view()\n", + "al.automf(3, variable_type=\"quant\")\n", + "al.view()\n", + "ti.automf(3, variable_type=\"quant\")\n", + "ti.view()\n", + "viscosity.automf(5, variable_type=\"quant\")\n", + "viscosity.view()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "19" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "[IF (temp[higher] AND ti[low]) AND al[low] THEN viscosity[lower]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND ti[low]) AND al[low] THEN viscosity[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND ti[low]) AND al[low] THEN viscosity[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[lower] AND ti[low]) AND al[low] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[higher] AND ti[low]) AND al[high] THEN viscosity[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[lower] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF temp[higher] AND ti[high] THEN viscosity[low]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF temp[average] AND ti[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF temp[low] AND ti[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF temp[lower] AND ti[high] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[higher] AND ti[average]) AND al[low] THEN viscosity[lower]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND ti[average]) AND al[low] THEN viscosity[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND ti[average]) AND al[low] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[lower] AND ti[average]) AND al[low] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[average] AND ti[low]) AND al[average] THEN viscosity[average]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[low] AND ti[low]) AND al[average] THEN viscosity[high]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax,\n", + " IF (temp[lower] AND ti[low]) AND al[average] THEN viscosity[higher]\n", + " \tAND aggregation function : fmin\n", + " \tOR aggregation function : fmax]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from src.rules import get_fuzzy_rules\n", + "\n", + "fuzzy_variables = {\"Al2O3\": al, \"TiO2\": ti, \"T\": temp, \"consequent\": viscosity}\n", + "fuzzy_rules = get_fuzzy_rules(clustered_rules, fuzzy_variables)\n", + "\n", + "fuzzy_cntrl = ctrl.ControlSystem(fuzzy_rules)\n", + "\n", + "sim = ctrl.ControlSystemSimulation(fuzzy_cntrl, lenient=False)\n", + "\n", + "display(len(fuzzy_rules))\n", + "fuzzy_rules" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "=============\n", + " Antecedents \n", + "=============\n", + "Antecedent: temp = 20\n", + " - lower : 1.0\n", + " - low : 0.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + " - higher : 0.0\n", + "Antecedent: ti = 0.0\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "Antecedent: al = 0.0\n", + " - low : 1.0\n", + " - average : 0.0\n", + " - high : 0.0\n", + "\n", + "=======\n", + " Rules \n", + "=======\n", + "RULE #0:\n", + " IF (temp[higher] AND ti[low]) AND al[low] THEN viscosity[lower]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[higher] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[low] : 1.0\n", + " (temp[higher] AND ti[low]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[lower] : 0.0\n", + "\n", + "RULE #1:\n", + " IF (temp[average] AND ti[low]) AND al[low] THEN viscosity[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[low] : 1.0\n", + " (temp[average] AND ti[low]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[low] : 0.0\n", + "\n", + "RULE #2:\n", + " IF (temp[low] AND ti[low]) AND al[low] THEN viscosity[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[low] : 1.0\n", + " (temp[low] AND ti[low]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[high] : 0.0\n", + "\n", + "RULE #3:\n", + " IF (temp[lower] AND ti[low]) AND al[low] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[lower] : 1.0\n", + " - ti[low] : 1.0\n", + " - al[low] : 1.0\n", + " (temp[lower] AND ti[low]) AND al[low] = 1.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 1.0\n", + "\n", + "RULE #4:\n", + " IF (temp[higher] AND ti[low]) AND al[high] THEN viscosity[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[higher] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[high] : 0.0\n", + " (temp[higher] AND ti[low]) AND al[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[low] : 0.0\n", + "\n", + "RULE #5:\n", + " IF (temp[average] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[high] : 0.0\n", + " (temp[average] AND ti[low]) AND al[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #6:\n", + " IF (temp[low] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[high] : 0.0\n", + " (temp[low] AND ti[low]) AND al[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #7:\n", + " IF (temp[lower] AND ti[low]) AND al[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[lower] : 1.0\n", + " - ti[low] : 1.0\n", + " - al[high] : 0.0\n", + " (temp[lower] AND ti[low]) AND al[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #8:\n", + " IF temp[higher] AND ti[high] THEN viscosity[low]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[higher] : 0.0\n", + " - ti[high] : 0.0\n", + " temp[higher] AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[low] : 0.0\n", + "\n", + "RULE #9:\n", + " IF temp[average] AND ti[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - ti[high] : 0.0\n", + " temp[average] AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #10:\n", + " IF temp[low] AND ti[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 0.0\n", + " - ti[high] : 0.0\n", + " temp[low] AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #11:\n", + " IF temp[lower] AND ti[high] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[lower] : 1.0\n", + " - ti[high] : 0.0\n", + " temp[lower] AND ti[high] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #12:\n", + " IF (temp[higher] AND ti[average]) AND al[low] THEN viscosity[lower]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[higher] : 0.0\n", + " - ti[average] : 0.0\n", + " - al[low] : 1.0\n", + " (temp[higher] AND ti[average]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[lower] : 0.0\n", + "\n", + "RULE #13:\n", + " IF (temp[average] AND ti[average]) AND al[low] THEN viscosity[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - ti[average] : 0.0\n", + " - al[low] : 1.0\n", + " (temp[average] AND ti[average]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[average] : 0.0\n", + "\n", + "RULE #14:\n", + " IF (temp[low] AND ti[average]) AND al[low] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 0.0\n", + " - ti[average] : 0.0\n", + " - al[low] : 1.0\n", + " (temp[low] AND ti[average]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #15:\n", + " IF (temp[lower] AND ti[average]) AND al[low] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[lower] : 1.0\n", + " - ti[average] : 0.0\n", + " - al[low] : 1.0\n", + " (temp[lower] AND ti[average]) AND al[low] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "RULE #16:\n", + " IF (temp[average] AND ti[low]) AND al[average] THEN viscosity[average]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[average] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[average] : 0.0\n", + " (temp[average] AND ti[low]) AND al[average] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[average] : 0.0\n", + "\n", + "RULE #17:\n", + " IF (temp[low] AND ti[low]) AND al[average] THEN viscosity[high]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[low] : 0.0\n", + " - ti[low] : 1.0\n", + " - al[average] : 0.0\n", + " (temp[low] AND ti[low]) AND al[average] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[high] : 0.0\n", + "\n", + "RULE #18:\n", + " IF (temp[lower] AND ti[low]) AND al[average] THEN viscosity[higher]\n", + "\tAND aggregation function : fmin\n", + "\tOR aggregation function : fmax\n", + "\n", + " Aggregation (IF-clause):\n", + " - temp[lower] : 1.0\n", + " - ti[low] : 1.0\n", + " - al[average] : 0.0\n", + " (temp[lower] AND ti[low]) AND al[average] = 0.0\n", + " Activation (THEN-clause):\n", + " viscosity[higher] : 0.0\n", + "\n", + "\n", + "==============================\n", + " Intermediaries and Conquests \n", + "==============================\n", + "Consequent: viscosity = 3.499157499995422\n", + " lower:\n", + " Accumulate using accumulation_max : 0.0\n", + " low:\n", + " Accumulate using accumulation_max : 0.0\n", + " average:\n", + " Accumulate using accumulation_max : 0.0\n", + " high:\n", + " Accumulate using accumulation_max : 0.0\n", + " higher:\n", + " Accumulate using accumulation_max : 1.0\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "np.float64(3.499157499995422)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sim.input[\"temp\"] = 20\n", + "sim.input[\"al\"] = 0.0\n", + "sim.input[\"ti\"] = 0.0\n", + "sim.compute()\n", + "sim.print_state()\n", + "display(sim.output[\"viscosity\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2ViscosityViscosityPred
0200.000.03.7073.499157
1250.000.03.1803.188565
2350.000.02.3612.732494
3450.000.01.8321.812498
4500.000.01.6291.812498
5550.000.01.4651.812498
6700.000.01.1941.390833
7200.050.04.6603.481064
8300.050.03.3803.090537
9350.050.02.8742.703435
10400.050.02.4892.365680
11500.050.01.8972.054459
12550.050.01.7092.128746
13600.050.01.4701.465795
14200.300.06.6703.499157
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity ViscosityPred\n", + "0 20 0.00 0.0 3.707 3.499157\n", + "1 25 0.00 0.0 3.180 3.188565\n", + "2 35 0.00 0.0 2.361 2.732494\n", + "3 45 0.00 0.0 1.832 1.812498\n", + "4 50 0.00 0.0 1.629 1.812498\n", + "5 55 0.00 0.0 1.465 1.812498\n", + "6 70 0.00 0.0 1.194 1.390833\n", + "7 20 0.05 0.0 4.660 3.481064\n", + "8 30 0.05 0.0 3.380 3.090537\n", + "9 35 0.05 0.0 2.874 2.703435\n", + "10 40 0.05 0.0 2.489 2.365680\n", + "11 50 0.05 0.0 1.897 2.054459\n", + "12 55 0.05 0.0 1.709 2.128746\n", + "13 60 0.05 0.0 1.470 1.465795\n", + "14 20 0.30 0.0 6.670 3.499157" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def fuzzy_pred(row):\n", + " sim.input[\"temp\"] = row[\"T\"]\n", + " sim.input[\"al\"] = row[\"Al2O3\"]\n", + " sim.input[\"ti\"] = row[\"TiO2\"]\n", + " sim.compute()\n", + " return sim.output[\"viscosity\"]\n", + "\n", + "result_train = viscosity_train.copy()\n", + "result_train[\"ViscosityPred\"] = result_train.apply(fuzzy_pred, axis=1)\n", + "result_train.head(15)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
TAl2O3TiO2ViscosityViscosityPred
0300.000.002.7163.089540
1400.000.002.0732.359522
2600.000.001.3291.465795
3650.000.001.2111.414928
4250.050.004.1203.188565
5450.050.002.2172.045546
6650.050.001.3151.414928
7700.050.001.1051.408926
8450.300.003.1113.499157
9500.300.002.7353.475062
10650.300.001.9361.812498
11300.000.053.5873.111691
12550.000.051.9532.128746
13650.000.051.4431.414928
14400.000.303.9903.475062
15500.000.303.1893.475062
16650.000.302.2871.812498
\n", + "
" + ], + "text/plain": [ + " T Al2O3 TiO2 Viscosity ViscosityPred\n", + "0 30 0.00 0.00 2.716 3.089540\n", + "1 40 0.00 0.00 2.073 2.359522\n", + "2 60 0.00 0.00 1.329 1.465795\n", + "3 65 0.00 0.00 1.211 1.414928\n", + "4 25 0.05 0.00 4.120 3.188565\n", + "5 45 0.05 0.00 2.217 2.045546\n", + "6 65 0.05 0.00 1.315 1.414928\n", + "7 70 0.05 0.00 1.105 1.408926\n", + "8 45 0.30 0.00 3.111 3.499157\n", + "9 50 0.30 0.00 2.735 3.475062\n", + "10 65 0.30 0.00 1.936 1.812498\n", + "11 30 0.00 0.05 3.587 3.111691\n", + "12 55 0.00 0.05 1.953 2.128746\n", + "13 65 0.00 0.05 1.443 1.414928\n", + "14 40 0.00 0.30 3.990 3.475062\n", + "15 50 0.00 0.30 3.189 3.475062\n", + "16 65 0.00 0.30 2.287 1.812498" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_test = viscosity_test.copy()\n", + "result_test[\"ViscosityPred\"] = result_test.apply(fuzzy_pred, axis=1)\n", + "result_test" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'RMSE_train': 1.0977710360150494,\n", + " 'RMSE_test': 0.4076186194536602,\n", + " 'RMAE_test': 0.5797504263400755,\n", + " 'R2_test': 0.813200460937507}" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import math\n", + "from sklearn import metrics\n", + "\n", + "\n", + "rmetrics = {}\n", + "rmetrics[\"RMSE_train\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_train[\"Viscosity\"], result_train[\"ViscosityPred\"])\n", + ")\n", + "rmetrics[\"RMSE_test\"] = math.sqrt(\n", + " metrics.mean_squared_error(result_test[\"Viscosity\"], result_test[\"ViscosityPred\"])\n", + ")\n", + "rmetrics[\"RMAE_test\"] = math.sqrt(\n", + " metrics.mean_absolute_error(result_test[\"Viscosity\"], result_test[\"ViscosityPred\"])\n", + ")\n", + "rmetrics[\"R2_test\"] = metrics.r2_score(\n", + " result_test[\"Viscosity\"], result_test[\"ViscosityPred\"]\n", + ")\n", + "\n", + "rmetrics" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}