From 511fefc5da85e9c7167d1f2323380ec9937ebff7 Mon Sep 17 00:00:00 2001 From: Justin Flannery Date: Wed, 27 May 2026 23:05:09 -0600 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20(providers):=20Implement=20Phase=20?= =?UTF-8?q?1.2=20Provider=20Engine?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Created CampsiteDTO and BaseProvider ABC. - Implemented RecreationGovProvider async engine with optimized chunked paging. - Replaced raw dictionaries with typed Pydantic models for search/availability parameters and metadata. - Resolved type safety across asyncio.gather with explicit casts. - Added comprehensive pytest-vcr integration tests. --- backend/packages/providers/providers/base.py | 28 +- backend/packages/providers/providers/dto.py | 35 + .../providers/recreation_gov/config.py | 74 + .../providers/recreation_gov/models/api.py | 110 ++ .../providers/recreation_gov/models/enums.py | 64 + .../providers/recreation_gov/provider.py | 372 +++- backend/packages/providers/pyproject.toml | 6 +- .../cassettes/test_find_availabilities.yaml | 1706 +++++++++++++++++ .../providers/tests/test_recreation_gov.py | 124 ++ backend/uv.lock | 619 +++++- docs/agents/CHECKLIST.md | 10 +- 11 files changed, 3127 insertions(+), 21 deletions(-) create mode 100644 backend/packages/providers/providers/dto.py create mode 100644 backend/packages/providers/providers/recreation_gov/config.py create mode 100644 backend/packages/providers/providers/recreation_gov/models/api.py create mode 100644 backend/packages/providers/providers/recreation_gov/models/enums.py create mode 100644 backend/packages/providers/tests/cassettes/test_find_availabilities.yaml create mode 100644 backend/packages/providers/tests/test_recreation_gov.py diff --git a/backend/packages/providers/providers/base.py b/backend/packages/providers/providers/base.py index ae27d8bc..b961ed72 100644 --- a/backend/packages/providers/providers/base.py +++ b/backend/packages/providers/providers/base.py @@ -3,6 +3,7 @@ """ from abc import ABC, abstractmethod +from datetime import date import httpx import structlog @@ -13,6 +14,7 @@ from sqlalchemy.sql.functions import concat from db.models import Campground, Provider, RecreationArea, Search +from providers.dto import CampsiteDTO logger = structlog.getLogger() @@ -26,14 +28,38 @@ def __init__(self) -> None: """ Initialize the base provider. """ + try: + from fake_useragent import UserAgent + + self.user_agent = UserAgent(browsers=["chrome"]).random + except Exception: + self.user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" self.async_client = httpx.AsyncClient(headers=self.headers) + @abstractmethod + async def find_availabilities( + self, + park_id: str, + start_date: date, + end_date: date, + ) -> list[CampsiteDTO]: + """ + Find campsite availabilities for the target park and dates. + """ + + @abstractmethod + async def sync_metadata(self) -> None: + """ + Background task to update the 'Search' and 'Campground' + tables with the latest info from the provider. + """ + @property def headers(self) -> dict[str, str]: """ Headers for the provider requests. """ - return {} + return {"User-Agent": self.user_agent} @abstractmethod async def populate_database(self) -> None: diff --git a/backend/packages/providers/providers/dto.py b/backend/packages/providers/providers/dto.py new file mode 100644 index 00000000..d3cf44fc --- /dev/null +++ b/backend/packages/providers/providers/dto.py @@ -0,0 +1,35 @@ +""" +Unified Data Transfer Objects for Providers +""" + +from datetime import date +from enum import StrEnum +from typing import Any + +from pydantic import BaseModel, Field + + +class CampsiteType(StrEnum): + """ + Standardized Campsite Type Enum + """ + + TENT = "TENT" + RV = "RV" + CABIN = "CABIN" + OTHER = "OTHER" + + +class CampsiteDTO(BaseModel): + """ + Standardized Campsite Data Transfer Object + """ + + campsite_id: str + campsite_name: str + campsite_type: CampsiteType + capacity: int + available_dates: list[date] + is_electric: bool + is_accessible: bool + metadata: dict[str, Any] = Field(default_factory=dict) diff --git a/backend/packages/providers/providers/recreation_gov/config.py b/backend/packages/providers/providers/recreation_gov/config.py new file mode 100644 index 00000000..1f06dfe5 --- /dev/null +++ b/backend/packages/providers/providers/recreation_gov/config.py @@ -0,0 +1,74 @@ +""" +Recreation.gov Provider Configuration +""" + +from datetime import timedelta +from urllib.parse import urljoin + +from pydantic import BaseModel, Field + + +class RecreationGovConfig(BaseModel): + """ + Configuration parameters and URLs for Recreation.gov. + """ + + api_scheme: str = "https" + api_netloc: str = "www.recreation.gov" + + # Base URLs + base_url: str = "https://www.recreation.gov/" + ridb_base_url: str = "https://ridb.recreation.gov/" + + # Referer Header Value + referer_header: str = "https://www.recreation.gov/" + + # API and Web Endpoints/Prefixes + campsite_search_endpoint: str = "api/search/campsites" + campsite_availability_endpoint: str = "api/camps/availability/campground" + ridb_export_endpoint: str = "downloads/RIDBFullExport_V1_JSON.zip" + gateway_endpoint_prefix: str = "gateways" + campground_endpoint_prefix: str = "camping/campgrounds" + + # Date formatting pattern for API month queries + api_month_format: str = "%Y-%m-01T00:00:00.000Z" + + # Expiration time for offline cached data + offline_cache_expiration: timedelta = Field( + default_factory=lambda: timedelta(hours=12) + ) + + @property + def campsite_search_url(self) -> str: + """ + Full campsite search metadata URL. + """ + return urljoin(self.base_url, self.campsite_search_endpoint) + + @property + def campsite_availability_url(self) -> str: + """ + Full campsite availability URL prefix. + """ + return urljoin(self.base_url, self.campsite_availability_endpoint) + + @property + def ridb_export_url(self) -> str: + """ + Full RIDB export data download URL. + """ + return urljoin(self.ridb_base_url, self.ridb_export_endpoint) + + @property + def gateway_url_prefix(self) -> str: + """ + Full gateway URL prefix. + """ + return urljoin(self.base_url, self.gateway_endpoint_prefix) + + @property + def campground_url_prefix(self) -> str: + """ + Full campground URL prefix. + """ + return urljoin(self.base_url, self.campground_endpoint_prefix) diff --git a/backend/packages/providers/providers/recreation_gov/models/api.py b/backend/packages/providers/providers/recreation_gov/models/api.py new file mode 100644 index 00000000..1eb105d4 --- /dev/null +++ b/backend/packages/providers/providers/recreation_gov/models/api.py @@ -0,0 +1,110 @@ +""" +Recreation.gov Raw API Pydantic Models +""" + +from datetime import datetime +from typing import Any + +from pydantic import BaseModel, Field + + +class RecDotGovEquipment(BaseModel): + """ + Permitted equipment definition for Recreation.gov campsites + """ + + equipment_name: str + max_length: float + + +class RecDotGovAttribute(BaseModel): + """ + Campsite attributes (e.g. electric hookup, sewer, pets allowed) + """ + + attribute_category: str | None = None + attribute_id: int + attribute_name: str + attribute_value: Any + + +class RecDotGovCampsite(BaseModel): + """ + Single campsite entry in Recreation.gov campsite search results + """ + + campsite_id: int + name: str + type: str | None = None + accessible: bool = False + loop: str = "" + latitude: float | None = None + longitude: float | None = None + permitted_equipment: list[RecDotGovEquipment] = Field(default_factory=list) + attributes: list[RecDotGovAttribute] = Field(default_factory=list) + + +class RecDotGovCampsiteResponse(BaseModel): + """ + Response wrapper for campsite search metadata endpoint + """ + + campsites: list[RecDotGovCampsite] + size: int + start: int + total: int + + +class CampsiteAvailabilityCampsite(BaseModel): + """ + Single campsite's monthly availability block + """ + + availabilities: dict[datetime, str] = Field(default_factory=dict) + loop: str = "Default Loop" + campsite_type: str | None = None + max_num_people: int = 1 + min_num_people: int = 1 + type_of_use: str | None = None + site: str = "Default Site" + + +class CampsiteAvailabilityResponse(BaseModel): + """ + Response wrapper for monthly availability endpoint + """ + + campsites: dict[int, CampsiteAvailabilityCampsite] + + +class RecreationGovCampsiteMetadata(BaseModel): + """ + Standardized metadata block for Recreation.gov campsites. + """ + + loop: str + site: str + type_of_use: str | None = None + permitted_equipment: list[RecDotGovEquipment] = Field(default_factory=list) + attributes: list[RecDotGovAttribute] = Field(default_factory=list) + latitude: float | None = None + longitude: float | None = None + + +class RecDotGovCampsiteSearchParams(BaseModel): + """ + Query parameters for campsite search metadata endpoint + """ + + start: int = 0 + size: int = 1000 + fq: list[str] = Field(default_factory=list) + include_non_site_specific_campsites: bool = True + + +class RecDotGovAvailabilityParams(BaseModel): + """ + Query parameters for campsite availability endpoint + """ + + start_date: str diff --git a/backend/packages/providers/providers/recreation_gov/models/enums.py b/backend/packages/providers/providers/recreation_gov/models/enums.py new file mode 100644 index 00000000..4b2c61c5 --- /dev/null +++ b/backend/packages/providers/providers/recreation_gov/models/enums.py @@ -0,0 +1,64 @@ +""" +Recreation.gov Specific Enums +""" + +from enum import StrEnum + + +class RecDotGovAvailabilityStatus(StrEnum): + """ + Availability status values returned by Recreation.gov availability API. + """ + + AVAILABLE = "Available" + RESERVED = "Reserved" + NOT_AVAILABLE = "Not Available" + NOT_RESERVABLE = "Not Reservable" + NOT_RESERVABLE_MANAGEMENT = "Not Reservable Management" + NOT_AVAILABLE_CUTOFF = "Not Available Cutoff" + LOTTERY = "Lottery" + OPEN = "Open" + NYR = "NYR" + CLOSED = "Closed" + + +class RecDotGovEquipmentType(StrEnum): + """ + Equipment type keywords used to classify RV campsites. + """ + + RV = "rv" + TRAILER = "trailer" + MOTORHOME = "motorhome" + FIFTH_WHEEL = "fifth wheel" + PICKUP_CAMPER = "pickup camper" + POP_UP = "pop up" + CARAVAN = "caravan" + + +class TentKeywords(StrEnum): + """ + Keywords indicating tent campsites. + """ + + TENT = "tent" + + +class RVKeywords(StrEnum): + """ + Keywords indicating RV/trailer campsites. + """ + + RV = "rv" + TRAILER = "trailer" + MOTORHOME = "motorhome" + + +class CabinKeywords(StrEnum): + """ + Keywords indicating cabin/shelter campsites. + """ + + CABIN = "cabin" + YURT = "yurt" + SHELTER = "shelter" diff --git a/backend/packages/providers/providers/recreation_gov/provider.py b/backend/packages/providers/providers/recreation_gov/provider.py index 811d9028..ea11f426 100644 --- a/backend/packages/providers/providers/recreation_gov/provider.py +++ b/backend/packages/providers/providers/recreation_gov/provider.py @@ -1,13 +1,10 @@ -""" -Recreation.gov API client for accessing recreation data. -""" - +import asyncio import time import zipfile from dataclasses import dataclass -from datetime import timedelta +from datetime import date, timedelta from pathlib import Path -from typing import ClassVar +from typing import Any, ClassVar, cast import platformdirs import rich.progress @@ -17,13 +14,63 @@ from db.data.providers import RecreationDotGov from db.models import Provider from providers.base import BaseProvider +from providers.dto import CampsiteDTO, CampsiteType +from providers.recreation_gov.config import RecreationGovConfig from providers.recreation_gov.models.address import AddressData, AddressPopulator +from providers.recreation_gov.models.api import ( + CampsiteAvailabilityResponse, + RecDotGovAvailabilityParams, + RecDotGovCampsite, + RecDotGovCampsiteResponse, + RecDotGovCampsiteSearchParams, + RecreationGovCampsiteMetadata, +) from providers.recreation_gov.models.campgrounds import RecDotGovCampgroundData +from providers.recreation_gov.models.enums import ( + CabinKeywords, + RecDotGovAvailabilityStatus, + RecDotGovEquipmentType, + RVKeywords, + TentKeywords, +) from providers.recreation_gov.models.recreation_area import RecDotGovRecreationAreaData logger = structlog.getLogger() +def map_campsite_type(type_str: str | None) -> CampsiteType: + """ + Map raw campsite type string to standardized CampsiteType enum. + """ + if not type_str: + return CampsiteType.OTHER + type_lower = type_str.lower() + if any(member.value in type_lower for member in TentKeywords): + return CampsiteType.TENT + if any(member.value in type_lower for member in RVKeywords): + return CampsiteType.RV + if any(member.value in type_lower for member in CabinKeywords): + return CampsiteType.CABIN + return CampsiteType.OTHER + + +def check_is_electric(campsite: RecDotGovCampsite) -> bool: + """ + Check if a campsite supports electric hookup. + """ + if campsite.type and "electric" in campsite.type.lower(): + return True + for attr in campsite.attributes: + if ( + "electric" in attr.attribute_name.lower() + or "electricity" in attr.attribute_name.lower() + ): + val = str(attr.attribute_value).lower() + if val not in ("no", "none", "0", "false", "n/a"): + return True + return False + + @dataclass class ZippedDataContents: """ @@ -40,6 +87,8 @@ class RecreationGovProvider(BaseProvider): Recreation.gov Provider Class """ + config = RecreationGovConfig() + @property def provider(self) -> Provider: """ @@ -47,10 +96,311 @@ def provider(self) -> Provider: """ return RecreationDotGov - data_source: ClassVar[str] = ( - "https://ridb.recreation.gov/downloads/RIDBFullExport_V1_JSON.zip" + async def sync_metadata(self) -> None: + """ + Background task to update the database tables. + """ + await self.populate_database() + + async def paginate_recdotgov_campsites( + self, facility_id: int + ) -> list[RecDotGovCampsite]: + """ + Paginate through the Recreation.gov Campsite Metadata. + """ + endpoint_url = self.config.campsite_search_url + fq_list = [f"asset_id:{facility_id}"] + params = RecDotGovCampsiteSearchParams( + start=0, + size=1000, + fq=fq_list, + include_non_site_specific_campsites=True, + ) + campsites: list[RecDotGovCampsite] = [] + continue_paginate = True + + headers = self.headers.copy() + headers.update( + { + "Referer": self.config.referer_header, + "Accept": "application/json", + } + ) + + while continue_paginate: + logger.debug( + "Fetching campsite metadata page", + facility_id=facility_id, + start=params.start, + ) + response = await self.async_client.get( + endpoint_url, + params=params.model_dump(), + headers=headers, + timeout=30.0, + ) + response.raise_for_status() + returned_data = response.json() + campsite_response = RecDotGovCampsiteResponse.model_validate(returned_data) + campsites.extend(campsite_response.campsites) + results = len(campsites) + params.start = results + if results >= campsite_response.total or not campsite_response.campsites: + continue_paginate = False + + return campsites + + async def make_recdotgov_availability_request( + self, + campground_id: int, + month: date, + ) -> CampsiteAvailabilityResponse: + """ + Make a monthly availability request to Recreation.gov. + """ + url = f"{self.config.campsite_availability_url}/{campground_id}/month" + formatted_month = month.strftime(self.config.api_month_format) + params = RecDotGovAvailabilityParams(start_date=formatted_month) + headers = self.headers.copy() + headers.update( + { + "Referer": self.config.referer_header, + "Accept": "application/json", + } + ) + + logger.debug( + "Fetching monthly availability", + campground_id=campground_id, + month=formatted_month, + ) + response = await self.async_client.get( + url, + params=params.model_dump(), + headers=headers, + timeout=30.0, + ) + response.raise_for_status() + return CampsiteAvailabilityResponse.model_validate(response.json()) + + async def find_availabilities( + self, + park_id: str, + start_date: date, + end_date: date, + ) -> list[CampsiteDTO]: + """ + Scan and fetch availabilities. + """ + # Calculate unique months in target range + months: list[date] = [] + current = date(start_date.year, start_date.month, 1) + end_month = date(end_date.year, end_date.month, 1) + december = 12 + while current <= end_month: + months.append(current) + if current.month == december: + current = date(current.year + 1, 1, 1) + else: + current = date(current.year, current.month + 1, 1) + + facility_id = int(park_id) + + # Parallel fetch of metadata and availabilities + campsites_task = self.paginate_recdotgov_campsites(facility_id=facility_id) + availability_tasks = [ + self.make_recdotgov_availability_request(campground_id=facility_id, month=m) + for m in months + ] + + results = await asyncio.gather(campsites_task, *availability_tasks) + campsites = cast(list[RecDotGovCampsite], results[0]) + availability_responses = cast( + list[CampsiteAvailabilityResponse], list(results[1:]) + ) + + metadata_map = {c.campsite_id: c for c in campsites} + return self._process_availability_responses( + availability_responses=availability_responses, + metadata_map=metadata_map, + start_date=start_date, + end_date=end_date, + ) + + def _process_availability_responses( + self, + availability_responses: list[CampsiteAvailabilityResponse], + metadata_map: dict[int, RecDotGovCampsite], + start_date: date, + end_date: date, + ) -> list[CampsiteDTO]: + """ + Process raw monthly availability responses into standardized CampsiteDTOs. + """ + avail_dto_map: dict[str, CampsiteDTO] = {} + unavail_statuses = { + RecDotGovAvailabilityStatus.RESERVED.value, + RecDotGovAvailabilityStatus.NOT_AVAILABLE.value, + RecDotGovAvailabilityStatus.NOT_RESERVABLE.value, + RecDotGovAvailabilityStatus.NOT_RESERVABLE_MANAGEMENT.value, + RecDotGovAvailabilityStatus.NOT_AVAILABLE_CUTOFF.value, + RecDotGovAvailabilityStatus.LOTTERY.value, + RecDotGovAvailabilityStatus.OPEN.value, + RecDotGovAvailabilityStatus.NYR.value, + RecDotGovAvailabilityStatus.CLOSED.value, + } + + for parsed_avail in availability_responses: + for campsite_id, site_data in parsed_avail.campsites.items(): + self._process_single_campsite( + campsite_id=campsite_id, + site_data=site_data, + metadata_map=metadata_map, + start_date=start_date, + end_date=end_date, + unavail_statuses=unavail_statuses, + avail_dto_map=avail_dto_map, + ) + + return list(avail_dto_map.values()) + + def _get_available_dates( + self, + site_data: Any, + start_date: date, + end_date: date, + unavail_statuses: set[str], + ) -> list[date]: + """ + Extract and filter available dates within the target range. + """ + available_dates = [] + for dt, status in site_data.availabilities.items(): + d = dt.date() + if start_date <= d <= end_date and status not in unavail_statuses: + available_dates.append(d) + return available_dates + + def _create_campsite_dto( + self, + campsite_id: int, + site_data: Any, + meta_site: RecDotGovCampsite | None, + available_dates: list[date], + ) -> CampsiteDTO: + """ + Create a strongly-typed CampsiteDTO for a campsite. + """ + campsite_name = site_data.site + if meta_site: + campsite_name = meta_site.name or site_data.site + + campsite_type = self._determine_campsite_type( + site_data=site_data, meta_site=meta_site + ) + + is_accessible = False + is_electric = False + capacity = site_data.max_num_people + + if site_data.campsite_type and "electric" in site_data.campsite_type.lower(): + is_electric = True + + permitted_eq = [] + attrs = [] + lat = None + lon = None + if meta_site: + is_accessible = meta_site.accessible + is_electric = check_is_electric(meta_site) or is_electric + permitted_eq = meta_site.permitted_equipment + attrs = meta_site.attributes + lat = meta_site.latitude + lon = meta_site.longitude + + metadata_model = RecreationGovCampsiteMetadata( + loop=site_data.loop, + site=site_data.site, + type_of_use=site_data.type_of_use, + permitted_equipment=permitted_eq, + attributes=attrs, + latitude=lat, + longitude=lon, + ) + + return CampsiteDTO( + campsite_id=str(campsite_id), + campsite_name=campsite_name, + campsite_type=campsite_type, + capacity=capacity, + available_dates=sorted(available_dates), + is_electric=is_electric, + is_accessible=is_accessible, + metadata=metadata_model.model_dump(), + ) + + def _process_single_campsite( + self, + campsite_id: int, + site_data: Any, + metadata_map: dict[int, RecDotGovCampsite], + start_date: date, + end_date: date, + unavail_statuses: set[str], + avail_dto_map: dict[str, CampsiteDTO], + ) -> None: + """ + Process a single campsite's monthly availability. + """ + available_dates = self._get_available_dates( + site_data=site_data, + start_date=start_date, + end_date=end_date, + unavail_statuses=unavail_statuses, + ) + if not available_dates: + return + + key = str(campsite_id) + if key in avail_dto_map: + all_dates = list(set(avail_dto_map[key].available_dates + available_dates)) + all_dates.sort() + avail_dto_map[key].available_dates = all_dates + else: + meta_site = metadata_map.get(campsite_id) + avail_dto_map[key] = self._create_campsite_dto( + campsite_id=campsite_id, + site_data=site_data, + meta_site=meta_site, + available_dates=available_dates, + ) + + def _determine_campsite_type( + self, site_data: Any, meta_site: RecDotGovCampsite | None + ) -> CampsiteType: + """ + Determine the standardized campsite type from availability and metadata. + """ + campsite_type = map_campsite_type(site_data.campsite_type) + if campsite_type == CampsiteType.OTHER and meta_site: + campsite_type = map_campsite_type(meta_site.type) + if campsite_type == CampsiteType.OTHER and meta_site.permitted_equipment: + eq_names = { + eq.equipment_name.lower() + for eq in meta_site.permitted_equipment + if eq.equipment_name + } + rv_keywords = {member.value for member in RecDotGovEquipmentType} + if any(any(kw in name for kw in rv_keywords) for name in eq_names): + return CampsiteType.RV + elif any(TentKeywords.TENT.value in name for name in eq_names): + return CampsiteType.TENT + return campsite_type + + data_source: ClassVar[str] = RecreationGovConfig().ridb_export_url + expiration_time: ClassVar[timedelta] = ( + RecreationGovConfig().offline_cache_expiration ) - expiration_time: ClassVar[timedelta] = timedelta(hours=12) data_files: ClassVar[list[ZippedDataContents]] = [ ZippedDataContents( json_file="RecAreas_API_v1.json", @@ -135,11 +485,11 @@ def get_rec_area_url(cls, rec_area_id: str) -> str: """ Get the URL for a recreation area """ - return f"https://www.recreation.gov/gateways/{rec_area_id}" + return f"{cls.config.gateway_url_prefix}/{rec_area_id}" @classmethod def get_campground_url(cls, campground_id: str) -> str: """ Get the URL for a campground """ - return f"https://www.recreation.gov/camping/campgrounds/{campground_id}" + return f"{cls.config.campground_url_prefix}/{campground_id}" diff --git a/backend/packages/providers/pyproject.toml b/backend/packages/providers/pyproject.toml index 9177bd5d..899bfbc0 100644 --- a/backend/packages/providers/pyproject.toml +++ b/backend/packages/providers/pyproject.toml @@ -10,7 +10,8 @@ dependencies = [ "platformdirs>=4,<5", "structlog>=25,<26", "rich>=14,<15", - "click>=8,<9" + "click>=8,<9", + "fake-useragent>=2.2.0" ] [project.scripts] @@ -22,7 +23,8 @@ dev = [ "pytest-cov>=6,<7", "ruff>=0.11.0,<0.12.0", "mypy>=1,<2", - "pip>=24,<25" + "pip>=24,<25", + "pytest-vcr>=1.0.2" ] [build-system] diff --git a/backend/packages/providers/tests/cassettes/test_find_availabilities.yaml b/backend/packages/providers/tests/cassettes/test_find_availabilities.yaml new file mode 100644 index 00000000..cc523ce9 --- /dev/null +++ b/backend/packages/providers/tests/cassettes/test_find_availabilities.yaml @@ -0,0 +1,1706 @@ +interactions: + - request: + body: "" + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Host: + - www.recreation.gov + Referer: + - https://www.recreation.gov/ + User-Agent: + - Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like + Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0 + method: GET + uri: https://www.recreation.gov/api/camps/availability/campground/234708/month?start_date=2023-09-01T00%3A00%3A00.000Z + response: + body: + string: '{"error":"Please select a date within the next two years."} + + ' + headers: + Access-Control-Allow-Origin: + - "*" + Alt-Svc: + - h3=":443"; ma=86400 + Connection: + - keep-alive + Content-Length: + - "60" + Content-Type: + - application/json; charset=utf-8 + Date: + - Sat, 23 May 2026 03:29:50 GMT + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Via: + - 1.1 3fddcbe99f78632bf14e5e80e6c14058.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - 1-k8c499T3batySWY_wClN3o5gQ4u1IP_WLutn_TwclpqPBKotMKfQ== + X-Amz-Cf-Pop: + - DEN52-P2 + X-Cache: + - Error from cloudfront + X-Content-Type-Options: + - nosniff + status: + code: 400 + message: Bad Request + - request: + body: "" + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Host: + - www.recreation.gov + Referer: + - https://www.recreation.gov/ + User-Agent: + - Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like + Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0 + method: GET + uri: https://www.recreation.gov/api/camps/availability/campground/234708/month?start_date=2026-09-01T00%3A00%3A00.000Z + response: + body: + string: !!binary | + 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 + headers: + Access-Control-Allow-Origin: + - "*" + Age: + - "13" + Alt-Svc: + - h3=":443"; ma=86400 + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=utf-8 + Date: + - Sat, 23 May 2026 03:29:54 GMT + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Via: + - 1.1 422414d66021e4e123bcb2b5087f7042.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - GnUZNacEKO1dwLJUNbnXtuhz_xmxl3XVW0fL4QgiLJhnNB782NuYGw== + X-Amz-Cf-Pop: + - DEN52-P2 + X-Cache: + - Hit from cloudfront + X-Content-Type-Options: + - nosniff + status: + code: 200 + message: OK + - request: + body: "" + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Host: + - www.recreation.gov + Referer: + - https://www.recreation.gov/ + User-Agent: + - Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like + Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0 + method: GET + uri: https://www.recreation.gov/api/search/campsites?start=0&size=1000&fq=asset_id%3A234708&include_non_site_specific_campsites=true + response: + body: + string: !!binary | + H4sIAAAAAAAA/7RXbXPiNhD+Kzvqh2unQPwCxvE3F7g0M4EwQHrN9DqMzl5AEyP5JJkczeS/d2Sc + lJvKpDV3fMEry/vso33VE0noNldMoyLRH0+EJgkqxT5lSCKyoplC0iJUKdRLlpKIeH6374Sva5xu + zcZ4Gg9+HcFidnu3gEE8nl7Nbu8mw9dtep+bbQO6zddSFDw1b7SW7FPxCvwiLhOqcS3knkTE2LVM + UVOWqeNPSlsujxcqQwzCikmEOMvEI36Fs9zRrDCb7lGR51YTyNCzYM6ZRphRzfjaCjfXlKdUpg0x + XdfGc4PJA+OwYFu0gnqR48B03BCzG1owb0RCNRP8FNcrIRrzDGw8BU/ZdwTt920O3dAUv3Hk9Gzs + xozDpNiCWMEURZ7ZQd2mB+rVBY4odH3kuGdFTv+yLkPisrJYIYeS7bB9zRtiBj0L5hS1+k5VoGc7 + 2DH98l98GTR1pmOtdjlNmN5fzNlfJ0vQUBSmotdC4+eC5Vvkuhbf8y34pd8e6R5GXMu9FfkXmjyc + 9Ozb0GG3LqQ+sFRv/vc5v41oO+trBaOXD2FsKro26mzgWhZnnXXo1hG+Qb6uYRw450D2ujUh/Rtu + WJKdRO6dh+yfTqbKAHvh8M4K6eBUSM8LuaKJPYuvJN1hdhbr/ul2cJL1iYZAt8iZZvhvRN+xRdWY + 5nAPAyFkyjjVdrp+6Hb8fhPQwEZzyhLOElhQU5KslbkZP6eG3+9v8vPdTtCIn+/a8maa0QRTEBzG + NP+GHrQNZVeSZZm6eG9m3lld+b8nz3+2Xgf9wyAfOl2vS45WJSqUO3yZ1U29ac9zTNiKJcf7lKa6 + UCQiE6Eh3lGWVY40nYhEZETXVBpRFKYrLBORGn13nGlMYa6pmfhbZIW41LjNs1KOnsjtynRO+kCi + 18dY5cjhRogcfjT2KHDbgf9T29wupjBfxJNhPBtCPBvFMLmdjG5Gg8XsekBapFJ0npKFpFyV0yeJ + joTmCj/Q7AGujbbqqamq5xbJqGa6KI/W9zthEAa9bthzHfMjLZIJvn5533ady07XDXqBdxkc7RC5 + ubrZTSAtUkWYCx8Lx/EC8Mya0Cypbmwav2gSEfPWT/LyDxcbpoApoJCWIweYkOnAvShAYoJsd1hR + 8I/WjpnSYFcVPPgZTKQxvgbJ1gq2hdKwYhoE1wL0BkHlhVQdKPvhD64BC5x3legZseu86xyMuqis + +shJi1Rx/UglN3liMkLI9SEZXN8lB7EifTcfxvBeSFQa5ih3rOwEOZWmqNuuw1+9OroV/w0AAP// + 7JnRbpswFIZfJfI1DrYDpfAA3e20ZbuYVFkunBJrQJAhTacq7z4dQ7KkSVqqNF0jWcoFCAt+jpzP + 5zOHrXhndB8s3ZbjGkyp2xYyuVlLbM3/rSz9M6Z4xSOlepRFt0QnIUO47I389nPYuKlRugCzP/jW + I7WBBw1LqUuVg1yYgiRk1rZ1k/h+mlVjA6kBK4njfP7g14u7Qqe+YIL7LPZF7PPI5xPfskdehyKO + RJDRKAZFAxBAVSwiGob3WXCXXgVhJGTE2HgJd4jR2ugUpFFVDsgLVSJgZKkeewPoz3XVnddg5KLS + OEUrnc9a/NOYDjZYyCqTGS4ICRGMx5QzOuFTxhL7+7V+XL83YW9NknCbwO/wL77tEslS1fhGJ94u + eSI4f2p5D5i7WhSFRxpd5QXIvjjdlSeSQT1vsDTMI7N5oTP1xx5jzbpi2XfF0xpMgwBkHlkC/IYK + ++PVagOzG21GX/Cx67DXEeWcfXTcQITD8j6LdaY4nA2M81VXsFs/zjnlIvjoAoqQDUt87tINnXib + HOeryeTlKCuPNKCaebVG+Hp990jTKtPuAIbFlF9tAcaydxtCglEWUh44CDkIOQg5CL0ZQhk0qdF1 + 7yvIIvqjHn23F8lgVHUYYvw1VMWUh6+hamdj9kQde94snXKv910l1s3m0TmLUS+mTcKwn6VHwiwX + 1CBh3P/eHe2E+HRUwnTHkGT3bI7waIc1h3jk/M35m/M352/n8be+4XnZ37gF1cT5m/M352/O307s + lG60aVqazkvwRt2x/TyXvV3o+ACh45ZvwgmdEzondE7ozip0fG+f+xCPnNA5ocsv/4PcXwAAAP// + 7JrRDYBACMV2cYIT/ND9FzMBv4GLUUnsEk0fhSDXMshdwqMhhMRAlUoRXwF8BfAV8PXd+0eDTgqD + Toxv6UcThY5CR6Gj0N0adO5JmUuto/AxgEvhUrgULjU/6Fx4JISQGqh2IESho9BR6NoMOi0MOjW+ + DQYdhY5CR6F7tNC5Jx0Jjyh0FDoKHS+XvY7j7kmxS218asKu5RV2nQAAAP//7J1RT9swFIX/SpTn + 0jmJ46S8McQmJBBoMG08TJWXOMUiJFGSIjG0/z5du+1gtUNoKFTafaPg9uA6uTmnvfGHt/viF3u9 + axftkQMpdmrirXd46x3eevcGt97RHp2aFHMgein0UpgDdywHap/U3ZQQrt1ajE0JuO0TbvuE2z69 + b+0Ke+TAUNW3Z3sZsMETGzyxwRMbPAflQO2Tunc/CDEHYg7EHIg5cMdyoPZJ3b0MDHfexNqFtQtr + 147VLtYjBzJV3yLMgdgXin2h2Be61e8DWY+tOBnmQPRS6KXQS+2el/rn8/L12hWhl8LeKuytwt6q + N+itinp4qQi9FHop9FLopXbMS0XrXgroLAogqmCg+xnPG6GeCHRTTQA9qOWvsuB/UYzPAzNh4LTM + pvMGxp/diXqJ8ntwueKJSyWnkcsjl89mtZgpTZHn06S8EzUHXCAZx4p7SUg4YYQyCmQaA8axJ7/x + Cbjx8DG4cYW7WbRhvBz07dmo7bKwQ9v9QdB2aiLLnpSJIjl2ccXPa/iHNqSos24EchdF/V0g6hdq + w7gNpSdG5dsqA3DvdjD1nukNPiyLVG5zWT3fdvyW89Z+AHuDDuDYJKqQsJ2zFJmoa5FuKPqktWrF + fhZts6X1jEww7YtrnopXFgr9biR7x5kZbzq3iW0BD1SZN4opVvvecfFu+PmOOvR/4ud7zDromvUR + EMONoh95cjNwqWNqO8a+ybS9Nl9XyRBF0+XmuHGOlk90TnmR8hZeziSuTM2QCXu2CZ9oqrNJNBw0 + 45BaTqfFEdWpHNqV+a0oZCvFumJATLM85ZVz5RyWZZ3KAnyrSZCGZDyhm4kSi+j350RDFo8n3kai + Jpf2uZZ53nz4BDbii+1Kd7WRnGday/OcJyJ1ysI55dVLy4NdzLSGuvLLnzKX7f3rzctnxO9Qy4Vz + liTzisPpKZoG4sOraTNT3T2XSSET51IlJ4vUj5HLdZaZ1trR7NOxP1LQeHVhVTEmJpEXuY9+qyOZ + WCYVOPf3LiqRyEwmj8dBTps3ELEqAYEP/LC77x7xGQcQfAK95PX9Msh9LWQLsRHCHcwxE2Laitsq + 13T1B/csA5PAb+AFFz8a92XWtMLFZ2SWEZc1LxrlWDWbfvHAMnqZWVfp1Tju98jNeSvbuZpOEIxj + FhPKWBwQQjzijty8LGbLv+95ZDKmHvVpHASRCpFqRFnBYWNGkLojV6/uHwAAAP//7F3bbuIwEP0V + K8+E2IVAwxtqqbrSrlZqad+qyAlOsZSbTLjs368mDmUJsAlo2SbqvBFlII6xx+fMjH0MxuBzkn1U + 5mdiA5r007lcEOh84vOYcN9PogQYNmHkx8+nCXmdPH67+z7pkLXM5gRMZhq485AEQpCU/4IBQ3hG + sjn8yJaEdncEW8ZBkg/Tg2fKBRnfj8ldEqWh5HF28KW3jhEvI08ooN96yC2Mkd0xEvWuBxvrwZvB + ZfGmL8/3Y/KQKLHIyLNQK5nDl5QrWDCOke29W5Wce8+6aOvurcFAqEhmmZi5H+tU3uG7Vat4xhTu + dIyIb9xQL0cj286jr2XLp9d6dlPFZSjUofEbbMoQKynWroxg9i5VaIyMeZali5Fl+bO4q4SvRM60 + u+/JykqXXih9CyQKLOpYN47FhlbftvK57YqAcYfTgWlTLzD7PeGZzjAYmLTv3HqBLW4HTs8dUtpd + Cy/d7ghxFY8hCLLdFeJGfFMsJ8W1jHdRpWUMx58b20BLLrqrR+5ecJrBaXRmr/KE8b1Vq2peljR+ + C9tmyPzizjjcGYc74/6R/gpzaghq0oPjB9DDQHe2Rku8+PubIideNKdFiuLlxRLFVU7ktqCjzJf0 + /FQWrVFircV/7XORzklSU4Y5YNgMjAMh7Up1+da4H2hsU3wPtKVFjmdv7H6W1zk5gdpa80Nr1PxQ + pFVH18DWeB0EPQh6Pk3WktagVVp/98+TkZBWoYdBWoWalVcsGWQ1eJbW5K3U20We1TDEgzwLeVaj + eBarcW4tQ56FPAuDyxhcvohnaahSJXkLXuhsOIMJ8qbgGozkYCSnbTzrpgbP0lK5Z1fuYD4LeRbm + szCfVUY4VSiI0QuS54iCEAVhEc816lOblFGvA2dKIeGjyth2jZPw0cNgxhzLBL+ah7mizGwlz9JS + tBR5FtYNYt0g1g1ens/SCOfvZ9j3MJ+F+SzMZ2E+6z+joFIk+ahgNZYbYkGz8TV3cf0GAAD//+zd + u07DMBQG4FfpC6T4ktjxzMDGADNCJhcJCTVSaUG8PWqCxNDYSerUF/j3Sq3l5vT86rE/nOIKpb9O + xrNBiMW4IeIZ4hnimUM8y2eMG+aIZ4hniGeIZ567oMkpxcF2xf/zOG+KSzZwyUZ6wD2mFHEaDLdu + 4NYNL3o9ZogwQ4QZIswQRUfTozChMKEwoTBF584jniGeIZ4hnnlB5dEFoQtCF4QuKDoxHl0QuiB0 + QeiCvHDw6ILQBaELQhfky3o/MaVT1LuB61vsu0dJtgfwkgNw4kGQeN/GdkAh/koEtn251IS1v+7M + VjtzstoLYbenLU8LTYmHp2PrvO12g+J5rQeGMtOOdseDeUup05auKdODEE+fEBehCHHhhpdz++/4 + zwd4X1qbZnylx2pFX9s/9dfm8bhvdY/pnr/t3V5/NG9Oq5b2enzpqiORxS8mt6NGzF3Ueym2hHtW + 7wVRWyUTUO/X0+GfznV2XnInnf2+O2wefpPXf3TapSKkKKTFaeeKKVqqxU47S9Vp/5siuyDzRHbD + 68ZFdkHWEtkLctM/z8+qacq60iJrZS6yvH6pMl0rlrUVPWns3wAAAP//7N1BCsIwFIThEwlNqXoN + r6Ci4ELx/isJdGHFQiU2Teh3hSZMZ+aF95/CdX9GZEdkt3AeL7nkVauI7AkbL8FJEdnzspGLX7WK + yI7IjhSIyI7I/q3YiCP0OC+/H59Rhns1HykpMiPOmZ6UrxeaiVixw+1xGRLtQwib0Ha5z7vdNj+a + jYUvXkmmB5GdwiAFUpj6CBaI7O/HsZsCOa+m5kFkR2RHZJez8JLlrJXkLER2Tc5/76YmZ1VNDiJ7 + juwiZ80lRjHzVdQpD56SLlUoj75nrRVFgcjOBXFB5lmI7CbmCf1xb88/PMNMf0c5S85CZJezzLPk + rFpyFiK7nMUFyVnFtc2I7ISJMBGm4oSpWyeR/QUAAP//7N1dT4MwFAbgv9LohRcGbGnL2K3RGBO9 + NiZLDF9biAqGj/n3TTumWwS2MQZo3quFLWthgbNzWsqDabCex4owDYZpMIjsyIKQBSELGmUWBJEd + 600xe4b1puMKTBDZcZciyjPcpdjL7BlEdgxSY5Aag9SjK88gsiMwITAhMI0uMEFkR3mG8gzlWS/l + GUR2ZEHIgpAFjTELgsiOpfS4hwhL6U+fBUFkRxaELAhZ0B8U2efuW3Zykl13MlqTfQAgfRB6eRja + +igl/SYpvD+lpPeN0HfJaYN/H0pil1azJt3k3Nst+xRVWO5D4ru7DvQuSYLB6GwLdPbBYDhvAsNv + lQJc+VNfu/5rYyDcg4QXdRH4KQpqXPamE3p3j1X/NvcZuV1/kTy6ceDmqrmqzvO0CI86YFZ3wA0S + vTzqiKWouZzK66ixZwqTvRMoXbKpyZ2eoXQ5tUzH7h1Kr8LKBR07Vt7Wy9ryzNs3UkOet2/wl4re + tqkqOH0iJdUqej2czqXN6MFwOiezglLLJkxUE+rqY+5/6JdQ2+ZRRlwS6DpAO+cmeU4KkoZ+GC1X + 72Rks11TZdpkWSYR5FIz6lG8IGm0yMh7keVkHuUkifNEK+vZR5FmJtFB+pxx1Z9tXay3hdqW1oW5 + 2rGrcs9mqtguT+9PN43V5fJ/fXW5p68uD/HVZXe++kT56oK+BP5EeCygBvMFNYRlU8PzptzgzsSR + nsuDqT3f01fXdVy5HcU/zyIuYrXo+Gw9zqFlvtUJHMbBlpDMqMHZxsBL2V05SKGbXj119jvIdnAt + wwpM+pNzun7y4RcAAAD//+zdWwrCMBBG4a24AcEq3jagSxFf3f+DxCBoK7YaaifybaCEBob/JJM5 + Jh9yBU6hYFeEWNqNX516vnx4zUUES/vT8XohlLXDUsm3iC8IBokvKhnImmPRuqce4TezN8zeMHsj + vusdv+E3/IbfatTBAzrGeCNcmQyLgK7pnHO/qkeADtABOkAXXyoP6AAdoAN0NXrnAR2gA3SALoqa + XpaSpWQpWepzoMuBZ/m2CGW36+P7ekVoYKPb4XyZHVNT273TaredN83i171W2rwLfyB3UEB30GoA + 0GX96wLQpR3bDHEFVlOy0mJbaxppLSSLY/SCp/37K6DLOWnfU4/c0Lmhc0Pnhi5clmodfHdr181Y + rVPzmwdP1YQqz31xYIUO2V4OzJ5ZnZqnqTnwCgAA///snV1v4jgUhv+K5WsgMfkC7rosOzPSsq0K + 87EXq8hNHLAaksgE2s5o//vqOAHKYBIKA0Ur96ohB06OYzvndWw/Wgde0aDVlgR7rzXB/zsdaB8w + U9PWOlDrQK0DtQ68vlyqdoJnQavVkxK0DrzY+HpZYe94wrZ1NCGkSdr2pYW0fh94hTrQOUAHFkDb + 2rkMeoKnfh+o3wdqHXiSDizypOrdDxytA7UO1DpQ68Dry6W6dXMZCiyu3nlT60CtAw/e8VLvvHkJ + Km6tDizIuZ7Wgfp9oJ4Xqt8HnvV9oHvAVpyu1oFaB2odqHXglelAd5etu9N3FfxdnUvpXErnUjqX + Om8u5R2QS3k6l9K5lM6ldC51ZbmUt5tLAZ1lgwTtRTSeM/lFgJwWHNAbwb+nCd2gGOuxmWDop5G/ + mIP97ZKJFcrvB6aSCs+lOyz9AQJVgWY8kMm4BWPsv4YxrhE25dSKN8O7VWR78BABvPU8pPlLk+2P + 5pOfAmL3VAUrUaA3snIoHUqWdiUpu9InUVGH+1MWPPIEjSEWJQi9Z5robnh54HznWJeuyiVPDmHc + H1uy7X0lmy7y/UVLTipaz1NVoSkN2S9uIERVoP00Cfk5WwhR4ar7NKOAbDZG/Dur8jySswqPdN1p + 72uclbGyiAnBwvdirNvOSZ6t6oZaXsD8re2m3nNbVb1kV/dEX9BoISIqEca7bj8IumTxSVF71X3F + GaO2qqIeAIVc6fQ3GjxWPgLqXXfsfdX7Kw/3VC7SOcWjqil/mqPB6otoSJOQ5vBzKue5WLCTAib7 + Aq5oTo55ceD9Ee5MVWhDmqG/UT9NRcgTSH3V8bmtjnWMU1fVaO54kPAAjWUS/eviI6q6ehfTgIUo + TdCQZm9tmlWFae4pzG91henaZstzpZYAGLp8ushUvmN6toNffVpIDbbK1qEWNkcZC3jEg9d2oD8W + c9zDf6U5ut/okwaG5x/u4QGdUECdBzBbWryspMrnhOcgjEC+QIgRY37OZllc8MN/4NsIUiD6CKqk + /Fe58q9YFFiOAu2xGAuazGUWUNDXy4M91itVttZnSrt/GzimOc8XMhzLanVcz/Vc0/NM02ybuIHj + NJmszjeJ2W3ZxHI9xyFmF/6kRZqBYlJDNnEDl/eWwK1J0nw99zxnz0BdH0/5HMFtQAFNEA2CdJaC + hkQEDW/vB+jL4OOn/p+DBnri+RSBSVgkQzRGEWMooy9wsxDNUT6FH1lJstZGQvIkSmWFScWkqCvE + Irg4LC/v8+j3G/RHKtg8RyMmllw+BzMqoLNT6cWtU7Wyccu6vKrNpYIBEzOe5yz0131sQaBf97il + jzGcaeAZffbjokft2Y4cFPzZ8v7LYXZjQXnMxK7xP7BWgC05e/L5jE6YvxAx7uFpnmfznmEEYdIS + LBBMqrfWJF0a2eIh5oEBO+cbZtdodw3SMUzTkE3T74bMaRMaNK2289C0LY81adsmzW7keix0I7cb + Md8zzdYTe8hWCxV8QZMJg9ZULluZ0eey7y+PebIZ7FgksJAFr/S/ZMEW1W1rzJTAJmlNq3bj661H + TF1j+gk9W9peB31Wb9wRv8+Crf8AAAD//+zdMQ7CQAxE0RMheQsKDsIR6Ll/haI0CAniILHZxa9P + kWo047XnO9iaD5G9NdlslwTnMXLbwhRGNZCT0NpPLssPnq73/S8skdj8XZm057069DaJvNqc5cMx + PI66V3Wvan5+tooSiVWUEKv0IerBcP/0FW0xErFqxcI+F/aIVRpXNe0cNjGssMnWEjmr5RpX5azB + GqBhNdSp/iv43nDZcNlwuZoL6km1pzAUhsJUU5gJkPVylpz1MfNN1K0MWzE4j54L4oK4oGouqCds + nsJQGApTTWEmIMnLWXKWnAUP2AUTzwVxQVwQFzQcA54wESbCRJiGA7yLZ+KZeHY7jt7+AAAA///s + 3d9qgzAUBvBX8QFmG+NJNJeyXRb2CCNmfxC6tWD3/sVSNihRQq3m2H5eC7HFfP0OhfweSW9HC0IL + QgtCC2JHsyOYEEwIJgQTO3cd4xnGM4xnGM9mQdXRgtCC0ILQgtiJ6QgmBBOCCcHEjkPHeIbxDOMZ + xrNZrHO0ILQgtCC0IHaQOVoQWhBaEFrQLEo5WhBaEFoQWhArgrwH2Qt2x0+oJld2fG4DPArgHAGq + jsC5T4Upc8Wj52O5I3DuUdj6KPx4BLiefHbwZufsyM8JghsE990R3AG2O/Xs4DPqPrSyHrdyPpwd + 16ryd8GOE62ouGZRqYUvk6u/Upu8Ove7t927/NG29uuWDvkIGjyjleLurGcDX2yz7cBxDqS7R1eX + 1JnZ0NXH6OpKi1wb0V09unqhMhL6/45AXV3H1tWfPGs2bVK9VMnz7nu/bezP4XFIdi3CSPae+/wk + uxa3IdnNWsj1aT+/vZOsZWlN6gxRSsKqtCycS1XpRJ5b9VmbGiQ7SPYQSeechRf/lk10hl4mAh9n + Qec8X/6YTPQgSzwJ8bBUkv0IAAD//+zduw2AMAxF0V0Yhl1o2b9AdKQBIiT8AmeGKNb72LqVQOS7 + Dz0va/tDVFAmzN8mDCQ7JDtUIIRF2ciBZCd62Cq2KslWQbKzVYIbwU0ewgKS/fgc+w7fJUJumJgH + kh0qMMpnQbILl9VX6itIdvXVA12jIFeQj4YKhGTns97Y1oFk72/RGy58XIUOya7PooL0WVF9FiS7 + JEeSI8mJ81mQ7HwWn3VucarW5D/nsyDZqSAqiApKVEGQ7K643Im6E80aTJDs7Bl7xp5Bsrtln3qW + nDcAAAD//+zdXU6EMBSG4a24AUZaSltuTYwL8MJLAwwkxp8xI2jcvYF4NxQZJpRG3hU0mdDT87XT + PvwZiNcy/lMXBMlOPCOeEc/CKkyQ7MQz4hnxzEs8g2Tn9IzTM07PgotnkOwUJgoThSm4wgTJTjwj + nhHPvMQzSHa6ILoguqAQuyBIdp4s4yo9VzyW74Ig2emC6ILogoLrggIh2ftBgjXZl+KJw9PDtwGz + +4PKV8TYN+OVd68tn6qqVfOx0Nezgo++BngvpGvMQ9u4BxV/DToBkTbjRWguIj1Bgx/iq/tJ8ZV/ + X92+NQ4j/CYvn0enzQQmXLnm68PT3mF1y3hrLrpOcdHP/KT12Cd93x7rvId8T3/ru2P+Wb0Eznd7 + 59/na+hG7TLr2Q33C9wbu9N2ECvPdAJWfiFWbrMk1ukIVq6kkkLIs7FyszZWjju+kjuur/up+WiK + 2sZZKSOT1kmkskJGhSjjaF+JqpBCJImyuOOowDyrjjuOOz6wXHd7pt3+6Gv+3u3z/y7tjqUXd/wy + kAq4AbihnXdX+wcAAP//7N07DoNADIThEyFhRI5EkSb3LyMeQkCKJVKA3fD1FBTIzHhs/7jjV1Qg + PDycBvdDccdPLDnJK7KTiCiGwkn0ED2442yVChMRVTTt2SUadzzDE1i443yWVUarjLjjmst8FhX0 + aZhzIsXskTPJi54DAjiaxTP9MMA8vDG+/mYwKjVtIr7SyXm+unUnjM8qr8Lgjsuzvu0s9yurm1bK + QZ8x7jge3o5l6VHhpFRQ1FU8qCB51k8Kz/Qvp4L+QQXhjkvMJebyrPJ8Fu64PIvPkmfhjsuz5Fny + rLx9Fu64gWYDzcYNb1OYcMfZM/aMPcMdZ8/YM/bsnvasLZc7/gYAAP//7N1NT4MwGAfwr9LoYQcD + o6MFetbEiyffEhMTw4BNDgMCQ09+d9OC8a2yDZQh+58WtqUjWXl4npI+P+w3xX5T7AYba2CCO47y + DOUZyjO44yjPUJ6hPDvM8gzuONoBwZqCNTW4wAR3HOUZyjOUZ3DHUZ6hPEN5dpjlGdxxZEHIgpAF + 9ZIFwR3HWhDWgrAWNLgsCO74UAnw/SDOHVBl6uxF5z5LSymZ/h/QeS8i+B8h0kND7JmOob1IAwUw + Ns2i8zRte6Hq/s5Tf5UtJHv7N/R539S6q4OErx79MNr9h7Zwx9kPMagGx5tgat6J4uZ2c/RrFM9n + w+Sh4bz/mvPedIcbp/PedDkNBgPvkznv4I7brmmzMbvjDuUm1bvjHhNDd8fbIqFV48566af9INe5 + nxQqta/A6fqg/YDfgPO2Q+kMdOpR5kkDnf5goNtMuJy6OxvoHrkvLWvmECr0Grr82A4y9RIpGj0u + iE9CVQUoJt0kd2lJ8iiI4qfqnYJ8HNeUSRJ5qm/l5ESJ6HGyJHm8LMiqLNZkEa9JmqxTBaYXWZkX + JlGh8ph68vcce/J2LOQxpxOzOrFpfWb3stiup/eznycy4I3XV+d6N/3ydrvv6X11/nu+upiqEPQQ + UBFas0VohEJwg80jx5h7gWdEnu06CyviFptv6aurFLw+jpN3W7NM5HOvo2p956XiiKsJ/KlxKhWy + capNNzVO5fr28a2vZXSYR4d5dJg/gN6qVKjdoU5j92ZLdXhmCEIAS/vqLI8Gz6N9KiVP0LjJdn8I + pcKQRTeFKrFFo/lPK6Mdi7KvyVKXsQC5P3ycTa8AAAD//+zdTQrCMABE4RMJBurfBbyLW++/EJsi + lEoTrZik/W7QRRjmJVMe8cVvVKfPI1k8mEYfsYa1TqxFh0Qe4Teu979KeVSnFVWnnFKU5LcwMfS4 + RMo8C9fbfazZO592Iezr04IN31uLGUwIrSiEGtDBA7pXx24mspgMAV1VQBcm99zv8gjQATpd6qMO + U+rKaeNSeasAQAfohFCL3nlAB+io6b3Q1aKm16V0KV1KlypqrxdCQkgICaEWBfeADtABOkC3COhi + T7ok8sgLnRc6L3Re6OpaO8WeNN+lemO1peY3j7zNzJ4sNRf+zWJdUMIhm+TA6Jm11OxP8TFn/NhM + ZFlqWmpWtdTsMpaaHQ7EgThQl6qMA2NPmh8l9GrssPlRwgMAAP//7J1db+I4FIb/ipVrIN9f3HVY + ZnakZYsKrXYuVpGbOGA1JJEJtJ3R/vfVcQKU4oRAhxWjda9Kc9oT1/bJeW3nPFIHyjf2pA68othl + t9CBJdD26FkGuR8odaDcD5T7gR/SgWWe1Fz9wJY6UOpAqQOlDrwyHVjmSc1nGTiDW1belDpQ6kCp + A68odjktdGBJznWlDpT7gZesNAXK4BeqVS5LcV5iP9BpUYrTkTpQ6kCpA6UOvDId6Byslx/GrpK/ + K3MpmUvJXErmUpc9W+W2yKVcmUvJXErmUjKXurJcyj3MpYDOskOC9mOcLAn/RUCdlhzQG0a/Zyne + oRiPYzPBMMjiYLUE+9s1YRuU3w8Fcz475e4U7g84qAI0Y0sm4x6McfAWxrhF2FRHK04mdnsi4DtH + VjZA0MeMxIQxEl0BJrwZZy+i8A5wjgELq07o98ZmTvgi0H9NmB8zujjXqevX9eYNH5JCh5we3v2a + nvs/Fo2gwZyET9mqQFNojBA63Nc0NB79ImB722gGvo9Jltfwo71zXYpI7yOatnCpn9uVIpeDLI3o + JQetrtcNIJrWjx/jQ+NHNE8gsMZAHT97CF2GJm9Y/zeavOV9xKVt1czVhxLlfC7HvoVnszlKVDew + PHXSHvdsiGYuD+zP+BVNVizGHBN96PYLw2uSfKjVbnOgumCrzaZWD4H0LnT6CYdPjQ+8euy9I2rs + mIYpDdG0Ys4LosY5rkxNNHdGOEff0CDLWERTSHtF/hzL6nnmWU510ewZJzgkEcpSNML5qf3Y1EKt + poV/HW+h3/P8s5yKErMvjCbJUv0M4f+u7iH3jWsJgKHzZwtP5V3f9wzlzU9LqUE22TqEuu4kJyGN + afjWDvTHaqn0lT+zAt3t9ElHgdxU6StDPMOAOg9hC5K9bqTKfUoLEEYgX6BxMSFBQRZ5UvLDfyi3 + MeQG+AlUSfWtsPx5uRNZrQLVWEwZTpf84V/S16sPNdYbVbbVZ0K7fzpKggtarHhzTLPnOY7vGLbh + aPCldJQkS2eb611d83uWbpqe5RrGziLLQTGJIZtKR6m61QDjNCu2Z88L8gLU9emcLhF0AwpxinAY + ZosMNCTS0ej2bogehr9/Hfwx7KBnWswRmERlDoQTFBOCcvwKnYVwgYo5/JGNJOvtJCRN44wPmIzN + yrGim7pSfqxu737y2w36nDGyLNCEsDXlMTrHDIKeSC/uXToqG/esq7va3SoYELagRUGiYBtrSwL9 + NvJWPqZwpaMs8EuQlA/Pvq3xRcH3lncP7eymDNOEsEPjv+FdAbKm5DmgCzwjwYolSl+ZF0W+7Ktq + GKU9RkJGuI7qzbK1mq8eExqqUDlf1XzV8FXdV3VD5VMzeIx0PzIMq4ttO+5atka6nmUYXc82Hkms + RaHlksDVtN4zecw3LyoEDKczArOpOgGwwC9V5Kg+03S32LFK4UyAstH/nAVbDre9NVMdiqR1zaOF + r/cC1LHJ9A49W9leB31WFu6QiDVZuOMnYUF0vwXnUTt4K15GGFkaSEIcJXjoYMsFAk33Pj99h0Vr + cfK3ZNLap2Y6tUrkfZoDhteR48gyP7NLHuv9FwAA///s3bENgDAMRNGVkr3Yv6aAggbJQIic5O0A + p/vY+FvrfVSob1+gUVdRSmAVpcAq9xCZq9kWX9kWSwCrDi3s9WAPrIJVsApW/bjJVgOcVWMXV3GW + c6p+n2w4uJiOsxqK742vsh5xdnfe3fkZrPYSRsKELkOcT+NAX5GZLUZW1uOsZI2HtsKZmll99FqQ + FqQF9dhPXVU2L2EkjIRZLWEGMMnjLJxlnmWe1UUTrwVpQVqQFpTOAS+YBJNgEkzpBO/wDJ7BM3jW + xd6uBWlBWpAWlE7NLpgEk2Davk3PdgAAAP//7N1db5swFAbgv3LUXXTTEkqMAdO7qvvQLrZW6qRq + UqfJgLMiJVAZ02n79ZNNopYWaEpSYNm5TBCGJPbhPUHiwbtnu3fXsT3D9gzbM2zPekHVMQVhCsIU + hClodGI6FiYsTFiYsDCNjkPH9gzbM2zPsD3rxTrHFIQpCFMQpqDRQeaYgjAFYQrCFNSLUo4pCFMQ + piBMQaMiyBuQvT1xxzvz2B+zLB4V+js+HHsIUHkYOnoLlnvm/UPG+hAWeB3NespvuOZJjy6SP6Lt + R32XFboKdfyG64zdi2seix2vzr4VeUaapk7r+hBzIaWIe2e4HXcohpsOx3ATZLhHw3BvMK9p07y+ + TOKGydVW+Z8+Yl1Z/JTD+/WO8JmnMVd6uLqDK1mI3tXqXmVun/pW4O+xre4yyyU92+rfJwf8Vkjt + IcvyUnHsPqTImU2ptxVFfnYj0hcByLtafRWjvPsgDYx59wEfSeddh6rD0JnvU+q3YOjEdYgT2M/G + 0GdwVdg28YCQFhY9yYFDbPKbIdIt+JYVElb9q0nzWbr4DUkaLYpY5EZAn+uOGb5enhkLPUl/gkax + cwtO7uD0yhZ4rUoBfAJKpGpitupXQkXWG+CyDVmHLxksMylAXfMUKJyuRtZTMzf78jK/6VWl9y0/ + x8liAberaz+8fXA+yyJXEAowh1QZzBNV3dtcVV6Rmf6CqHcIPI3X7xH9nuMdWnDXvv/iMtXrVC/d + tFiGQuquvVy8+cHxbF9deLqhC0+f48LT3bnw9MjUyR8BDTwvCtiUhe5sSrnDpiyi8TQkEWUuZyR0 + 7A1deNNG3HPh1ybojl14t96F71x6kI5HewOfjL8HT2zsk47HIvR4LnxIZJWXwLtpeDft/76bNgZd + vvLv7pY9JAL0CHaMnA46v28SvtBZ9A4j/gUAAP//7N1BEoIwFATRKyngvbz/yqI+uqCUJGiiwXcD + Nkx1JwNzpAF66ASd8l4zy2Z/hU4tN+qFkBASQt/GpB8MoQ5m7AndA/S7OXKywEjojrp0j6WwFJbC + UuVCF8CTmoGdgyoJRUJICAkhIdRM6IYMoYsR2iRAETpC984p+Iz4HVWY3NDVELrgpBRLnU8ZjQEs + haWwFJYqF7oAniE1bn3J+D2/EBJCQkgINRO6MUPoYrb2ROhm0r9/37MJ+m7oCJ3K5R6hC07a/sn/ + 6IZub+mkm2Bannf1WJUeR+VS2+kzLLU6+H66oq2pKbtkV0lDUlOzugdOGR4Y+7iamjywKmu52PPp + 3cJJ203NiQfyQB5Y9rUJlmrBUsmCZ6zsKiU4w3KGdX2RXTcAAAD//+ydWY/iOBDHv4rlZyB3Arz1 + sszsSI26NTC9O1qNkAkOWJ1LTuhjRvvdV2UH+nJCOkzvtjTmiaOgUolTqb+p+Kdz139/x57XQgdK + EO/RXgbd4Kn/D9Q6UC/BclKDp6yTmlc/8LQO1DpQ60CtA9/Z6geyTmruZZA4X73yptaBWgdqHfh+ + cpffQgf67Wi+WgdqHah1oNaBJ+lAv8VSnL7WgVoHah2odeA704H+SyawAlaua6nDEdP32OjeKr1o + wputghe0qKUCXUvpWkrXUrqWeme1VPCylgKUneRTAiV2DJBd8T0gs0pq6Rln37OUPPAZj0M+wRCY + jbsC7C9uKN+T/H5gIlDvTHjDEYkLwYrdbDjdCKc0jpdhJomtAvaooja2xDU+4TROHnMaD3Sbarbt + 9ZB3FQV3sqXhNUvRgiVqAq49Nk10OesKllex7CdZKjmhzSR02KKOXu26SLNdWR+qdVKont0MIr+k + WV5DNR52dDlShUmSPAJG9NtQ7Z9M7h6oxrQs3shfoMJEz7dkTX+yI0vFwJ6QnAAg2Ziz77RptM7F + 7RFdR47qJJmxtMXIsbruVtXQEYDbM5HslM4E5b2R4d7o01VRzc+zkLxlKhjadYE2OqQR5ZyuT2HH + 26qjKnbhLblH8x2PiCD9vnT/kZMbGp/i2wuaR9RVBUZ+7ZhqEbXTFPUU2OJKp7+R8LpxaB13PXTr + DvWfbF1u1bEOT/GoShmfCjTdfxHNSLomJfycyjlULicFbNUFfC5RyiqnnnnSwHJrLnLViHpDz07z + 5bXrkCYJTVnJ6EuPjqk6vjOSo7/QJMv4mqVQpqr8BbY/cDr5VOXIj5zFcWF8gKv657qc9bVbiFZN + iF+PhehbwcD1Ozm1VIPoMiahZLjPSP7zDqKvyoSXLExZiBZCQNTszG89TGRJX3Hc8dgd+OLh9QRB + XVx3RJE/NC3HxY/elfqE7ut4OCf785yGLGLhYztQLbsCBEdOQf1ArYHHeEo2BKjoIfyhzu/3sgaI + 96ChQOpApBGly5ImeSxR4z/wRQTFArmGH6yeKqkz8p7LasKoxmLBSVqIKl2C2qsXNdZ7AXeQckq7 + f3o4JiUrdyIcxxkM/cB0R47tmPDAPRxn6Wb/ed8yRwPXsj3HM81HFlkOCkrN9sQ9XB1j24HnWXlo + TyjpHQDaF1tWINj5KCQpImGYJRnITWSh2cXnKbqa/vFpcj7toVtWbhGYrKVYITGKKEU5uYdhg0iJ + yi38yF6iDR7kJkujTIygdJesKAddKcdQgcdOD2d8I8eN5VhYvqw2+sv89zP0IeO0KNGc8hsmKoSc + cMiMKlX55KOj4vKJdbWtDwGAAeUJK0u6Xh4SskTYH9Jz5WMBn/RwQu6Wscz4Y88Us4rPLT9ftbNb + cMJiyl8af4MmE3rD6O2SJXA67niMx3hblnkxNoxwnQ44DTkVZeRgk90Y+W4Vs9CApfcNc2TYI8Ma + GVZgiNN0OSIuDf3hqB+ZK7vvmmvaJ75L+taKmtHKDyzPWS8D0xzc0lW+73BZcpKCuN93uSwTcldl + 6+o1Sx9mS3Yp3BON9zMImMsT9O9nk67WqB165MlF4dgpBrMjMCuRkBw2t7LtisL9f1BZetUivWrR + L89oOzY1ao1agCLNdu3GOsPoddH0umi/NgUSNrD/JX/9XzRmi9ZhCbX1XpuHavXJ8zIHDN9HjaN7 + WXQvi+5l6XXpZfkXAAD//+zdQQ6DMBBD0SsRcf+7VQgWXbRlgCoY5V3C+n8S2ZW/LFPhL8tEq2iV + MlglQJ+gp4Izu1q17sq+N/7QKocbddO3XQxH+ArXCp7VapWtPCus/n6h3ZTue32s+lg3wvndx9p4 + Fs/iWTzrlGetqLI35bqk0GGc8UCewjVmfS7OSKtzfvLmPc/iWTzrj+eerw/CEbeeewftUZBPPD7x + jHZt7rlWL2EkjIQZLWEeMEXPs3gWz+JZXXbmURAKQkEoKG5EXjAJJsEkmOIW4ukZPaNn9KzL/DsK + QkEoCAXFbbsLJsEkmART3HD7HNK68QIAAP//7N1PT9swGAbwr/JKOwAayWLXceojGho3dkFCkyah + 0LgQEWIpf4b27ZHdspFSKppGrUufY9PGbaP4zWM58Q+rbuBpsE3vl+7cILirZew+3V2KA6rsSEFI + QUhBSEHekesoTChMKEwoTN556hieYfYMs2cYnm0FS0cKQgpCCkIK8k5CRwpCCkIKQgraCnOOFIQU + hBSEFOSTYf6OvLc+XO4lTr6Bns3kPjHhvRXkC2MyzxBkcPMD0OHnprUddH8c7x1w5YDu14LugZN/ + DpxcHhpOnuwMJ5e7w8n5tnHyRIWK7YFO3tvu9twk30RdH6mQjZbr5IsqeaKkiv1UyftSfR24vH8j + 79jm/Rt8w5/3bWqpkC5ZFPNVQjoTKuGx/QBbR0gX9LuNIi6Jxyus9LymlDIXUp2bHtIv01Y0H766 + UYspi7+Ul5OizXTtWPSpHTDT1fVPB6Tn5R1ZE7sO6ey/pt55h46bGQB+So0um1P3rn2lm0l4Qmm1 + Sl6nS0OPptLU3KclCfo+b9memrXbNy0K8zTrynbf2f84Kwr6M6/M9HXh9zy2dUO3mtxXNoamedPd + 213LvnBhD1AyOqK0zF62xXablEevSPintCptNz00FV5+UIWX66jwcjgVXn1zZfJmmukx5zwKbqNE + B0LEaaCEFIGcZONxouVUTcYfVOGtAPpahX8RQQdW4ePli973rjyA47Eufl5qurDH4d+5w1jAuNg2 + oot18fcEjkcRert254+86nYizKVhLu2w59J8sOVdLFuw5YcKS+DnwSJ6FpDwIKzn/Dyi08PCFewZ + AAD//+zdQRKCQAxE0Ssh4MW8/8LCoAvKIgM6CPhuwKr9P4nT0GltZev4A8rfzoBOWzbUCyEh9K3e + aCF0Wn/bZYk9oXuB/mFGTnruCd1Ze+6xFJbCUr9+e22HLFUCRekjs1EUm0KREBJCQkgIbSZ0bYHQ + RQVtClCEjtB9MoAaEP9AI3AbuhpCF5yUsdSlKbgYwFJYCkthqeVCF8DTZtXW14LH+YWQEBJCQmgz + oesKhC5KaxtCN5D+8/89s6BvQ0fodI+sEbrgpPkn/jsburWLksME0/i9k8+q9Dmunf5qQ1eRpSaD + 77cd2i41ZZfsWpIZrguqZ1df4IHRjutSkwdWZS2LPR2UIyfNX2r2PJAH8sBl/oWltmCp9MAzOnYd + JZhhmWHJrttuZliPXEo8MGp401uG5MDzDgAA///snfFvozYUx/8Vi/1wm5aATRJI8lvX650mrdfq + kttdpZsiF0xilQAyJm3v/vnp2aRtrg5JybpFk/tTAcOLjf38vvDwxy7BcoSP3e0XezbB86i+2NNx + UvPqBwOrA60OtDrQ6sAjex+o46TmXAYN87Urb1odaHWg1YHH47uCPXRgsB/L1+pAmxdq3wf+u+si + bHxt+H/QgcEeS3EGVgdaHWh1oNWBR6YDg+dEYAOq3MZSD3fMfmNjc6vsogmvFkuFe8RSoY2lbCxl + YykbSx1ZLBU+j6WAzqLxlACJHQPKWJ0HgFYNLT0R/Fue0Uc+427GJxQEZmNVQvmLFRNrkt93hyrY + OlfWnISmpaK3GsiMeyIZN1iMp09ZjA8Em/qJ2otR6sREbz/NM43lbALVXwq+bMupJ77J6oJFN3kl + 0RQubMTrjjFGl+ctjYYmbLxCdJ6o+2U0qXDgjbDvRpsDU/Oe82xNgr5kebEFXExamtx4mvqALmay + BMApUE9fDpBvtDf0tzVrY+dhCROCxW3b1W8mbDe1a9C205oQ26e0oABE9ib8W2ON3ypkblvTZNt4 + 4dn24eIfNlxMuO3JgsbsH+5ApmEJTi4BhPjr9Nm+iVz+Rx5pfnHDXXyf5/F/xaQfHCWTfrdl3+QD + lV+9pfdoUomEKoKxobUFXbH0oFqHzf63sdbkoFr3mmp9Bsh0o9HfaHTTON/sNj3sb/PIn3m8pXM1 + ecXdFk2e8fcSna1PROc0i6mEy5mMQ0R2UIXJtgo3DKegYTjRJcu45Oy5qR4xNe5lSiONEz+nxUv7 + 0nZjgan3XvIo4xGaqmDW6BZb1Qub7uE5LdAXdJrnIuYZhNgme2EQuL7fzijZYvRql9HBsOf6g1ZG + Tb7/veBpWnrvYMr5uM35XykpQVdMAGFcw9qd8aCj8OhqvlHR/RATgp0ne7X4YOsAHjpmd1KwiCc8 + eloOJElVgpooGEgbiCucsXNG5xSQ5xG8fBP3a80CNHsQSKBjoJYJYzPJlkWqOeLfnYsE4iB6Axes + /20LuNTvCw+kZHYA356VSlholnu90f6Caxl4OO6846RUclmppu313GEQ+sGQEIwxVnczzbP5+niX + 4JHbJz7xwwDjEfypEnkBMs78E5yOU/c1P0BfK4z9APkh7M3lQ0aEZHfAhJ8ueIl4iSiKVdSIoHu4 + 6CqvBKqVrApU8iy9RzyL0ipmJZILhhLQzmj6+QJBr+LZHAFmvnTRSawVHU03j6CfpaA8ZaKDJMtk + Rx2FLSYj9xdEBUMFvQdfg6hUJqCA1p8u+pCjZS4YkguaoT46ra8MXbNU51IdvoFnhHN1PU7SFK3q + iRf9+sPvWValRNcMKZMyRwmXm2crv/6TH0AD9f03iGbxel8I+0L/jfso5G+pyGCYwsjNquU1EyDa + 9dgtnTHpOLmY63FLesTRm/WN+jR5e4Le5YKVEk2YWHEVphRUwFxkkvMbh3aq+o3S9c99bFwowMSS + S8ni2cMUqHrJ44RY25jCkY6zpHezVE944wFWj2x/LPnxz/3KTXWneF74L8jgYSvObmd8CW6wEqkz + dhZSFuXY86I4cwWLBFMd1J3nK6+orlMeecA18PDI80ceGXk+8ZSbnAUYkxENky7DPu32cdzrXoe0 + 3/WTfoQHEWFJ0puFGLu37LpYpw/NBM3mDHxcnZGwpHe18K23efb4kgj6lTN21o9nFKlXD7eNJ9oE + lrCzXBe7apRdNcp+LfwaXBcy2gPUqYnCNt3bpnvbdG+b7n3oazXwRd1PxcvfouE9srs1d3jnCgU2 + u9tmd9vsbpvdLV6akfQ3AAAA///s3UEOwjAMRNErJaXchPufBSFvKqhqL0gbwdt3Hfnb0/kf71GS + SGr4TSJJIkkiaZSXsxX4LQTC22onGhfV46rHVc5dG4vsBaAL77D6Xr+YqO/l5Rz7u24v1Pd2QAfo + AB2gGwV0MfBkcuDXQ5UORbycXFJcUjrETwO6pQB04R3efuNCx8vJx7KpPrrKdvBz/UsxJ2WzVG+c + BhKWEpYSlkOALgaeJZOV3wtyAkAH6ADd1WPSf8mBU6ALgXADdErgCDb3WQrQfQnoYk46lhPcXOhc + 6FzoXOjmm6XeFt+7snJJTcsoyyjLqKnerrXAgSEQltTEgTgQB4497K2FpOaKA3EgDsSBk3FgzEnH + oYQQCKc1Bu6B7oHugY8Tt+xPAAAA///snVtv4jgUx7+K5beVEohzBd5YSrsjtWpV2u6uVhVyg6HW + hCRyQi8z2u++Ok4CAyQhBTrLap2nUkyOrznnbzv+/c/XA50GOjADCO/cy6COYFFHsKgjWNQGz4N0 + YBYn1Z9+4CgdqHSg0oFKB55eLNXdtZchAwirkzfVyZvq5E118ubpPLvcBjowAwh7SgeqfaFqX6ja + F/qp64Fug6M4XaUDlQ5UOlDpwBPTge42HLgEbK5iqWWLFQyd2vfYz7lAF7DyUgCvOp5OiLGbunXc + KVnbbJLZjTx9Ul6I0SQvNzxk6zVHCNGJaf/sqjMd4yPnFah3bI4US3kNYilPxVIqllKxlIqlTiyW + 8rZjqUcN53hKYNP2AOsrfwdo1gxa2hf8WxTSFZ9xN+MTEgKzcZFA+usXJgqS33dMfZ8lCZfWMoqw + hulsJthM2mRBMPajjNeKe6RlbVwaLqM4NsQ3rnEbBz9yG5fk2HwXxsdx72YV7j1apNW8d3IQ790x + 6wHhNyyKK4jDnX1NuvV07hqTNTzl+qolVVXLw+qaNQ+q2bXtN0uMM0uTT6Lbd8paUiJSa8j2N4JN + mRBssm/FlrXlIAoz7Gy9Zaj2/azaZTDny8inn2m0W1ZSOo+nQI/+nCb1ykjgo2c6YUc2RMow4AMa + U4BRt0f8W20nGkkBsm8Zu1Xdti8f86UWzwR/YfqX8BB8vGmVGJY3fqXvaAjQ7VLbv1L/64GmO3ZV + mX/nkwpwveUcYrGsfb8kaFj8EF3RcEJTuF2ZcelkDykwqSrwZQYZLjPqGoeYdOwKx/aQMajrLNud + gyxb9S41z0DyUQ/XoEu7dV16tBBTKmHW22YvBH1hwUGl9uq9+r6lpnMW8pSzbYuWUdarr2iM/kCD + KBITHkLYWhq6mFbLdPYySsr61U1A/Yx3fkXj45XQdI0yp95fxr/o2vcXMYXxy5IE4t1Sv7CPbVJj + mAc8fT+eKRA1W7YuBA+CpH0O3vW2yvPsZ84gFf3mz139xul4rc5eTemWDY8b7ofcR3dSOFWU71HD + NNMyOb8e9+wWceFyNEmOl+5Vihmv60ia/fK/mS5jhV6BJ64+ipnPp9z/MR2otUUCQitmoPrA7eMe + HtIZBRq8DzOL4r2Qc/chT0E7gsSDkk4ZG6dsHgcZYv07vp5CFE+/wg3zP0v37mcTjPlEWUWKO0HD + REaTGaA+/1CRuhCuSwlbmu5vDQc05elCFseyWh3XszzPsy3DMEwDaziIwlnxvU6MbssmxOs4jmsb + cMkUUQxDIolZiC6jaDWZq7vWL1jDeRubIC7DKF1uz0/ZG4Dp7555gqDykU9DRH0/mkcgsxFBV9e3 + Q/Qw/O3L4HKooVeePiNIMsmCahqgKWMopu/QbRBNUfoMNymkaGsls3k4jWRn3bLJE9Q/66NBNI8D + TsN060ePGg4X8ycmQIRnHS/BPVfDkZhlnY3IrgYf85Lej8766DwSLEnRiIkXLn1NTAW4jTLJvfbV + TuW9ljrP66rUkICJOU9TNhkvvZWs8JXvym3cwTcantO3cZAFAT27I6dgN1PePjRLdycoD5jYTvwI + b2awF85ex3wOY3ghAtzDz2kaJ71225+ELcF8waRyac2il3a8eAq43wZOQdvots1um3Tbpt2WY3vs + mhOf2DbRHYP6uk0tqlNCqN61JtMuI+6EsaexZxitV/YUF6+FjAUNYSqkeDVkPKdv+VM3/8zD1dTS + IoRVA1xMt2CRjeq/NmaoCRxJp1s7jxlfe7jvGpcwlQRzOHMaQ3bztBVj7CevliignQLaKaDdkc7s + Jd0GVE2j2d5s9YQ51ZX3vPlPZfE9z85/aP1901mqA3krFrigovT7+OPrWUaDfdYZAdj56HOoUtRs + hjmQ8DRiHLXxR238Mf7djT//AAAA///s3dENwjAMhOFdmCCBsv9qCPkFVRVxWzW04Vsiud939o3c + llISwZ8Cqxb/wMvEDYkeoueoFygjZ5pYFSW8n+eRYJUXBlbpOTkwN1gTnFVz921x1skUjwULCxan + 4qyaOF5bcRbOMlw2XN7EWSFVWr2371dotZxhkJ9F15jkmORc7X7sPcFZ0Ze7OrnDz8JZFtl3BMSG + 87NC4bRUUC0bzHMqiAoS4hm9VTsjZ2Yj4cV67GfiHL4XhmMuJvhvL8yBXbNNzoo+2oKzHAxzMKzj + Is5wnBUK5/sh+wc/i5/Fz+JndVZBs0nyYmu1uKFAsy0uW1xdK2CbeBY1seKG8AyewbMdeDYl4oYT + PINn8Aye9cSzUDjf/fkoeOXP2zd1ZMORjdvPW+5fAAAA///s3dFugjAUxvFX4QVwbaGU7nLLLk28 + WLLLpUIXjcYtzvfPwm4HTECgxP8TnCA5x6+xnl9X5Z5bivwbDG6HX88mIey5Q8QdIu4QcYcoOJ+e + wcRgYjAxmILD5zmecTzjeMbxbBJZnhRECiIFkYKCY+NJQaQgUhApaBITnhRECiIFkYJCAt8buL6b + Ke8C5T0ISHoGTn4kQDo0wn4GfnxGFXweV77ib/4irf7yPdIHPItjn6umfmkt6D/8+ezLvu+zjtx9 + 3vnisD9Fr9XD1FVVj0JEmzXwOfD5/cHnV3DvSdtTv1Rkc23RJ1ccWr/7/i+dp01D5G1fXna1ZRO9 + ABx8Sva8v19vrFqlemmkfG8DfVrjXScrbXsVlXVdsTm6wpfR5ylau6+mIdBFec+FSCs+G+W9u/Ku + pVZStinvuVHSZp2Vd4vyjvI+VHnXD7+9/W4yV6QmEXGWlUmcutTE220mYiuNsbZURjiB8o7yzhJ7 + DOaQ17eivA/Yogl4ivJ+07Ze/vpWlHeUd/TBa5tMadFlUepIrX5/21pR3t2A0PMDAAD//+zdOwrC + QBSF4a3YWgQc0TWkdRMWadx/KQNBQiwcxFzvkG8LkRzP44Yf5f396ZVTI6rsNj3uh7G+NK+eqpSh + nC/HIZv2rM3Gv+QnoelBed/wh6YwYtXuFQblPeJPsE53H61vN3qE8i5npcpZKO9c0G9FUM6Ss1De + 5azt6ggKsyuFQXmXs+SssE7ZnoXyHlOXaJu5IHsWyjuFae6PZ3u+qrXlLIt53pyF8m7Piih9anDp + 6HZHzkJ5l7O+WtG5IHeDvbXNKO8KIDOYg+Z0woTyLp6JZ+JZyLkhyjsXxAVxQRldEMq7fd6Vou9N + cwnTtQEjiPLua7BpWX8+AQAA///snVtP2zAUx7/KUfbAprVZ7pe+VTDYCxdB2YTYNJnGgUhpUtkO + G99+shMKLU3HElrScR6TOHZOap/8j12fH66eYdaNJuEZUt4xPMPwDMOzzoVnSHlHx4SOCR1T5xwT + Ut5x9QxXz3D1bCOrZ0h5RxWEKghVUBdVEFLeMWUZbvHALR7rV0FIeUcVhCoIVVDnVFA3KO8xSbmC + MnJORQk7tGzHN4LZuXtc5clw98tnGJ0en49gd3h4IndIHu3NilXPI/nY8m8x2Ry4mWuDy+0BJ7di + cO/lhXyzG6ZTH+R5tEUw99cgq78K3txfxl89uyERfWnz1kP7Xtmm663GMJ/QfFpDmDWbmmnVmZkX + ot5Os52dyxo9JL+fY6fXsE2ZyPop15YK3nx4rAcxbRlvjRUftLLYdWo6UwUtX9Wy265le3U3XklN + t1pR05EV/5Ks+LUwuO3Q1Q1vwwzujRLcHcPULbfrFPVlCvCAJWnKP+1LdXRaJ1MuliLNn6DM/dAz + vW6izGuQ33/NxVJmR6mmgJpXMmIk40oNaoNHB80rvI/9ZlFg06qWYNUDxw4DV2LVzRqsuhsGlm87 + /4pVt+F7YRiWB84KvHrCgUCkIh2QnUOHi7xgUAWvSlDnWXoHSTZOi4hyEDcUYhkuw+jbMcg+lWTX + UGSJ4DoMo1KEk3T+CrwXjCQpZT0QNBM9dVUeUTHWPwBhFKbkTo4/IEI1MZ5Fnzoc5TDJGQVxQzJw + YLeqWXZMru4lpZCSLkreW9oxTFO4rT6E8HHheSYFF3BFQTUpcogTMX+3kg7vbPl+HGMHSBZVpxx5 + KrB29IfI/RdhmRyictRmxeSKMhmwl+OWawOzp+Xsuhyzpm1q5WH1I52f7Q1hP2eUCzij7DYZSxc0 + JWwLiPCuobYkLJY8/fq8cqOySzwt/KOnTRm9bUeE9yURXrnInyQKQjcm435Mg7jvBF7QJ34U9G0S + GrFnGHEc+M8kwisxXx0n2QOlRvYqbaDdT81orHSOlws7Nsywbxp9+/Gujqq5al5FVV1mSJ19F17A + 68jpKDn3NCFTaVHL6jAbLGYpQrrhfw+NRyeEAEQEcyBidQu48nNzrC3Dx0Wx1KYuRCIiEhFTyL49 + 9DxKJ5ROg1dgmv0BAAD//+ydQQrCMBBFT1TIxIB6AddewkU3Lrz/opgpQhQ6CaVxqu8GpYvf/5JP + n48/XGOnd2GnJ4QIIUIIfuu2g5QKoJOcbxGgw3GPEwQnyF4c93QpuhRdii7VDnRaeA6LIRRzUJml + iBAihAghQqgb0MUKoIs538wCxQ3dS/53GR+lqvB0HESCP93a82G9GGeRPLZr1AvT5C/c0GlPsrqU + hIrFAF2KLkWXoku1A50WnrgYQll9XfwRgBCyvlbzG99NO0JGy0xghzJaE+hUWBsAOm7oADpu6DYF + Ou1JZyOPuKFD0Iagjcmluy71dvD9mV2qvWWp2XJqCQeuOiifX991vN9KjhaRQWLqDdLMxR1yYKrg + QDXjstSEA+FAOHBbDkwVS80EB8KBcCAc6K9LmQNP9esySoADuw2m4MCVBxB/otc1OVAVvOaWgYFn + +P7AcwIAAP//7J1dc9o6EIb/ikbXgOUPMHBHKe3pTDLJBJLTXHQYxQjQ1Nge2eSjnf73MysZCEE2 + DiQ9tCOuAiwssiXtvspKjynw/F2LVlu1lf/XyYh/XYGnypPKTz9oGh1odKDRgUYHnl4u1dlXy6BA + vubkTaMDjQ40x0edztzVqqADFevXNzrQ1IWaulCjA99VB7YqHMXZMjrQ6ECjA40OPDEd2NqlAe/M + XYoYbHIpk0uZXMrkUu+bS/kVcinf5FImlzK5lMmlTiyX8ndzKaCzKDgl0Fq7wI2WnwMsqwKW9gT/ + EUd0w2fcz/cEQ2A2LlOwv7hnYkXy+4lpELA05dKbwlTXMJ3NBJtJnywMx0GsWK24Sxrui0cN6yiO + FfGNW9zG/nNu45p2k1dhvBpL7unwtGdxoJifVwo6q6PTXgpgs/85bHu/U0QG78k7q3Up4c6l6OZy + zrwOk33Ooyqc+QNd6loJPWYKqOGDSfPlV1YHUx7O6YS9saO2U3QLS/spmzIh2OTQvuoU9dV4mRV3 + VvuozrpVRbXmU7Msfadb2HTKSfIlHbV96HXVjY1+HCly8LvNPDrYeJ8mFODX1pD/KO1LQ1k6U+x6 + w7Yt7MJeURf+l0+yuR7k3jzGo67BX1I0WH0QndNoQjP4Op1zGemOabBd1OAzRfrVgt2PanHTK+jM + NwoDXeq5dZRnt3wY5T8gfe2Mv9+zoxtNMno90Cc0XIoplUTpXbefBb1n4VGt9suj3Du22i1r9QDw + 9VqnH2jwvTSq0wWLeMbZrkvIhXdcfhY8DFPrE8TYq6LJ4/YQdy3dtb3kQcQDNJKp75u5coluqjin + CfqK+nEsJjyChFwbAwgQ7A9zahc4vd3ntOk4jfYhPp0W0YW73jrBRxdBsEwozI0sTSGhf7uLbOsm + p8uQBopbf06T1w6TYmd2SSt5yDP94LiV4ooqKZPj63HXa7RrEhkvw6tUMW3idnz87FUlyNhKqMAs + Xx8mLOBTHjy3A5m2TEFhJQzkHsRe3MUDOqOAgQ+gMFU8rXTcdcQzEI2g7aCNU8bGGVskoWKr/8QX + U0hQ6Hf4wvxPbTWsKpTNV8gKLEaCRqnMQBSZPn9SYL1SrGvtqrX7VcMhzXi2lM1xYaj4vuc6dpsQ + 4hBcw2EczVbv123SaXi27buEdGwCD2kRJ3D39ABSXMP57XXBOIqzdV1+xh6BSD+a8xTBxUcBjRAN + gngRg75GNjq/uBqgm8E/X/pngxp64NkcgclEJWI0RFPGUEKfYLZBNEPZHL5kpUEbG33No2ksu+mO + T56i3sce6seLJOQ0ynY+9K2Go+XijglQ36rLpbjbrOFYzFRns10bq6d5S6+HH3voUyxYmqEhE/dc + xreECggYOq299dZeyb1lnf/WTavBgIkFzzI2Ga/jlLzgm6iV+xjBOzW8oI/jUCUeXa8l115fWl7d + VLMbCcpDJnaNv8GWDHbP2cOYL2D0LkWIu3ieZUnataxgEjUECwST4r4xi++tZHkX8sACQIFFOpbT + seyO5fiWHNvjgDkTj/h23QmYW/eI59QpvXPrju/a1G9NHeqxsU9I44HdJav9IGNBI1gDWe0JGS/o + Yx438+c82qwpLSMoOserdRaJ3FU9d2tp2u5UA7Rshed94/IF4Te3PQ3IrzkfxeyLMzjNiuvO+xaQ + 7U4FnCapVpRtZhhzEq/Zefs7QtvpbmmDH1i/Tl7/jyxSocBaoX+br52HCkXNyzQHDE8jx4FV7r0b + G/+Yg8ANJsXsoj2pXbSkQsUPMbLq4e87dvI/AAAA///s3dsNwjAUg+GVmlJ2Yv8JEAoPXCpyWlSa + Q78V8hD5jx17v30mdSN/JHoicqaJVSXWfQuretU1Bk4U22YrNCoBziqxYluc1dl9hLNwVlecVQKt + tQVn4Syc9cA3O/umqTirSpXW4O3tFlosZxjkveganIWzsnHWGOCsOpS7OLnDz8JZT8yXaMpIK+wW + nFUVTksFlWGFeU4FUUH8rMNzVpUqY2sX+xzowXfD8LM45kd7ydlwZLbJWXWIdsBZcoOr4zs4y/rG + XeF8brA/8bP4WfwsftaPVdDLS/LsXLW44YxKTvONgg3GBsuGZ1MAz+o+rLghPINnxhG/sMGmQNxw + gmfwDJ7Bsx+roGZKsS678ufhmf+mctD55u2lFDt7LvIb7PJ+dFcAAAD//+zdXYubQBQG4L9yoBfb + 0o17ZvwY93Lpx9KLtlAWlkKhmKit4Cqoaem/LzNJaJJ1JDVhnSzvZUycSUSP74RxHsxSfBZ2PeYQ + 4U9qzCHCHCLnYHoUJhQmFCYUJufUeQzPMDzD5MYTzrG2PoXpxATraUl5pCCkIKQgpCDnvHikIKQg + pCCkoCfB4JGCkIKQgpCCXJLeLVzfwbx7npTtoO8uXOXcj/ON39ZLfQDG0cqjJfnbuh6Lc0MEb88d + dQ+jYT14gB4fQFGHLxJhI92Lyi66y6NE92m4c3Vt07dXDmx/FdCA8iCPPNhnX5e6yOVaR3aOrxfR + k+vmiqfSzUOeTDeX0M2d0c0POK8D23l9X6SWk0vEx/TYl1s+tPRusyN9TKo06XRzfZ3rVOi8rz6a + Og8i9lg5740fJcjHXiBHddoXO2+boizbq/f6lvPFdmO1QefhY+icOXATOh8L+e1Y6OMbsXDp4xt8 + JKqPbaoHXY8Fx3GomFlY0XVmpcL/RtcFfVsyy4h8OcCvFy0llJohlmHRPfpaLxtaD25NDKyr8g8V + 1aJcpllrpPVcD6fp7v6zMdeL6gdpMbv16OYf0L7zDr3sVjz4JXVZ1V2ad/WrrFt4ryhphjB3+lTT + Q91k1P1MKgrozbplfWq2Zt9kFeB07dD7rn7HTVnSr/Xdn17vfZ+HZdvRPCPTZVdTXnS7e5v7ygtf + 6AMUyAtKqnSzTeptii+2wPjfSVPpC9VixsvnasaHfJgZb/lcvxkf8qnMeJ+vTJn8nodqwQHPZ3OZ + +7NAxmoW+7E/UwspIg6uw9QXB5rx2gfdNuM3XuiJzfiwfzHY0ZUHrDyWCzmftar3V1GEyzEJK48i + hDWLgLCiCJ2BPG9i2Z7UcaqwBJwej8k6FpCAeTiO0yM6ITohOt1tjd/+AgAA///s3VEOgjAQhOEr + AcL9r2bIqg9G6ErSptXvDmSYvzu7o1exeX89ESJCRIgIjVhxD+heRn+YM9nuHgG6rhZr58RZ2hnQ + XW25GkaY3O83kKu1/Z8xRcUTtFEjWzRFgI4IATpA1wzolgTQRUFt8UUc0AG649+tGsgabbQ/dykp + fFLJS81TIjHAS/FSvBQv9T3QheFZSsXXW+J0PxEiQkSICLWsqy0CXVTaToBu97bP/Z5Tjz3MQ7gJ + nQldV0AXPum8AOBmQmdC1/ax6fEDtTJ39cP7Ey/19vD9sWFbUlO6gHZZ9+1Ku9YEB0Z3rqQmDqzq + tXYyGMhoWb2rwYFrIqm54kAciAOdTumMA8MnnYcSooFXKEHK3BuWs0/9aNeW4MAo6S1mGQQ8zQOn + Yw68AwAA///snV1v4jgUhv+KlWsgDvmEuy7LzFYqalWY7s7FCrnBAashiZzQjxnNf18dO0ApDqRh + OstqfUfgkIMT+/i8zsGP1oG6wPO4DpR50uHdD1ytA7UO1DpQ68Az04EyTzpcyyBRv3rnTa0DtQ7U + OvB8YpdXQwd69Ui/WgdqHah14E9NUP9/f/TzamzF6WkdqHWg1oFaB56ZDvT2ecEKkLnOpTZ3TP/H + RtdW6dqqD8ul/Bq5lK9zKZ1L6VxK51Jnlkv5+7kU0FkknhJQuH2g7IrvAZxVQksvOPuWJmTLZzzO + +ARDYDaucrC/fqR8TfL7bhCBJWfCmxGROBe42Pmc07lwSuN4GqYS2Wr0rQ6AvxXcxprAxh1S4+A1 + qXHDtynX2/4T5HVXxZgfsaQOBr0p1l5FXh8saPiQrgo0AXK90l0fY3Qzakq1V0Gbxwsyoz+ZK7+z + vLqBJ9MiPz+OfdD0BlpVN5Al1feve9L9Uw0NGH0R4Jo/5spaqqExSBPJ0EW3Ev6s8nnD4SI08xp0 + q4LAQYc0opzTWdOmqiDcA5IRoE+bY/btoPexWK9s6NpRsbiv0pCceJFrAOutqit9JVG3Kq8uPsWl + 61QM1jtJQj7o2T3Js304TJQ/IH9vpD/uuasaRmLWeiIvaLziERFI5X23nzl5pPFJrfYPz24f2Gr7 + UKuHwHBXOv2NhA8HZ/Ma/dqp6td/sllF57K8UzyqosdljobrL6IRSWakgNOpnEOKWO2eLGnCCkb3 + 3dpYNYJHJENf0SBN+YwlkKiqXDqW3wn8Zk5xhdO/jjkNrG6nFzRx6qn68Q0LExaiicizlVNfo/ZZ + qu5zE5NQEtxHJHvvaDngTBX8P3MWx7n5CWb226ro/1UIDSKz+hLlbvSdjtMNXN9qCYa6mHdEkh9g + 33OMV+9KhULXeTyMjvY4oyGLWPjaDnTLKgfJkVHQPzAfGn1jSOYEuOghPKHjL2thA8h7UFEgdqCx + EaXTgi6zWMLGvxvXESRk5AFOWL5UPhaUTwzLJaMKiwknSS5SEYlqLw8qrNcSbiPmlHY/WkZMClas + RHNsuxN4geMEvosxxhY2WkacJvP1520L9zqOZXlu1+r1wERapBkoKDXd02gZ5W22bXidFpsChYI+ + A6J9smA5gouPQpIgEobpMgXBiSw0ur4dorvhH5eDq2ELPbFigcBkJjMyEqOIUpSRFxgRiBSoWMBJ + 1hKtsxWcLIlS0YGS1fKeclCWsgvlRt9vGSmfy35j2ZYhD8sf/WX8+wX6lHKaF2hM+SMTU1dGOIRH + larc+eiouNyxLn/rtgFgQPmSFQWdTTdRWULsNzG69DGBT1rGkjxPY5lT9F1XrCu+tby9q2c34YTF + lO8b/w1lJvSR0acpW8JoXPHY6BuLosjyvmmGs6TDacipyOg68/TRzFb3MQtN2HzfxD2z2zOtnmnb + phimU88LQj+y/bbnU9x2aBS2ie84bRcHXRyS+9DD0dTHuPNE77N1jcuUkwTk/brOZbokz2V8KY9Z + sl0vWSXwIN1YryEInKzshDvLrlavHk1yJ4wdG2Jv6LWlbVMY7i8uZNBkEb1vkUZF1lsctXo1UJG4 + XsGxjjDnumWjZhdpdtGvKdODntb+kr3/IQ2uUTwssbbue+NQpT55m+aA4XnkOLqaRVez6GqWD6tm + wTWqWbCWVVpW6e1gL7crBP+ynh9PLv4BAAD//+zdwQ2AQAhE0V7sgP6bM2Yv3kQTEcNrYjIfdvlt + /iZk6swlVi2z7PnmD6yihHVw+rOJ4YTHcJHgrMgdbcVZzcY8zBwusrb6gRmJi6yBs3AWzsJZjzhr + VZUrmeuRQrfrjAV5l15jfWV9Ndh6j7NwFvOFSzclSnstyCMeesNp0+ZKX72EkTASZlrC/EBGj7Nw + Fs7CWSWmeS1IC9KCtKB2GnnBJJgEk2Bq54iHZ/AMnsGzEgG8FqQFaUFaUDu7u2ASTIJJMLVTt8Mz + eAbP4Nn2opd9BwAA///s3V1vmzAUBuC/cqRddNMKM8YGclltWu+2i02aJk2aHGxapBRLYDbt3092 + 0q4sgSUkAa89uQuIj4A5vCdIPJiCHt5KhCkIUxCmIO/QdWzPsDBhYcLC5J2oju0ZtmfYnmF7NgmX + jikIUxCmIExB3lnomIIwBWEKwhQ0CXSOKQhTEKYgTEE+KeY98t7p6HLiL11+hEI9RI+eES1+p9vl + 9Gjxtdbyf4Kh5yDp5+DFeTIMBQ+NXxTN/3E+ad/51K3pP6HRUSfUKj/biq0yzZmw+HSX0PvpVkh1 + +IZQl55Olz4TE8/4bEw8mY2Jp8jEe6lsT6mHjyfZY56ENJuaZOc8jDIf6HK+bZbHNPXTLB8L+XVY + 8/Er6ZHPx69wC0cfu6pdfnrK4zRLCSG0z0/nEc8WZGE/h/jpDL61hNAEYj4gqZcNCJCu2XGqeghf + dVvDprl1/YquVr+grPJVK1Xj0PTCttPw+ctHx6eX1Q1YMbsJ4eqPtd6ZAy/Nmge/BKMqc+nm2m/K + 5OErEPWQyw4fNNzpWoG5FRUweLtZsx2ajVtWrDObrYx22fXvuFqt4MfmfgSv/9qfu7YxsFTgNmk0 + FKXpLu3u4C9iZg9Qwi5AVPJ+GrfT2OLiERj/U9SVvUx7zHj2ZM14sqcZTw4x48nJzHj+xpXJ74kQ + uRQqCyK1ZAHLiyTIKOcBWwqZF0TSIpN7mvGuc3hkxt97oSc24/nuV+KPrjzIyuNb88tKwbU9Dg9j + J4qCiLKpiV3KyYFvUUT/cBZWHovQ9ph8X9bdiwiftOGTtuf9pM0Heb7zh+6RLSTi9Igmeh6Q7PCe + PR11dsK7qjQvTo/RCaPTfsM7InsibNi/PYXoZCb0609YhH4DAAD//+zdWxKCQAxE0S3xXJ2btzCl + H5TFRC1gBs8O5qvpmzRpQyTVi0TomvxWZcU9oHt57GZGTstjV286zTQtb2nIMQG6PYCuT5yl7QHd + t5+0ZoRJjbWF3GlAF4anVBG7CFXRFAE6ImSqdPbc+4+AbkgAXRTUFifigA7QATobup+ALnxSyUv1 + XSIxwEvxUrwUL/U50IXhGUrF13PidD8RIkJEiAgdBnRjAuii0rYDdAuCP//v2dzcNDMIt6Gzoasq + chk+absAYLShs6E7Nj0gcmk4nvFSq8H324ZtSU3pAtrld9+qFntTggOjO1dSEwdKakpq7suBUyKp + OeFAHIgDnU6pLCQVPmk7lPCo+xZKkDI3w3L2qSLtmhMcGCW9xSyDgKd9oIDn7ZonWO4AAAD//+yd + W2/iOhDHv4rlZyD3kPDW02X3VGrVqrQ9u1qtkBscam1IIifQdlf73Y/GTujNCQHUs6yOeeIyMHEY + T+ZvzPz+q98DZZ3U3v3A0zpQ60CtA7UOPDAdKOuk9r0MEvWrO2/qfxvrvQy6/e/h5C6/gw70u5F+ + tQ7UOlDrQK0D99KBfodWnL7WgVoHah2odeCB6UD/LS9YATLXtdT6G9P/sdFd8HQXvHdbUx92qKWG + upbStZSupXQtdWC11PBtLQUoO4mnBDbtCADO4n2AZpXQ0iPOfmQpeeIzbmZ8giEwG5cF2J+vKK9J + fj8xESx7JrzhmCSFgMXO55zOhVOaJNMok8BWPDIHtmeK29D1TC8wgR2vwDh25De+ADcePwc3rnE3 + 1fLb1lByS8XFPSY5ASSsMWE/KLqU+FkVp3Yi/n13ADz09jFaTXR5ljbD5e294PKer+INs7SmZF/Q + LG+gKls7ugyV3+QijwE1/D5I+xfLvGtsNC2Ld/Ln2e3s8ZazGuwaparTKiiwRyIlKJ194GxF+yfp + rgFrNwVstiybI9baK2JdFa36NIskALglCVxwOKDdnAZ209ltdUhjyjmd7Xp6VXPzOEslt3iPoT7B + bZtcq7LtSYHG9RvRGUlnpISPU/mH69w+7gOr6XSfSvCuyqln7uPScxum7I3kMrd69vfy7LQni+oA + im2T8GbPtirARE64J49osuQxEYDnt24/cbKiyV6jHrZfeN5x1E7bqMdAlFc6/YtE31tzZYe4dpvi + +h82awguuyWsyYKmrGT0rSfHUrm6SEgk2eNnJN/2zLY4M1Xz9Yzk6As6zjI+YykUySp/jh0Mwt18 + mg0+P2/yGTjuwPd2cqq69nziLEkK4yOUL5dNGfnLLu581Ry5YFHKInQlFEWDq289TGSNX4Hd8cgd + QMMdoKmLa46o7wNzGJr42bNSq9C6hIfI7E9yGrGYRc/tQMEsCxAfOQUlBEU4HuExmRMgpEfw4zp/ + rCXOdcpK0FMge2CQMaXTki7yRGLHf+LzGEoi8h0+sLqrbFgsewJVi0cNFlecpIW4QEpoe/WgwboW + c2tZp7T71cMJKVm5FMNxnEHgB8HQdXwpnnAPJ1k6r1/vW2Y4cC0rsD3fDMVNWGQ5iCc15xP3cPX1 + Oj7cz8r1VoWSPgCs/eqOFQhOPopIikgUZYsMpCey0Nn55RjdjP8+OT4d99A9K+8QmMxknUASFFOK + cvIIEYNIico7+JBanQ2epCdL40wET7pc3FIOGlOGT4FHbg9nfC7jxnIsLB9WB309+XCEPmacFiWa + UL5i4rKREw7JUCUoX7y0UVe+sK6O9WkAYED5gpUlnU3XOVji7NcZufJxBa/08II8TBN5PR95vlhh + fG15edPN7ooTllD+1vgbbDihK0bvp2wBM3HJEzzCd2WZFyPDiGbpgNOIU1G3DubZysiXtwmLDGjD + b5ihYYeGFRrO0BDTdDoLh57jOHafuL7dd/34tk/86LZv2nHsz1zbtcx4OjTNwT29zevdLlNOUhD6 + 9Y6X6YI8VGmseszSp5WTZQq9aHC9moC5nKBfXy3AWmE3ruSLbLlpisFKCaxQLEgOh1vZ7orF/T1d + 1v+Y1mqaMaIZI7+LMWKFHaCRZretxzrD6Ayje6T9vwEicID963z7n2vMDtuIJeDW2zYPNeqT12UO + GB5GjaP3teh9LXpfy7vtazE77GsxtazSsko3hn1WbGhq2lblzEZZZXXr8PqHy6p/AQAA///s3UEK + wkAQRNETCfag4DG8hAs33n8popssoh3RSQ95h0hRP9XM9+PG09NZnJEwfz+LiwRnRe75VpxV7Ecy + RwdHRylHRyTeZg2chbNwlhb0zXz1qiqftK6PFFpcZwzkVXqNgdxAPhpntQRnPXWwiy937Fk4a8J8 + 5+vtMj11iohdtEPv2bId9wlEXf13z+wHVGJCX1durwU54nHEs7Ujnp7megkjYSTM1hJmAC09zrJn + vWUGnLVxzvqhc14L0oK0IC2onFBeMAkmwSSYytni4Rk8g2dmsC4qeC1IC9KCtKBynnfBJJgEk2Aq + J3GHZ/AMnsGzLoZ2Leg0ymOGdwAAAP//7N1BTsMwEIXhq1TsAzOJazdrBBILVj0ASpousqkQsOL0 + yBEIISVRWjeOW/4DtFEke/Kssf3NudNXZeLRkQvq3HMm/pL5dQoThYnCxPIsOVud5RnLM5ZnLM+i + wOmkIFIQKYgUlJyKTgoiBZGCSEFRyHNSECmIFEQKSskzH5D3zomYF66D+NSUomo7lThJxDw2Q72I + z7yAfb0ICT2bzpwGRr+A0q59out99Vp5XvRu236OatvbrkF66qC14xrxyKDVU99WhyZnexiem3nQ + 3FyEMZ9JpgfWBtYOgrV1EzK4+mrV0/vq4eeHq+fq0FQf/u/6Hu6TU5AkrkMvPOLUGwmaTmbgw/5N + tY89eS3XzG3H1cvF+9PRmfb8VmxkiL5XMS96EHP18R7E/HjEvNS8cKWI5AOIea5irLpf5nwiYu7S + RMx9wrxSxVwmKuZyjGIu51LMjXjFXDcvrlrnUhT7zLhGMqOiWVmXJtvvjW2srXd1vUMxRzHnknY2 + /qZ8PSmKecAtkY/t29+t8XRt6Nr8764NijmKOboe6kPat5GimBN6OE/Jecr51AcUcyoMFYYKcxOQ + cb4AAAD//+zdwQ3AIAwEwarSf2tR+EaBD5iLmCbMrY29LObLjwo8P9mGh/h/0+ZhMWfXi+IsFnMp + SAqSgtZxFou5CqPCqDBxnMVijrMqzvSx67GYs5hLQVKQFMRiXtqQ9U3QBWIXiFnMWwb/2CUqnhGZ + Z+Gst0B81/vHYu7ElWUJHoa98fuEbjOLOTwzBjMGiytMLObwzBisT0bwbNJ3QxZzKUgKkoISUxCL + uekZfyd/Z1ZhYjGHZ/AMnpVsg7GYwzN4Bs/i8OzKtJjfAAAA///s3dFOgzAUBuBX4QFktoW2cLno + jVea+ACmQBObbIwEduHbmzJiJoM5cdCq//0SxlLa/5Szfk47idDciOZGNDc6npigmKM8Q3mG8myR + 8gyKOVIQyjOUZ96VZ1DMkYKQgpCCFklBUMyRgpCCkIK8S0F+KOat93kWMee+quX/BfR2giO7YLad + wOX2H9anDKhu6rnu0gGv7RAwnwnZ9g1Nl0NE7/OrKvS1hw8bGz67fTM+fuhX4+dvwtLcS1gaQjyE + +B8J8Uz+ArV86Hk9zPkmMxvTvF1RLZ9ueXuusU+H0UW8YmJhAl4KviLJlIsyQdiZ8bLRwWOe7ytl + lxld17Y0GfmVB3H2pI+zyzTlHDj7wxScPYkEZxEhhI7h7JFgjDJrs9Pv4OyJa5z9ZuCapg7W9+vg + bretNkaVzYWiOwfo7gZ0p7fts/2SKsIjoeNQq1yEMY9VmGVZEcpcFqkgtFARQHe0GgJ0B+gO0H1o + 5beb0XZDeKsq+wKlSwl+HIuIZmY0M6OZGaA7DmYFNOj4EHqc/APQHaFnEm/aRcpedHQm73Rf58mU + +jMPSykNKYuXDrkAMOYEMAC6o6zCDIO+QO/6AltjmdDjvkC7kV4WJ0oqO/qM3T3/eHFyWGt6b3y7 + FumLNnsAYOgZQPd3AAAA///s3U0OgjAUxPETNWklxo8DeBe33n9hoBvEBDSR0srvBoTF5M3Me/0D + uvNZaz4/D+guXOaz+KySAAxAd/WVJEeS0x5iB9DdFbordH1WEZ81iE3qZkOdQ0gxpOO3oc7s+q4l + np/VMfosfdZ2oMFPxplJJPyuMN2gQuOTcwrT/87b/fHa+J5PIaVYuvClMBTmL1Gmi31Wxp1GfVau + iJrRo/5ja1nf6b+lod0de4Nr+Kw84VwWxCbF0I0FyRRkCrI3COgO6O6Kiz2z0LwnewborgZjz9iz + IjUYoLujC0cXji5qnIIA3T2y4d4U0L0uYQJ0Z8/YM/YM0N1TY3aIqmjup+Hwxm/c7SGkBnSXG12b + fw7oCQAA///snd9P2zAQx/+VU/fAppHOSRO34Y1tCPGwIQ3YNGlS5aYORKROlTiwav/8dE7K6EhD + SYC2cG91fvjq9Hy5r9PchwLTiwtMBHQneUbyjOQZAd1JnpE8I3n2OuUZAd0pC6IsiLIgArpTFkRZ + EGVBrzML2gygeyjizMARN5LZ3higfpgk463iiq+F2r4OuPgaaNueswTMvIJJ3tBmFccc50aI5Nyn + QcU/G1Sce1VIW6mzJxpYOx795yTHULdZ/PT6H9JfFgsKwG31MNPoSlpHqhVHvF8/N0uQefbQ2Xm/ + ZadXYdkM6VrM4EDpJZj4jyK4XANR2x60sVjlzkcZHMxPhC9CjYXG7qqMY1rQasD2sgHXAOp5O0C9 + uyQClx5VZ9n1Wlnu1cf+Wpd2Wrk0r3PpkzwNRVAdPQ5TcSXjLWC2twGO26zL+cbT29vQzb1elw+e + FRlfCTN37sLMbRdR3DdbC80h5yk8hgLrZCqDKIyC28ehEskz1BNTiYoGb7+dvc6BOBdIaA5QgqWz + uVQ5U5FGXYTyBccYSjnUcjKNTXvvT+c4xNRLXGKH5cemuNCiPkr5IlnzTk5ToTKT5hfo6bLRvMO5 + +rvRgU27qgCr+4zZPvfqwOqebXNuwOrsIWB1H37ljDkcjJssQ6xHGQgYm+TKoM+78DPJUygFrNFK + iYpnEKkgzscyMzT1ECUznP44Nlz1SJ1DriKddWH/H4R9YQ+81QUCfBe0VHrX7MWW1EH3HYi0DtgO + XxOYJKkEfSEUuPCp7BldMzPniiJhxbiB5xbj2I9juCrvC/D+v+8zyTMNIwnGpE4gjPTi2eZO+qbn + 4wXy3B0Qalxucxlucwc7t6Dw1yJVOFFfGxfe9Sp579++r3ZcNRfe9R6NC+9+MGFy6Ab+wObOwGJ2 + v2+5ko0s3w8DKxSSjTwn7LMRG/YZ617L0XRegXWYCnUuMcaV61IT8buUTWU7UkUbV6DQrzp7nfkC + jSHrFNNtoRCR7a9WiMirLvjaOPJQTViq2Lg9ddLo39aNa8LavlmR5rXV0JipmOZSECK6PIFWKQi1 + fJqGscg6mz784RlboUpsgWy9t0D+wmp2SwlJYEQqJLvhCRIVkt1wAD3pt7vp/NZUuCZGPem3l8Co + pyBEQeixKu2XDkuLSPTK/rNg7EnQ3ST6W5M3ERnk4s6l+wsAAP//7N3bDcIwEETRXqgg5PFB/42h + ZMUHINkboUR2ODVYGs31zu4Aums03fNSvBQv5fzRfqALw1OrgV2FqmqKiBARIkJE6LT1tjEBdFFC + WzVQgA7QqXo891rk25jwCkAXPqnmpe5DIjHAS/FSvBQvtR/owvCMtXLr5f0uABFK3jbu5rtbTEBM + oLd7JVMC6KZN3wZAt77Ya7+n6LG7kSwTOhO6poAufNKjokcmdGra1LRZmWvOS318fH9rV5TfSmra + tLNpZ9OuHe2aExwY/biSmjjw0GT5SgYdxcqt3h3BgXMiqTnjQByIA3FgYxwYPqkcStgqvYUScCAO + xIENadeS4MAo4q1mGQQ8zQNxoIDnTxwYPql8/WDBgTgQB+LAxjgwfFI5y7B1h7u8efubeeATAAD/ + /+yd72+jNhjH/xWLvbhNS4gNBJK867readL1Wl1zd6u2KXLBSawSQMak7e6fnx6b9KchXLJoPc19 + VcDwYHhsfx/y2J9DZ1jblVsON33mf8SxCzvEgZr4G9k40OaF2t8D7e+BB80LDTssxRnaONDGgVZL + 2Tjw9Wmp50zgF32X5gZbLWW1lNVSVksdVktFHbRUZLWU1VJWS1kt9cq0VPRSSwHKTuMpAaI6AZCy + Og/ArBpaeiT433lGH/iM2xmfUBCYjVUJ5c/WTGxIfl8dqnjdXFlz5jQtFbrVQGbsiGR8wmI8fsxi + vCfY1JkVrx7qPvTawcznLC8aSLck/P5A8oGJzPw+jzUotcXquzxPXhdHvv0Rm17r8ZLF13kl0ZSv + Gl7pBGN0frqrUdJklGfNNr29bJqeLbTIOWC2D9NkIhMX+mJJE/YvGxp5TY7T4qjngs2ZEGxXbx2a + eOmnPOvSIezqNyaTx3mmUcTtlQWv2oMOPyJNj/i9htmarI7xPiaHQUOP+1mzjtssh/tZ9tv7+voG + zB2St49lz/SGVRd3Q+/QRSXmVEGTDf2uoGuW7lXrqN2hW2tN9qq131brE6C0G43+QuPr1q6/g18H + TX79hScNztU2nm+3aBrTfyvRyeZEdEqzhEq4nMk4iMBm83TFMi45e2nWxybDp7RAv6PjPBcJz0CK + mkxGvu+S4S5GQ5NLnfM44zGaKlFrHAh2qx9pqN/ltvr5w8gNvJ2MEpP7nKc01oz2U1p8a2tpMWaS + ZO8ET9Ny8BZG8Y9Nvf+lCiXomgkgjGtYuzPx3GFPAdLVmKP0/QiPfN95tFeHH2wj4aFh9C8KFvM5 + jx+Xg6CkKiGeKBgENyBQnYlzQhcUoOcxZAmIu03UAjx7CJEgkoF6zhmbSbYqUk0S/+qczWH8pNdw + wfrfXRGXehrjnpzMHgDcs1INs5rmXm/sfsFNILg/8LznpFRyWalH6/vuKByNRiEOhxhjgp2ek+bZ + YnO8T/DYDYgXepEfjDH8qRJ5AYGc+RacnlN7W0DQnxXGXogCD/bm8j43XrJboMJPl7xEvEQUJSr8 + QOAeLrrMK4HqWFZplTxL7xDP4rRKWInkkqE5RM9o+uUMgVfxbIEANF+66CjR+oamT4+gH6WgPGWi + hyTLZE8dhS0mY/cnRAVDBb2DXgZRqUzE9xGoiz7kaJULhuSSZihAx/WVwTVLdS7VmhiaMZyr63GU + pmhdj4Po52f3s6pKia4YUiZljuZcPj1bjSs/BAQeUOi/QTRLNvs82DfCb9yHUP6GigwaKrTdrFpd + MQFhu269pTPxek4uFrrdEp84erN+UZ8ufj1Cb3PBSokumFhzpRoKKmBkMgX0Tw5tjeuflK5v9+Hh + QgEmVlxKlszuB0TlJQ/DY21jCkd6zorezlIt5yYhVh9tn5f8+Llbual2ipeF/4K5HGzN2c2Mr6Aj + rETqTJyllEU5GQziJHMFiwVTDuou8vWgqK5SHg+AbDDA44E3HpDxIAgHqpucRWQ8TMYk6GMcef0g + HMf9EQ2DPhkncRwOSRRfxbMIY/eGXRWbiSQzQbMFgz6uTp1a0dv6Y0a9zbOHpdjAr5yJs/lA4wjd + Qf7x7Js2gUXsLNnF5lraXEs75+4QqE4y7oDqxC8WNrALAduFgG3Cd2ui9YGyrL//hG+4wf6n4tt/ + R8Md8rs1eXgrOMHO87XzfO08XzvPd6+cJNwhJwnb+M3mJNmcJJuTtKN06iKKtsZvGiFsF/C1E3bt + hF27gO/rSYwkHQI6TR62C/gu/sMJu/8AAAD//+zdQQrDMBAEwS9Zjvz/r4VkLyYErSDIEnHdfTbT + mmWayMWA7x3MnKVjwLcAOkAH6ADdKKCLwJPpgV8/qjQU0QMzc1pgUshdBnR7B9CFefj8jYaOmZOR + 5cRSs04H/g7oIidlWapsrAYuLF1YurAcAnQRePZMV3506AkAHaADdLNj0r30wCnQhUJ4A3QaOpO6 + JnWHAl3kpLae4KGh09Bp6DR062Wpj4fvr7pyl5oeozxGeYxa6t9VOzgwFMIuNXEgDsSBYzmwdlxq + VhyIA3EgDlyMAyMntY8SQiGczhjoA/WB+kB94JV64JQDQyGc3jKYYDHBYoLFgedPHBg5qb1+cOBA + HIgDceBiHHi8c1L7liEUwrOXN58AAAD//+ydXW/iOBSG/0rkayB2vki463Zpd6RWU5W2u6tVhUxw + qDUhiUzox4zmv6+Ok9DSOiGFoUMl94oUk2Mn9sl5nWM/O+5j/nvS8064ME7BbFVZv98lBH90dR3L + bVffV9XaU3UIblmdC56w9etHCOkSy/noC2i55bHeueVwfJfXQgcWCGGNB9bvA/X7QP0+cL/vA70W + W3F6WgfqWErHUjqWOjAd6L3FAyvQ5jqWWt2xiqHTuI7908g/qOyhaD+oyycSfmv7FehNE35RLNVv + EUv1dSylYykdS+lY6sBiqf7bWOq2g0o8JVBpB0DZlb8DOGsBLT0S/Hua0Gc+42bGJxQEZuNyAeW/ + 3jNRkfx+ICqR9lxaQxGNF5JNO5sJNpNGWRyPw7RAtqIB7jmS1YmxG3jY8RwABiowji35jWvgxuOX + 4MYVPLZMw/gUbHti1dlMl3m9UbKT0Q+j2xMVuPmYZhQgu+aIf2/E3I9kYLVtG4M6OvaR7L5KixLc + 3Yjl/j2Q+0arvlXX0kaDLGJCsOmWRl2vmbh+wdKshpFNtjTpqCDSZ2lI93lxVb0IvE4E1OqjgrP7 + iweNq7qf5/SxxaX1tzS5lqq2YoGzfLF9EzfT5F27uZ03Jaz4vZ1os2VL1Xnl2H+gT8ZoKSIqocNv + zZ4Kes/inVrdbx44e2y13dTqIVDOlUb/oOG3Rp+42bTv1Lmov/k0v1Oj7fEuFlUPni8LY1j90Din + yZTmcDqVcQiidmowqWvwWUF1Vhn1dmqx69QMp7JHNVl27XrLdM4SnnP21qKNVa08p5nxr3GcpmLK + E4hblTfXdnt9dxujnmr8XPAw4aFxJSNgpavaqn2qB86p4HG8ME/A/1/WPXG2M4dxzeX8Z9PlBFQ3 + 7m9llKi6zUVMw4Iff06zOk9020G0CPJLsjsaOD3fhj+3I5nq8pkjo3wfe1YfvfhvoVhYFcjD0OiO + MhbyiIcvy4GOWS5AgmQM9BAEjmiAhnRGgZMewpybeKqEznXCc1BVIH6grRFj45zNs7iAj/9AXyN4 + ftJvcMLyo3KXq2LqrZxCqilxJWiykJFdgW4vD2pKV5JuJe6U5X52UExzni9lc2y753t+4FsY+xhj + C6MOitNkVn3fJTjoOcQKAuLZttRYskSagYRSJzOhDipvsmPD5zRfJa7n7BGQ7Vd3fGHAxTdCmhg0 + DNN5CgLUIMb518uhcTP868vx2bBjPPD8zoAi0yLApbERMWZk9AnGoUFzI7+Dk1QarfcsQHkSpbIH + Jcv5hAlQmkUfWqCB10GpmBX9htgEFYdlpa9Hfx4ZJ6lgi9wYMXHP5YM6owJco0pWrn21UV2ulS7r + +twAKMDEnOc5m45XHrmA2q/8c2njCr7poDl9HMeF4x24tpxnfF3y8qZduStBeczE28K3sPyA3XP2 + MOZzGI5LEaMBusvzbDEwzXCa9AQLBZOBcm+W3pvZchLz0ITN+E0cmFZgksB0fFMO03E0YZ5nTWg3 + IsztOtaUdH2L9Lv2xMNBn5HQof0xuJwHNsmqtQ9jQROQ+9X6h/GcPpYutDzmyfP8yTKBqXFUzSkg + UQzQ/15NwxLYd61rb9xLe81TbxpiMF8C8xRzmkF1de6fzv074FdAmrq99ca0JGiBjsTtEpC1hznU + 18s6u1h7mI/ZdRZ6Wvc6e/9LG9wimbjA3Lrv9UO1+uR1mAMFD2N9g85u0dktOrtlb5nCuEV2C9ay + Si+p0kuqXswQ6K323xXObJRVBWn25R5AWlbpRZt60aaGeewxOY600Fmk3SauWmddHtY0z15XEfwP + AAD//+zd0Q2AIADE0Jl0NvePMXwbwSge8pZoeoLUXwTSi607a6l4oXWxs+wsO8vOutVVLKpyFXc9 + KNSsMw7IU7zG8ZXjq9GiiWvFzipR2OabO86z7Cx/a0vcv5K4Z0Eu8XgicLZ0dM9+PcIgDMLMRpgB + 4vR2lvMsr2I9iKHTDxURDPq2PM+CWBALYkFxWXlgAiZgAqa4Zrx5Zp6ZZ+ZZlyA8C2JBLIgFxdXe + gQmYgAmY4lLu5pl5Zp6ZZ1067SyIBbEgFhQXYQcmYNp+WVjfAQAA///s3V1vmzAUBuC/cqRddFUb + asz3ZbVqvWsrbVJVadIEwWnRUiyB6bR/X9lJP2gCS12GTXYuQwQhyD68ByQ/uMrqpIV1bM+wPcP2 + DNuzUfh0TEGYgjAFYXtmnY2OKQhTEKYgTEGjwOeYgjAFYQrCFGSTat4h7w1JmVtrl5tBoPWlYjec + lLFtRBM3wNEb4K4/ZsSf8UZO3skg5tE2vvbbXZqzgS+rtpZ+znluDyPeP3Ro1wzhjeieIu7fpsg/ + 8p0Dc74zMQa1U4Ta9xxq77uVG4ba7bG99ZntUSHxMI6dMLTdZdd352nsOqSDLt9Ay6MkTjw70XJd + ya/lmusfpIM+1z/gho6ue6gtgHriRn6QJD2AukcJCSh5N6Duw4+GEBqCH/RQ6kUNKeQqpypW3YEb + 3lSw7m5VHOPl8g8U5XzZ5KxWavpC9tPw/fpS+elFeQuSzK4dOH3B1lvfwGex8sGPQbBSHKtv5Scm + 5s4hpFUfzA4XHO55xUDcpSX48GV9ZDk0a7VvugpwslbJfVf/43S5hIf1zR+O3pzPfVMLyBionxQc + FoVo761uK598X16ggB5AWuZP2wK1zTt4Jcb/TqtSTtQONJ7uLRpPdkTjyXvQeDIUGh+QE1Umf0aZ + lyc0S2ZeHs9nvkfnszij4SzL/EUYLrI4ytmOaLxqI16h8U9g6MBofLB9TXztyoOuPC6bX5QMzuV1 + eB476MpPbjnHMV15LEKbY+FrUbUnEb5qw1dt//erNhvo+dbT3Q+2kKjTo5poeUBqLfBqiofeu1Vm + B9TpMTphdNpteLtkR4UN+7d9iE5jAvZYhLAIYREyHZMsLEITMO6xoXvO2JN55CRP9s05GQtNVyz9 + NaHE1NPQPQIAAP//7N1LDoNADATRK/G9V+6/ipCVTRSNDYgJSO8SpmtcuAHdYaAbC3dpR0B39JP2 + mMGkx1qP9d+ALgJP1hG7Dao0FAE6QwjQAbpuQDcVgC4aatMXcUAH6ACdDd2pDV3kpCxLjUPBGJCl + ZClZSpbaD3QReKas+Xot3O43hAwhQ8gQ6gZ0cwHootN2AHTbO+Dn/57m5uYxD+E2dDZ0t1IuIye1 + GwBmGzobur72AOWS7VTJUl8P3z8rtpma7AKza48hydS8nAOXAgdGeS5TEwcyNZma13LgUjA1FxyI + A3Hgvr9NZKkeWSoVPKOCl5TAMveGZXbd54+9tcCB0dKbugwET/tAgifB8xQHRk5qXz9YcSAOxIE4 + 8GbXDyIntV2G6Pp1eRMHvqouwxsAAP//7J1bT+M4FMe/ipXnXuLm3jeWLTMjwYIoMLtarSqTusUi + TSLH4bKj/e6r46QtUCdNU7qwGvPUEDcndnw5/9MT/3Qug45hHXzuchvoQLcZ6lfrQK0DtQ7UOnAv + Heg22IrT1TpQ60CtA7UO/GQ60N0EBitI5tqXWj0x/Y6N3gVP74J3sNwqr4Ev5WlfSvtS2pfSvtQn + 86W8TV8KUHYFnhLArUOA7MrvAaG1gJYecfZ3EpM1n3E74xMKArMxz6D8+QPlS5LfD4OEIc0yJq0Z + MxJlEt86n3M6l0ZpFE3CpEC2GkOzhx3Lt13s+LaF8cCVhGoFx7EhwPEVufH4Jblxxbsp42//Md1+ + LF+/a0lH91V0dAnYrLF4wemMck7bIuC9oMrokXzESqOSbV1Lrq5vY1yFgWdxNQV+sI0CX2vTGdQz + 0S9oklYwj/2WJgeqph1FNBSchehrktzn6c7091qLKoMwPGYAyD4qiLBqrDPN2ppUYaS/E0F5XQ3b + 23sVSV9hq6nIDlQ/W8UdP03CggNcOzChI7ccIK7qQSZxQRI+lFVP9SjHd2RK37lNHVX1zljcYCzi + ti06qJpyklxUzzl425yz5vdWWVatJ98yNFp+EZ2ReEoEXE51B7CU72Pex1Xz+2nBFlZS5c19TDp2 + xVR7U6Cn6yw7+1m26if58gayXbvWdssDVZeWy+QjeUbjnM+IZFhvmv3CyQON9qq1Vz+cDlhrq67W + o1hUdOpfSHhf6z406Nd2Vb/+zqYVnQvXrORkQWMmGFVMi6pHO6aPW1a4NqYs1eJ2kkdRW2+h2lSt + c8LE8/tbBN20YfELZ1GU9U/AQbmsWtTataWpmvnOSIr+QMdJwqcsBkWl9DRdp2da7YyaFUZ/32bU + dayehdsYdVXj/4KFMQvRlRSE79aoLb29Vk2JVSP8IiIhnaIkRmdEbQxLNUwK6Tnhhas0tHv2wHc8 + 3DFCskilqyCVpxeYrm28+G8ho+lSXMKM0h2nNGQzFr4sB+I6z0AXpxREOowZGEFkTjgcQt4Hf16q + 7+uYCZD6oMihqjNKJ4Iu0kgeD38Y5zNwe8g9XLD8uPm6WrFXVRnUVJ2+4iTOpI9oDF8cqIouwwur + QMNmoX86RkQEE7msgmX1fDcYeLbvOqZpYtPoGFESz5fnu9gMeja2HNv1LGzCnyyRpCDl1dhZo2OU + z9V24XMiVpkzgj4JqMQdyxA0OApJjEgYJosEIiEIo7PzyxG6GX39dnw66qBHJu4QFJkWTjKJ0IxS + lJJnGAGICCTu4CLLWEFvHQlh8SyRnSbOF7eUQ8ij6DaZMYROmPB50VmwhY3isLzr6/GvR+gk4TQT + aEz5A5NrfEo4rFyq+MarU1vDHK9Klze7rgEUoHzBhKDTyWrBlI23Xj5LG1dwpmMsyNMkKpyvoWPK + iPfbkpc3zcpdccIiyjcL/wUJUPSB0ccJW8AQzHlkDI07IdJs2O+H07jHacipFFC9efLQT/PbiIV9 + wEL0zaA/CPo46Dt+X47Nie8MAuoHYde9pbddOwz8LrFsr+tY1CG2a9HAcyeeafYe6W26zL6acBJD + 4GmZgTVZkKdyZ9HymMVrpkseQz6hsYxuGbwYlX+++UEAB3txThUDDMJ2EC5bkBTutSzYltH8MQy3 + /80+fxp4o4E3HwW8wUEDgqm5Vx68nl709KJ36/sZ2KRwg93rdPcfDs0GCe0FannnTRnUiuStgwOl + Pod3o9OrdHqVTq86WHqV2SC9ytRqSqspvTmx3pRqd9qM2UBNFZzjlztQaTWlgzV67/OPiRL+DHmZ + uIG8KsDHO0ONtbz67VW/+RcAAP//7J1BCsMgEEVPVHCM3qNX6KKLUii9/6qUCRQlxDEkpjHvBi5E + /pv/x09DTDpzF5GL+NCaon10hnKd3SVOcoge8EoMPwMLeAVegVd7vz1/qH8sQqb4ea+2DlcLGcwq + vHCqpbp+XrbCK2/AK60hrk7ogFfg1Q8Vro8XeHVmvFJtU9I/4paXFxDWIaxDWKdP/WMRMtkMeLJv + PBr6BXheiBrT3Huq6c1WeDUY8ErbfR14db89D7P38D1sdqbdXiLwCvdq1DbznQAD7hXuFe4V7lVL + /ZONjifbv8kUsgC6jhYar+KBps306DansmCgMu3aJVMIlUFlZAqXml7BkCkMUBlUBpVBZS31TzGK + qP24WPF8ywOVkXRu1GpbpDJtvq128Iki4pXhlbHplWib+U33CJVBZVAZVNaMylTbzDv42lbLb4ZQ + 2Xt9r+wDAAD//+yd74+iRhjH/5UJfXFtqjCIgvjO7t1emtz1knO3lya9mBFHd1IEMgy6e5f+780z + A66ugCxWs9uOrxQGxocfzzzfh+H56GdlegZjOR/7iCpTHFpPqzI9g1HPYNT1N1o+K3MblDd0tSrT + qkyrMq3KLqbK3EMubAnTWsc/xYsI+g0O/QaHrj/WJv7xGsQ/no5/dPyj4x8d/1ws/vEO4x/gT0ig + n8QgjgCmK7cDCKEi8405+xZH5JEGVwbLg1WAhctSaPFpTXnBCvtuEIlJZ3L/xoKEqcQtLpecLmU3 + NAynQaxwhMYIm7arPr49wLbvSFhuCSmuISJujw13tcuG204qyOcbXApH/9qo1+ciQ5+LRm+7bQ21 + qwxlUbWdvZPstMtwqFckIYDLtCbsW+3F9DbO4LZ6NZDxWqZuW6Duy0C2Ay/nEMZKRYrGYRhv6Pxf + 7q/sSIJ7WwAo+Dxden6VvxtLF19+iQLsuhZlXW9mO55uaxv7ZQzmD3FATvSwZ+J1u6f0WOZ6fk3R + u2JD9JFEcyJgd2WdQ6xwksF2lcEfFCz1uY6gAQi+XzGq5AT4M/bs1I9ntQj63kkIercOQT/J+IJI + KO9ht+85WdPwJKu9+iGm1mr7JKudOqvfAXq6tNNfSPBXrbd6EZRxr+ycTujmHJTxEyjxA990Lk6J + 7w1Mv12nZa7/PWdhmFrXMKp+rvL9l8a3P7+z2sCLiYe2sVd1jy0H7lZHsiz0us7C8JhVXzsGUboz + 55kbo8EOwV7qTc93PUCvb5cquUwLSQkDVneS0IAtWLDbDkR0loIaTiiIcTjMcNDJkgAUPIDZ7fyh + UNm3ERMg6UF5g4ULSqeCrpJQkba/b6H3sMP8a1XNIpW8z5OT1Y1uOIlSqRwVrTz/Ub1BkVjYphiq + mv7dMUIiCu6945hD13fwALtDjLGtqPfRsljftbFv9m3Hc3tD7GD4yBZxAsK+HIZpdIz8PPc99GeG + cc9FfcgKRLHYvkEg6D1Qy2/uWIpYigiaS7mE4PSY6I844yjPfcjgLo7CB8SiIMzmNEXijqIFZFvQ + zZdPCM4qi5YIQOipicZzJblJuL8G/SgU9b2DBI1ER66FX1QE5k+IcIoS8gBjASJCdvFIqzfRbzFa + xZwicUci1EdX+Z7h0kjltkSF9eAdYFtlxzgM0TofR9HPT/7PKksFmlEkuxQxWjCxv7WMt37oe3CA + BvgNItG8WDbMl5mPqZ8N4RHcJnDnRNlqRjkkfdS9kxqjYceI+VLdN7ZjG+pnfqJuJ2/H6DrmNBVo + QvmayagjIRyG8bIEz96qo3mevdb53308uNCA8hUTgs6n2+hBEey3sUTex406hUbHWJH7aagiwtEA + ywz+08affz9s9xXeY6FrRjdTtgLnkvHQGBl3QiTpyLKCeWRyGnAqLztzGa+tJJuFLLCALGBh3+r5 + Vg9bGFvS+UyDoRf0F9jrYuz73b4/w92ZS3vdec/tBdghwwGZTT2MzQ2dJcVLNFNOIsinFS/STFfk + Pi+6USxg0U4VDrhejJFRpO0klVbdRntPLWwob9d1jhYQVx0d1vWtdBlPQLh585fBwm1aBfHVPC89 + cjIuXfROF3r5D5XfPPYUwvYbsClxs7nx2stoL6O9zP8R0bT/iBT+YPc2ef4TUdxgRrxi6Q6e7Yvq + 1NfTcAfavoxYx21SofbVBDq6tK8GU74ocgpuMDEMa4mlJZaWWFUgIM2nbBLWHJVYCpG7WzhKSyyd + yNGJHO1lzjwL1W6guexmFXu15sIVmusfAAAA///s3cENhEAMQ9GWYIGStv8WEMoNoSGANAzwmoj8 + YyfGXOpUTm57XtdW2Sce9/aYC3NhLsx1urQyJMteJ+4yiY7LGuZ5Qztl5rmWlKd1V/4SzBWtu8eT + PXyu+2cSn4vP1RRzhdLZU0N9d8ZYp4aoIVHCD4R8MrJmtSberOSeEjUDpkzLOR7MhbmexlxDgrmi + U7fDXLKFly4oFhX+oJ7c7Q6fysGe1/lcoXTKpQMDn4vPxefic92ghlbb5c2ebpFEt6VuSwWf6w6n + MYFqUbQrkgjVoBpUu4hqYyKSOEI1qAbVoFptVAulU/buo3aXd+8NkDdAblQrDqcpgWrRvnvc8pdk + vN/pl2TkqjXlqoXSKd/ST1ANqkE1qFYb1ULplC3/6OL1S/H/pY+tMwAAAP//7J1tb9s2EID/CqF9 + 2IbZEvVqy98CdxkGNE1Qu+0CbDBoibaJypJAUXlp//xwpJTEDWU79pIlAPMpliid+Ha6o473mIyt + O8KbTTqhl8Dt7nTVFJJ3YFw1EwBpAiBNAORxrlq0R3LFyLhqxlUzrpqxhl7aVYsew3c1SHBjDZlU + 08cDNcx2ELMdBJTJTmtoYKwhYw0Za8hYQy9tDQ0eW0OAxFA4PmCljgAvLK8DDKSCJJ5w9q3IyT2P + rptVCAWATVdXUO78ivKWbPbdIpJWzaQUa0GySpJEl0tOl1IYzbJZUigwpDXC9iCUUELsD7zQizGQ + ZTW4uj05dRuAuvFDQN1dJEITpfDqEeRDrwvgfDgn2xDrXR1vd7yiyVeWoyk0npa1O8IYXZy9Ecq6 + q+MXj4tcUTWfa/i4XlfLFrXoblr3qKYd6Jp2siIp/a/bVIdMHpOSAHjWmbBvW6flO4lGPbSOcZci + OJGqVi8RYNxbUdvbh6y2tutyAaTm59F3gQ4Q/b5IFD72uXSetx0cf0GLsgMt7kaGG/9quPG7RQ+D + rln0haVipe9i7xiJOo3xZ4V+by9EZyRPiYDb6YSDhXZUhd2uCr9XMF0t3x0fIzIMOmbTZ0VQ3iY5 + PE6yv30eNw+g15Xe22C+R7p33QVLcpagqbTq/3/m+9NFDXTGyoRePwfJ3tWNz4uMJIr6fUb0wtxD + hB1o9B1UL6yb6mekRJdoXBQ8ZTl4htqhH4Z2fFD9fIw7hP61S2g49O2Bf5BQnY3wB2dZVjmnYJp8 + 7DISLqUHTJTb2TDVrVFgD334C3uSZi5NBel3DvHQB7fz7qjynWnrWoIe7U9KmrAFSx6WA4+6rsAp + Lil45qAKQDGQJQHmeQIh3fy2dbkBPg/+PbjhUNsFpTNB12Wm8ODfrfMF2CDkK9yw+bfbK28Kbi80 + 5SSvpCOgYOzNj+4L2lWG3ZlBe1ZGBBO1rJrv28Mo9t04diOMsYutnpUV+bI933dxbAdu4A4DHAew + AABE+6woSnDw9bBOq2c1fR7E6O8aYy9CIdw4L8Td/gNBbwC1Pl2xCrEKEZRK4xtB99josqg5ahZC + pGFZ5NktYnmS1SmtkFhRtIClFzT9co6gV1m+REBvr2x0kioPimSbZ9AvQkHte0jQXPTkWfhFRWL/ + iginqCS3oKEREVJEcrcyYaMPBVoXnCKxIjkK0Li5MwyNSl5LlLkNGgquVfU4yTJ01bzU0G8/PM+6 + rgSaUyRFigItmNi8WpoBPwUxNFCIf0YkT5tjIW6O2eh+Ieia8BzmC0yhvF7PKYfFHzWJKuX5FXyp + Zo7rQz/Cz6arPk3enaDTgtNKoAnlVywBrVASDu9z3VLPxqmdKz4bpZvnvW9eKED5mglB09mdGSHH + yb1R0cj4+NnqWWtyM8uUlTIKsVzS/7HcVHX248L/wD4YesXo9YytQc3UPLNG1kqIsho5TpLmNqcJ + p3Lg2cviyinrecYSB/gGDo4dL3Y87GDfkepnlsYRiaPFok98j/QD6g77c9f3+hGJBp4/JIE3D2YD + jO1rOi/bTTgzTnJYWGs34szW5KbdjNMcYPmDr1wwYqyR1a7fSW6umkgb3zJcSKTX95+ev9ykEzaJ + Pk06YZNOGDTIbmymAviaaHoTTW82Ppto+p1fTMG46H8qn/6BFO8RPK8wv09PwmD2OZt9ziZczGQP + fqxwdoSLYeNimXAxEy5mwsUOJrbgPVwsxet9mH/KLOS0TXrK+GaOf0Ns2Ssivmm+N8RIMFrmxYNS + 3T18LoX5ffVpgP8FAAD//+zd2w3DMAxD0ZWSNulG2X+FotBfEPiRp42eHQyBV6TFk57pp+SnSTcz + yW0pt6Waui01FpwBHjEX5sJcmGs3c4VkyXXx/iZRvaxhnjekb7RkYq7eWjJfBcwVNb/1yR4+1/Mz + CXNhrqaYK5ROTg2Ng3aDbXXRzbaHGqKGrlJDJbJmtSbeLP+e99QUYC5Ths/1B4HlC7t4s8wVfb0D + 5uJzOUXnMO8x5gqlk64pePO5+Fx8Lj7XA2potV3eLP8WSbQQqhD5Iom7+QiqrQZPBtWir1ckEapB + Nah2ENWmgkjiBNWgGlSDanejWiidtHcffb31n+K5alw1rhpUO9LFm0W16Outt/wlGZ/PE0kySjI2 + lWQMpZP+Sz9DNagG1aDa3agWSidt+Udfr1uKy/kx6y8AAAD//+zd3W/aMBAA8H8l4rlQ59OhbxtD + W6VWnUa1PU2VSRywRpMqfFRr//npDB2lsdOQhCyMe8bISRo7d+F6PyyzxkYf+KtajsX7bqq29nop + pmpYAIkFkFgAWS1V8wo0V/QwVcNUDVM1TNWaTtW8rMWrgMIxGsK2Z9WLHuH5eERNGOFws44URkPV + oiFaIBqiGA1hNITREEZDTUdDNBsN/TzrbEA+MEwvwL2V3wMUcs0kfkjFUxKzLUin1wphAOB0yzmM + u1nx9EU2e+4wyWULOUsnYrO55Cknk5RP5GR8NrsLkjUR2bkgPQplAgqgrqBMt0PSDV6TdH9rDzZ1 + CU2y1X5ZAN3U8e4i1uvuViXd3VXZsNciLqJzl5wSWvJmiVi+mB9IPfdVf0lJMeaK5zziacpDFOVz + b1mVUDtgDwxQ1vOReMq9yCMZ95ZdLZZutSTLhX65mJWWi6PSca+SYA2d5t5PcEAlz1S1RgdJvKZS + DzUrVenKoykL+f7rEyX3eiV3799J7maVmS3VnfwpFSv+yH4bo2UaMUnXZqf9nLIVn1U6a5r/pDvg + Wdt5Zz0ErVo56UcW/OpexlWm9h3ds++HCDU3l1UKmfdUl/erCGIRGLcy7KwRYy/tojsW7Tl+62X7 + Sgh7o7q9Y/Z7xNTI7yrzXWLiLTTflW2TdsB3zQiN9q4ZnaHeleMUzrtvW45r9QkhlsZ5d6nlUtvf + 13l3c3B3uPZGwGKDBUFyn0COaZjG9c23ofF9+OVycDU8Mx7FYmrAkC3dHvE8jn2bY4o4SnTiufNf + gOe38MmuYu6pyfMMje7tQ6N79dDoJj23CdDoLrkzQ3vcJ2PaHdPQ7jrEi7o+D50udwlxmGuFfZ8V + pNHldvZKRn+pMK4ZRt/ZNd9bYfBKBF5J3LMHONzNWM1qafi1ftH+AdjJFBtXPJ96j8EmUXTcYbBX + MrbGObUdpn0g+tt9SJuevA1zYGA7YhyE+cpdN6xQOcSuo11Ax1qhUiOGjkEPBj0Y9Jxa0NMkhI47 + DO4wuMOc2g5zBAg65lktI7Gwhc30RP4T4A8AAAD//+zdwQkAMRDDwKbTP9dAnodx8DQhZJZFewF0 + FsSCWNCaBSXj5wiDMAizRpgHwud2lp3l49o9KxI9Z0EsiAWtWVAyeI4wCIMwa4R5IHZuZ9lZdpad + FQmdsyAWxIJYUF3kHJiACZiAqS5wbp6ZZ+aZeRaJm7MgFsSCWFBd2ByYgAmYgKkuam6emWfmmXkW + CZqzIBbEglhQXcwcmIAJmIDp/JXuvM+zDwAA///snVtv2jAUx7+KlWcgdhJD3De00W3Sqk7rZdvD + hExiirWQRIlTWu3LTyeX0kJIA91KqrlPQA458SUn/3NM/dsfZK7TM52e6fRMp2evAjHXKkirIK2C + tArqHMBcqyCtgrQK0iroVeDlWgVpFaRVkFZBXQKX7wDvtaaWg49maLnl0hFxLOZYFrNshzldZZiP + 2C765zhvcS3RMQeTNmJHXw0b3D3+839ChT8KMv2ILPGjYL3psBlI3DCXyIEuAbqzzbAVKkXjIIhW + wv/L92hd/IEQNweG7b9xeRxYulXX0kkgPJVID32Mol9ZPR6Y4kO7ti7OfuNKJE3uXkhpd8muuNAA + K6fOsTDpTZ2rMekak/4yTLr7kslV96z7lKJJ9UV0xkOfKzhdnfNcpL4BsHjd8+Y0C4JDQ+JuV6O6 + uH8hVs/Ew46j7q0hrpNi44eEBZ17XhZzmDAiTSFB6QIV3sbDAWaHOcU7nH5/zilleEDdg3q56ekt + 1f3fn602qYs4XwLuCR9FITrj8b7Cb7ezA6XCIa5Iw2SVgVT10exHnujzIsMuEfDGCe3l0PVcBeWZ + tYtdZhuPPi1KA6JKniFg9y9i4cm59B7bQcEgSyHtjwUUHmBMYYT5DQeQugfFzOS+qihchVJB+QKq + DNDCuRBTJZZxUNDJfxvncxDn/BecsHz5UHR4VHEoTXYdvkx4mOaitKC6l2/qTKuSyTbSfA367BkB + V1JleRNse+AOGWGUUhtjbGGjZwRReFMd7xPMBg5xLEKZPWTwl1tEMYxXPR/U6BnlgFICryP1UA5W + 4g447pcLmSLocOTxEHHPi5YRVHcQQWfnXyfoevLx07vPkx5aSbVAYOIXqpwHaC4Eivk9RE/EFVIL + OElVCxmsqzsynEf5xNzyKVM0fj9G76JlHEgeqq0v/ewZYbaciQTKQMUkS4usM0puihlGbGgavC2b + enXxfoxOo0SkCl2I5FZ6EHtinsCzva7o8+TQs7WfJ9blxa6bDQYiWUqlhD99kBR5j68FRunjEo70 + jCW/mwaFID6hOK/rb1p+vW5nd5lwGYhk2/gnLAWIWylWU7mEGzZLAuPEWCgVpyem6fnhIBFeIvLk + eXAT3ZpxNgukZwLMwMTMtJhpYRNTM7+hp8ybObaL/T63R37f8Yesz13C+iM2G5GZTcVwPp+OMB6s + xCyu1iGmCQ+hGletRUyX/K7YNrB6L8P1NoJZCHv8GVXFL0fiFlP3ybIHYe2WPegGfnf3XbmB3y0N + u0HgbbvH4qlM0AdwW12sXvPQax7/25rHc4sXhLXAYeJ2v7DX4YUQ3D32XDn2G5d1NMx3eTlfZCie + hmdCSJ9Yzmt3oEXxnrf1kZ9r3d07GC6wfxXvv4KKW/yzc8HtpfsGofo0ZlPggFU31M2wDUryzUgb + zb3U3MtOcS9xix+RYZ1N6WxKyx0td/aHseAW2RRpt9uvzqY6qWh0NqWzqbdGYiEt0ivSbqtfnV51 + KRjp9GpxaFGnvi7w8gH8AwAA///s3UkOwzAMQ9ErZTxe756FFkWKwpGDxs3wbuCVwC/SYtVGZ/WI + O+BVn7jz28MreAWv/j17TrhNzgiZzWu90bhbLWR44adQNPAKXl0Nr4YEXkVLb3VCh3sFr96ocCHP + HF4dgVehbbb0T9/t8MnpH/pHWOfZeBUiZdhq7J4TnQPGC/dKFvBR25uj8GpM4FW07HbwSjhwXyoZ + XtXPoNu5V6Ftym0DI/eKe8W94l611D8fq+OvRd0yhT6A+qHFU280laYElUW5rkwhKkNlzXI9t6Oy + KZEpnFAZKkNlqKwZlYW2KVvxUavLineWx90MSecWU2lOUFl06lY7+KKIooi8MlS20jbln+4zKkNl + qAyVNaOy0DZlBz/adF0zRGWoDJW9fjyVFgAAAP//7J3vb5s4GMf/FYt7sTtdAgYC+fGu167TpOs6 + LemmSpsihziJVQLImGTdtP/99NiQNi1OaHPttTq/2gImT2wePzxf89QfDSZ3ryoLm2FyjSoz+2+Y + CkbzrkzzrixssL1haFSZUWVGlRlV9myqLLwPyK0hd5v8x2zvfMC+8uYvOEytEESRvflP1+Q/Jv8x + +Y/Jf54t/+nez3+APyEpgJK7OQAuqrwOgIUK53fE2Y80ITc0uDrCHpwCLFyRQ4vzFeUVK+ynRTaw + TWtgzUicS/zkfM7pXJqhcTyOUgUvtAbYhr256tBwDZlwWzC449swuE0VQbmU9Tow592+jq2rwJC1 + Bk84W9H2+8RwzrWc8zou7PGCRldpIdAI7lctQHSAMfp49nKg4wbmDpDzOnjxGUvQh2KJUkCMppkG + K+w+dmhdnf+wRO8+3kHu061zn+GCTOm/7Dc9TxdznijIBZ6GUt/gBoaPvYN1pORjkhHA2zpD9mNn + b0/SAp5oByDMg46mz5/pgkUxRX8rZuhDqckNLPu7R7v8AfWPFu8Qy17dRJUPqzW5RsOCz4gkxN43 + +46TFY0P6nV3d5DY2Wv3oF77u3r9FuDJtUb/ItHVzof4ftO9jm4mf2FTjXO5vUMs1s2q9zl6W12I + zkgyJQK+rs44ZKAHddjVdXjHdArxK8GeH0B3D7Adho8yWpf1vuMsjnPnlHGKPuli5OWLR7t36+LR + kK6fAO3+jBR5P6gxdVrE8VN4pKvxyMt9Hum7HRv3HmM0rBvKjyxKWIRGUshqhvJbyyJKaJYAc2sQ + 3OLcS73Zw10XeO+bo0of00pSQixpDzMasRmLbrcD1VzkIH8zCuobQgAEBDInQAGPoHCCX1ey+iJh + AjQ8SG3o4YzSsaDLLFZo7Z/W+QzSHnIFX1j+V4dOVYvOZW28vtGIkySXwHiFJy8/6C+oVhI2awq6 + pr9aVkwEE4Xsmu/bvbDv4a7vdjDGHoxmnCbz6nzbxX2743YCjMMutMCqRZqBsK+nX1otq7zPgYe+ + Fhh7IQp8OJqKTXFKybSH036UyX+oBNyzHBE0lRmbhN3b6DItOCpXPqR6T5P4GrEkiospzZFYUDSD + tRY0+nKO4BazZI4Ag57b6Gg6lQNH4u0z6HehmO8tJGgiWvIsfKIisv9AhFOUkWvwT0SENHHDqrfR + hxQtU06RWJAEddBx+c3gJ7m8lsRxulYxEK5V/TiKY7QqExf0553fsyxygSYUSZMiRTMmtq+Wz8Xf + Ag8GyPfeIJJMq2M+HAvwG1uNplMO51fw7HImrAlPYA7BtEqK5YRyWAJSEyu3Br2WlfK5mlSu71rq + Y3kXL4YnR+g05TQXaEj5ism0LyMcnu11qz9bp/YuAm21Ln/uzWBDA8qXTAg6HW9SCsWz3yQYpY1P + n62WtSTfx7FKHwYBlkv5d9uN1K2/3/gb1E/RFaPrMVtC5Cl4bA2shRBZPnCcaJrYnEacSje05+nK + yYpJzCIHOAMO7jte3/Gwg3uOjExjrz/xJ3SG230Xu+0OcaN2D4e9duQGmPZovzOb+eMuxvaaTrKq + eGvMSQKra1UB13hJvpcvs6oDLLn1dgv8xxpY1SKeZNSqObb1DsOFze7a/t7txJWh+7v8auPJHSxu + 2fxlkHGb7on4auC4hnVgWAf/1V6/br8BqRI3q5Q3UcZEmcZlGqVHviKUgXZnfANs2n5hCgPVvsge + /n4UN6iPV2Td4MGxaJc0u5vuQNuXkeuETaqdXk2iYzCVhqPyoraUwg3KxLCRWEZiPSgQmuTnf8U7 + aJLW7JVYCph7exspI7HMQo6JMkZiPXFNqttAc7nN9u81mstoLvOnOYnKMv4BAAD//+zd2w3CQAxE + 0ZbybIv+PxEyfIBg1wnSZhOdJqy5nrHHafIP5hoTb3xHzIW5MJeF827mCslSa8h9TKLtsoZ53tFO + mXnO1jpbk+WUYK7o4N2e7OFzHT+T+Fx8rq58rlA6NTU0DnuMdWqIGhLy4XO9JMtUK+heE6UDpkzP + OR7MhbnOxlxzgrmiYXfAXLKFf8V7vKDzgu6pdMoVBDOfi8/F5+JzHaCGPrbLX1u7RRLdlgo+u/pq + O5yWBKpF7a5IIlSDaq0PUN8aYK9gjy2JSOIC1aAaVINqrVEtlE7Zu48SXt69N0BuVD3oaDic1gSq + RRfvdstfkvF4p1+SUZKxK1QLpVO+pV+hGlSDalCtNaqF0ilb/tHM65ciVINqtwv/UrwDAAD//+yd + W3PaOhCA/4rGz1x8v/DGSZOezjSTTiA57UOGUYwgmhrbI9u5tH/+zEo2hCAbxyRNOtEb4IW1zGq1 + u7p8724BpNsiVROAXk+lamoBpFoAqWbVDkvV3BaHK7oqVVOpmkrVVKr2BtHQUxSvBBCuoiF11PTh + p72q7SBqjRE4k73RkKeiIRUNqWhIRUN/OhrydqMhQGIIPB/wHEeAheXfA0akICiOGf2VxHjDo6sH + GYIAsOmKDOTObgmryGa/NRyGJMso1yLosz0NL5eMLLkuEkWzMBHQSG2kD1zfc4BY6Di+F1ic4Syh + 1bXE1G3x6Y4e8+nWCxHKRQp/mG494VP67x1TbsvItF+TUBAdXwlV7smovxyaOOaWJKeFA+y5EeXc + qFOmEsxlAfjdseBCvvCzNcw6vn1S5PWAe+MgwH0jUbkrvLYZPO82Q8GbwPMdVfpmnQE1WixZEMbI + vOvfKWvnURILkulr9RXHbAbNNzxdv2tDjTq7pXG92ZoHmS1QknZ5xCTPXqlvdkRJN+nbD1bnQ53s + v7wU+NkmvnpT92yh2Wq2ovIGsuf20v2aTVmv4b78Dj+gScEWmHNrd9V+ZviWRAe12mv2TK/Yaqup + 1cdAsZYq/QeHPxvHuP2qfbvON/5H5zXGZfqHaJSFSV8ydFx9EZ3ieI5z+DmZch4wHtJgo67BDd3J + 7YRqbxxcaf7w8nB409VlA8B4HXGjszAsUgxPmWQZRNg14Pbn6zYaFNMI0OwvpsqTeYkJudvjjruo + gln8HVWfGY2ibHgCweB53TDeSV3HgaZTy2Rj6EkRRS9vlpYuM45TnKIf6ChJ2JzGkJlKfY1rDfyg + m1K9Run3fUod2x4EbielhsyffotwKDjypzh97vBRr8yVGcs3GsY0RFOexdcYy1VPwyLBLuHx2sge + BJbn9DiznYdCPL32AtsFjvz6U1EhIFUGDX6zP0lJSBc0fCwHdYMig9Q/JVB/AHcHzg8vMRDbQ1i4 + zh6qwsJFTHOoYkCxAZq5IGSWk1UaCQj6b+1sAaEr/gk/WL6UVR1KkbrLU4bjjIffAh9fvpGJVpWT + dQ1FwhDtaRHOaV7wJljWwHcDy3QC3YVqha71tCiJl9X1vqEHA9uwncCzH0skKbhJOXpU62nln+rY + 8DrJ13socnIPuPjpDc0QPHAU4hjhMExWCRR5kIFOz86P0eXxv1+Ovh730B3NbxCIzEX+gSO0IASl + +AHsBOEc5TfwI1VBZLAp8tB4kXDr3NFJMzT+NEZHySqNKI7znS9d9bS4WF0TBqUgYWmZyIwSthQW + ZlhgX/C2bOrF5NMYnSSMZDmaEHZLebyXYgaDuqzys3VpbwFoS7q82U2zQYCwFc1zMp+tYwn+xDeR + RaljCld62grfzyIROYwcnZf4n0qeX7aTmzJMI8J2ha9g/wy5peRuRlfQawsWaSPtJs/TbDQchvN4 + wEjICC/DDJbJ7TAtriMaDoGLMNSDoRkMTX1o6EPeoWeBj7E+t3A/wKHRt30L97Hu+f0gCHR/bhrE + M/DM0/XBHblOq807M4ZjqMhVG3hmK3wv9o5X72m82UtexDCJplVVP07bFaa7NQNiwPF7fWvvqedc + TeXKGnvlE7JvKfg+4L5tYYd/Dd9XnQuqzgV9K8qmEbSgbOrtFt8r96Lci4L4fiiI7/bMKtxg/yJ9 + /kSq3mKRvcABO891QvI05mmAA1LvI7px2yyL+mtCG7URWm2EflcbofUW68l0lU2pbKqdB1ThzocK + d9oEMnuzKUHyfXwylcqmVLFGuZe3qRJ+hHWqRov0ymh3MrBKr1R6lb3idp3/AQAA///s3cENwjAU + g+GJkJq03QOxAwcu7H/k8E5F0KQVSlP0DZHIf+zYPzpyeR62tPEe5VT8XSVwqqgETvAKXsGro++e + DvVPjZAplvrGaO9mIcML7+LBmBfOCz8bXuUKvIqR380JHe4V90obArxaaJuS/knDDp+c/qF/vsqx + 6+N5XwYOUkqXlKf+3nXUIOzHqxApuTT2PVfMErheuszjwCvXy9nwaqzAqxjmHeCVcKCyOe7VTvcq + tM36EMHIveJeca+4Vy31z9vT8cddb5lCH0BFlnnq7fZ1i1QWG7wyhagMlaGyvVQ2VWQKJ1SGylAZ + KmtGZaFt1q34WN1lxavl8ZFU0rnRlG6RymJud7ODL4ooiiiKKIq40DbrP91nVIbKUBkqa0ZloW3W + HfwY2NVmiMpQ2a23/6cvAAAA///snV1zmzoQhv+KhmvbCGzA+C5Nk57OJJMzcZJz1fHIWLY1lYER + kI/2z59ZCZw4EZTgOJ20urOD7I3wIt5dVvv8qdTcX0ZliqwbmKjMVDCaCkZTwdjxWZnfor2hb6Iy + E5WZqMxEZe+pf55zcjUQb6N/THvnPRqtwh3xA+1TNf3HDtF/LGihfwKjf4z+MfrH6J930z/BS/0D + /AlJAZSEwQnwWOXngFqocH5Hgv1IYvJIg9MR9uAQYOGKDEZc3FJRscJ+WmTLK62Arz2LrFaCrqQV + yvksShTA0JrgQeBJnh4ehX6APUns1HDiWgLidshwx0/JcNuSgrLa4EOQsh0dBPOYpASIjPaU/WiE + oE+livggkO7fwD7/DTD7kQ5Ie5ZE5JBYecet89ykyOtd19nLdRvxyV0hte+NeW+0F+jsTddkQd/Y + 0Nitg143OgxdUiHoouvZ1K48m3QJ2OTDLAFBWDdPRaLWmpOg9UaMevO1oVsDjpNYgVb3uCJbcOP9 + Jm78tBBLIumpL01/EeSW8n1se0Hz0ndD1yziz6jFLRa/FrMeNs36BMDCWqOfSPS98WduAY8f1fnX + f2xRw453R/tY1N2+v2bopPogOifxguTwdTrjUjztM2GnbsJnCk+rXX/9vRxrVHMbLz2q0TLey/Kw + WUB0dekDgdHxwB13MRroVo0pvTsEY34PBjt2BmGnk6o7pWr5Z3PGAUT+ZvNzfew2WOMUXURRkRK4 + TmmWQbzyZrY7099fb6qjLurkMbqg4bTgvKvgazClU9JfBOM8s09Bo1zW3bi7+UqTnGX5wwEm6OiW + 0n85iegCJTE6J3prjgzyiQqwS267NfF6EpQutZCMrMd4OILAevtXlRagVfAMt4n+NKURW7Lo6ThI + FhQZRP0phaQDzB7OBVkRgJ9HkLIWD1U24TpmOaQuIMMAc1xSOsvpJuWKKP7TulhCoEW+wxeWL3UJ + h3JI3eErQeJMSjZFYi/f6IZW6ZKm1qM9i5Oc5YWcwnA4GPuhG45938UYO9jqWTyJV9XxvoPDwcjx + sIMDHMpchhyRpLCY6OGeVs8qf1DPg9dJvt0HkdN7YK9frVmG4ISjiMSIRFGySSCzgxx0fnF5gm5O + /vl6fHbSQ3csXyMYslCalXC0pBSl5AGWEURylK/hS6pcyOAxs8PiZSJd84VNlqGjz0foONmknJE4 + f/Ghbz0rLjZzKiALpJwssybgsolYKQ9zho6l3pZTvZ5+PkKniaBZjqZU3DIpb1Mi4LauS/rsHPpl + 7mdndPnPPk4bBlCxYXlOF7OtmlBM+622KG1cwZGetSH3M67kysTDMqH/fOTlTbtxV4IwTsXLwd9g + Dwy9ZfRuxjZwwRaCWxNrnedpNrHtaBEPBI0ElQmCwSq5tdNizllkA5XAxqHthraLbce15QU98x3q + Eicc90N3FPZH1PP68+F82XcXQ0zw3PNDdz4LMB7c0XlabcCZCRJDMq7ahDPbkPtyI075nsWPZIci + hmdQVpXwkzxb5bo7zzscaIzXH7669bhpCGw6dpqGwH81b8UJW+AsFVHXlNObcnpTTm/K6esfp8Iq + 079OX//0FLeonlfc3Vd3WjB7ms2eZlM9ZvY070iZ5uoxbKIpUz1mqsdM9djr8Sq4RTSlALpP20qZ + ZE18ysRuVfc4MHiVFiXxht70ByVrDlWc6rQIrxR31zTyNZuT+YE35/wPAAD//+zdwRGDMAxE0ZYg + gUbSfzFMRpfAEMv2BB/IawL260texznnF0J3OM6ZKx7yneEVvIJX8KodryKkZOW4709Qc5Dhwrlw + eHVrF34VXj0q8Cp6d5s3dNgr9oq9Yq922SbLP/OkkeDwGzJe7hvqGC/fKP/UBJnDDPi0hnvtqBaA + V/DK5wVe9ZXjpngVBboTvPK0Lnvlad1OexXZplwt8GSv2Cv2ir0aNl6ObJPWcNspNPSpGRcY+vzV + 0OfCctyUyqJA104hKkNlqKyXypaKncIFlaEyVIbKRuafdBUxCnSbT9a5Mq6MK0NlfeW4KZVFgW6z + wbeKaBXRKqJVxF22KV+6r6gMlaEyVDaMyiLblA1+FOh6zdCCNFf2+niK+7eC6rsr2wAAAP//7J1t + b6JAEMe/yoZ3l4hdnhbw3Z0xd01qas72Hl40zQaXltQCAaxp++UvA9LadkGCZ5V2fKVhZXbZcZz/ + 7sDv8+2VsQaqrADo2qjKsIIRKxixgrHlXhlr8HhDhqoMVRmqMlRl75n/vIbjSpDdmP+Uj4TqzN2q + 0NlXfdpb1SL0ZRKE4uWV0zRN1XTzvS+dbtEG3d17DPpwzx+zG+Q/NuY/mP9g/rPv2POJ1n/st/nP + RU8pKIA5gHIA+Nn8e4AsLHB+X5PgIQr5Mw1ORtiDQ4CFW6TQ4vROJCUr7FHhT3BNZaD4fJ7moEsJ + +60h9O0F7W24Tnt7KhNYVRB0Ake9F9S3pdeTcyciiiuApE5Lk6aM3nkSeXxL6vaBIemZjIc6EVm6 + K4L6eyHpNRkZeMhjDjTQo2nwUOuw0zxotvVWVo8ur/FWraVJmd9ArPGBM7ubmWwJ7W0/obKrOozC + gim6q1+kJos8w2vh3USLjJzBiaXzOKCUTMZtjWpVRoOw2qa+yeaucOw1TvsZceybLesyV87/l5f8 + nkwXic9z8Oxbs98TfifmW43arg9OOxy1UTfqETCZpUa/ce+mNl9p4NdmlV//DmYVzqU521iU/fsc + p2RUfpGMeTjjGZxOZhwS2zZIblvmWVOx7DhJncri0pjH5C8ZRlEyC0IQDdKgyPS+6XYA374FTL0L + rPiW2UI7b6EV3vJnk7eYjPUtvY1RJhvfJPDCwCNnuVitGN9FT+F3IgGwdgEpVwZm3y5ea0z7XHo6 + 1HLcddJ9oYVFqS4hoqnTWHiBH3jr7UAhL1KQurEApQ1zDDPOrzgQvz1YGkjuSwl9HgYZ6HWQ1TBS + X4jLTNzG8wKj/aic+pDE5rj78q1MZa+aVB0+S3iY5slbgR9ffZA1LdcI6m7y6SlznpXEe8PoO8zV + Xd2mGqVUL3j34VV5XNWo2zc1y3AocxmFV94iikHLp7EIyUkUPS+Hq8z4ovSU1bxaDN5H2VPx/xs6 + vQe4e8+LbiNYziAaGZ/+HJFfox/Hw5NRjyyD7JpAk1mRvfI58YUgMb8HVyE8I9k1nKRcLGgIt3eR + bb8ftr11lP80Ly1bcxzHo6rNDa6aujBVblNP5S4zXYNT4bgC2fb7WzXtzA7hqr+HskmIz7P9QMv1 + yLbH8ILhZbsyhMo0FHcDkW3/v70A9mg21qN0JrXB4icsfjqo4idk26OaQjWF6c6O6CDItsfwguEF + w8th1VYi2x7lFd5bsuzQvSX/AAAA///s3VERACEMxFBD518fGo6hkI9nYmfTFpI47ua2t6yyrDr9 + qM00eR+vuO3hFbwSLy284raHV/AKXs3jFbe9/qP/6D/c9ncOXJwaOzU2vXmMV9z28Apewat5vOK2 + 13/gFbxqjZe57aWSVJJKrVTitkdlqAyVzVMZt73+o//oP7n+w21vV+ZbHpfOoVTitkdlqAyVzVMZ + tz0qQ2WorEVl3PZSSSpJpS+VSv/d9gsAAP//7J1dc6M2FIb/ioZetJ0akPgIxncep2kvtptM7LST + mXYYBcu2ZjAwIPKxnf3vnSNhYm+Mnbi219lVchNAREhCR++RDnqAfwbbVTebjqvYZRWR3Gwt37rf + ukSnASdtTnMIdYZULRudH3nLQL29oWa7arbrwbwyzbbX+kfrH61/Tk7/aLa91j+aba/Z9pptf1x/ + S3/Bqr9g1V+warZ9w7afTgs2hamhmCVJFGcKR2j0sOUEq78Lmr2kETquF+BuQ7ivWWv9q/7g91/R + 6PryZoQG/T+uwLh9PG+S1cpw0LDtlsGI9cSWJm6fCB3edzYjkjeRzM9OC369MU+YgnxJ72SiPBA7 + PQjbeMT9OGbleviyRCVvBCFvznMdoXQ4o2O258J568C5H7KYHpTT/v3Q4XdE6e7cnmQdTndAcwoU + WXvIP7FN1XueVUC/3S3rrtPWT3Zv0AOD4TfQgzUY/psAwzv4ZMHwrygwaSvwB4XFfat+eEV38lq6 + U92Pds35ADDut2cVrBt3huzhEFzzYxLiYYL4RV6/FTxJSvuCFwxdt5nf21PHw6/TehdVkuwfev+/ + SPSh1fV2yXSjl8DF0yGKSVqKebutmC7xLT+UwQlUuZ01zdzoebX36S9x7KXfGYTEAbezOVswuQqx + cC3BmpnDnMV8wuPldKWgoioBWp8zWJOA2oC6oVMKbPAYJtKKpyjOJCL+JuUCVjaEpN53jAljkWDz + PJHHvX+Nywk4QBJxv/izjdesqIf1Gm17olFB01IKVgUtrw/ab1isrzQrLW1JP3eMhAouKlk017W6 + ZyFxcRieYfgxOkaSpdPFdZPg0PKI7/qBj7vPKbIcHPz1QSNGx6gb3g/Q3xXGzhnyoZnSTDQhK4I9 + CijajJeIl4iisVSHCJrHQrdZVSDVmMpXyNLkCfE0TqoxK5GYMTSBRSc0+usSQavydIqqlIvSQv2x + Uvo0Wb2CfhIK/t5BgqWiI6/CEROx9TOiBUM5fYIxAVEhs4ibmQkLfczQPCsYEjOaIg8N6v8Mr0Yp + 76XKPQTzC/eqcvSTBN3XGhH98sXzzKtSoDuGZJYiQxMuVu+Wg/EPfgAV5OMfEU3Hi3Pd+pyFjI5R + v+0PtEihv0AXSqv5HSuibFJ3olJ501kxVT2HuMRQh3VT3QzP++giK1gp0JAV9zyGbprTAsbzdVM9 + K5e2zvispK6f97l6IQEr5lwINo4aGSHfk2dRUedx/afRMeb0MUqUVuj5GAzVi3Qj1dgvE/8DoVPs + nrOHiM/BzFRFYvSMmRB52bPteJxaBYsLJl88a5rd23l1l/DYBsSAjUPbCW0H2ySwpfmJuk7gjR0X + mwwzYnp+HJqUuMwMuxMc08CLvQmOAoytB3aXL+K2ooKmMLG2iN2K5vSxxq8vTvB0iccOb4zRM9S8 + /WcVv6U6EkvHz4upJDQJNl0y2hIopjJaihTbZjS+CBmrk59G1JhexdCrGHoVY0+QShLKcIyzJQsi + zeuylak5uZ62MmvQPe+Gvr3F5O/3cZqBbNvjXPGUrdYfIcQkjnfsCtSspr2h4qBpzZv87aFh0s5g + ss0WhSbx32yLNvlfOkL+OCZoUxsc2/7As7wj47P+044jC+uVh/gWCJVK2PhbDI52sdpGby1+tPj5 + Kr79KVmh18iarS6WpHITV7tY2spoF+urC53v6HMc8gqfS5F2He1zPcvgd6N8tM81e+8+138AAAD/ + /+zdQQ7CMBBD0Su1VZHgTNx/j8SsoCiTUGko8C5h+Y+d+LeYa94ck18JDubCXA7Ojy6EGxqyNemP + vDGgO25rhOcH8jdiLbHWtzHX0sFcy13Axps9cq7PaxLmwlyHYq5wOpkbmqd3gnVuiBtS8vmDC3SP + rXk6E29VJlZ1z1RGziXnctkpHc5NmSvGdSfMJefSLdQt3Mdc4XQuieDIueRcci45V/EFOpxO2w3F + 1K5KIlSDalCtdk03RbVY3FVJhGpQDartRLW1o5K4QjWoBtWgWjWqhdNpZ/exvyu7h2pQDarVTuym + qBYzvOORvyajJqMfO/zYsRWc5C39CapBNagG1apRLZxOO/KPUV5/KUI1qAbVrj3idAMAAP//7J1t + b6JKFMe/CuG1CgMI4rveXrt3k23aVLf3JpuNGXGwk0UgA2i7++U3ZwD74IAUrau54ystR49DZw7n + fxjP72Dc3Z1SLWfzOlKqyQ2QcgOk3AC53101u0FzRVtKNSnVpFSTUu3YUs3eKkpvBydHZkNv66+y + 7ZlsNS1bTbfJhpwG2ZAjsyGZDclsSGZDx86GnO1sCAhgOZAPqKlDoM/y9wEaMsckXjD6MwrxM5Cu + mlYIBgCnyxKwu1kRVpLNfqmYc88p96L6OEg4L1JAoGuInnvFnLt8yZzbbC4oNh6cBaD+6MzvP4JT + PxqiviVXnPiEMTJvOzq3yukFn/xifDpgsGsh17U+bRHs9pakCUAqgVx54BNribDBXyIPf+S06Rv1 + vPZbEsUVzOdBW5ei9XFNwwYuUUuXtVzftlDf+iAgohdf4hgDOFcb05+1y2XMW9G0jXdCz8vYB/T0 + x0xdZFSF9ShLq+M62hXXdwPSDVPgmS/8NX5SRgAlFrr+C3s/akNDAxy8VRWT/qXzCiY7GuzjUTSn + PifKqHyjco3DOU7h40TOIQPZa8CoasA1FHpb38dl36oIT/c5I7jOc38/z2Z9YCy+QPLeONVgStt1 + U3qcMR9z1PC2208Mr0iw16id+tjcdtSnQa9vz1o3bLeHzFZORVnEVRYEh2fJ26JTeUu9kHrKhIuQ + g53K2gsqTZ8OPzhHtCrGZP0R8wSJos5tgL2cVn6N48PNf2get+XrE6NBkGhXcMW+q0oSWq4BvWIN + /LdrDVgW6ukDrmvxijAAgeeodHVo9QYmPPodzijnuQKXno6LXF198ddcEZNSXcLVozuOiUd96r20 + A52cJSB1YwJ6GyYVTDG8wEAo92DHO3sqhTRA5UG1g7iGMfuETFOyjIMc+v1LvfEhr8Q/4AOLpyKV + XZhUHZ4wHCZcxeW49OKFyLSsFGxqBgJmZkcNcErTjA/BNHsD2zUsy3AcXdcRnLUgChfl8S7S3Z6F + +vbAGZg6f3CLKAYtL8aKqx21+Af3XXgepZvfDKTkEfDokweaKHDCFQ+HCva8aBlBUUNByvXN3Ui5 + H/3z+fLLqKOsafqggMk8l7E4UHxClBg/QWBRcKqkD/AhZbGg91zUoKEf8VkTZssZYVDFyOdNog7t + jhqxRT5XkInU/GXxpb+O/75QriJGklQZE7ai/LIXYwZXMFF949WhnWWOV9bFd30eABgQtqRpSubT + zYUzB8hvLqOFjwkc6ahL/DgN8nxk2Nd5cfqt5d19M7sJwzQgbNv4O/zyg6woWU/pEpZgxgJ1qD6k + aZwMNc2bhz1GPEa4aOwtopUWZ7OAehp09Nd0VzNczdA15Gp8aU517BHPcPyuR2ZW1yIEdWekP+u6 + yLR17PszbMynjq731mQWlz87mTIcLgisq6JZ5hI/5h05y9c0fO7QmYWwBV8t61Uqyxfltze1ewSN + 47rmzn7d3M1299zdTNrCsGKtHBk71LR96dncLpQUAUkR+FN9c5HbgA+pN9s2LsOLDC+72dfFVDwj + /LW8J9jwniCcqO7X+P23APUG28NzkG3/vUFILEjeJjhgdRrZjd2E73E2qY2EkUgYyUnBSPQGO6F0 + qaakmmoWAWW687/iYDdJZHaqKdSsta1UUyeZ0chijVRT54Z8RA3kFWrW01bKq1MKRlJeSXk1/1h5 + 9RsAAP//7N1bDoMwEEPRLQEFdf87Q9V8VLQoD6qG19lDNPIdO+M6vOoLjtn28ApewauvneQ+Lump + 8CpESq5K9jWCqoUML/wQigZewauz4dVQgFdRT1ud0OFewas36p3IM19/uK4a/eZehbbJ6Z++2+CT + 0z/0j7DOvfEqRMqQq6meCg7qGy/cK+b4rbY3f6yLzeJVVMp28Eo4cFtMB17Vz6AF410Br0LbpE/o + P7hX3Cvu1d6rnXvpn4/V8WojtUyhD6Aiy6ZSu2bYLJVFe6xMISpDZc2U0eWobCzIFI6oDJWhMlTW + jMpC26St+OiLZcU7y+MjqV1RoxLYLJVFUWy1gy+KKIrIK0NlC22T/uk+oTJUhspQWTMqC22TdvCj + GtY1Q1SGylBZo77XKUdl0Qn7PByVzQAAAP//7N1bb5swFADgv3KkPrTVGgrG2OYx6y4v0/awSdWk + SpUDbouW2hKXTfv3k51sazZwV7okEM5jQPgkyJwcA/aHyxvi+hs4QWyC7D3O4MAZHDiDA99gHJZ3 + j3elcf0xnMGB7wptH7rH+gfrH6x/sP4ZjHB/wLb9HtzlXRPle7Hfo6gLly50ty1NHrOl/THbtNEL + o1f44bYw9m0x2t6gvE2N/Xgnc/WfOw9PuzrP3F3kreGce+yFuodmzSfED0f7QrK9aPOvTGPza7/Q + tM2vfWcyB1D6or41xpMREEM/GAydIIb+ZAI+9hHwry193HqqX8rsizdZPh5a0K4sfVnkHZ0rEgPn + yneObPeG5mnEA8GHr5Y/gxFPREB4KyPewodzIYbJh/eF9jaQ8f6NdFDk/Rv8Cyzv21QLay5ImjBG + wzAkXaw5DZlI6VNZcwZXTRgSBtzDmxcVSMhdjeOo8wA+m6aE9cjVlSlGL79DobNlk6vKSeY3dqwM + ny4/ONO80LdgGesqgPlvAH1jD5zUK7P7DGql6zO3135SdRacgix9WDq8N3BvSgX1ndRA4WLdsu2Y + lTtWrsZz9kK2x65+x3y5hK/rv1548cf3uW+qGhYKXMjawE1Rbx7tkvoRs+eH0WOQOl9v4m5TdPzA + cP8mS20v0Q7GnSDjvnvGPeLncXzuUuS1VLFSUZ7PkkSEM5oyMUtVTmeEpSSL6SIUC/qPjLu7p/CA + cf9pee6Gce+ddRB7xwXux7OyNGrMQ8beMQmNgWVGZQOT0HRI+I1HPc8cPiIcj7LhwAskpDfGCcdj + 6YSlE/LyU15BdgC8PCYhTEKYhKachEaA0OOA7leh/6Yox3HLCal6HNBNjKqfH8IDuR8AAAD//+zd + UQ6CQAyE4SthBA/m/R8MqS8S3N1sXFPgOwNkmL8dOr2ftMMIk1m4WfiJC+2JEBECdIAude09oAN0 + 3z+32hv1hDQAXfikmpe6Tf0X+XkpXoqXurKXajFFmwn2bln10nGAnwiZKvUapPe7I+Z9BhEaWDRb + Bbooo50A3frEHi1Lr8MMwm3obOhSbejCJ5WP+d9t6GzofqmTvNSlgG6gl9oMvnfrsSU1pQtol999 + U2nX3MCBUX8rqYkDh3qtlQwONLTy690IDpwbkpozDsSBONDplGQcGD6pHEqIKl2hBClzMyxnn/Jo + 19LAgVG4W80yCHjaB+LA/07bP2D0DBwYPql8/WDBgTgQB+LAZBwYPqmcZYjyXpc3cSAOxIHPHNr1 + AgAA///sXW1v4jgQ/itRPhdwEkgI3zja7p50bFGhu3c6rZBrHGo1b3Ic2u7q/vtpnEBp64Q0tHuV + zv3UkIHHE9vjmfHEz9YuHYgD3Wb0vToO1HGgjgN1HHhUHOg2OIrT1XGgjgN1HKjjwA8WB7ovqYAV + BOXal9r1mH7HRtdW6dqqd8upew18KU/7UtqX0r6U9qU+mC/lvfSlgMquIKcEEtyR4DmV3wNy1oKw + dMzZjyTGj/yMh/k9QRA4G/MM5C82lG+Z/H6aWPKvM4lmAhwQt2YZFQULq+30PTTcfVZyG45n48nn + M2NxeXG1MCbj6Qza8OV0J1a2bLJjudxngy0Tah+XrP44RvW53IduCe0rkaM0AKLiccED+sbaDlWc + 9ZIMtEbJGacB5Zyu2j5iFejkhpLbJBfGgkXqPrVGCBmz6a+mq59xaFA70IGrIktm8ZY+fUaTtILu + 2mo7iFQT5RsWlBufk+Q2T996vlhVncni6r60j+pLz68atWNp0JSQkkW9liO9Xk9VV06SuCAFfq8B + ZKs0PQspEZyRug4doLZDVjU5p/i+wZAdtoR8sq2y4y+nImtv9A7T3duq/pRj5A4/GPOcB5io1fzE + 8YaGx2APvHqz8LWkdn6tYWigtVOn9RlwoytBf8PktnbuHIYe9qsm7Te2EjdqM9E/BlG1kv+eGWfb + LxpTHK+wgJ9TgUt/6BiFrSqF/yj4oFWg/cFRA6tfMXnLEVWHXGcxGiA79Waj7ZDGEY2ZYFRhNVST + aMZIzIixkA600mq0gfJUtmJO7w6sqW2gWi7fbaAcSzVaZiEmBd38FKdv11uOysaf52HYdhGrgVJ5 + ep84C8Osdw6u9GXVSt3uMSLVPJ/i1PjLmCQJX7EYYj4VnmM7XcdpB4oqQP88BNp3/K7vtQFV6Vk4 + XOyahUw8vN1DtV1k16CF1LggJE8xGHGaZXj9hrO91udi4uHQiP1+YhIcpdLlkWH0EFkDy9z7tAjy + 6TZShjWhM08pYQEj+3IQ+ueZOTK/JMIYbzALS7sGzYBG4TXmcAnlKfxhmyS4ipmAjAQkDkC9gNKl + oFEayuvRT/MiAD8O30I+oPx3l0HYyxyUIlW3FxzHmfR+zdHehUp0mwXZ5UNeCv1zYoZYMJFLFRyn + O3R9NBx4Xh/Bn3lihkm83t7vWMjv9q2BO3T6SErAAw6TJIVRomYuMU/MsjNd+Lk4EbsCH0HvBShx + wzIDnrzBMmN8OjYmSZSGDMei+5hxYXGQyE5O+LroX8sBcLgsf/9qfjo2zhNOM2HMKd8w6UmmmMMK + qsqvPLl1MM3yRLpsFdnPtqSUR0wIulruFm6p5uMyXmIs4M6JGeH7ZVh4BqMBkin055KXX5vJLThm + IeUvhb9DRRXdMHq3ZBFe02XOQ3Nk3giRZqNej6ziLqeEUxmPd9fJppfm1yEjPeCZ6CG/Z/s9G/Vs + pyen09J1AtuhOOgQTFCnH7hWxw+o27kmrnttBb5H3GDpIdS9o9fptpxryXG8pjAFyjcFInxfHlVa + XrP48d2EPIZ3B8xtuszkxfz5+9kOg+UfxbOjmAqQB4SkX4RTaOuRR6f+4oIdzaCjz+f6LwfeR3pp + 6NAmgOU3oERFRxXWa/OiCbr0Ucr/h61JaGDnKn39TiRqUCFfcDe/+pQHdezw3MEBqY/h3eh6LV2v + peu13q1eCzWo10I6mtLRlD7t+MWiqaOpJo7MwWiqIE7eP9JKR1Oa7lgfpq7Ny3sVeloNwquCSfnV + LMk6vNKUM/qo4ZvqjM6/AAAA///s3UEOgkAQRNErgUL0BN7DhQvjzr13N6TZQJQZMEyIvBuQkAz1 + u5r5+7piqs64ariGV/AKXsGr+XbQCCkpRXF3BM0OMsqqTUj0+tcwmrmv9DhcVbvqwtfCq0MGXoXX + ePaGDryCV/AKXg2yTSr/1NVyG4JlHfnHss5/5p+cIDOaAX8UmLcZwgLHyyYd5fDqR0Pd18+k9mpF + FXASr0IXXMGr2/VxuT+HusfzaZuHUfewWxn0EGUSpPTZZloycNReaa+Ml+WfYuPlyDZJnbidQj+A + Kr1QWTkxb5LKQt5rpxCVoTLayqU7hU3GTmGDylAZKkNlxagsss10FR/CXVW8a3msIurKCmlyk1QW + Kt3ZDb5VRF2Zrswq4iDbTP/p3qIyVIbKUFkxKotsM93gh/7WbYaoDJWhstfKp9IbAAD//+ydXWvb + MBSG/8ohu9jFmGO5qdz0bnS0N4ONZTeDQhGu3ApcO/gjhY799yHFyRIsKYkdG9c+VwF/5FiWdPIe + R36fbcY5UJWtwbY+VmW4ghFXMHZl2Dw4/w16hL0hxaoMqzKsyrAq66wqo1XQrAaSjfpn85OEb3Dg + Gxyof+roH/8I/eOj/kH9g/oH9U9n+sev6h/Jn1AMPsXTuw5ZlHF1omQEriF6X1LxlsTsP/dNx7WT + ux6S8KHI5BHfVzzdwML+TNiWVTi5nqgIkhiogb8dSX3bw73d7OLetusEyiUEXVHgG3DR60OmCUVo + +CFUuWdCsidFbmayk0ZM9q658y1Aw+3t091T9rIMJVG2nZBEx3i9YUsm8Z/ThXizzs+vSSFzT73Q + Mx1D91sSKDpja1mB2rHotqxQM6SV9VoXTWzvVGKanCI2z02v0dz0dXNz8cwe+ekjdniMeXdsjPnL + +QgZ816jIU1tQ3pRpCFTiN9q2LuUrXjUqNW+PStaW026hou7c8ftP4y+AbL94sq58uoEpbp+/CGC + WATwq+R694RgfnpEXzdBFvz1gPqr1Xk6aXKXiijKprdSjP00aZN64XQ687aIovPfxJoSWkuc9+ez + nhPnTd5De9x580EG+rz5hAqD3nTo3xNA8gTuC9f1KFBPj5SXuy+Cpfrgii8vMmDwqMS5Ys078Dsp + IOUBF6v1lgx2v9eR1QWsyiwPn0B2loifIBVPGbwUWQ6hyCGJ8wTyZw7ZskgzB5QI+ECJjHfpfoTN + Bq/c4KyvbFpe2r18clKOjleWxnIODQRyfx50vZEer9ytdvHxW7urM/Pj14GqprHGcYwYefR2FDHf + t6MjhHwm3qxrPzr0dnwnGHnMMn02bUQHWcwy46HJV3KRrSRAqDz6xvZc4uhf4u7Yu3pwq67PCJVH + 8YPiB+lkraegkbPlMctglsEsM8Ys8w4Q81hz9fCxD7I6sOYaKmmetPm31j8AAAD//+zdwRHAIBDD + wJrovzla4OXxcVtEFJkJUfpRfn0pjblj5sDZgfMPwXmUQRmby+aq7M7bXIXmY3PZXL/m59kQG2JD + G20oWaFHGZRBmY2UGRCjt7lsLk163xbGmvRsiA2xITZUmaYHJ3ACJ3CqLNSbaqaaqWaqxUL1bIgN + sSE2VNmrBydwAidwqszWm2qmmqlmqsXq9WyIDbEhNlQZsQcncAIncKps2Z8NP1e8AAAA///s3VGv + mjAUB/CvQniecEoF6X3bvblZluwmJt5kezMVipfMAUHQbJ9+gegyZ1udIlbveTZ6UmlP/iXQH5Ku + qmd5/5xSrn0B7obOj8bDFQ0n7TENYRrCNIRpyEjZHtMQ3rjGNIQ3rnsD7jENYRrCNIRpyDjnXi3o + 3Yl2T2RW5VOexeklcev+pem+RfarmOFXYNn7lue71Lu1hUJPhUlrL55IRFmK+FQP3VN56HldqUF0 + chaITmTA8RMveMOcupP0l3bIk/Ym5qlXk6n+5I9tC5VWbKlprY2urel7ejh7LPJC4Q+HN8Tc+4Fe + ytYMk5godB/hklOdS/7cEL3Soo88+q6dTkfI80PVPP6axgr+fXgW/y5bs5+X1vP2i9YLz2JeNT8n + K16VtThrwEQ1YA14H5wH3g8V63Yzo3SV/fMqU33HuOCUDnRTelKXCW+h4f2yn0q+Eote4e1e6Xkv + 9J3RSfQ8BVAU/XbQu2fgEGY4nN4zCR/Ipss4jbI0sl43XnpHpbS7hrT62f1/OZKtv4lYX2ItEFl/ + Gy94JGIrz6wXLi9GJOL9iIHx4v0B6/4/lPujfHu5bM+rtKrbIVDqhAEjlDKPAIAHdgPfZ/Pt5wMC + zBmSgBAI6QgAoBHgF3leNDv3ZSEy60ue73IL9gd7cxkDat+FHv/afHKUH9+NMy9WqVhP0x98LqZ1 + ubAf7LeqKpYPrhvFmVOKqBTthtqZ5yu3qGeLNHKbo/JdYK7HXA9cCm67GqZMJLMwCMIBh5k3GELC + BzM/ad6BpUFCmQ88jqYjAGctZs1K0yD3zSF0fxv320PpOibu2zL7wj3a9oiA7B94eEPPJinn8XX0 + mfdq22N7QWPo8HOP2F7uqL2Yh9r/24Tk0R81e1Q+DA81+MC14Zo9xh2MOxh3cDd1IcYe2wu2F2wv + 76q93IBfj9srRBTxfdauetDOHs+4BnRduB7zDzHxpbEdsf43AAAA///s3cEJADAMw8Chuz90Cge3 + uSWEjB9KPy78Z5X/TBbr4QVe4GUVXh5I1ZtXTa6jUe+9+rVRz3/4D/9Z5T+TcXp4gRd4WYWXB6r0 + 5pV55b3yXuVz9PyH//Af/tPVoUclVEIlVOoK0FtlVplVZpXly/P8h//wH/7TlZxHJVRCJVTqas1b + ZVaZVWaV5SPz/If/8B/+01WXRyVUQiVU6srKW2VW2anpyV8AAAD//+ydXW/aMBSG/4qVu0nAbBIC + 7R1raTepWyegnaapQlYwYDXEUWK2Vvvz00kClBJCoHyE7vSKKIc6DubkPa+NH9ze8P3y5FH/oP5B + /YP6p1ggedQ/qH9Q/6ArvX+CPOof1D+of1D/FAcd/yZofMRnLSoz/ijU5r3gjAuFNj8ih5ul3d0L + 5fXlPnH1R6GdW2l41Bvl8HU9vVaqf0os+Uxa6rao1KKR1dP6CMluAKDb/XxN62nA286I98Wu88ER + qPFbwp+z+ogs8x2zzGvIMt+Y4F7PVg97JLibWQT3FlCUUxv9xJ3HTLW0vumGteqp80P2VwyuKi04 + 3fzwDPC38OJrZsXejhdP2YpGf65r1LJopdYoOO38gNR4mM5bauo6kK4bfrwCmdBepcC2g9TbNE0G + NWfVHbl1nInPPU2+ijDkwx12lWU0LF1AuBcBV795Y1uqkqhun7Htoyq6Qeu1+kvifVzWi2mhDOmx + 3PGFIwfSeRkHtf4kNM6Nb0qT9twLKBmQdSAH8SEHjLkDfmTwPLUF7jypwYQAqwA6NhCip8XYd2M2 + +F/jdgDCOOLeT1+mOQdJyKrT3YB7YVSsxUz15CAtdGp8ZAHFS4bLtdSTqAumWWnYDXZmVU2LUlql + EfjeG07Plxk9q1jMNqtWvU6jvyhC+dAn/khulJpRqW2r3LA/GCUj+RRtC14rPTN0tXgCiHp3JEMC + d5443CPccdRYgUVDGPl6226R+9bnLxc3rRL5I/WIQEg/Lla5SwZCEJ8/w+dDuCZ6BP9kaoBU5g6N + 9AYqGo5LbcqQNC+b5EKNfVdyTy+96aFkqGAYjylmMiM+TPp017lskisViFCTjgh+SwfGic8DeFqn + WToLp9Y6OwvRyVXN+wcBIhhLrUW/NxMJMYV+JhmSNrpwpmSM+VPPjQXnea0WWfCvI9v3+eK6AZeu + CJaDHxLXvhdwbyhg4Cd72435U+LeJ8fSm2+oN/FgqYYxNcmMIP7W/Ho1ScBgNzmcJHi12+CVDBaJ + 8I06ThLgJMH/NUmwzu1nZzkYkDGGFtegY3pBBtL+8FGnmF4Wl4DCBZbv/M2nHGmOJecxrHbj7QnS + K4ZoRhNmL8fch3sCUc3QF96CWGdl2zw008zOg/k4GWmDTBJkkhRqyTnNseSKYjW1/NQ5mZSDyMfM + G1it0Q1lBsqdjYTM2moqps7i7reYXrCawvRyCCYJy1FexbBa3P0Wy6st2dZw475LTyyqRMZYmVWt + 4qmcdF/gwI7OwkW8h/KK5dj9lmF5heXVea6Bu9tftPwDAAD//+zdSw6CQBBF0S0hNO7M/RtTTiDS + v4QW45kzrrxbt5p3jcEDr/orHyOklBplXyOoOcgcH4PsVsXvD6+xLa51BrY3xgtZdRJezRV4FWW1 + zc942Sv2Cl7Bq022KeWf2+Q3/vIPvGKvGvEqQspc6q5eO/7HD6/I8UM6/aG1se3NcLxaKvAqWmcn + eOU4kL1irzrtVWSb/P/4F/bKepm9+rY5/6/8s1sdf+yudlNo6WPpYyoNmkqpgsqiddZNISpDZais + l8pSxU1hQmWoDJWhsmFUFtkmr+Kjdbb5yTpXxpVxZXZFfY2yRSqL1tlmg+8U0SmiU0SniJtsk3/p + vqIyVIbKUNkwKotskzf40Trrb4YeiHl/yuCPmEr3CiqL1lmNslwZV/Y454roCQAA///snW1vo0YQ + gP/Kin64VrJhMbAEvqW5u6pS21RNrteTekJrWPtQMVjL4lyuf76axY5jG9YE4ihJ19+AxcO+zc7s + yzz/g/gbpEN4Q6K9Mu2Vaa9Me2VP5pWRQ6JsA+da2z86vPOASEA6/piOPwZa5Kj942v7R9s/2v7R + 9s+T2T/+of0DQcW2FL1wRrOSyReBCVij8855+q3I6Ra91kSzg0dRMYuqElJcrhjfwML+Negdc9EI + DSkBOIHzOWdzKYZlWRQXK8YBwhhik9Q/nxCMfd8FjGMDrK0jpW0Hz3ZxH892t6lgvd/gJUCvgcpx + SHtkojyRvJ7E9P4seo+oCcEKdrndl+89aeN7F5VoB3zbgwDfdhPM9oIuKWAsrav0m7KE3xYV9KZ+ + ot0mEOsvRUxB35ysXvsz6W3ygsDtT0alVwKY+9KX1cXZ1DUvirzmfZ6q4fRkzvYuVz9o03g1wbe5 + PwJIfCgm3G4TrIDQk2EQerelU6457CrJqmbUQbKjVgdKEPxkEAieqEDwVxWfUYmJPRT7E6crlg3K + ta8e3JS5tgfl2lHl+h2QkhuF/kjjf4a2a7etXX9Mk5bGpVL5xyU2Da0/l+jd5kX0K80TKuDvmoQL + XrEXADh3MG5B0/91DE3veNh0/GeOpnew3ZK/T8fy5/qO6fvPHqfuNBnz76ss6zt8n4Dc/nBRpEnU + 72mcpzG6XrPaH0mU0gZKxe2xcvw8Mmjtdka8tl5C1zxz4OftE+v9wHXxIGL95ZLlJ+HU78Uma6bV + tydqYda3v3BArm9L2sSvxw52fU/Fr3fdMw8HgK+3H8Cv99DfFcYTgghRkOzTElGUSO9JEuZN9Kmo + OFpPgUg7tsizW5TmcVYlrJTQ+hlMuqDrj5cSX5/mcwQ89NJE51vW/c4T9L2o+esjJFguRvIpXDER + mz8gyhla0lvoC4gKKWLLjTfRbwVaFJwh8YXmyEUX63+GllHKd2nt6oM+gnfrfJxn+x+xqEqBpgxJ + ObNU7KaXI/B3xIMiIfYbRPNkc4/APdd/Y6LtnM8N5Tl0EOgzebWYMg6zPXWvKY2QjIyCz+ueYjtQ + b3C5rpsPV2/P0fuCs1KgK8ZXqTSwlpTDIN40tbPz6OgMz07q9eduyxMSML5IhWBJdGc71Oz6O0ti + LeOPP42RsaBfo6y2e0MPy2n7/XTXde0eJv4MJ1jYKmU3UboAtVLxzAiNL0Isy9Cy4iQ3OYs5ky3N + nBcra1lNszS2gClg4cCaBNYEW45rSXUT4WQyo3gyG2MnJmM3TpLxmcOCsRdQ4kyTYOLMaORjbN6w + 6XJzfCbiNIeJtM0RmmhBv64XrjY30vzeSha0FiM0NvN1EjJQ95yd9QobAtuNnaOhw2tBh8cIW5WE + 5hpoKqUOvPkKAk8dW3+wgw5UStxtV7zWMpp9q+FMOrwdKJvxh+XD10Jxh73wNUXXe7AuUvlb++YO + pH0eDCfSZWfTiwE4qergcb9FbwnTSMoOW+Jxhy1hWLtYGh33yMpHsw1eUWzfLmbNURerhuPeDxml + XSwNqNRaRkcQP/H+U7uDz2V3i9WrfS7tc+ljOI8MM3h1x5DtDiF7be1zaZ9LPKXP9R8AAAD//+yd + UQ6DMAxDr8S2dki7/8GmyX8TNCkVaSnvDEiRn21q9uTmYi5JFmsN93eJ6mUN4flAnrLxMaJtZZyd + iZyds5jr6WAu7e3WN3vIufrfJHKuwxu62y9JBw/ITcdcUjqWGnosR4J11BBqCDV0gw1Lj6z5s4k3 + x7izY2CAKzNyjwfmalQ5uys+LOWeuJRrMpfWdBeYi24h3UKYq425pHTKcwMvci5yLhxo1FC0Ay2l + Yy50U0ncUe6X+eUCVAPVrhaPJQeqaWKXSiKoBqqBao2olhyVxASqgWqgGqjWQQ2ZTUYN7pLdg2o0 + GUnVAo9TdqCadnfrI3+ajP3tI5qMNBmHajJK6ZT/pc+gGqgGqoFq0agmpVOO/LXCy1uKoBqoBqoF + Hqe3A9U0xruCahQgP/d6XPELAAD//+ydX3OiSBDAv8oUb1flnxlARN881+xdVXJJxSR397BljTDq + VBCoAUyy++WvGlDjOiASkzV1kycNrW3DTNPdzPRPbTo7eapmVWiuaKlUTaVqKlVTqdpHp2rWPnZX + AgNX0ZBqNa1aTast+CeIhroVoqGuioZUNKSiIRUNfXQ01N2PhgCJkRH4AA/ZBwBr+jngQGZYxIHg + 3wOfbnl0xXRCEAA2XRKB3PWKiTXZ7IdGU4QzT7VknNeGJgPQVSTP7SDnhq+Rc5u1Bfm6gw/mw4/T + p/TnRcAuN1cvQrUHSVzMaieK1S4/n8By2YewsjgCTiTAI09MTbf1ojFTioVnMyYEc2sq7ejlEPEb + FoQFuFm7pkpTxni+DJwMHVpi69cgqG2mVU4NLzGT1FQp8wDg32aAsX6fEURkVg4DPyOslg8jcA81 + tZIiv8P9Yrejv8nt1GQxl53ZX8xErwCBJ0X+4TKjp8qUdvFbVHbMAu/wwBbc8Uo122/TbJT7pfwH + RMdO2cOaddkkSm/NT/QFjRMxoyl7V+KfBF0x701Wd8vd1DtabZRZPQK8tlTp79R5LA1ZKoxrs2hc + /83dgsFl1CK46xaW3e4Gm4gWXTtOElKYyiyK6PyEnPWubFiN2dPnpscbWOaUrmiI/kXDIBAu9yFp + kekz7U6rZ9ZRWtP517JPFgNeJJ5XpqlTa3CSkpHJPQDen8wqXRabjDzmxIJDbnR64wwim+Q3HnUy + BvsVDY/1aSXKZAHmV8E9L2pfQPR1WxQG1ZwDuGAO/HNoDhg9o9UhafIOtPU05EmzaBt3ez3t1X+z + 3J6tE2Vwj81xyBw+485rOcj4k0jra38FMbrdFgQaGlxYuMx0ToG67sDic/GyLg7c+zyGSgQUDMDE + GWOTmC1DLwOZ/9CuZxAl00eoB+QvZZWDXKTo8J2gfpRGoxkCPn8jE11XPzZ1EAkHtKF5NOZxkppg + GC3b6to9neg2xphgraF5gT9fH28S3GuZxNIxMXWjB3+pRBCCTfRxBx5qmU3b+k1raPnltLrwOog3 + 2yBi9gzE97sFjxCceeRQH1HHCZYB1GkQQVfXtyP0MPrjz+HlqIGeeLxAIOJm0Tj10IwxFNIXuD6I + xihewJesCyCtbZ2G+7MgHZh7OnmEBl8GaBgsQ49TP9770LeGFoh5NqaIQbTsbW7T/fjLAF0EgkUx + GjOx4mlcE1IBd2tZSWfn0MHKzo50/qu29oEAE0sex8ydbIKE9NRuQ4Zcxx0caWhL+jzxsoCzb+O0 + HP+z5O1DNbk7QbnHxL7wN9jrwlacPU34ks7ZJBGe1tcWcRxG/Xbbcf2WYI5gabLamgerdphMPe60 + gWHQxr223mvruG3Y7XQKT6jlUMOw9CY1Tb1puobZnE4N1nSnxHUNbLhTk026GLee2DRcb7SZCOrP + Gcy6fI/Ikj5nPUjX77m/7Uma+LDYX1tX6FIybjZGd55WEGiV1zQOdihP1ez3Cz5M4c0FzwPEW7Vh + q2oMo7gJv2TgfaZOwaRXgYiJqy2UV+5F9Z1SWJb/8VNQ+IHN+/D4h564woL4DN3bOdYJydOVnwMc + kDqP6Maqsg/404Q2atOy2rR8VpuWcYW1X1hlUyqbUhQ6RUQ4nruCK2RTGXX3dRcplU2pYo0q1qhi + zXutKSUV0itSrYuvSq9UelWc6t1wn+0mpoScKdFbbTR+j/SKVGjfS1R6pdKrfvE0/g8AAP//7N1b + DoJAEETRLSGPuCb3vwE/mg8xQg8TnQicRWjqUtVzSb6VVetBJn2ANwS7u4OMLvwvPhiTpJCkHE2S + 0hfgVQh5dy90tFfaK3hVW5gvfj1nwKvINln+uXUVPbn8I/+sxrEDfdfxZEH1FnAOKX0m5p4KFAL+ + Xv5yjwOv/L0cDa+GArwKiW4Hr4wD644etFfwas4229KAQXulvdJeGQe2zD9vn44/OrhtCh2AluR5 + F1oXvtD6qgs3pbLw5doUojJU1uwI/XSl11iwKRxRGSpDZaisZf5Jp4hhyFXFe5YHlb2+vuDS64fa + 25TKQo27u8E3RTRF1JWhskW22b50n1AZKkNlqKwZlUW22W7wQ4brNUNUhspQWSPDbUplYcG9ozIL + xse1F4xPAAAA///snV1vm0oQhv8K4q5SbD7Ml31X5SQ9lVKlipNIvajQBo/tVTGgBZym/fPVsODE + 9YId7JOjVpOrYNaMF5Zl3mVmnjcs2PzXvSvzDihv6JEqI1VGqoxU2ZupMm+XaasAbpP/Q+Wdj4ha + pAwO8n9wFtnr//jk/5D/Q/4P+T9v5v/4u/4P8ieeEX6TOYtzqL6IaELJ7Xsv+I80Yc/cNxVKD3eF + 6Twsc2xxvQbRwMJ+6mwDP9UnemUBSYWLhYBFZQbiOIzSNQikoU7M4aj+C0amOQp8pFYqSHEHIuK2 + 2HDnL9lwm6CCOt7gT8Bv/w8sdV+FQp0u2QxOjRa32yDfaVm0U76toyjflgqsec4yhixLY8p/QBfT + fFqtxPQ03YlI7ctH7bToqKilV2lUkQa7+vkhTWc9bSJHZpfKCkX+H90h/rgN9SxJt0pzFYW6kzHd + PYhU4OXzNJEYzq4T+1ngsO5nNbDbetppEOYgBPS9nK7XjQ/vmICsvmfXapsXeNI+LdhHTQs9+c9d + o5aA9ASkPwpIb5vHDC7Vc+5jrl00X9Q+sWTGCjycynghSjjGfGC1dfhKknGVDzrvqNvJafGV7mHJ + o7jb8h+AID+CCe7YQ2/Ux6inmhc/8yjhkXZbU8BPxTxXOQ6XZRyfHh3vqx5qU3jcM9v3MdXp9PHi + 6fSd6/ko6zckrZYh+WXfkHRtbxh4vYyqnNoPgsdxblyiErtp84W+VPKXSeEZCuk0TZyh+wJ2X2lO + f+z4iHrffColMzSyEuexwTSDiM959LId6ugyR0GcAQpyvMJ4vdmCIRg8whe44qkR2ncJL1DWo/jG + fs4BwgJWWSxp2z/16zk6WOwbHrD+V6XF6yZtu28FS/LKM5WU8npD1bRZSugqy3mmx6zgRVl1YTQa + Bp7vBbbtuqZpWnjW4jRZNPsHljkeOpbn2mPf9ExsUrVIM+wT+7aFvfScQeC908/0+qJ6KPuTtNik + COzA6iOWaCyK0lWKix6apX26vrnQ7i/+/Xh+dXGmPfJiqWGTmfTMWazNAbSMPeHUpbFCK5Z4kGaR + QMW6T8rVAwhc6pADJtcngUTeV0PFGmGHcLP+0XfTf95rl6mAvNCmINY8gt/B9dvrGlu79i5vbLWu + f+tzB7ABiBUvCpiFmyemBLfv8Opxzzas3lWT7W/uD2t3KxiPQew2/oqJHrDm8BjyFd57pYj1ib4s + iiyfGEY0S4YCIgGVLh0u0rWRlQ8xjwwsvW+YY8MeG7ZpOKZR3ZmhNXZh9GDDILJtGDhgu4MATGfg + +GPfB98NIt8NfdMcPsJD1mSZhIIluN7UZJqEK/a9zjapt3nyHLpRJhhaoTeLWhW0VQ7CrUV9C6u/ + DUavrq9NVW+pLCVVvf2rC6DsW523xgcwGyU2lmLGKWacYsYpZrz9nSHOMoO77PWvCM0DQsQlXPbV + 5QQocZcSdylEikLEt1yZ7hApk9QUhUhRiBSFSL2eIWIeoKYkJfZl7SRarEkuudhG7AQ+MUSoWi1V + qz1FBKZ1gLyScFmqVksZuJSBQhm4fTNwrQOq1Vokr0hekby6/T2mQb4h+gUAAP//7J07DsIwEESv + QksRyTaOqFPQR9yBggbRc3kUbYRkK/JPyQrCu0O0meeZ3VGbPT9oVs0iJdcAO42gaiGDF44Xjhe+ + 6/Gy1YKbK8ArKZetTujgXuFe4V7hXgXaJqd/rOHsfvQb4nmZMrTXv+ufEiETvQEvdk33DffzwSvw + Crza9XjZsAE2i1fSEmvAK+7Hcj+N+7GN7pVom/T9/BPuFe4V7hXulab+iZ6OF7umyRTy6LPOLdn5 + Uxzvj1uYybTWdtb5Yzctgo+HzxAYrpdhQwJxvamkITx1jQbYLJVJSyyZQqgMKoPKWqnMF2QKPVQG + lUFl6B81KhNtk7bipSW2emUdrwyvDCrDK2trgM1SmbTEVjv4RBGJIhJFJIoYaJv0pnsPlUFlUBlU + pkZlom3SDr60xHLNkIA0XhlemVIDbJbKpCX2DJWRYCTB+FRa0gjeNL4jQv0GAAD//+ydW2/qOBCA + /4rlt5UgOBdy4Y3tac+u1Kqr0h6ttKqQawxYDUnkJNCe8+dXkwu9EEJIL7SnfiPE4DiZjGfGM/5e + tlZmN9je0FZemfLKlFemvLJ388rsTQJsBZda2T/llPRpqlXhYp9d08GyFuFaPlHKYvVyyjsXqf52 + 9o/TwP5xlP2j7B9l/xxa93yhClZn0/657uAc55fhKwcAOs1+B/zBnMs3lOJnGNAHGFwVKg9OARUu + jaHF+ZLLkhX2C9OMPC2y/89Jqh1MZzPJZ1kv3PfHLMwxhHhANJM4tmeYxPNcy/EAKVqBiWvIh3sC + hjt6DIZbZxQUyQafgsv83jTxA+LhvxBU/BDM9jcgfNePsaq/0ZxO+Ct3dAhCu7FNE4Rpsl0V6C9S + BVYV9/U0ZBk0sk5av4dhW0GtklNQqlPgzL6NBqoFBrelBdcLkLGFm71bgNwX8bqdesEtsN3xvqK7 + u2fDrOg50y8reo+OgdFb2emflN3WaqAGXHQFgm8AgnfIoUDwL+zZrH+V3lCk7TqRHqVySjMQcYV6 + lHTJ/Y8Oh38Bady0NFtv1aleJUj/+JTxCQoDdEarNXG7zgjZMsJ/d43QdG3NdVrR6W1SpfyHa/8F + nTOWRjRI0BmPY/BXXu2R6jUdCx/A6a/WVUvbr9UdrZu+RXLfdgavEZwqu+i7FL4f907ATrnYZhi1 + exOrPLKT1Pdff2ROlU4b8dXOx3bdwTR3rwtoOx5Ymm0ZLpgcQEvP7KHMv3aJ27fxo2/z2AAvXWiY + qbqjiDMxFexxO4gYpDG4/hGHyAM8XHjUdEaBgM4gVCLvy5DCVSASiF9AmAEGOuV8nPBF5OdY8V/4 + fAqGFr2FPyw+VkUdiibbTl9KGsSZv5jj2IuDqqZlzKSu6KmDfZqIJM2GYJqaazv9ft9wTEKIQXAH + +2EwK893deJplm4bfcslLiGE6FmLMIIx0Vt0GobrxQHb6rr2H7iDi6dqe/A5TNa1EAm/A/765VzE + CO43YjRAlLFwEUJ0B+no7PziGP04/uvvo9PjDlqJZI6gyST3l6mPppyjiN7DRIRogpI5/EkZENEe + ojsimIaZeG70KWI0/DZER+Ei8gUNko0fXXdwkC5uuIRIUC5qMR7AtBHKWS5gugm3AQ6LoV6Nvg3R + SSh5nKARl0uRzcsRlTC9V0V+npzaGQB60rq42IdhQwMuFyJJ+GS8tipyrv3axij6uIQzHbygd2M/ + N5gGDsmC+s9bXvxo1u5SUuFzudn4Gupg+FLw1Vgs4LVNpY8HeJ4kUTzo9dgk0CRnkme+njYLl70o + vfEF6wGZoEe8nuH1DNKzjF72Po9Nk03Maf+mO2UT3rX63Oq6jJKuwR3WZw6xPcceO4RoK34TlUU4 + Y0kDCMiVhTjjBb0rinGKYxE8RFfTAEKfuAz6YZm/yf89W/PQYXO8rrn39uOqEvFDLLMWj+GjrLSq + /WF+ozWPXYsXutcAaZlTdVVKvUqpV+pFLaluX1IFLdO9ivZfQSUNMuhz9u7euy2oumaVQaYyyFQG + 2RNTpj6DjChvSmWQKW9KZZDtj1ghDbypHKL7eGspFaxRBCcVrFEJqm+VoKo3cK9y9q7azFcV6KgC + HVWg07ZAR2+wma+u3CvlXg2+6GLV/wAAAP//7N1BDsIwEEPRK5XSimtx/xVCZlMWmSZIQaB3icq/ + duaTGXxisExIqQS5z09Qd5DRhevCdeHe/w3g1XoCr+Le7V7oaK+0V9or7dUh21T557KwErxNsn7m + 5IotIFfct7aAr5CyVirufUAvAK98XuAVvBoT5JZ4FYnuAq+cl3Neznm5wfYq2aatF7hqr7RX2ivj + wGnn5ZJtShW3TaGfPh6AOno5T5BbUlkkujaFqAyVobJRKttObAo3VIbKUBkqm0ZlyTbtKj4S3e4n + 67oyXZmuTFc2JsgtqSwS3e4G3xTRFNEU0RTxkG3aL913VIbKUBkqm0ZlyTbtBj8SXdcMDaRdM3TN + cJIgt6SySHRvqMyC0YLx/reC3AcAAAD//+ydW2/bNhTHvwqhPWTFbJmUJcr2W5Z2wIC2CeZkRbEF + Bi3TjlCZEiQqaVrsuw+HlBw7kWTl4iRumadYosyLyOPzP7z8dgzIpS2ON6RGlRlVZlSZUWXPpsro + XUBuBbbb+D8ls31vdqtCYV8LtgLKchIKvtlyhJAucdznbjrHwy2K++I2aKMQP4L/47fwf3zj/xj/ + x/g/L217fiL/x7/r/5x3LA0BVAjTkUxzrp4DbKGm+R2m4bdYsBsaXBVgD24BFi7PIMXxJU9LVth3 + i60Am9bImrMoU1zNxSLlC5UNj6JJEGuEoTXCNqHqzye03/cdDFjSClBcS0LcBhruaB0Nt1pTUCw3 + 2AN4Na3CUZ5wme0Iz02qKK1HLGHAf+yNw2+8CUX+Ns7hne8NjJyQOtB7KOo5786jOO+PwJET+sA8 + B04dpLrhZZ6k0AAPy9CvItKOL9iMP/EbfCD69sH5+cO6ltRs3+phAZzqRrB6c4+hzSD5ph7z0IFR + leVRLDR8dFe9xq1C/b6PA7bLTIlTZwPiXNYbAbLNCOyW4069F+O4O6+T496i1n7zONohvb7fVOt3 + QFKuzPR3FnxptBvbsx64dQbrUzir6Vxk8JgcqzyIPzP0rnwQfWBixiR8XVXm4I8+qsKkrsJNwwk/ + N9Pe9eyhtycEdkxqqvl5WzU9im3svXKm/TMi358ZZk+rGvEkDEQYoFMl/56uEYEKfjeviAV8hmKB + PrDkvna1PjO/6ldkzK+2do7zjsW07Cxw5tbIW4PeK705wJ5imq+uarXMS0kJtqQ7TngQzsNgPR1o + 6DwDMZxw0OIwGmFssgUDJngAwYP0uhTZZyKUoOhBeEMN55xPJF8mkQZtf7eO5+DasS/whcW/dQFv + HU4tYpP1iU5TJjLlwWlYefGh/oEyrrCKMNQl/a9jRUyGMldV6/ftAfVd7PgDijEm2OpYUSwW5f0u + wUPbJdT1B5h6GJKoFHECdWVf0Ps4XoXRqdsd0DdWxypes4/RvznGDkU+PCViudo/sA64DzPE0Ezp + UQW7t9HnOE9REflQDmUsomsUiiDKZzxD8oKjOcRa0OmnYwQvNRQLBBj0zEaHM+35smjzDvpVauZ7 + B0kuZEfdhU9cBvYbxFKOEnYNIw0xqbK4YdXb6GOMlnHKkbxgArnoqPhm6BmZepZp1QvjB57V9TiM + InRZuCrot1vlWeaZRFOOVJYyRvNQbj6tfgl/8TE0kI8PDhATs/IigYvUO7BvIj9XLBUwTGDkiHw5 + 5SnEfPTYyawR7VhxutDjhqhRAx+LN3U2fnuI/ohTnkk05ullqDy7hKXw810V4Nm4tTXOs5G6KO5N + 60ICni5DKflssvIaNMB+5UMUefz1t9WxluzrJNIewoh6KnZ/O92pftd3E5/DNhZ+GfKrSbgE45Kn + kTWyLqRMslGvF8yEnfIg5arf2Yv4spfk0ygMegAW6OFhzxn2HNxzaU8Zn4lLpmzmOLTbx3On6/oB + 7g6dgdMdBkN3zlw/4NP5xMfYvuLTpNxDM0mZgHBauY9msmRfi9mr8kIo1qazoMNYI6uM2lmpNjz/ + 3Jq0IHC6Xbe/9fxwndHdvYS1JgPikBANXLIECl0kP8wSLjYMAOnS/nNPorUNIe/NdKk53Ncc7vtS + h/uSYQs0JW63NN5YGWNlWq/LKHrkHi3NqN1/b2ZIN2dIoaG6Z8n9J0RxiwXxGqXr3dsWNamv2+4O + pH0dvg5MMW5dqrM3jo5ZF2bWhb2qdWG4xbowbCSWkVhPvCjVOD8/0PKwNm7NVomlCbnr50YZiWUC + OcbKGIm140WopIXmIu0O7DWay2gusxfH7MVp1lykxbm9xGguo7nkT6S5/gcAAP//7N1RDsIwDIPh + Kw3WgsT9D4ZQ3qapyxjqOvFdIvIfO7GF84+ZKyTLViXuZxLtlzXM84F2ysxzttbVDv/uCeaK0t39 + yR4+1/kzic/F5xrK5wqls6WGbtM3xjo1RA3xuf7gDUJG1izWxKuN3DXRMmDKjJzjwVyY62rMNSeY + Kyp1J8wlW+jnnJ9zx5grlE67c2Dmc/G5+FwOK05QQ4vt8mpNt0ii21LBZ1dffYdTSaBa9OyKJEI1 + qAbVDqJaSUQSC1SDalANqvVGtVA6be8+Wnd5994AuVH1oKPjcKoJVIvy3f2WvyTj+U6/JKMk41BJ + xlA67Vv6CtWgGlSDar1RLZRO2/KPKl6/FKEaVINqHYfTI4Fq0cj7hGoCkAKQr45fy98AAAD//+yd + bXOiOhTHv0qGd3dGJSDy4Lte1+7dme10pra9977oOClEzRSBCWjb3S+/cwLYWgNS+mR34yuV6CFw + kvzPIcnvd4Tu2g02V7RVqKZCNRWqqVDtvUM1e5e9KyGCKzWktpp++W6vMD5+on3ut4TIR21y/9up + IaeBGnKUGlJqSKkhpYbeWw05u2oIkBg5jw9QlEMgv4rfAQYyhyQecfYjjsgDj66aVQgFgE23SqHc + 6Zrykmz2UyOCzc2ElRww29HIfM7pXNiiYTj145wLqQ1xzyxermtZno0Fp1mCq2vIqdsC1I0eA+o2 + MxGKWQoHw66uNQq8kF3QJ81SIBMCrvCVkeutqeBf4zhoadOVXVhBSaylkNMZ5ZwGnwq6LsMJg5fO + AEf7Nnd0YNbjx2uA9m7ba2tUtRQWVTcU80UNZWDX88Zrqmm0NOl4VX57JLpAqTEBIq/FjNfarAVS + t0Uo199MGXZ7RBICxF19wn7UNtOJEPJtW0s7LHXrpuLI7E0WJKDPN7SfnT5w6j32ssDOPtdn91s2 + +xLLwjFvyT0aAzhZavRv4t/Uum4DYLxV1Wb+ZUEFL97EL7Eoc99vKRqXP0QnJApIBn8nMy4EzEsq + bFRV+HuOtJUZtV5UYyGhZD1+4VFvaLlfP9a8oUvbdS49WfEZEUBkiXDhZE3Dg6ewvyNdXuax+YjG + rlkInPXXA9ljmbETkqD/0SiOecAiiGmkA5qDe7jVpWw5rLSqn0y+H6/CsO1QXW3KtLFZc+NCik59 + f5UQ6PFomkL09WrVdGStb0Jv3+KKYlzhMf/t85i+6/Q8t5VRWVT0lbMwTPVjkO5nVfqnVR1rRR7L + 7vc5z1VHI3mAXcDjtaHVc+HldQS1XaggEV+72LMgvN58m+cIaBlCw0jVnSTUZzPmPy4HmYNVCsF/ + QiEDAecFZ0nmBJjtPiRu+X2ZWriIWAZ5DEg3QH1nlE4zukzCHIP+UzudgUQnN/CHxVtZ3qEoUnX4 + nJMoFQFcDpAvPsiKlrmTTRZFQhHtaCHJWLYSVej3e67tmM7AMiyMsYm1jhbG0bw83jWw17MM2zSw + ZZoYY2yIEnECdSI3W+hR2+q69l9aRyturmPC+zjbLKLI6B3w4s8XLEVwvZFPIkR8P17GkOVBBjo5 + PRujy/E/30bfxx10y7IFgiJBHsCSEM0oRQm5h7EBkQxlC/iTMiHSe8jysGgWCy/dsclSdPTlCI3i + ZRIyEmU7P7rqaNFqeU055IJyV0tFkBvzee5fRh+uAnwsanox+XKEjmNO0wxNKF8zMSwnhMPoLkv8 + bB3am//ZKl2c60OtoQDlS5ZlNJhuRIW44A8So7BxDkc62pLcTcNcLw0tLFL8T0ueXTYrd84JCynf + LXwF62fomtHbKVtCq13xUBtqiyxL0qGu+0HU49TnVCRhevN4rSer65D5OnARdOzppqebWLc8XTTn + qWMExJl5VtcyPadrzQLS9QzT6hLftweU0OvAJVMH494tvU7KxTtTTiLIyJULeKZLcpc/1yk/s+jh + Oc8qgucwWpn1E7Td3HO3noAYsP1et79313NhpuzLatvkE7JvUfAw4L5NN4H9NHxftS+o2hf0o3Yf + NrwGlE3cbPK96l5U96Igvm8+rh3u/A44we5F8vwHqbjBJPscBzx4bickD2KeChwodRjqBh5F7p3i + 82mkjVoIreaTHdR8MtxgPhlW0ZSKppr1gEru/FFyp4mQ2RtN5STfxztTqWhKJWtU9/IxWcI/YZ6q + 0SC8MprtDKzCKxVeqeU6arlORXhlNNgS2FDhlQqvhq8SXv0CAAD//+zd2w3CMBBE0ZYCSURb9P+F + 0EpIiRK/PkwMpwl77s7szucXH2hP0J5OO16FSMkV8r6foGohwwu/xMCYF+55GQ2v7gV4FSW/1Qkd + 7hX3yjUE1xA22ianf25Tg09O/9A/p3IMXv3CeLlEyOxmwIdl32tBLYHn5ZJ5HHgFr0bDq7kAr6KY + d4JXwoGOzTk21xgODG2TLiKYuVfcK+7Vtw9d/pf+2Y2OD3u9ZQotgIose5X69etmqSw6eGUKURkq + Q2WtVLYUZAoXVIbKUBkq60ZloW3SVny07rLineWxSGpW1KlKN0tlUbdb7eCLIooiiiKKIm60TXrT + fUVlqAyVobJuVBbaJu3gR8Gua4aoDJWhsk6tuVkqi2bdByqTYJRgfBZGd14AAAD//+ydW2+jOBTH + v4rFPsyONiF2uCV563ZmVytNp9W0nYu0q8gBJ0UlgIxJpzPa7746NqRJA4Qm7XTSdZ4SMDnYwOH8 + jy8/jcut8jRbljd0tSrTqkyrMq3Kfpgqczc5uRUQbx3/6OWd91hoFQLHA5qnWt2d8oNHUa+dxEsY + K+S1iH88Hf/o+EfHP8/te/5HMzi8zfgH+BOSASihoiPg38rjAF6oYH5HPPyWxPQOBlfF14NdQIXL + MyhxumC8ZIV9N+iSSWmMjCmNMslrnM04m0kzLIrGfqIIhsYIm0P1GfSHHiaYAFOzAhTXkhC3hoY7 + XkXDLccUFMMNHsyPBkLGJqOVieyJ0O7PQJMf9Otwxg0Q8DMOzPfDgazbVbjPd4kv+XtPVdFnANg7 + /WZcc5NJd1ecfBXw9/iK+ddhjC6g+SoR4COM0dnJrjarmvY4iRUq88nu3EekyTdXr1/XpEku6tuU + 7NemVRjeY5pSAMH2zsNvjR7hTZKD99/NdCMed1ewcrOj3Y0Y3XRFWyDNrSak+VvA61aa/Z36142+ + rwW03q5zup/CoIYc3+QRtlusupv+ytDb8kB0QuOACvi7KuMQpexVYVJX4XcK01pl1MX7mHTsGuf7 + kV2FftRo2dnPstXs9osTqH619ve6pd2mW/o851MqccCbZv/kdMGivWrtNb9fG2tNDoAa/jKx9m5V + rc5CPw59dCElymFS7EkNxf7LNoq9SyyTOM+Bld+hmqTKyZ1F1GcBSmJ0QtNHfNwwrmnTz9va1HI8 + ExOpfamSnQXN3BjZ5sDxiG11JEZcRglSdg4wGTjGylYlmlmpLOHl0T1PmR9OQ3+1HEjpPANNnDKQ + 5NDycB3ojAIa3IccAr8ttfZlHAoQ9qC/ocpTxsaCzdNI8ba/G6dTiNPpNfxh8fVeQnlFlBcFmwtd + cBpnMjJWzPLiR/0BZXphmWioK/pvx4ioCEUuq2ZZ5sD1CMHY8TB8jI4RJfGs3N8leGjaxLVse9C3 + 7kokKdSVXq8BMV27O3BfGx2juOyehf7OMe67yLNhayKW0whWMfdhhigKZDAqkfcm+pLkHBUJEKkO + kji6RWHsR3nAMiSuGJpCygVdfDpFcFHDeIaAhp6Z6ChQioJG63vQr0Kh3ztIsFh05F74xYRvvkaU + M5TSW3BmiApp4g5Zb6L3CZonnCFxRWNko+Pin+HOyOSxVCl9eKDgWFWPoyhCi+KVhn67dz7zPBNo + wpA0KRI0DcX60TL0+cWzoIFc8grROCi32bDNdl6Zd/mfG8pjeFjg+Ynz+YRxyPyoJygzRl7HSPhM + PTbEIob6WVyoy/M3R+iPhLNMoHPGF6EMAFLK4V1eleZZ27U127NWujjdu8aFAozPQyFYMF6GEApj + vwwoChsfPhodY06/jiMVl40cLDP498tdqEu9WfgfmMzCFiG7GYdzcDE5j4yRcSVEmo16PT+ITc58 + zuRtZ86SRS/NJ1Ho9wAv0MPDXn/Y6+Oe0+9J3zP2vGA4pHTSDTwadG1C3e4Q+4Pu1PXIZOL2vWlA + xx7G5g2bpOVMmjGnMSTVytk04zn9WvRhlRvCeKVTC+4XY2SUuTuJplWP0VrXBYE17rrW1lXElaHN + xX1rPcY9Gm5R/OcA4rZNJB8ME1evwanX4HyuJX7JsAWgErcbIK+9jPYyGoOr+0nB2XQv04d3i+IW + w+IVUNd5sC9qEl/3wx0o+3PEOtC1uXXAzsEEOk3X4HHPRY8O06PDWowOwy1Gh2EtsbTEemTnoykq + L2iQWJuwZqvEUpzc1dWjtMTSiRztZfRQ1CceikpaaC7Sbtlerbm05tIzcvSMnGbNRVqs3ku05tKa + S+yguf4DAAD//+zdWwrDMAxE0S2leTTQ/S+sH6I/oThyA45NzybEXM1Ig7n+4zAnI2tOv/FGeW69 + rGGed7RTZp4zz0c7/5sTzBXVu/XJHj7X/TOJz+ULQldfEELpnKmhx/SLsU4NUUN8Lsz1kSzzWS/3 + lugaMGV6zvFgLsw1GnMtCeaKYt0Jc8kWyhb6PHeNuULplJsHFj4Xn4vPdfCXPKBroYYO2+WvZd0i + iW5LBZ8Np7aotiZQLdp2RRKhGlSDahdRbU1EEleoBtWgGlRrvbgOpVP27qN7l3fvDZAbVXukhsNp + S6BaVPDWW/6SjPc7/ZKMkoxdJRlD6ZRv6TeoBtWgGlRrjWqhdMqWfxTy+qUI1aAaVGs4nJ4JVIte + 3h2qCUC+hnyu+AYAAP//7J1db6M4FIb/CuJupRBswldy1+2ms5WmatVkZncvVpEDTmqVADKk7cz8 + +dExkDYTk1A6bZLWXDXlhIOJP857sP0o9O7hSDW3weaKrpJqSqopqaak2ltLNXeTwCvhgqtoSG01 + rbaa3gfDBWKKdxUNeQ2iIU9FQyoaUtGQiobeOhryNqMhQGIUOD6AfQ6A9Cu+B1jIgpF4wtn3JCaP + PLp6VCEYAJtumYHd5R3lFdnsh04ET54JL/qMRJlgRc7nnM6FMxpFkyAp8JD6AHVxeVie63p9gZeV + 4OoacurWAHWnTwF1q5kI5SyF48CDvz2j++OA5WWPFqrMDJjCJwUM8jcj5n1ZHRJAyK1lpDPKOQ1b + OnWs7ZzqK5qkNfxfv6VLwNxs8mppnr3Sc8UyZO0pSQlQYc0R+771AY9EtNnStScDK49uSEh/cxlb + cqlb+7Nl2O3PSVDgXLc8zk9J0raqev269nEiRhWpPwE+N87jts3D3Q4039I88L7A9e7+wPUvKvN7 + BNc3KHVvW6mHwKmWOv2TBLdb6/Vu175d16D+YWFN5bJeVLlkPfF5pg2rL2oXJA5JDpeTOYe49EUF + xnUF3tKcnCPhwLuyKnzFgpgF2ljE9dIhoBUFXjaCny2j6BXo9rKB5hNnUZSZZxCLXdeNNO1KhmVt + 4ioiQcH+viDpc7uAemctB+02rjxZ3zqi96/gqodkrfyCpNq/2mmS8JDFIEVl/nq+1bVbNbcewjVO + /9vl1LWdrmUJDUwK4VlS1fWB3XXE0esInrmIFITy9PoudvQn/y3UM63EJfQpxiilAZux4KkdaOpl + BrI4paDNoSuAjoHMCdDMA0hp8m+V6Ab8PCh8EOJQ5hmlk5wu0qgAhP/QL2cQgpBbuGD5p0yRlyZ1 + p8ecxJlQUwVavfwgM62yCqv8goSv2dEjkrN8KYrQ63V91+1bro0dhBBGekePknhenTcw6ndt7GLH + dTwkDmGRpFAmcrsG5XRtw3f/0Dt6+ft68BvESb5aXpDTByCpj29YpsHz1gISayQIkkUC+Q8NaxeX + 10Pt6/Dv89PPw452z/IbDUzCQk2SSJtRqqXkG3SYGsm1/AYuUqUKuo/5DxbPElFp4uViSjkkPIpq + kwnxmPB5UVVwD+vFx/Kmv4z+OtHOEk6zXBtRfsdEUJMSDiOXLLuxdmpnkmPNurzXxwKAAeULluc0 + nKwGzII1vxo+Sx9jONPRF+RhEhXD48BFIo/9q+X112Z2Y05YRPmm8f+wSITeMXo/YQtogUse6QP9 + Js/TbGCaQRh3OQ04FfKiO0/uzHQ5jVhgwub/JuqbVt+0kOk4pmiZExT0Pcf3fGPqkNCwkY0M33dC + wwpmtus4/akfBhMPoe49nabVCpUJJzFknapVKpMFeSheXlSfWfz4MmMZw8sGvUptCaRsUQnX0vwY + 9pgzeju39hZuNjfa3Y2vLQ0Pg2DblC5xNBBbtfml2vxyX1gT3G+AkkTNZpir7kV1L4pU++rj2uFO + YoAbNL6kz39biBrMJC+Yt85zOyG5Hvk1wAGrw4hu4MXFznksRxPaqNW+agr5QU2aQg0mTSGlppSa + atYDqnDnQ4U7TQKZnWqqwNU+3X5JqSmVrFHdy36yhB9hMiZuIK9ws+1vlbxS8qpe6l2xmK4LU4yx + gS37rZWp5aDnLAfZ15uKd7cmBTfY9xYreaXk1eBY5NVPAAAA///s3csNAjEMhOGWln2Ituj/hJC5 + 7IE4iVDIiq8Ja37P2PP1weMYpR+vQqRkrbOvEdQsZHjhUyyMeeHGy9Xwaq3Aq2iybU7ocK+4V/AK + Xp20TaZ/bkuHT07/0D8f5diF9jrwqh+vQqSsWaP1UfF733iZMo8Dr4yXq+HVVoFX0T67wCvhwL6Y + DveKe/XWNuVv+xv3invFvfq1c/5H6Z3QNml5tUyhA1CRZVNpXIlsSmVRNCtTiMpQmUxhb6Zwr8gU + 7qgMlaEyVDaMykLblK34qJZlxXvL45DUrmhQX2xKZdEp2+zgiyKKIvLKRBFP2qZ86X6gMlSGylDZ + MCoLbVN28KNF1jdDVIbKUNmgatiUyqI+9o7KJBglGB/z/N94AgAA///s3dFKwzAUBuBXkT3AbLo0 + ybwTL7wRFCbel1IxMFpZW8H58pIMEdYkq+2aNfa/XreVLsn+E8j5wuq/wTq0N2SoylCVoSpDVeat + KmNtDNYgVSP/oL3zgEarOMGBExxqFTmZfzjyD/IP8g/yj7f8w9v5R/kTmvPTaOaNQkf1+5RFeHD5 + bndyXxbpLwZnovLUS0qFayp1xeNHvvuxwr4WqQaLpf78xWu6rTRNOE3Z/iL8Oolt0HzZ1HZpngyS + 5p1ma1/adHrk+wVoe988uTd3nRDbOJWFfZjGg4ZpEruFbodJLibFoLufrEmRvUvfU0WmXm/k3jlH + Nno/MCBoXtlCbXc4r6uRZiQ1ucoPZaaFTdeTvS9Lx8IDXx6+/CBfnoi5+fIsGjSdqOXP4CV/k9nW + LduLEER2f9a8TyTdpzPPTGnoSWaFzK6edZFzRvy9v8POyZJzz+I8JXwpeonzPSNtn69y1iWy/jw1 + E4yyPSc0FuwYthcRZRywfWfYXrD1arV2wPaJoDTiVLn25A+wPZsmbK9Wrf8p2yeim2xvuc4s2yfi + INsDlwcuj46PaCg7IQ4RuHzfvlbBAM9oKIuGssDlgcsDl4d+OHv9ELg84s4Z0xdw+Vn1jwUuP9av + jGoKywvaUwOXH3u7hHU5oxDMYqRu9uieRroXHO4ALg9cfryUG8ySg91k7CY3lyqvzLj8NwAAAP// + 7N3BCYAwEETRigQ1aP+l5SbkICgkZpDXgReH+e6un1xevPh6Q65KLt8sk23LWb7uD/AKXl1kOv1+ + tXmIP/w7iFweXplekcsPwityefEiXsRLnFyVXB5emV7dkQ286oRX5PL6j/6j/8T1H3J5M3Ury89X + hWc1osCVZXJ5Qy87hT1euf1Y38ybUFknKiOXR2WoDJXF9R9yeVSGylBZUCqRy1tFdOmFysavIpLL + ozJUhsqyqIxcXipJJamUlUrk8qgMlaEycvky4iC1AgAA///snVtvozgUx7+KxT7MrrZcTACHvHU7 + 23mai6btrlaaUeSAk6KCQQbSqebLr45NmqYB2iaTS2esvARicjCY4/M/Nv7p9TcOt+pP0+l9Sjhb + Xb8EY2xi1zu+QXo9V+gQ8Y+Gy+s3OPQbHHqu0I6z0hour/M/Ov7R8c9x5X+OCS4/mwk2k2ZYmo6j + XAEBjZFj4WNFz++bGr5vBvPeKOUbYuYBX/56CNoHYJS31RIegSlgcI+M273N7cRtl/Ys54otuTOr + WxHg3+Y1eMANTbdRbM+uWXSTcHQJVWoz6Y4cB316v6lNt8tmXlfdRvFWRnvRspsSlvsfU7cDWP2M + xzTYhpTtDloMS59zS+/Q37zqgIL/RaObXq+0IxB68KuB0MnBQOiBv5XlQX+Lbk6gvdNzt2rSQV+T + vqjFlEoE77rZd4LOWbpVrUl/d9tb62PHmP+sJHhQRGu23okkTUv7HIKWz13d6d5p8L5nOeQQtPT9 + 8uf94abQ+zaxcl6n6Y+v38ao+1bwfDCAj/+YPE/CgaSe3+9VMpktpCX0HuZFwaJkmkQPy4F4rktQ + wQUDEQ73GO44nVHgcUcwkiTuFur6iicVSHlQ3FDTKWPjimVFKrdH342PU4hB6A38YfO1i7ShXvxs + kpLdhS4F5aWMlBUovNnoPmCRULhPLXQVbSPShwEmXtBHpPeIFw4JEOmdFxDpCfpSO44bIDLsYdMn + JaIolqG35NRb6L+8FqhJeUi1kPP0DiU8SuuYlRJDP4UkC7r896ME0id8hmqeVKWFTpf0+pVf0O+V + 4q2foIrx6kT+Clusiqw/EBV9pHv0IUdZLhiqrilHHjpr/hlaRimPpUq5gfeFY1U9TtMUzZs+Df35 + 6HyyuqzQhCFpssrRNKlWj5axz2+EwAUi/htEebzYN4R9AX5jLTM+t1RweFrgAeJ1NmECcj3qESqV + OsnFTD03eIANtdncqauLt6foPBesrNAFE/NEhgAFFdCbtyV6Vn56Mt+zUro53+XVhQJMZElVsXh8 + H0TIZrIMKRobn/8xToyMfhunKjIbBT44p7Vyl+perxf+emIUgs0TdjtOMnAytUiNkXFdVUU5su0o + 5pZgkWCy3VmzfG4X9SRNIhuIArYT2m5owxdsS+czDuPJkMQRMUnke6YXhMScOIOJSQYe8afRJKbD + 4Zg4jnXLJuDzCpFE4Nk45NG+G82gdUa/NQPoix0JfzCiDg3GGBmLdJ0hlOOBC8TjFT43dswBfpA7 + bAw22TT53wtDC+f7DJcBCUhIA2a0gJNuip+WBTv8KuIamqInbehJGz9oVV8cytGHoBeaorC4nvYy + Gs2kp4YdfAmXo19GCk7QvCpePhIq/YyDn/JFoYn9F/uiPvX1ONyBsscR62hiiiam6MWjdjYhTAU2 + /hMOR0sszaXU8+L1GpqbglOcZ0gsLD3RQEssLbG0xNISa3+zT/EzNJcC67pacy1j8VdD5O7Tvft+ + HRDO5RW9C6gX7N2F5sJryeQ2h6M1l9ZcWnNpzWVsqLlUyAJ66n8AAAD//+zdiwnCQBRE0ZaiRsV6 + 7L8HwYegCe7H4GajpwWFx9ydycz7KxN7ufWyhnnekb7J/BkaDzQedLeOsi9grljbrU/28LnWv0mY + C3N1xVyhdHJqaDd8YqxTQ9SQ/qc/CPmUyJrJM/H8ysSI7nPZgSvz+Ek386aMubTMbW2R8lDAXLGl + O2AuPhefq3Gq+cVs+wXmCqVzyRwcPhefi8/F52qvhiavy/PjFMu6IokiiSKJIoltx3OzqBYDuyKJ + UA2qQbWFqDYWRBJHqAbVoBpUa41qoXTS3n3M7fLuoRpUg2ptF3WzqBaru/WWvyTj+k6/JKMkY1eu + Wiid9Lf0R6gG1aAaVGuNaqF00pb/fe1blyJUg2pQrfHMbhbVYor3DNUEIAUgBSCvi1AtlE66XPH0 + fVS7AQAA///snW1zmkoUx78Kw7s7o8gK8uC73FzT25lk0om2vfdFx1lx0Z0gMAsmafvlO2cXNNYV + EZNU280rDUeOi/tw/gf2/FT9erUd5MQLDSmp9uZSzdmG7m5NTgLMq6IhFQ2paEhFQ0dGQ26NaMhV + 0ZBKXKvEtUpcv3U05G5HQ4DEEDw+YKb2gfXLPwc4SAFJvGD0WxLjNZBuN6sQDABOt8zA7vaBsJJs + 9l3HnPVOuRc9xFHGGZizGSMz7oxE0ThIBCBS75uG5cJzAhJCXU003QaT7vI5k2718EHxYMJZAMF/ + AdDek8G5OaewkvFOQsIYmTZ06vq7nF7wDiTHuwPluBLLfXqw9eOA9kOuUhu6ll1iGCEhQH8vBO9S + TnElWdPWyrrvZRILpGd1h4Lr/+Z4ea+hy0rgcFMab/Wv2QzI2/inBFbRNqKa5NkrdR1X1r7hHE/J + CzuyZTzs6yTAR3bRV4bGV0zvfyY0vkarrapWDwARLXX6Nw7uK5eZ/a49e9f69plO87k8cjCP8Shb + Z95n2qD8oHaD4ynO4XQy5xARHtVgtKvB1wLee+hkWKNj2TuGU9GjKj17TaDormwYDcnjXij6ORDt + Hdk4/UCDmAbaiMuGF2tcY7j84a4sUzYwbnCq/addJgmb0hh0k8yfbSEDdRs5RbKu+SHCgSCM3+D0 + 0NmuwplsPXvHaBRlnSsI9e52LWgNLyjacUH/33dBe75veG4jp7Jg5GoZRfuGwZeWjoXYLFDqet82 + PNtBPcttcYY5jxW49HR95Hf1Z/8VipmU6hJms/YwJQENafDcDnT0MgMpnBLQ4zA+YbTiGQaCeQC3 + mNjXUmgDcx5UPYhvaGlIyDgnizQSUPDv+m0IISu+hxMWL2UqvDDZdXjEcJzxsFvg1Is3MtMyk7DK + KUiYmi09wjnNl7wJlmV4jts1LduzTPjTW3qUxLPyeBuZvmGjnoMsv4vWFkkKbcL3GyBOx257zl96 + Sy9+VteH10m+2lKQkyegp4/mNNPgemsBjjUcBMkigZyHhrSb27uB9mnw7/vL60FLe6T5XAOTqZAd + ONJCQrQUf4VZTMO5ls/hJGWuwFjnPGgcJrzTxMvFhDBIcohuk+l9ZLX0hM1EX0EW0sXb4lt/HP5z + oV0ljGS5NiTsgfJ4KsUMVjBZfmPj0N40x4Z18WXXLQADwhY0z8l0vFo4BWB+tYwWPkZwpKUv8NM4 + Eutjv+fx5PXPlnef6tmNGKYRYdvGX2BnCHmg5HFMFzAElyzS+/o8z9Os3+kE09hgJGCER97GLHno + pMtJRIMOVPzvmH6n63fgRa/Dh+a45zuhY7phu2cR0rZte9L23InVDuxwGriTnuV63bFrmsYjmaTl + tpQxwzGkmsqtKeMFfhIFrMr3NF4XtFrGcPdXL/NZnCMreuFGbh9BYbm2tbeeN3ezXV13P7O2MDwN + bG3d8qaq4mUzkFJx+c6IpaSS+o3r6iK/Bj/S3CphoKYXNb2o6eXXrGunW8gSvmD7Y3r4LUKzxuPj + AnTbOzTGkQuSnwMcsDqN6Maps2v2bEIbtcVXbfE9qS2+Zo0npUylppSaeiksrVJTv1G4UyeQ2aum + UL3StypZc5IRjcKTqGTNueFJUA15herVvFXy6pQmIyWvlLw6KXmFahS7RUpeKXml5NUr08R/S3mF + apSrFTjagwOZZvfCfwAAAP//7N1LDoJAEIThKyECl/L+exe9MCQ6PTwcFL4rGDOpv6roOtotloVv + +fW4N5d6Xr6FV30FXsV87eKGjvQKXr1Q748qOe//uK4ebcOr0DaZ/rl1K3Jy+ucnHB32Mnv5MLwK + kdJnM9ZjxcF9z4v0Cl7Bq33mZFO8isnZDl4pB64zeuDVcotnxnhnwKvQNuUT+3fplfSKvXy0tXMh + ezm0TbpYrVPoA1Chl1ep3XJsSmWxLqtTiMpQWTNldDoqGyo6hQMqQ2WoDJU1o7LQNuUoPvZkRfHO + 8qgi8ooajcSmVBZDsosTfFVEVURZGSqbaZvyl+4jKkNlqAyVNaOy0DblBD+mY10zRGWoDJU12oNN + qWyq24NFZe5vaDDKyj5kZVPFecMJlT326go9AQAA///s3U9vgjAYBvCvQnYeCi1S8GZcstPiku2+ + dFg2MqcGxGXbl1+KW/xXlClClcer1RobXh4aeH94QAzN4nEHY4H8synAKnhq5B+0dz6iVQee4MC9 + QrKK7M0/DPkH+Qe70tiVrmxXmm3nH+lPZJ5fRll2pXeafU4ShAuYrxdHX5MxX2pwKitPviVZuDSR + IwZzEf9ZYd9XPKPLo+z7F6CqrrR9Hfx6DbR91YZ1DeJ6DfZ5jaS9rbJH+68ieIvGxqPkuZWwctey + jPu7szLtT6WU75zUI3llYeeEIhRxLIaH/r8kb00n6Sx/Ue2jFrVMbR4EemkEuu01jUBntRHoR85M + d593fn9A8t/z+f6ZiaoeZ9nkg38aD2kc8sze3Z72NuZzMTrEn1at7CIpRc/RSHLP5fna1XLeFarv + xLXIjv9xJIxBEKRTLg9UkST8RejBwPu05VL9GfjDXXaHWi3HVmLpnW0kveO7miPpq7cNq5309RH7 + qPT10fla+uo4BZjuEYd6TILpdh6YbjmEuNSXryWYnsMkLsV0r24w/VoxZ5QYvZue0Z+8T0cRH88K + KusXi6wzqxiynjNOjawzqxRk3WZtytrZof1EWeiHoSNM4Ye+6fAON3kQcNOzyZCGxA48tyiyTjeQ + dXoaZH3tjLnvsISzjt6q59PUGc66Fs46Koyu3DG6N6PCNIda36xDudc00NbBAWoebeBVaK6tI/Qg + 9IDsalpP1SrBdVQYVBhUmKZVmDMw13Gdpdk2D9h1XGddKruOFIQUhBTUtBRUpbyOCoMKM7sQfP0H + AAD//+zdwQ0AIAzDwIXZ/80UhFBuCctWVcWBfND4us7SWd7LTVFE9tdZEAtiQTrr3AQ7wiAMwvxG + mAdW2HWWztJZOisyxM6CWBALYkF1W+zABEzABEx1c+zyTJ7JM3kWWWRnQSyIBbGgulF2YAImYAKm + ul12eSbP5Jk8i0yzsyAWxIJYUN06OzABEzABU91AuzyTZ/JMnkU22lkQC2JB696LxwYAAP//7J1t + b9o6FMe/ipV3kwjYhISk77qO3k1q16qlm66uKuQaQ62GOEpMH7QvP50kQKFJCAxKuuu+Is1pbcf2 + 8f8cB//+qq947BDTrlWQVkFaBWkV9C6kdq2CtArSKkiroFrC2pdpfX8Jr32HuOK6QdoPQTA/AEbc + y+vCn1TxCH2V8mEa7rgnHTuPPcpVvCcQ/QGp8AfBlre9nEJ7PmcqEqysS+0S7nK5E/CKmpkidHNL + S8DI5rdg21Gb26mTcAQk4j0NpDwXdCKDlE1a3qUwdbcrtZOHXT6TjO6zUNIu8kNyqoodEVnniDQq + fbeodMfWqPSNAfHdciWxR0C8VQaI7wFmOrfQz5Q9lHrK9UW7nSIX/VMMCwZXG9edSP8H7HQXN72t + WPFlq6tQL9susMUlOnnj9VKwQDDUT8KQnT3Qbt4Kd82f1kjBrfoub1n7JxK+H7dOYQ2/KlrX/n1n + CL2DnaZNtil0S2W9VfvyRPXp1Pd3Px4tkudLLn3K+BDJAJ3T/NK2eoRtB7dLHIrP0QVj05AGCp3z + OKbjwtlw20iQ6YnsSaJoF9sEMO7z36aBPZ8FyuAdzeuQMzES7LUdhPvT2DgyvkuFrhbZgIYBDgDc + AR1TAKIzSEpGL7PMwE0gFKQhIFsALR1xPlB8EvopZfyXcTGCoJI+QD4g+zhPHrzKHGQmRbf7EQ3i + RJKmdPbsIs90lvp4iyZfADsbhk+VUNOkCZbVdJ1uu2O7Fk5+jIbhy2A8u28S7DU7xG67jt15ZSFD + aBN9QGdSzuHWTsd0nU9Gw8g61QXbQKp5VlfxZ8Cx9+9FjODJI0YDRBmTEwlJGkTQ+cVVD/3off12 + ctZroCeh7hGYDFNJTn004hyF9AX6B1GF1D38k1kCpLlI0ohgJJPx+aZMEaPjL8foRE5CX9BAvfmj + 24Yho3E6pogFIwouszbdXH85Rqcy4rFC1zx6FAzGSUgjWKzzUjpLt9Zmdpass1ot2gcGPJoIpfhw + MNcIKc9+rhiyMvpwp2FM6PPAT/XmkWMnefhVy6sf1ez6ERU+j94a30Lqnj8K/jQQEzrmg2nkG0fG + vVJhfNRqsWHQjDiLeBLhNMfysRVO73zBWgAfaGGv1fZa8KHbSqbwAFt3nA0xMS13iM0OdS3Tw45n + YmJZXbtDrY6HB12Mm0/8LpztGwwiGow5zLpse3ZCn9Nj/mbXIlgc+zcNYMPWmGXojCidsv+tbFMQ + r9o2hb2Cyy2efZBvhOTihIZQ18zwOA55sDSXiOlY741SrXom4qmIlqn2eo9C71H83/Yo1m02EK8C + vhJXeyNeuxdCcP1YcVnfr1RrT9UhuGJ1LkXAPwiZu3CZPMy6Vt8XwaCC5k24+Y4nrvD2e8rZtTd1 + QvnhyqrAAat6qBunCvrxw0gbzanUnMpacSpxhZe+sI6mdDSl5Y6WO5tDKnGFaIpUO51XR1O1VDQ6 + mtLR1Ef7Wg2pEF6Rakfz6vCqTs5Ih1c6vKpVeEUqnMtLdHilwysdXunwavPwKhUp6+i34II2FjJ6 + L7wWikaHV2qzzarfAAAA///s3dsNg0AMRNGWSHhUkv5ryYcjRSBYDIoWZTkd8IFWcz1jD7Pqcrx6 + JvAqWnUPJ3S4V/Dqi3p/5Jmv/7iVDfPZR7SAV6Ft9vTPozvhk9M/9I+wTtNhnYyQWcyAVxu2x0RH + gOeFeyULeOMs4O/wqk/gVbTidvBKOPBcKhlewauPtim3A/TcK+4V9+rq0c699M9idLxarC1TaAHU + hpZXqdKrNCSoLMpwZQpRGSpjep01vYZEpnBAZagMlaGyalQW2qZsxUcNLiveWR53M8yKarxKY4LK + ogP3sIMviiiKyCsTRZxpm/Km+4jKUBkqQ2XVqCy0TdnBj/Zb1wxRGSpDZZVqbXepbMrV2qIy9zck + GC2IbXhlU+K84YTKUBkqe7WRFXoDAAD//+yd72/iNhjH/xUre3GaBmmchBB41/V+aNK2no52t0k3 + RT4w1GpIIsdh1zvtf58e26FQkhCgXEEzb1oSJ0/s+Mf3eWz8OYcVjMEm0LaCtG30j9ne+YB95c0v + OMwvOKAX2ap/+kb/GP1j9I/RP99N//Q39Q/wJx4RfsMpiXMqLwRCoeL2XXL2NU3II/etCqUHp6J0 + GhU5pLheUF7Cwr5ZZEkrtIaWtACQwtmM05k0Q+M4GqcLygFfOHRs78mnY1WR4loi4tbYcFerbLjl + ogId2ToH0ngVUXN0Ryb0mVnfL4E0PxZ0u9korjPKknqb7kE2e0Ezgfk9TbMarC0+H1z8i4Dbe24N + TLxF0QZ72gRSziYPlor8SAUbunVt80iFiqvq61WaKMrosazuSQ/eu1hxFUz7imQEqLYXI/a1sXxf + pwWMbwcgynt+TdXVQHb0q0KI7jqgtLDsNTeaRiK8exARPmgiwo8KPiUSGLtp9h0nCxoflOt+cy/c + mGt8UK69ply/AWZypdGfyfi+cXjdbjr06/qOj2xSU7maOsbtFqta1S85elNeiH4jyYQIuF2VccGL + g1pViOsy3NCcgtMHg39PVP3+7Pher2+H/n5GnRqjf24z6vsDe+CeOEW+0Xdg4uH5LQZV/d17Nk7Y + GN1ogPtz1Zgq6feOszjOL96C4vxQN4zuZW5PpSCdX6LczoiroX3o28EK6l56nKETBgNr5ahymGnp + VEJv0h1ldMymbLyaDrzoIgd3OKPgjsN7hbdMZgSw4GNYScEfSjf7NmECnHpwvSGPU0ojQedZrFjb + 36zrKehXcg831P/WsVRVFFovlq9PdMNJkksRp3jl+kv9BWVoYRlkqEv6b8eKiWCikFnzPDsM+v4A + 973QcRwMoPs4TWbl+S52BraPe74zCHzPgY9MkWaQV3K/BsMM/G4Y/Gh1LP2iQ4w+FY7jBih04Wgq + lotVNMweTnvjTP6hkmzPckTQREo2Sbm30V9pwZGOhEhVmybxA2LJOC4mNEfijqIpxF7QzcdrBG+Y + JTMEWPTcRpcTpYRJjBZaNCDCKcrIA7QrRIS8/hFMb6PfUzRPOUXijiTIRVf6hlAHcoRSjvz1WxHl + ScAwArdSz3wZrxj8af2p0LzIBfpMkXwCkaIpE+tXy0HwhxBDYfj4FSLJpDzmwrG+88pWJXehi+4T + VGJd6f8hPIEGA20oKeafKYfoj2pFuTXsdayUz1T7wR621Ff9xm5Hry/R25TTXKAR5QsmNV5GOAzk + VaGetVNbIz5rqfXjPpY9JKB8zoSgk2ipHxTLfqkmtI0Pf1gda06+RLHSCsOeI8P4T9PdcMJiyjcT + /63XTkWcJBDbKtdPRXPyRc8llQdYsjK5BK/QGlplCE0iYlWVXptCwLDXXNfbupu3MrS5yW5t631C + pdXJTwNM23ZLnrNh0xrUgEENvNRWu3jQAhTptFuobnoZ08u0XiWha+QZkQRqN6Y3O86tz1dCQXVv + s92nJ50Wy9MV2La3c1/U5Ag9lTuQ9jS0TtBmsdHZCB1DiTQYk5PCmDgtVmk5xsUyLtZOHaERP/+r + 7XbbyJqtLpbi1a7u4mRcLBPIMb2McbGOvCQUt/C5cLvtc43PZXwu88sYg45s9rlwi110sfG5jM9l + fC4TcN7b51KSZRugFnqi3WWNmTw/oZiymTwXpzGt9R8AAAD//+zd0Q3CMBCD4ZVKm5Z52H8JHg4e + QCi9UpGG6lsi8h/77BP+7PyKucYEc8UE7vZkD5/r+DeJz8Xn6srnCqWzpoYuwzfGOjVEDQn58Lme + kmVc28eeE53/XpmeczyYC3P9G3NNCeaKgdsBc8kW7or3aIDTAPdQOvUFgInPxefic/G5DlBDb7/L + H0ezRRLdlgo+u/pq+ziVBKrF6q1IIlSDaq0PUF8GWM9gj5VEJLFANagG1aBaa1QLpVP37mMDl3ev + BsiNqoKOho/TnEC1mMLdbvlLMh7v9EsySjJ2hWqhdOq39DNUg2pQDaq1RrVQOnXLP4ZxdSlCNagG + 1dpu366iWuzjXqGaAKQAJFdtH6otiXLFBapBNah2O0HG6A4AAP//7J1db+I4FIb/SpS7lSDY5Ju7 + brezu9JUrQam2rkYIRMciBqSyCQwnfnzq2MnpRQTArQMqM4VaVwcE/vkvMf2eS5rO4izScKV8LmV + N6RSTR+f7VVtB1FrjMCY7PSGXOUNKW9IeUPKGzq1N+RuekOAxBA0PCBD9gDDyv8PmIyCV3jFop9p + QlZIuO3YQCgAeLhiDuXuFpRVZLNfOuE8+YjXoocknnMO5WTC6IRXRuN4GKSC0qj3kGGWh+NYlotg + BltGjGuIiltjxF2/ZMQ9r0QoVynsjZN2ZVDK/pSM6Rtzq0+NHz+Ok93nixUOrVpGPr+e0uAxLXJt + AKxxKWC3h5B2f3t6pLx3WsI7DSljdHxRlPdaDu6hENz6duJtnShKtveh7lF96NQse0sG4P2cBuQ9 + H6XsSYJNDYH4+z62yPW3DZQr/lqRVsdJ67Uc9Xp74NRz42vsAT41ur2LPhq6vc4s7K7StrbY+geB + 2a2t2T6qZrP+LVPewPzt+1VX1p/5GFmSJ61fsJBwPu9mtX8zsqDxUa1268fSO7barGv1DYC5pZX+ + SYLHWttxTsh3E8mG0C3JtG/adZqycZSABpBW6FqGZV4A/N2Uub+fijh++5/TlY2UPl3u5Mwf8uTQ + lif3364nZ3m+4doHVYpl5u8+JoEgj9+SbN+BuL0yRzb076MgiQJtwEXnm/2YB3pfXAQToTxLsrne + swybH2aLM8W5p8Clp4dc19df/FXIZ1qpS3hxtfsZDaIwCl6WA1FdzEEXZxTEOZgCMAxkQoAoHsDc + CnuqVDcQ4kHigxKHloaUDnM6y2JBCP+l34XggpBH+MLyo0ySl0W2XR4wksy54y/w5uWJrGgVVngO + MEgAmy09JnmUF7wJpml4jmshD5k2gkNv6XGaTKrrbYx8w8I27rrY6a5KpBm0iTyuUTkdq+05f+gt + vXysngmf0/x5f0FOfwBKfTCN5hx8rwUk0UgQpLMUAiAa1m7vvtxoDzf//Hv9+aalLaN8qkGRsRA+ + JNZCSrWMPEGn1Eiu5VP4kipWYKwCIFESprzTJMVsRBlEPES3mXPnOGUT0VWwiXVxWt701/5fV9qn + lNF5rvUpW0T8hbvGsV8Pb6xd2hnlWCtd3uuqAVCAslmU53Q8fH5xCtj8Bugerryi3Ns8kP265JeH + ZuUGjEQxZZuFv8MuEbqI6HIYzWAEFizWe/o0z7N5r9MJxonBaMAolzTGJF10smIUR0EHsv93kN/p + +p0u7mDc4SNzOHaw53dHdtscu07b8n2rPfKCsG2jMfK6FnbNkA5dhIwlHWXVFpUhIwmEnaptKsMZ + +SF2SFfnUbLaMV0kMFWkV7EtzpQVnXAtzo8hyVzb3Jnbm1ezmWl3N7+2LHgeCNumid8vhmKrsl+q + 7Je/iyWJ/QYsSdRsibkyL8q8KFTtB54/hBtsf832ny5EDZaSC+itva8RkuuR1w4OlDoP78Zpsvjn + Ylwbtd1Xbfc9q+2+qMGqKaTUlFJTzSygcnc+lLvTxJHZqaYEr/Zl/iWlplSwRpmX3xMl/AirMXED + eYWb5b9V8krJK7UpRSW+3SKvcIPEt1jJKyWvlLzaiEkq/6eJI7Mzda1A0+7tyKi58LMIGKu5cDUX + XohO9T8AAAD//+zdOw7DIBRE0RVFMv5lG9lEijTef5niVViODRQols4m0FzmwtwGr8YCvIop22pD + R3ulvfLm365Ilm2u8k8aGnpy+Uf++RnHXp/tnQsHKaVHGufexsG4DJXXuvCqKsjs7oAPJ62Xgs/3 + HS9/6ePAK8fL3fBqKsCrmJ8d4BU50JdqZhsb5cDINuff7U/aK+2V9gpe9cw/u6vjw/VqTqEHoJRl + lz79VmQvqSyWZjmFqAyVobJWKpsLnMIZlaEyVIbKulFZZJvzKj62ZVXxvuXxkFQV32kw9pLKYlS2 + usGnIlIRqYhUxCzbnL90X1AZKkNlqKwblUW2OW/wY0bWb4aoDJWhsk7bsJdUFvuxT1TGYGQwMhgb + u7K14HvDFZWhMlSGyrZeVBbZJluDPZiq3uefLwAAAP//7N1bb4IwGAbg/+IP0JZDC7tbTNzlknG1 + yyZjWROCBnTJ3J9fWrIs0xYRLcfXWw9UMJ8v0H4PrkqjvfMVjVbVP+KI1qmab6d03APo3yCmkH94 + g/zDkX+Qf5B/+q49M+q/ys/zj/InNOenYcIHJdvq9ymBsHL5Hgt53ObiD4MzUXnqKaXCHUr1iufP + tPi1wr4XQoPFUn/+4l1kpQYQB0nbd292uzGXh2fNc5NUmXyIt/TOcLZyS871zXRfOoK6+xHtTYbq + WuyEIjZXiTzWbj3RBWxUAHvHynwf+noPyDw1FZ/1Nq98UFcHk1Jb/ZG5vfx4N5Wf0KtHyGvKbATa + 3jVtz3qj7W/cMmj7qdP2rYXtYSPsE/XQa/O73H+1jfBOOPuQBksStdqoKeNuDlnm4PuZ4t5TIbOs + XG1UMnmxRYR2P0xCLbvz9eLuDNmS+xba3teP8JS253FMPND2jWl7RhgJfUIItdD2QRxxFrBrafsA + tH2ntD0jzWh7y+vMtD0jFW0PXR66PFo+oqPsgDxE6PJtb4uMRnhGR1l0lIUuD10eujymH81++hF0 + ecSdO6Yv6PKzmn4EXd7VUcbZFMoLZjdCl3d9uURNgrs44X40xUgN9mRMjsaC1R1Y3dFgdQd0eeQf + nF6BP3R0egVdHuUF5QXlZViLx7y56vI/AAAA///s3cENACEQw8Cer/8HLdwnyELTRBQrC4ZX8Mrj + +YuP59nl9R/9R/8Z4RW7vHgRL+KlhVfs8tYr65W/yfZ4xS6v/+g/+k+u/7DLuyl0svz/VNiPiezy + 9+703BS6KfRj9IzK2OVRGSpDZS0qY5eXSlJJKrVSiV0eldnKbGX7rYxdXv/Rf/SfXP9hl7eV2cps + ZaFUYpdHZagMle2pjF0elaEyVNaiMnb578lboQMAAP//7J1bb+I4FID/iuW3lRKwcyPhrZppd0fa + qqNCZ1crjZAJhloNSeSYXjSa/746TmjLEG5pl0vXVR8IMTl27Byfi+PP7D9m6PKGLq9J0YCFnrIc + VgxWevCsyHm6AHeiduDuew9Bs/+q2d7ZrJU2dHnA1wMccDKRfKIZ9jxJBnFW8gBxl7Y0mY4QGoVB + 6FAvOlYS/UEw2wfEivvBeqjsGkAzPR3g9r7h9J069Grvlo34OwtaC15tSiU9ANH76MDlhyDRh84q + mWv1Dh9zKfnotFj0zqouzWZqdZ/SN/VpQ6b0uofz44HZfQNm3/l+fzww+xbj2ls1rv8SoxWDy/He + IrHOSPpSoPP5D9ElS0dMweXqhGsbtQnbPCB1yqqcBsQw4egqjmc5gwrwogB794S56nRNU0Ui1NM7 + Msf3SFN/A96ckpbTaSK0Uzez9vjDhummWfvIivb9val9Xhi1On4jobROBXxNWMxHKEvRJct31Xhr + hNX5Zb9LkSRF+wIch+tVZkqjGxrUqfSvIk5FjPpsuMLAbSSqoVWiA4OsdLAHsrTSul4rdOHPtzSz + XFtD2sMOCem4+NW3kut0y9yJBsVt93Iei7GIX5crFFOzAljyOYfkC2gd0EFswoBDHkPEUD4N4kzT + 6G9SoSCFoxh44BYecz5QfJon+rj7A1+NwUNgd3DB6uPya/Vl5L9KQ9ed7kuWFto+LaHo1UFd0Xna + 6DmBtFzop4UTpoSa6Sa4bisMOiEhnqcDFgRbOMnSyfy8TUnU8qhPSEgiqoMaukSWQ5vY3UJMNvDs + MPgNW7jq1tCHz5kScRWgUPxRQRtuRYHgfqOYpYjFcTbNIMGFKLq8uj5H387/+PLpz3MLPQh1i6DI + qLTPWYLGnKOcPcGgREwhdQsXmYdEWtjCVReLdJzp8bkkUxTo7PMZ+pRN80SwVC396LuF09l0yOUg + G1djrcDdwMKZnJTji7oUl4dVS296n8/QRSZ5oVCPy3sRwyOTMwkzfF3oZ+HUxgjQQumqri+thgJc + ToVSfDR4Niz0DX8xMyoZfThj4Sl7HCSlWdwNfLhNSyWvv21Xri+ZSLhcLvzdwrnk94I/DMQUHtuZ + THAX3yqVF912Ox6lLcljyXWsqTXJ7tv5bJiIuA1sgjaJ2k7Udmibum39OA/cYcRpSGJ73HFd23Oc + yGY+j+wOGzM69MZDbxQOOoS0HvgQtEguRQy6IoWQ3A9chfun7LEM5M+PRfoS2J+lkADAZbj/Z5mJ + KEcuT0cLnG9KbJf2Cenq/3/m4qo4nL50JWauy9Y+kybrYRjeIuWLoCxKqU0db99ZLsevjs0OMe+/ + LTCN9KL64JXq0Fr1tXqpuLqeUS8GammYuWYDqpWLykDL2Df57mvItIIhdJMSimzq76qE6p2YXw0c + KHUcazrMflNmvymz39R/toa+NGX8DZrGeFOG4f1O5Nxq0jPeVNPFi88T7ylAVsgW3lSJ0XWNN2W8 + KaNejDe1h1d06BbuVUnfdYx7xdndhZCLkc+wY1NK9u0Kes42lf2lTgczdKAuJ2Tl1McF9vx+xkIl + PoJ7RZcixXWaxrhXxr0y7pXBGezsXpVGirtWvZQY3Z0NGZMLPwqLpuqGYzFqTPTmja+e/h/cK2cL + 96qk7+68QueA2at/AQAA///s3cENwjAQBMCWjBQS6L8xHiseYMkOfpwiNE1YO96zT3uFV3h1LV4l + 28zyz60t9OTyj/wj//x1/jkTZL7ugPvjJWt0H44X7RVeaa9qVuROeZU1ug2vtFfaK+3VIq+SbZ6T + k0Z7pb1yvay9qrpeTrYZ55+s0TVTSGVURmVFK3KnKssaXTOFVEZlVLaqsu3ETOFGZVRGZVRWprJk + m3EVnzW6qngqozIqK1qRO1VZ1uj+3OAbRfTSy0svL70+ss34pfudyqiMyqisTGXJNuMGP2t0/WZI + ZVRGZUUrcqcqyxrdg8pMMJpgNMG42JXtJ7433KmMyqiMyspUtnc3zv2pdMg/7f0l1CX+H3sBAAD/ + /+yd3W/iOBDA/xUrbyeFxPkgIbxxXfZupVZdLXRP91AhEwxYDUmUD2h3//nT2AldjiQktLTqnfsE + jWGYYA8z4/H8ZP8x2X/sw/Ufc1v4P670f6T/I/0f6f+8mf/jHvs/wJ/gDEBOMxwCHZW/DrCFAuY3 + StiPKCTPMLgqvh5cAipcnsKI2y1NSlbYT4XsEaklflVVyGqV0BWXQoNg5keCYKgMseaIP9cyB54N + jbGqMHEt+XAHYLirX8Fw+4qCotigOwDdaab9NgDQjQ/F6H4ziP27wMDfgWMPZJVjqCjNUjQKgmhH + F698X9+HJ19For0iMQFyqD5hPxqlT7iHd+6E9er0FQTjSomclt3Iwm6UaVdxaa8jn1xyZVbpCUZu + CSDcy8ylRhL1ucDmZiXP4+Keb4WMOivEwnojZJ4yQi3w8VazJbogPt5pwsdP8mRJOLb1WOwfCdnS + 4EVau80/oxfU2mrSegw840qhvxP/odFQnBY9sOss1F9ska2rZxh+icQqa/wlRePyheiGhAuSwdtV + Cede20sUNuoUvhZc3K4mo8XEsmuWUzGjGiX335i+3rcszfM+ABD9bEp5d1FulVWa0N0FRFXNTuEr + sDkLAHX+aqIso2pefg2ITxcoCtENibuaugZhVZ7m5zwIzv2lrhdlOthsuIsBRbe+n8cETA1NU4j1 + Xu+eYqNm4f19cuGZWDOtc4Q6VSvhK/ND5qMpD6ZfTb9Gp4tlT6e+zXtVISK+LqjtytDWBionpXNf + iMfWrucMILTe/1fkBWgZPoO57k1i6rMl838dB9mCPIWwP6aQdYCPBB+QrAjQz33I0iZPZTrhLmQZ + 5C4gxQCqLimdZXQTBwIp/lO5XULURR7gDYuHVRmHYkjd5WlCwpTHxQLFXjypGlrmS5p6j6pKQDKW + 5VwFy9IGjuv23b7hYYxNrKhKEIWr8nrPwJ5mG7bT97AFI7AYEcWgE3k4YHs6dm/g/KaoSvG9Dhx4 + HGX7cxAZfQT2+nTNUgT3G/kkRMT3o00EmR1koJvbb2P0ffznl6vrsYp2LFsjGLIQeQESoCWlKCZP + MCsRyVC2hjcpkyHac2aHhcuIT9AjmSxFo08jdBVt4oCRMDt60b2qhPlmThPIAolZloooMEpWYoIZ + lqGIp4Wqd5NPI/Q5SmiaoQlNtox7mTFJ4He9KutzcOlk8udgdPFhn9WGATTZsCyji9nenRBM+71z + UciYwhVV2ZDHWSC8hmG/zxP6/x757Xu7cdOEsIAmx4Pv4QwM3TK6m7ENrNg8CZShss6yOB3qur8I + tYT6CeWBpbaKtnqczwPm60Al0LGnm55uGrrh6Hw9zzDuO2SO5z3iYrdnY9vteQ72ev25t/ANx3E8 + 25m5GGs7Oo/LAzizhISQjCsP4cw25LE4iFM8Z+Fz69E8hF0XpUz4cZ6tmLoH+x0GNMbrWZ1bj8uG + wLIhsGwI/L9uCGx4LXCWgqgry+llOb0sp5fl9PXbqWBlendx991T3KJ6XnB3O3dakGea5ZlmeaZZ + nmk+cGWaq8ewjKZk9ZisHpPVY93xKrhFNCUAurKRr4ymZDQlo6m3KE41WoRXgrsrG/nKwznycLI8 + nHzu4RyjRSNfQ4ZXMryS4ZUMr7qHV8JJOQXHBRPU2ZGRe+FyL1zuhf+n98IvFV6ZLcIrwd3tXKFz + 2d2rfwAAAP//7J1LDsIwDERPhBSXJFyDS7Bgww24O0Jm0xDlYxFLRe8GVlul8zyO5/fv4n0Bq/lZ + gFfgFXhlxSvVNj39I4FEguI3dJh1K596i7IWlSNhsJzr/XHbPz8ROckWvR/glsKk7lhUyBH1z4iQ + KXrA1RjuZIgWAK84Xjhe/vp4WRiO28UrDdAN4BWr5Vity2pdI16ptmlHC5xxr3CvwCvwylP/FK3j + agw3M4U0fWj60PTxC8ftUpkG6DJTCJVBZVCZlcriwExhhMqgMqgMKnOjMtU2bSteA3Snr6zjleGV + 4ZXhldnCcbtUpgG60w4+o4gs0mCRBos0dtqmfdM9QWVQGVQGlblRmWqbtoOvAbpsM2RAmgFpBqSd + wnG7VKYBuheojAlGJhiZYDR6ZXlgvWGGyqAyqAwqc6Oy/B2OW4nsRv88nS/IvwAAAP//7N1fb9ow + EADwr3JiD900oI5jEugbY9W0h62TmNRN2jS5ENZokKD86bTuy09noBAaG5a0aSj3WELsOE0uZxP7 + V3q2Kj6F6jJVFY/lgOap5v+cUvEk1cxBPIf8x90j/3Ep/6H8h/Kfp449RzSD1b2f/3xvNhYIoPIM + z1CBVfshXLjQ/PqRfxsGcq3B5QF7uAlZuDTGb1zceNHKCvvbkHdAZOOsMZHTWLmJOfbbnuhbRnsb + bGpvd68JLN8gOAxH/Skw845jNpk/eeFc41taRdXtvCoHYbAgDJ8RoN7hZuXbdG6dqnH6d2FY9LrF + Nbbu86heEj/SeUVpMud/OZeokZ4O/VvjXfo2TDECFaya68T4ME30ZLy1i4w3x4U8fnZ4LcfeQ59Y + S9c6P9A3ju9q3B6At22+U4wyPC8lwzsmGX6YRhOppNKcGyaSN960VKtdc+w1ttoq1Wrb1OpzNHxz + K30jR7+Mz5o9eHihe8hd+mON0W6KhrtrzIsW72M4X+0IH2QwlgkWl1c5ZkKlGmzpGmxQ6V1W6sIS + mttpeUWZai5GgldM01cIctuMacDxLzvBcZu3hVWxci7sXrsjKubqc9TxzrY53mXcFvU0x/vx3Asy + UrfVcuzdQ3QZmbx4IRq/vHiB95TzokXlWOhdzixXOIwxS2+hc4d1tyx0zSGsMfQefEsZ4w6ocnUq + uh+DhLFK4ZRW3oavYRrBsuuqktwwmP4BPxhN07EXKwB9gp1l+Hx5oSh0P/gJ6FjHbeiv3fTMFniZ + LNDuJiRekDTVVvzLS0btVyAjk7EOH0OYhZEHybUMQMBgWTJembHaVy7SYrypcN9FO/rTKdwsn/jw + eut4ZmmcwJUHqsokhImfZPdWD5QXPTw/onMCMhgvP7IYfuaKkw3G/beMArxJdZL7s4Xc2Z6QO/sf + yJ09CORuuaeCn6og+UPIbm8i3EnLtrnXEoKLVu/KkS3X5qOeYIyLkbUn5K76ZhuQ+2o95Gog98Jx + B0ejcOhpJufYopLFPc1AIi3xSku8Hv0Idg24dwpCtM40rTNNP6PVCYXPDJmX7EBuJ0tlyiJ8g94t + oneLDuTdosen4yl1otSJUqdjTp1qAMxTEKIgREHomIPQATD01KGjySI0WYQmi9Qcq6dcinIpyqWO + OZeqAWlPQYiCEAWhYw5CBwDfU4eOVT/7/x8AAAD//+zdUQ6CMBCE4SthhHr/mxmz+oJQGkzJgt8d + ms3829kZ1/+u/68EdKGTtrTUbdifyU9L0VK01D9rqRZRNNtgL9ZVTzsi+A0hNu+98Ujvt3OihKTV + Ghw2745Vs5tAF3W0A6B7veLPfU81Yes0lyni3MS5pQK60En1OP+7Hzonc8dGTdJSFwK6jlpqtvhe + LMjm1HTua3bhwFSza2zgwCjA5dTEgWK9xXr35cCxwak54kAciAPt1JNxYOikuikhynSZEsQ+2WH5 + D8wzu6YGDozK3U0vA4On/0AXey72fuLA0En19IMJB+JAHIgDk3Fg6KS6lyHqeyVv4kAciAPzzK7S + wIFR8vvAgXyhan7V/Hb9DywNUZwFB+JAHIgDk3Fg+S4DXqgoP0RLPQEAAP//7J3fb9o6FMf/lSjP + /LAJEMJb19tNk241NLrdu4cJmeQA1kISOQnt7rT/fTp2oFBMCGGo7Z0rHgoYHyccn5yvcc7HlDU3 + 99i8ohsCMRl49rsBdwbxf8il3Aq5lGtyKZNLmVzK5FIvLJdy93MppLMoOiVyaYeIE5afQyyrQpZe + Cf5fHLFHPuNxwic2RGZjnmL7DysQa5LfD5v5PqQpl9YUvbhh68CMFYmMOyjG620U46YSRLGx4mTe + +EBHU5fYyhJ++0jADISAurT6XqecNT6CODkAEKaEvCZu/IVw7uVnt1/ONC87uzVNdnXs6b9jX9Fg + Sz0Jz0E9o653yHWv5PTTGpSE9VJ+eqnNnR1LGz4zZCmyYxEoq6deQ1r3GHWU7fGCBfCbDenOJUaa + GZLDL3NsVOen13GkeMBneM2FgPDdFwmEr2DZKY+2xQDSC5ju6L5iOQXv2XdrnIsZk+zifbvvBFtB + eNZhu+VhsPSw6VlH7ZQd9Q2i0rVG3zD/W2loquDY3UOO/Q8PDngX7Z9jkWgMvk+tm/UHrVsWBSzD + 7nTGZXJ00DxbQsQzDprgoTGrwj6f8hDx9NpgVceUQ3TGbllifbGu41gEPMLkU2fPdXutfqeeUXLA + 6L9HjXZJy+3WMdrXTZkR9yPuW3cyd/59J1WXMbwTPAzT9lu85nw8FPzrmaO6iTEKma8Y8LcsORQH + vjZstgKBTHGFZ7eHvYYEosurm0zoXa/nOfbWq0puwDpnxxnYHCfg8xn3t9uhCMlT1A8JoJjx0XOH + 9g2bM4Sc+7hEJL6vVQri61ESoXLBY5wBTDJYJqEih/+wP8wwvWPfsMPi39qFhtSyVrFGdEYvd4JF + qbykK3578eSMHtfab6MCa/f1s2GHLONZLk+v47QG/T5xBp2BR/DPbthhHM3X7zcp8Vpd6hDqeaoF + lS3iRAlY7Rjshl1426YFvhRnm93wGTwgB/5uwVMLncLikR/mAaQWjwK+4kHOQvkG9mllCxHn84VF + KWk9ytV7JiJ0TfTWKF9OQaA0Vf6aymgZi7nyVergqPFpMa5P47+urLexgDSzxiBWXF6SEyYw7OtU + 685bR8XrTutiuP62hk1ALHmWQTDZXG3keXm89hQ27gTjIeC8WLKHSajypWGPyLXJvcbYTaWWHz/v + t/uK9yvAisP9hC9x6ucitIf2IsuSdNhu+0HUEuALkAKnNY9X7SSfhtxvY/X+NvHaHa/dofiQoWEC + A9cDPxg0g/6UNrtdb9D0XOg3BwHxpsCCqedMJy4hrXuYJuubJSaCRXPAeV2sFS/ZQ1Gya/0Cj7Zq + eOURrh/b62UISaRVLrazcku9avwSZWi/1GT92faEkntm6crnKfn3agq3FeN9MqwLDcfURzIFb7cW + YalXAUlJqm1sNmHIhCEThkzJ26M/IeEFr/kpOf0XI1JhJ7Ni7PZODlZniaenCRN29jKyJVPj9lJ5 + En7HZv/NH77/hlTYf0OMijMqzqg4Qwy4HLaEVFBxCpi7XcrIqDizmGQWkwy45Lk3AtIKso5WK1hr + ZJ1BlxhZZ26rOFPW0Qola6mRdUbWGVlnZN3lZJ1Keo4hcTFUnZ4YmT0CZo+A2SNgeJSXk3WdCrJO + 8XZP3+E0Mr/W/QIAAP//7N3BCcMwEETRXlKBQ2SZ9N9YDksuwkhyQMkSXgc+mfnS10x+sckipdfy + qW7rIiuN8tR9+8QfkKfkKXlKnpoLRs1Z9ulQ9z5RzO83xLnkXHIuvzuNO8S6mM/dYB0J08CkErTF + WBdZqV/O/3Bb57bObZ3buox5qjkCP53r5m56COwhsBLHZH+vMkGDMaLL3USDaBANrqbBMuFuFjSI + BtEgGkxHg5GV+opCDOlSFNRCqYUa92r9fHSk/Y7/nskd0mBM6V43GyiflE8FLQaSrtFgZKV+M8KO + BtEgGkSDGfPUc2Q2xJyudk40iAbRYKa/V52gwRjUPdAgU5QpyhRdfDdYJ+o6KxpEg2gQDd6y0WBk + pffJ+QsAAP//7J1db6M4FIb/CuI6AZuPBLib7XZGK0011TTdj4tV5ICTWCWAHEg7O5r/vjo2pEkD + hITOTDpyrhri+mDwOZzX2H6aYN8qn1Lbn/8ATIza/vz0N4G/3Pbn4w751FjlUyqfUvmUyqcuLp8a + H+ZTwHERRFABUQ0Aeiv+D/ClEu35jrP/0oQ8Ex2PYzChIFAeizWU/7ShvCL/fdVJicKNt4zdgU4W + C04XwiaN42mYSqqpHiDDs/c+wEqt4T52BD7ukR6vdkmP23kX5ZyMN0Ept+psLmn4kBa5NgEQeS04 + NkBIu715I5h512pHhN/SNGug/7YBwi8Dbe+O2kHgLY3DZ5r0rCYMdyvVns4p5zQ6t6fWtfMqTSLB + 2223DN34zNvoNzVV4rhrDQoYeivqvL2luMknWdLsklYvl3TqgNUf05D0vLgdQPZOg3OWBHvto+TW + nuqdHSzb7WGhPIH6e2y5fUxbdZ1ZdJtH8kW7K/icCEzxod0PnGxo3KvZ4/aA0dps3KvVdlurr4EF + Xmv0NxI+tLrTcdOe0+THf7GooXfhUR+LdYD7P9badfWP2g1JIpJDdXXGRVbTp8G4qcEt/uSgc+jz + dZZkdGQzFgPy/fVA96just6QTPtbu0pTHrEEEtU6ez5yDc8/x+iozmFuWZiwUJuIlPf12ofr+ult + TEIaaWmi3ZDsVLdsMVYX8z9wFsdr8z2knJ+bgv6Z9w433Lt/jt07xxkZjieEBpFpfQl/1wPHGLsD + QVwXzzeR0nvItW1956hUJ7TK2sENhncZDdmchbvlQLMUa5AbGQXtE0LnDfRrsiDAZQ9hTIl/qUTN + fcJyUFAgdKC5c0qnOV1lsQSTf9U/zSH9Ig9QYflnD/ahHAkrh5V61TPhJFmLtEli58svveqsBONW + Ovao7dtAj0nO8kJcZts2vJGHRrZruQghjPSBHqfJovp9iJFvOBj5PvYdD8FHlEgz4aZNZ6EP9K0r + V2XgWJpvZ9Xn9AmI85MlW2vQPzSWhHERUflNVKXlS54Wi6WGLcd4lrePhCfQPaHHJsVqRjlIWdln + 13rgDPSUL2RnxTbW5dfydO7vfn+nvU85XefaHeUbJjKBjHAI93XCde+no/p1r3R5uuGujM0oX7E8 + p9F0+5QRV+P5mVPamHDCYgqOsSJP01g+VgIXidHMg8JQTaeSn/88LPcvrHagG0Yfp2wF7l/wWA/0 + ZZ5n68A0wygxOA05FemqsUg3ZlbMYhaawAMwkW9avmlZJkKmiA1Ty5uN3XnoDWchmg0dZ+QNZ9Ty + htEs9OeO649sTKZjhIxHOsuqpRZTThIYUKiWW0xX5EkPLBikqg6wpDwAQzRFAiPOejVsIVi3smPt + jfVi2PRtaB/dzlsaOtw8t4+jvSDwljVeBoS36xKhN7Ozd3m+L07rp72L6t99XveMt36j1qa9PhUF + +x1gl6jbpGgViFQgUoFILZLt8NoJ4tHwPjv9LRPqMAta8nvdk8NVT/30MmmC6i4jY4L3KkenUryZ + dEmBUBQI5aLm7aAO83aQ0nJKyyktp7Rcj0DVJTk6quUkjHd3SySl5dSgkhpUUhse/fwphLiDuMPd + tr9V4k6JO7Uo48e/e/nlFmXgDhvgYiXulLhT4k6Ju+8p7mTicwy3C8Hq9ORIzRhQMwbUjAG1m+36 + O4o7EZuOiDvJ8j19xlP/N3f/AwAA///s3UEOwjAMRNErFUja+9+MhVcglLhIAat6l4jm178zLncu + d5UVpxeu+pdYdzm4i7w0y1S37RubQKaSqWQqmSobjt6+an+cAe+Jqn8PEQuThcnC/PXs7hTuYpp3 + A3e0THVq4G453EVeGtf9P1zuXO5c7lzuCs6/RV6ajoGzOf0i7BdhvwiXe79aggljoJfNiQkxISZc + z4QtYXM2TIgJMSEmLMiEkZfGwkKM9BIW1EapjVIbVev96gkmjJne854DCVR9i9klEuhZJoy8NG5N + 6JgQE2JCTFiQCSMvjT2HmOrV4IkJMSEmrPV+7QkmjLHeAxNyR7mj3NHld8I9Uem5Y0JMiAnvl3Cv + ngAAAP//Gn5tKvTLeLFcJT7apho9Jp0uV8pQODUzetjCcDhswZyINpX5aJtqtE012qYabVMNwjaV + OWabCnRuFPgKUfBtr1agu3nB+kBXn0LuAnUsyqzKz0tE3ABJ+MZMkELQrZClxSD1/mWpRdCbAmN1 + lNIKlayilWCXPVpBr3qMBZX/ValKVmYmOkrFBak5OZl56fGJpSX5yflFRanJJakpSlZpiTnFENcV + gW4fBN2FWZJfkpgD0lULAAAA//8DACqAzRJf2h8A + headers: + Access-Control-Allow-Origin: + - "*" + Alt-Svc: + - h3=":443"; ma=86400 + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=utf-8 + Date: + - Sat, 23 May 2026 03:30:07 GMT + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding + Via: + - 1.1 f111faa3f37b2169cefb225b0f246234.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - LyQUCAXPb6hQ0yQQdhYxXEdvuZTsQUNexjut55jcvet1QexCM5ZR_g== + X-Amz-Cf-Pop: + - DEN52-P2 + X-Cache: + - Miss from cloudfront + X-Content-Type-Options: + - nosniff + status: + code: 200 + message: OK +version: 1 diff --git a/backend/packages/providers/tests/test_recreation_gov.py b/backend/packages/providers/tests/test_recreation_gov.py new file mode 100644 index 00000000..5eeead03 --- /dev/null +++ b/backend/packages/providers/tests/test_recreation_gov.py @@ -0,0 +1,124 @@ +""" +Tests for Recreation.gov Provider +""" + +import datetime +from unittest.mock import AsyncMock, patch + +import pytest + +from providers.dto import CampsiteType +from providers.recreation_gov.provider import ( + RecreationGovProvider, + check_is_electric, + map_campsite_type, +) + + +@pytest.fixture +def anyio_backend(): + return "asyncio" + + +def test_map_campsite_type(): + """ + Test that campsite type strings are parsed correctly into standardized enums. + """ + assert map_campsite_type("Standard Tent Only") == CampsiteType.TENT + assert map_campsite_type("Tent Only Nonelectric") == CampsiteType.TENT + assert map_campsite_type("RV Electric") == CampsiteType.RV + assert map_campsite_type("RV Nonelectric") == CampsiteType.RV + assert map_campsite_type("Cabin") == CampsiteType.CABIN + assert map_campsite_type("Yurt") == CampsiteType.CABIN + assert map_campsite_type("Group Picnic Area") == CampsiteType.OTHER + assert map_campsite_type(None) == CampsiteType.OTHER + + +def test_check_is_electric(): + """ + Test electric hookup checking logic from attributes and type. + """ + from providers.recreation_gov.models.api import ( + RecDotGovAttribute, + RecDotGovCampsite, + ) + + # 1. Electric in type + campsite_with_type = RecDotGovCampsite( + campsite_id=1, + name="1", + type="Electric RV", + ) + assert check_is_electric(campsite_with_type) is True + + # 2. Electric in attributes + campsite_with_attr = RecDotGovCampsite( + campsite_id=2, + name="2", + attributes=[ + RecDotGovAttribute( + attribute_id=1, + attribute_name="Electricity Hookup", + attribute_value="50 Amp", + ) + ], + ) + assert check_is_electric(campsite_with_attr) is True + + # 3. Not electric + campsite_non_electric = RecDotGovCampsite( + campsite_id=3, + name="3", + attributes=[ + RecDotGovAttribute( + attribute_id=1, + attribute_name="Electricity Hookup", + attribute_value="No", + ) + ], + ) + assert check_is_electric(campsite_non_electric) is False + + +@pytest.mark.vcr +@pytest.mark.anyio +async def test_find_availabilities(): + """ + Test the complete async find_availabilities flow using VCRPy recorded HTTP requests. + """ + provider = RecreationGovProvider() + + # We will query Apache Trout Campground (facility ID 234708) + # for a specific date range that we record/replay. + start_date = datetime.date(2026, 9, 1) + end_date = datetime.date(2026, 9, 2) + + availabilities = await provider.find_availabilities( + park_id="234708", + start_date=start_date, + end_date=end_date, + ) + + # Structural assertions to verify that data is loaded and mapped correctly + assert isinstance(availabilities, list) + # Check that we successfully fetch and map to DTOs + for avail in availabilities: + assert avail.campsite_id + assert avail.campsite_name + assert avail.campsite_type in CampsiteType + assert isinstance(avail.available_dates, list) + assert len(avail.available_dates) > 0 + assert all(start_date <= d <= end_date for d in avail.available_dates) + + +@pytest.mark.anyio +async def test_sync_metadata(): + """ + Test that sync_metadata calls populate_database. + """ + provider = RecreationGovProvider() + with patch.object( + provider, "populate_database", new_callable=AsyncMock + ) as mock_populate: + await provider.sync_metadata() + mock_populate.assert_called_once() diff --git a/backend/uv.lock b/backend/uv.lock index 834888ec..ab5927f6 100644 --- a/backend/uv.lock +++ b/backend/uv.lock @@ -1,6 +1,11 @@ version = 1 -revision = 2 +revision = 3 requires-python = ">=3.9, <4.0" +resolution-markers = [ + "python_full_version >= '3.10'", + "python_full_version < '3.10' and platform_python_implementation == 'PyPy'", + "python_full_version < '3.10' and platform_python_implementation != 'PyPy'", +] [manifest] members = [ @@ -287,6 +292,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/36/f4/c6e662dade71f56cd2f3735141b265c3c79293c109549c1e6933b0651ffc/exceptiongroup-1.3.0-py3-none-any.whl", hash = "sha256:4d111e6e0c13d0644cad6ddaa7ed0261a0b36971f6d23e7ec9b4b9097da78a10", size = 16674, upload-time = "2025-05-10T17:42:49.33Z" }, ] +[[package]] +name = "fake-useragent" +version = "2.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "importlib-resources", marker = "python_full_version < '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/41/43/948d10bf42735709edb5ae51e23297d034086f17fc7279fef385a7acb473/fake_useragent-2.2.0.tar.gz", hash = "sha256:4e6ab6571e40cc086d788523cf9e018f618d07f9050f822ff409a4dfe17c16b2", size = 158898, upload-time = "2025-04-14T15:32:19.238Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/37/b3ea9cd5558ff4cb51957caca2193981c6b0ff30bd0d2630ac62505d99d0/fake_useragent-2.2.0-py3-none-any.whl", hash = "sha256:67f35ca4d847b0d298187443aaf020413746e56acd985a611908c73dba2daa24", size = 161695, upload-time = "2025-04-14T15:32:17.732Z" }, +] + [[package]] name = "fastapi" version = "0.115.12" @@ -468,13 +485,25 @@ name = "importlib-metadata" version = "8.7.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "zipp" }, + { name = "zipp", marker = "python_full_version < '3.10'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/76/66/650a33bd90f786193e4de4b3ad86ea60b53c89b669a5c7be931fac31cdb0/importlib_metadata-8.7.0.tar.gz", hash = "sha256:d13b81ad223b890aa16c5471f2ac3056cf76c5f10f82d6f9292f0b415f389000", size = 56641, upload-time = "2025-04-27T15:29:01.736Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl", hash = "sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd", size = 27656, upload-time = "2025-04-27T15:29:00.214Z" }, ] +[[package]] +name = "importlib-resources" +version = "6.5.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "zipp", marker = "python_full_version < '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cf/8c/f834fbf984f691b4f7ff60f50b514cc3de5cc08abfc3295564dd89c5e2e7/importlib_resources-6.5.2.tar.gz", hash = "sha256:185f87adef5bcc288449d98fb4fba07cea78bc036455dd44c5fc4a2fe78fed2c", size = 44693, upload-time = "2025-01-03T18:51:56.698Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl", hash = "sha256:789cfdc3ed28c78b67a06acb8126751ced69a3d5f79c095a98298cd8a760ccec", size = 37461, upload-time = "2025-01-03T18:51:54.306Z" }, +] + [[package]] name = "iniconfig" version = "2.1.0" @@ -585,6 +614,162 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, ] +[[package]] +name = "multidict" +version = "6.7.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions", marker = "python_full_version < '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1a/c2/c2d94cbe6ac1753f3fc980da97b3d930efe1da3af3c9f5125354436c073d/multidict-6.7.1.tar.gz", hash = "sha256:ec6652a1bee61c53a3e5776b6049172c53b6aaba34f18c9ad04f82712bac623d", size = 102010, upload-time = "2026-01-26T02:46:45.979Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/84/0b/19348d4c98980c4851d2f943f8ebafdece2ae7ef737adcfa5994ce8e5f10/multidict-6.7.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c93c3db7ea657dd4637d57e74ab73de31bccefe144d3d4ce370052035bc85fb5", size = 77176, upload-time = "2026-01-26T02:42:59.784Z" }, + { url = "https://files.pythonhosted.org/packages/ef/04/9de3f8077852e3d438215c81e9b691244532d2e05b4270e89ce67b7d103c/multidict-6.7.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:974e72a2474600827abaeda71af0c53d9ebbc3c2eb7da37b37d7829ae31232d8", size = 44996, upload-time = "2026-01-26T02:43:01.674Z" }, + { url = "https://files.pythonhosted.org/packages/31/5c/08c7f7fe311f32e83f7621cd3f99d805f45519cd06fafb247628b861da7d/multidict-6.7.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cdea2e7b2456cfb6694fb113066fd0ec7ea4d67e3a35e1f4cbeea0b448bf5872", size = 44631, upload-time = "2026-01-26T02:43:03.169Z" }, + { url = "https://files.pythonhosted.org/packages/b7/7f/0e3b1390ae772f27501199996b94b52ceeb64fe6f9120a32c6c3f6b781be/multidict-6.7.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:17207077e29342fdc2c9a82e4b306f1127bf1ea91f8b71e02d4798a70bb99991", size = 242561, upload-time = "2026-01-26T02:43:04.733Z" }, + { url = "https://files.pythonhosted.org/packages/dd/f4/8719f4f167586af317b69dd3e90f913416c91ca610cac79a45c53f590312/multidict-6.7.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4f49cb5661344764e4c7c7973e92a47a59b8fc19b6523649ec9dc4960e58a03", size = 242223, upload-time = "2026-01-26T02:43:06.695Z" }, + { url = "https://files.pythonhosted.org/packages/47/ab/7c36164cce64a6ad19c6d9a85377b7178ecf3b89f8fd589c73381a5eedfd/multidict-6.7.1-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a9fc4caa29e2e6ae408d1c450ac8bf19892c5fca83ee634ecd88a53332c59981", size = 222322, upload-time = "2026-01-26T02:43:08.472Z" }, + { url = "https://files.pythonhosted.org/packages/f5/79/a25add6fb38035b5337bc5734f296d9afc99163403bbcf56d4170f97eb62/multidict-6.7.1-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c5f0c21549ab432b57dcc82130f388d84ad8179824cc3f223d5e7cfbfd4143f6", size = 254005, upload-time = "2026-01-26T02:43:10.127Z" }, + { url = "https://files.pythonhosted.org/packages/4a/7b/64a87cf98e12f756fc8bd444b001232ffff2be37288f018ad0d3f0aae931/multidict-6.7.1-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7dfb78d966b2c906ae1d28ccf6e6712a3cd04407ee5088cd276fe8cb42186190", size = 251173, upload-time = "2026-01-26T02:43:11.731Z" }, + { url = "https://files.pythonhosted.org/packages/4b/ac/b605473de2bb404e742f2cc3583d12aedb2352a70e49ae8fce455b50c5aa/multidict-6.7.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9b0d9b91d1aa44db9c1f1ecd0d9d2ae610b2f4f856448664e01a3b35899f3f92", size = 243273, upload-time = "2026-01-26T02:43:13.063Z" }, + { url = "https://files.pythonhosted.org/packages/03/65/11492d6a0e259783720f3bc1d9ea55579a76f1407e31ed44045c99542004/multidict-6.7.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:dd96c01a9dcd4889dcfcf9eb5544ca0c77603f239e3ffab0524ec17aea9a93ee", size = 238956, upload-time = "2026-01-26T02:43:14.843Z" }, + { url = "https://files.pythonhosted.org/packages/5f/a7/7ee591302af64e7c196fb63fe856c788993c1372df765102bd0448e7e165/multidict-6.7.1-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:067343c68cd6612d375710f895337b3a98a033c94f14b9a99eff902f205424e2", size = 233477, upload-time = "2026-01-26T02:43:16.025Z" }, + { url = "https://files.pythonhosted.org/packages/9c/99/c109962d58756c35fd9992fed7f2355303846ea2ff054bb5f5e9d6b888de/multidict-6.7.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:5884a04f4ff56c6120f6ccf703bdeb8b5079d808ba604d4d53aec0d55dc33568", size = 243615, upload-time = "2026-01-26T02:43:17.84Z" }, + { url = "https://files.pythonhosted.org/packages/d5/5f/1973e7c771c86e93dcfe1c9cc55a5481b610f6614acfc28c0d326fe6bfad/multidict-6.7.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:8affcf1c98b82bc901702eb73b6947a1bfa170823c153fe8a47b5f5f02e48e40", size = 249930, upload-time = "2026-01-26T02:43:19.06Z" }, + { url = "https://files.pythonhosted.org/packages/5d/a5/f170fc2268c3243853580203378cd522446b2df632061e0a5409817854c7/multidict-6.7.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:0d17522c37d03e85c8098ec8431636309b2682cf12e58f4dbc76121fb50e4962", size = 243807, upload-time = "2026-01-26T02:43:20.286Z" }, + { url = "https://files.pythonhosted.org/packages/de/01/73856fab6d125e5bc652c3986b90e8699a95e84b48d72f39ade6c0e74a8c/multidict-6.7.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:24c0cf81544ca5e17cfcb6e482e7a82cd475925242b308b890c9452a074d4505", size = 239103, upload-time = "2026-01-26T02:43:21.508Z" }, + { url = "https://files.pythonhosted.org/packages/e7/46/f1220bd9944d8aa40d8ccff100eeeee19b505b857b6f603d6078cb5315b0/multidict-6.7.1-cp310-cp310-win32.whl", hash = "sha256:d82dd730a95e6643802f4454b8fdecdf08667881a9c5670db85bc5a56693f122", size = 41416, upload-time = "2026-01-26T02:43:22.703Z" }, + { url = "https://files.pythonhosted.org/packages/68/00/9b38e272a770303692fc406c36e1a4c740f401522d5787691eb38a8925a8/multidict-6.7.1-cp310-cp310-win_amd64.whl", hash = "sha256:cf37cbe5ced48d417ba045aca1b21bafca67489452debcde94778a576666a1df", size = 46022, upload-time = "2026-01-26T02:43:23.77Z" }, + { url = "https://files.pythonhosted.org/packages/64/65/d8d42490c02ee07b6bbe00f7190d70bb4738b3cce7629aaf9f213ef730dd/multidict-6.7.1-cp310-cp310-win_arm64.whl", hash = "sha256:59bc83d3f66b41dac1e7460aac1d196edc70c9ba3094965c467715a70ecb46db", size = 43238, upload-time = "2026-01-26T02:43:24.882Z" }, + { 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, upload-time = "2026-01-26T02:43:26.485Z" }, + { 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, upload-time = "2026-01-26T02:43:27.607Z" }, + { 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, upload-time = "2026-01-26T02:43:28.661Z" }, + { 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, upload-time = "2026-01-26T02:43:31.165Z" }, + { 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, upload-time = "2026-01-26T02:43:32.581Z" }, + { 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, upload-time = "2026-01-26T02:43:34.417Z" }, + { 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, upload-time = "2026-01-26T02:43:35.741Z" }, + { 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, upload-time = "2026-01-26T02:43:36.976Z" }, + { 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, upload-time = "2026-01-26T02:43:38.258Z" }, + { 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, upload-time = "2026-01-26T02:43:40.034Z" }, + { 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, upload-time = "2026-01-26T02:43:41.752Z" }, + { 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, upload-time = "2026-01-26T02:43:43.042Z" }, + { 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, upload-time = "2026-01-26T02:43:44.371Z" }, + { 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, upload-time = "2026-01-26T02:43:45.745Z" }, + { 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, upload-time = "2026-01-26T02:43:47.054Z" }, + { url = "https://files.pythonhosted.org/packages/13/bf/9676c0392309b5fdae322333d22a829715b570edb9baa8016a517b55b558/multidict-6.7.1-cp311-cp311-win32.whl", hash = "sha256:d62b7f64ffde3b99d06b707a280db04fb3855b55f5a06df387236051d0668f4a", size = 41302, upload-time = "2026-01-26T02:43:48.753Z" }, + { url = "https://files.pythonhosted.org/packages/c9/68/f16a3a8ba6f7b6dc92a1f19669c0810bd2c43fc5a02da13b1cbf8e253845/multidict-6.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:bdbf9f3b332abd0cdb306e7c2113818ab1e922dc84b8f8fd06ec89ed2a19ab8b", size = 45981, upload-time = "2026-01-26T02:43:49.921Z" }, + { url = "https://files.pythonhosted.org/packages/ac/ad/9dd5305253fa00cd3c7555dbef69d5bf4133debc53b87ab8d6a44d411665/multidict-6.7.1-cp311-cp311-win_arm64.whl", hash = "sha256:b8c990b037d2fff2f4e33d3f21b9b531c5745b33a49a7d6dbe7a177266af44f6", size = 43159, upload-time = "2026-01-26T02:43:51.635Z" }, + { 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, upload-time = "2026-01-26T02:43:52.754Z" }, + { 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, upload-time = "2026-01-26T02:43:53.893Z" }, + { 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, upload-time = "2026-01-26T02:43:55.041Z" }, + { 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, upload-time = "2026-01-26T02:43:56.198Z" }, + { 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, upload-time = "2026-01-26T02:43:57.499Z" }, + { 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, upload-time = "2026-01-26T02:43:58.755Z" }, + { 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, upload-time = "2026-01-26T02:44:00.216Z" }, + { 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, upload-time = "2026-01-26T02:44:02.202Z" }, + { 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, upload-time = "2026-01-26T02:44:03.56Z" }, + { 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, upload-time = "2026-01-26T02:44:04.845Z" }, + { 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, upload-time = "2026-01-26T02:44:06.133Z" }, + { 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, upload-time = "2026-01-26T02:44:07.518Z" }, + { 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, upload-time = "2026-01-26T02:44:09.382Z" }, + { 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, upload-time = "2026-01-26T02:44:10.73Z" }, + { 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, upload-time = "2026-01-26T02:44:12.042Z" }, + { url = "https://files.pythonhosted.org/packages/ca/a4/840f5b97339e27846c46307f2530a2805d9d537d8b8bd416af031cad7fa0/multidict-6.7.1-cp312-cp312-win32.whl", hash = "sha256:28ca5ce2fd9716631133d0e9a9b9a745ad7f60bac2bccafb56aa380fc0b6c511", size = 41887, upload-time = "2026-01-26T02:44:14.245Z" }, + { url = "https://files.pythonhosted.org/packages/80/31/0b2517913687895f5904325c2069d6a3b78f66cc641a86a2baf75a05dcbb/multidict-6.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcee94dfbd638784645b066074b338bc9cc155d4b4bffa4adce1615c5a426c19", size = 46053, upload-time = "2026-01-26T02:44:15.371Z" }, + { url = "https://files.pythonhosted.org/packages/0c/5b/aba28e4ee4006ae4c7df8d327d31025d760ffa992ea23812a601d226e682/multidict-6.7.1-cp312-cp312-win_arm64.whl", hash = "sha256:ba0a9fb644d0c1a2194cf7ffb043bd852cea63a57f66fbd33959f7dae18517bf", size = 43307, upload-time = "2026-01-26T02:44:16.852Z" }, + { 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, upload-time = "2026-01-26T02:44:18.509Z" }, + { 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, upload-time = "2026-01-26T02:44:19.745Z" }, + { 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, upload-time = "2026-01-26T02:44:21.571Z" }, + { 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, upload-time = "2026-01-26T02:44:22.803Z" }, + { 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, upload-time = "2026-01-26T02:44:24.306Z" }, + { 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, upload-time = "2026-01-26T02:44:25.772Z" }, + { 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, upload-time = "2026-01-26T02:44:27.648Z" }, + { 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, upload-time = "2026-01-26T02:44:29.588Z" }, + { 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, upload-time = "2026-01-26T02:44:30.902Z" }, + { 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, upload-time = "2026-01-26T02:44:32.31Z" }, + { 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, upload-time = "2026-01-26T02:44:33.734Z" }, + { 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, upload-time = "2026-01-26T02:44:35.222Z" }, + { 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, upload-time = "2026-01-26T02:44:36.604Z" }, + { 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, upload-time = "2026-01-26T02:44:38.008Z" }, + { 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, upload-time = "2026-01-26T02:44:39.386Z" }, + { url = "https://files.pythonhosted.org/packages/87/af/a3b86bf9630b732897f6fc3f4c4714b90aa4361983ccbdcd6c0339b21b0c/multidict-6.7.1-cp313-cp313-win32.whl", hash = "sha256:e1c5988359516095535c4301af38d8a8838534158f649c05dd1050222321bcb3", size = 41695, upload-time = "2026-01-26T02:44:41.318Z" }, + { url = "https://files.pythonhosted.org/packages/b2/35/e994121b0e90e46134673422dd564623f93304614f5d11886b1b3e06f503/multidict-6.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:960c83bf01a95b12b08fd54324a4eb1d5b52c88932b5cba5d6e712bb3ed12eb5", size = 45884, upload-time = "2026-01-26T02:44:42.488Z" }, + { url = "https://files.pythonhosted.org/packages/ca/61/42d3e5dbf661242a69c97ea363f2d7b46c567da8eadef8890022be6e2ab0/multidict-6.7.1-cp313-cp313-win_arm64.whl", hash = "sha256:563fe25c678aaba333d5399408f5ec3c383ca5b663e7f774dd179a520b8144df", size = 43122, upload-time = "2026-01-26T02:44:43.664Z" }, + { 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, upload-time = "2026-01-26T02:44:44.894Z" }, + { 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, upload-time = "2026-01-26T02:44:46.106Z" }, + { 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, upload-time = "2026-01-26T02:44:47.278Z" }, + { 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, upload-time = "2026-01-26T02:44:48.604Z" }, + { 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, upload-time = "2026-01-26T02:44:50.544Z" }, + { 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, upload-time = "2026-01-26T02:44:51.951Z" }, + { 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, upload-time = "2026-01-26T02:44:53.902Z" }, + { 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, upload-time = "2026-01-26T02:44:55.316Z" }, + { 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, upload-time = "2026-01-26T02:44:56.783Z" }, + { 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, upload-time = "2026-01-26T02:44:58.195Z" }, + { 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, upload-time = "2026-01-26T02:44:59.57Z" }, + { 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, upload-time = "2026-01-26T02:45:01.054Z" }, + { 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, upload-time = "2026-01-26T02:45:02.484Z" }, + { 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, upload-time = "2026-01-26T02:45:03.862Z" }, + { 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, upload-time = "2026-01-26T02:45:05.296Z" }, + { url = "https://files.pythonhosted.org/packages/dc/1d/b31650eab6c5778aceed46ba735bd97f7c7d2f54b319fa916c0f96e7805b/multidict-6.7.1-cp313-cp313t-win32.whl", hash = "sha256:df9f19c28adcb40b6aae30bbaa1478c389efd50c28d541d76760199fc1037c32", size = 47770, upload-time = "2026-01-26T02:45:06.754Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/2d2d1d522e51285bd61b1e20df8f47ae1a9d80839db0b24ea783b3832832/multidict-6.7.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d54ecf9f301853f2c5e802da559604b3e95bb7a3b01a9c295c6ee591b9882de8", size = 53109, upload-time = "2026-01-26T02:45:08.044Z" }, + { url = "https://files.pythonhosted.org/packages/3d/a3/cc409ba012c83ca024a308516703cf339bdc4b696195644a7215a5164a24/multidict-6.7.1-cp313-cp313t-win_arm64.whl", hash = "sha256:5a37ca18e360377cfda1d62f5f382ff41f2b8c4ccb329ed974cc2e1643440118", size = 45573, upload-time = "2026-01-26T02:45:09.349Z" }, + { 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, upload-time = "2026-01-26T02:45:10.651Z" }, + { 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, upload-time = "2026-01-26T02:45:11.938Z" }, + { 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, upload-time = "2026-01-26T02:45:14.346Z" }, + { 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, upload-time = "2026-01-26T02:45:15.712Z" }, + { 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, upload-time = "2026-01-26T02:45:17.293Z" }, + { 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, upload-time = "2026-01-26T02:45:19.356Z" }, + { 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, upload-time = "2026-01-26T02:45:20.834Z" }, + { 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, upload-time = "2026-01-26T02:45:22.818Z" }, + { 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, upload-time = "2026-01-26T02:45:24.368Z" }, + { 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, upload-time = "2026-01-26T02:45:25.982Z" }, + { 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, upload-time = "2026-01-26T02:45:27.487Z" }, + { 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, upload-time = "2026-01-26T02:45:28.991Z" }, + { 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, upload-time = "2026-01-26T02:45:30.503Z" }, + { 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, upload-time = "2026-01-26T02:45:32.603Z" }, + { 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, upload-time = "2026-01-26T02:45:34.043Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e7/50bf7b004cc8525d80dbbbedfdc7aed3e4c323810890be4413e589074032/multidict-6.7.1-cp314-cp314-win32.whl", hash = "sha256:3ab8b9d8b75aef9df299595d5388b14530839f6422333357af1339443cff777d", size = 40930, upload-time = "2026-01-26T02:45:36.278Z" }, + { url = "https://files.pythonhosted.org/packages/e0/bf/52f25716bbe93745595800f36fb17b73711f14da59ed0bb2eba141bc9f0f/multidict-6.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:5e01429a929600e7dab7b166062d9bb54a5eed752384c7384c968c2afab8f50f", size = 45074, upload-time = "2026-01-26T02:45:37.546Z" }, + { url = "https://files.pythonhosted.org/packages/97/ab/22803b03285fa3a525f48217963da3a65ae40f6a1b6f6cf2768879e208f9/multidict-6.7.1-cp314-cp314-win_arm64.whl", hash = "sha256:4885cb0e817aef5d00a2e8451d4665c1808378dc27c2705f1bf4ef8505c0d2e5", size = 42471, upload-time = "2026-01-26T02:45:38.889Z" }, + { 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, upload-time = "2026-01-26T02:45:40.254Z" }, + { 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, upload-time = "2026-01-26T02:45:41.635Z" }, + { 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, upload-time = "2026-01-26T02:45:42.99Z" }, + { 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, upload-time = "2026-01-26T02:45:44.376Z" }, + { 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, upload-time = "2026-01-26T02:45:47.167Z" }, + { 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, upload-time = "2026-01-26T02:45:48.698Z" }, + { 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, upload-time = "2026-01-26T02:45:50.164Z" }, + { 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, upload-time = "2026-01-26T02:45:51.779Z" }, + { 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, upload-time = "2026-01-26T02:45:53.27Z" }, + { 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, upload-time = "2026-01-26T02:45:54.919Z" }, + { 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, upload-time = "2026-01-26T02:45:56.981Z" }, + { 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, upload-time = "2026-01-26T02:45:58.698Z" }, + { 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, upload-time = "2026-01-26T02:46:00.862Z" }, + { 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, upload-time = "2026-01-26T02:46:02.824Z" }, + { 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, upload-time = "2026-01-26T02:46:05.898Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/c3a5187bf66f6fb546ff4ab8fb5a077cbdd832d7b1908d4365c7f74a1917/multidict-6.7.1-cp314-cp314t-win32.whl", hash = "sha256:98655c737850c064a65e006a3df7c997cd3b220be4ec8fe26215760b9697d4d7", size = 48008, upload-time = "2026-01-26T02:46:07.468Z" }, + { url = "https://files.pythonhosted.org/packages/0c/f7/addf1087b860ac60e6f382240f64fb99f8bfb532bb06f7c542b83c29ca61/multidict-6.7.1-cp314-cp314t-win_amd64.whl", hash = "sha256:497bde6223c212ba11d462853cfa4f0ae6ef97465033e7dc9940cdb3ab5b48e5", size = 53542, upload-time = "2026-01-26T02:46:08.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/81/4629d0aa32302ef7b2ec65c75a728cc5ff4fa410c50096174c1632e70b3e/multidict-6.7.1-cp314-cp314t-win_arm64.whl", hash = "sha256:2bbd113e0d4af5db41d5ebfe9ccaff89de2120578164f86a5d17d5a576d1e5b2", size = 44719, upload-time = "2026-01-26T02:46:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/9e/ee/74525ebe3eb5fddcd6735fc03cbea3feeed4122b53bc798ac32d297ac9ae/multidict-6.7.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:65573858d27cdeaca41893185677dc82395159aa28875a8867af66532d413a8f", size = 77107, upload-time = "2026-01-26T02:46:12.608Z" }, + { url = "https://files.pythonhosted.org/packages/f0/9a/ce8744e777a74b3050b1bf56be3eed1053b3457302ea055f1ea437200a23/multidict-6.7.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c524c6fb8fc342793708ab111c4dbc90ff9abd568de220432500e47e990c0358", size = 44943, upload-time = "2026-01-26T02:46:14.016Z" }, + { url = "https://files.pythonhosted.org/packages/83/9c/1d2a283d9c6f31e260cb6c2fccadc3edcf6c4c14ee0929cd2af4d2606dd7/multidict-6.7.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:aa23b001d968faef416ff70dc0f1ab045517b9b42a90edd3e9bcdb06479e31d5", size = 44603, upload-time = "2026-01-26T02:46:15.391Z" }, + { url = "https://files.pythonhosted.org/packages/87/9d/3b186201671583d8e8d6d79c07481a5aafd0ba7575e3d8566baec80c1e82/multidict-6.7.1-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:6704fa2b7453b2fb121740555fa1ee20cd98c4d011120caf4d2b8d4e7c76eec0", size = 240573, upload-time = "2026-01-26T02:46:16.783Z" }, + { url = "https://files.pythonhosted.org/packages/42/7d/a52f5d4d0754311d1ac78478e34dff88de71259a8585e05ee14e5f877caf/multidict-6.7.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:121a34e5bfa410cdf2c8c49716de160de3b1dbcd86b49656f5681e4543bcd1a8", size = 240106, upload-time = "2026-01-26T02:46:18.432Z" }, + { url = "https://files.pythonhosted.org/packages/84/9f/d80118e6c30ff55b7d171bdc5520aad4b9626e657520b8d7c8ca8c2fad12/multidict-6.7.1-cp39-cp39-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:026d264228bcd637d4e060844e39cdc60f86c479e463d49075dedc21b18fbbe0", size = 219418, upload-time = "2026-01-26T02:46:20.526Z" }, + { url = "https://files.pythonhosted.org/packages/c7/bd/896e60b3457f194de77c7de64f9acce9f75da0518a5230ce1df534f6747b/multidict-6.7.1-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:0e697826df7eb63418ee190fd06ce9f1803593bb4b9517d08c60d9b9a7f69d8f", size = 252124, upload-time = "2026-01-26T02:46:22.157Z" }, + { url = "https://files.pythonhosted.org/packages/f4/de/ba6b30447c36a37078d0ba604aa12c1a52887af0c355236ca6e0a9d5286f/multidict-6.7.1-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:bb08271280173720e9fea9ede98e5231defcbad90f1624bea26f32ec8a956e2f", size = 249402, upload-time = "2026-01-26T02:46:23.718Z" }, + { url = "https://files.pythonhosted.org/packages/c2/b2/50a383c96230e432895a2fd3bcfe1b65785899598259d871d5de6b93180c/multidict-6.7.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c6b3228e1d80af737b72925ce5fb4daf5a335e49cd7ab77ed7b9fdfbf58c526e", size = 240346, upload-time = "2026-01-26T02:46:25.393Z" }, + { url = "https://files.pythonhosted.org/packages/89/37/16d391fd8da544b1489306e38a46785fa41dd0f0ef766837ed7d4676dde0/multidict-6.7.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:3943debf0fbb57bdde5901695c11094a9a36723e5c03875f87718ee15ca2f4d2", size = 237010, upload-time = "2026-01-26T02:46:27.408Z" }, + { url = "https://files.pythonhosted.org/packages/b0/24/3152ee026eda86d5d3e3685182911e6951af7a016579da931080ce6ac9ad/multidict-6.7.1-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:98c5787b0a0d9a41d9311eae44c3b76e6753def8d8870ab501320efe75a6a5f8", size = 232018, upload-time = "2026-01-26T02:46:29.941Z" }, + { url = "https://files.pythonhosted.org/packages/9c/1f/48d3c27a72be7fd23a55d8847193c459959bf35a5bb5844530dab00b739b/multidict-6.7.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:08ccb2a6dc72009093ebe7f3f073e5ec5964cba9a706fa94b1a1484039b87941", size = 241498, upload-time = "2026-01-26T02:46:32.052Z" }, + { url = "https://files.pythonhosted.org/packages/1a/45/413643ae2952d0decdf6c1250f86d08a43e143271441e81027e38d598bd7/multidict-6.7.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:eb351f72c26dc9abe338ca7294661aa22969ad8ffe7ef7d5541d19f368dc854a", size = 247957, upload-time = "2026-01-26T02:46:33.666Z" }, + { url = "https://files.pythonhosted.org/packages/50/f8/f1d0ac23df15e0470776388bdb261506f63af1f81d28bacb5e262d6e12b6/multidict-6.7.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:ac1c665bad8b5d762f5f85ebe4d94130c26965f11de70c708c75671297c776de", size = 241651, upload-time = "2026-01-26T02:46:35.7Z" }, + { url = "https://files.pythonhosted.org/packages/2c/c9/1a2a18f383cf129add66b6c36b75c3911a7ba95cf26cb141482de085cc12/multidict-6.7.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1fa6609d0364f4f6f58351b4659a1f3e0e898ba2a8c5cac04cb2c7bc556b0bc5", size = 236371, upload-time = "2026-01-26T02:46:37.37Z" }, + { url = "https://files.pythonhosted.org/packages/bb/aa/77d87e3fca31325b87e0eb72d5fe9a7472dcb51391a42df7ac1f3842f6c0/multidict-6.7.1-cp39-cp39-win32.whl", hash = "sha256:6f77ce314a29263e67adadc7e7c1bc699fcb3a305059ab973d038f87caa42ed0", size = 41426, upload-time = "2026-01-26T02:46:39.026Z" }, + { url = "https://files.pythonhosted.org/packages/e3/b3/e8863e6a2da15a9d7e98976ff402e871b7352c76566df6c18d0378e0d9cf/multidict-6.7.1-cp39-cp39-win_amd64.whl", hash = "sha256:f537b55778cd3cbee430abe3131255d3a78202e0f9ea7ffc6ada893a4bcaeea4", size = 46180, upload-time = "2026-01-26T02:46:40.422Z" }, + { url = "https://files.pythonhosted.org/packages/93/d3/dd4fa951ad5b5fa216bf30054d705683d13405eea7459833d78f31b74c9c/multidict-6.7.1-cp39-cp39-win_arm64.whl", hash = "sha256:749aa54f578f2e5f439538706a475aa844bfa8ef75854b1401e6e528e4937cf9", size = 43231, upload-time = "2026-01-26T02:46:41.945Z" }, + { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319, upload-time = "2026-01-26T02:46:44.004Z" }, +] + [[package]] name = "mypy" version = "1.15.0" @@ -749,6 +934,135 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669", size = 20556, upload-time = "2024-04-20T21:34:40.434Z" }, ] +[[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, upload-time = "2025-10-08T19:49:02.291Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3c/0e/934b541323035566a9af292dba85a195f7b78179114f2c6ebb24551118a9/propcache-0.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7c2d1fa3201efaf55d730400d945b5b3ab6e672e100ba0f9a409d950ab25d7db", size = 79534, upload-time = "2025-10-08T19:46:02.083Z" }, + { url = "https://files.pythonhosted.org/packages/a1/6b/db0d03d96726d995dc7171286c6ba9d8d14251f37433890f88368951a44e/propcache-0.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1eb2994229cc8ce7fe9b3db88f5465f5fd8651672840b2e426b88cdb1a30aac8", size = 45526, upload-time = "2025-10-08T19:46:03.884Z" }, + { url = "https://files.pythonhosted.org/packages/e4/c3/82728404aea669e1600f304f2609cde9e665c18df5a11cdd57ed73c1dceb/propcache-0.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:66c1f011f45a3b33d7bcb22daed4b29c0c9e2224758b6be00686731e1b46f925", size = 47263, upload-time = "2025-10-08T19:46:05.405Z" }, + { url = "https://files.pythonhosted.org/packages/df/1b/39313ddad2bf9187a1432654c38249bab4562ef535ef07f5eb6eb04d0b1b/propcache-0.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9a52009f2adffe195d0b605c25ec929d26b36ef986ba85244891dee3b294df21", size = 201012, upload-time = "2025-10-08T19:46:07.165Z" }, + { url = "https://files.pythonhosted.org/packages/5b/01/f1d0b57d136f294a142acf97f4ed58c8e5b974c21e543000968357115011/propcache-0.4.1-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5d4e2366a9c7b837555cf02fb9be2e3167d333aff716332ef1b7c3a142ec40c5", size = 209491, upload-time = "2025-10-08T19:46:08.909Z" }, + { url = "https://files.pythonhosted.org/packages/a1/c8/038d909c61c5bb039070b3fb02ad5cccdb1dde0d714792e251cdb17c9c05/propcache-0.4.1-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:9d2b6caef873b4f09e26ea7e33d65f42b944837563a47a94719cc3544319a0db", size = 215319, upload-time = "2025-10-08T19:46:10.7Z" }, + { url = "https://files.pythonhosted.org/packages/08/57/8c87e93142b2c1fa2408e45695205a7ba05fb5db458c0bf5c06ba0e09ea6/propcache-0.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2b16ec437a8c8a965ecf95739448dd938b5c7f56e67ea009f4300d8df05f32b7", size = 196856, upload-time = "2025-10-08T19:46:12.003Z" }, + { url = "https://files.pythonhosted.org/packages/42/df/5615fec76aa561987a534759b3686008a288e73107faa49a8ae5795a9f7a/propcache-0.4.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:296f4c8ed03ca7476813fe666c9ea97869a8d7aec972618671b33a38a5182ef4", size = 193241, upload-time = "2025-10-08T19:46:13.495Z" }, + { url = "https://files.pythonhosted.org/packages/d5/21/62949eb3a7a54afe8327011c90aca7e03547787a88fb8bd9726806482fea/propcache-0.4.1-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:1f0978529a418ebd1f49dad413a2b68af33f85d5c5ca5c6ca2a3bed375a7ac60", size = 190552, upload-time = "2025-10-08T19:46:14.938Z" }, + { url = "https://files.pythonhosted.org/packages/30/ee/ab4d727dd70806e5b4de96a798ae7ac6e4d42516f030ee60522474b6b332/propcache-0.4.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fd138803047fb4c062b1c1dd95462f5209456bfab55c734458f15d11da288f8f", size = 200113, upload-time = "2025-10-08T19:46:16.695Z" }, + { url = "https://files.pythonhosted.org/packages/8a/0b/38b46208e6711b016aa8966a3ac793eee0d05c7159d8342aa27fc0bc365e/propcache-0.4.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:8c9b3cbe4584636d72ff556d9036e0c9317fa27b3ac1f0f558e7e84d1c9c5900", size = 200778, upload-time = "2025-10-08T19:46:18.023Z" }, + { url = "https://files.pythonhosted.org/packages/cf/81/5abec54355ed344476bee711e9f04815d4b00a311ab0535599204eecc257/propcache-0.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f93243fdc5657247533273ac4f86ae106cc6445a0efacb9a1bfe982fcfefd90c", size = 193047, upload-time = "2025-10-08T19:46:19.449Z" }, + { url = "https://files.pythonhosted.org/packages/ec/b6/1f237c04e32063cb034acd5f6ef34ef3a394f75502e72703545631ab1ef6/propcache-0.4.1-cp310-cp310-win32.whl", hash = "sha256:a0ee98db9c5f80785b266eb805016e36058ac72c51a064040f2bc43b61101cdb", size = 38093, upload-time = "2025-10-08T19:46:20.643Z" }, + { url = "https://files.pythonhosted.org/packages/a6/67/354aac4e0603a15f76439caf0427781bcd6797f370377f75a642133bc954/propcache-0.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:1cdb7988c4e5ac7f6d175a28a9aa0c94cb6f2ebe52756a3c0cda98d2809a9e37", size = 41638, upload-time = "2025-10-08T19:46:21.935Z" }, + { url = "https://files.pythonhosted.org/packages/e0/e1/74e55b9fd1a4c209ff1a9a824bf6c8b3d1fc5a1ac3eabe23462637466785/propcache-0.4.1-cp310-cp310-win_arm64.whl", hash = "sha256:d82ad62b19645419fe79dd63b3f9253e15b30e955c0170e5cebc350c1844e581", size = 38229, upload-time = "2025-10-08T19:46:23.368Z" }, + { 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, upload-time = "2025-10-08T19:46:24.597Z" }, + { 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, upload-time = "2025-10-08T19:46:25.733Z" }, + { 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, upload-time = "2025-10-08T19:46:27.304Z" }, + { 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, upload-time = "2025-10-08T19:46:28.62Z" }, + { 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, upload-time = "2025-10-08T19:46:30.358Z" }, + { 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, upload-time = "2025-10-08T19:46:32.607Z" }, + { 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, upload-time = "2025-10-08T19:46:33.969Z" }, + { 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, upload-time = "2025-10-08T19:46:35.309Z" }, + { 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, upload-time = "2025-10-08T19:46:36.993Z" }, + { 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, upload-time = "2025-10-08T19:46:38.398Z" }, + { 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, upload-time = "2025-10-08T19:46:39.732Z" }, + { 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, upload-time = "2025-10-08T19:46:41.025Z" }, + { url = "https://files.pythonhosted.org/packages/61/b0/b2631c19793f869d35f47d5a3a56fb19e9160d3c119f15ac7344fc3ccae7/propcache-0.4.1-cp311-cp311-win32.whl", hash = "sha256:f1d2f90aeec838a52f1c1a32fe9a619fefd5e411721a9117fbf82aea638fe8a1", size = 38084, upload-time = "2025-10-08T19:46:42.693Z" }, + { url = "https://files.pythonhosted.org/packages/f4/78/6cce448e2098e9f3bfc91bb877f06aa24b6ccace872e39c53b2f707c4648/propcache-0.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:364426a62660f3f699949ac8c621aad6977be7126c5807ce48c0aeb8e7333ea6", size = 41637, upload-time = "2025-10-08T19:46:43.778Z" }, + { url = "https://files.pythonhosted.org/packages/9c/e9/754f180cccd7f51a39913782c74717c581b9cc8177ad0e949f4d51812383/propcache-0.4.1-cp311-cp311-win_arm64.whl", hash = "sha256:e53f3a38d3510c11953f3e6a33f205c6d1b001129f972805ca9b42fc308bc239", size = 38064, upload-time = "2025-10-08T19:46:44.872Z" }, + { 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, upload-time = "2025-10-08T19:46:46.075Z" }, + { 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, upload-time = "2025-10-08T19:46:47.23Z" }, + { 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, upload-time = "2025-10-08T19:46:48.384Z" }, + { 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, upload-time = "2025-10-08T19:46:50.055Z" }, + { 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, upload-time = "2025-10-08T19:46:51.815Z" }, + { 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, upload-time = "2025-10-08T19:46:53.208Z" }, + { 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, upload-time = "2025-10-08T19:46:54.511Z" }, + { 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, upload-time = "2025-10-08T19:46:56.212Z" }, + { 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, upload-time = "2025-10-08T19:46:57.595Z" }, + { 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, upload-time = "2025-10-08T19:46:59.067Z" }, + { 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, upload-time = "2025-10-08T19:47:00.544Z" }, + { 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, upload-time = "2025-10-08T19:47:01.968Z" }, + { url = "https://files.pythonhosted.org/packages/80/9e/e7b85720b98c45a45e1fca6a177024934dc9bc5f4d5dd04207f216fc33ed/propcache-0.4.1-cp312-cp312-win32.whl", hash = "sha256:671538c2262dadb5ba6395e26c1731e1d52534bfe9ae56d0b5573ce539266aa8", size = 38066, upload-time = "2025-10-08T19:47:03.503Z" }, + { url = "https://files.pythonhosted.org/packages/54/09/d19cff2a5aaac632ec8fc03737b223597b1e347416934c1b3a7df079784c/propcache-0.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:cb2d222e72399fcf5890d1d5cc1060857b9b236adff2792ff48ca2dfd46c81db", size = 41655, upload-time = "2025-10-08T19:47:04.973Z" }, + { url = "https://files.pythonhosted.org/packages/68/ab/6b5c191bb5de08036a8c697b265d4ca76148efb10fa162f14af14fb5f076/propcache-0.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:204483131fb222bdaaeeea9f9e6c6ed0cac32731f75dfc1d4a567fc1926477c1", size = 37789, upload-time = "2025-10-08T19:47:06.077Z" }, + { 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, upload-time = "2025-10-08T19:47:07.648Z" }, + { 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, upload-time = "2025-10-08T19:47:08.851Z" }, + { 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, upload-time = "2025-10-08T19:47:09.982Z" }, + { 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, upload-time = "2025-10-08T19:47:11.319Z" }, + { 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, upload-time = "2025-10-08T19:47:13.146Z" }, + { 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, upload-time = "2025-10-08T19:47:14.913Z" }, + { 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, upload-time = "2025-10-08T19:47:16.277Z" }, + { 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, upload-time = "2025-10-08T19:47:17.962Z" }, + { 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, upload-time = "2025-10-08T19:47:19.355Z" }, + { 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, upload-time = "2025-10-08T19:47:21.338Z" }, + { 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, upload-time = "2025-10-08T19:47:23.059Z" }, + { 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, upload-time = "2025-10-08T19:47:24.445Z" }, + { url = "https://files.pythonhosted.org/packages/93/89/caa9089970ca49c7c01662bd0eeedfe85494e863e8043565aeb6472ce8fe/propcache-0.4.1-cp313-cp313-win32.whl", hash = "sha256:bcc9aaa5d80322bc2fb24bb7accb4a30f81e90ab8d6ba187aec0744bc302ad81", size = 37586, upload-time = "2025-10-08T19:47:25.736Z" }, + { url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e", size = 40790, upload-time = "2025-10-08T19:47:26.847Z" }, + { url = "https://files.pythonhosted.org/packages/59/1b/e71ae98235f8e2ba5004d8cb19765a74877abf189bc53fc0c80d799e56c3/propcache-0.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:8873eb4460fd55333ea49b7d189749ecf6e55bf85080f11b1c4530ed3034cba1", size = 37158, upload-time = "2025-10-08T19:47:27.961Z" }, + { 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, upload-time = "2025-10-08T19:47:29.445Z" }, + { 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, upload-time = "2025-10-08T19:47:30.579Z" }, + { 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, upload-time = "2025-10-08T19:47:31.79Z" }, + { 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, upload-time = "2025-10-08T19:47:33.481Z" }, + { 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, upload-time = "2025-10-08T19:47:34.906Z" }, + { 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, upload-time = "2025-10-08T19:47:36.338Z" }, + { 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, upload-time = "2025-10-08T19:47:37.692Z" }, + { 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, upload-time = "2025-10-08T19:47:39.659Z" }, + { 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, upload-time = "2025-10-08T19:47:41.084Z" }, + { 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, upload-time = "2025-10-08T19:47:42.51Z" }, + { 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, upload-time = "2025-10-08T19:47:43.927Z" }, + { 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, upload-time = "2025-10-08T19:47:45.448Z" }, + { url = "https://files.pythonhosted.org/packages/92/f7/1d4ec5841505f423469efbfc381d64b7b467438cd5a4bbcbb063f3b73d27/propcache-0.4.1-cp313-cp313t-win32.whl", hash = "sha256:2ad890caa1d928c7c2965b48f3a3815c853180831d0e5503d35cf00c472f4717", size = 41396, upload-time = "2025-10-08T19:47:47.202Z" }, + { url = "https://files.pythonhosted.org/packages/48/f0/615c30622316496d2cbbc29f5985f7777d3ada70f23370608c1d3e081c1f/propcache-0.4.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f7ee0e597f495cf415bcbd3da3caa3bd7e816b74d0d52b8145954c5e6fd3ff37", size = 44897, upload-time = "2025-10-08T19:47:48.336Z" }, + { url = "https://files.pythonhosted.org/packages/fd/ca/6002e46eccbe0e33dcd4069ef32f7f1c9e243736e07adca37ae8c4830ec3/propcache-0.4.1-cp313-cp313t-win_arm64.whl", hash = "sha256:929d7cbe1f01bb7baffb33dc14eb5691c95831450a26354cd210a8155170c93a", size = 39789, upload-time = "2025-10-08T19:47:49.876Z" }, + { 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, upload-time = "2025-10-08T19:47:51.051Z" }, + { 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, upload-time = "2025-10-08T19:47:52.594Z" }, + { 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, upload-time = "2025-10-08T19:47:54.073Z" }, + { 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, upload-time = "2025-10-08T19:47:55.715Z" }, + { 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, upload-time = "2025-10-08T19:47:57.499Z" }, + { 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, upload-time = "2025-10-08T19:47:59.317Z" }, + { 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, upload-time = "2025-10-08T19:48:00.67Z" }, + { 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, upload-time = "2025-10-08T19:48:02.604Z" }, + { 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, upload-time = "2025-10-08T19:48:04.499Z" }, + { 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, upload-time = "2025-10-08T19:48:06.213Z" }, + { 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, upload-time = "2025-10-08T19:48:08.432Z" }, + { 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, upload-time = "2025-10-08T19:48:09.968Z" }, + { url = "https://files.pythonhosted.org/packages/ee/36/66367de3575db1d2d3f3d177432bd14ee577a39d3f5d1b3d5df8afe3b6e2/propcache-0.4.1-cp314-cp314-win32.whl", hash = "sha256:ab4c29b49d560fe48b696cdcb127dd36e0bc2472548f3bf56cc5cb3da2b2984f", size = 38140, upload-time = "2025-10-08T19:48:11.232Z" }, + { url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl", hash = "sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153", size = 41257, upload-time = "2025-10-08T19:48:12.707Z" }, + { url = "https://files.pythonhosted.org/packages/34/5e/63bd5896c3fec12edcbd6f12508d4890d23c265df28c74b175e1ef9f4f3b/propcache-0.4.1-cp314-cp314-win_arm64.whl", hash = "sha256:74c1fb26515153e482e00177a1ad654721bf9207da8a494a0c05e797ad27b992", size = 38097, upload-time = "2025-10-08T19:48:13.923Z" }, + { 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, upload-time = "2025-10-08T19:48:15.16Z" }, + { 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, upload-time = "2025-10-08T19:48:16.424Z" }, + { 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, upload-time = "2025-10-08T19:48:17.577Z" }, + { 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, upload-time = "2025-10-08T19:48:18.901Z" }, + { 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, upload-time = "2025-10-08T19:48:20.762Z" }, + { 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, upload-time = "2025-10-08T19:48:22.592Z" }, + { 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, upload-time = "2025-10-08T19:48:23.947Z" }, + { 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, upload-time = "2025-10-08T19:48:25.656Z" }, + { 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, upload-time = "2025-10-08T19:48:27.207Z" }, + { 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, upload-time = "2025-10-08T19:48:28.65Z" }, + { 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, upload-time = "2025-10-08T19:48:30.133Z" }, + { 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, upload-time = "2025-10-08T19:48:31.567Z" }, + { url = "https://files.pythonhosted.org/packages/08/02/87b25304249a35c0915d236575bc3574a323f60b47939a2262b77632a3ee/propcache-0.4.1-cp314-cp314t-win32.whl", hash = "sha256:05674a162469f31358c30bcaa8883cb7829fa3110bf9c0991fe27d7896c42d85", size = 42546, upload-time = "2025-10-08T19:48:32.872Z" }, + { url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl", hash = "sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1", size = 46259, upload-time = "2025-10-08T19:48:34.226Z" }, + { url = "https://files.pythonhosted.org/packages/c4/2d/346e946d4951f37eca1e4f55be0f0174c52cd70720f84029b02f296f4a38/propcache-0.4.1-cp314-cp314t-win_arm64.whl", hash = "sha256:ecef2343af4cc68e05131e45024ba34f6095821988a9d0a02aa7c73fcc448aa9", size = 40428, upload-time = "2025-10-08T19:48:35.441Z" }, + { url = "https://files.pythonhosted.org/packages/9b/01/0ebaec9003f5d619a7475165961f8e3083cf8644d704b60395df3601632d/propcache-0.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:3d233076ccf9e450c8b3bc6720af226b898ef5d051a2d145f7d765e6e9f9bcff", size = 80277, upload-time = "2025-10-08T19:48:36.647Z" }, + { url = "https://files.pythonhosted.org/packages/34/58/04af97ac586b4ef6b9026c3fd36ee7798b737a832f5d3440a4280dcebd3a/propcache-0.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:357f5bb5c377a82e105e44bd3d52ba22b616f7b9773714bff93573988ef0a5fb", size = 45865, upload-time = "2025-10-08T19:48:37.859Z" }, + { url = "https://files.pythonhosted.org/packages/7c/19/b65d98ae21384518b291d9939e24a8aeac4fdb5101b732576f8f7540e834/propcache-0.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cbc3b6dfc728105b2a57c06791eb07a94229202ea75c59db644d7d496b698cac", size = 47636, upload-time = "2025-10-08T19:48:39.038Z" }, + { url = "https://files.pythonhosted.org/packages/b3/0f/317048c6d91c356c7154dca5af019e6effeb7ee15fa6a6db327cc19e12b4/propcache-0.4.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:182b51b421f0501952d938dc0b0eb45246a5b5153c50d42b495ad5fb7517c888", size = 201126, upload-time = "2025-10-08T19:48:40.774Z" }, + { url = "https://files.pythonhosted.org/packages/71/69/0b2a7a5a6ee83292b4b997dbd80549d8ce7d40b6397c1646c0d9495f5a85/propcache-0.4.1-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:4b536b39c5199b96fc6245eb5fb796c497381d3942f169e44e8e392b29c9ebcc", size = 209837, upload-time = "2025-10-08T19:48:42.167Z" }, + { url = "https://files.pythonhosted.org/packages/a5/92/c699ac495a6698df6e497fc2de27af4b6ace10d8e76528357ce153722e45/propcache-0.4.1-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:db65d2af507bbfbdcedb254a11149f894169d90488dd3e7190f7cdcb2d6cd57a", size = 215578, upload-time = "2025-10-08T19:48:43.56Z" }, + { url = "https://files.pythonhosted.org/packages/b3/ee/14de81c5eb02c0ee4f500b4e39c4e1bd0677c06e72379e6ab18923c773fc/propcache-0.4.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fd2dbc472da1f772a4dae4fa24be938a6c544671a912e30529984dd80400cd88", size = 197187, upload-time = "2025-10-08T19:48:45.309Z" }, + { url = "https://files.pythonhosted.org/packages/1d/94/48dce9aaa6d8dd5a0859bad75158ec522546d4ac23f8e2f05fac469477dd/propcache-0.4.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:daede9cd44e0f8bdd9e6cc9a607fc81feb80fae7a5fc6cecaff0e0bb32e42d00", size = 193478, upload-time = "2025-10-08T19:48:47.743Z" }, + { url = "https://files.pythonhosted.org/packages/60/b5/0516b563e801e1ace212afde869a0596a0d7115eec0b12d296d75633fb29/propcache-0.4.1-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:71b749281b816793678ae7f3d0d84bd36e694953822eaad408d682efc5ca18e0", size = 190650, upload-time = "2025-10-08T19:48:49.373Z" }, + { url = "https://files.pythonhosted.org/packages/24/89/e0f7d4a5978cd56f8cd67735f74052f257dc471ec901694e430f0d1572fe/propcache-0.4.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:0002004213ee1f36cfb3f9a42b5066100c44276b9b72b4e1504cddd3d692e86e", size = 200251, upload-time = "2025-10-08T19:48:51.4Z" }, + { url = "https://files.pythonhosted.org/packages/06/7d/a1fac863d473876ed4406c914f2e14aa82d2f10dd207c9e16fc383cc5a24/propcache-0.4.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:fe49d0a85038f36ba9e3ffafa1103e61170b28e95b16622e11be0a0ea07c6781", size = 200919, upload-time = "2025-10-08T19:48:53.227Z" }, + { url = "https://files.pythonhosted.org/packages/c3/4e/f86a256ff24944cf5743e4e6c6994e3526f6acfcfb55e21694c2424f758c/propcache-0.4.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:99d43339c83aaf4d32bda60928231848eee470c6bda8d02599cc4cebe872d183", size = 193211, upload-time = "2025-10-08T19:48:55.027Z" }, + { url = "https://files.pythonhosted.org/packages/6e/3f/3fbad5f4356b068f1b047d300a6ff2c66614d7030f078cd50be3fec04228/propcache-0.4.1-cp39-cp39-win32.whl", hash = "sha256:a129e76735bc792794d5177069691c3217898b9f5cee2b2661471e52ffe13f19", size = 38314, upload-time = "2025-10-08T19:48:56.792Z" }, + { url = "https://files.pythonhosted.org/packages/a4/45/d78d136c3a3d215677abb886785aae744da2c3005bcb99e58640c56529b1/propcache-0.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:948dab269721ae9a87fd16c514a0a2c2a1bdb23a9a61b969b0f9d9ee2968546f", size = 41912, upload-time = "2025-10-08T19:48:57.995Z" }, + { url = "https://files.pythonhosted.org/packages/fc/2a/b0632941f25139f4e58450b307242951f7c2717a5704977c6d5323a800af/propcache-0.4.1-cp39-cp39-win_arm64.whl", hash = "sha256:5fd37c406dd6dc85aa743e214cef35dc54bbdd1419baac4f6ae5e5b1a2976938", size = 38450, upload-time = "2025-10-08T19:48:59.349Z" }, + { url = "https://files.pythonhosted.org/packages/5b/5a/bc7b4a4ef808fa59a816c17b20c4bef6884daebbdf627ff2a161da67da19/propcache-0.4.1-py3-none-any.whl", hash = "sha256:af2a6052aeb6cf17d3e46ee169099044fd8224cbaf75c76a2ef596e8163e2237", size = 13305, upload-time = "2025-10-08T19:49:00.792Z" }, +] + [[package]] name = "providers" version = "0.1.0" @@ -756,6 +1070,7 @@ source = { editable = "packages/providers" } dependencies = [ { name = "click" }, { name = "db" }, + { name = "fake-useragent" }, { name = "httpx" }, { name = "platformdirs" }, { name = "pydantic" }, @@ -769,6 +1084,7 @@ dev = [ { name = "pip" }, { name = "pytest" }, { name = "pytest-cov" }, + { name = "pytest-vcr" }, { name = "ruff" }, ] @@ -776,6 +1092,7 @@ dev = [ requires-dist = [ { name = "click", specifier = ">=8,<9" }, { name = "db", editable = "packages/db" }, + { name = "fake-useragent", specifier = ">=2.2.0" }, { name = "httpx", specifier = ">=0.28.0,<0.29.0" }, { name = "platformdirs", specifier = ">=4,<5" }, { name = "pydantic", specifier = ">=2,<3" }, @@ -789,6 +1106,7 @@ dev = [ { name = "pip", specifier = ">=24,<25" }, { name = "pytest", specifier = ">=8,<9" }, { name = "pytest-cov", specifier = ">=6,<7" }, + { name = "pytest-vcr", specifier = ">=1.0.2" }, { name = "ruff", specifier = ">=0.11.0,<0.12.0" }, ] @@ -1035,6 +1353,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/36/3b/48e79f2cd6a61dbbd4807b4ed46cb564b4fd50a76166b1c4ea5c1d9e2371/pytest_cov-6.0.0-py3-none-any.whl", hash = "sha256:eee6f1b9e61008bd34975a4d5bab25801eb31898b032dd55addc93e96fcaaa35", size = 22949, upload-time = "2024-10-29T20:13:33.215Z" }, ] +[[package]] +name = "pytest-vcr" +version = "1.0.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pytest" }, + { name = "vcrpy", version = "7.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "vcrpy", version = "8.1.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1a/60/104c619483c1a42775d3f8b27293f1ecfc0728014874d065e68cb9702d49/pytest-vcr-1.0.2.tar.gz", hash = "sha256:23ee51b75abbcc43d926272773aae4f39f93aceb75ed56852d0bf618f92e1896", size = 3810, upload-time = "2019-04-26T19:04:00.806Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9d/d3/ff520d11e6ee400602711d1ece8168dcfc5b6d8146fb7db4244a6ad6a9c3/pytest_vcr-1.0.2-py2.py3-none-any.whl", hash = "sha256:2f316e0539399bea0296e8b8401145c62b6f85e9066af7e57b6151481b0d6d9c", size = 4137, upload-time = "2019-04-26T19:03:57.034Z" }, +] + [[package]] name = "python-dotenv" version = "1.0.1" @@ -1302,6 +1634,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8", size = 347839, upload-time = "2025-03-23T13:54:41.845Z" }, ] +[[package]] +name = "urllib3" +version = "1.26.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e4/e8/6ff5e6bc22095cfc59b6ea711b687e2b7ed4bdb373f7eeec370a97d7392f/urllib3-1.26.20.tar.gz", hash = "sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32", size = 307380, upload-time = "2024-08-29T15:43:11.37Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/33/cf/8435d5a7159e2a9c83a95896ed596f68cf798005fe107cc655b5c5c14704/urllib3-1.26.20-py2.py3-none-any.whl", hash = "sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e", size = 144225, upload-time = "2024-08-29T15:43:08.921Z" }, +] + [[package]] name = "uvicorn" version = "0.34.0" @@ -1378,6 +1719,41 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/1a/5c/6ba221bb60f1e6474474102e17e38612ec7a06dc320e22b687ab563d877f/uvloop-0.21.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2d1f581393673ce119355d56da84fe1dd9d2bb8b3d13ce792524e1607139feff", size = 3804696, upload-time = "2024-10-14T23:38:33.633Z" }, ] +[[package]] +name = "vcrpy" +version = "7.0.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.10' and platform_python_implementation == 'PyPy'", + "python_full_version < '3.10' and platform_python_implementation != 'PyPy'", +] +dependencies = [ + { name = "pyyaml", marker = "python_full_version < '3.10'" }, + { name = "urllib3", marker = "python_full_version < '3.10'" }, + { name = "wrapt", marker = "python_full_version < '3.10'" }, + { name = "yarl", marker = "python_full_version < '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/25/d3/856e06184d4572aada1dd559ddec3bedc46df1f2edc5ab2c91121a2cccdb/vcrpy-7.0.0.tar.gz", hash = "sha256:176391ad0425edde1680c5b20738ea3dc7fb942520a48d2993448050986b3a50", size = 85502, upload-time = "2024-12-31T00:07:57.894Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/5d/1f15b252890c968d42b348d1e9b0aa12d5bf3e776704178ec37cceccdb63/vcrpy-7.0.0-py2.py3-none-any.whl", hash = "sha256:55791e26c18daa363435054d8b35bd41a4ac441b6676167635d1b37a71dbe124", size = 42321, upload-time = "2024-12-31T00:07:55.277Z" }, +] + +[[package]] +name = "vcrpy" +version = "8.1.1" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.10'", +] +dependencies = [ + { name = "pyyaml", marker = "python_full_version >= '3.10'" }, + { name = "wrapt", marker = "python_full_version >= '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/07/bcfd5ebd7cb308026ab78a353e091bd699593358be49197d39d004e5ad83/vcrpy-8.1.1.tar.gz", hash = "sha256:58e3053e33b423f3594031cb758c3f4d1df931307f1e67928e30cf352df7709f", size = 85770, upload-time = "2026-01-04T19:22:03.886Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/d7/f79b05a5d728f8786876a7d75dfb0c5cae27e428081b2d60152fb52f155f/vcrpy-8.1.1-py3-none-any.whl", hash = "sha256:2d16f31ad56493efb6165182dd99767207031b0da3f68b18f975545ede8ac4b9", size = 42445, upload-time = "2026-01-04T19:22:02.532Z" }, +] + [[package]] name = "watchfiles" version = "1.0.5" @@ -1535,6 +1911,245 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f", size = 169743, upload-time = "2025-03-05T20:03:39.41Z" }, ] +[[package]] +name = "wrapt" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/9f/06263fcd8ad6c405f05a3905fd7a84dd3176eb5ad46e44bccc0cd16348bb/wrapt-2.2.1.tar.gz", hash = "sha256:6744f504375775d7609c82c8d3d94af1c9a6f05586984536905908ba905277b9", size = 127620, upload-time = "2026-05-22T14:49:43.056Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b4/8b/84bc1ea68b620fe0e2696a8cff07e82f4b962d952ab14efee8955997bb70/wrapt-2.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0f68f478004475d97906686e702ddbddeaf717c0b68ad2794384308f2dc713ae", size = 80093, upload-time = "2026-05-22T14:47:27.074Z" }, + { url = "https://files.pythonhosted.org/packages/f3/8f/64ec81194a0bc708d9720174c998c8a32116e82b5b32c04e20a7fe01176c/wrapt-2.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e422b2d647a65d6b080cad5accd09055d3809bdff00c76fba8dca00ca935572a", size = 81183, upload-time = "2026-05-22T14:47:29.062Z" }, + { url = "https://files.pythonhosted.org/packages/94/c2/3d186944aae923631d1def58f4c4ff8f0b6309906afc0b6978de3e69b3e0/wrapt-2.2.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:036dfb40128819a751c6f451c6b9c10172c49e4c401aebcdb8ecf2aec1683598", size = 152494, upload-time = "2026-05-22T14:47:30.583Z" }, + { url = "https://files.pythonhosted.org/packages/01/d1/6b3d0ea995b867d2862aad5619bd5e17de09a9d64a821f46832dcd272d40/wrapt-2.2.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:09ac16c081bebfd15d8e4dfa5bdc805990bbd52249ecff22530da7a129d6120b", size = 154310, upload-time = "2026-05-22T14:47:32.175Z" }, + { url = "https://files.pythonhosted.org/packages/f9/4b/37ecb90a8c3753e580327fb40731a984b754e3df65d2ef932bf359fe4adc/wrapt-2.2.1-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:07be671fa8875971222b0ba9059ed8b4dc738631122feba17c93aa36b4213e9a", size = 149002, upload-time = "2026-05-22T14:47:34.021Z" }, + { url = "https://files.pythonhosted.org/packages/e7/d0/918884d9dfa84d0d135b42a51c00910f5c5447fe7a5e211a8e16ac324dd4/wrapt-2.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93fc2bf40cd7f4a0256010dce073d44eeb4a351b9bca94d0477ce2b6e62532b3", size = 153185, upload-time = "2026-05-22T14:47:35.722Z" }, + { url = "https://files.pythonhosted.org/packages/4c/00/382299d8ced610b29b59b099a89eda821e8c489aa152b7183748ac83f32a/wrapt-2.2.1-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:ba519b2d765df9871a25879e6f7fa78948ea59a2a31f9c1a257e34b651994afc", size = 148040, upload-time = "2026-05-22T14:47:37.052Z" }, + { url = "https://files.pythonhosted.org/packages/6c/46/62a79b79e35bbebb1207ca5d15b81192f37f20cc5659cf4e3ce955b7fcc8/wrapt-2.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:9011395be8db1827d106c6449b4bb6dd17e331ff6ec521f227e4588f1c78e46f", size = 151773, upload-time = "2026-05-22T14:47:38.713Z" }, + { url = "https://files.pythonhosted.org/packages/a1/db/95c152151d206d4b430516c89725306e92484072f38e65492afde63f6d19/wrapt-2.2.1-cp310-cp310-win32.whl", hash = "sha256:a8f7176b83664af44567e9cc06e0d3827823fcc1a5e52307ebb8ac3aa95860b9", size = 77393, upload-time = "2026-05-22T14:47:40.061Z" }, + { url = "https://files.pythonhosted.org/packages/13/d3/882d50452c6fbd13f24fe5d2644b97cdad2565a7e1522cbb6312de8a52cf/wrapt-2.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:d7f513d3185e6fec82d0c3518f2e6365d8b4e49f5f45f29640d5162d56a23b54", size = 80350, upload-time = "2026-05-22T14:47:41.194Z" }, + { url = "https://files.pythonhosted.org/packages/58/0f/148376523b4e370692286a9ba14d5715cf3c5b86da3bd3630926367b6b73/wrapt-2.2.1-cp310-cp310-win_arm64.whl", hash = "sha256:44255c84bc57554fed822e83e70036b51afa9edb56fc7ca56c54410ece7898c9", size = 79149, upload-time = "2026-05-22T14:47:42.835Z" }, + { url = "https://files.pythonhosted.org/packages/5f/ac/4370bde262c0e633e6c4f0e56d55095710024cf9a5cecc20c59a10de483c/wrapt-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:dd57607acc85678925940bd5df0385ff8332083a32fa8d7a43f8767f4997263c", size = 80321, upload-time = "2026-05-22T14:47:43.996Z" }, + { url = "https://files.pythonhosted.org/packages/eb/79/b8ff3a61e71babf58a8cf4c0d63358e8bad383e15bf7f35e62d2f6b6e4a4/wrapt-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1ae574d65c9fa8e86f64f6a7c2668f9fcd507b183e0e577619f504b883cb0a6c", size = 81216, upload-time = "2026-05-22T14:47:45.243Z" }, + { url = "https://files.pythonhosted.org/packages/6e/fd/c0cac1f77c9c4f6fe58a920ca632ce379bb8be928720e11e8d73de28a5e9/wrapt-2.2.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:9a04c28c10ba7fd12842b109d2edb0678872a2fe65277ca4ff06a0d61edee245", size = 159208, upload-time = "2026-05-22T14:47:47.176Z" }, + { url = "https://files.pythonhosted.org/packages/d9/4f/744132a7b2fbefa6b81118ec5942eca5fc2e9a129f9055a0c5e46885a549/wrapt-2.2.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3e2f02472a1cbbf3884b365714a810b5947134a95ad6952b554cb8cce9d492b0", size = 160322, upload-time = "2026-05-22T14:47:49.04Z" }, + { url = "https://files.pythonhosted.org/packages/d6/95/b7cd9a22a06cf93e6482904ee6afc956248983553593fd1009296d1b3b31/wrapt-2.2.1-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ac2745950b2bff80219c15ebf2fa9d8427eba7e249739f97e55c9d169e47e9e1", size = 153243, upload-time = "2026-05-22T14:47:50.386Z" }, + { url = "https://files.pythonhosted.org/packages/4c/4a/eb79423192015f46f0db2872e7e04a3dde8d359b83411e8959e7c9287eaa/wrapt-2.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:67a97e5b6c457f0cd3cfc19ebb2d84463e60c3ece754cc831e4281a3ca29bb18", size = 159231, upload-time = "2026-05-22T14:47:51.753Z" }, + { url = "https://files.pythonhosted.org/packages/ec/dc/435015b58ce33c6fc4104158fa91ddb0e809ab03a5751fb7465d1d461456/wrapt-2.2.1-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:c803a3d331796255af51ba2c79ed0ac8275865b516c09e61f248d1e7aff31ce9", size = 152351, upload-time = "2026-05-22T14:47:53.214Z" }, + { url = "https://files.pythonhosted.org/packages/77/ac/5d203f98df8fd136b95c5227139aea02d34505e18baf812d0c005df61963/wrapt-2.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:9b984d1eb252145d6302c1dbd5e87fc6d404d45531447c84eadec04bf1fcb027", size = 158347, upload-time = "2026-05-22T14:47:54.982Z" }, + { url = "https://files.pythonhosted.org/packages/52/2f/a92427dbdc74e54c1674abbed27e61b2cb5e7a94441b8c1270c70671d928/wrapt-2.2.1-cp311-cp311-win32.whl", hash = "sha256:8a983a603a18c8708f024f7f6991b2e66159219abbf894634c5056243c55f3cd", size = 77562, upload-time = "2026-05-22T14:47:56.275Z" }, + { url = "https://files.pythonhosted.org/packages/c8/56/987b9c13b3e1c1a3c6de71284076f996b79caec90e75a87c044a40c23db9/wrapt-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:9c210a6994b21aa9b29e81c8d11560e8fdab54c117e9cff37870d0a27bde1343", size = 80616, upload-time = "2026-05-22T14:47:57.854Z" }, + { url = "https://files.pythonhosted.org/packages/7e/25/d01f560888d99d94a959c85533de349ce68d71ace3f2591d6ea8f632cfed/wrapt-2.2.1-cp311-cp311-win_arm64.whl", hash = "sha256:401229e9d63ca09f9b8891ecf83798d26c11bbb445d11ed9f1836b6d4585b38a", size = 79025, upload-time = "2026-05-22T14:47:59.089Z" }, + { url = "https://files.pythonhosted.org/packages/89/0c/bfae7b9401583b6d05938cd16dedc43857d96da2f8a3d50d78cc515bf6ff/wrapt-2.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:3ffad790d9d11d8ecf9f17c4bb671a5b4089e4d8b575c46c5129597f41f836b0", size = 81021, upload-time = "2026-05-22T14:48:00.313Z" }, + { url = "https://files.pythonhosted.org/packages/26/58/80f6a6599f933f4caecc1cb3ee88a04faf81e8b9bddbd6109c688dd63e0f/wrapt-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:628f5220c7a904d5fc78f7075c8d7871433eb6d035c94728a22fdf85f193d2a8", size = 81692, upload-time = "2026-05-22T14:48:01.49Z" }, + { url = "https://files.pythonhosted.org/packages/17/93/fb357cc7847c58a8ae790be718903afa81a28d23e642c843dc4129e8a0b2/wrapt-2.2.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:61acce4257a9883669703c525447c5b4c392edf0f987ae77ec32668440158f0e", size = 169364, upload-time = "2026-05-22T14:48:02.791Z" }, + { url = "https://files.pythonhosted.org/packages/aa/0b/76b601ee309a8bd556af0eecb184394c20b3c49aa9c8e085aa1ffacc2568/wrapt-2.2.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:727ab4244622cd6ad2390f322642090c877d2e83a608d2653a7643ae5368d926", size = 171079, upload-time = "2026-05-22T14:48:04.22Z" }, + { url = "https://files.pythonhosted.org/packages/cd/87/ee3f32d5658e3e26d3e0e457922b47a36dd3bfbdfee7f97bb3e802344a66/wrapt-2.2.1-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:03df9ebed4c73ab93fa8c07e3d41d818dfca1852b15731a3de59457b27814624", size = 160205, upload-time = "2026-05-22T14:48:05.553Z" }, + { url = "https://files.pythonhosted.org/packages/b1/d0/ae2fd64277a67f5d7bffcf2d05eea1e476263fb2a072baf0b0129ab85984/wrapt-2.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0d9ff006f420b2ec8296aa56ade43ea7da3e997e85769f0aafc5e0661aacb710", size = 168922, upload-time = "2026-05-22T14:48:07.132Z" }, + { url = "https://files.pythonhosted.org/packages/b1/f3/2d541a060c5bbafb9400bca4917e4d78bfd1f239f404782c86831a8f6b29/wrapt-2.2.1-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:844c858fc3bb7eacc0ba8efa904935d16aac6a4470948ad1e7e55c9f5a2a665f", size = 158388, upload-time = "2026-05-22T14:48:08.629Z" }, + { url = "https://files.pythonhosted.org/packages/1d/68/8d92c8800c57e93cb116ae9e9d6cbafc34fade5ee9f9107b6f203fb4dc35/wrapt-2.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:87bacdaf225117a342a20d9c03438d701c02112f6e3f351ce9b7f32354f14797", size = 167682, upload-time = "2026-05-22T14:48:10.042Z" }, + { url = "https://files.pythonhosted.org/packages/30/72/83ea3790ea352439442349388e29ff07b76e0686265f9088bbb505d1608d/wrapt-2.2.1-cp312-cp312-win32.whl", hash = "sha256:2f8c90c8afde51969487be4e1343ae049b268854877d415c2510baf833775052", size = 77857, upload-time = "2026-05-22T14:48:11.782Z" }, + { url = "https://files.pythonhosted.org/packages/ef/cb/99450668dd3502d62a54a1c8aa56e44f34cb8c1261b381cfe2e7926c3b75/wrapt-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ce32763ac31ce94fe9aada947e479b1975012bff166da409b4b9e4e376cf7e5", size = 80825, upload-time = "2026-05-22T14:48:13.046Z" }, + { url = "https://files.pythonhosted.org/packages/e6/3a/87512881be64e743f9ee4c66f4cbe8e884974bef2a5989af71f999653ac7/wrapt-2.2.1-cp312-cp312-win_arm64.whl", hash = "sha256:8d1b4d0e0c2119587a31f5c029abd547e0c81d93b89d394566fe1588659eb579", size = 79087, upload-time = "2026-05-22T14:48:14.323Z" }, + { url = "https://files.pythonhosted.org/packages/88/d1/a1b08f8f4fac8cbb156fa51cf64ee2c7f7f74f9875ba3cf70b3c58368694/wrapt-2.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d2beb1c7cab10603aecdc42f8edd6ff013f9a32e4543474e38e6b77ce9975aeb", size = 80831, upload-time = "2026-05-22T14:48:15.598Z" }, + { url = "https://files.pythonhosted.org/packages/54/ce/57890814991446a845e09b3445ce8b694f27eb0577004f2c2a36a9772ed4/wrapt-2.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e0cb7e4dd71f4c32e5e84843cd3c4cd65dda034314004bbe1d7f99af2426ab80", size = 81375, upload-time = "2026-05-22T14:48:17.071Z" }, + { url = "https://files.pythonhosted.org/packages/38/65/08d7a6c76ac4493bdb668205ee9c1de1bd5daca61717c3e9aa49b4c01499/wrapt-2.2.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:95821352042722cd9f1108874579a47989d0a7e12a37d87d2fc4af20fd99ab8a", size = 167417, upload-time = "2026-05-22T14:48:18.303Z" }, + { url = "https://files.pythonhosted.org/packages/62/ce/f1ccbee7a1bfe5cdc6b3da6bab4b45713d628b9294da32a39f563d648140/wrapt-2.2.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:abd621552ede77c4c69be7fac44ba911225b0c812b6ba604e5964cf98085b474", size = 166948, upload-time = "2026-05-22T14:48:19.768Z" }, + { url = "https://files.pythonhosted.org/packages/86/2a/f85d48d1cd4869aee6704028d257d740a47c1c467b457ce396b4b5b55d07/wrapt-2.2.1-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e3677c7146ce694874941ba82b57092cc4875445aadf29d72807351023105143", size = 158148, upload-time = "2026-05-22T14:48:21.96Z" }, + { url = "https://files.pythonhosted.org/packages/fe/5c/93939ad11d4a12358ab1aab219a2ef5efa5612e0db6b9fc65af8af1a891b/wrapt-2.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9a5934eaea872e17936b5f45501eba5ab0bce9a74122e172b663d7c28c459c4a", size = 165905, upload-time = "2026-05-22T14:48:23.373Z" }, + { url = "https://files.pythonhosted.org/packages/e0/22/b8c2aa89862ff58605934d7abf4b70e6a5a1c33df96656f49035ccdf1c8a/wrapt-2.2.1-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:f5b9daf6b629fce418e0cc3dd0436eac045188fa35deadb7a7f3941d5b8203f9", size = 156712, upload-time = "2026-05-22T14:48:24.767Z" }, + { url = "https://files.pythonhosted.org/packages/5d/78/bf00a7b02239c12bb02ddcc3c0b971bfcc36e578c5a44f1ccfef5b458545/wrapt-2.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f53ac9f3ef573326d009ed809beff4efcac6451931c2b8132586da4b9e53ff31", size = 166560, upload-time = "2026-05-22T14:48:26.83Z" }, + { url = "https://files.pythonhosted.org/packages/fe/93/6390ca9c5b787683cef588d04f57c8d41b9a2323b5597a65f18638c90ef2/wrapt-2.2.1-cp313-cp313-win32.whl", hash = "sha256:1ffa9cfd4bdb581539951b14ae661ff20ed0c3599b3e911a131ee0ec5ac11337", size = 77817, upload-time = "2026-05-22T14:48:28.221Z" }, + { url = "https://files.pythonhosted.org/packages/97/73/ce10f0e71c0cfaa1a65faadb8efd4852028b3bb9ba28932b8889df769d38/wrapt-2.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:368eac1e20fd0bb03dd3cc42bf9887154c3861b60989389ccb5fac032617d215", size = 80736, upload-time = "2026-05-22T14:48:30.139Z" }, + { url = "https://files.pythonhosted.org/packages/c7/4c/89f4a6818fafbbd840330e4fa3873073e1bfc166133a64cac7f8fde7a5e3/wrapt-2.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:c754dafdf5aaf0b401b644a90a30046929a0dd1a536e0ff0ec959a59155d9c7f", size = 79099, upload-time = "2026-05-22T14:48:31.405Z" }, + { url = "https://files.pythonhosted.org/packages/bf/f2/9a8741c46f8c208ac0a45b25ba170bcb4fb72a2781d5fb97dbd7b6be73cb/wrapt-2.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:ed928d0fda15fc0adc8d13305c8b3c0f2fba5b0669950c9e6d019d9162a3b3e8", size = 82802, upload-time = "2026-05-22T14:48:33.307Z" }, + { url = "https://files.pythonhosted.org/packages/9c/0d/e9c855716a3705eef1416456bdf062b60620726fdc59428ff670fc3c60dc/wrapt-2.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:fafb4e739e43544d12cb4abd1605fd4683b6ca6a9ad682b7fd8f4d21973eafa8", size = 83329, upload-time = "2026-05-22T14:48:34.593Z" }, + { url = "https://files.pythonhosted.org/packages/3b/d6/a88f1c13112b7831adac75cea65d8310e0d696d570c8961844c90a57b865/wrapt-2.2.1-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:74d6a0c31472fe5d814917266b9f46495d7c61ed890af08b468acea92fb89a8d", size = 202937, upload-time = "2026-05-22T14:48:35.859Z" }, + { url = "https://files.pythonhosted.org/packages/42/65/e29d54aef06a4d898a5b8a25589a0b3769bde454f922fad8f6f89fbfb650/wrapt-2.2.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ab5be648d5a0b86b7438864f8df3c705a65cef35a2fd3e5561e3e203167e0f27", size = 209997, upload-time = "2026-05-22T14:48:38.153Z" }, + { url = "https://files.pythonhosted.org/packages/2a/91/e4454263516cf0e12640912fbca9a83654e424f0a6ddb79f5cd7ce14bf33/wrapt-2.2.1-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:9d8f204c8e3a8bf9ece17e0a83d137fd807440977f8a5e762d59306795011440", size = 194856, upload-time = "2026-05-22T14:48:39.69Z" }, + { url = "https://files.pythonhosted.org/packages/de/d0/fe0ee202286afdf4a7f77dd29f195703145764d572aec209c5086e57d924/wrapt-2.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:d047f6498c973874ba08ac3f97c69a2c4b2211c8de6f4c205f75cb1c9522596e", size = 205654, upload-time = "2026-05-22T14:48:43.456Z" }, + { url = "https://files.pythonhosted.org/packages/23/b6/87d860dfc6460c246af70b1fd5c8b76df77571b42a493459423ded94fd7d/wrapt-2.2.1-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:7a4fdb9326aab4a5a477a1640e5ad786a8495901009d7e7b038371edd23a9d2b", size = 192206, upload-time = "2026-05-22T14:48:44.858Z" }, + { url = "https://files.pythonhosted.org/packages/df/46/3eea8cde077d985f239a38c0257087b8064fd9ee9b1a99e282d2c86da4ef/wrapt-2.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c8cc5094b08abeae52da9c73c8a32003623be691a5193df2f4e3eac3d557c394", size = 198428, upload-time = "2026-05-22T14:48:46.319Z" }, + { url = "https://files.pythonhosted.org/packages/18/dc/b927ee9c7fc67adc3a5658f246a0d275425eb840ba36e7b702e70f18bde8/wrapt-2.2.1-cp313-cp313t-win32.whl", hash = "sha256:9907a4402ab6db12b7077a0ea5d7a4d028ecb22c8eee2b53527080d347cd1562", size = 79448, upload-time = "2026-05-22T14:48:47.901Z" }, + { url = "https://files.pythonhosted.org/packages/ec/b3/fd30b473fe498c70e6b9a5f328b8d3fbaf1b8c3c481465f59724bba8eb70/wrapt-2.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:5590d63f5243251641cf543009b4c9314a79d0598fdb8a8e4cfc918494536c53", size = 83021, upload-time = "2026-05-22T14:48:49.201Z" }, + { url = "https://files.pythonhosted.org/packages/ee/f3/96c39153a8737a6e9aa85adef254ac4195bea3f2d24efc60472ccc3c9e2e/wrapt-2.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:c318a64b53d97b841d7b5e637517e50a27be64bc695128422953d4b21710954e", size = 80295, upload-time = "2026-05-22T14:48:50.479Z" }, + { url = "https://files.pythonhosted.org/packages/0a/a3/11d7f34ebbf3231bc907a3e6d5ee051b14d034c1bc7b65a97d5cc00516df/wrapt-2.2.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:6f56a647e4eaf5f0ca40330fb070f566bdf9f7b0db89a1af20d71c28dcd7a0ab", size = 80879, upload-time = "2026-05-22T14:48:51.802Z" }, + { url = "https://files.pythonhosted.org/packages/13/3c/b74cfd984cef560b900fb1a727af20352d89e1f06bf2e1114dd3f00f5f5a/wrapt-2.2.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:64b7deeda4b70408e382328d8bbe52a256fe9bc63ae3db86d804608367e5422c", size = 81462, upload-time = "2026-05-22T14:48:53.18Z" }, + { url = "https://files.pythonhosted.org/packages/15/a3/7c8f704b8dc07dfe0a5d01c2edbfd88317aa8e5e3fa7c743eb7a085ae767/wrapt-2.2.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b9cf53ba90717db2e292401de290776c498d4bbfb0d4a559ca2895db8b9dcb5c", size = 167251, upload-time = "2026-05-22T14:48:54.562Z" }, + { url = "https://files.pythonhosted.org/packages/80/85/a34d1888d97247da6c2ff6118c3a721c73ed8cc4dd198c00208bb73b6f80/wrapt-2.2.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cf3638274ab9d9b724c9baa0b4c04e132cd6faefb78b4dd3dd1a02a4bdaad41e", size = 166316, upload-time = "2026-05-22T14:48:56.065Z" }, + { url = "https://files.pythonhosted.org/packages/e9/d7/72ffaeb01eebc704afe3fb99e840480f4bda45f0fa66e3381b6a39251c8f/wrapt-2.2.1-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:aed9658797d0b45d6c49adcfc6b41f66e6f2d0c6de3ec79e16cf4b1855df240f", size = 157952, upload-time = "2026-05-22T14:48:57.924Z" }, + { url = "https://files.pythonhosted.org/packages/24/5b/36f5d6b024e4edfdd90b140742d11ebcf7836daf5c9daf326c55c24db412/wrapt-2.2.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1d676ee388bc42a04d56dd7deb5605244dac2e35cc2fadbb43c9fa25bbd93508", size = 166130, upload-time = "2026-05-22T14:48:59.384Z" }, + { url = "https://files.pythonhosted.org/packages/81/06/9296d9e97bfdef5483dfcc859d57b095b257144b2bc5300ab521e06f4bc7/wrapt-2.2.1-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:e395f7bc31851ef9b612050368cb446e9bc14cd7454b025018980349caf25ae5", size = 156604, upload-time = "2026-05-22T14:49:00.921Z" }, + { url = "https://files.pythonhosted.org/packages/53/37/16953929ed6776175720e58fc966e779926d8d71e2c7b2273230590ca71f/wrapt-2.2.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5f1845c2a8cc1180ccccfa45785dd06f562730d19ef75be180334254012b6283", size = 166007, upload-time = "2026-05-22T14:49:02.332Z" }, + { url = "https://files.pythonhosted.org/packages/b9/73/20ee58c0612dae7c31131a7095345812ed2c7b389019e175f68cde34e5b4/wrapt-2.2.1-cp314-cp314-win32.whl", hash = "sha256:436addbc4bb4fc0a88c702577f51195d7d73683a7f3e0e5b253d8404d7847243", size = 78327, upload-time = "2026-05-22T14:49:03.722Z" }, + { url = "https://files.pythonhosted.org/packages/22/b3/ef7c3295d02e0448a71c639a36a057f46d524d057c9486291a7a3039e65c/wrapt-2.2.1-cp314-cp314-win_amd64.whl", hash = "sha256:50972a1d974ea07725a7f6b1cec5f8759008afd030a0024843ebe7d52de47f2b", size = 81144, upload-time = "2026-05-22T14:49:05.093Z" }, + { url = "https://files.pythonhosted.org/packages/ac/dc/7bdf336953f99f4ceb0a584bb8870e42c8f26f93ea10c87834dad62f1668/wrapt-2.2.1-cp314-cp314-win_arm64.whl", hash = "sha256:1c9934ea5d92957e3cd0adbc0845539dccfd62710ebe16195a8c66c53954db36", size = 79569, upload-time = "2026-05-22T14:49:06.413Z" }, + { url = "https://files.pythonhosted.org/packages/6a/6d/6dfae80150ff1919c356d1dd528f049bcdfaae29b4d284bc957e022caef4/wrapt-2.2.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:17de18fc12cea55b8a9587314cb830573e37fb33b247a7515696350863714188", size = 82892, upload-time = "2026-05-22T14:49:07.925Z" }, + { url = "https://files.pythonhosted.org/packages/82/7b/4e34766a7d7804ffce9e71befe47e9b3225dc350c49c94493c4ab39fd3a5/wrapt-2.2.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a9dec1aca52dddde7df94818310fa2fe79739c8f385b2014c4cb1035f5508199", size = 83333, upload-time = "2026-05-22T14:49:09.257Z" }, + { url = "https://files.pythonhosted.org/packages/9d/57/0b34db3e8de44ccfece62d7b337abd1631dd810f5adc5f3db571727836b5/wrapt-2.2.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:69f2e9244542cb34dd59c7f073445b9e54ad9f3fce8d93606c368a1b499fc413", size = 202899, upload-time = "2026-05-22T14:49:10.572Z" }, + { url = "https://files.pythonhosted.org/packages/e5/45/ac0c459f154b99d92789a6cba7ca727185b83513b986f8ec7fe2aacddcbf/wrapt-2.2.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2d83966dc7f4f45e8b97b5933685ac2e6e67fc0e19246ea314bceb9a8970c956", size = 209986, upload-time = "2026-05-22T14:49:12.229Z" }, + { url = "https://files.pythonhosted.org/packages/b7/e4/77e37ff33ad018fa81ade52c25fa327b80b56f81d734279a63614fcb4cbc/wrapt-2.2.1-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:78b0aa6bfb7be8deed0ab23e7aa028cc5210c29bc2d32a04d52b50e517a7307e", size = 194893, upload-time = "2026-05-22T14:49:14.139Z" }, + { url = "https://files.pythonhosted.org/packages/dd/9d/7ea651d1ab032fc5fa222fbec91d0f8a1397f6ae04ebb93fa7219aa921d7/wrapt-2.2.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:05d5cb74d1b232ec8cfa130a8f900708699ff2491d97b8f85a4cdc5996294b85", size = 205636, upload-time = "2026-05-22T14:49:15.714Z" }, + { url = "https://files.pythonhosted.org/packages/09/af/8e88031a701275b9085c54e64bc88c0b1cd55c77eadd400691c371cd76c4/wrapt-2.2.1-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f6518b94edb9150452e9aba08027d4cc293433753ec1fbefb4629a21cbc74181", size = 192267, upload-time = "2026-05-22T14:49:17.283Z" }, + { url = "https://files.pythonhosted.org/packages/bf/a8/e657ca876b06710194f243d81c4b0896ade646e244bdbec2d87c8c56a8bd/wrapt-2.2.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ed55af48b3eb28f43228ca2306788892bcb629eb2b5c4876e2a3659872c2f17a", size = 198378, upload-time = "2026-05-22T14:49:18.785Z" }, + { url = "https://files.pythonhosted.org/packages/c8/59/822efe4ea722a3961331bfa35b7d90937790d2c20f0616de1997ccc3aebd/wrapt-2.2.1-cp314-cp314t-win32.whl", hash = "sha256:2e08688ab16525897da6589d56d0aebaf417bbe91c2d8e3b96203b1efa596e85", size = 80226, upload-time = "2026-05-22T14:49:20.264Z" }, + { url = "https://files.pythonhosted.org/packages/ab/31/2a7dc5f6abb2fca0b6e1610e120419f603650aceb4f1d3ac4cae0354e162/wrapt-2.2.1-cp314-cp314t-win_amd64.whl", hash = "sha256:fd0135d34387f5fd087d9be368ea77ea89cf2451dc1cd1c622d35021bcb3ab50", size = 83835, upload-time = "2026-05-22T14:49:21.634Z" }, + { url = "https://files.pythonhosted.org/packages/9f/c0/782b86e28d1ceebeb74cccea12d2cd3d2ba0bd68e3dec20b1bc5873f6127/wrapt-2.2.1-cp314-cp314t-win_arm64.whl", hash = "sha256:f70db64e8266d7c45d3b735f2e08eeb434b5e03da9a479ae42b2e2e486a21a00", size = 80722, upload-time = "2026-05-22T14:49:23.59Z" }, + { url = "https://files.pythonhosted.org/packages/96/8e/260004b03aeb4b544c7143ae8c2103dff774313d993d69c08a620fcb6686/wrapt-2.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5fa9bf3b9e66336589d03f42abce2da1055ad5c69b0c2b764852a8471c9b9114", size = 80122, upload-time = "2026-05-22T14:49:24.993Z" }, + { url = "https://files.pythonhosted.org/packages/96/a8/3becaaf33b4f49500356a4bb142ada48faeba81b8fad6aab331ee2c2d856/wrapt-2.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2076d2335085eb09b9547e7688656fa8f5cf0183eab589d33499cd353489d797", size = 81218, upload-time = "2026-05-22T14:49:26.336Z" }, + { url = "https://files.pythonhosted.org/packages/ec/d3/768bad78a622288efef290622198bd1dc1a0b86342d4239c1c9f8761d22e/wrapt-2.2.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7975bc88ab4b0f72ef2a2d5ae9d77d87efb5ef95e8f8046242fa9afdaaf2030b", size = 152249, upload-time = "2026-05-22T14:49:28.171Z" }, + { url = "https://files.pythonhosted.org/packages/50/3a/238c01952c6e2aacb8946fae29e909e6cb22e481239db909e8311f0387d9/wrapt-2.2.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:61a0013344674d2b648bc6e6fe9828dd4fc1d3b4eb7523809792f8cb952e2f16", size = 154276, upload-time = "2026-05-22T14:49:29.749Z" }, + { url = "https://files.pythonhosted.org/packages/f9/e0/81a743527fe945c39bf4b3937cfc4826a1883919baa0c9d9eb266d5d261f/wrapt-2.2.1-cp39-cp39-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b6c0febfe38f22df2eb565c0ce8a092bb80411e56861ca382c443da83105423f", size = 148916, upload-time = "2026-05-22T14:49:31.211Z" }, + { url = "https://files.pythonhosted.org/packages/15/33/7a752d1da61ab80c8914e2814f8c62d190cf3e4aee99f5552d5caa1b99ff/wrapt-2.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:211f595f8e7faae5c5930fcc64708f2ba36849e0ba0fd653a843de9fa8d7db77", size = 153214, upload-time = "2026-05-22T14:49:32.697Z" }, + { url = "https://files.pythonhosted.org/packages/db/b1/f776dcd8adc51d75aa9eb218c97b157294c8784dcac32723edc5a1224da1/wrapt-2.2.1-cp39-cp39-musllinux_1_2_riscv64.whl", hash = "sha256:f4e1a92032a39cd5e3c647ca57dbf33b6a1938fd975623175793f9dbb63236de", size = 147962, upload-time = "2026-05-22T14:49:34.259Z" }, + { url = "https://files.pythonhosted.org/packages/31/18/d6a5491f4a2a9a327ee9c05e25871e7acf13a70adf2420b13edb849eca20/wrapt-2.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:24c52546acf2ab82412f2ab6fc5948a7fe958d3b4f070202e8dcdd865489eaf9", size = 151576, upload-time = "2026-05-22T14:49:35.748Z" }, + { url = "https://files.pythonhosted.org/packages/20/59/20355f078de6877935ed68636821b9bc822dac73e11bb1f0f72a171a4819/wrapt-2.2.1-cp39-cp39-win32.whl", hash = "sha256:c3723ff8eb8721f4daac98bc0256f15158e05316d5e52648ce9cebee434fbdd5", size = 77417, upload-time = "2026-05-22T14:49:37.199Z" }, + { url = "https://files.pythonhosted.org/packages/77/79/ceea6f7a912220c5fb59154a65ea9e535fdf8d25042671e3cd5352156e20/wrapt-2.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:2de9e20769fe9c1f6dcdc893c6a89287c5ccf8537c90b5de78aed8017697aad5", size = 80418, upload-time = "2026-05-22T14:49:38.766Z" }, + { url = "https://files.pythonhosted.org/packages/a3/a6/d7835803916569bc05871f3e3fbb42b26f81df3c696d3a6ccddaa194b3c0/wrapt-2.2.1-cp39-cp39-win_arm64.whl", hash = "sha256:585916e210db57b23543342c2f298e42331b617fd0c934caf5c64df44de8640e", size = 79177, upload-time = "2026-05-22T14:49:40.17Z" }, + { url = "https://files.pythonhosted.org/packages/53/46/29ac9daf11a86c22a8c38cd9236c62928ccae83f7ceb06bd3b0467cf9d05/wrapt-2.2.1-py3-none-any.whl", hash = "sha256:3aafea2975caef8ca49400640dde02cc7426e798f24870ed01f490bc3cffd32f", size = 61000, upload-time = "2026-05-22T14:49:41.593Z" }, +] + +[[package]] +name = "yarl" +version = "1.22.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna", marker = "python_full_version < '3.10'" }, + { name = "multidict", marker = "python_full_version < '3.10'" }, + { name = "propcache", marker = "python_full_version < '3.10'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/57/63/0c6ebca57330cd313f6102b16dd57ffaf3ec4c83403dcb45dbd15c6f3ea1/yarl-1.22.0.tar.gz", hash = "sha256:bebf8557577d4401ba8bd9ff33906f1376c877aa78d1fe216ad01b4d6745af71", size = 187169, upload-time = "2025-10-06T14:12:55.963Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/43/a2204825342f37c337f5edb6637040fa14e365b2fcc2346960201d457579/yarl-1.22.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c7bd6683587567e5a49ee6e336e0612bec8329be1b7d4c8af5687dcdeb67ee1e", size = 140517, upload-time = "2025-10-06T14:08:42.494Z" }, + { url = "https://files.pythonhosted.org/packages/44/6f/674f3e6f02266428c56f704cd2501c22f78e8b2eeb23f153117cc86fb28a/yarl-1.22.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5cdac20da754f3a723cceea5b3448e1a2074866406adeb4ef35b469d089adb8f", size = 93495, upload-time = "2025-10-06T14:08:46.2Z" }, + { url = "https://files.pythonhosted.org/packages/b8/12/5b274d8a0f30c07b91b2f02cba69152600b47830fcfb465c108880fcee9c/yarl-1.22.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:07a524d84df0c10f41e3ee918846e1974aba4ec017f990dc735aad487a0bdfdf", size = 94400, upload-time = "2025-10-06T14:08:47.855Z" }, + { url = "https://files.pythonhosted.org/packages/e2/7f/df1b6949b1fa1aa9ff6de6e2631876ad4b73c4437822026e85d8acb56bb1/yarl-1.22.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e1b329cb8146d7b736677a2440e422eadd775d1806a81db2d4cded80a48efc1a", size = 347545, upload-time = "2025-10-06T14:08:49.683Z" }, + { url = "https://files.pythonhosted.org/packages/84/09/f92ed93bd6cd77872ab6c3462df45ca45cd058d8f1d0c9b4f54c1704429f/yarl-1.22.0-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:75976c6945d85dbb9ee6308cd7ff7b1fb9409380c82d6119bd778d8fcfe2931c", size = 319598, upload-time = "2025-10-06T14:08:51.215Z" }, + { url = "https://files.pythonhosted.org/packages/c3/97/ac3f3feae7d522cf7ccec3d340bb0b2b61c56cb9767923df62a135092c6b/yarl-1.22.0-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:80ddf7a5f8c86cb3eb4bc9028b07bbbf1f08a96c5c0bc1244be5e8fefcb94147", size = 363893, upload-time = "2025-10-06T14:08:53.144Z" }, + { url = "https://files.pythonhosted.org/packages/06/49/f3219097403b9c84a4d079b1d7bda62dd9b86d0d6e4428c02d46ab2c77fc/yarl-1.22.0-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d332fc2e3c94dad927f2112395772a4e4fedbcf8f80efc21ed7cdfae4d574fdb", size = 371240, upload-time = "2025-10-06T14:08:55.036Z" }, + { url = "https://files.pythonhosted.org/packages/35/9f/06b765d45c0e44e8ecf0fe15c9eacbbde342bb5b7561c46944f107bfb6c3/yarl-1.22.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0cf71bf877efeac18b38d3930594c0948c82b64547c1cf420ba48722fe5509f6", size = 346965, upload-time = "2025-10-06T14:08:56.722Z" }, + { url = "https://files.pythonhosted.org/packages/c5/69/599e7cea8d0fcb1694323b0db0dda317fa3162f7b90166faddecf532166f/yarl-1.22.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:663e1cadaddae26be034a6ab6072449a8426ddb03d500f43daf952b74553bba0", size = 342026, upload-time = "2025-10-06T14:08:58.563Z" }, + { url = "https://files.pythonhosted.org/packages/95/6f/9dfd12c8bc90fea9eab39832ee32ea48f8e53d1256252a77b710c065c89f/yarl-1.22.0-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:6dcbb0829c671f305be48a7227918cfcd11276c2d637a8033a99a02b67bf9eda", size = 335637, upload-time = "2025-10-06T14:09:00.506Z" }, + { url = "https://files.pythonhosted.org/packages/57/2e/34c5b4eb9b07e16e873db5b182c71e5f06f9b5af388cdaa97736d79dd9a6/yarl-1.22.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:f0d97c18dfd9a9af4490631905a3f131a8e4c9e80a39353919e2cfed8f00aedc", size = 359082, upload-time = "2025-10-06T14:09:01.936Z" }, + { url = "https://files.pythonhosted.org/packages/31/71/fa7e10fb772d273aa1f096ecb8ab8594117822f683bab7d2c5a89914c92a/yarl-1.22.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:437840083abe022c978470b942ff832c3940b2ad3734d424b7eaffcd07f76737", size = 357811, upload-time = "2025-10-06T14:09:03.445Z" }, + { url = "https://files.pythonhosted.org/packages/26/da/11374c04e8e1184a6a03cf9c8f5688d3e5cec83ed6f31ad3481b3207f709/yarl-1.22.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:a899cbd98dce6f5d8de1aad31cb712ec0a530abc0a86bd6edaa47c1090138467", size = 351223, upload-time = "2025-10-06T14:09:05.401Z" }, + { url = "https://files.pythonhosted.org/packages/82/8f/e2d01f161b0c034a30410e375e191a5d27608c1f8693bab1a08b089ca096/yarl-1.22.0-cp310-cp310-win32.whl", hash = "sha256:595697f68bd1f0c1c159fcb97b661fc9c3f5db46498043555d04805430e79bea", size = 82118, upload-time = "2025-10-06T14:09:11.148Z" }, + { url = "https://files.pythonhosted.org/packages/62/46/94c76196642dbeae634c7a61ba3da88cd77bed875bf6e4a8bed037505aa6/yarl-1.22.0-cp310-cp310-win_amd64.whl", hash = "sha256:cb95a9b1adaa48e41815a55ae740cfda005758104049a640a398120bf02515ca", size = 86852, upload-time = "2025-10-06T14:09:12.958Z" }, + { url = "https://files.pythonhosted.org/packages/af/af/7df4f179d3b1a6dcb9a4bd2ffbc67642746fcafdb62580e66876ce83fff4/yarl-1.22.0-cp310-cp310-win_arm64.whl", hash = "sha256:b85b982afde6df99ecc996990d4ad7ccbdbb70e2a4ba4de0aecde5922ba98a0b", size = 82012, upload-time = "2025-10-06T14:09:14.664Z" }, + { 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, upload-time = "2025-10-06T14:09:16.298Z" }, + { 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, upload-time = "2025-10-06T14:09:17.786Z" }, + { 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, upload-time = "2025-10-06T14:09:19.662Z" }, + { 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, upload-time = "2025-10-06T14:09:21.402Z" }, + { 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, upload-time = "2025-10-06T14:09:22.98Z" }, + { 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, upload-time = "2025-10-06T14:09:24.655Z" }, + { 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, upload-time = "2025-10-06T14:09:26.617Z" }, + { 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, upload-time = "2025-10-06T14:09:28.544Z" }, + { 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, upload-time = "2025-10-06T14:09:30.568Z" }, + { 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, upload-time = "2025-10-06T14:09:32.528Z" }, + { 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, upload-time = "2025-10-06T14:09:34.634Z" }, + { 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, upload-time = "2025-10-06T14:09:36.268Z" }, + { 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, upload-time = "2025-10-06T14:09:37.872Z" }, + { url = "https://files.pythonhosted.org/packages/2d/df/fadd00fb1c90e1a5a8bd731fa3d3de2e165e5a3666a095b04e31b04d9cb6/yarl-1.22.0-cp311-cp311-win32.whl", hash = "sha256:a9b1ba5610a4e20f655258d5a1fdc7ebe3d837bb0e45b581398b99eb98b1f5ca", size = 81804, upload-time = "2025-10-06T14:09:39.359Z" }, + { url = "https://files.pythonhosted.org/packages/b5/f7/149bb6f45f267cb5c074ac40c01c6b3ea6d8a620d34b337f6321928a1b4d/yarl-1.22.0-cp311-cp311-win_amd64.whl", hash = "sha256:078278b9b0b11568937d9509b589ee83ef98ed6d561dfe2020e24a9fd08eaa2b", size = 86858, upload-time = "2025-10-06T14:09:41.068Z" }, + { url = "https://files.pythonhosted.org/packages/2b/13/88b78b93ad3f2f0b78e13bfaaa24d11cbc746e93fe76d8c06bf139615646/yarl-1.22.0-cp311-cp311-win_arm64.whl", hash = "sha256:b6a6f620cfe13ccec221fa312139135166e47ae169f8253f72a0abc0dae94376", size = 81637, upload-time = "2025-10-06T14:09:42.712Z" }, + { 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, upload-time = "2025-10-06T14:09:44.631Z" }, + { 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, upload-time = "2025-10-06T14:09:46.372Z" }, + { 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, upload-time = "2025-10-06T14:09:48.648Z" }, + { 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, upload-time = "2025-10-06T14:09:50.089Z" }, + { 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, upload-time = "2025-10-06T14:09:52.142Z" }, + { 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, upload-time = "2025-10-06T14:09:54.128Z" }, + { 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, upload-time = "2025-10-06T14:09:55.762Z" }, + { 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, upload-time = "2025-10-06T14:09:57.958Z" }, + { 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, upload-time = "2025-10-06T14:09:59.527Z" }, + { 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, upload-time = "2025-10-06T14:10:01.139Z" }, + { 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, upload-time = "2025-10-06T14:10:02.756Z" }, + { 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, upload-time = "2025-10-06T14:10:04.552Z" }, + { 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, upload-time = "2025-10-06T14:10:06.489Z" }, + { url = "https://files.pythonhosted.org/packages/e7/3d/68bf18d50dc674b942daec86a9ba922d3113d8399b0e52b9897530442da2/yarl-1.22.0-cp312-cp312-win32.whl", hash = "sha256:70dfd4f241c04bd9239d53b17f11e6ab672b9f1420364af63e8531198e3f5fe8", size = 81589, upload-time = "2025-10-06T14:10:09.254Z" }, + { url = "https://files.pythonhosted.org/packages/c8/9a/6ad1a9b37c2f72874f93e691b2e7ecb6137fb2b899983125db4204e47575/yarl-1.22.0-cp312-cp312-win_amd64.whl", hash = "sha256:8884d8b332a5e9b88e23f60bb166890009429391864c685e17bd73a9eda9105c", size = 87213, upload-time = "2025-10-06T14:10:11.369Z" }, + { url = "https://files.pythonhosted.org/packages/44/c5/c21b562d1680a77634d748e30c653c3ca918beb35555cff24986fff54598/yarl-1.22.0-cp312-cp312-win_arm64.whl", hash = "sha256:ea70f61a47f3cc93bdf8b2f368ed359ef02a01ca6393916bc8ff877427181e74", size = 81330, upload-time = "2025-10-06T14:10:13.112Z" }, + { 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, upload-time = "2025-10-06T14:10:14.601Z" }, + { 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, upload-time = "2025-10-06T14:10:16.115Z" }, + { 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, upload-time = "2025-10-06T14:10:17.993Z" }, + { 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, upload-time = "2025-10-06T14:10:19.44Z" }, + { 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, upload-time = "2025-10-06T14:10:21.124Z" }, + { 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, upload-time = "2025-10-06T14:10:22.902Z" }, + { 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, upload-time = "2025-10-06T14:10:24.523Z" }, + { 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, upload-time = "2025-10-06T14:10:26.406Z" }, + { 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, upload-time = "2025-10-06T14:10:28.461Z" }, + { 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, upload-time = "2025-10-06T14:10:30.541Z" }, + { 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, upload-time = "2025-10-06T14:10:33.352Z" }, + { 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, upload-time = "2025-10-06T14:10:35.034Z" }, + { 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, upload-time = "2025-10-06T14:10:37.76Z" }, + { url = "https://files.pythonhosted.org/packages/bb/49/03da1580665baa8bef5e8ed34c6df2c2aca0a2f28bf397ed238cc1bbc6f2/yarl-1.22.0-cp313-cp313-win32.whl", hash = "sha256:d3e32536234a95f513bd374e93d717cf6b2231a791758de6c509e3653f234c95", size = 81555, upload-time = "2025-10-06T14:10:39.649Z" }, + { url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl", hash = "sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d", size = 86965, upload-time = "2025-10-06T14:10:41.313Z" }, + { url = "https://files.pythonhosted.org/packages/98/4d/264a01eae03b6cf629ad69bae94e3b0e5344741e929073678e84bf7a3e3b/yarl-1.22.0-cp313-cp313-win_arm64.whl", hash = "sha256:5d0fcda9608875f7d052eff120c7a5da474a6796fe4d83e152e0e4d42f6d1a9b", size = 81205, upload-time = "2025-10-06T14:10:43.167Z" }, + { 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, upload-time = "2025-10-06T14:10:44.643Z" }, + { 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, upload-time = "2025-10-06T14:10:46.554Z" }, + { 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, upload-time = "2025-10-06T14:10:48.007Z" }, + { 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, upload-time = "2025-10-06T14:10:49.997Z" }, + { 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, upload-time = "2025-10-06T14:10:52.004Z" }, + { 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, upload-time = "2025-10-06T14:10:54.078Z" }, + { 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, upload-time = "2025-10-06T14:10:55.767Z" }, + { 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, upload-time = "2025-10-06T14:10:57.985Z" }, + { 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, upload-time = "2025-10-06T14:10:59.633Z" }, + { 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, upload-time = "2025-10-06T14:11:01.454Z" }, + { 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, upload-time = "2025-10-06T14:11:03.452Z" }, + { 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, upload-time = "2025-10-06T14:11:05.115Z" }, + { 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, upload-time = "2025-10-06T14:11:08.137Z" }, + { url = "https://files.pythonhosted.org/packages/e0/e5/11f140a58bf4c6ad7aca69a892bff0ee638c31bea4206748fc0df4ebcb3a/yarl-1.22.0-cp313-cp313t-win32.whl", hash = "sha256:1834bb90991cc2999f10f97f5f01317f99b143284766d197e43cd5b45eb18d03", size = 86943, upload-time = "2025-10-06T14:11:10.284Z" }, + { url = "https://files.pythonhosted.org/packages/31/74/8b74bae38ed7fe6793d0c15a0c8207bbb819cf287788459e5ed230996cdd/yarl-1.22.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff86011bd159a9d2dfc89c34cfd8aff12875980e3bd6a39ff097887520e60249", size = 93715, upload-time = "2025-10-06T14:11:11.739Z" }, + { url = "https://files.pythonhosted.org/packages/69/66/991858aa4b5892d57aef7ee1ba6b4d01ec3b7eb3060795d34090a3ca3278/yarl-1.22.0-cp313-cp313t-win_arm64.whl", hash = "sha256:7861058d0582b847bc4e3a4a4c46828a410bca738673f35a29ba3ca5db0b473b", size = 83857, upload-time = "2025-10-06T14:11:13.586Z" }, + { 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, upload-time = "2025-10-06T14:11:15.465Z" }, + { 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, upload-time = "2025-10-06T14:11:17.106Z" }, + { 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, upload-time = "2025-10-06T14:11:19.064Z" }, + { 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, upload-time = "2025-10-06T14:11:20.996Z" }, + { 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, upload-time = "2025-10-06T14:11:22.847Z" }, + { 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, upload-time = "2025-10-06T14:11:24.889Z" }, + { 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, upload-time = "2025-10-06T14:11:27.307Z" }, + { 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, upload-time = "2025-10-06T14:11:29.387Z" }, + { 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, upload-time = "2025-10-06T14:11:31.423Z" }, + { 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, upload-time = "2025-10-06T14:11:33.055Z" }, + { 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, upload-time = "2025-10-06T14:11:35.136Z" }, + { 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, upload-time = "2025-10-06T14:11:37.094Z" }, + { 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, upload-time = "2025-10-06T14:11:38.83Z" }, + { url = "https://files.pythonhosted.org/packages/50/3c/af9dba3b8b5eeb302f36f16f92791f3ea62e3f47763406abf6d5a4a3333b/yarl-1.22.0-cp314-cp314-win32.whl", hash = "sha256:6a635ea45ba4ea8238463b4f7d0e721bad669f80878b7bfd1f89266e2ae63da2", size = 82990, upload-time = "2025-10-06T14:11:40.624Z" }, + { url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl", hash = "sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79", size = 88292, upload-time = "2025-10-06T14:11:42.578Z" }, + { url = "https://files.pythonhosted.org/packages/df/0a/227ab4ff5b998a1b7410abc7b46c9b7a26b0ca9e86c34ba4b8d8bc7c63d5/yarl-1.22.0-cp314-cp314-win_arm64.whl", hash = "sha256:8218f4e98d3c10d683584cb40f0424f4b9fd6e95610232dd75e13743b070ee33", size = 82888, upload-time = "2025-10-06T14:11:44.863Z" }, + { 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, upload-time = "2025-10-06T14:11:46.796Z" }, + { 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, upload-time = "2025-10-06T14:11:48.845Z" }, + { 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, upload-time = "2025-10-06T14:11:50.897Z" }, + { 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, upload-time = "2025-10-06T14:11:52.549Z" }, + { 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, upload-time = "2025-10-06T14:11:54.225Z" }, + { 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, upload-time = "2025-10-06T14:11:56.069Z" }, + { 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, upload-time = "2025-10-06T14:11:58.783Z" }, + { 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, upload-time = "2025-10-06T14:12:00.686Z" }, + { 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, upload-time = "2025-10-06T14:12:02.628Z" }, + { 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, upload-time = "2025-10-06T14:12:04.871Z" }, + { 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, upload-time = "2025-10-06T14:12:06.624Z" }, + { 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, upload-time = "2025-10-06T14:12:08.362Z" }, + { 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, upload-time = "2025-10-06T14:12:10.994Z" }, + { url = "https://files.pythonhosted.org/packages/35/18/55e6011f7c044dc80b98893060773cefcfdbf60dfefb8cb2f58b9bacbd83/yarl-1.22.0-cp314-cp314t-win32.whl", hash = "sha256:8009b3173bcd637be650922ac455946197d858b3630b6d8787aa9e5c4564533e", size = 89056, upload-time = "2025-10-06T14:12:13.317Z" }, + { url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl", hash = "sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27", size = 96292, upload-time = "2025-10-06T14:12:15.398Z" }, + { url = "https://files.pythonhosted.org/packages/48/b7/503c98092fb3b344a179579f55814b613c1fbb1c23b3ec14a7b008a66a6e/yarl-1.22.0-cp314-cp314t-win_arm64.whl", hash = "sha256:9f6d73c1436b934e3f01df1e1b21ff765cd1d28c77dfb9ace207f746d4610ee1", size = 85171, upload-time = "2025-10-06T14:12:16.935Z" }, + { url = "https://files.pythonhosted.org/packages/94/fd/6480106702a79bcceda5fd9c63cb19a04a6506bd5ce7fd8d9b63742f0021/yarl-1.22.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:3aa27acb6de7a23785d81557577491f6c38a5209a254d1191519d07d8fe51748", size = 141301, upload-time = "2025-10-06T14:12:19.01Z" }, + { url = "https://files.pythonhosted.org/packages/42/e1/6d95d21b17a93e793e4ec420a925fe1f6a9342338ca7a563ed21129c0990/yarl-1.22.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:af74f05666a5e531289cb1cc9c883d1de2088b8e5b4de48004e5ca8a830ac859", size = 93864, upload-time = "2025-10-06T14:12:21.05Z" }, + { url = "https://files.pythonhosted.org/packages/32/58/b8055273c203968e89808413ea4c984988b6649baabf10f4522e67c22d2f/yarl-1.22.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:62441e55958977b8167b2709c164c91a6363e25da322d87ae6dd9c6019ceecf9", size = 94706, upload-time = "2025-10-06T14:12:23.287Z" }, + { url = "https://files.pythonhosted.org/packages/18/91/d7bfbc28a88c2895ecd0da6a874def0c147de78afc52c773c28e1aa233a3/yarl-1.22.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b580e71cac3f8113d3135888770903eaf2f507e9421e5697d6ee6d8cd1c7f054", size = 347100, upload-time = "2025-10-06T14:12:28.527Z" }, + { url = "https://files.pythonhosted.org/packages/bd/e8/37a1e7b99721c0564b1fc7b0a4d1f595ef6fb8060d82ca61775b644185f7/yarl-1.22.0-cp39-cp39-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e81fda2fb4a07eda1a2252b216aa0df23ebcd4d584894e9612e80999a78fd95b", size = 318902, upload-time = "2025-10-06T14:12:30.528Z" }, + { url = "https://files.pythonhosted.org/packages/1c/ef/34724449d7ef2db4f22df644f2dac0b8a275d20f585e526937b3ae47b02d/yarl-1.22.0-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:99b6fc1d55782461b78221e95fc357b47ad98b041e8e20f47c1411d0aacddc60", size = 363302, upload-time = "2025-10-06T14:12:32.295Z" }, + { url = "https://files.pythonhosted.org/packages/8a/04/88a39a5dad39889f192cce8d66cc4c58dbeca983e83f9b6bf23822a7ed91/yarl-1.22.0-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:088e4e08f033db4be2ccd1f34cf29fe994772fb54cfe004bbf54db320af56890", size = 370816, upload-time = "2025-10-06T14:12:34.01Z" }, + { url = "https://files.pythonhosted.org/packages/6b/1f/5e895e547129413f56c76be2c3ce4b96c797d2d0ff3e16a817d9269b12e6/yarl-1.22.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2e4e1f6f0b4da23e61188676e3ed027ef0baa833a2e633c29ff8530800edccba", size = 346465, upload-time = "2025-10-06T14:12:35.977Z" }, + { url = "https://files.pythonhosted.org/packages/11/13/a750e9fd6f9cc9ed3a52a70fe58ffe505322f0efe0d48e1fd9ffe53281f5/yarl-1.22.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:84fc3ec96fce86ce5aa305eb4aa9358279d1aa644b71fab7b8ed33fe3ba1a7ca", size = 341506, upload-time = "2025-10-06T14:12:37.788Z" }, + { url = "https://files.pythonhosted.org/packages/3c/67/bb6024de76e7186611ebe626aec5b71a2d2ecf9453e795f2dbd80614784c/yarl-1.22.0-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:5dbeefd6ca588b33576a01b0ad58aa934bc1b41ef89dee505bf2932b22ddffba", size = 335030, upload-time = "2025-10-06T14:12:39.775Z" }, + { url = "https://files.pythonhosted.org/packages/a2/be/50b38447fd94a7992996a62b8b463d0579323fcfc08c61bdba949eef8a5d/yarl-1.22.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:14291620375b1060613f4aab9ebf21850058b6b1b438f386cc814813d901c60b", size = 358560, upload-time = "2025-10-06T14:12:41.547Z" }, + { url = "https://files.pythonhosted.org/packages/e2/89/c020b6f547578c4e3dbb6335bf918f26e2f34ad0d1e515d72fd33ac0c635/yarl-1.22.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:a4fcfc8eb2c34148c118dfa02e6427ca278bfd0f3df7c5f99e33d2c0e81eae3e", size = 357290, upload-time = "2025-10-06T14:12:43.861Z" }, + { url = "https://files.pythonhosted.org/packages/8c/52/c49a619ee35a402fa3a7019a4fa8d26878fec0d1243f6968bbf516789578/yarl-1.22.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:029866bde8d7b0878b9c160e72305bbf0a7342bcd20b9999381704ae03308dc8", size = 350700, upload-time = "2025-10-06T14:12:46.868Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c9/f5042d87777bf6968435f04a2bbb15466b2f142e6e47fa4f34d1a3f32f0c/yarl-1.22.0-cp39-cp39-win32.whl", hash = "sha256:4dcc74149ccc8bba31ce1944acee24813e93cfdee2acda3c172df844948ddf7b", size = 82323, upload-time = "2025-10-06T14:12:48.633Z" }, + { url = "https://files.pythonhosted.org/packages/fd/58/d00f7cad9eba20c4eefac2682f34661d1d1b3a942fc0092eb60e78cfb733/yarl-1.22.0-cp39-cp39-win_amd64.whl", hash = "sha256:10619d9fdee46d20edc49d3479e2f8269d0779f1b031e6f7c2aa1c76be04b7ed", size = 87145, upload-time = "2025-10-06T14:12:50.241Z" }, + { url = "https://files.pythonhosted.org/packages/c2/a3/70904f365080780d38b919edd42d224b8c4ce224a86950d2eaa2a24366ad/yarl-1.22.0-cp39-cp39-win_arm64.whl", hash = "sha256:dd7afd3f8b0bfb4e0d9fc3c31bfe8a4ec7debe124cfd90619305def3c8ca8cd2", size = 82173, upload-time = "2025-10-06T14:12:51.869Z" }, + { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814, upload-time = "2025-10-06T14:12:53.872Z" }, +] + [[package]] name = "zipp" version = "3.23.0" diff --git a/docs/agents/CHECKLIST.md b/docs/agents/CHECKLIST.md index 89653539..41cd7115 100644 --- a/docs/agents/CHECKLIST.md +++ b/docs/agents/CHECKLIST.md @@ -17,11 +17,11 @@ This checklist tracks the granular progress of `camply`. Agents **MUST** update ### 1.2 Provider Engine (`backend/packages/providers`) -- [ ] T1.2.1 Define the `BaseProvider` ABC with standardized `find_availabilities` and `sync_metadata`. -- [ ] T1.2.2 Implement `CampsiteDTO` (Pydantic v2) for unified data transfer. -- [ ] T1.2.3 Migrate `recreation_dot_gov` logic from legacy CLI to new structure. -- [ ] T1.2.4 Implement the first `sync_metadata` for `recreation_dot_gov` (Facilities/Rec Areas). -- [ ] T1.2.5 **Testing**: Write integration tests using `pytest-vcr` for `recreation_dot_gov`. +- [x] T1.2.1 Define the `BaseProvider` ABC with standardized `find_availabilities` and `sync_metadata`. +- [x] T1.2.2 Implement `CampsiteDTO` (Pydantic v2) for unified data transfer. +- [x] T1.2.3 Migrate `recreation_dot_gov` logic from legacy CLI to new structure. +- [x] T1.2.4 Implement the first `sync_metadata` for `recreation_dot_gov` (Facilities/Rec Areas). +- [x] T1.2.5 **Testing**: Write integration tests using `pytest-vcr` for `recreation_dot_gov`. ### 1.3 Celery Worker & Infrastructure