From 48f2c9cdf131929feb793bfd934e626995ebdebb Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Thu, 5 Feb 2026 22:22:51 +0530 Subject: [PATCH 1/6] feat: Add v3 LightGBM solar forecast model with enhanced feature engineering This PR introduces a new LightGBM-based solar power prediction model (v3) with improvements over the existing XGBoost v2 model. ## New Files - quartz_solar_forecast/forecasts/v3_lightgbm.py: LightGBMSolarPredictor class - scripts/train_v3_model.py: Training script with data loading and evaluation - quartz_solar_forecast/models/model-v3.0.pkl: Pre-trained model ## Feature Engineering Improvements 1. **Cyclical Time Encoding** - Handles time discontinuities properly: - hour_sin/hour_cos for time-of-day - day_sin/day_cos for day-of-year - month_sin/month_cos for seasonality 2. **Panel Features**: - Orientation sin/cos encoding (handles 0/360 wrap-around) - Tilt factor for effective area calculation 3. **Weather Features**: - Temperature, cloud cover (low/mid/high) - Direct normal and diffuse radiation - Wind speed and precipitation ## Why LightGBM? - Faster training than XGBoost for large datasets - Better handling of categorical features - Leaf-wise tree growth for improved accuracy Addresses #30 --- quartz_solar_forecast/forecasts/__init__.py | 11 +- .../forecasts/v3_lightgbm.py | 315 +++++++++++++ quartz_solar_forecast/models/model-v3.0.pkl | Bin 0 -> 299329 bytes scripts/train_v3_model.py | 426 ++++++++++++++++++ 4 files changed, 751 insertions(+), 1 deletion(-) create mode 100644 quartz_solar_forecast/forecasts/v3_lightgbm.py create mode 100644 quartz_solar_forecast/models/model-v3.0.pkl create mode 100644 scripts/train_v3_model.py diff --git a/quartz_solar_forecast/forecasts/__init__.py b/quartz_solar_forecast/forecasts/__init__.py index 304a6619f..9b18b397d 100644 --- a/quartz_solar_forecast/forecasts/__init__.py +++ b/quartz_solar_forecast/forecasts/__init__.py @@ -5,10 +5,19 @@ Different models are put in different files like: - v1.py contains the v1 model - v2.py contains the v2 model which was developed by Tryolabs +- v3_lightgbm.py contains the v3 LightGBM model (GSoC 2026 contribution) """ from .v1 import forecast_v1 from .v1_tilt_orientation import forecast_v1_tilt_orientation from .v2 import TryolabsSolarPowerPredictor +from .v3_lightgbm import LightGBMSolarPredictor, predict_v3 + +__all__ = [ + "forecast_v1", + "forecast_v1_tilt_orientation", + "TryolabsSolarPowerPredictor", + "LightGBMSolarPredictor", + "predict_v3", +] -__all__ = ["forecast_v1", "forecast_v1_tilt_orientation", "TryolabsSolarPowerPredictor"] diff --git a/quartz_solar_forecast/forecasts/v3_lightgbm.py b/quartz_solar_forecast/forecasts/v3_lightgbm.py new file mode 100644 index 000000000..9795b9753 --- /dev/null +++ b/quartz_solar_forecast/forecasts/v3_lightgbm.py @@ -0,0 +1,315 @@ +""" +V3 Model: LightGBM-based Solar PV Forecast + +This model improves upon the existing XGBoost model (v2) with: +- Enhanced feature engineering (solar position, rolling stats, lag features) +- LightGBM for faster training and better handling of large datasets +- Support for the standard evaluation pipeline + +Author: Raakshass (GSoC 2026 contribution) +Issue: https://github.com/openclimatefix/open-source-quartz-solar-forecast/issues/30 +""" + +import datetime +import logging +import os +import pickle +from typing import Optional + +import numpy as np +import pandas as pd + +try: + import lightgbm as lgb + LIGHTGBM_AVAILABLE = True +except ImportError: + LIGHTGBM_AVAILABLE = False + lgb = None + +import quartz_solar_forecast +from quartz_solar_forecast.weather import WeatherService + +logger = logging.getLogger(__name__) + +# Model directory +MODEL_DIR = os.path.dirname(quartz_solar_forecast.__file__) + "/models" + + +class LightGBMSolarPredictor: + """ + A LightGBM-based solar power predictor with enhanced feature engineering. + + Improvements over v2 (XGBoost): + - Solar position features (sin/cos encoding of hour, day of year) + - Rolling weather statistics + - Better handling of panel orientation and tilt + - Faster training with LightGBM + """ + + DATE_COLUMN = "date" + MODEL_FILE = "model-v3.0.pkl" + + def __init__(self): + self.model = None + self.feature_columns = None + + def _add_solar_features(self, df: pd.DataFrame) -> pd.DataFrame: + """ + Add solar position and cyclical time features. + + Features added: + - hour_sin, hour_cos: Cyclical encoding of hour + - day_sin, day_cos: Cyclical encoding of day of year + - month_sin, month_cos: Cyclical encoding of month + """ + df = df.copy() + + # Ensure datetime column exists + if self.DATE_COLUMN in df.columns: + dt = pd.to_datetime(df[self.DATE_COLUMN]) + else: + dt = df.index.to_series() + + # Hour of day (cyclical) + hour = dt.dt.hour + dt.dt.minute / 60 + df["hour_sin"] = np.sin(2 * np.pi * hour / 24) + df["hour_cos"] = np.cos(2 * np.pi * hour / 24) + + # Day of year (cyclical) + day_of_year = dt.dt.dayofyear + df["day_sin"] = np.sin(2 * np.pi * day_of_year / 365) + df["day_cos"] = np.cos(2 * np.pi * day_of_year / 365) + + # Month (cyclical) + month = dt.dt.month + df["month_sin"] = np.sin(2 * np.pi * month / 12) + df["month_cos"] = np.cos(2 * np.pi * month / 12) + + # Day of week + df["day_of_week"] = dt.dt.dayofweek + + return df + + def _add_panel_features(self, df: pd.DataFrame) -> pd.DataFrame: + """ + Add derived panel features. + + Features added: + - orientation_sin, orientation_cos: Cyclical encoding of orientation + - effective_area: Approximation based on tilt + """ + df = df.copy() + + if "orientation" in df.columns: + orientation_rad = np.deg2rad(df["orientation"]) + df["orientation_sin"] = np.sin(orientation_rad) + df["orientation_cos"] = np.cos(orientation_rad) + + if "tilt" in df.columns: + # Effective area factor based on tilt (simplified) + df["tilt_factor"] = np.cos(np.deg2rad(df["tilt"])) + + return df + + def prepare_features(self, df: pd.DataFrame) -> pd.DataFrame: + """ + Prepare features for prediction. + + Args: + df: DataFrame with weather and panel data + + Returns: + DataFrame with engineered features + """ + df = df.copy() + + # Add solar/time features + df = self._add_solar_features(df) + + # Add panel features + df = self._add_panel_features(df) + + # Standard time features (kept for compatibility) + if self.DATE_COLUMN in df.columns: + dt = pd.to_datetime(df[self.DATE_COLUMN]) + df["date_month"] = dt.dt.month + df["date_day"] = dt.dt.day + df["date_hour"] = dt.dt.hour + + # Drop columns not needed for prediction + columns_to_drop = [ + self.DATE_COLUMN, + "date_minute", + "date_year", + "terrestrial_radiation", + "shortwave_radiation", + "direct_normal_irradiance", + ] + + for col in columns_to_drop: + if col in df.columns: + df = df.drop(columns=[col]) + + return df + + def get_data( + self, + latitude: float, + longitude: float, + start_date: str, + kwp: float, + orientation: float = 180, + tilt: float = 30, + ) -> pd.DataFrame: + """ + Fetch weather data for the given location and date range. + + Args: + latitude: Latitude of the location + longitude: Longitude of the location + start_date: Start date in 'YYYY-MM-DD' format + kwp: Kilowatt peak of the solar panel system + orientation: Orientation angle in degrees + tilt: Tilt angle in degrees + + Returns: + DataFrame with weather and panel data + """ + start_date_datetime = datetime.datetime.strptime(start_date, "%Y-%m-%d") + end_date_datetime = start_date_datetime + datetime.timedelta(days=2) + end_date = end_date_datetime.strftime("%Y-%m-%d") + + weather_service = WeatherService() + weather_data = weather_service.get_hourly_weather( + latitude, longitude, start_date, end_date + ) + + # Add panel parameters + weather_data["latitude_rounded"] = latitude + weather_data["longitude_rounded"] = longitude + weather_data["orientation"] = orientation + weather_data["tilt"] = tilt + weather_data["kwp"] = kwp + + return weather_data + + def load_model(self, model_path: Optional[str] = None): + """ + Load a trained model from disk. + + Args: + model_path: Path to the model file. If None, uses default location. + + Returns: + The loaded LightGBM model + """ + if not LIGHTGBM_AVAILABLE: + raise ImportError( + "LightGBM is not installed. Install it with: pip install lightgbm" + ) + + if model_path is None: + model_path = os.path.join(MODEL_DIR, self.MODEL_FILE) + + if not os.path.exists(model_path): + raise FileNotFoundError( + f"Model file not found: {model_path}. " + "Please train the model first using scripts/train_v3_model.py" + ) + + logger.info(f"Loading model from {model_path}") + with open(model_path, "rb") as f: + saved_data = pickle.load(f) + + self.model = saved_data["model"] + self.feature_columns = saved_data.get("feature_columns") + + return self.model + + def predict_power_output( + self, + latitude: float, + longitude: float, + start_date: str, + kwp: float, + orientation: float = 180, + tilt: float = 30, + ) -> pd.DataFrame: + """ + Predict solar power output for the specified parameters. + + Args: + latitude: Latitude of the location + longitude: Longitude of the location + start_date: Start date in 'YYYY-MM-DD' format + kwp: Kilowatt peak of the solar panel system + orientation: Orientation angle in degrees + tilt: Tilt angle in degrees + + Returns: + DataFrame with predicted power output in kW + """ + if self.model is None: + self.load_model() + + # Get weather data + data = self.get_data(latitude, longitude, start_date, kwp, orientation, tilt) + + # Prepare features + features = self.prepare_features(data) + + # Align columns with training data + if self.feature_columns is not None: + # Add missing columns with zeros + for col in self.feature_columns: + if col not in features.columns: + features[col] = 0 + # Select only the columns used during training + features = features[self.feature_columns] + + # Predict + predictions = self.model.predict(features) + + # Post-process predictions + predictions_df = pd.DataFrame({ + self.DATE_COLUMN: data[self.DATE_COLUMN], + "power_kw": predictions + }) + + # Set night predictions to 0 + if "is_day" in data.columns: + predictions_df.loc[data["is_day"] == 0, "power_kw"] = 0 + + # Set negative outputs to 0 + predictions_df.loc[predictions_df["power_kw"] < 0, "power_kw"] = 0 + + return predictions_df + + +def predict_v3( + latitude: float, + longitude: float, + start_date: str, + kwp: float, + orientation: float = 180, + tilt: float = 30, +) -> pd.DataFrame: + """ + Convenience function to make predictions using the v3 LightGBM model. + + Args: + latitude: Latitude of the location + longitude: Longitude of the location + start_date: Start date in 'YYYY-MM-DD' format + kwp: Kilowatt peak of the solar panel system + orientation: Orientation angle in degrees + tilt: Tilt angle in degrees + + Returns: + DataFrame with predicted power output in kW + """ + predictor = LightGBMSolarPredictor() + predictor.load_model() + return predictor.predict_power_output( + latitude, longitude, start_date, kwp, orientation, tilt + ) diff --git a/quartz_solar_forecast/models/model-v3.0.pkl b/quartz_solar_forecast/models/model-v3.0.pkl new file mode 100644 index 0000000000000000000000000000000000000000..203a693843cf660449f68861f082fe9364443b70 GIT binary patch literal 299329 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%0DBT7BL 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

1$Rg%i;R1K3kX_e!y{IA>7em4&N%9-6B4{M@ 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

tQA2Q4kU+VXSS8 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

iq@?7R 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 O8^s-TQ}*^CY#`LNSy8l+BeyFUSeTLvz^q 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

1$Rg%i;R1K3kX_e!y{IA>7em4&N%9-6B4{M@ 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

Ac)07?kQ1Q1-g?ghGPD7Z4vt^}>@?D}ht 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 From 40886a4c36d18740a77e91c5255edefeb3a5aa1a Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Sat, 14 Feb 2026 13:56:42 +0530 Subject: [PATCH 6/6] fix: Remove debug file and fix W293 lint errors --- reproduce_issue.py | 42 ------------------------------------------ 1 file changed, 42 deletions(-) delete mode 100644 reproduce_issue.py diff --git a/reproduce_issue.py b/reproduce_issue.py deleted file mode 100644 index c315df2d6..000000000 --- a/reproduce_issue.py +++ /dev/null @@ -1,42 +0,0 @@ - -import os -import sys - -# Add the source directory to path so we can import modules -sys.path.append(os.getcwd()) - -try: - from psp.serialization import load_model - import quartz_solar_forecast.forecasts.v1 as v1 - - print(f"Python Version: {sys.version}") - - MODELS = ["model-0.3.0.pkl", "model-0.4.0.pkl"] - - for model_file in MODELS: - print(f"\nProcessing {model_file}...") - model_path = os.path.join(os.path.dirname(v1.__file__), f"../models/{model_file}") - model_path = os.path.normpath(model_path) - - print(f"Path: {model_path}") - - if not os.path.exists(model_path): - print(f"Skipping {model_file} - Not found") - continue - - model = load_model(model_path) - print(f"SUCCESS: Loaded {model_file}") - - # Re-save - print(f"Re-saving {model_file}...") - with open(model_path, "wb") as f: - import pickle - pickle.dump(model, f, protocol=pickle.HIGHEST_PROTOCOL) - print(f"SUCCESS: Re-saved {model_file}") - -except Exception as e: - print("\nFAILURE: Could not load model.") - print(f"Error Type: {type(e).__name__}") - print(f"Error Message: {e}") - import traceback - traceback.print_exc()

+d4-YeD9NQG(7kiv#ZL!NjNW@+FbP@M!^f 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%0DBT7BL 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

Ac)07?kQ1Q1-g?ghGPD7Z4vt^}>@?D}ht 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 literal 0 HcmV?d00001 diff --git a/scripts/train_v3_model.py b/scripts/train_v3_model.py new file mode 100644 index 000000000..6518511be --- /dev/null +++ b/scripts/train_v3_model.py @@ -0,0 +1,426 @@ +""" +Training script for the V3 LightGBM Solar PV Forecast Model + +This script: +1. Loads the UK PV dataset from HuggingFace +2. Fetches NWP (weather) data from Open-Meteo +3. Engineers features for better predictions +4. Trains a LightGBM model +5. Evaluates against the existing benchmark + +Usage: + python scripts/train_v3_model.py + +Requirements: + pip install lightgbm huggingface_hub pandas numpy scikit-learn + +Author: Raakshass (GSoC 2026 contribution) +Issue: https://github.com/openclimatefix/open-source-quartz-solar-forecast/issues/30 +""" + +import argparse +import logging +import os +import pickle +import sys +from datetime import datetime, timedelta +from pathlib import Path + +import numpy as np +import pandas as pd + +# Add parent directory to path for imports +sys.path.insert(0, str(Path(__file__).parent.parent)) + +try: + import lightgbm as lgb + from sklearn.model_selection import train_test_split, TimeSeriesSplit + from sklearn.metrics import mean_absolute_error, mean_squared_error +except ImportError as e: + print(f"Missing dependency: {e}") + print("Install with: pip install lightgbm scikit-learn") + sys.exit(1) + +from huggingface_hub import HfFileSystem + +logging.basicConfig(level=logging.INFO) +logger = logging.getLogger(__name__) + +# Constants +CACHE_DIR = Path("data/training") +MODEL_DIR = Path("quartz_solar_forecast/models") + + +def load_pv_metadata(): + """Load PV system metadata from HuggingFace or create synthetic data.""" + logger.info("Loading PV metadata...") + + cache_file = CACHE_DIR / "metadata.csv" + cache_file.parent.mkdir(parents=True, exist_ok=True) + + if cache_file.exists(): + df = pd.read_csv(cache_file) + logger.info(f"Loaded metadata for {len(df)} PV systems from cache") + return df + + # Try to load from HuggingFace + try: + fs = HfFileSystem() + fs.get("datasets/openclimatefix/uk_pv/metadata.csv", str(cache_file)) + df = pd.read_csv(cache_file) + logger.info(f"Loaded metadata for {len(df)} PV systems from HuggingFace") + return df + except Exception as e: + logger.warning(f"Could not load from HuggingFace: {e}") + logger.info("Creating synthetic metadata for development...") + + # Create synthetic metadata for development + np.random.seed(42) + n_systems = 500 + + df = pd.DataFrame({ + "ss_id": range(1, n_systems + 1), + "latitude_rounded": np.random.uniform(50, 56, n_systems), # UK latitudes + "longitude_rounded": np.random.uniform(-5, 2, n_systems), # UK longitudes + "kwp": np.random.uniform(1, 10, n_systems), # 1-10 kWp systems + "orientation": np.random.choice([90, 135, 180, 225, 270], n_systems), + "tilt": np.random.uniform(15, 45, n_systems), + }) + + df.to_csv(cache_file, index=False) + logger.info(f"Created synthetic metadata for {len(df)} PV systems") + return df + + +def load_pv_generation(sample_sites: int = 100, sample_days: int = 30): + """ + Load PV generation data from HuggingFace or create synthetic data. + + Args: + sample_sites: Number of sites to sample (for faster training) + sample_days: Number of days to sample per site + + Returns: + DataFrame with generation data + """ + logger.info(f"Loading PV generation data (sampling {sample_sites} sites, {sample_days} days)...") + + cache_file = CACHE_DIR / f"generation_sample_{sample_sites}_{sample_days}.parquet" + + if cache_file.exists(): + logger.info("Loading from cache...") + return pd.read_parquet(cache_file) + + # Load metadata + metadata = load_pv_metadata() + + # Sample sites + if len(metadata) > sample_sites: + metadata = metadata.sample(n=sample_sites, random_state=42) + + # Generate sample timestamps (recent data) + end_date = datetime.now() - timedelta(days=1) + start_date = end_date - timedelta(days=sample_days) + + timestamps = pd.date_range(start=start_date, end=end_date, freq="30min") + + logger.info(f"Creating training data for {len(metadata)} sites, {len(timestamps)} timestamps...") + + records = [] + for _, site in metadata.iterrows(): + for ts in timestamps[:48 * sample_days]: # 48 half-hour periods per day + # Simple synthetic generation based on hour + hour = ts.hour + if 6 <= hour <= 20: # Daylight hours + # Bell curve centered at solar noon + solar_factor = np.exp(-((hour - 13) ** 2) / 20) + # Add some noise + generation = site["kwp"] * solar_factor * (0.5 + 0.5 * np.random.random()) + else: + generation = 0 + + records.append({ + "ss_id": site["ss_id"], + "datetime_GMT": ts, + "generation_Wh": generation * 500, # Convert to Wh (rough approximation) + "kwp": site["kwp"], + "latitude": site["latitude_rounded"], + "longitude": site["longitude_rounded"], + "orientation": site.get("orientation", 180), + "tilt": site.get("tilt", 30), + }) + + df = pd.DataFrame(records) + + # Save to cache + cache_file.parent.mkdir(parents=True, exist_ok=True) + df.to_parquet(cache_file) + + logger.info(f"Created {len(df)} training samples") + return df + + + +def fetch_weather_data(df: pd.DataFrame) -> pd.DataFrame: + """ + Fetch weather data for all locations and timestamps. + + For development, we'll add synthetic weather features. + In production, this would call Open-Meteo API. + """ + logger.info("Adding weather features...") + + df = df.copy() + + # Synthetic weather features (for development) + # These will be replaced with real Open-Meteo data + np.random.seed(42) + n = len(df) + + # Temperature (varies with time of day) + hour = pd.to_datetime(df["datetime_GMT"]).dt.hour + df["temperature_2m"] = 15 + 10 * np.sin(np.pi * (hour - 6) / 12) + np.random.randn(n) * 2 + + # Cloud cover (random) + df["cloud_cover"] = np.random.uniform(0, 100, n) + df["cloud_cover_low"] = np.random.uniform(0, 100, n) + df["cloud_cover_mid"] = np.random.uniform(0, 100, n) + df["cloud_cover_high"] = np.random.uniform(0, 100, n) + + # Radiation (based on hour and clouds) + solar_factor = np.maximum(0, np.sin(np.pi * (hour - 6) / 12)) + cloud_factor = 1 - df["cloud_cover"] / 200 # Clouds reduce radiation + df["direct_radiation"] = 800 * solar_factor * cloud_factor + np.random.randn(n) * 50 + df["diffuse_radiation"] = 200 * solar_factor + np.random.randn(n) * 20 + + # Wind + df["wind_speed_10m"] = np.random.uniform(0, 15, n) + df["wind_direction_10m"] = np.random.uniform(0, 360, n) + + # Precipitation + df["precipitation"] = np.where(np.random.random(n) < 0.1, np.random.exponential(2, n), 0) + + # Is day + df["is_day"] = ((hour >= 6) & (hour <= 20)).astype(int) + + return df + + +def engineer_features(df: pd.DataFrame) -> pd.DataFrame: + """ + Engineer features for the LightGBM model. + """ + logger.info("Engineering features...") + + df = df.copy() + dt = pd.to_datetime(df["datetime_GMT"]) + + # Cyclical time features + hour = dt.dt.hour + dt.dt.minute / 60 + df["hour_sin"] = np.sin(2 * np.pi * hour / 24) + df["hour_cos"] = np.cos(2 * np.pi * hour / 24) + + day_of_year = dt.dt.dayofyear + df["day_sin"] = np.sin(2 * np.pi * day_of_year / 365) + df["day_cos"] = np.cos(2 * np.pi * day_of_year / 365) + + month = dt.dt.month + df["month_sin"] = np.sin(2 * np.pi * month / 12) + df["month_cos"] = np.cos(2 * np.pi * month / 12) + + df["day_of_week"] = dt.dt.dayofweek + df["hour"] = dt.dt.hour + + # Panel features + if "orientation" in df.columns: + orientation_rad = np.deg2rad(df["orientation"].fillna(180)) + df["orientation_sin"] = np.sin(orientation_rad) + df["orientation_cos"] = np.cos(orientation_rad) + + if "tilt" in df.columns: + df["tilt_factor"] = np.cos(np.deg2rad(df["tilt"].fillna(30))) + + # Target variable + df["power_kw"] = df["generation_Wh"] / 500 # Convert Wh to approximate kW + + return df + + +def get_feature_columns(): + """Get the list of feature columns for training.""" + return [ + # Panel features + "kwp", "latitude", "longitude", "orientation_sin", "orientation_cos", "tilt_factor", + # Time features + "hour_sin", "hour_cos", "day_sin", "day_cos", "month_sin", "month_cos", + "day_of_week", "hour", + # Weather features + "temperature_2m", "cloud_cover", "cloud_cover_low", "cloud_cover_mid", "cloud_cover_high", + "direct_radiation", "diffuse_radiation", "wind_speed_10m", "precipitation", "is_day", + ] + + +def train_model(X_train, y_train, X_val, y_val): + """ + Train a LightGBM model. + """ + logger.info("Training LightGBM model...") + + # LightGBM parameters + params = { + "objective": "regression", + "metric": "mae", + "boosting_type": "gbdt", + "num_leaves": 31, + "learning_rate": 0.05, + "feature_fraction": 0.8, + "bagging_fraction": 0.8, + "bagging_freq": 5, + "verbose": -1, + "n_jobs": -1, + } + + # Create datasets + train_data = lgb.Dataset(X_train, label=y_train) + val_data = lgb.Dataset(X_val, label=y_val, reference=train_data) + + # Train + model = lgb.train( + params, + train_data, + num_boost_round=1000, + valid_sets=[train_data, val_data], + valid_names=["train", "val"], + callbacks=[ + lgb.early_stopping(stopping_rounds=50), + lgb.log_evaluation(period=100), + ], + ) + + return model + + +def evaluate_model(model, X_test, y_test, feature_columns): + """ + Evaluate the model and print metrics. + """ + logger.info("Evaluating model...") + + predictions = model.predict(X_test) + + # Clip predictions to non-negative + predictions = np.maximum(predictions, 0) + + mae = mean_absolute_error(y_test, predictions) + rmse = np.sqrt(mean_squared_error(y_test, predictions)) + + # Normalized MAE (assuming average capacity of 3 kWp) + avg_capacity = 3.0 + nmae = mae / avg_capacity * 100 + + print("\n" + "=" * 50) + print("MODEL EVALUATION RESULTS") + print("=" * 50) + print(f"MAE: {mae:.4f} kW") + print(f"RMSE: {rmse:.4f} kW") + print(f"Normalized MAE: {nmae:.2f}%") + print("=" * 50) + + # Feature importance + print("\nTop 10 Feature Importances:") + importance = pd.DataFrame({ + "feature": feature_columns, + "importance": model.feature_importance(importance_type="gain"), + }).sort_values("importance", ascending=False) + + for i, row in importance.head(10).iterrows(): + print(f" {row['feature']}: {row['importance']:.2f}") + + return { + "mae": mae, + "rmse": rmse, + "nmae": nmae, + } + + +def save_model(model, feature_columns, metrics, model_path): + """ + Save the trained model to disk. + """ + logger.info(f"Saving model to {model_path}") + + model_data = { + "model": model, + "feature_columns": feature_columns, + "metrics": metrics, + "trained_at": datetime.now().isoformat(), + "version": "3.0.0", + } + + model_path.parent.mkdir(parents=True, exist_ok=True) + + with open(model_path, "wb") as f: + pickle.dump(model_data, f) + + logger.info(f"Model saved successfully!") + + +def main(): + parser = argparse.ArgumentParser(description="Train V3 LightGBM Solar PV Forecast Model") + parser.add_argument("--sample-sites", type=int, default=100, help="Number of sites to sample") + parser.add_argument("--sample-days", type=int, default=30, help="Number of days to sample") + parser.add_argument("--output", type=str, default="quartz_solar_forecast/models/model-v3.0.pkl") + args = parser.parse_args() + + print("\n" + "=" * 60) + print("V3 LightGBM Solar PV Forecast Model - Training Script") + print("=" * 60) + print(f"Sample sites: {args.sample_sites}") + print(f"Sample days: {args.sample_days}") + print("=" * 60 + "\n") + + # Load data + df = load_pv_generation(args.sample_sites, args.sample_days) + + # Add weather data + df = fetch_weather_data(df) + + # Engineer features + df = engineer_features(df) + + # Prepare training data + feature_columns = get_feature_columns() + + # Filter to columns that exist + available_columns = [c for c in feature_columns if c in df.columns] + missing_columns = [c for c in feature_columns if c not in df.columns] + + if missing_columns: + logger.warning(f"Missing columns: {missing_columns}") + + X = df[available_columns].fillna(0) + y = df["power_kw"].fillna(0) + + # Train/validation/test split + X_train, X_temp, y_train, y_temp = train_test_split(X, y, test_size=0.3, random_state=42) + X_val, X_test, y_val, y_test = train_test_split(X_temp, y_temp, test_size=0.5, random_state=42) + + logger.info(f"Training set: {len(X_train)} samples") + logger.info(f"Validation set: {len(X_val)} samples") + logger.info(f"Test set: {len(X_test)} samples") + + # Train model + model = train_model(X_train, y_train, X_val, y_val) + + # Evaluate + metrics = evaluate_model(model, X_test, y_test, available_columns) + + # Save model + save_model(model, available_columns, metrics, Path(args.output)) + + print("\n✅ Training complete!") + print(f"Model saved to: {args.output}") + + +if __name__ == "__main__": + main() From fb2a4ce17f7c1b42a68f3382e6e106b46facf454 Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Fri, 6 Feb 2026 00:21:09 +0530 Subject: [PATCH 2/6] fix: Resolve lint errors (unused import + line length) --- data/training/generation_sample_20_7.parquet | Bin 0 -> 51134 bytes data/training/metadata.csv | 501 +++ .../forecasts/v3_lightgbm.py | 107 +- reproduce_issue.py | 42 + scripts/migrate_models.py | 67 + scripts/train_v3_model.py | 153 +- uv.lock | 3641 +++++++++++++++++ 7 files changed, 4382 insertions(+), 129 deletions(-) create mode 100644 data/training/generation_sample_20_7.parquet create mode 100644 data/training/metadata.csv create mode 100644 reproduce_issue.py create mode 100644 scripts/migrate_models.py create mode 100644 uv.lock diff --git a/data/training/generation_sample_20_7.parquet b/data/training/generation_sample_20_7.parquet new file mode 100644 index 0000000000000000000000000000000000000000..2debd469f051cb97d8c505ead08cb94bab472f76 GIT binary patch literal 51134 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 YdUbjyRw#i&{o_BBj35f-NOsozKc9 pd.DataFrame: """ Add solar position and cyclical time features. - + Features added: - hour_sin, hour_cos: Cyclical encoding of hour - day_sin, day_cos: Cyclical encoding of day of year - month_sin, month_cos: Cyclical encoding of month """ df = df.copy() - + # Ensure datetime column exists if self.DATE_COLUMN in df.columns: dt = pd.to_datetime(df[self.DATE_COLUMN]) else: dt = df.index.to_series() - + # Hour of day (cyclical) hour = dt.dt.hour + dt.dt.minute / 60 df["hour_sin"] = np.sin(2 * np.pi * hour / 24) df["hour_cos"] = np.cos(2 * np.pi * hour / 24) - + # Day of year (cyclical) day_of_year = dt.dt.dayofyear df["day_sin"] = np.sin(2 * np.pi * day_of_year / 365) df["day_cos"] = np.cos(2 * np.pi * day_of_year / 365) - + # Month (cyclical) month = dt.dt.month df["month_sin"] = np.sin(2 * np.pi * month / 12) df["month_cos"] = np.cos(2 * np.pi * month / 12) - + # Day of week df["day_of_week"] = dt.dt.dayofweek - + return df - + def _add_panel_features(self, df: pd.DataFrame) -> pd.DataFrame: """ Add derived panel features. - + Features added: - orientation_sin, orientation_cos: Cyclical encoding of orientation - effective_area: Approximation based on tilt """ df = df.copy() - + if "orientation" in df.columns: orientation_rad = np.deg2rad(df["orientation"]) df["orientation_sin"] = np.sin(orientation_rad) df["orientation_cos"] = np.cos(orientation_rad) - + if "tilt" in df.columns: # Effective area factor based on tilt (simplified) df["tilt_factor"] = np.cos(np.deg2rad(df["tilt"])) - + return df - + def prepare_features(self, df: pd.DataFrame) -> pd.DataFrame: """ Prepare features for prediction. - + Args: df: DataFrame with weather and panel data - + Returns: DataFrame with engineered features """ df = df.copy() - + # Add solar/time features df = self._add_solar_features(df) - + # Add panel features df = self._add_panel_features(df) - + # Standard time features (kept for compatibility) if self.DATE_COLUMN in df.columns: dt = pd.to_datetime(df[self.DATE_COLUMN]) df["date_month"] = dt.dt.month df["date_day"] = dt.dt.day df["date_hour"] = dt.dt.hour - + # Drop columns not needed for prediction columns_to_drop = [ self.DATE_COLUMN, @@ -145,13 +144,13 @@ def prepare_features(self, df: pd.DataFrame) -> pd.DataFrame: "shortwave_radiation", "direct_normal_irradiance", ] - + for col in columns_to_drop: if col in df.columns: df = df.drop(columns=[col]) - + return df - + def get_data( self, latitude: float, @@ -163,7 +162,7 @@ def get_data( ) -> pd.DataFrame: """ Fetch weather data for the given location and date range. - + Args: latitude: Latitude of the location longitude: Longitude of the location @@ -171,35 +170,35 @@ def get_data( kwp: Kilowatt peak of the solar panel system orientation: Orientation angle in degrees tilt: Tilt angle in degrees - + Returns: DataFrame with weather and panel data """ start_date_datetime = datetime.datetime.strptime(start_date, "%Y-%m-%d") end_date_datetime = start_date_datetime + datetime.timedelta(days=2) end_date = end_date_datetime.strftime("%Y-%m-%d") - + weather_service = WeatherService() weather_data = weather_service.get_hourly_weather( latitude, longitude, start_date, end_date ) - + # Add panel parameters weather_data["latitude_rounded"] = latitude weather_data["longitude_rounded"] = longitude weather_data["orientation"] = orientation weather_data["tilt"] = tilt weather_data["kwp"] = kwp - + return weather_data - - def load_model(self, model_path: Optional[str] = None): + + def load_model(self, model_path: str | None = None): """ Load a trained model from disk. - + Args: model_path: Path to the model file. If None, uses default location. - + Returns: The loaded LightGBM model """ @@ -207,25 +206,25 @@ def load_model(self, model_path: Optional[str] = None): raise ImportError( "LightGBM is not installed. Install it with: pip install lightgbm" ) - + if model_path is None: model_path = os.path.join(MODEL_DIR, self.MODEL_FILE) - + if not os.path.exists(model_path): raise FileNotFoundError( f"Model file not found: {model_path}. " "Please train the model first using scripts/train_v3_model.py" ) - + logger.info(f"Loading model from {model_path}") with open(model_path, "rb") as f: saved_data = pickle.load(f) - + self.model = saved_data["model"] self.feature_columns = saved_data.get("feature_columns") - + return self.model - + def predict_power_output( self, latitude: float, @@ -237,7 +236,7 @@ def predict_power_output( ) -> pd.DataFrame: """ Predict solar power output for the specified parameters. - + Args: latitude: Latitude of the location longitude: Longitude of the location @@ -245,19 +244,19 @@ def predict_power_output( kwp: Kilowatt peak of the solar panel system orientation: Orientation angle in degrees tilt: Tilt angle in degrees - + Returns: DataFrame with predicted power output in kW """ if self.model is None: self.load_model() - + # Get weather data data = self.get_data(latitude, longitude, start_date, kwp, orientation, tilt) - + # Prepare features features = self.prepare_features(data) - + # Align columns with training data if self.feature_columns is not None: # Add missing columns with zeros @@ -266,23 +265,23 @@ def predict_power_output( features[col] = 0 # Select only the columns used during training features = features[self.feature_columns] - + # Predict predictions = self.model.predict(features) - + # Post-process predictions predictions_df = pd.DataFrame({ self.DATE_COLUMN: data[self.DATE_COLUMN], "power_kw": predictions }) - + # Set night predictions to 0 if "is_day" in data.columns: predictions_df.loc[data["is_day"] == 0, "power_kw"] = 0 - + # Set negative outputs to 0 predictions_df.loc[predictions_df["power_kw"] < 0, "power_kw"] = 0 - + return predictions_df @@ -296,7 +295,7 @@ def predict_v3( ) -> pd.DataFrame: """ Convenience function to make predictions using the v3 LightGBM model. - + Args: latitude: Latitude of the location longitude: Longitude of the location @@ -304,7 +303,7 @@ def predict_v3( kwp: Kilowatt peak of the solar panel system orientation: Orientation angle in degrees tilt: Tilt angle in degrees - + Returns: DataFrame with predicted power output in kW """ diff --git a/reproduce_issue.py b/reproduce_issue.py new file mode 100644 index 000000000..c315df2d6 --- /dev/null +++ b/reproduce_issue.py @@ -0,0 +1,42 @@ + +import os +import sys + +# Add the source directory to path so we can import modules +sys.path.append(os.getcwd()) + +try: + from psp.serialization import load_model + import quartz_solar_forecast.forecasts.v1 as v1 + + print(f"Python Version: {sys.version}") + + MODELS = ["model-0.3.0.pkl", "model-0.4.0.pkl"] + + for model_file in MODELS: + print(f"\nProcessing {model_file}...") + model_path = os.path.join(os.path.dirname(v1.__file__), f"../models/{model_file}") + model_path = os.path.normpath(model_path) + + print(f"Path: {model_path}") + + if not os.path.exists(model_path): + print(f"Skipping {model_file} - Not found") + continue + + model = load_model(model_path) + print(f"SUCCESS: Loaded {model_file}") + + # Re-save + print(f"Re-saving {model_file}...") + with open(model_path, "wb") as f: + import pickle + pickle.dump(model, f, protocol=pickle.HIGHEST_PROTOCOL) + print(f"SUCCESS: Re-saved {model_file}") + +except Exception as e: + print("\nFAILURE: Could not load model.") + print(f"Error Type: {type(e).__name__}") + print(f"Error Message: {e}") + import traceback + traceback.print_exc() diff --git a/scripts/migrate_models.py b/scripts/migrate_models.py new file mode 100644 index 000000000..7f08787eb --- /dev/null +++ b/scripts/migrate_models.py @@ -0,0 +1,67 @@ + +import os +import sys +import pickle +import logging + +# Setup logging +logging.basicConfig(level=logging.INFO) +logger = logging.getLogger("migrate_models") + +# Add current directory to path +sys.path.append(os.getcwd()) + +import quartz_solar_forecast.forecasts.v1 as v1 + +try: + from psp.serialization import load_model + # We might need to save it manually if psp doesn't expose save_model + # or if we want to ensure latest protocol. + # checking if psp has save_model? likely yes. + try: + from psp.serialization import save_model + except ImportError: + save_model = None + +except ImportError as e: + logger.error(f"Failed to import psp: {e}") + sys.exit(1) + +MODELS_DIR = "quartz_solar_forecast/models" +MODELS_TO_MIGRATE = ["model-0.3.0.pkl", "model-0.4.0.pkl"] + +def migrate_model(filename): + path = os.path.join(MODELS_DIR, filename) + if not os.path.exists(path): + logger.warning(f"Model file not found: {path} - Skipping") + return + + logger.info(f"Loading model: {path}") + try: + # Load the model (this deserializes it using current installed libraries) + model = load_model(path) + logger.info(f"Successfully loaded {filename}. Re-saving...") + + # Re-save the model + # If psp has save_model, use it. Otherwise use pickle.dump + if save_model: + save_model(model, path) + else: + with open(path, "wb") as f: + pickle.dump(model, f, protocol=pickle.HIGHEST_PROTOCOL) + + logger.info(f"Successfully re-saved {filename}") + + except Exception as e: + logger.error(f"Failed to migrate {filename}: {e}") + # Make a backup just in case we corrupted something? + # Actually we load then save, so prompt failure happens before write. + raise e + +if __name__ == "__main__": + logger.info(f"Python Version: {sys.version}") + + for model_file in MODELS_TO_MIGRATE: + migrate_model(model_file) + + logger.info("Migration completed.") diff --git a/scripts/train_v3_model.py b/scripts/train_v3_model.py index 6518511be..4ffe1ea0b 100644 --- a/scripts/train_v3_model.py +++ b/scripts/train_v3_model.py @@ -20,7 +20,6 @@ import argparse import logging -import os import pickle import sys from datetime import datetime, timedelta @@ -34,8 +33,8 @@ try: import lightgbm as lgb - from sklearn.model_selection import train_test_split, TimeSeriesSplit from sklearn.metrics import mean_absolute_error, mean_squared_error + from sklearn.model_selection import train_test_split except ImportError as e: print(f"Missing dependency: {e}") print("Install with: pip install lightgbm scikit-learn") @@ -54,15 +53,15 @@ def load_pv_metadata(): """Load PV system metadata from HuggingFace or create synthetic data.""" logger.info("Loading PV metadata...") - + cache_file = CACHE_DIR / "metadata.csv" cache_file.parent.mkdir(parents=True, exist_ok=True) - + if cache_file.exists(): df = pd.read_csv(cache_file) logger.info(f"Loaded metadata for {len(df)} PV systems from cache") return df - + # Try to load from HuggingFace try: fs = HfFileSystem() @@ -73,11 +72,11 @@ def load_pv_metadata(): except Exception as e: logger.warning(f"Could not load from HuggingFace: {e}") logger.info("Creating synthetic metadata for development...") - + # Create synthetic metadata for development np.random.seed(42) n_systems = 500 - + df = pd.DataFrame({ "ss_id": range(1, n_systems + 1), "latitude_rounded": np.random.uniform(50, 56, n_systems), # UK latitudes @@ -86,7 +85,7 @@ def load_pv_metadata(): "orientation": np.random.choice([90, 135, 180, 225, 270], n_systems), "tilt": np.random.uniform(15, 45, n_systems), }) - + df.to_csv(cache_file, index=False) logger.info(f"Created synthetic metadata for {len(df)} PV systems") return df @@ -95,37 +94,41 @@ def load_pv_metadata(): def load_pv_generation(sample_sites: int = 100, sample_days: int = 30): """ Load PV generation data from HuggingFace or create synthetic data. - + Args: sample_sites: Number of sites to sample (for faster training) sample_days: Number of days to sample per site - + Returns: DataFrame with generation data """ - logger.info(f"Loading PV generation data (sampling {sample_sites} sites, {sample_days} days)...") - + logger.info( + f"Loading PV data ({sample_sites} sites, {sample_days} days)..." + ) + cache_file = CACHE_DIR / f"generation_sample_{sample_sites}_{sample_days}.parquet" - + if cache_file.exists(): logger.info("Loading from cache...") return pd.read_parquet(cache_file) - + # Load metadata metadata = load_pv_metadata() - + # Sample sites if len(metadata) > sample_sites: metadata = metadata.sample(n=sample_sites, random_state=42) - + # Generate sample timestamps (recent data) end_date = datetime.now() - timedelta(days=1) start_date = end_date - timedelta(days=sample_days) - + timestamps = pd.date_range(start=start_date, end=end_date, freq="30min") - - logger.info(f"Creating training data for {len(metadata)} sites, {len(timestamps)} timestamps...") - + + n_sites = len(metadata) + n_timestamps = len(timestamps) + logger.info(f"Creating training data for {n_sites} sites, {n_timestamps} timestamps...") + records = [] for _, site in metadata.iterrows(): for ts in timestamps[:48 * sample_days]: # 48 half-hour periods per day @@ -138,7 +141,7 @@ def load_pv_generation(sample_sites: int = 100, sample_days: int = 30): generation = site["kwp"] * solar_factor * (0.5 + 0.5 * np.random.random()) else: generation = 0 - + records.append({ "ss_id": site["ss_id"], "datetime_GMT": ts, @@ -149,13 +152,13 @@ def load_pv_generation(sample_sites: int = 100, sample_days: int = 30): "orientation": site.get("orientation", 180), "tilt": site.get("tilt", 30), }) - + df = pd.DataFrame(records) - + # Save to cache cache_file.parent.mkdir(parents=True, exist_ok=True) df.to_parquet(cache_file) - + logger.info(f"Created {len(df)} training samples") return df @@ -164,45 +167,45 @@ def load_pv_generation(sample_sites: int = 100, sample_days: int = 30): def fetch_weather_data(df: pd.DataFrame) -> pd.DataFrame: """ Fetch weather data for all locations and timestamps. - + For development, we'll add synthetic weather features. In production, this would call Open-Meteo API. """ logger.info("Adding weather features...") - + df = df.copy() - + # Synthetic weather features (for development) # These will be replaced with real Open-Meteo data np.random.seed(42) n = len(df) - + # Temperature (varies with time of day) hour = pd.to_datetime(df["datetime_GMT"]).dt.hour df["temperature_2m"] = 15 + 10 * np.sin(np.pi * (hour - 6) / 12) + np.random.randn(n) * 2 - + # Cloud cover (random) df["cloud_cover"] = np.random.uniform(0, 100, n) df["cloud_cover_low"] = np.random.uniform(0, 100, n) df["cloud_cover_mid"] = np.random.uniform(0, 100, n) df["cloud_cover_high"] = np.random.uniform(0, 100, n) - + # Radiation (based on hour and clouds) solar_factor = np.maximum(0, np.sin(np.pi * (hour - 6) / 12)) cloud_factor = 1 - df["cloud_cover"] / 200 # Clouds reduce radiation df["direct_radiation"] = 800 * solar_factor * cloud_factor + np.random.randn(n) * 50 df["diffuse_radiation"] = 200 * solar_factor + np.random.randn(n) * 20 - + # Wind df["wind_speed_10m"] = np.random.uniform(0, 15, n) df["wind_direction_10m"] = np.random.uniform(0, 360, n) - + # Precipitation df["precipitation"] = np.where(np.random.random(n) < 0.1, np.random.exponential(2, n), 0) - + # Is day df["is_day"] = ((hour >= 6) & (hour <= 20)).astype(int) - + return df @@ -211,38 +214,38 @@ def engineer_features(df: pd.DataFrame) -> pd.DataFrame: Engineer features for the LightGBM model. """ logger.info("Engineering features...") - + df = df.copy() dt = pd.to_datetime(df["datetime_GMT"]) - + # Cyclical time features hour = dt.dt.hour + dt.dt.minute / 60 df["hour_sin"] = np.sin(2 * np.pi * hour / 24) df["hour_cos"] = np.cos(2 * np.pi * hour / 24) - + day_of_year = dt.dt.dayofyear df["day_sin"] = np.sin(2 * np.pi * day_of_year / 365) df["day_cos"] = np.cos(2 * np.pi * day_of_year / 365) - + month = dt.dt.month df["month_sin"] = np.sin(2 * np.pi * month / 12) df["month_cos"] = np.cos(2 * np.pi * month / 12) - + df["day_of_week"] = dt.dt.dayofweek df["hour"] = dt.dt.hour - + # Panel features if "orientation" in df.columns: orientation_rad = np.deg2rad(df["orientation"].fillna(180)) df["orientation_sin"] = np.sin(orientation_rad) df["orientation_cos"] = np.cos(orientation_rad) - + if "tilt" in df.columns: df["tilt_factor"] = np.cos(np.deg2rad(df["tilt"].fillna(30))) - + # Target variable df["power_kw"] = df["generation_Wh"] / 500 # Convert Wh to approximate kW - + return df @@ -265,7 +268,7 @@ def train_model(X_train, y_train, X_val, y_val): Train a LightGBM model. """ logger.info("Training LightGBM model...") - + # LightGBM parameters params = { "objective": "regression", @@ -279,11 +282,11 @@ def train_model(X_train, y_train, X_val, y_val): "verbose": -1, "n_jobs": -1, } - + # Create datasets train_data = lgb.Dataset(X_train, label=y_train) val_data = lgb.Dataset(X_val, label=y_val, reference=train_data) - + # Train model = lgb.train( params, @@ -296,7 +299,7 @@ def train_model(X_train, y_train, X_val, y_val): lgb.log_evaluation(period=100), ], ) - + return model @@ -305,19 +308,19 @@ def evaluate_model(model, X_test, y_test, feature_columns): Evaluate the model and print metrics. """ logger.info("Evaluating model...") - + predictions = model.predict(X_test) - + # Clip predictions to non-negative predictions = np.maximum(predictions, 0) - + mae = mean_absolute_error(y_test, predictions) rmse = np.sqrt(mean_squared_error(y_test, predictions)) - + # Normalized MAE (assuming average capacity of 3 kWp) avg_capacity = 3.0 nmae = mae / avg_capacity * 100 - + print("\n" + "=" * 50) print("MODEL EVALUATION RESULTS") print("=" * 50) @@ -325,17 +328,17 @@ def evaluate_model(model, X_test, y_test, feature_columns): print(f"RMSE: {rmse:.4f} kW") print(f"Normalized MAE: {nmae:.2f}%") print("=" * 50) - + # Feature importance print("\nTop 10 Feature Importances:") importance = pd.DataFrame({ "feature": feature_columns, "importance": model.feature_importance(importance_type="gain"), }).sort_values("importance", ascending=False) - - for i, row in importance.head(10).iterrows(): + + for _i, row in importance.head(10).iterrows(): print(f" {row['feature']}: {row['importance']:.2f}") - + return { "mae": mae, "rmse": rmse, @@ -348,7 +351,7 @@ def save_model(model, feature_columns, metrics, model_path): Save the trained model to disk. """ logger.info(f"Saving model to {model_path}") - + model_data = { "model": model, "feature_columns": feature_columns, @@ -356,13 +359,13 @@ def save_model(model, feature_columns, metrics, model_path): "trained_at": datetime.now().isoformat(), "version": "3.0.0", } - + model_path.parent.mkdir(parents=True, exist_ok=True) - + with open(model_path, "wb") as f: pickle.dump(model_data, f) - - logger.info(f"Model saved successfully!") + + logger.info("Model saved successfully!") def main(): @@ -371,53 +374,53 @@ def main(): parser.add_argument("--sample-days", type=int, default=30, help="Number of days to sample") parser.add_argument("--output", type=str, default="quartz_solar_forecast/models/model-v3.0.pkl") args = parser.parse_args() - + print("\n" + "=" * 60) print("V3 LightGBM Solar PV Forecast Model - Training Script") print("=" * 60) print(f"Sample sites: {args.sample_sites}") print(f"Sample days: {args.sample_days}") print("=" * 60 + "\n") - + # Load data df = load_pv_generation(args.sample_sites, args.sample_days) - + # Add weather data df = fetch_weather_data(df) - + # Engineer features df = engineer_features(df) - + # Prepare training data feature_columns = get_feature_columns() - + # Filter to columns that exist available_columns = [c for c in feature_columns if c in df.columns] missing_columns = [c for c in feature_columns if c not in df.columns] - + if missing_columns: logger.warning(f"Missing columns: {missing_columns}") - + X = df[available_columns].fillna(0) y = df["power_kw"].fillna(0) - + # Train/validation/test split X_train, X_temp, y_train, y_temp = train_test_split(X, y, test_size=0.3, random_state=42) X_val, X_test, y_val, y_test = train_test_split(X_temp, y_temp, test_size=0.5, random_state=42) - + logger.info(f"Training set: {len(X_train)} samples") logger.info(f"Validation set: {len(X_val)} samples") logger.info(f"Test set: {len(X_test)} samples") - + # Train model model = train_model(X_train, y_train, X_val, y_val) - + # Evaluate metrics = evaluate_model(model, X_test, y_test, available_columns) - + # Save model save_model(model, available_columns, metrics, Path(args.output)) - + print("\n✅ Training complete!") print(f"Model saved to: {args.output}") diff --git a/uv.lock b/uv.lock new file mode 100644 index 000000000..195dc23fb --- /dev/null +++ b/uv.lock @@ -0,0 +1,3641 @@ +version = 1 +requires-python = ">=3.11" +resolution-markers = [ + "python_full_version >= '3.13' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "python_full_version < '3.12' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "(python_full_version >= '3.13' and platform_machine != 'ARM64') or (python_full_version >= '3.13' and sys_platform != 'win32')", + "(python_full_version == '3.12.*' and platform_machine != 'ARM64') or (python_full_version == '3.12.*' and sys_platform != 'win32')", + "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')", +] + +[[package]] +name = "aiohappyeyeballs" +version = "2.6.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/26/30/f84a107a9c4331c14b2b586036f40965c128aa4fee4dda5d3d51cb14ad54/aiohappyeyeballs-2.6.1.tar.gz", hash = "sha256:c3f9d0113123803ccadfdf3f0faa505bc78e6a72d1cc4806cbd719826e943558", size = 22760 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl", hash = "sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8", size = 15265 }, +] + +[[package]] +name = "aiohttp" +version = "3.13.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohappyeyeballs" }, + { name = "aiosignal" }, + { name = "attrs" }, + { name = "frozenlist" }, + { name = "multidict" }, + { name = "propcache" }, + { name = "yarl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/50/42/32cf8e7704ceb4481406eb87161349abb46a57fee3f008ba9cb610968646/aiohttp-3.13.3.tar.gz", hash = "sha256:a949eee43d3782f2daae4f4a2819b2cb9b0c5d3b7f7a927067cc84dafdbb9f88", size = 7844556 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f1/4c/a164164834f03924d9a29dc3acd9e7ee58f95857e0b467f6d04298594ebb/aiohttp-3.13.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5b6073099fb654e0a068ae678b10feff95c5cae95bbfcbfa7af669d361a8aa6b", size = 746051 }, + { url = "https://files.pythonhosted.org/packages/82/71/d5c31390d18d4f58115037c432b7e0348c60f6f53b727cad33172144a112/aiohttp-3.13.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1cb93e166e6c28716c8c6aeb5f99dfb6d5ccf482d29fe9bf9a794110e6d0ab64", size = 499234 }, + { url = "https://files.pythonhosted.org/packages/0e/c9/741f8ac91e14b1d2e7100690425a5b2b919a87a5075406582991fb7de920/aiohttp-3.13.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:28e027cf2f6b641693a09f631759b4d9ce9165099d2b5d92af9bd4e197690eea", size = 494979 }, + { url = "https://files.pythonhosted.org/packages/75/b5/31d4d2e802dfd59f74ed47eba48869c1c21552c586d5e81a9d0d5c2ad640/aiohttp-3.13.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3b61b7169ababd7802f9568ed96142616a9118dd2be0d1866e920e77ec8fa92a", size = 1748297 }, + { url = "https://files.pythonhosted.org/packages/1a/3e/eefad0ad42959f226bb79664826883f2687d602a9ae2941a18e0484a74d3/aiohttp-3.13.3-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:80dd4c21b0f6237676449c6baaa1039abae86b91636b6c91a7f8e61c87f89540", size = 1707172 }, + { url = "https://files.pythonhosted.org/packages/c5/3a/54a64299fac2891c346cdcf2aa6803f994a2e4beeaf2e5a09dcc54acc842/aiohttp-3.13.3-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:65d2ccb7eabee90ce0503c17716fc77226be026dcc3e65cce859a30db715025b", size = 1805405 }, + { url = "https://files.pythonhosted.org/packages/6c/70/ddc1b7169cf64075e864f64595a14b147a895a868394a48f6a8031979038/aiohttp-3.13.3-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5b179331a481cb5529fca8b432d8d3c7001cb217513c94cd72d668d1248688a3", size = 1899449 }, + { url = "https://files.pythonhosted.org/packages/a1/7e/6815aab7d3a56610891c76ef79095677b8b5be6646aaf00f69b221765021/aiohttp-3.13.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d4c940f02f49483b18b079d1c27ab948721852b281f8b015c058100e9421dd1", size = 1748444 }, + { url = "https://files.pythonhosted.org/packages/6b/f2/073b145c4100da5511f457dc0f7558e99b2987cf72600d42b559db856fbc/aiohttp-3.13.3-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f9444f105664c4ce47a2a7171a2418bce5b7bae45fb610f4e2c36045d85911d3", size = 1606038 }, + { url = "https://files.pythonhosted.org/packages/0a/c1/778d011920cae03ae01424ec202c513dc69243cf2db303965615b81deeea/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:694976222c711d1d00ba131904beb60534f93966562f64440d0c9d41b8cdb440", size = 1724156 }, + { url = "https://files.pythonhosted.org/packages/0e/cb/3419eabf4ec1e9ec6f242c32b689248365a1cf621891f6f0386632525494/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:f33ed1a2bf1997a36661874b017f5c4b760f41266341af36febaf271d179f6d7", size = 1722340 }, + { url = "https://files.pythonhosted.org/packages/7a/e5/76cf77bdbc435bf233c1f114edad39ed4177ccbfab7c329482b179cff4f4/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:e636b3c5f61da31a92bf0d91da83e58fdfa96f178ba682f11d24f31944cdd28c", size = 1783041 }, + { url = "https://files.pythonhosted.org/packages/9d/d4/dd1ca234c794fd29c057ce8c0566b8ef7fd6a51069de5f06fa84b9a1971c/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:5d2d94f1f5fcbe40838ac51a6ab5704a6f9ea42e72ceda48de5e6b898521da51", size = 1596024 }, + { url = "https://files.pythonhosted.org/packages/55/58/4345b5f26661a6180afa686c473620c30a66afdf120ed3dd545bbc809e85/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:2be0e9ccf23e8a94f6f0650ce06042cefc6ac703d0d7ab6c7a917289f2539ad4", size = 1804590 }, + { url = "https://files.pythonhosted.org/packages/7b/06/05950619af6c2df7e0a431d889ba2813c9f0129cec76f663e547a5ad56f2/aiohttp-3.13.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:9af5e68ee47d6534d36791bbe9b646d2a7c7deb6fc24d7943628edfbb3581f29", size = 1740355 }, + { url = "https://files.pythonhosted.org/packages/3e/80/958f16de79ba0422d7c1e284b2abd0c84bc03394fbe631d0a39ffa10e1eb/aiohttp-3.13.3-cp311-cp311-win32.whl", hash = "sha256:a2212ad43c0833a873d0fb3c63fa1bacedd4cf6af2fee62bf4b739ceec3ab239", size = 433701 }, + { url = "https://files.pythonhosted.org/packages/dc/f2/27cdf04c9851712d6c1b99df6821a6623c3c9e55956d4b1e318c337b5a48/aiohttp-3.13.3-cp311-cp311-win_amd64.whl", hash = "sha256:642f752c3eb117b105acbd87e2c143de710987e09860d674e068c4c2c441034f", size = 457678 }, + { url = "https://files.pythonhosted.org/packages/a0/be/4fc11f202955a69e0db803a12a062b8379c970c7c84f4882b6da17337cc1/aiohttp-3.13.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:b903a4dfee7d347e2d87697d0713be59e0b87925be030c9178c5faa58ea58d5c", size = 739732 }, + { url = "https://files.pythonhosted.org/packages/97/2c/621d5b851f94fa0bb7430d6089b3aa970a9d9b75196bc93bb624b0db237a/aiohttp-3.13.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a45530014d7a1e09f4a55f4f43097ba0fd155089372e105e4bff4ca76cb1b168", size = 494293 }, + { url = "https://files.pythonhosted.org/packages/5d/43/4be01406b78e1be8320bb8316dc9c42dbab553d281c40364e0f862d5661c/aiohttp-3.13.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:27234ef6d85c914f9efeb77ff616dbf4ad2380be0cda40b4db086ffc7ddd1b7d", size = 493533 }, + { url = "https://files.pythonhosted.org/packages/8d/a8/5a35dc56a06a2c90d4742cbf35294396907027f80eea696637945a106f25/aiohttp-3.13.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d32764c6c9aafb7fb55366a224756387cd50bfa720f32b88e0e6fa45b27dcf29", size = 1737839 }, + { url = "https://files.pythonhosted.org/packages/bf/62/4b9eeb331da56530bf2e198a297e5303e1c1ebdceeb00fe9b568a65c5a0c/aiohttp-3.13.3-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:b1a6102b4d3ebc07dad44fbf07b45bb600300f15b552ddf1851b5390202ea2e3", size = 1703932 }, + { url = "https://files.pythonhosted.org/packages/7c/f6/af16887b5d419e6a367095994c0b1332d154f647e7dc2bd50e61876e8e3d/aiohttp-3.13.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c014c7ea7fb775dd015b2d3137378b7be0249a448a1612268b5a90c2d81de04d", size = 1771906 }, + { url = "https://files.pythonhosted.org/packages/ce/83/397c634b1bcc24292fa1e0c7822800f9f6569e32934bdeef09dae7992dfb/aiohttp-3.13.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2b8d8ddba8f95ba17582226f80e2de99c7a7948e66490ef8d947e272a93e9463", size = 1871020 }, + { url = "https://files.pythonhosted.org/packages/86/f6/a62cbbf13f0ac80a70f71b1672feba90fdb21fd7abd8dbf25c0105fb6fa3/aiohttp-3.13.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9ae8dd55c8e6c4257eae3a20fd2c8f41edaea5992ed67156642493b8daf3cecc", size = 1755181 }, + { url = "https://files.pythonhosted.org/packages/0a/87/20a35ad487efdd3fba93d5843efdfaa62d2f1479eaafa7453398a44faf13/aiohttp-3.13.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:01ad2529d4b5035578f5081606a465f3b814c542882804e2e8cda61adf5c71bf", size = 1561794 }, + { url = "https://files.pythonhosted.org/packages/de/95/8fd69a66682012f6716e1bc09ef8a1a2a91922c5725cb904689f112309c4/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:bb4f7475e359992b580559e008c598091c45b5088f28614e855e42d39c2f1033", size = 1697900 }, + { url = "https://files.pythonhosted.org/packages/e5/66/7b94b3b5ba70e955ff597672dad1691333080e37f50280178967aff68657/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:c19b90316ad3b24c69cd78d5c9b4f3aa4497643685901185b65166293d36a00f", size = 1728239 }, + { url = "https://files.pythonhosted.org/packages/47/71/6f72f77f9f7d74719692ab65a2a0252584bf8d5f301e2ecb4c0da734530a/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:96d604498a7c782cb15a51c406acaea70d8c027ee6b90c569baa6e7b93073679", size = 1740527 }, + { url = "https://files.pythonhosted.org/packages/fa/b4/75ec16cbbd5c01bdaf4a05b19e103e78d7ce1ef7c80867eb0ace42ff4488/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:084911a532763e9d3dd95adf78a78f4096cd5f58cdc18e6fdbc1b58417a45423", size = 1554489 }, + { url = "https://files.pythonhosted.org/packages/52/8f/bc518c0eea29f8406dcf7ed1f96c9b48e3bc3995a96159b3fc11f9e08321/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:7a4a94eb787e606d0a09404b9c38c113d3b099d508021faa615d70a0131907ce", size = 1767852 }, + { url = "https://files.pythonhosted.org/packages/9d/f2/a07a75173124f31f11ea6f863dc44e6f09afe2bca45dd4e64979490deab1/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:87797e645d9d8e222e04160ee32aa06bc5c163e8499f24db719e7852ec23093a", size = 1722379 }, + { url = "https://files.pythonhosted.org/packages/3c/4a/1a3fee7c21350cac78e5c5cef711bac1b94feca07399f3d406972e2d8fcd/aiohttp-3.13.3-cp312-cp312-win32.whl", hash = "sha256:b04be762396457bef43f3597c991e192ee7da460a4953d7e647ee4b1c28e7046", size = 428253 }, + { url = "https://files.pythonhosted.org/packages/d9/b7/76175c7cb4eb73d91ad63c34e29fc4f77c9386bba4a65b53ba8e05ee3c39/aiohttp-3.13.3-cp312-cp312-win_amd64.whl", hash = "sha256:e3531d63d3bdfa7e3ac5e9b27b2dd7ec9df3206a98e0b3445fa906f233264c57", size = 455407 }, + { url = "https://files.pythonhosted.org/packages/97/8a/12ca489246ca1faaf5432844adbfce7ff2cc4997733e0af120869345643a/aiohttp-3.13.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:5dff64413671b0d3e7d5918ea490bdccb97a4ad29b3f311ed423200b2203e01c", size = 734190 }, + { url = "https://files.pythonhosted.org/packages/32/08/de43984c74ed1fca5c014808963cc83cb00d7bb06af228f132d33862ca76/aiohttp-3.13.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:87b9aab6d6ed88235aa2970294f496ff1a1f9adcd724d800e9b952395a80ffd9", size = 491783 }, + { url = "https://files.pythonhosted.org/packages/17/f8/8dd2cf6112a5a76f81f81a5130c57ca829d101ad583ce57f889179accdda/aiohttp-3.13.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:425c126c0dc43861e22cb1c14ba4c8e45d09516d0a3ae0a3f7494b79f5f233a3", size = 490704 }, + { url = "https://files.pythonhosted.org/packages/6d/40/a46b03ca03936f832bc7eaa47cfbb1ad012ba1be4790122ee4f4f8cba074/aiohttp-3.13.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7f9120f7093c2a32d9647abcaf21e6ad275b4fbec5b55969f978b1a97c7c86bf", size = 1720652 }, + { url = "https://files.pythonhosted.org/packages/f7/7e/917fe18e3607af92657e4285498f500dca797ff8c918bd7d90b05abf6c2a/aiohttp-3.13.3-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:697753042d57f4bf7122cab985bf15d0cef23c770864580f5af4f52023a56bd6", size = 1692014 }, + { url = "https://files.pythonhosted.org/packages/71/b6/cefa4cbc00d315d68973b671cf105b21a609c12b82d52e5d0c9ae61d2a09/aiohttp-3.13.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:6de499a1a44e7de70735d0b39f67c8f25eb3d91eb3103be99ca0fa882cdd987d", size = 1759777 }, + { url = "https://files.pythonhosted.org/packages/fb/e3/e06ee07b45e59e6d81498b591fc589629be1553abb2a82ce33efe2a7b068/aiohttp-3.13.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:37239e9f9a7ea9ac5bf6b92b0260b01f8a22281996da609206a84df860bc1261", size = 1861276 }, + { url = "https://files.pythonhosted.org/packages/7c/24/75d274228acf35ceeb2850b8ce04de9dd7355ff7a0b49d607ee60c29c518/aiohttp-3.13.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f76c1e3fe7d7c8afad7ed193f89a292e1999608170dcc9751a7462a87dfd5bc0", size = 1743131 }, + { url = "https://files.pythonhosted.org/packages/04/98/3d21dde21889b17ca2eea54fdcff21b27b93f45b7bb94ca029c31ab59dc3/aiohttp-3.13.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fc290605db2a917f6e81b0e1e0796469871f5af381ce15c604a3c5c7e51cb730", size = 1556863 }, + { url = "https://files.pythonhosted.org/packages/9e/84/da0c3ab1192eaf64782b03971ab4055b475d0db07b17eff925e8c93b3aa5/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4021b51936308aeea0367b8f006dc999ca02bc118a0cc78c303f50a2ff6afb91", size = 1682793 }, + { url = "https://files.pythonhosted.org/packages/ff/0f/5802ada182f575afa02cbd0ec5180d7e13a402afb7c2c03a9aa5e5d49060/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:49a03727c1bba9a97d3e93c9f93ca03a57300f484b6e935463099841261195d3", size = 1716676 }, + { url = "https://files.pythonhosted.org/packages/3f/8c/714d53bd8b5a4560667f7bbbb06b20c2382f9c7847d198370ec6526af39c/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3d9908a48eb7416dc1f4524e69f1d32e5d90e3981e4e37eb0aa1cd18f9cfa2a4", size = 1733217 }, + { url = "https://files.pythonhosted.org/packages/7d/79/e2176f46d2e963facea939f5be2d26368ce543622be6f00a12844d3c991f/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:2712039939ec963c237286113c68dbad80a82a4281543f3abf766d9d73228998", size = 1552303 }, + { url = "https://files.pythonhosted.org/packages/ab/6a/28ed4dea1759916090587d1fe57087b03e6c784a642b85ef48217b0277ae/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:7bfdc049127717581866fa4708791220970ce291c23e28ccf3922c700740fdc0", size = 1763673 }, + { url = "https://files.pythonhosted.org/packages/e8/35/4a3daeb8b9fab49240d21c04d50732313295e4bd813a465d840236dd0ce1/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8057c98e0c8472d8846b9c79f56766bcc57e3e8ac7bfd510482332366c56c591", size = 1721120 }, + { url = "https://files.pythonhosted.org/packages/bc/9f/d643bb3c5fb99547323e635e251c609fbbc660d983144cfebec529e09264/aiohttp-3.13.3-cp313-cp313-win32.whl", hash = "sha256:1449ceddcdbcf2e0446957863af03ebaaa03f94c090f945411b61269e2cb5daf", size = 427383 }, + { url = "https://files.pythonhosted.org/packages/4e/f1/ab0395f8a79933577cdd996dd2f9aa6014af9535f65dddcf88204682fe62/aiohttp-3.13.3-cp313-cp313-win_amd64.whl", hash = "sha256:693781c45a4033d31d4187d2436f5ac701e7bbfe5df40d917736108c1cc7436e", size = 453899 }, + { url = "https://files.pythonhosted.org/packages/99/36/5b6514a9f5d66f4e2597e40dea2e3db271e023eb7a5d22defe96ba560996/aiohttp-3.13.3-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:ea37047c6b367fd4bd632bff8077449b8fa034b69e812a18e0132a00fae6e808", size = 737238 }, + { url = "https://files.pythonhosted.org/packages/f7/49/459327f0d5bcd8c6c9ca69e60fdeebc3622861e696490d8674a6d0cb90a6/aiohttp-3.13.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:6fc0e2337d1a4c3e6acafda6a78a39d4c14caea625124817420abceed36e2415", size = 492292 }, + { url = "https://files.pythonhosted.org/packages/e8/0b/b97660c5fd05d3495b4eb27f2d0ef18dc1dc4eff7511a9bf371397ff0264/aiohttp-3.13.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c685f2d80bb67ca8c3837823ad76196b3694b0159d232206d1e461d3d434666f", size = 493021 }, + { url = "https://files.pythonhosted.org/packages/54/d4/438efabdf74e30aeceb890c3290bbaa449780583b1270b00661126b8aae4/aiohttp-3.13.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:48e377758516d262bde50c2584fc6c578af272559c409eecbdd2bae1601184d6", size = 1717263 }, + { url = "https://files.pythonhosted.org/packages/71/f2/7bddc7fd612367d1459c5bcf598a9e8f7092d6580d98de0e057eb42697ad/aiohttp-3.13.3-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:34749271508078b261c4abb1767d42b8d0c0cc9449c73a4df494777dc55f0687", size = 1669107 }, + { url = "https://files.pythonhosted.org/packages/00/5a/1aeaecca40e22560f97610a329e0e5efef5e0b5afdf9f857f0d93839ab2e/aiohttp-3.13.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:82611aeec80eb144416956ec85b6ca45a64d76429c1ed46ae1b5f86c6e0c9a26", size = 1760196 }, + { url = "https://files.pythonhosted.org/packages/f8/f8/0ff6992bea7bd560fc510ea1c815f87eedd745fe035589c71ce05612a19a/aiohttp-3.13.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2fff83cfc93f18f215896e3a190e8e5cb413ce01553901aca925176e7568963a", size = 1843591 }, + { url = "https://files.pythonhosted.org/packages/e3/d1/e30e537a15f53485b61f5be525f2157da719819e8377298502aebac45536/aiohttp-3.13.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bbe7d4cecacb439e2e2a8a1a7b935c25b812af7a5fd26503a66dadf428e79ec1", size = 1720277 }, + { url = "https://files.pythonhosted.org/packages/84/45/23f4c451d8192f553d38d838831ebbc156907ea6e05557f39563101b7717/aiohttp-3.13.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b928f30fe49574253644b1ca44b1b8adbd903aa0da4b9054a6c20fc7f4092a25", size = 1548575 }, + { url = "https://files.pythonhosted.org/packages/6a/ed/0a42b127a43712eda7807e7892c083eadfaf8429ca8fb619662a530a3aab/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7b5e8fe4de30df199155baaf64f2fcd604f4c678ed20910db8e2c66dc4b11603", size = 1679455 }, + { url = "https://files.pythonhosted.org/packages/2e/b5/c05f0c2b4b4fe2c9d55e73b6d3ed4fd6c9dc2684b1d81cbdf77e7fad9adb/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:8542f41a62bcc58fc7f11cf7c90e0ec324ce44950003feb70640fc2a9092c32a", size = 1687417 }, + { url = "https://files.pythonhosted.org/packages/c9/6b/915bc5dad66aef602b9e459b5a973529304d4e89ca86999d9d75d80cbd0b/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:5e1d8c8b8f1d91cd08d8f4a3c2b067bfca6ec043d3ff36de0f3a715feeedf926", size = 1729968 }, + { url = "https://files.pythonhosted.org/packages/11/3b/e84581290a9520024a08640b63d07673057aec5ca548177a82026187ba73/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:90455115e5da1c3c51ab619ac57f877da8fd6d73c05aacd125c5ae9819582aba", size = 1545690 }, + { url = "https://files.pythonhosted.org/packages/f5/04/0c3655a566c43fd647c81b895dfe361b9f9ad6d58c19309d45cff52d6c3b/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:042e9e0bcb5fba81886c8b4fbb9a09d6b8a00245fd8d88e4d989c1f96c74164c", size = 1746390 }, + { url = "https://files.pythonhosted.org/packages/1f/53/71165b26978f719c3419381514c9690bd5980e764a09440a10bb816ea4ab/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2eb752b102b12a76ca02dff751a801f028b4ffbbc478840b473597fc91a9ed43", size = 1702188 }, + { url = "https://files.pythonhosted.org/packages/29/a7/cbe6c9e8e136314fa1980da388a59d2f35f35395948a08b6747baebb6aa6/aiohttp-3.13.3-cp314-cp314-win32.whl", hash = "sha256:b556c85915d8efaed322bf1bdae9486aa0f3f764195a0fb6ee962e5c71ef5ce1", size = 433126 }, + { url = "https://files.pythonhosted.org/packages/de/56/982704adea7d3b16614fc5936014e9af85c0e34b58f9046655817f04306e/aiohttp-3.13.3-cp314-cp314-win_amd64.whl", hash = "sha256:9bf9f7a65e7aa20dd764151fb3d616c81088f91f8df39c3893a536e279b4b984", size = 459128 }, + { url = "https://files.pythonhosted.org/packages/6c/2a/3c79b638a9c3d4658d345339d22070241ea341ed4e07b5ac60fb0f418003/aiohttp-3.13.3-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:05861afbbec40650d8a07ea324367cb93e9e8cc7762e04dd4405df99fa65159c", size = 769512 }, + { url = "https://files.pythonhosted.org/packages/29/b9/3e5014d46c0ab0db8707e0ac2711ed28c4da0218c358a4e7c17bae0d8722/aiohttp-3.13.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2fc82186fadc4a8316768d61f3722c230e2c1dcab4200d52d2ebdf2482e47592", size = 506444 }, + { url = "https://files.pythonhosted.org/packages/90/03/c1d4ef9a054e151cd7839cdc497f2638f00b93cbe8043983986630d7a80c/aiohttp-3.13.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:0add0900ff220d1d5c5ebbf99ed88b0c1bbf87aa7e4262300ed1376a6b13414f", size = 510798 }, + { url = "https://files.pythonhosted.org/packages/ea/76/8c1e5abbfe8e127c893fe7ead569148a4d5a799f7cf958d8c09f3eedf097/aiohttp-3.13.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:568f416a4072fbfae453dcf9a99194bbb8bdeab718e08ee13dfa2ba0e4bebf29", size = 1868835 }, + { url = "https://files.pythonhosted.org/packages/8e/ac/984c5a6f74c363b01ff97adc96a3976d9c98940b8969a1881575b279ac5d/aiohttp-3.13.3-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:add1da70de90a2569c5e15249ff76a631ccacfe198375eead4aadf3b8dc849dc", size = 1720486 }, + { url = "https://files.pythonhosted.org/packages/b2/9a/b7039c5f099c4eb632138728828b33428585031a1e658d693d41d07d89d1/aiohttp-3.13.3-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:10b47b7ba335d2e9b1239fa571131a87e2d8ec96b333e68b2a305e7a98b0bae2", size = 1847951 }, + { url = "https://files.pythonhosted.org/packages/3c/02/3bec2b9a1ba3c19ff89a43a19324202b8eb187ca1e928d8bdac9bbdddebd/aiohttp-3.13.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3dd4dce1c718e38081c8f35f323209d4c1df7d4db4bab1b5c88a6b4d12b74587", size = 1941001 }, + { url = "https://files.pythonhosted.org/packages/37/df/d879401cedeef27ac4717f6426c8c36c3091c6e9f08a9178cc87549c537f/aiohttp-3.13.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:34bac00a67a812570d4a460447e1e9e06fae622946955f939051e7cc895cfab8", size = 1797246 }, + { url = "https://files.pythonhosted.org/packages/8d/15/be122de1f67e6953add23335c8ece6d314ab67c8bebb3f181063010795a7/aiohttp-3.13.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a19884d2ee70b06d9204b2727a7b9f983d0c684c650254679e716b0b77920632", size = 1627131 }, + { url = "https://files.pythonhosted.org/packages/12/12/70eedcac9134cfa3219ab7af31ea56bc877395b1ac30d65b1bc4b27d0438/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5f8ca7f2bb6ba8348a3614c7918cc4bb73268c5ac2a207576b7afea19d3d9f64", size = 1795196 }, + { url = "https://files.pythonhosted.org/packages/32/11/b30e1b1cd1f3054af86ebe60df96989c6a414dd87e27ad16950eee420bea/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:b0d95340658b9d2f11d9697f59b3814a9d3bb4b7a7c20b131df4bcef464037c0", size = 1782841 }, + { url = "https://files.pythonhosted.org/packages/88/0d/d98a9367b38912384a17e287850f5695c528cff0f14f791ce8ee2e4f7796/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:a1e53262fd202e4b40b70c3aff944a8155059beedc8a89bba9dc1f9ef06a1b56", size = 1795193 }, + { url = "https://files.pythonhosted.org/packages/43/a5/a2dfd1f5ff5581632c7f6a30e1744deda03808974f94f6534241ef60c751/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:d60ac9663f44168038586cab2157e122e46bdef09e9368b37f2d82d354c23f72", size = 1621979 }, + { url = "https://files.pythonhosted.org/packages/fa/f0/12973c382ae7c1cccbc4417e129c5bf54c374dfb85af70893646e1f0e749/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:90751b8eed69435bac9ff4e3d2f6b3af1f57e37ecb0fbeee59c0174c9e2d41df", size = 1822193 }, + { url = "https://files.pythonhosted.org/packages/3c/5f/24155e30ba7f8c96918af1350eb0663e2430aad9e001c0489d89cd708ab1/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fc353029f176fd2b3ec6cfc71be166aba1936fe5d73dd1992ce289ca6647a9aa", size = 1769801 }, + { url = "https://files.pythonhosted.org/packages/eb/f8/7314031ff5c10e6ece114da79b338ec17eeff3a079e53151f7e9f43c4723/aiohttp-3.13.3-cp314-cp314t-win32.whl", hash = "sha256:2e41b18a58da1e474a057b3d35248d8320029f61d70a37629535b16a0c8f3767", size = 466523 }, + { url = "https://files.pythonhosted.org/packages/b4/63/278a98c715ae467624eafe375542d8ba9b4383a016df8fdefe0ae28382a7/aiohttp-3.13.3-cp314-cp314t-win_amd64.whl", hash = "sha256:44531a36aa2264a1860089ffd4dce7baf875ee5a6079d5fb42e261c704ef7344", size = 499694 }, +] + +[[package]] +name = "aiosignal" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "frozenlist" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/61/62/06741b579156360248d1ec624842ad0edf697050bbaf7c3e46394e106ad1/aiosignal-1.4.0.tar.gz", hash = "sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7", size = 25007 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl", hash = "sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e", size = 7490 }, +] + +[[package]] +name = "altair" +version = "6.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jinja2" }, + { name = "jsonschema" }, + { name = "narwhals" }, + { name = "packaging" }, + { name = "typing-extensions", marker = "python_full_version < '3.15'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f7/c0/184a89bd5feba14ff3c41cfaf1dd8a82c05f5ceedbc92145e17042eb08a4/altair-6.0.0.tar.gz", hash = "sha256:614bf5ecbe2337347b590afb111929aa9c16c9527c4887d96c9bc7f6640756b4", size = 763834 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl", hash = "sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8", size = 795410 }, +] + +[[package]] +name = "annotated-doc" +version = "0.0.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/57/ba/046ceea27344560984e26a590f90bc7f4a75b06701f653222458922b558c/annotated_doc-0.0.4.tar.gz", hash = "sha256:fbcda96e87e9c92ad167c2e53839e57503ecfda18804ea28102353485033faa4", size = 7288 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl", hash = "sha256:571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320", size = 5303 }, +] + +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643 }, +] + +[[package]] +name = "anyio" +version = "4.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/96/f0/5eb65b2bb0d09ac6776f2eb54adee6abe8228ea05b20a5ad0e4945de8aac/anyio-4.12.1.tar.gz", hash = "sha256:41cfcc3a4c85d3f05c932da7c26d0201ac36f72abd4435ba90d0464a3ffed703", size = 228685 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/0e/27be9fdef66e72d64c0cdc3cc2823101b80585f8119b5c112c2e8f5f7dab/anyio-4.12.1-py3-none-any.whl", hash = "sha256:d405828884fc140aa80a3c667b8beed277f1dfedec42ba031bd6ac3db606ab6c", size = 113592 }, +] + +[[package]] +name = "asciitree" +version = "0.3.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/6a/885bc91484e1aa8f618f6f0228d76d0e67000b0fdd6090673b777e311913/asciitree-0.3.3.tar.gz", hash = "sha256:4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e", size = 3951 } + +[[package]] +name = "async-timeout" +version = "5.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a5/ae/136395dfbfe00dfc94da3f3e136d0b13f394cba8f4841120e34226265780/async_timeout-5.0.1.tar.gz", hash = "sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3", size = 9274 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fe/ba/e2081de779ca30d473f21f5b30e0e737c438205440784c7dfc81efc2b029/async_timeout-5.0.1-py3-none-any.whl", hash = "sha256:39e3809566ff85354557ec2398b55e096c8364bacac9405a7a1fa429e77fe76c", size = 6233 }, +] + +[[package]] +name = "attrs" +version = "25.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6b/5c/685e6633917e101e5dcb62b9dd76946cbb57c26e133bae9e0cd36033c0a9/attrs-25.4.0.tar.gz", hash = "sha256:16d5969b87f0859ef33a48b35d55ac1be6e42ae49d5e853b597db70c35c57e11", size = 934251 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl", hash = "sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373", size = 67615 }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.14.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/b0/1c6a16426d389813b48d95e26898aff79abbde42ad353958ad95cc8c9b21/beautifulsoup4-4.14.3.tar.gz", hash = "sha256:6292b1c5186d356bba669ef9f7f051757099565ad9ada5dd630bd9de5fa7fb86", size = 627737 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1a/39/47f9197bdd44df24d67ac8893641e16f386c984a0619ef2ee4c51fbbc019/beautifulsoup4-4.14.3-py3-none-any.whl", hash = "sha256:0918bfe44902e6ad8d57732ba310582e98da931428d231a5ecb9e7c703a735bb", size = 107721 }, +] + +[[package]] +name = "blinker" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/21/28/9b3f50ce0e048515135495f198351908d99540d69bfdc8c1d15b73dc55ce/blinker-1.9.0.tar.gz", hash = "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf", size = 22460 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc", size = 8458 }, +] + +[[package]] +name = "blosc2" +version = "2.7.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "msgpack" }, + { name = "ndindex" }, + { name = "numexpr" }, + { name = "numpy" }, + { name = "py-cpuinfo" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ef/bb/19a5d672f86dd26be0fc4f3a4c04264c088f3309b7b9d4e3e853a1f3cfda/blosc2-2.7.1.tar.gz", hash = "sha256:34db4d41543b16e894d507d6c7d10a9a67c9dd420ff40b072f7c39185cbb8fe8", size = 5149754 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/22/cb/2a5b2024afa43f9b90a21022c44211ba064dc3501e99e3a8ea5b275189dd/blosc2-2.7.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:51fa45187639cd1f7822355c91f6ceb0fbff6157eb6f9c32462782551fc61283", size = 3933072 }, + { url = "https://files.pythonhosted.org/packages/77/3d/1dedc6be1a730d4ba75c599fa8f5426efd02cef7722ed7e54b16e0ae8702/blosc2-2.7.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f8134aaaf72b670f2ddf258d9b64646c262d6b1b112a530d39f9a5d316f3b306", size = 3317470 }, + { url = "https://files.pythonhosted.org/packages/e0/93/c1051b42f9797504c11d28185b7e4e343e716eb12152f087cf5312aa7b8b/blosc2-2.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c10a9505c6d2d5e58f03a1139b4a4b234511baa9ebeba17f8f1cc22881ca764", size = 4260663 }, + { url = "https://files.pythonhosted.org/packages/3e/00/21f408b3257fff4e5166dbd666ee2739f088e139dc90743b09952ee0ebd8/blosc2-2.7.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed15f0eb6a99df425b33be948fb309a97e76bda37eae20022bc9611bce775592", size = 4406560 }, + { url = "https://files.pythonhosted.org/packages/ba/4d/0295f619fad024e05a46afc1315661f08f3ac3f2c051c9bf060cfb91fe2d/blosc2-2.7.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7a369a72467b54fb45aa307cf6e3ae84ec0212a9b55cfa5f4d4eb06a06bb1472", size = 4814632 }, + { url = "https://files.pythonhosted.org/packages/d8/f6/aeb8cd6c0184870ad2be3cf3664a23e45595024b47cc036e83f20b2d039f/blosc2-2.7.1-cp311-cp311-win32.whl", hash = "sha256:bf55816beaf34eaba021904ee7d6c428ca338d0f3ec7a5be04dda552258d0a8b", size = 1982521 }, + { url = "https://files.pythonhosted.org/packages/df/e1/36db3625759c8e620ed992450e9579a02f023538292883e04189845d98d0/blosc2-2.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:9b00bcaeaf125491cc6dec5508389f95152de69cc678a63a0310a756511f3d21", size = 2375006 }, + { url = "https://files.pythonhosted.org/packages/d8/83/417cc99eb9c46a295c9b9381834e9728ba1c583ad942610755a5348f9965/blosc2-2.7.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:bd91a5d9e1d35b47bf5a3b6b440bc120f1fa0af45264c0a6ccca6b1083de43e9", size = 3937332 }, + { url = "https://files.pythonhosted.org/packages/f1/85/3f817bcd5f665625a46056ea7acad8a4798238a37d85a22cc8294e885e89/blosc2-2.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2c7dbdd93378d01b048536b2eccbb77eaa73054665bc3a9396e4e391a50c4ad0", size = 3317749 }, + { url = "https://files.pythonhosted.org/packages/01/00/35bac426ec7e1e0ea05193043bb2c1a3151861a2f5519ab070223ca5819e/blosc2-2.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c662a3cab4760c194407de1990bd70608af29ee30d6471072463cdc8cc6586c4", size = 4242056 }, + { url = "https://files.pythonhosted.org/packages/58/9f/54099025ce55a33d2be80eda16821d695c0249c9826e14196e2655ca4a7e/blosc2-2.7.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c1f3e5ed25930596492dddac8022a729d538efb3c1c4e4904a0021288cf4835", size = 4390896 }, + { url = "https://files.pythonhosted.org/packages/40/2b/9fb84e2656f09ac90fed163490c11e88a8f5306e53f27b9eb324a2d966b9/blosc2-2.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:23763b3602df9b0e63d16d21abadaac426a74370a0a986f08bf5322bcfd207c6", size = 4793489 }, + { url = "https://files.pythonhosted.org/packages/9b/f6/3864933ef0d51845a78f260dce9eba4e3938ff136d1dcd7a4b9d91d25191/blosc2-2.7.1-cp312-cp312-win32.whl", hash = "sha256:6c894ef42fabc49c6bd1c41d2e45ac24e911b3b711c1e26f9be93dbcbf5fd4e2", size = 1977960 }, + { url = "https://files.pythonhosted.org/packages/77/81/44def26a468e14309a4cb7d5f6f0534e3e9eec292c0453a9624a4d9c0ebd/blosc2-2.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:a1a884f181a2a9612470bcd589794c7adda3eebdaed918e1a8b6e69683524b70", size = 2370429 }, +] + +[[package]] +name = "cachetools" +version = "6.2.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/86/e7/18ea2907d2ca91e9c0697596b8e60cd485b091152eb4109fad1e468e457d/cachetools-6.2.5.tar.gz", hash = "sha256:6d8bfbba1ba94412fb9d9196c4da7a87e9d4928fffc5e93542965dca4740c77f", size = 32168 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e3/a6/24169d70ec5264b65ba54ba49b3d10f46d6b1ad97e185c94556539b3dfc8/cachetools-6.2.5-py3-none-any.whl", hash = "sha256:db3ae5465e90befb7c74720dd9308d77a09b7cf13433570e07caa0845c30d5fe", size = 11553 }, +] + +[[package]] +name = "cattrs" +version = "25.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6e/00/2432bb2d445b39b5407f0a90e01b9a271475eea7caf913d7a86bcb956385/cattrs-25.3.0.tar.gz", hash = "sha256:1ac88d9e5eda10436c4517e390a4142d88638fe682c436c93db7ce4a277b884a", size = 509321 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d8/2b/a40e1488fdfa02d3f9a653a61a5935ea08b3c2225ee818db6a76c7ba9695/cattrs-25.3.0-py3-none-any.whl", hash = "sha256:9896e84e0a5bf723bc7b4b68f4481785367ce07a8a02e7e9ee6eb2819bc306ff", size = 70738 }, +] + +[[package]] +name = "certifi" +version = "2026.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/2d/a891ca51311197f6ad14a7ef42e2399f36cf2f9bd44752b3dc4eab60fdc5/certifi-2026.1.4.tar.gz", hash = "sha256:ac726dd470482006e014ad384921ed6438c457018f4b3d204aea4281258b2120", size = 154268 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/ad/3cc14f097111b4de0040c83a525973216457bbeeb63739ef1ed275c1c021/certifi-2026.1.4-py3-none-any.whl", hash = "sha256:9943707519e4add1115f44c2bc244f782c0249876bf51b6599fee1ffbedd685c", size = 152900 }, +] + +[[package]] +name = "cffi" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser", marker = "implementation_name != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/4a/3dfd5f7850cbf0d06dc84ba9aa00db766b52ca38d8b86e3a38314d52498c/cffi-2.0.0-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:b4c854ef3adc177950a8dfc81a86f5115d2abd545751a304c5bcf2c2c7283cfe", size = 184344 }, + { url = "https://files.pythonhosted.org/packages/4f/8b/f0e4c441227ba756aafbe78f117485b25bb26b1c059d01f137fa6d14896b/cffi-2.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2de9a304e27f7596cd03d16f1b7c72219bd944e99cc52b84d0145aefb07cbd3c", size = 180560 }, + { url = "https://files.pythonhosted.org/packages/b1/b7/1200d354378ef52ec227395d95c2576330fd22a869f7a70e88e1447eb234/cffi-2.0.0-cp311-cp311-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:baf5215e0ab74c16e2dd324e8ec067ef59e41125d3eade2b863d294fd5035c92", size = 209613 }, + { url = "https://files.pythonhosted.org/packages/b8/56/6033f5e86e8cc9bb629f0077ba71679508bdf54a9a5e112a3c0b91870332/cffi-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:730cacb21e1bdff3ce90babf007d0a0917cc3e6492f336c2f0134101e0944f93", size = 216476 }, + { url = "https://files.pythonhosted.org/packages/dc/7f/55fecd70f7ece178db2f26128ec41430d8720f2d12ca97bf8f0a628207d5/cffi-2.0.0-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:6824f87845e3396029f3820c206e459ccc91760e8fa24422f8b0c3d1731cbec5", size = 203374 }, + { url = "https://files.pythonhosted.org/packages/84/ef/a7b77c8bdc0f77adc3b46888f1ad54be8f3b7821697a7b89126e829e676a/cffi-2.0.0-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:9de40a7b0323d889cf8d23d1ef214f565ab154443c42737dfe52ff82cf857664", size = 202597 }, + { url = "https://files.pythonhosted.org/packages/d7/91/500d892b2bf36529a75b77958edfcd5ad8e2ce4064ce2ecfeab2125d72d1/cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8941aaadaf67246224cee8c3803777eed332a19d909b47e29c9842ef1e79ac26", size = 215574 }, + { url = "https://files.pythonhosted.org/packages/44/64/58f6255b62b101093d5df22dcb752596066c7e89dd725e0afaed242a61be/cffi-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a05d0c237b3349096d3981b727493e22147f934b20f6f125a3eba8f994bec4a9", size = 218971 }, + { url = "https://files.pythonhosted.org/packages/ab/49/fa72cebe2fd8a55fbe14956f9970fe8eb1ac59e5df042f603ef7c8ba0adc/cffi-2.0.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:94698a9c5f91f9d138526b48fe26a199609544591f859c870d477351dc7b2414", size = 211972 }, + { url = "https://files.pythonhosted.org/packages/0b/28/dd0967a76aab36731b6ebfe64dec4e981aff7e0608f60c2d46b46982607d/cffi-2.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:5fed36fccc0612a53f1d4d9a816b50a36702c28a2aa880cb8a122b3466638743", size = 217078 }, + { url = "https://files.pythonhosted.org/packages/2b/c0/015b25184413d7ab0a410775fdb4a50fca20f5589b5dab1dbbfa3baad8ce/cffi-2.0.0-cp311-cp311-win32.whl", hash = "sha256:c649e3a33450ec82378822b3dad03cc228b8f5963c0c12fc3b1e0ab940f768a5", size = 172076 }, + { url = "https://files.pythonhosted.org/packages/ae/8f/dc5531155e7070361eb1b7e4c1a9d896d0cb21c49f807a6c03fd63fc877e/cffi-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:66f011380d0e49ed280c789fbd08ff0d40968ee7b665575489afa95c98196ab5", size = 182820 }, + { url = "https://files.pythonhosted.org/packages/95/5c/1b493356429f9aecfd56bc171285a4c4ac8697f76e9bbbbb105e537853a1/cffi-2.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:c6638687455baf640e37344fe26d37c404db8b80d037c3d29f58fe8d1c3b194d", size = 177635 }, + { url = "https://files.pythonhosted.org/packages/ea/47/4f61023ea636104d4f16ab488e268b93008c3d0bb76893b1b31db1f96802/cffi-2.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6d02d6655b0e54f54c4ef0b94eb6be0607b70853c45ce98bd278dc7de718be5d", size = 185271 }, + { url = "https://files.pythonhosted.org/packages/df/a2/781b623f57358e360d62cdd7a8c681f074a71d445418a776eef0aadb4ab4/cffi-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8eca2a813c1cb7ad4fb74d368c2ffbbb4789d377ee5bb8df98373c2cc0dee76c", size = 181048 }, + { url = "https://files.pythonhosted.org/packages/ff/df/a4f0fbd47331ceeba3d37c2e51e9dfc9722498becbeec2bd8bc856c9538a/cffi-2.0.0-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:21d1152871b019407d8ac3985f6775c079416c282e431a4da6afe7aefd2bccbe", size = 212529 }, + { url = "https://files.pythonhosted.org/packages/d5/72/12b5f8d3865bf0f87cf1404d8c374e7487dcf097a1c91c436e72e6badd83/cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062", size = 220097 }, + { url = "https://files.pythonhosted.org/packages/c2/95/7a135d52a50dfa7c882ab0ac17e8dc11cec9d55d2c18dda414c051c5e69e/cffi-2.0.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:1e3a615586f05fc4065a8b22b8152f0c1b00cdbc60596d187c2a74f9e3036e4e", size = 207983 }, + { url = "https://files.pythonhosted.org/packages/3a/c8/15cb9ada8895957ea171c62dc78ff3e99159ee7adb13c0123c001a2546c1/cffi-2.0.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:81afed14892743bbe14dacb9e36d9e0e504cd204e0b165062c488942b9718037", size = 206519 }, + { url = "https://files.pythonhosted.org/packages/78/2d/7fa73dfa841b5ac06c7b8855cfc18622132e365f5b81d02230333ff26e9e/cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba", size = 219572 }, + { url = "https://files.pythonhosted.org/packages/07/e0/267e57e387b4ca276b90f0434ff88b2c2241ad72b16d31836adddfd6031b/cffi-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3925dd22fa2b7699ed2617149842d2e6adde22b262fcbfada50e3d195e4b3a94", size = 222963 }, + { url = "https://files.pythonhosted.org/packages/b6/75/1f2747525e06f53efbd878f4d03bac5b859cbc11c633d0fb81432d98a795/cffi-2.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2c8f814d84194c9ea681642fd164267891702542f028a15fc97d4674b6206187", size = 221361 }, + { url = "https://files.pythonhosted.org/packages/7b/2b/2b6435f76bfeb6bbf055596976da087377ede68df465419d192acf00c437/cffi-2.0.0-cp312-cp312-win32.whl", hash = "sha256:da902562c3e9c550df360bfa53c035b2f241fed6d9aef119048073680ace4a18", size = 172932 }, + { url = "https://files.pythonhosted.org/packages/f8/ed/13bd4418627013bec4ed6e54283b1959cf6db888048c7cf4b4c3b5b36002/cffi-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:da68248800ad6320861f129cd9c1bf96ca849a2771a59e0344e88681905916f5", size = 183557 }, + { url = "https://files.pythonhosted.org/packages/95/31/9f7f93ad2f8eff1dbc1c3656d7ca5bfd8fb52c9d786b4dcf19b2d02217fa/cffi-2.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:4671d9dd5ec934cb9a73e7ee9676f9362aba54f7f34910956b84d727b0d73fb6", size = 177762 }, + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230 }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043 }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446 }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101 }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948 }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422 }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499 }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928 }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302 }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909 }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402 }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780 }, + { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320 }, + { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487 }, + { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049 }, + { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793 }, + { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300 }, + { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244 }, + { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828 }, + { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926 }, + { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328 }, + { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650 }, + { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687 }, + { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773 }, + { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013 }, + { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593 }, + { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354 }, + { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480 }, + { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584 }, + { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443 }, + { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437 }, + { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487 }, + { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726 }, + { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195 }, +] + +[[package]] +name = "cftime" +version = "1.6.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/65/dc/470ffebac2eb8c54151eb893055024fe81b1606e7c6ff8449a588e9cd17f/cftime-1.6.5.tar.gz", hash = "sha256:8225fed6b9b43fb87683ebab52130450fc1730011150d3092096a90e54d1e81e", size = 326605 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e4/f6/9da7aba9548ede62d25936b8b448acd7e53e5dcc710896f66863dcc9a318/cftime-1.6.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:474e728f5a387299418f8d7cb9c52248dcd5d977b2a01de7ec06bba572e26b02", size = 512733 }, + { url = "https://files.pythonhosted.org/packages/1f/d5/d86ad95fc1fd89947c34b495ff6487b6d361cf77500217423b4ebcb1f0c2/cftime-1.6.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ab9e80d4de815cac2e2d88a2335231254980e545d0196eb34ee8f7ed612645f1", size = 492946 }, + { url = "https://files.pythonhosted.org/packages/4f/93/d7e8dd76b03a9d5be41a3b3185feffc7ea5359228bdffe7aa43ac772a75b/cftime-1.6.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ad24a563784e4795cb3d04bd985895b5db49ace2cbb71fcf1321fd80141f9a52", size = 1689856 }, + { url = "https://files.pythonhosted.org/packages/3e/8d/86586c0d75110f774e46e2bd6d134e2d1cca1dedc9bb08c388fa3df76acd/cftime-1.6.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a3cda6fd12c7fb25eff40a6a857a2bf4d03e8cc71f80485d8ddc65ccbd80f16a", size = 1718573 }, + { url = "https://files.pythonhosted.org/packages/bb/fe/7956914cfc135992e89098ebbc67d683c51ace5366ba4b114fef1de89b21/cftime-1.6.5-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:28cda78d685397ba23d06273b9c916c3938d8d9e6872a537e76b8408a321369b", size = 1788563 }, + { url = "https://files.pythonhosted.org/packages/e5/c7/6669708fcfe1bb7b2a7ce693b8cc67165eac00d3ac5a5e8f6ce1be551ff9/cftime-1.6.5-cp311-cp311-win_amd64.whl", hash = "sha256:93ead088e3a216bdeb9368733a0ef89a7451dfc1d2de310c1c0366a56ad60dc8", size = 473631 }, + { url = "https://files.pythonhosted.org/packages/82/c5/d70cb1ab533ca790d7c9b69f98215fa4fead17f05547e928c8f2b8f96e54/cftime-1.6.5-cp311-cp311-win_arm64.whl", hash = "sha256:3384d69a0a7f3d45bded21a8cbcce66c8ba06c13498eac26c2de41b1b9b6e890", size = 459383 }, + { url = "https://files.pythonhosted.org/packages/b6/c1/e8cb7f78a3f87295450e7300ebaecf83076d96a99a76190593d4e1d2be40/cftime-1.6.5-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:eef25caed5ebd003a38719bd3ff8847cd52ef2ea56c3ebdb2c9345ba131fc7c5", size = 504175 }, + { url = "https://files.pythonhosted.org/packages/50/1a/86e1072b09b2f9049bb7378869f64b6747f96a4f3008142afed8955b52a4/cftime-1.6.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c87d2f3b949e45463e559233c69e6a9cf691b2b378c1f7556166adfabbd1c6b0", size = 485980 }, + { url = "https://files.pythonhosted.org/packages/35/28/d3177b60da3f308b60dee2aef2eb69997acfab1e863f0bf0d2a418396ce5/cftime-1.6.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:82cb413973cc51b55642b3a1ca5b28db5b93a294edbef7dc049c074b478b4647", size = 1591166 }, + { url = "https://files.pythonhosted.org/packages/d1/fd/a7266970312df65e68b5641b86e0540a739182f5e9c62eec6dbd29f18055/cftime-1.6.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:85ba8e7356d239cfe56ef7707ac30feaf67964642ac760a82e507ee3c5db4ac4", size = 1642614 }, + { url = "https://files.pythonhosted.org/packages/c4/73/f0035a4bc2df8885bb7bd5fe63659686ea1ec7d0cc74b4e3d50e447402e5/cftime-1.6.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:456039af7907a3146689bb80bfd8edabd074c7f3b4eca61f91b9c2670addd7ad", size = 1688090 }, + { url = "https://files.pythonhosted.org/packages/88/15/8856a0ab76708553ff597dd2e617b088c734ba87dc3fd395e2b2f3efffe8/cftime-1.6.5-cp312-cp312-win_amd64.whl", hash = "sha256:da84534c43699960dc980a9a765c33433c5de1a719a4916748c2d0e97a071e44", size = 464840 }, + { url = "https://files.pythonhosted.org/packages/3a/85/451009a986d9273d2208fc0898aa00262275b5773259bf3f942f6716a9e7/cftime-1.6.5-cp312-cp312-win_arm64.whl", hash = "sha256:c62cd8db9ea40131eea7d4523691c5d806d3265d31279e4a58574a42c28acd77", size = 450534 }, + { url = "https://files.pythonhosted.org/packages/2e/60/74ea344b3b003fada346ed98a6899085d6fd4c777df608992d90c458fda6/cftime-1.6.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4aba66fd6497711a47c656f3a732c2d1755ad15f80e323c44a8716ebde39ddd5", size = 502453 }, + { url = "https://files.pythonhosted.org/packages/1e/14/adb293ac6127079b49ff11c05cf3d5ce5c1f17d097f326dc02d74ddfcb6e/cftime-1.6.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:89e7cba699242366e67d6fb5aee579440e791063f92a93853610c91647167c0d", size = 484541 }, + { url = "https://files.pythonhosted.org/packages/4f/74/bb8a4566af8d0ef3f045d56c462a9115da4f04b07c7fbbf2b4875223eebd/cftime-1.6.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2f1eb43d7a7b919ec99aee709fb62ef87ef1cf0679829ef93d37cc1c725781e9", size = 1591014 }, + { url = "https://files.pythonhosted.org/packages/ba/08/52f06ff2f04d376f9cd2c211aefcf2b37f1978e43289341f362fc99f6a0e/cftime-1.6.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e02a1d80ffc33fe469c7db68aa24c4a87f01da0c0c621373e5edadc92964900b", size = 1633625 }, + { url = "https://files.pythonhosted.org/packages/cf/33/03e0b23d58ea8fab94ecb4f7c5b721e844a0800c13694876149d98830a73/cftime-1.6.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:18ab754805233cdd889614b2b3b86a642f6d51a57a1ec327c48053f3414f87d8", size = 1684269 }, + { url = "https://files.pythonhosted.org/packages/a4/60/a0cfba63847b43599ef1cdbbf682e61894994c22b9a79fd9e1e8c7e9de41/cftime-1.6.5-cp313-cp313-win_amd64.whl", hash = "sha256:6c27add8f907f4a4cd400e89438f2ea33e2eb5072541a157a4d013b7dbe93f9c", size = 465364 }, + { url = "https://files.pythonhosted.org/packages/3d/e8/ec32f2aef22c15604e6fda39ff8d581a00b5469349f8fba61640d5358d2c/cftime-1.6.5-cp313-cp313-win_arm64.whl", hash = "sha256:31d1ff8f6bbd4ca209099d24459ec16dea4fb4c9ab740fbb66dd057ccbd9b1b9", size = 450468 }, + { url = "https://files.pythonhosted.org/packages/ea/6c/a9618f589688358e279720f5c0fe67ef0077fba07334ce26895403ebc260/cftime-1.6.5-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:c69ce3bdae6a322cbb44e9ebc20770d47748002fb9d68846a1e934f1bd5daf0b", size = 502725 }, + { url = "https://files.pythonhosted.org/packages/d8/e3/da3c36398bfb730b96248d006cabaceed87e401ff56edafb2a978293e228/cftime-1.6.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:e62e9f2943e014c5ef583245bf2e878398af131c97e64f8cd47c1d7baef5c4e2", size = 485445 }, + { url = "https://files.pythonhosted.org/packages/32/93/b05939e5abd14bd1ab69538bbe374b4ee2a15467b189ff895e9a8cdaddf6/cftime-1.6.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7da5fdaa4360d8cb89b71b8ded9314f2246aa34581e8105c94ad58d6102d9e4f", size = 1584434 }, + { url = "https://files.pythonhosted.org/packages/7f/89/648397f9936e0b330999c4e776ebf296ec3c6a65f9901687dbca4ab820da/cftime-1.6.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bff865b4ea4304f2744a1ad2b8149b8328b321dd7a2b9746ef926d229bd7cd49", size = 1609812 }, + { url = "https://files.pythonhosted.org/packages/e7/0f/901b4835aa67ad3e915605d4e01d0af80a44b114eefab74ae33de6d36933/cftime-1.6.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:e552c5d1c8a58f25af7521e49237db7ca52ed2953e974fe9f7c4491e95fdd36c", size = 1669768 }, + { url = "https://files.pythonhosted.org/packages/22/d5/e605e4b28363e7a9ae98ed12cabbda5b155b6009270e6a231d8f10182a17/cftime-1.6.5-cp314-cp314-win_amd64.whl", hash = "sha256:e645b095dc50a38ac454b7e7f0742f639e7d7f6b108ad329358544a6ff8c9ba2", size = 463818 }, + { url = "https://files.pythonhosted.org/packages/3d/89/a8f85ae697ff10206ec401c2621f5ca9f327554f586d62f244739ceeb347/cftime-1.6.5-cp314-cp314-win_arm64.whl", hash = "sha256:b9044d7ac82d3d8af189df1032fdc871bbd3f3dd41a6ec79edceb5029b71e6e0", size = 459862 }, + { url = "https://files.pythonhosted.org/packages/ab/05/7410e12fd03a0c52717e74e6a1b49958810807dda212e23b65d43ea99676/cftime-1.6.5-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:9ef56460cb0576e1a9161e1428c9e1a633f809a23fa9d598f313748c1ae5064e", size = 533781 }, + { url = "https://files.pythonhosted.org/packages/44/ba/10e3546426d3ed9f9cc82e4a99836bb6fac1642c7830f7bdd0ac1c3f0805/cftime-1.6.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:4f4873d38b10032f9f3111c547a1d485519ae64eee6a7a2d091f1f8b08e1ba50", size = 515218 }, + { url = "https://files.pythonhosted.org/packages/bd/68/efa11eae867749e921bfec6a865afdba8166e96188112dde70bb8bb49254/cftime-1.6.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ccce0f4c9d3f38dd948a117e578b50d0e0db11e2ca9435fb358fd524813e4b61", size = 1579932 }, + { url = "https://files.pythonhosted.org/packages/9d/6c/0971e602c1390a423e6621dfbad9f1d375186bdaf9c9c7f75e06f1fbf355/cftime-1.6.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:19cbfc5152fb0b34ce03acf9668229af388d7baa63a78f936239cb011ccbe6b1", size = 1555894 }, + { url = "https://files.pythonhosted.org/packages/ad/fc/8475a15b7c3209a4a68b563dfc5e01ce74f2d8b9822372c3d30c68ab7f39/cftime-1.6.5-cp314-cp314t-win_amd64.whl", hash = "sha256:4470cd5ef3c2514566f53efbcbb64dd924fa0584637d90285b2f983bd4ee7d97", size = 513027 }, + { url = "https://files.pythonhosted.org/packages/f7/80/4ecbda8318fbf40ad4e005a4a93aebba69e81382e5b4c6086251cd5d0ee8/cftime-1.6.5-cp314-cp314t-win_arm64.whl", hash = "sha256:034c15a67144a0a5590ef150c99f844897618b148b87131ed34fda7072614662", size = 469065 }, +] + +[[package]] +name = "charset-normalizer" +version = "3.4.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/13/69/33ddede1939fdd074bce5434295f38fae7136463422fe4fd3e0e89b98062/charset_normalizer-3.4.4.tar.gz", hash = "sha256:94537985111c35f28720e43603b8e7b43a6ecfb2ce1d3058bbe955b73404e21a", size = 129418 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/27/c6491ff4954e58a10f69ad90aca8a1b6fe9c5d3c6f380907af3c37435b59/charset_normalizer-3.4.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6e1fcf0720908f200cd21aa4e6750a48ff6ce4afe7ff5a79a90d5ed8a08296f8", size = 206988 }, + { url = "https://files.pythonhosted.org/packages/94/59/2e87300fe67ab820b5428580a53cad894272dbb97f38a7a814a2a1ac1011/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5f819d5fe9234f9f82d75bdfa9aef3a3d72c4d24a6e57aeaebba32a704553aa0", size = 147324 }, + { url = "https://files.pythonhosted.org/packages/07/fb/0cf61dc84b2b088391830f6274cb57c82e4da8bbc2efeac8c025edb88772/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a59cb51917aa591b1c4e6a43c132f0cdc3c76dbad6155df4e28ee626cc77a0a3", size = 142742 }, + { url = "https://files.pythonhosted.org/packages/62/8b/171935adf2312cd745d290ed93cf16cf0dfe320863ab7cbeeae1dcd6535f/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8ef3c867360f88ac904fd3f5e1f902f13307af9052646963ee08ff4f131adafc", size = 160863 }, + { url = "https://files.pythonhosted.org/packages/09/73/ad875b192bda14f2173bfc1bc9a55e009808484a4b256748d931b6948442/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d9e45d7faa48ee908174d8fe84854479ef838fc6a705c9315372eacbc2f02897", size = 157837 }, + { url = "https://files.pythonhosted.org/packages/6d/fc/de9cce525b2c5b94b47c70a4b4fb19f871b24995c728e957ee68ab1671ea/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:840c25fb618a231545cbab0564a799f101b63b9901f2569faecd6b222ac72381", size = 151550 }, + { url = "https://files.pythonhosted.org/packages/55/c2/43edd615fdfba8c6f2dfbd459b25a6b3b551f24ea21981e23fb768503ce1/charset_normalizer-3.4.4-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ca5862d5b3928c4940729dacc329aa9102900382fea192fc5e52eb69d6093815", size = 149162 }, + { url = "https://files.pythonhosted.org/packages/03/86/bde4ad8b4d0e9429a4e82c1e8f5c659993a9a863ad62c7df05cf7b678d75/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d9c7f57c3d666a53421049053eaacdd14bbd0a528e2186fcb2e672effd053bb0", size = 150019 }, + { url = "https://files.pythonhosted.org/packages/1f/86/a151eb2af293a7e7bac3a739b81072585ce36ccfb4493039f49f1d3cae8c/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:277e970e750505ed74c832b4bf75dac7476262ee2a013f5574dd49075879e161", size = 143310 }, + { url = "https://files.pythonhosted.org/packages/b5/fe/43dae6144a7e07b87478fdfc4dbe9efd5defb0e7ec29f5f58a55aeef7bf7/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:31fd66405eaf47bb62e8cd575dc621c56c668f27d46a61d975a249930dd5e2a4", size = 162022 }, + { url = "https://files.pythonhosted.org/packages/80/e6/7aab83774f5d2bca81f42ac58d04caf44f0cc2b65fc6db2b3b2e8a05f3b3/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:0d3d8f15c07f86e9ff82319b3d9ef6f4bf907608f53fe9d92b28ea9ae3d1fd89", size = 149383 }, + { url = "https://files.pythonhosted.org/packages/4f/e8/b289173b4edae05c0dde07f69f8db476a0b511eac556dfe0d6bda3c43384/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:9f7fcd74d410a36883701fafa2482a6af2ff5ba96b9a620e9e0721e28ead5569", size = 159098 }, + { url = "https://files.pythonhosted.org/packages/d8/df/fe699727754cae3f8478493c7f45f777b17c3ef0600e28abfec8619eb49c/charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ebf3e58c7ec8a8bed6d66a75d7fb37b55e5015b03ceae72a8e7c74495551e224", size = 152991 }, + { url = "https://files.pythonhosted.org/packages/1a/86/584869fe4ddb6ffa3bd9f491b87a01568797fb9bd8933f557dba9771beaf/charset_normalizer-3.4.4-cp311-cp311-win32.whl", hash = "sha256:eecbc200c7fd5ddb9a7f16c7decb07b566c29fa2161a16cf67b8d068bd21690a", size = 99456 }, + { url = "https://files.pythonhosted.org/packages/65/f6/62fdd5feb60530f50f7e38b4f6a1d5203f4d16ff4f9f0952962c044e919a/charset_normalizer-3.4.4-cp311-cp311-win_amd64.whl", hash = "sha256:5ae497466c7901d54b639cf42d5b8c1b6a4fead55215500d2f486d34db48d016", size = 106978 }, + { url = "https://files.pythonhosted.org/packages/7a/9d/0710916e6c82948b3be62d9d398cb4fcf4e97b56d6a6aeccd66c4b2f2bd5/charset_normalizer-3.4.4-cp311-cp311-win_arm64.whl", hash = "sha256:65e2befcd84bc6f37095f5961e68a6f077bf44946771354a28ad434c2cce0ae1", size = 99969 }, + { url = "https://files.pythonhosted.org/packages/f3/85/1637cd4af66fa687396e757dec650f28025f2a2f5a5531a3208dc0ec43f2/charset_normalizer-3.4.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0a98e6759f854bd25a58a73fa88833fba3b7c491169f86ce1180c948ab3fd394", size = 208425 }, + { url = "https://files.pythonhosted.org/packages/9d/6a/04130023fef2a0d9c62d0bae2649b69f7b7d8d24ea5536feef50551029df/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b5b290ccc2a263e8d185130284f8501e3e36c5e02750fc6b6bdeb2e9e96f1e25", size = 148162 }, + { url = "https://files.pythonhosted.org/packages/78/29/62328d79aa60da22c9e0b9a66539feae06ca0f5a4171ac4f7dc285b83688/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74bb723680f9f7a6234dcf67aea57e708ec1fbdf5699fb91dfd6f511b0a320ef", size = 144558 }, + { url = "https://files.pythonhosted.org/packages/86/bb/b32194a4bf15b88403537c2e120b817c61cd4ecffa9b6876e941c3ee38fe/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f1e34719c6ed0b92f418c7c780480b26b5d9c50349e9a9af7d76bf757530350d", size = 161497 }, + { url = "https://files.pythonhosted.org/packages/19/89/a54c82b253d5b9b111dc74aca196ba5ccfcca8242d0fb64146d4d3183ff1/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2437418e20515acec67d86e12bf70056a33abdacb5cb1655042f6538d6b085a8", size = 159240 }, + { url = "https://files.pythonhosted.org/packages/c0/10/d20b513afe03acc89ec33948320a5544d31f21b05368436d580dec4e234d/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11d694519d7f29d6cd09f6ac70028dba10f92f6cdd059096db198c283794ac86", size = 153471 }, + { url = "https://files.pythonhosted.org/packages/61/fa/fbf177b55bdd727010f9c0a3c49eefa1d10f960e5f09d1d887bf93c2e698/charset_normalizer-3.4.4-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ac1c4a689edcc530fc9d9aa11f5774b9e2f33f9a0c6a57864e90908f5208d30a", size = 150864 }, + { url = "https://files.pythonhosted.org/packages/05/12/9fbc6a4d39c0198adeebbde20b619790e9236557ca59fc40e0e3cebe6f40/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:21d142cc6c0ec30d2efee5068ca36c128a30b0f2c53c1c07bd78cb6bc1d3be5f", size = 150647 }, + { url = "https://files.pythonhosted.org/packages/ad/1f/6a9a593d52e3e8c5d2b167daf8c6b968808efb57ef4c210acb907c365bc4/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:5dbe56a36425d26d6cfb40ce79c314a2e4dd6211d51d6d2191c00bed34f354cc", size = 145110 }, + { url = "https://files.pythonhosted.org/packages/30/42/9a52c609e72471b0fc54386dc63c3781a387bb4fe61c20231a4ebcd58bdd/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:5bfbb1b9acf3334612667b61bd3002196fe2a1eb4dd74d247e0f2a4d50ec9bbf", size = 162839 }, + { url = "https://files.pythonhosted.org/packages/c4/5b/c0682bbf9f11597073052628ddd38344a3d673fda35a36773f7d19344b23/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:d055ec1e26e441f6187acf818b73564e6e6282709e9bcb5b63f5b23068356a15", size = 150667 }, + { url = "https://files.pythonhosted.org/packages/e4/24/a41afeab6f990cf2daf6cb8c67419b63b48cf518e4f56022230840c9bfb2/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:af2d8c67d8e573d6de5bc30cdb27e9b95e49115cd9baad5ddbd1a6207aaa82a9", size = 160535 }, + { url = "https://files.pythonhosted.org/packages/2a/e5/6a4ce77ed243c4a50a1fecca6aaaab419628c818a49434be428fe24c9957/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:780236ac706e66881f3b7f2f32dfe90507a09e67d1d454c762cf642e6e1586e0", size = 154816 }, + { url = "https://files.pythonhosted.org/packages/a8/ef/89297262b8092b312d29cdb2517cb1237e51db8ecef2e9af5edbe7b683b1/charset_normalizer-3.4.4-cp312-cp312-win32.whl", hash = "sha256:5833d2c39d8896e4e19b689ffc198f08ea58116bee26dea51e362ecc7cd3ed26", size = 99694 }, + { url = "https://files.pythonhosted.org/packages/3d/2d/1e5ed9dd3b3803994c155cd9aacb60c82c331bad84daf75bcb9c91b3295e/charset_normalizer-3.4.4-cp312-cp312-win_amd64.whl", hash = "sha256:a79cfe37875f822425b89a82333404539ae63dbdddf97f84dcbc3d339aae9525", size = 107131 }, + { url = "https://files.pythonhosted.org/packages/d0/d9/0ed4c7098a861482a7b6a95603edce4c0d9db2311af23da1fb2b75ec26fc/charset_normalizer-3.4.4-cp312-cp312-win_arm64.whl", hash = "sha256:376bec83a63b8021bb5c8ea75e21c4ccb86e7e45ca4eb81146091b56599b80c3", size = 100390 }, + { url = "https://files.pythonhosted.org/packages/97/45/4b3a1239bbacd321068ea6e7ac28875b03ab8bc0aa0966452db17cd36714/charset_normalizer-3.4.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e1f185f86a6f3403aa2420e815904c67b2f9ebc443f045edd0de921108345794", size = 208091 }, + { url = "https://files.pythonhosted.org/packages/7d/62/73a6d7450829655a35bb88a88fca7d736f9882a27eacdca2c6d505b57e2e/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b39f987ae8ccdf0d2642338faf2abb1862340facc796048b604ef14919e55ed", size = 147936 }, + { url = "https://files.pythonhosted.org/packages/89/c5/adb8c8b3d6625bef6d88b251bbb0d95f8205831b987631ab0c8bb5d937c2/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3162d5d8ce1bb98dd51af660f2121c55d0fa541b46dff7bb9b9f86ea1d87de72", size = 144180 }, + { url = "https://files.pythonhosted.org/packages/91/ed/9706e4070682d1cc219050b6048bfd293ccf67b3d4f5a4f39207453d4b99/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:81d5eb2a312700f4ecaa977a8235b634ce853200e828fbadf3a9c50bab278328", size = 161346 }, + { url = "https://files.pythonhosted.org/packages/d5/0d/031f0d95e4972901a2f6f09ef055751805ff541511dc1252ba3ca1f80cf5/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5bd2293095d766545ec1a8f612559f6b40abc0eb18bb2f5d1171872d34036ede", size = 158874 }, + { url = "https://files.pythonhosted.org/packages/f5/83/6ab5883f57c9c801ce5e5677242328aa45592be8a00644310a008d04f922/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a8a8b89589086a25749f471e6a900d3f662d1d3b6e2e59dcecf787b1cc3a1894", size = 153076 }, + { url = "https://files.pythonhosted.org/packages/75/1e/5ff781ddf5260e387d6419959ee89ef13878229732732ee73cdae01800f2/charset_normalizer-3.4.4-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:bc7637e2f80d8530ee4a78e878bce464f70087ce73cf7c1caf142416923b98f1", size = 150601 }, + { url = "https://files.pythonhosted.org/packages/d7/57/71be810965493d3510a6ca79b90c19e48696fb1ff964da319334b12677f0/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f8bf04158c6b607d747e93949aa60618b61312fe647a6369f88ce2ff16043490", size = 150376 }, + { url = "https://files.pythonhosted.org/packages/e5/d5/c3d057a78c181d007014feb7e9f2e65905a6c4ef182c0ddf0de2924edd65/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:554af85e960429cf30784dd47447d5125aaa3b99a6f0683589dbd27e2f45da44", size = 144825 }, + { url = "https://files.pythonhosted.org/packages/e6/8c/d0406294828d4976f275ffbe66f00266c4b3136b7506941d87c00cab5272/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:74018750915ee7ad843a774364e13a3db91682f26142baddf775342c3f5b1133", size = 162583 }, + { url = "https://files.pythonhosted.org/packages/d7/24/e2aa1f18c8f15c4c0e932d9287b8609dd30ad56dbe41d926bd846e22fb8d/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:c0463276121fdee9c49b98908b3a89c39be45d86d1dbaa22957e38f6321d4ce3", size = 150366 }, + { url = "https://files.pythonhosted.org/packages/e4/5b/1e6160c7739aad1e2df054300cc618b06bf784a7a164b0f238360721ab86/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:362d61fd13843997c1c446760ef36f240cf81d3ebf74ac62652aebaf7838561e", size = 160300 }, + { url = "https://files.pythonhosted.org/packages/7a/10/f882167cd207fbdd743e55534d5d9620e095089d176d55cb22d5322f2afd/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a26f18905b8dd5d685d6d07b0cdf98a79f3c7a918906af7cc143ea2e164c8bc", size = 154465 }, + { url = "https://files.pythonhosted.org/packages/89/66/c7a9e1b7429be72123441bfdbaf2bc13faab3f90b933f664db506dea5915/charset_normalizer-3.4.4-cp313-cp313-win32.whl", hash = "sha256:9b35f4c90079ff2e2edc5b26c0c77925e5d2d255c42c74fdb70fb49b172726ac", size = 99404 }, + { url = "https://files.pythonhosted.org/packages/c4/26/b9924fa27db384bdcd97ab83b4f0a8058d96ad9626ead570674d5e737d90/charset_normalizer-3.4.4-cp313-cp313-win_amd64.whl", hash = "sha256:b435cba5f4f750aa6c0a0d92c541fb79f69a387c91e61f1795227e4ed9cece14", size = 107092 }, + { url = "https://files.pythonhosted.org/packages/af/8f/3ed4bfa0c0c72a7ca17f0380cd9e4dd842b09f664e780c13cff1dcf2ef1b/charset_normalizer-3.4.4-cp313-cp313-win_arm64.whl", hash = "sha256:542d2cee80be6f80247095cc36c418f7bddd14f4a6de45af91dfad36d817bba2", size = 100408 }, + { url = "https://files.pythonhosted.org/packages/2a/35/7051599bd493e62411d6ede36fd5af83a38f37c4767b92884df7301db25d/charset_normalizer-3.4.4-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:da3326d9e65ef63a817ecbcc0df6e94463713b754fe293eaa03da99befb9a5bd", size = 207746 }, + { url = "https://files.pythonhosted.org/packages/10/9a/97c8d48ef10d6cd4fcead2415523221624bf58bcf68a802721a6bc807c8f/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8af65f14dc14a79b924524b1e7fffe304517b2bff5a58bf64f30b98bbc5079eb", size = 147889 }, + { url = "https://files.pythonhosted.org/packages/10/bf/979224a919a1b606c82bd2c5fa49b5c6d5727aa47b4312bb27b1734f53cd/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74664978bb272435107de04e36db5a9735e78232b85b77d45cfb38f758efd33e", size = 143641 }, + { url = "https://files.pythonhosted.org/packages/ba/33/0ad65587441fc730dc7bd90e9716b30b4702dc7b617e6ba4997dc8651495/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:752944c7ffbfdd10c074dc58ec2d5a8a4cd9493b314d367c14d24c17684ddd14", size = 160779 }, + { url = "https://files.pythonhosted.org/packages/67/ed/331d6b249259ee71ddea93f6f2f0a56cfebd46938bde6fcc6f7b9a3d0e09/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d1f13550535ad8cff21b8d757a3257963e951d96e20ec82ab44bc64aeb62a191", size = 159035 }, + { url = "https://files.pythonhosted.org/packages/67/ff/f6b948ca32e4f2a4576aa129d8bed61f2e0543bf9f5f2b7fc3758ed005c9/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838", size = 152542 }, + { url = "https://files.pythonhosted.org/packages/16/85/276033dcbcc369eb176594de22728541a925b2632f9716428c851b149e83/charset_normalizer-3.4.4-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:cb6254dc36b47a990e59e1068afacdcd02958bdcce30bb50cc1700a8b9d624a6", size = 149524 }, + { url = "https://files.pythonhosted.org/packages/9e/f2/6a2a1f722b6aba37050e626530a46a68f74e63683947a8acff92569f979a/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c8ae8a0f02f57a6e61203a31428fa1d677cbe50c93622b4149d5c0f319c1d19e", size = 150395 }, + { url = "https://files.pythonhosted.org/packages/60/bb/2186cb2f2bbaea6338cad15ce23a67f9b0672929744381e28b0592676824/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:47cc91b2f4dd2833fddaedd2893006b0106129d4b94fdb6af1f4ce5a9965577c", size = 143680 }, + { url = "https://files.pythonhosted.org/packages/7d/a5/bf6f13b772fbb2a90360eb620d52ed8f796f3c5caee8398c3b2eb7b1c60d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:82004af6c302b5d3ab2cfc4cc5f29db16123b1a8417f2e25f9066f91d4411090", size = 162045 }, + { url = "https://files.pythonhosted.org/packages/df/c5/d1be898bf0dc3ef9030c3825e5d3b83f2c528d207d246cbabe245966808d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:2b7d8f6c26245217bd2ad053761201e9f9680f8ce52f0fcd8d0755aeae5b2152", size = 149687 }, + { url = "https://files.pythonhosted.org/packages/a5/42/90c1f7b9341eef50c8a1cb3f098ac43b0508413f33affd762855f67a410e/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:799a7a5e4fb2d5898c60b640fd4981d6a25f1c11790935a44ce38c54e985f828", size = 160014 }, + { url = "https://files.pythonhosted.org/packages/76/be/4d3ee471e8145d12795ab655ece37baed0929462a86e72372fd25859047c/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99ae2cffebb06e6c22bdc25801d7b30f503cc87dbd283479e7b606f70aff57ec", size = 154044 }, + { url = "https://files.pythonhosted.org/packages/b0/6f/8f7af07237c34a1defe7defc565a9bc1807762f672c0fde711a4b22bf9c0/charset_normalizer-3.4.4-cp314-cp314-win32.whl", hash = "sha256:f9d332f8c2a2fcbffe1378594431458ddbef721c1769d78e2cbc06280d8155f9", size = 99940 }, + { url = "https://files.pythonhosted.org/packages/4b/51/8ade005e5ca5b0d80fb4aff72a3775b325bdc3d27408c8113811a7cbe640/charset_normalizer-3.4.4-cp314-cp314-win_amd64.whl", hash = "sha256:8a6562c3700cce886c5be75ade4a5db4214fda19fede41d9792d100288d8f94c", size = 107104 }, + { url = "https://files.pythonhosted.org/packages/da/5f/6b8f83a55bb8278772c5ae54a577f3099025f9ade59d0136ac24a0df4bde/charset_normalizer-3.4.4-cp314-cp314-win_arm64.whl", hash = "sha256:de00632ca48df9daf77a2c65a484531649261ec9f25489917f09e455cb09ddb2", size = 100743 }, + { url = "https://files.pythonhosted.org/packages/0a/4c/925909008ed5a988ccbb72dcc897407e5d6d3bd72410d69e051fc0c14647/charset_normalizer-3.4.4-py3-none-any.whl", hash = "sha256:7a32c560861a02ff789ad905a2fe94e3f840803362c84fecf1851cb4cf3dc37f", size = 53402 }, +] + +[[package]] +name = "click" +version = "8.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3d/fa/656b739db8587d7b5dfa22e22ed02566950fbfbcdc20311993483657a5c0/click-8.3.1.tar.gz", hash = "sha256:12ff4785d337a1bb490bb7e9c2b1ee5da3112e94a8622f26a6c77f5d2fc6842a", size = 295065 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/98/78/01c019cdb5d6498122777c1a43056ebb3ebfeef2076d9d026bfe15583b2b/click-8.3.1-py3-none-any.whl", hash = "sha256:981153a64e25f12d547d3426c367a4857371575ee7ad18df2a6183ab0545b2a6", size = 108274 }, +] + +[[package]] +name = "cloudpickle" +version = "3.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/27/fb/576f067976d320f5f0114a8d9fa1215425441bb35627b1993e5afd8111e5/cloudpickle-3.1.2.tar.gz", hash = "sha256:7fda9eb655c9c230dab534f1983763de5835249750e85fbcef43aaa30a9a2414", size = 22330 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/88/39/799be3f2f0f38cc727ee3b4f1445fe6d5e4133064ec2e4115069418a5bb6/cloudpickle-3.1.2-py3-none-any.whl", hash = "sha256:9acb47f6afd73f60dc1df93bb801b472f05ff42fa6c84167d25cb206be1fbf4a", size = 22228 }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335 }, +] + +[[package]] +name = "configobj" +version = "5.0.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f5/c4/c7f9e41bc2e5f8eeae4a08a01c91b2aea3dfab40a3e14b25e87e7db8d501/configobj-5.0.9.tar.gz", hash = "sha256:03c881bbf23aa07bccf1b837005975993c4ab4427ba57f959afdd9d1a2386848", size = 101518 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a6/c4/0679472c60052c27efa612b4cd3ddd2a23e885dcdc73461781d2c802d39e/configobj-5.0.9-py2.py3-none-any.whl", hash = "sha256:1ba10c5b6ee16229c79a05047aeda2b55eb4e80d7c7d8ecf17ec1ca600c79882", size = 35615 }, +] + +[[package]] +name = "contourpy" +version = "1.3.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/66/54/eb9bfc647b19f2009dd5c7f5ec51c4e6ca831725f1aea7a993034f483147/contourpy-1.3.2.tar.gz", hash = "sha256:b6945942715a034c671b7fc54f9588126b0b8bf23db2696e3ca8328f3ff0ab54", size = 13466130 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/b9/ede788a0b56fc5b071639d06c33cb893f68b1178938f3425debebe2dab78/contourpy-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6a37a2fb93d4df3fc4c0e363ea4d16f83195fc09c891bc8ce072b9d084853445", size = 269636 }, + { url = "https://files.pythonhosted.org/packages/e6/75/3469f011d64b8bbfa04f709bfc23e1dd71be54d05b1b083be9f5b22750d1/contourpy-1.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b7cd50c38f500bbcc9b6a46643a40e0913673f869315d8e70de0438817cb7773", size = 254636 }, + { url = "https://files.pythonhosted.org/packages/8d/2f/95adb8dae08ce0ebca4fd8e7ad653159565d9739128b2d5977806656fcd2/contourpy-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6658ccc7251a4433eebd89ed2672c2ed96fba367fd25ca9512aa92a4b46c4f1", size = 313053 }, + { url = "https://files.pythonhosted.org/packages/c3/a6/8ccf97a50f31adfa36917707fe39c9a0cbc24b3bbb58185577f119736cc9/contourpy-1.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:70771a461aaeb335df14deb6c97439973d253ae70660ca085eec25241137ef43", size = 352985 }, + { url = "https://files.pythonhosted.org/packages/1d/b6/7925ab9b77386143f39d9c3243fdd101621b4532eb126743201160ffa7e6/contourpy-1.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65a887a6e8c4cd0897507d814b14c54a8c2e2aa4ac9f7686292f9769fcf9a6ab", size = 323750 }, + { url = "https://files.pythonhosted.org/packages/c2/f3/20c5d1ef4f4748e52d60771b8560cf00b69d5c6368b5c2e9311bcfa2a08b/contourpy-1.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3859783aefa2b8355697f16642695a5b9792e7a46ab86da1118a4a23a51a33d7", size = 326246 }, + { url = "https://files.pythonhosted.org/packages/8c/e5/9dae809e7e0b2d9d70c52b3d24cba134dd3dad979eb3e5e71f5df22ed1f5/contourpy-1.3.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:eab0f6db315fa4d70f1d8ab514e527f0366ec021ff853d7ed6a2d33605cf4b83", size = 1308728 }, + { url = "https://files.pythonhosted.org/packages/e2/4a/0058ba34aeea35c0b442ae61a4f4d4ca84d6df8f91309bc2d43bb8dd248f/contourpy-1.3.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d91a3ccc7fea94ca0acab82ceb77f396d50a1f67412efe4c526f5d20264e6ecd", size = 1375762 }, + { url = "https://files.pythonhosted.org/packages/09/33/7174bdfc8b7767ef2c08ed81244762d93d5c579336fc0b51ca57b33d1b80/contourpy-1.3.2-cp311-cp311-win32.whl", hash = "sha256:1c48188778d4d2f3d48e4643fb15d8608b1d01e4b4d6b0548d9b336c28fc9b6f", size = 178196 }, + { url = "https://files.pythonhosted.org/packages/5e/fe/4029038b4e1c4485cef18e480b0e2cd2d755448bb071eb9977caac80b77b/contourpy-1.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:5ebac872ba09cb8f2131c46b8739a7ff71de28a24c869bcad554477eb089a878", size = 222017 }, + { url = "https://files.pythonhosted.org/packages/34/f7/44785876384eff370c251d58fd65f6ad7f39adce4a093c934d4a67a7c6b6/contourpy-1.3.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4caf2bcd2969402bf77edc4cb6034c7dd7c0803213b3523f111eb7460a51b8d2", size = 271580 }, + { url = "https://files.pythonhosted.org/packages/93/3b/0004767622a9826ea3d95f0e9d98cd8729015768075d61f9fea8eeca42a8/contourpy-1.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:82199cb78276249796419fe36b7386bd8d2cc3f28b3bc19fe2454fe2e26c4c15", size = 255530 }, + { url = "https://files.pythonhosted.org/packages/e7/bb/7bd49e1f4fa805772d9fd130e0d375554ebc771ed7172f48dfcd4ca61549/contourpy-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:106fab697af11456fcba3e352ad50effe493a90f893fca6c2ca5c033820cea92", size = 307688 }, + { url = "https://files.pythonhosted.org/packages/fc/97/e1d5dbbfa170725ef78357a9a0edc996b09ae4af170927ba8ce977e60a5f/contourpy-1.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d14f12932a8d620e307f715857107b1d1845cc44fdb5da2bc8e850f5ceba9f87", size = 347331 }, + { url = "https://files.pythonhosted.org/packages/6f/66/e69e6e904f5ecf6901be3dd16e7e54d41b6ec6ae3405a535286d4418ffb4/contourpy-1.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:532fd26e715560721bb0d5fc7610fce279b3699b018600ab999d1be895b09415", size = 318963 }, + { url = "https://files.pythonhosted.org/packages/a8/32/b8a1c8965e4f72482ff2d1ac2cd670ce0b542f203c8e1d34e7c3e6925da7/contourpy-1.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f26b383144cf2d2c29f01a1e8170f50dacf0eac02d64139dcd709a8ac4eb3cfe", size = 323681 }, + { url = "https://files.pythonhosted.org/packages/30/c6/12a7e6811d08757c7162a541ca4c5c6a34c0f4e98ef2b338791093518e40/contourpy-1.3.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c49f73e61f1f774650a55d221803b101d966ca0c5a2d6d5e4320ec3997489441", size = 1308674 }, + { url = "https://files.pythonhosted.org/packages/2a/8a/bebe5a3f68b484d3a2b8ffaf84704b3e343ef1addea528132ef148e22b3b/contourpy-1.3.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3d80b2c0300583228ac98d0a927a1ba6a2ba6b8a742463c564f1d419ee5b211e", size = 1380480 }, + { url = "https://files.pythonhosted.org/packages/34/db/fcd325f19b5978fb509a7d55e06d99f5f856294c1991097534360b307cf1/contourpy-1.3.2-cp312-cp312-win32.whl", hash = "sha256:90df94c89a91b7362e1142cbee7568f86514412ab8a2c0d0fca72d7e91b62912", size = 178489 }, + { url = "https://files.pythonhosted.org/packages/01/c8/fadd0b92ffa7b5eb5949bf340a63a4a496a6930a6c37a7ba0f12acb076d6/contourpy-1.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:8c942a01d9163e2e5cfb05cb66110121b8d07ad438a17f9e766317bcb62abf73", size = 223042 }, + { url = "https://files.pythonhosted.org/packages/2e/61/5673f7e364b31e4e7ef6f61a4b5121c5f170f941895912f773d95270f3a2/contourpy-1.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:de39db2604ae755316cb5967728f4bea92685884b1e767b7c24e983ef5f771cb", size = 271630 }, + { url = "https://files.pythonhosted.org/packages/ff/66/a40badddd1223822c95798c55292844b7e871e50f6bfd9f158cb25e0bd39/contourpy-1.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3f9e896f447c5c8618f1edb2bafa9a4030f22a575ec418ad70611450720b5b08", size = 255670 }, + { url = "https://files.pythonhosted.org/packages/1e/c7/cf9fdee8200805c9bc3b148f49cb9482a4e3ea2719e772602a425c9b09f8/contourpy-1.3.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71e2bd4a1c4188f5c2b8d274da78faab884b59df20df63c34f74aa1813c4427c", size = 306694 }, + { url = "https://files.pythonhosted.org/packages/dd/e7/ccb9bec80e1ba121efbffad7f38021021cda5be87532ec16fd96533bb2e0/contourpy-1.3.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de425af81b6cea33101ae95ece1f696af39446db9682a0b56daaa48cfc29f38f", size = 345986 }, + { url = "https://files.pythonhosted.org/packages/dc/49/ca13bb2da90391fa4219fdb23b078d6065ada886658ac7818e5441448b78/contourpy-1.3.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:977e98a0e0480d3fe292246417239d2d45435904afd6d7332d8455981c408b85", size = 318060 }, + { url = "https://files.pythonhosted.org/packages/c8/65/5245ce8c548a8422236c13ffcdcdada6a2a812c361e9e0c70548bb40b661/contourpy-1.3.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:434f0adf84911c924519d2b08fc10491dd282b20bdd3fa8f60fd816ea0b48841", size = 322747 }, + { url = "https://files.pythonhosted.org/packages/72/30/669b8eb48e0a01c660ead3752a25b44fdb2e5ebc13a55782f639170772f9/contourpy-1.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c66c4906cdbc50e9cba65978823e6e00b45682eb09adbb78c9775b74eb222422", size = 1308895 }, + { url = "https://files.pythonhosted.org/packages/05/5a/b569f4250decee6e8d54498be7bdf29021a4c256e77fe8138c8319ef8eb3/contourpy-1.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8b7fc0cd78ba2f4695fd0a6ad81a19e7e3ab825c31b577f384aa9d7817dc3bef", size = 1379098 }, + { url = "https://files.pythonhosted.org/packages/19/ba/b227c3886d120e60e41b28740ac3617b2f2b971b9f601c835661194579f1/contourpy-1.3.2-cp313-cp313-win32.whl", hash = "sha256:15ce6ab60957ca74cff444fe66d9045c1fd3e92c8936894ebd1f3eef2fff075f", size = 178535 }, + { url = "https://files.pythonhosted.org/packages/12/6e/2fed56cd47ca739b43e892707ae9a13790a486a3173be063681ca67d2262/contourpy-1.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9", size = 223096 }, + { url = "https://files.pythonhosted.org/packages/54/4c/e76fe2a03014a7c767d79ea35c86a747e9325537a8b7627e0e5b3ba266b4/contourpy-1.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0475b1f6604896bc7c53bb070e355e9321e1bc0d381735421a2d2068ec56531f", size = 285090 }, + { url = "https://files.pythonhosted.org/packages/7b/e2/5aba47debd55d668e00baf9651b721e7733975dc9fc27264a62b0dd26eb8/contourpy-1.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c85bb486e9be652314bb5b9e2e3b0d1b2e643d5eec4992c0fbe8ac71775da739", size = 268643 }, + { url = "https://files.pythonhosted.org/packages/a1/37/cd45f1f051fe6230f751cc5cdd2728bb3a203f5619510ef11e732109593c/contourpy-1.3.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:745b57db7758f3ffc05a10254edd3182a2a83402a89c00957a8e8a22f5582823", size = 310443 }, + { url = "https://files.pythonhosted.org/packages/8b/a2/36ea6140c306c9ff6dd38e3bcec80b3b018474ef4d17eb68ceecd26675f4/contourpy-1.3.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:970e9173dbd7eba9b4e01aab19215a48ee5dd3f43cef736eebde064a171f89a5", size = 349865 }, + { url = "https://files.pythonhosted.org/packages/95/b7/2fc76bc539693180488f7b6cc518da7acbbb9e3b931fd9280504128bf956/contourpy-1.3.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c6c4639a9c22230276b7bffb6a850dfc8258a2521305e1faefe804d006b2e532", size = 321162 }, + { url = "https://files.pythonhosted.org/packages/f4/10/76d4f778458b0aa83f96e59d65ece72a060bacb20cfbee46cf6cd5ceba41/contourpy-1.3.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc829960f34ba36aad4302e78eabf3ef16a3a100863f0d4eeddf30e8a485a03b", size = 327355 }, + { url = "https://files.pythonhosted.org/packages/43/a3/10cf483ea683f9f8ab096c24bad3cce20e0d1dd9a4baa0e2093c1c962d9d/contourpy-1.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:d32530b534e986374fc19eaa77fcb87e8a99e5431499949b828312bdcd20ac52", size = 1307935 }, + { url = "https://files.pythonhosted.org/packages/78/73/69dd9a024444489e22d86108e7b913f3528f56cfc312b5c5727a44188471/contourpy-1.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e298e7e70cf4eb179cc1077be1c725b5fd131ebc81181bf0c03525c8abc297fd", size = 1372168 }, + { url = "https://files.pythonhosted.org/packages/0f/1b/96d586ccf1b1a9d2004dd519b25fbf104a11589abfd05484ff12199cca21/contourpy-1.3.2-cp313-cp313t-win32.whl", hash = "sha256:d0e589ae0d55204991450bb5c23f571c64fe43adaa53f93fc902a84c96f52fe1", size = 189550 }, + { url = "https://files.pythonhosted.org/packages/b0/e6/6000d0094e8a5e32ad62591c8609e269febb6e4db83a1c75ff8868b42731/contourpy-1.3.2-cp313-cp313t-win_amd64.whl", hash = "sha256:78e9253c3de756b3f6a5174d024c4835acd59eb3f8e2ca13e775dbffe1558f69", size = 238214 }, + { url = "https://files.pythonhosted.org/packages/ff/c0/91f1215d0d9f9f343e4773ba6c9b89e8c0cc7a64a6263f21139da639d848/contourpy-1.3.2-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:5f5964cdad279256c084b69c3f412b7801e15356b16efa9d78aa974041903da0", size = 266807 }, + { url = "https://files.pythonhosted.org/packages/d4/79/6be7e90c955c0487e7712660d6cead01fa17bff98e0ea275737cc2bc8e71/contourpy-1.3.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49b65a95d642d4efa8f64ba12558fcb83407e58a2dfba9d796d77b63ccfcaff5", size = 318729 }, + { url = "https://files.pythonhosted.org/packages/87/68/7f46fb537958e87427d98a4074bcde4b67a70b04900cfc5ce29bc2f556c1/contourpy-1.3.2-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:8c5acb8dddb0752bf252e01a3035b21443158910ac16a3b0d20e7fed7d534ce5", size = 221791 }, +] + +[[package]] +name = "cryptography" +version = "46.0.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/33/c00162f49c0e2fe8064a62cb92b93e50c74a72bc370ab92f86112b33ff62/cryptography-46.0.3.tar.gz", hash = "sha256:a8b17438104fed022ce745b362294d9ce35b4c2e45c1d958ad4a4b019285f4a1", size = 749258 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1d/42/9c391dd801d6cf0d561b5890549d4b27bafcc53b39c31a817e69d87c625b/cryptography-46.0.3-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:109d4ddfadf17e8e7779c39f9b18111a09efb969a301a31e987416a0191ed93a", size = 7225004 }, + { url = "https://files.pythonhosted.org/packages/1c/67/38769ca6b65f07461eb200e85fc1639b438bdc667be02cf7f2cd6a64601c/cryptography-46.0.3-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:09859af8466b69bc3c27bdf4f5d84a665e0f7ab5088412e9e2ec49758eca5cbc", size = 4296667 }, + { url = "https://files.pythonhosted.org/packages/5c/49/498c86566a1d80e978b42f0d702795f69887005548c041636df6ae1ca64c/cryptography-46.0.3-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:01ca9ff2885f3acc98c29f1860552e37f6d7c7d013d7334ff2a9de43a449315d", size = 4450807 }, + { url = "https://files.pythonhosted.org/packages/4b/0a/863a3604112174c8624a2ac3c038662d9e59970c7f926acdcfaed8d61142/cryptography-46.0.3-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:6eae65d4c3d33da080cff9c4ab1f711b15c1d9760809dad6ea763f3812d254cb", size = 4299615 }, + { url = "https://files.pythonhosted.org/packages/64/02/b73a533f6b64a69f3cd3872acb6ebc12aef924d8d103133bb3ea750dc703/cryptography-46.0.3-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5bf0ed4490068a2e72ac03d786693adeb909981cc596425d09032d372bcc849", size = 4016800 }, + { url = "https://files.pythonhosted.org/packages/25/d5/16e41afbfa450cde85a3b7ec599bebefaef16b5c6ba4ec49a3532336ed72/cryptography-46.0.3-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:5ecfccd2329e37e9b7112a888e76d9feca2347f12f37918facbb893d7bb88ee8", size = 4984707 }, + { url = "https://files.pythonhosted.org/packages/c9/56/e7e69b427c3878352c2fb9b450bd0e19ed552753491d39d7d0a2f5226d41/cryptography-46.0.3-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a2c0cd47381a3229c403062f764160d57d4d175e022c1df84e168c6251a22eec", size = 4482541 }, + { url = "https://files.pythonhosted.org/packages/78/f6/50736d40d97e8483172f1bb6e698895b92a223dba513b0ca6f06b2365339/cryptography-46.0.3-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91", size = 4299464 }, + { url = "https://files.pythonhosted.org/packages/00/de/d8e26b1a855f19d9994a19c702fa2e93b0456beccbcfe437eda00e0701f2/cryptography-46.0.3-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:c0a7bb1a68a5d3471880e264621346c48665b3bf1c3759d682fc0864c540bd9e", size = 4950838 }, + { url = "https://files.pythonhosted.org/packages/8f/29/798fc4ec461a1c9e9f735f2fc58741b0daae30688f41b2497dcbc9ed1355/cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926", size = 4481596 }, + { url = "https://files.pythonhosted.org/packages/15/8d/03cd48b20a573adfff7652b76271078e3045b9f49387920e7f1f631d125e/cryptography-46.0.3-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0abf1ffd6e57c67e92af68330d05760b7b7efb243aab8377e583284dbab72c71", size = 4426782 }, + { url = "https://files.pythonhosted.org/packages/fa/b1/ebacbfe53317d55cf33165bda24c86523497a6881f339f9aae5c2e13e57b/cryptography-46.0.3-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a04bee9ab6a4da801eb9b51f1b708a1b5b5c9eb48c03f74198464c66f0d344ac", size = 4698381 }, + { url = "https://files.pythonhosted.org/packages/96/92/8a6a9525893325fc057a01f654d7efc2c64b9de90413adcf605a85744ff4/cryptography-46.0.3-cp311-abi3-win32.whl", hash = "sha256:f260d0d41e9b4da1ed1e0f1ce571f97fe370b152ab18778e9e8f67d6af432018", size = 3055988 }, + { url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl", hash = "sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb", size = 3514451 }, + { url = "https://files.pythonhosted.org/packages/2e/af/9b302da4c87b0beb9db4e756386a7c6c5b8003cd0e742277888d352ae91d/cryptography-46.0.3-cp311-abi3-win_arm64.whl", hash = "sha256:5d7f93296ee28f68447397bf5198428c9aeeab45705a55d53a6343455dcb2c3c", size = 2928007 }, + { url = "https://files.pythonhosted.org/packages/f5/e2/a510aa736755bffa9d2f75029c229111a1d02f8ecd5de03078f4c18d91a3/cryptography-46.0.3-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:00a5e7e87938e5ff9ff5447ab086a5706a957137e6e433841e9d24f38a065217", size = 7158012 }, + { url = "https://files.pythonhosted.org/packages/73/dc/9aa866fbdbb95b02e7f9d086f1fccfeebf8953509b87e3f28fff927ff8a0/cryptography-46.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c8daeb2d2174beb4575b77482320303f3d39b8e81153da4f0fb08eb5fe86a6c5", size = 4288728 }, + { url = "https://files.pythonhosted.org/packages/c5/fd/bc1daf8230eaa075184cbbf5f8cd00ba9db4fd32d63fb83da4671b72ed8a/cryptography-46.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:39b6755623145ad5eff1dab323f4eae2a32a77a7abef2c5089a04a3d04366715", size = 4435078 }, + { url = "https://files.pythonhosted.org/packages/82/98/d3bd5407ce4c60017f8ff9e63ffee4200ab3e23fe05b765cab805a7db008/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:db391fa7c66df6762ee3f00c95a89e6d428f4d60e7abc8328f4fe155b5ac6e54", size = 4293460 }, + { url = "https://files.pythonhosted.org/packages/26/e9/e23e7900983c2b8af7a08098db406cf989d7f09caea7897e347598d4cd5b/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:78a97cf6a8839a48c49271cdcbd5cf37ca2c1d6b7fdd86cc864f302b5e9bf459", size = 3995237 }, + { url = "https://files.pythonhosted.org/packages/91/15/af68c509d4a138cfe299d0d7ddb14afba15233223ebd933b4bbdbc7155d3/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:dfb781ff7eaa91a6f7fd41776ec37c5853c795d3b358d4896fdbb5df168af422", size = 4967344 }, + { url = "https://files.pythonhosted.org/packages/ca/e3/8643d077c53868b681af077edf6b3cb58288b5423610f21c62aadcbe99f4/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:6f61efb26e76c45c4a227835ddeae96d83624fb0d29eb5df5b96e14ed1a0afb7", size = 4466564 }, + { url = "https://files.pythonhosted.org/packages/0e/43/c1e8726fa59c236ff477ff2b5dc071e54b21e5a1e51aa2cee1676f1c986f/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:23b1a8f26e43f47ceb6d6a43115f33a5a37d57df4ea0ca295b780ae8546e8044", size = 4292415 }, + { url = "https://files.pythonhosted.org/packages/42/f9/2f8fefdb1aee8a8e3256a0568cffc4e6d517b256a2fe97a029b3f1b9fe7e/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:b419ae593c86b87014b9be7396b385491ad7f320bde96826d0dd174459e54665", size = 4931457 }, + { url = "https://files.pythonhosted.org/packages/79/30/9b54127a9a778ccd6d27c3da7563e9f2d341826075ceab89ae3b41bf5be2/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:50fc3343ac490c6b08c0cf0d704e881d0d660be923fd3076db3e932007e726e3", size = 4466074 }, + { url = "https://files.pythonhosted.org/packages/ac/68/b4f4a10928e26c941b1b6a179143af9f4d27d88fe84a6a3c53592d2e76bf/cryptography-46.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:22d7e97932f511d6b0b04f2bfd818d73dcd5928db509460aaf48384778eb6d20", size = 4420569 }, + { url = "https://files.pythonhosted.org/packages/a3/49/3746dab4c0d1979888f125226357d3262a6dd40e114ac29e3d2abdf1ec55/cryptography-46.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d55f3dffadd674514ad19451161118fd010988540cee43d8bc20675e775925de", size = 4681941 }, + { url = "https://files.pythonhosted.org/packages/fd/30/27654c1dbaf7e4a3531fa1fc77986d04aefa4d6d78259a62c9dc13d7ad36/cryptography-46.0.3-cp314-cp314t-win32.whl", hash = "sha256:8a6e050cb6164d3f830453754094c086ff2d0b2f3a897a1d9820f6139a1f0914", size = 3022339 }, + { url = "https://files.pythonhosted.org/packages/f6/30/640f34ccd4d2a1bc88367b54b926b781b5a018d65f404d409aba76a84b1c/cryptography-46.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db", size = 3494315 }, + { url = "https://files.pythonhosted.org/packages/ba/8b/88cc7e3bd0a8e7b861f26981f7b820e1f46aa9d26cc482d0feba0ecb4919/cryptography-46.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:516ea134e703e9fe26bcd1277a4b59ad30586ea90c365a87781d7887a646fe21", size = 2919331 }, + { url = "https://files.pythonhosted.org/packages/fd/23/45fe7f376a7df8daf6da3556603b36f53475a99ce4faacb6ba2cf3d82021/cryptography-46.0.3-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:cb3d760a6117f621261d662bccc8ef5bc32ca673e037c83fbe565324f5c46936", size = 7218248 }, + { url = "https://files.pythonhosted.org/packages/27/32/b68d27471372737054cbd34c84981f9edbc24fe67ca225d389799614e27f/cryptography-46.0.3-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4b7387121ac7d15e550f5cb4a43aef2559ed759c35df7336c402bb8275ac9683", size = 4294089 }, + { url = "https://files.pythonhosted.org/packages/26/42/fa8389d4478368743e24e61eea78846a0006caffaf72ea24a15159215a14/cryptography-46.0.3-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:15ab9b093e8f09daab0f2159bb7e47532596075139dd74365da52ecc9cb46c5d", size = 4440029 }, + { url = "https://files.pythonhosted.org/packages/5f/eb/f483db0ec5ac040824f269e93dd2bd8a21ecd1027e77ad7bdf6914f2fd80/cryptography-46.0.3-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:46acf53b40ea38f9c6c229599a4a13f0d46a6c3fa9ef19fc1a124d62e338dfa0", size = 4297222 }, + { url = "https://files.pythonhosted.org/packages/fd/cf/da9502c4e1912cb1da3807ea3618a6829bee8207456fbbeebc361ec38ba3/cryptography-46.0.3-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:10ca84c4668d066a9878890047f03546f3ae0a6b8b39b697457b7757aaf18dbc", size = 4012280 }, + { url = "https://files.pythonhosted.org/packages/6b/8f/9adb86b93330e0df8b3dcf03eae67c33ba89958fc2e03862ef1ac2b42465/cryptography-46.0.3-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:36e627112085bb3b81b19fed209c05ce2a52ee8b15d161b7c643a7d5a88491f3", size = 4978958 }, + { url = "https://files.pythonhosted.org/packages/d1/a0/5fa77988289c34bdb9f913f5606ecc9ada1adb5ae870bd0d1054a7021cc4/cryptography-46.0.3-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:1000713389b75c449a6e979ffc7dcc8ac90b437048766cef052d4d30b8220971", size = 4473714 }, + { url = "https://files.pythonhosted.org/packages/14/e5/fc82d72a58d41c393697aa18c9abe5ae1214ff6f2a5c18ac470f92777895/cryptography-46.0.3-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:b02cf04496f6576afffef5ddd04a0cb7d49cf6be16a9059d793a30b035f6b6ac", size = 4296970 }, + { url = "https://files.pythonhosted.org/packages/78/06/5663ed35438d0b09056973994f1aec467492b33bd31da36e468b01ec1097/cryptography-46.0.3-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:71e842ec9bc7abf543b47cf86b9a743baa95f4677d22baa4c7d5c69e49e9bc04", size = 4940236 }, + { url = "https://files.pythonhosted.org/packages/fc/59/873633f3f2dcd8a053b8dd1d38f783043b5fce589c0f6988bf55ef57e43e/cryptography-46.0.3-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:402b58fc32614f00980b66d6e56a5b4118e6cb362ae8f3fda141ba4689bd4506", size = 4472642 }, + { url = "https://files.pythonhosted.org/packages/3d/39/8e71f3930e40f6877737d6f69248cf74d4e34b886a3967d32f919cc50d3b/cryptography-46.0.3-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ef639cb3372f69ec44915fafcd6698b6cc78fbe0c2ea41be867f6ed612811963", size = 4423126 }, + { url = "https://files.pythonhosted.org/packages/cd/c7/f65027c2810e14c3e7268353b1681932b87e5a48e65505d8cc17c99e36ae/cryptography-46.0.3-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3b51b8ca4f1c6453d8829e1eb7299499ca7f313900dd4d89a24b8b87c0a780d4", size = 4686573 }, + { url = "https://files.pythonhosted.org/packages/0a/6e/1c8331ddf91ca4730ab3086a0f1be19c65510a33b5a441cb334e7a2d2560/cryptography-46.0.3-cp38-abi3-win32.whl", hash = "sha256:6276eb85ef938dc035d59b87c8a7dc559a232f954962520137529d77b18ff1df", size = 3036695 }, + { url = "https://files.pythonhosted.org/packages/90/45/b0d691df20633eff80955a0fc7695ff9051ffce8b69741444bd9ed7bd0db/cryptography-46.0.3-cp38-abi3-win_amd64.whl", hash = "sha256:416260257577718c05135c55958b674000baef9a1c7d9e8f306ec60d71db850f", size = 3501720 }, + { url = "https://files.pythonhosted.org/packages/e8/cb/2da4cc83f5edb9c3257d09e1e7ab7b23f049c7962cae8d842bbef0a9cec9/cryptography-46.0.3-cp38-abi3-win_arm64.whl", hash = "sha256:d89c3468de4cdc4f08a57e214384d0471911a3830fcdaf7a8cc587e42a866372", size = 2918740 }, + { url = "https://files.pythonhosted.org/packages/06/8a/e60e46adab4362a682cf142c7dcb5bf79b782ab2199b0dcb81f55970807f/cryptography-46.0.3-pp311-pypy311_pp73-macosx_10_9_x86_64.whl", hash = "sha256:7ce938a99998ed3c8aa7e7272dca1a610401ede816d36d0693907d863b10d9ea", size = 3698132 }, + { url = "https://files.pythonhosted.org/packages/da/38/f59940ec4ee91e93d3311f7532671a5cef5570eb04a144bf203b58552d11/cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:191bb60a7be5e6f54e30ba16fdfae78ad3a342a0599eb4193ba88e3f3d6e185b", size = 4243992 }, + { url = "https://files.pythonhosted.org/packages/b0/0c/35b3d92ddebfdfda76bb485738306545817253d0a3ded0bfe80ef8e67aa5/cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c70cc23f12726be8f8bc72e41d5065d77e4515efae3690326764ea1b07845cfb", size = 4409944 }, + { url = "https://files.pythonhosted.org/packages/99/55/181022996c4063fc0e7666a47049a1ca705abb9c8a13830f074edb347495/cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_34_aarch64.whl", hash = "sha256:9394673a9f4de09e28b5356e7fff97d778f8abad85c9d5ac4a4b7e25a0de7717", size = 4242957 }, + { url = "https://files.pythonhosted.org/packages/ba/af/72cd6ef29f9c5f731251acadaeb821559fe25f10852f44a63374c9ca08c1/cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_34_x86_64.whl", hash = "sha256:94cd0549accc38d1494e1f8de71eca837d0509d0d44bf11d158524b0e12cebf9", size = 4409447 }, + { url = "https://files.pythonhosted.org/packages/0d/c3/e90f4a4feae6410f914f8ebac129b9ae7a8c92eb60a638012dde42030a9d/cryptography-46.0.3-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:6b5063083824e5509fdba180721d55909ffacccc8adbec85268b48439423d78c", size = 3438528 }, +] + +[[package]] +name = "cycler" +version = "0.12.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a9/95/a3dbbb5028f35eafb79008e7522a75244477d2838f38cbb722248dabc2a8/cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c", size = 7615 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30", size = 8321 }, +] + +[[package]] +name = "dask" +version = "2022.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "cloudpickle" }, + { name = "fsspec" }, + { name = "packaging" }, + { name = "partd" }, + { name = "pyyaml" }, + { name = "toolz" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/cb/e639a8499d9e0161f62439cbc1c2d4bb4ff27f6fc53244cc0d886cef70b5/dask-2022.12.1.tar.gz", hash = "sha256:ef12c98a6681964494ddfee4ba8071ebc8895d3c4ea27f5c5160a14e29f01d92", size = 8227174 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/77/b1a49279c5bd063a2d73b88d1f4b29e10d7a33f5135f3245d35ba06ab816/dask-2022.12.1-py3-none-any.whl", hash = "sha256:a833ee774bf702c08d22f31412358d12b007df36c6e8c107f32f17a4b20f1f68", size = 1143724 }, +] + +[[package]] +name = "decorator" +version = "5.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/43/fa/6d96a0978d19e17b68d634497769987b16c8f4cd0a7a05048bec693caa6b/decorator-5.2.1.tar.gz", hash = "sha256:65f266143752f734b0a7cc83c46f4618af75b8c5911b00ccb61d0ac9b6da0360", size = 56711 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl", hash = "sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a", size = 9190 }, +] + +[[package]] +name = "donfig" +version = "0.8.1.post1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyyaml" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/25/71/80cc718ff6d7abfbabacb1f57aaa42e9c1552bfdd01e64ddd704e4a03638/donfig-0.8.1.post1.tar.gz", hash = "sha256:3bef3413a4c1c601b585e8d297256d0c1470ea012afa6e8461dc28bfb7c23f52", size = 19506 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/d5/c5db1ea3394c6e1732fb3286b3bd878b59507a8f77d32a2cebda7d7b7cd4/donfig-0.8.1.post1-py3-none-any.whl", hash = "sha256:2a3175ce74a06109ff9307d90a230f81215cbac9a751f4d1c6194644b8204f9d", size = 21592 }, +] + +[[package]] +name = "fastapi" +version = "0.125.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-doc" }, + { name = "pydantic" }, + { name = "starlette" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/17/71/2df15009fb4bdd522a069d2fbca6007c6c5487fce5cb965be00fc335f1d1/fastapi-0.125.0.tar.gz", hash = "sha256:16b532691a33e2c5dee1dac32feb31dc6eb41a3dd4ff29a95f9487cb21c054c0", size = 370550 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/34/2f/ff2fcc98f500713368d8b650e1bbc4a0b3ebcdd3e050dcdaad5f5a13fd7e/fastapi-0.125.0-py3-none-any.whl", hash = "sha256:2570ec4f3aecf5cca8f0428aed2398b774fcdfee6c2116f86e80513f2f86a7a1", size = 112888 }, +] + +[[package]] +name = "fasteners" +version = "0.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/18/7881a99ba5244bfc82f06017316ffe93217dbbbcfa52b887caa1d4f2a6d3/fasteners-0.20.tar.gz", hash = "sha256:55dce8792a41b56f727ba6e123fcaee77fd87e638a6863cec00007bfea84c8d8", size = 25087 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/ac/e5d886f892666d2d1e5cb8c1a41146e1d79ae8896477b1153a21711d3b44/fasteners-0.20-py3-none-any.whl", hash = "sha256:9422c40d1e350e4259f509fb2e608d6bc43c0136f79a00db1b49046029d0b3b7", size = 18702 }, +] + +[[package]] +name = "filelock" +version = "3.20.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1d/65/ce7f1b70157833bf3cb851b556a37d4547ceafc158aa9b34b36782f23696/filelock-3.20.3.tar.gz", hash = "sha256:18c57ee915c7ec61cff0ecf7f0f869936c7c30191bb0cf406f1341778d0834e1", size = 19485 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/36/7fb70f04bf00bc646cd5bb45aa9eddb15e19437a28b8fb2b4a5249fac770/filelock-3.20.3-py3-none-any.whl", hash = "sha256:4b0dda527ee31078689fc205ec4f1c1bf7d56cf88b6dc9426c4f230e46c2dce1", size = 16701 }, +] + +[[package]] +name = "flatbuffers" +version = "25.9.23" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9d/1f/3ee70b0a55137442038f2a33469cc5fddd7e0ad2abf83d7497c18a2b6923/flatbuffers-25.9.23.tar.gz", hash = "sha256:676f9fa62750bb50cf531b42a0a2a118ad8f7f797a511eda12881c016f093b12", size = 22067 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ee/1b/00a78aa2e8fbd63f9af08c9c19e6deb3d5d66b4dda677a0f61654680ee89/flatbuffers-25.9.23-py2.py3-none-any.whl", hash = "sha256:255538574d6cb6d0a79a17ec8bc0d30985913b87513a01cce8bcdb6b4c44d0e2", size = 30869 }, +] + +[[package]] +name = "fonttools" +version = "4.61.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ec/ca/cf17b88a8df95691275a3d77dc0a5ad9907f328ae53acbe6795da1b2f5ed/fonttools-4.61.1.tar.gz", hash = "sha256:6675329885c44657f826ef01d9e4fb33b9158e9d93c537d84ad8399539bc6f69", size = 3565756 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/12/bf9f4eaa2fad039356cc627587e30ed008c03f1cebd3034376b5ee8d1d44/fonttools-4.61.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c6604b735bb12fef8e0efd5578c9fb5d3d8532d5001ea13a19cddf295673ee09", size = 2852213 }, + { url = "https://files.pythonhosted.org/packages/ac/49/4138d1acb6261499bedde1c07f8c2605d1d8f9d77a151e5507fd3ef084b6/fonttools-4.61.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5ce02f38a754f207f2f06557523cd39a06438ba3aafc0639c477ac409fc64e37", size = 2401689 }, + { url = "https://files.pythonhosted.org/packages/e5/fe/e6ce0fe20a40e03aef906af60aa87668696f9e4802fa283627d0b5ed777f/fonttools-4.61.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:77efb033d8d7ff233385f30c62c7c79271c8885d5c9657d967ede124671bbdfb", size = 5058809 }, + { url = "https://files.pythonhosted.org/packages/79/61/1ca198af22f7dd22c17ab86e9024ed3c06299cfdb08170640e9996d501a0/fonttools-4.61.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:75c1a6dfac6abd407634420c93864a1e274ebc1c7531346d9254c0d8f6ca00f9", size = 5036039 }, + { url = "https://files.pythonhosted.org/packages/99/cc/fa1801e408586b5fce4da9f5455af8d770f4fc57391cd5da7256bb364d38/fonttools-4.61.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0de30bfe7745c0d1ffa2b0b7048fb7123ad0d71107e10ee090fa0b16b9452e87", size = 5034714 }, + { url = "https://files.pythonhosted.org/packages/bf/aa/b7aeafe65adb1b0a925f8f25725e09f078c635bc22754f3fecb7456955b0/fonttools-4.61.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:58b0ee0ab5b1fc9921eccfe11d1435added19d6494dde14e323f25ad2bc30c56", size = 5158648 }, + { url = "https://files.pythonhosted.org/packages/99/f9/08ea7a38663328881384c6e7777bbefc46fd7d282adfd87a7d2b84ec9d50/fonttools-4.61.1-cp311-cp311-win32.whl", hash = "sha256:f79b168428351d11e10c5aeb61a74e1851ec221081299f4cf56036a95431c43a", size = 2280681 }, + { url = "https://files.pythonhosted.org/packages/07/ad/37dd1ae5fa6e01612a1fbb954f0927681f282925a86e86198ccd7b15d515/fonttools-4.61.1-cp311-cp311-win_amd64.whl", hash = "sha256:fe2efccb324948a11dd09d22136fe2ac8a97d6c1347cf0b58a911dcd529f66b7", size = 2331951 }, + { url = "https://files.pythonhosted.org/packages/6f/16/7decaa24a1bd3a70c607b2e29f0adc6159f36a7e40eaba59846414765fd4/fonttools-4.61.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:f3cb4a569029b9f291f88aafc927dd53683757e640081ca8c412781ea144565e", size = 2851593 }, + { url = "https://files.pythonhosted.org/packages/94/98/3c4cb97c64713a8cf499b3245c3bf9a2b8fd16a3e375feff2aed78f96259/fonttools-4.61.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:41a7170d042e8c0024703ed13b71893519a1a6d6e18e933e3ec7507a2c26a4b2", size = 2400231 }, + { url = "https://files.pythonhosted.org/packages/b7/37/82dbef0f6342eb01f54bca073ac1498433d6ce71e50c3c3282b655733b31/fonttools-4.61.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:10d88e55330e092940584774ee5e8a6971b01fc2f4d3466a1d6c158230880796", size = 4954103 }, + { url = "https://files.pythonhosted.org/packages/6c/44/f3aeac0fa98e7ad527f479e161aca6c3a1e47bb6996b053d45226fe37bf2/fonttools-4.61.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:15acc09befd16a0fb8a8f62bc147e1a82817542d72184acca9ce6e0aeda9fa6d", size = 5004295 }, + { url = "https://files.pythonhosted.org/packages/14/e8/7424ced75473983b964d09f6747fa09f054a6d656f60e9ac9324cf40c743/fonttools-4.61.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e6bcdf33aec38d16508ce61fd81838f24c83c90a1d1b8c68982857038673d6b8", size = 4944109 }, + { url = "https://files.pythonhosted.org/packages/c8/8b/6391b257fa3d0b553d73e778f953a2f0154292a7a7a085e2374b111e5410/fonttools-4.61.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5fade934607a523614726119164ff621e8c30e8fa1ffffbbd358662056ba69f0", size = 5093598 }, + { url = "https://files.pythonhosted.org/packages/d9/71/fd2ea96cdc512d92da5678a1c98c267ddd4d8c5130b76d0f7a80f9a9fde8/fonttools-4.61.1-cp312-cp312-win32.whl", hash = "sha256:75da8f28eff26defba42c52986de97b22106cb8f26515b7c22443ebc9c2d3261", size = 2269060 }, + { url = "https://files.pythonhosted.org/packages/80/3b/a3e81b71aed5a688e89dfe0e2694b26b78c7d7f39a5ffd8a7d75f54a12a8/fonttools-4.61.1-cp312-cp312-win_amd64.whl", hash = "sha256:497c31ce314219888c0e2fce5ad9178ca83fe5230b01a5006726cdf3ac9f24d9", size = 2319078 }, + { url = "https://files.pythonhosted.org/packages/4b/cf/00ba28b0990982530addb8dc3e9e6f2fa9cb5c20df2abdda7baa755e8fe1/fonttools-4.61.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8c56c488ab471628ff3bfa80964372fc13504ece601e0d97a78ee74126b2045c", size = 2846454 }, + { url = "https://files.pythonhosted.org/packages/5a/ca/468c9a8446a2103ae645d14fee3f610567b7042aba85031c1c65e3ef7471/fonttools-4.61.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dc492779501fa723b04d0ab1f5be046797fee17d27700476edc7ee9ae535a61e", size = 2398191 }, + { url = "https://files.pythonhosted.org/packages/a3/4b/d67eedaed19def5967fade3297fed8161b25ba94699efc124b14fb68cdbc/fonttools-4.61.1-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:64102ca87e84261419c3747a0d20f396eb024bdbeb04c2bfb37e2891f5fadcb5", size = 4928410 }, + { url = "https://files.pythonhosted.org/packages/b0/8d/6fb3494dfe61a46258cd93d979cf4725ded4eb46c2a4ca35e4490d84daea/fonttools-4.61.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4c1b526c8d3f615a7b1867f38a9410849c8f4aef078535742198e942fba0e9bd", size = 4984460 }, + { url = "https://files.pythonhosted.org/packages/f7/f1/a47f1d30b3dc00d75e7af762652d4cbc3dff5c2697a0dbd5203c81afd9c3/fonttools-4.61.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:41ed4b5ec103bd306bb68f81dc166e77409e5209443e5773cb4ed837bcc9b0d3", size = 4925800 }, + { url = "https://files.pythonhosted.org/packages/a7/01/e6ae64a0981076e8a66906fab01539799546181e32a37a0257b77e4aa88b/fonttools-4.61.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b501c862d4901792adaec7c25b1ecc749e2662543f68bb194c42ba18d6eec98d", size = 5067859 }, + { url = "https://files.pythonhosted.org/packages/73/aa/28e40b8d6809a9b5075350a86779163f074d2b617c15d22343fce81918db/fonttools-4.61.1-cp313-cp313-win32.whl", hash = "sha256:4d7092bb38c53bbc78e9255a59158b150bcdc115a1e3b3ce0b5f267dc35dd63c", size = 2267821 }, + { url = "https://files.pythonhosted.org/packages/1a/59/453c06d1d83dc0951b69ef692d6b9f1846680342927df54e9a1ca91c6f90/fonttools-4.61.1-cp313-cp313-win_amd64.whl", hash = "sha256:21e7c8d76f62ab13c9472ccf74515ca5b9a761d1bde3265152a6dc58700d895b", size = 2318169 }, + { url = "https://files.pythonhosted.org/packages/32/8f/4e7bf82c0cbb738d3c2206c920ca34ca74ef9dabde779030145d28665104/fonttools-4.61.1-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:fff4f534200a04b4a36e7ae3cb74493afe807b517a09e99cb4faa89a34ed6ecd", size = 2846094 }, + { url = "https://files.pythonhosted.org/packages/71/09/d44e45d0a4f3a651f23a1e9d42de43bc643cce2971b19e784cc67d823676/fonttools-4.61.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:d9203500f7c63545b4ce3799319fe4d9feb1a1b89b28d3cb5abd11b9dd64147e", size = 2396589 }, + { url = "https://files.pythonhosted.org/packages/89/18/58c64cafcf8eb677a99ef593121f719e6dcbdb7d1c594ae5a10d4997ca8a/fonttools-4.61.1-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fa646ecec9528bef693415c79a86e733c70a4965dd938e9a226b0fc64c9d2e6c", size = 4877892 }, + { url = "https://files.pythonhosted.org/packages/8a/ec/9e6b38c7ba1e09eb51db849d5450f4c05b7e78481f662c3b79dbde6f3d04/fonttools-4.61.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:11f35ad7805edba3aac1a3710d104592df59f4b957e30108ae0ba6c10b11dd75", size = 4972884 }, + { url = "https://files.pythonhosted.org/packages/5e/87/b5339da8e0256734ba0dbbf5b6cdebb1dd79b01dc8c270989b7bcd465541/fonttools-4.61.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b931ae8f62db78861b0ff1ac017851764602288575d65b8e8ff1963fed419063", size = 4924405 }, + { url = "https://files.pythonhosted.org/packages/0b/47/e3409f1e1e69c073a3a6fd8cb886eb18c0bae0ee13db2c8d5e7f8495e8b7/fonttools-4.61.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b148b56f5de675ee16d45e769e69f87623a4944f7443850bf9a9376e628a89d2", size = 5035553 }, + { url = "https://files.pythonhosted.org/packages/bf/b6/1f6600161b1073a984294c6c031e1a56ebf95b6164249eecf30012bb2e38/fonttools-4.61.1-cp314-cp314-win32.whl", hash = "sha256:9b666a475a65f4e839d3d10473fad6d47e0a9db14a2f4a224029c5bfde58ad2c", size = 2271915 }, + { url = "https://files.pythonhosted.org/packages/52/7b/91e7b01e37cc8eb0e1f770d08305b3655e4f002fc160fb82b3390eabacf5/fonttools-4.61.1-cp314-cp314-win_amd64.whl", hash = "sha256:4f5686e1fe5fce75d82d93c47a438a25bf0d1319d2843a926f741140b2b16e0c", size = 2323487 }, + { url = "https://files.pythonhosted.org/packages/39/5c/908ad78e46c61c3e3ed70c3b58ff82ab48437faf84ec84f109592cabbd9f/fonttools-4.61.1-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:e76ce097e3c57c4bcb67c5aa24a0ecdbd9f74ea9219997a707a4061fbe2707aa", size = 2929571 }, + { url = "https://files.pythonhosted.org/packages/bd/41/975804132c6dea64cdbfbaa59f3518a21c137a10cccf962805b301ac6ab2/fonttools-4.61.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:9cfef3ab326780c04d6646f68d4b4742aae222e8b8ea1d627c74e38afcbc9d91", size = 2435317 }, + { url = "https://files.pythonhosted.org/packages/b0/5a/aef2a0a8daf1ebaae4cfd83f84186d4a72ee08fd6a8451289fcd03ffa8a4/fonttools-4.61.1-cp314-cp314t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:a75c301f96db737e1c5ed5fd7d77d9c34466de16095a266509e13da09751bd19", size = 4882124 }, + { url = "https://files.pythonhosted.org/packages/80/33/d6db3485b645b81cea538c9d1c9219d5805f0877fda18777add4671c5240/fonttools-4.61.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:91669ccac46bbc1d09e9273546181919064e8df73488ea087dcac3e2968df9ba", size = 5100391 }, + { url = "https://files.pythonhosted.org/packages/6c/d6/675ba631454043c75fcf76f0ca5463eac8eb0666ea1d7badae5fea001155/fonttools-4.61.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c33ab3ca9d3ccd581d58e989d67554e42d8d4ded94ab3ade3508455fe70e65f7", size = 4978800 }, + { url = "https://files.pythonhosted.org/packages/7f/33/d3ec753d547a8d2bdaedd390d4a814e8d5b45a093d558f025c6b990b554c/fonttools-4.61.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:664c5a68ec406f6b1547946683008576ef8b38275608e1cee6c061828171c118", size = 5006426 }, + { url = "https://files.pythonhosted.org/packages/b4/40/cc11f378b561a67bea850ab50063366a0d1dd3f6d0a30ce0f874b0ad5664/fonttools-4.61.1-cp314-cp314t-win32.whl", hash = "sha256:aed04cabe26f30c1647ef0e8fbb207516fd40fe9472e9439695f5c6998e60ac5", size = 2335377 }, + { url = "https://files.pythonhosted.org/packages/e4/ff/c9a2b66b39f8628531ea58b320d66d951267c98c6a38684daa8f50fb02f8/fonttools-4.61.1-cp314-cp314t-win_amd64.whl", hash = "sha256:2180f14c141d2f0f3da43f3a81bc8aa4684860f6b0e6f9e165a4831f24e6a23b", size = 2400613 }, + { url = "https://files.pythonhosted.org/packages/c7/4e/ce75a57ff3aebf6fc1f4e9d508b8e5810618a33d900ad6c19eb30b290b97/fonttools-4.61.1-py3-none-any.whl", hash = "sha256:17d2bf5d541add43822bcf0c43d7d847b160c9bb01d15d5007d84e2217aaa371", size = 1148996 }, +] + +[[package]] +name = "frozenlist" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/f5/c831fac6cc817d26fd54c7eaccd04ef7e0288806943f7cc5bbf69f3ac1f0/frozenlist-1.8.0.tar.gz", hash = "sha256:3ede829ed8d842f6cd48fc7081d7a41001a56f1f38603f9d49bf3020d59a31ad", size = 45875 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bc/03/077f869d540370db12165c0aa51640a873fb661d8b315d1d4d67b284d7ac/frozenlist-1.8.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:09474e9831bc2b2199fad6da3c14c7b0fbdd377cce9d3d77131be28906cb7d84", size = 86912 }, + { url = "https://files.pythonhosted.org/packages/df/b5/7610b6bd13e4ae77b96ba85abea1c8cb249683217ef09ac9e0ae93f25a91/frozenlist-1.8.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:17c883ab0ab67200b5f964d2b9ed6b00971917d5d8a92df149dc2c9779208ee9", size = 50046 }, + { url = "https://files.pythonhosted.org/packages/6e/ef/0e8f1fe32f8a53dd26bdd1f9347efe0778b0fddf62789ea683f4cc7d787d/frozenlist-1.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fa47e444b8ba08fffd1c18e8cdb9a75db1b6a27f17507522834ad13ed5922b93", size = 50119 }, + { url = "https://files.pythonhosted.org/packages/11/b1/71a477adc7c36e5fb628245dfbdea2166feae310757dea848d02bd0689fd/frozenlist-1.8.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:2552f44204b744fba866e573be4c1f9048d6a324dfe14475103fd51613eb1d1f", size = 231067 }, + { url = "https://files.pythonhosted.org/packages/45/7e/afe40eca3a2dc19b9904c0f5d7edfe82b5304cb831391edec0ac04af94c2/frozenlist-1.8.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:957e7c38f250991e48a9a73e6423db1bb9dd14e722a10f6b8bb8e16a0f55f695", size = 233160 }, + { url = "https://files.pythonhosted.org/packages/a6/aa/7416eac95603ce428679d273255ffc7c998d4132cfae200103f164b108aa/frozenlist-1.8.0-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:8585e3bb2cdea02fc88ffa245069c36555557ad3609e83be0ec71f54fd4abb52", size = 228544 }, + { url = "https://files.pythonhosted.org/packages/8b/3d/2a2d1f683d55ac7e3875e4263d28410063e738384d3adc294f5ff3d7105e/frozenlist-1.8.0-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:edee74874ce20a373d62dc28b0b18b93f645633c2943fd90ee9d898550770581", size = 243797 }, + { url = "https://files.pythonhosted.org/packages/78/1e/2d5565b589e580c296d3bb54da08d206e797d941a83a6fdea42af23be79c/frozenlist-1.8.0-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:c9a63152fe95756b85f31186bddf42e4c02c6321207fd6601a1c89ebac4fe567", size = 247923 }, + { url = "https://files.pythonhosted.org/packages/aa/c3/65872fcf1d326a7f101ad4d86285c403c87be7d832b7470b77f6d2ed5ddc/frozenlist-1.8.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:b6db2185db9be0a04fecf2f241c70b63b1a242e2805be291855078f2b404dd6b", size = 230886 }, + { url = "https://files.pythonhosted.org/packages/a0/76/ac9ced601d62f6956f03cc794f9e04c81719509f85255abf96e2510f4265/frozenlist-1.8.0-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:f4be2e3d8bc8aabd566f8d5b8ba7ecc09249d74ba3c9ed52e54dc23a293f0b92", size = 245731 }, + { url = "https://files.pythonhosted.org/packages/b9/49/ecccb5f2598daf0b4a1415497eba4c33c1e8ce07495eb07d2860c731b8d5/frozenlist-1.8.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:c8d1634419f39ea6f5c427ea2f90ca85126b54b50837f31497f3bf38266e853d", size = 241544 }, + { url = "https://files.pythonhosted.org/packages/53/4b/ddf24113323c0bbcc54cb38c8b8916f1da7165e07b8e24a717b4a12cbf10/frozenlist-1.8.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:1a7fa382a4a223773ed64242dbe1c9c326ec09457e6b8428efb4118c685c3dfd", size = 241806 }, + { url = "https://files.pythonhosted.org/packages/a7/fb/9b9a084d73c67175484ba2789a59f8eebebd0827d186a8102005ce41e1ba/frozenlist-1.8.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:11847b53d722050808926e785df837353bd4d75f1d494377e59b23594d834967", size = 229382 }, + { url = "https://files.pythonhosted.org/packages/95/a3/c8fb25aac55bf5e12dae5c5aa6a98f85d436c1dc658f21c3ac73f9fa95e5/frozenlist-1.8.0-cp311-cp311-win32.whl", hash = "sha256:27c6e8077956cf73eadd514be8fb04d77fc946a7fe9f7fe167648b0b9085cc25", size = 39647 }, + { url = "https://files.pythonhosted.org/packages/0a/f5/603d0d6a02cfd4c8f2a095a54672b3cf967ad688a60fb9faf04fc4887f65/frozenlist-1.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:ac913f8403b36a2c8610bbfd25b8013488533e71e62b4b4adce9c86c8cea905b", size = 44064 }, + { url = "https://files.pythonhosted.org/packages/5d/16/c2c9ab44e181f043a86f9a8f84d5124b62dbcb3a02c0977ec72b9ac1d3e0/frozenlist-1.8.0-cp311-cp311-win_arm64.whl", hash = "sha256:d4d3214a0f8394edfa3e303136d0575eece0745ff2b47bd2cb2e66dd92d4351a", size = 39937 }, + { url = "https://files.pythonhosted.org/packages/69/29/948b9aa87e75820a38650af445d2ef2b6b8a6fab1a23b6bb9e4ef0be2d59/frozenlist-1.8.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:78f7b9e5d6f2fdb88cdde9440dc147259b62b9d3b019924def9f6478be254ac1", size = 87782 }, + { url = "https://files.pythonhosted.org/packages/64/80/4f6e318ee2a7c0750ed724fa33a4bdf1eacdc5a39a7a24e818a773cd91af/frozenlist-1.8.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:229bf37d2e4acdaf808fd3f06e854a4a7a3661e871b10dc1f8f1896a3b05f18b", size = 50594 }, + { url = "https://files.pythonhosted.org/packages/2b/94/5c8a2b50a496b11dd519f4a24cb5496cf125681dd99e94c604ccdea9419a/frozenlist-1.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f833670942247a14eafbb675458b4e61c82e002a148f49e68257b79296e865c4", size = 50448 }, + { url = "https://files.pythonhosted.org/packages/6a/bd/d91c5e39f490a49df14320f4e8c80161cfcce09f1e2cde1edd16a551abb3/frozenlist-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:494a5952b1c597ba44e0e78113a7266e656b9794eec897b19ead706bd7074383", size = 242411 }, + { url = "https://files.pythonhosted.org/packages/8f/83/f61505a05109ef3293dfb1ff594d13d64a2324ac3482be2cedc2be818256/frozenlist-1.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:96f423a119f4777a4a056b66ce11527366a8bb92f54e541ade21f2374433f6d4", size = 243014 }, + { url = "https://files.pythonhosted.org/packages/d8/cb/cb6c7b0f7d4023ddda30cf56b8b17494eb3a79e3fda666bf735f63118b35/frozenlist-1.8.0-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3462dd9475af2025c31cc61be6652dfa25cbfb56cbbf52f4ccfe029f38decaf8", size = 234909 }, + { url = "https://files.pythonhosted.org/packages/31/c5/cd7a1f3b8b34af009fb17d4123c5a778b44ae2804e3ad6b86204255f9ec5/frozenlist-1.8.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c4c800524c9cd9bac5166cd6f55285957fcfc907db323e193f2afcd4d9abd69b", size = 250049 }, + { url = "https://files.pythonhosted.org/packages/c0/01/2f95d3b416c584a1e7f0e1d6d31998c4a795f7544069ee2e0962a4b60740/frozenlist-1.8.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d6a5df73acd3399d893dafc71663ad22534b5aa4f94e8a2fabfe856c3c1b6a52", size = 256485 }, + { url = "https://files.pythonhosted.org/packages/ce/03/024bf7720b3abaebcff6d0793d73c154237b85bdf67b7ed55e5e9596dc9a/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:405e8fe955c2280ce66428b3ca55e12b3c4e9c336fb2103a4937e891c69a4a29", size = 237619 }, + { url = "https://files.pythonhosted.org/packages/69/fa/f8abdfe7d76b731f5d8bd217827cf6764d4f1d9763407e42717b4bed50a0/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:908bd3f6439f2fef9e85031b59fd4f1297af54415fb60e4254a95f75b3cab3f3", size = 250320 }, + { url = "https://files.pythonhosted.org/packages/f5/3c/b051329f718b463b22613e269ad72138cc256c540f78a6de89452803a47d/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:294e487f9ec720bd8ffcebc99d575f7eff3568a08a253d1ee1a0378754b74143", size = 246820 }, + { url = "https://files.pythonhosted.org/packages/0f/ae/58282e8f98e444b3f4dd42448ff36fa38bef29e40d40f330b22e7108f565/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:74c51543498289c0c43656701be6b077f4b265868fa7f8a8859c197006efb608", size = 250518 }, + { url = "https://files.pythonhosted.org/packages/8f/96/007e5944694d66123183845a106547a15944fbbb7154788cbf7272789536/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:776f352e8329135506a1d6bf16ac3f87bc25b28e765949282dcc627af36123aa", size = 239096 }, + { url = "https://files.pythonhosted.org/packages/66/bb/852b9d6db2fa40be96f29c0d1205c306288f0684df8fd26ca1951d461a56/frozenlist-1.8.0-cp312-cp312-win32.whl", hash = "sha256:433403ae80709741ce34038da08511d4a77062aa924baf411ef73d1146e74faf", size = 39985 }, + { url = "https://files.pythonhosted.org/packages/b8/af/38e51a553dd66eb064cdf193841f16f077585d4d28394c2fa6235cb41765/frozenlist-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:34187385b08f866104f0c0617404c8eb08165ab1272e884abc89c112e9c00746", size = 44591 }, + { url = "https://files.pythonhosted.org/packages/a7/06/1dc65480ab147339fecc70797e9c2f69d9cea9cf38934ce08df070fdb9cb/frozenlist-1.8.0-cp312-cp312-win_arm64.whl", hash = "sha256:fe3c58d2f5db5fbd18c2987cba06d51b0529f52bc3a6cdc33d3f4eab725104bd", size = 40102 }, + { url = "https://files.pythonhosted.org/packages/2d/40/0832c31a37d60f60ed79e9dfb5a92e1e2af4f40a16a29abcc7992af9edff/frozenlist-1.8.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8d92f1a84bb12d9e56f818b3a746f3efba93c1b63c8387a73dde655e1e42282a", size = 85717 }, + { url = "https://files.pythonhosted.org/packages/30/ba/b0b3de23f40bc55a7057bd38434e25c34fa48e17f20ee273bbde5e0650f3/frozenlist-1.8.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96153e77a591c8adc2ee805756c61f59fef4cf4073a9275ee86fe8cba41241f7", size = 49651 }, + { url = "https://files.pythonhosted.org/packages/0c/ab/6e5080ee374f875296c4243c381bbdef97a9ac39c6e3ce1d5f7d42cb78d6/frozenlist-1.8.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f21f00a91358803399890ab167098c131ec2ddd5f8f5fd5fe9c9f2c6fcd91e40", size = 49417 }, + { url = "https://files.pythonhosted.org/packages/d5/4e/e4691508f9477ce67da2015d8c00acd751e6287739123113a9fca6f1604e/frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fb30f9626572a76dfe4293c7194a09fb1fe93ba94c7d4f720dfae3b646b45027", size = 234391 }, + { url = "https://files.pythonhosted.org/packages/40/76/c202df58e3acdf12969a7895fd6f3bc016c642e6726aa63bd3025e0fc71c/frozenlist-1.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eaa352d7047a31d87dafcacbabe89df0aa506abb5b1b85a2fb91bc3faa02d822", size = 233048 }, + { url = "https://files.pythonhosted.org/packages/f9/c0/8746afb90f17b73ca5979c7a3958116e105ff796e718575175319b5bb4ce/frozenlist-1.8.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:03ae967b4e297f58f8c774c7eabcce57fe3c2434817d4385c50661845a058121", size = 226549 }, + { url = "https://files.pythonhosted.org/packages/7e/eb/4c7eefc718ff72f9b6c4893291abaae5fbc0c82226a32dcd8ef4f7a5dbef/frozenlist-1.8.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f6292f1de555ffcc675941d65fffffb0a5bcd992905015f85d0592201793e0e5", size = 239833 }, + { url = "https://files.pythonhosted.org/packages/c2/4e/e5c02187cf704224f8b21bee886f3d713ca379535f16893233b9d672ea71/frozenlist-1.8.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:29548f9b5b5e3460ce7378144c3010363d8035cea44bc0bf02d57f5a685e084e", size = 245363 }, + { url = "https://files.pythonhosted.org/packages/1f/96/cb85ec608464472e82ad37a17f844889c36100eed57bea094518bf270692/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ec3cc8c5d4084591b4237c0a272cc4f50a5b03396a47d9caaf76f5d7b38a4f11", size = 229314 }, + { url = "https://files.pythonhosted.org/packages/5d/6f/4ae69c550e4cee66b57887daeebe006fe985917c01d0fff9caab9883f6d0/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:517279f58009d0b1f2e7c1b130b377a349405da3f7621ed6bfae50b10adf20c1", size = 243365 }, + { url = "https://files.pythonhosted.org/packages/7a/58/afd56de246cf11780a40a2c28dc7cbabbf06337cc8ddb1c780a2d97e88d8/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:db1e72ede2d0d7ccb213f218df6a078a9c09a7de257c2fe8fcef16d5925230b1", size = 237763 }, + { url = "https://files.pythonhosted.org/packages/cb/36/cdfaf6ed42e2644740d4a10452d8e97fa1c062e2a8006e4b09f1b5fd7d63/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b4dec9482a65c54a5044486847b8a66bf10c9cb4926d42927ec4e8fd5db7fed8", size = 240110 }, + { url = "https://files.pythonhosted.org/packages/03/a8/9ea226fbefad669f11b52e864c55f0bd57d3c8d7eb07e9f2e9a0b39502e1/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:21900c48ae04d13d416f0e1e0c4d81f7931f73a9dfa0b7a8746fb2fe7dd970ed", size = 233717 }, + { url = "https://files.pythonhosted.org/packages/1e/0b/1b5531611e83ba7d13ccc9988967ea1b51186af64c42b7a7af465dcc9568/frozenlist-1.8.0-cp313-cp313-win32.whl", hash = "sha256:8b7b94a067d1c504ee0b16def57ad5738701e4ba10cec90529f13fa03c833496", size = 39628 }, + { url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231", size = 43882 }, + { url = "https://files.pythonhosted.org/packages/c1/17/502cd212cbfa96eb1388614fe39a3fc9ab87dbbe042b66f97acb57474834/frozenlist-1.8.0-cp313-cp313-win_arm64.whl", hash = "sha256:44389d135b3ff43ba8cc89ff7f51f5a0bb6b63d829c8300f79a2fe4fe61bcc62", size = 39676 }, + { url = "https://files.pythonhosted.org/packages/d2/5c/3bbfaa920dfab09e76946a5d2833a7cbdf7b9b4a91c714666ac4855b88b4/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:e25ac20a2ef37e91c1b39938b591457666a0fa835c7783c3a8f33ea42870db94", size = 89235 }, + { url = "https://files.pythonhosted.org/packages/d2/d6/f03961ef72166cec1687e84e8925838442b615bd0b8854b54923ce5b7b8a/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07cdca25a91a4386d2e76ad992916a85038a9b97561bf7a3fd12d5d9ce31870c", size = 50742 }, + { url = "https://files.pythonhosted.org/packages/1e/bb/a6d12b7ba4c3337667d0e421f7181c82dda448ce4e7ad7ecd249a16fa806/frozenlist-1.8.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4e0c11f2cc6717e0a741f84a527c52616140741cd812a50422f83dc31749fb52", size = 51725 }, + { url = "https://files.pythonhosted.org/packages/bc/71/d1fed0ffe2c2ccd70b43714c6cab0f4188f09f8a67a7914a6b46ee30f274/frozenlist-1.8.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b3210649ee28062ea6099cfda39e147fa1bc039583c8ee4481cb7811e2448c51", size = 284533 }, + { url = "https://files.pythonhosted.org/packages/c9/1f/fb1685a7b009d89f9bf78a42d94461bc06581f6e718c39344754a5d9bada/frozenlist-1.8.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:581ef5194c48035a7de2aefc72ac6539823bb71508189e5de01d60c9dcd5fa65", size = 292506 }, + { url = "https://files.pythonhosted.org/packages/e6/3b/b991fe1612703f7e0d05c0cf734c1b77aaf7c7d321df4572e8d36e7048c8/frozenlist-1.8.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3ef2d026f16a2b1866e1d86fc4e1291e1ed8a387b2c333809419a2f8b3a77b82", size = 274161 }, + { url = "https://files.pythonhosted.org/packages/ca/ec/c5c618767bcdf66e88945ec0157d7f6c4a1322f1473392319b7a2501ded7/frozenlist-1.8.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5500ef82073f599ac84d888e3a8c1f77ac831183244bfd7f11eaa0289fb30714", size = 294676 }, + { url = "https://files.pythonhosted.org/packages/7c/ce/3934758637d8f8a88d11f0585d6495ef54b2044ed6ec84492a91fa3b27aa/frozenlist-1.8.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:50066c3997d0091c411a66e710f4e11752251e6d2d73d70d8d5d4c76442a199d", size = 300638 }, + { url = "https://files.pythonhosted.org/packages/fc/4f/a7e4d0d467298f42de4b41cbc7ddaf19d3cfeabaf9ff97c20c6c7ee409f9/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:5c1c8e78426e59b3f8005e9b19f6ff46e5845895adbde20ece9218319eca6506", size = 283067 }, + { url = "https://files.pythonhosted.org/packages/dc/48/c7b163063d55a83772b268e6d1affb960771b0e203b632cfe09522d67ea5/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:eefdba20de0d938cec6a89bd4d70f346a03108a19b9df4248d3cf0d88f1b0f51", size = 292101 }, + { url = "https://files.pythonhosted.org/packages/9f/d0/2366d3c4ecdc2fd391e0afa6e11500bfba0ea772764d631bbf82f0136c9d/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cf253e0e1c3ceb4aaff6df637ce033ff6535fb8c70a764a8f46aafd3d6ab798e", size = 289901 }, + { url = "https://files.pythonhosted.org/packages/b8/94/daff920e82c1b70e3618a2ac39fbc01ae3e2ff6124e80739ce5d71c9b920/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:032efa2674356903cd0261c4317a561a6850f3ac864a63fc1583147fb05a79b0", size = 289395 }, + { url = "https://files.pythonhosted.org/packages/e3/20/bba307ab4235a09fdcd3cc5508dbabd17c4634a1af4b96e0f69bfe551ebd/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6da155091429aeba16851ecb10a9104a108bcd32f6c1642867eadaee401c1c41", size = 283659 }, + { url = "https://files.pythonhosted.org/packages/fd/00/04ca1c3a7a124b6de4f8a9a17cc2fcad138b4608e7a3fc5877804b8715d7/frozenlist-1.8.0-cp313-cp313t-win32.whl", hash = "sha256:0f96534f8bfebc1a394209427d0f8a63d343c9779cda6fc25e8e121b5fd8555b", size = 43492 }, + { url = "https://files.pythonhosted.org/packages/59/5e/c69f733a86a94ab10f68e496dc6b7e8bc078ebb415281d5698313e3af3a1/frozenlist-1.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5d63a068f978fc69421fb0e6eb91a9603187527c86b7cd3f534a5b77a592b888", size = 48034 }, + { url = "https://files.pythonhosted.org/packages/16/6c/be9d79775d8abe79b05fa6d23da99ad6e7763a1d080fbae7290b286093fd/frozenlist-1.8.0-cp313-cp313t-win_arm64.whl", hash = "sha256:bf0a7e10b077bf5fb9380ad3ae8ce20ef919a6ad93b4552896419ac7e1d8e042", size = 41749 }, + { url = "https://files.pythonhosted.org/packages/f1/c8/85da824b7e7b9b6e7f7705b2ecaf9591ba6f79c1177f324c2735e41d36a2/frozenlist-1.8.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:cee686f1f4cadeb2136007ddedd0aaf928ab95216e7691c63e50a8ec066336d0", size = 86127 }, + { url = "https://files.pythonhosted.org/packages/8e/e8/a1185e236ec66c20afd72399522f142c3724c785789255202d27ae992818/frozenlist-1.8.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:119fb2a1bd47307e899c2fac7f28e85b9a543864df47aa7ec9d3c1b4545f096f", size = 49698 }, + { url = "https://files.pythonhosted.org/packages/a1/93/72b1736d68f03fda5fdf0f2180fb6caaae3894f1b854d006ac61ecc727ee/frozenlist-1.8.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4970ece02dbc8c3a92fcc5228e36a3e933a01a999f7094ff7c23fbd2beeaa67c", size = 49749 }, + { url = "https://files.pythonhosted.org/packages/a7/b2/fabede9fafd976b991e9f1b9c8c873ed86f202889b864756f240ce6dd855/frozenlist-1.8.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:cba69cb73723c3f329622e34bdbf5ce1f80c21c290ff04256cff1cd3c2036ed2", size = 231298 }, + { url = "https://files.pythonhosted.org/packages/3a/3b/d9b1e0b0eed36e70477ffb8360c49c85c8ca8ef9700a4e6711f39a6e8b45/frozenlist-1.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:778a11b15673f6f1df23d9586f83c4846c471a8af693a22e066508b77d201ec8", size = 232015 }, + { url = "https://files.pythonhosted.org/packages/dc/94/be719d2766c1138148564a3960fc2c06eb688da592bdc25adcf856101be7/frozenlist-1.8.0-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0325024fe97f94c41c08872db482cf8ac4800d80e79222c6b0b7b162d5b13686", size = 225038 }, + { url = "https://files.pythonhosted.org/packages/e4/09/6712b6c5465f083f52f50cf74167b92d4ea2f50e46a9eea0523d658454ae/frozenlist-1.8.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:97260ff46b207a82a7567b581ab4190bd4dfa09f4db8a8b49d1a958f6aa4940e", size = 240130 }, + { url = "https://files.pythonhosted.org/packages/f8/d4/cd065cdcf21550b54f3ce6a22e143ac9e4836ca42a0de1022da8498eac89/frozenlist-1.8.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:54b2077180eb7f83dd52c40b2750d0a9f175e06a42e3213ce047219de902717a", size = 242845 }, + { url = "https://files.pythonhosted.org/packages/62/c3/f57a5c8c70cd1ead3d5d5f776f89d33110b1addae0ab010ad774d9a44fb9/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:2f05983daecab868a31e1da44462873306d3cbfd76d1f0b5b69c473d21dbb128", size = 229131 }, + { url = "https://files.pythonhosted.org/packages/6c/52/232476fe9cb64f0742f3fde2b7d26c1dac18b6d62071c74d4ded55e0ef94/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:33f48f51a446114bc5d251fb2954ab0164d5be02ad3382abcbfe07e2531d650f", size = 240542 }, + { url = "https://files.pythonhosted.org/packages/5f/85/07bf3f5d0fb5414aee5f47d33c6f5c77bfe49aac680bfece33d4fdf6a246/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:154e55ec0655291b5dd1b8731c637ecdb50975a2ae70c606d100750a540082f7", size = 237308 }, + { url = "https://files.pythonhosted.org/packages/11/99/ae3a33d5befd41ac0ca2cc7fd3aa707c9c324de2e89db0e0f45db9a64c26/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:4314debad13beb564b708b4a496020e5306c7333fa9a3ab90374169a20ffab30", size = 238210 }, + { url = "https://files.pythonhosted.org/packages/b2/60/b1d2da22f4970e7a155f0adde9b1435712ece01b3cd45ba63702aea33938/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:073f8bf8becba60aa931eb3bc420b217bb7d5b8f4750e6f8b3be7f3da85d38b7", size = 231972 }, + { url = "https://files.pythonhosted.org/packages/3f/ab/945b2f32de889993b9c9133216c068b7fcf257d8595a0ac420ac8677cab0/frozenlist-1.8.0-cp314-cp314-win32.whl", hash = "sha256:bac9c42ba2ac65ddc115d930c78d24ab8d4f465fd3fc473cdedfccadb9429806", size = 40536 }, + { url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl", hash = "sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0", size = 44330 }, + { url = "https://files.pythonhosted.org/packages/82/13/e6950121764f2676f43534c555249f57030150260aee9dcf7d64efda11dd/frozenlist-1.8.0-cp314-cp314-win_arm64.whl", hash = "sha256:d1eaff1d00c7751b7c6662e9c5ba6eb2c17a2306ba5e2a37f24ddf3cc953402b", size = 40627 }, + { url = "https://files.pythonhosted.org/packages/c0/c7/43200656ecc4e02d3f8bc248df68256cd9572b3f0017f0a0c4e93440ae23/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d3bb933317c52d7ea5004a1c442eef86f426886fba134ef8cf4226ea6ee1821d", size = 89238 }, + { url = "https://files.pythonhosted.org/packages/d1/29/55c5f0689b9c0fb765055629f472c0de484dcaf0acee2f7707266ae3583c/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8009897cdef112072f93a0efdce29cd819e717fd2f649ee3016efd3cd885a7ed", size = 50738 }, + { url = "https://files.pythonhosted.org/packages/ba/7d/b7282a445956506fa11da8c2db7d276adcbf2b17d8bb8407a47685263f90/frozenlist-1.8.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2c5dcbbc55383e5883246d11fd179782a9d07a986c40f49abe89ddf865913930", size = 51739 }, + { url = "https://files.pythonhosted.org/packages/62/1c/3d8622e60d0b767a5510d1d3cf21065b9db874696a51ea6d7a43180a259c/frozenlist-1.8.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:39ecbc32f1390387d2aa4f5a995e465e9e2f79ba3adcac92d68e3e0afae6657c", size = 284186 }, + { url = "https://files.pythonhosted.org/packages/2d/14/aa36d5f85a89679a85a1d44cd7a6657e0b1c75f61e7cad987b203d2daca8/frozenlist-1.8.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92db2bf818d5cc8d9c1f1fc56b897662e24ea5adb36ad1f1d82875bd64e03c24", size = 292196 }, + { url = "https://files.pythonhosted.org/packages/05/23/6bde59eb55abd407d34f77d39a5126fb7b4f109a3f611d3929f14b700c66/frozenlist-1.8.0-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2dc43a022e555de94c3b68a4ef0b11c4f747d12c024a520c7101709a2144fb37", size = 273830 }, + { url = "https://files.pythonhosted.org/packages/d2/3f/22cff331bfad7a8afa616289000ba793347fcd7bc275f3b28ecea2a27909/frozenlist-1.8.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb89a7f2de3602cfed448095bab3f178399646ab7c61454315089787df07733a", size = 294289 }, + { url = "https://files.pythonhosted.org/packages/a4/89/5b057c799de4838b6c69aa82b79705f2027615e01be996d2486a69ca99c4/frozenlist-1.8.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:33139dc858c580ea50e7e60a1b0ea003efa1fd42e6ec7fdbad78fff65fad2fd2", size = 300318 }, + { url = "https://files.pythonhosted.org/packages/30/de/2c22ab3eb2a8af6d69dc799e48455813bab3690c760de58e1bf43b36da3e/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:168c0969a329b416119507ba30b9ea13688fafffac1b7822802537569a1cb0ef", size = 282814 }, + { url = "https://files.pythonhosted.org/packages/59/f7/970141a6a8dbd7f556d94977858cfb36fa9b66e0892c6dd780d2219d8cd8/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:28bd570e8e189d7f7b001966435f9dac6718324b5be2990ac496cf1ea9ddb7fe", size = 291762 }, + { url = "https://files.pythonhosted.org/packages/c1/15/ca1adae83a719f82df9116d66f5bb28bb95557b3951903d39135620ef157/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b2a095d45c5d46e5e79ba1e5b9cb787f541a8dee0433836cea4b96a2c439dcd8", size = 289470 }, + { url = "https://files.pythonhosted.org/packages/ac/83/dca6dc53bf657d371fbc88ddeb21b79891e747189c5de990b9dfff2ccba1/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:eab8145831a0d56ec9c4139b6c3e594c7a83c2c8be25d5bcf2d86136a532287a", size = 289042 }, + { url = "https://files.pythonhosted.org/packages/96/52/abddd34ca99be142f354398700536c5bd315880ed0a213812bc491cff5e4/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:974b28cf63cc99dfb2188d8d222bc6843656188164848c4f679e63dae4b0708e", size = 283148 }, + { url = "https://files.pythonhosted.org/packages/af/d3/76bd4ed4317e7119c2b7f57c3f6934aba26d277acc6309f873341640e21f/frozenlist-1.8.0-cp314-cp314t-win32.whl", hash = "sha256:342c97bf697ac5480c0a7ec73cd700ecfa5a8a40ac923bd035484616efecc2df", size = 44676 }, + { url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl", hash = "sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd", size = 49451 }, + { url = "https://files.pythonhosted.org/packages/e0/a3/5982da14e113d07b325230f95060e2169f5311b1017ea8af2a29b374c289/frozenlist-1.8.0-cp314-cp314t-win_arm64.whl", hash = "sha256:102e6314ca4da683dca92e3b1355490fed5f313b768500084fbe6371fddfdb79", size = 42507 }, + { url = "https://files.pythonhosted.org/packages/9a/9a/e35b4a917281c0b8419d4207f4334c8e8c5dbf4f3f5f9ada73958d937dcc/frozenlist-1.8.0-py3-none-any.whl", hash = "sha256:0c18a16eab41e82c295618a77502e17b195883241c563b00f0aa5106fc4eaa0d", size = 13409 }, +] + +[[package]] +name = "fsspec" +version = "2022.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/44/7c/fb753d18e2eeb186a47ecd6939326f7633a027fe23a44ee7912978e64819/fsspec-2022.11.0.tar.gz", hash = "sha256:259d5fd5c8e756ff2ea72f42e7613c32667dc2049a4ac3d84364a7ca034acb8b", size = 139427 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/37/57/eb7c3c10b187d3b8565946772ce0229c79e3c623010eda0aeb5032ff56f4/fsspec-2022.11.0-py3-none-any.whl", hash = "sha256:d6e462003e3dcdcb8c7aa84c73a228f8227e72453cd22570e2363e8844edfe7b", size = 139465 }, +] + +[[package]] +name = "gcsfs" +version = "2022.11.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohttp" }, + { name = "decorator" }, + { name = "fsspec" }, + { name = "google-auth" }, + { name = "google-auth-oauthlib" }, + { name = "google-cloud-storage" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9d/f1/79834a15a341c42ddca882b5dcf06295890faf43d8277aaa458fdbc5e27e/gcsfs-2022.11.0.tar.gz", hash = "sha256:84d0caada7097e357d735d7e16e8064f0819d28746101d6f65ff42938557e831", size = 59076 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/ba/5b4b33b16ff9d8d9d57f839871ffde582950efc001083eae88c975311f68/gcsfs-2022.11.0-py2.py3-none-any.whl", hash = "sha256:b4543f4711d4f59284cd79747c0b76783c9501251c641957ab0dc70b4eab0e70", size = 26376 }, +] + +[[package]] +name = "gdown" +version = "5.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "filelock" }, + { name = "requests", extra = ["socks"] }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f0/c9/3dbaca0c3b134de17bbd69eeda1ff7f8eef2c64144a5e4303584bacd6177/gdown-5.1.0.tar.gz", hash = "sha256:550a72dc5ca2819fe4bcc15d80d05d7c98c0b90e57256254b77d0256b9df4683", size = 283961 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/56/f4845ed78723a4eb8eb22bcfcb46e1157a462c78c0a5ed318c68c98f9a79/gdown-5.1.0-py3-none-any.whl", hash = "sha256:421530fd238fa15d41ba43219a79fdc28efe8ac11022173abad333701b77de2c", size = 17769 }, +] + +[[package]] +name = "gitdb" +version = "4.0.12" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "smmap" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/72/94/63b0fc47eb32792c7ba1fe1b694daec9a63620db1e313033d18140c2320a/gitdb-4.0.12.tar.gz", hash = "sha256:5ef71f855d191a3326fcfbc0d5da835f26b13fbcba60c32c21091c349ffdb571", size = 394684 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl", hash = "sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf", size = 62794 }, +] + +[[package]] +name = "gitpython" +version = "3.1.46" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "gitdb" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/df/b5/59d16470a1f0dfe8c793f9ef56fd3826093fc52b3bd96d6b9d6c26c7e27b/gitpython-3.1.46.tar.gz", hash = "sha256:400124c7d0ef4ea03f7310ac2fbf7151e09ff97f2a3288d64a440c584a29c37f", size = 215371 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl", hash = "sha256:79812ed143d9d25b6d176a10bb511de0f9c67b1fa641d82097b0ab90398a2058", size = 208620 }, +] + +[[package]] +name = "google-api-core" +version = "2.29.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-auth" }, + { name = "googleapis-common-protos" }, + { name = "proto-plus" }, + { name = "protobuf" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0d/10/05572d33273292bac49c2d1785925f7bc3ff2fe50e3044cf1062c1dde32e/google_api_core-2.29.0.tar.gz", hash = "sha256:84181be0f8e6b04006df75ddfe728f24489f0af57c96a529ff7cf45bc28797f7", size = 177828 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/77/b6/85c4d21067220b9a78cfb81f516f9725ea6befc1544ec9bd2c1acd97c324/google_api_core-2.29.0-py3-none-any.whl", hash = "sha256:d30bc60980daa36e314b5d5a3e5958b0200cb44ca8fa1be2b614e932b75a3ea9", size = 173906 }, +] + +[[package]] +name = "google-auth" +version = "2.48.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "pyasn1-modules" }, + { name = "rsa" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0c/41/242044323fbd746615884b1c16639749e73665b718209946ebad7ba8a813/google_auth-2.48.0.tar.gz", hash = "sha256:4f7e706b0cd3208a3d940a19a822c37a476ddba5450156c3e6624a71f7c841ce", size = 326522 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/1d/d6466de3a5249d35e832a52834115ca9d1d0de6abc22065f049707516d47/google_auth-2.48.0-py3-none-any.whl", hash = "sha256:2e2a537873d449434252a9632c28bfc268b0adb1e53f9fb62afc5333a975903f", size = 236499 }, +] + +[[package]] +name = "google-auth-oauthlib" +version = "1.2.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-auth" }, + { name = "requests-oauthlib" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/90/dd/211f27c1e927e2292c2a71d5df1a2aaf261ce50ba7d50848c6ee24e20970/google_auth_oauthlib-1.2.4.tar.gz", hash = "sha256:3ca93859c6cc9003c8e12b2a0868915209d7953f05a70f4880ab57d57e56ee3e", size = 21185 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/84/21/fb96db432d187b07756e62971c4d89bdef70259e4cfa76ee32bcc0ac97d1/google_auth_oauthlib-1.2.4-py3-none-any.whl", hash = "sha256:0e922eea5f2baacaf8867febb782e46e7b153236c21592ed76ab3ddb77ffd772", size = 19193 }, +] + +[[package]] +name = "google-cloud-core" +version = "2.5.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-api-core" }, + { name = "google-auth" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a6/03/ef0bc99d0e0faf4fdbe67ac445e18cdaa74824fd93cd069e7bb6548cb52d/google_cloud_core-2.5.0.tar.gz", hash = "sha256:7c1b7ef5c92311717bd05301aa1a91ffbc565673d3b0b4163a52d8413a186963", size = 36027 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/89/20/bfa472e327c8edee00f04beecc80baeddd2ab33ee0e86fd7654da49d45e9/google_cloud_core-2.5.0-py3-none-any.whl", hash = "sha256:67d977b41ae6c7211ee830c7912e41003ea8194bff15ae7d72fd6f51e57acabc", size = 29469 }, +] + +[[package]] +name = "google-cloud-storage" +version = "2.19.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-api-core" }, + { name = "google-auth" }, + { name = "google-cloud-core" }, + { name = "google-crc32c" }, + { name = "google-resumable-media" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/36/76/4d965702e96bb67976e755bed9828fa50306dca003dbee08b67f41dd265e/google_cloud_storage-2.19.0.tar.gz", hash = "sha256:cd05e9e7191ba6cb68934d8eb76054d9be4562aa89dbc4236feee4d7d51342b2", size = 5535488 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d5/94/6db383d8ee1adf45dc6c73477152b82731fa4c4a46d9c1932cc8757e0fd4/google_cloud_storage-2.19.0-py2.py3-none-any.whl", hash = "sha256:aeb971b5c29cf8ab98445082cbfe7b161a1f48ed275822f59ed3f1524ea54fba", size = 131787 }, +] + +[[package]] +name = "google-crc32c" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/03/41/4b9c02f99e4c5fb477122cd5437403b552873f014616ac1d19ac8221a58d/google_crc32c-1.8.0.tar.gz", hash = "sha256:a428e25fb7691024de47fecfbff7ff957214da51eddded0da0ae0e0f03a2cf79", size = 14192 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5d/ef/21ccfaab3d5078d41efe8612e0ed0bfc9ce22475de074162a91a25f7980d/google_crc32c-1.8.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:014a7e68d623e9a4222d663931febc3033c5c7c9730785727de2a81f87d5bab8", size = 31298 }, + { url = "https://files.pythonhosted.org/packages/c5/b8/f8413d3f4b676136e965e764ceedec904fe38ae8de0cdc52a12d8eb1096e/google_crc32c-1.8.0-cp311-cp311-macosx_12_0_x86_64.whl", hash = "sha256:86cfc00fe45a0ac7359e5214a1704e51a99e757d0272554874f419f79838c5f7", size = 30872 }, + { url = "https://files.pythonhosted.org/packages/f6/fd/33aa4ec62b290477181c55bb1c9302c9698c58c0ce9a6ab4874abc8b0d60/google_crc32c-1.8.0-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:19b40d637a54cb71e0829179f6cb41835f0fbd9e8eb60552152a8b52c36cbe15", size = 33243 }, + { url = "https://files.pythonhosted.org/packages/71/03/4820b3bd99c9653d1a5210cb32f9ba4da9681619b4d35b6a052432df4773/google_crc32c-1.8.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:17446feb05abddc187e5441a45971b8394ea4c1b6efd88ab0af393fd9e0a156a", size = 33608 }, + { url = "https://files.pythonhosted.org/packages/7c/43/acf61476a11437bf9733fb2f70599b1ced11ec7ed9ea760fdd9a77d0c619/google_crc32c-1.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:71734788a88f551fbd6a97be9668a0020698e07b2bf5b3aa26a36c10cdfb27b2", size = 34439 }, + { url = "https://files.pythonhosted.org/packages/e9/5f/7307325b1198b59324c0fa9807cafb551afb65e831699f2ce211ad5c8240/google_crc32c-1.8.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:4b8286b659c1335172e39563ab0a768b8015e88e08329fa5321f774275fc3113", size = 31300 }, + { url = "https://files.pythonhosted.org/packages/21/8e/58c0d5d86e2220e6a37befe7e6a94dd2f6006044b1a33edf1ff6d9f7e319/google_crc32c-1.8.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:2a3dc3318507de089c5384cc74d54318401410f82aa65b2d9cdde9d297aca7cb", size = 30867 }, + { url = "https://files.pythonhosted.org/packages/ce/a9/a780cc66f86335a6019f557a8aaca8fbb970728f0efd2430d15ff1beae0e/google_crc32c-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:14f87e04d613dfa218d6135e81b78272c3b904e2a7053b841481b38a7d901411", size = 33364 }, + { url = "https://files.pythonhosted.org/packages/21/3f/3457ea803db0198c9aaca2dd373750972ce28a26f00544b6b85088811939/google_crc32c-1.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cb5c869c2923d56cb0c8e6bcdd73c009c36ae39b652dbe46a05eb4ef0ad01454", size = 33740 }, + { url = "https://files.pythonhosted.org/packages/df/c0/87c2073e0c72515bb8733d4eef7b21548e8d189f094b5dad20b0ecaf64f6/google_crc32c-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:3cc0c8912038065eafa603b238abf252e204accab2a704c63b9e14837a854962", size = 34437 }, + { url = "https://files.pythonhosted.org/packages/d1/db/000f15b41724589b0e7bc24bc7a8967898d8d3bc8caf64c513d91ef1f6c0/google_crc32c-1.8.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:3ebb04528e83b2634857f43f9bb8ef5b2bbe7f10f140daeb01b58f972d04736b", size = 31297 }, + { url = "https://files.pythonhosted.org/packages/d7/0d/8ebed0c39c53a7e838e2a486da8abb0e52de135f1b376ae2f0b160eb4c1a/google_crc32c-1.8.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:450dc98429d3e33ed2926fc99ee81001928d63460f8538f21a5d6060912a8e27", size = 30867 }, + { url = "https://files.pythonhosted.org/packages/ce/42/b468aec74a0354b34c8cbf748db20d6e350a68a2b0912e128cabee49806c/google_crc32c-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:3b9776774b24ba76831609ffbabce8cdf6fa2bd5e9df37b594221c7e333a81fa", size = 33344 }, + { url = "https://files.pythonhosted.org/packages/1c/e8/b33784d6fc77fb5062a8a7854e43e1e618b87d5ddf610a88025e4de6226e/google_crc32c-1.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:89c17d53d75562edfff86679244830599ee0a48efc216200691de8b02ab6b2b8", size = 33694 }, + { url = "https://files.pythonhosted.org/packages/92/b1/d3cbd4d988afb3d8e4db94ca953df429ed6db7282ed0e700d25e6c7bfc8d/google_crc32c-1.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:57a50a9035b75643996fbf224d6661e386c7162d1dfdab9bc4ca790947d1007f", size = 34435 }, + { url = "https://files.pythonhosted.org/packages/21/88/8ecf3c2b864a490b9e7010c84fd203ec8cf3b280651106a3a74dd1b0ca72/google_crc32c-1.8.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:e6584b12cb06796d285d09e33f63309a09368b9d806a551d8036a4207ea43697", size = 31301 }, + { url = "https://files.pythonhosted.org/packages/36/c6/f7ff6c11f5ca215d9f43d3629163727a272eabc356e5c9b2853df2bfe965/google_crc32c-1.8.0-cp314-cp314-macosx_12_0_x86_64.whl", hash = "sha256:f4b51844ef67d6cf2e9425983274da75f18b1597bb2c998e1c0a0e8d46f8f651", size = 30868 }, + { url = "https://files.pythonhosted.org/packages/56/15/c25671c7aad70f8179d858c55a6ae8404902abe0cdcf32a29d581792b491/google_crc32c-1.8.0-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b0d1a7afc6e8e4635564ba8aa5c0548e3173e41b6384d7711a9123165f582de2", size = 33381 }, + { url = "https://files.pythonhosted.org/packages/42/fa/f50f51260d7b0ef5d4898af122d8a7ec5a84e2984f676f746445f783705f/google_crc32c-1.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8b3f68782f3cbd1bce027e48768293072813469af6a61a86f6bb4977a4380f21", size = 33734 }, + { url = "https://files.pythonhosted.org/packages/08/a5/7b059810934a09fb3ccb657e0843813c1fee1183d3bc2c8041800374aa2c/google_crc32c-1.8.0-cp314-cp314-win_amd64.whl", hash = "sha256:d511b3153e7011a27ab6ee6bb3a5404a55b994dc1a7322c0b87b29606d9790e2", size = 34878 }, + { url = "https://files.pythonhosted.org/packages/52/c5/c171e4d8c44fec1422d801a6d2e5d7ddabd733eeda505c79730ee9607f07/google_crc32c-1.8.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:87fa445064e7db928226b2e6f0d5304ab4cd0339e664a4e9a25029f384d9bb93", size = 28615 }, + { url = "https://files.pythonhosted.org/packages/9c/97/7d75fe37a7a6ed171a2cf17117177e7aab7e6e0d115858741b41e9dd4254/google_crc32c-1.8.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f639065ea2042d5c034bf258a9f085eaa7af0cd250667c0635a3118e8f92c69c", size = 28800 }, +] + +[[package]] +name = "google-resumable-media" +version = "2.8.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-crc32c" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/64/d7/520b62a35b23038ff005e334dba3ffc75fcf583bee26723f1fd8fd4b6919/google_resumable_media-2.8.0.tar.gz", hash = "sha256:f1157ed8b46994d60a1bc432544db62352043113684d4e030ee02e77ebe9a1ae", size = 2163265 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1f/0b/93afde9cfe012260e9fe1522f35c9b72d6ee222f316586b1f23ecf44d518/google_resumable_media-2.8.0-py3-none-any.whl", hash = "sha256:dd14a116af303845a8d932ddae161a26e86cc229645bc98b39f026f9b1717582", size = 81340 }, +] + +[[package]] +name = "googleapis-common-protos" +version = "1.72.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e5/7b/adfd75544c415c487b33061fe7ae526165241c1ea133f9a9125a56b39fd8/googleapis_common_protos-1.72.0.tar.gz", hash = "sha256:e55a601c1b32b52d7a3e65f43563e2aa61bcd737998ee672ac9b951cd49319f5", size = 147433 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c4/ab/09169d5a4612a5f92490806649ac8d41e3ec9129c636754575b3553f4ea4/googleapis_common_protos-1.72.0-py3-none-any.whl", hash = "sha256:4299c5a82d5ae1a9702ada957347726b167f9f8d1fc352477702a1e851ff4038", size = 297515 }, +] + +[[package]] +name = "h11" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515 }, +] + +[[package]] +name = "h5netcdf" +version = "1.8.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ef/03/92d6cc02c0055158167255980461155d6e17f1c4143c03f8bcc18d3e3f3a/h5netcdf-1.8.1.tar.gz", hash = "sha256:9b396a4cc346050fc1a4df8523bc1853681ec3544e0449027ae397cb953c7a16", size = 78679 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/8b/88f16936a8e8070a83d36239555227ecd91728f9ef222c5382cda07e0fd6/h5netcdf-1.8.1-py3-none-any.whl", hash = "sha256:a76ed7cfc9b8a8908ea7057c4e57e27307acff1049b7f5ed52db6c2247636879", size = 62915 }, +] + +[[package]] +name = "h5py" +version = "3.15.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/4d/6a/0d79de0b025aa85dc8864de8e97659c94cf3d23148394a954dc5ca52f8c8/h5py-3.15.1.tar.gz", hash = "sha256:c86e3ed45c4473564de55aa83b6fc9e5ead86578773dfbd93047380042e26b69", size = 426236 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/fd/8349b48b15b47768042cff06ad6e1c229f0a4bd89225bf6b6894fea27e6d/h5py-3.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5aaa330bcbf2830150c50897ea5dcbed30b5b6d56897289846ac5b9e529ec243", size = 3434135 }, + { url = "https://files.pythonhosted.org/packages/c1/b0/1c628e26a0b95858f54aba17e1599e7f6cd241727596cc2580b72cb0a9bf/h5py-3.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c970fb80001fffabb0109eaf95116c8e7c0d3ca2de854e0901e8a04c1f098509", size = 2870958 }, + { url = "https://files.pythonhosted.org/packages/f9/e3/c255cafc9b85e6ea04e2ad1bba1416baa1d7f57fc98a214be1144087690c/h5py-3.15.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:80e5bb5b9508d5d9da09f81fd00abbb3f85da8143e56b1585d59bc8ceb1dba8b", size = 4504770 }, + { url = "https://files.pythonhosted.org/packages/8b/23/4ab1108e87851ccc69694b03b817d92e142966a6c4abd99e17db77f2c066/h5py-3.15.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5b849ba619a066196169763c33f9f0f02e381156d61c03e000bb0100f9950faf", size = 4700329 }, + { url = "https://files.pythonhosted.org/packages/a4/e4/932a3a8516e4e475b90969bf250b1924dbe3612a02b897e426613aed68f4/h5py-3.15.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e7f6c841efd4e6e5b7e82222eaf90819927b6d256ab0f3aca29675601f654f3c", size = 4152456 }, + { url = "https://files.pythonhosted.org/packages/2a/0a/f74d589883b13737021b2049ac796328f188dbb60c2ed35b101f5b95a3fc/h5py-3.15.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ca8a3a22458956ee7b40d8e39c9a9dc01f82933e4c030c964f8b875592f4d831", size = 4617295 }, + { url = "https://files.pythonhosted.org/packages/23/95/499b4e56452ef8b6c95a271af0dde08dac4ddb70515a75f346d4f400579b/h5py-3.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:550e51131376889656feec4aff2170efc054a7fe79eb1da3bb92e1625d1ac878", size = 2882129 }, + { url = "https://files.pythonhosted.org/packages/ce/bb/cfcc70b8a42222ba3ad4478bcef1791181ea908e2adbd7d53c66395edad5/h5py-3.15.1-cp311-cp311-win_arm64.whl", hash = "sha256:b39239947cb36a819147fc19e86b618dcb0953d1cd969f5ed71fc0de60392427", size = 2477121 }, + { url = "https://files.pythonhosted.org/packages/62/b8/c0d9aa013ecfa8b7057946c080c0c07f6fa41e231d2e9bd306a2f8110bdc/h5py-3.15.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:316dd0f119734f324ca7ed10b5627a2de4ea42cc4dfbcedbee026aaa361c238c", size = 3399089 }, + { url = "https://files.pythonhosted.org/packages/a4/5e/3c6f6e0430813c7aefe784d00c6711166f46225f5d229546eb53032c3707/h5py-3.15.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b51469890e58e85d5242e43aab29f5e9c7e526b951caab354f3ded4ac88e7b76", size = 2847803 }, + { url = "https://files.pythonhosted.org/packages/00/69/ba36273b888a4a48d78f9268d2aee05787e4438557450a8442946ab8f3ec/h5py-3.15.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a33bfd5dfcea037196f7778534b1ff7e36a7f40a89e648c8f2967292eb6898e", size = 4914884 }, + { url = "https://files.pythonhosted.org/packages/3a/30/d1c94066343a98bb2cea40120873193a4fed68c4ad7f8935c11caf74c681/h5py-3.15.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:25c8843fec43b2cc368aa15afa1cdf83fc5e17b1c4e10cd3771ef6c39b72e5ce", size = 5109965 }, + { url = "https://files.pythonhosted.org/packages/81/3d/d28172116eafc3bc9f5991b3cb3fd2c8a95f5984f50880adfdf991de9087/h5py-3.15.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a308fd8681a864c04423c0324527237a0484e2611e3441f8089fd00ed56a8171", size = 4561870 }, + { url = "https://files.pythonhosted.org/packages/a5/83/393a7226024238b0f51965a7156004eaae1fcf84aa4bfecf7e582676271b/h5py-3.15.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f4a016df3f4a8a14d573b496e4d1964deb380e26031fc85fb40e417e9131888a", size = 5037161 }, + { url = "https://files.pythonhosted.org/packages/cf/51/329e7436bf87ca6b0fe06dd0a3795c34bebe4ed8d6c44450a20565d57832/h5py-3.15.1-cp312-cp312-win_amd64.whl", hash = "sha256:59b25cf02411bf12e14f803fef0b80886444c7fe21a5ad17c6a28d3f08098a1e", size = 2874165 }, + { url = "https://files.pythonhosted.org/packages/09/a8/2d02b10a66747c54446e932171dd89b8b4126c0111b440e6bc05a7c852ec/h5py-3.15.1-cp312-cp312-win_arm64.whl", hash = "sha256:61d5a58a9851e01ee61c932bbbb1c98fe20aba0a5674776600fb9a361c0aa652", size = 2458214 }, + { url = "https://files.pythonhosted.org/packages/88/b3/40207e0192415cbff7ea1d37b9f24b33f6d38a5a2f5d18a678de78f967ae/h5py-3.15.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c8440fd8bee9500c235ecb7aa1917a0389a2adb80c209fa1cc485bd70e0d94a5", size = 3376511 }, + { url = "https://files.pythonhosted.org/packages/31/96/ba99a003c763998035b0de4c299598125df5fc6c9ccf834f152ddd60e0fb/h5py-3.15.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ab2219dbc6fcdb6932f76b548e2b16f34a1f52b7666e998157a4dfc02e2c4123", size = 2826143 }, + { url = "https://files.pythonhosted.org/packages/6a/c2/fc6375d07ea3962df7afad7d863fe4bde18bb88530678c20d4c90c18de1d/h5py-3.15.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8cb02c3a96255149ed3ac811eeea25b655d959c6dd5ce702c9a95ff11859eb5", size = 4908316 }, + { url = "https://files.pythonhosted.org/packages/d9/69/4402ea66272dacc10b298cca18ed73e1c0791ff2ae9ed218d3859f9698ac/h5py-3.15.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:121b2b7a4c1915d63737483b7bff14ef253020f617c2fb2811f67a4bed9ac5e8", size = 5103710 }, + { url = "https://files.pythonhosted.org/packages/e0/f6/11f1e2432d57d71322c02a97a5567829a75f223a8c821764a0e71a65cde8/h5py-3.15.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59b0d63b318bf3cc06687def2b45afd75926bbc006f7b8cd2b1a231299fc8599", size = 4556042 }, + { url = "https://files.pythonhosted.org/packages/18/88/3eda3ef16bfe7a7dbc3d8d6836bbaa7986feb5ff091395e140dc13927bcc/h5py-3.15.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e02fe77a03f652500d8bff288cbf3675f742fc0411f5a628fa37116507dc7cc0", size = 5030639 }, + { url = "https://files.pythonhosted.org/packages/e5/ea/fbb258a98863f99befb10ed727152b4ae659f322e1d9c0576f8a62754e81/h5py-3.15.1-cp313-cp313-win_amd64.whl", hash = "sha256:dea78b092fd80a083563ed79a3171258d4a4d307492e7cf8b2313d464c82ba52", size = 2864363 }, + { url = "https://files.pythonhosted.org/packages/5d/c9/35021cc9cd2b2915a7da3026e3d77a05bed1144a414ff840953b33937fb9/h5py-3.15.1-cp313-cp313-win_arm64.whl", hash = "sha256:c256254a8a81e2bddc0d376e23e2a6d2dc8a1e8a2261835ed8c1281a0744cd97", size = 2449570 }, + { url = "https://files.pythonhosted.org/packages/a0/2c/926eba1514e4d2e47d0e9eb16c784e717d8b066398ccfca9b283917b1bfb/h5py-3.15.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:5f4fb0567eb8517c3ecd6b3c02c4f4e9da220c8932604960fd04e24ee1254763", size = 3380368 }, + { url = "https://files.pythonhosted.org/packages/65/4b/d715ed454d3baa5f6ae1d30b7eca4c7a1c1084f6a2edead9e801a1541d62/h5py-3.15.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:954e480433e82d3872503104f9b285d369048c3a788b2b1a00e53d1c47c98dd2", size = 2833793 }, + { url = "https://files.pythonhosted.org/packages/ef/d4/ef386c28e4579314610a8bffebbee3b69295b0237bc967340b7c653c6c10/h5py-3.15.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fd125c131889ebbef0849f4a0e29cf363b48aba42f228d08b4079913b576bb3a", size = 4903199 }, + { url = "https://files.pythonhosted.org/packages/33/5d/65c619e195e0b5e54ea5a95c1bb600c8ff8715e0d09676e4cce56d89f492/h5py-3.15.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:28a20e1a4082a479b3d7db2169f3a5034af010b90842e75ebbf2e9e49eb4183e", size = 5097224 }, + { url = "https://files.pythonhosted.org/packages/30/30/5273218400bf2da01609e1292f562c94b461fcb73c7a9e27fdadd43abc0a/h5py-3.15.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa8df5267f545b4946df8ca0d93d23382191018e4cda2deda4c2cedf9a010e13", size = 4551207 }, + { url = "https://files.pythonhosted.org/packages/d3/39/a7ef948ddf4d1c556b0b2b9559534777bccc318543b3f5a1efdf6b556c9c/h5py-3.15.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99d374a21f7321a4c6ab327c4ab23bd925ad69821aeb53a1e75dd809d19f67fa", size = 5025426 }, + { url = "https://files.pythonhosted.org/packages/b6/d8/7368679b8df6925b8415f9dcc9ab1dab01ddc384d2b2c24aac9191bd9ceb/h5py-3.15.1-cp314-cp314-win_amd64.whl", hash = "sha256:9c73d1d7cdb97d5b17ae385153472ce118bed607e43be11e9a9deefaa54e0734", size = 2865704 }, + { url = "https://files.pythonhosted.org/packages/d3/b7/4a806f85d62c20157e62e58e03b27513dc9c55499768530acc4f4c5ce4be/h5py-3.15.1-cp314-cp314-win_arm64.whl", hash = "sha256:a6d8c5a05a76aca9a494b4c53ce8a9c29023b7f64f625c6ce1841e92a362ccdf", size = 2465544 }, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784 }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517 }, +] + +[[package]] +name = "huggingface-hub" +version = "0.17.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "fsspec" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "requests" }, + { name = "tqdm" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/13/d2/e0d36491422425bb882e4a6432a06aee9e56348aeefd9aab648a995d173b/huggingface_hub-0.17.3.tar.gz", hash = "sha256:40439632b211311f788964602bf8b0d9d6b7a2314fba4e8d67b2ce3ecea0e3fd", size = 254782 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/f3/3fc97336a0e90516901befd4f500f08d691034d387406fdbde85bea827cc/huggingface_hub-0.17.3-py3-none-any.whl", hash = "sha256:545eb3665f6ac587add946e73984148f2ea5c7877eac2e845549730570c1933a", size = 295010 }, +] + +[[package]] +name = "idna" +version = "3.11" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6f/6d/0703ccc57f3a7233505399edb88de3cbd678da106337b9fcde432b65ed60/idna-3.11.tar.gz", hash = "sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902", size = 194582 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl", hash = "sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea", size = 71008 }, +] + +[[package]] +name = "iniconfig" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/34/14ca021ce8e5dfedc35312d08ba8bf51fdd999c576889fc2c24cb97f4f10/iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c77db068650d49c5b56314774a7804df16fee4402c1f19d6d15d8c4730", size = 20503 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12", size = 7484 }, +] + +[[package]] +name = "jinja2" +version = "3.1.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markupsafe" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899 }, +] + +[[package]] +name = "joblib" +version = "1.5.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/41/f2/d34e8b3a08a9cc79a50b2208a93dce981fe615b64d5a4d4abee421d898df/joblib-1.5.3.tar.gz", hash = "sha256:8561a3269e6801106863fd0d6d84bb737be9e7631e33aaed3fb9ce5953688da3", size = 331603 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl", hash = "sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713", size = 309071 }, +] + +[[package]] +name = "jsonschema" +version = "4.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/fc/e067678238fa451312d4c62bf6e6cf5ec56375422aee02f9cb5f909b3047/jsonschema-4.26.0.tar.gz", hash = "sha256:0c26707e2efad8aa1bfc5b7ce170f3fccc2e4918ff85989ba9ffa9facb2be326", size = 366583 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630 }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/74/a633ee74eb36c44aa6d1095e7cc5569bebf04342ee146178e2d36600708b/jsonschema_specifications-2025.9.1.tar.gz", hash = "sha256:b540987f239e745613c7a9176f3edb72b832a4ac465cf02712288397832b5e8d", size = 32855 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl", hash = "sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe", size = 18437 }, +] + +[[package]] +name = "kiwisolver" +version = "1.4.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5c/3c/85844f1b0feb11ee581ac23fe5fce65cd049a200c1446708cc1b7f922875/kiwisolver-1.4.9.tar.gz", hash = "sha256:c3b22c26c6fd6811b0ae8363b95ca8ce4ea3c202d3d0975b2914310ceb1bcc4d", size = 97564 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6f/ab/c80b0d5a9d8a1a65f4f815f2afff9798b12c3b9f31f1d304dd233dd920e2/kiwisolver-1.4.9-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:eb14a5da6dc7642b0f3a18f13654847cd8b7a2550e2645a5bda677862b03ba16", size = 124167 }, + { url = "https://files.pythonhosted.org/packages/a0/c0/27fe1a68a39cf62472a300e2879ffc13c0538546c359b86f149cc19f6ac3/kiwisolver-1.4.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:39a219e1c81ae3b103643d2aedb90f1ef22650deb266ff12a19e7773f3e5f089", size = 66579 }, + { url = "https://files.pythonhosted.org/packages/31/a2/a12a503ac1fd4943c50f9822678e8015a790a13b5490354c68afb8489814/kiwisolver-1.4.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2405a7d98604b87f3fc28b1716783534b1b4b8510d8142adca34ee0bc3c87543", size = 65309 }, + { url = "https://files.pythonhosted.org/packages/66/e1/e533435c0be77c3f64040d68d7a657771194a63c279f55573188161e81ca/kiwisolver-1.4.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:dc1ae486f9abcef254b5618dfb4113dd49f94c68e3e027d03cf0143f3f772b61", size = 1435596 }, + { url = "https://files.pythonhosted.org/packages/67/1e/51b73c7347f9aabdc7215aa79e8b15299097dc2f8e67dee2b095faca9cb0/kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a1f570ce4d62d718dce3f179ee78dac3b545ac16c0c04bb363b7607a949c0d1", size = 1246548 }, + { url = "https://files.pythonhosted.org/packages/21/aa/72a1c5d1e430294f2d32adb9542719cfb441b5da368d09d268c7757af46c/kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb27e7b78d716c591e88e0a09a2139c6577865d7f2e152488c2cc6257f460872", size = 1263618 }, + { url = "https://files.pythonhosted.org/packages/a3/af/db1509a9e79dbf4c260ce0cfa3903ea8945f6240e9e59d1e4deb731b1a40/kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:15163165efc2f627eb9687ea5f3a28137217d217ac4024893d753f46bce9de26", size = 1317437 }, + { url = "https://files.pythonhosted.org/packages/e0/f2/3ea5ee5d52abacdd12013a94130436e19969fa183faa1e7c7fbc89e9a42f/kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bdee92c56a71d2b24c33a7d4c2856bd6419d017e08caa7802d2963870e315028", size = 2195742 }, + { url = "https://files.pythonhosted.org/packages/6f/9b/1efdd3013c2d9a2566aa6a337e9923a00590c516add9a1e89a768a3eb2fc/kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:412f287c55a6f54b0650bd9b6dce5aceddb95864a1a90c87af16979d37c89771", size = 2290810 }, + { url = "https://files.pythonhosted.org/packages/fb/e5/cfdc36109ae4e67361f9bc5b41323648cb24a01b9ade18784657e022e65f/kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:2c93f00dcba2eea70af2be5f11a830a742fe6b579a1d4e00f47760ef13be247a", size = 2461579 }, + { url = "https://files.pythonhosted.org/packages/62/86/b589e5e86c7610842213994cdea5add00960076bef4ae290c5fa68589cac/kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f117e1a089d9411663a3207ba874f31be9ac8eaa5b533787024dc07aeb74f464", size = 2268071 }, + { url = "https://files.pythonhosted.org/packages/3b/c6/f8df8509fd1eee6c622febe54384a96cfaf4d43bf2ccec7a0cc17e4715c9/kiwisolver-1.4.9-cp311-cp311-win_amd64.whl", hash = "sha256:be6a04e6c79819c9a8c2373317d19a96048e5a3f90bec587787e86a1153883c2", size = 73840 }, + { url = "https://files.pythonhosted.org/packages/e2/2d/16e0581daafd147bc11ac53f032a2b45eabac897f42a338d0a13c1e5c436/kiwisolver-1.4.9-cp311-cp311-win_arm64.whl", hash = "sha256:0ae37737256ba2de764ddc12aed4956460277f00c4996d51a197e72f62f5eec7", size = 65159 }, + { url = "https://files.pythonhosted.org/packages/86/c9/13573a747838aeb1c76e3267620daa054f4152444d1f3d1a2324b78255b5/kiwisolver-1.4.9-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:ac5a486ac389dddcc5bef4f365b6ae3ffff2c433324fb38dd35e3fab7c957999", size = 123686 }, + { url = "https://files.pythonhosted.org/packages/51/ea/2ecf727927f103ffd1739271ca19c424d0e65ea473fbaeea1c014aea93f6/kiwisolver-1.4.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f2ba92255faa7309d06fe44c3a4a97efe1c8d640c2a79a5ef728b685762a6fd2", size = 66460 }, + { url = "https://files.pythonhosted.org/packages/5b/5a/51f5464373ce2aeb5194508298a508b6f21d3867f499556263c64c621914/kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a2899935e724dd1074cb568ce7ac0dce28b2cd6ab539c8e001a8578eb106d14", size = 64952 }, + { url = "https://files.pythonhosted.org/packages/70/90/6d240beb0f24b74371762873e9b7f499f1e02166a2d9c5801f4dbf8fa12e/kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f6008a4919fdbc0b0097089f67a1eb55d950ed7e90ce2cc3e640abadd2757a04", size = 1474756 }, + { url = "https://files.pythonhosted.org/packages/12/42/f36816eaf465220f683fb711efdd1bbf7a7005a2473d0e4ed421389bd26c/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:67bb8b474b4181770f926f7b7d2f8c0248cbcb78b660fdd41a47054b28d2a752", size = 1276404 }, + { url = "https://files.pythonhosted.org/packages/2e/64/bc2de94800adc830c476dce44e9b40fd0809cddeef1fde9fcf0f73da301f/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2327a4a30d3ee07d2fbe2e7933e8a37c591663b96ce42a00bc67461a87d7df77", size = 1294410 }, + { url = "https://files.pythonhosted.org/packages/5f/42/2dc82330a70aa8e55b6d395b11018045e58d0bb00834502bf11509f79091/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7a08b491ec91b1d5053ac177afe5290adacf1f0f6307d771ccac5de30592d198", size = 1343631 }, + { url = "https://files.pythonhosted.org/packages/22/fd/f4c67a6ed1aab149ec5a8a401c323cee7a1cbe364381bb6c9c0d564e0e20/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d8fc5c867c22b828001b6a38d2eaeb88160bf5783c6cb4a5e440efc981ce286d", size = 2224963 }, + { url = "https://files.pythonhosted.org/packages/45/aa/76720bd4cb3713314677d9ec94dcc21ced3f1baf4830adde5bb9b2430a5f/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:3b3115b2581ea35bb6d1f24a4c90af37e5d9b49dcff267eeed14c3893c5b86ab", size = 2321295 }, + { url = "https://files.pythonhosted.org/packages/80/19/d3ec0d9ab711242f56ae0dc2fc5d70e298bb4a1f9dfab44c027668c673a1/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858e4c22fb075920b96a291928cb7dea5644e94c0ee4fcd5af7e865655e4ccf2", size = 2487987 }, + { url = "https://files.pythonhosted.org/packages/39/e9/61e4813b2c97e86b6fdbd4dd824bf72d28bcd8d4849b8084a357bc0dd64d/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ed0fecd28cc62c54b262e3736f8bb2512d8dcfdc2bcf08be5f47f96bf405b145", size = 2291817 }, + { url = "https://files.pythonhosted.org/packages/a0/41/85d82b0291db7504da3c2defe35c9a8a5c9803a730f297bd823d11d5fb77/kiwisolver-1.4.9-cp312-cp312-win_amd64.whl", hash = "sha256:f68208a520c3d86ea51acf688a3e3002615a7f0238002cccc17affecc86a8a54", size = 73895 }, + { url = "https://files.pythonhosted.org/packages/e2/92/5f3068cf15ee5cb624a0c7596e67e2a0bb2adee33f71c379054a491d07da/kiwisolver-1.4.9-cp312-cp312-win_arm64.whl", hash = "sha256:2c1a4f57df73965f3f14df20b80ee29e6a7930a57d2d9e8491a25f676e197c60", size = 64992 }, + { url = "https://files.pythonhosted.org/packages/31/c1/c2686cda909742ab66c7388e9a1a8521a59eb89f8bcfbee28fc980d07e24/kiwisolver-1.4.9-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a5d0432ccf1c7ab14f9949eec60c5d1f924f17c037e9f8b33352fa05799359b8", size = 123681 }, + { url = "https://files.pythonhosted.org/packages/ca/f0/f44f50c9f5b1a1860261092e3bc91ecdc9acda848a8b8c6abfda4a24dd5c/kiwisolver-1.4.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efb3a45b35622bb6c16dbfab491a8f5a391fe0e9d45ef32f4df85658232ca0e2", size = 66464 }, + { url = "https://files.pythonhosted.org/packages/2d/7a/9d90a151f558e29c3936b8a47ac770235f436f2120aca41a6d5f3d62ae8d/kiwisolver-1.4.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a12cf6398e8a0a001a059747a1cbf24705e18fe413bc22de7b3d15c67cffe3f", size = 64961 }, + { url = "https://files.pythonhosted.org/packages/e9/e9/f218a2cb3a9ffbe324ca29a9e399fa2d2866d7f348ec3a88df87fc248fc5/kiwisolver-1.4.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b67e6efbf68e077dd71d1a6b37e43e1a99d0bff1a3d51867d45ee8908b931098", size = 1474607 }, + { url = "https://files.pythonhosted.org/packages/d9/28/aac26d4c882f14de59041636292bc838db8961373825df23b8eeb807e198/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5656aa670507437af0207645273ccdfee4f14bacd7f7c67a4306d0dcaeaf6eed", size = 1276546 }, + { url = "https://files.pythonhosted.org/packages/8b/ad/8bfc1c93d4cc565e5069162f610ba2f48ff39b7de4b5b8d93f69f30c4bed/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:bfc08add558155345129c7803b3671cf195e6a56e7a12f3dde7c57d9b417f525", size = 1294482 }, + { url = "https://files.pythonhosted.org/packages/da/f1/6aca55ff798901d8ce403206d00e033191f63d82dd708a186e0ed2067e9c/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:40092754720b174e6ccf9e845d0d8c7d8e12c3d71e7fc35f55f3813e96376f78", size = 1343720 }, + { url = "https://files.pythonhosted.org/packages/d1/91/eed031876c595c81d90d0f6fc681ece250e14bf6998c3d7c419466b523b7/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:497d05f29a1300d14e02e6441cf0f5ee81c1ff5a304b0d9fb77423974684e08b", size = 2224907 }, + { url = "https://files.pythonhosted.org/packages/e9/ec/4d1925f2e49617b9cca9c34bfa11adefad49d00db038e692a559454dfb2e/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:bdd1a81a1860476eb41ac4bc1e07b3f07259e6d55bbf739b79c8aaedcf512799", size = 2321334 }, + { url = "https://files.pythonhosted.org/packages/43/cb/450cd4499356f68802750c6ddc18647b8ea01ffa28f50d20598e0befe6e9/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:e6b93f13371d341afee3be9f7c5964e3fe61d5fa30f6a30eb49856935dfe4fc3", size = 2488313 }, + { url = "https://files.pythonhosted.org/packages/71/67/fc76242bd99f885651128a5d4fa6083e5524694b7c88b489b1b55fdc491d/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d75aa530ccfaa593da12834b86a0724f58bff12706659baa9227c2ccaa06264c", size = 2291970 }, + { url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl", hash = "sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d", size = 73894 }, + { url = "https://files.pythonhosted.org/packages/95/38/dce480814d25b99a391abbddadc78f7c117c6da34be68ca8b02d5848b424/kiwisolver-1.4.9-cp313-cp313-win_arm64.whl", hash = "sha256:d4188e73af84ca82468f09cadc5ac4db578109e52acb4518d8154698d3a87ca2", size = 64995 }, + { url = "https://files.pythonhosted.org/packages/e2/37/7d218ce5d92dadc5ebdd9070d903e0c7cf7edfe03f179433ac4d13ce659c/kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:5a0f2724dfd4e3b3ac5a82436a8e6fd16baa7d507117e4279b660fe8ca38a3a1", size = 126510 }, + { url = "https://files.pythonhosted.org/packages/23/b0/e85a2b48233daef4b648fb657ebbb6f8367696a2d9548a00b4ee0eb67803/kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1b11d6a633e4ed84fc0ddafd4ebfd8ea49b3f25082c04ad12b8315c11d504dc1", size = 67903 }, + { url = "https://files.pythonhosted.org/packages/44/98/f2425bc0113ad7de24da6bb4dae1343476e95e1d738be7c04d31a5d037fd/kiwisolver-1.4.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61874cdb0a36016354853593cffc38e56fc9ca5aa97d2c05d3dcf6922cd55a11", size = 66402 }, + { url = "https://files.pythonhosted.org/packages/98/d8/594657886df9f34c4177cc353cc28ca7e6e5eb562d37ccc233bff43bbe2a/kiwisolver-1.4.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:60c439763a969a6af93b4881db0eed8fadf93ee98e18cbc35bc8da868d0c4f0c", size = 1582135 }, + { url = "https://files.pythonhosted.org/packages/5c/c6/38a115b7170f8b306fc929e166340c24958347308ea3012c2b44e7e295db/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92a2f997387a1b79a75e7803aa7ded2cfbe2823852ccf1ba3bcf613b62ae3197", size = 1389409 }, + { url = "https://files.pythonhosted.org/packages/bf/3b/e04883dace81f24a568bcee6eb3001da4ba05114afa622ec9b6fafdc1f5e/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a31d512c812daea6d8b3be3b2bfcbeb091dbb09177706569bcfc6240dcf8b41c", size = 1401763 }, + { url = "https://files.pythonhosted.org/packages/9f/80/20ace48e33408947af49d7d15c341eaee69e4e0304aab4b7660e234d6288/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:52a15b0f35dad39862d376df10c5230155243a2c1a436e39eb55623ccbd68185", size = 1453643 }, + { url = "https://files.pythonhosted.org/packages/64/31/6ce4380a4cd1f515bdda976a1e90e547ccd47b67a1546d63884463c92ca9/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a30fd6fdef1430fd9e1ba7b3398b5ee4e2887783917a687d86ba69985fb08748", size = 2330818 }, + { url = "https://files.pythonhosted.org/packages/fa/e9/3f3fcba3bcc7432c795b82646306e822f3fd74df0ee81f0fa067a1f95668/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cc9617b46837c6468197b5945e196ee9ca43057bb7d9d1ae688101e4e1dddf64", size = 2419963 }, + { url = "https://files.pythonhosted.org/packages/99/43/7320c50e4133575c66e9f7dadead35ab22d7c012a3b09bb35647792b2a6d/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:0ab74e19f6a2b027ea4f845a78827969af45ce790e6cb3e1ebab71bdf9f215ff", size = 2594639 }, + { url = "https://files.pythonhosted.org/packages/65/d6/17ae4a270d4a987ef8a385b906d2bdfc9fce502d6dc0d3aea865b47f548c/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dba5ee5d3981160c28d5490f0d1b7ed730c22470ff7f6cc26cfcfaacb9896a07", size = 2391741 }, + { url = "https://files.pythonhosted.org/packages/2a/8f/8f6f491d595a9e5912971f3f863d81baddccc8a4d0c3749d6a0dd9ffc9df/kiwisolver-1.4.9-cp313-cp313t-win_arm64.whl", hash = "sha256:0749fd8f4218ad2e851e11cc4dc05c7cbc0cbc4267bdfdb31782e65aace4ee9c", size = 68646 }, + { url = "https://files.pythonhosted.org/packages/6b/32/6cc0fbc9c54d06c2969faa9c1d29f5751a2e51809dd55c69055e62d9b426/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:9928fe1eb816d11ae170885a74d074f57af3a0d65777ca47e9aeb854a1fba386", size = 123806 }, + { url = "https://files.pythonhosted.org/packages/b2/dd/2bfb1d4a4823d92e8cbb420fe024b8d2167f72079b3bb941207c42570bdf/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d0005b053977e7b43388ddec89fa567f43d4f6d5c2c0affe57de5ebf290dc552", size = 66605 }, + { url = "https://files.pythonhosted.org/packages/f7/69/00aafdb4e4509c2ca6064646cba9cd4b37933898f426756adb2cb92ebbed/kiwisolver-1.4.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2635d352d67458b66fd0667c14cb1d4145e9560d503219034a18a87e971ce4f3", size = 64925 }, + { url = "https://files.pythonhosted.org/packages/43/dc/51acc6791aa14e5cb6d8a2e28cefb0dc2886d8862795449d021334c0df20/kiwisolver-1.4.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:767c23ad1c58c9e827b649a9ab7809fd5fd9db266a9cf02b0e926ddc2c680d58", size = 1472414 }, + { url = "https://files.pythonhosted.org/packages/3d/bb/93fa64a81db304ac8a246f834d5094fae4b13baf53c839d6bb6e81177129/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72d0eb9fba308b8311685c2268cf7d0a0639a6cd027d8128659f72bdd8a024b4", size = 1281272 }, + { url = "https://files.pythonhosted.org/packages/70/e6/6df102916960fb8d05069d4bd92d6d9a8202d5a3e2444494e7cd50f65b7a/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f68e4f3eeca8fb22cc3d731f9715a13b652795ef657a13df1ad0c7dc0e9731df", size = 1298578 }, + { url = "https://files.pythonhosted.org/packages/7c/47/e142aaa612f5343736b087864dbaebc53ea8831453fb47e7521fa8658f30/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d84cd4061ae292d8ac367b2c3fa3aad11cb8625a95d135fe93f286f914f3f5a6", size = 1345607 }, + { url = "https://files.pythonhosted.org/packages/54/89/d641a746194a0f4d1a3670fb900d0dbaa786fb98341056814bc3f058fa52/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a60ea74330b91bd22a29638940d115df9dc00af5035a9a2a6ad9399ffb4ceca5", size = 2230150 }, + { url = "https://files.pythonhosted.org/packages/aa/6b/5ee1207198febdf16ac11f78c5ae40861b809cbe0e6d2a8d5b0b3044b199/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ce6a3a4e106cf35c2d9c4fa17c05ce0b180db622736845d4315519397a77beaf", size = 2325979 }, + { url = "https://files.pythonhosted.org/packages/fc/ff/b269eefd90f4ae14dcc74973d5a0f6d28d3b9bb1afd8c0340513afe6b39a/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:77937e5e2a38a7b48eef0585114fe7930346993a88060d0bf886086d2aa49ef5", size = 2491456 }, + { url = "https://files.pythonhosted.org/packages/fc/d4/10303190bd4d30de547534601e259a4fbf014eed94aae3e5521129215086/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:24c175051354f4a28c5d6a31c93906dc653e2bf234e8a4bbfb964892078898ce", size = 2294621 }, + { url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl", hash = "sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7", size = 75417 }, + { url = "https://files.pythonhosted.org/packages/1f/10/6949958215b7a9a264299a7db195564e87900f709db9245e4ebdd3c70779/kiwisolver-1.4.9-cp314-cp314-win_arm64.whl", hash = "sha256:0e4e2bf29574a6a7b7f6cb5fa69293b9f96c928949ac4a53ba3f525dffb87f9c", size = 66582 }, + { url = "https://files.pythonhosted.org/packages/ec/79/60e53067903d3bc5469b369fe0dfc6b3482e2133e85dae9daa9527535991/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d976bbb382b202f71c67f77b0ac11244021cfa3f7dfd9e562eefcea2df711548", size = 126514 }, + { url = "https://files.pythonhosted.org/packages/25/d1/4843d3e8d46b072c12a38c97c57fab4608d36e13fe47d47ee96b4d61ba6f/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2489e4e5d7ef9a1c300a5e0196e43d9c739f066ef23270607d45aba368b91f2d", size = 67905 }, + { url = "https://files.pythonhosted.org/packages/8c/ae/29ffcbd239aea8b93108de1278271ae764dfc0d803a5693914975f200596/kiwisolver-1.4.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:e2ea9f7ab7fbf18fffb1b5434ce7c69a07582f7acc7717720f1d69f3e806f90c", size = 66399 }, + { url = "https://files.pythonhosted.org/packages/a1/ae/d7ba902aa604152c2ceba5d352d7b62106bedbccc8e95c3934d94472bfa3/kiwisolver-1.4.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b34e51affded8faee0dfdb705416153819d8ea9250bbbf7ea1b249bdeb5f1122", size = 1582197 }, + { url = "https://files.pythonhosted.org/packages/f2/41/27c70d427eddb8bc7e4f16420a20fefc6f480312122a59a959fdfe0445ad/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8aacd3d4b33b772542b2e01beb50187536967b514b00003bdda7589722d2a64", size = 1390125 }, + { url = "https://files.pythonhosted.org/packages/41/42/b3799a12bafc76d962ad69083f8b43b12bf4fe78b097b12e105d75c9b8f1/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7cf974dd4e35fa315563ac99d6287a1024e4dc2077b8a7d7cd3d2fb65d283134", size = 1402612 }, + { url = "https://files.pythonhosted.org/packages/d2/b5/a210ea073ea1cfaca1bb5c55a62307d8252f531beb364e18aa1e0888b5a0/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:85bd218b5ecfbee8c8a82e121802dcb519a86044c9c3b2e4aef02fa05c6da370", size = 1453990 }, + { url = "https://files.pythonhosted.org/packages/5f/ce/a829eb8c033e977d7ea03ed32fb3c1781b4fa0433fbadfff29e39c676f32/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:0856e241c2d3df4efef7c04a1e46b1936b6120c9bcf36dd216e3acd84bc4fb21", size = 2331601 }, + { url = "https://files.pythonhosted.org/packages/e0/4b/b5e97eb142eb9cd0072dacfcdcd31b1c66dc7352b0f7c7255d339c0edf00/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:9af39d6551f97d31a4deebeac6f45b156f9755ddc59c07b402c148f5dbb6482a", size = 2422041 }, + { url = "https://files.pythonhosted.org/packages/40/be/8eb4cd53e1b85ba4edc3a9321666f12b83113a178845593307a3e7891f44/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:bb4ae2b57fc1d8cbd1cf7b1d9913803681ffa903e7488012be5b76dedf49297f", size = 2594897 }, + { url = "https://files.pythonhosted.org/packages/99/dd/841e9a66c4715477ea0abc78da039832fbb09dac5c35c58dc4c41a407b8a/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:aedff62918805fb62d43a4aa2ecd4482c380dc76cd31bd7c8878588a61bd0369", size = 2391835 }, + { url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl", hash = "sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891", size = 79988 }, + { url = "https://files.pythonhosted.org/packages/80/be/3578e8afd18c88cdf9cb4cffde75a96d2be38c5a903f1ed0ceec061bd09e/kiwisolver-1.4.9-cp314-cp314t-win_arm64.whl", hash = "sha256:4a48a2ce79d65d363597ef7b567ce3d14d68783d2b2263d98db3d9477805ba32", size = 70260 }, + { url = "https://files.pythonhosted.org/packages/a3/0f/36d89194b5a32c054ce93e586d4049b6c2c22887b0eb229c61c68afd3078/kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:720e05574713db64c356e86732c0f3c5252818d05f9df320f0ad8380641acea5", size = 60104 }, + { url = "https://files.pythonhosted.org/packages/52/ba/4ed75f59e4658fd21fe7dde1fee0ac397c678ec3befba3fe6482d987af87/kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:17680d737d5335b552994a2008fab4c851bcd7de33094a82067ef3a576ff02fa", size = 58592 }, + { url = "https://files.pythonhosted.org/packages/33/01/a8ea7c5ea32a9b45ceeaee051a04c8ed4320f5add3c51bfa20879b765b70/kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:85b5352f94e490c028926ea567fc569c52ec79ce131dadb968d3853e809518c2", size = 80281 }, + { url = "https://files.pythonhosted.org/packages/da/e3/dbd2ecdce306f1d07a1aaf324817ee993aab7aee9db47ceac757deabafbe/kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:464415881e4801295659462c49461a24fb107c140de781d55518c4b80cb6790f", size = 78009 }, + { url = "https://files.pythonhosted.org/packages/da/e9/0d4add7873a73e462aeb45c036a2dead2562b825aa46ba326727b3f31016/kiwisolver-1.4.9-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:fb940820c63a9590d31d88b815e7a3aa5915cad3ce735ab45f0c730b39547de1", size = 73929 }, +] + +[[package]] +name = "locket" +version = "1.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2f/83/97b29fe05cb6ae28d2dbd30b81e2e402a3eed5f460c26e9eaa5895ceacf5/locket-1.0.0.tar.gz", hash = "sha256:5c0d4c052a8bbbf750e056a8e65ccd309086f4f0f18a2eac306a8dfa4112a632", size = 4350 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/db/bc/83e112abc66cd466c6b83f99118035867cecd41802f8d044638aa78a106e/locket-1.0.0-py2.py3-none-any.whl", hash = "sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3", size = 4398 }, +] + +[[package]] +name = "markdown-it-py" +version = "4.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/f5/4ec618ed16cc4f8fb3b701563655a69816155e79e24a17b651541804721d/markdown_it_py-4.0.0.tar.gz", hash = "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3", size = 73070 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321 }, +] + +[[package]] +name = "markupsafe" +version = "3.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7e/99/7690b6d4034fffd95959cbe0c02de8deb3098cc577c67bb6a24fe5d7caa7/markupsafe-3.0.3.tar.gz", hash = "sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698", size = 80313 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/08/db/fefacb2136439fc8dd20e797950e749aa1f4997ed584c62cfb8ef7c2be0e/markupsafe-3.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1cc7ea17a6824959616c525620e387f6dd30fec8cb44f649e31712db02123dad", size = 11631 }, + { url = "https://files.pythonhosted.org/packages/e1/2e/5898933336b61975ce9dc04decbc0a7f2fee78c30353c5efba7f2d6ff27a/markupsafe-3.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4bd4cd07944443f5a265608cc6aab442e4f74dff8088b0dfc8238647b8f6ae9a", size = 12058 }, + { url = "https://files.pythonhosted.org/packages/1d/09/adf2df3699d87d1d8184038df46a9c80d78c0148492323f4693df54e17bb/markupsafe-3.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b5420a1d9450023228968e7e6a9ce57f65d148ab56d2313fcd589eee96a7a50", size = 24287 }, + { url = "https://files.pythonhosted.org/packages/30/ac/0273f6fcb5f42e314c6d8cd99effae6a5354604d461b8d392b5ec9530a54/markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0bf2a864d67e76e5c9a34dc26ec616a66b9888e25e7b9460e1c76d3293bd9dbf", size = 22940 }, + { url = "https://files.pythonhosted.org/packages/19/ae/31c1be199ef767124c042c6c3e904da327a2f7f0cd63a0337e1eca2967a8/markupsafe-3.0.3-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:bc51efed119bc9cfdf792cdeaa4d67e8f6fcccab66ed4bfdd6bde3e59bfcbb2f", size = 21887 }, + { url = "https://files.pythonhosted.org/packages/b2/76/7edcab99d5349a4532a459e1fe64f0b0467a3365056ae550d3bcf3f79e1e/markupsafe-3.0.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:068f375c472b3e7acbe2d5318dea141359e6900156b5b2ba06a30b169086b91a", size = 23692 }, + { url = "https://files.pythonhosted.org/packages/a4/28/6e74cdd26d7514849143d69f0bf2399f929c37dc2b31e6829fd2045b2765/markupsafe-3.0.3-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:7be7b61bb172e1ed687f1754f8e7484f1c8019780f6f6b0786e76bb01c2ae115", size = 21471 }, + { url = "https://files.pythonhosted.org/packages/62/7e/a145f36a5c2945673e590850a6f8014318d5577ed7e5920a4b3448e0865d/markupsafe-3.0.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f9e130248f4462aaa8e2552d547f36ddadbeaa573879158d721bbd33dfe4743a", size = 22923 }, + { url = "https://files.pythonhosted.org/packages/0f/62/d9c46a7f5c9adbeeeda52f5b8d802e1094e9717705a645efc71b0913a0a8/markupsafe-3.0.3-cp311-cp311-win32.whl", hash = "sha256:0db14f5dafddbb6d9208827849fad01f1a2609380add406671a26386cdf15a19", size = 14572 }, + { url = "https://files.pythonhosted.org/packages/83/8a/4414c03d3f891739326e1783338e48fb49781cc915b2e0ee052aa490d586/markupsafe-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:de8a88e63464af587c950061a5e6a67d3632e36df62b986892331d4620a35c01", size = 15077 }, + { url = "https://files.pythonhosted.org/packages/35/73/893072b42e6862f319b5207adc9ae06070f095b358655f077f69a35601f0/markupsafe-3.0.3-cp311-cp311-win_arm64.whl", hash = "sha256:3b562dd9e9ea93f13d53989d23a7e775fdfd1066c33494ff43f5418bc8c58a5c", size = 13876 }, + { url = "https://files.pythonhosted.org/packages/5a/72/147da192e38635ada20e0a2e1a51cf8823d2119ce8883f7053879c2199b5/markupsafe-3.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d53197da72cc091b024dd97249dfc7794d6a56530370992a5e1a08983ad9230e", size = 11615 }, + { url = "https://files.pythonhosted.org/packages/9a/81/7e4e08678a1f98521201c3079f77db69fb552acd56067661f8c2f534a718/markupsafe-3.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1872df69a4de6aead3491198eaf13810b565bdbeec3ae2dc8780f14458ec73ce", size = 12020 }, + { url = "https://files.pythonhosted.org/packages/1e/2c/799f4742efc39633a1b54a92eec4082e4f815314869865d876824c257c1e/markupsafe-3.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3a7e8ae81ae39e62a41ec302f972ba6ae23a5c5396c8e60113e9066ef893da0d", size = 24332 }, + { url = "https://files.pythonhosted.org/packages/3c/2e/8d0c2ab90a8c1d9a24f0399058ab8519a3279d1bd4289511d74e909f060e/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d6dd0be5b5b189d31db7cda48b91d7e0a9795f31430b7f271219ab30f1d3ac9d", size = 22947 }, + { url = "https://files.pythonhosted.org/packages/2c/54/887f3092a85238093a0b2154bd629c89444f395618842e8b0c41783898ea/markupsafe-3.0.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:94c6f0bb423f739146aec64595853541634bde58b2135f27f61c1ffd1cd4d16a", size = 21962 }, + { url = "https://files.pythonhosted.org/packages/c9/2f/336b8c7b6f4a4d95e91119dc8521402461b74a485558d8f238a68312f11c/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:be8813b57049a7dc738189df53d69395eba14fb99345e0a5994914a3864c8a4b", size = 23760 }, + { url = "https://files.pythonhosted.org/packages/32/43/67935f2b7e4982ffb50a4d169b724d74b62a3964bc1a9a527f5ac4f1ee2b/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:83891d0e9fb81a825d9a6d61e3f07550ca70a076484292a70fde82c4b807286f", size = 21529 }, + { url = "https://files.pythonhosted.org/packages/89/e0/4486f11e51bbba8b0c041098859e869e304d1c261e59244baa3d295d47b7/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:77f0643abe7495da77fb436f50f8dab76dbc6e5fd25d39589a0f1fe6548bfa2b", size = 23015 }, + { url = "https://files.pythonhosted.org/packages/2f/e1/78ee7a023dac597a5825441ebd17170785a9dab23de95d2c7508ade94e0e/markupsafe-3.0.3-cp312-cp312-win32.whl", hash = "sha256:d88b440e37a16e651bda4c7c2b930eb586fd15ca7406cb39e211fcff3bf3017d", size = 14540 }, + { url = "https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c", size = 15105 }, + { url = "https://files.pythonhosted.org/packages/e5/f1/216fc1bbfd74011693a4fd837e7026152e89c4bcf3e77b6692fba9923123/markupsafe-3.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:35add3b638a5d900e807944a078b51922212fb3dedb01633a8defc4b01a3c85f", size = 13906 }, + { url = "https://files.pythonhosted.org/packages/38/2f/907b9c7bbba283e68f20259574b13d005c121a0fa4c175f9bed27c4597ff/markupsafe-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795", size = 11622 }, + { url = "https://files.pythonhosted.org/packages/9c/d9/5f7756922cdd676869eca1c4e3c0cd0df60ed30199ffd775e319089cb3ed/markupsafe-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219", size = 12029 }, + { url = "https://files.pythonhosted.org/packages/00/07/575a68c754943058c78f30db02ee03a64b3c638586fba6a6dd56830b30a3/markupsafe-3.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6", size = 24374 }, + { url = "https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676", size = 22980 }, + { url = "https://files.pythonhosted.org/packages/7f/71/544260864f893f18b6827315b988c146b559391e6e7e8f7252839b1b846a/markupsafe-3.0.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9", size = 21990 }, + { url = "https://files.pythonhosted.org/packages/c2/28/b50fc2f74d1ad761af2f5dcce7492648b983d00a65b8c0e0cb457c82ebbe/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1", size = 23784 }, + { url = "https://files.pythonhosted.org/packages/ed/76/104b2aa106a208da8b17a2fb72e033a5a9d7073c68f7e508b94916ed47a9/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc", size = 21588 }, + { url = "https://files.pythonhosted.org/packages/b5/99/16a5eb2d140087ebd97180d95249b00a03aa87e29cc224056274f2e45fd6/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12", size = 23041 }, + { url = "https://files.pythonhosted.org/packages/19/bc/e7140ed90c5d61d77cea142eed9f9c303f4c4806f60a1044c13e3f1471d0/markupsafe-3.0.3-cp313-cp313-win32.whl", hash = "sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed", size = 14543 }, + { url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5", size = 15113 }, + { url = "https://files.pythonhosted.org/packages/f0/3a/fa34a0f7cfef23cf9500d68cb7c32dd64ffd58a12b09225fb03dd37d5b80/markupsafe-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485", size = 13911 }, + { url = "https://files.pythonhosted.org/packages/e4/d7/e05cd7efe43a88a17a37b3ae96e79a19e846f3f456fe79c57ca61356ef01/markupsafe-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73", size = 11658 }, + { url = "https://files.pythonhosted.org/packages/99/9e/e412117548182ce2148bdeacdda3bb494260c0b0184360fe0d56389b523b/markupsafe-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37", size = 12066 }, + { url = "https://files.pythonhosted.org/packages/bc/e6/fa0ffcda717ef64a5108eaa7b4f5ed28d56122c9a6d70ab8b72f9f715c80/markupsafe-3.0.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19", size = 25639 }, + { url = "https://files.pythonhosted.org/packages/96/ec/2102e881fe9d25fc16cb4b25d5f5cde50970967ffa5dddafdb771237062d/markupsafe-3.0.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025", size = 23569 }, + { url = "https://files.pythonhosted.org/packages/4b/30/6f2fce1f1f205fc9323255b216ca8a235b15860c34b6798f810f05828e32/markupsafe-3.0.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6", size = 23284 }, + { url = "https://files.pythonhosted.org/packages/58/47/4a0ccea4ab9f5dcb6f79c0236d954acb382202721e704223a8aafa38b5c8/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f", size = 24801 }, + { url = "https://files.pythonhosted.org/packages/6a/70/3780e9b72180b6fecb83a4814d84c3bf4b4ae4bf0b19c27196104149734c/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb", size = 22769 }, + { url = "https://files.pythonhosted.org/packages/98/c5/c03c7f4125180fc215220c035beac6b9cb684bc7a067c84fc69414d315f5/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009", size = 23642 }, + { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612 }, + { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200 }, + { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973 }, + { url = "https://files.pythonhosted.org/packages/33/8a/8e42d4838cd89b7dde187011e97fe6c3af66d8c044997d2183fbd6d31352/markupsafe-3.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe", size = 11619 }, + { url = "https://files.pythonhosted.org/packages/b5/64/7660f8a4a8e53c924d0fa05dc3a55c9cee10bbd82b11c5afb27d44b096ce/markupsafe-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026", size = 12029 }, + { url = "https://files.pythonhosted.org/packages/da/ef/e648bfd021127bef5fa12e1720ffed0c6cbb8310c8d9bea7266337ff06de/markupsafe-3.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737", size = 24408 }, + { url = "https://files.pythonhosted.org/packages/41/3c/a36c2450754618e62008bf7435ccb0f88053e07592e6028a34776213d877/markupsafe-3.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97", size = 23005 }, + { url = "https://files.pythonhosted.org/packages/bc/20/b7fdf89a8456b099837cd1dc21974632a02a999ec9bf7ca3e490aacd98e7/markupsafe-3.0.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d", size = 22048 }, + { url = "https://files.pythonhosted.org/packages/9a/a7/591f592afdc734f47db08a75793a55d7fbcc6902a723ae4cfbab61010cc5/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda", size = 23821 }, + { url = "https://files.pythonhosted.org/packages/7d/33/45b24e4f44195b26521bc6f1a82197118f74df348556594bd2262bda1038/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf", size = 21606 }, + { url = "https://files.pythonhosted.org/packages/ff/0e/53dfaca23a69fbfbbf17a4b64072090e70717344c52eaaaa9c5ddff1e5f0/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe", size = 23043 }, + { url = "https://files.pythonhosted.org/packages/46/11/f333a06fc16236d5238bfe74daccbca41459dcd8d1fa952e8fbd5dccfb70/markupsafe-3.0.3-cp314-cp314-win32.whl", hash = "sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9", size = 14747 }, + { url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581", size = 15341 }, + { url = "https://files.pythonhosted.org/packages/6f/18/acf23e91bd94fd7b3031558b1f013adfa21a8e407a3fdb32745538730382/markupsafe-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4", size = 14073 }, + { url = "https://files.pythonhosted.org/packages/3c/f0/57689aa4076e1b43b15fdfa646b04653969d50cf30c32a102762be2485da/markupsafe-3.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab", size = 11661 }, + { url = "https://files.pythonhosted.org/packages/89/c3/2e67a7ca217c6912985ec766c6393b636fb0c2344443ff9d91404dc4c79f/markupsafe-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175", size = 12069 }, + { url = "https://files.pythonhosted.org/packages/f0/00/be561dce4e6ca66b15276e184ce4b8aec61fe83662cce2f7d72bd3249d28/markupsafe-3.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634", size = 25670 }, + { url = "https://files.pythonhosted.org/packages/50/09/c419f6f5a92e5fadde27efd190eca90f05e1261b10dbd8cbcb39cd8ea1dc/markupsafe-3.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50", size = 23598 }, + { url = "https://files.pythonhosted.org/packages/22/44/a0681611106e0b2921b3033fc19bc53323e0b50bc70cffdd19f7d679bb66/markupsafe-3.0.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e", size = 23261 }, + { url = "https://files.pythonhosted.org/packages/5f/57/1b0b3f100259dc9fffe780cfb60d4be71375510e435efec3d116b6436d43/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5", size = 24835 }, + { url = "https://files.pythonhosted.org/packages/26/6a/4bf6d0c97c4920f1597cc14dd720705eca0bf7c787aebc6bb4d1bead5388/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523", size = 22733 }, + { url = "https://files.pythonhosted.org/packages/14/c7/ca723101509b518797fedc2fdf79ba57f886b4aca8a7d31857ba3ee8281f/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc", size = 23672 }, + { url = "https://files.pythonhosted.org/packages/fb/df/5bd7a48c256faecd1d36edc13133e51397e41b73bb77e1a69deab746ebac/markupsafe-3.0.3-cp314-cp314t-win32.whl", hash = "sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d", size = 14819 }, + { url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9", size = 15426 }, + { url = "https://files.pythonhosted.org/packages/70/bc/6f1c2f612465f5fa89b95bead1f44dcb607670fd42891d8fdcd5d039f4f4/markupsafe-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa", size = 14146 }, +] + +[[package]] +name = "matplotlib" +version = "3.10.8" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "contourpy" }, + { name = "cycler" }, + { name = "fonttools" }, + { name = "kiwisolver" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pillow" }, + { name = "pyparsing" }, + { name = "python-dateutil" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8a/76/d3c6e3a13fe484ebe7718d14e269c9569c4eb0020a968a327acb3b9a8fe6/matplotlib-3.10.8.tar.gz", hash = "sha256:2299372c19d56bcd35cf05a2738308758d32b9eaed2371898d8f5bd33f084aa3", size = 34806269 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f8/86/de7e3a1cdcfc941483af70609edc06b83e7c8a0e0dc9ac325200a3f4d220/matplotlib-3.10.8-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:6be43b667360fef5c754dda5d25a32e6307a03c204f3c0fc5468b78fa87b4160", size = 8251215 }, + { url = "https://files.pythonhosted.org/packages/fd/14/baad3222f424b19ce6ad243c71de1ad9ec6b2e4eb1e458a48fdc6d120401/matplotlib-3.10.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a2b336e2d91a3d7006864e0990c83b216fcdca64b5a6484912902cef87313d78", size = 8139625 }, + { url = "https://files.pythonhosted.org/packages/8f/a0/7024215e95d456de5883e6732e708d8187d9753a21d32f8ddb3befc0c445/matplotlib-3.10.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:efb30e3baaea72ce5928e32bab719ab4770099079d66726a62b11b1ef7273be4", size = 8712614 }, + { url = "https://files.pythonhosted.org/packages/5a/f4/b8347351da9a5b3f41e26cf547252d861f685c6867d179a7c9d60ad50189/matplotlib-3.10.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d56a1efd5bfd61486c8bc968fa18734464556f0fb8e51690f4ac25d85cbbbbc2", size = 9540997 }, + { url = "https://files.pythonhosted.org/packages/9e/c0/c7b914e297efe0bc36917bf216b2acb91044b91e930e878ae12981e461e5/matplotlib-3.10.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:238b7ce5717600615c895050239ec955d91f321c209dd110db988500558e70d6", size = 9596825 }, + { url = "https://files.pythonhosted.org/packages/6f/d3/a4bbc01c237ab710a1f22b4da72f4ff6d77eb4c7735ea9811a94ae239067/matplotlib-3.10.8-cp311-cp311-win_amd64.whl", hash = "sha256:18821ace09c763ec93aef5eeff087ee493a24051936d7b9ebcad9662f66501f9", size = 8135090 }, + { url = "https://files.pythonhosted.org/packages/89/dd/a0b6588f102beab33ca6f5218b31725216577b2a24172f327eaf6417d5c9/matplotlib-3.10.8-cp311-cp311-win_arm64.whl", hash = "sha256:bab485bcf8b1c7d2060b4fcb6fc368a9e6f4cd754c9c2fea281f4be21df394a2", size = 8012377 }, + { url = "https://files.pythonhosted.org/packages/9e/67/f997cdcbb514012eb0d10cd2b4b332667997fb5ebe26b8d41d04962fa0e6/matplotlib-3.10.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:64fcc24778ca0404ce0cb7b6b77ae1f4c7231cdd60e6778f999ee05cbd581b9a", size = 8260453 }, + { url = "https://files.pythonhosted.org/packages/7e/65/07d5f5c7f7c994f12c768708bd2e17a4f01a2b0f44a1c9eccad872433e2e/matplotlib-3.10.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b9a5ca4ac220a0cdd1ba6bcba3608547117d30468fefce49bb26f55c1a3d5c58", size = 8148321 }, + { url = "https://files.pythonhosted.org/packages/3e/f3/c5195b1ae57ef85339fd7285dfb603b22c8b4e79114bae5f4f0fcf688677/matplotlib-3.10.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3ab4aabc72de4ff77b3ec33a6d78a68227bf1123465887f9905ba79184a1cc04", size = 8716944 }, + { url = "https://files.pythonhosted.org/packages/00/f9/7638f5cc82ec8a7aa005de48622eecc3ed7c9854b96ba15bd76b7fd27574/matplotlib-3.10.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:24d50994d8c5816ddc35411e50a86ab05f575e2530c02752e02538122613371f", size = 9550099 }, + { url = "https://files.pythonhosted.org/packages/57/61/78cd5920d35b29fd2a0fe894de8adf672ff52939d2e9b43cb83cd5ce1bc7/matplotlib-3.10.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:99eefd13c0dc3b3c1b4d561c1169e65fe47aab7b8158754d7c084088e2329466", size = 9613040 }, + { url = "https://files.pythonhosted.org/packages/30/4e/c10f171b6e2f44d9e3a2b96efa38b1677439d79c99357600a62cc1e9594e/matplotlib-3.10.8-cp312-cp312-win_amd64.whl", hash = "sha256:dd80ecb295460a5d9d260df63c43f4afbdd832d725a531f008dad1664f458adf", size = 8142717 }, + { url = "https://files.pythonhosted.org/packages/f1/76/934db220026b5fef85f45d51a738b91dea7d70207581063cd9bd8fafcf74/matplotlib-3.10.8-cp312-cp312-win_arm64.whl", hash = "sha256:3c624e43ed56313651bc18a47f838b60d7b8032ed348911c54906b130b20071b", size = 8012751 }, + { url = "https://files.pythonhosted.org/packages/3d/b9/15fd5541ef4f5b9a17eefd379356cf12175fe577424e7b1d80676516031a/matplotlib-3.10.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3f2e409836d7f5ac2f1c013110a4d50b9f7edc26328c108915f9075d7d7a91b6", size = 8261076 }, + { url = "https://files.pythonhosted.org/packages/8d/a0/2ba3473c1b66b9c74dc7107c67e9008cb1782edbe896d4c899d39ae9cf78/matplotlib-3.10.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:56271f3dac49a88d7fca5060f004d9d22b865f743a12a23b1e937a0be4818ee1", size = 8148794 }, + { url = "https://files.pythonhosted.org/packages/75/97/a471f1c3eb1fd6f6c24a31a5858f443891d5127e63a7788678d14e249aea/matplotlib-3.10.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a0a7f52498f72f13d4a25ea70f35f4cb60642b466cbb0a9be951b5bc3f45a486", size = 8718474 }, + { url = "https://files.pythonhosted.org/packages/01/be/cd478f4b66f48256f42927d0acbcd63a26a893136456cd079c0cc24fbabf/matplotlib-3.10.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:646d95230efb9ca614a7a594d4fcacde0ac61d25e37dd51710b36477594963ce", size = 9549637 }, + { url = "https://files.pythonhosted.org/packages/5d/7c/8dc289776eae5109e268c4fb92baf870678dc048a25d4ac903683b86d5bf/matplotlib-3.10.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f89c151aab2e2e23cb3fe0acad1e8b82841fd265379c4cecd0f3fcb34c15e0f6", size = 9613678 }, + { url = "https://files.pythonhosted.org/packages/64/40/37612487cc8a437d4dd261b32ca21fe2d79510fe74af74e1f42becb1bdb8/matplotlib-3.10.8-cp313-cp313-win_amd64.whl", hash = "sha256:e8ea3e2d4066083e264e75c829078f9e149fa119d27e19acd503de65e0b13149", size = 8142686 }, + { url = "https://files.pythonhosted.org/packages/66/52/8d8a8730e968185514680c2a6625943f70269509c3dcfc0dcf7d75928cb8/matplotlib-3.10.8-cp313-cp313-win_arm64.whl", hash = "sha256:c108a1d6fa78a50646029cb6d49808ff0fc1330fda87fa6f6250c6b5369b6645", size = 8012917 }, + { url = "https://files.pythonhosted.org/packages/b5/27/51fe26e1062f298af5ef66343d8ef460e090a27fea73036c76c35821df04/matplotlib-3.10.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:ad3d9833a64cf48cc4300f2b406c3d0f4f4724a91c0bd5640678a6ba7c102077", size = 8305679 }, + { url = "https://files.pythonhosted.org/packages/2c/1e/4de865bc591ac8e3062e835f42dd7fe7a93168d519557837f0e37513f629/matplotlib-3.10.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:eb3823f11823deade26ce3b9f40dcb4a213da7a670013929f31d5f5ed1055b22", size = 8198336 }, + { url = "https://files.pythonhosted.org/packages/c6/cb/2f7b6e75fb4dce87ef91f60cac4f6e34f4c145ab036a22318ec837971300/matplotlib-3.10.8-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d9050fee89a89ed57b4fb2c1bfac9a3d0c57a0d55aed95949eedbc42070fea39", size = 8731653 }, + { url = "https://files.pythonhosted.org/packages/46/b3/bd9c57d6ba670a37ab31fb87ec3e8691b947134b201f881665b28cc039ff/matplotlib-3.10.8-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b44d07310e404ba95f8c25aa5536f154c0a8ec473303535949e52eb71d0a1565", size = 9561356 }, + { url = "https://files.pythonhosted.org/packages/c0/3d/8b94a481456dfc9dfe6e39e93b5ab376e50998cddfd23f4ae3b431708f16/matplotlib-3.10.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:0a33deb84c15ede243aead39f77e990469fff93ad1521163305095b77b72ce4a", size = 9614000 }, + { url = "https://files.pythonhosted.org/packages/bd/cd/bc06149fe5585ba800b189a6a654a75f1f127e8aab02fd2be10df7fa500c/matplotlib-3.10.8-cp313-cp313t-win_amd64.whl", hash = "sha256:3a48a78d2786784cc2413e57397981fb45c79e968d99656706018d6e62e57958", size = 8220043 }, + { url = "https://files.pythonhosted.org/packages/e3/de/b22cf255abec916562cc04eef457c13e58a1990048de0c0c3604d082355e/matplotlib-3.10.8-cp313-cp313t-win_arm64.whl", hash = "sha256:15d30132718972c2c074cd14638c7f4592bd98719e2308bccea40e0538bc0cb5", size = 8062075 }, + { url = "https://files.pythonhosted.org/packages/3c/43/9c0ff7a2f11615e516c3b058e1e6e8f9614ddeca53faca06da267c48345d/matplotlib-3.10.8-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:b53285e65d4fa4c86399979e956235deb900be5baa7fc1218ea67fbfaeaadd6f", size = 8262481 }, + { url = "https://files.pythonhosted.org/packages/6f/ca/e8ae28649fcdf039fda5ef554b40a95f50592a3c47e6f7270c9561c12b07/matplotlib-3.10.8-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:32f8dce744be5569bebe789e46727946041199030db8aeb2954d26013a0eb26b", size = 8151473 }, + { url = "https://files.pythonhosted.org/packages/f1/6f/009d129ae70b75e88cbe7e503a12a4c0670e08ed748a902c2568909e9eb5/matplotlib-3.10.8-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4cf267add95b1c88300d96ca837833d4112756045364f5c734a2276038dae27d", size = 9553896 }, + { url = "https://files.pythonhosted.org/packages/f5/26/4221a741eb97967bc1fd5e4c52b9aa5a91b2f4ec05b59f6def4d820f9df9/matplotlib-3.10.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2cf5bd12cecf46908f286d7838b2abc6c91cda506c0445b8223a7c19a00df008", size = 9824193 }, + { url = "https://files.pythonhosted.org/packages/1f/f3/3abf75f38605772cf48a9daf5821cd4f563472f38b4b828c6fba6fa6d06e/matplotlib-3.10.8-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:41703cc95688f2516b480f7f339d8851a6035f18e100ee6a32bc0b8536a12a9c", size = 9615444 }, + { url = "https://files.pythonhosted.org/packages/93/a5/de89ac80f10b8dc615807ee1133cd99ac74082581196d4d9590bea10690d/matplotlib-3.10.8-cp314-cp314-win_amd64.whl", hash = "sha256:83d282364ea9f3e52363da262ce32a09dfe241e4080dcedda3c0db059d3c1f11", size = 8272719 }, + { url = "https://files.pythonhosted.org/packages/69/ce/b006495c19ccc0a137b48083168a37bd056392dee02f87dba0472f2797fe/matplotlib-3.10.8-cp314-cp314-win_arm64.whl", hash = "sha256:2c1998e92cd5999e295a731bcb2911c75f597d937341f3030cc24ef2733d78a8", size = 8144205 }, + { url = "https://files.pythonhosted.org/packages/68/d9/b31116a3a855bd313c6fcdb7226926d59b041f26061c6c5b1be66a08c826/matplotlib-3.10.8-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:b5a2b97dbdc7d4f353ebf343744f1d1f1cca8aa8bfddb4262fcf4306c3761d50", size = 8305785 }, + { url = "https://files.pythonhosted.org/packages/1e/90/6effe8103f0272685767ba5f094f453784057072f49b393e3ea178fe70a5/matplotlib-3.10.8-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3f5c3e4da343bba819f0234186b9004faba952cc420fbc522dc4e103c1985908", size = 8198361 }, + { url = "https://files.pythonhosted.org/packages/d7/65/a73188711bea603615fc0baecca1061429ac16940e2385433cc778a9d8e7/matplotlib-3.10.8-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5f62550b9a30afde8c1c3ae450e5eb547d579dd69b25c2fc7a1c67f934c1717a", size = 9561357 }, + { url = "https://files.pythonhosted.org/packages/f4/3d/b5c5d5d5be8ce63292567f0e2c43dde9953d3ed86ac2de0a72e93c8f07a1/matplotlib-3.10.8-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:495672de149445ec1b772ff2c9ede9b769e3cb4f0d0aa7fa730d7f59e2d4e1c1", size = 9823610 }, + { url = "https://files.pythonhosted.org/packages/4d/4b/e7beb6bbd49f6bae727a12b270a2654d13c397576d25bd6786e47033300f/matplotlib-3.10.8-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:595ba4d8fe983b88f0eec8c26a241e16d6376fe1979086232f481f8f3f67494c", size = 9614011 }, + { url = "https://files.pythonhosted.org/packages/7c/e6/76f2813d31f032e65f6f797e3f2f6e4aab95b65015924b1c51370395c28a/matplotlib-3.10.8-cp314-cp314t-win_amd64.whl", hash = "sha256:25d380fe8b1dc32cf8f0b1b448470a77afb195438bafdf1d858bfb876f3edf7b", size = 8362801 }, + { url = "https://files.pythonhosted.org/packages/5d/49/d651878698a0b67f23aa28e17f45a6d6dd3d3f933fa29087fa4ce5947b5a/matplotlib-3.10.8-cp314-cp314t-win_arm64.whl", hash = "sha256:113bb52413ea508ce954a02c10ffd0d565f9c3bc7f2eddc27dfe1731e71c7b5f", size = 8192560 }, + { url = "https://files.pythonhosted.org/packages/04/30/3afaa31c757f34b7725ab9d2ba8b48b5e89c2019c003e7d0ead143aabc5a/matplotlib-3.10.8-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:6da7c2ce169267d0d066adcf63758f0604aa6c3eebf67458930f9d9b79ad1db1", size = 8249198 }, + { url = "https://files.pythonhosted.org/packages/48/2f/6334aec331f57485a642a7c8be03cb286f29111ae71c46c38b363230063c/matplotlib-3.10.8-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:9153c3292705be9f9c64498a8872118540c3f4123d1a1c840172edf262c8be4a", size = 8136817 }, + { url = "https://files.pythonhosted.org/packages/73/e4/6d6f14b2a759c622f191b2d67e9075a3f56aaccb3be4bb9bb6890030d0a0/matplotlib-3.10.8-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1ae029229a57cd1e8fe542485f27e7ca7b23aa9e8944ddb4985d0bc444f1eca2", size = 8713867 }, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979 }, +] + +[[package]] +name = "msgpack" +version = "1.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4d/f2/bfb55a6236ed8725a96b0aa3acbd0ec17588e6a2c3b62a93eb513ed8783f/msgpack-1.1.2.tar.gz", hash = "sha256:3b60763c1373dd60f398488069bcdc703cd08a711477b5d480eecc9f9626f47e", size = 173581 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/97/560d11202bcd537abca693fd85d81cebe2107ba17301de42b01ac1677b69/msgpack-1.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2e86a607e558d22985d856948c12a3fa7b42efad264dca8a3ebbcfa2735d786c", size = 82271 }, + { url = "https://files.pythonhosted.org/packages/83/04/28a41024ccbd67467380b6fb440ae916c1e4f25e2cd4c63abe6835ac566e/msgpack-1.1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:283ae72fc89da59aa004ba147e8fc2f766647b1251500182fac0350d8af299c0", size = 84914 }, + { url = "https://files.pythonhosted.org/packages/71/46/b817349db6886d79e57a966346cf0902a426375aadc1e8e7a86a75e22f19/msgpack-1.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:61c8aa3bd513d87c72ed0b37b53dd5c5a0f58f2ff9f26e1555d3bd7948fb7296", size = 416962 }, + { url = "https://files.pythonhosted.org/packages/da/e0/6cc2e852837cd6086fe7d8406af4294e66827a60a4cf60b86575a4a65ca8/msgpack-1.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:454e29e186285d2ebe65be34629fa0e8605202c60fbc7c4c650ccd41870896ef", size = 426183 }, + { url = "https://files.pythonhosted.org/packages/25/98/6a19f030b3d2ea906696cedd1eb251708e50a5891d0978b012cb6107234c/msgpack-1.1.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:7bc8813f88417599564fafa59fd6f95be417179f76b40325b500b3c98409757c", size = 411454 }, + { url = "https://files.pythonhosted.org/packages/b7/cd/9098fcb6adb32187a70b7ecaabf6339da50553351558f37600e53a4a2a23/msgpack-1.1.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bafca952dc13907bdfdedfc6a5f579bf4f292bdd506fadb38389afa3ac5b208e", size = 422341 }, + { url = "https://files.pythonhosted.org/packages/e6/ae/270cecbcf36c1dc85ec086b33a51a4d7d08fc4f404bdbc15b582255d05ff/msgpack-1.1.2-cp311-cp311-win32.whl", hash = "sha256:602b6740e95ffc55bfb078172d279de3773d7b7db1f703b2f1323566b878b90e", size = 64747 }, + { url = "https://files.pythonhosted.org/packages/2a/79/309d0e637f6f37e83c711f547308b91af02b72d2326ddd860b966080ef29/msgpack-1.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:d198d275222dc54244bf3327eb8cbe00307d220241d9cec4d306d49a44e85f68", size = 71633 }, + { url = "https://files.pythonhosted.org/packages/73/4d/7c4e2b3d9b1106cd0aa6cb56cc57c6267f59fa8bfab7d91df5adc802c847/msgpack-1.1.2-cp311-cp311-win_arm64.whl", hash = "sha256:86f8136dfa5c116365a8a651a7d7484b65b13339731dd6faebb9a0242151c406", size = 64755 }, + { url = "https://files.pythonhosted.org/packages/ad/bd/8b0d01c756203fbab65d265859749860682ccd2a59594609aeec3a144efa/msgpack-1.1.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:70a0dff9d1f8da25179ffcf880e10cf1aad55fdb63cd59c9a49a1b82290062aa", size = 81939 }, + { url = "https://files.pythonhosted.org/packages/34/68/ba4f155f793a74c1483d4bdef136e1023f7bcba557f0db4ef3db3c665cf1/msgpack-1.1.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:446abdd8b94b55c800ac34b102dffd2f6aa0ce643c55dfc017ad89347db3dbdb", size = 85064 }, + { url = "https://files.pythonhosted.org/packages/f2/60/a064b0345fc36c4c3d2c743c82d9100c40388d77f0b48b2f04d6041dbec1/msgpack-1.1.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c63eea553c69ab05b6747901b97d620bb2a690633c77f23feb0c6a947a8a7b8f", size = 417131 }, + { url = "https://files.pythonhosted.org/packages/65/92/a5100f7185a800a5d29f8d14041f61475b9de465ffcc0f3b9fba606e4505/msgpack-1.1.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:372839311ccf6bdaf39b00b61288e0557916c3729529b301c52c2d88842add42", size = 427556 }, + { url = "https://files.pythonhosted.org/packages/f5/87/ffe21d1bf7d9991354ad93949286f643b2bb6ddbeab66373922b44c3b8cc/msgpack-1.1.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2929af52106ca73fcb28576218476ffbb531a036c2adbcf54a3664de124303e9", size = 404920 }, + { url = "https://files.pythonhosted.org/packages/ff/41/8543ed2b8604f7c0d89ce066f42007faac1eaa7d79a81555f206a5cdb889/msgpack-1.1.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:be52a8fc79e45b0364210eef5234a7cf8d330836d0a64dfbb878efa903d84620", size = 415013 }, + { url = "https://files.pythonhosted.org/packages/41/0d/2ddfaa8b7e1cee6c490d46cb0a39742b19e2481600a7a0e96537e9c22f43/msgpack-1.1.2-cp312-cp312-win32.whl", hash = "sha256:1fff3d825d7859ac888b0fbda39a42d59193543920eda9d9bea44d958a878029", size = 65096 }, + { url = "https://files.pythonhosted.org/packages/8c/ec/d431eb7941fb55a31dd6ca3404d41fbb52d99172df2e7707754488390910/msgpack-1.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:1de460f0403172cff81169a30b9a92b260cb809c4cb7e2fc79ae8d0510c78b6b", size = 72708 }, + { url = "https://files.pythonhosted.org/packages/c5/31/5b1a1f70eb0e87d1678e9624908f86317787b536060641d6798e3cf70ace/msgpack-1.1.2-cp312-cp312-win_arm64.whl", hash = "sha256:be5980f3ee0e6bd44f3a9e9dea01054f175b50c3e6cdb692bc9424c0bbb8bf69", size = 64119 }, + { url = "https://files.pythonhosted.org/packages/6b/31/b46518ecc604d7edf3a4f94cb3bf021fc62aa301f0cb849936968164ef23/msgpack-1.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4efd7b5979ccb539c221a4c4e16aac1a533efc97f3b759bb5a5ac9f6d10383bf", size = 81212 }, + { url = "https://files.pythonhosted.org/packages/92/dc/c385f38f2c2433333345a82926c6bfa5ecfff3ef787201614317b58dd8be/msgpack-1.1.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:42eefe2c3e2af97ed470eec850facbe1b5ad1d6eacdbadc42ec98e7dcf68b4b7", size = 84315 }, + { url = "https://files.pythonhosted.org/packages/d3/68/93180dce57f684a61a88a45ed13047558ded2be46f03acb8dec6d7c513af/msgpack-1.1.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1fdf7d83102bf09e7ce3357de96c59b627395352a4024f6e2458501f158bf999", size = 412721 }, + { url = "https://files.pythonhosted.org/packages/5d/ba/459f18c16f2b3fc1a1ca871f72f07d70c07bf768ad0a507a698b8052ac58/msgpack-1.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fac4be746328f90caa3cd4bc67e6fe36ca2bf61d5c6eb6d895b6527e3f05071e", size = 424657 }, + { url = "https://files.pythonhosted.org/packages/38/f8/4398c46863b093252fe67368b44edc6c13b17f4e6b0e4929dbf0bdb13f23/msgpack-1.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fffee09044073e69f2bad787071aeec727183e7580443dfeb8556cbf1978d162", size = 402668 }, + { url = "https://files.pythonhosted.org/packages/28/ce/698c1eff75626e4124b4d78e21cca0b4cc90043afb80a507626ea354ab52/msgpack-1.1.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5928604de9b032bc17f5099496417f113c45bc6bc21b5c6920caf34b3c428794", size = 419040 }, + { url = "https://files.pythonhosted.org/packages/67/32/f3cd1667028424fa7001d82e10ee35386eea1408b93d399b09fb0aa7875f/msgpack-1.1.2-cp313-cp313-win32.whl", hash = "sha256:a7787d353595c7c7e145e2331abf8b7ff1e6673a6b974ded96e6d4ec09f00c8c", size = 65037 }, + { url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9", size = 72631 }, + { url = "https://files.pythonhosted.org/packages/e5/db/0314e4e2db56ebcf450f277904ffd84a7988b9e5da8d0d61ab2d057df2b6/msgpack-1.1.2-cp313-cp313-win_arm64.whl", hash = "sha256:e69b39f8c0aa5ec24b57737ebee40be647035158f14ed4b40e6f150077e21a84", size = 64118 }, + { url = "https://files.pythonhosted.org/packages/22/71/201105712d0a2ff07b7873ed3c220292fb2ea5120603c00c4b634bcdafb3/msgpack-1.1.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:e23ce8d5f7aa6ea6d2a2b326b4ba46c985dbb204523759984430db7114f8aa00", size = 81127 }, + { url = "https://files.pythonhosted.org/packages/1b/9f/38ff9e57a2eade7bf9dfee5eae17f39fc0e998658050279cbb14d97d36d9/msgpack-1.1.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:6c15b7d74c939ebe620dd8e559384be806204d73b4f9356320632d783d1f7939", size = 84981 }, + { url = "https://files.pythonhosted.org/packages/8e/a9/3536e385167b88c2cc8f4424c49e28d49a6fc35206d4a8060f136e71f94c/msgpack-1.1.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:99e2cb7b9031568a2a5c73aa077180f93dd2e95b4f8d3b8e14a73ae94a9e667e", size = 411885 }, + { url = "https://files.pythonhosted.org/packages/2f/40/dc34d1a8d5f1e51fc64640b62b191684da52ca469da9cd74e84936ffa4a6/msgpack-1.1.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:180759d89a057eab503cf62eeec0aa61c4ea1200dee709f3a8e9397dbb3b6931", size = 419658 }, + { url = "https://files.pythonhosted.org/packages/3b/ef/2b92e286366500a09a67e03496ee8b8ba00562797a52f3c117aa2b29514b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:04fb995247a6e83830b62f0b07bf36540c213f6eac8e851166d8d86d83cbd014", size = 403290 }, + { url = "https://files.pythonhosted.org/packages/78/90/e0ea7990abea5764e4655b8177aa7c63cdfa89945b6e7641055800f6c16b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:8e22ab046fa7ede9e36eeb4cfad44d46450f37bb05d5ec482b02868f451c95e2", size = 415234 }, + { url = "https://files.pythonhosted.org/packages/72/4e/9390aed5db983a2310818cd7d3ec0aecad45e1f7007e0cda79c79507bb0d/msgpack-1.1.2-cp314-cp314-win32.whl", hash = "sha256:80a0ff7d4abf5fecb995fcf235d4064b9a9a8a40a3ab80999e6ac1e30b702717", size = 66391 }, + { url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl", hash = "sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b", size = 73787 }, + { url = "https://files.pythonhosted.org/packages/6a/b0/9d9f667ab48b16ad4115c1935d94023b82b3198064cb84a123e97f7466c1/msgpack-1.1.2-cp314-cp314-win_arm64.whl", hash = "sha256:59415c6076b1e30e563eb732e23b994a61c159cec44deaf584e5cc1dd662f2af", size = 66453 }, + { url = "https://files.pythonhosted.org/packages/16/67/93f80545eb1792b61a217fa7f06d5e5cb9e0055bed867f43e2b8e012e137/msgpack-1.1.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:897c478140877e5307760b0ea66e0932738879e7aa68144d9b78ea4c8302a84a", size = 85264 }, + { url = "https://files.pythonhosted.org/packages/87/1c/33c8a24959cf193966ef11a6f6a2995a65eb066bd681fd085afd519a57ce/msgpack-1.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a668204fa43e6d02f89dbe79a30b0d67238d9ec4c5bd8a940fc3a004a47b721b", size = 89076 }, + { url = "https://files.pythonhosted.org/packages/fc/6b/62e85ff7193663fbea5c0254ef32f0c77134b4059f8da89b958beb7696f3/msgpack-1.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5559d03930d3aa0f3aacb4c42c776af1a2ace2611871c84a75afe436695e6245", size = 435242 }, + { url = "https://files.pythonhosted.org/packages/c1/47/5c74ecb4cc277cf09f64e913947871682ffa82b3b93c8dad68083112f412/msgpack-1.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70c5a7a9fea7f036b716191c29047374c10721c389c21e9ffafad04df8c52c90", size = 432509 }, + { url = "https://files.pythonhosted.org/packages/24/a4/e98ccdb56dc4e98c929a3f150de1799831c0a800583cde9fa022fa90602d/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:f2cb069d8b981abc72b41aea1c580ce92d57c673ec61af4c500153a626cb9e20", size = 415957 }, + { url = "https://files.pythonhosted.org/packages/da/28/6951f7fb67bc0a4e184a6b38ab71a92d9ba58080b27a77d3e2fb0be5998f/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d62ce1f483f355f61adb5433ebfd8868c5f078d1a52d042b0a998682b4fa8c27", size = 422910 }, + { url = "https://files.pythonhosted.org/packages/f0/03/42106dcded51f0a0b5284d3ce30a671e7bd3f7318d122b2ead66ad289fed/msgpack-1.1.2-cp314-cp314t-win32.whl", hash = "sha256:1d1418482b1ee984625d88aa9585db570180c286d942da463533b238b98b812b", size = 75197 }, + { url = "https://files.pythonhosted.org/packages/15/86/d0071e94987f8db59d4eeb386ddc64d0bb9b10820a8d82bcd3e53eeb2da6/msgpack-1.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff", size = 85772 }, + { url = "https://files.pythonhosted.org/packages/81/f2/08ace4142eb281c12701fc3b93a10795e4d4dc7f753911d836675050f886/msgpack-1.1.2-cp314-cp314t-win_arm64.whl", hash = "sha256:d99ef64f349d5ec3293688e91486c5fdb925ed03807f64d98d205d2713c60b46", size = 70868 }, +] + +[[package]] +name = "multidict" +version = "6.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1a/c2/c2d94cbe6ac1753f3fc980da97b3d930efe1da3af3c9f5125354436c073d/multidict-6.7.1.tar.gz", hash = "sha256:ec6652a1bee61c53a3e5776b6049172c53b6aaba34f18c9ad04f82712bac623d", size = 102010 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ce/f1/a90635c4f88fb913fbf4ce660b83b7445b7a02615bda034b2f8eb38fd597/multidict-6.7.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7ff981b266af91d7b4b3793ca3382e53229088d193a85dfad6f5f4c27fc73e5d", size = 76626 }, + { url = "https://files.pythonhosted.org/packages/a6/9b/267e64eaf6fc637a15b35f5de31a566634a2740f97d8d094a69d34f524a4/multidict-6.7.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:844c5bca0b5444adb44a623fb0a1310c2f4cd41f402126bb269cd44c9b3f3e1e", size = 44706 }, + { url = "https://files.pythonhosted.org/packages/dd/a4/d45caf2b97b035c57267791ecfaafbd59c68212004b3842830954bb4b02e/multidict-6.7.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f2a0a924d4c2e9afcd7ec64f9de35fcd96915149b2216e1cb2c10a56df483855", size = 44356 }, + { url = "https://files.pythonhosted.org/packages/fd/d2/0a36c8473f0cbaeadd5db6c8b72d15bbceeec275807772bfcd059bef487d/multidict-6.7.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:8be1802715a8e892c784c0197c2ace276ea52702a0ede98b6310c8f255a5afb3", size = 244355 }, + { url = "https://files.pythonhosted.org/packages/5d/16/8c65be997fd7dd311b7d39c7b6e71a0cb449bad093761481eccbbe4b42a2/multidict-6.7.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2e2d2ed645ea29f31c4c7ea1552fcfd7cb7ba656e1eafd4134a6620c9f5fdd9e", size = 246433 }, + { url = "https://files.pythonhosted.org/packages/01/fb/4dbd7e848d2799c6a026ec88ad39cf2b8416aa167fcc903baa55ecaa045c/multidict-6.7.1-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:95922cee9a778659e91db6497596435777bd25ed116701a4c034f8e46544955a", size = 225376 }, + { url = "https://files.pythonhosted.org/packages/b6/8a/4a3a6341eac3830f6053062f8fbc9a9e54407c80755b3f05bc427295c2d0/multidict-6.7.1-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:6b83cabdc375ffaaa15edd97eb7c0c672ad788e2687004990074d7d6c9b140c8", size = 257365 }, + { url = "https://files.pythonhosted.org/packages/f7/a2/dd575a69c1aa206e12d27d0770cdf9b92434b48a9ef0cd0d1afdecaa93c4/multidict-6.7.1-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:38fb49540705369bab8484db0689d86c0a33a0a9f2c1b197f506b71b4b6c19b0", size = 254747 }, + { url = "https://files.pythonhosted.org/packages/5a/56/21b27c560c13822ed93133f08aa6372c53a8e067f11fbed37b4adcdac922/multidict-6.7.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:439cbebd499f92e9aa6793016a8acaa161dfa749ae86d20960189f5398a19144", size = 246293 }, + { url = "https://files.pythonhosted.org/packages/5a/a4/23466059dc3854763423d0ad6c0f3683a379d97673b1b89ec33826e46728/multidict-6.7.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6d3bc717b6fe763b8be3f2bee2701d3c8eb1b2a8ae9f60910f1b2860c82b6c49", size = 242962 }, + { url = "https://files.pythonhosted.org/packages/1f/67/51dd754a3524d685958001e8fa20a0f5f90a6a856e0a9dcabff69be3dbb7/multidict-6.7.1-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:619e5a1ac57986dbfec9f0b301d865dddf763696435e2962f6d9cf2fdff2bb71", size = 237360 }, + { url = "https://files.pythonhosted.org/packages/64/3f/036dfc8c174934d4b55d86ff4f978e558b0e585cef70cfc1ad01adc6bf18/multidict-6.7.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:0b38ebffd9be37c1170d33bc0f36f4f262e0a09bc1aac1c34c7aa51a7293f0b3", size = 245940 }, + { url = "https://files.pythonhosted.org/packages/3d/20/6214d3c105928ebc353a1c644a6ef1408bc5794fcb4f170bb524a3c16311/multidict-6.7.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:10ae39c9cfe6adedcdb764f5e8411d4a92b055e35573a2eaa88d3323289ef93c", size = 253502 }, + { url = "https://files.pythonhosted.org/packages/b1/e2/c653bc4ae1be70a0f836b82172d643fcf1dade042ba2676ab08ec08bff0f/multidict-6.7.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:25167cc263257660290fba06b9318d2026e3c910be240a146e1f66dd114af2b0", size = 247065 }, + { url = "https://files.pythonhosted.org/packages/c8/11/a854b4154cd3bd8b1fd375e8a8ca9d73be37610c361543d56f764109509b/multidict-6.7.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:128441d052254f42989ef98b7b6a6ecb1e6f708aa962c7984235316db59f50fa", size = 241870 }, + { url = "https://files.pythonhosted.org/packages/13/bf/9676c0392309b5fdae322333d22a829715b570edb9baa8016a517b55b558/multidict-6.7.1-cp311-cp311-win32.whl", hash = "sha256:d62b7f64ffde3b99d06b707a280db04fb3855b55f5a06df387236051d0668f4a", size = 41302 }, + { url = "https://files.pythonhosted.org/packages/c9/68/f16a3a8ba6f7b6dc92a1f19669c0810bd2c43fc5a02da13b1cbf8e253845/multidict-6.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:bdbf9f3b332abd0cdb306e7c2113818ab1e922dc84b8f8fd06ec89ed2a19ab8b", size = 45981 }, + { url = "https://files.pythonhosted.org/packages/ac/ad/9dd5305253fa00cd3c7555dbef69d5bf4133debc53b87ab8d6a44d411665/multidict-6.7.1-cp311-cp311-win_arm64.whl", hash = "sha256:b8c990b037d2fff2f4e33d3f21b9b531c5745b33a49a7d6dbe7a177266af44f6", size = 43159 }, + { url = "https://files.pythonhosted.org/packages/8d/9c/f20e0e2cf80e4b2e4b1c365bf5fe104ee633c751a724246262db8f1a0b13/multidict-6.7.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:a90f75c956e32891a4eda3639ce6dd86e87105271f43d43442a3aedf3cddf172", size = 76893 }, + { url = "https://files.pythonhosted.org/packages/fe/cf/18ef143a81610136d3da8193da9d80bfe1cb548a1e2d1c775f26b23d024a/multidict-6.7.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:3fccb473e87eaa1382689053e4a4618e7ba7b9b9b8d6adf2027ee474597128cd", size = 45456 }, + { url = "https://files.pythonhosted.org/packages/a9/65/1caac9d4cd32e8433908683446eebc953e82d22b03d10d41a5f0fefe991b/multidict-6.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0fa96985700739c4c7853a43c0b3e169360d6855780021bfc6d0f1ce7c123e7", size = 43872 }, + { url = "https://files.pythonhosted.org/packages/cf/3b/d6bd75dc4f3ff7c73766e04e705b00ed6dbbaccf670d9e05a12b006f5a21/multidict-6.7.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:cb2a55f408c3043e42b40cc8eecd575afa27b7e0b956dfb190de0f8499a57a53", size = 251018 }, + { url = "https://files.pythonhosted.org/packages/fd/80/c959c5933adedb9ac15152e4067c702a808ea183a8b64cf8f31af8ad3155/multidict-6.7.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eb0ce7b2a32d09892b3dd6cc44877a0d02a33241fafca5f25c8b6b62374f8b75", size = 258883 }, + { url = "https://files.pythonhosted.org/packages/86/85/7ed40adafea3d4f1c8b916e3b5cc3a8e07dfcdcb9cd72800f4ed3ca1b387/multidict-6.7.1-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:c3a32d23520ee37bf327d1e1a656fec76a2edd5c038bf43eddfa0572ec49c60b", size = 242413 }, + { url = "https://files.pythonhosted.org/packages/d2/57/b8565ff533e48595503c785f8361ff9a4fde4d67de25c207cd0ba3befd03/multidict-6.7.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:9c90fed18bffc0189ba814749fdcc102b536e83a9f738a9003e569acd540a733", size = 268404 }, + { url = "https://files.pythonhosted.org/packages/e0/50/9810c5c29350f7258180dfdcb2e52783a0632862eb334c4896ac717cebcb/multidict-6.7.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:da62917e6076f512daccfbbde27f46fed1c98fee202f0559adec8ee0de67f71a", size = 269456 }, + { url = "https://files.pythonhosted.org/packages/f3/8d/5e5be3ced1d12966fefb5c4ea3b2a5b480afcea36406559442c6e31d4a48/multidict-6.7.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bfde23ef6ed9db7eaee6c37dcec08524cb43903c60b285b172b6c094711b3961", size = 256322 }, + { url = "https://files.pythonhosted.org/packages/31/6e/d8a26d81ac166a5592782d208dd90dfdc0a7a218adaa52b45a672b46c122/multidict-6.7.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3758692429e4e32f1ba0df23219cd0b4fc0a52f476726fff9337d1a57676a582", size = 253955 }, + { url = "https://files.pythonhosted.org/packages/59/4c/7c672c8aad41534ba619bcd4ade7a0dc87ed6b8b5c06149b85d3dd03f0cd/multidict-6.7.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:398c1478926eca669f2fd6a5856b6de9c0acf23a2cb59a14c0ba5844fa38077e", size = 251254 }, + { url = "https://files.pythonhosted.org/packages/7b/bd/84c24de512cbafbdbc39439f74e967f19570ce7924e3007174a29c348916/multidict-6.7.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:c102791b1c4f3ab36ce4101154549105a53dc828f016356b3e3bcae2e3a039d3", size = 252059 }, + { url = "https://files.pythonhosted.org/packages/fa/ba/f5449385510825b73d01c2d4087bf6d2fccc20a2d42ac34df93191d3dd03/multidict-6.7.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a088b62bd733e2ad12c50dad01b7d0166c30287c166e137433d3b410add807a6", size = 263588 }, + { url = "https://files.pythonhosted.org/packages/d7/11/afc7c677f68f75c84a69fe37184f0f82fce13ce4b92f49f3db280b7e92b3/multidict-6.7.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:3d51ff4785d58d3f6c91bdbffcb5e1f7ddfda557727043aa20d20ec4f65e324a", size = 259642 }, + { url = "https://files.pythonhosted.org/packages/2b/17/ebb9644da78c4ab36403739e0e6e0e30ebb135b9caf3440825001a0bddcb/multidict-6.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:fc5907494fccf3e7d3f94f95c91d6336b092b5fc83811720fae5e2765890dfba", size = 251377 }, + { url = "https://files.pythonhosted.org/packages/ca/a4/840f5b97339e27846c46307f2530a2805d9d537d8b8bd416af031cad7fa0/multidict-6.7.1-cp312-cp312-win32.whl", hash = "sha256:28ca5ce2fd9716631133d0e9a9b9a745ad7f60bac2bccafb56aa380fc0b6c511", size = 41887 }, + { url = "https://files.pythonhosted.org/packages/80/31/0b2517913687895f5904325c2069d6a3b78f66cc641a86a2baf75a05dcbb/multidict-6.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcee94dfbd638784645b066074b338bc9cc155d4b4bffa4adce1615c5a426c19", size = 46053 }, + { url = "https://files.pythonhosted.org/packages/0c/5b/aba28e4ee4006ae4c7df8d327d31025d760ffa992ea23812a601d226e682/multidict-6.7.1-cp312-cp312-win_arm64.whl", hash = "sha256:ba0a9fb644d0c1a2194cf7ffb043bd852cea63a57f66fbd33959f7dae18517bf", size = 43307 }, + { url = "https://files.pythonhosted.org/packages/f2/22/929c141d6c0dba87d3e1d38fbdf1ba8baba86b7776469f2bc2d3227a1e67/multidict-6.7.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2b41f5fed0ed563624f1c17630cb9941cf2309d4df00e494b551b5f3e3d67a23", size = 76174 }, + { url = "https://files.pythonhosted.org/packages/c7/75/bc704ae15fee974f8fccd871305e254754167dce5f9e42d88a2def741a1d/multidict-6.7.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84e61e3af5463c19b67ced91f6c634effb89ef8bfc5ca0267f954451ed4bb6a2", size = 45116 }, + { url = "https://files.pythonhosted.org/packages/79/76/55cd7186f498ed080a18440c9013011eb548f77ae1b297206d030eb1180a/multidict-6.7.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:935434b9853c7c112eee7ac891bc4cb86455aa631269ae35442cb316790c1445", size = 43524 }, + { url = "https://files.pythonhosted.org/packages/e9/3c/414842ef8d5a1628d68edee29ba0e5bcf235dbfb3ccd3ea303a7fe8c72ff/multidict-6.7.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:432feb25a1cb67fe82a9680b4d65fb542e4635cb3166cd9c01560651ad60f177", size = 249368 }, + { url = "https://files.pythonhosted.org/packages/f6/32/befed7f74c458b4a525e60519fe8d87eef72bb1e99924fa2b0f9d97a221e/multidict-6.7.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e82d14e3c948952a1a85503817e038cba5905a3352de76b9a465075d072fba23", size = 256952 }, + { url = "https://files.pythonhosted.org/packages/03/d6/c878a44ba877f366630c860fdf74bfb203c33778f12b6ac274936853c451/multidict-6.7.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:4cfb48c6ea66c83bcaaf7e4dfa7ec1b6bbcf751b7db85a328902796dfde4c060", size = 240317 }, + { url = "https://files.pythonhosted.org/packages/68/49/57421b4d7ad2e9e60e25922b08ceb37e077b90444bde6ead629095327a6f/multidict-6.7.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:1d540e51b7e8e170174555edecddbd5538105443754539193e3e1061864d444d", size = 267132 }, + { url = "https://files.pythonhosted.org/packages/b7/fe/ec0edd52ddbcea2a2e89e174f0206444a61440b40f39704e64dc807a70bd/multidict-6.7.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:273d23f4b40f3dce4d6c8a821c741a86dec62cded82e1175ba3d99be128147ed", size = 268140 }, + { url = "https://files.pythonhosted.org/packages/b0/73/6e1b01cbeb458807aa0831742232dbdd1fa92bfa33f52a3f176b4ff3dc11/multidict-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d624335fd4fa1c08a53f8b4be7676ebde19cd092b3895c421045ca87895b429", size = 254277 }, + { url = "https://files.pythonhosted.org/packages/6a/b2/5fb8c124d7561a4974c342bc8c778b471ebbeb3cc17df696f034a7e9afe7/multidict-6.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:12fad252f8b267cc75b66e8fc51b3079604e8d43a75428ffe193cd9e2195dfd6", size = 252291 }, + { url = "https://files.pythonhosted.org/packages/5a/96/51d4e4e06bcce92577fcd488e22600bd38e4fd59c20cb49434d054903bd2/multidict-6.7.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:03ede2a6ffbe8ef936b92cb4529f27f42be7f56afcdab5ab739cd5f27fb1cbf9", size = 250156 }, + { url = "https://files.pythonhosted.org/packages/db/6b/420e173eec5fba721a50e2a9f89eda89d9c98fded1124f8d5c675f7a0c0f/multidict-6.7.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:90efbcf47dbe33dcf643a1e400d67d59abeac5db07dc3f27d6bdeae497a2198c", size = 249742 }, + { url = "https://files.pythonhosted.org/packages/44/a3/ec5b5bd98f306bc2aa297b8c6f11a46714a56b1e6ef5ebda50a4f5d7c5fb/multidict-6.7.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:5c4b9bfc148f5a91be9244d6264c53035c8a0dcd2f51f1c3c6e30e30ebaa1c84", size = 262221 }, + { url = "https://files.pythonhosted.org/packages/cd/f7/e8c0d0da0cd1e28d10e624604e1a36bcc3353aaebdfdc3a43c72bc683a12/multidict-6.7.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:401c5a650f3add2472d1d288c26deebc540f99e2fb83e9525007a74cd2116f1d", size = 258664 }, + { url = "https://files.pythonhosted.org/packages/52/da/151a44e8016dd33feed44f730bd856a66257c1ee7aed4f44b649fb7edeb3/multidict-6.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:97891f3b1b3ffbded884e2916cacf3c6fc87b66bb0dde46f7357404750559f33", size = 249490 }, + { url = "https://files.pythonhosted.org/packages/87/af/a3b86bf9630b732897f6fc3f4c4714b90aa4361983ccbdcd6c0339b21b0c/multidict-6.7.1-cp313-cp313-win32.whl", hash = "sha256:e1c5988359516095535c4301af38d8a8838534158f649c05dd1050222321bcb3", size = 41695 }, + { url = "https://files.pythonhosted.org/packages/b2/35/e994121b0e90e46134673422dd564623f93304614f5d11886b1b3e06f503/multidict-6.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:960c83bf01a95b12b08fd54324a4eb1d5b52c88932b5cba5d6e712bb3ed12eb5", size = 45884 }, + { url = "https://files.pythonhosted.org/packages/ca/61/42d3e5dbf661242a69c97ea363f2d7b46c567da8eadef8890022be6e2ab0/multidict-6.7.1-cp313-cp313-win_arm64.whl", hash = "sha256:563fe25c678aaba333d5399408f5ec3c383ca5b663e7f774dd179a520b8144df", size = 43122 }, + { url = "https://files.pythonhosted.org/packages/6d/b3/e6b21c6c4f314bb956016b0b3ef2162590a529b84cb831c257519e7fde44/multidict-6.7.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:c76c4bec1538375dad9d452d246ca5368ad6e1c9039dadcf007ae59c70619ea1", size = 83175 }, + { url = "https://files.pythonhosted.org/packages/fb/76/23ecd2abfe0957b234f6c960f4ade497f55f2c16aeb684d4ecdbf1c95791/multidict-6.7.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:57b46b24b5d5ebcc978da4ec23a819a9402b4228b8a90d9c656422b4bdd8a963", size = 48460 }, + { url = "https://files.pythonhosted.org/packages/c4/57/a0ed92b23f3a042c36bc4227b72b97eca803f5f1801c1ab77c8a212d455e/multidict-6.7.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e954b24433c768ce78ab7929e84ccf3422e46deb45a4dc9f93438f8217fa2d34", size = 46930 }, + { url = "https://files.pythonhosted.org/packages/b5/66/02ec7ace29162e447f6382c495dc95826bf931d3818799bbef11e8f7df1a/multidict-6.7.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3bd231490fa7217cc832528e1cd8752a96f0125ddd2b5749390f7c3ec8721b65", size = 242582 }, + { url = "https://files.pythonhosted.org/packages/58/18/64f5a795e7677670e872673aca234162514696274597b3708b2c0d276cce/multidict-6.7.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:253282d70d67885a15c8a7716f3a73edf2d635793ceda8173b9ecc21f2fb8292", size = 250031 }, + { url = "https://files.pythonhosted.org/packages/c8/ed/e192291dbbe51a8290c5686f482084d31bcd9d09af24f63358c3d42fd284/multidict-6.7.1-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0b4c48648d7649c9335cf1927a8b87fa692de3dcb15faa676c6a6f1f1aabda43", size = 228596 }, + { url = "https://files.pythonhosted.org/packages/1e/7e/3562a15a60cf747397e7f2180b0a11dc0c38d9175a650e75fa1b4d325e15/multidict-6.7.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:98bc624954ec4d2c7cb074b8eefc2b5d0ce7d482e410df446414355d158fe4ca", size = 257492 }, + { url = "https://files.pythonhosted.org/packages/24/02/7d0f9eae92b5249bb50ac1595b295f10e263dd0078ebb55115c31e0eaccd/multidict-6.7.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:1b99af4d9eec0b49927b4402bcbb58dea89d3e0db8806a4086117019939ad3dd", size = 255899 }, + { url = "https://files.pythonhosted.org/packages/00/e3/9b60ed9e23e64c73a5cde95269ef1330678e9c6e34dd4eb6b431b85b5a10/multidict-6.7.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6aac4f16b472d5b7dc6f66a0d49dd57b0e0902090be16594dc9ebfd3d17c47e7", size = 247970 }, + { url = "https://files.pythonhosted.org/packages/3e/06/538e58a63ed5cfb0bd4517e346b91da32fde409d839720f664e9a4ae4f9d/multidict-6.7.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:21f830fe223215dffd51f538e78c172ed7c7f60c9b96a2bf05c4848ad49921c3", size = 245060 }, + { url = "https://files.pythonhosted.org/packages/b2/2f/d743a3045a97c895d401e9bd29aaa09b94f5cbdf1bd561609e5a6c431c70/multidict-6.7.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f5dd81c45b05518b9aa4da4aa74e1c93d715efa234fd3e8a179df611cc85e5f4", size = 235888 }, + { url = "https://files.pythonhosted.org/packages/38/83/5a325cac191ab28b63c52f14f1131f3b0a55ba3b9aa65a6d0bf2a9b921a0/multidict-6.7.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:eb304767bca2bb92fb9c5bd33cedc95baee5bb5f6c88e63706533a1c06ad08c8", size = 243554 }, + { url = "https://files.pythonhosted.org/packages/20/1f/9d2327086bd15da2725ef6aae624208e2ef828ed99892b17f60c344e57ed/multidict-6.7.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:c9035dde0f916702850ef66460bc4239d89d08df4d02023a5926e7446724212c", size = 252341 }, + { url = "https://files.pythonhosted.org/packages/e8/2c/2a1aa0280cf579d0f6eed8ee5211c4f1730bd7e06c636ba2ee6aafda302e/multidict-6.7.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:af959b9beeb66c822380f222f0e0a1889331597e81f1ded7f374f3ecb0fd6c52", size = 246391 }, + { url = "https://files.pythonhosted.org/packages/e5/03/7ca022ffc36c5a3f6e03b179a5ceb829be9da5783e6fe395f347c0794680/multidict-6.7.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:41f2952231456154ee479651491e94118229844dd7226541788be783be2b5108", size = 243422 }, + { url = "https://files.pythonhosted.org/packages/dc/1d/b31650eab6c5778aceed46ba735bd97f7c7d2f54b319fa916c0f96e7805b/multidict-6.7.1-cp313-cp313t-win32.whl", hash = "sha256:df9f19c28adcb40b6aae30bbaa1478c389efd50c28d541d76760199fc1037c32", size = 47770 }, + { url = "https://files.pythonhosted.org/packages/ac/5b/2d2d1d522e51285bd61b1e20df8f47ae1a9d80839db0b24ea783b3832832/multidict-6.7.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d54ecf9f301853f2c5e802da559604b3e95bb7a3b01a9c295c6ee591b9882de8", size = 53109 }, + { url = "https://files.pythonhosted.org/packages/3d/a3/cc409ba012c83ca024a308516703cf339bdc4b696195644a7215a5164a24/multidict-6.7.1-cp313-cp313t-win_arm64.whl", hash = "sha256:5a37ca18e360377cfda1d62f5f382ff41f2b8c4ccb329ed974cc2e1643440118", size = 45573 }, + { url = "https://files.pythonhosted.org/packages/91/cc/db74228a8be41884a567e88a62fd589a913708fcf180d029898c17a9a371/multidict-6.7.1-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8f333ec9c5eb1b7105e3b84b53141e66ca05a19a605368c55450b6ba208cb9ee", size = 75190 }, + { url = "https://files.pythonhosted.org/packages/d5/22/492f2246bb5b534abd44804292e81eeaf835388901f0c574bac4eeec73c5/multidict-6.7.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a407f13c188f804c759fc6a9f88286a565c242a76b27626594c133b82883b5c2", size = 44486 }, + { url = "https://files.pythonhosted.org/packages/f1/4f/733c48f270565d78b4544f2baddc2fb2a245e5a8640254b12c36ac7ac68e/multidict-6.7.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0e161ddf326db5577c3a4cc2d8648f81456e8a20d40415541587a71620d7a7d1", size = 43219 }, + { url = "https://files.pythonhosted.org/packages/24/bb/2c0c2287963f4259c85e8bcbba9182ced8d7fca65c780c38e99e61629d11/multidict-6.7.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1e3a8bb24342a8201d178c3b4984c26ba81a577c80d4d525727427460a50c22d", size = 245132 }, + { url = "https://files.pythonhosted.org/packages/a7/f9/44d4b3064c65079d2467888794dea218d1601898ac50222ab8a9a8094460/multidict-6.7.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97231140a50f5d447d3164f994b86a0bed7cd016e2682f8650d6a9158e14fd31", size = 252420 }, + { url = "https://files.pythonhosted.org/packages/8b/13/78f7275e73fa17b24c9a51b0bd9d73ba64bb32d0ed51b02a746eb876abe7/multidict-6.7.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6b10359683bd8806a200fd2909e7c8ca3a7b24ec1d8132e483d58e791d881048", size = 233510 }, + { url = "https://files.pythonhosted.org/packages/4b/25/8167187f62ae3cbd52da7893f58cb036b47ea3fb67138787c76800158982/multidict-6.7.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:283ddac99f7ac25a4acadbf004cb5ae34480bbeb063520f70ce397b281859362", size = 264094 }, + { url = "https://files.pythonhosted.org/packages/a1/e7/69a3a83b7b030cf283fb06ce074a05a02322359783424d7edf0f15fe5022/multidict-6.7.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:538cec1e18c067d0e6103aa9a74f9e832904c957adc260e61cd9d8cf0c3b3d37", size = 260786 }, + { url = "https://files.pythonhosted.org/packages/fe/3b/8ec5074bcfc450fe84273713b4b0a0dd47c0249358f5d82eb8104ffe2520/multidict-6.7.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7eee46ccb30ff48a1e35bb818cc90846c6be2b68240e42a78599166722cea709", size = 248483 }, + { url = "https://files.pythonhosted.org/packages/48/5a/d5a99e3acbca0e29c5d9cba8f92ceb15dce78bab963b308ae692981e3a5d/multidict-6.7.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa263a02f4f2dd2d11a7b1bb4362aa7cb1049f84a9235d31adf63f30143469a0", size = 248403 }, + { url = "https://files.pythonhosted.org/packages/35/48/e58cd31f6c7d5102f2a4bf89f96b9cf7e00b6c6f3d04ecc44417c00a5a3c/multidict-6.7.1-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:2e1425e2f99ec5bd36c15a01b690a1a2456209c5deed58f95469ffb46039ccbb", size = 240315 }, + { url = "https://files.pythonhosted.org/packages/94/33/1cd210229559cb90b6786c30676bb0c58249ff42f942765f88793b41fdce/multidict-6.7.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:497394b3239fc6f0e13a78a3e1b61296e72bf1c5f94b4c4eb80b265c37a131cd", size = 245528 }, + { url = "https://files.pythonhosted.org/packages/64/f2/6e1107d226278c876c783056b7db43d800bb64c6131cec9c8dfb6903698e/multidict-6.7.1-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:233b398c29d3f1b9676b4b6f75c518a06fcb2ea0b925119fb2c1bc35c05e1601", size = 258784 }, + { url = "https://files.pythonhosted.org/packages/4d/c1/11f664f14d525e4a1b5327a82d4de61a1db604ab34c6603bb3c2cc63ad34/multidict-6.7.1-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:93b1818e4a6e0930454f0f2af7dfce69307ca03cdcfb3739bf4d91241967b6c1", size = 251980 }, + { url = "https://files.pythonhosted.org/packages/e1/9f/75a9ac888121d0c5bbd4ecf4eead45668b1766f6baabfb3b7f66a410e231/multidict-6.7.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:f33dc2a3abe9249ea5d8360f969ec7f4142e7ac45ee7014d8f8d5acddf178b7b", size = 243602 }, + { url = "https://files.pythonhosted.org/packages/9a/e7/50bf7b004cc8525d80dbbbedfdc7aed3e4c323810890be4413e589074032/multidict-6.7.1-cp314-cp314-win32.whl", hash = "sha256:3ab8b9d8b75aef9df299595d5388b14530839f6422333357af1339443cff777d", size = 40930 }, + { url = "https://files.pythonhosted.org/packages/e0/bf/52f25716bbe93745595800f36fb17b73711f14da59ed0bb2eba141bc9f0f/multidict-6.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:5e01429a929600e7dab7b166062d9bb54a5eed752384c7384c968c2afab8f50f", size = 45074 }, + { url = "https://files.pythonhosted.org/packages/97/ab/22803b03285fa3a525f48217963da3a65ae40f6a1b6f6cf2768879e208f9/multidict-6.7.1-cp314-cp314-win_arm64.whl", hash = "sha256:4885cb0e817aef5d00a2e8451d4665c1808378dc27c2705f1bf4ef8505c0d2e5", size = 42471 }, + { url = "https://files.pythonhosted.org/packages/e0/6d/f9293baa6146ba9507e360ea0292b6422b016907c393e2f63fc40ab7b7b5/multidict-6.7.1-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:0458c978acd8e6ea53c81eefaddbbee9c6c5e591f41b3f5e8e194780fe026581", size = 82401 }, + { url = "https://files.pythonhosted.org/packages/7a/68/53b5494738d83558d87c3c71a486504d8373421c3e0dbb6d0db48ad42ee0/multidict-6.7.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:c0abd12629b0af3cf590982c0b413b1e7395cd4ec026f30986818ab95bfaa94a", size = 48143 }, + { url = "https://files.pythonhosted.org/packages/37/e8/5284c53310dcdc99ce5d66563f6e5773531a9b9fe9ec7a615e9bc306b05f/multidict-6.7.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:14525a5f61d7d0c94b368a42cff4c9a4e7ba2d52e2672a7b23d84dc86fb02b0c", size = 46507 }, + { url = "https://files.pythonhosted.org/packages/e4/fc/6800d0e5b3875568b4083ecf5f310dcf91d86d52573160834fb4bfcf5e4f/multidict-6.7.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:17307b22c217b4cf05033dabefe68255a534d637c6c9b0cc8382718f87be4262", size = 239358 }, + { url = "https://files.pythonhosted.org/packages/41/75/4ad0973179361cdf3a113905e6e088173198349131be2b390f9fa4da5fc6/multidict-6.7.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7a7e590ff876a3eaf1c02a4dfe0724b6e69a9e9de6d8f556816f29c496046e59", size = 246884 }, + { url = "https://files.pythonhosted.org/packages/c3/9c/095bb28b5da139bd41fb9a5d5caff412584f377914bd8787c2aa98717130/multidict-6.7.1-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:5fa6a95dfee63893d80a34758cd0e0c118a30b8dcb46372bf75106c591b77889", size = 225878 }, + { url = "https://files.pythonhosted.org/packages/07/d0/c0a72000243756e8f5a277b6b514fa005f2c73d481b7d9e47cd4568aa2e4/multidict-6.7.1-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a0543217a6a017692aa6ae5cc39adb75e587af0f3a82288b1492eb73dd6cc2a4", size = 253542 }, + { url = "https://files.pythonhosted.org/packages/c0/6b/f69da15289e384ecf2a68837ec8b5ad8c33e973aa18b266f50fe55f24b8c/multidict-6.7.1-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f99fe611c312b3c1c0ace793f92464d8cd263cc3b26b5721950d977b006b6c4d", size = 252403 }, + { url = "https://files.pythonhosted.org/packages/a2/76/b9669547afa5a1a25cd93eaca91c0da1c095b06b6d2d8ec25b713588d3a1/multidict-6.7.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9004d8386d133b7e6135679424c91b0b854d2d164af6ea3f289f8f2761064609", size = 244889 }, + { url = "https://files.pythonhosted.org/packages/7e/a9/a50d2669e506dad33cfc45b5d574a205587b7b8a5f426f2fbb2e90882588/multidict-6.7.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e628ef0e6859ffd8273c69412a2465c4be4a9517d07261b33334b5ec6f3c7489", size = 241982 }, + { url = "https://files.pythonhosted.org/packages/c5/bb/1609558ad8b456b4827d3c5a5b775c93b87878fd3117ed3db3423dfbce1b/multidict-6.7.1-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:841189848ba629c3552035a6a7f5bf3b02eb304e9fea7492ca220a8eda6b0e5c", size = 232415 }, + { url = "https://files.pythonhosted.org/packages/d8/59/6f61039d2aa9261871e03ab9dc058a550d240f25859b05b67fd70f80d4b3/multidict-6.7.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:ce1bbd7d780bb5a0da032e095c951f7014d6b0a205f8318308140f1a6aba159e", size = 240337 }, + { url = "https://files.pythonhosted.org/packages/a1/29/fdc6a43c203890dc2ae9249971ecd0c41deaedfe00d25cb6564b2edd99eb/multidict-6.7.1-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b26684587228afed0d50cf804cc71062cc9c1cdf55051c4c6345d372947b268c", size = 248788 }, + { url = "https://files.pythonhosted.org/packages/a9/14/a153a06101323e4cf086ecee3faadba52ff71633d471f9685c42e3736163/multidict-6.7.1-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:9f9af11306994335398293f9958071019e3ab95e9a707dc1383a35613f6abcb9", size = 242842 }, + { url = "https://files.pythonhosted.org/packages/41/5f/604ae839e64a4a6efc80db94465348d3b328ee955e37acb24badbcd24d83/multidict-6.7.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:b4938326284c4f1224178a560987b6cf8b4d38458b113d9b8c1db1a836e640a2", size = 240237 }, + { url = "https://files.pythonhosted.org/packages/5f/60/c3a5187bf66f6fb546ff4ab8fb5a077cbdd832d7b1908d4365c7f74a1917/multidict-6.7.1-cp314-cp314t-win32.whl", hash = "sha256:98655c737850c064a65e006a3df7c997cd3b220be4ec8fe26215760b9697d4d7", size = 48008 }, + { url = "https://files.pythonhosted.org/packages/0c/f7/addf1087b860ac60e6f382240f64fb99f8bfb532bb06f7c542b83c29ca61/multidict-6.7.1-cp314-cp314t-win_amd64.whl", hash = "sha256:497bde6223c212ba11d462853cfa4f0ae6ef97465033e7dc9940cdb3ab5b48e5", size = 53542 }, + { url = "https://files.pythonhosted.org/packages/4c/81/4629d0aa32302ef7b2ec65c75a728cc5ff4fa410c50096174c1632e70b3e/multidict-6.7.1-cp314-cp314t-win_arm64.whl", hash = "sha256:2bbd113e0d4af5db41d5ebfe9ccaff89de2120578164f86a5d17d5a576d1e5b2", size = 44719 }, + { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319 }, +] + +[[package]] +name = "narwhals" +version = "2.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/47/6d/b57c64e5038a8cf071bce391bb11551657a74558877ac961e7fa905ece27/narwhals-2.15.0.tar.gz", hash = "sha256:a9585975b99d95084268445a1fdd881311fa26ef1caa18020d959d5b2ff9a965", size = 603479 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/2e/cf2ffeb386ac3763526151163ad7da9f1b586aac96d2b4f7de1eaebf0c61/narwhals-2.15.0-py3-none-any.whl", hash = "sha256:cbfe21ca19d260d9fd67f995ec75c44592d1f106933b03ddd375df7ac841f9d6", size = 432856 }, +] + +[[package]] +name = "ndindex" +version = "1.10.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f5/92/4b9d2f4e0f3eabcfc7b02b48261f6e5ad36a3e2c1bbdcc4e3b7b6c768fa6/ndindex-1.10.1.tar.gz", hash = "sha256:0f6113c1f031248f8818cbee1aa92aa3c9472b7701debcce9fddebcd2f610f11", size = 271395 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/d9/c94ab6151c9fdd199c2b560f23e3759a9fb86a7a1275855e0b97291bf05a/ndindex-1.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e2ad917bcdf8dc5ba1e21f01054c991d26862d4d01c3c203a50e907096d558ac", size = 172128 }, + { url = "https://files.pythonhosted.org/packages/3a/34/880c4073750766e44492d51280d025f28e36475394ca3d741b0a4adad4b0/ndindex-1.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e851990a68937db5f485cd9f3e760c1fd47fa0f2a99f63a5e2cc880908faf3bb", size = 171423 }, + { url = "https://files.pythonhosted.org/packages/f0/1e/0342da55dabe4075efc2b2ab91a6a22ed3047c5bd511ef771a7a3f822c90/ndindex-1.10.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:27385939f317b55773ea53f6bf9334810cf1d66206034c0a6a6f2a88f2001c3c", size = 519590 }, + { url = "https://files.pythonhosted.org/packages/fd/cb/7a02b6f29b15a16cd0002f4591d14493eff8e9236f7ca4c02ee4d4bcefbd/ndindex-1.10.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9fdf3ca16efcdfbb8800aa88fbab1bc6528e6a0504bcb9cf7af4cb9d50e9f5d9", size = 516676 }, + { url = "https://files.pythonhosted.org/packages/67/d5/38da808f968a54b0fead2d7e15ca011d3df93c96a07f4914e8ef3974506e/ndindex-1.10.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:3307817bdc92846b18f309fae3582856f567dd6e0742fb0b41ac68682bfc4e2a", size = 1491141 }, + { url = "https://files.pythonhosted.org/packages/bc/1f/8c66ef982a01ae4cbdabba679a2bc711f262cedf23bfb9682293146f8a98/ndindex-1.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ae73cd2d66b09ef2f2a7d7f93bad396d6abf168d1ee825e403c6c5fb8ae1341c", size = 1543876 }, + { url = "https://files.pythonhosted.org/packages/05/a1/7c7e3a3c6e81b4284fd0d53cbaec51d9e5b90df26dd78e9bde06cb307217/ndindex-1.10.1-cp311-cp311-win32.whl", hash = "sha256:890bb92f0a779e6f16bdbcc8bd2e06c32bcc0239e5893ba246114eb924aecaaa", size = 149149 }, + { url = "https://files.pythonhosted.org/packages/3b/38/99e1fb0effdef74b883be615ea0053ebcea28a53fd8b896263f4e99b0113/ndindex-1.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:1827a40301405b44ad709e388c5b48cf35cd90a67f77e63f0f17d87f6000fa81", size = 157246 }, + { url = "https://files.pythonhosted.org/packages/65/90/774ddd08b2a1b41faa56da111f0fbfeb4f17ee537214c938ef41d61af949/ndindex-1.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:87f83e8c35a7f49a68cd3a3054c406e6c22f8c1315f3905f7a778c657669187e", size = 177348 }, + { url = "https://files.pythonhosted.org/packages/ed/ee/a423e857f5b45da3adc8ddbcfbfd4a0e9a047edce3915d3e3d6e189b6bd9/ndindex-1.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:cf9e05986b2eb8c5993bce0f911d6cedd15bda30b5e35dd354b1ad1f4cc3599d", size = 176561 }, + { url = "https://files.pythonhosted.org/packages/1f/40/139b6b050ba2b2a0bb40e0381a352b1eb6551302dcb8f86fb4c97dd34e92/ndindex-1.10.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:046c1e88d46b2bd2fd3483e06d27b4e85132b55bc693f2fca2db0bb56eea1e78", size = 542901 }, + { url = "https://files.pythonhosted.org/packages/27/ae/defd665dbbeb2fffa077491365ed160acaec49274ce8d4b979f55db71f18/ndindex-1.10.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:03cf1e6cdac876bd8fc92d3b65bb223496b1581d10eab3ba113f7c195121a959", size = 546875 }, + { url = "https://files.pythonhosted.org/packages/59/43/6d54d48e8eaee25cdab70d3e4c4f579ddb0255e4f1660040d5ad55e029c6/ndindex-1.10.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:752e78a5e87911ded117c57a7246596f26c9c6da066de3c2b533b3db694949bb", size = 1510036 }, + { url = "https://files.pythonhosted.org/packages/09/61/e28ba3b98eacd18193176526526b34d7d70d2a6f9fd2b4d8309ab5692678/ndindex-1.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c9dd58d91220b1c1fe516324bfcf4114566c98e84b1cbbe416abe345c75bd557", size = 1571849 }, + { url = "https://files.pythonhosted.org/packages/8f/63/83fff78a3712cb9f478dd84a19ec389acf6f8c7b01dc347a65ae74e6123d/ndindex-1.10.1-cp312-cp312-win32.whl", hash = "sha256:3b0d9ce2c8488444499ab6d40e92e09867bf4413f5cf04c01635de923f44aa67", size = 149792 }, + { url = "https://files.pythonhosted.org/packages/52/fd/a5e3c8c043d0dddea6cd4567bfaea568f022ac197301882b3d85d9c1e9b3/ndindex-1.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:5c026dbbf2455d97ce6456d8a50b349aee8fefa11027d020638c89e9be2c9c4c", size = 158164 }, + { url = "https://files.pythonhosted.org/packages/60/ea/03676266cb38cc671679a9d258cc59bfc58c69726db87b0d6eeafb308895/ndindex-1.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:157b5c34a1b779f5d27b790d9bd7e7b156d284e76be83c591a3ba003984f4956", size = 176323 }, + { url = "https://files.pythonhosted.org/packages/89/f4/2d350439031b108b0bb8897cad315390c5ad88c14d87419a54c2ffa95c80/ndindex-1.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f99b3e89220da3244d03c9c5473669c7107d361c129fd9b064622744dee1ce15", size = 175584 }, + { url = "https://files.pythonhosted.org/packages/77/34/a51b7c6f7159718a6a0a694fc1058b94d793c416d9a4fd649f1924cce5f8/ndindex-1.10.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6928e47fb008903f2e41309b7ff1e59b16abbcd59e2e945454571c28b2433c9e", size = 524127 }, + { url = "https://files.pythonhosted.org/packages/21/91/d8f19f0b8fc9c5585b50fda44c05415da0bdc5fa9c9c69011015dac27880/ndindex-1.10.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e69a2cb1ac7be955c3c77f1def83f410775a81525c9ce2d4c0a3f2a61589ed47", size = 528213 }, + { url = "https://files.pythonhosted.org/packages/2c/a9/77d9d037e871a3faa8579b354ca2dd09cc5bbf3e085d9e3c67f786d55ee3/ndindex-1.10.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cb76e0f3f235d8b1c768b17e771de48775d281713795c3aa045e8114ad61bdda", size = 1492172 }, + { url = "https://files.pythonhosted.org/packages/ac/29/ad13676fc9312e0aa1a80a7c04bcb0b502b877ed4956136117ad663eced0/ndindex-1.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7da34a78410c14341d5fff73be5ce924bd36500bf7f640fc59b8607d3a0df95e", size = 1552614 }, + { url = "https://files.pythonhosted.org/packages/63/34/e6e6fd81423810c07ae623c4d36e099f42a812994977e8e3bfa182c02472/ndindex-1.10.1-cp313-cp313-win32.whl", hash = "sha256:9599fcb7411ffe601c367f0a5d4bc0ed588e3e7d9dc7604bdb32c8f669456b9e", size = 149330 }, + { url = "https://files.pythonhosted.org/packages/4d/d3/830a20626e2ec0e31a926be90e67068a029930f99e6cfebf2f9768e7b7b1/ndindex-1.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:ef3ef22390a892d16286505083ee5b326317b21c255a0c7f744b1290a0b964a6", size = 157309 }, + { url = "https://files.pythonhosted.org/packages/4a/73/3bdeecd1f6ec0ad81478a53d96da4ba9be74ed297c95f2b4fbe2b80843e1/ndindex-1.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:72af787dcee3661f36fff9d144d989aacefe32e2c8b51ceef9babd46afb93a18", size = 181022 }, + { url = "https://files.pythonhosted.org/packages/b9/b1/0d97ba134b5aa71b5ed638fac193a7ec4d987e091e2f4e4162ebdaacbda1/ndindex-1.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:fa60637dfae1ee3fc057e420a52cc4ace38cf2c0d1a0451af2a3cba84d281842", size = 181289 }, + { url = "https://files.pythonhosted.org/packages/e2/d7/1df02df24880ce3f3c8137b6f3ca5a901a58d9079dcfd8c818419277ff87/ndindex-1.10.1-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d0ebdba2fade3f6916fe21fd49e2a0935af4f58c56100a60f3f2eb26e20baee7", size = 632517 }, + { url = "https://files.pythonhosted.org/packages/34/96/b509c2b14e9b10710fe6ab6ba8bda1ee6ce36ab16397ff2f5bbb33bbbba3/ndindex-1.10.1-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:346a4bf09f5771548665c8206e81daadb6b9925d409746e709894bdd98adc701", size = 616179 }, + { url = "https://files.pythonhosted.org/packages/38/e3/f89d60cf351c33a484bf1a4546a5dee6f4e7a6a973613ffa12bd316b14ad/ndindex-1.10.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:23d35696f802548143b5cc199bf2f171efb0061aa7934959251dd3bae56d038c", size = 1588373 }, + { url = "https://files.pythonhosted.org/packages/ee/19/002fc1e6a4abeef8d92e9aa2e43aea4d462f6b170090f7752ea8887f4897/ndindex-1.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:a91e1a0398120233d5c3b23ccb2d4b78e970d66136f1a7221fa9a53873c3d5c5", size = 1636436 }, + { url = "https://files.pythonhosted.org/packages/5f/8f/28b1ad78c787ac8fafd6e26419a80366617784b1779e3857fa687492f6bc/ndindex-1.10.1-cp313-cp313t-win32.whl", hash = "sha256:78bfe25941d2dac406391ddd9baf0b0fce163807b98ecc2c47a3030ee8466319", size = 158780 }, + { url = "https://files.pythonhosted.org/packages/d0/56/b81060607a19865bb8be8d705b1b3e8aefb8747c0fbd383e38b4cae4bd71/ndindex-1.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:08bfdc1f7a0b408d15b3ce61d141ebbebdb47a25341967e425e104c5bd512a5c", size = 167485 }, + { url = "https://files.pythonhosted.org/packages/da/9b/aac1131e9f3a5635ba7b0312c3bfa610511ab4108f85c0d914a32887aa00/ndindex-1.10.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:9b5297f207ebc068c7cdf9e3cd7b95aa5c9ec04295d0a7e56b529f66787d4685", size = 176478 }, + { url = "https://files.pythonhosted.org/packages/1a/05/a0d8ca0432c84550bc17af6d6479a803936895b8b8403a1216c5a55475fb/ndindex-1.10.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c5e9762452b163e33cfb6e821f86e45ba0b53bdfcd23ab5d57b48a8f566898cb", size = 175480 }, + { url = "https://files.pythonhosted.org/packages/09/4a/028ab78a9f29fd2a7e86a90337cde4658eaa77b425c63045d83a1d2e4f26/ndindex-1.10.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cf80241b40adffdc3276b2c9fb63a96c6c98b4a9d941892738de8add65083962", size = 528125 }, + { url = "https://files.pythonhosted.org/packages/00/a9/bd823b345fb06c83ade6ef1c1933521d4357cd04490e684d4fa30126926c/ndindex-1.10.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cf5855881884b8467dfcf45764ccf2e4279075be14b155b89c96994bb08d2e6f", size = 527328 }, + { url = "https://files.pythonhosted.org/packages/91/4f/40b9c15588cbf9dde43c4fb88a31dd1f636a913fa29649f18f8e3ebca36a/ndindex-1.10.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:e81a9bd36fe054b6c9fcc53d26bc9a28cf15d1ab52a0f5b854f894116f3a54e1", size = 1497508 }, + { url = "https://files.pythonhosted.org/packages/24/8f/b8048f7837d2e9dff0af507b398307fa84a2aa9ea3db71b4aa800b21da4a/ndindex-1.10.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:588e8875d836a93b3cd9af482c8074bb02288ae1aff92cf277e1f02d9ae0f992", size = 1552625 }, + { url = "https://files.pythonhosted.org/packages/20/aa/0ecb53c7e690a44769f2f92a843723ccb1d0ce080d93ba1ea811304cca12/ndindex-1.10.1-cp314-cp314-win32.whl", hash = "sha256:28741daca5926adff402247cd406f453ed5bb6042e82d6855938f805190e5ce9", size = 151237 }, + { url = "https://files.pythonhosted.org/packages/8c/4e/197982fa8b4e6e6b9d15c38505c41076d1c552921f09f4d35acbbbbc0b70/ndindex-1.10.1-cp314-cp314-win_amd64.whl", hash = "sha256:59a3222befc0f7cdc85fb9b90a567ae890f70a864bdeb660517e9ebcb36bf1bc", size = 158925 }, + { url = "https://files.pythonhosted.org/packages/24/ad/116b6154046a69fc04e2d4490905801d3839a3f21290c0b4d49b1044e251/ndindex-1.10.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:967b87b88dadb62555ec1039695c347254eccb8ca3d124c0e5dbe084c525fa93", size = 181724 }, + { url = "https://files.pythonhosted.org/packages/c4/00/3ce4351366c890bcc87a5e9f1f90102547962eef356ac7c799bfdd0dddce/ndindex-1.10.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c67dde588c0fb89d872931a4ed5f9b4d21c1c70a3d92fdf0812a1de154239816", size = 181653 }, + { url = "https://files.pythonhosted.org/packages/4d/05/a6fda696a2f02a3f8dd2ee9d816cb2edff6423bf0110a4876cc3b1259732/ndindex-1.10.1-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c65ca639a7abf72d79f22424f4abd18dece1f289a2b7b028a0ca455edd2168d4", size = 630898 }, + { url = "https://files.pythonhosted.org/packages/73/78/eb2e5d067d4c054451e33eaece74cbdcb58236dc60516e73d783dae34c7e/ndindex-1.10.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5c3634a8df43e7928122225a3d64d850c8957bd1edf2e403907deacb478af27b", size = 614419 }, + { url = "https://files.pythonhosted.org/packages/78/51/261bfb49eb7920c2a7314cacba5821930a529911dce48c7c6cd786096a5a/ndindex-1.10.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:9d581f931e61f182478f18bdf5edd3955899df5da4892ed0d5de547a4cfd5b6f", size = 1587517 }, + { url = "https://files.pythonhosted.org/packages/ec/37/084a332ecdf8b0049151bd78001a7baf2daf7f500d043beb8a1f95d0f4e3/ndindex-1.10.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:78ce45106ebf67aeba99714818c721d8fd5fb9534daebd2565665a2d64b50fc9", size = 1635372 }, + { url = "https://files.pythonhosted.org/packages/28/f4/716580fbb03018ab1daa86ed12c1925c67e79689db5fee82393e840758a2/ndindex-1.10.1-cp314-cp314t-win32.whl", hash = "sha256:fe5341e24dc992b09c258456ac90a09a6d25efdc2cb86dcc91d32c8891e1df9a", size = 162186 }, + { url = "https://files.pythonhosted.org/packages/4d/20/28f669c09a470e7f523b0cc10b94336664d9648594015e3f2a1ec29047b1/ndindex-1.10.1-cp314-cp314t-win_amd64.whl", hash = "sha256:37f87f0e7690ae0324334740e0661d6297f2e62c9bf925127d249fb7eddd0ad8", size = 171077 }, +] + +[[package]] +name = "netcdf4" +version = "1.7.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.13' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "python_full_version < '3.12' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "(python_full_version >= '3.13' and platform_machine != 'ARM64') or (python_full_version >= '3.13' and sys_platform != 'win32')", + "(python_full_version == '3.12.*' and platform_machine != 'ARM64') or (python_full_version == '3.12.*' and sys_platform != 'win32')", +] +dependencies = [ + { name = "certifi", marker = "(python_full_version >= '3.12' and platform_machine != 'ARM64') or (python_full_version >= '3.12' and sys_platform != 'win32') or (platform_machine == 'ARM64' and sys_platform == 'win32')" }, + { name = "cftime", marker = "(python_full_version >= '3.12' and platform_machine != 'ARM64') or (python_full_version >= '3.12' and sys_platform != 'win32') or (platform_machine == 'ARM64' and sys_platform == 'win32')" }, + { name = "numpy", marker = "(python_full_version >= '3.12' and platform_machine != 'ARM64') or (python_full_version >= '3.12' and sys_platform != 'win32') or (platform_machine == 'ARM64' and sys_platform == 'win32')" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0e/76/7bc801796dee752c1ce9cd6935564a6ee79d5c9d9ef9192f57b156495a35/netcdf4-1.7.3.tar.gz", hash = "sha256:83f122fc3415e92b1d4904fd6a0898468b5404c09432c34beb6b16c533884673", size = 836095 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/49/62/d286c76cdf0f6faf6064dc032ba7df3d6172ccca6e7d3571eee5516661b9/netcdf4-1.7.3-cp311-abi3-macosx_13_0_x86_64.whl", hash = "sha256:801c222d8ad35fd7dc7e9aa7ea6373d184bcb3b8ee6b794c5fbecaa5155b1792", size = 2751401 }, + { url = "https://files.pythonhosted.org/packages/f8/5e/0bb5593df674971e9fe5d76f7a0dd2006f3ee6b3a9eaece8c01170bac862/netcdf4-1.7.3-cp311-abi3-macosx_14_0_arm64.whl", hash = "sha256:83dbfd6f10a0ec785d5296016bd821bbe9f0df780be72fc00a1f0d179d9c5f0f", size = 2387517 }, + { url = "https://files.pythonhosted.org/packages/8e/27/9530c58ddec2c28297d1abbc2f3668cb7bf79864bcbfb0516634ad0d3908/netcdf4-1.7.3-cp311-abi3-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:949e086d4d2612b49e5b95f60119d216c9ceb7b17bc771e9e0fa0e9b9c0a2f9f", size = 9621631 }, + { url = "https://files.pythonhosted.org/packages/97/1a/78b19893197ed7525edfa7f124a461626541e82aec694a468ba97755c24e/netcdf4-1.7.3-cp311-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0c764ba6f6a1421cab5496097e8a1c4d2e36be2a04880dfd288bb61b348c217e", size = 9453727 }, + { url = "https://files.pythonhosted.org/packages/2a/f8/a5509bc46faedae2b71df29c57e6525b7eb47aee44000fd43e2927a9a3a9/netcdf4-1.7.3-cp311-abi3-win_amd64.whl", hash = "sha256:1b6c646fa179fb1e5e8d6e8231bc78cc0311eceaa1241256b5a853f1d04055b9", size = 7149328 }, +] + +[[package]] +name = "netcdf4" +version = "1.7.4" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')", +] +dependencies = [ + { name = "certifi", marker = "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')" }, + { name = "cftime", marker = "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')" }, + { name = "numpy", marker = "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/34/b6/0370bb3af66a12098da06dc5843f3b349b7c83ccbdf7306e7afa6248b533/netcdf4-1.7.4.tar.gz", hash = "sha256:cdbfdc92d6f4d7192ca8506c9b3d4c1d9892969ff28d8e8e1fc97ca08bf12164", size = 838352 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/de/38ed7e1956943d28e8ea74161e97c3a00fb98d6d08943b4fd21bae32c240/netcdf4-1.7.4-cp311-abi3-macosx_13_0_x86_64.whl", hash = "sha256:dec70e809cc65b04ebe95113ee9c85ba46a51c3a37c058d2b2b0cadc4d3052d8", size = 23427499 }, + { url = "https://files.pythonhosted.org/packages/e5/70/2f73c133b71709c412bc81d8b721e28dc6237ba9d7dad861b7bfbb70408a/netcdf4-1.7.4-cp311-abi3-macosx_14_0_arm64.whl", hash = "sha256:75cf59100f0775bc4d6b9d4aca7cbabd12e2b8cf3b9a4fb16d810b92743a315a", size = 22847667 }, + { url = "https://files.pythonhosted.org/packages/77/ce/43a3c0c41a6e2e940d87feea79d29aa88302211ac122604838f8a5a48de6/netcdf4-1.7.4-cp311-abi3-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ddfc7e9d261125c74708119440c85ea288b5fee41db676d2ba1ce9be11f96932", size = 10274769 }, + { url = "https://files.pythonhosted.org/packages/7b/7a/a8d32501bb95ecff342004a674720164f95ad616f269450b3bc13dc88ae3/netcdf4-1.7.4-cp311-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a72c9f58767779ec14cb7451c3b56bdd8fdc027a792fac2062b14e090c5617f3", size = 10123122 }, + { url = "https://files.pythonhosted.org/packages/18/68/e89b4fa9242e59326c849c39ce0f49eb68499603c639405a8449900a4f15/netcdf4-1.7.4-cp311-abi3-win_amd64.whl", hash = "sha256:9476e1f23161ae5159cd1548c50c8a37922e77d76583e247133f256ef7b825fc", size = 21299637 }, + { url = "https://files.pythonhosted.org/packages/6c/fc/edd41a3607241027aa4533e7f18e0cd647e74dde10a63274c65350f59967/netcdf4-1.7.4-cp311-abi3-win_arm64.whl", hash = "sha256:876ad9d58f09c98741c066c726164c45a098a58fb90e5fac9e74de4bb8a793fd", size = 2386377 }, + { url = "https://files.pythonhosted.org/packages/f1/3e/1e83534ba68459bc5ae39df46fa71003984df58aabf31f7dcd6e22ecddb0/netcdf4-1.7.4-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56688c03444fffe0d0c7512cb45245e650389cd841c955b30e4552fa681c4cd9", size = 10519821 }, + { url = "https://files.pythonhosted.org/packages/c0/8c/a15d6fe97f81d6d5202b17838a9a298b5955b3e9971e20609195112829b5/netcdf4-1.7.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7ecf471ba8a6ddb2200121949bedfa0095db228822f38227d5da680694a38358", size = 10371133 }, + { url = "https://files.pythonhosted.org/packages/d8/2b/684b15dd4791f8be295b2f6fa97377bbc07a768478a63b7d3c4951712e36/netcdf4-1.7.4-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a5841de0735e8e4875b367c668e81d334287858d64dd9f3e3e2261e808c84922", size = 10395635 }, + { url = "https://files.pythonhosted.org/packages/37/dc/44d21524cf1b1c64254f92e22395a7a10f70c18f3a13a18ac9db258760f7/netcdf4-1.7.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:86fac03a8c5b250d57866e7d98918a64742e4b0de1681c5c86bac5726bab8aee", size = 10237725 }, + { url = "https://files.pythonhosted.org/packages/d4/9d/c3ddf54296ad8f18f02f77f23452bdb0971aece1b87e84bab9d734bf72cc/netcdf4-1.7.4-cp314-cp314t-macosx_13_0_x86_64.whl", hash = "sha256:ad083d260301b5add74b1669c75ab0df03bdf986decfcc092cb45eec2615b5f1", size = 23515258 }, + { url = "https://files.pythonhosted.org/packages/dd/44/bc0346e995d436d03fab682b7fbd2a9adcf0db6a05790b8f24853bf08170/netcdf4-1.7.4-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:7f22014092cc9da3f056b0368e2e38c42afd5725c87ad4843eb2f467e16dd4f6", size = 22910171 }, + { url = "https://files.pythonhosted.org/packages/30/6b/f9bc3f43c55e2dac72ee9f98d77860789bdd5d50c29adf164a6bdb303078/netcdf4-1.7.4-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:224a15434c165a5e0225e5831f591edf62533044b1ce62fdfee815195bbd077d", size = 10567579 }, + { url = "https://files.pythonhosted.org/packages/6d/d5/e7685c66b7f011c73cd746127f986358a26c642a4e4a1aa5ab51481b6586/netcdf4-1.7.4-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:31a2318305de6831a18df25ad0df9f03b6d68666af0356d4f6057d66c02ffeb6", size = 10255032 }, + { url = "https://files.pythonhosted.org/packages/a6/14/7506738bb6c8bc373b01e5af8f3b727f83f4f496c6b108490ea2609dc2cf/netcdf4-1.7.4-cp314-cp314t-win_amd64.whl", hash = "sha256:6c4a0aa9446c3a616ef3be015b629dc6173643f8b09546de26a4e40e272cd1ed", size = 22289653 }, + { url = "https://files.pythonhosted.org/packages/af/2e/39d5e9179c543f2e6e149a65908f83afd9b6d64379a90789b323111761db/netcdf4-1.7.4-cp314-cp314t-win_arm64.whl", hash = "sha256:034220887d48da032cb2db5958f69759dbb04eb33e279ec6390571d4aea734fe", size = 2531682 }, +] + +[[package]] +name = "numcodecs" +version = "0.13.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/85/56/8895a76abe4ec94ebd01eeb6d74f587bc4cddd46569670e1402852a5da13/numcodecs-0.13.1.tar.gz", hash = "sha256:a3cf37881df0898f3a9c0d4477df88133fe85185bffe57ba31bcc2fa207709bc", size = 5955215 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f0/78/34b8e869ef143e88d62e8231f4dbfcad85e5c41302a11fc5bd2228a13df5/numcodecs-0.13.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2eda97dd2f90add98df6d295f2c6ae846043396e3d51a739ca5db6c03b5eb666", size = 1580199 }, + { url = "https://files.pythonhosted.org/packages/3b/cf/f70797d86bb585d258d1e6993dced30396f2044725b96ce8bcf87a02be9c/numcodecs-0.13.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2a86f5367af9168e30f99727ff03b27d849c31ad4522060dde0bce2923b3a8bc", size = 1177203 }, + { url = "https://files.pythonhosted.org/packages/a8/b5/d14ad69b63fde041153dfd05d7181a49c0d4864de31a7a1093c8370da957/numcodecs-0.13.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233bc7f26abce24d57e44ea8ebeb5cd17084690b4e7409dd470fdb75528d615f", size = 8868743 }, + { url = "https://files.pythonhosted.org/packages/13/d4/27a7b5af0b33f6d61e198faf177fbbf3cb83ff10d9d1a6857b7efc525ad5/numcodecs-0.13.1-cp311-cp311-win_amd64.whl", hash = "sha256:796b3e6740107e4fa624cc636248a1580138b3f1c579160f260f76ff13a4261b", size = 829603 }, + { url = "https://files.pythonhosted.org/packages/37/3a/bc09808425e7d3df41e5fc73fc7a802c429ba8c6b05e55f133654ade019d/numcodecs-0.13.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5195bea384a6428f8afcece793860b1ab0ae28143c853f0b2b20d55a8947c917", size = 1575806 }, + { url = "https://files.pythonhosted.org/packages/3a/cc/dc74d0bfdf9ec192332a089d199f1e543e747c556b5659118db7a437dcca/numcodecs-0.13.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3501a848adaddce98a71a262fee15cd3618312692aa419da77acd18af4a6a3f6", size = 1178233 }, + { url = "https://files.pythonhosted.org/packages/d4/ce/434e8e3970b8e92ae9ab6d9db16cb9bc7aa1cd02e17c11de6848224100a1/numcodecs-0.13.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2230484e6102e5fa3cc1a5dd37ca1f92dfbd183d91662074d6f7574e3e8f53", size = 8857827 }, + { url = "https://files.pythonhosted.org/packages/83/e7/1d8b1b266a92f9013c755b1c146c5ad71a2bff147ecbc67f86546a2e4d6a/numcodecs-0.13.1-cp312-cp312-win_amd64.whl", hash = "sha256:e5db4824ebd5389ea30e54bc8aeccb82d514d28b6b68da6c536b8fa4596f4bca", size = 826539 }, + { url = "https://files.pythonhosted.org/packages/83/8b/06771dead2cc4a8ae1ea9907737cf1c8d37a323392fa28f938a586373468/numcodecs-0.13.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7a60d75179fd6692e301ddfb3b266d51eb598606dcae7b9fc57f986e8d65cb43", size = 1571660 }, + { url = "https://files.pythonhosted.org/packages/f9/ea/d925bf85f92dfe4635356018da9fe4bfecb07b1c72f62b01c1bc47f936b1/numcodecs-0.13.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3f593c7506b0ab248961a3b13cb148cc6e8355662ff124ac591822310bc55ecf", size = 1169925 }, + { url = "https://files.pythonhosted.org/packages/0f/d6/643a3839d571d8e439a2c77dc4b0b8cab18d96ac808e4a81dbe88e959ab6/numcodecs-0.13.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80d3071465f03522e776a31045ddf2cfee7f52df468b977ed3afdd7fe5869701", size = 8814257 }, + { url = "https://files.pythonhosted.org/packages/a6/c5/f3e56bc9b4e438a287fff738993d6d11abef368c0328a612ac2842ba9fca/numcodecs-0.13.1-cp313-cp313-win_amd64.whl", hash = "sha256:90d3065ae74c9342048ae0046006f99dcb1388b7288da5a19b3bddf9c30c3176", size = 821887 }, +] + +[[package]] +name = "numexpr" +version = "2.14.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cb/2f/fdba158c9dbe5caca9c3eca3eaffffb251f2fb8674bf8e2d0aed5f38d319/numexpr-2.14.1.tar.gz", hash = "sha256:4be00b1086c7b7a5c32e31558122b7b80243fe098579b170967da83f3152b48b", size = 119400 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b2/a3/67999bdd1ed1f938d38f3fedd4969632f2f197b090e50505f7cc1fa82510/numexpr-2.14.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2d03fcb4644a12f70a14d74006f72662824da5b6128bf1bcd10cc3ed80e64c34", size = 163195 }, + { url = "https://files.pythonhosted.org/packages/25/95/d64f680ea1fc56d165457287e0851d6708800f9fcea346fc1b9957942ee6/numexpr-2.14.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2773ee1133f77009a1fc2f34fe236f3d9823779f5f75450e183137d49f00499f", size = 152088 }, + { url = "https://files.pythonhosted.org/packages/0e/7f/3bae417cb13ae08afd86d08bb0301c32440fe0cae4e6262b530e0819aeda/numexpr-2.14.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ebe4980f9494b9f94d10d2e526edc29e72516698d3bf95670ba79415492212a4", size = 451126 }, + { url = "https://files.pythonhosted.org/packages/4c/1a/edbe839109518364ac0bd9e918cf874c755bb2c128040e920f198c494263/numexpr-2.14.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2a381e5e919a745c9503bcefffc1c7f98c972c04ec58fc8e999ed1a929e01ba6", size = 442012 }, + { url = "https://files.pythonhosted.org/packages/66/b1/be4ce99bff769a5003baddac103f34681997b31d4640d5a75c0e8ed59c78/numexpr-2.14.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d08856cfc1b440eb1caaa60515235369654321995dd68eb9377577392020f6cb", size = 1415975 }, + { url = "https://files.pythonhosted.org/packages/e7/33/b33b8fdc032a05d9ebb44a51bfcd4b92c178a2572cd3e6c1b03d8a4b45b2/numexpr-2.14.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03130afa04edf83a7b590d207444f05a00363c9b9ea5d81c0f53b1ea13fad55a", size = 1464683 }, + { url = "https://files.pythonhosted.org/packages/d0/b2/ddcf0ac6cf0a1d605e5aecd4281507fd79a9628a67896795ab2e975de5df/numexpr-2.14.1-cp311-cp311-win32.whl", hash = "sha256:db78fa0c9fcbaded3ae7453faf060bd7a18b0dc10299d7fcd02d9362be1213ed", size = 166838 }, + { url = "https://files.pythonhosted.org/packages/64/72/4ca9bd97b2eb6dce9f5e70a3b6acec1a93e1fb9b079cb4cba2cdfbbf295d/numexpr-2.14.1-cp311-cp311-win_amd64.whl", hash = "sha256:e9b2f957798c67a2428be96b04bce85439bed05efe78eb78e4c2ca43737578e7", size = 160069 }, + { url = "https://files.pythonhosted.org/packages/9d/20/c473fc04a371f5e2f8c5749e04505c13e7a8ede27c09e9f099b2ad6f43d6/numexpr-2.14.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:91ebae0ab18c799b0e6b8c5a8d11e1fa3848eb4011271d99848b297468a39430", size = 162790 }, + { url = "https://files.pythonhosted.org/packages/45/93/b6760dd1904c2a498e5f43d1bb436f59383c3ddea3815f1461dfaa259373/numexpr-2.14.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:47041f2f7b9e69498fb311af672ba914a60e6e6d804011caacb17d66f639e659", size = 152196 }, + { url = "https://files.pythonhosted.org/packages/72/94/cc921e35593b820521e464cbbeaf8212bbdb07f16dc79fe283168df38195/numexpr-2.14.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d686dfb2c1382d9e6e0ee0b7647f943c1886dba3adbf606c625479f35f1956c1", size = 452468 }, + { url = "https://files.pythonhosted.org/packages/d9/43/560e9ba23c02c904b5934496486d061bcb14cd3ebba2e3cf0e2dccb6c22b/numexpr-2.14.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eee6d4fbbbc368e6cdd0772734d6249128d957b3b8ad47a100789009f4de7083", size = 443631 }, + { url = "https://files.pythonhosted.org/packages/7b/6c/78f83b6219f61c2c22d71ab6e6c2d4e5d7381334c6c29b77204e59edb039/numexpr-2.14.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3a2839efa25f3c8d4133252ea7342d8f81226c7c4dda81f97a57e090b9d87a48", size = 1417670 }, + { url = "https://files.pythonhosted.org/packages/0e/bb/1ccc9dcaf46281568ce769888bf16294c40e98a5158e4b16c241de31d0d3/numexpr-2.14.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:9f9137f1351b310436662b5dc6f4082a245efa8950c3b0d9008028df92fefb9b", size = 1466212 }, + { url = "https://files.pythonhosted.org/packages/31/9f/203d82b9e39dadd91d64bca55b3c8ca432e981b822468dcef41a4418626b/numexpr-2.14.1-cp312-cp312-win32.whl", hash = "sha256:36f8d5c1bd1355df93b43d766790f9046cccfc1e32b7c6163f75bcde682cda07", size = 166996 }, + { url = "https://files.pythonhosted.org/packages/1f/67/ffe750b5452eb66de788c34e7d21ec6d886abb4d7c43ad1dc88ceb3d998f/numexpr-2.14.1-cp312-cp312-win_amd64.whl", hash = "sha256:fdd886f4b7dbaf167633ee396478f0d0aa58ea2f9e7ccc3c6431019623e8d68f", size = 160187 }, + { url = "https://files.pythonhosted.org/packages/73/b4/9f6d637fd79df42be1be29ee7ba1f050fab63b7182cb922a0e08adc12320/numexpr-2.14.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:09078ba73cffe94745abfbcc2d81ab8b4b4e9d7bfbbde6cac2ee5dbf38eee222", size = 162794 }, + { url = "https://files.pythonhosted.org/packages/35/ae/d58558d8043de0c49f385ea2fa789e3cfe4d436c96be80200c5292f45f15/numexpr-2.14.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:dce0b5a0447baa7b44bc218ec2d7dcd175b8eee6083605293349c0c1d9b82fb6", size = 152203 }, + { url = "https://files.pythonhosted.org/packages/13/65/72b065f9c75baf8f474fd5d2b768350935989d4917db1c6c75b866d4067c/numexpr-2.14.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:06855053de7a3a8425429bd996e8ae3c50b57637ad3e757e0fa0602a7874be30", size = 455860 }, + { url = "https://files.pythonhosted.org/packages/fc/f9/c9457652dfe28e2eb898372da2fe786c6db81af9540c0f853ee04a0699cc/numexpr-2.14.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:05f9366d23a2e991fd5a8b5e61a17558f028ba86158a4552f8f239b005cdf83c", size = 446574 }, + { url = "https://files.pythonhosted.org/packages/b6/99/8d3879c4d67d3db5560cf2de65ce1778b80b75f6fa415eb5c3e7bd37ba27/numexpr-2.14.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c5f1b1605695778896534dfc6e130d54a65cd52be7ed2cd0cfee3981fd676bf5", size = 1417306 }, + { url = "https://files.pythonhosted.org/packages/ea/05/6bddac9f18598ba94281e27a6943093f7d0976544b0cb5d92272c64719bd/numexpr-2.14.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a4ba71db47ea99c659d88ee6233fa77b6dc83392f1d324e0c90ddf617ae3f421", size = 1466145 }, + { url = "https://files.pythonhosted.org/packages/24/5d/cbeb67aca0c5a76ead13df7e8bd8dd5e0d49145f90da697ba1d9f07005b0/numexpr-2.14.1-cp313-cp313-win32.whl", hash = "sha256:638dce8320f4a1483d5ca4fda69f60a70ed7e66be6e68bc23fb9f1a6b78a9e3b", size = 166996 }, + { url = "https://files.pythonhosted.org/packages/cc/23/9281bceaeb282cead95f0aa5f7f222ffc895670ea689cc1398355f6e3001/numexpr-2.14.1-cp313-cp313-win_amd64.whl", hash = "sha256:9fdcd4735121658a313f878fd31136d1bfc6a5b913219e7274e9fca9f8dac3bb", size = 160189 }, + { url = "https://files.pythonhosted.org/packages/f3/76/7aac965fd93a56803cbe502aee2adcad667253ae34b0badf6c5af7908b6c/numexpr-2.14.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:557887ad7f5d3c2a40fd7310e50597045a68e66b20a77b3f44d7bc7608523b4b", size = 163524 }, + { url = "https://files.pythonhosted.org/packages/58/65/79d592d5e63fbfab3b59a60c386853d9186a44a3fa3c87ba26bdc25b6195/numexpr-2.14.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:af111c8fe6fc55d15e4c7cab11920fc50740d913636d486545b080192cd0ad73", size = 152919 }, + { url = "https://files.pythonhosted.org/packages/84/78/3c8335f713d4aeb99fa758d7c62f0be1482d4947ce5b508e2052bb7aeee9/numexpr-2.14.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:33265294376e7e2ae4d264d75b798a915d2acf37b9dd2b9405e8b04f84d05cfc", size = 465972 }, + { url = "https://files.pythonhosted.org/packages/35/81/9ee5f69b811e8f18746c12d6f71848617684edd3161927f95eee7a305631/numexpr-2.14.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:83647d846d3eeeb9a9255311236135286728b398d0d41d35dedb532dca807fe9", size = 456953 }, + { url = "https://files.pythonhosted.org/packages/6d/39/9b8bc6e294d85cbb54a634e47b833e9f3276a8bdf7ce92aa808718a0212d/numexpr-2.14.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6e575fd3ad41ddf3355d0c7ef6bd0168619dc1779a98fe46693cad5e95d25e6e", size = 1426199 }, + { url = "https://files.pythonhosted.org/packages/1e/ce/0d4fcd31ab49319740d934fba1734d7dad13aa485532ca754e555ca16c8b/numexpr-2.14.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:67ea4771029ce818573b1998f5ca416bd255156feea017841b86176a938f7d19", size = 1474214 }, + { url = "https://files.pythonhosted.org/packages/b7/47/b2a93cbdb3ba4e009728ad1b9ef1550e2655ea2c86958ebaf03b9615f275/numexpr-2.14.1-cp313-cp313t-win32.whl", hash = "sha256:15015d47d3d1487072d58c0e7682ef2eb608321e14099c39d52e2dd689483611", size = 167676 }, + { url = "https://files.pythonhosted.org/packages/86/99/ee3accc589ed032eea68e12172515ed96a5568534c213ad109e1f4411df1/numexpr-2.14.1-cp313-cp313t-win_amd64.whl", hash = "sha256:94c711f6d8f17dfb4606842b403699603aa591ab9f6bf23038b488ea9cfb0f09", size = 161096 }, + { url = "https://files.pythonhosted.org/packages/ac/36/9db78dfbfdfa1f8bf0872993f1a334cdd8fca5a5b6567e47dcb128bcb7c2/numexpr-2.14.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ede79f7ff06629f599081de644546ce7324f1581c09b0ac174da88a470d39c21", size = 162848 }, + { url = "https://files.pythonhosted.org/packages/13/c1/a5c78ae637402c5550e2e0ba175275d2515d432ec28af0cdc23c9b476e65/numexpr-2.14.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2eac7a5a2f70b3768c67056445d1ceb4ecd9b853c8eda9563823b551aeaa5082", size = 152270 }, + { url = "https://files.pythonhosted.org/packages/9a/ed/aabd8678077848dd9a751c5558c2057839f5a09e2a176d8dfcd0850ee00e/numexpr-2.14.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5aedf38d4c0c19d3cecfe0334c3f4099fb496f54c146223d30fa930084bc8574", size = 455918 }, + { url = "https://files.pythonhosted.org/packages/88/e1/3db65117f02cdefb0e5e4c440daf1c30beb45051b7f47aded25b7f4f2f34/numexpr-2.14.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:439ec4d57b853792ebe5456e3160312281c3a7071ecac5532ded3278ede614de", size = 446512 }, + { url = "https://files.pythonhosted.org/packages/9a/fb/7ceb9ee55b5f67e4a3e4d73d5af4c7e37e3c9f37f54bee90361b64b17e3f/numexpr-2.14.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:e23b87f744e04e302d82ac5e2189ae20a533566aec76a46885376e20b0645bf8", size = 1417845 }, + { url = "https://files.pythonhosted.org/packages/45/2d/9b5764d0eafbbb2889288f80de773791358acf6fad1a55767538d8b79599/numexpr-2.14.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:44f84e0e5af219dbb62a081606156420815890e041b87252fbcea5df55214c4c", size = 1466211 }, + { url = "https://files.pythonhosted.org/packages/5d/21/204db708eccd71aa8bc55bcad55bc0fc6c5a4e01ad78e14ee5714a749386/numexpr-2.14.1-cp314-cp314-win32.whl", hash = "sha256:1f1a5e817c534539351aa75d26088e9e1e0ef1b3a6ab484047618a652ccc4fc3", size = 168835 }, + { url = "https://files.pythonhosted.org/packages/4f/3e/d83e9401a1c3449a124f7d4b3fb44084798e0d30f7c11e60712d9b94cf11/numexpr-2.14.1-cp314-cp314-win_amd64.whl", hash = "sha256:587c41509bc373dfb1fe6086ba55a73147297247bedb6d588cda69169fc412f2", size = 162608 }, + { url = "https://files.pythonhosted.org/packages/7f/d6/ec947806bb57836d6379a8c8a253c2aeaa602b12fef2336bfd2462bb4ed5/numexpr-2.14.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:ec368819502b64f190c3f71be14a304780b5935c42aae5bf22c27cc2cbba70b5", size = 163525 }, + { url = "https://files.pythonhosted.org/packages/0d/77/048f30dcf661a3d52963a88c29b52b6d5ce996d38e9313a56a922451c1e0/numexpr-2.14.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7e87f6d203ac57239de32261c941e9748f9309cbc0da6295eabd0c438b920d3a", size = 152917 }, + { url = "https://files.pythonhosted.org/packages/9e/d3/956a13e628d722d649fbf2fded615134a308c082e122a48bad0e90a99ce9/numexpr-2.14.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:dd72d8c2a165fe45ea7650b16eb8cc1792a94a722022006bb97c86fe51fd2091", size = 466242 }, + { url = "https://files.pythonhosted.org/packages/d6/dd/abe848678d82486940892f2cacf39e82eec790e8930d4d713d3f9191063b/numexpr-2.14.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70d80fcb418a54ca208e9a38e58ddc425c07f66485176b261d9a67c7f2864f73", size = 457149 }, + { url = "https://files.pythonhosted.org/packages/fd/bb/797b583b5fb9da5700a5708ca6eb4f889c94d81abb28de4d642c0f4b3258/numexpr-2.14.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:edea2f20c2040df8b54ee8ca8ebda63de9545b2112872466118e9df4d0ae99f3", size = 1426493 }, + { url = "https://files.pythonhosted.org/packages/77/c4/0519ab028fdc35e3e7ee700def7f2b4631b175cd9e1202bd7966c1695c33/numexpr-2.14.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:790447be6879a6c51b9545f79612d24c9ea0a41d537a84e15e6a8ddef0b6268e", size = 1474413 }, + { url = "https://files.pythonhosted.org/packages/d4/4a/33044878c8f4a75213cfe9c11d4c02058bb710a7a063fe14f362e8de1077/numexpr-2.14.1-cp314-cp314t-win32.whl", hash = "sha256:538961096c2300ea44240209181e31fae82759d26b51713b589332b9f2a4117e", size = 169502 }, + { url = "https://files.pythonhosted.org/packages/41/a2/5a1a2c72528b429337f49911b18c302ecd36eeab00f409147e1aa4ae4519/numexpr-2.14.1-cp314-cp314t-win_amd64.whl", hash = "sha256:a40b350cd45b4446076fa11843fa32bbe07024747aeddf6d467290bf9011b392", size = 163589 }, +] + +[[package]] +name = "numpy" +version = "1.23.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/42/38/775b43da55fa7473015eddc9a819571517d9a271a9f8134f68fb9be2f212/numpy-1.23.5.tar.gz", hash = "sha256:1b1766d6f397c18153d40015ddfc79ddb715cabadc04d2d228d4e5a8bc4ded1a", size = 10731755 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6e/7f/94797cfe0263a30805f3074e535adfde02b885ac43d1e4dac85f82213b0b/numpy-1.23.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ce571367b6dfe60af04e04a1834ca2dc5f46004ac1cc756fb95319f64c095a96", size = 18089545 }, + { url = "https://files.pythonhosted.org/packages/b8/d0/e6a2cb9a3f3e863a43e50949e9ae704be70baf398fd5af59355f65c8740a/numpy-1.23.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:56e454c7833e94ec9769fa0f86e6ff8e42ee38ce0ce1fa4cbb747ea7e06d56aa", size = 13323710 }, + { url = "https://files.pythonhosted.org/packages/2b/1a/9ac00116d3a64b5ea031fdb2ff071062a6e2140553fa0770b5f007b84252/numpy-1.23.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5039f55555e1eab31124a5768898c9e22c25a65c1e0037f4d7c495a45778c9f2", size = 13941957 }, + { url = "https://files.pythonhosted.org/packages/e8/ad/b935c7421657a032fd2a5332eed098f3b9993a155afceb1daa280ff6611f/numpy-1.23.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58f545efd1108e647604a1b5aa809591ccd2540f468a880bedb97247e72db387", size = 17056806 }, + { url = "https://files.pythonhosted.org/packages/9b/55/a2669debe264b1f22a8133734595128e40b96a8066e17e53e8d160168e41/numpy-1.23.5-cp311-cp311-win32.whl", hash = "sha256:b2a9ab7c279c91974f756c84c365a669a887efa287365a8e2c418f8b3ba73fb0", size = 12190498 }, + { url = "https://files.pythonhosted.org/packages/19/0d/b8c34e4baf258d77a8592bdce45183e9a12874c167f5966c7dd467b74ea9/numpy-1.23.5-cp311-cp311-win_amd64.whl", hash = "sha256:0cbe9848fad08baf71de1a39e12d1b6310f1d5b2d0ea4de051058e6e1076852d", size = 14638838 }, +] + +[[package]] +name = "oauthlib" +version = "3.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/5f/19930f824ffeb0ad4372da4812c50edbd1434f678c90c2733e1188edfc63/oauthlib-3.3.1.tar.gz", hash = "sha256:0f0f8aa759826a193cf66c12ea1af1637f87b9b4622d46e866952bb022e538c9", size = 185918 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/be/9c/92789c596b8df838baa98fa71844d84283302f7604ed565dafe5a6b5041a/oauthlib-3.3.1-py3-none-any.whl", hash = "sha256:88119c938d2b8fb88561af5f6ee0eec8cc8d552b7bb1f712743136eb7523b7a1", size = 160065 }, +] + +[[package]] +name = "ocf-blosc2" +version = "0.0.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "blosc2" }, + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d0/3b/adef39a83d0855d18b3435e984fbfde7de2a5af352bf617aad2d5dedfb7e/ocf_blosc2-0.0.2.tar.gz", hash = "sha256:458e1ab1f4e737288734971b679d5867be4da216d62451e5c60c44eb8f9292cd", size = 2582 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/38/1cbc25ba8607f78affc534e0d59a73c25308f6c0a19a9a4123be07174713/ocf_blosc2-0.0.2-py3-none-any.whl", hash = "sha256:8ceb344015bff2185223adf2e5fe99caa6b172de10704e94e7dc9f510534da0f", size = 2921 }, +] + +[[package]] +name = "ocf-vrmapi" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f1/80/a348cc9d2a1602020d2caebdf6830b317c64ec206d9a4a646f557d0df6da/ocf_vrmapi-0.1.4.tar.gz", hash = "sha256:712edc7d5fad0e4436605ccb87ede659e25b99459adace20053707336f100748", size = 6772 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f5/77/d2916f51b07466d905b5369dec45ce8600cde7c2c33473d144f9ec587f69/ocf_vrmapi-0.1.4-py3-none-any.whl", hash = "sha256:0fe723cd107aee5fa968f271ab66aeb52aaeeab406546dad6151344d962ca73f", size = 6650 }, +] + +[[package]] +name = "openmeteo-requests" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "openmeteo-sdk" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e2/d7/2cda726a3bebe59aefed19ebc0720b9f0375defd94e386b031733447d2b8/openmeteo_requests-1.2.0.tar.gz", hash = "sha256:bfb8b47b307994ea82182a6b9b6dd288a64942d6d252c48ea8edccd171e272ba", size = 59948 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c8/01/b2dae93c5af92a95c3a744b808979c32766bc4eabdef87c2ab0cc0f57c27/openmeteo_requests-1.2.0-py3-none-any.whl", hash = "sha256:2ade77e3caa6cd7e4f42d360d9df3e26baed7735d31aa665a91ae1c81abea0c5", size = 5496 }, +] + +[[package]] +name = "openmeteo-sdk" +version = "1.25.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "flatbuffers" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a0/a0/b47f3fe6a23b208353a1a180b499810129b5f9ff889b8f4af0ad11f8841b/openmeteo_sdk-1.25.0.tar.gz", hash = "sha256:a2225e5fb8e92b5493f60d926ff57cb8bc6cbeacad4b94dc436f537d468b5414", size = 12189 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/73/0aad591d31f8645bea7704d5124eaac98d34700745d176a8c207eecc61e4/openmeteo_sdk-1.25.0-py3-none-any.whl", hash = "sha256:619ba5a9fc214360662a8b5d8ee20f261a6246c5a224b88f0dc7ac6ac7eb8902", size = 19187 }, +] + +[[package]] +name = "packaging" +version = "26.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/65/ee/299d360cdc32edc7d2cf530f3accf79c4fca01e96ffc950d8a52213bd8e4/packaging-26.0.tar.gz", hash = "sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4", size = 143416 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366 }, +] + +[[package]] +name = "pandas" +version = "2.1.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.13' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "(python_full_version >= '3.13' and platform_machine != 'ARM64') or (python_full_version >= '3.13' and sys_platform != 'win32')", + "(python_full_version == '3.12.*' and platform_machine != 'ARM64') or (python_full_version == '3.12.*' and sys_platform != 'win32')", +] +dependencies = [ + { name = "numpy", marker = "python_full_version >= '3.12'" }, + { name = "python-dateutil", marker = "python_full_version >= '3.12'" }, + { name = "pytz", marker = "python_full_version >= '3.12'" }, + { name = "tzdata", marker = "python_full_version >= '3.12'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6f/31/a4a8e7367856d9584d0332793edfe631182a9cca885f12dbe2dd77c10c4a/pandas-2.1.0.tar.gz", hash = "sha256:62c24c7fc59e42b775ce0679cfa7b14a5f9bfb7643cfbe708c960699e05fb918", size = 4263970 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c3/05/c5c73d54ceb7d5e4b8c046d39a1bb7f38ee76ea556a002cf3317514f0196/pandas-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cda72cc8c4761c8f1d97b169661f23a86b16fdb240bdc341173aee17e4d6cedd", size = 12015015 }, + { url = "https://files.pythonhosted.org/packages/e5/cd/c941b51e95992968e3e8abc7180f33b952478abd6943062051517a808db7/pandas-2.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d97daeac0db8c993420b10da4f5f5b39b01fc9ca689a17844e07c0a35ac96b4b", size = 11173830 }, + { url = "https://files.pythonhosted.org/packages/e2/25/bfb5c7573e2b884b18e5ea993ee7aeb5a6915ea687174349fdc5f979ceec/pandas-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8c58b1113892e0c8078f006a167cc210a92bdae23322bb4614f2f0b7a4b510f", size = 15176284 }, + { url = "https://files.pythonhosted.org/packages/d9/26/895a49ebddb4211f2d777150f38ef9e538deff6df7e179a3624c663efc98/pandas-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:629124923bcf798965b054a540f9ccdfd60f71361255c81fa1ecd94a904b9dd3", size = 12630840 }, + { url = "https://files.pythonhosted.org/packages/bc/ad/d1f0a867064f62ffde917876cc09cfd53352af2b1f147c140fd1943a0c7a/pandas-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:70cf866af3ab346a10debba8ea78077cf3a8cd14bd5e4bed3d41555a3280041c", size = 13463414 }, + { url = "https://files.pythonhosted.org/packages/b7/f8/32d6b5aa4c4bc045fa2c4c58f88c325facc54721956c6313f0afea8ea853/pandas-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:d53c8c1001f6a192ff1de1efe03b31a423d0eee2e9e855e69d004308e046e694", size = 11043589 }, +] + +[[package]] +name = "pandas" +version = "2.3.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.12' and platform_machine == 'ARM64' and sys_platform == 'win32'", + "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')", +] +dependencies = [ + { name = "numpy", marker = "python_full_version < '3.12'" }, + { name = "python-dateutil", marker = "python_full_version < '3.12'" }, + { name = "pytz", marker = "python_full_version < '3.12'" }, + { name = "tzdata", marker = "python_full_version < '3.12'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/33/01/d40b85317f86cf08d853a4f495195c73815fdf205eef3993821720274518/pandas-2.3.3.tar.gz", hash = "sha256:e05e1af93b977f7eafa636d043f9f94c7ee3ac81af99c13508215942e64c993b", size = 4495223 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/fa/7ac648108144a095b4fb6aa3de1954689f7af60a14cf25583f4960ecb878/pandas-2.3.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:602b8615ebcc4a0c1751e71840428ddebeb142ec02c786e8ad6b1ce3c8dec523", size = 11578790 }, + { url = "https://files.pythonhosted.org/packages/9b/35/74442388c6cf008882d4d4bdfc4109be87e9b8b7ccd097ad1e7f006e2e95/pandas-2.3.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8fe25fc7b623b0ef6b5009149627e34d2a4657e880948ec3c840e9402e5c1b45", size = 10833831 }, + { url = "https://files.pythonhosted.org/packages/fe/e4/de154cbfeee13383ad58d23017da99390b91d73f8c11856f2095e813201b/pandas-2.3.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b468d3dad6ff947df92dcb32ede5b7bd41a9b3cceef0a30ed925f6d01fb8fa66", size = 12199267 }, + { url = "https://files.pythonhosted.org/packages/bf/c9/63f8d545568d9ab91476b1818b4741f521646cbdd151c6efebf40d6de6f7/pandas-2.3.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b98560e98cb334799c0b07ca7967ac361a47326e9b4e5a7dfb5ab2b1c9d35a1b", size = 12789281 }, + { url = "https://files.pythonhosted.org/packages/f2/00/a5ac8c7a0e67fd1a6059e40aa08fa1c52cc00709077d2300e210c3ce0322/pandas-2.3.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1d37b5848ba49824e5c30bedb9c830ab9b7751fd049bc7914533e01c65f79791", size = 13240453 }, + { url = "https://files.pythonhosted.org/packages/27/4d/5c23a5bc7bd209231618dd9e606ce076272c9bc4f12023a70e03a86b4067/pandas-2.3.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:db4301b2d1f926ae677a751eb2bd0e8c5f5319c9cb3f88b0becbbb0b07b34151", size = 13890361 }, + { url = "https://files.pythonhosted.org/packages/8e/59/712db1d7040520de7a4965df15b774348980e6df45c129b8c64d0dbe74ef/pandas-2.3.3-cp311-cp311-win_amd64.whl", hash = "sha256:f086f6fe114e19d92014a1966f43a3e62285109afe874f067f5abbdcbb10e59c", size = 11348702 }, + { url = "https://files.pythonhosted.org/packages/9c/fb/231d89e8637c808b997d172b18e9d4a4bc7bf31296196c260526055d1ea0/pandas-2.3.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6d21f6d74eb1725c2efaa71a2bfc661a0689579b58e9c0ca58a739ff0b002b53", size = 11597846 }, + { url = "https://files.pythonhosted.org/packages/5c/bd/bf8064d9cfa214294356c2d6702b716d3cf3bb24be59287a6a21e24cae6b/pandas-2.3.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3fd2f887589c7aa868e02632612ba39acb0b8948faf5cc58f0850e165bd46f35", size = 10729618 }, + { url = "https://files.pythonhosted.org/packages/57/56/cf2dbe1a3f5271370669475ead12ce77c61726ffd19a35546e31aa8edf4e/pandas-2.3.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ecaf1e12bdc03c86ad4a7ea848d66c685cb6851d807a26aa245ca3d2017a1908", size = 11737212 }, + { url = "https://files.pythonhosted.org/packages/e5/63/cd7d615331b328e287d8233ba9fdf191a9c2d11b6af0c7a59cfcec23de68/pandas-2.3.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b3d11d2fda7eb164ef27ffc14b4fcab16a80e1ce67e9f57e19ec0afaf715ba89", size = 12362693 }, + { url = "https://files.pythonhosted.org/packages/a6/de/8b1895b107277d52f2b42d3a6806e69cfef0d5cf1d0ba343470b9d8e0a04/pandas-2.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a68e15f780eddf2b07d242e17a04aa187a7ee12b40b930bfdd78070556550e98", size = 12771002 }, + { url = "https://files.pythonhosted.org/packages/87/21/84072af3187a677c5893b170ba2c8fbe450a6ff911234916da889b698220/pandas-2.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:371a4ab48e950033bcf52b6527eccb564f52dc826c02afd9a1bc0ab731bba084", size = 13450971 }, + { url = "https://files.pythonhosted.org/packages/86/41/585a168330ff063014880a80d744219dbf1dd7a1c706e75ab3425a987384/pandas-2.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:a16dcec078a01eeef8ee61bf64074b4e524a2a3f4b3be9326420cabe59c4778b", size = 10992722 }, + { url = "https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:56851a737e3470de7fa88e6131f41281ed440d29a9268dcbf0002da5ac366713", size = 11544671 }, + { url = "https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:bdcd9d1167f4885211e401b3036c0c8d9e274eee67ea8d0758a256d60704cfe8", size = 10680807 }, + { url = "https://files.pythonhosted.org/packages/16/87/9472cf4a487d848476865321de18cc8c920b8cab98453ab79dbbc98db63a/pandas-2.3.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e32e7cc9af0f1cc15548288a51a3b681cc2a219faa838e995f7dc53dbab1062d", size = 11709872 }, + { url = "https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:318d77e0e42a628c04dc56bcef4b40de67918f7041c2b061af1da41dcff670ac", size = 12306371 }, + { url = "https://files.pythonhosted.org/packages/33/81/a3afc88fca4aa925804a27d2676d22dcd2031c2ebe08aabd0ae55b9ff282/pandas-2.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4e0a175408804d566144e170d0476b15d78458795bb18f1304fb94160cabf40c", size = 12765333 }, + { url = "https://files.pythonhosted.org/packages/8d/0f/b4d4ae743a83742f1153464cf1a8ecfafc3ac59722a0b5c8602310cb7158/pandas-2.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:93c2d9ab0fc11822b5eece72ec9587e172f63cff87c00b062f6e37448ced4493", size = 13418120 }, + { url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee", size = 10993991 }, + { url = "https://files.pythonhosted.org/packages/f9/ca/3f8d4f49740799189e1395812f3bf23b5e8fc7c190827d55a610da72ce55/pandas-2.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:75ea25f9529fdec2d2e93a42c523962261e567d250b0013b16210e1d40d7c2e5", size = 12048227 }, + { url = "https://files.pythonhosted.org/packages/0e/5a/f43efec3e8c0cc92c4663ccad372dbdff72b60bdb56b2749f04aa1d07d7e/pandas-2.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:74ecdf1d301e812db96a465a525952f4dde225fdb6d8e5a521d47e1f42041e21", size = 11411056 }, + { url = "https://files.pythonhosted.org/packages/46/b1/85331edfc591208c9d1a63a06baa67b21d332e63b7a591a5ba42a10bb507/pandas-2.3.3-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6435cb949cb34ec11cc9860246ccb2fdc9ecd742c12d3304989017d53f039a78", size = 11645189 }, + { url = "https://files.pythonhosted.org/packages/44/23/78d645adc35d94d1ac4f2a3c4112ab6f5b8999f4898b8cdf01252f8df4a9/pandas-2.3.3-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:900f47d8f20860de523a1ac881c4c36d65efcb2eb850e6948140fa781736e110", size = 12121912 }, + { url = "https://files.pythonhosted.org/packages/53/da/d10013df5e6aaef6b425aa0c32e1fc1f3e431e4bcabd420517dceadce354/pandas-2.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a45c765238e2ed7d7c608fc5bc4a6f88b642f2f01e70c0c23d2224dd21829d86", size = 12712160 }, + { url = "https://files.pythonhosted.org/packages/bd/17/e756653095a083d8a37cbd816cb87148debcfcd920129b25f99dd8d04271/pandas-2.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c4fc4c21971a1a9f4bdb4c73978c7f7256caa3e62b323f70d6cb80db583350bc", size = 13199233 }, + { url = "https://files.pythonhosted.org/packages/04/fd/74903979833db8390b73b3a8a7d30d146d710bd32703724dd9083950386f/pandas-2.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ee15f284898e7b246df8087fc82b87b01686f98ee67d85a17b7ab44143a3a9a0", size = 11540635 }, + { url = "https://files.pythonhosted.org/packages/21/00/266d6b357ad5e6d3ad55093a7e8efc7dd245f5a842b584db9f30b0f0a287/pandas-2.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1611aedd912e1ff81ff41c745822980c49ce4a7907537be8692c8dbc31924593", size = 10759079 }, + { url = "https://files.pythonhosted.org/packages/ca/05/d01ef80a7a3a12b2f8bbf16daba1e17c98a2f039cbc8e2f77a2c5a63d382/pandas-2.3.3-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6d2cefc361461662ac48810cb14365a365ce864afe85ef1f447ff5a1e99ea81c", size = 11814049 }, + { url = "https://files.pythonhosted.org/packages/15/b2/0e62f78c0c5ba7e3d2c5945a82456f4fac76c480940f805e0b97fcbc2f65/pandas-2.3.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ee67acbbf05014ea6c763beb097e03cd629961c8a632075eeb34247120abcb4b", size = 12332638 }, + { url = "https://files.pythonhosted.org/packages/c5/33/dd70400631b62b9b29c3c93d2feee1d0964dc2bae2e5ad7a6c73a7f25325/pandas-2.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c46467899aaa4da076d5abc11084634e2d197e9460643dd455ac3db5856b24d6", size = 12886834 }, + { url = "https://files.pythonhosted.org/packages/d3/18/b5d48f55821228d0d2692b34fd5034bb185e854bdb592e9c640f6290e012/pandas-2.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6253c72c6a1d990a410bc7de641d34053364ef8bcd3126f7e7450125887dffe3", size = 13409925 }, + { url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5", size = 11109071 }, + { url = "https://files.pythonhosted.org/packages/89/9c/0e21c895c38a157e0faa1fb64587a9226d6dd46452cac4532d80c3c4a244/pandas-2.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2462b1a365b6109d275250baaae7b760fd25c726aaca0054649286bcfbb3e8ec", size = 12048504 }, + { url = "https://files.pythonhosted.org/packages/d7/82/b69a1c95df796858777b68fbe6a81d37443a33319761d7c652ce77797475/pandas-2.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:0242fe9a49aa8b4d78a4fa03acb397a58833ef6199e9aa40a95f027bb3a1b6e7", size = 11410702 }, + { url = "https://files.pythonhosted.org/packages/f9/88/702bde3ba0a94b8c73a0181e05144b10f13f29ebfc2150c3a79062a8195d/pandas-2.3.3-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a21d830e78df0a515db2b3d2f5570610f5e6bd2e27749770e8bb7b524b89b450", size = 11634535 }, + { url = "https://files.pythonhosted.org/packages/a4/1e/1bac1a839d12e6a82ec6cb40cda2edde64a2013a66963293696bbf31fbbb/pandas-2.3.3-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2e3ebdb170b5ef78f19bfb71b0dc5dc58775032361fa188e814959b74d726dd5", size = 12121582 }, + { url = "https://files.pythonhosted.org/packages/44/91/483de934193e12a3b1d6ae7c8645d083ff88dec75f46e827562f1e4b4da6/pandas-2.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:d051c0e065b94b7a3cea50eb1ec32e912cd96dba41647eb24104b6c6c14c5788", size = 12699963 }, + { url = "https://files.pythonhosted.org/packages/70/44/5191d2e4026f86a2a109053e194d3ba7a31a2d10a9c2348368c63ed4e85a/pandas-2.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3869faf4bd07b3b66a9f462417d0ca3a9df29a9f6abd5d0d0dbab15dac7abe87", size = 13202175 }, +] + +[[package]] +name = "partd" +version = "1.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "locket" }, + { name = "toolz" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b2/3a/3f06f34820a31257ddcabdfafc2672c5816be79c7e353b02c1f318daa7d4/partd-1.4.2.tar.gz", hash = "sha256:d022c33afbdc8405c226621b015e8067888173d85f7f5ecebb3cafed9a20f02c", size = 21029 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/e7/40fb618334dcdf7c5a316c0e7343c5cd82d3d866edc100d98e29bc945ecd/partd-1.4.2-py3-none-any.whl", hash = "sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f", size = 18905 }, +] + +[[package]] +name = "pillow" +version = "12.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/02/d52c733a2452ef1ffcc123b68e6606d07276b0e358db70eabad7e40042b7/pillow-12.1.0.tar.gz", hash = "sha256:5c5ae0a06e9ea030ab786b0251b32c7e4ce10e58d983c0d5c56029455180b5b9", size = 46977283 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/43/c4/bf8328039de6cc22182c3ef007a2abfbbdab153661c0a9aa78af8d706391/pillow-12.1.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:a83e0850cb8f5ac975291ebfc4170ba481f41a28065277f7f735c202cd8e0af3", size = 5304057 }, + { url = "https://files.pythonhosted.org/packages/43/06/7264c0597e676104cc22ca73ee48f752767cd4b1fe084662620b17e10120/pillow-12.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b6e53e82ec2db0717eabb276aa56cf4e500c9a7cec2c2e189b55c24f65a3e8c0", size = 4657811 }, + { url = "https://files.pythonhosted.org/packages/72/64/f9189e44474610daf83da31145fa56710b627b5c4c0b9c235e34058f6b31/pillow-12.1.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:40a8e3b9e8773876d6e30daed22f016509e3987bab61b3b7fe309d7019a87451", size = 6232243 }, + { url = "https://files.pythonhosted.org/packages/ef/30/0df458009be6a4caca4ca2c52975e6275c387d4e5c95544e34138b41dc86/pillow-12.1.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:800429ac32c9b72909c671aaf17ecd13110f823ddb7db4dfef412a5587c2c24e", size = 8037872 }, + { url = "https://files.pythonhosted.org/packages/e4/86/95845d4eda4f4f9557e25381d70876aa213560243ac1a6d619c46caaedd9/pillow-12.1.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0b022eaaf709541b391ee069f0022ee5b36c709df71986e3f7be312e46f42c84", size = 6345398 }, + { url = "https://files.pythonhosted.org/packages/5c/1f/8e66ab9be3aaf1435bc03edd1ebdf58ffcd17f7349c1d970cafe87af27d9/pillow-12.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f345e7bc9d7f368887c712aa5054558bad44d2a301ddf9248599f4161abc7c0", size = 7034667 }, + { url = "https://files.pythonhosted.org/packages/f9/f6/683b83cb9b1db1fb52b87951b1c0b99bdcfceaa75febf11406c19f82cb5e/pillow-12.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d70347c8a5b7ccd803ec0c85c8709f036e6348f1e6a5bf048ecd9c64d3550b8b", size = 6458743 }, + { url = "https://files.pythonhosted.org/packages/9a/7d/de833d63622538c1d58ce5395e7c6cb7e7dce80decdd8bde4a484e095d9f/pillow-12.1.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1fcc52d86ce7a34fd17cb04e87cfdb164648a3662a6f20565910a99653d66c18", size = 7159342 }, + { url = "https://files.pythonhosted.org/packages/8c/40/50d86571c9e5868c42b81fe7da0c76ca26373f3b95a8dd675425f4a92ec1/pillow-12.1.0-cp311-cp311-win32.whl", hash = "sha256:3ffaa2f0659e2f740473bcf03c702c39a8d4b2b7ffc629052028764324842c64", size = 6328655 }, + { url = "https://files.pythonhosted.org/packages/6c/af/b1d7e301c4cd26cd45d4af884d9ee9b6fab893b0ad2450d4746d74a6968c/pillow-12.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:806f3987ffe10e867bab0ddad45df1148a2b98221798457fa097ad85d6e8bc75", size = 7031469 }, + { url = "https://files.pythonhosted.org/packages/48/36/d5716586d887fb2a810a4a61518a327a1e21c8b7134c89283af272efe84b/pillow-12.1.0-cp311-cp311-win_arm64.whl", hash = "sha256:9f5fefaca968e700ad1a4a9de98bf0869a94e397fe3524c4c9450c1445252304", size = 2452515 }, + { url = "https://files.pythonhosted.org/packages/20/31/dc53fe21a2f2996e1b7d92bf671cdb157079385183ef7c1ae08b485db510/pillow-12.1.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a332ac4ccb84b6dde65dbace8431f3af08874bf9770719d32a635c4ef411b18b", size = 5262642 }, + { url = "https://files.pythonhosted.org/packages/ab/c1/10e45ac9cc79419cedf5121b42dcca5a50ad2b601fa080f58c22fb27626e/pillow-12.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:907bfa8a9cb790748a9aa4513e37c88c59660da3bcfffbd24a7d9e6abf224551", size = 4657464 }, + { url = "https://files.pythonhosted.org/packages/ad/26/7b82c0ab7ef40ebede7a97c72d473bda5950f609f8e0c77b04af574a0ddb/pillow-12.1.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:efdc140e7b63b8f739d09a99033aa430accce485ff78e6d311973a67b6bf3208", size = 6234878 }, + { url = "https://files.pythonhosted.org/packages/76/25/27abc9792615b5e886ca9411ba6637b675f1b77af3104710ac7353fe5605/pillow-12.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bef9768cab184e7ae6e559c032e95ba8d07b3023c289f79a2bd36e8bf85605a5", size = 8044868 }, + { url = "https://files.pythonhosted.org/packages/0a/ea/f200a4c36d836100e7bc738fc48cd963d3ba6372ebc8298a889e0cfc3359/pillow-12.1.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:742aea052cf5ab5034a53c3846165bc3ce88d7c38e954120db0ab867ca242661", size = 6349468 }, + { url = "https://files.pythonhosted.org/packages/11/8f/48d0b77ab2200374c66d344459b8958c86693be99526450e7aee714e03e4/pillow-12.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a6dfc2af5b082b635af6e08e0d1f9f1c4e04d17d4e2ca0ef96131e85eda6eb17", size = 7041518 }, + { url = "https://files.pythonhosted.org/packages/1d/23/c281182eb986b5d31f0a76d2a2c8cd41722d6fb8ed07521e802f9bba52de/pillow-12.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:609e89d9f90b581c8d16358c9087df76024cf058fa693dd3e1e1620823f39670", size = 6462829 }, + { url = "https://files.pythonhosted.org/packages/25/ef/7018273e0faac099d7b00982abdcc39142ae6f3bd9ceb06de09779c4a9d6/pillow-12.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:43b4899cfd091a9693a1278c4982f3e50f7fb7cff5153b05174b4afc9593b616", size = 7166756 }, + { url = "https://files.pythonhosted.org/packages/8f/c8/993d4b7ab2e341fe02ceef9576afcf5830cdec640be2ac5bee1820d693d4/pillow-12.1.0-cp312-cp312-win32.whl", hash = "sha256:aa0c9cc0b82b14766a99fbe6084409972266e82f459821cd26997a488a7261a7", size = 6328770 }, + { url = "https://files.pythonhosted.org/packages/a7/87/90b358775a3f02765d87655237229ba64a997b87efa8ccaca7dd3e36e7a7/pillow-12.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:d70534cea9e7966169ad29a903b99fc507e932069a881d0965a1a84bb57f6c6d", size = 7033406 }, + { url = "https://files.pythonhosted.org/packages/5d/cf/881b457eccacac9e5b2ddd97d5071fb6d668307c57cbf4e3b5278e06e536/pillow-12.1.0-cp312-cp312-win_arm64.whl", hash = "sha256:65b80c1ee7e14a87d6a068dd3b0aea268ffcabfe0498d38661b00c5b4b22e74c", size = 2452612 }, + { url = "https://files.pythonhosted.org/packages/dd/c7/2530a4aa28248623e9d7f27316b42e27c32ec410f695929696f2e0e4a778/pillow-12.1.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:7b5dd7cbae20285cdb597b10eb5a2c13aa9de6cde9bb64a3c1317427b1db1ae1", size = 4062543 }, + { url = "https://files.pythonhosted.org/packages/8f/1f/40b8eae823dc1519b87d53c30ed9ef085506b05281d313031755c1705f73/pillow-12.1.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:29a4cef9cb672363926f0470afc516dbf7305a14d8c54f7abbb5c199cd8f8179", size = 4138373 }, + { url = "https://files.pythonhosted.org/packages/d4/77/6fa60634cf06e52139fd0e89e5bbf055e8166c691c42fb162818b7fda31d/pillow-12.1.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:681088909d7e8fa9e31b9799aaa59ba5234c58e5e4f1951b4c4d1082a2e980e0", size = 3601241 }, + { url = "https://files.pythonhosted.org/packages/4f/bf/28ab865de622e14b747f0cd7877510848252d950e43002e224fb1c9ababf/pillow-12.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:983976c2ab753166dc66d36af6e8ec15bb511e4a25856e2227e5f7e00a160587", size = 5262410 }, + { url = "https://files.pythonhosted.org/packages/1c/34/583420a1b55e715937a85bd48c5c0991598247a1fd2eb5423188e765ea02/pillow-12.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:db44d5c160a90df2d24a24760bbd37607d53da0b34fb546c4c232af7192298ac", size = 4657312 }, + { url = "https://files.pythonhosted.org/packages/1d/fd/f5a0896839762885b3376ff04878f86ab2b097c2f9a9cdccf4eda8ba8dc0/pillow-12.1.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6b7a9d1db5dad90e2991645874f708e87d9a3c370c243c2d7684d28f7e133e6b", size = 6232605 }, + { url = "https://files.pythonhosted.org/packages/98/aa/938a09d127ac1e70e6ed467bd03834350b33ef646b31edb7452d5de43792/pillow-12.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6258f3260986990ba2fa8a874f8b6e808cf5abb51a94015ca3dc3c68aa4f30ea", size = 8041617 }, + { url = "https://files.pythonhosted.org/packages/17/e8/538b24cb426ac0186e03f80f78bc8dc7246c667f58b540bdd57c71c9f79d/pillow-12.1.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e115c15e3bc727b1ca3e641a909f77f8ca72a64fff150f666fcc85e57701c26c", size = 6346509 }, + { url = "https://files.pythonhosted.org/packages/01/9a/632e58ec89a32738cabfd9ec418f0e9898a2b4719afc581f07c04a05e3c9/pillow-12.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6741e6f3074a35e47c77b23a4e4f2d90db3ed905cb1c5e6e0d49bff2045632bc", size = 7038117 }, + { url = "https://files.pythonhosted.org/packages/c7/a2/d40308cf86eada842ca1f3ffa45d0ca0df7e4ab33c83f81e73f5eaed136d/pillow-12.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:935b9d1aed48fcfb3f838caac506f38e29621b44ccc4f8a64d575cb1b2a88644", size = 6460151 }, + { url = "https://files.pythonhosted.org/packages/f1/88/f5b058ad6453a085c5266660a1417bdad590199da1b32fb4efcff9d33b05/pillow-12.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5fee4c04aad8932da9f8f710af2c1a15a83582cfb884152a9caa79d4efcdbf9c", size = 7164534 }, + { url = "https://files.pythonhosted.org/packages/19/ce/c17334caea1db789163b5d855a5735e47995b0b5dc8745e9a3605d5f24c0/pillow-12.1.0-cp313-cp313-win32.whl", hash = "sha256:a786bf667724d84aa29b5db1c61b7bfdde380202aaca12c3461afd6b71743171", size = 6332551 }, + { url = "https://files.pythonhosted.org/packages/e5/07/74a9d941fa45c90a0d9465098fe1ec85de3e2afbdc15cc4766622d516056/pillow-12.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:461f9dfdafa394c59cd6d818bdfdbab4028b83b02caadaff0ffd433faf4c9a7a", size = 7040087 }, + { url = "https://files.pythonhosted.org/packages/88/09/c99950c075a0e9053d8e880595926302575bc742b1b47fe1bbcc8d388d50/pillow-12.1.0-cp313-cp313-win_arm64.whl", hash = "sha256:9212d6b86917a2300669511ed094a9406888362e085f2431a7da985a6b124f45", size = 2452470 }, + { url = "https://files.pythonhosted.org/packages/b5/ba/970b7d85ba01f348dee4d65412476321d40ee04dcb51cd3735b9dc94eb58/pillow-12.1.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:00162e9ca6d22b7c3ee8e61faa3c3253cd19b6a37f126cad04f2f88b306f557d", size = 5264816 }, + { url = "https://files.pythonhosted.org/packages/10/60/650f2fb55fdba7a510d836202aa52f0baac633e50ab1cf18415d332188fb/pillow-12.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7d6daa89a00b58c37cb1747ec9fb7ac3bc5ffd5949f5888657dfddde6d1312e0", size = 4660472 }, + { url = "https://files.pythonhosted.org/packages/2b/c0/5273a99478956a099d533c4f46cbaa19fd69d606624f4334b85e50987a08/pillow-12.1.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e2479c7f02f9d505682dc47df8c0ea1fc5e264c4d1629a5d63fe3e2334b89554", size = 6268974 }, + { url = "https://files.pythonhosted.org/packages/b4/26/0bf714bc2e73d5267887d47931d53c4ceeceea6978148ed2ab2a4e6463c4/pillow-12.1.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f188d580bd870cda1e15183790d1cc2fa78f666e76077d103edf048eed9c356e", size = 8073070 }, + { url = "https://files.pythonhosted.org/packages/43/cf/1ea826200de111a9d65724c54f927f3111dc5ae297f294b370a670c17786/pillow-12.1.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0fde7ec5538ab5095cc02df38ee99b0443ff0e1c847a045554cf5f9af1f4aa82", size = 6380176 }, + { url = "https://files.pythonhosted.org/packages/03/e0/7938dd2b2013373fd85d96e0f38d62b7a5a262af21ac274250c7ca7847c9/pillow-12.1.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0ed07dca4a8464bada6139ab38f5382f83e5f111698caf3191cb8dbf27d908b4", size = 7067061 }, + { url = "https://files.pythonhosted.org/packages/86/ad/a2aa97d37272a929a98437a8c0ac37b3cf012f4f8721e1bd5154699b2518/pillow-12.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:f45bd71d1fa5e5749587613037b172e0b3b23159d1c00ef2fc920da6f470e6f0", size = 6491824 }, + { url = "https://files.pythonhosted.org/packages/a4/44/80e46611b288d51b115826f136fb3465653c28f491068a72d3da49b54cd4/pillow-12.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:277518bf4fe74aa91489e1b20577473b19ee70fb97c374aa50830b279f25841b", size = 7190911 }, + { url = "https://files.pythonhosted.org/packages/86/77/eacc62356b4cf81abe99ff9dbc7402750044aed02cfd6a503f7c6fc11f3e/pillow-12.1.0-cp313-cp313t-win32.whl", hash = "sha256:7315f9137087c4e0ee73a761b163fc9aa3b19f5f606a7fc08d83fd3e4379af65", size = 6336445 }, + { url = "https://files.pythonhosted.org/packages/e7/3c/57d81d0b74d218706dafccb87a87ea44262c43eef98eb3b164fd000e0491/pillow-12.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:0ddedfaa8b5f0b4ffbc2fa87b556dc59f6bb4ecb14a53b33f9189713ae8053c0", size = 7045354 }, + { url = "https://files.pythonhosted.org/packages/ac/82/8b9b97bba2e3576a340f93b044a3a3a09841170ab4c1eb0d5c93469fd32f/pillow-12.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:80941e6d573197a0c28f394753de529bb436b1ca990ed6e765cf42426abc39f8", size = 2454547 }, + { url = "https://files.pythonhosted.org/packages/8c/87/bdf971d8bbcf80a348cc3bacfcb239f5882100fe80534b0ce67a784181d8/pillow-12.1.0-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:5cb7bc1966d031aec37ddb9dcf15c2da5b2e9f7cc3ca7c54473a20a927e1eb91", size = 4062533 }, + { url = "https://files.pythonhosted.org/packages/ff/4f/5eb37a681c68d605eb7034c004875c81f86ec9ef51f5be4a63eadd58859a/pillow-12.1.0-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:97e9993d5ed946aba26baf9c1e8cf18adbab584b99f452ee72f7ee8acb882796", size = 4138546 }, + { url = "https://files.pythonhosted.org/packages/11/6d/19a95acb2edbace40dcd582d077b991646b7083c41b98da4ed7555b59733/pillow-12.1.0-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:414b9a78e14ffeb98128863314e62c3f24b8a86081066625700b7985b3f529bd", size = 3601163 }, + { url = "https://files.pythonhosted.org/packages/fc/36/2b8138e51cb42e4cc39c3297713455548be855a50558c3ac2beebdc251dd/pillow-12.1.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:e6bdb408f7c9dd2a5ff2b14a3b0bb6d4deb29fb9961e6eb3ae2031ae9a5cec13", size = 5266086 }, + { url = "https://files.pythonhosted.org/packages/53/4b/649056e4d22e1caa90816bf99cef0884aed607ed38075bd75f091a607a38/pillow-12.1.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3413c2ae377550f5487991d444428f1a8ae92784aac79caa8b1e3b89b175f77e", size = 4657344 }, + { url = "https://files.pythonhosted.org/packages/6c/6b/c5742cea0f1ade0cd61485dc3d81f05261fc2276f537fbdc00802de56779/pillow-12.1.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e5dcbe95016e88437ecf33544ba5db21ef1b8dd6e1b434a2cb2a3d605299e643", size = 6232114 }, + { url = "https://files.pythonhosted.org/packages/bf/8f/9f521268ce22d63991601aafd3d48d5ff7280a246a1ef62d626d67b44064/pillow-12.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d0a7735df32ccbcc98b98a1ac785cc4b19b580be1bdf0aeb5c03223220ea09d5", size = 8042708 }, + { url = "https://files.pythonhosted.org/packages/1a/eb/257f38542893f021502a1bbe0c2e883c90b5cff26cc33b1584a841a06d30/pillow-12.1.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0c27407a2d1b96774cbc4a7594129cc027339fd800cd081e44497722ea1179de", size = 6347762 }, + { url = "https://files.pythonhosted.org/packages/c4/5a/8ba375025701c09b309e8d5163c5a4ce0102fa86bbf8800eb0d7ac87bc51/pillow-12.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:15c794d74303828eaa957ff8070846d0efe8c630901a1c753fdc63850e19ecd9", size = 7039265 }, + { url = "https://files.pythonhosted.org/packages/cf/dc/cf5e4cdb3db533f539e88a7bbf9f190c64ab8a08a9bc7a4ccf55067872e4/pillow-12.1.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c990547452ee2800d8506c4150280757f88532f3de2a58e3022e9b179107862a", size = 6462341 }, + { url = "https://files.pythonhosted.org/packages/d0/47/0291a25ac9550677e22eda48510cfc4fa4b2ef0396448b7fbdc0a6946309/pillow-12.1.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b63e13dd27da389ed9475b3d28510f0f954bca0041e8e551b2a4eb1eab56a39a", size = 7165395 }, + { url = "https://files.pythonhosted.org/packages/4f/4c/e005a59393ec4d9416be06e6b45820403bb946a778e39ecec62f5b2b991e/pillow-12.1.0-cp314-cp314-win32.whl", hash = "sha256:1a949604f73eb07a8adab38c4fe50791f9919344398bdc8ac6b307f755fc7030", size = 6431413 }, + { url = "https://files.pythonhosted.org/packages/1c/af/f23697f587ac5f9095d67e31b81c95c0249cd461a9798a061ed6709b09b5/pillow-12.1.0-cp314-cp314-win_amd64.whl", hash = "sha256:4f9f6a650743f0ddee5593ac9e954ba1bdbc5e150bc066586d4f26127853ab94", size = 7176779 }, + { url = "https://files.pythonhosted.org/packages/b3/36/6a51abf8599232f3e9afbd16d52829376a68909fe14efe29084445db4b73/pillow-12.1.0-cp314-cp314-win_arm64.whl", hash = "sha256:808b99604f7873c800c4840f55ff389936ef1948e4e87645eaf3fccbc8477ac4", size = 2543105 }, + { url = "https://files.pythonhosted.org/packages/82/54/2e1dd20c8749ff225080d6ba465a0cab4387f5db0d1c5fb1439e2d99923f/pillow-12.1.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:bc11908616c8a283cf7d664f77411a5ed2a02009b0097ff8abbba5e79128ccf2", size = 5268571 }, + { url = "https://files.pythonhosted.org/packages/57/61/571163a5ef86ec0cf30d265ac2a70ae6fc9e28413d1dc94fa37fae6bda89/pillow-12.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:896866d2d436563fa2a43a9d72f417874f16b5545955c54a64941e87c1376c61", size = 4660426 }, + { url = "https://files.pythonhosted.org/packages/5e/e1/53ee5163f794aef1bf84243f755ee6897a92c708505350dd1923f4afec48/pillow-12.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8e178e3e99d3c0ea8fc64b88447f7cac8ccf058af422a6cedc690d0eadd98c51", size = 6269908 }, + { url = "https://files.pythonhosted.org/packages/bc/0b/b4b4106ff0ee1afa1dc599fde6ab230417f800279745124f6c50bcffed8e/pillow-12.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:079af2fb0c599c2ec144ba2c02766d1b55498e373b3ac64687e43849fbbef5bc", size = 8074733 }, + { url = "https://files.pythonhosted.org/packages/19/9f/80b411cbac4a732439e629a26ad3ef11907a8c7fc5377b7602f04f6fe4e7/pillow-12.1.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdec5e43377761c5dbca620efb69a77f6855c5a379e32ac5b158f54c84212b14", size = 6381431 }, + { url = "https://files.pythonhosted.org/packages/8f/b7/d65c45db463b66ecb6abc17c6ba6917a911202a07662247e1355ce1789e7/pillow-12.1.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:565c986f4b45c020f5421a4cea13ef294dde9509a8577f29b2fc5edc7587fff8", size = 7068529 }, + { url = "https://files.pythonhosted.org/packages/50/96/dfd4cd726b4a45ae6e3c669fc9e49deb2241312605d33aba50499e9d9bd1/pillow-12.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:43aca0a55ce1eefc0aefa6253661cb54571857b1a7b2964bd8a1e3ef4b729924", size = 6492981 }, + { url = "https://files.pythonhosted.org/packages/4d/1c/b5dc52cf713ae46033359c5ca920444f18a6359ce1020dd3e9c553ea5bc6/pillow-12.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0deedf2ea233722476b3a81e8cdfbad786f7adbed5d848469fa59fe52396e4ef", size = 7191878 }, + { url = "https://files.pythonhosted.org/packages/53/26/c4188248bd5edaf543864fe4834aebe9c9cb4968b6f573ce014cc42d0720/pillow-12.1.0-cp314-cp314t-win32.whl", hash = "sha256:b17fbdbe01c196e7e159aacb889e091f28e61020a8abeac07b68079b6e626988", size = 6438703 }, + { url = "https://files.pythonhosted.org/packages/b8/0e/69ed296de8ea05cb03ee139cee600f424ca166e632567b2d66727f08c7ed/pillow-12.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27b9baecb428899db6c0de572d6d305cfaf38ca1596b5c0542a5182e3e74e8c6", size = 7182927 }, + { url = "https://files.pythonhosted.org/packages/fc/f5/68334c015eed9b5cff77814258717dec591ded209ab5b6fb70e2ae873d1d/pillow-12.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:f61333d817698bdcdd0f9d7793e365ac3d2a21c1f1eb02b32ad6aefb8d8ea831", size = 2545104 }, + { url = "https://files.pythonhosted.org/packages/8b/bc/224b1d98cffd7164b14707c91aac83c07b047fbd8f58eba4066a3e53746a/pillow-12.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:ca94b6aac0d7af2a10ba08c0f888b3d5114439b6b3ef39968378723622fed377", size = 5228605 }, + { url = "https://files.pythonhosted.org/packages/0c/ca/49ca7769c4550107de049ed85208240ba0f330b3f2e316f24534795702ce/pillow-12.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:351889afef0f485b84078ea40fe33727a0492b9af3904661b0abbafee0355b72", size = 4622245 }, + { url = "https://files.pythonhosted.org/packages/73/48/fac807ce82e5955bcc2718642b94b1bd22a82a6d452aea31cbb678cddf12/pillow-12.1.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bb0984b30e973f7e2884362b7d23d0a348c7143ee559f38ef3eaab640144204c", size = 5247593 }, + { url = "https://files.pythonhosted.org/packages/d2/95/3e0742fe358c4664aed4fd05d5f5373dcdad0b27af52aa0972568541e3f4/pillow-12.1.0-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:84cabc7095dd535ca934d57e9ce2a72ffd216e435a84acb06b2277b1de2689bd", size = 6989008 }, + { url = "https://files.pythonhosted.org/packages/5a/74/fe2ac378e4e202e56d50540d92e1ef4ff34ed687f3c60f6a121bcf99437e/pillow-12.1.0-pp311-pypy311_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:53d8b764726d3af1a138dd353116f774e3862ec7e3794e0c8781e30db0f35dfc", size = 5313824 }, + { url = "https://files.pythonhosted.org/packages/f3/77/2a60dee1adee4e2655ac328dd05c02a955c1cd683b9f1b82ec3feb44727c/pillow-12.1.0-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5da841d81b1a05ef940a8567da92decaa15bc4d7dedb540a8c219ad83d91808a", size = 5963278 }, + { url = "https://files.pythonhosted.org/packages/2d/71/64e9b1c7f04ae0027f788a248e6297d7fcc29571371fe7d45495a78172c0/pillow-12.1.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:75af0b4c229ac519b155028fa1be632d812a519abba9b46b20e50c6caa184f19", size = 7029809 }, +] + +[[package]] +name = "platformdirs" +version = "4.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cf/86/0248f086a84f01b37aaec0fa567b397df1a119f73c16f6c7a9aac73ea309/platformdirs-4.5.1.tar.gz", hash = "sha256:61d5cdcc6065745cdd94f0f878977f8de9437be93de97c1c12f853c9c0cdcbda", size = 21715 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/28/3bfe2fa5a7b9c46fe7e13c97bda14c895fb10fa2ebf1d0abb90e0cea7ee1/platformdirs-4.5.1-py3-none-any.whl", hash = "sha256:d03afa3963c806a9bed9d5125c8f4cb2fdaf74a55ab60e5d59b3fde758104d31", size = 18731 }, +] + +[[package]] +name = "plotly" +version = "6.5.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "narwhals" }, + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e3/4f/8a10a9b9f5192cb6fdef62f1d77fa7d834190b2c50c0cd256bd62879212b/plotly-6.5.2.tar.gz", hash = "sha256:7478555be0198562d1435dee4c308268187553cc15516a2f4dd034453699e393", size = 7015695 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/67/f95b5460f127840310d2187f916cf0023b5875c0717fdf893f71e1325e87/plotly-6.5.2-py3-none-any.whl", hash = "sha256:91757653bd9c550eeea2fa2404dba6b85d1e366d54804c340b2c874e5a7eb4a4", size = 9895973 }, +] + +[[package]] +name = "pluggy" +version = "1.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538 }, +] + +[[package]] +name = "propcache" +version = "0.4.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9e/da/e9fc233cf63743258bff22b3dfa7ea5baef7b5bc324af47a0ad89b8ffc6f/propcache-0.4.1.tar.gz", hash = "sha256:f48107a8c637e80362555f37ecf49abe20370e557cc4ab374f04ec4423c97c3d", size = 46442 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/d4/4e2c9aaf7ac2242b9358f98dccd8f90f2605402f5afeff6c578682c2c491/propcache-0.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:60a8fda9644b7dfd5dece8c61d8a85e271cb958075bfc4e01083c148b61a7caf", size = 80208 }, + { url = "https://files.pythonhosted.org/packages/c2/21/d7b68e911f9c8e18e4ae43bdbc1e1e9bbd971f8866eb81608947b6f585ff/propcache-0.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c30b53e7e6bda1d547cabb47c825f3843a0a1a42b0496087bb58d8fedf9f41b5", size = 45777 }, + { url = "https://files.pythonhosted.org/packages/d3/1d/11605e99ac8ea9435651ee71ab4cb4bf03f0949586246476a25aadfec54a/propcache-0.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6918ecbd897443087a3b7cd978d56546a812517dcaaca51b49526720571fa93e", size = 47647 }, + { url = "https://files.pythonhosted.org/packages/58/1a/3c62c127a8466c9c843bccb503d40a273e5cc69838805f322e2826509e0d/propcache-0.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3d902a36df4e5989763425a8ab9e98cd8ad5c52c823b34ee7ef307fd50582566", size = 214929 }, + { url = "https://files.pythonhosted.org/packages/56/b9/8fa98f850960b367c4b8fe0592e7fc341daa7a9462e925228f10a60cf74f/propcache-0.4.1-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a9695397f85973bb40427dedddf70d8dc4a44b22f1650dd4af9eedf443d45165", size = 221778 }, + { url = "https://files.pythonhosted.org/packages/46/a6/0ab4f660eb59649d14b3d3d65c439421cf2f87fe5dd68591cbe3c1e78a89/propcache-0.4.1-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2bb07ffd7eaad486576430c89f9b215f9e4be68c4866a96e97db9e97fead85dc", size = 228144 }, + { url = "https://files.pythonhosted.org/packages/52/6a/57f43e054fb3d3a56ac9fc532bc684fc6169a26c75c353e65425b3e56eef/propcache-0.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fd6f30fdcf9ae2a70abd34da54f18da086160e4d7d9251f81f3da0ff84fc5a48", size = 210030 }, + { url = "https://files.pythonhosted.org/packages/40/e2/27e6feebb5f6b8408fa29f5efbb765cd54c153ac77314d27e457a3e993b7/propcache-0.4.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:fc38cba02d1acba4e2869eef1a57a43dfbd3d49a59bf90dda7444ec2be6a5570", size = 208252 }, + { url = "https://files.pythonhosted.org/packages/9e/f8/91c27b22ccda1dbc7967f921c42825564fa5336a01ecd72eb78a9f4f53c2/propcache-0.4.1-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:67fad6162281e80e882fb3ec355398cf72864a54069d060321f6cd0ade95fe85", size = 202064 }, + { url = "https://files.pythonhosted.org/packages/f2/26/7f00bd6bd1adba5aafe5f4a66390f243acab58eab24ff1a08bebb2ef9d40/propcache-0.4.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f10207adf04d08bec185bae14d9606a1444715bc99180f9331c9c02093e1959e", size = 212429 }, + { url = "https://files.pythonhosted.org/packages/84/89/fd108ba7815c1117ddca79c228f3f8a15fc82a73bca8b142eb5de13b2785/propcache-0.4.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:e9b0d8d0845bbc4cfcdcbcdbf5086886bc8157aa963c31c777ceff7846c77757", size = 216727 }, + { url = "https://files.pythonhosted.org/packages/79/37/3ec3f7e3173e73f1d600495d8b545b53802cbf35506e5732dd8578db3724/propcache-0.4.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:981333cb2f4c1896a12f4ab92a9cc8f09ea664e9b7dbdc4eff74627af3a11c0f", size = 205097 }, + { url = "https://files.pythonhosted.org/packages/61/b0/b2631c19793f869d35f47d5a3a56fb19e9160d3c119f15ac7344fc3ccae7/propcache-0.4.1-cp311-cp311-win32.whl", hash = "sha256:f1d2f90aeec838a52f1c1a32fe9a619fefd5e411721a9117fbf82aea638fe8a1", size = 38084 }, + { url = "https://files.pythonhosted.org/packages/f4/78/6cce448e2098e9f3bfc91bb877f06aa24b6ccace872e39c53b2f707c4648/propcache-0.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:364426a62660f3f699949ac8c621aad6977be7126c5807ce48c0aeb8e7333ea6", size = 41637 }, + { url = "https://files.pythonhosted.org/packages/9c/e9/754f180cccd7f51a39913782c74717c581b9cc8177ad0e949f4d51812383/propcache-0.4.1-cp311-cp311-win_arm64.whl", hash = "sha256:e53f3a38d3510c11953f3e6a33f205c6d1b001129f972805ca9b42fc308bc239", size = 38064 }, + { url = "https://files.pythonhosted.org/packages/a2/0f/f17b1b2b221d5ca28b4b876e8bb046ac40466513960646bda8e1853cdfa2/propcache-0.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e153e9cd40cc8945138822807139367f256f89c6810c2634a4f6902b52d3b4e2", size = 80061 }, + { url = "https://files.pythonhosted.org/packages/76/47/8ccf75935f51448ba9a16a71b783eb7ef6b9ee60f5d14c7f8a8a79fbeed7/propcache-0.4.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:cd547953428f7abb73c5ad82cbb32109566204260d98e41e5dfdc682eb7f8403", size = 46037 }, + { url = "https://files.pythonhosted.org/packages/0a/b6/5c9a0e42df4d00bfb4a3cbbe5cf9f54260300c88a0e9af1f47ca5ce17ac0/propcache-0.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f048da1b4f243fc44f205dfd320933a951b8d89e0afd4c7cacc762a8b9165207", size = 47324 }, + { url = "https://files.pythonhosted.org/packages/9e/d3/6c7ee328b39a81ee877c962469f1e795f9db87f925251efeb0545e0020d0/propcache-0.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ec17c65562a827bba85e3872ead335f95405ea1674860d96483a02f5c698fa72", size = 225505 }, + { url = "https://files.pythonhosted.org/packages/01/5d/1c53f4563490b1d06a684742cc6076ef944bc6457df6051b7d1a877c057b/propcache-0.4.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:405aac25c6394ef275dee4c709be43745d36674b223ba4eb7144bf4d691b7367", size = 230242 }, + { url = "https://files.pythonhosted.org/packages/20/e1/ce4620633b0e2422207c3cb774a0ee61cac13abc6217763a7b9e2e3f4a12/propcache-0.4.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0013cb6f8dde4b2a2f66903b8ba740bdfe378c943c4377a200551ceb27f379e4", size = 238474 }, + { url = "https://files.pythonhosted.org/packages/46/4b/3aae6835b8e5f44ea6a68348ad90f78134047b503765087be2f9912140ea/propcache-0.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:15932ab57837c3368b024473a525e25d316d8353016e7cc0e5ba9eb343fbb1cf", size = 221575 }, + { url = "https://files.pythonhosted.org/packages/6e/a5/8a5e8678bcc9d3a1a15b9a29165640d64762d424a16af543f00629c87338/propcache-0.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:031dce78b9dc099f4c29785d9cf5577a3faf9ebf74ecbd3c856a7b92768c3df3", size = 216736 }, + { url = "https://files.pythonhosted.org/packages/f1/63/b7b215eddeac83ca1c6b934f89d09a625aa9ee4ba158338854c87210cc36/propcache-0.4.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:ab08df6c9a035bee56e31af99be621526bd237bea9f32def431c656b29e41778", size = 213019 }, + { url = "https://files.pythonhosted.org/packages/57/74/f580099a58c8af587cac7ba19ee7cb418506342fbbe2d4a4401661cca886/propcache-0.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:4d7af63f9f93fe593afbf104c21b3b15868efb2c21d07d8732c0c4287e66b6a6", size = 220376 }, + { url = "https://files.pythonhosted.org/packages/c4/ee/542f1313aff7eaf19c2bb758c5d0560d2683dac001a1c96d0774af799843/propcache-0.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:cfc27c945f422e8b5071b6e93169679e4eb5bf73bbcbf1ba3ae3a83d2f78ebd9", size = 226988 }, + { url = "https://files.pythonhosted.org/packages/8f/18/9c6b015dd9c6930f6ce2229e1f02fb35298b847f2087ea2b436a5bfa7287/propcache-0.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:35c3277624a080cc6ec6f847cbbbb5b49affa3598c4535a0a4682a697aaa5c75", size = 215615 }, + { url = "https://files.pythonhosted.org/packages/80/9e/e7b85720b98c45a45e1fca6a177024934dc9bc5f4d5dd04207f216fc33ed/propcache-0.4.1-cp312-cp312-win32.whl", hash = "sha256:671538c2262dadb5ba6395e26c1731e1d52534bfe9ae56d0b5573ce539266aa8", size = 38066 }, + { url = "https://files.pythonhosted.org/packages/54/09/d19cff2a5aaac632ec8fc03737b223597b1e347416934c1b3a7df079784c/propcache-0.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:cb2d222e72399fcf5890d1d5cc1060857b9b236adff2792ff48ca2dfd46c81db", size = 41655 }, + { url = "https://files.pythonhosted.org/packages/68/ab/6b5c191bb5de08036a8c697b265d4ca76148efb10fa162f14af14fb5f076/propcache-0.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:204483131fb222bdaaeeea9f9e6c6ed0cac32731f75dfc1d4a567fc1926477c1", size = 37789 }, + { url = "https://files.pythonhosted.org/packages/bf/df/6d9c1b6ac12b003837dde8a10231a7344512186e87b36e855bef32241942/propcache-0.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:43eedf29202c08550aac1d14e0ee619b0430aaef78f85864c1a892294fbc28cf", size = 77750 }, + { url = "https://files.pythonhosted.org/packages/8b/e8/677a0025e8a2acf07d3418a2e7ba529c9c33caf09d3c1f25513023c1db56/propcache-0.4.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d62cdfcfd89ccb8de04e0eda998535c406bf5e060ffd56be6c586cbcc05b3311", size = 44780 }, + { url = "https://files.pythonhosted.org/packages/89/a4/92380f7ca60f99ebae761936bc48a72a639e8a47b29050615eef757cb2a7/propcache-0.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cae65ad55793da34db5f54e4029b89d3b9b9490d8abe1b4c7ab5d4b8ec7ebf74", size = 46308 }, + { url = "https://files.pythonhosted.org/packages/2d/48/c5ac64dee5262044348d1d78a5f85dd1a57464a60d30daee946699963eb3/propcache-0.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:333ddb9031d2704a301ee3e506dc46b1fe5f294ec198ed6435ad5b6a085facfe", size = 208182 }, + { url = "https://files.pythonhosted.org/packages/c6/0c/cd762dd011a9287389a6a3eb43aa30207bde253610cca06824aeabfe9653/propcache-0.4.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:fd0858c20f078a32cf55f7e81473d96dcf3b93fd2ccdb3d40fdf54b8573df3af", size = 211215 }, + { url = "https://files.pythonhosted.org/packages/30/3e/49861e90233ba36890ae0ca4c660e95df565b2cd15d4a68556ab5865974e/propcache-0.4.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:678ae89ebc632c5c204c794f8dab2837c5f159aeb59e6ed0539500400577298c", size = 218112 }, + { url = "https://files.pythonhosted.org/packages/f1/8b/544bc867e24e1bd48f3118cecd3b05c694e160a168478fa28770f22fd094/propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d472aeb4fbf9865e0c6d622d7f4d54a4e101a89715d8904282bb5f9a2f476c3f", size = 204442 }, + { url = "https://files.pythonhosted.org/packages/50/a6/4282772fd016a76d3e5c0df58380a5ea64900afd836cec2c2f662d1b9bb3/propcache-0.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4d3df5fa7e36b3225954fba85589da77a0fe6a53e3976de39caf04a0db4c36f1", size = 199398 }, + { url = "https://files.pythonhosted.org/packages/3e/ec/d8a7cd406ee1ddb705db2139f8a10a8a427100347bd698e7014351c7af09/propcache-0.4.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:ee17f18d2498f2673e432faaa71698032b0127ebf23ae5974eeaf806c279df24", size = 196920 }, + { url = "https://files.pythonhosted.org/packages/f6/6c/f38ab64af3764f431e359f8baf9e0a21013e24329e8b85d2da32e8ed07ca/propcache-0.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:580e97762b950f993ae618e167e7be9256b8353c2dcd8b99ec100eb50f5286aa", size = 203748 }, + { url = "https://files.pythonhosted.org/packages/d6/e3/fa846bd70f6534d647886621388f0a265254d30e3ce47e5c8e6e27dbf153/propcache-0.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:501d20b891688eb8e7aa903021f0b72d5a55db40ffaab27edefd1027caaafa61", size = 205877 }, + { url = "https://files.pythonhosted.org/packages/e2/39/8163fc6f3133fea7b5f2827e8eba2029a0277ab2c5beee6c1db7b10fc23d/propcache-0.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a0bd56e5b100aef69bd8562b74b46254e7c8812918d3baa700c8a8009b0af66", size = 199437 }, + { url = "https://files.pythonhosted.org/packages/93/89/caa9089970ca49c7c01662bd0eeedfe85494e863e8043565aeb6472ce8fe/propcache-0.4.1-cp313-cp313-win32.whl", hash = "sha256:bcc9aaa5d80322bc2fb24bb7accb4a30f81e90ab8d6ba187aec0744bc302ad81", size = 37586 }, + { url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e", size = 40790 }, + { url = "https://files.pythonhosted.org/packages/59/1b/e71ae98235f8e2ba5004d8cb19765a74877abf189bc53fc0c80d799e56c3/propcache-0.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:8873eb4460fd55333ea49b7d189749ecf6e55bf85080f11b1c4530ed3034cba1", size = 37158 }, + { url = "https://files.pythonhosted.org/packages/83/ce/a31bbdfc24ee0dcbba458c8175ed26089cf109a55bbe7b7640ed2470cfe9/propcache-0.4.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:92d1935ee1f8d7442da9c0c4fa7ac20d07e94064184811b685f5c4fada64553b", size = 81451 }, + { url = "https://files.pythonhosted.org/packages/25/9c/442a45a470a68456e710d96cacd3573ef26a1d0a60067e6a7d5e655621ed/propcache-0.4.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:473c61b39e1460d386479b9b2f337da492042447c9b685f28be4f74d3529e566", size = 46374 }, + { url = "https://files.pythonhosted.org/packages/f4/bf/b1d5e21dbc3b2e889ea4327044fb16312a736d97640fb8b6aa3f9c7b3b65/propcache-0.4.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c0ef0aaafc66fbd87842a3fe3902fd889825646bc21149eafe47be6072725835", size = 48396 }, + { url = "https://files.pythonhosted.org/packages/f4/04/5b4c54a103d480e978d3c8a76073502b18db0c4bc17ab91b3cb5092ad949/propcache-0.4.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f95393b4d66bfae908c3ca8d169d5f79cd65636ae15b5e7a4f6e67af675adb0e", size = 275950 }, + { url = "https://files.pythonhosted.org/packages/b4/c1/86f846827fb969c4b78b0af79bba1d1ea2156492e1b83dea8b8a6ae27395/propcache-0.4.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c07fda85708bc48578467e85099645167a955ba093be0a2dcba962195676e859", size = 273856 }, + { url = "https://files.pythonhosted.org/packages/36/1d/fc272a63c8d3bbad6878c336c7a7dea15e8f2d23a544bda43205dfa83ada/propcache-0.4.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:af223b406d6d000830c6f65f1e6431783fc3f713ba3e6cc8c024d5ee96170a4b", size = 280420 }, + { url = "https://files.pythonhosted.org/packages/07/0c/01f2219d39f7e53d52e5173bcb09c976609ba30209912a0680adfb8c593a/propcache-0.4.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a78372c932c90ee474559c5ddfffd718238e8673c340dc21fe45c5b8b54559a0", size = 263254 }, + { url = "https://files.pythonhosted.org/packages/2d/18/cd28081658ce597898f0c4d174d4d0f3c5b6d4dc27ffafeef835c95eb359/propcache-0.4.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:564d9f0d4d9509e1a870c920a89b2fec951b44bf5ba7d537a9e7c1ccec2c18af", size = 261205 }, + { url = "https://files.pythonhosted.org/packages/7a/71/1f9e22eb8b8316701c2a19fa1f388c8a3185082607da8e406a803c9b954e/propcache-0.4.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:17612831fda0138059cc5546f4d12a2aacfb9e47068c06af35c400ba58ba7393", size = 247873 }, + { url = "https://files.pythonhosted.org/packages/4a/65/3d4b61f36af2b4eddba9def857959f1016a51066b4f1ce348e0cf7881f58/propcache-0.4.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:41a89040cb10bd345b3c1a873b2bf36413d48da1def52f268a055f7398514874", size = 262739 }, + { url = "https://files.pythonhosted.org/packages/2a/42/26746ab087faa77c1c68079b228810436ccd9a5ce9ac85e2b7307195fd06/propcache-0.4.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:e35b88984e7fa64aacecea39236cee32dd9bd8c55f57ba8a75cf2399553f9bd7", size = 263514 }, + { url = "https://files.pythonhosted.org/packages/94/13/630690fe201f5502d2403dd3cfd451ed8858fe3c738ee88d095ad2ff407b/propcache-0.4.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6f8b465489f927b0df505cbe26ffbeed4d6d8a2bbc61ce90eb074ff129ef0ab1", size = 257781 }, + { url = "https://files.pythonhosted.org/packages/92/f7/1d4ec5841505f423469efbfc381d64b7b467438cd5a4bbcbb063f3b73d27/propcache-0.4.1-cp313-cp313t-win32.whl", hash = "sha256:2ad890caa1d928c7c2965b48f3a3815c853180831d0e5503d35cf00c472f4717", size = 41396 }, + { url = "https://files.pythonhosted.org/packages/48/f0/615c30622316496d2cbbc29f5985f7777d3ada70f23370608c1d3e081c1f/propcache-0.4.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f7ee0e597f495cf415bcbd3da3caa3bd7e816b74d0d52b8145954c5e6fd3ff37", size = 44897 }, + { url = "https://files.pythonhosted.org/packages/fd/ca/6002e46eccbe0e33dcd4069ef32f7f1c9e243736e07adca37ae8c4830ec3/propcache-0.4.1-cp313-cp313t-win_arm64.whl", hash = "sha256:929d7cbe1f01bb7baffb33dc14eb5691c95831450a26354cd210a8155170c93a", size = 39789 }, + { url = "https://files.pythonhosted.org/packages/8e/5c/bca52d654a896f831b8256683457ceddd490ec18d9ec50e97dfd8fc726a8/propcache-0.4.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3f7124c9d820ba5548d431afb4632301acf965db49e666aa21c305cbe8c6de12", size = 78152 }, + { url = "https://files.pythonhosted.org/packages/65/9b/03b04e7d82a5f54fb16113d839f5ea1ede58a61e90edf515f6577c66fa8f/propcache-0.4.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:c0d4b719b7da33599dfe3b22d3db1ef789210a0597bc650b7cee9c77c2be8c5c", size = 44869 }, + { url = "https://files.pythonhosted.org/packages/b2/fa/89a8ef0468d5833a23fff277b143d0573897cf75bd56670a6d28126c7d68/propcache-0.4.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:9f302f4783709a78240ebc311b793f123328716a60911d667e0c036bc5dcbded", size = 46596 }, + { url = "https://files.pythonhosted.org/packages/86/bd/47816020d337f4a746edc42fe8d53669965138f39ee117414c7d7a340cfe/propcache-0.4.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c80ee5802e3fb9ea37938e7eecc307fb984837091d5fd262bb37238b1ae97641", size = 206981 }, + { url = "https://files.pythonhosted.org/packages/df/f6/c5fa1357cc9748510ee55f37173eb31bfde6d94e98ccd9e6f033f2fc06e1/propcache-0.4.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ed5a841e8bb29a55fb8159ed526b26adc5bdd7e8bd7bf793ce647cb08656cdf4", size = 211490 }, + { url = "https://files.pythonhosted.org/packages/80/1e/e5889652a7c4a3846683401a48f0f2e5083ce0ec1a8a5221d8058fbd1adf/propcache-0.4.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:55c72fd6ea2da4c318e74ffdf93c4fe4e926051133657459131a95c846d16d44", size = 215371 }, + { url = "https://files.pythonhosted.org/packages/b2/f2/889ad4b2408f72fe1a4f6a19491177b30ea7bf1a0fd5f17050ca08cfc882/propcache-0.4.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8326e144341460402713f91df60ade3c999d601e7eb5ff8f6f7862d54de0610d", size = 201424 }, + { url = "https://files.pythonhosted.org/packages/27/73/033d63069b57b0812c8bd19f311faebeceb6ba31b8f32b73432d12a0b826/propcache-0.4.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:060b16ae65bc098da7f6d25bf359f1f31f688384858204fe5d652979e0015e5b", size = 197566 }, + { url = "https://files.pythonhosted.org/packages/dc/89/ce24f3dc182630b4e07aa6d15f0ff4b14ed4b9955fae95a0b54c58d66c05/propcache-0.4.1-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:89eb3fa9524f7bec9de6e83cf3faed9d79bffa560672c118a96a171a6f55831e", size = 193130 }, + { url = "https://files.pythonhosted.org/packages/a9/24/ef0d5fd1a811fb5c609278d0209c9f10c35f20581fcc16f818da959fc5b4/propcache-0.4.1-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:dee69d7015dc235f526fe80a9c90d65eb0039103fe565776250881731f06349f", size = 202625 }, + { url = "https://files.pythonhosted.org/packages/f5/02/98ec20ff5546f68d673df2f7a69e8c0d076b5abd05ca882dc7ee3a83653d/propcache-0.4.1-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:5558992a00dfd54ccbc64a32726a3357ec93825a418a401f5cc67df0ac5d9e49", size = 204209 }, + { url = "https://files.pythonhosted.org/packages/a0/87/492694f76759b15f0467a2a93ab68d32859672b646aa8a04ce4864e7932d/propcache-0.4.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c9b822a577f560fbd9554812526831712c1436d2c046cedee4c3796d3543b144", size = 197797 }, + { url = "https://files.pythonhosted.org/packages/ee/36/66367de3575db1d2d3f3d177432bd14ee577a39d3f5d1b3d5df8afe3b6e2/propcache-0.4.1-cp314-cp314-win32.whl", hash = "sha256:ab4c29b49d560fe48b696cdcb127dd36e0bc2472548f3bf56cc5cb3da2b2984f", size = 38140 }, + { url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl", hash = "sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153", size = 41257 }, + { url = "https://files.pythonhosted.org/packages/34/5e/63bd5896c3fec12edcbd6f12508d4890d23c265df28c74b175e1ef9f4f3b/propcache-0.4.1-cp314-cp314-win_arm64.whl", hash = "sha256:74c1fb26515153e482e00177a1ad654721bf9207da8a494a0c05e797ad27b992", size = 38097 }, + { url = "https://files.pythonhosted.org/packages/99/85/9ff785d787ccf9bbb3f3106f79884a130951436f58392000231b4c737c80/propcache-0.4.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:824e908bce90fb2743bd6b59db36eb4f45cd350a39637c9f73b1c1ea66f5b75f", size = 81455 }, + { url = "https://files.pythonhosted.org/packages/90/85/2431c10c8e7ddb1445c1f7c4b54d886e8ad20e3c6307e7218f05922cad67/propcache-0.4.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:c2b5e7db5328427c57c8e8831abda175421b709672f6cfc3d630c3b7e2146393", size = 46372 }, + { url = "https://files.pythonhosted.org/packages/01/20/b0972d902472da9bcb683fa595099911f4d2e86e5683bcc45de60dd05dc3/propcache-0.4.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:6f6ff873ed40292cd4969ef5310179afd5db59fdf055897e282485043fc80ad0", size = 48411 }, + { url = "https://files.pythonhosted.org/packages/e2/e3/7dc89f4f21e8f99bad3d5ddb3a3389afcf9da4ac69e3deb2dcdc96e74169/propcache-0.4.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:49a2dc67c154db2c1463013594c458881a069fcf98940e61a0569016a583020a", size = 275712 }, + { url = "https://files.pythonhosted.org/packages/20/67/89800c8352489b21a8047c773067644e3897f02ecbbd610f4d46b7f08612/propcache-0.4.1-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:005f08e6a0529984491e37d8dbc3dd86f84bd78a8ceb5fa9a021f4c48d4984be", size = 273557 }, + { url = "https://files.pythonhosted.org/packages/e2/a1/b52b055c766a54ce6d9c16d9aca0cad8059acd9637cdf8aa0222f4a026ef/propcache-0.4.1-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5c3310452e0d31390da9035c348633b43d7e7feb2e37be252be6da45abd1abcc", size = 280015 }, + { url = "https://files.pythonhosted.org/packages/48/c8/33cee30bd890672c63743049f3c9e4be087e6780906bfc3ec58528be59c1/propcache-0.4.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4c3c70630930447f9ef1caac7728c8ad1c56bc5015338b20fed0d08ea2480b3a", size = 262880 }, + { url = "https://files.pythonhosted.org/packages/0c/b1/8f08a143b204b418285c88b83d00edbd61afbc2c6415ffafc8905da7038b/propcache-0.4.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8e57061305815dfc910a3634dcf584f08168a8836e6999983569f51a8544cd89", size = 260938 }, + { url = "https://files.pythonhosted.org/packages/cf/12/96e4664c82ca2f31e1c8dff86afb867348979eb78d3cb8546a680287a1e9/propcache-0.4.1-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:521a463429ef54143092c11a77e04056dd00636f72e8c45b70aaa3140d639726", size = 247641 }, + { url = "https://files.pythonhosted.org/packages/18/ed/e7a9cfca28133386ba52278136d42209d3125db08d0a6395f0cba0c0285c/propcache-0.4.1-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:120c964da3fdc75e3731aa392527136d4ad35868cc556fd09bb6d09172d9a367", size = 262510 }, + { url = "https://files.pythonhosted.org/packages/f5/76/16d8bf65e8845dd62b4e2b57444ab81f07f40caa5652b8969b87ddcf2ef6/propcache-0.4.1-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:d8f353eb14ee3441ee844ade4277d560cdd68288838673273b978e3d6d2c8f36", size = 263161 }, + { url = "https://files.pythonhosted.org/packages/e7/70/c99e9edb5d91d5ad8a49fa3c1e8285ba64f1476782fed10ab251ff413ba1/propcache-0.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ab2943be7c652f09638800905ee1bab2c544e537edb57d527997a24c13dc1455", size = 257393 }, + { url = "https://files.pythonhosted.org/packages/08/02/87b25304249a35c0915d236575bc3574a323f60b47939a2262b77632a3ee/propcache-0.4.1-cp314-cp314t-win32.whl", hash = "sha256:05674a162469f31358c30bcaa8883cb7829fa3110bf9c0991fe27d7896c42d85", size = 42546 }, + { url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl", hash = "sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1", size = 46259 }, + { url = "https://files.pythonhosted.org/packages/c4/2d/346e946d4951f37eca1e4f55be0f0174c52cd70720f84029b02f296f4a38/propcache-0.4.1-cp314-cp314t-win_arm64.whl", hash = "sha256:ecef2343af4cc68e05131e45024ba34f6095821988a9d0a02aa7c73fcc448aa9", size = 40428 }, + { url = "https://files.pythonhosted.org/packages/5b/5a/bc7b4a4ef808fa59a816c17b20c4bef6884daebbdf627ff2a161da67da19/propcache-0.4.1-py3-none-any.whl", hash = "sha256:af2a6052aeb6cf17d3e46ee169099044fd8224cbaf75c76a2ef596e8163e2237", size = 13305 }, +] + +[[package]] +name = "proto-plus" +version = "1.27.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/01/89/9cbe2f4bba860e149108b683bc2efec21f14d5f7ed6e25562ad86acbc373/proto_plus-1.27.0.tar.gz", hash = "sha256:873af56dd0d7e91836aee871e5799e1c6f1bda86ac9a983e0bb9f0c266a568c4", size = 56158 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cd/24/3b7a0818484df9c28172857af32c2397b6d8fcd99d9468bd4684f98ebf0a/proto_plus-1.27.0-py3-none-any.whl", hash = "sha256:1baa7f81cf0f8acb8bc1f6d085008ba4171eaf669629d1b6d1673b21ed1c0a82", size = 50205 }, +] + +[[package]] +name = "protobuf" +version = "6.33.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/53/b8/cda15d9d46d03d4aa3a67cb6bffe05173440ccf86a9541afaf7ac59a1b6b/protobuf-6.33.4.tar.gz", hash = "sha256:dc2e61bca3b10470c1912d166fe0af67bfc20eb55971dcef8dfa48ce14f0ed91", size = 444346 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/be/24ef9f3095bacdf95b458543334d0c4908ccdaee5130420bf064492c325f/protobuf-6.33.4-cp310-abi3-win32.whl", hash = "sha256:918966612c8232fc6c24c78e1cd89784307f5814ad7506c308ee3cf86662850d", size = 425612 }, + { url = "https://files.pythonhosted.org/packages/31/ad/e5693e1974a28869e7cd244302911955c1cebc0161eb32dfa2b25b6e96f0/protobuf-6.33.4-cp310-abi3-win_amd64.whl", hash = "sha256:8f11ffae31ec67fc2554c2ef891dcb561dae9a2a3ed941f9e134c2db06657dbc", size = 436962 }, + { url = "https://files.pythonhosted.org/packages/66/15/6ee23553b6bfd82670207ead921f4d8ef14c107e5e11443b04caeb5ab5ec/protobuf-6.33.4-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:2fe67f6c014c84f655ee06f6f66213f9254b3a8b6bda6cda0ccd4232c73c06f0", size = 427612 }, + { url = "https://files.pythonhosted.org/packages/2b/48/d301907ce6d0db75f959ca74f44b475a9caa8fcba102d098d3c3dd0f2d3f/protobuf-6.33.4-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:757c978f82e74d75cba88eddec479df9b99a42b31193313b75e492c06a51764e", size = 324484 }, + { url = "https://files.pythonhosted.org/packages/92/1c/e53078d3f7fe710572ab2dcffd993e1e3b438ae71cfc031b71bae44fcb2d/protobuf-6.33.4-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:c7c64f259c618f0bef7bee042075e390debbf9682334be2b67408ec7c1c09ee6", size = 339256 }, + { url = "https://files.pythonhosted.org/packages/e8/8e/971c0edd084914f7ee7c23aa70ba89e8903918adca179319ee94403701d5/protobuf-6.33.4-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:3df850c2f8db9934de4cf8f9152f8dc2558f49f298f37f90c517e8e5c84c30e9", size = 323311 }, + { url = "https://files.pythonhosted.org/packages/75/b1/1dc83c2c661b4c62d56cc081706ee33a4fc2835bd90f965baa2663ef7676/protobuf-6.33.4-py3-none-any.whl", hash = "sha256:1fe3730068fcf2e595816a6c34fe66eeedd37d51d0400b72fabc848811fdc1bc", size = 170532 }, +] + +[[package]] +name = "pv-site-prediction" +version = "0.1.19" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "dask" }, + { name = "fsspec" }, + { name = "gcsfs" }, + { name = "google-cloud-storage" }, + { name = "h5netcdf" }, + { name = "netcdf4", version = "1.7.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.12' and platform_machine != 'ARM64') or (python_full_version >= '3.12' and sys_platform != 'win32') or (platform_machine == 'ARM64' and sys_platform == 'win32')" }, + { name = "netcdf4", version = "1.7.4", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.12' and platform_machine != 'ARM64') or (python_full_version < '3.12' and sys_platform != 'win32')" }, + { name = "numpy" }, + { name = "ocf-blosc2" }, + { name = "pvlib" }, + { name = "pyproj" }, + { name = "pyresample" }, + { name = "scikit-learn" }, + { name = "tqdm" }, + { name = "xarray" }, + { name = "zarr" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/80/92/d21e838d9d492bfbda56b620a3855cb504e6c2e1ddb1e525f22bf006c52d/pv_site_prediction-0.1.19.tar.gz", hash = "sha256:7ad0e37c92e4d7057f752ef1ee86e28ebfe3137c33ff7bfe889d864f6b2b3fc2", size = 5414417 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f2/40/4327986239e79b505ce621ca772e9fa56da950649500f584efa8fad863c0/pv_site_prediction-0.1.19-py3-none-any.whl", hash = "sha256:ded964376196e0294c93991e84dcbdaf4b10f63764ee994cdd4659a1ffe2377c", size = 5480371 }, +] + +[[package]] +name = "pvlib" +version = "0.9.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "h5py" }, + { name = "numpy" }, + { name = "pandas", version = "2.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, + { name = "pandas", version = "2.3.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, + { name = "pytz" }, + { name = "requests" }, + { name = "scipy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/25/b2eee51db9751c34dae1589472e2799dead0612610b33408795f42aeb28c/pvlib-0.9.5.tar.gz", hash = "sha256:1f844973ca51f8de3e32514b5dbce83ddf0766e7fe9d7f3bb1a3088870053768", size = 35098855 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d9/09/e06d05b4e12d777e0fd69f9cf6680c1712ec1082bbad864292168f3697f1/pvlib-0.9.5-py3-none-any.whl", hash = "sha256:e0932ba280e999284f0cdec4def09bdf7a79b8f681ce5262ad857facac92b92e", size = 29401639 }, +] + +[[package]] +name = "py-cpuinfo" +version = "9.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/37/a8/d832f7293ebb21690860d2e01d8115e5ff6f2ae8bbdc953f0eb0fa4bd2c7/py-cpuinfo-9.0.0.tar.gz", hash = "sha256:3cdbbf3fac90dc6f118bfd64384f309edeadd902d7c8fb17f02ffa1fc3f49690", size = 104716 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/a9/023730ba63db1e494a271cb018dcd361bd2c917ba7004c3e49d5daf795a2/py_cpuinfo-9.0.0-py3-none-any.whl", hash = "sha256:859625bc251f64e21f077d099d4162689c762b5d6a4c3c97553d56241c9674d5", size = 22335 }, +] + +[[package]] +name = "pyarrow" +version = "23.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/33/ffd9c3eb087fa41dd79c3cf20c4c0ae3cdb877c4f8e1107a446006344924/pyarrow-23.0.0.tar.gz", hash = "sha256:180e3150e7edfcd182d3d9afba72f7cf19839a497cc76555a8dce998a8f67615", size = 1167185 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/c0/57fe251102ca834fee0ef69a84ad33cc0ff9d5dfc50f50b466846356ecd7/pyarrow-23.0.0-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:5574d541923efcbfdf1294a2746ae3b8c2498a2dc6cd477882f6f4e7b1ac08d3", size = 34276762 }, + { url = "https://files.pythonhosted.org/packages/f8/4e/24130286548a5bc250cbed0b6bbf289a2775378a6e0e6f086ae8c68fc098/pyarrow-23.0.0-cp311-cp311-macosx_12_0_x86_64.whl", hash = "sha256:2ef0075c2488932e9d3c2eb3482f9459c4be629aa673b725d5e3cf18f777f8e4", size = 35821420 }, + { url = "https://files.pythonhosted.org/packages/ee/55/a869e8529d487aa2e842d6c8865eb1e2c9ec33ce2786eb91104d2c3e3f10/pyarrow-23.0.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:65666fc269669af1ef1c14478c52222a2aa5c907f28b68fb50a203c777e4f60c", size = 44457412 }, + { url = "https://files.pythonhosted.org/packages/36/81/1de4f0edfa9a483bbdf0082a05790bd6a20ed2169ea12a65039753be3a01/pyarrow-23.0.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:4d85cb6177198f3812db4788e394b757223f60d9a9f5ad6634b3e32be1525803", size = 47534285 }, + { url = "https://files.pythonhosted.org/packages/f2/04/464a052d673b5ece074518f27377861662449f3c1fdb39ce740d646fd098/pyarrow-23.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1a9ff6fa4141c24a03a1a434c63c8fa97ce70f8f36bccabc18ebba905ddf0f17", size = 48157913 }, + { url = "https://files.pythonhosted.org/packages/f4/1b/32a4de9856ee6688c670ca2def588382e573cce45241a965af04c2f61687/pyarrow-23.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:84839d060a54ae734eb60a756aeacb62885244aaa282f3c968f5972ecc7b1ecc", size = 50582529 }, + { url = "https://files.pythonhosted.org/packages/db/c7/d6581f03e9b9e44ea60b52d1750ee1a7678c484c06f939f45365a45f7eef/pyarrow-23.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:a149a647dbfe928ce8830a713612aa0b16e22c64feac9d1761529778e4d4eaa5", size = 27542646 }, + { url = "https://files.pythonhosted.org/packages/3d/bd/c861d020831ee57609b73ea721a617985ece817684dc82415b0bc3e03ac3/pyarrow-23.0.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:5961a9f646c232697c24f54d3419e69b4261ba8a8b66b0ac54a1851faffcbab8", size = 34189116 }, + { url = "https://files.pythonhosted.org/packages/8c/23/7725ad6cdcbaf6346221391e7b3eecd113684c805b0a95f32014e6fa0736/pyarrow-23.0.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:632b3e7c3d232f41d64e1a4a043fb82d44f8a349f339a1188c6a0dd9d2d47d8a", size = 35803831 }, + { url = "https://files.pythonhosted.org/packages/57/06/684a421543455cdc2944d6a0c2cc3425b028a4c6b90e34b35580c4899743/pyarrow-23.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:76242c846db1411f1d6c2cc3823be6b86b40567ee24493344f8226ba34a81333", size = 44436452 }, + { url = "https://files.pythonhosted.org/packages/c6/6f/8f9eb40c2328d66e8b097777ddcf38494115ff9f1b5bc9754ba46991191e/pyarrow-23.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:b73519f8b52ae28127000986bf228fda781e81d3095cd2d3ece76eb5cf760e1b", size = 47557396 }, + { url = "https://files.pythonhosted.org/packages/10/6e/f08075f1472e5159553501fde2cc7bc6700944bdabe49a03f8a035ee6ccd/pyarrow-23.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:068701f6823449b1b6469120f399a1239766b117d211c5d2519d4ed5861f75de", size = 48147129 }, + { url = "https://files.pythonhosted.org/packages/7d/82/d5a680cd507deed62d141cc7f07f7944a6766fc51019f7f118e4d8ad0fb8/pyarrow-23.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1801ba947015d10e23bca9dd6ef5d0e9064a81569a89b6e9a63b59224fd060df", size = 50596642 }, + { url = "https://files.pythonhosted.org/packages/a9/26/4f29c61b3dce9fa7780303b86895ec6a0917c9af927101daaaf118fbe462/pyarrow-23.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:52265266201ec25b6839bf6bd4ea918ca6d50f31d13e1cf200b4261cd11dc25c", size = 27660628 }, + { url = "https://files.pythonhosted.org/packages/66/34/564db447d083ec7ff93e0a883a597d2f214e552823bfc178a2d0b1f2c257/pyarrow-23.0.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:ad96a597547af7827342ffb3c503c8316e5043bb09b47a84885ce39394c96e00", size = 34184630 }, + { url = "https://files.pythonhosted.org/packages/aa/3a/3999daebcb5e6119690c92a621c4d78eef2ffba7a0a1b56386d2875fcd77/pyarrow-23.0.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:b9edf990df77c2901e79608f08c13fbde60202334a4fcadb15c1f57bf7afee43", size = 35796820 }, + { url = "https://files.pythonhosted.org/packages/ec/ee/39195233056c6a8d0976d7d1ac1cd4fe21fb0ec534eca76bc23ef3f60e11/pyarrow-23.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:36d1b5bc6ddcaff0083ceec7e2561ed61a51f49cce8be079ee8ed406acb6fdef", size = 44438735 }, + { url = "https://files.pythonhosted.org/packages/2c/41/6a7328ee493527e7afc0c88d105ecca69a3580e29f2faaeac29308369fd7/pyarrow-23.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:4292b889cd224f403304ddda8b63a36e60f92911f89927ec8d98021845ea21be", size = 47557263 }, + { url = "https://files.pythonhosted.org/packages/c6/ee/34e95b21ee84db494eae60083ddb4383477b31fb1fd19fd866d794881696/pyarrow-23.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dfd9e133e60eaa847fd80530a1b89a052f09f695d0b9c34c235ea6b2e0924cf7", size = 48153529 }, + { url = "https://files.pythonhosted.org/packages/52/88/8a8d83cea30f4563efa1b7bf51d241331ee5cd1b185a7e063f5634eca415/pyarrow-23.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832141cc09fac6aab1cd3719951d23301396968de87080c57c9a7634e0ecd068", size = 50598851 }, + { url = "https://files.pythonhosted.org/packages/c6/4c/2929c4be88723ba025e7b3453047dc67e491c9422965c141d24bab6b5962/pyarrow-23.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:7a7d067c9a88faca655c71bcc30ee2782038d59c802d57950826a07f60d83c4c", size = 27577747 }, + { url = "https://files.pythonhosted.org/packages/64/52/564a61b0b82d72bd68ec3aef1adda1e3eba776f89134b9ebcb5af4b13cb6/pyarrow-23.0.0-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:ce9486e0535a843cf85d990e2ec5820a47918235183a5c7b8b97ed7e92c2d47d", size = 34446038 }, + { url = "https://files.pythonhosted.org/packages/cc/c9/232d4f9855fd1de0067c8a7808a363230d223c83aeee75e0fe6eab851ba9/pyarrow-23.0.0-cp313-cp313t-macosx_12_0_x86_64.whl", hash = "sha256:075c29aeaa685fd1182992a9ed2499c66f084ee54eea47da3eb76e125e06064c", size = 35921142 }, + { url = "https://files.pythonhosted.org/packages/96/f2/60af606a3748367b906bb82d41f0032e059f075444445d47e32a7ff1df62/pyarrow-23.0.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:799965a5379589510d888be3094c2296efd186a17ca1cef5b77703d4d5121f53", size = 44490374 }, + { url = "https://files.pythonhosted.org/packages/ff/2d/7731543050a678ea3a413955a2d5d80d2a642f270aa57a3cb7d5a86e3f46/pyarrow-23.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ef7cac8fe6fccd8b9e7617bfac785b0371a7fe26af59463074e4882747145d40", size = 47527896 }, + { url = "https://files.pythonhosted.org/packages/5a/90/f3342553b7ac9879413aed46500f1637296f3c8222107523a43a1c08b42a/pyarrow-23.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15a414f710dc927132dd67c361f78c194447479555af57317066ee5116b90e9e", size = 48210401 }, + { url = "https://files.pythonhosted.org/packages/f3/da/9862ade205ecc46c172b6ce5038a74b5151c7401e36255f15975a45878b2/pyarrow-23.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3e0d2e6915eca7d786be6a77bf227fbc06d825a75b5b5fe9bcbef121dec32685", size = 50579677 }, + { url = "https://files.pythonhosted.org/packages/c2/4c/f11f371f5d4740a5dafc2e11c76bcf42d03dfdb2d68696da97de420b6963/pyarrow-23.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:4b317ea6e800b5704e5e5929acb6e2dc13e9276b708ea97a39eb8b345aa2658b", size = 27631889 }, + { url = "https://files.pythonhosted.org/packages/97/bb/15aec78bcf43a0c004067bd33eb5352836a29a49db8581fc56f2b6ca88b7/pyarrow-23.0.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:20b187ed9550d233a872074159f765f52f9d92973191cd4b93f293a19efbe377", size = 34213265 }, + { url = "https://files.pythonhosted.org/packages/f6/6c/deb2c594bbba41c37c5d9aa82f510376998352aa69dfcb886cb4b18ad80f/pyarrow-23.0.0-cp314-cp314-macosx_12_0_x86_64.whl", hash = "sha256:18ec84e839b493c3886b9b5e06861962ab4adfaeb79b81c76afbd8d84c7d5fda", size = 35819211 }, + { url = "https://files.pythonhosted.org/packages/e0/e5/ee82af693cb7b5b2b74f6524cdfede0e6ace779d7720ebca24d68b57c36b/pyarrow-23.0.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:e438dd3f33894e34fd02b26bd12a32d30d006f5852315f611aa4add6c7fab4bc", size = 44502313 }, + { url = "https://files.pythonhosted.org/packages/9c/86/95c61ad82236495f3c31987e85135926ba3ec7f3819296b70a68d8066b49/pyarrow-23.0.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:a244279f240c81f135631be91146d7fa0e9e840e1dfed2aba8483eba25cd98e6", size = 47585886 }, + { url = "https://files.pythonhosted.org/packages/bb/6e/a72d901f305201802f016d015de1e05def7706fff68a1dedefef5dc7eff7/pyarrow-23.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c4692e83e42438dba512a570c6eaa42be2f8b6c0f492aea27dec54bdc495103a", size = 48207055 }, + { url = "https://files.pythonhosted.org/packages/f9/e5/5de029c537630ca18828db45c30e2a78da03675a70ac6c3528203c416fe3/pyarrow-23.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae7f30f898dfe44ea69654a35c93e8da4cef6606dc4c72394068fd95f8e9f54a", size = 50619812 }, + { url = "https://files.pythonhosted.org/packages/59/8d/2af846cd2412e67a087f5bda4a8e23dfd4ebd570f777db2e8686615dafc1/pyarrow-23.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:5b86bb649e4112fb0614294b7d0a175c7513738876b89655605ebb87c804f861", size = 28263851 }, + { url = "https://files.pythonhosted.org/packages/7b/7f/caab863e587041156f6786c52e64151b7386742c8c27140f637176e9230e/pyarrow-23.0.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:ebc017d765d71d80a3f8584ca0566b53e40464586585ac64176115baa0ada7d3", size = 34463240 }, + { url = "https://files.pythonhosted.org/packages/c9/fa/3a5b8c86c958e83622b40865e11af0857c48ec763c11d472c87cd518283d/pyarrow-23.0.0-cp314-cp314t-macosx_12_0_x86_64.whl", hash = "sha256:0800cc58a6d17d159df823f87ad66cefebf105b982493d4bad03ee7fab84b993", size = 35935712 }, + { url = "https://files.pythonhosted.org/packages/c5/08/17a62078fc1a53decb34a9aa79cf9009efc74d63d2422e5ade9fed2f99e3/pyarrow-23.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:3a7c68c722da9bb5b0f8c10e3eae71d9825a4b429b40b32709df5d1fa55beb3d", size = 44503523 }, + { url = "https://files.pythonhosted.org/packages/cc/70/84d45c74341e798aae0323d33b7c39194e23b1abc439ceaf60a68a7a969a/pyarrow-23.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:bd5556c24622df90551063ea41f559b714aa63ca953db884cfb958559087a14e", size = 47542490 }, + { url = "https://files.pythonhosted.org/packages/61/d9/d1274b0e6f19e235de17441e53224f4716574b2ca837022d55702f24d71d/pyarrow-23.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:54810f6e6afc4ffee7c2e0051b61722fbea9a4961b46192dcfae8ea12fa09059", size = 48233605 }, + { url = "https://files.pythonhosted.org/packages/39/07/e4e2d568cb57543d84482f61e510732820cddb0f47c4bb7df629abfed852/pyarrow-23.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:14de7d48052cf4b0ed174533eafa3cfe0711b8076ad70bede32cf59f744f0d7c", size = 50603979 }, + { url = "https://files.pythonhosted.org/packages/72/9c/47693463894b610f8439b2e970b82ef81e9599c757bf2049365e40ff963c/pyarrow-23.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:427deac1f535830a744a4f04a6ac183a64fcac4341b3f618e693c41b7b98d2b0", size = 28338905 }, +] + +[[package]] +name = "pyasn1" +version = "0.6.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fe/b6/6e630dff89739fcd427e3f72b3d905ce0acb85a45d4ec3e2678718a3487f/pyasn1-0.6.2.tar.gz", hash = "sha256:9b59a2b25ba7e4f8197db7686c09fb33e658b98339fadb826e9512629017833b", size = 146586 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/b5/a96872e5184f354da9c84ae119971a0a4c221fe9b27a4d94bd43f2596727/pyasn1-0.6.2-py3-none-any.whl", hash = "sha256:1eb26d860996a18e9b6ed05e7aae0e9fc21619fcee6af91cca9bad4fbea224bf", size = 83371 }, +] + +[[package]] +name = "pyasn1-modules" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyasn1" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259 }, +] + +[[package]] +name = "pycparser" +version = "3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz", hash = "sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29", size = 103492 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172 }, +] + +[[package]] +name = "pydantic" +version = "2.6.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a7/2d/6308c04382ebdf15f1add7f0ec5e518ab23a0958363a8b3399f09c314fc0/pydantic-2.6.2.tar.gz", hash = "sha256:a09be1c3d28f3abe37f8a78af58284b236a92ce520105ddc91a6d29ea1176ba7", size = 679956 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/42/28/f19be8d493c59a8ddf32c15d69765c6423ad712da1c6255b418df2fc1443/pydantic-2.6.2-py3-none-any.whl", hash = "sha256:37a5432e54b12fecaa1049c5195f3d860a10e01bdfd24f1840ef14bd0d3aeab3", size = 394889 }, +] + +[[package]] +name = "pydantic-core" +version = "2.16.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/77/3f/65dbe5231946fe02b4e6ea92bc303d2462f45d299890fd5e8bfe4d1c3d66/pydantic_core-2.16.3.tar.gz", hash = "sha256:1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad", size = 368930 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8e/c7/d89b2692eaaebadc9aa792a8e22f085b7fc7ed11f4cff791a9572c3fae3f/pydantic_core-2.16.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:519ae0312616026bf4cedc0fe459e982734f3ca82ee8c7246c19b650b60a5ee4", size = 1930272 }, + { url = "https://files.pythonhosted.org/packages/ff/c7/e14e6ce2fe221d1046a7cc190b26b2bde2b1076d901154cdb8c20d88e6e0/pydantic_core-2.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b3992a322a5617ded0a9f23fd06dbc1e4bd7cf39bc4ccf344b10f80af58beacd", size = 1739032 }, + { url = "https://files.pythonhosted.org/packages/d7/ce/666885ab07e5184825b081095071297057b77c9dccd62616bf5b85a26365/pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d62da299c6ecb04df729e4b5c52dc0d53f4f8430b4492b93aa8de1f541c4aac", size = 1888422 }, + { url = "https://files.pythonhosted.org/packages/54/18/7dd9308ad022d0b47b41f5506e179e563e7cf04a04d1574598e756c83b2a/pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2acca2be4bb2f2147ada8cac612f8a98fc09f41c89f87add7256ad27332c2fda", size = 1890735 }, + { url = "https://files.pythonhosted.org/packages/ce/68/50bfcf8fc9e51a9ca7e914bfcf8902008511e63f9922694474161ed028b9/pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1b662180108c55dfbf1280d865b2d116633d436cfc0bba82323554873967b340", size = 2061840 }, + { url = "https://files.pythonhosted.org/packages/9d/1a/b550381063265588e7c54ff56a642a725ac3bfbb3c8a5a08409ccac1e810/pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7c6ed0dc9d8e65f24f5824291550139fe6f37fac03788d4580da0d33bc00c97", size = 3208682 }, + { url = "https://files.pythonhosted.org/packages/18/0e/1e39cfbffa57e92ab9f1f0869b32ead8a48ab11e4a373421d625f25fcb26/pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1bb0827f56654b4437955555dc3aeeebeddc47c2d7ed575477f082622c49e", size = 2158014 }, + { url = "https://files.pythonhosted.org/packages/be/31/5f6b46d10f7624963630a38cf3ac97f5d62982000a656aa1976d2f84edbd/pydantic_core-2.16.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e56f8186d6210ac7ece503193ec84104da7ceb98f68ce18c07282fcc2452e76f", size = 1966871 }, + { url = "https://files.pythonhosted.org/packages/0d/84/5e157e382cf8e2a5854802211ab954662841a82e3d3b9ff1be08b3fd7298/pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:936e5db01dd49476fa8f4383c259b8b1303d5dd5fb34c97de194560698cc2c5e", size = 2061086 }, + { url = "https://files.pythonhosted.org/packages/fe/18/ced020e55c75cfc514957bbe8fefe61d591673098c4385c53bcad183928f/pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:33809aebac276089b78db106ee692bdc9044710e26f24a9a2eaa35a0f9fa70ba", size = 2201691 }, + { url = "https://files.pythonhosted.org/packages/24/4b/10799233b549858bd6a701ef2c849916d600a029d1f57e89c1ac9789486d/pydantic_core-2.16.3-cp311-none-win32.whl", hash = "sha256:ded1c35f15c9dea16ead9bffcde9bb5c7c031bff076355dc58dcb1cb436c4721", size = 1747835 }, + { url = "https://files.pythonhosted.org/packages/2d/8a/6b16ba811d1b3499fa550a13913e0b053a15300d53fe1dd891e004c2dbd3/pydantic_core-2.16.3-cp311-none-win_amd64.whl", hash = "sha256:d89ca19cdd0dd5f31606a9329e309d4fcbb3df860960acec32630297d61820df", size = 1880959 }, + { url = "https://files.pythonhosted.org/packages/79/14/9df1b494df26b53efd7b80502b2a5ebf497a68653ca316b8c85116b73a27/pydantic_core-2.16.3-cp311-none-win_arm64.whl", hash = "sha256:6162f8d2dc27ba21027f261e4fa26f8bcb3cf9784b7f9499466a311ac284b5b9", size = 1835157 }, + { url = "https://files.pythonhosted.org/packages/03/c8/9afd3a316123806d7bff177beba7906ab9dd267845ae42f98f051d2250a0/pydantic_core-2.16.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f56ae86b60ea987ae8bcd6654a887238fd53d1384f9b222ac457070b7ac4cff", size = 1900858 }, + { url = "https://files.pythonhosted.org/packages/e7/b2/b6eef8d0a914e44826785cc99cd7a1711c2eea2dfc69bc3aefc3be507234/pydantic_core-2.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9bd22a2a639e26171068f8ebb5400ce2c1bc7d17959f60a3b753ae13c632975", size = 1710501 }, + { url = "https://files.pythonhosted.org/packages/3c/82/b79a75a6f5b19f7f43b08671f6b818a335b5d970b9e50a39acd3f07aed32/pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4204e773b4b408062960e65468d5346bdfe139247ee5f1ca2a378983e11388a2", size = 1858820 }, + { url = "https://files.pythonhosted.org/packages/60/7e/5bdb72aa8f1de0a0e38194dd261b5335747ef8d9bf3421fc960498442830/pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f651dd19363c632f4abe3480a7c87a9773be27cfe1341aef06e8759599454120", size = 1851491 }, + { url = "https://files.pythonhosted.org/packages/d7/d9/b3d217a092bf23b143e59a691d61598c308386293c310ff6746a0c8ed6a5/pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aaf09e615a0bf98d406657e0008e4a8701b11481840be7d31755dc9f97c44053", size = 2046483 }, + { url = "https://files.pythonhosted.org/packages/54/c0/7ecafb2dad658078bf28e4045a29a7b2de76319ebbc8cf7ef177d17e4d9e/pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e47755d8152c1ab5b55928ab422a76e2e7b22b5ed8e90a7d584268dd49e9c6b", size = 2937056 }, + { url = "https://files.pythonhosted.org/packages/dc/df/cd1cdd79a307c06fbea11be2cd8f361604b82f9b28c7712bd1220c44f226/pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:500960cb3a0543a724a81ba859da816e8cf01b0e6aaeedf2c3775d12ee49cade", size = 2156558 }, + { url = "https://files.pythonhosted.org/packages/7c/6e/3c188b11eef09d15702f3808bf6d0b2828a4268fb4be19ac7a2ef4f6a8c7/pydantic_core-2.16.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cf6204fe865da605285c34cf1172879d0314ff267b1c35ff59de7154f35fdc2e", size = 1926070 }, + { url = "https://files.pythonhosted.org/packages/46/28/cb10d96904bd7483a6237855e427876e72c369ec100d6c946d468257bbb8/pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d33dd21f572545649f90c38c227cc8631268ba25c460b5569abebdd0ec5974ca", size = 2034580 }, + { url = "https://files.pythonhosted.org/packages/af/9b/3eb4c9dc8712543424b1731c44d3597f56ed4be3bdfbec3f9a45111b774a/pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49d5d58abd4b83fb8ce763be7794d09b2f50f10aa65c0f0c1696c677edeb7cbf", size = 2167261 }, + { url = "https://files.pythonhosted.org/packages/d5/a2/e320fd95c61c7420908b318a74f76f562a8434180c3e60fa880b3c2d4338/pydantic_core-2.16.3-cp312-none-win32.whl", hash = "sha256:f53aace168a2a10582e570b7736cc5bef12cae9cf21775e3eafac597e8551fbe", size = 1755601 }, + { url = "https://files.pythonhosted.org/packages/21/58/88e734fd2e5bd894e3eccd41be3169b8292e820ef82337f17ec4291c0668/pydantic_core-2.16.3-cp312-none-win_amd64.whl", hash = "sha256:0d32576b1de5a30d9a97f300cc6a3f4694c428d956adbc7e6e2f9cad279e45ed", size = 1867737 }, + { url = "https://files.pythonhosted.org/packages/42/cb/c44678e6f3b517bd89beebc2bd0afc440674b9820d008ef3d0fac482476a/pydantic_core-2.16.3-cp312-none-win_arm64.whl", hash = "sha256:ec08be75bb268473677edb83ba71e7e74b43c008e4a7b1907c6d57e940bf34b6", size = 1848305 }, +] + +[[package]] +name = "pydantic-settings" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/00/a4/89191c3cce6e6f79b734bfe81d3a8f176d21b57b034689cfbdc57d61c412/pydantic_settings-2.2.1.tar.gz", hash = "sha256:00b9f6a5e95553590434c0fa01ead0b216c3e10bc54ae02e37f359948643c5ed", size = 35495 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/99/ee/24ec87e3a91426497c5a2b9880662d19cfd640342d477334ebc60fc2c276/pydantic_settings-2.2.1-py3-none-any.whl", hash = "sha256:0235391d26db4d2190cb9b31051c4b46882d28a51533f97440867f012d4da091", size = 13150 }, +] + +[[package]] +name = "pydeck" +version = "0.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jinja2" }, + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/ca/40e14e196864a0f61a92abb14d09b3d3da98f94ccb03b49cf51688140dab/pydeck-0.9.1.tar.gz", hash = "sha256:f74475ae637951d63f2ee58326757f8d4f9cd9f2a457cf42950715003e2cb605", size = 3832240 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl", hash = "sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038", size = 6900403 }, +] + +[[package]] +name = "pygments" +version = "2.19.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217 }, +] + +[[package]] +name = "pykdtree" +version = "1.4.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/12/8d/ab32411372d016404e8cf0a30ff955c4420717a88c9df4ab0bd3dc4740be/pykdtree-1.4.3.tar.gz", hash = "sha256:d9187930ffb8c822c52595b64948b47346694ee2a49e2702420b58f743d786f5", size = 30472 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/db/f8e30f61891c3455eda8f89691f200ac422258c2ae1c26f98dea1819d31b/pykdtree-1.4.3-cp311-cp311-macosx_13_0_x86_64.whl", hash = "sha256:bf1c863b97dec6ef9eda5f8c22e2513c1679b513a95f7bb49da90b49d8584223", size = 352572 }, + { url = "https://files.pythonhosted.org/packages/06/fb/4e6b8478d4121780f4c19f16676cc1745ae9665c6ebce5c4b860b21bf57d/pykdtree-1.4.3-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:ffe8ec795142793f927879dd8b058066b4f3613e91a2639cc57b8d9eae5e49a0", size = 315617 }, + { url = "https://files.pythonhosted.org/packages/26/69/cf40c90c488676701c5d088fbc3380d3d884eeef9ba87ef079442bcab847/pykdtree-1.4.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bd3a4454b8f86ce22f7b92b4bc53e309817b0d3602afff8c9a17fde1bd6dd3f0", size = 441507 }, + { url = "https://files.pythonhosted.org/packages/46/aa/ad48cc40d15c6c12d64d06768db96bde01e8f72dbfbbcebf391bcc1682fb/pykdtree-1.4.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:44d2e1b6a3d02b5cf9646bf754931fdacb869cefd328242766e1dc0be909cca1", size = 456475 }, + { url = "https://files.pythonhosted.org/packages/62/d2/439860d63d40501e33370694a66de439696039a613ab31156040454e633a/pykdtree-1.4.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3b3899ae553d63e351a2fd98f1656affb7923bda02e066ea4703aa5ca1879582", size = 493800 }, + { url = "https://files.pythonhosted.org/packages/ec/0c/f2bbc770d16b76a1a0d0967121796be4bbdece358c736b5fbc07327df82d/pykdtree-1.4.3-cp311-cp311-win_amd64.whl", hash = "sha256:bb3367a325278a218fd22b321f1ef485445a0f19c23e1aa7bd6e34e0f4ff4d03", size = 67916 }, + { url = "https://files.pythonhosted.org/packages/1a/95/8ea06124b9f2880b645532703cacee062bce45ec67c0c05314686415fc31/pykdtree-1.4.3-cp311-cp311-win_arm64.whl", hash = "sha256:b6630c10c5b05535b0045d7a00a95e5e53a7a44319069ff3054d69b52be3e81c", size = 55430 }, + { url = "https://files.pythonhosted.org/packages/0b/f8/6cf164851d7d72b9bb7bc0ef4206ab191bfdfa9b6f017473ae69a1043e38/pykdtree-1.4.3-cp312-cp312-macosx_13_0_x86_64.whl", hash = "sha256:e0421694c5522911eb892eb916f1bcd08d70b72a69d5226d76bfa7706a2d9c74", size = 350280 }, + { url = "https://files.pythonhosted.org/packages/8c/93/4842213b45a588efbbfc4ad2a0773efd7c03038a3c727c47a3ab40589ffa/pykdtree-1.4.3-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:c656c5c0caa0be582bcf3b662578db4d898d652fcb1de0586eae854a0f1ece5b", size = 314622 }, + { url = "https://files.pythonhosted.org/packages/84/ed/a3978e5457d838945f1023240b12e72be71a53c8d3d0c0857f2063cc085d/pykdtree-1.4.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8ace71f89edb21dc24c5d6c9e952638c7f2d229d75701a39e633f30b08668b63", size = 471736 }, + { url = "https://files.pythonhosted.org/packages/1d/3f/6e51e96d2aa9101646742ff7429b628580ab59a9dbbf9540b9c3fe5fd1ab/pykdtree-1.4.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:08d63ee594b5cd7524bfa37ab857304a775ed04b7431ed4b48169ad664d694d8", size = 484828 }, + { url = "https://files.pythonhosted.org/packages/ef/88/2a278de28b3958599ad75de198a039ba0b5b371d5cad809563cb522e03e6/pykdtree-1.4.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6c1fa063c2c7387dccd7553b1b677c05f7e762e9a7cfda35f5bb053ee6acea59", size = 521655 }, + { url = "https://files.pythonhosted.org/packages/27/52/555bdec183897687015b736bc852201386125d196b3a7b5c57da8118b106/pykdtree-1.4.3-cp312-cp312-win_amd64.whl", hash = "sha256:6d102ed37a54067e75485afb676c9c4bd723033a6e5661b47c059aa83ae6253e", size = 66371 }, + { url = "https://files.pythonhosted.org/packages/ae/54/e51d88b7c2e9d7e8ab75461d96b21f54ffa639ff2515da5344e9a96b66b1/pykdtree-1.4.3-cp312-cp312-win_arm64.whl", hash = "sha256:49ea28ecd75e0d450c1e9f54c8bc35eb1b677bb7fa0df2c341b83e782a976576", size = 54381 }, + { url = "https://files.pythonhosted.org/packages/ba/4b/76a3ee5a14053a7e7f7584ac6f8fd0e01959919773b6c6aad95aaf041288/pykdtree-1.4.3-cp313-cp313-macosx_13_0_x86_64.whl", hash = "sha256:8e1c1fff9f3893a82bf5b5f09be8d6ee83b05ed9d577e30eb50e6d729e15e455", size = 349780 }, + { url = "https://files.pythonhosted.org/packages/4e/87/205f0a5c0fe687c10d1e8d1869146a7e20e4549a7cea12ae0ee4968a5a73/pykdtree-1.4.3-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:165bfa54a1a98609bfa1f52ea739f6347a01f5da418512bf8f7fa360cfca979f", size = 314048 }, + { url = "https://files.pythonhosted.org/packages/19/1f/caf7fd20d7dc9ca065e6fdd4f0fc6c9631e87dea2866121df2cca591c387/pykdtree-1.4.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2a73001e203ea2aa4415ffb251fe9f71de1e0cb935a6cd014d4a4610f7ca7bbb", size = 450018 }, + { url = "https://files.pythonhosted.org/packages/a4/3e/dc89d0757452d1d0207b558f6a40bf2af1770a664b56d2c14f9ccd8ec75d/pykdtree-1.4.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0726995df7f62bee5beabc867ba86ffab96cc38c4cf59dd92cb92eab64c51b91", size = 464481 }, + { url = "https://files.pythonhosted.org/packages/32/84/6ea33dc76a667aba7fc77591028b853d600e335953deac3e9b2f13cff951/pykdtree-1.4.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f9a51e58446f60bb572701179c21191c1a8fdd233c79a79133eff85bf7349362", size = 499285 }, + { url = "https://files.pythonhosted.org/packages/a8/59/7e738300a6d733235ef641398dd7eb297c9a575140ca7e89fcf1c608f42e/pykdtree-1.4.3-cp313-cp313-win_amd64.whl", hash = "sha256:32af4eaf44326b68f0f1a1ec0813b7b134477dd91fee2ce699a7891aec833c6f", size = 66772 }, + { url = "https://files.pythonhosted.org/packages/1e/6d/adc34737c527e606e12da525e530c2c05d80f405b0ddc24f9322a7a39b31/pykdtree-1.4.3-cp313-cp313-win_arm64.whl", hash = "sha256:77eaf63d25ab10f980bc516e1864fb4181e717d4005ef0249dd7119d7601ef6d", size = 54426 }, + { url = "https://files.pythonhosted.org/packages/cd/57/74552a627d3a84b2974ab3a6b8f0eb16dca4de7e707e803da500a89c90cb/pykdtree-1.4.3-cp314-cp314-macosx_13_0_x86_64.whl", hash = "sha256:62d1422df5c79d270e15f298eb34b84556dc8142c1cb9f9d90d7cc138eed68df", size = 349950 }, + { url = "https://files.pythonhosted.org/packages/5d/e1/33314e89bc9a7ec14607e17dbae463e04cf4eb4ada5f2e4663fb4e6510b5/pykdtree-1.4.3-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:b53a9d473d0e5ddeb7608b2b364fb40e8312c6eb3cd81acd095989b7bce6880d", size = 314326 }, + { url = "https://files.pythonhosted.org/packages/48/43/a7ae1c28cdb2f3ee7b9890cb06b7f8df2a4ece0ce2812a5aefc69863fe95/pykdtree-1.4.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:089e30a1c249cacb5a36db8ddbe9c450e65df65c9fa7e6294a004ea9acefa59a", size = 448863 }, + { url = "https://files.pythonhosted.org/packages/94/d4/48cd5cec4a1c56a7f5dc5eec734a82d07012f2d1d1b01ff8afa52ded3c62/pykdtree-1.4.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7c8b4ecaf2d9737508eaf342ba8baae969bfff8011521e3ac1b656a70a5a5f32", size = 461634 }, + { url = "https://files.pythonhosted.org/packages/0b/18/c3ee105e02aeea6ae6535f486f659c21011ac306a3a62a3139ad9558b688/pykdtree-1.4.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:7a582474f5c504a6e3ac1576d876fc7fdc620882e74eaa554bba660f6d927da8", size = 496965 }, + { url = "https://files.pythonhosted.org/packages/27/b8/75727565956edd9b458f835b6fee3ceeaafc4d7c78bd7fb1a2d274c54944/pykdtree-1.4.3-cp314-cp314-win_amd64.whl", hash = "sha256:9beb58ff9d77c80a6860d536f0100964fb3b191939d2b68a1165027a5993d413", size = 68062 }, + { url = "https://files.pythonhosted.org/packages/f0/33/b6eff9bdc395f5bec8cba7d1a4947e4780ca4f6cca7b5e80ad02152af62b/pykdtree-1.4.3-cp314-cp314-win_arm64.whl", hash = "sha256:658d02283bd53d92653cc033023eb22fad016b294763bbe751fd985bedc595f3", size = 55916 }, + { url = "https://files.pythonhosted.org/packages/0a/88/480bdfb3052859de1e9d6a208e0d5d743f5e5f094777afb32d918fa2e0eb/pykdtree-1.4.3-cp314-cp314t-macosx_13_0_x86_64.whl", hash = "sha256:7c843167ea246ad1a5ece27a38a6f6d3f40484a2a21dcbea902d0d550c355f57", size = 353657 }, + { url = "https://files.pythonhosted.org/packages/dd/28/dcff6150f951600b9194a648d28c4106aca5738e1765077fda7d913c687c/pykdtree-1.4.3-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:76cdc90fa164846ac8e3c2b6a3370dfec7161b3357b24aa68bdcd25bbcaf669f", size = 317584 }, + { url = "https://files.pythonhosted.org/packages/f8/98/f5ce0042ec442ba57c8b7cad08ac1596c34c21f9b02f9ebca46104a19121/pykdtree-1.4.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:537efd8b17e2b9dd36254d70d425debe9dbb20a29fc2eb83c7005e212505c517", size = 466553 }, + { url = "https://files.pythonhosted.org/packages/e2/9f/d7faecdd48f4eccc98180ba74dce08384a12117ca73e556cc4fcff83ffd0/pykdtree-1.4.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00cc35d95b9c822580af01619f11800cae24b1888b881195b7eb546c998ffff2", size = 464043 }, + { url = "https://files.pythonhosted.org/packages/0e/5b/a16dcf152140400752c9232edaaac5d3079a58ac3ac1c2672edbfddf0e35/pykdtree-1.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:a332bd906347e0769363051ff4f67d9aa985b30a8ad4f25ff9538247cd0dda03", size = 498328 }, + { url = "https://files.pythonhosted.org/packages/5d/2a/7729c6cdd3af4fa336b89eb4f4428409be8e8b97b1682dfd68efe674b977/pykdtree-1.4.3-cp314-cp314t-win_amd64.whl", hash = "sha256:bee5fa72ba2b37a731465d6b7e933701af438ce0c72de471bd6a4f9b76c68e33", size = 74061 }, + { url = "https://files.pythonhosted.org/packages/a0/50/cfc0d7d0385168ba7888c28696028670e86d4d2346be52c99bf1ea643c61/pykdtree-1.4.3-cp314-cp314t-win_arm64.whl", hash = "sha256:74f042f39ac8ba599d4b767c8e9162e5e34b108f217a68e9f89f059620f62253", size = 58909 }, +] + +[[package]] +name = "pyparsing" +version = "3.3.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz", hash = "sha256:c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc", size = 6851574 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl", hash = "sha256:850ba148bd908d7e2411587e247a1e4f0327839c40e2e5e6d05a007ecc69911d", size = 122781 }, +] + +[[package]] +name = "pyproj" +version = "3.7.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/04/90/67bd7260b4ea9b8b20b4f58afef6c223ecb3abf368eb4ec5bc2cdef81b49/pyproj-3.7.2.tar.gz", hash = "sha256:39a0cf1ecc7e282d1d30f36594ebd55c9fae1fda8a2622cee5d100430628f88c", size = 226279 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a6/bd/f205552cd1713b08f93b09e39a3ec99edef0b3ebbbca67b486fdf1abe2de/pyproj-3.7.2-cp311-cp311-macosx_13_0_x86_64.whl", hash = "sha256:2514d61f24c4e0bb9913e2c51487ecdaeca5f8748d8313c933693416ca41d4d5", size = 6227022 }, + { url = "https://files.pythonhosted.org/packages/75/4c/9a937e659b8b418ab573c6d340d27e68716928953273e0837e7922fcac34/pyproj-3.7.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:8693ca3892d82e70de077701ee76dd13d7bca4ae1c9d1e739d72004df015923a", size = 4625810 }, + { url = "https://files.pythonhosted.org/packages/c0/7d/a9f41e814dc4d1dc54e95b2ccaf0b3ebe3eb18b1740df05fe334724c3d89/pyproj-3.7.2-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:5e26484d80fea56273ed1555abaea161e9661d81a6c07815d54b8e883d4ceb25", size = 9638694 }, + { url = "https://files.pythonhosted.org/packages/ad/ab/9bdb4a6216b712a1f9aab1c0fcbee5d3726f34a366f29c3e8c08a78d6b70/pyproj-3.7.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:281cb92847814e8018010c48b4069ff858a30236638631c1a91dd7bfa68f8a8a", size = 9493977 }, + { url = "https://files.pythonhosted.org/packages/c9/db/2db75b1b6190f1137b1c4e8ef6a22e1c338e46320f6329bfac819143e063/pyproj-3.7.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9c8577f0b7bb09118ec2e57e3babdc977127dd66326d6c5d755c76b063e6d9dc", size = 10841151 }, + { url = "https://files.pythonhosted.org/packages/89/f7/989643394ba23a286e9b7b3f09981496172f9e0d4512457ffea7dc47ffc7/pyproj-3.7.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a23f59904fac3a5e7364b3aa44d288234af267ca041adb2c2b14a903cd5d3ac5", size = 10751585 }, + { url = "https://files.pythonhosted.org/packages/53/6d/ad928fe975a6c14a093c92e6a319ca18f479f3336bb353a740bdba335681/pyproj-3.7.2-cp311-cp311-win32.whl", hash = "sha256:f2af4ed34b2cf3e031a2d85b067a3ecbd38df073c567e04b52fa7a0202afde8a", size = 5908533 }, + { url = "https://files.pythonhosted.org/packages/79/e0/b95584605cec9ed50b7ebaf7975d1c4ddeec5a86b7a20554ed8b60042bd7/pyproj-3.7.2-cp311-cp311-win_amd64.whl", hash = "sha256:0b7cb633565129677b2a183c4d807c727d1c736fcb0568a12299383056e67433", size = 6320742 }, + { url = "https://files.pythonhosted.org/packages/b7/4d/536e8f93bca808175c2d0a5ac9fdf69b960d8ab6b14f25030dccb07464d7/pyproj-3.7.2-cp311-cp311-win_arm64.whl", hash = "sha256:38b08d85e3a38e455625b80e9eb9f78027c8e2649a21dec4df1f9c3525460c71", size = 6245772 }, + { url = "https://files.pythonhosted.org/packages/8d/ab/9893ea9fb066be70ed9074ae543914a618c131ed8dff2da1e08b3a4df4db/pyproj-3.7.2-cp312-cp312-macosx_13_0_x86_64.whl", hash = "sha256:0a9bb26a6356fb5b033433a6d1b4542158fb71e3c51de49b4c318a1dff3aeaab", size = 6219832 }, + { url = "https://files.pythonhosted.org/packages/53/78/4c64199146eed7184eb0e85bedec60a4aa8853b6ffe1ab1f3a8b962e70a0/pyproj-3.7.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:567caa03021178861fad27fabde87500ec6d2ee173dd32f3e2d9871e40eebd68", size = 4620650 }, + { url = "https://files.pythonhosted.org/packages/b6/ac/14a78d17943898a93ef4f8c6a9d4169911c994e3161e54a7cedeba9d8dde/pyproj-3.7.2-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:c203101d1dc3c038a56cff0447acc515dd29d6e14811406ac539c21eed422b2a", size = 9667087 }, + { url = "https://files.pythonhosted.org/packages/b8/be/212882c450bba74fc8d7d35cbd57e4af84792f0a56194819d98106b075af/pyproj-3.7.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:1edc34266c0c23ced85f95a1ee8b47c9035eae6aca5b6b340327250e8e281630", size = 9552797 }, + { url = "https://files.pythonhosted.org/packages/ba/c0/c0f25c87b5d2a8686341c53c1792a222a480d6c9caf60311fec12c99ec26/pyproj-3.7.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:aa9f26c21bc0e2dc3d224cb1eb4020cf23e76af179a7c66fea49b828611e4260", size = 10837036 }, + { url = "https://files.pythonhosted.org/packages/5d/37/5cbd6772addde2090c91113332623a86e8c7d583eccb2ad02ea634c4a89f/pyproj-3.7.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f9428b318530625cb389b9ddc9c51251e172808a4af79b82809376daaeabe5e9", size = 10775952 }, + { url = "https://files.pythonhosted.org/packages/69/a1/dc250e3cf83eb4b3b9a2cf86fdb5e25288bd40037ae449695550f9e96b2f/pyproj-3.7.2-cp312-cp312-win32.whl", hash = "sha256:b3d99ed57d319da042f175f4554fc7038aa4bcecc4ac89e217e350346b742c9d", size = 5898872 }, + { url = "https://files.pythonhosted.org/packages/4a/a6/6fe724b72b70f2b00152d77282e14964d60ab092ec225e67c196c9b463e5/pyproj-3.7.2-cp312-cp312-win_amd64.whl", hash = "sha256:11614a054cd86a2ed968a657d00987a86eeb91fdcbd9ad3310478685dc14a128", size = 6312176 }, + { url = "https://files.pythonhosted.org/packages/5d/68/915cc32c02a91e76d02c8f55d5a138d6ef9e47a0d96d259df98f4842e558/pyproj-3.7.2-cp312-cp312-win_arm64.whl", hash = "sha256:509a146d1398bafe4f53273398c3bb0b4732535065fa995270e52a9d3676bca3", size = 6233452 }, + { url = "https://files.pythonhosted.org/packages/be/14/faf1b90d267cea68d7e70662e7f88cefdb1bc890bd596c74b959e0517a72/pyproj-3.7.2-cp313-cp313-macosx_13_0_x86_64.whl", hash = "sha256:19466e529b1b15eeefdf8ff26b06fa745856c044f2f77bf0edbae94078c1dfa1", size = 6214580 }, + { url = "https://files.pythonhosted.org/packages/35/48/da9a45b184d375f62667f62eba0ca68569b0bd980a0bb7ffcc1d50440520/pyproj-3.7.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:c79b9b84c4a626c5dc324c0d666be0bfcebd99f7538d66e8898c2444221b3da7", size = 4615388 }, + { url = "https://files.pythonhosted.org/packages/5e/e7/d2b459a4a64bca328b712c1b544e109df88e5c800f7c143cfbc404d39bfb/pyproj-3.7.2-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:ceecf374cacca317bc09e165db38ac548ee3cad07c3609442bd70311c59c21aa", size = 9628455 }, + { url = "https://files.pythonhosted.org/packages/f8/85/c2b1706e51942de19076eff082f8495e57d5151364e78b5bef4af4a1d94a/pyproj-3.7.2-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5141a538ffdbe4bfd157421828bb2e07123a90a7a2d6f30fa1462abcfb5ce681", size = 9514269 }, + { url = "https://files.pythonhosted.org/packages/34/38/07a9b89ae7467872f9a476883a5bad9e4f4d1219d31060f0f2b282276cbe/pyproj-3.7.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f000841e98ea99acbb7b8ca168d67773b0191de95187228a16110245c5d954d5", size = 10808437 }, + { url = "https://files.pythonhosted.org/packages/12/56/fda1daeabbd39dec5b07f67233d09f31facb762587b498e6fc4572be9837/pyproj-3.7.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8115faf2597f281a42ab608ceac346b4eb1383d3b45ab474fd37341c4bf82a67", size = 10745540 }, + { url = "https://files.pythonhosted.org/packages/0d/90/c793182cbba65a39a11db2ac6b479fe76c59e6509ae75e5744c344a0da9d/pyproj-3.7.2-cp313-cp313-win32.whl", hash = "sha256:f18c0579dd6be00b970cb1a6719197fceecc407515bab37da0066f0184aafdf3", size = 5896506 }, + { url = "https://files.pythonhosted.org/packages/be/0f/747974129cf0d800906f81cd25efd098c96509026e454d4b66868779ab04/pyproj-3.7.2-cp313-cp313-win_amd64.whl", hash = "sha256:bb41c29d5f60854b1075853fe80c58950b398d4ebb404eb532536ac8d2834ed7", size = 6310195 }, + { url = "https://files.pythonhosted.org/packages/82/64/fc7598a53172c4931ec6edf5228280663063150625d3f6423b4c20f9daff/pyproj-3.7.2-cp313-cp313-win_arm64.whl", hash = "sha256:2b617d573be4118c11cd96b8891a0b7f65778fa7733ed8ecdb297a447d439100", size = 6230748 }, + { url = "https://files.pythonhosted.org/packages/aa/f0/611dd5cddb0d277f94b7af12981f56e1441bf8d22695065d4f0df5218498/pyproj-3.7.2-cp313-cp313t-macosx_13_0_x86_64.whl", hash = "sha256:d27b48f0e81beeaa2b4d60c516c3a1cfbb0c7ff6ef71256d8e9c07792f735279", size = 6241729 }, + { url = "https://files.pythonhosted.org/packages/15/93/40bd4a6c523ff9965e480870611aed7eda5aa2c6128c6537345a2b77b542/pyproj-3.7.2-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:55a3610d75023c7b1c6e583e48ef8f62918e85a2ae81300569d9f104d6684bb6", size = 4652497 }, + { url = "https://files.pythonhosted.org/packages/1b/ae/7150ead53c117880b35e0d37960d3138fe640a235feb9605cb9386f50bb0/pyproj-3.7.2-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:8d7349182fa622696787cc9e195508d2a41a64765da9b8a6bee846702b9e6220", size = 9942610 }, + { url = "https://files.pythonhosted.org/packages/d8/17/7a4a7eafecf2b46ab64e5c08176c20ceb5844b503eaa551bf12ccac77322/pyproj-3.7.2-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:d230b186eb876ed4f29a7c5ee310144c3a0e44e89e55f65fb3607e13f6db337c", size = 9692390 }, + { url = "https://files.pythonhosted.org/packages/c3/55/ae18f040f6410f0ea547a21ada7ef3e26e6c82befa125b303b02759c0e9d/pyproj-3.7.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:237499c7862c578d0369e2b8ac56eec550e391a025ff70e2af8417139dabb41c", size = 11047596 }, + { url = "https://files.pythonhosted.org/packages/e6/2e/d3fff4d2909473f26ae799f9dda04caa322c417a51ff3b25763f7d03b233/pyproj-3.7.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8c225f5978abd506fd9a78eaaf794435e823c9156091cabaab5374efb29d7f69", size = 10896975 }, + { url = "https://files.pythonhosted.org/packages/f2/bc/8fc7d3963d87057b7b51ebe68c1e7c51c23129eee5072ba6b86558544a46/pyproj-3.7.2-cp313-cp313t-win32.whl", hash = "sha256:2da731876d27639ff9d2d81c151f6ab90a1546455fabd93368e753047be344a2", size = 5953057 }, + { url = "https://files.pythonhosted.org/packages/cc/27/ea9809966cc47d2d51e6d5ae631ea895f7c7c7b9b3c29718f900a8f7d197/pyproj-3.7.2-cp313-cp313t-win_amd64.whl", hash = "sha256:f54d91ae18dd23b6c0ab48126d446820e725419da10617d86a1b69ada6d881d3", size = 6375414 }, + { url = "https://files.pythonhosted.org/packages/5b/f8/1ef0129fba9a555c658e22af68989f35e7ba7b9136f25758809efec0cd6e/pyproj-3.7.2-cp313-cp313t-win_arm64.whl", hash = "sha256:fc52ba896cfc3214dc9f9ca3c0677a623e8fdd096b257c14a31e719d21ff3fdd", size = 6262501 }, + { url = "https://files.pythonhosted.org/packages/42/17/c2b050d3f5b71b6edd0d96ae16c990fdc42a5f1366464a5c2772146de33a/pyproj-3.7.2-cp314-cp314-macosx_13_0_x86_64.whl", hash = "sha256:2aaa328605ace41db050d06bac1adc11f01b71fe95c18661497763116c3a0f02", size = 6214541 }, + { url = "https://files.pythonhosted.org/packages/03/68/68ada9c8aea96ded09a66cfd9bf87aa6db8c2edebe93f5bf9b66b0143fbc/pyproj-3.7.2-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:35dccbce8201313c596a970fde90e33605248b66272595c061b511c8100ccc08", size = 4617456 }, + { url = "https://files.pythonhosted.org/packages/81/e4/4c50ceca7d0e937977866b02cb64e6ccf4df979a5871e521f9e255df6073/pyproj-3.7.2-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:25b0b7cb0042444c29a164b993c45c1b8013d6c48baa61dc1160d834a277e83b", size = 9615590 }, + { url = "https://files.pythonhosted.org/packages/05/1e/ada6fb15a1d75b5bd9b554355a69a798c55a7dcc93b8d41596265c1772e3/pyproj-3.7.2-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:85def3a6388e9ba51f964619aa002a9d2098e77c6454ff47773bb68871024281", size = 9474960 }, + { url = "https://files.pythonhosted.org/packages/51/07/9d48ad0a8db36e16f842f2c8a694c1d9d7dcf9137264846bef77585a71f3/pyproj-3.7.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b1bccefec3875ab81eabf49059e2b2ea77362c178b66fd3528c3e4df242f1516", size = 10799478 }, + { url = "https://files.pythonhosted.org/packages/85/cf/2f812b529079f72f51ff2d6456b7fef06c01735e5cfd62d54ffb2b548028/pyproj-3.7.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:d5371ca114d6990b675247355a801925814eca53e6c4b2f1b5c0a956336ee36e", size = 10710030 }, + { url = "https://files.pythonhosted.org/packages/99/9b/4626a19e1f03eba4c0e77b91a6cf0f73aa9cb5d51a22ee385c22812bcc2c/pyproj-3.7.2-cp314-cp314-win32.whl", hash = "sha256:77f066626030f41be543274f5ac79f2a511fe89860ecd0914f22131b40a0ec25", size = 5991181 }, + { url = "https://files.pythonhosted.org/packages/04/b2/5a6610554306a83a563080c2cf2c57565563eadd280e15388efa00fb5b33/pyproj-3.7.2-cp314-cp314-win_amd64.whl", hash = "sha256:5a964da1696b8522806f4276ab04ccfff8f9eb95133a92a25900697609d40112", size = 6434721 }, + { url = "https://files.pythonhosted.org/packages/ae/ce/6c910ea2e1c74ef673c5d48c482564b8a7824a44c4e35cca2e765b68cfcc/pyproj-3.7.2-cp314-cp314-win_arm64.whl", hash = "sha256:e258ab4dbd3cf627809067c0ba8f9884ea76c8e5999d039fb37a1619c6c3e1f6", size = 6363821 }, + { url = "https://files.pythonhosted.org/packages/e4/e4/5532f6f7491812ba782a2177fe9de73fd8e2912b59f46a1d056b84b9b8f2/pyproj-3.7.2-cp314-cp314t-macosx_13_0_x86_64.whl", hash = "sha256:bbbac2f930c6d266f70ec75df35ef851d96fdb3701c674f42fd23a9314573b37", size = 6241773 }, + { url = "https://files.pythonhosted.org/packages/20/1f/0938c3f2bbbef1789132d1726d9b0e662f10cfc22522743937f421ad664e/pyproj-3.7.2-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:b7544e0a3d6339dc9151e9c8f3ea62a936ab7cc446a806ec448bbe86aebb979b", size = 4652537 }, + { url = "https://files.pythonhosted.org/packages/c7/a8/488b1ed47d25972f33874f91f09ca8f2227902f05f63a2b80dc73e7b1c97/pyproj-3.7.2-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:f7f5133dca4c703e8acadf6f30bc567d39a42c6af321e7f81975c2518f3ed357", size = 9940864 }, + { url = "https://files.pythonhosted.org/packages/c7/cc/7f4c895d0cb98e47b6a85a6d79eaca03eb266129eed2f845125c09cf31ff/pyproj-3.7.2-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:5aff3343038d7426aa5076f07feb88065f50e0502d1b0d7c22ddfdd2c75a3f81", size = 9688868 }, + { url = "https://files.pythonhosted.org/packages/b2/b7/c7e306b8bb0f071d9825b753ee4920f066c40fbfcce9372c4f3cfb2fc4ed/pyproj-3.7.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:b0552178c61f2ac1c820d087e8ba6e62b29442debddbb09d51c4bf8acc84d888", size = 11045910 }, + { url = "https://files.pythonhosted.org/packages/42/fb/538a4d2df695980e2dde5c04d965fbdd1fe8c20a3194dc4aaa3952a4d1be/pyproj-3.7.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:47d87db2d2c436c5fd0409b34d70bb6cdb875cca2ebe7a9d1c442367b0ab8d59", size = 10895724 }, + { url = "https://files.pythonhosted.org/packages/e8/8b/a3f0618b03957de9db5489a04558a8826f43906628bb0b766033aa3b5548/pyproj-3.7.2-cp314-cp314t-win32.whl", hash = "sha256:c9b6f1d8ad3e80a0ee0903a778b6ece7dca1d1d40f6d114ae01bc8ddbad971aa", size = 6056848 }, + { url = "https://files.pythonhosted.org/packages/bc/56/413240dd5149dd3291eda55aa55a659da4431244a2fd1319d0ae89407cfb/pyproj-3.7.2-cp314-cp314t-win_amd64.whl", hash = "sha256:1914e29e27933ba6f9822663ee0600f169014a2859f851c054c88cf5ea8a333c", size = 6517676 }, + { url = "https://files.pythonhosted.org/packages/15/73/a7141a1a0559bf1a7aa42a11c879ceb19f02f5c6c371c6d57fd86cefd4d1/pyproj-3.7.2-cp314-cp314t-win_arm64.whl", hash = "sha256:d9d25bae416a24397e0d85739f84d323b55f6511e45a522dd7d7eae70d10c7e4", size = 6391844 }, +] + +[[package]] +name = "pyresample" +version = "1.34.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "configobj" }, + { name = "donfig" }, + { name = "numpy" }, + { name = "platformdirs" }, + { name = "pykdtree" }, + { name = "pyproj" }, + { name = "pyyaml" }, + { name = "shapely" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/65/f3/69979fed1660956ebbdfc2498005e6dfde7fdf3df306cf2e0d399f6fcf25/pyresample-1.34.2.tar.gz", hash = "sha256:094e959e3e31a547d39ce1a940e5cdb23845a5c458a0fc244f2e4e5135e4f797", size = 5919355 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/40/f3/d50414c95bb272e2d841cba17cf5a01982815725a57b9c72187f1b44df77/pyresample-1.34.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c5e0e0b8a7919bb72f5de4ca2a60a9ee905a2b460db465e9d59ee4feaf6a7cd5", size = 2377339 }, + { url = "https://files.pythonhosted.org/packages/22/7e/58531f82368a74157764dd387a9b540df722b1d268553bb5119b91f21a11/pyresample-1.34.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ef1c14cc8784cd64dbd74ba3b6ef71b4dc0ac8952d76b7af9dbb1cbd4ad8fec", size = 2345777 }, + { url = "https://files.pythonhosted.org/packages/0d/6c/90273c90df13e48b1327335d1f0fda8a680da76a02bc303157c633050941/pyresample-1.34.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9d3d1b3c86d38da5340bb06e9c28f68ffc7edb2efffa4c9075c07e1967b1728", size = 4635601 }, + { url = "https://files.pythonhosted.org/packages/3d/88/9414017e77ab825c70bfafe329aa4976dbcf0c17a3f074164eb454b10f8a/pyresample-1.34.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f05f810e421119e4b0f5014db159eafa0b2f7aaec9fab1837c50eba60b29ee83", size = 4652111 }, + { url = "https://files.pythonhosted.org/packages/72/3d/b44b8cc2dfc60e74751c118f576f47330e0f9f7bb46dd094e08a5cbb2242/pyresample-1.34.2-cp311-cp311-win_amd64.whl", hash = "sha256:92521961da1f8c59ad615201c8d7866fcd728d904683d69ae2782b325e17ebfe", size = 2312107 }, + { url = "https://files.pythonhosted.org/packages/bd/dc/70f1e53ddb99fed465e4216b138e8ec916bf25efa9d4847da133f7aaa0d4/pyresample-1.34.2-cp311-cp311-win_arm64.whl", hash = "sha256:4b2b4dfd4a5b3f7fa116e5f6a81c96794dddd768f48ad9f7ef31db6cbb6efb28", size = 2252928 }, + { url = "https://files.pythonhosted.org/packages/dc/c2/0e91506dd84a81c79135328f10264a2aa101d46ee10387dc6541e57c7fe1/pyresample-1.34.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bdb904ae5479943d1af6d9184d95d608df2163208f67eded5ddcf7419f0a8eb8", size = 2381733 }, + { url = "https://files.pythonhosted.org/packages/bf/9c/dbe9e7db4a4e222a2846c51bddc77429ad3fb834d80ef373b4809991c293/pyresample-1.34.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f83f64a7cd4f3ab1a20332cdd835ea885824536ff95b1770f70e016f87a9e6a3", size = 2346416 }, + { url = "https://files.pythonhosted.org/packages/da/ad/7436836c47fbf407c61e4465bb8667cb774583f5bd7de811c008aef063c7/pyresample-1.34.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c841b5461a7a3e6bbaf10e01233fa9077d104e953b0dab02c2e285f7cd6b1dc7", size = 4540957 }, + { url = "https://files.pythonhosted.org/packages/61/61/e344944f5669d08a73417a0d3b2754e49f8bbbebeff81c22580c25280d0e/pyresample-1.34.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fcbde65dde7f63b5daff52bca8836d127ba8935f90e59a110984f68f4600a43", size = 4575231 }, + { url = "https://files.pythonhosted.org/packages/33/69/9241990157c2c00338eb3d012a9897155ad66d4d1249318ee1655b629e43/pyresample-1.34.2-cp312-cp312-win_amd64.whl", hash = "sha256:eea9eb6e20dc52bec1ccb2f66d71590d9c4d897c0f171d3230c83d2801a2169f", size = 2315495 }, + { url = "https://files.pythonhosted.org/packages/82/af/a2ee30e78a13c4dd513cfc57203cb8746d9df44e1b3d637a4c1dadc0deb4/pyresample-1.34.2-cp312-cp312-win_arm64.whl", hash = "sha256:6322658cfe0ce9bd0700efdcc4cc6aa0fa74805e06fadb71232d3fb6aea95c5c", size = 2252441 }, + { url = "https://files.pythonhosted.org/packages/d2/85/fafebf57e95fe540519417edbebe472d47741cbbba6911301d590c5a2d9c/pyresample-1.34.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:633c26b6d910e44ac25712b3f10ca30c2f40827ebf620733b5a987958f5f1977", size = 2378182 }, + { url = "https://files.pythonhosted.org/packages/91/78/975ecc967d7f0048fb31bd9458c97998b9bb1114a7fb5c1a18a22d7d66b1/pyresample-1.34.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7b2f169205fb88e47f7aae7c7ca1fd5411f077664fffb5fa58b58602de7222fc", size = 2343330 }, + { url = "https://files.pythonhosted.org/packages/8a/80/4f156ad0d4361a87a1c3ec8b4842d4eca9a351f41e42ae20b0f351672725/pyresample-1.34.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:908b5cc35fcd94961f3af96341a540ab2083e0dba10318f674d0273daaa7d71b", size = 4534516 }, + { url = "https://files.pythonhosted.org/packages/24/f3/ce3a81744124ef544f972d3d17b70f2e67ab9dada24ff98874b541e3080a/pyresample-1.34.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4af6c0e5ecab2eaf167e0fb1ee375db5aedf7fa2b1e4029d07d065b0e6a9d57b", size = 4563306 }, + { url = "https://files.pythonhosted.org/packages/03/a9/3979bf34755348e4a38eea5c92d3386867e9cc342b1b604236359e00c137/pyresample-1.34.2-cp313-cp313-win_amd64.whl", hash = "sha256:dc5a975bbc64bde00375ec1ac39427a829285b10316e57af9dcc1f7cad03b864", size = 2314408 }, + { url = "https://files.pythonhosted.org/packages/64/e4/f610022c7ca596c239f51ff0c4d0c0f6f765425c7005102b656adbe49668/pyresample-1.34.2-cp313-cp313-win_arm64.whl", hash = "sha256:48a4770f3cb23b2e305b5ee073af699d2e7c8f7fba931269017919f859222de0", size = 2251808 }, +] + +[[package]] +name = "pysocks" +version = "1.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/bd/11/293dd436aea955d45fc4e8a35b6ae7270f5b8e00b53cf6c024c83b657a11/PySocks-1.7.1.tar.gz", hash = "sha256:3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0", size = 284429 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl", hash = "sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5", size = 16725 }, +] + +[[package]] +name = "pytest" +version = "9.0.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "iniconfig" }, + { name = "packaging" }, + { name = "pluggy" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d1/db/7ef3487e0fb0049ddb5ce41d3a49c235bf9ad299b6a25d5780a89f19230f/pytest-9.0.2.tar.gz", hash = "sha256:75186651a92bd89611d1d9fc20f0b4345fd827c41ccd5c299a868a05d70edf11", size = 1568901 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl", hash = "sha256:711ffd45bf766d5264d487b917733b453d917afd2b0ad65223959f59089f875b", size = 374801 }, +] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892 }, +] + +[[package]] +name = "python-dotenv" +version = "1.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/bc/57/e84d88dfe0aec03b7a2d4327012c1627ab5f03652216c63d49846d7a6c58/python-dotenv-1.0.1.tar.gz", hash = "sha256:e324ee90a023d808f1959c46bcbc04446a10ced277783dc6ee09987c37ec10ca", size = 39115 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/3e/b68c118422ec867fa7ab88444e1274aa40681c606d59ac27de5a5588f082/python_dotenv-1.0.1-py3-none-any.whl", hash = "sha256:f7b63ef50f1b690dddf550d03497b66d609393b40b564ed0d674909a68ebf16a", size = 19863 }, +] + +[[package]] +name = "pytz" +version = "2025.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225 }, +] + +[[package]] +name = "pyyaml" +version = "6.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6d/16/a95b6757765b7b031c9374925bb718d55e0a9ba8a1b6a12d25962ea44347/pyyaml-6.0.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:44edc647873928551a01e7a563d7452ccdebee747728c1080d881d68af7b997e", size = 185826 }, + { url = "https://files.pythonhosted.org/packages/16/19/13de8e4377ed53079ee996e1ab0a9c33ec2faf808a4647b7b4c0d46dd239/pyyaml-6.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:652cb6edd41e718550aad172851962662ff2681490a8a711af6a4d288dd96824", size = 175577 }, + { url = "https://files.pythonhosted.org/packages/0c/62/d2eb46264d4b157dae1275b573017abec435397aa59cbcdab6fc978a8af4/pyyaml-6.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:10892704fc220243f5305762e276552a0395f7beb4dbf9b14ec8fd43b57f126c", size = 775556 }, + { url = "https://files.pythonhosted.org/packages/10/cb/16c3f2cf3266edd25aaa00d6c4350381c8b012ed6f5276675b9eba8d9ff4/pyyaml-6.0.3-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:850774a7879607d3a6f50d36d04f00ee69e7fc816450e5f7e58d7f17f1ae5c00", size = 882114 }, + { url = "https://files.pythonhosted.org/packages/71/60/917329f640924b18ff085ab889a11c763e0b573da888e8404ff486657602/pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b8bb0864c5a28024fac8a632c443c87c5aa6f215c0b126c449ae1a150412f31d", size = 806638 }, + { url = "https://files.pythonhosted.org/packages/dd/6f/529b0f316a9fd167281a6c3826b5583e6192dba792dd55e3203d3f8e655a/pyyaml-6.0.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1d37d57ad971609cf3c53ba6a7e365e40660e3be0e5175fa9f2365a379d6095a", size = 767463 }, + { url = "https://files.pythonhosted.org/packages/f2/6a/b627b4e0c1dd03718543519ffb2f1deea4a1e6d42fbab8021936a4d22589/pyyaml-6.0.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:37503bfbfc9d2c40b344d06b2199cf0e96e97957ab1c1b546fd4f87e53e5d3e4", size = 794986 }, + { url = "https://files.pythonhosted.org/packages/45/91/47a6e1c42d9ee337c4839208f30d9f09caa9f720ec7582917b264defc875/pyyaml-6.0.3-cp311-cp311-win32.whl", hash = "sha256:8098f252adfa6c80ab48096053f512f2321f0b998f98150cea9bd23d83e1467b", size = 142543 }, + { url = "https://files.pythonhosted.org/packages/da/e3/ea007450a105ae919a72393cb06f122f288ef60bba2dc64b26e2646fa315/pyyaml-6.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:9f3bfb4965eb874431221a3ff3fdcddc7e74e3b07799e0e84ca4a0f867d449bf", size = 158763 }, + { url = "https://files.pythonhosted.org/packages/d1/33/422b98d2195232ca1826284a76852ad5a86fe23e31b009c9886b2d0fb8b2/pyyaml-6.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7f047e29dcae44602496db43be01ad42fc6f1cc0d8cd6c83d342306c32270196", size = 182063 }, + { url = "https://files.pythonhosted.org/packages/89/a0/6cf41a19a1f2f3feab0e9c0b74134aa2ce6849093d5517a0c550fe37a648/pyyaml-6.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:fc09d0aa354569bc501d4e787133afc08552722d3ab34836a80547331bb5d4a0", size = 173973 }, + { url = "https://files.pythonhosted.org/packages/ed/23/7a778b6bd0b9a8039df8b1b1d80e2e2ad78aa04171592c8a5c43a56a6af4/pyyaml-6.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28", size = 775116 }, + { url = "https://files.pythonhosted.org/packages/65/30/d7353c338e12baef4ecc1b09e877c1970bd3382789c159b4f89d6a70dc09/pyyaml-6.0.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5fdec68f91a0c6739b380c83b951e2c72ac0197ace422360e6d5a959d8d97b2c", size = 844011 }, + { url = "https://files.pythonhosted.org/packages/8b/9d/b3589d3877982d4f2329302ef98a8026e7f4443c765c46cfecc8858c6b4b/pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc", size = 807870 }, + { url = "https://files.pythonhosted.org/packages/05/c0/b3be26a015601b822b97d9149ff8cb5ead58c66f981e04fedf4e762f4bd4/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8dc52c23056b9ddd46818a57b78404882310fb473d63f17b07d5c40421e47f8e", size = 761089 }, + { url = "https://files.pythonhosted.org/packages/be/8e/98435a21d1d4b46590d5459a22d88128103f8da4c2d4cb8f14f2a96504e1/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41715c910c881bc081f1e8872880d3c650acf13dfa8214bad49ed4cede7c34ea", size = 790181 }, + { url = "https://files.pythonhosted.org/packages/74/93/7baea19427dcfbe1e5a372d81473250b379f04b1bd3c4c5ff825e2327202/pyyaml-6.0.3-cp312-cp312-win32.whl", hash = "sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5", size = 137658 }, + { url = "https://files.pythonhosted.org/packages/86/bf/899e81e4cce32febab4fb42bb97dcdf66bc135272882d1987881a4b519e9/pyyaml-6.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b", size = 154003 }, + { url = "https://files.pythonhosted.org/packages/1a/08/67bd04656199bbb51dbed1439b7f27601dfb576fb864099c7ef0c3e55531/pyyaml-6.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd", size = 140344 }, + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669 }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252 }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081 }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159 }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626 }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613 }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115 }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427 }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090 }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246 }, + { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814 }, + { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809 }, + { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454 }, + { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355 }, + { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175 }, + { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228 }, + { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194 }, + { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429 }, + { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912 }, + { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108 }, + { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641 }, + { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901 }, + { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132 }, + { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261 }, + { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272 }, + { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923 }, + { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062 }, + { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341 }, +] + +[[package]] +name = "quartz-solar-forecast" +source = { editable = "." } +dependencies = [ + { name = "async-timeout" }, + { name = "httpx" }, + { name = "huggingface-hub" }, + { name = "openmeteo-requests" }, + { name = "pv-site-prediction" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "python-dotenv" }, + { name = "requests-cache" }, + { name = "retry-requests" }, + { name = "sentry-sdk" }, + { name = "typer" }, + { name = "uvicorn" }, + { name = "xarray" }, + { name = "xgboost" }, +] + +[package.dev-dependencies] +all = [ + { name = "fastapi" }, + { name = "gdown" }, + { name = "ocf-vrmapi" }, + { name = "plotly" }, + { name = "pytest" }, + { name = "streamlit" }, +] +dev = [ + { name = "fastapi" }, + { name = "gdown" }, + { name = "matplotlib" }, + { name = "plotly" }, + { name = "pytest" }, + { name = "ruff" }, + { name = "streamlit" }, + { name = "zipfile36" }, +] +inverters = [ + { name = "ocf-vrmapi" }, +] + +[package.metadata] +requires-dist = [ + { name = "async-timeout" }, + { name = "httpx" }, + { name = "huggingface-hub", specifier = "==0.17.3" }, + { name = "openmeteo-requests", specifier = "==1.2.0" }, + { name = "pv-site-prediction", specifier = "==0.1.19" }, + { name = "pydantic", specifier = "==2.6.2" }, + { name = "pydantic-settings" }, + { name = "python-dotenv", specifier = "==1.0.1" }, + { name = "requests-cache", specifier = "==1.2.0" }, + { name = "retry-requests", specifier = "==2.0.0" }, + { name = "sentry-sdk" }, + { name = "typer" }, + { name = "uvicorn" }, + { name = "xarray", specifier = "==2022.12.0" }, + { name = "xgboost", specifier = "==2.0.3" }, +] + +[package.metadata.requires-dev] +all = [ + { name = "fastapi" }, + { name = "gdown", specifier = "==5.1.0" }, + { name = "ocf-vrmapi" }, + { name = "plotly" }, + { name = "pytest" }, + { name = "streamlit" }, +] +dev = [ + { name = "fastapi" }, + { name = "gdown", specifier = "==5.1.0" }, + { name = "matplotlib" }, + { name = "plotly" }, + { name = "pytest" }, + { name = "ruff" }, + { name = "streamlit" }, + { name = "zipfile36" }, +] +inverters = [{ name = "ocf-vrmapi" }] + +[[package]] +name = "referencing" +version = "0.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl", hash = "sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231", size = 26766 }, +] + +[[package]] +name = "requests" +version = "2.32.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "idna" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c9/74/b3ff8e6c8446842c3f5c837e9c3dfcfe2018ea6ecef224c710c85ef728f4/requests-2.32.5.tar.gz", hash = "sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf", size = 134517 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl", hash = "sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6", size = 64738 }, +] + +[package.optional-dependencies] +socks = [ + { name = "pysocks" }, +] + +[[package]] +name = "requests-cache" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "cattrs" }, + { name = "platformdirs" }, + { name = "requests" }, + { name = "url-normalize" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0c/f6/2a1078b61b5b21718b61500b08e84ecd525d94a162db782c1065f9f571c7/requests_cache-1.2.0.tar.gz", hash = "sha256:db1c709ca343cc1cd5b6c8b1a5387298eceed02306a6040760db538c885e3838", size = 3018038 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cc/23/863f517b5d74e297e669c88093ecd92e13a06c488e90acbd5507819049ac/requests_cache-1.2.0-py3-none-any.whl", hash = "sha256:490324301bf0cb924ff4e6324bd2613453e7e1f847353928b08adb0fdfb7f722", size = 61409 }, +] + +[[package]] +name = "requests-oauthlib" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "oauthlib" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/42/f2/05f29bc3913aea15eb670be136045bf5c5bbf4b99ecb839da9b422bb2c85/requests-oauthlib-2.0.0.tar.gz", hash = "sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9", size = 55650 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/5d/63d4ae3b9daea098d5d6f5da83984853c1bbacd5dc826764b249fe119d24/requests_oauthlib-2.0.0-py2.py3-none-any.whl", hash = "sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36", size = 24179 }, +] + +[[package]] +name = "retry-requests" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "requests" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1e/da/6e961557733660bef8d095a1d81423a3707486e2b2ecd2c5ad5ad8d2f59d/retry-requests-2.0.0.tar.gz", hash = "sha256:3d02135e5aafedf09240414182fc7389c5d2b4de0252daba0054c9d6a27e7639", size = 16084 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/f3/8ce908497bebbc2790ef06240a2c0fb28c096abb59062d88f85090464a5f/retry_requests-2.0.0-py3-none-any.whl", hash = "sha256:38e8e3f55051e7b7915c1768884269097865a5da2ea87d5dcafd6ba9498c363f", size = 15772 }, +] + +[[package]] +name = "rich" +version = "14.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/84/4831f881aa6ff3c976f6d6809b58cdfa350593ffc0dc3c58f5f6586780fb/rich-14.3.1.tar.gz", hash = "sha256:b8c5f568a3a749f9290ec6bddedf835cec33696bfc1e48bcfecb276c7386e4b8", size = 230125 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/2a/a1810c8627b9ec8c57ec5ec325d306701ae7be50235e8fd81266e002a3cc/rich-14.3.1-py3-none-any.whl", hash = "sha256:da750b1aebbff0b372557426fb3f35ba56de8ef954b3190315eb64076d6fb54e", size = 309952 }, +] + +[[package]] +name = "rpds-py" +version = "0.30.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/af/3f2f423103f1113b36230496629986e0ef7e199d2aa8392452b484b38ced/rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84", size = 69469 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4d/6e/f964e88b3d2abee2a82c1ac8366da848fce1c6d834dc2132c3fda3970290/rpds_py-0.30.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:a2bffea6a4ca9f01b3f8e548302470306689684e61602aa3d141e34da06cf425", size = 370157 }, + { url = "https://files.pythonhosted.org/packages/94/ba/24e5ebb7c1c82e74c4e4f33b2112a5573ddc703915b13a073737b59b86e0/rpds_py-0.30.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dc4f992dfe1e2bc3ebc7444f6c7051b4bc13cd8e33e43511e8ffd13bf407010d", size = 359676 }, + { url = "https://files.pythonhosted.org/packages/84/86/04dbba1b087227747d64d80c3b74df946b986c57af0a9f0c98726d4d7a3b/rpds_py-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:422c3cb9856d80b09d30d2eb255d0754b23e090034e1deb4083f8004bd0761e4", size = 389938 }, + { url = "https://files.pythonhosted.org/packages/42/bb/1463f0b1722b7f45431bdd468301991d1328b16cffe0b1c2918eba2c4eee/rpds_py-0.30.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:07ae8a593e1c3c6b82ca3292efbe73c30b61332fd612e05abee07c79359f292f", size = 402932 }, + { url = "https://files.pythonhosted.org/packages/99/ee/2520700a5c1f2d76631f948b0736cdf9b0acb25abd0ca8e889b5c62ac2e3/rpds_py-0.30.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12f90dd7557b6bd57f40abe7747e81e0c0b119bef015ea7726e69fe550e394a4", size = 525830 }, + { url = "https://files.pythonhosted.org/packages/e0/ad/bd0331f740f5705cc555a5e17fdf334671262160270962e69a2bdef3bf76/rpds_py-0.30.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:99b47d6ad9a6da00bec6aabe5a6279ecd3c06a329d4aa4771034a21e335c3a97", size = 412033 }, + { url = "https://files.pythonhosted.org/packages/f8/1e/372195d326549bb51f0ba0f2ecb9874579906b97e08880e7a65c3bef1a99/rpds_py-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33f559f3104504506a44bb666b93a33f5d33133765b0c216a5bf2f1e1503af89", size = 390828 }, + { url = "https://files.pythonhosted.org/packages/ab/2b/d88bb33294e3e0c76bc8f351a3721212713629ffca1700fa94979cb3eae8/rpds_py-0.30.0-cp311-cp311-manylinux_2_31_riscv64.whl", hash = "sha256:946fe926af6e44f3697abbc305ea168c2c31d3e3ef1058cf68f379bf0335a78d", size = 404683 }, + { url = "https://files.pythonhosted.org/packages/50/32/c759a8d42bcb5289c1fac697cd92f6fe01a018dd937e62ae77e0e7f15702/rpds_py-0.30.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:495aeca4b93d465efde585977365187149e75383ad2684f81519f504f5c13038", size = 421583 }, + { url = "https://files.pythonhosted.org/packages/2b/81/e729761dbd55ddf5d84ec4ff1f47857f4374b0f19bdabfcf929164da3e24/rpds_py-0.30.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d9a0ca5da0386dee0655b4ccdf46119df60e0f10da268d04fe7cc87886872ba7", size = 572496 }, + { url = "https://files.pythonhosted.org/packages/14/f6/69066a924c3557c9c30baa6ec3a0aa07526305684c6f86c696b08860726c/rpds_py-0.30.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8d6d1cc13664ec13c1b84241204ff3b12f9bb82464b8ad6e7a5d3486975c2eed", size = 598669 }, + { url = "https://files.pythonhosted.org/packages/5f/48/905896b1eb8a05630d20333d1d8ffd162394127b74ce0b0784ae04498d32/rpds_py-0.30.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3896fa1be39912cf0757753826bc8bdc8ca331a28a7c4ae46b7a21280b06bb85", size = 561011 }, + { url = "https://files.pythonhosted.org/packages/22/16/cd3027c7e279d22e5eb431dd3c0fbc677bed58797fe7581e148f3f68818b/rpds_py-0.30.0-cp311-cp311-win32.whl", hash = "sha256:55f66022632205940f1827effeff17c4fa7ae1953d2b74a8581baaefb7d16f8c", size = 221406 }, + { url = "https://files.pythonhosted.org/packages/fa/5b/e7b7aa136f28462b344e652ee010d4de26ee9fd16f1bfd5811f5153ccf89/rpds_py-0.30.0-cp311-cp311-win_amd64.whl", hash = "sha256:a51033ff701fca756439d641c0ad09a41d9242fa69121c7d8769604a0a629825", size = 236024 }, + { url = "https://files.pythonhosted.org/packages/14/a6/364bba985e4c13658edb156640608f2c9e1d3ea3c81b27aa9d889fff0e31/rpds_py-0.30.0-cp311-cp311-win_arm64.whl", hash = "sha256:47b0ef6231c58f506ef0b74d44e330405caa8428e770fec25329ed2cb971a229", size = 229069 }, + { url = "https://files.pythonhosted.org/packages/03/e7/98a2f4ac921d82f33e03f3835f5bf3a4a40aa1bfdc57975e74a97b2b4bdd/rpds_py-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a161f20d9a43006833cd7068375a94d035714d73a172b681d8881820600abfad", size = 375086 }, + { url = "https://files.pythonhosted.org/packages/4d/a1/bca7fd3d452b272e13335db8d6b0b3ecde0f90ad6f16f3328c6fb150c889/rpds_py-0.30.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6abc8880d9d036ecaafe709079969f56e876fcf107f7a8e9920ba6d5a3878d05", size = 359053 }, + { url = "https://files.pythonhosted.org/packages/65/1c/ae157e83a6357eceff62ba7e52113e3ec4834a84cfe07fa4b0757a7d105f/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca28829ae5f5d569bb62a79512c842a03a12576375d5ece7d2cadf8abe96ec28", size = 390763 }, + { url = "https://files.pythonhosted.org/packages/d4/36/eb2eb8515e2ad24c0bd43c3ee9cd74c33f7ca6430755ccdb240fd3144c44/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a1010ed9524c73b94d15919ca4d41d8780980e1765babf85f9a2f90d247153dd", size = 408951 }, + { url = "https://files.pythonhosted.org/packages/d6/65/ad8dc1784a331fabbd740ef6f71ce2198c7ed0890dab595adb9ea2d775a1/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f8d1736cfb49381ba528cd5baa46f82fdc65c06e843dab24dd70b63d09121b3f", size = 514622 }, + { url = "https://files.pythonhosted.org/packages/63/8e/0cfa7ae158e15e143fe03993b5bcd743a59f541f5952e1546b1ac1b5fd45/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d948b135c4693daff7bc2dcfc4ec57237a29bd37e60c2fabf5aff2bbacf3e2f1", size = 414492 }, + { url = "https://files.pythonhosted.org/packages/60/1b/6f8f29f3f995c7ffdde46a626ddccd7c63aefc0efae881dc13b6e5d5bb16/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47f236970bccb2233267d89173d3ad2703cd36a0e2a6e92d0560d333871a3d23", size = 394080 }, + { url = "https://files.pythonhosted.org/packages/6d/d5/a266341051a7a3ca2f4b750a3aa4abc986378431fc2da508c5034d081b70/rpds_py-0.30.0-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:2e6ecb5a5bcacf59c3f912155044479af1d0b6681280048b338b28e364aca1f6", size = 408680 }, + { url = "https://files.pythonhosted.org/packages/10/3b/71b725851df9ab7a7a4e33cf36d241933da66040d195a84781f49c50490c/rpds_py-0.30.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a8fa71a2e078c527c3e9dc9fc5a98c9db40bcc8a92b4e8858e36d329f8684b51", size = 423589 }, + { url = "https://files.pythonhosted.org/packages/00/2b/e59e58c544dc9bd8bd8384ecdb8ea91f6727f0e37a7131baeff8d6f51661/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:73c67f2db7bc334e518d097c6d1e6fed021bbc9b7d678d6cc433478365d1d5f5", size = 573289 }, + { url = "https://files.pythonhosted.org/packages/da/3e/a18e6f5b460893172a7d6a680e86d3b6bc87a54c1f0b03446a3c8c7b588f/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5ba103fb455be00f3b1c2076c9d4264bfcb037c976167a6047ed82f23153f02e", size = 599737 }, + { url = "https://files.pythonhosted.org/packages/5c/e2/714694e4b87b85a18e2c243614974413c60aa107fd815b8cbc42b873d1d7/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7cee9c752c0364588353e627da8a7e808a66873672bcb5f52890c33fd965b394", size = 563120 }, + { url = "https://files.pythonhosted.org/packages/6f/ab/d5d5e3bcedb0a77f4f613706b750e50a5a3ba1c15ccd3665ecc636c968fd/rpds_py-0.30.0-cp312-cp312-win32.whl", hash = "sha256:1ab5b83dbcf55acc8b08fc62b796ef672c457b17dbd7820a11d6c52c06839bdf", size = 223782 }, + { url = "https://files.pythonhosted.org/packages/39/3b/f786af9957306fdc38a74cef405b7b93180f481fb48453a114bb6465744a/rpds_py-0.30.0-cp312-cp312-win_amd64.whl", hash = "sha256:a090322ca841abd453d43456ac34db46e8b05fd9b3b4ac0c78bcde8b089f959b", size = 240463 }, + { url = "https://files.pythonhosted.org/packages/f3/d2/b91dc748126c1559042cfe41990deb92c4ee3e2b415f6b5234969ffaf0cc/rpds_py-0.30.0-cp312-cp312-win_arm64.whl", hash = "sha256:669b1805bd639dd2989b281be2cfd951c6121b65e729d9b843e9639ef1fd555e", size = 230868 }, + { url = "https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2", size = 374887 }, + { url = "https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8", size = 358904 }, + { url = "https://files.pythonhosted.org/packages/58/70/faed8186300e3b9bdd138d0273109784eea2396c68458ed580f885dfe7ad/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4", size = 389945 }, + { url = "https://files.pythonhosted.org/packages/bd/a8/073cac3ed2c6387df38f71296d002ab43496a96b92c823e76f46b8af0543/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136", size = 407783 }, + { url = "https://files.pythonhosted.org/packages/77/57/5999eb8c58671f1c11eba084115e77a8899d6e694d2a18f69f0ba471ec8b/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7", size = 515021 }, + { url = "https://files.pythonhosted.org/packages/e0/af/5ab4833eadc36c0a8ed2bc5c0de0493c04f6c06de223170bd0798ff98ced/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2", size = 414589 }, + { url = "https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6", size = 394025 }, + { url = "https://files.pythonhosted.org/packages/91/c4/fc70cd0249496493500e7cc2de87504f5aa6509de1e88623431fec76d4b6/rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e", size = 408895 }, + { url = "https://files.pythonhosted.org/packages/58/95/d9275b05ab96556fefff73a385813eb66032e4c99f411d0795372d9abcea/rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d", size = 422799 }, + { url = "https://files.pythonhosted.org/packages/06/c1/3088fc04b6624eb12a57eb814f0d4997a44b0d208d6cace713033ff1a6ba/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7", size = 572731 }, + { url = "https://files.pythonhosted.org/packages/d8/42/c612a833183b39774e8ac8fecae81263a68b9583ee343db33ab571a7ce55/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31", size = 599027 }, + { url = "https://files.pythonhosted.org/packages/5f/60/525a50f45b01d70005403ae0e25f43c0384369ad24ffe46e8d9068b50086/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95", size = 563020 }, + { url = "https://files.pythonhosted.org/packages/0b/5d/47c4655e9bcd5ca907148535c10e7d489044243cc9941c16ed7cd53be91d/rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d", size = 223139 }, + { url = "https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15", size = 240224 }, + { url = "https://files.pythonhosted.org/packages/24/95/ffd128ed1146a153d928617b0ef673960130be0009c77d8fbf0abe306713/rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1", size = 230645 }, + { url = "https://files.pythonhosted.org/packages/ff/1b/b10de890a0def2a319a2626334a7f0ae388215eb60914dbac8a3bae54435/rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a", size = 364443 }, + { url = "https://files.pythonhosted.org/packages/0d/bf/27e39f5971dc4f305a4fb9c672ca06f290f7c4e261c568f3dea16a410d47/rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e", size = 353375 }, + { url = "https://files.pythonhosted.org/packages/40/58/442ada3bba6e8e6615fc00483135c14a7538d2ffac30e2d933ccf6852232/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000", size = 383850 }, + { url = "https://files.pythonhosted.org/packages/14/14/f59b0127409a33c6ef6f5c1ebd5ad8e32d7861c9c7adfa9a624fc3889f6c/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db", size = 392812 }, + { url = "https://files.pythonhosted.org/packages/b3/66/e0be3e162ac299b3a22527e8913767d869e6cc75c46bd844aa43fb81ab62/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2", size = 517841 }, + { url = "https://files.pythonhosted.org/packages/3d/55/fa3b9cf31d0c963ecf1ba777f7cf4b2a2c976795ac430d24a1f43d25a6ba/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa", size = 408149 }, + { url = "https://files.pythonhosted.org/packages/60/ca/780cf3b1a32b18c0f05c441958d3758f02544f1d613abf9488cd78876378/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083", size = 383843 }, + { url = "https://files.pythonhosted.org/packages/82/86/d5f2e04f2aa6247c613da0c1dd87fcd08fa17107e858193566048a1e2f0a/rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9", size = 396507 }, + { url = "https://files.pythonhosted.org/packages/4b/9a/453255d2f769fe44e07ea9785c8347edaf867f7026872e76c1ad9f7bed92/rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0", size = 414949 }, + { url = "https://files.pythonhosted.org/packages/a3/31/622a86cdc0c45d6df0e9ccb6becdba5074735e7033c20e401a6d9d0e2ca0/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94", size = 565790 }, + { url = "https://files.pythonhosted.org/packages/1c/5d/15bbf0fb4a3f58a3b1c67855ec1efcc4ceaef4e86644665fff03e1b66d8d/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08", size = 590217 }, + { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806 }, + { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341 }, + { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768 }, + { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099 }, + { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192 }, + { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080 }, + { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841 }, + { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670 }, + { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005 }, + { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112 }, + { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049 }, + { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661 }, + { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606 }, + { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126 }, + { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371 }, + { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298 }, + { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604 }, + { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391 }, + { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868 }, + { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747 }, + { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795 }, + { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330 }, + { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194 }, + { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340 }, + { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765 }, + { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834 }, + { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470 }, + { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630 }, + { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148 }, + { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030 }, + { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570 }, + { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532 }, + { url = "https://files.pythonhosted.org/packages/69/71/3f34339ee70521864411f8b6992e7ab13ac30d8e4e3309e07c7361767d91/rpds_py-0.30.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c2262bdba0ad4fc6fb5545660673925c2d2a5d9e2e0fb603aad545427be0fc58", size = 372292 }, + { url = "https://files.pythonhosted.org/packages/57/09/f183df9b8f2d66720d2ef71075c59f7e1b336bec7ee4c48f0a2b06857653/rpds_py-0.30.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:ee6af14263f25eedc3bb918a3c04245106a42dfd4f5c2285ea6f997b1fc3f89a", size = 362128 }, + { url = "https://files.pythonhosted.org/packages/7a/68/5c2594e937253457342e078f0cc1ded3dd7b2ad59afdbf2d354869110a02/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3adbb8179ce342d235c31ab8ec511e66c73faa27a47e076ccc92421add53e2bb", size = 391542 }, + { url = "https://files.pythonhosted.org/packages/49/5c/31ef1afd70b4b4fbdb2800249f34c57c64beb687495b10aec0365f53dfc4/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:250fa00e9543ac9b97ac258bd37367ff5256666122c2d0f2bc97577c60a1818c", size = 404004 }, + { url = "https://files.pythonhosted.org/packages/e3/63/0cfbea38d05756f3440ce6534d51a491d26176ac045e2707adc99bb6e60a/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9854cf4f488b3d57b9aaeb105f06d78e5529d3145b1e4a41750167e8c213c6d3", size = 527063 }, + { url = "https://files.pythonhosted.org/packages/42/e6/01e1f72a2456678b0f618fc9a1a13f882061690893c192fcad9f2926553a/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:993914b8e560023bc0a8bf742c5f303551992dcb85e247b1e5c7f4a7d145bda5", size = 413099 }, + { url = "https://files.pythonhosted.org/packages/b8/25/8df56677f209003dcbb180765520c544525e3ef21ea72279c98b9aa7c7fb/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58edca431fb9b29950807e301826586e5bbf24163677732429770a697ffe6738", size = 392177 }, + { url = "https://files.pythonhosted.org/packages/4a/b4/0a771378c5f16f8115f796d1f437950158679bcd2a7c68cf251cfb00ed5b/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_31_riscv64.whl", hash = "sha256:dea5b552272a944763b34394d04577cf0f9bd013207bc32323b5a89a53cf9c2f", size = 406015 }, + { url = "https://files.pythonhosted.org/packages/36/d8/456dbba0af75049dc6f63ff295a2f92766b9d521fa00de67a2bd6427d57a/rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ba3af48635eb83d03f6c9735dfb21785303e73d22ad03d489e88adae6eab8877", size = 423736 }, + { url = "https://files.pythonhosted.org/packages/13/64/b4d76f227d5c45a7e0b796c674fd81b0a6c4fbd48dc29271857d8219571c/rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:dff13836529b921e22f15cb099751209a60009731a68519630a24d61f0b1b30a", size = 573981 }, + { url = "https://files.pythonhosted.org/packages/20/91/092bacadeda3edf92bf743cc96a7be133e13a39cdbfd7b5082e7ab638406/rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_i686.whl", hash = "sha256:1b151685b23929ab7beec71080a8889d4d6d9fa9a983d213f07121205d48e2c4", size = 599782 }, + { url = "https://files.pythonhosted.org/packages/d1/b7/b95708304cd49b7b6f82fdd039f1748b66ec2b21d6a45180910802f1abf1/rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ac37f9f516c51e5753f27dfdef11a88330f04de2d564be3991384b2f3535d02e", size = 562191 }, +] + +[[package]] +name = "rsa" +version = "4.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyasn1" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/da/8a/22b7beea3ee0d44b1916c0c1cb0ee3af23b700b6da9f04991899d0c555d4/rsa-4.9.1.tar.gz", hash = "sha256:e7bdbfdb5497da4c07dfd35530e1a902659db6ff241e39d9953cad06ebd0ae75", size = 29034 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl", hash = "sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762", size = 34696 }, +] + +[[package]] +name = "ruff" +version = "0.14.14" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2e/06/f71e3a86b2df0dfa2d2f72195941cd09b44f87711cb7fa5193732cb9a5fc/ruff-0.14.14.tar.gz", hash = "sha256:2d0f819c9a90205f3a867dbbd0be083bee9912e170fd7d9704cc8ae45824896b", size = 4515732 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/89/20a12e97bc6b9f9f68343952da08a8099c57237aef953a56b82711d55edd/ruff-0.14.14-py3-none-linux_armv6l.whl", hash = "sha256:7cfe36b56e8489dee8fbc777c61959f60ec0f1f11817e8f2415f429552846aed", size = 10467650 }, + { url = "https://files.pythonhosted.org/packages/a3/b1/c5de3fd2d5a831fcae21beda5e3589c0ba67eec8202e992388e4b17a6040/ruff-0.14.14-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:6006a0082336e7920b9573ef8a7f52eec837add1265cc74e04ea8a4368cd704c", size = 10883245 }, + { url = "https://files.pythonhosted.org/packages/b8/7c/3c1db59a10e7490f8f6f8559d1db8636cbb13dccebf18686f4e3c9d7c772/ruff-0.14.14-py3-none-macosx_11_0_arm64.whl", hash = "sha256:026c1d25996818f0bf498636686199d9bd0d9d6341c9c2c3b62e2a0198b758de", size = 10231273 }, + { url = "https://files.pythonhosted.org/packages/a1/6e/5e0e0d9674be0f8581d1f5e0f0a04761203affce3232c1a1189d0e3b4dad/ruff-0.14.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f666445819d31210b71e0a6d1c01e24447a20b85458eea25a25fe8142210ae0e", size = 10585753 }, + { url = "https://files.pythonhosted.org/packages/23/09/754ab09f46ff1884d422dc26d59ba18b4e5d355be147721bb2518aa2a014/ruff-0.14.14-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3c0f18b922c6d2ff9a5e6c3ee16259adc513ca775bcf82c67ebab7cbd9da5bc8", size = 10286052 }, + { url = "https://files.pythonhosted.org/packages/c8/cc/e71f88dd2a12afb5f50733851729d6b571a7c3a35bfdb16c3035132675a0/ruff-0.14.14-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1629e67489c2dea43e8658c3dba659edbfd87361624b4040d1df04c9740ae906", size = 11043637 }, + { url = "https://files.pythonhosted.org/packages/67/b2/397245026352494497dac935d7f00f1468c03a23a0c5db6ad8fc49ca3fb2/ruff-0.14.14-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:27493a2131ea0f899057d49d303e4292b2cae2bb57253c1ed1f256fbcd1da480", size = 12194761 }, + { url = "https://files.pythonhosted.org/packages/5b/06/06ef271459f778323112c51b7587ce85230785cd64e91772034ddb88f200/ruff-0.14.14-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:01ff589aab3f5b539e35db38425da31a57521efd1e4ad1ae08fc34dbe30bd7df", size = 12005701 }, + { url = "https://files.pythonhosted.org/packages/41/d6/99364514541cf811ccc5ac44362f88df66373e9fec1b9d1c4cc830593fe7/ruff-0.14.14-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1cc12d74eef0f29f51775f5b755913eb523546b88e2d733e1d701fe65144e89b", size = 11282455 }, + { url = "https://files.pythonhosted.org/packages/ca/71/37daa46f89475f8582b7762ecd2722492df26421714a33e72ccc9a84d7a5/ruff-0.14.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb8481604b7a9e75eff53772496201690ce2687067e038b3cc31aaf16aa0b974", size = 11215882 }, + { url = "https://files.pythonhosted.org/packages/2c/10/a31f86169ec91c0705e618443ee74ede0bdd94da0a57b28e72db68b2dbac/ruff-0.14.14-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:14649acb1cf7b5d2d283ebd2f58d56b75836ed8c6f329664fa91cdea19e76e66", size = 11180549 }, + { url = "https://files.pythonhosted.org/packages/fd/1e/c723f20536b5163adf79bdd10c5f093414293cdf567eed9bdb7b83940f3f/ruff-0.14.14-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e8058d2145566510790eab4e2fad186002e288dec5e0d343a92fe7b0bc1b3e13", size = 10543416 }, + { url = "https://files.pythonhosted.org/packages/3e/34/8a84cea7e42c2d94ba5bde1d7a4fae164d6318f13f933d92da6d7c2041ff/ruff-0.14.14-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:e651e977a79e4c758eb807f0481d673a67ffe53cfa92209781dfa3a996cf8412", size = 10285491 }, + { url = "https://files.pythonhosted.org/packages/55/ef/b7c5ea0be82518906c978e365e56a77f8de7678c8bb6651ccfbdc178c29f/ruff-0.14.14-py3-none-musllinux_1_2_i686.whl", hash = "sha256:cc8b22da8d9d6fdd844a68ae937e2a0adf9b16514e9a97cc60355e2d4b219fc3", size = 10733525 }, + { url = "https://files.pythonhosted.org/packages/6a/5b/aaf1dfbcc53a2811f6cc0a1759de24e4b03e02ba8762daabd9b6bd8c59e3/ruff-0.14.14-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:16bc890fb4cc9781bb05beb5ab4cd51be9e7cb376bf1dd3580512b24eb3fda2b", size = 11315626 }, + { url = "https://files.pythonhosted.org/packages/2c/aa/9f89c719c467dfaf8ad799b9bae0df494513fb21d31a6059cb5870e57e74/ruff-0.14.14-py3-none-win32.whl", hash = "sha256:b530c191970b143375b6a68e6f743800b2b786bbcf03a7965b06c4bf04568167", size = 10502442 }, + { url = "https://files.pythonhosted.org/packages/87/44/90fa543014c45560cae1fffc63ea059fb3575ee6e1cb654562197e5d16fb/ruff-0.14.14-py3-none-win_amd64.whl", hash = "sha256:3dde1435e6b6fe5b66506c1dff67a421d0b7f6488d466f651c07f4cab3bf20fd", size = 11630486 }, + { url = "https://files.pythonhosted.org/packages/9e/6a/40fee331a52339926a92e17ae748827270b288a35ef4a15c9c8f2ec54715/ruff-0.14.14-py3-none-win_arm64.whl", hash = "sha256:56e6981a98b13a32236a72a8da421d7839221fa308b223b9283312312e5ac76c", size = 10920448 }, +] + +[[package]] +name = "scikit-learn" +version = "1.1.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "joblib" }, + { name = "numpy" }, + { name = "scipy" }, + { name = "threadpoolctl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/38/bc/319f789ce0988d9bf1379d6e40498dc119b30bec133bf76cd82ca549b69a/scikit-learn-1.1.3.tar.gz", hash = "sha256:bef51978a51ec19977700fe7b86aecea49c825884f3811756b74a3b152bb4e35", size = 6982430 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/77/0d/7555c9b3cd8dd1796173f57dd9e63f5a6acbdcf73ac2c6199017910b3991/scikit_learn-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5699cded6c0685426433c7e5afe0fecad80ec831ec7fa264940e50c796775cc5", size = 8621073 }, + { url = "https://files.pythonhosted.org/packages/91/54/14e64c540d554d29e40239850bc656e2d403870c6fb388319034eb878f0a/scikit_learn-1.1.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:2ee2c649f2231b68511aabb0dc827edd8936aad682acc6263c34aed11bc95dac", size = 7586418 }, + { url = "https://files.pythonhosted.org/packages/65/d2/c9beff50f6adf2a8763e30d1ea1347b979caa4c5a8fe9d5a9d56f9a9173d/scikit_learn-1.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d1c1394e38a3319ace620381f6f23cc807d8780e9915c152449a86fc8f1db21", size = 31553483 }, + { url = "https://files.pythonhosted.org/packages/53/d8/4eb42e5a2f7bb0e9d376de7013235694f811af70b6bab66a92f30e4bc8be/scikit_learn-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:250da993701da88bf475e7c5746abf1285ea0ae47e4d0917cd13afd6600bb162", size = 31992405 }, + { url = "https://files.pythonhosted.org/packages/18/0e/930026d0554075f212c974773aab729ad370d0f611eddaa0d8bbaa8eaa33/scikit_learn-1.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:fd3ee69d36d42a7dcbb17e355a5653af5fd241a7dfd9133080b3dde8d9e2aafb", size = 7493908 }, +] + +[[package]] +name = "scipy" +version = "1.15.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/37/6964b830433e654ec7485e45a00fc9a27cf868d622838f6b6d9c5ec0d532/scipy-1.15.3.tar.gz", hash = "sha256:eae3cf522bc7df64b42cad3925c876e1b0b6c35c1337c93e12c0f366f55b0eaf", size = 59419214 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/96/ab/5cc9f80f28f6a7dff646c5756e559823614a42b1939d86dd0ed550470210/scipy-1.15.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:993439ce220d25e3696d1b23b233dd010169b62f6456488567e830654ee37a6b", size = 38714255 }, + { url = "https://files.pythonhosted.org/packages/4a/4a/66ba30abe5ad1a3ad15bfb0b59d22174012e8056ff448cb1644deccbfed2/scipy-1.15.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:34716e281f181a02341ddeaad584205bd2fd3c242063bd3423d61ac259ca7eba", size = 30111035 }, + { url = "https://files.pythonhosted.org/packages/4b/fa/a7e5b95afd80d24313307f03624acc65801846fa75599034f8ceb9e2cbf6/scipy-1.15.3-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:3b0334816afb8b91dab859281b1b9786934392aa3d527cd847e41bb6f45bee65", size = 22384499 }, + { url = "https://files.pythonhosted.org/packages/17/99/f3aaddccf3588bb4aea70ba35328c204cadd89517a1612ecfda5b2dd9d7a/scipy-1.15.3-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:6db907c7368e3092e24919b5e31c76998b0ce1684d51a90943cb0ed1b4ffd6c1", size = 25152602 }, + { url = "https://files.pythonhosted.org/packages/56/c5/1032cdb565f146109212153339f9cb8b993701e9fe56b1c97699eee12586/scipy-1.15.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:721d6b4ef5dc82ca8968c25b111e307083d7ca9091bc38163fb89243e85e3889", size = 35503415 }, + { url = "https://files.pythonhosted.org/packages/bd/37/89f19c8c05505d0601ed5650156e50eb881ae3918786c8fd7262b4ee66d3/scipy-1.15.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39cb9c62e471b1bb3750066ecc3a3f3052b37751c7c3dfd0fd7e48900ed52982", size = 37652622 }, + { url = "https://files.pythonhosted.org/packages/7e/31/be59513aa9695519b18e1851bb9e487de66f2d31f835201f1b42f5d4d475/scipy-1.15.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:795c46999bae845966368a3c013e0e00947932d68e235702b5c3f6ea799aa8c9", size = 37244796 }, + { url = "https://files.pythonhosted.org/packages/10/c0/4f5f3eeccc235632aab79b27a74a9130c6c35df358129f7ac8b29f562ac7/scipy-1.15.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:18aaacb735ab38b38db42cb01f6b92a2d0d4b6aabefeb07f02849e47f8fb3594", size = 40047684 }, + { url = "https://files.pythonhosted.org/packages/ab/a7/0ddaf514ce8a8714f6ed243a2b391b41dbb65251affe21ee3077ec45ea9a/scipy-1.15.3-cp311-cp311-win_amd64.whl", hash = "sha256:ae48a786a28412d744c62fd7816a4118ef97e5be0bee968ce8f0a2fba7acf3bb", size = 41246504 }, + { url = "https://files.pythonhosted.org/packages/37/4b/683aa044c4162e10ed7a7ea30527f2cbd92e6999c10a8ed8edb253836e9c/scipy-1.15.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6ac6310fdbfb7aa6612408bd2f07295bcbd3fda00d2d702178434751fe48e019", size = 38766735 }, + { url = "https://files.pythonhosted.org/packages/7b/7e/f30be3d03de07f25dc0ec926d1681fed5c732d759ac8f51079708c79e680/scipy-1.15.3-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:185cd3d6d05ca4b44a8f1595af87f9c372bb6acf9c808e99aa3e9aa03bd98cf6", size = 30173284 }, + { url = "https://files.pythonhosted.org/packages/07/9c/0ddb0d0abdabe0d181c1793db51f02cd59e4901da6f9f7848e1f96759f0d/scipy-1.15.3-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:05dc6abcd105e1a29f95eada46d4a3f251743cfd7d3ae8ddb4088047f24ea477", size = 22446958 }, + { url = "https://files.pythonhosted.org/packages/af/43/0bce905a965f36c58ff80d8bea33f1f9351b05fad4beaad4eae34699b7a1/scipy-1.15.3-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:06efcba926324df1696931a57a176c80848ccd67ce6ad020c810736bfd58eb1c", size = 25242454 }, + { url = "https://files.pythonhosted.org/packages/56/30/a6f08f84ee5b7b28b4c597aca4cbe545535c39fe911845a96414700b64ba/scipy-1.15.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c05045d8b9bfd807ee1b9f38761993297b10b245f012b11b13b91ba8945f7e45", size = 35210199 }, + { url = "https://files.pythonhosted.org/packages/0b/1f/03f52c282437a168ee2c7c14a1a0d0781a9a4a8962d84ac05c06b4c5b555/scipy-1.15.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:271e3713e645149ea5ea3e97b57fdab61ce61333f97cfae392c28ba786f9bb49", size = 37309455 }, + { url = "https://files.pythonhosted.org/packages/89/b1/fbb53137f42c4bf630b1ffdfc2151a62d1d1b903b249f030d2b1c0280af8/scipy-1.15.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6cfd56fc1a8e53f6e89ba3a7a7251f7396412d655bca2aa5611c8ec9a6784a1e", size = 36885140 }, + { url = "https://files.pythonhosted.org/packages/2e/2e/025e39e339f5090df1ff266d021892694dbb7e63568edcfe43f892fa381d/scipy-1.15.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0ff17c0bb1cb32952c09217d8d1eed9b53d1463e5f1dd6052c7857f83127d539", size = 39710549 }, + { url = "https://files.pythonhosted.org/packages/e6/eb/3bf6ea8ab7f1503dca3a10df2e4b9c3f6b3316df07f6c0ded94b281c7101/scipy-1.15.3-cp312-cp312-win_amd64.whl", hash = "sha256:52092bc0472cfd17df49ff17e70624345efece4e1a12b23783a1ac59a1b728ed", size = 40966184 }, + { url = "https://files.pythonhosted.org/packages/73/18/ec27848c9baae6e0d6573eda6e01a602e5649ee72c27c3a8aad673ebecfd/scipy-1.15.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2c620736bcc334782e24d173c0fdbb7590a0a436d2fdf39310a8902505008759", size = 38728256 }, + { url = "https://files.pythonhosted.org/packages/74/cd/1aef2184948728b4b6e21267d53b3339762c285a46a274ebb7863c9e4742/scipy-1.15.3-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:7e11270a000969409d37ed399585ee530b9ef6aa99d50c019de4cb01e8e54e62", size = 30109540 }, + { url = "https://files.pythonhosted.org/packages/5b/d8/59e452c0a255ec352bd0a833537a3bc1bfb679944c4938ab375b0a6b3a3e/scipy-1.15.3-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:8c9ed3ba2c8a2ce098163a9bdb26f891746d02136995df25227a20e71c396ebb", size = 22383115 }, + { url = "https://files.pythonhosted.org/packages/08/f5/456f56bbbfccf696263b47095291040655e3cbaf05d063bdc7c7517f32ac/scipy-1.15.3-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:0bdd905264c0c9cfa74a4772cdb2070171790381a5c4d312c973382fc6eaf730", size = 25163884 }, + { url = "https://files.pythonhosted.org/packages/a2/66/a9618b6a435a0f0c0b8a6d0a2efb32d4ec5a85f023c2b79d39512040355b/scipy-1.15.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79167bba085c31f38603e11a267d862957cbb3ce018d8b38f79ac043bc92d825", size = 35174018 }, + { url = "https://files.pythonhosted.org/packages/b5/09/c5b6734a50ad4882432b6bb7c02baf757f5b2f256041da5df242e2d7e6b6/scipy-1.15.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c9deabd6d547aee2c9a81dee6cc96c6d7e9a9b1953f74850c179f91fdc729cb7", size = 37269716 }, + { url = "https://files.pythonhosted.org/packages/77/0a/eac00ff741f23bcabd352731ed9b8995a0a60ef57f5fd788d611d43d69a1/scipy-1.15.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dde4fc32993071ac0c7dd2d82569e544f0bdaff66269cb475e0f369adad13f11", size = 36872342 }, + { url = "https://files.pythonhosted.org/packages/fe/54/4379be86dd74b6ad81551689107360d9a3e18f24d20767a2d5b9253a3f0a/scipy-1.15.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f77f853d584e72e874d87357ad70f44b437331507d1c311457bed8ed2b956126", size = 39670869 }, + { url = "https://files.pythonhosted.org/packages/87/2e/892ad2862ba54f084ffe8cc4a22667eaf9c2bcec6d2bff1d15713c6c0703/scipy-1.15.3-cp313-cp313-win_amd64.whl", hash = "sha256:b90ab29d0c37ec9bf55424c064312930ca5f4bde15ee8619ee44e69319aab163", size = 40988851 }, + { url = "https://files.pythonhosted.org/packages/1b/e9/7a879c137f7e55b30d75d90ce3eb468197646bc7b443ac036ae3fe109055/scipy-1.15.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3ac07623267feb3ae308487c260ac684b32ea35fd81e12845039952f558047b8", size = 38863011 }, + { url = "https://files.pythonhosted.org/packages/51/d1/226a806bbd69f62ce5ef5f3ffadc35286e9fbc802f606a07eb83bf2359de/scipy-1.15.3-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:6487aa99c2a3d509a5227d9a5e889ff05830a06b2ce08ec30df6d79db5fcd5c5", size = 30266407 }, + { url = "https://files.pythonhosted.org/packages/e5/9b/f32d1d6093ab9eeabbd839b0f7619c62e46cc4b7b6dbf05b6e615bbd4400/scipy-1.15.3-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:50f9e62461c95d933d5c5ef4a1f2ebf9a2b4e83b0db374cb3f1de104d935922e", size = 22540030 }, + { url = "https://files.pythonhosted.org/packages/e7/29/c278f699b095c1a884f29fda126340fcc201461ee8bfea5c8bdb1c7c958b/scipy-1.15.3-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:14ed70039d182f411ffc74789a16df3835e05dc469b898233a245cdfd7f162cb", size = 25218709 }, + { url = "https://files.pythonhosted.org/packages/24/18/9e5374b617aba742a990581373cd6b68a2945d65cc588482749ef2e64467/scipy-1.15.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a769105537aa07a69468a0eefcd121be52006db61cdd8cac8a0e68980bbb723", size = 34809045 }, + { url = "https://files.pythonhosted.org/packages/e1/fe/9c4361e7ba2927074360856db6135ef4904d505e9b3afbbcb073c4008328/scipy-1.15.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9db984639887e3dffb3928d118145ffe40eff2fa40cb241a306ec57c219ebbbb", size = 36703062 }, + { url = "https://files.pythonhosted.org/packages/b7/8e/038ccfe29d272b30086b25a4960f757f97122cb2ec42e62b460d02fe98e9/scipy-1.15.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:40e54d5c7e7ebf1aa596c374c49fa3135f04648a0caabcb66c52884b943f02b4", size = 36393132 }, + { url = "https://files.pythonhosted.org/packages/10/7e/5c12285452970be5bdbe8352c619250b97ebf7917d7a9a9e96b8a8140f17/scipy-1.15.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5e721fed53187e71d0ccf382b6bf977644c533e506c4d33c3fb24de89f5c3ed5", size = 38979503 }, + { url = "https://files.pythonhosted.org/packages/81/06/0a5e5349474e1cbc5757975b21bd4fad0e72ebf138c5592f191646154e06/scipy-1.15.3-cp313-cp313t-win_amd64.whl", hash = "sha256:76ad1fb5f8752eabf0fa02e4cc0336b4e8f021e2d5f061ed37d6d264db35e3ca", size = 40308097 }, +] + +[[package]] +name = "sentry-sdk" +version = "2.50.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/15/8a/3c4f53d32c21012e9870913544e56bfa9e931aede080779a0f177513f534/sentry_sdk-2.50.0.tar.gz", hash = "sha256:873437a989ee1b8b25579847bae8384515bf18cfed231b06c591b735c1781fe3", size = 401233 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4e/5b/cbc2bb9569f03c8e15d928357e7e6179e5cfab45544a3bbac8aec4caf9be/sentry_sdk-2.50.0-py2.py3-none-any.whl", hash = "sha256:0ef0ed7168657ceb5a0be081f4102d92042a125462d1d1a29277992e344e749e", size = 424961 }, +] + +[[package]] +name = "shapely" +version = "2.1.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/4d/bc/0989043118a27cccb4e906a46b7565ce36ca7b57f5a18b78f4f1b0f72d9d/shapely-2.1.2.tar.gz", hash = "sha256:2ed4ecb28320a433db18a5bf029986aa8afcfd740745e78847e330d5d94922a9", size = 315489 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/8d/1ff672dea9ec6a7b5d422eb6d095ed886e2e523733329f75fdcb14ee1149/shapely-2.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:91121757b0a36c9aac3427a651a7e6567110a4a67c97edf04f8d55d4765f6618", size = 1820038 }, + { url = "https://files.pythonhosted.org/packages/4f/ce/28fab8c772ce5db23a0d86bf0adaee0c4c79d5ad1db766055fa3dab442e2/shapely-2.1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:16a9c722ba774cf50b5d4541242b4cce05aafd44a015290c82ba8a16931ff63d", size = 1626039 }, + { url = "https://files.pythonhosted.org/packages/70/8b/868b7e3f4982f5006e9395c1e12343c66a8155c0374fdc07c0e6a1ab547d/shapely-2.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cc4f7397459b12c0b196c9efe1f9d7e92463cbba142632b4cc6d8bbbbd3e2b09", size = 3001519 }, + { url = "https://files.pythonhosted.org/packages/13/02/58b0b8d9c17c93ab6340edd8b7308c0c5a5b81f94ce65705819b7416dba5/shapely-2.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:136ab87b17e733e22f0961504d05e77e7be8c9b5a8184f685b4a91a84efe3c26", size = 3110842 }, + { url = "https://files.pythonhosted.org/packages/af/61/8e389c97994d5f331dcffb25e2fa761aeedfb52b3ad9bcdd7b8671f4810a/shapely-2.1.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:16c5d0fc45d3aa0a69074979f4f1928ca2734fb2e0dde8af9611e134e46774e7", size = 4021316 }, + { url = "https://files.pythonhosted.org/packages/d3/d4/9b2a9fe6039f9e42ccf2cb3e84f219fd8364b0c3b8e7bbc857b5fbe9c14c/shapely-2.1.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:6ddc759f72b5b2b0f54a7e7cde44acef680a55019eb52ac63a7af2cf17cb9cd2", size = 4178586 }, + { url = "https://files.pythonhosted.org/packages/16/f6/9840f6963ed4decf76b08fd6d7fed14f8779fb7a62cb45c5617fa8ac6eab/shapely-2.1.2-cp311-cp311-win32.whl", hash = "sha256:2fa78b49485391224755a856ed3b3bd91c8455f6121fee0db0e71cefb07d0ef6", size = 1543961 }, + { url = "https://files.pythonhosted.org/packages/38/1e/3f8ea46353c2a33c1669eb7327f9665103aa3a8dfe7f2e4ef714c210b2c2/shapely-2.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:c64d5c97b2f47e3cd9b712eaced3b061f2b71234b3fc263e0fcf7d889c6559dc", size = 1722856 }, + { url = "https://files.pythonhosted.org/packages/24/c0/f3b6453cf2dfa99adc0ba6675f9aaff9e526d2224cbd7ff9c1a879238693/shapely-2.1.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fe2533caae6a91a543dec62e8360fe86ffcdc42a7c55f9dfd0128a977a896b94", size = 1833550 }, + { url = "https://files.pythonhosted.org/packages/86/07/59dee0bc4b913b7ab59ab1086225baca5b8f19865e6101db9ebb7243e132/shapely-2.1.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ba4d1333cc0bc94381d6d4308d2e4e008e0bd128bdcff5573199742ee3634359", size = 1643556 }, + { url = "https://files.pythonhosted.org/packages/26/29/a5397e75b435b9895cd53e165083faed5d12fd9626eadec15a83a2411f0f/shapely-2.1.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0bd308103340030feef6c111d3eb98d50dc13feea33affc8a6f9fa549e9458a3", size = 2988308 }, + { url = "https://files.pythonhosted.org/packages/b9/37/e781683abac55dde9771e086b790e554811a71ed0b2b8a1e789b7430dd44/shapely-2.1.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1e7d4d7ad262a48bb44277ca12c7c78cb1b0f56b32c10734ec9a1d30c0b0c54b", size = 3099844 }, + { url = "https://files.pythonhosted.org/packages/d8/f3/9876b64d4a5a321b9dc482c92bb6f061f2fa42131cba643c699f39317cb9/shapely-2.1.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e9eddfe513096a71896441a7c37db72da0687b34752c4e193577a145c71736fc", size = 3988842 }, + { url = "https://files.pythonhosted.org/packages/d1/a0/704c7292f7014c7e74ec84eddb7b109e1fbae74a16deae9c1504b1d15565/shapely-2.1.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:980c777c612514c0cf99bc8a9de6d286f5e186dcaf9091252fcd444e5638193d", size = 4152714 }, + { url = "https://files.pythonhosted.org/packages/53/46/319c9dc788884ad0785242543cdffac0e6530e4d0deb6c4862bc4143dcf3/shapely-2.1.2-cp312-cp312-win32.whl", hash = "sha256:9111274b88e4d7b54a95218e243282709b330ef52b7b86bc6aaf4f805306f454", size = 1542745 }, + { url = "https://files.pythonhosted.org/packages/ec/bf/cb6c1c505cb31e818e900b9312d514f381fbfa5c4363edfce0fcc4f8c1a4/shapely-2.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:743044b4cfb34f9a67205cee9279feaf60ba7d02e69febc2afc609047cb49179", size = 1722861 }, + { url = "https://files.pythonhosted.org/packages/c3/90/98ef257c23c46425dc4d1d31005ad7c8d649fe423a38b917db02c30f1f5a/shapely-2.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b510dda1a3672d6879beb319bc7c5fd302c6c354584690973c838f46ec3e0fa8", size = 1832644 }, + { url = "https://files.pythonhosted.org/packages/6d/ab/0bee5a830d209adcd3a01f2d4b70e587cdd9fd7380d5198c064091005af8/shapely-2.1.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:8cff473e81017594d20ec55d86b54bc635544897e13a7cfc12e36909c5309a2a", size = 1642887 }, + { url = "https://files.pythonhosted.org/packages/2d/5e/7d7f54ba960c13302584c73704d8c4d15404a51024631adb60b126a4ae88/shapely-2.1.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fe7b77dc63d707c09726b7908f575fc04ff1d1ad0f3fb92aec212396bc6cfe5e", size = 2970931 }, + { url = "https://files.pythonhosted.org/packages/f2/a2/83fc37e2a58090e3d2ff79175a95493c664bcd0b653dd75cb9134645a4e5/shapely-2.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7ed1a5bbfb386ee8332713bf7508bc24e32d24b74fc9a7b9f8529a55db9f4ee6", size = 3082855 }, + { url = "https://files.pythonhosted.org/packages/44/2b/578faf235a5b09f16b5f02833c53822294d7f21b242f8e2d0cf03fb64321/shapely-2.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a84e0582858d841d54355246ddfcbd1fce3179f185da7470f41ce39d001ee1af", size = 3979960 }, + { url = "https://files.pythonhosted.org/packages/4d/04/167f096386120f692cc4ca02f75a17b961858997a95e67a3cb6a7bbd6b53/shapely-2.1.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:dc3487447a43d42adcdf52d7ac73804f2312cbfa5d433a7d2c506dcab0033dfd", size = 4142851 }, + { url = "https://files.pythonhosted.org/packages/48/74/fb402c5a6235d1c65a97348b48cdedb75fb19eca2b1d66d04969fc1c6091/shapely-2.1.2-cp313-cp313-win32.whl", hash = "sha256:9c3a3c648aedc9f99c09263b39f2d8252f199cb3ac154fadc173283d7d111350", size = 1541890 }, + { url = "https://files.pythonhosted.org/packages/41/47/3647fe7ad990af60ad98b889657a976042c9988c2807cf322a9d6685f462/shapely-2.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:ca2591bff6645c216695bdf1614fca9c82ea1144d4a7591a466fef64f28f0715", size = 1722151 }, + { url = "https://files.pythonhosted.org/packages/3c/49/63953754faa51ffe7d8189bfbe9ca34def29f8c0e34c67cbe2a2795f269d/shapely-2.1.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:2d93d23bdd2ed9dc157b46bc2f19b7da143ca8714464249bef6771c679d5ff40", size = 1834130 }, + { url = "https://files.pythonhosted.org/packages/7f/ee/dce001c1984052970ff60eb4727164892fb2d08052c575042a47f5a9e88f/shapely-2.1.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:01d0d304b25634d60bd7cf291828119ab55a3bab87dc4af1e44b07fb225f188b", size = 1642802 }, + { url = "https://files.pythonhosted.org/packages/da/e7/fc4e9a19929522877fa602f705706b96e78376afb7fad09cad5b9af1553c/shapely-2.1.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8d8382dd120d64b03698b7298b89611a6ea6f55ada9d39942838b79c9bc89801", size = 3018460 }, + { url = "https://files.pythonhosted.org/packages/a1/18/7519a25db21847b525696883ddc8e6a0ecaa36159ea88e0fef11466384d0/shapely-2.1.2-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:19efa3611eef966e776183e338b2d7ea43569ae99ab34f8d17c2c054d3205cc0", size = 3095223 }, + { url = "https://files.pythonhosted.org/packages/48/de/b59a620b1f3a129c3fecc2737104a0a7e04e79335bd3b0a1f1609744cf17/shapely-2.1.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:346ec0c1a0fcd32f57f00e4134d1200e14bf3f5ae12af87ba83ca275c502498c", size = 4030760 }, + { url = "https://files.pythonhosted.org/packages/96/b3/c6655ee7232b417562bae192ae0d3ceaadb1cc0ffc2088a2ddf415456cc2/shapely-2.1.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6305993a35989391bd3476ee538a5c9a845861462327efe00dd11a5c8c709a99", size = 4170078 }, + { url = "https://files.pythonhosted.org/packages/a0/8e/605c76808d73503c9333af8f6cbe7e1354d2d238bda5f88eea36bfe0f42a/shapely-2.1.2-cp313-cp313t-win32.whl", hash = "sha256:c8876673449f3401f278c86eb33224c5764582f72b653a415d0e6672fde887bf", size = 1559178 }, + { url = "https://files.pythonhosted.org/packages/36/f7/d317eb232352a1f1444d11002d477e54514a4a6045536d49d0c59783c0da/shapely-2.1.2-cp313-cp313t-win_amd64.whl", hash = "sha256:4a44bc62a10d84c11a7a3d7c1c4fe857f7477c3506e24c9062da0db0ae0c449c", size = 1739756 }, + { url = "https://files.pythonhosted.org/packages/fc/c4/3ce4c2d9b6aabd27d26ec988f08cb877ba9e6e96086eff81bfea93e688c7/shapely-2.1.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:9a522f460d28e2bf4e12396240a5fc1518788b2fcd73535166d748399ef0c223", size = 1831290 }, + { url = "https://files.pythonhosted.org/packages/17/b9/f6ab8918fc15429f79cb04afa9f9913546212d7fb5e5196132a2af46676b/shapely-2.1.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1ff629e00818033b8d71139565527ced7d776c269a49bd78c9df84e8f852190c", size = 1641463 }, + { url = "https://files.pythonhosted.org/packages/a5/57/91d59ae525ca641e7ac5551c04c9503aee6f29b92b392f31790fcb1a4358/shapely-2.1.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f67b34271dedc3c653eba4e3d7111aa421d5be9b4c4c7d38d30907f796cb30df", size = 2970145 }, + { url = "https://files.pythonhosted.org/packages/8a/cb/4948be52ee1da6927831ab59e10d4c29baa2a714f599f1f0d1bc747f5777/shapely-2.1.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:21952dc00df38a2c28375659b07a3979d22641aeb104751e769c3ee825aadecf", size = 3073806 }, + { url = "https://files.pythonhosted.org/packages/03/83/f768a54af775eb41ef2e7bec8a0a0dbe7d2431c3e78c0a8bdba7ab17e446/shapely-2.1.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1f2f33f486777456586948e333a56ae21f35ae273be99255a191f5c1fa302eb4", size = 3980803 }, + { url = "https://files.pythonhosted.org/packages/9f/cb/559c7c195807c91c79d38a1f6901384a2878a76fbdf3f1048893a9b7534d/shapely-2.1.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:cf831a13e0d5a7eb519e96f58ec26e049b1fad411fc6fc23b162a7ce04d9cffc", size = 4133301 }, + { url = "https://files.pythonhosted.org/packages/80/cd/60d5ae203241c53ef3abd2ef27c6800e21afd6c94e39db5315ea0cbafb4a/shapely-2.1.2-cp314-cp314-win32.whl", hash = "sha256:61edcd8d0d17dd99075d320a1dd39c0cb9616f7572f10ef91b4b5b00c4aeb566", size = 1583247 }, + { url = "https://files.pythonhosted.org/packages/74/d4/135684f342e909330e50d31d441ace06bf83c7dc0777e11043f99167b123/shapely-2.1.2-cp314-cp314-win_amd64.whl", hash = "sha256:a444e7afccdb0999e203b976adb37ea633725333e5b119ad40b1ca291ecf311c", size = 1773019 }, + { url = "https://files.pythonhosted.org/packages/a3/05/a44f3f9f695fa3ada22786dc9da33c933da1cbc4bfe876fe3a100bafe263/shapely-2.1.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:5ebe3f84c6112ad3d4632b1fd2290665aa75d4cef5f6c5d77c4c95b324527c6a", size = 1834137 }, + { url = "https://files.pythonhosted.org/packages/52/7e/4d57db45bf314573427b0a70dfca15d912d108e6023f623947fa69f39b72/shapely-2.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:5860eb9f00a1d49ebb14e881f5caf6c2cf472c7fd38bd7f253bbd34f934eb076", size = 1642884 }, + { url = "https://files.pythonhosted.org/packages/5a/27/4e29c0a55d6d14ad7422bf86995d7ff3f54af0eba59617eb95caf84b9680/shapely-2.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b705c99c76695702656327b819c9660768ec33f5ce01fa32b2af62b56ba400a1", size = 3018320 }, + { url = "https://files.pythonhosted.org/packages/9f/bb/992e6a3c463f4d29d4cd6ab8963b75b1b1040199edbd72beada4af46bde5/shapely-2.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a1fd0ea855b2cf7c9cddaf25543e914dd75af9de08785f20ca3085f2c9ca60b0", size = 3094931 }, + { url = "https://files.pythonhosted.org/packages/9c/16/82e65e21070e473f0ed6451224ed9fa0be85033d17e0c6e7213a12f59d12/shapely-2.1.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:df90e2db118c3671a0754f38e36802db75fe0920d211a27481daf50a711fdf26", size = 4030406 }, + { url = "https://files.pythonhosted.org/packages/7c/75/c24ed871c576d7e2b64b04b1fe3d075157f6eb54e59670d3f5ffb36e25c7/shapely-2.1.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:361b6d45030b4ac64ddd0a26046906c8202eb60d0f9f53085f5179f1d23021a0", size = 4169511 }, + { url = "https://files.pythonhosted.org/packages/b1/f7/b3d1d6d18ebf55236eec1c681ce5e665742aab3c0b7b232720a7d43df7b6/shapely-2.1.2-cp314-cp314t-win32.whl", hash = "sha256:b54df60f1fbdecc8ebc2c5b11870461a6417b3d617f555e5033f1505d36e5735", size = 1602607 }, + { url = "https://files.pythonhosted.org/packages/9a/f6/f09272a71976dfc138129b8faf435d064a811ae2f708cb147dccdf7aacdb/shapely-2.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:0036ac886e0923417932c2e6369b6c52e38e0ff5d9120b90eef5cd9a5fc5cae9", size = 1796682 }, +] + +[[package]] +name = "shellingham" +version = "1.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/58/15/8b3609fd3830ef7b27b655beb4b4e9c62313a4e8da8c676e142cc210d58e/shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de", size = 10310 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", size = 9755 }, +] + +[[package]] +name = "six" +version = "1.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050 }, +] + +[[package]] +name = "smmap" +version = "5.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/44/cd/a040c4b3119bbe532e5b0732286f805445375489fceaec1f48306068ee3b/smmap-5.0.2.tar.gz", hash = "sha256:26ea65a03958fa0c8a1c7e8c7a58fdc77221b8910f6be2131affade476898ad5", size = 22329 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl", hash = "sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e", size = 24303 }, +] + +[[package]] +name = "soupsieve" +version = "2.8.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/ae/2d9c981590ed9999a0d91755b47fc74f74de286b0f5cee14c9269041e6c4/soupsieve-2.8.3.tar.gz", hash = "sha256:3267f1eeea4251fb42728b6dfb746edc9acaffc4a45b27e19450b676586e8349", size = 118627 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/2c/1462b1d0a634697ae9e55b3cecdcb64788e8b7d63f54d923fcd0bb140aed/soupsieve-2.8.3-py3-none-any.whl", hash = "sha256:ed64f2ba4eebeab06cc4962affce381647455978ffc1e36bb79a545b91f45a95", size = 37016 }, +] + +[[package]] +name = "starlette" +version = "0.50.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ba/b8/73a0e6a6e079a9d9cfa64113d771e421640b6f679a52eeb9b32f72d871a1/starlette-0.50.0.tar.gz", hash = "sha256:a2a17b22203254bcbc2e1f926d2d55f3f9497f769416b3190768befe598fa3ca", size = 2646985 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl", hash = "sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca", size = 74033 }, +] + +[[package]] +name = "streamlit" +version = "1.53.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "altair" }, + { name = "blinker" }, + { name = "cachetools" }, + { name = "click" }, + { name = "gitpython" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pandas", version = "2.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, + { name = "pandas", version = "2.3.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, + { name = "pillow" }, + { name = "protobuf" }, + { name = "pyarrow" }, + { name = "pydeck" }, + { name = "requests" }, + { name = "tenacity" }, + { name = "toml" }, + { name = "tornado" }, + { name = "typing-extensions" }, + { name = "watchdog", marker = "sys_platform != 'darwin'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/31/cc/347730d06e3950e426bf2ee06eaf9b281e18387bffa82bd69aa0f281eee3/streamlit-1.53.1.tar.gz", hash = "sha256:ae656af3b68b4bb2d669fa977606096f2021bcbaa14a454a290f8e0a37bab277", size = 8650843 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/23/c3/5e6f6a9328d57436b658447b6f05969d435df8d31344e34ec75c3044657b/streamlit-1.53.1-py3-none-any.whl", hash = "sha256:9534d151feea485b69200dd36448f95f418c511e8c81186ceb57133bdf1443f7", size = 9111505 }, +] + +[[package]] +name = "tenacity" +version = "9.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0a/d4/2b0cd0fe285e14b36db076e78c93766ff1d529d70408bd1d2a5a84f1d929/tenacity-9.1.2.tar.gz", hash = "sha256:1169d376c297e7de388d18b4481760d478b0e99a777cad3a9c86e556f4b697cb", size = 48036 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl", hash = "sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138", size = 28248 }, +] + +[[package]] +name = "threadpoolctl" +version = "3.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b7/4d/08c89e34946fce2aec4fbb45c9016efd5f4d7f24af8e5d93296e935631d8/threadpoolctl-3.6.0.tar.gz", hash = "sha256:8ab8b4aa3491d812b623328249fab5302a68d2d71745c8a4c719a2fcaba9f44e", size = 21274 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl", hash = "sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb", size = 18638 }, +] + +[[package]] +name = "toml" +version = "0.10.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/be/ba/1f744cdc819428fc6b5084ec34d9b30660f6f9daaf70eead706e3203ec3c/toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f", size = 22253 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588 }, +] + +[[package]] +name = "toolz" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/11/d6/114b492226588d6ff54579d95847662fc69196bdeec318eb45393b24c192/toolz-1.1.0.tar.gz", hash = "sha256:27a5c770d068c110d9ed9323f24f1543e83b2f300a687b7891c1a6d56b697b5b", size = 52613 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/12/5911ae3eeec47800503a238d971e51722ccea5feb8569b735184d5fcdbc0/toolz-1.1.0-py3-none-any.whl", hash = "sha256:15ccc861ac51c53696de0a5d6d4607f99c210739caf987b5d2054f3efed429d8", size = 58093 }, +] + +[[package]] +name = "tornado" +version = "6.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/37/1d/0a336abf618272d53f62ebe274f712e213f5a03c0b2339575430b8362ef2/tornado-6.5.4.tar.gz", hash = "sha256:a22fa9047405d03260b483980635f0b041989d8bcc9a313f8fe18b411d84b1d7", size = 513632 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/a9/e94a9d5224107d7ce3cc1fab8d5dc97f5ea351ccc6322ee4fb661da94e35/tornado-6.5.4-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:d6241c1a16b1c9e4cc28148b1cda97dd1c6cb4fb7068ac1bedc610768dff0ba9", size = 443909 }, + { url = "https://files.pythonhosted.org/packages/db/7e/f7b8d8c4453f305a51f80dbb49014257bb7d28ccb4bbb8dd328ea995ecad/tornado-6.5.4-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2d50f63dda1d2cac3ae1fa23d254e16b5e38153758470e9956cbc3d813d40843", size = 442163 }, + { url = "https://files.pythonhosted.org/packages/ba/b5/206f82d51e1bfa940ba366a8d2f83904b15942c45a78dd978b599870ab44/tornado-6.5.4-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1cf66105dc6acb5af613c054955b8137e34a03698aa53272dbda4afe252be17", size = 445746 }, + { url = "https://files.pythonhosted.org/packages/8e/9d/1a3338e0bd30ada6ad4356c13a0a6c35fbc859063fa7eddb309183364ac1/tornado-6.5.4-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50ff0a58b0dc97939d29da29cd624da010e7f804746621c78d14b80238669335", size = 445083 }, + { url = "https://files.pythonhosted.org/packages/50/d4/e51d52047e7eb9a582da59f32125d17c0482d065afd5d3bc435ff2120dc5/tornado-6.5.4-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5fb5e04efa54cf0baabdd10061eb4148e0be137166146fff835745f59ab9f7f", size = 445315 }, + { url = "https://files.pythonhosted.org/packages/27/07/2273972f69ca63dbc139694a3fc4684edec3ea3f9efabf77ed32483b875c/tornado-6.5.4-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9c86b1643b33a4cd415f8d0fe53045f913bf07b4a3ef646b735a6a86047dda84", size = 446003 }, + { url = "https://files.pythonhosted.org/packages/d1/83/41c52e47502bf7260044413b6770d1a48dda2f0246f95ee1384a3cd9c44a/tornado-6.5.4-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:6eb82872335a53dd063a4f10917b3efd28270b56a33db69009606a0312660a6f", size = 445412 }, + { url = "https://files.pythonhosted.org/packages/10/c7/bc96917f06cbee182d44735d4ecde9c432e25b84f4c2086143013e7b9e52/tornado-6.5.4-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6076d5dda368c9328ff41ab5d9dd3608e695e8225d1cd0fd1e006f05da3635a8", size = 445392 }, + { url = "https://files.pythonhosted.org/packages/0c/1a/d7592328d037d36f2d2462f4bc1fbb383eec9278bc786c1b111cbbd44cfa/tornado-6.5.4-cp39-abi3-win32.whl", hash = "sha256:1768110f2411d5cd281bac0a090f707223ce77fd110424361092859e089b38d1", size = 446481 }, + { url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl", hash = "sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc", size = 446886 }, + { url = "https://files.pythonhosted.org/packages/50/49/8dc3fd90902f70084bd2cd059d576ddb4f8bb44c2c7c0e33a11422acb17e/tornado-6.5.4-cp39-abi3-win_arm64.whl", hash = "sha256:053e6e16701eb6cbe641f308f4c1a9541f91b6261991160391bfc342e8a551a1", size = 445910 }, +] + +[[package]] +name = "tqdm" +version = "4.67.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540 }, +] + +[[package]] +name = "typer" +version = "0.21.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "rich" }, + { name = "shellingham" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/36/bf/8825b5929afd84d0dabd606c67cd57b8388cb3ec385f7ef19c5cc2202069/typer-0.21.1.tar.gz", hash = "sha256:ea835607cd752343b6b2b7ce676893e5a0324082268b48f27aa058bdb7d2145d", size = 110371 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/1d/d9257dd49ff2ca23ea5f132edf1281a0c4f9de8a762b9ae399b670a59235/typer-0.21.1-py3-none-any.whl", hash = "sha256:7985e89081c636b88d172c2ee0cfe33c253160994d47bdfdc302defd7d1f1d01", size = 47381 }, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614 }, +] + +[[package]] +name = "tzdata" +version = "2025.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5e/a7/c202b344c5ca7daf398f3b8a477eeb205cf3b6f32e7ec3a6bac0629ca975/tzdata-2025.3.tar.gz", hash = "sha256:de39c2ca5dc7b0344f2eba86f49d614019d29f060fc4ebc8a417896a620b56a7", size = 196772 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl", hash = "sha256:06a47e5700f3081aab02b2e513160914ff0694bce9947d6b76ebd6bf57cfc5d1", size = 348521 }, +] + +[[package]] +name = "url-normalize" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/80/31/febb777441e5fcdaacb4522316bf2a527c44551430a4873b052d545e3279/url_normalize-2.2.1.tar.gz", hash = "sha256:74a540a3b6eba1d95bdc610c24f2c0141639f3ba903501e61a52a8730247ff37", size = 18846 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bc/d9/5ec15501b675f7bc07c5d16aa70d8d778b12375686b6efd47656efdc67cd/url_normalize-2.2.1-py3-none-any.whl", hash = "sha256:3deb687587dc91f7b25c9ae5162ffc0f057ae85d22b1e15cf5698311247f567b", size = 14728 }, +] + +[[package]] +name = "urllib3" +version = "2.6.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c7/24/5f1b3bdffd70275f6661c76461e25f024d5a38a46f04aaca912426a2b1d3/urllib3-2.6.3.tar.gz", hash = "sha256:1b62b6884944a57dbe321509ab94fd4d3b307075e0c2eae991ac71ee15ad38ed", size = 435556 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl", hash = "sha256:bf272323e553dfb2e87d9bfd225ca7b0f467b919d7bbd355436d3fd37cb0acd4", size = 131584 }, +] + +[[package]] +name = "uvicorn" +version = "0.40.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/d1/8f3c683c9561a4e6689dd3b1d345c815f10f86acd044ee1fb9a4dcd0b8c5/uvicorn-0.40.0.tar.gz", hash = "sha256:839676675e87e73694518b5574fd0f24c9d97b46bea16df7b8c05ea1a51071ea", size = 81761 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/d8/2083a1daa7439a66f3a48589a57d576aa117726762618f6bb09fe3798796/uvicorn-0.40.0-py3-none-any.whl", hash = "sha256:c6c8f55bc8bf13eb6fa9ff87ad62308bbbc33d0b67f84293151efe87e0d5f2ee", size = 68502 }, +] + +[[package]] +name = "watchdog" +version = "6.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/db/7d/7f3d619e951c88ed75c6037b246ddcf2d322812ee8ea189be89511721d54/watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282", size = 131220 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079 }, + { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078 }, + { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076 }, + { url = "https://files.pythonhosted.org/packages/ab/cc/da8422b300e13cb187d2203f20b9253e91058aaf7db65b74142013478e66/watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f", size = 79077 }, + { url = "https://files.pythonhosted.org/packages/2c/3b/b8964e04ae1a025c44ba8e4291f86e97fac443bca31de8bd98d3263d2fcf/watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26", size = 79078 }, + { url = "https://files.pythonhosted.org/packages/62/ae/a696eb424bedff7407801c257d4b1afda455fe40821a2be430e173660e81/watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c", size = 79077 }, + { url = "https://files.pythonhosted.org/packages/b5/e8/dbf020b4d98251a9860752a094d09a65e1b436ad181faf929983f697048f/watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2", size = 79078 }, + { url = "https://files.pythonhosted.org/packages/07/f6/d0e5b343768e8bcb4cda79f0f2f55051bf26177ecd5651f84c07567461cf/watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a", size = 79065 }, + { url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680", size = 79070 }, + { url = "https://files.pythonhosted.org/packages/33/e8/e40370e6d74ddba47f002a32919d91310d6074130fe4e17dabcafc15cbf1/watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f", size = 79067 }, +] + +[[package]] +name = "xarray" +version = "2022.12.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "packaging" }, + { name = "pandas", version = "2.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12'" }, + { name = "pandas", version = "2.3.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f8/5c/4e160293ad96d5db5c140393eb8f5a529aa63cc6bc26ec9760bf8de4c326/xarray-2022.12.0.tar.gz", hash = "sha256:083d08e552a7647c7ece136dfa3a4b6a1379256beb55bbed8b8ddf05f1e14ec7", size = 3060755 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0b/43/b61d430c6b4071a687ff29855ba2a3134d064dd6864d9db3075ad51e010e/xarray-2022.12.0-py3-none-any.whl", hash = "sha256:eaf3e4c0b62faebf7965f272ce76bc2fc1c9d93c2b966a390e929ef082a796dd", size = 969959 }, +] + +[[package]] +name = "xgboost" +version = "2.0.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "scipy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/53/4a/316018e4d5d47f2a671d89e2ee5a8b6686689e7576258929b222b07aa097/xgboost-2.0.3.tar.gz", hash = "sha256:505955b5d770f8217a049beecce79e04a93787371c06dfb4b2414fec9d496bf3", size = 1048322 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/45/6d/8c1d2570a52db6263d855c3ee3daf8f4bdf4a365cd6610772d6fce5fd904/xgboost-2.0.3-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl", hash = "sha256:b21b2bb188b162c615fce468db93e3f995f3690e6184aadc7743b58466dc7f13", size = 2189605 }, + { url = "https://files.pythonhosted.org/packages/03/e6/4aef6799badc2693548559bad5b56d56cfe89eada337c815fdfe92175250/xgboost-2.0.3-py3-none-macosx_12_0_arm64.whl", hash = "sha256:722d5b9351dfdf61973490dfd28abd42844db1cc469d07ed9b0cde9d1ffcdb32", size = 1949100 }, + { url = "https://files.pythonhosted.org/packages/89/92/7028e320f3099ccf74f3058ec61978bc059137ac27cec432f6261bae2990/xgboost-2.0.3-py3-none-manylinux2014_aarch64.whl", hash = "sha256:2315a57b1883221e2f78dd514559aa9797e6c272d995d22e45495a04adac93cc", size = 3935229 }, + { url = "https://files.pythonhosted.org/packages/c3/eb/496aa2f5d356af4185f770bc76055307f8d1870e11016b10fd779b21769c/xgboost-2.0.3-py3-none-manylinux2014_x86_64.whl", hash = "sha256:30bd5f789fad467fd49e04e5d19e04238b931682c3951a514da5c2410b3bf59c", size = 297094586 }, + { url = "https://files.pythonhosted.org/packages/24/ec/ad387100fa3cc2b9b81af0829b5ecfe75ec5bb19dd7c19d4fea06fb81802/xgboost-2.0.3-py3-none-win_amd64.whl", hash = "sha256:462f131d7bfb1bc42f67c57fa5aa3e57d2b5755b1573a6e0d2c7e8895164e0fc", size = 99750005 }, +] + +[[package]] +name = "yarl" +version = "1.22.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "multidict" }, + { name = "propcache" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/57/63/0c6ebca57330cd313f6102b16dd57ffaf3ec4c83403dcb45dbd15c6f3ea1/yarl-1.22.0.tar.gz", hash = "sha256:bebf8557577d4401ba8bd9ff33906f1376c877aa78d1fe216ad01b4d6745af71", size = 187169 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4d/27/5ab13fc84c76a0250afd3d26d5936349a35be56ce5785447d6c423b26d92/yarl-1.22.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1ab72135b1f2db3fed3997d7e7dc1b80573c67138023852b6efb336a5eae6511", size = 141607 }, + { url = "https://files.pythonhosted.org/packages/6a/a1/d065d51d02dc02ce81501d476b9ed2229d9a990818332242a882d5d60340/yarl-1.22.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:669930400e375570189492dc8d8341301578e8493aec04aebc20d4717f899dd6", size = 94027 }, + { url = "https://files.pythonhosted.org/packages/c1/da/8da9f6a53f67b5106ffe902c6fa0164e10398d4e150d85838b82f424072a/yarl-1.22.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:792a2af6d58177ef7c19cbf0097aba92ca1b9cb3ffdd9c7470e156c8f9b5e028", size = 94963 }, + { url = "https://files.pythonhosted.org/packages/68/fe/2c1f674960c376e29cb0bec1249b117d11738db92a6ccc4a530b972648db/yarl-1.22.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3ea66b1c11c9150f1372f69afb6b8116f2dd7286f38e14ea71a44eee9ec51b9d", size = 368406 }, + { url = "https://files.pythonhosted.org/packages/95/26/812a540e1c3c6418fec60e9bbd38e871eaba9545e94fa5eff8f4a8e28e1e/yarl-1.22.0-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3e2daa88dc91870215961e96a039ec73e4937da13cf77ce17f9cad0c18df3503", size = 336581 }, + { url = "https://files.pythonhosted.org/packages/0b/f5/5777b19e26fdf98563985e481f8be3d8a39f8734147a6ebf459d0dab5a6b/yarl-1.22.0-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ba440ae430c00eee41509353628600212112cd5018d5def7e9b05ea7ac34eb65", size = 388924 }, + { url = "https://files.pythonhosted.org/packages/86/08/24bd2477bd59c0bbd994fe1d93b126e0472e4e3df5a96a277b0a55309e89/yarl-1.22.0-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:e6438cc8f23a9c1478633d216b16104a586b9761db62bfacb6425bac0a36679e", size = 392890 }, + { url = "https://files.pythonhosted.org/packages/46/00/71b90ed48e895667ecfb1eaab27c1523ee2fa217433ed77a73b13205ca4b/yarl-1.22.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4c52a6e78aef5cf47a98ef8e934755abf53953379b7d53e68b15ff4420e6683d", size = 365819 }, + { url = "https://files.pythonhosted.org/packages/30/2d/f715501cae832651d3282387c6a9236cd26bd00d0ff1e404b3dc52447884/yarl-1.22.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:3b06bcadaac49c70f4c88af4ffcfbe3dc155aab3163e75777818092478bcbbe7", size = 363601 }, + { url = "https://files.pythonhosted.org/packages/f8/f9/a678c992d78e394e7126ee0b0e4e71bd2775e4334d00a9278c06a6cce96a/yarl-1.22.0-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:6944b2dc72c4d7f7052683487e3677456050ff77fcf5e6204e98caf785ad1967", size = 358072 }, + { url = "https://files.pythonhosted.org/packages/2c/d1/b49454411a60edb6fefdcad4f8e6dbba7d8019e3a508a1c5836cba6d0781/yarl-1.22.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:d5372ca1df0f91a86b047d1277c2aaf1edb32d78bbcefffc81b40ffd18f027ed", size = 385311 }, + { url = "https://files.pythonhosted.org/packages/87/e5/40d7a94debb8448c7771a916d1861d6609dddf7958dc381117e7ba36d9e8/yarl-1.22.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:51af598701f5299012b8416486b40fceef8c26fc87dc6d7d1f6fc30609ea0aa6", size = 381094 }, + { url = "https://files.pythonhosted.org/packages/35/d8/611cc282502381ad855448643e1ad0538957fc82ae83dfe7762c14069e14/yarl-1.22.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b266bd01fedeffeeac01a79ae181719ff848a5a13ce10075adbefc8f1daee70e", size = 370944 }, + { url = "https://files.pythonhosted.org/packages/2d/df/fadd00fb1c90e1a5a8bd731fa3d3de2e165e5a3666a095b04e31b04d9cb6/yarl-1.22.0-cp311-cp311-win32.whl", hash = "sha256:a9b1ba5610a4e20f655258d5a1fdc7ebe3d837bb0e45b581398b99eb98b1f5ca", size = 81804 }, + { url = "https://files.pythonhosted.org/packages/b5/f7/149bb6f45f267cb5c074ac40c01c6b3ea6d8a620d34b337f6321928a1b4d/yarl-1.22.0-cp311-cp311-win_amd64.whl", hash = "sha256:078278b9b0b11568937d9509b589ee83ef98ed6d561dfe2020e24a9fd08eaa2b", size = 86858 }, + { url = "https://files.pythonhosted.org/packages/2b/13/88b78b93ad3f2f0b78e13bfaaa24d11cbc746e93fe76d8c06bf139615646/yarl-1.22.0-cp311-cp311-win_arm64.whl", hash = "sha256:b6a6f620cfe13ccec221fa312139135166e47ae169f8253f72a0abc0dae94376", size = 81637 }, + { url = "https://files.pythonhosted.org/packages/75/ff/46736024fee3429b80a165a732e38e5d5a238721e634ab41b040d49f8738/yarl-1.22.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e340382d1afa5d32b892b3ff062436d592ec3d692aeea3bef3a5cfe11bbf8c6f", size = 142000 }, + { url = "https://files.pythonhosted.org/packages/5a/9a/b312ed670df903145598914770eb12de1bac44599549b3360acc96878df8/yarl-1.22.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f1e09112a2c31ffe8d80be1b0988fa6a18c5d5cad92a9ffbb1c04c91bfe52ad2", size = 94338 }, + { url = "https://files.pythonhosted.org/packages/ba/f5/0601483296f09c3c65e303d60c070a5c19fcdbc72daa061e96170785bc7d/yarl-1.22.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:939fe60db294c786f6b7c2d2e121576628468f65453d86b0fe36cb52f987bd74", size = 94909 }, + { url = "https://files.pythonhosted.org/packages/60/41/9a1fe0b73dbcefce72e46cf149b0e0a67612d60bfc90fb59c2b2efdfbd86/yarl-1.22.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e1651bf8e0398574646744c1885a41198eba53dc8a9312b954073f845c90a8df", size = 372940 }, + { url = "https://files.pythonhosted.org/packages/17/7a/795cb6dfee561961c30b800f0ed616b923a2ec6258b5def2a00bf8231334/yarl-1.22.0-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:b8a0588521a26bf92a57a1705b77b8b59044cdceccac7151bd8d229e66b8dedb", size = 345825 }, + { url = "https://files.pythonhosted.org/packages/d7/93/a58f4d596d2be2ae7bab1a5846c4d270b894958845753b2c606d666744d3/yarl-1.22.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:42188e6a615c1a75bcaa6e150c3fe8f3e8680471a6b10150c5f7e83f47cc34d2", size = 386705 }, + { url = "https://files.pythonhosted.org/packages/61/92/682279d0e099d0e14d7fd2e176bd04f48de1484f56546a3e1313cd6c8e7c/yarl-1.22.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f6d2cb59377d99718913ad9a151030d6f83ef420a2b8f521d94609ecc106ee82", size = 396518 }, + { url = "https://files.pythonhosted.org/packages/db/0f/0d52c98b8a885aeda831224b78f3be7ec2e1aa4a62091f9f9188c3c65b56/yarl-1.22.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:50678a3b71c751d58d7908edc96d332af328839eea883bb554a43f539101277a", size = 377267 }, + { url = "https://files.pythonhosted.org/packages/22/42/d2685e35908cbeaa6532c1fc73e89e7f2efb5d8a7df3959ea8e37177c5a3/yarl-1.22.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1e8fbaa7cec507aa24ea27a01456e8dd4b6fab829059b69844bd348f2d467124", size = 365797 }, + { url = "https://files.pythonhosted.org/packages/a2/83/cf8c7bcc6355631762f7d8bdab920ad09b82efa6b722999dfb05afa6cfac/yarl-1.22.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:433885ab5431bc3d3d4f2f9bd15bfa1614c522b0f1405d62c4f926ccd69d04fa", size = 365535 }, + { url = "https://files.pythonhosted.org/packages/25/e1/5302ff9b28f0c59cac913b91fe3f16c59a033887e57ce9ca5d41a3a94737/yarl-1.22.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:b790b39c7e9a4192dc2e201a282109ed2985a1ddbd5ac08dc56d0e121400a8f7", size = 382324 }, + { url = "https://files.pythonhosted.org/packages/bf/cd/4617eb60f032f19ae3a688dc990d8f0d89ee0ea378b61cac81ede3e52fae/yarl-1.22.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:31f0b53913220599446872d757257be5898019c85e7971599065bc55065dc99d", size = 383803 }, + { url = "https://files.pythonhosted.org/packages/59/65/afc6e62bb506a319ea67b694551dab4a7e6fb7bf604e9bd9f3e11d575fec/yarl-1.22.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:a49370e8f711daec68d09b821a34e1167792ee2d24d405cbc2387be4f158b520", size = 374220 }, + { url = "https://files.pythonhosted.org/packages/e7/3d/68bf18d50dc674b942daec86a9ba922d3113d8399b0e52b9897530442da2/yarl-1.22.0-cp312-cp312-win32.whl", hash = "sha256:70dfd4f241c04bd9239d53b17f11e6ab672b9f1420364af63e8531198e3f5fe8", size = 81589 }, + { url = "https://files.pythonhosted.org/packages/c8/9a/6ad1a9b37c2f72874f93e691b2e7ecb6137fb2b899983125db4204e47575/yarl-1.22.0-cp312-cp312-win_amd64.whl", hash = "sha256:8884d8b332a5e9b88e23f60bb166890009429391864c685e17bd73a9eda9105c", size = 87213 }, + { url = "https://files.pythonhosted.org/packages/44/c5/c21b562d1680a77634d748e30c653c3ca918beb35555cff24986fff54598/yarl-1.22.0-cp312-cp312-win_arm64.whl", hash = "sha256:ea70f61a47f3cc93bdf8b2f368ed359ef02a01ca6393916bc8ff877427181e74", size = 81330 }, + { url = "https://files.pythonhosted.org/packages/ea/f3/d67de7260456ee105dc1d162d43a019ecad6b91e2f51809d6cddaa56690e/yarl-1.22.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8dee9c25c74997f6a750cd317b8ca63545169c098faee42c84aa5e506c819b53", size = 139980 }, + { url = "https://files.pythonhosted.org/packages/01/88/04d98af0b47e0ef42597b9b28863b9060bb515524da0a65d5f4db160b2d5/yarl-1.22.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:01e73b85a5434f89fc4fe27dcda2aff08ddf35e4d47bbbea3bdcd25321af538a", size = 93424 }, + { url = "https://files.pythonhosted.org/packages/18/91/3274b215fd8442a03975ce6bee5fe6aa57a8326b29b9d3d56234a1dca244/yarl-1.22.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:22965c2af250d20c873cdbee8ff958fb809940aeb2e74ba5f20aaf6b7ac8c70c", size = 93821 }, + { url = "https://files.pythonhosted.org/packages/61/3a/caf4e25036db0f2da4ca22a353dfeb3c9d3c95d2761ebe9b14df8fc16eb0/yarl-1.22.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b4f15793aa49793ec8d1c708ab7f9eded1aa72edc5174cae703651555ed1b601", size = 373243 }, + { url = "https://files.pythonhosted.org/packages/6e/9e/51a77ac7516e8e7803b06e01f74e78649c24ee1021eca3d6a739cb6ea49c/yarl-1.22.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5542339dcf2747135c5c85f68680353d5cb9ffd741c0f2e8d832d054d41f35a", size = 342361 }, + { url = "https://files.pythonhosted.org/packages/d4/f8/33b92454789dde8407f156c00303e9a891f1f51a0330b0fad7c909f87692/yarl-1.22.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5c401e05ad47a75869c3ab3e35137f8468b846770587e70d71e11de797d113df", size = 387036 }, + { url = "https://files.pythonhosted.org/packages/d9/9a/c5db84ea024f76838220280f732970aa4ee154015d7f5c1bfb60a267af6f/yarl-1.22.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:243dda95d901c733f5b59214d28b0120893d91777cb8aa043e6ef059d3cddfe2", size = 397671 }, + { url = "https://files.pythonhosted.org/packages/11/c9/cd8538dc2e7727095e0c1d867bad1e40c98f37763e6d995c1939f5fdc7b1/yarl-1.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bec03d0d388060058f5d291a813f21c011041938a441c593374da6077fe21b1b", size = 377059 }, + { url = "https://files.pythonhosted.org/packages/a1/b9/ab437b261702ced75122ed78a876a6dec0a1b0f5e17a4ac7a9a2482d8abe/yarl-1.22.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0748275abb8c1e1e09301ee3cf90c8a99678a4e92e4373705f2a2570d581273", size = 365356 }, + { url = "https://files.pythonhosted.org/packages/b2/9d/8e1ae6d1d008a9567877b08f0ce4077a29974c04c062dabdb923ed98e6fe/yarl-1.22.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:47fdb18187e2a4e18fda2c25c05d8251a9e4a521edaed757fef033e7d8498d9a", size = 361331 }, + { url = "https://files.pythonhosted.org/packages/ca/5a/09b7be3905962f145b73beb468cdd53db8aa171cf18c80400a54c5b82846/yarl-1.22.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c7044802eec4524fde550afc28edda0dd5784c4c45f0be151a2d3ba017daca7d", size = 382590 }, + { url = "https://files.pythonhosted.org/packages/aa/7f/59ec509abf90eda5048b0bc3e2d7b5099dffdb3e6b127019895ab9d5ef44/yarl-1.22.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:139718f35149ff544caba20fce6e8a2f71f1e39b92c700d8438a0b1d2a631a02", size = 385316 }, + { url = "https://files.pythonhosted.org/packages/e5/84/891158426bc8036bfdfd862fabd0e0fa25df4176ec793e447f4b85cf1be4/yarl-1.22.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e1b51bebd221006d3d2f95fbe124b22b247136647ae5dcc8c7acafba66e5ee67", size = 374431 }, + { url = "https://files.pythonhosted.org/packages/bb/49/03da1580665baa8bef5e8ed34c6df2c2aca0a2f28bf397ed238cc1bbc6f2/yarl-1.22.0-cp313-cp313-win32.whl", hash = "sha256:d3e32536234a95f513bd374e93d717cf6b2231a791758de6c509e3653f234c95", size = 81555 }, + { url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl", hash = "sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d", size = 86965 }, + { url = "https://files.pythonhosted.org/packages/98/4d/264a01eae03b6cf629ad69bae94e3b0e5344741e929073678e84bf7a3e3b/yarl-1.22.0-cp313-cp313-win_arm64.whl", hash = "sha256:5d0fcda9608875f7d052eff120c7a5da474a6796fe4d83e152e0e4d42f6d1a9b", size = 81205 }, + { url = "https://files.pythonhosted.org/packages/88/fc/6908f062a2f77b5f9f6d69cecb1747260831ff206adcbc5b510aff88df91/yarl-1.22.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:719ae08b6972befcba4310e49edb1161a88cdd331e3a694b84466bd938a6ab10", size = 146209 }, + { url = "https://files.pythonhosted.org/packages/65/47/76594ae8eab26210b4867be6f49129861ad33da1f1ebdf7051e98492bf62/yarl-1.22.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:47d8a5c446df1c4db9d21b49619ffdba90e77c89ec6e283f453856c74b50b9e3", size = 95966 }, + { url = "https://files.pythonhosted.org/packages/ab/ce/05e9828a49271ba6b5b038b15b3934e996980dd78abdfeb52a04cfb9467e/yarl-1.22.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cfebc0ac8333520d2d0423cbbe43ae43c8838862ddb898f5ca68565e395516e9", size = 97312 }, + { url = "https://files.pythonhosted.org/packages/d1/c5/7dffad5e4f2265b29c9d7ec869c369e4223166e4f9206fc2243ee9eea727/yarl-1.22.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4398557cbf484207df000309235979c79c4356518fd5c99158c7d38203c4da4f", size = 361967 }, + { url = "https://files.pythonhosted.org/packages/50/b2/375b933c93a54bff7fc041e1a6ad2c0f6f733ffb0c6e642ce56ee3b39970/yarl-1.22.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2ca6fd72a8cd803be290d42f2dec5cdcd5299eeb93c2d929bf060ad9efaf5de0", size = 323949 }, + { url = "https://files.pythonhosted.org/packages/66/50/bfc2a29a1d78644c5a7220ce2f304f38248dc94124a326794e677634b6cf/yarl-1.22.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca1f59c4e1ab6e72f0a23c13fca5430f889634166be85dbf1013683e49e3278e", size = 361818 }, + { url = "https://files.pythonhosted.org/packages/46/96/f3941a46af7d5d0f0498f86d71275696800ddcdd20426298e572b19b91ff/yarl-1.22.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c5010a52015e7c70f86eb967db0f37f3c8bd503a695a49f8d45700144667708", size = 372626 }, + { url = "https://files.pythonhosted.org/packages/c1/42/8b27c83bb875cd89448e42cd627e0fb971fa1675c9ec546393d18826cb50/yarl-1.22.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d7672ecf7557476642c88497c2f8d8542f8e36596e928e9bcba0e42e1e7d71f", size = 341129 }, + { url = "https://files.pythonhosted.org/packages/49/36/99ca3122201b382a3cf7cc937b95235b0ac944f7e9f2d5331d50821ed352/yarl-1.22.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3b7c88eeef021579d600e50363e0b6ee4f7f6f728cd3486b9d0f3ee7b946398d", size = 346776 }, + { url = "https://files.pythonhosted.org/packages/85/b4/47328bf996acd01a4c16ef9dcd2f59c969f495073616586f78cd5f2efb99/yarl-1.22.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f4afb5c34f2c6fecdcc182dfcfc6af6cccf1aa923eed4d6a12e9d96904e1a0d8", size = 334879 }, + { url = "https://files.pythonhosted.org/packages/c2/ad/b77d7b3f14a4283bffb8e92c6026496f6de49751c2f97d4352242bba3990/yarl-1.22.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:59c189e3e99a59cf8d83cbb31d4db02d66cda5a1a4374e8a012b51255341abf5", size = 350996 }, + { url = "https://files.pythonhosted.org/packages/81/c8/06e1d69295792ba54d556f06686cbd6a7ce39c22307100e3fb4a2c0b0a1d/yarl-1.22.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:5a3bf7f62a289fa90f1990422dc8dff5a458469ea71d1624585ec3a4c8d6960f", size = 356047 }, + { url = "https://files.pythonhosted.org/packages/4b/b8/4c0e9e9f597074b208d18cef227d83aac36184bfbc6eab204ea55783dbc5/yarl-1.22.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:de6b9a04c606978fdfe72666fa216ffcf2d1a9f6a381058d4378f8d7b1e5de62", size = 342947 }, + { url = "https://files.pythonhosted.org/packages/e0/e5/11f140a58bf4c6ad7aca69a892bff0ee638c31bea4206748fc0df4ebcb3a/yarl-1.22.0-cp313-cp313t-win32.whl", hash = "sha256:1834bb90991cc2999f10f97f5f01317f99b143284766d197e43cd5b45eb18d03", size = 86943 }, + { url = "https://files.pythonhosted.org/packages/31/74/8b74bae38ed7fe6793d0c15a0c8207bbb819cf287788459e5ed230996cdd/yarl-1.22.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff86011bd159a9d2dfc89c34cfd8aff12875980e3bd6a39ff097887520e60249", size = 93715 }, + { url = "https://files.pythonhosted.org/packages/69/66/991858aa4b5892d57aef7ee1ba6b4d01ec3b7eb3060795d34090a3ca3278/yarl-1.22.0-cp313-cp313t-win_arm64.whl", hash = "sha256:7861058d0582b847bc4e3a4a4c46828a410bca738673f35a29ba3ca5db0b473b", size = 83857 }, + { url = "https://files.pythonhosted.org/packages/46/b3/e20ef504049f1a1c54a814b4b9bed96d1ac0e0610c3b4da178f87209db05/yarl-1.22.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:34b36c2c57124530884d89d50ed2c1478697ad7473efd59cfd479945c95650e4", size = 140520 }, + { url = "https://files.pythonhosted.org/packages/e4/04/3532d990fdbab02e5ede063676b5c4260e7f3abea2151099c2aa745acc4c/yarl-1.22.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:0dd9a702591ca2e543631c2a017e4a547e38a5c0f29eece37d9097e04a7ac683", size = 93504 }, + { url = "https://files.pythonhosted.org/packages/11/63/ff458113c5c2dac9a9719ac68ee7c947cb621432bcf28c9972b1c0e83938/yarl-1.22.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:594fcab1032e2d2cc3321bb2e51271e7cd2b516c7d9aee780ece81b07ff8244b", size = 94282 }, + { url = "https://files.pythonhosted.org/packages/a7/bc/315a56aca762d44a6aaaf7ad253f04d996cb6b27bad34410f82d76ea8038/yarl-1.22.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f3d7a87a78d46a2e3d5b72587ac14b4c16952dd0887dbb051451eceac774411e", size = 372080 }, + { url = "https://files.pythonhosted.org/packages/3f/3f/08e9b826ec2e099ea6e7c69a61272f4f6da62cb5b1b63590bb80ca2e4a40/yarl-1.22.0-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:852863707010316c973162e703bddabec35e8757e67fcb8ad58829de1ebc8590", size = 338696 }, + { url = "https://files.pythonhosted.org/packages/e3/9f/90360108e3b32bd76789088e99538febfea24a102380ae73827f62073543/yarl-1.22.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:131a085a53bfe839a477c0845acf21efc77457ba2bcf5899618136d64f3303a2", size = 387121 }, + { url = "https://files.pythonhosted.org/packages/98/92/ab8d4657bd5b46a38094cfaea498f18bb70ce6b63508fd7e909bd1f93066/yarl-1.22.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:078a8aefd263f4d4f923a9677b942b445a2be970ca24548a8102689a3a8ab8da", size = 394080 }, + { url = "https://files.pythonhosted.org/packages/f5/e7/d8c5a7752fef68205296201f8ec2bf718f5c805a7a7e9880576c67600658/yarl-1.22.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bca03b91c323036913993ff5c738d0842fc9c60c4648e5c8d98331526df89784", size = 372661 }, + { url = "https://files.pythonhosted.org/packages/b6/2e/f4d26183c8db0bb82d491b072f3127fb8c381a6206a3a56332714b79b751/yarl-1.22.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:68986a61557d37bb90d3051a45b91fa3d5c516d177dfc6dd6f2f436a07ff2b6b", size = 364645 }, + { url = "https://files.pythonhosted.org/packages/80/7c/428e5812e6b87cd00ee8e898328a62c95825bf37c7fa87f0b6bb2ad31304/yarl-1.22.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:4792b262d585ff0dff6bcb787f8492e40698443ec982a3568c2096433660c694", size = 355361 }, + { url = "https://files.pythonhosted.org/packages/ec/2a/249405fd26776f8b13c067378ef4d7dd49c9098d1b6457cdd152a99e96a9/yarl-1.22.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ebd4549b108d732dba1d4ace67614b9545b21ece30937a63a65dd34efa19732d", size = 381451 }, + { url = "https://files.pythonhosted.org/packages/67/a8/fb6b1adbe98cf1e2dd9fad71003d3a63a1bc22459c6e15f5714eb9323b93/yarl-1.22.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:f87ac53513d22240c7d59203f25cc3beac1e574c6cd681bbfd321987b69f95fd", size = 383814 }, + { url = "https://files.pythonhosted.org/packages/d9/f9/3aa2c0e480fb73e872ae2814c43bc1e734740bb0d54e8cb2a95925f98131/yarl-1.22.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:22b029f2881599e2f1b06f8f1db2ee63bd309e2293ba2d566e008ba12778b8da", size = 370799 }, + { url = "https://files.pythonhosted.org/packages/50/3c/af9dba3b8b5eeb302f36f16f92791f3ea62e3f47763406abf6d5a4a3333b/yarl-1.22.0-cp314-cp314-win32.whl", hash = "sha256:6a635ea45ba4ea8238463b4f7d0e721bad669f80878b7bfd1f89266e2ae63da2", size = 82990 }, + { url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl", hash = "sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79", size = 88292 }, + { url = "https://files.pythonhosted.org/packages/df/0a/227ab4ff5b998a1b7410abc7b46c9b7a26b0ca9e86c34ba4b8d8bc7c63d5/yarl-1.22.0-cp314-cp314-win_arm64.whl", hash = "sha256:8218f4e98d3c10d683584cb40f0424f4b9fd6e95610232dd75e13743b070ee33", size = 82888 }, + { url = "https://files.pythonhosted.org/packages/06/5e/a15eb13db90abd87dfbefb9760c0f3f257ac42a5cac7e75dbc23bed97a9f/yarl-1.22.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:45c2842ff0e0d1b35a6bf1cd6c690939dacb617a70827f715232b2e0494d55d1", size = 146223 }, + { url = "https://files.pythonhosted.org/packages/18/82/9665c61910d4d84f41a5bf6837597c89e665fa88aa4941080704645932a9/yarl-1.22.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d947071e6ebcf2e2bee8fce76e10faca8f7a14808ca36a910263acaacef08eca", size = 95981 }, + { url = "https://files.pythonhosted.org/packages/5d/9a/2f65743589809af4d0a6d3aa749343c4b5f4c380cc24a8e94a3c6625a808/yarl-1.22.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:334b8721303e61b00019474cc103bdac3d7b1f65e91f0bfedeec2d56dfe74b53", size = 97303 }, + { url = "https://files.pythonhosted.org/packages/b0/ab/5b13d3e157505c43c3b43b5a776cbf7b24a02bc4cccc40314771197e3508/yarl-1.22.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e7ce67c34138a058fd092f67d07a72b8e31ff0c9236e751957465a24b28910c", size = 361820 }, + { url = "https://files.pythonhosted.org/packages/fb/76/242a5ef4677615cf95330cfc1b4610e78184400699bdda0acb897ef5e49a/yarl-1.22.0-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:d77e1b2c6d04711478cb1c4ab90db07f1609ccf06a287d5607fcd90dc9863acf", size = 323203 }, + { url = "https://files.pythonhosted.org/packages/8c/96/475509110d3f0153b43d06164cf4195c64d16999e0c7e2d8a099adcd6907/yarl-1.22.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c4647674b6150d2cae088fc07de2738a84b8bcedebef29802cf0b0a82ab6face", size = 363173 }, + { url = "https://files.pythonhosted.org/packages/c9/66/59db471aecfbd559a1fd48aedd954435558cd98c7d0da8b03cc6c140a32c/yarl-1.22.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:efb07073be061c8f79d03d04139a80ba33cbd390ca8f0297aae9cce6411e4c6b", size = 373562 }, + { url = "https://files.pythonhosted.org/packages/03/1f/c5d94abc91557384719da10ff166b916107c1b45e4d0423a88457071dd88/yarl-1.22.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e51ac5435758ba97ad69617e13233da53908beccc6cfcd6c34bbed8dcbede486", size = 339828 }, + { url = "https://files.pythonhosted.org/packages/5f/97/aa6a143d3afba17b6465733681c70cf175af89f76ec8d9286e08437a7454/yarl-1.22.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:33e32a0dd0c8205efa8e83d04fc9f19313772b78522d1bdc7d9aed706bfd6138", size = 347551 }, + { url = "https://files.pythonhosted.org/packages/43/3c/45a2b6d80195959239a7b2a8810506d4eea5487dce61c2a3393e7fc3c52e/yarl-1.22.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:bf4a21e58b9cde0e401e683ebd00f6ed30a06d14e93f7c8fd059f8b6e8f87b6a", size = 334512 }, + { url = "https://files.pythonhosted.org/packages/86/a0/c2ab48d74599c7c84cb104ebd799c5813de252bea0f360ffc29d270c2caa/yarl-1.22.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:e4b582bab49ac33c8deb97e058cd67c2c50dac0dd134874106d9c774fd272529", size = 352400 }, + { url = "https://files.pythonhosted.org/packages/32/75/f8919b2eafc929567d3d8411f72bdb1a2109c01caaab4ebfa5f8ffadc15b/yarl-1.22.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:0b5bcc1a9c4839e7e30b7b30dd47fe5e7e44fb7054ec29b5bb8d526aa1041093", size = 357140 }, + { url = "https://files.pythonhosted.org/packages/cf/72/6a85bba382f22cf78add705d8c3731748397d986e197e53ecc7835e76de7/yarl-1.22.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:c0232bce2170103ec23c454e54a57008a9a72b5d1c3105dc2496750da8cfa47c", size = 341473 }, + { url = "https://files.pythonhosted.org/packages/35/18/55e6011f7c044dc80b98893060773cefcfdbf60dfefb8cb2f58b9bacbd83/yarl-1.22.0-cp314-cp314t-win32.whl", hash = "sha256:8009b3173bcd637be650922ac455946197d858b3630b6d8787aa9e5c4564533e", size = 89056 }, + { url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl", hash = "sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27", size = 96292 }, + { url = "https://files.pythonhosted.org/packages/48/b7/503c98092fb3b344a179579f55814b613c1fbb1c23b3ec14a7b008a66a6e/yarl-1.22.0-cp314-cp314t-win_arm64.whl", hash = "sha256:9f6d73c1436b934e3f01df1e1b21ff765cd1d28c77dfb9ace207f746d4610ee1", size = 85171 }, + { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814 }, +] + +[[package]] +name = "zarr" +version = "2.18.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "asciitree" }, + { name = "fasteners", marker = "sys_platform != 'emscripten'" }, + { name = "numcodecs" }, + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/00/ac5c518ff1c1b1cc87a62f86ad9d19c647c19d969a91faa40d3b6342ccaa/zarr-2.18.2.tar.gz", hash = "sha256:9bb393b8a0a38fb121dbb913b047d75db28de9890f6d644a217a73cf4ae74f47", size = 3603055 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5d/bd/8d881d8ca6d80fcb8da2b2f94f8855384daf649499ddfba78ffd1ee2caa3/zarr-2.18.2-py3-none-any.whl", hash = "sha256:a638754902f97efa99b406083fdc807a0e2ccf12a949117389d2a4ba9b05df38", size = 210228 }, +] + +[[package]] +name = "zipfile36" +version = "0.1.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7d/5e/22f712e45898d12ad896d54875b736ef90dcfc22590ec118b1fc94fa52a4/zipfile36-0.1.3.tar.gz", hash = "sha256:a78a8dddf4fa114f7fe73df76ffcce7538e23433b7a6a96c1c904023f122aead", size = 61882 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/8a/3b7da0b0bd87d1ef05b74207827c72d348b56a0d6d83242582be18a81e02/zipfile36-0.1.3-py3-none-any.whl", hash = "sha256:f7e48adf627f75cd74cdb50e7d850623b465f4cf5de913809196e8f3aa57dc4b", size = 20841 }, +] From 90d3584129fd86134148d403ef1a76a458fd8a41 Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Fri, 6 Feb 2026 16:40:00 +0530 Subject: [PATCH 3/6] test: Add comprehensive unit tests for v3 LightGBM model --- tests/unit/test_v3_lightgbm.py | 222 +++++++++++++++++++++++++++++++++ 1 file changed, 222 insertions(+) create mode 100644 tests/unit/test_v3_lightgbm.py diff --git a/tests/unit/test_v3_lightgbm.py b/tests/unit/test_v3_lightgbm.py new file mode 100644 index 000000000..441213ec2 --- /dev/null +++ b/tests/unit/test_v3_lightgbm.py @@ -0,0 +1,222 @@ +""" +Unit tests for v3 LightGBM Solar Forecast Model. + +These tests verify the core functionality of the LightGBMSolarPredictor class +and its feature engineering methods. +""" + +import numpy as np +import pandas as pd +import pytest +from datetime import datetime, timedelta +from unittest.mock import patch, MagicMock + +# Import the module under test +from quartz_solar_forecast.forecasts.v3_lightgbm import ( + LightGBMSolarPredictor, + predict_v3, + LIGHTGBM_AVAILABLE, +) + + +class TestLightGBMSolarPredictor: + """Tests for the LightGBMSolarPredictor class.""" + + @pytest.fixture + def predictor(self): + """Create a predictor instance for testing.""" + return LightGBMSolarPredictor() + + @pytest.fixture + def sample_dataframe(self): + """Create a sample DataFrame for testing feature engineering.""" + dates = pd.date_range(start="2024-06-15 06:00", periods=24, freq="H") + return pd.DataFrame({ + "date": dates, + "temperature_2m": np.random.uniform(15, 25, 24), + "cloud_cover": np.random.uniform(0, 100, 24), + "direct_radiation": np.random.uniform(0, 800, 24), + "diffuse_radiation": np.random.uniform(0, 200, 24), + "orientation": [180] * 24, + "tilt": [30] * 24, + "kwp": [5.0] * 24, + "latitude_rounded": [51.5] * 24, + "longitude_rounded": [-0.1] * 24, + }) + + def test_init(self, predictor): + """Test that predictor initializes correctly.""" + assert predictor.model is None + assert predictor.feature_columns is None + + def test_add_solar_features(self, predictor, sample_dataframe): + """Test solar feature engineering adds expected columns.""" + result = predictor._add_solar_features(sample_dataframe) + + # Check that cyclical time features are added + assert "hour_sin" in result.columns + assert "hour_cos" in result.columns + assert "day_sin" in result.columns + assert "day_cos" in result.columns + assert "month_sin" in result.columns + assert "month_cos" in result.columns + assert "day_of_week" in result.columns + + def test_solar_features_cyclical_range(self, predictor, sample_dataframe): + """Test that cyclical features are in valid range [-1, 1].""" + result = predictor._add_solar_features(sample_dataframe) + + for col in ["hour_sin", "hour_cos", "day_sin", "day_cos", "month_sin", "month_cos"]: + assert result[col].min() >= -1.0, f"{col} has values below -1" + assert result[col].max() <= 1.0, f"{col} has values above 1" + + def test_add_panel_features(self, predictor, sample_dataframe): + """Test panel feature engineering adds expected columns.""" + result = predictor._add_panel_features(sample_dataframe) + + assert "orientation_sin" in result.columns + assert "orientation_cos" in result.columns + assert "tilt_factor" in result.columns + + def test_panel_features_values(self, predictor, sample_dataframe): + """Test panel features have expected values for south-facing panel.""" + result = predictor._add_panel_features(sample_dataframe) + + # For 180-degree (south-facing) orientation: + # sin(180°) ≈ 0, cos(180°) ≈ -1 + assert np.allclose(result["orientation_sin"].iloc[0], 0, atol=0.01) + assert np.allclose(result["orientation_cos"].iloc[0], -1, atol=0.01) + + # For 30-degree tilt: cos(30°) ≈ 0.866 + assert np.allclose(result["tilt_factor"].iloc[0], 0.866, atol=0.01) + + def test_prepare_features(self, predictor, sample_dataframe): + """Test that prepare_features combines all feature engineering.""" + result = predictor.prepare_features(sample_dataframe) + + # Should have solar features + assert "hour_sin" in result.columns + + # Should have panel features + assert "orientation_sin" in result.columns + + # Should NOT have date column (dropped) + assert "date" not in result.columns + + def test_prepare_features_drops_unused_columns(self, predictor, sample_dataframe): + """Test that unused columns are dropped during feature preparation.""" + # Add some columns that should be dropped + sample_dataframe["terrestrial_radiation"] = 100 + sample_dataframe["shortwave_radiation"] = 200 + sample_dataframe["direct_normal_irradiance"] = 300 + + result = predictor.prepare_features(sample_dataframe) + + assert "terrestrial_radiation" not in result.columns + assert "shortwave_radiation" not in result.columns + assert "direct_normal_irradiance" not in result.columns + + +class TestCyclicalEncoding: + """Tests for cyclical time encoding correctness.""" + + @pytest.fixture + def predictor(self): + return LightGBMSolarPredictor() + + def test_hour_encoding_midnight(self, predictor): + """Test that midnight (00:00) encodes correctly.""" + df = pd.DataFrame({"date": [datetime(2024, 6, 21, 0, 0)]}) + result = predictor._add_solar_features(df) + + # At hour 0: sin(0) = 0, cos(0) = 1 + assert np.isclose(result["hour_sin"].iloc[0], 0, atol=0.01) + assert np.isclose(result["hour_cos"].iloc[0], 1, atol=0.01) + + def test_hour_encoding_noon(self, predictor): + """Test that noon (12:00) encodes correctly.""" + df = pd.DataFrame({"date": [datetime(2024, 6, 21, 12, 0)]}) + result = predictor._add_solar_features(df) + + # At hour 12: sin(π) = 0, cos(π) = -1 + assert np.isclose(result["hour_sin"].iloc[0], 0, atol=0.01) + assert np.isclose(result["hour_cos"].iloc[0], -1, atol=0.01) + + def test_hour_encoding_6am(self, predictor): + """Test that 6 AM encodes correctly.""" + df = pd.DataFrame({"date": [datetime(2024, 6, 21, 6, 0)]}) + result = predictor._add_solar_features(df) + + # At hour 6: sin(π/2) = 1, cos(π/2) = 0 + assert np.isclose(result["hour_sin"].iloc[0], 1, atol=0.01) + assert np.isclose(result["hour_cos"].iloc[0], 0, atol=0.01) + + +class TestPredictV3Function: + """Tests for the convenience predict_v3 function.""" + + @pytest.mark.skipif(not LIGHTGBM_AVAILABLE, reason="LightGBM not installed") + def test_predict_v3_returns_dataframe(self): + """Test that predict_v3 returns a DataFrame with expected columns.""" + # Skip if model file doesn't exist (would need to mock for full test) + pass + + +class TestEdgeCases: + """Tests for edge cases and error handling.""" + + @pytest.fixture + def predictor(self): + return LightGBMSolarPredictor() + + def test_empty_dataframe(self, predictor): + """Test handling of empty DataFrame.""" + df = pd.DataFrame(columns=["date", "temperature_2m", "orientation", "tilt"]) + result = predictor.prepare_features(df) + assert len(result) == 0 + + def test_missing_optional_columns(self, predictor): + """Test that missing optional columns don't cause errors.""" + df = pd.DataFrame({ + "date": [datetime(2024, 6, 21, 12, 0)], + "temperature_2m": [20.0], + }) + # Should not raise even without orientation/tilt columns + result = predictor._add_solar_features(df) + assert "hour_sin" in result.columns + + def test_load_model_file_not_found(self, predictor): + """Test that FileNotFoundError is raised when model file doesn't exist.""" + with pytest.raises(FileNotFoundError): + predictor.load_model("/nonexistent/path/model.pkl") + + +class TestModelIntegration: + """Integration tests requiring the actual model file.""" + + @pytest.fixture + def predictor(self): + return LightGBMSolarPredictor() + + @pytest.mark.skipif(not LIGHTGBM_AVAILABLE, reason="LightGBM not installed") + def test_model_loads_successfully(self, predictor): + """Test that the model can be loaded from the default location.""" + try: + predictor.load_model() + assert predictor.model is not None + except FileNotFoundError: + pytest.skip("Model file not found - run training first") + + @pytest.mark.skipif(not LIGHTGBM_AVAILABLE, reason="LightGBM not installed") + def test_model_has_feature_columns(self, predictor): + """Test that loaded model includes feature column metadata.""" + try: + predictor.load_model() + assert predictor.feature_columns is not None + assert isinstance(predictor.feature_columns, list) + except FileNotFoundError: + pytest.skip("Model file not found - run training first") + + +if __name__ == "__main__": + pytest.main([__file__, "-v"]) From 0938a6321c8249178906bc37a32cf29b954fa298 Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Fri, 6 Feb 2026 16:41:49 +0530 Subject: [PATCH 4/6] docs: Add v3 model training guide with HuggingFace setup --- docs/v3_training_guide.md | 100 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 docs/v3_training_guide.md diff --git a/docs/v3_training_guide.md b/docs/v3_training_guide.md new file mode 100644 index 000000000..0fb9a0066 --- /dev/null +++ b/docs/v3_training_guide.md @@ -0,0 +1,100 @@ +# V3 LightGBM Model - Training Guide + +This guide explains how to train the V3 LightGBM solar forecast model using real data from HuggingFace. + +## Prerequisites + +### 1. Install Dependencies + +```bash +pip install lightgbm huggingface_hub datasets +``` + +### 2. HuggingFace Authentication + +The UK PV dataset requires authentication. Follow these steps: + +1. **Create HuggingFace Account**: + - Go to [https://huggingface.co/join](https://huggingface.co/join) + - Sign up for a free account + +2. **Request Dataset Access**: + - Navigate to [openclimatefix/uk_pv](https://huggingface.co/datasets/openclimatefix/uk_pv) + - Click "Request Access" (may require accepting terms) + +3. **Generate Access Token**: + - Go to [https://huggingface.co/settings/tokens](https://huggingface.co/settings/tokens) + - Click "New token" + - Name: `ocf-training` + - Type: `Read` (or `Write` if you want to upload models) + - Copy the token + +4. **Authenticate CLI**: + ```bash + huggingface-cli login + # Paste your token when prompted + ``` + +## Training + +### Quick Training (Development) + +For fast iteration during development, use sampling: + +```bash +cd open-source-quartz-solar-forecast + +# Sample 20 sites, 7 days each +python scripts/train_v3_model.py --sample-sites 20 --sample-days 7 +``` + +This takes ~5-10 minutes and produces a usable model for testing. + +### Full Training (Production) + +For the best model quality: + +```bash +# Train on 500 sites, full year +python scripts/train_v3_model.py --sample-sites 500 --sample-days 365 +``` + +This takes ~1-2 hours depending on your hardware. + +### Training Output + +After training, you'll find: +- `quartz_solar_forecast/models/model-v3.0.pkl` - Trained model +- Console output with MAE and normalized MAE metrics + +## Benchmarking + +To compare against v1 and v2 models, run the eval script: + +```bash +# Run evaluation on all models +python scripts/run_eval.py --models v1 v2 v3 +``` + +## Troubleshooting + +### "Dataset not found" Error +- Ensure you've requested access to `openclimatefix/uk_pv` +- Re-run `huggingface-cli login` + +### Memory Issues +- Reduce `--sample-sites` to 50 or less +- Use a machine with more RAM + +### Training Metrics + +Good expected values: +- **MAE**: 0.1-0.3 kW (depends on system size) +- **Normalized MAE**: 5-15% + +## Next Steps + +After training a model with real data: +1. Run benchmarks to compare with v1/v2 +2. Update the PR with results +3. Consider hyperparameter tuning From 5eb327050ba53811c39222fbda95b645496a5c1c Mon Sep 17 00:00:00 2001 From: siddhant jain Date: Sat, 7 Feb 2026 15:28:55 +0530 Subject: [PATCH 5/6] feat: retrain v3 model with 576k samples - improved MAE to 0.235kW --- quartz_solar_forecast/models/model-v3.0.pkl | Bin 299329 -> 866192 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/quartz_solar_forecast/models/model-v3.0.pkl b/quartz_solar_forecast/models/model-v3.0.pkl index 203a693843cf660449f68861f082fe9364443b70..6cf9a942606e3400fce80cdc658024cd593dd446 100644 GIT binary patch literal 866192 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