From ae2b4d8380c099145132df1ba8c9bac404517477 Mon Sep 17 00:00:00 2001
From: Tebbo <root@Dataport-DA23-72144.dsc.dataport.de>
Date: Thu, 6 Mar 2025 13:19:11 +0100
Subject: [PATCH] Added Example 19 Sports and School Grounds

---
 19_SportsAndSchoolGrounds/README.md           |   3 +
 19_SportsAndSchoolGrounds/bolzschul.geojson   | 287 ++++++
 19_SportsAndSchoolGrounds/example19.py        |  27 +
 19_SportsAndSchoolGrounds/output.png          | Bin 0 -> 40805 bytes
 19_SportsAndSchoolGrounds/poetry.lock         | 849 ++++++++++++++++++
 19_SportsAndSchoolGrounds/pyproject.toml      |  20 +
 19_SportsAndSchoolGrounds/stadtbezirk.geojson |   1 +
 README.md                                     |   3 +-
 8 files changed, 1189 insertions(+), 1 deletion(-)
 create mode 100644 19_SportsAndSchoolGrounds/README.md
 create mode 100644 19_SportsAndSchoolGrounds/bolzschul.geojson
 create mode 100644 19_SportsAndSchoolGrounds/example19.py
 create mode 100644 19_SportsAndSchoolGrounds/output.png
 create mode 100644 19_SportsAndSchoolGrounds/poetry.lock
 create mode 100644 19_SportsAndSchoolGrounds/pyproject.toml
 create mode 100644 19_SportsAndSchoolGrounds/stadtbezirk.geojson

diff --git a/19_SportsAndSchoolGrounds/README.md b/19_SportsAndSchoolGrounds/README.md
new file mode 100644
index 0000000..4200ddc
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/README.md
@@ -0,0 +1,3 @@
+Show a map of Norderstedt and mark the sports and school grounds in it
+Data Source: https://opendata.schleswig-holstein.de/dataset/bolz-oder-sportplatze-auf-schulen
+             https://opendata.schleswig-holstein.de/dataset/kleinraumige-gliederung-stadtbezirke
\ No newline at end of file
diff --git a/19_SportsAndSchoolGrounds/bolzschul.geojson b/19_SportsAndSchoolGrounds/bolzschul.geojson
new file mode 100644
index 0000000..2bd8aea
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/bolzschul.geojson
@@ -0,0 +1,287 @@
+{
+  "type": "FeatureCollection",
+  "features": [
+    {
+      "type": "Feature",
+      "id": "bolzschul.65",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          565666.7,
+          5954035.2
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 65,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Friedrichsgabe / Kleinspielfeld",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22844 Norderstedt",
+        "lage": "Pestalozzistraße 5",
+        "geo_x": 565666.7,
+        "geo_y": 5954035.2,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[565666.7,5954035.2]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        565666.7,
+        5954035.2,
+        565666.7,
+        5954035.2
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.68",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          564868.2,
+          5947642
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 68,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Gottfried-Keller-Straße / Kleinspielfeld",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22848 Norderstedt",
+        "lage": "Sandweg 39b",
+        "geo_x": 564868.2,
+        "geo_y": 5947642,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[564868.2,5947642.0]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        564868.2,
+        5947642,
+        564868.2,
+        5947642
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.69",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          564877.2,
+          5947667.6
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 69,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Gottfried-Keller-Straße / Leichtathletikanlage",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22848 Norderstedt",
+        "lage": "Sandweg 39b",
+        "geo_x": 564877.2,
+        "geo_y": 5947667.6,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[564877.2,5947667.6]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        564877.2,
+        5947667.6,
+        564877.2,
+        5947667.6
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.66",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          565404,
+          5948810.9
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 66,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Lütjenmoor / Kleinspielfeld",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22850 Norderstedt",
+        "lage": "Lütjenmoor 11",
+        "geo_x": 565404,
+        "geo_y": 5948810.9,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[565404.0,5948810.9]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        565404,
+        5948810.9,
+        565404,
+        5948810.9
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.67",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          565331.2,
+          5948770.9
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 67,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Lütjenmoor / Leichtathletikanlage",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22850 Norderstedt",
+        "lage": "Lütjenmoor 11",
+        "geo_x": 565331.2,
+        "geo_y": 5948770.9,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[565331.2,5948770.9]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        565331.2,
+        5948770.9,
+        565331.2,
+        5948770.9
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.64",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          564811.9,
+          5951809.2
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 64,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "GS Pellwormstraße / Kleinspielfeld",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22846 Norderstedt",
+        "lage": "Pellwormstraße 35-37",
+        "geo_x": 564811.9,
+        "geo_y": 5951809.2,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[564811.9,5951809.2]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        564811.9,
+        5951809.2,
+        564811.9,
+        5951809.2
+      ]
+    },
+    {
+      "type": "Feature",
+      "id": "bolzschul.63",
+      "geometry": {
+        "type": "Point",
+        "coordinates": [
+          567820.7,
+          5949539.5
+        ]
+      },
+      "geometry_name": "geom",
+      "properties": {
+        "id": 63,
+        "gti_key": null,
+        "gti_sym": 30961,
+        "gti_wink": 0,
+        "geo_key": null,
+        "bezeich": "Sportplatz SZ-Süd Wanne / Kleinspielfeld",
+        "art": "BolzSchul",
+        "betrieb": "Stadt Norderstedt",
+        "ort": "22851 Norderstedt",
+        "lage": "Poppenbütteler Straße 230",
+        "geo_x": 567820.7,
+        "geo_y": 5949539.5,
+        "homepage": null,
+        "url": "https://geoservice.norderstedt.de/geoportal/?Map/layerIds= basemap_grau,no_stadtgebiet,no_bolzschul_wfs&visibility=true,true,true&transparency=0,0,0&Map/center=[567820.7,5949539.5]&Map/zoomLevel=8",
+        "belag": null,
+        "bezirk": null,
+        "gslayer": "no_bolzschul_wfs",
+        "bild": null
+      },
+      "bbox": [
+        567820.7,
+        5949539.5,
+        567820.7,
+        5949539.5
+      ]
+    }
+  ],
+  "totalFeatures": 7,
+  "numberMatched": 7,
+  "numberReturned": 7,
+  "timeStamp": "2025-03-06T09:35:49.101Z",
+  "crs": {
+    "type": "name",
+    "properties": {
+      "name": "urn:ogc:def:crs:EPSG::25832"
+    }
+  },
+  "bbox": [
+    564811.9,
+    5947642,
+    567820.7,
+    5954035.2
+  ]
+}
\ No newline at end of file
diff --git a/19_SportsAndSchoolGrounds/example19.py b/19_SportsAndSchoolGrounds/example19.py
new file mode 100644
index 0000000..53f51d4
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/example19.py
@@ -0,0 +1,27 @@
+import geopandas as gp
+import matplotlib.pyplot as plt
+
+# load the needed geojson/json
+bezirke = gp.read_file('stadtbezirk.geojson')
+bolzschul_points = gp.read_file('bolzschul.geojson')
+
+# create a plot
+fig, ax = plt.subplots(1, 1, figsize=(10, 6))
+
+# Create text annotations in the fig for the bolzschul points
+list_of_previous_lagen = []
+for idx, row in bolzschul_points.iterrows():
+    coordinates = row['geometry'].coords.xy
+    x, y = coordinates[0][0], coordinates[1][0]
+    # Check if there is already an annotation with the same name
+    if row['lage'] not in list_of_previous_lagen:
+        list_of_previous_lagen.append(row['lage'])
+        ax.annotate(row['lage'], xy=(x, y), xytext=(x, y))
+
+# Plot the map and the points
+bezirke.plot(ax=ax)
+bolzschul_points.plot(ax=ax, color='orange', legend=True)
+
+ax.set_axis_off()
+plt.savefig('output.png', format='png')
+print("Map of sports and school grounds saved as output.png")
\ No newline at end of file
diff --git a/19_SportsAndSchoolGrounds/output.png b/19_SportsAndSchoolGrounds/output.png
new file mode 100644
index 0000000000000000000000000000000000000000..56d23bdbb4e288ee7ef8ca7cc27026780bb7057a
GIT binary patch
literal 40805
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
VUU-{?8?6V$ji;-h%Q~loCIDMr4Uhl;

literal 0
HcmV?d00001

diff --git a/19_SportsAndSchoolGrounds/poetry.lock b/19_SportsAndSchoolGrounds/poetry.lock
new file mode 100644
index 0000000..12541b7
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/poetry.lock
@@ -0,0 +1,849 @@
+# This file is automatically @generated by Poetry 2.0.1 and should not be changed by hand.
+
+[[package]]
+name = "certifi"
+version = "2025.1.31"
+description = "Python package for providing Mozilla's CA Bundle."
+optional = false
+python-versions = ">=3.6"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "certifi-2025.1.31-py3-none-any.whl", hash = "sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe"},
+    {file = "certifi-2025.1.31.tar.gz", hash = "sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651"},
+]
+
+[[package]]
+name = "contourpy"
+version = "1.3.1"
+description = "Python library for calculating contours of 2D quadrilateral grids"
+optional = false
+python-versions = ">=3.10"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "contourpy-1.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a045f341a77b77e1c5de31e74e966537bba9f3c4099b35bf4c2e3939dd54cdab"},
+    {file = "contourpy-1.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:500360b77259914f7805af7462e41f9cb7ca92ad38e9f94d6c8641b089338124"},
+    {file = "contourpy-1.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b2f926efda994cdf3c8d3fdb40b9962f86edbc4457e739277b961eced3d0b4c1"},
+    {file = "contourpy-1.3.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:adce39d67c0edf383647a3a007de0a45fd1b08dedaa5318404f1a73059c2512b"},
+    {file = "contourpy-1.3.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:abbb49fb7dac584e5abc6636b7b2a7227111c4f771005853e7d25176daaf8453"},
+    {file = "contourpy-1.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0cffcbede75c059f535725c1680dfb17b6ba8753f0c74b14e6a9c68c29d7ea3"},
+    {file = "contourpy-1.3.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:ab29962927945d89d9b293eabd0d59aea28d887d4f3be6c22deaefbb938a7277"},
+    {file = "contourpy-1.3.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:974d8145f8ca354498005b5b981165b74a195abfae9a8129df3e56771961d595"},
+    {file = "contourpy-1.3.1-cp310-cp310-win32.whl", hash = "sha256:ac4578ac281983f63b400f7fe6c101bedc10651650eef012be1ccffcbacf3697"},
+    {file = "contourpy-1.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:174e758c66bbc1c8576992cec9599ce8b6672b741b5d336b5c74e35ac382b18e"},
+    {file = "contourpy-1.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3e8b974d8db2c5610fb4e76307e265de0edb655ae8169e8b21f41807ccbeec4b"},
+    {file = "contourpy-1.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:20914c8c973f41456337652a6eeca26d2148aa96dd7ac323b74516988bea89fc"},
+    {file = "contourpy-1.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19d40d37c1c3a4961b4619dd9d77b12124a453cc3d02bb31a07d58ef684d3d86"},
+    {file = "contourpy-1.3.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:113231fe3825ebf6f15eaa8bc1f5b0ddc19d42b733345eae0934cb291beb88b6"},
+    {file = "contourpy-1.3.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4dbbc03a40f916a8420e420d63e96a1258d3d1b58cbdfd8d1f07b49fcbd38e85"},
+    {file = "contourpy-1.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a04ecd68acbd77fa2d39723ceca4c3197cb2969633836ced1bea14e219d077c"},
+    {file = "contourpy-1.3.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c414fc1ed8ee1dbd5da626cf3710c6013d3d27456651d156711fa24f24bd1291"},
+    {file = "contourpy-1.3.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:31c1b55c1f34f80557d3830d3dd93ba722ce7e33a0b472cba0ec3b6535684d8f"},
+    {file = "contourpy-1.3.1-cp311-cp311-win32.whl", hash = "sha256:f611e628ef06670df83fce17805c344710ca5cde01edfdc72751311da8585375"},
+    {file = "contourpy-1.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:b2bdca22a27e35f16794cf585832e542123296b4687f9fd96822db6bae17bfc9"},
+    {file = "contourpy-1.3.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:0ffa84be8e0bd33410b17189f7164c3589c229ce5db85798076a3fa136d0e509"},
+    {file = "contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:805617228ba7e2cbbfb6c503858e626ab528ac2a32a04a2fe88ffaf6b02c32bc"},
+    {file = "contourpy-1.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ade08d343436a94e633db932e7e8407fe7de8083967962b46bdfc1b0ced39454"},
+    {file = "contourpy-1.3.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:47734d7073fb4590b4a40122b35917cd77be5722d80683b249dac1de266aac80"},
+    {file = "contourpy-1.3.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2ba94a401342fc0f8b948e57d977557fbf4d515f03c67682dd5c6191cb2d16ec"},
+    {file = "contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efa874e87e4a647fd2e4f514d5e91c7d493697127beb95e77d2f7561f6905bd9"},
+    {file = "contourpy-1.3.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1bf98051f1045b15c87868dbaea84f92408337d4f81d0e449ee41920ea121d3b"},
+    {file = "contourpy-1.3.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:61332c87493b00091423e747ea78200659dc09bdf7fd69edd5e98cef5d3e9a8d"},
+    {file = "contourpy-1.3.1-cp312-cp312-win32.whl", hash = "sha256:e914a8cb05ce5c809dd0fe350cfbb4e881bde5e2a38dc04e3afe1b3e58bd158e"},
+    {file = "contourpy-1.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:08d9d449a61cf53033612cb368f3a1b26cd7835d9b8cd326647efe43bca7568d"},
+    {file = "contourpy-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a761d9ccfc5e2ecd1bf05534eda382aa14c3e4f9205ba5b1684ecfe400716ef2"},
+    {file = "contourpy-1.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:523a8ee12edfa36f6d2a49407f705a6ef4c5098de4f498619787e272de93f2d5"},
+    {file = "contourpy-1.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ece6df05e2c41bd46776fbc712e0996f7c94e0d0543af1656956d150c4ca7c81"},
+    {file = "contourpy-1.3.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:573abb30e0e05bf31ed067d2f82500ecfdaec15627a59d63ea2d95714790f5c2"},
+    {file = "contourpy-1.3.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9fa36448e6a3a1a9a2ba23c02012c43ed88905ec80163f2ffe2421c7192a5d7"},
+    {file = "contourpy-1.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ea9924d28fc5586bf0b42d15f590b10c224117e74409dd7a0be3b62b74a501c"},
+    {file = "contourpy-1.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5b75aa69cb4d6f137b36f7eb2ace9280cfb60c55dc5f61c731fdf6f037f958a3"},
+    {file = "contourpy-1.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:041b640d4ec01922083645a94bb3b2e777e6b626788f4095cf21abbe266413c1"},
+    {file = "contourpy-1.3.1-cp313-cp313-win32.whl", hash = "sha256:36987a15e8ace5f58d4d5da9dca82d498c2bbb28dff6e5d04fbfcc35a9cb3a82"},
+    {file = "contourpy-1.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:a7895f46d47671fa7ceec40f31fae721da51ad34bdca0bee83e38870b1f47ffd"},
+    {file = "contourpy-1.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:9ddeb796389dadcd884c7eb07bd14ef12408aaae358f0e2ae24114d797eede30"},
+    {file = "contourpy-1.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:19c1555a6801c2f084c7ddc1c6e11f02eb6a6016ca1318dd5452ba3f613a1751"},
+    {file = "contourpy-1.3.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:841ad858cff65c2c04bf93875e384ccb82b654574a6d7f30453a04f04af71342"},
+    {file = "contourpy-1.3.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4318af1c925fb9a4fb190559ef3eec206845f63e80fb603d47f2d6d67683901c"},
+    {file = "contourpy-1.3.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:14c102b0eab282427b662cb590f2e9340a9d91a1c297f48729431f2dcd16e14f"},
+    {file = "contourpy-1.3.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05e806338bfeaa006acbdeba0ad681a10be63b26e1b17317bfac3c5d98f36cda"},
+    {file = "contourpy-1.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4d76d5993a34ef3df5181ba3c92fabb93f1eaa5729504fb03423fcd9f3177242"},
+    {file = "contourpy-1.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:89785bb2a1980c1bd87f0cb1517a71cde374776a5f150936b82580ae6ead44a1"},
+    {file = "contourpy-1.3.1-cp313-cp313t-win32.whl", hash = "sha256:8eb96e79b9f3dcadbad2a3891672f81cdcab7f95b27f28f1c67d75f045b6b4f1"},
+    {file = "contourpy-1.3.1-cp313-cp313t-win_amd64.whl", hash = "sha256:287ccc248c9e0d0566934e7d606201abd74761b5703d804ff3df8935f523d546"},
+    {file = "contourpy-1.3.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:b457d6430833cee8e4b8e9b6f07aa1c161e5e0d52e118dc102c8f9bd7dd060d6"},
+    {file = "contourpy-1.3.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb76c1a154b83991a3cbbf0dfeb26ec2833ad56f95540b442c73950af2013750"},
+    {file = "contourpy-1.3.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:44a29502ca9c7b5ba389e620d44f2fbe792b1fb5734e8b931ad307071ec58c53"},
+    {file = "contourpy-1.3.1.tar.gz", hash = "sha256:dfd97abd83335045a913e3bcc4a09c0ceadbe66580cf573fe961f4a825efa699"},
+]
+
+[package.dependencies]
+numpy = ">=1.23"
+
+[package.extras]
+bokeh = ["bokeh", "selenium"]
+docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"]
+mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.11.1)", "types-Pillow"]
+test = ["Pillow", "contourpy[test-no-images]", "matplotlib"]
+test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist", "wurlitzer"]
+
+[[package]]
+name = "cycler"
+version = "0.12.1"
+description = "Composable style cycles"
+optional = false
+python-versions = ">=3.8"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"},
+    {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"},
+]
+
+[package.extras]
+docs = ["ipython", "matplotlib", "numpydoc", "sphinx"]
+tests = ["pytest", "pytest-cov", "pytest-xdist"]
+
+[[package]]
+name = "fonttools"
+version = "4.56.0"
+description = "Tools to manipulate font files"
+optional = false
+python-versions = ">=3.8"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "fonttools-4.56.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:331954d002dbf5e704c7f3756028e21db07097c19722569983ba4d74df014000"},
+    {file = "fonttools-4.56.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8d1613abd5af2f93c05867b3a3759a56e8bf97eb79b1da76b2bc10892f96ff16"},
+    {file = "fonttools-4.56.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:705837eae384fe21cee5e5746fd4f4b2f06f87544fa60f60740007e0aa600311"},
+    {file = "fonttools-4.56.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc871904a53a9d4d908673c6faa15689874af1c7c5ac403a8e12d967ebd0c0dc"},
+    {file = "fonttools-4.56.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:38b947de71748bab150259ee05a775e8a0635891568e9fdb3cdd7d0e0004e62f"},
+    {file = "fonttools-4.56.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:86b2a1013ef7a64d2e94606632683f07712045ed86d937c11ef4dde97319c086"},
+    {file = "fonttools-4.56.0-cp310-cp310-win32.whl", hash = "sha256:133bedb9a5c6376ad43e6518b7e2cd2f866a05b1998f14842631d5feb36b5786"},
+    {file = "fonttools-4.56.0-cp310-cp310-win_amd64.whl", hash = "sha256:17f39313b649037f6c800209984a11fc256a6137cbe5487091c6c7187cae4685"},
+    {file = "fonttools-4.56.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7ef04bc7827adb7532be3d14462390dd71287644516af3f1e67f1e6ff9c6d6df"},
+    {file = "fonttools-4.56.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ffda9b8cd9cb8b301cae2602ec62375b59e2e2108a117746f12215145e3f786c"},
+    {file = "fonttools-4.56.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e993e8db36306cc3f1734edc8ea67906c55f98683d6fd34c3fc5593fdbba4c"},
+    {file = "fonttools-4.56.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:003548eadd674175510773f73fb2060bb46adb77c94854af3e0cc5bc70260049"},
+    {file = "fonttools-4.56.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bd9825822e7bb243f285013e653f6741954d8147427aaa0324a862cdbf4cbf62"},
+    {file = "fonttools-4.56.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b23d30a2c0b992fb1c4f8ac9bfde44b5586d23457759b6cf9a787f1a35179ee0"},
+    {file = "fonttools-4.56.0-cp311-cp311-win32.whl", hash = "sha256:47b5e4680002ae1756d3ae3b6114e20aaee6cc5c69d1e5911f5ffffd3ee46c6b"},
+    {file = "fonttools-4.56.0-cp311-cp311-win_amd64.whl", hash = "sha256:14a3e3e6b211660db54ca1ef7006401e4a694e53ffd4553ab9bc87ead01d0f05"},
+    {file = "fonttools-4.56.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6f195c14c01bd057bc9b4f70756b510e009c83c5ea67b25ced3e2c38e6ee6e9"},
+    {file = "fonttools-4.56.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fa760e5fe8b50cbc2d71884a1eff2ed2b95a005f02dda2fa431560db0ddd927f"},
+    {file = "fonttools-4.56.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d54a45d30251f1d729e69e5b675f9a08b7da413391a1227781e2a297fa37f6d2"},
+    {file = "fonttools-4.56.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:661a8995d11e6e4914a44ca7d52d1286e2d9b154f685a4d1f69add8418961563"},
+    {file = "fonttools-4.56.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d94449ad0a5f2a8bf5d2f8d71d65088aee48adbe45f3c5f8e00e3ad861ed81a"},
+    {file = "fonttools-4.56.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f59746f7953f69cc3290ce2f971ab01056e55ddd0fb8b792c31a8acd7fee2d28"},
+    {file = "fonttools-4.56.0-cp312-cp312-win32.whl", hash = "sha256:bce60f9a977c9d3d51de475af3f3581d9b36952e1f8fc19a1f2254f1dda7ce9c"},
+    {file = "fonttools-4.56.0-cp312-cp312-win_amd64.whl", hash = "sha256:300c310bb725b2bdb4f5fc7e148e190bd69f01925c7ab437b9c0ca3e1c7cd9ba"},
+    {file = "fonttools-4.56.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:f20e2c0dfab82983a90f3d00703ac0960412036153e5023eed2b4641d7d5e692"},
+    {file = "fonttools-4.56.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f36a0868f47b7566237640c026c65a86d09a3d9ca5df1cd039e30a1da73098a0"},
+    {file = "fonttools-4.56.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:62b4c6802fa28e14dba010e75190e0e6228513573f1eeae57b11aa1a39b7e5b1"},
+    {file = "fonttools-4.56.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a05d1f07eb0a7d755fbe01fee1fd255c3a4d3730130cf1bfefb682d18fd2fcea"},
+    {file = "fonttools-4.56.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0073b62c3438cf0058488c002ea90489e8801d3a7af5ce5f7c05c105bee815c3"},
+    {file = "fonttools-4.56.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e2cad98c94833465bcf28f51c248aaf07ca022efc6a3eba750ad9c1e0256d278"},
+    {file = "fonttools-4.56.0-cp313-cp313-win32.whl", hash = "sha256:d0cb73ccf7f6d7ca8d0bc7ea8ac0a5b84969a41c56ac3ac3422a24df2680546f"},
+    {file = "fonttools-4.56.0-cp313-cp313-win_amd64.whl", hash = "sha256:62cc1253827d1e500fde9dbe981219fea4eb000fd63402283472d38e7d8aa1c6"},
+    {file = "fonttools-4.56.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3fd3fccb7b9adaaecfa79ad51b759f2123e1aba97f857936ce044d4f029abd71"},
+    {file = "fonttools-4.56.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:193b86e9f769320bc98ffdb42accafb5d0c8c49bd62884f1c0702bc598b3f0a2"},
+    {file = "fonttools-4.56.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e81c1cc80c1d8bf071356cc3e0e25071fbba1c75afc48d41b26048980b3c771"},
+    {file = "fonttools-4.56.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9270505a19361e81eecdbc2c251ad1e1a9a9c2ad75fa022ccdee533f55535dc"},
+    {file = "fonttools-4.56.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:53f5e9767978a4daf46f28e09dbeb7d010319924ae622f7b56174b777258e5ba"},
+    {file = "fonttools-4.56.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:9da650cb29bc098b8cfd15ef09009c914b35c7986c8fa9f08b51108b7bc393b4"},
+    {file = "fonttools-4.56.0-cp38-cp38-win32.whl", hash = "sha256:965d0209e6dbdb9416100123b6709cb13f5232e2d52d17ed37f9df0cc31e2b35"},
+    {file = "fonttools-4.56.0-cp38-cp38-win_amd64.whl", hash = "sha256:654ac4583e2d7c62aebc6fc6a4c6736f078f50300e18aa105d87ce8925cfac31"},
+    {file = "fonttools-4.56.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ca7962e8e5fc047cc4e59389959843aafbf7445b6c08c20d883e60ced46370a5"},
+    {file = "fonttools-4.56.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a1af375734018951c31c0737d04a9d5fd0a353a0253db5fbed2ccd44eac62d8c"},
+    {file = "fonttools-4.56.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:442ad4122468d0e47d83bc59d0e91b474593a8c813839e1872e47c7a0cb53b10"},
+    {file = "fonttools-4.56.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cf4f8d2a30b454ac682e12c61831dcb174950c406011418e739de592bbf8f76"},
+    {file = "fonttools-4.56.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:96a4271f63a615bcb902b9f56de00ea225d6896052c49f20d0c91e9f43529a29"},
+    {file = "fonttools-4.56.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6c1d38642ca2dddc7ae992ef5d026e5061a84f10ff2b906be5680ab089f55bb8"},
+    {file = "fonttools-4.56.0-cp39-cp39-win32.whl", hash = "sha256:2d351275f73ebdd81dd5b09a8b8dac7a30f29a279d41e1c1192aedf1b6dced40"},
+    {file = "fonttools-4.56.0-cp39-cp39-win_amd64.whl", hash = "sha256:d6ca96d1b61a707ba01a43318c9c40aaf11a5a568d1e61146fafa6ab20890793"},
+    {file = "fonttools-4.56.0-py3-none-any.whl", hash = "sha256:1088182f68c303b50ca4dc0c82d42083d176cba37af1937e1a976a31149d4d14"},
+    {file = "fonttools-4.56.0.tar.gz", hash = "sha256:a114d1567e1a1586b7e9e7fc2ff686ca542a82769a296cef131e4c4af51e58f4"},
+]
+
+[package.extras]
+all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "pycairo", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0)", "xattr", "zopfli (>=0.1.4)"]
+graphite = ["lz4 (>=1.7.4.2)"]
+interpolatable = ["munkres", "pycairo", "scipy"]
+lxml = ["lxml (>=4.0)"]
+pathops = ["skia-pathops (>=0.5.0)"]
+plot = ["matplotlib"]
+repacker = ["uharfbuzz (>=0.23.0)"]
+symfont = ["sympy"]
+type1 = ["xattr"]
+ufo = ["fs (>=2.2.0,<3)"]
+unicode = ["unicodedata2 (>=15.1.0)"]
+woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"]
+
+[[package]]
+name = "geopandas"
+version = "1.0.1"
+description = "Geographic pandas extensions"
+optional = false
+python-versions = ">=3.9"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "geopandas-1.0.1-py3-none-any.whl", hash = "sha256:01e147d9420cc374d26f51fc23716ac307f32b49406e4bd8462c07e82ed1d3d6"},
+    {file = "geopandas-1.0.1.tar.gz", hash = "sha256:b8bf70a5534588205b7a56646e2082fb1de9a03599651b3d80c99ea4c2ca08ab"},
+]
+
+[package.dependencies]
+numpy = ">=1.22"
+packaging = "*"
+pandas = ">=1.4.0"
+pyogrio = ">=0.7.2"
+pyproj = ">=3.3.0"
+shapely = ">=2.0.0"
+
+[package.extras]
+all = ["GeoAlchemy2", "SQLAlchemy (>=1.3)", "folium", "geopy", "mapclassify", "matplotlib (>=3.5.0)", "psycopg-binary (>=3.1.0)", "pyarrow (>=8.0.0)", "xyzservices"]
+dev = ["black", "codecov", "pre-commit", "pytest (>=3.1.0)", "pytest-cov", "pytest-xdist"]
+
+[[package]]
+name = "kiwisolver"
+version = "1.4.8"
+description = "A fast implementation of the Cassowary constraint solver"
+optional = false
+python-versions = ">=3.10"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-win_amd64.whl", hash = "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751"},
+    {file = "kiwisolver-1.4.8-cp310-cp310-win_arm64.whl", hash = "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-win_amd64.whl", hash = "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34"},
+    {file = "kiwisolver-1.4.8-cp311-cp311-win_arm64.whl", hash = "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl", hash = "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50"},
+    {file = "kiwisolver-1.4.8-cp312-cp312-win_arm64.whl", hash = "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl", hash = "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2"},
+    {file = "kiwisolver-1.4.8-cp313-cp313-win_arm64.whl", hash = "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90"},
+    {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b"},
+    {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b"},
+    {file = "kiwisolver-1.4.8.tar.gz", hash = "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e"},
+]
+
+[[package]]
+name = "matplotlib"
+version = "3.10.1"
+description = "Python plotting package"
+optional = false
+python-versions = ">=3.10"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "matplotlib-3.10.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ff2ae14910be903f4a24afdbb6d7d3a6c44da210fc7d42790b87aeac92238a16"},
+    {file = "matplotlib-3.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0721a3fd3d5756ed593220a8b86808a36c5031fce489adb5b31ee6dbb47dd5b2"},
+    {file = "matplotlib-3.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0673b4b8f131890eb3a1ad058d6e065fb3c6e71f160089b65f8515373394698"},
+    {file = "matplotlib-3.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e875b95ac59a7908978fe307ecdbdd9a26af7fa0f33f474a27fcf8c99f64a19"},
+    {file = "matplotlib-3.10.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:2589659ea30726284c6c91037216f64a506a9822f8e50592d48ac16a2f29e044"},
+    {file = "matplotlib-3.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:a97ff127f295817bc34517255c9db6e71de8eddaab7f837b7d341dee9f2f587f"},
+    {file = "matplotlib-3.10.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:057206ff2d6ab82ff3e94ebd94463d084760ca682ed5f150817b859372ec4401"},
+    {file = "matplotlib-3.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a144867dd6bf8ba8cb5fc81a158b645037e11b3e5cf8a50bd5f9917cb863adfe"},
+    {file = "matplotlib-3.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56c5d9fcd9879aa8040f196a235e2dcbdf7dd03ab5b07c0696f80bc6cf04bedd"},
+    {file = "matplotlib-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f69dc9713e4ad2fb21a1c30e37bd445d496524257dfda40ff4a8efb3604ab5c"},
+    {file = "matplotlib-3.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4c59af3e8aca75d7744b68e8e78a669e91ccbcf1ac35d0102a7b1b46883f1dd7"},
+    {file = "matplotlib-3.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:11b65088c6f3dae784bc72e8d039a2580186285f87448babb9ddb2ad0082993a"},
+    {file = "matplotlib-3.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:66e907a06e68cb6cfd652c193311d61a12b54f56809cafbed9736ce5ad92f107"},
+    {file = "matplotlib-3.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b4bb156abb8fa5e5b2b460196f7db7264fc6d62678c03457979e7d5254b7be"},
+    {file = "matplotlib-3.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1985ad3d97f51307a2cbfc801a930f120def19ba22864182dacef55277102ba6"},
+    {file = "matplotlib-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c96f2c2f825d1257e437a1482c5a2cf4fee15db4261bd6fc0750f81ba2b4ba3d"},
+    {file = "matplotlib-3.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:35e87384ee9e488d8dd5a2dd7baf471178d38b90618d8ea147aced4ab59c9bea"},
+    {file = "matplotlib-3.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:cfd414bce89cc78a7e1d25202e979b3f1af799e416010a20ab2b5ebb3a02425c"},
+    {file = "matplotlib-3.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c42eee41e1b60fd83ee3292ed83a97a5f2a8239b10c26715d8a6172226988d7b"},
+    {file = "matplotlib-3.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4f0647b17b667ae745c13721602b540f7aadb2a32c5b96e924cd4fea5dcb90f1"},
+    {file = "matplotlib-3.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa3854b5f9473564ef40a41bc922be978fab217776e9ae1545c9b3a5cf2092a3"},
+    {file = "matplotlib-3.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e496c01441be4c7d5f96d4e40f7fca06e20dcb40e44c8daa2e740e1757ad9e6"},
+    {file = "matplotlib-3.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5d45d3f5245be5b469843450617dcad9af75ca50568acf59997bed9311131a0b"},
+    {file = "matplotlib-3.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:8e8e25b1209161d20dfe93037c8a7f7ca796ec9aa326e6e4588d8c4a5dd1e473"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:19b06241ad89c3ae9469e07d77efa87041eac65d78df4fcf9cac318028009b01"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:01e63101ebb3014e6e9f80d9cf9ee361a8599ddca2c3e166c563628b39305dbb"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f06bad951eea6422ac4e8bdebcf3a70c59ea0a03338c5d2b109f57b64eb3972"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3dfb036f34873b46978f55e240cff7a239f6c4409eac62d8145bad3fc6ba5a3"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dc6ab14a7ab3b4d813b88ba957fc05c79493a037f54e246162033591e770de6f"},
+    {file = "matplotlib-3.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:bc411ebd5889a78dabbc457b3fa153203e22248bfa6eedc6797be5df0164dbf9"},
+    {file = "matplotlib-3.10.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:648406f1899f9a818cef8c0231b44dcfc4ff36f167101c3fd1c9151f24220fdc"},
+    {file = "matplotlib-3.10.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:02582304e352f40520727984a5a18f37e8187861f954fea9be7ef06569cf85b4"},
+    {file = "matplotlib-3.10.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3809916157ba871bcdd33d3493acd7fe3037db5daa917ca6e77975a94cef779"},
+    {file = "matplotlib-3.10.1.tar.gz", hash = "sha256:e8d2d0e3881b129268585bf4765ad3ee73a4591d77b9a18c214ac7e3a79fb2ba"},
+]
+
+[package.dependencies]
+contourpy = ">=1.0.1"
+cycler = ">=0.10"
+fonttools = ">=4.22.0"
+kiwisolver = ">=1.3.1"
+numpy = ">=1.23"
+packaging = ">=20.0"
+pillow = ">=8"
+pyparsing = ">=2.3.1"
+python-dateutil = ">=2.7"
+
+[package.extras]
+dev = ["meson-python (>=0.13.1,<0.17.0)", "pybind11 (>=2.13.2,!=2.13.3)", "setuptools (>=64)", "setuptools_scm (>=7)"]
+
+[[package]]
+name = "numpy"
+version = "2.2.3"
+description = "Fundamental package for array computing in Python"
+optional = false
+python-versions = ">=3.10"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "numpy-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cbc6472e01952d3d1b2772b720428f8b90e2deea8344e854df22b0618e9cce71"},
+    {file = "numpy-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cdfe0c22692a30cd830c0755746473ae66c4a8f2e7bd508b35fb3b6a0813d787"},
+    {file = "numpy-2.2.3-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:e37242f5324ffd9f7ba5acf96d774f9276aa62a966c0bad8dae692deebec7716"},
+    {file = "numpy-2.2.3-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:95172a21038c9b423e68be78fd0be6e1b97674cde269b76fe269a5dfa6fadf0b"},
+    {file = "numpy-2.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b47c440210c5d1d67e1cf434124e0b5c395eee1f5806fdd89b553ed1acd0a3"},
+    {file = "numpy-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0391ea3622f5c51a2e29708877d56e3d276827ac5447d7f45e9bc4ade8923c52"},
+    {file = "numpy-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f6b3dfc7661f8842babd8ea07e9897fe3d9b69a1d7e5fbb743e4160f9387833b"},
+    {file = "numpy-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1ad78ce7f18ce4e7df1b2ea4019b5817a2f6a8a16e34ff2775f646adce0a5027"},
+    {file = "numpy-2.2.3-cp310-cp310-win32.whl", hash = "sha256:5ebeb7ef54a7be11044c33a17b2624abe4307a75893c001a4800857956b41094"},
+    {file = "numpy-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:596140185c7fa113563c67c2e894eabe0daea18cf8e33851738c19f70ce86aeb"},
+    {file = "numpy-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:16372619ee728ed67a2a606a614f56d3eabc5b86f8b615c79d01957062826ca8"},
+    {file = "numpy-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5521a06a3148686d9269c53b09f7d399a5725c47bbb5b35747e1cb76326b714b"},
+    {file = "numpy-2.2.3-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:7c8dde0ca2f77828815fd1aedfdf52e59071a5bae30dac3b4da2a335c672149a"},
+    {file = "numpy-2.2.3-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:77974aba6c1bc26e3c205c2214f0d5b4305bdc719268b93e768ddb17e3fdd636"},
+    {file = "numpy-2.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d42f9c36d06440e34226e8bd65ff065ca0963aeecada587b937011efa02cdc9d"},
+    {file = "numpy-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2712c5179f40af9ddc8f6727f2bd910ea0eb50206daea75f58ddd9fa3f715bb"},
+    {file = "numpy-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c8b0451d2ec95010d1db8ca733afc41f659f425b7f608af569711097fd6014e2"},
+    {file = "numpy-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d9b4a8148c57ecac25a16b0e11798cbe88edf5237b0df99973687dd866f05e1b"},
+    {file = "numpy-2.2.3-cp311-cp311-win32.whl", hash = "sha256:1f45315b2dc58d8a3e7754fe4e38b6fce132dab284a92851e41b2b344f6441c5"},
+    {file = "numpy-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:9f48ba6f6c13e5e49f3d3efb1b51c8193215c42ac82610a04624906a9270be6f"},
+    {file = "numpy-2.2.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:12c045f43b1d2915eca6b880a7f4a256f59d62df4f044788c8ba67709412128d"},
+    {file = "numpy-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:87eed225fd415bbae787f93a457af7f5990b92a334e346f72070bf569b9c9c95"},
+    {file = "numpy-2.2.3-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:712a64103d97c404e87d4d7c47fb0c7ff9acccc625ca2002848e0d53288b90ea"},
+    {file = "numpy-2.2.3-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:a5ae282abe60a2db0fd407072aff4599c279bcd6e9a2475500fc35b00a57c532"},
+    {file = "numpy-2.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5266de33d4c3420973cf9ae3b98b54a2a6d53a559310e3236c4b2b06b9c07d4e"},
+    {file = "numpy-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b787adbf04b0db1967798dba8da1af07e387908ed1553a0d6e74c084d1ceafe"},
+    {file = "numpy-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:34c1b7e83f94f3b564b35f480f5652a47007dd91f7c839f404d03279cc8dd021"},
+    {file = "numpy-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4d8335b5f1b6e2bce120d55fb17064b0262ff29b459e8493d1785c18ae2553b8"},
+    {file = "numpy-2.2.3-cp312-cp312-win32.whl", hash = "sha256:4d9828d25fb246bedd31e04c9e75714a4087211ac348cb39c8c5f99dbb6683fe"},
+    {file = "numpy-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:83807d445817326b4bcdaaaf8e8e9f1753da04341eceec705c001ff342002e5d"},
+    {file = "numpy-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bfdb06b395385ea9b91bf55c1adf1b297c9fdb531552845ff1d3ea6e40d5aba"},
+    {file = "numpy-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:23c9f4edbf4c065fddb10a4f6e8b6a244342d95966a48820c614891e5059bb50"},
+    {file = "numpy-2.2.3-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:a0c03b6be48aaf92525cccf393265e02773be8fd9551a2f9adbe7db1fa2b60f1"},
+    {file = "numpy-2.2.3-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:2376e317111daa0a6739e50f7ee2a6353f768489102308b0d98fcf4a04f7f3b5"},
+    {file = "numpy-2.2.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8fb62fe3d206d72fe1cfe31c4a1106ad2b136fcc1606093aeab314f02930fdf2"},
+    {file = "numpy-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52659ad2534427dffcc36aac76bebdd02b67e3b7a619ac67543bc9bfe6b7cdb1"},
+    {file = "numpy-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1b416af7d0ed3271cad0f0a0d0bee0911ed7eba23e66f8424d9f3dfcdcae1304"},
+    {file = "numpy-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1402da8e0f435991983d0a9708b779f95a8c98c6b18a171b9f1be09005e64d9d"},
+    {file = "numpy-2.2.3-cp313-cp313-win32.whl", hash = "sha256:136553f123ee2951bfcfbc264acd34a2fc2f29d7cdf610ce7daf672b6fbaa693"},
+    {file = "numpy-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:5b732c8beef1d7bc2d9e476dbba20aaff6167bf205ad9aa8d30913859e82884b"},
+    {file = "numpy-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:435e7a933b9fda8126130b046975a968cc2d833b505475e588339e09f7672890"},
+    {file = "numpy-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7678556eeb0152cbd1522b684dcd215250885993dd00adb93679ec3c0e6e091c"},
+    {file = "numpy-2.2.3-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:2e8da03bd561504d9b20e7a12340870dfc206c64ea59b4cfee9fceb95070ee94"},
+    {file = "numpy-2.2.3-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:c9aa4496fd0e17e3843399f533d62857cef5900facf93e735ef65aa4bbc90ef0"},
+    {file = "numpy-2.2.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4ca91d61a4bf61b0f2228f24bbfa6a9facd5f8af03759fe2a655c50ae2c6610"},
+    {file = "numpy-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:deaa09cd492e24fd9b15296844c0ad1b3c976da7907e1c1ed3a0ad21dded6f76"},
+    {file = "numpy-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:246535e2f7496b7ac85deffe932896a3577be7af8fb7eebe7146444680297e9a"},
+    {file = "numpy-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:daf43a3d1ea699402c5a850e5313680ac355b4adc9770cd5cfc2940e7861f1bf"},
+    {file = "numpy-2.2.3-cp313-cp313t-win32.whl", hash = "sha256:cf802eef1f0134afb81fef94020351be4fe1d6681aadf9c5e862af6602af64ef"},
+    {file = "numpy-2.2.3-cp313-cp313t-win_amd64.whl", hash = "sha256:aee2512827ceb6d7f517c8b85aa5d3923afe8fc7a57d028cffcd522f1c6fd082"},
+    {file = "numpy-2.2.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:3c2ec8a0f51d60f1e9c0c5ab116b7fc104b165ada3f6c58abf881cb2eb16044d"},
+    {file = "numpy-2.2.3-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:ed2cf9ed4e8ebc3b754d398cba12f24359f018b416c380f577bbae112ca52fc9"},
+    {file = "numpy-2.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39261798d208c3095ae4f7bc8eaeb3481ea8c6e03dc48028057d3cbdbdb8937e"},
+    {file = "numpy-2.2.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:783145835458e60fa97afac25d511d00a1eca94d4a8f3ace9fe2043003c678e4"},
+    {file = "numpy-2.2.3.tar.gz", hash = "sha256:dbdc15f0c81611925f382dfa97b3bd0bc2c1ce19d4fe50482cb0ddc12ba30020"},
+]
+
+[[package]]
+name = "packaging"
+version = "24.2"
+description = "Core utilities for Python packages"
+optional = false
+python-versions = ">=3.8"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"},
+    {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"},
+]
+
+[[package]]
+name = "pandas"
+version = "2.2.3"
+description = "Powerful data structures for data analysis, time series, and statistics"
+optional = false
+python-versions = ">=3.9"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"},
+    {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"},
+    {file = "pandas-2.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d9c45366def9a3dd85a6454c0e7908f2b3b8e9c138f5dc38fed7ce720d8453ed"},
+    {file = "pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86976a1c5b25ae3f8ccae3a5306e443569ee3c3faf444dfd0f41cda24667ad57"},
+    {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8661b0238a69d7aafe156b7fa86c44b881387509653fdf857bebc5e4008ad42"},
+    {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:37e0aced3e8f539eccf2e099f65cdb9c8aa85109b0be6e93e2baff94264bdc6f"},
+    {file = "pandas-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:56534ce0746a58afaf7942ba4863e0ef81c9c50d3f0ae93e9497d6a41a057645"},
+    {file = "pandas-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:66108071e1b935240e74525006034333f98bcdb87ea116de573a6a0dccb6c039"},
+    {file = "pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7c2875855b0ff77b2a64a0365e24455d9990730d6431b9e0ee18ad8acee13dbd"},
+    {file = "pandas-2.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd8d0c3be0515c12fed0bdbae072551c8b54b7192c7b1fda0ba56059a0179698"},
+    {file = "pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c124333816c3a9b03fbeef3a9f230ba9a737e9e5bb4060aa2107a86cc0a497fc"},
+    {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:63cc132e40a2e084cf01adf0775b15ac515ba905d7dcca47e9a251819c575ef3"},
+    {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:29401dbfa9ad77319367d36940cd8a0b3a11aba16063e39632d98b0e931ddf32"},
+    {file = "pandas-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:3fc6873a41186404dad67245896a6e440baacc92f5b716ccd1bc9ed2995ab2c5"},
+    {file = "pandas-2.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b1d432e8d08679a40e2a6d8b2f9770a5c21793a6f9f47fdd52c5ce1948a5a8a9"},
+    {file = "pandas-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a5a1595fe639f5988ba6a8e5bc9649af3baf26df3998a0abe56c02609392e0a4"},
+    {file = "pandas-2.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5de54125a92bb4d1c051c0659e6fcb75256bf799a732a87184e5ea503965bce3"},
+    {file = "pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fffb8ae78d8af97f849404f21411c95062db1496aeb3e56f146f0355c9989319"},
+    {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfcb5ee8d4d50c06a51c2fffa6cff6272098ad6540aed1a76d15fb9318194d8"},
+    {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:062309c1b9ea12a50e8ce661145c6aab431b1e99530d3cd60640e255778bd43a"},
+    {file = "pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13"},
+    {file = "pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015"},
+    {file = "pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28"},
+    {file = "pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0"},
+    {file = "pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24"},
+    {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659"},
+    {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb"},
+    {file = "pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d"},
+    {file = "pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468"},
+    {file = "pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18"},
+    {file = "pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2"},
+    {file = "pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4"},
+    {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d"},
+    {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a"},
+    {file = "pandas-2.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc6b93f9b966093cb0fd62ff1a7e4c09e6d546ad7c1de191767baffc57628f39"},
+    {file = "pandas-2.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5dbca4c1acd72e8eeef4753eeca07de9b1db4f398669d5994086f788a5d7cc30"},
+    {file = "pandas-2.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8cd6d7cc958a3910f934ea8dbdf17b2364827bb4dafc38ce6eef6bb3d65ff09c"},
+    {file = "pandas-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99df71520d25fade9db7c1076ac94eb994f4d2673ef2aa2e86ee039b6746d20c"},
+    {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31d0ced62d4ea3e231a9f228366919a5ea0b07440d9d4dac345376fd8e1477ea"},
+    {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7eee9e7cea6adf3e3d24e304ac6b8300646e2a5d1cd3a3c2abed9101b0846761"},
+    {file = "pandas-2.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:4850ba03528b6dd51d6c5d273c46f183f39a9baf3f0143e566b89450965b105e"},
+    {file = "pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667"},
+]
+
+[package.dependencies]
+numpy = [
+    {version = ">=1.22.4", markers = "python_version < \"3.11\""},
+    {version = ">=1.23.2", markers = "python_version == \"3.11\""},
+    {version = ">=1.26.0", markers = "python_version >= \"3.12\""},
+]
+python-dateutil = ">=2.8.2"
+pytz = ">=2020.1"
+tzdata = ">=2022.7"
+
+[package.extras]
+all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"]
+aws = ["s3fs (>=2022.11.0)"]
+clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"]
+compression = ["zstandard (>=0.19.0)"]
+computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"]
+consortium-standard = ["dataframe-api-compat (>=0.1.7)"]
+excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"]
+feather = ["pyarrow (>=10.0.1)"]
+fss = ["fsspec (>=2022.11.0)"]
+gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"]
+hdf5 = ["tables (>=3.8.0)"]
+html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"]
+mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"]
+output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"]
+parquet = ["pyarrow (>=10.0.1)"]
+performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"]
+plot = ["matplotlib (>=3.6.3)"]
+postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"]
+pyarrow = ["pyarrow (>=10.0.1)"]
+spss = ["pyreadstat (>=1.2.0)"]
+sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"]
+test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"]
+xml = ["lxml (>=4.9.2)"]
+
+[[package]]
+name = "pillow"
+version = "11.1.0"
+description = "Python Imaging Library (Fork)"
+optional = false
+python-versions = ">=3.9"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pillow-11.1.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:e1abe69aca89514737465752b4bcaf8016de61b3be1397a8fc260ba33321b3a8"},
+    {file = "pillow-11.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c640e5a06869c75994624551f45e5506e4256562ead981cce820d5ab39ae2192"},
+    {file = "pillow-11.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a07dba04c5e22824816b2615ad7a7484432d7f540e6fa86af60d2de57b0fcee2"},
+    {file = "pillow-11.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e267b0ed063341f3e60acd25c05200df4193e15a4a5807075cd71225a2386e26"},
+    {file = "pillow-11.1.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:bd165131fd51697e22421d0e467997ad31621b74bfc0b75956608cb2906dda07"},
+    {file = "pillow-11.1.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:abc56501c3fd148d60659aae0af6ddc149660469082859fa7b066a298bde9482"},
+    {file = "pillow-11.1.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:54ce1c9a16a9561b6d6d8cb30089ab1e5eb66918cb47d457bd996ef34182922e"},
+    {file = "pillow-11.1.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:73ddde795ee9b06257dac5ad42fcb07f3b9b813f8c1f7f870f402f4dc54b5269"},
+    {file = "pillow-11.1.0-cp310-cp310-win32.whl", hash = "sha256:3a5fe20a7b66e8135d7fd617b13272626a28278d0e578c98720d9ba4b2439d49"},
+    {file = "pillow-11.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:b6123aa4a59d75f06e9dd3dac5bf8bc9aa383121bb3dd9a7a612e05eabc9961a"},
+    {file = "pillow-11.1.0-cp310-cp310-win_arm64.whl", hash = "sha256:a76da0a31da6fcae4210aa94fd779c65c75786bc9af06289cd1c184451ef7a65"},
+    {file = "pillow-11.1.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:e06695e0326d05b06833b40b7ef477e475d0b1ba3a6d27da1bb48c23209bf457"},
+    {file = "pillow-11.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:96f82000e12f23e4f29346e42702b6ed9a2f2fea34a740dd5ffffcc8c539eb35"},
+    {file = "pillow-11.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3cd561ded2cf2bbae44d4605837221b987c216cff94f49dfeed63488bb228d2"},
+    {file = "pillow-11.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f189805c8be5ca5add39e6f899e6ce2ed824e65fb45f3c28cb2841911da19070"},
+    {file = "pillow-11.1.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:dd0052e9db3474df30433f83a71b9b23bd9e4ef1de13d92df21a52c0303b8ab6"},
+    {file = "pillow-11.1.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:837060a8599b8f5d402e97197d4924f05a2e0d68756998345c829c33186217b1"},
+    {file = "pillow-11.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:aa8dd43daa836b9a8128dbe7d923423e5ad86f50a7a14dc688194b7be5c0dea2"},
+    {file = "pillow-11.1.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0a2f91f8a8b367e7a57c6e91cd25af510168091fb89ec5146003e424e1558a96"},
+    {file = "pillow-11.1.0-cp311-cp311-win32.whl", hash = "sha256:c12fc111ef090845de2bb15009372175d76ac99969bdf31e2ce9b42e4b8cd88f"},
+    {file = "pillow-11.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:fbd43429d0d7ed6533b25fc993861b8fd512c42d04514a0dd6337fb3ccf22761"},
+    {file = "pillow-11.1.0-cp311-cp311-win_arm64.whl", hash = "sha256:f7955ecf5609dee9442cbface754f2c6e541d9e6eda87fad7f7a989b0bdb9d71"},
+    {file = "pillow-11.1.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2062ffb1d36544d42fcaa277b069c88b01bb7298f4efa06731a7fd6cc290b81a"},
+    {file = "pillow-11.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a85b653980faad27e88b141348707ceeef8a1186f75ecc600c395dcac19f385b"},
+    {file = "pillow-11.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9409c080586d1f683df3f184f20e36fb647f2e0bc3988094d4fd8c9f4eb1b3b3"},
+    {file = "pillow-11.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fdadc077553621911f27ce206ffcbec7d3f8d7b50e0da39f10997e8e2bb7f6a"},
+    {file = "pillow-11.1.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:93a18841d09bcdd774dcdc308e4537e1f867b3dec059c131fde0327899734aa1"},
+    {file = "pillow-11.1.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9aa9aeddeed452b2f616ff5507459e7bab436916ccb10961c4a382cd3e03f47f"},
+    {file = "pillow-11.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3cdcdb0b896e981678eee140d882b70092dac83ac1cdf6b3a60e2216a73f2b91"},
+    {file = "pillow-11.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:36ba10b9cb413e7c7dfa3e189aba252deee0602c86c309799da5a74009ac7a1c"},
+    {file = "pillow-11.1.0-cp312-cp312-win32.whl", hash = "sha256:cfd5cd998c2e36a862d0e27b2df63237e67273f2fc78f47445b14e73a810e7e6"},
+    {file = "pillow-11.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:a697cd8ba0383bba3d2d3ada02b34ed268cb548b369943cd349007730c92bddf"},
+    {file = "pillow-11.1.0-cp312-cp312-win_arm64.whl", hash = "sha256:4dd43a78897793f60766563969442020e90eb7847463eca901e41ba186a7d4a5"},
+    {file = "pillow-11.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ae98e14432d458fc3de11a77ccb3ae65ddce70f730e7c76140653048c71bfcbc"},
+    {file = "pillow-11.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cc1331b6d5a6e144aeb5e626f4375f5b7ae9934ba620c0ac6b3e43d5e683a0f0"},
+    {file = "pillow-11.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:758e9d4ef15d3560214cddbc97b8ef3ef86ce04d62ddac17ad39ba87e89bd3b1"},
+    {file = "pillow-11.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b523466b1a31d0dcef7c5be1f20b942919b62fd6e9a9be199d035509cbefc0ec"},
+    {file = "pillow-11.1.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:9044b5e4f7083f209c4e35aa5dd54b1dd5b112b108648f5c902ad586d4f945c5"},
+    {file = "pillow-11.1.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:3764d53e09cdedd91bee65c2527815d315c6b90d7b8b79759cc48d7bf5d4f114"},
+    {file = "pillow-11.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:31eba6bbdd27dde97b0174ddf0297d7a9c3a507a8a1480e1e60ef914fe23d352"},
+    {file = "pillow-11.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b5d658fbd9f0d6eea113aea286b21d3cd4d3fd978157cbf2447a6035916506d3"},
+    {file = "pillow-11.1.0-cp313-cp313-win32.whl", hash = "sha256:f86d3a7a9af5d826744fabf4afd15b9dfef44fe69a98541f666f66fbb8d3fef9"},
+    {file = "pillow-11.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:593c5fd6be85da83656b93ffcccc2312d2d149d251e98588b14fbc288fd8909c"},
+    {file = "pillow-11.1.0-cp313-cp313-win_arm64.whl", hash = "sha256:11633d58b6ee5733bde153a8dafd25e505ea3d32e261accd388827ee987baf65"},
+    {file = "pillow-11.1.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:70ca5ef3b3b1c4a0812b5c63c57c23b63e53bc38e758b37a951e5bc466449861"},
+    {file = "pillow-11.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:8000376f139d4d38d6851eb149b321a52bb8893a88dae8ee7d95840431977081"},
+    {file = "pillow-11.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ee85f0696a17dd28fbcfceb59f9510aa71934b483d1f5601d1030c3c8304f3c"},
+    {file = "pillow-11.1.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:dd0e081319328928531df7a0e63621caf67652c8464303fd102141b785ef9547"},
+    {file = "pillow-11.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e63e4e5081de46517099dc30abe418122f54531a6ae2ebc8680bcd7096860eab"},
+    {file = "pillow-11.1.0-cp313-cp313t-win32.whl", hash = "sha256:dda60aa465b861324e65a78c9f5cf0f4bc713e4309f83bc387be158b077963d9"},
+    {file = "pillow-11.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ad5db5781c774ab9a9b2c4302bbf0c1014960a0a7be63278d13ae6fdf88126fe"},
+    {file = "pillow-11.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:67cd427c68926108778a9005f2a04adbd5e67c442ed21d95389fe1d595458756"},
+    {file = "pillow-11.1.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:bf902d7413c82a1bfa08b06a070876132a5ae6b2388e2712aab3a7cbc02205c6"},
+    {file = "pillow-11.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c1eec9d950b6fe688edee07138993e54ee4ae634c51443cfb7c1e7613322718e"},
+    {file = "pillow-11.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e275ee4cb11c262bd108ab2081f750db2a1c0b8c12c1897f27b160c8bd57bbc"},
+    {file = "pillow-11.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4db853948ce4e718f2fc775b75c37ba2efb6aaea41a1a5fc57f0af59eee774b2"},
+    {file = "pillow-11.1.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:ab8a209b8485d3db694fa97a896d96dd6533d63c22829043fd9de627060beade"},
+    {file = "pillow-11.1.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:54251ef02a2309b5eec99d151ebf5c9904b77976c8abdcbce7891ed22df53884"},
+    {file = "pillow-11.1.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5bb94705aea800051a743aa4874bb1397d4695fb0583ba5e425ee0328757f196"},
+    {file = "pillow-11.1.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:89dbdb3e6e9594d512780a5a1c42801879628b38e3efc7038094430844e271d8"},
+    {file = "pillow-11.1.0-cp39-cp39-win32.whl", hash = "sha256:e5449ca63da169a2e6068dd0e2fcc8d91f9558aba89ff6d02121ca8ab11e79e5"},
+    {file = "pillow-11.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:3362c6ca227e65c54bf71a5f88b3d4565ff1bcbc63ae72c34b07bbb1cc59a43f"},
+    {file = "pillow-11.1.0-cp39-cp39-win_arm64.whl", hash = "sha256:b20be51b37a75cc54c2c55def3fa2c65bb94ba859dde241cd0a4fd302de5ae0a"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:8c730dc3a83e5ac137fbc92dfcfe1511ce3b2b5d7578315b63dbbb76f7f51d90"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:7d33d2fae0e8b170b6a6c57400e077412240f6f5bb2a342cf1ee512a787942bb"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a8d65b38173085f24bc07f8b6c505cbb7418009fa1a1fcb111b1f4961814a442"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:015c6e863faa4779251436db398ae75051469f7c903b043a48f078e437656f83"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:d44ff19eea13ae4acdaaab0179fa68c0c6f2f45d66a4d8ec1eda7d6cecbcc15f"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:d3d8da4a631471dfaf94c10c85f5277b1f8e42ac42bade1ac67da4b4a7359b73"},
+    {file = "pillow-11.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:4637b88343166249fe8aa94e7c4a62a180c4b3898283bb5d3d2fd5fe10d8e4e0"},
+    {file = "pillow-11.1.0.tar.gz", hash = "sha256:368da70808b36d73b4b390a8ffac11069f8a5c85f29eff1f1b01bcf3ef5b2a20"},
+]
+
+[package.extras]
+docs = ["furo", "olefile", "sphinx (>=8.1)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"]
+fpx = ["olefile"]
+mic = ["olefile"]
+tests = ["check-manifest", "coverage (>=7.4.2)", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout", "trove-classifiers (>=2024.10.12)"]
+typing = ["typing-extensions"]
+xmp = ["defusedxml"]
+
+[[package]]
+name = "pyogrio"
+version = "0.10.0"
+description = "Vectorized spatial vector file format I/O using GDAL/OGR"
+optional = false
+python-versions = ">=3.9"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pyogrio-0.10.0-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:046eeeae12a03a3ebc3dc5ff5a87664e4f5fc0a4fb1ea5d5c45d547fa941072b"},
+    {file = "pyogrio-0.10.0-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:44380f4d9245c776f432526e29ce4d29238aea26adad991803c4f453474f51d3"},
+    {file = "pyogrio-0.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14fd3b72b4e2dc59e264607b265c742b0c5ec2ea9e748b115f742381b28dd373"},
+    {file = "pyogrio-0.10.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:1fea7892f4633cab04d13563e47ec2e87dc2b5cd71b9546018d123184528c151"},
+    {file = "pyogrio-0.10.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:3539596a76eb8a9d166d6f9d3f36731a8c5bd5c43901209d89dc66b9dc00f079"},
+    {file = "pyogrio-0.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:eac90b2501656892c63bc500c12e71f3dbf7d66ddc5a7fb05cd480d25d1b7022"},
+    {file = "pyogrio-0.10.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:5b1a51431a27a1cb3e4e19558939c1423106e06e7b67d6285f4fba9c2d0a91b9"},
+    {file = "pyogrio-0.10.0-cp311-cp311-macosx_12_0_x86_64.whl", hash = "sha256:216d69cd77b2b4a0c9d7d449bc239f8b77f3d73f4a05d9c738a0745b236902d8"},
+    {file = "pyogrio-0.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2f0b75f0077ce33256aec6278c2a9c3b79bf0637ddf4f93d3ab2609f0501d96"},
+    {file = "pyogrio-0.10.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:0a47f702d29808c557d2ebea8542c23903f021eae44e16838adef2ab4281c71b"},
+    {file = "pyogrio-0.10.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:11e6c71d12da6b445e77d0fc0198db1bd35a77e03a0685e45338cbab9ce02add"},
+    {file = "pyogrio-0.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:d0d74e91a9c0ff2f9abe01b556ff663977193b2d6922208406172d0fc833beff"},
+    {file = "pyogrio-0.10.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:2d6558b180e020f71ab7aa7f82d592ed3305c9f698d98f6d0a4637ec7a84c4ce"},
+    {file = "pyogrio-0.10.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:a99102037eead8ba491bc57825c1e395ee31c9956d7bff7b4a9e4fdbff3a13c2"},
+    {file = "pyogrio-0.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a4c373281d7cbf560c5b61f8f3c7442103ad7f1c7ac4ef3a84572ed7a5dd2f6"},
+    {file = "pyogrio-0.10.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:19f18411bdf836d24cdc08b9337eb3ec415e4ac4086ba64516b36b73a2e88622"},
+    {file = "pyogrio-0.10.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:1abbcdd9876f30bebf1df8a0273f6cdeb29d03259290008275c7fddebe139f20"},
+    {file = "pyogrio-0.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:2a3e09839590d71ff832aa95c4f23fa00a2c63c3de82c1fbd4fb8d265792acfc"},
+    {file = "pyogrio-0.10.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:c90478209537a31dcc65664a87a04c094bb0e08efe502908a6682b8cec0259bf"},
+    {file = "pyogrio-0.10.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:fec45e1963b7058e5a1aa98598aed07c0858512c833d6aad2c672c3ec98bbf04"},
+    {file = "pyogrio-0.10.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28cb139f8a5d0365ede602230104b407ae52bb6b55173c8d5a35424d28c4a2c5"},
+    {file = "pyogrio-0.10.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:cea0187fcc2d574e52af8cfab041fa0a7ad71d5ef6b94b49a3f3d2a04534a27e"},
+    {file = "pyogrio-0.10.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:7c02b207ea8cf09c501ea3e95d29152781a00d3c32267286bc36fa457c332205"},
+    {file = "pyogrio-0.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:02e54bcfb305af75f829044b0045f74de31b77c2d6546f7aaf96822066147848"},
+    {file = "pyogrio-0.10.0-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:ea96a1338ed7991735b955d3f84ad5f71b3bc070b6a7a42449941aedecc71768"},
+    {file = "pyogrio-0.10.0-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:32d349600561459791a43f528a92f3e9343a59bdc9bc30b1be9376f0b80cbf16"},
+    {file = "pyogrio-0.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82f7bd6a87bd2e9484bcb4c87ab94eee4c2f573ad148707431c8b341d7f13d99"},
+    {file = "pyogrio-0.10.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:6166ae81462c257ed8e151c404e316642703813cf771c95ef8e11dcdf2581e47"},
+    {file = "pyogrio-0.10.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:22d57495e835fe51b88da43dfbda606c07e1f6c3b849af0c3cfc18e17467641c"},
+    {file = "pyogrio-0.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:eea82171bfc07fc778b8dc87b0cdc9ac06c389bc56b0c0b6f34bf9e45fb78c0e"},
+    {file = "pyogrio-0.10.0.tar.gz", hash = "sha256:ec051cb568324de878828fae96379b71858933413e185148acb6c162851ab23c"},
+]
+
+[package.dependencies]
+certifi = "*"
+numpy = "*"
+packaging = "*"
+
+[package.extras]
+benchmark = ["pytest-benchmark"]
+dev = ["cython"]
+geopandas = ["geopandas"]
+test = ["pytest", "pytest-cov"]
+
+[[package]]
+name = "pyparsing"
+version = "3.2.1"
+description = "pyparsing module - Classes and methods to define and execute parsing grammars"
+optional = false
+python-versions = ">=3.9"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pyparsing-3.2.1-py3-none-any.whl", hash = "sha256:506ff4f4386c4cec0590ec19e6302d3aedb992fdc02c761e90416f158dacf8e1"},
+    {file = "pyparsing-3.2.1.tar.gz", hash = "sha256:61980854fd66de3a90028d679a954d5f2623e83144b5afe5ee86f43d762e5f0a"},
+]
+
+[package.extras]
+diagrams = ["jinja2", "railroad-diagrams"]
+
+[[package]]
+name = "pyproj"
+version = "3.7.1"
+description = "Python interface to PROJ (cartographic projections and coordinate transformations library)"
+optional = false
+python-versions = ">=3.10"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pyproj-3.7.1-cp310-cp310-macosx_13_0_x86_64.whl", hash = "sha256:bf09dbeb333c34e9c546364e7df1ff40474f9fddf9e70657ecb0e4f670ff0b0e"},
+    {file = "pyproj-3.7.1-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:6575b2e53cc9e3e461ad6f0692a5564b96e7782c28631c7771c668770915e169"},
+    {file = "pyproj-3.7.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8cb516ee35ed57789b46b96080edf4e503fdb62dbb2e3c6581e0d6c83fca014b"},
+    {file = "pyproj-3.7.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e47c4e93b88d99dd118875ee3ca0171932444cdc0b52d493371b5d98d0f30ee"},
+    {file = "pyproj-3.7.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3e8d276caeae34fcbe4813855d0d97b9b825bab8d7a8b86d859c24a6213a5a0d"},
+    {file = "pyproj-3.7.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f173f851ee75e54acdaa053382b6825b400cb2085663a9bb073728a59c60aebb"},
+    {file = "pyproj-3.7.1-cp310-cp310-win32.whl", hash = "sha256:f550281ed6e5ea88fcf04a7c6154e246d5714be495c50c9e8e6b12d3fb63e158"},
+    {file = "pyproj-3.7.1-cp310-cp310-win_amd64.whl", hash = "sha256:3537668992a709a2e7f068069192138618c00d0ba113572fdd5ee5ffde8222f3"},
+    {file = "pyproj-3.7.1-cp311-cp311-macosx_13_0_x86_64.whl", hash = "sha256:a94e26c1a4950cea40116775588a2ca7cf56f1f434ff54ee35a84718f3841a3d"},
+    {file = "pyproj-3.7.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:263b54ba5004b6b957d55757d846fc5081bc02980caa0279c4fc95fa0fff6067"},
+    {file = "pyproj-3.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6d6a2ccd5607cd15ef990c51e6f2dd27ec0a741e72069c387088bba3aab60fa"},
+    {file = "pyproj-3.7.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c5dcf24ede53d8abab7d8a77f69ff1936c6a8843ef4fcc574646e4be66e5739"},
+    {file = "pyproj-3.7.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:3c2e7449840a44ce860d8bea2c6c1c4bc63fa07cba801dcce581d14dcb031a02"},
+    {file = "pyproj-3.7.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0829865c1d3a3543f918b3919dc601eea572d6091c0dd175e1a054db9c109274"},
+    {file = "pyproj-3.7.1-cp311-cp311-win32.whl", hash = "sha256:6181960b4b812e82e588407fe5c9c68ada267c3b084db078f248db5d7f45d18a"},
+    {file = "pyproj-3.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:5ad0ff443a785d84e2b380869fdd82e6bfc11eba6057d25b4409a9bbfa867970"},
+    {file = "pyproj-3.7.1-cp312-cp312-macosx_13_0_x86_64.whl", hash = "sha256:2781029d90df7f8d431e29562a3f2d8eafdf233c4010d6fc0381858dc7373217"},
+    {file = "pyproj-3.7.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:d61bf8ab04c73c1da08eedaf21a103b72fa5b0a9b854762905f65ff8b375d394"},
+    {file = "pyproj-3.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:04abc517a8555d1b05fcee768db3280143fe42ec39fdd926a2feef31631a1f2f"},
+    {file = "pyproj-3.7.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:084c0a475688f934d386c2ab3b6ce03398a473cd48adfda70d9ab8f87f2394a0"},
+    {file = "pyproj-3.7.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a20727a23b1e49c7dc7fe3c3df8e56a8a7acdade80ac2f5cca29d7ca5564c145"},
+    {file = "pyproj-3.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:bf84d766646f1ebd706d883755df4370aaf02b48187cedaa7e4239f16bc8213d"},
+    {file = "pyproj-3.7.1-cp312-cp312-win32.whl", hash = "sha256:5f0da2711364d7cb9f115b52289d4a9b61e8bca0da57f44a3a9d6fc9bdeb7274"},
+    {file = "pyproj-3.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:aee664a9d806612af30a19dba49e55a7a78ebfec3e9d198f6a6176e1d140ec98"},
+    {file = "pyproj-3.7.1-cp313-cp313-macosx_13_0_x86_64.whl", hash = "sha256:5f8d02ef4431dee414d1753d13fa82a21a2f61494737b5f642ea668d76164d6d"},
+    {file = "pyproj-3.7.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:0b853ae99bda66cbe24b4ccfe26d70601d84375940a47f553413d9df570065e0"},
+    {file = "pyproj-3.7.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83db380c52087f9e9bdd8a527943b2e7324f275881125e39475c4f9277bdeec4"},
+    {file = "pyproj-3.7.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b35ed213892e211a3ce2bea002aa1183e1a2a9b79e51bb3c6b15549a831ae528"},
+    {file = "pyproj-3.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a8b15b0463d1303bab113d1a6af2860a0d79013c3a66fcc5475ce26ef717fd4f"},
+    {file = "pyproj-3.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:87229e42b75e89f4dad6459200f92988c5998dfb093c7c631fb48524c86cd5dc"},
+    {file = "pyproj-3.7.1-cp313-cp313-win32.whl", hash = "sha256:d666c3a3faaf3b1d7fc4a544059c4eab9d06f84a604b070b7aa2f318e227798e"},
+    {file = "pyproj-3.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:d3caac7473be22b6d6e102dde6c46de73b96bc98334e577dfaee9886f102ea2e"},
+    {file = "pyproj-3.7.1.tar.gz", hash = "sha256:60d72facd7b6b79853f19744779abcd3f804c4e0d4fa8815469db20c9f640a47"},
+]
+
+[package.dependencies]
+certifi = "*"
+
+[[package]]
+name = "python-dateutil"
+version = "2.9.0.post0"
+description = "Extensions to the standard Python datetime module"
+optional = false
+python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"},
+    {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"},
+]
+
+[package.dependencies]
+six = ">=1.5"
+
+[[package]]
+name = "pytz"
+version = "2025.1"
+description = "World timezone definitions, modern and historical"
+optional = false
+python-versions = "*"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "pytz-2025.1-py2.py3-none-any.whl", hash = "sha256:89dd22dca55b46eac6eda23b2d72721bf1bdfef212645d81513ef5d03038de57"},
+    {file = "pytz-2025.1.tar.gz", hash = "sha256:c2db42be2a2518b28e65f9207c4d05e6ff547d1efa4086469ef855e4ab70178e"},
+]
+
+[[package]]
+name = "shapely"
+version = "2.0.7"
+description = "Manipulation and analysis of geometric objects"
+optional = false
+python-versions = ">=3.7"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "shapely-2.0.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:33fb10e50b16113714ae40adccf7670379e9ccf5b7a41d0002046ba2b8f0f691"},
+    {file = "shapely-2.0.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f44eda8bd7a4bccb0f281264b34bf3518d8c4c9a8ffe69a1a05dabf6e8461147"},
+    {file = "shapely-2.0.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf6c50cd879831955ac47af9c907ce0310245f9d162e298703f82e1785e38c98"},
+    {file = "shapely-2.0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:04a65d882456e13c8b417562c36324c0cd1e5915f3c18ad516bb32ee3f5fc895"},
+    {file = "shapely-2.0.7-cp310-cp310-win32.whl", hash = "sha256:7e97104d28e60b69f9b6a957c4d3a2a893b27525bc1fc96b47b3ccef46726bf2"},
+    {file = "shapely-2.0.7-cp310-cp310-win_amd64.whl", hash = "sha256:35524cc8d40ee4752520819f9894b9f28ba339a42d4922e92c99b148bed3be39"},
+    {file = "shapely-2.0.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5cf23400cb25deccf48c56a7cdda8197ae66c0e9097fcdd122ac2007e320bc34"},
+    {file = "shapely-2.0.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d8f1da01c04527f7da59ee3755d8ee112cd8967c15fab9e43bba936b81e2a013"},
+    {file = "shapely-2.0.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f623b64bb219d62014781120f47499a7adc30cf7787e24b659e56651ceebcb0"},
+    {file = "shapely-2.0.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6d95703efaa64aaabf278ced641b888fc23d9c6dd71f8215091afd8a26a66e3"},
+    {file = "shapely-2.0.7-cp311-cp311-win32.whl", hash = "sha256:2f6e4759cf680a0f00a54234902415f2fa5fe02f6b05546c662654001f0793a2"},
+    {file = "shapely-2.0.7-cp311-cp311-win_amd64.whl", hash = "sha256:b52f3ab845d32dfd20afba86675c91919a622f4627182daec64974db9b0b4608"},
+    {file = "shapely-2.0.7-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4c2b9859424facbafa54f4a19b625a752ff958ab49e01bc695f254f7db1835fa"},
+    {file = "shapely-2.0.7-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5aed1c6764f51011d69a679fdf6b57e691371ae49ebe28c3edb5486537ffbd51"},
+    {file = "shapely-2.0.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73c9ae8cf443187d784d57202199bf9fd2d4bb7d5521fe8926ba40db1bc33e8e"},
+    {file = "shapely-2.0.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9469f49ff873ef566864cb3516091881f217b5d231c8164f7883990eec88b73"},
+    {file = "shapely-2.0.7-cp312-cp312-win32.whl", hash = "sha256:6bca5095e86be9d4ef3cb52d56bdd66df63ff111d580855cb8546f06c3c907cd"},
+    {file = "shapely-2.0.7-cp312-cp312-win_amd64.whl", hash = "sha256:f86e2c0259fe598c4532acfcf638c1f520fa77c1275912bbc958faecbf00b108"},
+    {file = "shapely-2.0.7-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a0c09e3e02f948631c7763b4fd3dd175bc45303a0ae04b000856dedebefe13cb"},
+    {file = "shapely-2.0.7-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:06ff6020949b44baa8fc2e5e57e0f3d09486cd5c33b47d669f847c54136e7027"},
+    {file = "shapely-2.0.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d6dbf096f961ca6bec5640e22e65ccdec11e676344e8157fe7d636e7904fd36"},
+    {file = "shapely-2.0.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:adeddfb1e22c20548e840403e5e0b3d9dc3daf66f05fa59f1fcf5b5f664f0e98"},
+    {file = "shapely-2.0.7-cp313-cp313-win32.whl", hash = "sha256:a7f04691ce1c7ed974c2f8b34a1fe4c3c5dfe33128eae886aa32d730f1ec1913"},
+    {file = "shapely-2.0.7-cp313-cp313-win_amd64.whl", hash = "sha256:aaaf5f7e6cc234c1793f2a2760da464b604584fb58c6b6d7d94144fd2692d67e"},
+    {file = "shapely-2.0.7-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:19cbc8808efe87a71150e785b71d8a0e614751464e21fb679d97e274eca7bd43"},
+    {file = "shapely-2.0.7-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc19b78cc966db195024d8011649b4e22812f805dd49264323980715ab80accc"},
+    {file = "shapely-2.0.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd37d65519b3f8ed8976fa4302a2827cbb96e0a461a2e504db583b08a22f0b98"},
+    {file = "shapely-2.0.7-cp37-cp37m-win32.whl", hash = "sha256:25085a30a2462cee4e850a6e3fb37431cbbe4ad51cbcc163af0cea1eaa9eb96d"},
+    {file = "shapely-2.0.7-cp37-cp37m-win_amd64.whl", hash = "sha256:1a2e03277128e62f9a49a58eb7eb813fa9b343925fca5e7d631d50f4c0e8e0b8"},
+    {file = "shapely-2.0.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e1c4f1071fe9c09af077a69b6c75f17feb473caeea0c3579b3e94834efcbdc36"},
+    {file = "shapely-2.0.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3697bd078b4459f5a1781015854ef5ea5d824dbf95282d0b60bfad6ff83ec8dc"},
+    {file = "shapely-2.0.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e9fed9a7d6451979d914cb6ebbb218b4b4e77c0d50da23e23d8327948662611"},
+    {file = "shapely-2.0.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2934834c7f417aeb7cba3b0d9b4441a76ebcecf9ea6e80b455c33c7c62d96a24"},
+    {file = "shapely-2.0.7-cp38-cp38-win32.whl", hash = "sha256:2e4a1749ad64bc6e7668c8f2f9479029f079991f4ae3cb9e6b25440e35a4b532"},
+    {file = "shapely-2.0.7-cp38-cp38-win_amd64.whl", hash = "sha256:8ae5cb6b645ac3fba34ad84b32fbdccb2ab321facb461954925bde807a0d3b74"},
+    {file = "shapely-2.0.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4abeb44b3b946236e4e1a1b3d2a0987fb4d8a63bfb3fdefb8a19d142b72001e5"},
+    {file = "shapely-2.0.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cd0e75d9124b73e06a42bf1615ad3d7d805f66871aa94538c3a9b7871d620013"},
+    {file = "shapely-2.0.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7977d8a39c4cf0e06247cd2dca695ad4e020b81981d4c82152c996346cf1094b"},
+    {file = "shapely-2.0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0145387565fcf8f7c028b073c802956431308da933ef41d08b1693de49990d27"},
+    {file = "shapely-2.0.7-cp39-cp39-win32.whl", hash = "sha256:98697c842d5c221408ba8aa573d4f49caef4831e9bc6b6e785ce38aca42d1999"},
+    {file = "shapely-2.0.7-cp39-cp39-win_amd64.whl", hash = "sha256:a3fb7fbae257e1b042f440289ee7235d03f433ea880e73e687f108d044b24db5"},
+    {file = "shapely-2.0.7.tar.gz", hash = "sha256:28fe2997aab9a9dc026dc6a355d04e85841546b2a5d232ed953e3321ab958ee5"},
+]
+
+[package.dependencies]
+numpy = ">=1.14,<3"
+
+[package.extras]
+docs = ["matplotlib", "numpydoc (==1.1.*)", "sphinx", "sphinx-book-theme", "sphinx-remove-toctrees"]
+test = ["pytest", "pytest-cov"]
+
+[[package]]
+name = "six"
+version = "1.17.0"
+description = "Python 2 and 3 compatibility utilities"
+optional = false
+python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"},
+    {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"},
+]
+
+[[package]]
+name = "tzdata"
+version = "2025.1"
+description = "Provider of IANA time zone data"
+optional = false
+python-versions = ">=2"
+groups = ["main"]
+markers = "python_version <= \"3.11\" or python_version >= \"3.12\""
+files = [
+    {file = "tzdata-2025.1-py2.py3-none-any.whl", hash = "sha256:7e127113816800496f027041c570f50bcd464a020098a3b6b199517772303639"},
+    {file = "tzdata-2025.1.tar.gz", hash = "sha256:24894909e88cdb28bd1636c6887801df64cb485bd593f2fd83ef29075a81d694"},
+]
+
+[metadata]
+lock-version = "2.1"
+python-versions = ">=3.10"
+content-hash = "d67a88d2d53110c2f61a6b108be61bf5cbf97cf0a49bc9fbdf43212f766bcbd5"
diff --git a/19_SportsAndSchoolGrounds/pyproject.toml b/19_SportsAndSchoolGrounds/pyproject.toml
new file mode 100644
index 0000000..94e9209
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/pyproject.toml
@@ -0,0 +1,20 @@
+[project]
+name = "19-sportsandschoolgrounds"
+version = "0.1.0"
+description = ""
+authors = [
+    {name = "Tebbo Beyer"}
+]
+readme = "README.md"
+requires-python = ">=3.10"
+dependencies = [
+    "geopandas (>=1.0.1)",
+    "matplotlib (>=3.9.2)"
+]
+
+[tool.poetry]
+package-mode = false
+
+[build-system]
+requires = ["poetry-core>=2.0.0,<3.0.0"]
+build-backend = "poetry.core.masonry.api"
diff --git a/19_SportsAndSchoolGrounds/stadtbezirk.geojson b/19_SportsAndSchoolGrounds/stadtbezirk.geojson
new file mode 100644
index 0000000..ba3e5c9
--- /dev/null
+++ b/19_SportsAndSchoolGrounds/stadtbezirk.geojson
@@ -0,0 +1 @@
+{"type":"FeatureCollection","features":[{"type":"Feature","id":"stadtbezirk.1","geometry":{"type":"Polygon","coordinates":[[[562826.337,5952040.872],[562871.466,5952122.683],[562863.789,5952128.681],[562924.028,5952213.396],[562963.825,5952269.362],[563135.085,5952541.664],[563199.672,5952678.879],[563381.417,5953055.618],[563271.549,5953126.211],[563079.703,5953257.602],[563085.651,5953470.003],[562986.878,5953515.717],[562967.176,5953335.244],[562888.555,5953345.813],[562879.488,5953466.138],[562878.689,5953562.622],[562863.744,5953573.629],[562963.667,5953722.411],[562952.131,5953737.166],[562947.123,5953755.179],[562940.166,5953802.332],[562939.786,5953850.404],[562960.188,5953898.416],[562985.099,5953972.099],[563038.275,5954129.096],[563012.495,5954150.828],[563006.629,5954174.868],[563038.477,5954183.005],[563082.331,5954185.433],[563103.594,5954194.299],[563134.784,5954228.396],[563146.88,5954234.583],[563168.364,5954281.074],[563217.264,5954236.441],[563159.923,5953878.711],[563270.322,5953752.847],[563282.237,5953752.697],[563311.727,5953936.048],[563527.936,5953904.487],[563493.898,5953815.841],[563516.24,5953803.775],[563717.554,5953760.93],[563782.571,5953891.589],[563843.58,5954020.269],[564011.361,5954365.042],[564139.102,5954602.218],[564244.146,5954797.946],[564274.086,5954867.575],[564350.161,5955010.818],[564420.207,5955128.626],[564551.322,5955346.561],[564500.69,5955450.685],[564272.273,5955398.337],[564251.963,5955572.244],[564258.7,5955582.36],[564242.568,5955723.84],[564364.045,5955857.661],[564574.595,5956256.225],[564661.152,5956462.662],[564620.376,5956519.958],[564425.504,5956614.746],[564546.462,5956844.978],[564422.113,5957005.155],[564570.316,5957098.527],[564689.81,5957155.813],[564816.25,5957211.727],[565036.184,5956823.229],[565183.6,5956560.477],[565249.494,5956437.706],[565407.497,5955923.624],[565502.951,5955613.067],[565604.865,5955461.809],[565649.503,5955334.759],[565654.435,5955208.49],[565666.938,5954986.835],[565674.546,5954907.167],[565717.424,5954541.383],[565731.689,5954399.223],[565760.32,5954117.237],[565775.385,5953968.87],[565779.96,5953918.37],[565796.761,5953695.213],[565797.969,5953679.165],[565809.52,5953564.558],[565843.182,5953160.568],[565797.739,5953151.36],[565736.007,5953123.371],[565615.4909,5953070.8408],[565547.6711,5953057.9331],[565491.3697,5953052.487],[565369.9418,5953056.1103],[565254.5953,5953059.6967],[565200.3237,5953068.414],[565117.9221,5953096.6029],[565003.5875,5953160.8131],[564933.2265,5953176.3562],[564870.3943,5953159.3209],[564831.1897,5953134.9517],[564805.9498,5953107.6535],[564791.7701,5953082.4469],[564722.949,5952571.601],[564879.213,5952425.766],[564845.447,5952389.223],[564814.319,5952360.647],[564771.965,5952320.336],[564699.859,5952248.448],[564639.275,5952188.615],[564606.593,5952155.934],[564558.53,5952101.145],[564443.18,5951971.382],[564352.821,5951870.455],[564112.499,5951738.981],[564012.212,5951669.188],[563765.296,5951646.699],[563769.107,5951919.634],[563547.64,5951928.804],[563545.24,5951854.895],[563248.572,5951930.906],[562826.337,5952040.872]]]},"geometry_name":"geom","properties":{"id":1,"gti_key":"01","geo_key":"01","bezirk":"Friedrichsgabe Nord","stteil":"Friedrichsgabe","flae":"7.998","ew2020":5063,"ew2021":5115,"ew2022":5296,"geo_x":564334.8,"geo_y":5954429.2},"bbox":[562826.337,5951646.699,565843.182,5957211.727]},{"type":"Feature","id":"stadtbezirk.2","geometry":{"type":"Polygon","coordinates":[[[565779.96,5953918.37],[565775.385,5953968.87],[565760.32,5954117.237],[565731.689,5954399.223],[565717.424,5954541.383],[565674.546,5954907.167],[565666.938,5954986.835],[565654.435,5955208.49],[565649.503,5955334.759],[565604.865,5955461.809],[565502.951,5955613.067],[565407.497,5955923.624],[565249.494,5956437.706],[565415.374,5956292.964],[565686.319,5956058.861],[565694.79,5955967.816],[565837.591,5955980.677],[565877.981,5955974.114],[565986.228,5955939.797],[566132.39,5955867.03],[566296.462,5955763.846],[566384.418,5955712.254],[566484.215,5955671.657],[566599.146,5955638.214],[566663.946,5955684.54],[566763.029,5955768.215],[566895.599,5955880.168],[567103.39,5955987.811],[567434.624,5956159.549],[567454.693,5955937.963],[567465.475,5955775.297],[567481.674,5955557.003],[567478.535,5955551.415],[567491.903,5955525.309],[567502.383,5955372.742],[567502.74,5955355.591],[567500.595,5955340.942],[567492.377,5955327.723],[567474.87,5955316.29],[567447.714,5955298.067],[567435.565,5955283.418],[567428.419,5955275.916],[567411.626,5955248.761],[567395.42,5955256.114],[567205.433,5955237.076],[567180.104,5955295.044],[567080.083,5955285.02],[567088.952,5955143.975],[566967.737,5955131.766],[566968.977,5955122.049],[566982.74,5955046.651],[566998.286,5954892.73],[567023.342,5954612.188],[567047.027,5954345.817],[567058.014,5954248.612],[567066.184,5954201.559],[567052.424,5954112.644],[567030.436,5953993.275],[567076.21,5953989.263],[567074.338,5953920.343],[567073.447,5953887.356],[567067.209,5953692.274],[566660.785,5953769.759],[566446.706,5953806.55],[566144.227,5953857.349],[565994.883,5953886.159],[565779.96,5953918.37]]]},"geometry_name":"geom","properties":{"id":2,"gti_key":"10","geo_key":"10","bezirk":"Harksheide Nord","stteil":"Harksheide","flae":"3.230","ew2020":3357,"ew2021":3380,"ew2022":3444,"geo_x":566376.1,"geo_y":5955065},"bbox":[565249.494,5953692.274,567502.74,5956437.706]},{"type":"Feature","id":"stadtbezirk.3","geometry":{"type":"Polygon","coordinates":[[[565779.96,5953918.371],[565994.883,5953886.159],[566144.227,5953857.349],[566446.706,5953806.55],[566660.785,5953769.759],[567067.209,5953692.274],[567073.447,5953887.356],[567074.338,5953920.343],[567076.21,5953989.263],[567030.436,5953993.275],[567052.424,5954112.644],[567066.184,5954201.559],[567058.014,5954248.612],[567047.027,5954345.817],[567023.342,5954612.188],[566998.286,5954892.73],[566982.74,5955046.651],[566968.977,5955122.049],[566967.737,5955131.766],[567088.952,5955143.975],[567080.083,5955285.02],[567180.104,5955295.044],[567205.433,5955237.076],[567395.42,5955256.114],[567411.626,5955248.761],[567428.419,5955275.916],[567435.565,5955283.418],[567447.714,5955298.067],[567474.87,5955316.29],[567494.255,5955284.668],[567504.705,5955260.818],[567512.477,5955237.236],[567518.639,5955217.674],[567523.883,5955190.125],[567531.077,5955125.372],[567541.518,5954989.75],[567552.307,5954821.393],[567560.398,5954715.091],[567570.649,5954595.839],[567587.195,5954353.038],[567612.822,5954078.718],[567640.489,5953894.211],[567667.341,5953680.956],[567681.368,5953582.555],[567765.517,5953580.381],[567827.692,5953574.61],[568069.908,5953602.659],[568021.06,5953228.888],[568133.036,5953240.278],[568244.972,5953251.829],[568273.808,5953113.304],[568314.48,5952891.112],[568202.434,5952909.26],[568190.578,5952967.588],[568059.521,5953046.083],[567776.667,5953030.915],[567869.323,5952606.59],[567796.397,5952605.454],[567612.376,5952679.107],[567479.134,5952798.782],[566846.326,5952941.638],[566747.039,5952680.551],[566380.635,5952811.428],[566353.5,5952813.07],[566317.4,5952811.429],[566241.511,5952801.995],[566043.904,5952753.36],[565900.611,5952717.909],[565874.057,5952825.564],[565861.677,5952892.974],[565853.043,5953030.891],[565843.182,5953160.568],[565809.52,5953564.558],[565797.969,5953679.165],[565796.761,5953695.213],[565779.96,5953918.371]]]},"geometry_name":"geom","properties":{"id":3,"gti_key":"11","geo_key":"11","bezirk":"Harksheide Harckesheyde","stteil":"Harksheide","flae":"2.979","ew2020":4030,"ew2021":4045,"ew2022":4077,"geo_x":567047.2,"geo_y":5953283.2},"bbox":[565779.96,5952605.454,568314.48,5955316.29]},{"type":"Feature","id":"stadtbezirk.4","geometry":{"type":"Polygon","coordinates":[[[564879.213,5952425.766],[564722.949,5952571.601],[564791.7701,5953082.4469],[564805.9498,5953107.6535],[564831.1897,5953134.9517],[564870.3943,5953159.3209],[564933.2265,5953176.3562],[565003.5875,5953160.8131],[565117.9221,5953096.6029],[565200.3237,5953068.414],[565254.5953,5953059.6967],[565369.9418,5953056.1103],[565491.3697,5953052.487],[565547.6711,5953057.9331],[565615.4909,5953070.8408],[565736.007,5953123.371],[565797.739,5953151.36],[565843.182,5953160.568],[565853.043,5953030.891],[565861.677,5952892.974],[565874.057,5952825.564],[565900.611,5952717.909],[565931.834,5952598.567],[565959.806,5952477.918],[565978.219,5952401.803],[565985.583,5952310.956],[565989.379,5952204.991],[565992.13,5952119.008],[565981.123,5951971.808],[565845.94,5951979.229],[565582.841,5951992.884],[565544.746,5951997.265],[565464.582,5951994.894],[565387.101,5952005.701],[565358.258,5952018.813],[565325.483,5952104.032],[565275.202,5952152.153],[565170.624,5952200.362],[565106.212,5952241.128],[565069.067,5952269.554],[564995.404,5952326.883],[564879.213,5952425.766]]]},"geometry_name":"geom","properties":{"id":4,"gti_key":"02","geo_key":"02","bezirk":"Friedrichsgabe Süd","stteil":"Friedrichsgabe","flae":"1.124","ew2020":4091,"ew2021":4079,"ew2022":4162,"geo_x":565357.5,"geo_y":5952574.1},"bbox":[564722.949,5951971.808,565992.13,5953176.3562]},{"type":"Feature","id":"stadtbezirk.5","geometry":{"type":"Polygon","coordinates":[[[565947.843,5951677.15],[565962.716,5951783.607],[565981.123,5951971.808],[565992.13,5952119.008],[565989.379,5952204.991],[565985.583,5952310.956],[565978.219,5952401.803],[565959.806,5952477.918],[565931.834,5952598.567],[565900.611,5952717.909],[566043.904,5952753.36],[566241.511,5952801.995],[566317.4,5952811.429],[566353.5,5952813.07],[566380.635,5952811.428],[566747.039,5952680.551],[566846.326,5952941.638],[567479.134,5952798.782],[567612.376,5952679.107],[567366.249,5952532.081],[567301.554,5952111.614],[567295.544,5952030.737],[567285.607,5951934.957],[567287.196,5951910.926],[567506.524,5951888.425],[567703.58,5951868.244],[567961.998,5951842.963],[567951.901,5951780.781],[567941.953,5951739.501],[567914.24,5951652.21],[567898.412,5951619.501],[567825.603,5951498.69],[567790.409,5951449.003],[567661.787,5951312.477],[567546.358,5951344.143],[567190.889,5951448.991],[567003.588,5951460.677],[566881.862,5951472.052],[566542.157,5951563.14],[566463.194,5951590.152],[566331.984,5951619.872],[566255.983,5951628.917],[566106.757,5951645.053],[566022.212,5951658.36],[565947.843,5951677.15]]]},"geometry_name":"geom","properties":{"id":5,"gti_key":"12","geo_key":"12","bezirk":"Harksheide Falkenhorst","stteil":"Harksheide","flae":"2.061","ew2020":5331,"ew2021":5362,"ew2022":5478,"geo_x":566931.3,"geo_y":5952127.1},"bbox":[565900.611,5951312.477,567961.998,5952941.638]},{"type":"Feature","id":"stadtbezirk.6","geometry":{"type":"Polygon","coordinates":[[[564012.212,5951669.188],[564112.499,5951738.981],[564352.821,5951870.455],[564443.18,5951971.382],[564558.53,5952101.145],[564606.593,5952155.934],[564639.275,5952188.615],[564699.859,5952248.448],[564771.965,5952320.336],[564814.319,5952360.647],[564845.447,5952389.223],[564879.213,5952425.766],[564995.404,5952326.883],[565069.067,5952269.554],[565106.212,5952241.128],[565170.624,5952200.362],[565119.178,5952067.74],[565105.391,5952026.933],[565081.126,5951915.543],[565049.974,5951755.443],[565028.369,5951643.532],[565013.303,5951586.294],[564985.362,5951498.97],[564891.37,5951216.278],[564848.331,5951069.237],[564749.009,5950982.569],[564713.416,5950949.983],[564656.383,5950878.123],[564636.195,5950847.333],[564611.338,5950799.441],[564579.811,5950669.101],[564524.391,5950442.697],[564483.325,5950442.697],[564459.43,5950566.711],[564441.076,5950679.661],[564435.167,5950734.615],[564431.624,5950804.931],[564431.842,5950824.453],[564295.166,5950851.654],[564276.588,5950855.634],[564263.263,5950864.433],[564244.742,5950879.524],[564227.593,5950903.19],[564147.798,5951114.733],[564054.747,5951472.721],[564012.212,5951669.188]]]},"geometry_name":"geom","properties":{"id":6,"gti_key":"03","geo_key":"03","bezirk":"Norderstedt-Mitte West","stteil":"Norderstedt-Mitte","flae":"1.118","ew2020":5301,"ew2021":5265,"ew2022":5230,"geo_x":564591.4,"geo_y":5951434.2},"bbox":[564012.212,5950442.697,565170.624,5952425.766]},{"type":"Feature","id":"stadtbezirk.7","geometry":{"type":"Polygon","coordinates":[[[565170.624,5952200.362],[565275.202,5952152.153],[565325.483,5952104.032],[565358.258,5952018.813],[565387.101,5952005.701],[565464.582,5951994.894],[565502.872,5951538.933],[565525.279,5951302.013],[565548.592,5951002.714],[565555.515,5950797.21],[565544.518,5950668.479],[565527.698,5950535.766],[565479.167,5950541.676],[565420.034,5950538.139],[565347.813,5950530.316],[565142.652,5950464.91],[565019.038,5950420.205],[564892.514,5950354.103],[564801.673,5950329.842],[564755.172,5950318.751],[564630.175,5950297.847],[564500.487,5950279.503],[564494.46,5950358.476],[564490.331,5950390.277],[564483.325,5950442.697],[564524.391,5950442.697],[564579.811,5950669.101],[564611.338,5950799.441],[564636.195,5950847.333],[564656.383,5950878.123],[564713.416,5950949.983],[564749.009,5950982.569],[564848.331,5951069.237],[564891.37,5951216.278],[564985.362,5951498.97],[565013.303,5951586.294],[565028.369,5951643.532],[565049.974,5951755.443],[565081.126,5951915.543],[565105.391,5952026.933],[565119.178,5952067.74],[565170.624,5952200.362]]]},"geometry_name":"geom","properties":{"id":7,"gti_key":"04","geo_key":"04","bezirk":"Norderstedt-Mitte","stteil":"Norderstedt-Mitte","flae":"1.121","ew2020":5541,"ew2021":5652,"ew2022":5839,"geo_x":565019.4,"geo_y":5951239.9},"bbox":[564483.325,5950279.503,565555.515,5952200.362]},{"type":"Feature","id":"stadtbezirk.8","geometry":{"type":"Polygon","coordinates":[[[565981.123,5951971.808],[565962.716,5951783.607],[565947.843,5951677.15],[565936.075,5951608.011],[565907.999,5951476.917],[565902.826,5951458.875],[565874.328,5951400.93],[565835.38,5951327.787],[565777.982,5951231.074],[565718.568,5951120.901],[565695.43,5951067.88],[565674.22,5951010.037],[565649.78,5950916.293],[565644.333,5950888.564],[565637.584,5950837.468],[565635.655,5950779.623],[565640.474,5950718.885],[565645.536,5950644.35],[565649.315,5950568.722],[565648.362,5950507.727],[565527.698,5950535.766],[565544.518,5950668.479],[565555.515,5950797.21],[565548.592,5951002.714],[565525.279,5951302.013],[565502.872,5951538.933],[565464.582,5951994.894],[565544.746,5951997.265],[565582.841,5951992.884],[565845.94,5951979.229],[565981.123,5951971.808]]]},"geometry_name":"geom","properties":{"id":8,"gti_key":"05","geo_key":"05","bezirk":"Norderstedt-Mitte Ost","stteil":"Norderstedt-Mitte","flae":"0.406","ew2020":1839,"ew2021":1828,"ew2022":1835,"geo_x":565722.9,"geo_y":5951252.5},"bbox":[565464.582,5950507.727,565981.123,5951997.265]},{"type":"Feature","id":"stadtbezirk.9","geometry":{"type":"Polygon","coordinates":[[[565649.78,5950916.293],[565674.22,5951010.037],[565695.43,5951067.88],[565718.568,5951120.901],[565777.982,5951231.074],[565835.38,5951327.787],[565874.328,5951400.93],[565902.826,5951458.875],[565907.999,5951476.917],[565936.075,5951608.011],[565947.843,5951677.15],[566022.212,5951658.36],[566106.757,5951645.053],[566255.983,5951628.917],[566331.984,5951619.872],[566463.194,5951590.152],[566542.157,5951563.14],[566881.862,5951472.052],[567003.588,5951460.677],[567190.889,5951448.991],[567546.358,5951344.143],[567661.787,5951312.477],[567555.598,5951216.307],[567295.059,5950998.539],[566903.794,5950666.688],[566643.108,5950843.825],[566528.452,5950923.697],[566501.862,5950951.287],[566497.064,5950990.472],[566456.34,5950964.943],[566374.012,5950804.248],[566276.06,5950856.409],[566226.137,5950876.878],[566192.482,5950888.02],[566119.81,5950883.824],[565954.204,5950882.019],[565896.296,5950861.938],[565864.908,5950862.538],[565796.335,5950880.333],[565649.78,5950916.293]]]},"geometry_name":"geom","properties":{"id":9,"gti_key":"13","geo_key":"13","bezirk":"Harksheide Markt","stteil":"Harksheide","flae":"1.138","ew2020":4124,"ew2021":4135,"ew2022":4394,"geo_x":566655.8,"geo_y":5951171.9},"bbox":[565649.78,5950666.688,567661.787,5951677.15]},{"type":"Feature","id":"stadtbezirk.10","geometry":{"type":"Polygon","coordinates":[[[562695.875,5951137.128],[562648.543,5951192.265],[562629.021,5951251.26],[562636.189,5951253.929],[562627.592,5951265.084],[562536.124,5951261.608],[562527.708,5951294.294],[562393.054,5951252.796],[562452.787,5951363.726],[562826.337,5952040.872],[563248.572,5951930.906],[563545.24,5951854.895],[563547.64,5951928.804],[563769.107,5951919.634],[563765.296,5951646.699],[564012.212,5951669.188],[564054.747,5951472.721],[564147.798,5951114.733],[564227.593,5950903.19],[564244.742,5950879.524],[564263.263,5950864.433],[564276.588,5950855.634],[564295.166,5950851.654],[564431.842,5950824.453],[564431.624,5950804.931],[564435.167,5950734.615],[564441.076,5950679.661],[564459.43,5950566.711],[564483.325,5950442.697],[564490.331,5950390.277],[564494.46,5950358.476],[564500.487,5950279.503],[564630.175,5950297.847],[564755.172,5950318.751],[564801.673,5950329.842],[564892.514,5950354.103],[565019.038,5950420.205],[565142.652,5950464.91],[565347.813,5950530.316],[565420.034,5950538.139],[565479.167,5950541.676],[565527.698,5950535.766],[565648.362,5950507.727],[565637.969,5950368.309],[565625.362,5950160.333],[565628.028,5950090.836],[565643.923,5949984.168],[565672.319,5949878.277],[565753.935,5949644.462],[565660.775,5949623.231],[565499.167,5949564.948],[565340.788,5949512.139],[565081.509,5949415.354],[564985.48,5949388.934],[564962.986,5949488.829],[564715.252,5949500.158],[564569.48,5949501.125],[564549.554,5949619.279],[564519.662,5949731.738],[564371.389,5949656.913],[564340.05,5949653.115],[564272.623,5949674.009],[564261.228,5949717.695],[564202.349,5949771.827],[564108.331,5949825.961],[564041.854,5949838.307],[563837.666,5949818.369],[563745.545,5949843.062],[563701.921,5949888.157],[563541.2,5950457.605],[563222.528,5950445.419],[563156.139,5950586.493],[563114.648,5950779.434],[562778.627,5951216.01],[562695.875,5951137.128]]]},"geometry_name":"geom","properties":{"id":10,"gti_key":"06","geo_key":"06","bezirk":"Garstedt Richtweg","stteil":"Garstedt","flae":"3.621","ew2020":3678,"ew2021":3723,"ew2022":3876,"geo_x":564073.5,"geo_y":5950714.9},"bbox":[562393.054,5949388.934,565753.935,5952040.872]},{"type":"Feature","id":"stadtbezirk.11","geometry":{"type":"Polygon","coordinates":[[[565648.362,5950507.727],[565649.315,5950568.722],[565645.536,5950644.35],[565640.474,5950718.885],[565635.655,5950779.623],[565637.584,5950837.468],[565644.333,5950888.564],[565649.78,5950916.293],[565796.335,5950880.333],[565864.908,5950862.538],[565896.296,5950861.938],[565954.204,5950882.019],[566119.81,5950883.824],[566192.482,5950888.02],[566226.137,5950876.878],[566276.06,5950856.409],[566374.012,5950804.248],[566456.34,5950964.943],[566497.064,5950990.472],[566501.862,5950951.287],[566528.452,5950923.697],[566643.108,5950843.825],[566903.794,5950666.688],[567295.059,5950998.539],[567295.059,5950998.539],[567295.059,5950998.539],[567555.598,5951216.307],[567661.787,5951312.477],[567715.991,5951265.24],[567773.501,5951210.228],[567812.258,5951167.719],[567843.853,5951101.571],[567865.069,5950854.542],[567843.627,5950662.245],[567847.523,5950553.752],[567863.812,5950439.63],[567877.01,5950347.164],[567690.858,5950351.347],[567605.87,5950356.345],[567508.143,5950392.647],[567427.541,5950221.077],[567377.623,5950220.457],[567432.532,5950011.415],[567502.823,5949777.316],[567544.148,5949692.789],[567347.045,5949523.482],[567324.116,5949500.554],[567287.957,5949443.234],[567345.276,5949399.137],[567362.914,5949394.727],[567434.344,5949396.487],[567500.871,5949218.473],[567514.334,5949185.176],[567587.453,5949019.905],[567456.685,5948975.445],[567491.924,5948888.67],[567617.417,5948583.989],[567161.542,5948561.319],[566879.001,5948546.836],[566376.34,5948522.416],[566251.643,5948490.365],[566111.444,5948510.025],[566066.802,5948539.623],[566012.857,5948542.498],[565994.589,5948585.475],[565977.097,5948617.763],[565939.513,5948662.347],[565915.5,5948822.108],[565922.518,5948966.824],[565915.51,5949043.883],[565819.514,5949432.694],[565780.689,5949577.437],[565753.935,5949644.462],[565672.319,5949878.277],[565643.923,5949984.168],[565628.028,5950090.836],[565625.362,5950160.333],[565637.969,5950368.309],[565648.362,5950507.727]]]},"geometry_name":"geom","properties":{"id":11,"gti_key":"14","geo_key":"14","bezirk":"Harksheide Süd","stteil":"Harksheide","flae":"4.322","ew2020":8007,"ew2021":8031,"ew2022":8115,"geo_x":566751.2,"geo_y":5949901.4},"bbox":[565625.362,5948490.365,567877.01,5951312.477]},{"type":"Feature","id":"stadtbezirk.12","geometry":{"type":"Polygon","coordinates":[[[567661.787,5951312.477],[567790.409,5951449.003],[567825.603,5951498.69],[567898.412,5951619.501],[567914.24,5951652.21],[567941.953,5951739.501],[567951.901,5951780.781],[567961.998,5951842.963],[567703.58,5951868.244],[567506.524,5951888.425],[567287.196,5951910.926],[567285.607,5951934.957],[567295.544,5952030.737],[567301.554,5952111.614],[567366.249,5952532.081],[567612.376,5952679.107],[567796.397,5952605.454],[567869.323,5952606.59],[567776.667,5953030.915],[568059.521,5953046.083],[568086.12,5953021.342],[568121.345,5952999.799],[568144.327,5952974.318],[568167.238,5952945.248],[568169.107,5952920.847],[568177.704,5952907.162],[568203.144,5952877.313],[568203.254,5952850.653],[568195.247,5952815.218],[568176.065,5952787.869],[568166.349,5952770.207],[568181.123,5952743.237],[568177.275,5952725.194],[568227.565,5952716.875],[568291.87,5952710.224],[568315.63,5952713.182],[568366.85,5952735.66],[568408.593,5952761.768],[568453.696,5952777.159],[568572.369,5952810.16],[568742.3,5952857.756],[568965.18,5952790.265],[569083.392,5952787.141],[569280.327,5952571.553],[569259.485,5952524.922],[569925.756,5952358.525],[569927.892,5952143.309],[569913.707,5952100.416],[569928.513,5952094.87],[569849.456,5951843.361],[570062.332,5951787.393],[570082.922,5951832.729],[570100.14,5951825.235],[570114.307,5951856.562],[570410.494,5951733.661],[570565.041,5951668.347],[570203.716,5951292.369],[569986.077,5951062.286],[569329.49,5950358.391],[569022.821,5950030.156],[568999.887,5950004.378],[568775.096,5949611.709],[568734.284,5949556.134],[568634.779,5949472.064],[568533.388,5949398.406],[568388.771,5949331.302],[568196.854,5949238.093],[568013.393,5949163.224],[567587.453,5949019.905],[567514.334,5949185.176],[567500.871,5949218.473],[567434.344,5949396.487],[567362.914,5949394.727],[567345.276,5949399.137],[567287.957,5949443.234],[567324.116,5949500.554],[567347.045,5949523.482],[567544.148,5949692.789],[567502.823,5949777.316],[567432.532,5950011.415],[567377.623,5950220.457],[567427.541,5950221.077],[567508.143,5950392.647],[567605.87,5950356.345],[567690.858,5950351.347],[567877.01,5950347.164],[567863.812,5950439.63],[567847.523,5950553.752],[567843.627,5950662.245],[567865.069,5950854.542],[567843.853,5951101.571],[567812.258,5951167.719],[567773.501,5951210.228],[567715.991,5951265.24],[567661.787,5951312.477]]]},"geometry_name":"geom","properties":{"id":12,"gti_key":"15","geo_key":"15","bezirk":"Glashütte Nord","stteil":"Glashütte","flae":"7.039","ew2020":6097,"ew2021":6127,"ew2022":6470,"geo_x":568925.3,"geo_y":5951033},"bbox":[567285.607,5949019.905,570565.041,5953046.083]},{"type":"Feature","id":"stadtbezirk.13","geometry":{"type":"Polygon","coordinates":[[[570817.811,5951759.976],[570710.571,5951606.361],[570642.816,5951470.498],[570495.97,5951172.804],[570332.769,5951040.684],[570208.623,5950646.304],[570160.289,5950559.53],[570208.169,5950526.862],[570177.109,5950474.674],[570133.149,5950510.611],[570108.277,5950464.3],[570098.101,5950469.758],[570073.089,5950419.889],[570026.289,5950440.122],[570006.993,5950333.096],[570739.685,5950343.032],[570730.919,5950331.297],[570712.702,5950206.477],[570629.868,5950277.091],[570571.946,5950105.692],[570521.456,5950106.373],[570490.704,5949980.394],[570494.401,5949854.832],[570419.608,5949646.244],[570378.634,5949643.106],[570384.339,5949445.472],[570267.634,5949407.867],[570112.535,5949381.889],[570023.77,5949365.636],[570024.929,5949356.829],[570046.181,5949360.137],[570070.739,5949264.333],[570089.131,5949183.113],[570110.204,5949118.375],[570213.281,5949116.898],[570276.406,5949112.339],[570350.137,5949104.972],[570444.49,5949104.223],[570456.165,5949060.949],[570469.799,5949037.318],[570477.93,5949030.501],[570393.398,5948999.653],[570446.203,5948861.742],[570625.924,5948397.189],[569455.521,5948177.035],[569122.043,5948465.811],[568917.091,5948646.084],[567991.025,5948602.673],[567617.417,5948583.989],[567491.924,5948888.67],[567456.685,5948975.445],[567587.453,5949019.905],[568013.393,5949163.224],[568196.854,5949238.093],[568388.771,5949331.302],[568533.388,5949398.406],[568634.779,5949472.064],[568734.284,5949556.134],[568775.096,5949611.709],[568999.887,5950004.378],[569022.821,5950030.156],[569329.49,5950358.391],[569986.077,5951062.286],[570203.716,5951292.369],[570565.041,5951668.347],[570702.049,5951814.205],[570817.811,5951759.976]]]},"geometry_name":"geom","properties":{"id":13,"gti_key":"16","geo_key":"16","bezirk":"Glashütte Süd","stteil":"Glashütte","flae":"4.537","ew2020":4953,"ew2021":4889,"ew2022":5108,"geo_x":569137.2,"geo_y":5949995.6},"bbox":[567456.685,5948177.035,570817.811,5951814.205]},{"type":"Feature","id":"stadtbezirk.14","geometry":{"type":"Polygon","coordinates":[[[562188.686,5949494.477],[562294.6,5949634.641],[562314.744,5949681.826],[562292.483,5949705.757],[562292.193,5949725.299],[562299.71,5949736.165],[562288.065,5949764.444],[562280.768,5949795.712],[562304.649,5949822.45],[562299.761,5949844.142],[562284.167,5949865.074],[562295.303,5949877.749],[562277.53,5949901.14],[562289.686,5949932.547],[562241.094,5950085.167],[562291.124,5950137.184],[562300.679,5950186.953],[562313.334,5950214.232],[562356.757,5950237.891],[562346.91,5950336.04],[562326.417,5950449.085],[562330.255,5950468.996],[562329.405,5950502.552],[562354.025,5950547.183],[562375.077,5950539.056],[562438.114,5950621.49],[562425.188,5950627.808],[562420.1,5950644.881],[562445.221,5950652.997],[562454.427,5950671.299],[562445.471,5950686.883],[562432.865,5950705.446],[562405.445,5950732.225],[562390.34,5950718.172],[562367.448,5950728.958],[562350.974,5950721.302],[562341.058,5950735.166],[562307.158,5950891.593],[562301.87,5950909.735],[562360.779,5950944.14],[562514.385,5951013.306],[562594.189,5951075.937],[562695.875,5951137.128],[562778.627,5951216.01],[563114.648,5950779.434],[563156.139,5950586.493],[563222.528,5950445.419],[563541.2,5950457.605],[563701.921,5949888.157],[563745.545,5949843.062],[563837.666,5949818.369],[564041.854,5949838.307],[564108.331,5949825.961],[564202.349,5949771.827],[564261.228,5949717.695],[564272.623,5949674.009],[564340.05,5949653.115],[564371.389,5949656.913],[564519.662,5949731.738],[564549.554,5949619.279],[564569.48,5949501.125],[564715.252,5949500.158],[564962.986,5949488.829],[564985.48,5949388.934],[565081.509,5949415.354],[565340.788,5949512.139],[565499.167,5949564.948],[565660.775,5949623.231],[565753.935,5949644.462],[565780.689,5949577.437],[565819.514,5949432.694],[565915.51,5949043.883],[565922.518,5948966.824],[565915.5,5948822.108],[565939.513,5948662.347],[565916.966,5948655.884],[565841.247,5948607.569],[565799.762,5948573.782],[565787.667,5948583.978],[565596.938,5948561.789],[565245.869,5948512.812],[564962.08,5948575.493],[564818.31,5948610.977],[564737.975,5948643.674],[564664.734,5948709.526],[564470.987,5948694.163],[564330.145,5948698.065],[564177.909,5948735.356],[563978.151,5948792.076],[563485.258,5948774.271],[563409.583,5948786.171],[563344.124,5948807.126],[563276.426,5948841.057],[563044.706,5949017.032],[562865.757,5949161.127],[562778.608,5949219.229],[562691.95,5949267.607],[562578.199,5949308.79],[562460.449,5949341.378],[562319.58,5949383.471],[562242.142,5949439.543],[562188.686,5949494.477]]]},"geometry_name":"geom","properties":{"id":14,"gti_key":"07","geo_key":"07","bezirk":"Garstedt Zentrum","stteil":"Garstedt","flae":"4.493","ew2020":8389,"ew2021":8465,"ew2022":8797,"geo_x":563126.4,"geo_y":5949864.4},"bbox":[562188.686,5948512.812,565939.513,5951216.01]},{"type":"Feature","id":"stadtbezirk.15","geometry":{"type":"Polygon","coordinates":[[[562327.983,5946371.876],[562301.993,5946475.951],[562283.38,5946497.664],[562255.451,5946512.329],[562250.533,5946572.748],[562245.424,5946592.162],[562223.183,5946621.822],[562218.584,5946647.873],[562217.595,5946657.96],[562229.151,5946686.429],[562222.723,5946703.504],[562200.251,5946739.821],[562191.716,5946783.266],[562189.017,5946801.55],[562212.017,5946840.796],[562246.494,5946856.989],[562242.025,5946892.407],[562165.883,5947041.427],[562146,5947088.392],[562150.168,5947105.506],[562115.492,5947108.386],[562110.303,5947123.271],[562082.203,5947149.633],[562042.248,5947176.845],[562061,5947235.245],[562065.828,5947266.014],[562059.89,5947303.602],[562033.079,5947330.124],[562028.88,5947399.45],[561962.958,5947875.652],[561915.686,5947908.592],[561934.258,5947942.89],[561897.493,5948041.445],[561864.826,5948057.749],[561840.875,5948061.077],[561841.136,5948095.634],[561827.072,5948102.981],[561803.531,5948102.621],[561774.163,5948133.45],[561752.792,5948160.189],[561741.077,5948191.737],[561779.945,5948250.344],[561785.623,5948268.027],[561772.429,5948291.098],[561807.906,5948311.769],[561838.144,5948299.874],[561848.911,5948308.55],[561850.71,5948316.777],[561873.292,5948336.189],[561891.267,5948372.504],[561902.874,5948411.989],[561896.376,5948423.214],[561871.877,5948465.428],[561849.976,5948474.865],[561859.713,5948499.245],[561883.364,5948515.778],[561893.931,5948542.897],[561947.352,5948587.579],[561950.292,5948603.153],[561972.135,5948634.53],[561961.9,5948683.421],[561964.949,5948694.217],[561981.983,5948696.996],[561981.822,5948680.202],[561991.098,5948661.909],[562019.167,5948672.885],[562047.146,5948687.019],[562056.763,5948697.175],[562050.086,5948711.069],[562031.084,5948721.215],[562027.896,5948738.989],[562066.48,5948744.416],[562076.426,5948753.052],[562083.324,5948764.448],[562070.309,5948775.924],[562053.276,5948777.113],[562041.322,5948797.965],[562062.424,5948812.459],[562061.295,5948840.398],[562070.382,5948861.45],[562085.325,5948854.273],[562128.247,5948855.252],[562158.504,5948847.955],[562162.183,5948865.138],[562163.712,5948884.121],[562150.468,5948905.452],[562175.338,5948912.949],[562191.651,5948929.523],[562187.014,5948968.778],[562174.53,5948993.398],[562194.431,5949009.412],[562212.023,5949032.783],[562216.191,5949048.027],[562201.538,5949080.804],[562231.235,5949091.35],[562260.552,5949093.699],[562269.249,5949116.53],[562285.482,5949111.222],[562313.61,5949135.782],[562272.388,5949223.587],[562171.592,5949358.286],[562162.206,5949386.315],[562163.125,5949413.614],[562174.44,5949435.665],[562175.13,5949458.297],[562188.686,5949494.477],[562242.142,5949439.543],[562319.58,5949383.471],[562460.449,5949341.378],[562578.199,5949308.79],[562691.95,5949267.607],[562778.608,5949219.229],[562865.757,5949161.127],[563044.706,5949017.032],[563276.426,5948841.057],[563344.124,5948807.126],[563409.583,5948786.171],[563485.258,5948774.271],[563978.151,5948792.076],[564177.909,5948735.356],[564330.145,5948698.065],[564470.987,5948694.163],[564664.734,5948709.526],[564737.975,5948643.674],[564818.31,5948610.977],[564815.507,5948574.741],[565085.738,5948247.497],[565168.487,5948067.881],[565077.621,5948017.302],[564930.981,5948066.987],[564806.214,5948063.462],[564750.757,5948043.901],[564707.574,5948011.615],[564666.892,5947949.839],[564654.797,5947892.761],[564639.824,5947850.698],[564713.244,5947832.173],[564686.784,5947796.297],[564602.621,5947717.829],[564504.362,5947629.665],[564515.658,5947583.782],[564469.477,5947523.306],[564271.232,5947357.388],[564214.01,5947450.916],[564031.29,5947395.134],[564024.859,5947414.559],[563974.779,5947398.366],[563676.48,5947562.588],[563706.926,5947625.418],[563688.993,5947631.586],[563640.212,5947586.403],[563581.768,5947552.542],[563440.94,5947490.478],[563279.752,5947415.072],[563207.78,5947351.496],[563163.397,5947278.422],[563063.634,5947035.508],[562993.959,5946886.36],[562961.351,5946837.437],[562933.281,5946804.889],[562883.799,5946761.005],[562736.353,5946661.943],[562615.197,5946565.78],[562442.24,5946423.404],[562399.876,5946395.645],[562354.594,5946377.253],[562327.983,5946371.876]]]},"geometry_name":"geom","properties":{"id":15,"gti_key":"08","geo_key":"08","bezirk":"Garstedt Altes Dorf","stteil":"Garstedt","flae":"5.006","ew2020":4993,"ew2021":5021,"ew2022":5093,"geo_x":563454.8,"geo_y":5947933.2},"bbox":[561741.077,5946371.876,565168.487,5949494.477]},{"type":"Feature","id":"stadtbezirk.16","geometry":{"type":"Polygon","coordinates":[[[566012.857,5948542.498],[565884.65,5948415.529],[565714.716,5948184.391],[565555.613,5947965.347],[565559.061,5947831.583],[565463.644,5947466.971],[565391.442,5947189.365],[565485.162,5946873.925],[565452.549,5946682.162],[565523.641,5946259.238],[565500.4517,5945942.5268],[565230.178,5945630.445],[565234.896,5945531.849],[565256.18,5945198.036],[565269.303,5944938.049],[565161.841,5944837.097],[565134.35,5944850.096],[565107.616,5944847.418],[565087.963,5944861.536],[565040.391,5944874.363],[564927.103,5944904.072],[564925.756,5944936.113],[564857.211,5944934.201],[564814.251,5944935.267],[564772.879,5944915.395],[564717.228,5944893.032],[564686.035,5944876.2],[564642.215,5944901.096],[564637.189,5944926.204],[564505.834,5945009.193],[564358.283,5944812.158],[564289.741,5944871.525],[564045.106,5945056.537],[563948.678,5944982.225],[563818.392,5944861.567],[563780.229,5944881.331],[563753.35,5944906.682],[563743.186,5944945.907],[563732.722,5944958.021],[563713.916,5944958.444],[563694.987,5945003.362],[563675.412,5945018.46],[563652.752,5945021.034],[563517.035,5944966.32],[563419.022,5944988.15],[563323.209,5945061.05],[563107.342,5945097.7],[562983.745,5945178.974],[562897.238,5945062.574],[562808.459,5945093.567],[562787.72,5945085.061],[562633.568,5945161.737],[562477.646,5945316.184],[562504.359,5945318.76],[562391.462,5945413.579],[562315.172,5945473.689],[562275.857,5945524.951],[562323.139,5945525.689],[562337.893,5945528.467],[562299.79,5945690.236],[562269.662,5945790.989],[562236.676,5945887.852],[562226.82,5945957.236],[562294.405,5945965.76],[562324.034,5945985.081],[562338.409,5946009.362],[562362.63,5946016.179],[562381.553,5946011.529],[562406.443,5946013.098],[562415.62,5946020.805],[562363.54,5946223.946],[562334.401,5946334.269],[562327.983,5946371.876],[562354.594,5946377.253],[562399.876,5946395.645],[562442.24,5946423.404],[562615.197,5946565.78],[562736.353,5946661.943],[562883.799,5946761.005],[562933.281,5946804.889],[562961.351,5946837.437],[562993.959,5946886.36],[563063.634,5947035.508],[563163.397,5947278.422],[563207.78,5947351.496],[563279.752,5947415.072],[563440.94,5947490.478],[563581.768,5947552.542],[563640.212,5947586.403],[563688.993,5947631.586],[563706.926,5947625.418],[563676.48,5947562.588],[563974.779,5947398.366],[564024.859,5947414.559],[564031.29,5947395.134],[564214.01,5947450.916],[564271.232,5947357.388],[564469.477,5947523.306],[564515.658,5947583.782],[564504.362,5947629.665],[564602.621,5947717.829],[564686.784,5947796.297],[564713.244,5947832.173],[564639.824,5947850.698],[564654.797,5947892.761],[564666.892,5947949.839],[564707.574,5948011.615],[564750.757,5948043.901],[564806.214,5948063.462],[564930.981,5948066.987],[565077.621,5948017.302],[565168.487,5948067.881],[565085.738,5948247.497],[564815.507,5948574.741],[564818.31,5948610.977],[564962.08,5948575.493],[565245.869,5948512.812],[565596.938,5948561.789],[565787.667,5948583.978],[565799.762,5948573.782],[565841.247,5948607.569],[565916.966,5948655.884],[565939.513,5948662.347],[565977.097,5948617.763],[565994.589,5948585.475],[566012.857,5948542.498]]]},"geometry_name":"geom","properties":{"id":16,"gti_key":"09","geo_key":"09","bezirk":"Garstedt Süd","stteil":"Garstedt","flae":"7.831","ew2020":5869,"ew2021":5987,"ew2022":6167,"geo_x":564119.8,"geo_y":5946737.3},"bbox":[562226.82,5944812.158,566012.857,5948662.347]}],"totalFeatures":16,"numberMatched":16,"numberReturned":16,"timeStamp":"2025-03-06T11:47:21.751Z","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:EPSG::25832"}},"bbox":[561741.077,5944812.158,570817.811,5957211.727]}
\ No newline at end of file
diff --git a/README.md b/README.md
index 8506c94..abc5223 100644
--- a/README.md
+++ b/README.md
@@ -19,4 +19,5 @@ Example # | Name | Description | Input format | Output | Source
 15 | Police Stations map | Show a map of all police stations in Schleswig-Holstein | CSV | Scatterplot on map | https://opendata.schleswig-holstein.de/dataset/polizeidienststellen-2024-07-30
 16 | Bathing Waters map | Show a map of bathing waters in Schleswig-Holstein | CSV | Scatterplot on map | https://opendata.schleswig-holstein.de/dataset/badegewasser-stammdaten-aktuell
 17 | TLS car counting | Show the composition of cars driving over the TLS counting station over the span of the 14.08.2019 in either direction in a stacked area plot | CSV | Stacked area plot | https://opendata.schleswig-holstein.de/dataset/automatische-zahlstelle-kiel-west-2019
-18 | Monument Table | Show a Table of all Monuments in Rohlstorf | JSON | Table | https://opendata.schleswig-holstein.de/dataset/denkmalliste-kreis-segeberg-2025-03-03
\ No newline at end of file
+18 | Monument Table | Show a Table of all Monuments in Rohlstorf | JSON | Table | https://opendata.schleswig-holstein.de/dataset/denkmalliste-kreis-segeberg-2025-03-03
+19 | Sports and School Grounds | Show a map of Norderstedt and mark the sports and school grounds in it | GEOJSON | Static map | https://opendata.schleswig-holstein.de/dataset/bolz-oder-sportplatze-auf-schulen , https://opendata.schleswig-holstein.de/dataset/kleinraumige-gliederung-stadtbezirke
\ No newline at end of file
-- 
GitLab