From 40ce2bfcd1e56eb744e54685709e6d5b057f60bb Mon Sep 17 00:00:00 2001 From: baseplate-admin <61817579+baseplate-admin@users.noreply.github.com> Date: Wed, 22 May 2024 11:35:30 +0600 Subject: [PATCH] Feat: remove duplicates (#50) --- Cargo.lock | 14 +- Cargo.toml | 1 + examples/test_time.py | 2 +- poetry.lock | 1810 +++++++++++++++++------------------ src/rust/lib.rs | 4 +- tests/kaiju_no_8.jpg | Bin 0 -> 94481 bytes tests/test_deduplication.py | 129 +++ 7 files changed, 1051 insertions(+), 909 deletions(-) create mode 100644 tests/kaiju_no_8.jpg create mode 100644 tests/test_deduplication.py diff --git a/Cargo.lock b/Cargo.lock index 03d05d7..5fdaecb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -388,6 +388,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "jobserver" version = "0.1.31" @@ -494,10 +503,11 @@ dependencies = [ [[package]] name = "modern_colorthief" -version = "0.1.4" +version = "0.1.5" dependencies = [ "color-thief", "image", + "itertools 0.13.0", "pyo3", ] @@ -798,7 +808,7 @@ dependencies = [ "built", "cfg-if", "interpolate_name", - "itertools", + "itertools 0.12.1", "libc", "libfuzzer-sys", "log", diff --git a/Cargo.toml b/Cargo.toml index d9c0184..09f3348 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,6 +13,7 @@ path = "src/rust/lib.rs" pyo3 = "0.21.2" color-thief = "0.2" image = "0.25.1" +itertools = "0.13.0" [profile.release.package."*"] codegen-units = 1 diff --git a/examples/test_time.py b/examples/test_time.py index 8ec2347..75b0f9b 100644 --- a/examples/test_time.py +++ b/examples/test_time.py @@ -1,4 +1,4 @@ -from python.modern_colorthief.modern_colorthief import get_color, get_palette +from modern_colorthief import get_color, get_palette from fast_colorthief import get_dominant_color, get_palette as f_get_palette import timeit from colorthief import ColorThief diff --git a/poetry.lock b/poetry.lock index 26674b7..a151c0d 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,905 +1,905 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. - -[[package]] -name = "alabaster" -version = "0.7.16" -description = "A light, configurable Sphinx theme" -optional = false -python-versions = ">=3.9" -files = [ - {file = "alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92"}, - {file = "alabaster-0.7.16.tar.gz", hash = "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65"}, -] - -[[package]] -name = "babel" -version = "2.15.0" -description = "Internationalization utilities" -optional = false -python-versions = ">=3.8" -files = [ - {file = "Babel-2.15.0-py3-none-any.whl", hash = "sha256:08706bdad8d0a3413266ab61bd6c34d0c28d6e1e7badf40a2cebe67644e2e1fb"}, - {file = "babel-2.15.0.tar.gz", hash = "sha256:8daf0e265d05768bc6c7a314cf1321e9a123afc328cc635c18622a2f30a04413"}, -] - -[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 = "certifi" -version = "2024.2.2" -description = "Python package for providing Mozilla's CA Bundle." -optional = false -python-versions = ">=3.6" -files = [ - {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, - {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, -] - -[[package]] -name = "charset-normalizer" -version = "3.3.2" -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.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, -] - -[[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 = "colorthief" -version = "0.2.1" -description = "A module for grabbing the color palette from an image." -optional = false -python-versions = "*" -files = [ - {file = "colorthief-0.2.1-py2.py3-none-any.whl", hash = "sha256:b04fc8ce5cf9c888768745e29cb19b7b688d5711af6fba26e8057debabec56b9"}, - {file = "colorthief-0.2.1.tar.gz", hash = "sha256:079cb0c95bdd669c4643e2f7494de13b0b6029d5cdbe2d74d5d3c3386bd57221"}, -] - -[package.dependencies] -Pillow = "*" - -[[package]] -name = "docutils" -version = "0.21.2" -description = "Docutils -- Python Documentation Utilities" -optional = false -python-versions = ">=3.9" -files = [ - {file = "docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2"}, - {file = "docutils-0.21.2.tar.gz", hash = "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f"}, -] - -[[package]] -name = "fast-colorthief" -version = "0.0.5" -description = "Dominant colors in image" -optional = false -python-versions = "*" -files = [ - {file = "fast-colorthief-0.0.5.tar.gz", hash = "sha256:c943b5be73add8d3f295d3e314c9f48db8555fccc770ab09d88155ba060165ae"}, - {file = "fast_colorthief-0.0.5-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:d8f9f9058fa499c00fb879a3915682ac49ac0993f5cb4249da6f1c016cc37e3d"}, - {file = "fast_colorthief-0.0.5-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d18d8c2b3b9844be8bf7885386309e710bb9e567176d07d05297e7d3a818fa2a"}, - {file = "fast_colorthief-0.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:5d87b29bad6f3b94fbf576d5fa6da4a729773e68822569326480cf31139226fc"}, - {file = "fast_colorthief-0.0.5-cp311-cp311-macosx_12_0_universal2.whl", hash = "sha256:67d445a8860c906b2b08b7297c44f3f6699a3b44868443f3209c664d1cb93c74"}, - {file = "fast_colorthief-0.0.5-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c84410f2803ecce0716de7c1c8d30d9cfc7e1e2326d26f87877fb98c7d977d3c"}, - {file = "fast_colorthief-0.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:8bfde70f82c09ab269c33bf68b0ad49d21811ef8149d735fe0676b8af24d1b4c"}, - {file = "fast_colorthief-0.0.5-cp312-cp312-macosx_12_0_universal2.whl", hash = "sha256:a06f6bcae040b67d1682c64246e5e7065602bd1987585a207b2af1b93ba617eb"}, - {file = "fast_colorthief-0.0.5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a4966e3bbb12d64af67b762327f65c01b2d742af75bb12e911970af176e30401"}, - {file = "fast_colorthief-0.0.5-cp312-cp312-win_amd64.whl", hash = "sha256:1c5d18968983334f7f3a6e715714915d78d646531a0c3e527288443dee902ef3"}, - {file = "fast_colorthief-0.0.5-cp36-cp36m-macosx_12_0_x86_64.whl", hash = "sha256:582a3f7c99784b944853f0adb5e918cd5662a291e741014889dac2883978f99f"}, - {file = "fast_colorthief-0.0.5-cp36-cp36m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11c7c21c742240a75b0b6c621dd4128e54eabe7c1859f6bcfcd66557cf32a2c9"}, - {file = "fast_colorthief-0.0.5-cp36-cp36m-win_amd64.whl", hash = "sha256:7ab4688a898cd155a88e97928ca10a4e3e0b989f618712c84baff0190765ae73"}, - {file = "fast_colorthief-0.0.5-cp37-cp37m-macosx_12_0_x86_64.whl", hash = "sha256:53e443086b8e8f223732782d40e2e36e5324229bb2d24fa9d750b59fb45210fa"}, - {file = "fast_colorthief-0.0.5-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cca73b6e327bad7ba59a9f808ccb3e8841d3b2e408c4058dc0d5502ec8615261"}, - {file = "fast_colorthief-0.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:9db355b1fa5b1b479e88f3b0e1044cb587a85712f317253eb986f96eb9e54fe7"}, - {file = "fast_colorthief-0.0.5-cp38-cp38-macosx_12_0_x86_64.whl", hash = "sha256:c4228d6ef7c036e6fc316b36e9a5abbadd15a7afa57adbef2eeb4d27ed927c2e"}, - {file = "fast_colorthief-0.0.5-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:52bd19b6c74a40250d4a522187270a7ef8a34f9865514db3812998afb29b455d"}, - {file = "fast_colorthief-0.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:dbe0610eab90ca6b051cbc05efc6088b5997ca440fdd187a253340ec59754a32"}, - {file = "fast_colorthief-0.0.5-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:229bced62a75f6e0136587b7277aa124f6d17cc32997665fd0a3b353528d7c77"}, - {file = "fast_colorthief-0.0.5-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eab0feb58e696b83f38fea5671206b1930c280bd59ed51303a0049b3c1188e5a"}, - {file = "fast_colorthief-0.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:f57c2fb9f5a8c6d6bbbce64d0c885ca8007e9c644d9adb506cd99e8e180e0c55"}, -] - -[package.dependencies] -numpy = "*" -Pillow = "*" - -[[package]] -name = "furo" -version = "2024.5.6" -description = "A clean customisable Sphinx documentation theme." -optional = false -python-versions = ">=3.8" -files = [ - {file = "furo-2024.5.6-py3-none-any.whl", hash = "sha256:490a00d08c0a37ecc90de03ae9227e8eb5d6f7f750edf9807f398a2bdf2358de"}, - {file = "furo-2024.5.6.tar.gz", hash = "sha256:81f205a6605ebccbb883350432b4831c0196dd3d1bc92f61e1f459045b3d2b0b"}, -] - -[package.dependencies] -beautifulsoup4 = "*" -pygments = ">=2.7" -sphinx = ">=6.0,<8.0" -sphinx-basic-ng = ">=1.0.0.beta2" - -[[package]] -name = "idna" -version = "3.7" -description = "Internationalized Domain Names in Applications (IDNA)" -optional = false -python-versions = ">=3.5" -files = [ - {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, - {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, -] - -[[package]] -name = "imagesize" -version = "1.4.1" -description = "Getting image size from png/jpeg/jpeg2000/gif file" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, - {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, -] - -[[package]] -name = "iniconfig" -version = "2.0.0" -description = "brain-dead simple config-ini parsing" -optional = false -python-versions = ">=3.7" -files = [ - {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, - {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, -] - -[[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 = "markdown-it-py" -version = "3.0.0" -description = "Python port of markdown-it. Markdown parsing, done right!" -optional = false -python-versions = ">=3.8" -files = [ - {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, - {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, -] - -[package.dependencies] -mdurl = ">=0.1,<1.0" - -[package.extras] -benchmarking = ["psutil", "pytest", "pytest-benchmark"] -code-style = ["pre-commit (>=3.0,<4.0)"] -compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] -linkify = ["linkify-it-py (>=1,<3)"] -plugins = ["mdit-py-plugins"] -profiling = ["gprof2dot"] -rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] -testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] - -[[package]] -name = "markupsafe" -version = "2.1.5" -description = "Safely add untrusted strings to HTML/XML markup." -optional = false -python-versions = ">=3.7" -files = [ - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, - {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, -] - -[[package]] -name = "mdit-py-plugins" -version = "0.4.1" -description = "Collection of plugins for markdown-it-py" -optional = false -python-versions = ">=3.8" -files = [ - {file = "mdit_py_plugins-0.4.1-py3-none-any.whl", hash = "sha256:1020dfe4e6bfc2c79fb49ae4e3f5b297f5ccd20f010187acc52af2921e27dc6a"}, - {file = "mdit_py_plugins-0.4.1.tar.gz", hash = "sha256:834b8ac23d1cd60cec703646ffd22ae97b7955a6d596eb1d304be1e251ae499c"}, -] - -[package.dependencies] -markdown-it-py = ">=1.0.0,<4.0.0" - -[package.extras] -code-style = ["pre-commit"] -rtd = ["myst-parser", "sphinx-book-theme"] -testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] - -[[package]] -name = "mdurl" -version = "0.1.2" -description = "Markdown URL utilities" -optional = false -python-versions = ">=3.7" -files = [ - {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, - {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, -] - -[[package]] -name = "myst-parser" -version = "3.0.1" -description = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser," -optional = false -python-versions = ">=3.8" -files = [ - {file = "myst_parser-3.0.1-py3-none-any.whl", hash = "sha256:6457aaa33a5d474aca678b8ead9b3dc298e89c68e67012e73146ea6fd54babf1"}, - {file = "myst_parser-3.0.1.tar.gz", hash = "sha256:88f0cb406cb363b077d176b51c476f62d60604d68a8dcdf4832e080441301a87"}, -] - -[package.dependencies] -docutils = ">=0.18,<0.22" -jinja2 = "*" -markdown-it-py = ">=3.0,<4.0" -mdit-py-plugins = ">=0.4,<1.0" -pyyaml = "*" -sphinx = ">=6,<8" - -[package.extras] -code-style = ["pre-commit (>=3.0,<4.0)"] -linkify = ["linkify-it-py (>=2.0,<3.0)"] -rtd = ["ipython", "sphinx (>=7)", "sphinx-autodoc2 (>=0.5.0,<0.6.0)", "sphinx-book-theme (>=1.1,<2.0)", "sphinx-copybutton", "sphinx-design", "sphinx-pyscript", "sphinx-tippy (>=0.4.3)", "sphinx-togglebutton", "sphinxext-opengraph (>=0.9.0,<0.10.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] -testing = ["beautifulsoup4", "coverage[toml]", "defusedxml", "pytest (>=8,<9)", "pytest-cov", "pytest-param-files (>=0.6.0,<0.7.0)", "pytest-regressions", "sphinx-pytest"] -testing-docutils = ["pygments", "pytest (>=8,<9)", "pytest-param-files (>=0.6.0,<0.7.0)"] - -[[package]] -name = "numpy" -version = "1.26.4" -description = "Fundamental package for array computing in Python" -optional = false -python-versions = ">=3.9" -files = [ - {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, - {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, - {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, - {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, - {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, - {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, - {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, - {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, - {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, - {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, - {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, -] - -[[package]] -name = "packaging" -version = "24.0" -description = "Core utilities for Python packages" -optional = false -python-versions = ">=3.7" -files = [ - {file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"}, - {file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"}, -] - -[[package]] -name = "pillow" -version = "10.3.0" -description = "Python Imaging Library (Fork)" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pillow-10.3.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:90b9e29824800e90c84e4022dd5cc16eb2d9605ee13f05d47641eb183cd73d45"}, - {file = "pillow-10.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a2c405445c79c3f5a124573a051062300936b0281fee57637e706453e452746c"}, - {file = "pillow-10.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:78618cdbccaa74d3f88d0ad6cb8ac3007f1a6fa5c6f19af64b55ca170bfa1edf"}, - {file = "pillow-10.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:261ddb7ca91fcf71757979534fb4c128448b5b4c55cb6152d280312062f69599"}, - {file = "pillow-10.3.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:ce49c67f4ea0609933d01c0731b34b8695a7a748d6c8d186f95e7d085d2fe475"}, - {file = "pillow-10.3.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b14f16f94cbc61215115b9b1236f9c18403c15dd3c52cf629072afa9d54c1cbf"}, - {file = "pillow-10.3.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d33891be6df59d93df4d846640f0e46f1a807339f09e79a8040bc887bdcd7ed3"}, - {file = "pillow-10.3.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b50811d664d392f02f7761621303eba9d1b056fb1868c8cdf4231279645c25f5"}, - {file = "pillow-10.3.0-cp310-cp310-win32.whl", hash = "sha256:ca2870d5d10d8726a27396d3ca4cf7976cec0f3cb706debe88e3a5bd4610f7d2"}, - {file = "pillow-10.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:f0d0591a0aeaefdaf9a5e545e7485f89910c977087e7de2b6c388aec32011e9f"}, - {file = "pillow-10.3.0-cp310-cp310-win_arm64.whl", hash = "sha256:ccce24b7ad89adb5a1e34a6ba96ac2530046763912806ad4c247356a8f33a67b"}, - {file = "pillow-10.3.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:5f77cf66e96ae734717d341c145c5949c63180842a545c47a0ce7ae52ca83795"}, - {file = "pillow-10.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e4b878386c4bf293578b48fc570b84ecfe477d3b77ba39a6e87150af77f40c57"}, - {file = "pillow-10.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fdcbb4068117dfd9ce0138d068ac512843c52295ed996ae6dd1faf537b6dbc27"}, - {file = "pillow-10.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9797a6c8fe16f25749b371c02e2ade0efb51155e767a971c61734b1bf6293994"}, - {file = "pillow-10.3.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:9e91179a242bbc99be65e139e30690e081fe6cb91a8e77faf4c409653de39451"}, - {file = "pillow-10.3.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:1b87bd9d81d179bd8ab871603bd80d8645729939f90b71e62914e816a76fc6bd"}, - {file = "pillow-10.3.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:81d09caa7b27ef4e61cb7d8fbf1714f5aec1c6b6c5270ee53504981e6e9121ad"}, - {file = "pillow-10.3.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:048ad577748b9fa4a99a0548c64f2cb8d672d5bf2e643a739ac8faff1164238c"}, - {file = "pillow-10.3.0-cp311-cp311-win32.whl", hash = "sha256:7161ec49ef0800947dc5570f86568a7bb36fa97dd09e9827dc02b718c5643f09"}, - {file = "pillow-10.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:8eb0908e954d093b02a543dc963984d6e99ad2b5e36503d8a0aaf040505f747d"}, - {file = "pillow-10.3.0-cp311-cp311-win_arm64.whl", hash = "sha256:4e6f7d1c414191c1199f8996d3f2282b9ebea0945693fb67392c75a3a320941f"}, - {file = "pillow-10.3.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:e46f38133e5a060d46bd630faa4d9fa0202377495df1f068a8299fd78c84de84"}, - {file = "pillow-10.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:50b8eae8f7334ec826d6eeffaeeb00e36b5e24aa0b9df322c247539714c6df19"}, - {file = "pillow-10.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d3bea1c75f8c53ee4d505c3e67d8c158ad4df0d83170605b50b64025917f338"}, - {file = "pillow-10.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19aeb96d43902f0a783946a0a87dbdad5c84c936025b8419da0a0cd7724356b1"}, - {file = "pillow-10.3.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:74d28c17412d9caa1066f7a31df8403ec23d5268ba46cd0ad2c50fb82ae40462"}, - {file = "pillow-10.3.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:ff61bfd9253c3915e6d41c651d5f962da23eda633cf02262990094a18a55371a"}, - {file = "pillow-10.3.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d886f5d353333b4771d21267c7ecc75b710f1a73d72d03ca06df49b09015a9ef"}, - {file = "pillow-10.3.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4b5ec25d8b17217d635f8935dbc1b9aa5907962fae29dff220f2659487891cd3"}, - {file = "pillow-10.3.0-cp312-cp312-win32.whl", hash = "sha256:51243f1ed5161b9945011a7360e997729776f6e5d7005ba0c6879267d4c5139d"}, - {file = "pillow-10.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:412444afb8c4c7a6cc11a47dade32982439925537e483be7c0ae0cf96c4f6a0b"}, - {file = "pillow-10.3.0-cp312-cp312-win_arm64.whl", hash = "sha256:798232c92e7665fe82ac085f9d8e8ca98826f8e27859d9a96b41d519ecd2e49a"}, - {file = "pillow-10.3.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:4eaa22f0d22b1a7e93ff0a596d57fdede2e550aecffb5a1ef1106aaece48e96b"}, - {file = "pillow-10.3.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cd5e14fbf22a87321b24c88669aad3a51ec052eb145315b3da3b7e3cc105b9a2"}, - {file = "pillow-10.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1530e8f3a4b965eb6a7785cf17a426c779333eb62c9a7d1bbcf3ffd5bf77a4aa"}, - {file = "pillow-10.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d512aafa1d32efa014fa041d38868fda85028e3f930a96f85d49c7d8ddc0383"}, - {file = "pillow-10.3.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:339894035d0ede518b16073bdc2feef4c991ee991a29774b33e515f1d308e08d"}, - {file = "pillow-10.3.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:aa7e402ce11f0885305bfb6afb3434b3cd8f53b563ac065452d9d5654c7b86fd"}, - {file = "pillow-10.3.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0ea2a783a2bdf2a561808fe4a7a12e9aa3799b701ba305de596bc48b8bdfce9d"}, - {file = "pillow-10.3.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:c78e1b00a87ce43bb37642c0812315b411e856a905d58d597750eb79802aaaa3"}, - {file = "pillow-10.3.0-cp38-cp38-win32.whl", hash = "sha256:72d622d262e463dfb7595202d229f5f3ab4b852289a1cd09650362db23b9eb0b"}, - {file = "pillow-10.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:2034f6759a722da3a3dbd91a81148cf884e91d1b747992ca288ab88c1de15999"}, - {file = "pillow-10.3.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2ed854e716a89b1afcedea551cd85f2eb2a807613752ab997b9974aaa0d56936"}, - {file = "pillow-10.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dc1a390a82755a8c26c9964d457d4c9cbec5405896cba94cf51f36ea0d855002"}, - {file = "pillow-10.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4203efca580f0dd6f882ca211f923168548f7ba334c189e9eab1178ab840bf60"}, - {file = "pillow-10.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3102045a10945173d38336f6e71a8dc71bcaeed55c3123ad4af82c52807b9375"}, - {file = "pillow-10.3.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:6fb1b30043271ec92dc65f6d9f0b7a830c210b8a96423074b15c7bc999975f57"}, - {file = "pillow-10.3.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:1dfc94946bc60ea375cc39cff0b8da6c7e5f8fcdc1d946beb8da5c216156ddd8"}, - {file = "pillow-10.3.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b09b86b27a064c9624d0a6c54da01c1beaf5b6cadfa609cf63789b1d08a797b9"}, - {file = "pillow-10.3.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d3b2348a78bc939b4fed6552abfd2e7988e0f81443ef3911a4b8498ca084f6eb"}, - {file = "pillow-10.3.0-cp39-cp39-win32.whl", hash = "sha256:45ebc7b45406febf07fef35d856f0293a92e7417ae7933207e90bf9090b70572"}, - {file = "pillow-10.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:0ba26351b137ca4e0db0342d5d00d2e355eb29372c05afd544ebf47c0956ffeb"}, - {file = "pillow-10.3.0-cp39-cp39-win_arm64.whl", hash = "sha256:50fd3f6b26e3441ae07b7c979309638b72abc1a25da31a81a7fbd9495713ef4f"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:6b02471b72526ab8a18c39cb7967b72d194ec53c1fd0a70b050565a0f366d355"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:8ab74c06ffdab957d7670c2a5a6e1a70181cd10b727cd788c4dd9005b6a8acd9"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:048eeade4c33fdf7e08da40ef402e748df113fd0b4584e32c4af74fe78baaeb2"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e2ec1e921fd07c7cda7962bad283acc2f2a9ccc1b971ee4b216b75fad6f0463"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:4c8e73e99da7db1b4cad7f8d682cf6abad7844da39834c288fbfa394a47bbced"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:16563993329b79513f59142a6b02055e10514c1a8e86dca8b48a893e33cf91e3"}, - {file = "pillow-10.3.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:dd78700f5788ae180b5ee8902c6aea5a5726bac7c364b202b4b3e3ba2d293170"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:aff76a55a8aa8364d25400a210a65ff59d0168e0b4285ba6bf2bd83cf675ba32"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:b7bc2176354defba3edc2b9a777744462da2f8e921fbaf61e52acb95bafa9828"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:793b4e24db2e8742ca6423d3fde8396db336698c55cd34b660663ee9e45ed37f"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d93480005693d247f8346bc8ee28c72a2191bdf1f6b5db469c096c0c867ac015"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c83341b89884e2b2e55886e8fbbf37c3fa5efd6c8907124aeb72f285ae5696e5"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1a1d1915db1a4fdb2754b9de292642a39a7fb28f1736699527bb649484fb966a"}, - {file = "pillow-10.3.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a0eaa93d054751ee9964afa21c06247779b90440ca41d184aeb5d410f20ff591"}, - {file = "pillow-10.3.0.tar.gz", hash = "sha256:9d2455fbf44c914840c793e89aa82d0e1763a14253a000743719ae5946814b2d"}, -] - -[package.extras] -docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "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 = "pluggy" -version = "1.5.0" -description = "plugin and hook calling mechanisms for python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, - {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, -] - -[package.extras] -dev = ["pre-commit", "tox"] -testing = ["pytest", "pytest-benchmark"] - -[[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 = "pytest" -version = "8.2.1" -description = "pytest: simple powerful testing with Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pytest-8.2.1-py3-none-any.whl", hash = "sha256:faccc5d332b8c3719f40283d0d44aa5cf101cec36f88cde9ed8f2bc0538612b1"}, - {file = "pytest-8.2.1.tar.gz", hash = "sha256:5046e5b46d8e4cac199c373041f26be56fdb81eb4e67dc11d4e10811fc3408fd"}, -] - -[package.dependencies] -colorama = {version = "*", markers = "sys_platform == \"win32\""} -iniconfig = "*" -packaging = "*" -pluggy = ">=1.5,<2.0" - -[package.extras] -dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] - -[[package]] -name = "pyyaml" -version = "6.0.1" -description = "YAML parser and emitter for Python" -optional = false -python-versions = ">=3.6" -files = [ - {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, - {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, - {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, - {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, - {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, - {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, - {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, - {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, - {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, - {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, - {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, - {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, - {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, - {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, - {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, - {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, - {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, - {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, - {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, - {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, - {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, -] - -[[package]] -name = "requests" -version = "2.32.0" -description = "Python HTTP for Humans." -optional = false -python-versions = ">=3.8" -files = [ - {file = "requests-2.32.0-py3-none-any.whl", hash = "sha256:f2c3881dddb70d056c5bd7600a4fae312b2a300e39be6a118d30b90bd27262b5"}, - {file = "requests-2.32.0.tar.gz", hash = "sha256:fa5490319474c82ef1d2c9bc459d3652e3ae4ef4c4ebdd18a21145a47ca4b6b8"}, -] - -[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 = "snowballstemmer" -version = "2.2.0" -description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -optional = false -python-versions = "*" -files = [ - {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, - {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, -] - -[[package]] -name = "soupsieve" -version = "2.5" -description = "A modern CSS selector implementation for Beautiful Soup." -optional = false -python-versions = ">=3.8" -files = [ - {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, - {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, -] - -[[package]] -name = "sphinx" -version = "7.3.7" -description = "Python documentation generator" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinx-7.3.7-py3-none-any.whl", hash = "sha256:413f75440be4cacf328f580b4274ada4565fb2187d696a84970c23f77b64d8c3"}, - {file = "sphinx-7.3.7.tar.gz", hash = "sha256:a4a7db75ed37531c05002d56ed6948d4c42f473a36f46e1382b0bd76ca9627bc"}, -] - -[package.dependencies] -alabaster = ">=0.7.14,<0.8.0" -babel = ">=2.9" -colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.18.1,<0.22" -imagesize = ">=1.3" -Jinja2 = ">=3.0" -packaging = ">=21.0" -Pygments = ">=2.14" -requests = ">=2.25.0" -snowballstemmer = ">=2.0" -sphinxcontrib-applehelp = "*" -sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = ">=2.0.0" -sphinxcontrib-jsmath = "*" -sphinxcontrib-qthelp = "*" -sphinxcontrib-serializinghtml = ">=1.1.9" - -[package.extras] -docs = ["sphinxcontrib-websupport"] -lint = ["flake8 (>=3.5.0)", "importlib_metadata", "mypy (==1.9.0)", "pytest (>=6.0)", "ruff (==0.3.7)", "sphinx-lint", "tomli", "types-docutils", "types-requests"] -test = ["cython (>=3.0)", "defusedxml (>=0.7.1)", "pytest (>=6.0)", "setuptools (>=67.0)"] - -[[package]] -name = "sphinx-basic-ng" -version = "1.0.0b2" -description = "A modern skeleton for Sphinx themes." -optional = false -python-versions = ">=3.7" -files = [ - {file = "sphinx_basic_ng-1.0.0b2-py3-none-any.whl", hash = "sha256:eb09aedbabfb650607e9b4b68c9d240b90b1e1be221d6ad71d61c52e29f7932b"}, - {file = "sphinx_basic_ng-1.0.0b2.tar.gz", hash = "sha256:9ec55a47c90c8c002b5960c57492ec3021f5193cb26cebc2dc4ea226848651c9"}, -] - -[package.dependencies] -sphinx = ">=4.0" - -[package.extras] -docs = ["furo", "ipython", "myst-parser", "sphinx-copybutton", "sphinx-inline-tabs"] - -[[package]] -name = "sphinxcontrib-applehelp" -version = "1.0.8" -description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinxcontrib_applehelp-1.0.8-py3-none-any.whl", hash = "sha256:cb61eb0ec1b61f349e5cc36b2028e9e7ca765be05e49641c97241274753067b4"}, - {file = "sphinxcontrib_applehelp-1.0.8.tar.gz", hash = "sha256:c40a4f96f3776c4393d933412053962fac2b84f4c99a7982ba42e09576a70619"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -standalone = ["Sphinx (>=5)"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-devhelp" -version = "1.0.6" -description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinxcontrib_devhelp-1.0.6-py3-none-any.whl", hash = "sha256:6485d09629944511c893fa11355bda18b742b83a2b181f9a009f7e500595c90f"}, - {file = "sphinxcontrib_devhelp-1.0.6.tar.gz", hash = "sha256:9893fd3f90506bc4b97bdb977ceb8fbd823989f4316b28c3841ec128544372d3"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -standalone = ["Sphinx (>=5)"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-htmlhelp" -version = "2.0.5" -description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinxcontrib_htmlhelp-2.0.5-py3-none-any.whl", hash = "sha256:393f04f112b4d2f53d93448d4bce35842f62b307ccdc549ec1585e950bc35e04"}, - {file = "sphinxcontrib_htmlhelp-2.0.5.tar.gz", hash = "sha256:0dc87637d5de53dd5eec3a6a01753b1ccf99494bd756aafecd74b4fa9e729015"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -standalone = ["Sphinx (>=5)"] -test = ["html5lib", "pytest"] - -[[package]] -name = "sphinxcontrib-jsmath" -version = "1.0.1" -description = "A sphinx extension which renders display math in HTML via JavaScript" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, - {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, -] - -[package.extras] -test = ["flake8", "mypy", "pytest"] - -[[package]] -name = "sphinxcontrib-qthelp" -version = "1.0.7" -description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinxcontrib_qthelp-1.0.7-py3-none-any.whl", hash = "sha256:e2ae3b5c492d58fcbd73281fbd27e34b8393ec34a073c792642cd8e529288182"}, - {file = "sphinxcontrib_qthelp-1.0.7.tar.gz", hash = "sha256:053dedc38823a80a7209a80860b16b722e9e0209e32fea98c90e4e6624588ed6"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -standalone = ["Sphinx (>=5)"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-serializinghtml" -version = "1.1.10" -description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)" -optional = false -python-versions = ">=3.9" -files = [ - {file = "sphinxcontrib_serializinghtml-1.1.10-py3-none-any.whl", hash = "sha256:326369b8df80a7d2d8d7f99aa5ac577f51ea51556ed974e7716cfd4fca3f6cb7"}, - {file = "sphinxcontrib_serializinghtml-1.1.10.tar.gz", hash = "sha256:93f3f5dc458b91b192fe10c397e324f262cf163d79f3282c158e8436a2c4511f"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -standalone = ["Sphinx (>=5)"] -test = ["pytest"] - -[[package]] -name = "urllib3" -version = "2.2.1" -description = "HTTP library with thread-safe connection pooling, file post, and more." -optional = false -python-versions = ">=3.8" -files = [ - {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, - {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, -] - -[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)"] - -[metadata] -lock-version = "2.0" -python-versions = "^3.12" -content-hash = "e16d6e48b86e99a6fd413a3ae926245fed8078abba15f6fe47965cad5ab18ec0" +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. + +[[package]] +name = "alabaster" +version = "0.7.16" +description = "A light, configurable Sphinx theme" +optional = false +python-versions = ">=3.9" +files = [ + {file = "alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92"}, + {file = "alabaster-0.7.16.tar.gz", hash = "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65"}, +] + +[[package]] +name = "babel" +version = "2.15.0" +description = "Internationalization utilities" +optional = false +python-versions = ">=3.8" +files = [ + {file = "Babel-2.15.0-py3-none-any.whl", hash = "sha256:08706bdad8d0a3413266ab61bd6c34d0c28d6e1e7badf40a2cebe67644e2e1fb"}, + {file = "babel-2.15.0.tar.gz", hash = "sha256:8daf0e265d05768bc6c7a314cf1321e9a123afc328cc635c18622a2f30a04413"}, +] + +[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 = "certifi" +version = "2024.2.2" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, + {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, +] + +[[package]] +name = "charset-normalizer" +version = "3.3.2" +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.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, + {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, +] + +[[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 = "colorthief" +version = "0.2.1" +description = "A module for grabbing the color palette from an image." +optional = false +python-versions = "*" +files = [ + {file = "colorthief-0.2.1-py2.py3-none-any.whl", hash = "sha256:b04fc8ce5cf9c888768745e29cb19b7b688d5711af6fba26e8057debabec56b9"}, + {file = "colorthief-0.2.1.tar.gz", hash = "sha256:079cb0c95bdd669c4643e2f7494de13b0b6029d5cdbe2d74d5d3c3386bd57221"}, +] + +[package.dependencies] +Pillow = "*" + +[[package]] +name = "docutils" +version = "0.21.2" +description = "Docutils -- Python Documentation Utilities" +optional = false +python-versions = ">=3.9" +files = [ + {file = "docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2"}, + {file = "docutils-0.21.2.tar.gz", hash = "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f"}, +] + +[[package]] +name = "fast-colorthief" +version = "0.0.5" +description = "Dominant colors in image" +optional = false +python-versions = "*" +files = [ + {file = "fast-colorthief-0.0.5.tar.gz", hash = "sha256:c943b5be73add8d3f295d3e314c9f48db8555fccc770ab09d88155ba060165ae"}, + {file = "fast_colorthief-0.0.5-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:d8f9f9058fa499c00fb879a3915682ac49ac0993f5cb4249da6f1c016cc37e3d"}, + {file = "fast_colorthief-0.0.5-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d18d8c2b3b9844be8bf7885386309e710bb9e567176d07d05297e7d3a818fa2a"}, + {file = "fast_colorthief-0.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:5d87b29bad6f3b94fbf576d5fa6da4a729773e68822569326480cf31139226fc"}, + {file = "fast_colorthief-0.0.5-cp311-cp311-macosx_12_0_universal2.whl", hash = "sha256:67d445a8860c906b2b08b7297c44f3f6699a3b44868443f3209c664d1cb93c74"}, + {file = "fast_colorthief-0.0.5-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c84410f2803ecce0716de7c1c8d30d9cfc7e1e2326d26f87877fb98c7d977d3c"}, + {file = "fast_colorthief-0.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:8bfde70f82c09ab269c33bf68b0ad49d21811ef8149d735fe0676b8af24d1b4c"}, + {file = "fast_colorthief-0.0.5-cp312-cp312-macosx_12_0_universal2.whl", hash = "sha256:a06f6bcae040b67d1682c64246e5e7065602bd1987585a207b2af1b93ba617eb"}, + {file = "fast_colorthief-0.0.5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a4966e3bbb12d64af67b762327f65c01b2d742af75bb12e911970af176e30401"}, + {file = "fast_colorthief-0.0.5-cp312-cp312-win_amd64.whl", hash = "sha256:1c5d18968983334f7f3a6e715714915d78d646531a0c3e527288443dee902ef3"}, + {file = "fast_colorthief-0.0.5-cp36-cp36m-macosx_12_0_x86_64.whl", hash = "sha256:582a3f7c99784b944853f0adb5e918cd5662a291e741014889dac2883978f99f"}, + {file = "fast_colorthief-0.0.5-cp36-cp36m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11c7c21c742240a75b0b6c621dd4128e54eabe7c1859f6bcfcd66557cf32a2c9"}, + {file = "fast_colorthief-0.0.5-cp36-cp36m-win_amd64.whl", hash = "sha256:7ab4688a898cd155a88e97928ca10a4e3e0b989f618712c84baff0190765ae73"}, + {file = "fast_colorthief-0.0.5-cp37-cp37m-macosx_12_0_x86_64.whl", hash = "sha256:53e443086b8e8f223732782d40e2e36e5324229bb2d24fa9d750b59fb45210fa"}, + {file = "fast_colorthief-0.0.5-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cca73b6e327bad7ba59a9f808ccb3e8841d3b2e408c4058dc0d5502ec8615261"}, + {file = "fast_colorthief-0.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:9db355b1fa5b1b479e88f3b0e1044cb587a85712f317253eb986f96eb9e54fe7"}, + {file = "fast_colorthief-0.0.5-cp38-cp38-macosx_12_0_x86_64.whl", hash = "sha256:c4228d6ef7c036e6fc316b36e9a5abbadd15a7afa57adbef2eeb4d27ed927c2e"}, + {file = "fast_colorthief-0.0.5-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:52bd19b6c74a40250d4a522187270a7ef8a34f9865514db3812998afb29b455d"}, + {file = "fast_colorthief-0.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:dbe0610eab90ca6b051cbc05efc6088b5997ca440fdd187a253340ec59754a32"}, + {file = "fast_colorthief-0.0.5-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:229bced62a75f6e0136587b7277aa124f6d17cc32997665fd0a3b353528d7c77"}, + {file = "fast_colorthief-0.0.5-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eab0feb58e696b83f38fea5671206b1930c280bd59ed51303a0049b3c1188e5a"}, + {file = "fast_colorthief-0.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:f57c2fb9f5a8c6d6bbbce64d0c885ca8007e9c644d9adb506cd99e8e180e0c55"}, +] + +[package.dependencies] +numpy = "*" +Pillow = "*" + +[[package]] +name = "furo" +version = "2024.5.6" +description = "A clean customisable Sphinx documentation theme." +optional = false +python-versions = ">=3.8" +files = [ + {file = "furo-2024.5.6-py3-none-any.whl", hash = "sha256:490a00d08c0a37ecc90de03ae9227e8eb5d6f7f750edf9807f398a2bdf2358de"}, + {file = "furo-2024.5.6.tar.gz", hash = "sha256:81f205a6605ebccbb883350432b4831c0196dd3d1bc92f61e1f459045b3d2b0b"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +pygments = ">=2.7" +sphinx = ">=6.0,<8.0" +sphinx-basic-ng = ">=1.0.0.beta2" + +[[package]] +name = "idna" +version = "3.7" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.5" +files = [ + {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, + {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, +] + +[[package]] +name = "imagesize" +version = "1.4.1" +description = "Getting image size from png/jpeg/jpeg2000/gif file" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, + {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, +] + +[[package]] +name = "iniconfig" +version = "2.0.0" +description = "brain-dead simple config-ini parsing" +optional = false +python-versions = ">=3.7" +files = [ + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, +] + +[[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 = "markdown-it-py" +version = "3.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" +optional = false +python-versions = ">=3.8" +files = [ + {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, + {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, +] + +[package.dependencies] +mdurl = ">=0.1,<1.0" + +[package.extras] +benchmarking = ["psutil", "pytest", "pytest-benchmark"] +code-style = ["pre-commit (>=3.0,<4.0)"] +compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] +linkify = ["linkify-it-py (>=1,<3)"] +plugins = ["mdit-py-plugins"] +profiling = ["gprof2dot"] +rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "markupsafe" +version = "2.1.5" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, + {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, +] + +[[package]] +name = "mdit-py-plugins" +version = "0.4.1" +description = "Collection of plugins for markdown-it-py" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mdit_py_plugins-0.4.1-py3-none-any.whl", hash = "sha256:1020dfe4e6bfc2c79fb49ae4e3f5b297f5ccd20f010187acc52af2921e27dc6a"}, + {file = "mdit_py_plugins-0.4.1.tar.gz", hash = "sha256:834b8ac23d1cd60cec703646ffd22ae97b7955a6d596eb1d304be1e251ae499c"}, +] + +[package.dependencies] +markdown-it-py = ">=1.0.0,<4.0.0" + +[package.extras] +code-style = ["pre-commit"] +rtd = ["myst-parser", "sphinx-book-theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "mdurl" +version = "0.1.2" +description = "Markdown URL utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, +] + +[[package]] +name = "myst-parser" +version = "3.0.1" +description = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser," +optional = false +python-versions = ">=3.8" +files = [ + {file = "myst_parser-3.0.1-py3-none-any.whl", hash = "sha256:6457aaa33a5d474aca678b8ead9b3dc298e89c68e67012e73146ea6fd54babf1"}, + {file = "myst_parser-3.0.1.tar.gz", hash = "sha256:88f0cb406cb363b077d176b51c476f62d60604d68a8dcdf4832e080441301a87"}, +] + +[package.dependencies] +docutils = ">=0.18,<0.22" +jinja2 = "*" +markdown-it-py = ">=3.0,<4.0" +mdit-py-plugins = ">=0.4,<1.0" +pyyaml = "*" +sphinx = ">=6,<8" + +[package.extras] +code-style = ["pre-commit (>=3.0,<4.0)"] +linkify = ["linkify-it-py (>=2.0,<3.0)"] +rtd = ["ipython", "sphinx (>=7)", "sphinx-autodoc2 (>=0.5.0,<0.6.0)", "sphinx-book-theme (>=1.1,<2.0)", "sphinx-copybutton", "sphinx-design", "sphinx-pyscript", "sphinx-tippy (>=0.4.3)", "sphinx-togglebutton", "sphinxext-opengraph (>=0.9.0,<0.10.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] +testing = ["beautifulsoup4", "coverage[toml]", "defusedxml", "pytest (>=8,<9)", "pytest-cov", "pytest-param-files (>=0.6.0,<0.7.0)", "pytest-regressions", "sphinx-pytest"] +testing-docutils = ["pygments", "pytest (>=8,<9)", "pytest-param-files (>=0.6.0,<0.7.0)"] + +[[package]] +name = "numpy" +version = "1.26.4" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, + {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, + {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, + {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, + {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, + {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, + {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, + {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, + {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, + {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, + {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, +] + +[[package]] +name = "packaging" +version = "24.0" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.7" +files = [ + {file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"}, + {file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"}, +] + +[[package]] +name = "pillow" +version = "10.3.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pillow-10.3.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:90b9e29824800e90c84e4022dd5cc16eb2d9605ee13f05d47641eb183cd73d45"}, + {file = "pillow-10.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a2c405445c79c3f5a124573a051062300936b0281fee57637e706453e452746c"}, + {file = "pillow-10.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:78618cdbccaa74d3f88d0ad6cb8ac3007f1a6fa5c6f19af64b55ca170bfa1edf"}, + {file = "pillow-10.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:261ddb7ca91fcf71757979534fb4c128448b5b4c55cb6152d280312062f69599"}, + {file = "pillow-10.3.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:ce49c67f4ea0609933d01c0731b34b8695a7a748d6c8d186f95e7d085d2fe475"}, + {file = "pillow-10.3.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b14f16f94cbc61215115b9b1236f9c18403c15dd3c52cf629072afa9d54c1cbf"}, + {file = "pillow-10.3.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d33891be6df59d93df4d846640f0e46f1a807339f09e79a8040bc887bdcd7ed3"}, + {file = "pillow-10.3.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b50811d664d392f02f7761621303eba9d1b056fb1868c8cdf4231279645c25f5"}, + {file = "pillow-10.3.0-cp310-cp310-win32.whl", hash = "sha256:ca2870d5d10d8726a27396d3ca4cf7976cec0f3cb706debe88e3a5bd4610f7d2"}, + {file = "pillow-10.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:f0d0591a0aeaefdaf9a5e545e7485f89910c977087e7de2b6c388aec32011e9f"}, + {file = "pillow-10.3.0-cp310-cp310-win_arm64.whl", hash = "sha256:ccce24b7ad89adb5a1e34a6ba96ac2530046763912806ad4c247356a8f33a67b"}, + {file = "pillow-10.3.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:5f77cf66e96ae734717d341c145c5949c63180842a545c47a0ce7ae52ca83795"}, + {file = "pillow-10.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e4b878386c4bf293578b48fc570b84ecfe477d3b77ba39a6e87150af77f40c57"}, + {file = "pillow-10.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fdcbb4068117dfd9ce0138d068ac512843c52295ed996ae6dd1faf537b6dbc27"}, + {file = "pillow-10.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9797a6c8fe16f25749b371c02e2ade0efb51155e767a971c61734b1bf6293994"}, + {file = "pillow-10.3.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:9e91179a242bbc99be65e139e30690e081fe6cb91a8e77faf4c409653de39451"}, + {file = "pillow-10.3.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:1b87bd9d81d179bd8ab871603bd80d8645729939f90b71e62914e816a76fc6bd"}, + {file = "pillow-10.3.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:81d09caa7b27ef4e61cb7d8fbf1714f5aec1c6b6c5270ee53504981e6e9121ad"}, + {file = "pillow-10.3.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:048ad577748b9fa4a99a0548c64f2cb8d672d5bf2e643a739ac8faff1164238c"}, + {file = "pillow-10.3.0-cp311-cp311-win32.whl", hash = "sha256:7161ec49ef0800947dc5570f86568a7bb36fa97dd09e9827dc02b718c5643f09"}, + {file = "pillow-10.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:8eb0908e954d093b02a543dc963984d6e99ad2b5e36503d8a0aaf040505f747d"}, + {file = "pillow-10.3.0-cp311-cp311-win_arm64.whl", hash = "sha256:4e6f7d1c414191c1199f8996d3f2282b9ebea0945693fb67392c75a3a320941f"}, + {file = "pillow-10.3.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:e46f38133e5a060d46bd630faa4d9fa0202377495df1f068a8299fd78c84de84"}, + {file = "pillow-10.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:50b8eae8f7334ec826d6eeffaeeb00e36b5e24aa0b9df322c247539714c6df19"}, + {file = "pillow-10.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d3bea1c75f8c53ee4d505c3e67d8c158ad4df0d83170605b50b64025917f338"}, + {file = "pillow-10.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19aeb96d43902f0a783946a0a87dbdad5c84c936025b8419da0a0cd7724356b1"}, + {file = "pillow-10.3.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:74d28c17412d9caa1066f7a31df8403ec23d5268ba46cd0ad2c50fb82ae40462"}, + {file = "pillow-10.3.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:ff61bfd9253c3915e6d41c651d5f962da23eda633cf02262990094a18a55371a"}, + {file = "pillow-10.3.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d886f5d353333b4771d21267c7ecc75b710f1a73d72d03ca06df49b09015a9ef"}, + {file = "pillow-10.3.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4b5ec25d8b17217d635f8935dbc1b9aa5907962fae29dff220f2659487891cd3"}, + {file = "pillow-10.3.0-cp312-cp312-win32.whl", hash = "sha256:51243f1ed5161b9945011a7360e997729776f6e5d7005ba0c6879267d4c5139d"}, + {file = "pillow-10.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:412444afb8c4c7a6cc11a47dade32982439925537e483be7c0ae0cf96c4f6a0b"}, + {file = "pillow-10.3.0-cp312-cp312-win_arm64.whl", hash = "sha256:798232c92e7665fe82ac085f9d8e8ca98826f8e27859d9a96b41d519ecd2e49a"}, + {file = "pillow-10.3.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:4eaa22f0d22b1a7e93ff0a596d57fdede2e550aecffb5a1ef1106aaece48e96b"}, + {file = "pillow-10.3.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cd5e14fbf22a87321b24c88669aad3a51ec052eb145315b3da3b7e3cc105b9a2"}, + {file = "pillow-10.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1530e8f3a4b965eb6a7785cf17a426c779333eb62c9a7d1bbcf3ffd5bf77a4aa"}, + {file = "pillow-10.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d512aafa1d32efa014fa041d38868fda85028e3f930a96f85d49c7d8ddc0383"}, + {file = "pillow-10.3.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:339894035d0ede518b16073bdc2feef4c991ee991a29774b33e515f1d308e08d"}, + {file = "pillow-10.3.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:aa7e402ce11f0885305bfb6afb3434b3cd8f53b563ac065452d9d5654c7b86fd"}, + {file = "pillow-10.3.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0ea2a783a2bdf2a561808fe4a7a12e9aa3799b701ba305de596bc48b8bdfce9d"}, + {file = "pillow-10.3.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:c78e1b00a87ce43bb37642c0812315b411e856a905d58d597750eb79802aaaa3"}, + {file = "pillow-10.3.0-cp38-cp38-win32.whl", hash = "sha256:72d622d262e463dfb7595202d229f5f3ab4b852289a1cd09650362db23b9eb0b"}, + {file = "pillow-10.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:2034f6759a722da3a3dbd91a81148cf884e91d1b747992ca288ab88c1de15999"}, + {file = "pillow-10.3.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2ed854e716a89b1afcedea551cd85f2eb2a807613752ab997b9974aaa0d56936"}, + {file = "pillow-10.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dc1a390a82755a8c26c9964d457d4c9cbec5405896cba94cf51f36ea0d855002"}, + {file = "pillow-10.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4203efca580f0dd6f882ca211f923168548f7ba334c189e9eab1178ab840bf60"}, + {file = "pillow-10.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3102045a10945173d38336f6e71a8dc71bcaeed55c3123ad4af82c52807b9375"}, + {file = "pillow-10.3.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:6fb1b30043271ec92dc65f6d9f0b7a830c210b8a96423074b15c7bc999975f57"}, + {file = "pillow-10.3.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:1dfc94946bc60ea375cc39cff0b8da6c7e5f8fcdc1d946beb8da5c216156ddd8"}, + {file = "pillow-10.3.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b09b86b27a064c9624d0a6c54da01c1beaf5b6cadfa609cf63789b1d08a797b9"}, + {file = "pillow-10.3.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d3b2348a78bc939b4fed6552abfd2e7988e0f81443ef3911a4b8498ca084f6eb"}, + {file = "pillow-10.3.0-cp39-cp39-win32.whl", hash = "sha256:45ebc7b45406febf07fef35d856f0293a92e7417ae7933207e90bf9090b70572"}, + {file = "pillow-10.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:0ba26351b137ca4e0db0342d5d00d2e355eb29372c05afd544ebf47c0956ffeb"}, + {file = "pillow-10.3.0-cp39-cp39-win_arm64.whl", hash = "sha256:50fd3f6b26e3441ae07b7c979309638b72abc1a25da31a81a7fbd9495713ef4f"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:6b02471b72526ab8a18c39cb7967b72d194ec53c1fd0a70b050565a0f366d355"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:8ab74c06ffdab957d7670c2a5a6e1a70181cd10b727cd788c4dd9005b6a8acd9"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:048eeade4c33fdf7e08da40ef402e748df113fd0b4584e32c4af74fe78baaeb2"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e2ec1e921fd07c7cda7962bad283acc2f2a9ccc1b971ee4b216b75fad6f0463"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:4c8e73e99da7db1b4cad7f8d682cf6abad7844da39834c288fbfa394a47bbced"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:16563993329b79513f59142a6b02055e10514c1a8e86dca8b48a893e33cf91e3"}, + {file = "pillow-10.3.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:dd78700f5788ae180b5ee8902c6aea5a5726bac7c364b202b4b3e3ba2d293170"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:aff76a55a8aa8364d25400a210a65ff59d0168e0b4285ba6bf2bd83cf675ba32"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:b7bc2176354defba3edc2b9a777744462da2f8e921fbaf61e52acb95bafa9828"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:793b4e24db2e8742ca6423d3fde8396db336698c55cd34b660663ee9e45ed37f"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d93480005693d247f8346bc8ee28c72a2191bdf1f6b5db469c096c0c867ac015"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c83341b89884e2b2e55886e8fbbf37c3fa5efd6c8907124aeb72f285ae5696e5"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:1a1d1915db1a4fdb2754b9de292642a39a7fb28f1736699527bb649484fb966a"}, + {file = "pillow-10.3.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a0eaa93d054751ee9964afa21c06247779b90440ca41d184aeb5d410f20ff591"}, + {file = "pillow-10.3.0.tar.gz", hash = "sha256:9d2455fbf44c914840c793e89aa82d0e1763a14253a000743719ae5946814b2d"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "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 = "pluggy" +version = "1.5.0" +description = "plugin and hook calling mechanisms for python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, + {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] + +[[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 = "pytest" +version = "8.2.1" +description = "pytest: simple powerful testing with Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pytest-8.2.1-py3-none-any.whl", hash = "sha256:faccc5d332b8c3719f40283d0d44aa5cf101cec36f88cde9ed8f2bc0538612b1"}, + {file = "pytest-8.2.1.tar.gz", hash = "sha256:5046e5b46d8e4cac199c373041f26be56fdb81eb4e67dc11d4e10811fc3408fd"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "sys_platform == \"win32\""} +iniconfig = "*" +packaging = "*" +pluggy = ">=1.5,<2.0" + +[package.extras] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] + +[[package]] +name = "pyyaml" +version = "6.0.1" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, + {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, + {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, + {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, + {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, + {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, + {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, + {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, + {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, + {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, + {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, + {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, + {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, +] + +[[package]] +name = "requests" +version = "2.32.2" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.8" +files = [ + {file = "requests-2.32.2-py3-none-any.whl", hash = "sha256:fc06670dd0ed212426dfeb94fc1b983d917c4f9847c863f313c9dfaaffb7c23c"}, + {file = "requests-2.32.2.tar.gz", hash = "sha256:dd951ff5ecf3e3b3aa26b40703ba77495dab41da839ae72ef3c8e5d8e2433289"}, +] + +[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 = "snowballstemmer" +version = "2.2.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +optional = false +python-versions = "*" +files = [ + {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, + {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, +] + +[[package]] +name = "soupsieve" +version = "2.5" +description = "A modern CSS selector implementation for Beautiful Soup." +optional = false +python-versions = ">=3.8" +files = [ + {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, + {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, +] + +[[package]] +name = "sphinx" +version = "7.3.7" +description = "Python documentation generator" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinx-7.3.7-py3-none-any.whl", hash = "sha256:413f75440be4cacf328f580b4274ada4565fb2187d696a84970c23f77b64d8c3"}, + {file = "sphinx-7.3.7.tar.gz", hash = "sha256:a4a7db75ed37531c05002d56ed6948d4c42f473a36f46e1382b0bd76ca9627bc"}, +] + +[package.dependencies] +alabaster = ">=0.7.14,<0.8.0" +babel = ">=2.9" +colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} +docutils = ">=0.18.1,<0.22" +imagesize = ">=1.3" +Jinja2 = ">=3.0" +packaging = ">=21.0" +Pygments = ">=2.14" +requests = ">=2.25.0" +snowballstemmer = ">=2.0" +sphinxcontrib-applehelp = "*" +sphinxcontrib-devhelp = "*" +sphinxcontrib-htmlhelp = ">=2.0.0" +sphinxcontrib-jsmath = "*" +sphinxcontrib-qthelp = "*" +sphinxcontrib-serializinghtml = ">=1.1.9" + +[package.extras] +docs = ["sphinxcontrib-websupport"] +lint = ["flake8 (>=3.5.0)", "importlib_metadata", "mypy (==1.9.0)", "pytest (>=6.0)", "ruff (==0.3.7)", "sphinx-lint", "tomli", "types-docutils", "types-requests"] +test = ["cython (>=3.0)", "defusedxml (>=0.7.1)", "pytest (>=6.0)", "setuptools (>=67.0)"] + +[[package]] +name = "sphinx-basic-ng" +version = "1.0.0b2" +description = "A modern skeleton for Sphinx themes." +optional = false +python-versions = ">=3.7" +files = [ + {file = "sphinx_basic_ng-1.0.0b2-py3-none-any.whl", hash = "sha256:eb09aedbabfb650607e9b4b68c9d240b90b1e1be221d6ad71d61c52e29f7932b"}, + {file = "sphinx_basic_ng-1.0.0b2.tar.gz", hash = "sha256:9ec55a47c90c8c002b5960c57492ec3021f5193cb26cebc2dc4ea226848651c9"}, +] + +[package.dependencies] +sphinx = ">=4.0" + +[package.extras] +docs = ["furo", "ipython", "myst-parser", "sphinx-copybutton", "sphinx-inline-tabs"] + +[[package]] +name = "sphinxcontrib-applehelp" +version = "1.0.8" +description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_applehelp-1.0.8-py3-none-any.whl", hash = "sha256:cb61eb0ec1b61f349e5cc36b2028e9e7ca765be05e49641c97241274753067b4"}, + {file = "sphinxcontrib_applehelp-1.0.8.tar.gz", hash = "sha256:c40a4f96f3776c4393d933412053962fac2b84f4c99a7982ba42e09576a70619"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-devhelp" +version = "1.0.6" +description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_devhelp-1.0.6-py3-none-any.whl", hash = "sha256:6485d09629944511c893fa11355bda18b742b83a2b181f9a009f7e500595c90f"}, + {file = "sphinxcontrib_devhelp-1.0.6.tar.gz", hash = "sha256:9893fd3f90506bc4b97bdb977ceb8fbd823989f4316b28c3841ec128544372d3"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-htmlhelp" +version = "2.0.5" +description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_htmlhelp-2.0.5-py3-none-any.whl", hash = "sha256:393f04f112b4d2f53d93448d4bce35842f62b307ccdc549ec1585e950bc35e04"}, + {file = "sphinxcontrib_htmlhelp-2.0.5.tar.gz", hash = "sha256:0dc87637d5de53dd5eec3a6a01753b1ccf99494bd756aafecd74b4fa9e729015"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["html5lib", "pytest"] + +[[package]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" +description = "A sphinx extension which renders display math in HTML via JavaScript" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, + {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, +] + +[package.extras] +test = ["flake8", "mypy", "pytest"] + +[[package]] +name = "sphinxcontrib-qthelp" +version = "1.0.7" +description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_qthelp-1.0.7-py3-none-any.whl", hash = "sha256:e2ae3b5c492d58fcbd73281fbd27e34b8393ec34a073c792642cd8e529288182"}, + {file = "sphinxcontrib_qthelp-1.0.7.tar.gz", hash = "sha256:053dedc38823a80a7209a80860b16b722e9e0209e32fea98c90e4e6624588ed6"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-serializinghtml" +version = "1.1.10" +description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_serializinghtml-1.1.10-py3-none-any.whl", hash = "sha256:326369b8df80a7d2d8d7f99aa5ac577f51ea51556ed974e7716cfd4fca3f6cb7"}, + {file = "sphinxcontrib_serializinghtml-1.1.10.tar.gz", hash = "sha256:93f3f5dc458b91b192fe10c397e324f262cf163d79f3282c158e8436a2c4511f"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "urllib3" +version = "2.2.1" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.8" +files = [ + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, +] + +[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)"] + +[metadata] +lock-version = "2.0" +python-versions = "^3.12" +content-hash = "e16d6e48b86e99a6fd413a3ae926245fed8078abba15f6fe47965cad5ab18ec0" diff --git a/src/rust/lib.rs b/src/rust/lib.rs index ac3921c..a02cbe1 100644 --- a/src/rust/lib.rs +++ b/src/rust/lib.rs @@ -1,5 +1,6 @@ use color_thief::ColorFormat; use image::DynamicImage; +use itertools::Itertools; use pyo3::prelude::*; fn get_image_buffer(img: image::DynamicImage) -> (Vec, ColorFormat) { @@ -66,9 +67,10 @@ fn get_palette( ) .unwrap(); - let color_vec = colors + let color_vec: Vec<(u8, u8, u8)> = colors .iter() .map(|color| (color.r, color.g, color.b)) + .unique() .collect(); Ok(color_vec) diff --git a/tests/kaiju_no_8.jpg b/tests/kaiju_no_8.jpg new file mode 100644 index 0000000000000000000000000000000000000000..297542f3aa9f087104770b53e524be6e1275e669 GIT binary patch literal 94481 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%0A~u1N3_1J`35HJCy-LjsRRW84$`<7?Qc%pS4K_^Y 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