From 2b26ea22c4e632c7c966d54d366ca98ebb069579 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 3 Jul 2025 15:20:47 +0200 Subject: [PATCH 01/35] setting up the branch --- DEV_WORKFLOW_GUIDE.md | 253 ++++++++++++++++++ {docker => docker_fs}/.env.dev | 0 {docker => docker_fs}/.env.example | 0 {docker => docker_fs}/.env.test | 0 {docker => docker_fs}/docker-compose.dev.yml | 0 {docker => docker_fs}/docker-compose.prod.yml | 0 scripts/init-docker-dev.sh | 8 +- 7 files changed, 257 insertions(+), 4 deletions(-) create mode 100644 DEV_WORKFLOW_GUIDE.md rename {docker => docker_fs}/.env.dev (100%) rename {docker => docker_fs}/.env.example (100%) rename {docker => docker_fs}/.env.test (100%) rename {docker => docker_fs}/docker-compose.dev.yml (100%) rename {docker => docker_fs}/docker-compose.prod.yml (100%) diff --git a/DEV_WORKFLOW_GUIDE.md b/DEV_WORKFLOW_GUIDE.md new file mode 100644 index 0000000..3ae74de --- /dev/null +++ b/DEV_WORKFLOW_GUIDE.md @@ -0,0 +1,253 @@ +# **Development Workflow & Architecture Guide** + +This document outlines the standardized development workflow, repository architecture, and branching strategy for this project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. + +## 1. Technology Stack + +The project is built upon the following core technologies: + +- **Backend**: FastAPI +- **Backend Package Manager**: Poetry +- **Frontend**: React + JavaScript +- **Database**: PostgreSQL +- **Caching**: Redis +- **Containerization**: Docker + +## 2. Architectural Overview: A Multi-Repo Strategy + +To promote scalability, team autonomy, and clear separation of concerns, this project adopts a **multi-repo architecture**. Each core component of the system resides in its own dedicated repository. This approach allows for independent development cycles, testing, and deployment. + +Our architecture is composed of three main repositories: + +### 2.1. Backend Service (`project-backend`) + +This repository contains all code related to the FastAPI backend service. Its primary responsibility is to handle business logic, interact with the database, and expose a RESTful API. + +**Folder Structure:** +``` +project-backend/ +├── .github/ # CI workflows: tests, builds, and publishes the Docker image +│ └── workflows/ +│ └── main.yml +├── src/ +│ └── app/ # Main Python package +│ ├── api/ # API routers & endpoints +│ ├── db/ # Database session management & base models +│ ├── models/ # SQLAlchemy ORM models (database table definitions) +│ ├── schemas/ # Pydantic schemas for validation/serialization +│ ├── core/ # Business logic (services, utilities, etc.) +│ ├── config/ # settings.py & constants.py for configuration +│ └── main.py # FastAPI application entrypoint +├── Alembic/ # Database migrations managed with Alembic +│ ├── versions/ # Generated migration files +│ ├── env.py # Alembic environment setup +│ └── script.py.mako # Template for new migrations +├── tests/ # Unit and integration tests +├── alembic.ini # Alembic configuration file +├── py.ini # Python tool configurations (flake8, mypy, etc.) +├── .env.example # Template for environment variables +├── .gitignore # Files and paths ignored by Git +├── docker-compose.override.yml # Local overrides (e.g., hot-reload) +├── docker-compose.test.yml # Docker Compose setup for isolated testing +├── docker-compose.yml # Base Docker Compose configuration for development +├── Dockerfile # Instructions to build the production Docker image +├── poetry.lock # Locked dependency versions for Poetry +├── pyproject.toml # Poetry project configuration (including src layout) +└── README.md # Setup instructions and project overview + +``` + +**Key Responsibilities:** +* To be testable in isolation. +* To produce a versioned Docker image (`backend:`) as its main artifact. + +### 2.2. Frontend Service (`project-frontend`) + +This repository contains all code for the React web application. Its responsibility is to provide the user interface and interact with the backend via its API. + +**Folder Structure:** +``` +project-frontend/ +├── .github/ +│ └── workflows/ +│ └── main.yml # CI: Tests and publishes the frontend Docker image +├── public/ # Static assets (index.html, favicon, etc.) +├── src/ # Application source code +│ ├── api/ # Functions for backend API calls +│ ├── components/ # Reusable UI components +│ ├── hooks/ # Custom React hooks +│ ├── mocks/ # Service worker mocks for API (for isolated testing) +│ ├── pages/ # Page components +│ └── index.js # React application entrypoint +├── .env.example +├── .gitignore +├── docker-compose.yml # Base local development definition +├── Dockerfile # Multi-stage build for a lean production image +├── package.json +├── package-lock.json +└── README.md # Setup instructions for the frontend service +``` + +**Key Responsibilities:** +* To be testable in isolation (using a mocked API). +* To produce a versioned, production-ready Docker image (`frontend:`), typically served by Nginx. + +### 2.3. Infrastructure & E2E Tests (`project-master`) + +This repository is the "glue" that holds the system together. It does not contain application code but rather the configuration to orchestrate, test, and deploy the entire system. + +**Folder Structure:** +``` +project-master/ +├── .github/ +│ └── workflows/ +│ ├── e2e-tests.yml # CI: Runs End-to-End tests on a complete stack +│ └── deploy.yml # CD: Handles deployment to environments +├── e2e-tests/ # End-to-End test suite (e.g., Cypress, Playwright) +│ ├── cypress/ # Test code +│ └── cypress.config.js +├── environments/ # Environment-specific configurations +│ ├── staging/ +│ │ ├── docker-compose.yml # Docker Compose file for the Staging environment +│ │ └── .env.example +│ └── production/ +│ ├── docker-compose.yml # Docker Compose file for the Production environment +│ └── .env.example +├── scripts/ # Deployment and utility scripts +│ ├── deploy-staging.sh +│ └── deploy-prod.sh +└── README.md # Main project README: explains the overall architecture +``` + +**Key Responsibilities:** +* To define the composition of services for each environment (Staging, Production). +* To run End-to-End tests that validate the integration between services. +* To manage the Continuous Deployment (CD) process. + +## 3. Branching Strategy: Git Flow + +To manage code development and releases in a structured manner, we use the **Git Flow** branching model. + +### Git Flow Workflow Diagram + +```mermaid +--- +title: Git Flow +--- + +gitGraph + commit id: "Initial commit" + branch develop + checkout develop + commit id: "Setup Project" + + branch feature/user-authentication + checkout feature/user-authentication + commit id: "feat: Add login form" + commit id: "feat: Add form validation" + checkout develop + merge feature/user-authentication + + branch release/v1.0.0 + checkout release/v1.0.0 + commit id: "fix: Pre-release bug fixes" tag: "v1.0.0" + checkout main + merge release/v1.0.0 + checkout develop + merge release/v1.0.0 + + checkout main + branch hotfix/critical-login-bug + checkout hotfix/critical-login-bug + commit id: "fix: Critical production bug" tag: "v1.0.1" + checkout main + merge hotfix/critical-login-bug + checkout develop + merge hotfix/critical-login-bug +``` + +--- + +### Git Flow Explained + +This workflow is built upon two long-lived branches and several temporary, supporting branches. + +#### Main Branches + +1. **`main`** + * **Purpose**: This branch contains **production-ready, stable code**. Every commit on `main` represents a new, official release. + * **Rules**: You should **never** commit directly to `main`. It only receives merges from `release/*` and `hotfix/*` branches. Each merge should be tagged with a version number (e.g., `v1.0.0`). + +2. **`develop`** + * **Purpose**: This is the main **integration branch** for ongoing development. It contains all completed and tested features that are planned for the next release. + * **Rules**: It's the base for creating new `feature/*` branches. It reflects the most up-to-date state of development. + +#### Supporting Branches + +3. **`feature/*`** (e.g., `feature/user-authentication`) + * **Purpose**: To develop a new, specific feature in isolation. + * **Lifecycle**: + 1. Branched off of **`develop`**. + 2. Once development is complete, a **Pull Request (PR)** is opened to merge the changes back into **`develop`**. + 3. After the merge, the `feature/*` branch can be deleted. + +4. **`release/*`** (e.g., `release/v1.2.0`) + * **Purpose**: To prepare for a new production release. This branch is used for final bug fixes, documentation updates, and last-minute testing. It freezes the feature set for the release. + * **Lifecycle**: + 1. Branched off of **`develop`** when it's decided that the next version is feature-complete. + 2. When ready, it is merged into **`main`** (and tagged) and also back into **`develop`** to ensure any fixes made during the release phase are not lost. + 3. After merging, the `release/*` branch can be deleted. + +5. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) + * **Purpose**: To quickly patch a critical bug discovered in the production version (`main`). + * **Lifecycle**: + 1. Branched off of **`main`** (from the specific version tag). + 2. Once the fix is ready, it is merged into **`main`** (and a new patch version tag is created, e.g., `v1.0.1`). + 3. It is also merged into **`develop`** to ensure the fix is included in future releases. + 4. After merging, the `hotfix/*` branch can be deleted. + +## 4. Continuous Integration / Continuous Delivery (CI/CD) Pipeline + +A robust CI/CD pipeline guarantees that every change pushed to the repository is automatically validated, packaged, and—when appropriate—promoted to the next environment. +Our pipeline is built with **GitHub Actions** and follows a layered approach that mirrors the Git Flow branching model. + +We will start to describe the CI part related to push and PR in the develop branch of the backend service. + +### 4.1 CI for project-backend on `develop` + +#### 4.1.1 Goals + +* **Fast feedback** – linting, type-checking, and unit tests finish in under a minute for every Pull Request. +* **Confidence in integration** – migrations, integration tests, and Docker smoke-tests run on every push to `develop`. +* **Deployment safety** – only artifacts produced from a green pipeline can be released or deployed. +* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI, preventing “works-on-my-machine” surprises. + +### 4.1.2 Pipeline Layers + +* **Quick Suite (PR to `develop`)** + *Runs in seconds; no external services or containers.* + + * Black, isort, Flake8 + * mypy static type-checking + * Unit tests only (`pytest -m "not integration"`) + +* **Full Suite (push to `develop`)** + *Runs in a few minutes; includes real services and Docker.* + + * All steps from the Quick Suite + * PostgreSQL service container started via `services:` + * Alembic migrations applied to the test database + * Full test suite, including `@pytest.mark.integration` tests + * Multi-stage Docker build of the backend image + * Smoke test: container started with Uvicorn → `curl /health` + + +### 4.1.3 Key Implementation Details + +* **Service containers** – PostgreSQL 17 is spun up in CI with a health-check to ensure migrations run against a live instance. +* **Test markers** – integration tests are isolated with `@pytest.mark.integration`, enabling selective execution. +* **Caching** – Poetry’s download cache is restored to cut installation time; Docker layer cache is reused between builds. +* **Smoke test logic** – after the image is built, CI launches it in detached mode, polls the `/health` endpoint, prints logs, and stops the container. The job fails if the endpoint is unreachable. +* **Secrets management** – database credentials and registry tokens are stored in GitHub Secrets and injected as environment variables only at runtime. + + diff --git a/docker/.env.dev b/docker_fs/.env.dev similarity index 100% rename from docker/.env.dev rename to docker_fs/.env.dev diff --git a/docker/.env.example b/docker_fs/.env.example similarity index 100% rename from docker/.env.example rename to docker_fs/.env.example diff --git a/docker/.env.test b/docker_fs/.env.test similarity index 100% rename from docker/.env.test rename to docker_fs/.env.test diff --git a/docker/docker-compose.dev.yml b/docker_fs/docker-compose.dev.yml similarity index 100% rename from docker/docker-compose.dev.yml rename to docker_fs/docker-compose.dev.yml diff --git a/docker/docker-compose.prod.yml b/docker_fs/docker-compose.prod.yml similarity index 100% rename from docker/docker-compose.prod.yml rename to docker_fs/docker-compose.prod.yml diff --git a/scripts/init-docker-dev.sh b/scripts/init-docker-dev.sh index 6e1e270..80f06d8 100644 --- a/scripts/init-docker-dev.sh +++ b/scripts/init-docker-dev.sh @@ -11,9 +11,9 @@ set -euo pipefail SCRIPT_PATH="$(realpath "${BASH_SOURCE[0]}")" SCRIPT_DIR="$(cd "$(dirname "$SCRIPT_PATH")" && pwd)" PROJECT_ROOT="$(dirname "$SCRIPT_DIR")" -COMPOSE_FILE="$PROJECT_ROOT/docker/docker-compose.dev.yml" -ENV_DEV="$PROJECT_ROOT/docker/.env.dev" -ENV_DOT="$PROJECT_ROOT/docker/.env" +COMPOSE_FILE="$PROJECT_ROOT/docker_fs/docker-compose.dev.yml" +ENV_DEV="$PROJECT_ROOT/docker_fs/.env.dev" +ENV_DOT="$PROJECT_ROOT/docker_fs/.env" # ────────────────────────────────────────────────────────────────────────────── # 0.1 Make script executable @@ -23,7 +23,7 @@ if [[ ! -x "$SCRIPT_PATH" ]]; then fi # ────────────────────────────────────────────────────────────────────────────── -# 0.2 Ensure docker/.env exists for Compose interpolation +# 0.2 Ensure docker_fs/.env exists for Compose interpolation # ────────────────────────────────────────────────────────────────────────────── if [[ -f "$ENV_DEV" && ! -f "$ENV_DOT" ]]; then echo ">>> Copying .env.dev → .env for Compose interpolation" From 9e48446d9bc693e55c743e062027d507f34eb3e2 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 3 Jul 2025 15:23:05 +0200 Subject: [PATCH 02/35] minor correction --- alembic/env.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alembic/env.py b/alembic/env.py index 9f0ce10..2e671fd 100644 --- a/alembic/env.py +++ b/alembic/env.py @@ -5,7 +5,7 @@ from app.config.settings import settings from app.db.base import Base -import app.models.table_users + # this is the Alembic Config object, which provides # access to the values within the .ini file in use. From 7a0f86079ff3a3df36cdcf825184ba32f07e9639 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 3 Jul 2025 15:26:04 +0200 Subject: [PATCH 03/35] minor changes --- pyproject.toml | 2 -- src/app/main.py | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 0fb29d2..2d76c41 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -19,8 +19,6 @@ gunicorn = "^23.0.0" pydantic-settings = "^2.10.1" pydantic = {extras = ["email"], version = "^2.11.7"} asyncpg = "^0.30.0" -passlib = {extras = ["argon2"], version = "^1.7.4"} -argon2-cffi = "^25.1.0" sqlalchemy-utils = "^0.41.2" [tool.poetry.group.dev.dependencies] diff --git a/src/app/main.py b/src/app/main.py index 4e85b19..4a78144 100644 --- a/src/app/main.py +++ b/src/app/main.py @@ -5,7 +5,7 @@ from fastapi import FastAPI -from app.api.auth import router as auth_router + from app.api.health_check import router as health_router from app.config.settings import settings from app.db.init_db import close_engine, init_models @@ -31,4 +31,4 @@ async def lifespan(_app: FastAPI) -> AsyncGenerator[None, None]: ) app.include_router(health_router) -app.include_router(auth_router) + From 1ab21d52f236508b4016a809f64e7f76692fb642 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 3 Jul 2025 15:55:40 +0200 Subject: [PATCH 04/35] improved script for linux --- poetry.lock | 1592 +++++++++++++++++ scripts/init-docker-dev.sh | 17 +- src/app/config/constants.py | 19 - src/app/config/settings.py | 4 +- .../db_initialization/test_init_models.py | 17 +- 5 files changed, 1617 insertions(+), 32 deletions(-) create mode 100644 poetry.lock diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..de1465a --- /dev/null +++ b/poetry.lock @@ -0,0 +1,1592 @@ +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. + +[[package]] +name = "alembic" +version = "1.16.2" +description = "A database migration tool for SQLAlchemy." +optional = false +python-versions = ">=3.9" +files = [ + {file = "alembic-1.16.2-py3-none-any.whl", hash = "sha256:5f42e9bd0afdbd1d5e3ad856c01754530367debdebf21ed6894e34af52b3bb03"}, + {file = "alembic-1.16.2.tar.gz", hash = "sha256:e53c38ff88dadb92eb22f8b150708367db731d58ad7e9d417c9168ab516cbed8"}, +] + +[package.dependencies] +Mako = "*" +SQLAlchemy = ">=1.4.0" +typing-extensions = ">=4.12" + +[package.extras] +tz = ["tzdata"] + +[[package]] +name = "annotated-types" +version = "0.7.0" +description = "Reusable constraint types to use with typing.Annotated" +optional = false +python-versions = ">=3.8" +files = [ + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, +] + +[[package]] +name = "anyio" +version = "4.9.0" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.9" +files = [ + {file = "anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c"}, + {file = "anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028"}, +] + +[package.dependencies] +idna = ">=2.8" +sniffio = ">=1.1" +typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""} + +[package.extras] +doc = ["Sphinx (>=8.2,<9.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"] +test = ["anyio[trio]", "blockbuster (>=1.5.23)", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21)"] +trio = ["trio (>=0.26.1)"] + +[[package]] +name = "asyncpg" +version = "0.30.0" +description = "An asyncio PostgreSQL driver" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "asyncpg-0.30.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bfb4dd5ae0699bad2b233672c8fc5ccbd9ad24b89afded02341786887e37927e"}, + {file = "asyncpg-0.30.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dc1f62c792752a49f88b7e6f774c26077091b44caceb1983509edc18a2222ec0"}, + {file = "asyncpg-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3152fef2e265c9c24eec4ee3d22b4f4d2703d30614b0b6753e9ed4115c8a146f"}, + {file = "asyncpg-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7255812ac85099a0e1ffb81b10dc477b9973345793776b128a23e60148dd1af"}, + {file = "asyncpg-0.30.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:578445f09f45d1ad7abddbff2a3c7f7c291738fdae0abffbeb737d3fc3ab8b75"}, + {file = "asyncpg-0.30.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c42f6bb65a277ce4d93f3fba46b91a265631c8df7250592dd4f11f8b0152150f"}, + {file = "asyncpg-0.30.0-cp310-cp310-win32.whl", hash = "sha256:aa403147d3e07a267ada2ae34dfc9324e67ccc4cdca35261c8c22792ba2b10cf"}, + {file = "asyncpg-0.30.0-cp310-cp310-win_amd64.whl", hash = "sha256:fb622c94db4e13137c4c7f98834185049cc50ee01d8f657ef898b6407c7b9c50"}, + {file = "asyncpg-0.30.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5e0511ad3dec5f6b4f7a9e063591d407eee66b88c14e2ea636f187da1dcfff6a"}, + {file = "asyncpg-0.30.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:915aeb9f79316b43c3207363af12d0e6fd10776641a7de8a01212afd95bdf0ed"}, + {file = "asyncpg-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c198a00cce9506fcd0bf219a799f38ac7a237745e1d27f0e1f66d3707c84a5a"}, + {file = "asyncpg-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3326e6d7381799e9735ca2ec9fd7be4d5fef5dcbc3cb555d8a463d8460607956"}, + {file = "asyncpg-0.30.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:51da377487e249e35bd0859661f6ee2b81db11ad1f4fc036194bc9cb2ead5056"}, + {file = "asyncpg-0.30.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bc6d84136f9c4d24d358f3b02be4b6ba358abd09f80737d1ac7c444f36108454"}, + {file = "asyncpg-0.30.0-cp311-cp311-win32.whl", hash = "sha256:574156480df14f64c2d76450a3f3aaaf26105869cad3865041156b38459e935d"}, + {file = "asyncpg-0.30.0-cp311-cp311-win_amd64.whl", hash = "sha256:3356637f0bd830407b5597317b3cb3571387ae52ddc3bca6233682be88bbbc1f"}, + {file = "asyncpg-0.30.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c902a60b52e506d38d7e80e0dd5399f657220f24635fee368117b8b5fce1142e"}, + {file = "asyncpg-0.30.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:aca1548e43bbb9f0f627a04666fedaca23db0a31a84136ad1f868cb15deb6e3a"}, + {file = "asyncpg-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c2a2ef565400234a633da0eafdce27e843836256d40705d83ab7ec42074efb3"}, + {file = "asyncpg-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1292b84ee06ac8a2ad8e51c7475aa309245874b61333d97411aab835c4a2f737"}, + {file = "asyncpg-0.30.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0f5712350388d0cd0615caec629ad53c81e506b1abaaf8d14c93f54b35e3595a"}, + {file = "asyncpg-0.30.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:db9891e2d76e6f425746c5d2da01921e9a16b5a71a1c905b13f30e12a257c4af"}, + {file = "asyncpg-0.30.0-cp312-cp312-win32.whl", hash = "sha256:68d71a1be3d83d0570049cd1654a9bdfe506e794ecc98ad0873304a9f35e411e"}, + {file = "asyncpg-0.30.0-cp312-cp312-win_amd64.whl", hash = "sha256:9a0292c6af5c500523949155ec17b7fe01a00ace33b68a476d6b5059f9630305"}, + {file = "asyncpg-0.30.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:05b185ebb8083c8568ea8a40e896d5f7af4b8554b64d7719c0eaa1eb5a5c3a70"}, + {file = "asyncpg-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:c47806b1a8cbb0a0db896f4cd34d89942effe353a5035c62734ab13b9f938da3"}, + {file = "asyncpg-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b6fde867a74e8c76c71e2f64f80c64c0f3163e687f1763cfaf21633ec24ec33"}, + {file = "asyncpg-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46973045b567972128a27d40001124fbc821c87a6cade040cfcd4fa8a30bcdc4"}, + {file = "asyncpg-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9110df111cabc2ed81aad2f35394a00cadf4f2e0635603db6ebbd0fc896f46a4"}, + {file = "asyncpg-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:04ff0785ae7eed6cc138e73fc67b8e51d54ee7a3ce9b63666ce55a0bf095f7ba"}, + {file = "asyncpg-0.30.0-cp313-cp313-win32.whl", hash = "sha256:ae374585f51c2b444510cdf3595b97ece4f233fde739aa14b50e0d64e8a7a590"}, + {file = "asyncpg-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:f59b430b8e27557c3fb9869222559f7417ced18688375825f8f12302c34e915e"}, + {file = "asyncpg-0.30.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:29ff1fc8b5bf724273782ff8b4f57b0f8220a1b2324184846b39d1ab4122031d"}, + {file = "asyncpg-0.30.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:64e899bce0600871b55368b8483e5e3e7f1860c9482e7f12e0a771e747988168"}, + {file = "asyncpg-0.30.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b290f4726a887f75dcd1b3006f484252db37602313f806e9ffc4e5996cfe5cb"}, + {file = "asyncpg-0.30.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f86b0e2cd3f1249d6fe6fd6cfe0cd4538ba994e2d8249c0491925629b9104d0f"}, + {file = "asyncpg-0.30.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:393af4e3214c8fa4c7b86da6364384c0d1b3298d45803375572f415b6f673f38"}, + {file = "asyncpg-0.30.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:fd4406d09208d5b4a14db9a9dbb311b6d7aeeab57bded7ed2f8ea41aeef39b34"}, + {file = "asyncpg-0.30.0-cp38-cp38-win32.whl", hash = "sha256:0b448f0150e1c3b96cb0438a0d0aa4871f1472e58de14a3ec320dbb2798fb0d4"}, + {file = "asyncpg-0.30.0-cp38-cp38-win_amd64.whl", hash = "sha256:f23b836dd90bea21104f69547923a02b167d999ce053f3d502081acea2fba15b"}, + {file = "asyncpg-0.30.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6f4e83f067b35ab5e6371f8a4c93296e0439857b4569850b178a01385e82e9ad"}, + {file = "asyncpg-0.30.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5df69d55add4efcd25ea2a3b02025b669a285b767bfbf06e356d68dbce4234ff"}, + {file = "asyncpg-0.30.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3479a0d9a852c7c84e822c073622baca862d1217b10a02dd57ee4a7a081f708"}, + {file = "asyncpg-0.30.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26683d3b9a62836fad771a18ecf4659a30f348a561279d6227dab96182f46144"}, + {file = "asyncpg-0.30.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1b982daf2441a0ed314bd10817f1606f1c28b1136abd9e4f11335358c2c631cb"}, + {file = "asyncpg-0.30.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1c06a3a50d014b303e5f6fc1e5f95eb28d2cee89cf58384b700da621e5d5e547"}, + {file = "asyncpg-0.30.0-cp39-cp39-win32.whl", hash = "sha256:1b11a555a198b08f5c4baa8f8231c74a366d190755aa4f99aacec5970afe929a"}, + {file = "asyncpg-0.30.0-cp39-cp39-win_amd64.whl", hash = "sha256:8b684a3c858a83cd876f05958823b68e8d14ec01bb0c0d14a6704c5bf9711773"}, + {file = "asyncpg-0.30.0.tar.gz", hash = "sha256:c551e9928ab6707602f44811817f82ba3c446e018bfe1d3abecc8ba5f3eac851"}, +] + +[package.extras] +docs = ["Sphinx (>=8.1.3,<8.2.0)", "sphinx-rtd-theme (>=1.2.2)"] +gssauth = ["gssapi", "sspilib"] +test = ["distro (>=1.9.0,<1.10.0)", "flake8 (>=6.1,<7.0)", "flake8-pyi (>=24.1.0,<24.2.0)", "gssapi", "k5test", "mypy (>=1.8.0,<1.9.0)", "sspilib", "uvloop (>=0.15.3)"] + +[[package]] +name = "certifi" +version = "2025.6.15" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.7" +files = [ + {file = "certifi-2025.6.15-py3-none-any.whl", hash = "sha256:2e0c7ce7cb5d8f8634ca55d2ba7e6ec2689a2fd6537d8dec1296a477a4910057"}, + {file = "certifi-2025.6.15.tar.gz", hash = "sha256:d747aa5a8b9bbbb1bb8c22bb13e22bd1f18e9796defa16bab421f7f7a317323b"}, +] + +[[package]] +name = "click" +version = "8.2.1" +description = "Composable command line interface toolkit" +optional = false +python-versions = ">=3.10" +files = [ + {file = "click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b"}, + {file = "click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "coverage" +version = "7.9.2" +description = "Code coverage measurement for Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "coverage-7.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:66283a192a14a3854b2e7f3418d7db05cdf411012ab7ff5db98ff3b181e1f912"}, + {file = "coverage-7.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4e01d138540ef34fcf35c1aa24d06c3de2a4cffa349e29a10056544f35cca15f"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f22627c1fe2745ee98d3ab87679ca73a97e75ca75eb5faee48660d060875465f"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b1c2d8363247b46bd51f393f86c94096e64a1cf6906803fa8d5a9d03784bdbf"}, + {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c10c882b114faf82dbd33e876d0cbd5e1d1ebc0d2a74ceef642c6152f3f4d547"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:de3c0378bdf7066c3988d66cd5232d161e933b87103b014ab1b0b4676098fa45"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:1e2f097eae0e5991e7623958a24ced3282676c93c013dde41399ff63e230fcf2"}, + {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:28dc1f67e83a14e7079b6cea4d314bc8b24d1aed42d3582ff89c0295f09b181e"}, + {file = "coverage-7.9.2-cp310-cp310-win32.whl", hash = "sha256:bf7d773da6af9e10dbddacbf4e5cab13d06d0ed93561d44dae0188a42c65be7e"}, + {file = "coverage-7.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:0c0378ba787681ab1897f7c89b415bd56b0b2d9a47e5a3d8dc0ea55aac118d6c"}, + {file = "coverage-7.9.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a7a56a2964a9687b6aba5b5ced6971af308ef6f79a91043c05dd4ee3ebc3e9ba"}, + {file = "coverage-7.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:123d589f32c11d9be7fe2e66d823a236fe759b0096f5db3fb1b75b2fa414a4fa"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:333b2e0ca576a7dbd66e85ab402e35c03b0b22f525eed82681c4b866e2e2653a"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:326802760da234baf9f2f85a39e4a4b5861b94f6c8d95251f699e4f73b1835dc"}, + {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19e7be4cfec248df38ce40968c95d3952fbffd57b400d4b9bb580f28179556d2"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0b4a4cb73b9f2b891c1788711408ef9707666501ba23684387277ededab1097c"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:2c8937fa16c8c9fbbd9f118588756e7bcdc7e16a470766a9aef912dd3f117dbd"}, + {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:42da2280c4d30c57a9b578bafd1d4494fa6c056d4c419d9689e66d775539be74"}, + {file = "coverage-7.9.2-cp311-cp311-win32.whl", hash = "sha256:14fa8d3da147f5fdf9d298cacc18791818f3f1a9f542c8958b80c228320e90c6"}, + {file = "coverage-7.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:549cab4892fc82004f9739963163fd3aac7a7b0df430669b75b86d293d2df2a7"}, + {file = "coverage-7.9.2-cp311-cp311-win_arm64.whl", hash = "sha256:c2667a2b913e307f06aa4e5677f01a9746cd08e4b35e14ebcde6420a9ebb4c62"}, + {file = "coverage-7.9.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:ae9eb07f1cfacd9cfe8eaee6f4ff4b8a289a668c39c165cd0c8548484920ffc0"}, + {file = "coverage-7.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9ce85551f9a1119f02adc46d3014b5ee3f765deac166acf20dbb851ceb79b6f3"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8f6389ac977c5fb322e0e38885fbbf901743f79d47f50db706e7644dcdcb6e1"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff0d9eae8cdfcd58fe7893b88993723583a6ce4dfbfd9f29e001922544f95615"}, + {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fae939811e14e53ed8a9818dad51d434a41ee09df9305663735f2e2d2d7d959b"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:31991156251ec202c798501e0a42bbdf2169dcb0f137b1f5c0f4267f3fc68ef9"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:d0d67963f9cbfc7c7f96d4ac74ed60ecbebd2ea6eeb51887af0f8dce205e545f"}, + {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:49b752a2858b10580969ec6af6f090a9a440a64a301ac1528d7ca5f7ed497f4d"}, + {file = "coverage-7.9.2-cp312-cp312-win32.whl", hash = "sha256:88d7598b8ee130f32f8a43198ee02edd16d7f77692fa056cb779616bbea1b355"}, + {file = "coverage-7.9.2-cp312-cp312-win_amd64.whl", hash = "sha256:9dfb070f830739ee49d7c83e4941cc767e503e4394fdecb3b54bfdac1d7662c0"}, + {file = "coverage-7.9.2-cp312-cp312-win_arm64.whl", hash = "sha256:4e2c058aef613e79df00e86b6d42a641c877211384ce5bd07585ed7ba71ab31b"}, + {file = "coverage-7.9.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:985abe7f242e0d7bba228ab01070fde1d6c8fa12f142e43debe9ed1dde686038"}, + {file = "coverage-7.9.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82c3939264a76d44fde7f213924021ed31f55ef28111a19649fec90c0f109e6d"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae5d563e970dbe04382f736ec214ef48103d1b875967c89d83c6e3f21706d5b3"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdd612e59baed2a93c8843c9a7cb902260f181370f1d772f4842987535071d14"}, + {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:256ea87cb2a1ed992bcdfc349d8042dcea1b80436f4ddf6e246d6bee4b5d73b6"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f44ae036b63c8ea432f610534a2668b0c3aee810e7037ab9d8ff6883de480f5b"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:82d76ad87c932935417a19b10cfe7abb15fd3f923cfe47dbdaa74ef4e503752d"}, + {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:619317bb86de4193debc712b9e59d5cffd91dc1d178627ab2a77b9870deb2868"}, + {file = "coverage-7.9.2-cp313-cp313-win32.whl", hash = "sha256:0a07757de9feb1dfafd16ab651e0f628fd7ce551604d1bf23e47e1ddca93f08a"}, + {file = "coverage-7.9.2-cp313-cp313-win_amd64.whl", hash = "sha256:115db3d1f4d3f35f5bb021e270edd85011934ff97c8797216b62f461dd69374b"}, + {file = "coverage-7.9.2-cp313-cp313-win_arm64.whl", hash = "sha256:48f82f889c80af8b2a7bb6e158d95a3fbec6a3453a1004d04e4f3b5945a02694"}, + {file = "coverage-7.9.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:55a28954545f9d2f96870b40f6c3386a59ba8ed50caf2d949676dac3ecab99f5"}, + {file = "coverage-7.9.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cdef6504637731a63c133bb2e6f0f0214e2748495ec15fe42d1e219d1b133f0b"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bcd5ebe66c7a97273d5d2ddd4ad0ed2e706b39630ed4b53e713d360626c3dbb3"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9303aed20872d7a3c9cb39c5d2b9bdbe44e3a9a1aecb52920f7e7495410dfab8"}, + {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc18ea9e417a04d1920a9a76fe9ebd2f43ca505b81994598482f938d5c315f46"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6406cff19880aaaadc932152242523e892faff224da29e241ce2fca329866584"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2d0d4f6ecdf37fcc19c88fec3e2277d5dee740fb51ffdd69b9579b8c31e4232e"}, + {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c33624f50cf8de418ab2b4d6ca9eda96dc45b2c4231336bac91454520e8d1fac"}, + {file = "coverage-7.9.2-cp313-cp313t-win32.whl", hash = "sha256:1df6b76e737c6a92210eebcb2390af59a141f9e9430210595251fbaf02d46926"}, + {file = "coverage-7.9.2-cp313-cp313t-win_amd64.whl", hash = "sha256:f5fd54310b92741ebe00d9c0d1d7b2b27463952c022da6d47c175d246a98d1bd"}, + {file = "coverage-7.9.2-cp313-cp313t-win_arm64.whl", hash = "sha256:c48c2375287108c887ee87d13b4070a381c6537d30e8487b24ec721bf2a781cb"}, + {file = "coverage-7.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ddc39510ac922a5c4c27849b739f875d3e1d9e590d1e7b64c98dadf037a16cce"}, + {file = "coverage-7.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a535c0c7364acd55229749c2b3e5eebf141865de3a8f697076a3291985f02d30"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df0f9ef28e0f20c767ccdccfc5ae5f83a6f4a2fbdfbcbcc8487a8a78771168c8"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f3da12e0ccbcb348969221d29441ac714bbddc4d74e13923d3d5a7a0bebef7a"}, + {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a17eaf46f56ae0f870f14a3cbc2e4632fe3771eab7f687eda1ee59b73d09fe4"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:669135a9d25df55d1ed56a11bf555f37c922cf08d80799d4f65d77d7d6123fcf"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:9d3a700304d01a627df9db4322dc082a0ce1e8fc74ac238e2af39ced4c083193"}, + {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:71ae8b53855644a0b1579d4041304ddc9995c7b21c8a1f16753c4d8903b4dfed"}, + {file = "coverage-7.9.2-cp39-cp39-win32.whl", hash = "sha256:dd7a57b33b5cf27acb491e890720af45db05589a80c1ffc798462a765be6d4d7"}, + {file = "coverage-7.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:f65bb452e579d5540c8b37ec105dd54d8b9307b07bcaa186818c104ffda22441"}, + {file = "coverage-7.9.2-pp39.pp310.pp311-none-any.whl", hash = "sha256:8a1166db2fb62473285bcb092f586e081e92656c7dfa8e9f62b4d39d7e6b5050"}, + {file = "coverage-7.9.2-py3-none-any.whl", hash = "sha256:e425cd5b00f6fc0ed7cdbd766c70be8baab4b7839e4d4fe5fac48581dd968ea4"}, + {file = "coverage-7.9.2.tar.gz", hash = "sha256:997024fa51e3290264ffd7492ec97d0690293ccd2b45a6cd7d82d945a4a80c8b"}, +] + +[package.extras] +toml = ["tomli"] + +[[package]] +name = "dnspython" +version = "2.7.0" +description = "DNS toolkit" +optional = false +python-versions = ">=3.9" +files = [ + {file = "dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86"}, + {file = "dnspython-2.7.0.tar.gz", hash = "sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1"}, +] + +[package.extras] +dev = ["black (>=23.1.0)", "coverage (>=7.0)", "flake8 (>=7)", "hypercorn (>=0.16.0)", "mypy (>=1.8)", "pylint (>=3)", "pytest (>=7.4)", "pytest-cov (>=4.1.0)", "quart-trio (>=0.11.0)", "sphinx (>=7.2.0)", "sphinx-rtd-theme (>=2.0.0)", "twine (>=4.0.0)", "wheel (>=0.42.0)"] +dnssec = ["cryptography (>=43)"] +doh = ["h2 (>=4.1.0)", "httpcore (>=1.0.0)", "httpx (>=0.26.0)"] +doq = ["aioquic (>=1.0.0)"] +idna = ["idna (>=3.7)"] +trio = ["trio (>=0.23)"] +wmi = ["wmi (>=1.5.1)"] + +[[package]] +name = "email-validator" +version = "2.2.0" +description = "A robust email address syntax and deliverability validation library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631"}, + {file = "email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7"}, +] + +[package.dependencies] +dnspython = ">=2.0.0" +idna = ">=2.0.0" + +[[package]] +name = "fastapi" +version = "0.115.14" +description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fastapi-0.115.14-py3-none-any.whl", hash = "sha256:6c0c8bf9420bd58f565e585036d971872472b4f7d3f6c73b698e10cffdefb3ca"}, + {file = "fastapi-0.115.14.tar.gz", hash = "sha256:b1de15cdc1c499a4da47914db35d0e4ef8f1ce62b624e94e0e5824421df99739"}, +] + +[package.dependencies] +pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" +starlette = ">=0.40.0,<0.47.0" +typing-extensions = ">=4.8.0" + +[package.extras] +all = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=3.1.5)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.18)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +standard = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "jinja2 (>=3.1.5)", "python-multipart (>=0.0.18)", "uvicorn[standard] (>=0.12.0)"] + +[[package]] +name = "greenlet" +version = "3.2.3" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=3.9" +files = [ + {file = "greenlet-3.2.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:1afd685acd5597349ee6d7a88a8bec83ce13c106ac78c196ee9dde7c04fe87be"}, + {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:761917cac215c61e9dc7324b2606107b3b292a8349bdebb31503ab4de3f559ac"}, + {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:a433dbc54e4a37e4fff90ef34f25a8c00aed99b06856f0119dcf09fbafa16392"}, + {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:72e77ed69312bab0434d7292316d5afd6896192ac4327d44f3d613ecb85b037c"}, + {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:68671180e3849b963649254a882cd544a3c75bfcd2c527346ad8bb53494444db"}, + {file = "greenlet-3.2.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:49c8cfb18fb419b3d08e011228ef8a25882397f3a859b9fe1436946140b6756b"}, + {file = "greenlet-3.2.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:efc6dc8a792243c31f2f5674b670b3a95d46fa1c6a912b8e310d6f542e7b0712"}, + {file = "greenlet-3.2.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:731e154aba8e757aedd0781d4b240f1225b075b4409f1bb83b05ff410582cf00"}, + {file = "greenlet-3.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:96c20252c2f792defe9a115d3287e14811036d51e78b3aaddbee23b69b216302"}, + {file = "greenlet-3.2.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:784ae58bba89fa1fa5733d170d42486580cab9decda3484779f4759345b29822"}, + {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0921ac4ea42a5315d3446120ad48f90c3a6b9bb93dd9b3cf4e4d84a66e42de83"}, + {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:d2971d93bb99e05f8c2c0c2f4aa9484a18d98c4c3bd3c62b65b7e6ae33dfcfaf"}, + {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:c667c0bf9d406b77a15c924ef3285e1e05250948001220368e039b6aa5b5034b"}, + {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:592c12fb1165be74592f5de0d70f82bc5ba552ac44800d632214b76089945147"}, + {file = "greenlet-3.2.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:29e184536ba333003540790ba29829ac14bb645514fbd7e32af331e8202a62a5"}, + {file = "greenlet-3.2.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:93c0bb79844a367782ec4f429d07589417052e621aa39a5ac1fb99c5aa308edc"}, + {file = "greenlet-3.2.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:751261fc5ad7b6705f5f76726567375bb2104a059454e0226e1eef6c756748ba"}, + {file = "greenlet-3.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:83a8761c75312361aa2b5b903b79da97f13f556164a7dd2d5448655425bd4c34"}, + {file = "greenlet-3.2.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:25ad29caed5783d4bd7a85c9251c651696164622494c00802a139c00d639242d"}, + {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:88cd97bf37fe24a6710ec6a3a7799f3f81d9cd33317dcf565ff9950c83f55e0b"}, + {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:baeedccca94880d2f5666b4fa16fc20ef50ba1ee353ee2d7092b383a243b0b0d"}, + {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:be52af4b6292baecfa0f397f3edb3c6092ce071b499dd6fe292c9ac9f2c8f264"}, + {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0cc73378150b8b78b0c9fe2ce56e166695e67478550769536a6742dca3651688"}, + {file = "greenlet-3.2.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:706d016a03e78df129f68c4c9b4c4f963f7d73534e48a24f5f5a7101ed13dbbb"}, + {file = "greenlet-3.2.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:419e60f80709510c343c57b4bb5a339d8767bf9aef9b8ce43f4f143240f88b7c"}, + {file = "greenlet-3.2.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:93d48533fade144203816783373f27a97e4193177ebaaf0fc396db19e5d61163"}, + {file = "greenlet-3.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:7454d37c740bb27bdeddfc3f358f26956a07d5220818ceb467a483197d84f849"}, + {file = "greenlet-3.2.3-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:500b8689aa9dd1ab26872a34084503aeddefcb438e2e7317b89b11eaea1901ad"}, + {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:a07d3472c2a93117af3b0136f246b2833fdc0b542d4a9799ae5f41c28323faef"}, + {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:8704b3768d2f51150626962f4b9a9e4a17d2e37c8a8d9867bbd9fa4eb938d3b3"}, + {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:5035d77a27b7c62db6cf41cf786cfe2242644a7a337a0e155c80960598baab95"}, + {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2d8aa5423cd4a396792f6d4580f88bdc6efcb9205891c9d40d20f6e670992efb"}, + {file = "greenlet-3.2.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2c724620a101f8170065d7dded3f962a2aea7a7dae133a009cada42847e04a7b"}, + {file = "greenlet-3.2.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:873abe55f134c48e1f2a6f53f7d1419192a3d1a4e873bace00499a4e45ea6af0"}, + {file = "greenlet-3.2.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:024571bbce5f2c1cfff08bf3fbaa43bbc7444f580ae13b0099e95d0e6e67ed36"}, + {file = "greenlet-3.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3"}, + {file = "greenlet-3.2.3-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:3d04332dddb10b4a211b68111dabaee2e1a073663d117dc10247b5b1642bac86"}, + {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8186162dffde068a465deab08fc72c767196895c39db26ab1c17c0b77a6d8b97"}, + {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f4bfbaa6096b1b7a200024784217defedf46a07c2eee1a498e94a1b5f8ec5728"}, + {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:ed6cfa9200484d234d8394c70f5492f144b20d4533f69262d530a1a082f6ee9a"}, + {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:02b0df6f63cd15012bed5401b47829cfd2e97052dc89da3cfaf2c779124eb892"}, + {file = "greenlet-3.2.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:86c2d68e87107c1792e2e8d5399acec2487a4e993ab76c792408e59394d52141"}, + {file = "greenlet-3.2.3-cp314-cp314-win_amd64.whl", hash = "sha256:8c47aae8fbbfcf82cc13327ae802ba13c9c36753b67e760023fd116bc124a62a"}, + {file = "greenlet-3.2.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:42efc522c0bd75ffa11a71e09cd8a399d83fafe36db250a87cf1dacfaa15dc64"}, + {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d760f9bdfe79bff803bad32b4d8ffb2c1d2ce906313fc10a83976ffb73d64ca7"}, + {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:8324319cbd7b35b97990090808fdc99c27fe5338f87db50514959f8059999805"}, + {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:8c37ef5b3787567d322331d5250e44e42b58c8c713859b8a04c6065f27efbf72"}, + {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ce539fb52fb774d0802175d37fcff5c723e2c7d249c65916257f0a940cee8904"}, + {file = "greenlet-3.2.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:003c930e0e074db83559edc8705f3a2d066d4aa8c2f198aff1e454946efd0f26"}, + {file = "greenlet-3.2.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7e70ea4384b81ef9e84192e8a77fb87573138aa5d4feee541d8014e452b434da"}, + {file = "greenlet-3.2.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:22eb5ba839c4b2156f18f76768233fe44b23a31decd9cc0d4cc8141c211fd1b4"}, + {file = "greenlet-3.2.3-cp39-cp39-win32.whl", hash = "sha256:4532f0d25df67f896d137431b13f4cdce89f7e3d4a96387a41290910df4d3a57"}, + {file = "greenlet-3.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:aaa7aae1e7f75eaa3ae400ad98f8644bb81e1dc6ba47ce8a93d3f17274e08322"}, + {file = "greenlet-3.2.3.tar.gz", hash = "sha256:8b0dd8ae4c0d6f5e54ee55ba935eeb3d735a9b58a8a1e5b5cbab64e01a39f365"}, +] + +[package.extras] +docs = ["Sphinx", "furo"] +test = ["objgraph", "psutil"] + +[[package]] +name = "gunicorn" +version = "23.0.0" +description = "WSGI HTTP Server for UNIX" +optional = false +python-versions = ">=3.7" +files = [ + {file = "gunicorn-23.0.0-py3-none-any.whl", hash = "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d"}, + {file = "gunicorn-23.0.0.tar.gz", hash = "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec"}, +] + +[package.dependencies] +packaging = "*" + +[package.extras] +eventlet = ["eventlet (>=0.24.1,!=0.36.0)"] +gevent = ["gevent (>=1.4.0)"] +setproctitle = ["setproctitle"] +testing = ["coverage", "eventlet", "gevent", "pytest", "pytest-cov"] +tornado = ["tornado (>=0.2)"] + +[[package]] +name = "h11" +version = "0.16.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86"}, + {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"}, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +description = "A minimal low-level HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55"}, + {file = "httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8"}, +] + +[package.dependencies] +certifi = "*" +h11 = ">=0.16" + +[package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<1.0)"] + +[[package]] +name = "httptools" +version = "0.6.4" +description = "A collection of framework independent HTTP protocol utils." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "httptools-0.6.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3c73ce323711a6ffb0d247dcd5a550b8babf0f757e86a52558fe5b86d6fefcc0"}, + {file = "httptools-0.6.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:345c288418f0944a6fe67be8e6afa9262b18c7626c3ef3c28adc5eabc06a68da"}, + {file = "httptools-0.6.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deee0e3343f98ee8047e9f4c5bc7cedbf69f5734454a94c38ee829fb2d5fa3c1"}, + {file = "httptools-0.6.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca80b7485c76f768a3bc83ea58373f8db7b015551117375e4918e2aa77ea9b50"}, + {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:90d96a385fa941283ebd231464045187a31ad932ebfa541be8edf5b3c2328959"}, + {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:59e724f8b332319e2875efd360e61ac07f33b492889284a3e05e6d13746876f4"}, + {file = "httptools-0.6.4-cp310-cp310-win_amd64.whl", hash = "sha256:c26f313951f6e26147833fc923f78f95604bbec812a43e5ee37f26dc9e5a686c"}, + {file = "httptools-0.6.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f47f8ed67cc0ff862b84a1189831d1d33c963fb3ce1ee0c65d3b0cbe7b711069"}, + {file = "httptools-0.6.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0614154d5454c21b6410fdf5262b4a3ddb0f53f1e1721cfd59d55f32138c578a"}, + {file = "httptools-0.6.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8787367fbdfccae38e35abf7641dafc5310310a5987b689f4c32cc8cc3ee975"}, + {file = "httptools-0.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40b0f7fe4fd38e6a507bdb751db0379df1e99120c65fbdc8ee6c1d044897a636"}, + {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:40a5ec98d3f49904b9fe36827dcf1aadfef3b89e2bd05b0e35e94f97c2b14721"}, + {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dacdd3d10ea1b4ca9df97a0a303cbacafc04b5cd375fa98732678151643d4988"}, + {file = "httptools-0.6.4-cp311-cp311-win_amd64.whl", hash = "sha256:288cd628406cc53f9a541cfaf06041b4c71d751856bab45e3702191f931ccd17"}, + {file = "httptools-0.6.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:df017d6c780287d5c80601dafa31f17bddb170232d85c066604d8558683711a2"}, + {file = "httptools-0.6.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:85071a1e8c2d051b507161f6c3e26155b5c790e4e28d7f236422dbacc2a9cc44"}, + {file = "httptools-0.6.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69422b7f458c5af875922cdb5bd586cc1f1033295aa9ff63ee196a87519ac8e1"}, + {file = "httptools-0.6.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16e603a3bff50db08cd578d54f07032ca1631450ceb972c2f834c2b860c28ea2"}, + {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec4f178901fa1834d4a060320d2f3abc5c9e39766953d038f1458cb885f47e81"}, + {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f9eb89ecf8b290f2e293325c646a211ff1c2493222798bb80a530c5e7502494f"}, + {file = "httptools-0.6.4-cp312-cp312-win_amd64.whl", hash = "sha256:db78cb9ca56b59b016e64b6031eda5653be0589dba2b1b43453f6e8b405a0970"}, + {file = "httptools-0.6.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ade273d7e767d5fae13fa637f4d53b6e961fb7fd93c7797562663f0171c26660"}, + {file = "httptools-0.6.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:856f4bc0478ae143bad54a4242fccb1f3f86a6e1be5548fecfd4102061b3a083"}, + {file = "httptools-0.6.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:322d20ea9cdd1fa98bd6a74b77e2ec5b818abdc3d36695ab402a0de8ef2865a3"}, + {file = "httptools-0.6.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4d87b29bd4486c0093fc64dea80231f7c7f7eb4dc70ae394d70a495ab8436071"}, + {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:342dd6946aa6bda4b8f18c734576106b8a31f2fe31492881a9a160ec84ff4bd5"}, + {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4b36913ba52008249223042dca46e69967985fb4051951f94357ea681e1f5dc0"}, + {file = "httptools-0.6.4-cp313-cp313-win_amd64.whl", hash = "sha256:28908df1b9bb8187393d5b5db91435ccc9c8e891657f9cbb42a2541b44c82fc8"}, + {file = "httptools-0.6.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:d3f0d369e7ffbe59c4b6116a44d6a8eb4783aae027f2c0b366cf0aa964185dba"}, + {file = "httptools-0.6.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:94978a49b8f4569ad607cd4946b759d90b285e39c0d4640c6b36ca7a3ddf2efc"}, + {file = "httptools-0.6.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40dc6a8e399e15ea525305a2ddba998b0af5caa2566bcd79dcbe8948181eeaff"}, + {file = "httptools-0.6.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab9ba8dcf59de5181f6be44a77458e45a578fc99c31510b8c65b7d5acc3cf490"}, + {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:fc411e1c0a7dcd2f902c7c48cf079947a7e65b5485dea9decb82b9105ca71a43"}, + {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:d54efd20338ac52ba31e7da78e4a72570cf729fac82bc31ff9199bedf1dc7440"}, + {file = "httptools-0.6.4-cp38-cp38-win_amd64.whl", hash = "sha256:df959752a0c2748a65ab5387d08287abf6779ae9165916fe053e68ae1fbdc47f"}, + {file = "httptools-0.6.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:85797e37e8eeaa5439d33e556662cc370e474445d5fab24dcadc65a8ffb04003"}, + {file = "httptools-0.6.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:db353d22843cf1028f43c3651581e4bb49374d85692a85f95f7b9a130e1b2cab"}, + {file = "httptools-0.6.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1ffd262a73d7c28424252381a5b854c19d9de5f56f075445d33919a637e3547"}, + {file = "httptools-0.6.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:703c346571fa50d2e9856a37d7cd9435a25e7fd15e236c397bf224afaa355fe9"}, + {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:aafe0f1918ed07b67c1e838f950b1c1fabc683030477e60b335649b8020e1076"}, + {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0e563e54979e97b6d13f1bbc05a96109923e76b901f786a5eae36e99c01237bd"}, + {file = "httptools-0.6.4-cp39-cp39-win_amd64.whl", hash = "sha256:b799de31416ecc589ad79dd85a0b2657a8fe39327944998dea368c1d4c9e55e6"}, + {file = "httptools-0.6.4.tar.gz", hash = "sha256:4e93eee4add6493b59a5c514da98c939b244fce4a0d8879cd3f466562f4b7d5c"}, +] + +[package.extras] +test = ["Cython (>=0.29.24)"] + +[[package]] +name = "httpx" +version = "0.28.1" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, + {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, +] + +[package.dependencies] +anyio = "*" +certifi = "*" +httpcore = "==1.*" +idna = "*" + +[package.extras] +brotli = ["brotli", "brotlicffi"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "idna" +version = "3.10" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.6" +files = [ + {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, + {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, +] + +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + +[[package]] +name = "iniconfig" +version = "2.1.0" +description = "brain-dead simple config-ini parsing" +optional = false +python-versions = ">=3.8" +files = [ + {file = "iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760"}, + {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"}, +] + +[[package]] +name = "mako" +version = "1.3.10" +description = "A super-fast templating language that borrows the best ideas from the existing templating languages." +optional = false +python-versions = ">=3.8" +files = [ + {file = "mako-1.3.10-py3-none-any.whl", hash = "sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59"}, + {file = "mako-1.3.10.tar.gz", hash = "sha256:99579a6f39583fa7e5630a28c3c1f440e4e97a414b80372649c0ce338da2ea28"}, +] + +[package.dependencies] +MarkupSafe = ">=0.9.2" + +[package.extras] +babel = ["Babel"] +lingua = ["lingua"] +testing = ["pytest"] + +[[package]] +name = "markupsafe" +version = "3.0.2" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.9" +files = [ + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, + {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, +] + +[[package]] +name = "mypy" +version = "1.16.1" +description = "Optional static typing for Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "mypy-1.16.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b4f0fed1022a63c6fec38f28b7fc77fca47fd490445c69d0a66266c59dd0b88a"}, + {file = "mypy-1.16.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:86042bbf9f5a05ea000d3203cf87aa9d0ccf9a01f73f71c58979eb9249f46d72"}, + {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ea7469ee5902c95542bea7ee545f7006508c65c8c54b06dc2c92676ce526f3ea"}, + {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:352025753ef6a83cb9e7f2427319bb7875d1fdda8439d1e23de12ab164179574"}, + {file = "mypy-1.16.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ff9fa5b16e4c1364eb89a4d16bcda9987f05d39604e1e6c35378a2987c1aac2d"}, + {file = "mypy-1.16.1-cp310-cp310-win_amd64.whl", hash = "sha256:1256688e284632382f8f3b9e2123df7d279f603c561f099758e66dd6ed4e8bd6"}, + {file = "mypy-1.16.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:472e4e4c100062488ec643f6162dd0d5208e33e2f34544e1fc931372e806c0cc"}, + {file = "mypy-1.16.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ea16e2a7d2714277e349e24d19a782a663a34ed60864006e8585db08f8ad1782"}, + {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:08e850ea22adc4d8a4014651575567b0318ede51e8e9fe7a68f25391af699507"}, + {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:22d76a63a42619bfb90122889b903519149879ddbf2ba4251834727944c8baca"}, + {file = "mypy-1.16.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:2c7ce0662b6b9dc8f4ed86eb7a5d505ee3298c04b40ec13b30e572c0e5ae17c4"}, + {file = "mypy-1.16.1-cp311-cp311-win_amd64.whl", hash = "sha256:211287e98e05352a2e1d4e8759c5490925a7c784ddc84207f4714822f8cf99b6"}, + {file = "mypy-1.16.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:af4792433f09575d9eeca5c63d7d90ca4aeceda9d8355e136f80f8967639183d"}, + {file = "mypy-1.16.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:66df38405fd8466ce3517eda1f6640611a0b8e70895e2a9462d1d4323c5eb4b9"}, + {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:44e7acddb3c48bd2713994d098729494117803616e116032af192871aed80b79"}, + {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0ab5eca37b50188163fa7c1b73c685ac66c4e9bdee4a85c9adac0e91d8895e15"}, + {file = "mypy-1.16.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dedb6229b2c9086247e21a83c309754b9058b438704ad2f6807f0d8227f6ebdd"}, + {file = "mypy-1.16.1-cp312-cp312-win_amd64.whl", hash = "sha256:1f0435cf920e287ff68af3d10a118a73f212deb2ce087619eb4e648116d1fe9b"}, + {file = "mypy-1.16.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ddc91eb318c8751c69ddb200a5937f1232ee8efb4e64e9f4bc475a33719de438"}, + {file = "mypy-1.16.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:87ff2c13d58bdc4bbe7dc0dedfe622c0f04e2cb2a492269f3b418df2de05c536"}, + {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a7cfb0fe29fe5a9841b7c8ee6dffb52382c45acdf68f032145b75620acfbd6f"}, + {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:051e1677689c9d9578b9c7f4d206d763f9bbd95723cd1416fad50db49d52f359"}, + {file = "mypy-1.16.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d5d2309511cc56c021b4b4e462907c2b12f669b2dbeb68300110ec27723971be"}, + {file = "mypy-1.16.1-cp313-cp313-win_amd64.whl", hash = "sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee"}, + {file = "mypy-1.16.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7fc688329af6a287567f45cc1cefb9db662defeb14625213a5b7da6e692e2069"}, + {file = "mypy-1.16.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5e198ab3f55924c03ead626ff424cad1732d0d391478dfbf7bb97b34602395da"}, + {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:09aa4f91ada245f0a45dbc47e548fd94e0dd5a8433e0114917dc3b526912a30c"}, + {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13c7cd5b1cb2909aa318a90fd1b7e31f17c50b242953e7dd58345b2a814f6383"}, + {file = "mypy-1.16.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:58e07fb958bc5d752a280da0e890c538f1515b79a65757bbdc54252ba82e0b40"}, + {file = "mypy-1.16.1-cp39-cp39-win_amd64.whl", hash = "sha256:f895078594d918f93337a505f8add9bd654d1a24962b4c6ed9390e12531eb31b"}, + {file = "mypy-1.16.1-py3-none-any.whl", hash = "sha256:5fc2ac4027d0ef28d6ba69a0343737a23c4d1b83672bf38d1fe237bdc0643b37"}, + {file = "mypy-1.16.1.tar.gz", hash = "sha256:6bd00a0a2094841c5e47e7374bb42b83d64c527a502e3334e1173a0c24437bab"}, +] + +[package.dependencies] +mypy_extensions = ">=1.0.0" +pathspec = ">=0.9.0" +typing_extensions = ">=4.6.0" + +[package.extras] +dmypy = ["psutil (>=4.0)"] +faster-cache = ["orjson"] +install-types = ["pip"] +mypyc = ["setuptools (>=50)"] +reports = ["lxml"] + +[[package]] +name = "mypy-extensions" +version = "1.1.0" +description = "Type system extensions for programs checked with the mypy type checker." +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505"}, + {file = "mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558"}, +] + +[[package]] +name = "packaging" +version = "25.0" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484"}, + {file = "packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"}, +] + +[[package]] +name = "pathspec" +version = "0.12.1" +description = "Utility library for gitignore style pattern matching of file paths." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, + {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, +] + +[[package]] +name = "pluggy" +version = "1.6.0" +description = "plugin and hook calling mechanisms for python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746"}, + {file = "pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["coverage", "pytest", "pytest-benchmark"] + +[[package]] +name = "psycopg" +version = "3.2.9" +description = "PostgreSQL database adapter for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "psycopg-3.2.9-py3-none-any.whl", hash = "sha256:01a8dadccdaac2123c916208c96e06631641c0566b22005493f09663c7a8d3b6"}, + {file = "psycopg-3.2.9.tar.gz", hash = "sha256:2fbb46fcd17bc81f993f28c47f1ebea38d66ae97cc2dbc3cad73b37cefbff700"}, +] + +[package.dependencies] +psycopg-binary = {version = "3.2.9", optional = true, markers = "implementation_name != \"pypy\" and extra == \"binary\""} +typing-extensions = {version = ">=4.6", markers = "python_version < \"3.13\""} +tzdata = {version = "*", markers = "sys_platform == \"win32\""} + +[package.extras] +binary = ["psycopg-binary (==3.2.9)"] +c = ["psycopg-c (==3.2.9)"] +dev = ["ast-comments (>=1.1.2)", "black (>=24.1.0)", "codespell (>=2.2)", "dnspython (>=2.1)", "flake8 (>=4.0)", "isort-psycopg", "isort[colors] (>=6.0)", "mypy (>=1.14)", "pre-commit (>=4.0.1)", "types-setuptools (>=57.4)", "types-shapely (>=2.0)", "wheel (>=0.37)"] +docs = ["Sphinx (>=5.0)", "furo (==2022.6.21)", "sphinx-autobuild (>=2021.3.14)", "sphinx-autodoc-typehints (>=1.12)"] +pool = ["psycopg-pool"] +test = ["anyio (>=4.0)", "mypy (>=1.14)", "pproxy (>=2.7)", "pytest (>=6.2.5)", "pytest-cov (>=3.0)", "pytest-randomly (>=3.5)"] + +[[package]] +name = "psycopg-binary" +version = "3.2.9" +description = "PostgreSQL database adapter for Python -- C optimisation distribution" +optional = false +python-versions = ">=3.8" +files = [ + {file = "psycopg_binary-3.2.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:528239bbf55728ba0eacbd20632342867590273a9bacedac7538ebff890f1093"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e4978c01ca4c208c9d6376bd585e2c0771986b76ff7ea518f6d2b51faece75e8"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ed2bab85b505d13e66a914d0f8cdfa9475c16d3491cf81394e0748b77729af2"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:799fa1179ab8a58d1557a95df28b492874c8f4135101b55133ec9c55fc9ae9d7"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bb37ac3955d19e4996c3534abfa4f23181333974963826db9e0f00731274b695"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:001e986656f7e06c273dd4104e27f4b4e0614092e544d950c7c938d822b1a894"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:fa5c80d8b4cbf23f338db88a7251cef8bb4b68e0f91cf8b6ddfa93884fdbb0c1"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:39a127e0cf9b55bd4734a8008adf3e01d1fd1cb36339c6a9e2b2cbb6007c50ee"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fb7599e436b586e265bea956751453ad32eb98be6a6e694252f4691c31b16edb"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:5d2c9fe14fe42b3575a0b4e09b081713e83b762c8dc38a3771dd3265f8f110e7"}, + {file = "psycopg_binary-3.2.9-cp310-cp310-win_amd64.whl", hash = "sha256:7e4660fad2807612bb200de7262c88773c3483e85d981324b3c647176e41fdc8"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2504e9fd94eabe545d20cddcc2ff0da86ee55d76329e1ab92ecfcc6c0a8156c4"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:093a0c079dd6228a7f3c3d82b906b41964eaa062a9a8c19f45ab4984bf4e872b"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:387c87b51d72442708e7a853e7e7642717e704d59571da2f3b29e748be58c78a"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d9ac10a2ebe93a102a326415b330fff7512f01a9401406896e78a81d75d6eddc"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:72fdbda5b4c2a6a72320857ef503a6589f56d46821592d4377c8c8604810342b"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f34e88940833d46108f949fdc1fcfb74d6b5ae076550cd67ab59ef47555dba95"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a3e0f89fe35cb03ff1646ab663dabf496477bab2a072315192dbaa6928862891"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:6afb3e62f2a3456f2180a4eef6b03177788df7ce938036ff7f09b696d418d186"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:cc19ed5c7afca3f6b298bfc35a6baa27adb2019670d15c32d0bb8f780f7d560d"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bc75f63653ce4ec764c8f8c8b0ad9423e23021e1c34a84eb5f4ecac8538a4a4a"}, + {file = "psycopg_binary-3.2.9-cp311-cp311-win_amd64.whl", hash = "sha256:3db3ba3c470801e94836ad78bf11fd5fab22e71b0c77343a1ee95d693879937a"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:be7d650a434921a6b1ebe3fff324dbc2364393eb29d7672e638ce3e21076974e"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6a76b4722a529390683c0304501f238b365a46b1e5fb6b7249dbc0ad6fea51a0"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:96a551e4683f1c307cfc3d9a05fec62c00a7264f320c9962a67a543e3ce0d8ff"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:61d0a6ceed8f08c75a395bc28cb648a81cf8dee75ba4650093ad1a24a51c8724"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad280bbd409bf598683dda82232f5215cfc5f2b1bf0854e409b4d0c44a113b1d"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76eddaf7fef1d0994e3d536ad48aa75034663d3a07f6f7e3e601105ae73aeff6"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:52e239cd66c4158e412318fbe028cd94b0ef21b0707f56dcb4bdc250ee58fd40"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:08bf9d5eabba160dd4f6ad247cf12f229cc19d2458511cab2eb9647f42fa6795"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1b2cf018168cad87580e67bdde38ff5e51511112f1ce6ce9a8336871f465c19a"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:14f64d1ac6942ff089fc7e926440f7a5ced062e2ed0949d7d2d680dc5c00e2d4"}, + {file = "psycopg_binary-3.2.9-cp312-cp312-win_amd64.whl", hash = "sha256:7a838852e5afb6b4126f93eb409516a8c02a49b788f4df8b6469a40c2157fa21"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:98bbe35b5ad24a782c7bf267596638d78aa0e87abc7837bdac5b2a2ab954179e"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:72691a1615ebb42da8b636c5ca9f2b71f266be9e172f66209a361c175b7842c5"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25ab464bfba8c401f5536d5aa95f0ca1dd8257b5202eede04019b4415f491351"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e8aeefebe752f46e3c4b769e53f1d4ad71208fe1150975ef7662c22cca80fab"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7e4e4dd177a8665c9ce86bc9caae2ab3aa9360b7ce7ec01827ea1baea9ff748"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fc2915949e5c1ea27a851f7a472a7da7d0a40d679f0a31e42f1022f3c562e87"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a1fa38a4687b14f517f049477178093c39c2a10fdcced21116f47c017516498f"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:5be8292d07a3ab828dc95b5ee6b69ca0a5b2e579a577b39671f4f5b47116dfd2"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:778588ca9897b6c6bab39b0d3034efff4c5438f5e3bd52fda3914175498202f9"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f0d5b3af045a187aedbd7ed5fc513bd933a97aaff78e61c3745b330792c4345b"}, + {file = "psycopg_binary-3.2.9-cp313-cp313-win_amd64.whl", hash = "sha256:2290bc146a1b6a9730350f695e8b670e1d1feb8446597bed0bbe7c3c30e0abcb"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4df22ec17390ec5ccb38d211fb251d138d37a43344492858cea24de8efa15003"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eac3a6e926421e976c1c2653624e1294f162dc67ac55f9addbe8f7b8d08ce603"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cf789be42aea5752ee396d58de0538d5fcb76795c85fb03ab23620293fb81b6f"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0f05b9dafa5670a7503abc715af081dbbb176a8e6770de77bccaeb9024206c5"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2d7a6646d41228e9049978be1f3f838b557a1bde500b919906d54c4390f5086"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:a4d76e28df27ce25dc19583407f5c6c6c2ba33b443329331ab29b6ef94c8736d"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:418f52b77b715b42e8ec43ee61ca74abc6765a20db11e8576e7f6586488a266f"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:1f1736d5b21f69feefeef8a75e8d3bf1f0a1e17c165a7488c3111af9d6936e91"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:5918c0fab50df764812f3ca287f0d716c5c10bedde93d4da2cefc9d40d03f3aa"}, + {file = "psycopg_binary-3.2.9-cp38-cp38-win_amd64.whl", hash = "sha256:7b617b81f08ad8def5edd110de44fd6d326f969240cc940c6f6b3ef21fe9c59f"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:587a3f19954d687a14e0c8202628844db692dbf00bba0e6d006659bf1ca91cbe"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:791759138380df21d356ff991265fde7fe5997b0c924a502847a9f9141e68786"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95315b8c8ddfa2fdcb7fe3ddea8a595c1364524f512160c604e3be368be9dd07"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18ac08475c9b971237fcc395b0a6ee4e8580bb5cf6247bc9b8461644bef5d9f4"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac2c04b6345e215e65ca6aef5c05cc689a960b16674eaa1f90a8f86dfaee8c04"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c1ab25e3134774f1e476d4bb9050cdec25f10802e63e92153906ae934578734"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4bfec4a73e8447d8fe8854886ffa78df2b1c279a7592241c2eb393d4499a17e2"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:166acc57af5d2ff0c0c342aed02e69a0cd5ff216cae8820c1059a6f3b7cf5f78"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:413f9e46259fe26d99461af8e1a2b4795a4e27cc8ac6f7919ec19bcee8945074"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:354dea21137a316b6868ee41c2ae7cce001e104760cf4eab3ec85627aed9b6cd"}, + {file = "psycopg_binary-3.2.9-cp39-cp39-win_amd64.whl", hash = "sha256:24ddb03c1ccfe12d000d950c9aba93a7297993c4e3905d9f2c9795bb0764d523"}, +] + +[[package]] +name = "pydantic" +version = "2.11.7" +description = "Data validation using Python type hints" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydantic-2.11.7-py3-none-any.whl", hash = "sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b"}, + {file = "pydantic-2.11.7.tar.gz", hash = "sha256:d989c3c6cb79469287b1569f7447a17848c998458d49ebe294e975b9baf0f0db"}, +] + +[package.dependencies] +annotated-types = ">=0.6.0" +email-validator = {version = ">=2.0.0", optional = true, markers = "extra == \"email\""} +pydantic-core = "2.33.2" +typing-extensions = ">=4.12.2" +typing-inspection = ">=0.4.0" + +[package.extras] +email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] + +[[package]] +name = "pydantic-core" +version = "2.33.2" +description = "Core functionality for Pydantic validation and serialization" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydantic_core-2.33.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2b3d326aaef0c0399d9afffeb6367d5e26ddc24d351dbc9c636840ac355dc5d8"}, + {file = "pydantic_core-2.33.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0e5b2671f05ba48b94cb90ce55d8bdcaaedb8ba00cc5359f6810fc918713983d"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0069c9acc3f3981b9ff4cdfaf088e98d83440a4c7ea1bc07460af3d4dc22e72d"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d53b22f2032c42eaaf025f7c40c2e3b94568ae077a606f006d206a463bc69572"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0405262705a123b7ce9f0b92f123334d67b70fd1f20a9372b907ce1080c7ba02"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4b25d91e288e2c4e0662b8038a28c6a07eaac3e196cfc4ff69de4ea3db992a1b"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bdfe4b3789761f3bcb4b1ddf33355a71079858958e3a552f16d5af19768fef2"}, + {file = "pydantic_core-2.33.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:efec8db3266b76ef9607c2c4c419bdb06bf335ae433b80816089ea7585816f6a"}, + {file = "pydantic_core-2.33.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:031c57d67ca86902726e0fae2214ce6770bbe2f710dc33063187a68744a5ecac"}, + {file = "pydantic_core-2.33.2-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:f8de619080e944347f5f20de29a975c2d815d9ddd8be9b9b7268e2e3ef68605a"}, + {file = "pydantic_core-2.33.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:73662edf539e72a9440129f231ed3757faab89630d291b784ca99237fb94db2b"}, + {file = "pydantic_core-2.33.2-cp310-cp310-win32.whl", hash = "sha256:0a39979dcbb70998b0e505fb1556a1d550a0781463ce84ebf915ba293ccb7e22"}, + {file = "pydantic_core-2.33.2-cp310-cp310-win_amd64.whl", hash = "sha256:b0379a2b24882fef529ec3b4987cb5d003b9cda32256024e6fe1586ac45fc640"}, + {file = "pydantic_core-2.33.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:4c5b0a576fb381edd6d27f0a85915c6daf2f8138dc5c267a57c08a62900758c7"}, + {file = "pydantic_core-2.33.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e799c050df38a639db758c617ec771fd8fb7a5f8eaaa4b27b101f266b216a246"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dc46a01bf8d62f227d5ecee74178ffc448ff4e5197c756331f71efcc66dc980f"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a144d4f717285c6d9234a66778059f33a89096dfb9b39117663fd8413d582dcc"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:73cf6373c21bc80b2e0dc88444f41ae60b2f070ed02095754eb5a01df12256de"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3dc625f4aa79713512d1976fe9f0bc99f706a9dee21dfd1810b4bbbf228d0e8a"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b21b5549499972441da4758d662aeea93f1923f953e9cbaff14b8b9565aef"}, + {file = "pydantic_core-2.33.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bdc25f3681f7b78572699569514036afe3c243bc3059d3942624e936ec93450e"}, + {file = "pydantic_core-2.33.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:fe5b32187cbc0c862ee201ad66c30cf218e5ed468ec8dc1cf49dec66e160cc4d"}, + {file = "pydantic_core-2.33.2-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:bc7aee6f634a6f4a95676fcb5d6559a2c2a390330098dba5e5a5f28a2e4ada30"}, + {file = "pydantic_core-2.33.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:235f45e5dbcccf6bd99f9f472858849f73d11120d76ea8707115415f8e5ebebf"}, + {file = "pydantic_core-2.33.2-cp311-cp311-win32.whl", hash = "sha256:6368900c2d3ef09b69cb0b913f9f8263b03786e5b2a387706c5afb66800efd51"}, + {file = "pydantic_core-2.33.2-cp311-cp311-win_amd64.whl", hash = "sha256:1e063337ef9e9820c77acc768546325ebe04ee38b08703244c1309cccc4f1bab"}, + {file = "pydantic_core-2.33.2-cp311-cp311-win_arm64.whl", hash = "sha256:6b99022f1d19bc32a4c2a0d544fc9a76e3be90f0b3f4af413f87d38749300e65"}, + {file = "pydantic_core-2.33.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a7ec89dc587667f22b6a0b6579c249fca9026ce7c333fc142ba42411fa243cdc"}, + {file = "pydantic_core-2.33.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3c6db6e52c6d70aa0d00d45cdb9b40f0433b96380071ea80b09277dba021ddf7"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e61206137cbc65e6d5256e1166f88331d3b6238e082d9f74613b9b765fb9025"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eb8c529b2819c37140eb51b914153063d27ed88e3bdc31b71198a198e921e011"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c52b02ad8b4e2cf14ca7b3d918f3eb0ee91e63b3167c32591e57c4317e134f8f"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:96081f1605125ba0855dfda83f6f3df5ec90c61195421ba72223de35ccfb2f88"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f57a69461af2a5fa6e6bbd7a5f60d3b7e6cebb687f55106933188e79ad155c1"}, + {file = "pydantic_core-2.33.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:572c7e6c8bb4774d2ac88929e3d1f12bc45714ae5ee6d9a788a9fb35e60bb04b"}, + {file = "pydantic_core-2.33.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:db4b41f9bd95fbe5acd76d89920336ba96f03e149097365afe1cb092fceb89a1"}, + {file = "pydantic_core-2.33.2-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:fa854f5cf7e33842a892e5c73f45327760bc7bc516339fda888c75ae60edaeb6"}, + {file = "pydantic_core-2.33.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5f483cfb75ff703095c59e365360cb73e00185e01aaea067cd19acffd2ab20ea"}, + {file = "pydantic_core-2.33.2-cp312-cp312-win32.whl", hash = "sha256:9cb1da0f5a471435a7bc7e439b8a728e8b61e59784b2af70d7c169f8dd8ae290"}, + {file = "pydantic_core-2.33.2-cp312-cp312-win_amd64.whl", hash = "sha256:f941635f2a3d96b2973e867144fde513665c87f13fe0e193c158ac51bfaaa7b2"}, + {file = "pydantic_core-2.33.2-cp312-cp312-win_arm64.whl", hash = "sha256:cca3868ddfaccfbc4bfb1d608e2ccaaebe0ae628e1416aeb9c4d88c001bb45ab"}, + {file = "pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f"}, + {file = "pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d"}, + {file = "pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56"}, + {file = "pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5"}, + {file = "pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e"}, + {file = "pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162"}, + {file = "pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849"}, + {file = "pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9"}, + {file = "pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9"}, + {file = "pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac"}, + {file = "pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5"}, + {file = "pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9"}, + {file = "pydantic_core-2.33.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a2b911a5b90e0374d03813674bf0a5fbbb7741570dcd4b4e85a2e48d17def29d"}, + {file = "pydantic_core-2.33.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6fa6dfc3e4d1f734a34710f391ae822e0a8eb8559a85c6979e14e65ee6ba2954"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c54c939ee22dc8e2d545da79fc5381f1c020d6d3141d3bd747eab59164dc89fb"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:53a57d2ed685940a504248187d5685e49eb5eef0f696853647bf37c418c538f7"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09fb9dd6571aacd023fe6aaca316bd01cf60ab27240d7eb39ebd66a3a15293b4"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0e6116757f7959a712db11f3e9c0a99ade00a5bbedae83cb801985aa154f071b"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d55ab81c57b8ff8548c3e4947f119551253f4e3787a7bbc0b6b3ca47498a9d3"}, + {file = "pydantic_core-2.33.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c20c462aa4434b33a2661701b861604913f912254e441ab8d78d30485736115a"}, + {file = "pydantic_core-2.33.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:44857c3227d3fb5e753d5fe4a3420d6376fa594b07b621e220cd93703fe21782"}, + {file = "pydantic_core-2.33.2-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:eb9b459ca4df0e5c87deb59d37377461a538852765293f9e6ee834f0435a93b9"}, + {file = "pydantic_core-2.33.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9fcd347d2cc5c23b06de6d3b7b8275be558a0c90549495c699e379a80bf8379e"}, + {file = "pydantic_core-2.33.2-cp39-cp39-win32.whl", hash = "sha256:83aa99b1285bc8f038941ddf598501a86f1536789740991d7d8756e34f1e74d9"}, + {file = "pydantic_core-2.33.2-cp39-cp39-win_amd64.whl", hash = "sha256:f481959862f57f29601ccced557cc2e817bce7533ab8e01a797a48b49c9692b3"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5c4aa4e82353f65e548c476b37e64189783aa5384903bfea4f41580f255fddfa"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d946c8bf0d5c24bf4fe333af284c59a19358aa3ec18cb3dc4370080da1e8ad29"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:87b31b6846e361ef83fedb187bb5b4372d0da3f7e28d85415efa92d6125d6e6d"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa9d91b338f2df0508606f7009fde642391425189bba6d8c653afd80fd6bb64e"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2058a32994f1fde4ca0480ab9d1e75a0e8c87c22b53a3ae66554f9af78f2fe8c"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:0e03262ab796d986f978f79c943fc5f620381be7287148b8010b4097f79a39ec"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:1a8695a8d00c73e50bff9dfda4d540b7dee29ff9b8053e38380426a85ef10052"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:fa754d1850735a0b0e03bcffd9d4b4343eb417e47196e4485d9cca326073a42c"}, + {file = "pydantic_core-2.33.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a11c8d26a50bfab49002947d3d237abe4d9e4b5bdc8846a63537b6488e197808"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:dd14041875d09cc0f9308e37a6f8b65f5585cf2598a53aa0123df8b129d481f8"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:d87c561733f66531dced0da6e864f44ebf89a8fba55f31407b00c2f7f9449593"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f82865531efd18d6e07a04a17331af02cb7a651583c418df8266f17a63c6612"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bfb5112df54209d820d7bf9317c7a6c9025ea52e49f46b6a2060104bba37de7"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:64632ff9d614e5eecfb495796ad51b0ed98c453e447a76bcbeeb69615079fc7e"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:f889f7a40498cc077332c7ab6b4608d296d852182211787d4f3ee377aaae66e8"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:de4b83bb311557e439b9e186f733f6c645b9417c84e2eb8203f3f820a4b988bf"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:82f68293f055f51b51ea42fafc74b6aad03e70e191799430b90c13d643059ebb"}, + {file = "pydantic_core-2.33.2-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:329467cecfb529c925cf2bbd4d60d2c509bc2fb52a20c1045bf09bb70971a9c1"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:87acbfcf8e90ca885206e98359d7dca4bcbb35abdc0ff66672a293e1d7a19101"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:7f92c15cd1e97d4b12acd1cc9004fa092578acfa57b67ad5e43a197175d01a64"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3f26877a748dc4251cfcfda9dfb5f13fcb034f5308388066bcfe9031b63ae7d"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dac89aea9af8cd672fa7b510e7b8c33b0bba9a43186680550ccf23020f32d535"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:970919794d126ba8645f3837ab6046fb4e72bbc057b3709144066204c19a455d"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:3eb3fe62804e8f859c49ed20a8451342de53ed764150cb14ca71357c765dc2a6"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:3abcd9392a36025e3bd55f9bd38d908bd17962cc49bc6da8e7e96285336e2bca"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:3a1c81334778f9e3af2f8aeb7a960736e5cab1dfebfb26aabca09afd2906c039"}, + {file = "pydantic_core-2.33.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2807668ba86cb38c6817ad9bc66215ab8584d1d304030ce4f0887336f28a5e27"}, + {file = "pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc"}, +] + +[package.dependencies] +typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" + +[[package]] +name = "pydantic-settings" +version = "2.10.1" +description = "Settings management using Pydantic" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydantic_settings-2.10.1-py3-none-any.whl", hash = "sha256:a60952460b99cf661dc25c29c0ef171721f98bfcb52ef8d9ea4c943d7c8cc796"}, + {file = "pydantic_settings-2.10.1.tar.gz", hash = "sha256:06f0062169818d0f5524420a360d632d5857b83cffd4d42fe29597807a1614ee"}, +] + +[package.dependencies] +pydantic = ">=2.7.0" +python-dotenv = ">=0.21.0" +typing-inspection = ">=0.4.0" + +[package.extras] +aws-secrets-manager = ["boto3 (>=1.35.0)", "boto3-stubs[secretsmanager]"] +azure-key-vault = ["azure-identity (>=1.16.0)", "azure-keyvault-secrets (>=4.8.0)"] +gcp-secret-manager = ["google-cloud-secret-manager (>=2.23.1)"] +toml = ["tomli (>=2.0.1)"] +yaml = ["pyyaml (>=6.0.1)"] + +[[package]] +name = "pygments" +version = "2.19.2" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b"}, + {file = "pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887"}, +] + +[package.extras] +windows-terminal = ["colorama (>=0.4.6)"] + +[[package]] +name = "pytest" +version = "8.4.1" +description = "pytest: simple powerful testing with Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pytest-8.4.1-py3-none-any.whl", hash = "sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7"}, + {file = "pytest-8.4.1.tar.gz", hash = "sha256:7c67fd69174877359ed9371ec3af8a3d2b04741818c51e5e99cc1742251fa93c"}, +] + +[package.dependencies] +colorama = {version = ">=0.4", markers = "sys_platform == \"win32\""} +iniconfig = ">=1" +packaging = ">=20" +pluggy = ">=1.5,<2" +pygments = ">=2.7.2" + +[package.extras] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests", "setuptools", "xmlschema"] + +[[package]] +name = "pytest-asyncio" +version = "1.0.0" +description = "Pytest support for asyncio" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pytest_asyncio-1.0.0-py3-none-any.whl", hash = "sha256:4f024da9f1ef945e680dc68610b52550e36590a67fd31bb3b4943979a1f90ef3"}, + {file = "pytest_asyncio-1.0.0.tar.gz", hash = "sha256:d15463d13f4456e1ead2594520216b225a16f781e144f8fdf6c5bb4667c48b3f"}, +] + +[package.dependencies] +pytest = ">=8.2,<9" + +[package.extras] +docs = ["sphinx (>=5.3)", "sphinx-rtd-theme (>=1)"] +testing = ["coverage (>=6.2)", "hypothesis (>=5.7.1)"] + +[[package]] +name = "pytest-cov" +version = "6.2.1" +description = "Pytest plugin for measuring coverage." +optional = false +python-versions = ">=3.9" +files = [ + {file = "pytest_cov-6.2.1-py3-none-any.whl", hash = "sha256:f5bc4c23f42f1cdd23c70b1dab1bbaef4fc505ba950d53e0081d0730dd7e86d5"}, + {file = "pytest_cov-6.2.1.tar.gz", hash = "sha256:25cc6cc0a5358204b8108ecedc51a9b57b34cc6b8c967cc2c01a4e00d8a67da2"}, +] + +[package.dependencies] +coverage = {version = ">=7.5", extras = ["toml"]} +pluggy = ">=1.2" +pytest = ">=6.2.5" + +[package.extras] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "virtualenv"] + +[[package]] +name = "python-dotenv" +version = "1.1.1" +description = "Read key-value pairs from a .env file and set them as environment variables" +optional = false +python-versions = ">=3.9" +files = [ + {file = "python_dotenv-1.1.1-py3-none-any.whl", hash = "sha256:31f23644fe2602f88ff55e1f5c79ba497e01224ee7737937930c448e4d0e24dc"}, + {file = "python_dotenv-1.1.1.tar.gz", hash = "sha256:a8a6399716257f45be6a007360200409fce5cda2661e3dec71d23dc15f6189ab"}, +] + +[package.extras] +cli = ["click (>=5.0)"] + +[[package]] +name = "pyyaml" +version = "6.0.2" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, + {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, + {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, + {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, + {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, + {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, + {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, + {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, + {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, + {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, + {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, + {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, + {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, + {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, + {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, + {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, +] + +[[package]] +name = "ruff" +version = "0.12.1" +description = "An extremely fast Python linter and code formatter, written in Rust." +optional = false +python-versions = ">=3.7" +files = [ + {file = "ruff-0.12.1-py3-none-linux_armv6l.whl", hash = "sha256:6013a46d865111e2edb71ad692fbb8262e6c172587a57c0669332a449384a36b"}, + {file = "ruff-0.12.1-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:b3f75a19e03a4b0757d1412edb7f27cffb0c700365e9d6b60bc1b68d35bc89e0"}, + {file = "ruff-0.12.1-py3-none-macosx_11_0_arm64.whl", hash = "sha256:9a256522893cb7e92bb1e1153283927f842dea2e48619c803243dccc8437b8be"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:069052605fe74c765a5b4272eb89880e0ff7a31e6c0dbf8767203c1fbd31c7ff"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a684f125a4fec2d5a6501a466be3841113ba6847827be4573fddf8308b83477d"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdecdef753bf1e95797593007569d8e1697a54fca843d78f6862f7dc279e23bd"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:70d52a058c0e7b88b602f575d23596e89bd7d8196437a4148381a3f73fcd5010"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84d0a69d1e8d716dfeab22d8d5e7c786b73f2106429a933cee51d7b09f861d4e"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6cc32e863adcf9e71690248607ccdf25252eeeab5193768e6873b901fd441fed"}, + {file = "ruff-0.12.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fd49a4619f90d5afc65cf42e07b6ae98bb454fd5029d03b306bd9e2273d44cc"}, + {file = "ruff-0.12.1-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:ed5af6aaaea20710e77698e2055b9ff9b3494891e1b24d26c07055459bb717e9"}, + {file = "ruff-0.12.1-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:801d626de15e6bf988fbe7ce59b303a914ff9c616d5866f8c79eb5012720ae13"}, + {file = "ruff-0.12.1-py3-none-musllinux_1_2_i686.whl", hash = "sha256:2be9d32a147f98a1972c1e4df9a6956d612ca5f5578536814372113d09a27a6c"}, + {file = "ruff-0.12.1-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:49b7ce354eed2a322fbaea80168c902de9504e6e174fd501e9447cad0232f9e6"}, + {file = "ruff-0.12.1-py3-none-win32.whl", hash = "sha256:d973fa626d4c8267848755bd0414211a456e99e125dcab147f24daa9e991a245"}, + {file = "ruff-0.12.1-py3-none-win_amd64.whl", hash = "sha256:9e1123b1c033f77bd2590e4c1fe7e8ea72ef990a85d2484351d408224d603013"}, + {file = "ruff-0.12.1-py3-none-win_arm64.whl", hash = "sha256:78ad09a022c64c13cc6077707f036bab0fac8cd7088772dcd1e5be21c5002efc"}, + {file = "ruff-0.12.1.tar.gz", hash = "sha256:806bbc17f1104fd57451a98a58df35388ee3ab422e029e8f5cf30aa4af2c138c"}, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, + {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, +] + +[[package]] +name = "sqlalchemy" +version = "2.0.41" +description = "Database Abstraction Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-2.0.41-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6854175807af57bdb6425e47adbce7d20a4d79bbfd6f6d6519cd10bb7109a7f8"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05132c906066142103b83d9c250b60508af556982a385d96c4eaa9fb9720ac2b"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b4af17bda11e907c51d10686eda89049f9ce5669b08fbe71a29747f1e876036"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:c0b0e5e1b5d9f3586601048dd68f392dc0cc99a59bb5faf18aab057ce00d00b2"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0b3dbf1e7e9bc95f4bac5e2fb6d3fb2f083254c3fdd20a1789af965caf2d2348"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-win32.whl", hash = "sha256:1e3f196a0c59b0cae9a0cd332eb1a4bda4696e863f4f1cf84ab0347992c548c2"}, + {file = "SQLAlchemy-2.0.41-cp37-cp37m-win_amd64.whl", hash = "sha256:6ab60a5089a8f02009f127806f777fca82581c49e127f08413a66056bd9166dd"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b1f09b6821406ea1f94053f346f28f8215e293344209129a9c0fcc3578598d7b"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1936af879e3db023601196a1684d28e12f19ccf93af01bf3280a3262c4b6b4e5"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b2ac41acfc8d965fb0c464eb8f44995770239668956dc4cdf502d1b1ffe0d747"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81c24e0c0fde47a9723c81d5806569cddef103aebbf79dbc9fcbb617153dea30"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:23a8825495d8b195c4aa9ff1c430c28f2c821e8c5e2d98089228af887e5d7e29"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:60c578c45c949f909a4026b7807044e7e564adf793537fc762b2489d522f3d11"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-win32.whl", hash = "sha256:118c16cd3f1b00c76d69343e38602006c9cfb9998fa4f798606d28d63f23beda"}, + {file = "sqlalchemy-2.0.41-cp310-cp310-win_amd64.whl", hash = "sha256:7492967c3386df69f80cf67efd665c0f667cee67032090fe01d7d74b0e19bb08"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6375cd674fe82d7aa9816d1cb96ec592bac1726c11e0cafbf40eeee9a4516b5f"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9f8c9fdd15a55d9465e590a402f42082705d66b05afc3ffd2d2eb3c6ba919560"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32f9dc8c44acdee06c8fc6440db9eae8b4af8b01e4b1aee7bdd7241c22edff4f"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90c11ceb9a1f482c752a71f203a81858625d8df5746d787a4786bca4ffdf71c6"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:911cc493ebd60de5f285bcae0491a60b4f2a9f0f5c270edd1c4dbaef7a38fc04"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03968a349db483936c249f4d9cd14ff2c296adfa1290b660ba6516f973139582"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-win32.whl", hash = "sha256:293cd444d82b18da48c9f71cd7005844dbbd06ca19be1ccf6779154439eec0b8"}, + {file = "sqlalchemy-2.0.41-cp311-cp311-win_amd64.whl", hash = "sha256:3d3549fc3e40667ec7199033a4e40a2f669898a00a7b18a931d3efb4c7900504"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:81f413674d85cfd0dfcd6512e10e0f33c19c21860342a4890c3a2b59479929f9"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:598d9ebc1e796431bbd068e41e4de4dc34312b7aa3292571bb3674a0cb415dd1"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a104c5694dfd2d864a6f91b0956eb5d5883234119cb40010115fd45a16da5e70"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6145afea51ff0af7f2564a05fa95eb46f542919e6523729663a5d285ecb3cf5e"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:b46fa6eae1cd1c20e6e6f44e19984d438b6b2d8616d21d783d150df714f44078"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41836fe661cc98abfae476e14ba1906220f92c4e528771a8a3ae6a151242d2ae"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-win32.whl", hash = "sha256:a8808d5cf866c781150d36a3c8eb3adccfa41a8105d031bf27e92c251e3969d6"}, + {file = "sqlalchemy-2.0.41-cp312-cp312-win_amd64.whl", hash = "sha256:5b14e97886199c1f52c14629c11d90c11fbb09e9334fa7bb5f6d068d9ced0ce0"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4eeb195cdedaf17aab6b247894ff2734dcead6c08f748e617bfe05bd5a218443"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d4ae769b9c1c7757e4ccce94b0641bc203bbdf43ba7a2413ab2523d8d047d8dc"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a62448526dd9ed3e3beedc93df9bb6b55a436ed1474db31a2af13b313a70a7e1"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc56c9788617b8964ad02e8fcfeed4001c1f8ba91a9e1f31483c0dffb207002a"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c153265408d18de4cc5ded1941dcd8315894572cddd3c58df5d5b5705b3fa28d"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f67766965996e63bb46cfbf2ce5355fc32d9dd3b8ad7e536a920ff9ee422e23"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-win32.whl", hash = "sha256:bfc9064f6658a3d1cadeaa0ba07570b83ce6801a1314985bf98ec9b95d74e15f"}, + {file = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl", hash = "sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:90144d3b0c8b139408da50196c5cad2a6909b51b23df1f0538411cd23ffa45d3"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:023b3ee6169969beea3bb72312e44d8b7c27c75b347942d943cf49397b7edeb5"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:725875a63abf7c399d4548e686debb65cdc2549e1825437096a0af1f7e374814"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81965cc20848ab06583506ef54e37cf15c83c7e619df2ad16807c03100745dea"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dd5ec3aa6ae6e4d5b5de9357d2133c07be1aff6405b136dad753a16afb6717dd"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:ff8e80c4c4932c10493ff97028decfdb622de69cae87e0f127a7ebe32b4069c6"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-win32.whl", hash = "sha256:4d44522480e0bf34c3d63167b8cfa7289c1c54264c2950cc5fc26e7850967e45"}, + {file = "sqlalchemy-2.0.41-cp38-cp38-win_amd64.whl", hash = "sha256:81eedafa609917040d39aa9332e25881a8e7a0862495fcdf2023a9667209deda"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9a420a91913092d1e20c86a2f5f1fc85c1a8924dbcaf5e0586df8aceb09c9cc2"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:906e6b0d7d452e9a98e5ab8507c0da791856b2380fdee61b765632bb8698026f"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a373a400f3e9bac95ba2a06372c4fd1412a7cee53c37fc6c05f829bf672b8769"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:087b6b52de812741c27231b5a3586384d60c353fbd0e2f81405a814b5591dc8b"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:34ea30ab3ec98355235972dadc497bb659cc75f8292b760394824fab9cf39826"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:8280856dd7c6a68ab3a164b4a4b1c51f7691f6d04af4d4ca23d6ecf2261b7923"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-win32.whl", hash = "sha256:b50eab9994d64f4a823ff99a0ed28a6903224ddbe7fef56a6dd865eec9243440"}, + {file = "sqlalchemy-2.0.41-cp39-cp39-win_amd64.whl", hash = "sha256:5e22575d169529ac3e0a120cf050ec9daa94b6a9597993d1702884f6954a7d71"}, + {file = "sqlalchemy-2.0.41-py3-none-any.whl", hash = "sha256:57df5dc6fdb5ed1a88a1ed2195fd31927e705cad62dedd86b46972752a80f576"}, + {file = "sqlalchemy-2.0.41.tar.gz", hash = "sha256:edba70118c4be3c2b1f90754d308d0b79c6fe2c0fdc52d8ddf603916f83f4db9"}, +] + +[package.dependencies] +greenlet = {version = ">=1", markers = "python_version < \"3.14\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} +typing-extensions = ">=4.6.0" + +[package.extras] +aiomysql = ["aiomysql (>=0.2.0)", "greenlet (>=1)"] +aioodbc = ["aioodbc", "greenlet (>=1)"] +aiosqlite = ["aiosqlite", "greenlet (>=1)", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (>=1)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (>=1)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5,!=1.1.10)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)"] +mysql = ["mysqlclient (>=1.4.0)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx_oracle (>=8)"] +oracle-oracledb = ["oracledb (>=1.0.1)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (>=1)"] +postgresql-pg8000 = ["pg8000 (>=1.29.1)"] +postgresql-psycopg = ["psycopg (>=3.0.7)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] +pymysql = ["pymysql"] +sqlcipher = ["sqlcipher3_binary"] + +[[package]] +name = "sqlalchemy-utils" +version = "0.41.2" +description = "Various utility functions for SQLAlchemy." +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-Utils-0.41.2.tar.gz", hash = "sha256:bc599c8c3b3319e53ce6c5c3c471120bd325d0071fb6f38a10e924e3d07b9990"}, + {file = "SQLAlchemy_Utils-0.41.2-py3-none-any.whl", hash = "sha256:85cf3842da2bf060760f955f8467b87983fb2e30f1764fd0e24a48307dc8ec6e"}, +] + +[package.dependencies] +SQLAlchemy = ">=1.3" + +[package.extras] +arrow = ["arrow (>=0.3.4)"] +babel = ["Babel (>=1.3)"] +color = ["colour (>=0.0.4)"] +encrypted = ["cryptography (>=0.6)"] +intervals = ["intervals (>=0.7.1)"] +password = ["passlib (>=1.6,<2.0)"] +pendulum = ["pendulum (>=2.0.5)"] +phone = ["phonenumbers (>=5.9.2)"] +test = ["Jinja2 (>=2.3)", "Pygments (>=1.2)", "backports.zoneinfo", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "isort (>=4.2.2)", "pg8000 (>=1.12.4)", "psycopg (>=3.1.8)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (==7.4.4)", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +test-all = ["Babel (>=1.3)", "Jinja2 (>=2.3)", "Pygments (>=1.2)", "arrow (>=0.3.4)", "backports.zoneinfo", "colour (>=0.0.4)", "cryptography (>=0.6)", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "furl (>=0.4.1)", "intervals (>=0.7.1)", "isort (>=4.2.2)", "passlib (>=1.6,<2.0)", "pendulum (>=2.0.5)", "pg8000 (>=1.12.4)", "phonenumbers (>=5.9.2)", "psycopg (>=3.1.8)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (==7.4.4)", "python-dateutil", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +timezone = ["python-dateutil"] +url = ["furl (>=0.4.1)"] + +[[package]] +name = "starlette" +version = "0.46.2" +description = "The little ASGI library that shines." +optional = false +python-versions = ">=3.9" +files = [ + {file = "starlette-0.46.2-py3-none-any.whl", hash = "sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35"}, + {file = "starlette-0.46.2.tar.gz", hash = "sha256:7f7361f34eed179294600af672f565727419830b54b7b084efe44bb82d2fccd5"}, +] + +[package.dependencies] +anyio = ">=3.6.2,<5" + +[package.extras] +full = ["httpx (>=0.27.0,<0.29.0)", "itsdangerous", "jinja2", "python-multipart (>=0.0.18)", "pyyaml"] + +[[package]] +name = "typing-extensions" +version = "4.14.0" +description = "Backported and Experimental Type Hints for Python 3.9+" +optional = false +python-versions = ">=3.9" +files = [ + {file = "typing_extensions-4.14.0-py3-none-any.whl", hash = "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af"}, + {file = "typing_extensions-4.14.0.tar.gz", hash = "sha256:8676b788e32f02ab42d9e7c61324048ae4c6d844a399eebace3d4979d75ceef4"}, +] + +[[package]] +name = "typing-inspection" +version = "0.4.1" +description = "Runtime typing introspection tools" +optional = false +python-versions = ">=3.9" +files = [ + {file = "typing_inspection-0.4.1-py3-none-any.whl", hash = "sha256:389055682238f53b04f7badcb49b989835495a96700ced5dab2d8feae4b26f51"}, + {file = "typing_inspection-0.4.1.tar.gz", hash = "sha256:6ae134cc0203c33377d43188d4064e9b357dba58cff3185f22924610e70a9d28"}, +] + +[package.dependencies] +typing-extensions = ">=4.12.0" + +[[package]] +name = "tzdata" +version = "2025.2" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8"}, + {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"}, +] + +[[package]] +name = "uvicorn" +version = "0.34.3" +description = "The lightning-fast ASGI server." +optional = false +python-versions = ">=3.9" +files = [ + {file = "uvicorn-0.34.3-py3-none-any.whl", hash = "sha256:16246631db62bdfbf069b0645177d6e8a77ba950cfedbfd093acef9444e4d885"}, + {file = "uvicorn-0.34.3.tar.gz", hash = "sha256:35919a9a979d7a59334b6b10e05d77c1d0d574c50e0fc98b8b1a0f165708b55a"}, +] + +[package.dependencies] +click = ">=7.0" +colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""} +h11 = ">=0.8" +httptools = {version = ">=0.6.3", optional = true, markers = "extra == \"standard\""} +python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} +pyyaml = {version = ">=5.1", optional = true, markers = "extra == \"standard\""} +uvloop = {version = ">=0.15.1", optional = true, markers = "(sys_platform != \"win32\" and sys_platform != \"cygwin\") and platform_python_implementation != \"PyPy\" and extra == \"standard\""} +watchfiles = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} +websockets = {version = ">=10.4", optional = true, markers = "extra == \"standard\""} + +[package.extras] +standard = ["colorama (>=0.4)", "httptools (>=0.6.3)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] + +[[package]] +name = "uvloop" +version = "0.21.0" +description = "Fast implementation of asyncio event loop on top of libuv" +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ec7e6b09a6fdded42403182ab6b832b71f4edaf7f37a9a0e371a01db5f0cb45f"}, + {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:196274f2adb9689a289ad7d65700d37df0c0930fd8e4e743fa4834e850d7719d"}, + {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f38b2e090258d051d68a5b14d1da7203a3c3677321cf32a95a6f4db4dd8b6f26"}, + {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87c43e0f13022b998eb9b973b5e97200c8b90823454d4bc06ab33829e09fb9bb"}, + {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:10d66943def5fcb6e7b37310eb6b5639fd2ccbc38df1177262b0640c3ca68c1f"}, + {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:67dd654b8ca23aed0a8e99010b4c34aca62f4b7fce88f39d452ed7622c94845c"}, + {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c0f3fa6200b3108919f8bdabb9a7f87f20e7097ea3c543754cabc7d717d95cf8"}, + {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0878c2640cf341b269b7e128b1a5fed890adc4455513ca710d77d5e93aa6d6a0"}, + {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9fb766bb57b7388745d8bcc53a359b116b8a04c83a2288069809d2b3466c37e"}, + {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a375441696e2eda1c43c44ccb66e04d61ceeffcd76e4929e527b7fa401b90fb"}, + {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:baa0e6291d91649c6ba4ed4b2f982f9fa165b5bbd50a9e203c416a2797bab3c6"}, + {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4509360fcc4c3bd2c70d87573ad472de40c13387f5fda8cb58350a1d7475e58d"}, + {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:359ec2c888397b9e592a889c4d72ba3d6befba8b2bb01743f72fffbde663b59c"}, + {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f7089d2dc73179ce5ac255bdf37c236a9f914b264825fdaacaded6990a7fb4c2"}, + {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baa4dcdbd9ae0a372f2167a207cd98c9f9a1ea1188a8a526431eef2f8116cc8d"}, + {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86975dca1c773a2c9864f4c52c5a55631038e387b47eaf56210f873887b6c8dc"}, + {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:461d9ae6660fbbafedd07559c6a2e57cd553b34b0065b6550685f6653a98c1cb"}, + {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:183aef7c8730e54c9a3ee3227464daed66e37ba13040bb3f350bc2ddc040f22f"}, + {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:bfd55dfcc2a512316e65f16e503e9e450cab148ef11df4e4e679b5e8253a5281"}, + {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:787ae31ad8a2856fc4e7c095341cccc7209bd657d0e71ad0dc2ea83c4a6fa8af"}, + {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ee4d4ef48036ff6e5cfffb09dd192c7a5027153948d85b8da7ff705065bacc6"}, + {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3df876acd7ec037a3d005b3ab85a7e4110422e4d9c1571d4fc89b0fc41b6816"}, + {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bd53ecc9a0f3d87ab847503c2e1552b690362e005ab54e8a48ba97da3924c0dc"}, + {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a5c39f217ab3c663dc699c04cbd50c13813e31d917642d459fdcec07555cc553"}, + {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:17df489689befc72c39a08359efac29bbee8eee5209650d4b9f34df73d22e414"}, + {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bc09f0ff191e61c2d592a752423c767b4ebb2986daa9ed62908e2b1b9a9ae206"}, + {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0ce1b49560b1d2d8a2977e3ba4afb2414fb46b86a1b64056bc4ab929efdafbe"}, + {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e678ad6fe52af2c58d2ae3c73dc85524ba8abe637f134bf3564ed07f555c5e79"}, + {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:460def4412e473896ef179a1671b40c039c7012184b627898eea5072ef6f017a"}, + {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:10da8046cc4a8f12c91a1c39d1dd1585c41162a15caaef165c2174db9ef18bdc"}, + {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c097078b8031190c934ed0ebfee8cc5f9ba9642e6eb88322b9958b649750f72b"}, + {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:46923b0b5ee7fc0020bef24afe7836cb068f5050ca04caf6b487c513dc1a20b2"}, + {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:53e420a3afe22cdcf2a0f4846e377d16e718bc70103d7088a4f7623567ba5fb0"}, + {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88cb67cdbc0e483da00af0b2c3cdad4b7c61ceb1ee0f33fe00e09c81e3a6cb75"}, + {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:221f4f2a1f46032b403bf3be628011caf75428ee3cc204a22addf96f586b19fd"}, + {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2d1f581393673ce119355d56da84fe1dd9d2bb8b3d13ce792524e1607139feff"}, + {file = "uvloop-0.21.0.tar.gz", hash = "sha256:3bf12b0fda68447806a7ad847bfa591613177275d35b6724b1ee573faa3704e3"}, +] + +[package.extras] +dev = ["Cython (>=3.0,<4.0)", "setuptools (>=60)"] +docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)"] +test = ["aiohttp (>=3.10.5)", "flake8 (>=5.0,<6.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=23.0.0,<23.1.0)", "pycodestyle (>=2.9.0,<2.10.0)"] + +[[package]] +name = "watchfiles" +version = "1.1.0" +description = "Simple, modern and high performance file watching and code reload in python." +optional = false +python-versions = ">=3.9" +files = [ + {file = "watchfiles-1.1.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:27f30e14aa1c1e91cb653f03a63445739919aef84c8d2517997a83155e7a2fcc"}, + {file = "watchfiles-1.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3366f56c272232860ab45c77c3ca7b74ee819c8e1f6f35a7125556b198bbc6df"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8412eacef34cae2836d891836a7fff7b754d6bcac61f6c12ba5ca9bc7e427b68"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:df670918eb7dd719642e05979fc84704af913d563fd17ed636f7c4783003fdcc"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d7642b9bc4827b5518ebdb3b82698ada8c14c7661ddec5fe719f3e56ccd13c97"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:199207b2d3eeaeb80ef4411875a6243d9ad8bc35b07fc42daa6b801cc39cc41c"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a479466da6db5c1e8754caee6c262cd373e6e6c363172d74394f4bff3d84d7b5"}, + {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:935f9edd022ec13e447e5723a7d14456c8af254544cefbc533f6dd276c9aa0d9"}, + {file = "watchfiles-1.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8076a5769d6bdf5f673a19d51da05fc79e2bbf25e9fe755c47595785c06a8c72"}, + {file = "watchfiles-1.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:86b1e28d4c37e89220e924305cd9f82866bb0ace666943a6e4196c5df4d58dcc"}, + {file = "watchfiles-1.1.0-cp310-cp310-win32.whl", hash = "sha256:d1caf40c1c657b27858f9774d5c0e232089bca9cb8ee17ce7478c6e9264d2587"}, + {file = "watchfiles-1.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:a89c75a5b9bc329131115a409d0acc16e8da8dfd5867ba59f1dd66ae7ea8fa82"}, + {file = "watchfiles-1.1.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:c9649dfc57cc1f9835551deb17689e8d44666315f2e82d337b9f07bd76ae3aa2"}, + {file = "watchfiles-1.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:406520216186b99374cdb58bc48e34bb74535adec160c8459894884c983a149c"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb45350fd1dc75cd68d3d72c47f5b513cb0578da716df5fba02fff31c69d5f2d"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:11ee4444250fcbeb47459a877e5e80ed994ce8e8d20283857fc128be1715dac7"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bda8136e6a80bdea23e5e74e09df0362744d24ffb8cd59c4a95a6ce3d142f79c"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b915daeb2d8c1f5cee4b970f2e2c988ce6514aace3c9296e58dd64dc9aa5d575"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ed8fc66786de8d0376f9f913c09e963c66e90ced9aa11997f93bdb30f7c872a8"}, + {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe4371595edf78c41ef8ac8df20df3943e13defd0efcb732b2e393b5a8a7a71f"}, + {file = "watchfiles-1.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b7c5f6fe273291f4d414d55b2c80d33c457b8a42677ad14b4b47ff025d0893e4"}, + {file = "watchfiles-1.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7738027989881e70e3723c75921f1efa45225084228788fc59ea8c6d732eb30d"}, + {file = "watchfiles-1.1.0-cp311-cp311-win32.whl", hash = "sha256:622d6b2c06be19f6e89b1d951485a232e3b59618def88dbeda575ed8f0d8dbf2"}, + {file = "watchfiles-1.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:48aa25e5992b61debc908a61ab4d3f216b64f44fdaa71eb082d8b2de846b7d12"}, + {file = "watchfiles-1.1.0-cp311-cp311-win_arm64.whl", hash = "sha256:00645eb79a3faa70d9cb15c8d4187bb72970b2470e938670240c7998dad9f13a"}, + {file = "watchfiles-1.1.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9dc001c3e10de4725c749d4c2f2bdc6ae24de5a88a339c4bce32300a31ede179"}, + {file = "watchfiles-1.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d9ba68ec283153dead62cbe81872d28e053745f12335d037de9cbd14bd1877f5"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:130fc497b8ee68dce163e4254d9b0356411d1490e868bd8790028bc46c5cc297"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:50a51a90610d0845a5931a780d8e51d7bd7f309ebc25132ba975aca016b576a0"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc44678a72ac0910bac46fa6a0de6af9ba1355669b3dfaf1ce5f05ca7a74364e"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a543492513a93b001975ae283a51f4b67973662a375a403ae82f420d2c7205ee"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ac164e20d17cc285f2b94dc31c384bc3aa3dd5e7490473b3db043dd70fbccfd"}, + {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7590d5a455321e53857892ab8879dce62d1f4b04748769f5adf2e707afb9d4f"}, + {file = "watchfiles-1.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:37d3d3f7defb13f62ece99e9be912afe9dd8a0077b7c45ee5a57c74811d581a4"}, + {file = "watchfiles-1.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:7080c4bb3efd70a07b1cc2df99a7aa51d98685be56be6038c3169199d0a1c69f"}, + {file = "watchfiles-1.1.0-cp312-cp312-win32.whl", hash = "sha256:cbcf8630ef4afb05dc30107bfa17f16c0896bb30ee48fc24bf64c1f970f3b1fd"}, + {file = "watchfiles-1.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:cbd949bdd87567b0ad183d7676feb98136cde5bb9025403794a4c0db28ed3a47"}, + {file = "watchfiles-1.1.0-cp312-cp312-win_arm64.whl", hash = "sha256:0a7d40b77f07be87c6faa93d0951a0fcd8cbca1ddff60a1b65d741bac6f3a9f6"}, + {file = "watchfiles-1.1.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:5007f860c7f1f8df471e4e04aaa8c43673429047d63205d1630880f7637bca30"}, + {file = "watchfiles-1.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:20ecc8abbd957046f1fe9562757903f5eaf57c3bce70929fda6c7711bb58074a"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2f0498b7d2a3c072766dba3274fe22a183dbea1f99d188f1c6c72209a1063dc"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:239736577e848678e13b201bba14e89718f5c2133dfd6b1f7846fa1b58a8532b"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eff4b8d89f444f7e49136dc695599a591ff769300734446c0a86cba2eb2f9895"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12b0a02a91762c08f7264e2e79542f76870c3040bbc847fb67410ab81474932a"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:29e7bc2eee15cbb339c68445959108803dc14ee0c7b4eea556400131a8de462b"}, + {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9481174d3ed982e269c090f780122fb59cee6c3796f74efe74e70f7780ed94c"}, + {file = "watchfiles-1.1.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:80f811146831c8c86ab17b640801c25dc0a88c630e855e2bef3568f30434d52b"}, + {file = "watchfiles-1.1.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:60022527e71d1d1fda67a33150ee42869042bce3d0fcc9cc49be009a9cded3fb"}, + {file = "watchfiles-1.1.0-cp313-cp313-win32.whl", hash = "sha256:32d6d4e583593cb8576e129879ea0991660b935177c0f93c6681359b3654bfa9"}, + {file = "watchfiles-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:f21af781a4a6fbad54f03c598ab620e3a77032c5878f3d780448421a6e1818c7"}, + {file = "watchfiles-1.1.0-cp313-cp313-win_arm64.whl", hash = "sha256:5366164391873ed76bfdf618818c82084c9db7fac82b64a20c44d335eec9ced5"}, + {file = "watchfiles-1.1.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:17ab167cca6339c2b830b744eaf10803d2a5b6683be4d79d8475d88b4a8a4be1"}, + {file = "watchfiles-1.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:328dbc9bff7205c215a7807da7c18dce37da7da718e798356212d22696404339"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7208ab6e009c627b7557ce55c465c98967e8caa8b11833531fdf95799372633"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a8f6f72974a19efead54195bc9bed4d850fc047bb7aa971268fd9a8387c89011"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d181ef50923c29cf0450c3cd47e2f0557b62218c50b2ab8ce2ecaa02bd97e670"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:adb4167043d3a78280d5d05ce0ba22055c266cf8655ce942f2fb881262ff3cdf"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8c5701dc474b041e2934a26d31d39f90fac8a3dee2322b39f7729867f932b1d4"}, + {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b067915e3c3936966a8607f6fe5487df0c9c4afb85226613b520890049deea20"}, + {file = "watchfiles-1.1.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:9c733cda03b6d636b4219625a4acb5c6ffb10803338e437fb614fef9516825ef"}, + {file = "watchfiles-1.1.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:cc08ef8b90d78bfac66f0def80240b0197008e4852c9f285907377b2947ffdcb"}, + {file = "watchfiles-1.1.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:9974d2f7dc561cce3bb88dfa8eb309dab64c729de85fba32e98d75cf24b66297"}, + {file = "watchfiles-1.1.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c68e9f1fcb4d43798ad8814c4c1b61547b014b667216cb754e606bfade587018"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95ab1594377effac17110e1352989bdd7bdfca9ff0e5eeccd8c69c5389b826d0"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fba9b62da882c1be1280a7584ec4515d0a6006a94d6e5819730ec2eab60ffe12"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3434e401f3ce0ed6b42569128b3d1e3af773d7ec18751b918b89cd49c14eaafb"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fa257a4d0d21fcbca5b5fcba9dca5a78011cb93c0323fb8855c6d2dfbc76eb77"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7fd1b3879a578a8ec2076c7961076df540b9af317123f84569f5a9ddee64ce92"}, + {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:62cc7a30eeb0e20ecc5f4bd113cd69dcdb745a07c68c0370cea919f373f65d9e"}, + {file = "watchfiles-1.1.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:891c69e027748b4a73847335d208e374ce54ca3c335907d381fde4e41661b13b"}, + {file = "watchfiles-1.1.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:12fe8eaffaf0faa7906895b4f8bb88264035b3f0243275e0bf24af0436b27259"}, + {file = "watchfiles-1.1.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:bfe3c517c283e484843cb2e357dd57ba009cff351edf45fb455b5fbd1f45b15f"}, + {file = "watchfiles-1.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a9ccbf1f129480ed3044f540c0fdbc4ee556f7175e5ab40fe077ff6baf286d4e"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba0e3255b0396cac3cc7bbace76404dd72b5438bf0d8e7cefa2f79a7f3649caa"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4281cd9fce9fc0a9dbf0fc1217f39bf9cf2b4d315d9626ef1d4e87b84699e7e8"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6d2404af8db1329f9a3c9b79ff63e0ae7131986446901582067d9304ae8aaf7f"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e78b6ed8165996013165eeabd875c5dfc19d41b54f94b40e9fff0eb3193e5e8e"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:249590eb75ccc117f488e2fabd1bfa33c580e24b96f00658ad88e38844a040bb"}, + {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d05686b5487cfa2e2c28ff1aa370ea3e6c5accfe6435944ddea1e10d93872147"}, + {file = "watchfiles-1.1.0-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:d0e10e6f8f6dc5762adee7dece33b722282e1f59aa6a55da5d493a97282fedd8"}, + {file = "watchfiles-1.1.0-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:af06c863f152005c7592df1d6a7009c836a247c9d8adb78fef8575a5a98699db"}, + {file = "watchfiles-1.1.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:865c8e95713744cf5ae261f3067861e9da5f1370ba91fc536431e29b418676fa"}, + {file = "watchfiles-1.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:42f92befc848bb7a19658f21f3e7bae80d7d005d13891c62c2cd4d4d0abb3433"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa0cc8365ab29487eb4f9979fd41b22549853389e22d5de3f134a6796e1b05a4"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:90ebb429e933645f3da534c89b29b665e285048973b4d2b6946526888c3eb2c7"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c588c45da9b08ab3da81d08d7987dae6d2a3badd63acdb3e206a42dbfa7cb76f"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7c55b0f9f68590115c25272b06e63f0824f03d4fc7d6deed43d8ad5660cabdbf"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd17a1e489f02ce9117b0de3c0b1fab1c3e2eedc82311b299ee6b6faf6c23a29"}, + {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da71945c9ace018d8634822f16cbc2a78323ef6c876b1d34bbf5d5222fd6a72e"}, + {file = "watchfiles-1.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:51556d5004887045dba3acdd1fdf61dddea2be0a7e18048b5e853dcd37149b86"}, + {file = "watchfiles-1.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04e4ed5d1cd3eae68c89bcc1a485a109f39f2fd8de05f705e98af6b5f1861f1f"}, + {file = "watchfiles-1.1.0-cp39-cp39-win32.whl", hash = "sha256:c600e85f2ffd9f1035222b1a312aff85fd11ea39baff1d705b9b047aad2ce267"}, + {file = "watchfiles-1.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:3aba215958d88182e8d2acba0fdaf687745180974946609119953c0e112397dc"}, + {file = "watchfiles-1.1.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3a6fd40bbb50d24976eb275ccb55cd1951dfb63dbc27cae3066a6ca5f4beabd5"}, + {file = "watchfiles-1.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9f811079d2f9795b5d48b55a37aa7773680a5659afe34b54cc1d86590a51507d"}, + {file = "watchfiles-1.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2726d7bfd9f76158c84c10a409b77a320426540df8c35be172444394b17f7ea"}, + {file = "watchfiles-1.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:df32d59cb9780f66d165a9a7a26f19df2c7d24e3bd58713108b41d0ff4f929c6"}, + {file = "watchfiles-1.1.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:0ece16b563b17ab26eaa2d52230c9a7ae46cf01759621f4fbbca280e438267b3"}, + {file = "watchfiles-1.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:51b81e55d40c4b4aa8658427a3ee7ea847c591ae9e8b81ef94a90b668999353c"}, + {file = "watchfiles-1.1.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2bcdc54ea267fe72bfc7d83c041e4eb58d7d8dc6f578dfddb52f037ce62f432"}, + {file = "watchfiles-1.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:923fec6e5461c42bd7e3fd5ec37492c6f3468be0499bc0707b4bbbc16ac21792"}, + {file = "watchfiles-1.1.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:7b3443f4ec3ba5aa00b0e9fa90cf31d98321cbff8b925a7c7b84161619870bc9"}, + {file = "watchfiles-1.1.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:7049e52167fc75fc3cc418fc13d39a8e520cbb60ca08b47f6cedb85e181d2f2a"}, + {file = "watchfiles-1.1.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54062ef956807ba806559b3c3d52105ae1827a0d4ab47b621b31132b6b7e2866"}, + {file = "watchfiles-1.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a7bd57a1bb02f9d5c398c0c1675384e7ab1dd39da0ca50b7f09af45fa435277"}, + {file = "watchfiles-1.1.0.tar.gz", hash = "sha256:693ed7ec72cbfcee399e92c895362b6e66d63dac6b91e2c11ae03d10d503e575"}, +] + +[package.dependencies] +anyio = ">=3.0.0" + +[[package]] +name = "websockets" +version = "15.0.1" +description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "websockets-15.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d63efaa0cd96cf0c5fe4d581521d9fa87744540d4bc999ae6e08595a1014b45b"}, + {file = "websockets-15.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac60e3b188ec7574cb761b08d50fcedf9d77f1530352db4eef1707fe9dee7205"}, + {file = "websockets-15.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5756779642579d902eed757b21b0164cd6fe338506a8083eb58af5c372e39d9a"}, + {file = "websockets-15.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0fdfe3e2a29e4db3659dbd5bbf04560cea53dd9610273917799f1cde46aa725e"}, + {file = "websockets-15.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c2529b320eb9e35af0fa3016c187dffb84a3ecc572bcee7c3ce302bfeba52bf"}, + {file = "websockets-15.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac1e5c9054fe23226fb11e05a6e630837f074174c4c2f0fe442996112a6de4fb"}, + {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:5df592cd503496351d6dc14f7cdad49f268d8e618f80dce0cd5a36b93c3fc08d"}, + {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0a34631031a8f05657e8e90903e656959234f3a04552259458aac0b0f9ae6fd9"}, + {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3d00075aa65772e7ce9e990cab3ff1de702aa09be3940d1dc88d5abf1ab8a09c"}, + {file = "websockets-15.0.1-cp310-cp310-win32.whl", hash = "sha256:1234d4ef35db82f5446dca8e35a7da7964d02c127b095e172e54397fb6a6c256"}, + {file = "websockets-15.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:39c1fec2c11dc8d89bba6b2bf1556af381611a173ac2b511cf7231622058af41"}, + {file = "websockets-15.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:823c248b690b2fd9303ba00c4f66cd5e2d8c3ba4aa968b2779be9532a4dad431"}, + {file = "websockets-15.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678999709e68425ae2593acf2e3ebcbcf2e69885a5ee78f9eb80e6e371f1bf57"}, + {file = "websockets-15.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d50fd1ee42388dcfb2b3676132c78116490976f1300da28eb629272d5d93e905"}, + {file = "websockets-15.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d99e5546bf73dbad5bf3547174cd6cb8ba7273062a23808ffea025ecb1cf8562"}, + {file = "websockets-15.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66dd88c918e3287efc22409d426c8f729688d89a0c587c88971a0faa2c2f3792"}, + {file = "websockets-15.0.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8dd8327c795b3e3f219760fa603dcae1dcc148172290a8ab15158cf85a953413"}, + {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8fdc51055e6ff4adeb88d58a11042ec9a5eae317a0a53d12c062c8a8865909e8"}, + {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:693f0192126df6c2327cce3baa7c06f2a117575e32ab2308f7f8216c29d9e2e3"}, + {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:54479983bd5fb469c38f2f5c7e3a24f9a4e70594cd68cd1fa6b9340dadaff7cf"}, + {file = "websockets-15.0.1-cp311-cp311-win32.whl", hash = "sha256:16b6c1b3e57799b9d38427dda63edcbe4926352c47cf88588c0be4ace18dac85"}, + {file = "websockets-15.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:27ccee0071a0e75d22cb35849b1db43f2ecd3e161041ac1ee9d2352ddf72f065"}, + {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3"}, + {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665"}, + {file = "websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2"}, + {file = "websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215"}, + {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5"}, + {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65"}, + {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe"}, + {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4"}, + {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597"}, + {file = "websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9"}, + {file = "websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7"}, + {file = "websockets-15.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee443ef070bb3b6ed74514f5efaa37a252af57c90eb33b956d35c8e9c10a1931"}, + {file = "websockets-15.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5a939de6b7b4e18ca683218320fc67ea886038265fd1ed30173f5ce3f8e85675"}, + {file = "websockets-15.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:746ee8dba912cd6fc889a8147168991d50ed70447bf18bcda7039f7d2e3d9151"}, + {file = "websockets-15.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b6c3969023ecf9041b2936ac3827e4623bfa3ccf007575f04c5a6aa318c22"}, + {file = "websockets-15.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c714d2fc58b5ca3e285461a4cc0c9a66bd0e24c5da9911e30158286c9b5be7f"}, + {file = "websockets-15.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f3c1e2ab208db911594ae5b4f79addeb3501604a165019dd221c0bdcabe4db8"}, + {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:229cf1d3ca6c1804400b0a9790dc66528e08a6a1feec0d5040e8b9eb14422375"}, + {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:756c56e867a90fb00177d530dca4b097dd753cde348448a1012ed6c5131f8b7d"}, + {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:558d023b3df0bffe50a04e710bc87742de35060580a293c2a984299ed83bc4e4"}, + {file = "websockets-15.0.1-cp313-cp313-win32.whl", hash = "sha256:ba9e56e8ceeeedb2e080147ba85ffcd5cd0711b89576b83784d8605a7df455fa"}, + {file = "websockets-15.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561"}, + {file = "websockets-15.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5f4c04ead5aed67c8a1a20491d54cdfba5884507a48dd798ecaf13c74c4489f5"}, + {file = "websockets-15.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:abdc0c6c8c648b4805c5eacd131910d2a7f6455dfd3becab248ef108e89ab16a"}, + {file = "websockets-15.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a625e06551975f4b7ea7102bc43895b90742746797e2e14b70ed61c43a90f09b"}, + {file = "websockets-15.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d591f8de75824cbb7acad4e05d2d710484f15f29d4a915092675ad3456f11770"}, + {file = "websockets-15.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:47819cea040f31d670cc8d324bb6435c6f133b8c7a19ec3d61634e62f8d8f9eb"}, + {file = "websockets-15.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac017dd64572e5c3bd01939121e4d16cf30e5d7e110a119399cf3133b63ad054"}, + {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4a9fac8e469d04ce6c25bb2610dc535235bd4aa14996b4e6dbebf5e007eba5ee"}, + {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:363c6f671b761efcb30608d24925a382497c12c506b51661883c3e22337265ed"}, + {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2034693ad3097d5355bfdacfffcbd3ef5694f9718ab7f29c29689a9eae841880"}, + {file = "websockets-15.0.1-cp39-cp39-win32.whl", hash = "sha256:3b1ac0d3e594bf121308112697cf4b32be538fb1444468fb0a6ae4feebc83411"}, + {file = "websockets-15.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b7643a03db5c95c799b89b31c036d5f27eeb4d259c798e878d6937d71832b1e4"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:0c9e74d766f2818bb95f84c25be4dea09841ac0f734d1966f415e4edfc4ef1c3"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1009ee0c7739c08a0cd59de430d6de452a55e42d6b522de7aa15e6f67db0b8e1"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76d1f20b1c7a2fa82367e04982e708723ba0e7b8d43aa643d3dcd404d74f1475"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f29d80eb9a9263b8d109135351caf568cc3f80b9928bccde535c235de55c22d9"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b359ed09954d7c18bbc1680f380c7301f92c60bf924171629c5db97febb12f04"}, + {file = "websockets-15.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:cad21560da69f4ce7658ca2cb83138fb4cf695a2ba3e475e0559e05991aa8122"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7f493881579c90fc262d9cdbaa05a6b54b3811c2f300766748db79f098db9940"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:47b099e1f4fbc95b701b6e85768e1fcdaf1630f3cbe4765fa216596f12310e2e"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:67f2b6de947f8c757db2db9c71527933ad0019737ec374a8a6be9a956786aaf9"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d08eb4c2b7d6c41da6ca0600c077e93f5adcfd979cd777d747e9ee624556da4b"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b826973a4a2ae47ba357e4e82fa44a463b8f168e1ca775ac64521442b19e87f"}, + {file = "websockets-15.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:21c1fa28a6a7e3cbdc171c694398b6df4744613ce9b36b1a498e816787e28123"}, + {file = "websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f"}, + {file = "websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee"}, +] + +[metadata] +lock-version = "2.0" +python-versions = "^3.12" +content-hash = "387c837941fad4e69a6a11d22f94c0b0ac3f5d2688fe196b31a9beb3a00b3dbe" diff --git a/scripts/init-docker-dev.sh b/scripts/init-docker-dev.sh index 80f06d8..fa2c4ee 100644 --- a/scripts/init-docker-dev.sh +++ b/scripts/init-docker-dev.sh @@ -59,8 +59,23 @@ docker compose \ -f "$COMPOSE_FILE" up -d db pgadmin # ────────────────────────────────────────────────────────────────────────────── -# 4. Run Alembic migrations +# 4. Wait for Postgres to be ready, then run Alembic migrations # ────────────────────────────────────────────────────────────────────────────── +PGUSER="${DB_USER:-${POSTGRES_USER:-postgres}}" + +echo ">>> Waiting for Postgres to be ready..." +MAX_RETRIES=30 +RETRIES=0 +until docker exec docker_fs-db-1 pg_isready -U "$PGUSER" > /dev/null 2>&1; do + sleep 1 + RETRIES=$((RETRIES+1)) + if [ "$RETRIES" -ge "$MAX_RETRIES" ]; then + echo "ERROR: Postgres non si è avviato in tempo." >&2 + exit 1 + fi +done +echo ">>> Postgres is ready!" + echo ">>> Applying database migrations (Alembic)…" cd "$PROJECT_ROOT" poetry run alembic upgrade head diff --git a/src/app/config/constants.py b/src/app/config/constants.py index e5e9d0b..14ed238 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,23 +1,4 @@ """Application constants and configuration values.""" -from enum import Enum - - -class UserLevel(str, Enum): - """constants to define the different levels the user can have in the application""" - - USER = "user" - ADMIN = "admin" - -class SubscriptionLevel(str, Enum): - """ - constants to define the different subscription levels the user can have - in the application - """ - - FREE = "free" - EXPERT = "expert" - PRO = "pro" - ENTERPRISE = "enterprise" diff --git a/src/app/config/settings.py b/src/app/config/settings.py index 69ee4ad..7fc3d9d 100644 --- a/src/app/config/settings.py +++ b/src/app/config/settings.py @@ -7,7 +7,7 @@ from pydantic import Field from pydantic_settings import BaseSettings, SettingsConfigDict -env_path = Path(__file__).resolve().parents[3] / "docker" / ".env.dev" +env_path = Path(__file__).resolve().parents[3] / "docker_fs" / ".env.dev" if env_path.exists(): load_dotenv(dotenv_path=env_path) @@ -17,7 +17,7 @@ class Settings(BaseSettings): model_config = SettingsConfigDict(env_file=None, extra="ignore") - app_name: str = "Project Backend" + app_name: str = "FastSim" environment: Literal["development", "staging", "production", "test"] = Field( default="development", diff --git a/tests/integration/db_initialization/test_init_models.py b/tests/integration/db_initialization/test_init_models.py index 7783bdc..05721eb 100644 --- a/tests/integration/db_initialization/test_init_models.py +++ b/tests/integration/db_initialization/test_init_models.py @@ -1,6 +1,7 @@ import pytest from sqlalchemy import text from sqlalchemy.ext.asyncio import create_async_engine +from sqlalchemy.exc import SQLAlchemyError from app.config.settings import settings @@ -8,13 +9,9 @@ async def test_users_table_exists_after_migrations() -> None: engine = create_async_engine(settings.db_url, echo=False) - async with engine.connect() as conn: - result = await conn.execute( - text( - "SELECT COUNT(*) " - "FROM information_schema.tables " - "WHERE table_schema = 'public' " - " AND table_name = 'users';", - ), - ) - assert result.scalar_one() == 1 + try: + async with engine.connect() as conn: + await conn.execute(text("SELECT 1")) + except SQLAlchemyError: + pytest.fail("Database connection or Alembic setup failed.") + From 2a4675fb8693df1957501ea3bf3ad963d71b953c Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 3 Jul 2025 15:58:40 +0200 Subject: [PATCH 05/35] minor change --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index 842f5ae..5fcd4bc 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -23,7 +23,7 @@ from app.main import app # Load test environment variables from .env.test -ENV_PATH = Path(__file__).resolve().parents[1] / "docker" / ".env.test" +ENV_PATH = Path(__file__).resolve().parents[1] / "docker_fs" / ".env.test" load_dotenv(dotenv_path=ENV_PATH, override=True) From 91c0a7eb17a89f182ff928edebe2f23027d1cd40 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 4 Jul 2025 18:20:06 +0200 Subject: [PATCH 06/35] Delete docker_fs/.env.dev --- docker_fs/.env.dev | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 docker_fs/.env.dev diff --git a/docker_fs/.env.dev b/docker_fs/.env.dev deleted file mode 100644 index 911bc85..0000000 --- a/docker_fs/.env.dev +++ /dev/null @@ -1,11 +0,0 @@ -DB_HOST=db -DB_PORT=5432 -DB_NAME=project_backend_dev -DB_USER=dev_user -DB_PASSWORD=dev_pass -DB_URL=postgresql+asyncpg://dev_user:dev_pass@db:5432/project_backend_dev - -PGADMIN_DEFAULT_EMAIL=admin@example.com -PGADMIN_DEFAULT_PASSWORD=secret - -ENVIRONMENT=development \ No newline at end of file From ab6c48ae1513ed502971b2ab8c5fab9710c4068c Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 4 Jul 2025 18:20:17 +0200 Subject: [PATCH 07/35] Delete docker_fs/.env.test --- docker_fs/.env.test | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 docker_fs/.env.test diff --git a/docker_fs/.env.test b/docker_fs/.env.test deleted file mode 100644 index 2ae2f2e..0000000 --- a/docker_fs/.env.test +++ /dev/null @@ -1,12 +0,0 @@ - -ENVIRONMENT=test - - -DB_HOST=db -DB_PORT=5432 -DB_USER=postgres -DB_PASSWORD=testpassword -DB_NAME=test_db - - -DB_URL=postgresql+asyncpg://postgres:testpassword@db:5432/test_db From c06166b7eff7a02406376ed63efd43ee10854d35 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Sun, 6 Jul 2025 15:44:16 +0200 Subject: [PATCH 08/35] Features/event generator (#1) * setting up the generator * poisson-poisson requests sampling * Delete docker_fs/.env.dev * Delete docker_fs/.env.test * changes * refactor for event generator * added gaussian truncated generator and unit tests for helpers * imprved documentantion and simulation time handling * simulation start with the vent generator * small refactor + tests for the generation of events * minor changes * Update src/app/schemas/simulation_input.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/unit/sampler/test_sampler_helper.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update scripts/quality-check.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/integration/db_initialization/test_init_models.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * minor changes after PR review --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/workflows/ci-develop.yml | 2 + .gitignore | 2 + .../DEV_WORKFLOW_GUIDE.md | 73 +------ .../integration_tests/test_sampler_helper.md | 50 +++++ .../test_simulation_input.md | 93 ++++++++ poetry.lock | 73 ++++++- pyproject.toml | 6 +- scripts/quality-check.sh | 10 + src/app/api/simulation.py | 18 ++ src/app/config/constants.py | 7 + src/app/core/auth_helpers.py | 62 ------ src/app/core/event_samplers/common_helpers.py | 33 +++ .../core/event_samplers/gaussian_poisson.py | 98 +++++++++ .../core/event_samplers/poisson_poisson.py | 86 ++++++++ src/app/core/simulation/requests_generator.py | 51 +++++ src/app/core/simulation/simulation_run.py | 56 +++++ src/app/main.py | 1 - src/app/schemas/simulation_input.py | 58 +++++ src/app/schemas/simulation_output.py | 12 ++ .../db_initialization/test_init_models.py | 2 +- tests/unit/sampler/test_sampler_helper.py | 130 ++++++++++++ .../simulation/test_requests_generator.py | 198 ++++++++++++++++++ .../unit/simulation/test_simulation_input.py | 93 ++++++++ 23 files changed, 1076 insertions(+), 138 deletions(-) rename DEV_WORKFLOW_GUIDE.md => documentation/DEV_WORKFLOW_GUIDE.md (70%) create mode 100644 documentation/tests_documentation/integration_tests/test_sampler_helper.md create mode 100644 documentation/tests_documentation/integration_tests/test_simulation_input.md create mode 100644 scripts/quality-check.sh create mode 100644 src/app/api/simulation.py delete mode 100644 src/app/core/auth_helpers.py create mode 100644 src/app/core/event_samplers/common_helpers.py create mode 100644 src/app/core/event_samplers/gaussian_poisson.py create mode 100644 src/app/core/event_samplers/poisson_poisson.py create mode 100644 src/app/core/simulation/requests_generator.py create mode 100644 src/app/core/simulation/simulation_run.py create mode 100644 src/app/schemas/simulation_input.py create mode 100644 src/app/schemas/simulation_output.py create mode 100644 tests/unit/sampler/test_sampler_helper.py create mode 100644 tests/unit/simulation/test_requests_generator.py create mode 100644 tests/unit/simulation/test_simulation_input.py diff --git a/.github/workflows/ci-develop.yml b/.github/workflows/ci-develop.yml index edcd143..480f075 100644 --- a/.github/workflows/ci-develop.yml +++ b/.github/workflows/ci-develop.yml @@ -55,6 +55,8 @@ jobs: # Unit-tests only (exclude integration markers) - name: Run unit tests + env: + ENVIRONMENT: test run: poetry run pytest -m "not integration" --disable-warnings diff --git a/.gitignore b/.gitignore index 56d248a..58026c9 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,8 @@ pip-wheel-metadata/ venv/ ENV/ env/ +docker_fs/.env +docker_fs/.env.* # Poetry-specific .cache/pypoetry/ diff --git a/DEV_WORKFLOW_GUIDE.md b/documentation/DEV_WORKFLOW_GUIDE.md similarity index 70% rename from DEV_WORKFLOW_GUIDE.md rename to documentation/DEV_WORKFLOW_GUIDE.md index 3ae74de..c08cea4 100644 --- a/DEV_WORKFLOW_GUIDE.md +++ b/documentation/DEV_WORKFLOW_GUIDE.md @@ -1,6 +1,6 @@ # **Development Workflow & Architecture Guide** -This document outlines the standardized development workflow, repository architecture, and branching strategy for this project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. +This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the FastSim project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. ## 1. Technology Stack @@ -13,13 +13,7 @@ The project is built upon the following core technologies: - **Caching**: Redis - **Containerization**: Docker -## 2. Architectural Overview: A Multi-Repo Strategy - -To promote scalability, team autonomy, and clear separation of concerns, this project adopts a **multi-repo architecture**. Each core component of the system resides in its own dedicated repository. This approach allows for independent development cycles, testing, and deployment. - -Our architecture is composed of three main repositories: - -### 2.1. Backend Service (`project-backend`) +### 2.1. Backend Service (`FastSim-backend`) This repository contains all code related to the FastAPI backend service. Its primary responsibility is to handle business logic, interact with the database, and expose a RESTful API. @@ -61,69 +55,6 @@ project-backend/ * To be testable in isolation. * To produce a versioned Docker image (`backend:`) as its main artifact. -### 2.2. Frontend Service (`project-frontend`) - -This repository contains all code for the React web application. Its responsibility is to provide the user interface and interact with the backend via its API. - -**Folder Structure:** -``` -project-frontend/ -├── .github/ -│ └── workflows/ -│ └── main.yml # CI: Tests and publishes the frontend Docker image -├── public/ # Static assets (index.html, favicon, etc.) -├── src/ # Application source code -│ ├── api/ # Functions for backend API calls -│ ├── components/ # Reusable UI components -│ ├── hooks/ # Custom React hooks -│ ├── mocks/ # Service worker mocks for API (for isolated testing) -│ ├── pages/ # Page components -│ └── index.js # React application entrypoint -├── .env.example -├── .gitignore -├── docker-compose.yml # Base local development definition -├── Dockerfile # Multi-stage build for a lean production image -├── package.json -├── package-lock.json -└── README.md # Setup instructions for the frontend service -``` - -**Key Responsibilities:** -* To be testable in isolation (using a mocked API). -* To produce a versioned, production-ready Docker image (`frontend:`), typically served by Nginx. - -### 2.3. Infrastructure & E2E Tests (`project-master`) - -This repository is the "glue" that holds the system together. It does not contain application code but rather the configuration to orchestrate, test, and deploy the entire system. - -**Folder Structure:** -``` -project-master/ -├── .github/ -│ └── workflows/ -│ ├── e2e-tests.yml # CI: Runs End-to-End tests on a complete stack -│ └── deploy.yml # CD: Handles deployment to environments -├── e2e-tests/ # End-to-End test suite (e.g., Cypress, Playwright) -│ ├── cypress/ # Test code -│ └── cypress.config.js -├── environments/ # Environment-specific configurations -│ ├── staging/ -│ │ ├── docker-compose.yml # Docker Compose file for the Staging environment -│ │ └── .env.example -│ └── production/ -│ ├── docker-compose.yml # Docker Compose file for the Production environment -│ └── .env.example -├── scripts/ # Deployment and utility scripts -│ ├── deploy-staging.sh -│ └── deploy-prod.sh -└── README.md # Main project README: explains the overall architecture -``` - -**Key Responsibilities:** -* To define the composition of services for each environment (Staging, Production). -* To run End-to-End tests that validate the integration between services. -* To manage the Continuous Deployment (CD) process. - ## 3. Branching Strategy: Git Flow To manage code development and releases in a structured manner, we use the **Git Flow** branching model. diff --git a/documentation/tests_documentation/integration_tests/test_sampler_helper.md b/documentation/tests_documentation/integration_tests/test_sampler_helper.md new file mode 100644 index 0000000..9084ed8 --- /dev/null +++ b/documentation/tests_documentation/integration_tests/test_sampler_helper.md @@ -0,0 +1,50 @@ +Below is a guided walkthrough of **`tests/unit/simulation/test_sampler_helper.py`**, explaining core ideas and each test’s intent. + +--- + +## File purpose + +This file verifies that your three helper functions— + +* `uniform_variable_generator` +* `poisson_variable_generator` +* `truncated_gaussian_generator` + +—correctly delegate to whatever RNG you pass in, and fall back to NumPy’s default RNG when you don’t provide one. + +--- + +## Key testing patterns + +1. **Dependency injection via `rng`** + Each helper takes an `rng` parameter. In production you’ll pass a `np.random.Generator`; in tests we inject a **`DummyRNG`** with predictable outputs to make our tests **deterministic**. + +2. **Duck typing** + Python doesn’t require `rng` to be a specific class—only that it implements the required methods (`random()`, `poisson(mean)`, `normal(mean, sigma)`). Our `DummyRNG` simply implements those three methods. + +3. **`typing.cast` for static typing** + We wrap `DummyRNG` instances in `cast("np.random.Generator", DummyRNG(...))` so mypy sees them as satisfying the generator type, but at runtime they remain our dummy. + +--- + +## Test-by-test breakdown + +| Test name | What it checks | +| -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| **`test_uniform_variable_generator_with_dummy_rng`** | Passing a `DummyRNG(uniform_value=0.75)`, `rng.random()` returns 0.75 → helper must return exactly 0.75. | +| **`test_uniform_variable_generator_default_rng_range`** | Without supplying `rng`, the helper uses `default_rng()`. We call it 100× to ensure it always returns a `float` in \[0.0, 1.0). | +| **`test_poisson_variable_generator_with_dummy_rng`** | With `DummyRNG(poisson_value=3)`, `rng.poisson(mean)` yields 3 → helper returns 3. | +| **`test_poisson_variable_generator_reproducible`** | Two NumPy generators created with the same seed (`12345`) must produce the same Poisson sample for `mean=10.0`. | +| **`test_truncated_gaussian_generator_truncates_negative`** | `DummyRNG(normal_value=-2.7)` forces a negative draw: helper must clamp it to **0**. | +| **`test_truncated_gaussian_generator_truncates_toward_zero`** | `DummyRNG(normal_value=3.9)` forces a positive draw: helper must cast/round toward zero (int(3.9) → **3**). | +| **`test_truncated_gaussian_generator_default_rng_non_negative_int`** | With a real seeded RNG, helper must produce **some** non-negative `int` (verifies default fallback path is valid). | + +--- + +## Why this matters + +* **Deterministic behavior**: by forcing the RNG’s output via `DummyRNG`, we can assert exactly how our helpers transform that value (clamping, rounding, type conversion). +* **Fallbacks work**: tests with **no** `rng` verify that calling `default_rng()` still gives valid outputs of the correct type and range. +* **Type safety**: using `cast(...)` silences mypy errors while still executing our dummy logic at runtime—ensuring we meet both static‐typing and functional correctness goals. + +With this suite, you have **full confidence** that your sampling helpers behave correctly under both controlled (dummy) and uncontrolled (default) RNG conditions. diff --git a/documentation/tests_documentation/integration_tests/test_simulation_input.md b/documentation/tests_documentation/integration_tests/test_simulation_input.md new file mode 100644 index 0000000..f555571 --- /dev/null +++ b/documentation/tests_documentation/integration_tests/test_simulation_input.md @@ -0,0 +1,93 @@ +Below an explanation for the unit tests in the file `tests/unit/simulation/test_simulation_input.py` + +### 1. `test_normal_sets_variance_to_mean` + +**Purpose:** +Checks that when you create an `RVConfig` with `distribution="normal"` and omit the `variance` field, the model automatically sets `variance = mean`. + +* Verifies the “default variance” logic in the post‐init validator. + +--- + +### 2. `test_poisson_keeps_variance_none` + +**Purpose:** +Ensures that if you choose the Poisson distribution (`distribution="poisson"`) and do **not** supply a variance, the model **does not** fill in any default variance (keeps it `None`). + +* Confirms that defaulting only applies to “normal”/“gaussian,” not to Poisson. + +--- + +### 3. `test_explicit_variance_is_preserved` + +**Purpose:** +Validates that if you explicitly pass a `variance` value—even for a distribution that would normally default—it remains exactly what you provided, and is coerced to float. + +* Guards against accidental overwriting of user‐supplied variance. + +--- + +### 4. `test_mean_must_be_numeric` + +**Purpose:** +Verifies that giving a non‐numeric `mean` (e.g. a string) raises a `ValidationError` with our custom message `"mean must be a number"`. + +* Tests the “before” validator on the `mean` field for type checking and coercion. + +--- + +### 5. `test_missing_mean_field` + +**Purpose:** +Ensures that completely omitting the `mean` key triggers a standard “field required” error. + +* Confirms that `mean` is mandatory in the schema. + +--- + +### 6. `test_gaussian_sets_variance_to_mean` + +**Purpose:** +Exactly like the “normal” test above, but for `distribution="gaussian"`. + +* Demonstrates that “gaussian” is treated as an alias for “normal” in the default‐variance logic. + +--- + +### 7. `test_default_distribution_is_poisson` + +**Purpose:** +Checks two things simultaneously: + +1. When you omit `distribution`, it defaults to `"poisson"`. +2. In that default‐poisson case, `variance` remains `None`. + +* Validates both the default distribution and its variance behavior in one test. + +--- + +### 8. `test_explicit_variance_kept_for_poisson` + +**Purpose:** +Confirms that even if you supply a `variance` when `distribution="poisson"`, the model preserves it rather than discarding it or forcing it back to `None`. + +* Provides symmetry to the “explicit variance” test for non‐Poisson cases. + +--- + +### 9. `test_invalid_distribution_raises` + +**Purpose:** +Ensures that passing a value for `distribution` outside of the allowed literals (`"poisson"`, `"normal"`, `"gaussian"`) results in a `ValidationError`. + +* Confirms that the `Literal[...]` constraint on `distribution` is enforced. + +--- + +With these nine tests you fully cover: + +1. **Defaulting behavior** for both “normal” and “gaussian.” +2. **No‐op behavior** for Poisson defaults. +3. **Preservation** of explicit user input. +4. **Type‐checking** on required fields. +5. **Literal‐constraint** enforcement. diff --git a/poetry.lock b/poetry.lock index de1465a..b959392 100644 --- a/poetry.lock +++ b/poetry.lock @@ -661,6 +661,66 @@ files = [ {file = "mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558"}, ] +[[package]] +name = "numpy" +version = "2.3.1" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.11" +files = [ + {file = "numpy-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6ea9e48336a402551f52cd8f593343699003d2353daa4b72ce8d34f66b722070"}, + {file = "numpy-2.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ccb7336eaf0e77c1635b232c141846493a588ec9ea777a7c24d7166bb8533ae"}, + {file = "numpy-2.3.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:0bb3a4a61e1d327e035275d2a993c96fa786e4913aa089843e6a2d9dd205c66a"}, + {file = "numpy-2.3.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:e344eb79dab01f1e838ebb67aab09965fb271d6da6b00adda26328ac27d4a66e"}, + {file = "numpy-2.3.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:467db865b392168ceb1ef1ffa6f5a86e62468c43e0cfb4ab6da667ede10e58db"}, + {file = "numpy-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:afed2ce4a84f6b0fc6c1ce734ff368cbf5a5e24e8954a338f3bdffa0718adffb"}, + {file = "numpy-2.3.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0025048b3c1557a20bc80d06fdeb8cc7fc193721484cca82b2cfa072fec71a93"}, + {file = "numpy-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a5ee121b60aa509679b682819c602579e1df14a5b07fe95671c8849aad8f2115"}, + {file = "numpy-2.3.1-cp311-cp311-win32.whl", hash = "sha256:a8b740f5579ae4585831b3cf0e3b0425c667274f82a484866d2adf9570539369"}, + {file = "numpy-2.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:d4580adadc53311b163444f877e0789f1c8861e2698f6b2a4ca852fda154f3ff"}, + {file = "numpy-2.3.1-cp311-cp311-win_arm64.whl", hash = "sha256:ec0bdafa906f95adc9a0c6f26a4871fa753f25caaa0e032578a30457bff0af6a"}, + {file = "numpy-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2959d8f268f3d8ee402b04a9ec4bb7604555aeacf78b360dc4ec27f1d508177d"}, + {file = "numpy-2.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:762e0c0c6b56bdedfef9a8e1d4538556438288c4276901ea008ae44091954e29"}, + {file = "numpy-2.3.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:867ef172a0976aaa1f1d1b63cf2090de8b636a7674607d514505fb7276ab08fc"}, + {file = "numpy-2.3.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:4e602e1b8682c2b833af89ba641ad4176053aaa50f5cacda1a27004352dde943"}, + {file = "numpy-2.3.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:8e333040d069eba1652fb08962ec5b76af7f2c7bce1df7e1418c8055cf776f25"}, + {file = "numpy-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:e7cbf5a5eafd8d230a3ce356d892512185230e4781a361229bd902ff403bc660"}, + {file = "numpy-2.3.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5f1b8f26d1086835f442286c1d9b64bb3974b0b1e41bb105358fd07d20872952"}, + {file = "numpy-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ee8340cb48c9b7a5899d1149eece41ca535513a9698098edbade2a8e7a84da77"}, + {file = "numpy-2.3.1-cp312-cp312-win32.whl", hash = "sha256:e772dda20a6002ef7061713dc1e2585bc1b534e7909b2030b5a46dae8ff077ab"}, + {file = "numpy-2.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:cfecc7822543abdea6de08758091da655ea2210b8ffa1faf116b940693d3df76"}, + {file = "numpy-2.3.1-cp312-cp312-win_arm64.whl", hash = "sha256:7be91b2239af2658653c5bb6f1b8bccafaf08226a258caf78ce44710a0160d30"}, + {file = "numpy-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:25a1992b0a3fdcdaec9f552ef10d8103186f5397ab45e2d25f8ac51b1a6b97e8"}, + {file = "numpy-2.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7dea630156d39b02a63c18f508f85010230409db5b2927ba59c8ba4ab3e8272e"}, + {file = "numpy-2.3.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:bada6058dd886061f10ea15f230ccf7dfff40572e99fef440a4a857c8728c9c0"}, + {file = "numpy-2.3.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:a894f3816eb17b29e4783e5873f92faf55b710c2519e5c351767c51f79d8526d"}, + {file = "numpy-2.3.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:18703df6c4a4fee55fd3d6e5a253d01c5d33a295409b03fda0c86b3ca2ff41a1"}, + {file = "numpy-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5902660491bd7a48b2ec16c23ccb9124b8abfd9583c5fdfa123fe6b421e03de1"}, + {file = "numpy-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:36890eb9e9d2081137bd78d29050ba63b8dab95dff7912eadf1185e80074b2a0"}, + {file = "numpy-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a780033466159c2270531e2b8ac063704592a0bc62ec4a1b991c7c40705eb0e8"}, + {file = "numpy-2.3.1-cp313-cp313-win32.whl", hash = "sha256:39bff12c076812595c3a306f22bfe49919c5513aa1e0e70fac756a0be7c2a2b8"}, + {file = "numpy-2.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:8d5ee6eec45f08ce507a6570e06f2f879b374a552087a4179ea7838edbcbfa42"}, + {file = "numpy-2.3.1-cp313-cp313-win_arm64.whl", hash = "sha256:0c4d9e0a8368db90f93bd192bfa771ace63137c3488d198ee21dfb8e7771916e"}, + {file = "numpy-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:b0b5397374f32ec0649dd98c652a1798192042e715df918c20672c62fb52d4b8"}, + {file = "numpy-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c5bdf2015ccfcee8253fb8be695516ac4457c743473a43290fd36eba6a1777eb"}, + {file = "numpy-2.3.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:d70f20df7f08b90a2062c1f07737dd340adccf2068d0f1b9b3d56e2038979fee"}, + {file = "numpy-2.3.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:2fb86b7e58f9ac50e1e9dd1290154107e47d1eef23a0ae9145ded06ea606f992"}, + {file = "numpy-2.3.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:23ab05b2d241f76cb883ce8b9a93a680752fbfcbd51c50eff0b88b979e471d8c"}, + {file = "numpy-2.3.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ce2ce9e5de4703a673e705183f64fd5da5bf36e7beddcb63a25ee2286e71ca48"}, + {file = "numpy-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c4913079974eeb5c16ccfd2b1f09354b8fed7e0d6f2cab933104a09a6419b1ee"}, + {file = "numpy-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:010ce9b4f00d5c036053ca684c77441f2f2c934fd23bee058b4d6f196efd8280"}, + {file = "numpy-2.3.1-cp313-cp313t-win32.whl", hash = "sha256:6269b9edfe32912584ec496d91b00b6d34282ca1d07eb10e82dfc780907d6c2e"}, + {file = "numpy-2.3.1-cp313-cp313t-win_amd64.whl", hash = "sha256:2a809637460e88a113e186e87f228d74ae2852a2e0c44de275263376f17b5bdc"}, + {file = "numpy-2.3.1-cp313-cp313t-win_arm64.whl", hash = "sha256:eccb9a159db9aed60800187bc47a6d3451553f0e1b08b068d8b277ddfbb9b244"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:ad506d4b09e684394c42c966ec1527f6ebc25da7f4da4b1b056606ffe446b8a3"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_arm64.whl", hash = "sha256:ebb8603d45bc86bbd5edb0d63e52c5fd9e7945d3a503b77e486bd88dde67a19b"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_x86_64.whl", hash = "sha256:15aa4c392ac396e2ad3d0a2680c0f0dee420f9fed14eef09bdb9450ee6dcb7b7"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c6e0bf9d1a2f50d2b65a7cf56db37c095af17b59f6c132396f7c6d5dd76484df"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:eabd7e8740d494ce2b4ea0ff05afa1b7b291e978c0ae075487c51e8bd93c0c68"}, + {file = "numpy-2.3.1-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:e610832418a2bc09d974cc9fecebfa51e9532d6190223bc5ef6a7402ebf3b5cb"}, + {file = "numpy-2.3.1.tar.gz", hash = "sha256:1ec9ae20a4226da374362cca3c62cd753faf2f951440b0e3b98e93c235441d2b"}, +] + [[package]] name = "packaging" version = "25.0" @@ -1127,6 +1187,17 @@ files = [ {file = "ruff-0.12.1.tar.gz", hash = "sha256:806bbc17f1104fd57451a98a58df35388ee3ab422e029e8f5cf30aa4af2c138c"}, ] +[[package]] +name = "simpy" +version = "4.1.1" +description = "Event discrete, process based simulation for Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "simpy-4.1.1-py3-none-any.whl", hash = "sha256:7c5ae380240fd2238671160e4830956f8055830a8317edf5c05e495b3823cd88"}, + {file = "simpy-4.1.1.tar.gz", hash = "sha256:06d0750a7884b11e0e8e20ce0bc7c6d4ed5f1743d456695340d13fdff95001a6"}, +] + [[package]] name = "sniffio" version = "1.3.1" @@ -1589,4 +1660,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.12" -content-hash = "387c837941fad4e69a6a11d22f94c0b0ac3f5d2688fe196b31a9beb3a00b3dbe" +content-hash = "71f5d3bb002c33ab3bad9d5e9efadc144b033c272b4319c2686728026dd5d849" diff --git a/pyproject.toml b/pyproject.toml index 2d76c41..f5fc34a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool.poetry] -name = "project-backend" +name = "FastSim-backend" version = "0.1.0" -description = "solo professional project" +description = "Simulate fastapi event loop to manage resources" authors = ["Gioele Botta"] readme = "README.md" @@ -20,6 +20,8 @@ pydantic-settings = "^2.10.1" pydantic = {extras = ["email"], version = "^2.11.7"} asyncpg = "^0.30.0" sqlalchemy-utils = "^0.41.2" +numpy = "^2.3.1" +simpy = "^4.1.1" [tool.poetry.group.dev.dependencies] pytest = "^8.4.1" diff --git a/scripts/quality-check.sh b/scripts/quality-check.sh new file mode 100644 index 0000000..eb2a66f --- /dev/null +++ b/scripts/quality-check.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Lint & format with ruff, automatic corrections applied (--fix) +poetry run ruff check src tests --fix + +# Type‐check with mypy +poetry run mypy src tests + +echo "✅ Linting and type‐checking completed SUCCESSFULLY" \ No newline at end of file diff --git a/src/app/api/simulation.py b/src/app/api/simulation.py new file mode 100644 index 0000000..55081c6 --- /dev/null +++ b/src/app/api/simulation.py @@ -0,0 +1,18 @@ +""""Api to simulate the process""" + +import numpy as np +from fastapi import APIRouter + +from app.core.simulation.simulation_run import run_simulation +from app.schemas.simulation_input import SimulationInput +from app.schemas.simulation_output import SimulationOutput + +router = APIRouter() + +@router.post("/simulation") +async def event_loop_simulation(input_data: SimulationInput) -> SimulationOutput: + """Run the simulation and return aggregate KPIs.""" + rng = np.random.default_rng() + return run_simulation(input_data, rng=rng) + + diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 14ed238..fb0c231 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,4 +1,11 @@ """Application constants and configuration values.""" +from enum import IntEnum +class TimeDefaults(IntEnum): + """Default time-related constants (all in seconds).""" + + MIN_TO_SEC = 60 # 1 minute → 60 s + SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s + SIMULATION_HORIZON = 3_600 # run 1 h if user gives no other value diff --git a/src/app/core/auth_helpers.py b/src/app/core/auth_helpers.py deleted file mode 100644 index 4a3437a..0000000 --- a/src/app/core/auth_helpers.py +++ /dev/null @@ -1,62 +0,0 @@ -"""helper functions for the auth process""" - -import string -from typing import cast - -from passlib.context import CryptContext - -MAX_PASSWORD_LENGTH = 128 # prevent DoS -MIN_PASSWORD_LENGTH = 8 -SPECIAL_CHARS = set(string.punctuation) - -pwd_context = CryptContext( - schemes=["argon2"], - deprecated="auto", - -) - -def is_password_safe(password: str) -> bool: - """Function to verify if a password is safe""" - has_upper = False - has_lower = False - has_digit = False - has_special = False - - if len(password) < MIN_PASSWORD_LENGTH or len(password) > MAX_PASSWORD_LENGTH: - return False - - for char in password: - if char.isupper(): - has_upper = True - elif char.islower(): - has_lower = True - elif char.isdigit(): - has_digit = True - elif char in SPECIAL_CHARS: - has_special = True - - if has_upper and has_lower and has_digit and has_special: - return True - - return False - - -def verify_passwords_equality(password: str, confirmed_password: str) -> bool: - """Verify if the passwords given in the registration form are equivalent.""" - return password == confirmed_password - - -def hash_password(password: str) -> str: - """ - Receive the password - give back the hashed password - """ - return cast("str", pwd_context.hash(password)) - - -def verify_hashed_pwd_plain_pwd_equality(plain_pwd: str, hashed_pwd: str) -> bool: - """ - Verify during the login if the plain password - correspond to the hashed password - """ - return cast("bool", pwd_context.verify(plain_pwd, hashed_pwd)) diff --git a/src/app/core/event_samplers/common_helpers.py b/src/app/core/event_samplers/common_helpers.py new file mode 100644 index 0000000..0f80870 --- /dev/null +++ b/src/app/core/event_samplers/common_helpers.py @@ -0,0 +1,33 @@ +"""Helpers function for the request generator""" + + +import numpy as np + + +def uniform_variable_generator(rng: np.random.Generator | None = None) -> float: + """Return U~Uniform(0, 1).""" + rng = rng or np.random.default_rng() + return float(rng.random()) + + +def poisson_variable_generator( + mean: float, + rng: np.random.Generator | None = None, +) -> int: + """Return a Poisson-distributed integer with expectation *mean*.""" + rng = rng or np.random.default_rng() + return int(rng.poisson(mean)) + + +def truncated_gaussian_generator( + mean: float, + variance: float, + rng: np.random.Generator, +) -> int: + """ + Generate a Normal-distributed variable + with mean and variance + """ + rng = rng or np.random.default_rng() + value = rng.normal(mean, variance) + return max(0, int(value)) diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py new file mode 100644 index 0000000..2239626 --- /dev/null +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -0,0 +1,98 @@ +""" +event sampler in the case of gaussian distribution +for concurrent user and poisson distribution for rqs per minute per user. +The rationale behind this choice is about considering scenario +with variance bigger or smaller w.r.t the one inherited from +the Poisson distribution +""" + +import math +from collections.abc import Generator + +import numpy as np + +from app.config.constants import TimeDefaults +from app.core.event_samplers.common_helpers import ( + truncated_gaussian_generator, + uniform_variable_generator, +) +from app.schemas.simulation_input import SimulationInput + + +def gaussian_poisson_sampling( + input_data: SimulationInput, + *, + sampling_window_s: int = TimeDefaults.SAMPLING_WINDOW.value, + rng: np.random.Generator | None = None, +) -> Generator[float, None, None]: + """ + Yield inter-arrival gaps (seconds) for the compound Gaussian-Poisson process. + + Algorithm + --------- + 1. Every *sampling_window_s* seconds, draw + U ~ Gaussian(mean_concurrent_user, variance). + 2. Compute the aggregate rate + Λ = U * (mean_req_per_minute_per_user / 60) [req/s]. + 3. While inside the current window, draw gaps + Δt ~ Exponential(Λ) using inverse-CDF. + 4. Stop once the virtual clock exceeds *simulation_time*. + """ + rng = rng or np.random.default_rng() + + simulation_time = input_data.total_simulation_time + # pydantic in the validation assign a value and mypy is not + # complaining because a None cannot be compared in the loop + # to a float + assert simulation_time is not None + + # λ_u : mean concurrent users per window + mean_concurrent_user = float(input_data.avg_active_users.mean) + + # Let's be sure that the variance is not None (guaranteed from pydantic) + variance_concurrent_user = input_data.avg_active_users.variance + assert variance_concurrent_user is not None + variance_concurrent_user = float(variance_concurrent_user) + + # λ_r / 60 : mean req/s per user + mean_req_per_sec_per_user = ( + float( + input_data.avg_request_per_minute_per_user.mean) + / TimeDefaults.MIN_TO_SEC.value + ) + + now = 0.0 # virtual clock (s) + window_end = 0.0 # end of the current user window + lam = 0.0 # aggregate rate Λ (req/s) + + while now < simulation_time: + # (Re)sample U at the start of each window + if now >= window_end: + window_end = now + float(sampling_window_s) + users = truncated_gaussian_generator( + mean_concurrent_user, + variance_concurrent_user, + rng, + ) + lam = users * mean_req_per_sec_per_user + + # No users → fast-forward to next window + if lam <= 0.0: + now = window_end + continue + + # Exponential gap from a protected uniform value + u_raw = max(uniform_variable_generator(rng), 1e-15) + delta_t = -math.log(1.0 - u_raw) / lam + + # End simulation if the next event exceeds the horizon + if now + delta_t > simulation_time: + break + + # If the gap crosses the window boundary, jump to it + if now + delta_t >= window_end: + now = window_end + continue + + now += delta_t + yield delta_t diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py new file mode 100644 index 0000000..37c2da5 --- /dev/null +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -0,0 +1,86 @@ +""" +event sampler in the case of poisson distribution +both for concurrent user and rqs per minute per user +""" + +import math +from collections.abc import Generator + +import numpy as np + +from app.config.constants import TimeDefaults +from app.core.event_samplers.common_helpers import ( + poisson_variable_generator, + uniform_variable_generator, +) +from app.schemas.simulation_input import SimulationInput + + +def poisson_poisson_sampling( + input_data: SimulationInput, + *, + sampling_window_s: int = TimeDefaults.SAMPLING_WINDOW.value, + rng: np.random.Generator | None = None, +) -> Generator[float, None, None]: + """ + Yield inter-arrival gaps (seconds) for the compound Poisson-Poisson process. + + Algorithm + --------- + 1. Every *sampling_window_s* seconds, draw + U ~ Poisson(mean_concurrent_user). + 2. Compute the aggregate rate + Λ = U * (mean_req_per_minute_per_user / 60) [req/s]. + 3. While inside the current window, draw gaps + Δt ~ Exponential(Λ) using inverse-CDF. + 4. Stop once the virtual clock exceeds *simulation_time*. + """ + rng = rng or np.random.default_rng() + + simulation_time = input_data.total_simulation_time + # pydantic in the validation assign a value and mypy is not + # complaining because a None cannot be compared in the loop + # to a float + assert simulation_time is not None + + # λ_u : mean concurrent users per window + mean_concurrent_user = float(input_data.avg_active_users.mean) + + # λ_r / 60 : mean req/s per user + mean_req_per_sec_per_user = ( + float( + input_data.avg_request_per_minute_per_user.mean) + / TimeDefaults.MIN_TO_SEC.value + ) + + now = 0.0 # virtual clock (s) + window_end = 0.0 # end of the current user window + lam = 0.0 # aggregate rate Λ (req/s) + + while now < simulation_time: + # (Re)sample U at the start of each window + if now >= window_end: + window_end = now + float(sampling_window_s) + users = poisson_variable_generator(mean_concurrent_user, rng) + lam = users * mean_req_per_sec_per_user + + # No users → fast-forward to next window + if lam <= 0.0: + now = window_end + continue + + # Exponential gap from a protected uniform value + u_raw = max(uniform_variable_generator(rng), 1e-15) + delta_t = -math.log(1.0 - u_raw) / lam + + # End simulation if the next event exceeds the horizon + if now + delta_t > simulation_time: + break + + # If the gap crosses the window boundary, jump to it + if now + delta_t >= window_end: + now = window_end + continue + + now += delta_t + yield delta_t diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/simulation/requests_generator.py new file mode 100644 index 0000000..0da1c1c --- /dev/null +++ b/src/app/core/simulation/requests_generator.py @@ -0,0 +1,51 @@ +""" +Continuous-time event sampling for the Poisson-Poisson +and Gaussian-Poisson workload model. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling +from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling + +if TYPE_CHECKING: + from collections.abc import Generator + + import numpy as np + + from app.schemas.simulation_input import SimulationInput + + +def requests_generator( + input_data: SimulationInput, + *, + rng: np.random.Generator | None = None, +) -> Generator[float, None, None]: + """ + Return an iterator of inter-arrival gaps (seconds) according to the model + chosen in *input_data*. + + Notes + ----- + * If ``avg_active_users.distribution`` is ``"gaussian"`` or ``"normal"``, + the Gaussian-Poisson sampler is used. + * Otherwise the default Poisson-Poisson sampler is returned. + + """ + dist = input_data.avg_active_users.distribution.lower() + + if dist in {"gaussian", "normal"}: + #Gaussian-Poisson model + return gaussian_poisson_sampling( + input_data=input_data, + rng=rng, + + ) + + # Poisson + Poisson + return poisson_poisson_sampling( + input_data=input_data, + rng=rng, + ) diff --git a/src/app/core/simulation/simulation_run.py b/src/app/core/simulation/simulation_run.py new file mode 100644 index 0000000..b2f72f3 --- /dev/null +++ b/src/app/core/simulation/simulation_run.py @@ -0,0 +1,56 @@ +"""simulation of the server""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import simpy + +from app.core.simulation.requests_generator import requests_generator +from app.schemas.simulation_output import SimulationOutput + +if TYPE_CHECKING: + from collections.abc import Generator + + import numpy as np + + from app.schemas.simulation_input import SimulationInput + + + + +def run_simulation( + data: SimulationInput, + *, + rng: np.random.Generator, +) -> SimulationOutput: + """Simulation executor in Simpy""" + gaps: Generator[float, None, None] = requests_generator(data, rng=rng) + env = simpy.Environment() + + simulation_time = data.total_simulation_time + # pydantic in the validation assign a value and mypy is not + # complaining because a None cannot be compared in the loop + # to a float + assert simulation_time is not None + + total_request_per_time_period = { + "simulation_time": simulation_time, + "total_requests": 0, + } + + def arrival_process( + env: simpy.Environment, + ) -> Generator[simpy.events.Event, None, None]: + for gap in gaps: + yield env.timeout(gap) + total_request_per_time_period["total_requests"] += 1 + + env.process(arrival_process(env)) + env.run(until=simulation_time) + + return SimulationOutput( + total_requests=total_request_per_time_period, + metric_2=str(data.avg_request_per_minute_per_user.mean), + metric_n=str(data.avg_active_users.mean), + ) diff --git a/src/app/main.py b/src/app/main.py index 4a78144..b5ef876 100644 --- a/src/app/main.py +++ b/src/app/main.py @@ -5,7 +5,6 @@ from fastapi import FastAPI - from app.api.health_check import router as health_router from app.config.settings import settings from app.db.init_db import close_engine, init_models diff --git a/src/app/schemas/simulation_input.py b/src/app/schemas/simulation_input.py new file mode 100644 index 0000000..2197be1 --- /dev/null +++ b/src/app/schemas/simulation_input.py @@ -0,0 +1,58 @@ +"""Define the schemas for the simulator""" + +from typing import Literal + +from pydantic import BaseModel, field_validator, model_validator + +from app.config.constants import TimeDefaults + + +class RVConfig(BaseModel): + """class to configure random variables""" + + mean: float + distribution: Literal["poisson", "normal", "gaussian"] = "poisson" + variance: float | None = None + + @field_validator("mean", mode="before") + def check_mean_is_number( + cls, # noqa: N805 + v: object, + ) -> float: + """Ensure `mean` is numeric, then coerce to float.""" + err_msg = "mean must be a number (int or float)" + if not isinstance(v, (float, int)): + raise ValueError(err_msg) # noqa: TRY004 + return float(v) + + @model_validator(mode="after") # type: ignore[arg-type] + def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 + """Set variance = mean when distribution == 'normal' and variance is missing.""" + if model.variance is None and model.distribution in {"normal", "gaussian"}: + model.variance = model.mean + return model + +class SimulationInput(BaseModel): + """Define the expected variables for the simulation""" + + avg_active_users: RVConfig + avg_request_per_minute_per_user: RVConfig + total_simulation_time: int | None = None + + @field_validator("total_simulation_time", mode="before") + def check_simulation_time(cls, v: object) -> int: # noqa: N805 + """ + Assign constant value to total sim time if is None + check if it is of the right type + impose a lower boundary for the simulation + """ + if v is None: + v = TimeDefaults.SIMULATION_HORIZON.value + if not isinstance(v, int): + err_msg_type = "the simulation time must be an integer" + raise ValueError(err_msg_type) # noqa: TRY004 + if v <= 60: + err_msg_val = "the simulation must be at least 60 seconds" + raise ValueError(err_msg_val) + return v + diff --git a/src/app/schemas/simulation_output.py b/src/app/schemas/simulation_output.py new file mode 100644 index 0000000..b02c172 --- /dev/null +++ b/src/app/schemas/simulation_output.py @@ -0,0 +1,12 @@ +"""Define the output of the simulation""" + +from pydantic import BaseModel + + +class SimulationOutput(BaseModel): + """Define the output of the simulation""" + + total_requests: dict[str, int | float] + metric_2: str + #...... + metric_n: str diff --git a/tests/integration/db_initialization/test_init_models.py b/tests/integration/db_initialization/test_init_models.py index 05721eb..204f478 100644 --- a/tests/integration/db_initialization/test_init_models.py +++ b/tests/integration/db_initialization/test_init_models.py @@ -14,4 +14,4 @@ async def test_users_table_exists_after_migrations() -> None: await conn.execute(text("SELECT 1")) except SQLAlchemyError: pytest.fail("Database connection or Alembic setup failed.") - + diff --git a/tests/unit/sampler/test_sampler_helper.py b/tests/unit/sampler/test_sampler_helper.py new file mode 100644 index 0000000..0222196 --- /dev/null +++ b/tests/unit/sampler/test_sampler_helper.py @@ -0,0 +1,130 @@ +from typing import cast + +import numpy as np + +from app.core.event_samplers.common_helpers import ( + poisson_variable_generator, + truncated_gaussian_generator, + uniform_variable_generator, +) + + +class DummyRNG: + """Dummy RNG for testing: returns fixed values for random(), poisson(), normal().""" + + def __init__( + self, + uniform_value: float | None = None, + poisson_value: int | None = None, + normal_value: float | None = None, + ) -> None: + """ + Initialize the dummy RNG with optional preset outputs. + + Args: + uniform_value: value to return from random(), if not None. + poisson_value: value to return from poisson(), if not None. + normal_value: value to return from normal(), if not None. + + """ + self.uniform_value = uniform_value + self.poisson_value = poisson_value + self.normal_value = normal_value + + def random(self) -> float: + """ + Return the preset uniform_value or fall back to a real RNG. + + Returns: + A float in [0.0, 1.0). + + """ + if self.uniform_value is not None: + return self.uniform_value + return np.random.default_rng().random() + + def poisson(self, mean: float) -> int: + """ + Return the preset poisson_value or fall back to a real RNG. + + Args: + mean: the λ parameter for a Poisson draw (ignored if poisson_value is set). + + Returns: + An integer sample from a Poisson distribution. + + """ + if self.poisson_value is not None: + return self.poisson_value + return int(np.random.default_rng().poisson(mean)) + + def normal(self, mean: float, sigma: float) -> float: + """ + Return the preset normal_value or fall back to a real RNG. + + Args: + mean: the mean of the Normal distribution. + sigma: the standard deviation of the Normal distribution. + + Returns: + A float sample from a Normal distribution. + + """ + if self.normal_value is not None: + return self.normal_value + return float(np.random.default_rng().normal(mean, sigma)) + + +def test_uniform_variable_generator_with_dummy_rng() -> None: + """Ensure uniform_variable_generator returns the dummy RNGs uniform_value.""" + dummy = cast("np.random.Generator", DummyRNG(uniform_value=0.75)) + assert uniform_variable_generator(dummy) == 0.75 + + +def test_uniform_variable_generator_default_rng_range() -> None: + """Ensure the default RNG produces a float in [0.0, 1.0).""" + for _ in range(100): + val = uniform_variable_generator() + assert isinstance(val, float) + assert 0.0 <= val < 1.0 + + +def test_poisson_variable_generator_with_dummy_rng() -> None: + """Ensure poisson_variable_generator returns the dummy RNGs poisson_value.""" + dummy = cast("np.random.Generator", DummyRNG(poisson_value=3)) + assert poisson_variable_generator(mean=5.0, rng=dummy) == 3 + + +def test_poisson_variable_generator_reproducible() -> None: + """Ensure two generators with the same seed produce the same Poisson sample.""" + rng1 = np.random.default_rng(12345) + rng2 = np.random.default_rng(12345) + v1 = poisson_variable_generator(mean=10.0, rng=rng1) + v2 = poisson_variable_generator(mean=10.0, rng=rng2) + assert v1 == v2 + + +def test_truncated_gaussian_generator_truncates_negative() -> None: + """Ensure truncated_gaussian_generator clamps negative draws to zero.""" + dummy = cast("np.random.Generator", DummyRNG(normal_value=-2.7)) + result = truncated_gaussian_generator(mean=10.0, variance=5.0, rng=dummy) + assert result == 0 + + +def test_truncated_gaussian_generator_truncates_toward_zero() -> None: + """Ensure truncated_gaussian_generator rounds toward zero for positive draws.""" + dummy = cast("np.random.Generator", DummyRNG(normal_value=3.9)) + result = truncated_gaussian_generator(mean=10.0, variance=5.0, rng=dummy) + assert isinstance(result, int) + assert result == 3 + + +def test_truncated_gaussian_generator_default_rng_non_negative_int() -> None: + """ + Ensure the default RNG produces + a non-negative integer from the truncated Gaussian. + """ + rng = np.random.default_rng(321) + val = truncated_gaussian_generator(mean=10.0, variance=2.0, rng=rng) + assert isinstance(val, int) + assert val >= 0 diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py new file mode 100644 index 0000000..e7fad85 --- /dev/null +++ b/tests/unit/simulation/test_requests_generator.py @@ -0,0 +1,198 @@ +"""Unit test to verify the behaviour of the rqs generator""" + +from __future__ import annotations + +from types import GeneratorType +from typing import TYPE_CHECKING + +import numpy as np +import pytest + +from app.core.simulation.requests_generator import requests_generator +from app.core.simulation.simulation_run import run_simulation +from app.schemas.simulation_input import SimulationInput + +if TYPE_CHECKING: + + from collections.abc import Iterator + + from app.schemas.simulation_output import SimulationOutput + +# -------------------------------------------------------------- +# TESTS INPUT +# -------------------------------------------------------------- + +@pytest.fixture +def base_input() -> SimulationInput: + """Return a SimulationInput with a 120-second simulation horizon.""" + return SimulationInput( + avg_active_users={"mean": 1.0}, + avg_request_per_minute_per_user={"mean": 2.0}, + total_simulation_time=120, + ) + +# -------------------------------------------------------------- +# REQUESTS GENERATOR FUNCTION TESTS +# -------------------------------------------------------------- + +def test_default_requests_generator_uses_poisson_poisson_sampling( + base_input: SimulationInput, +) -> None: + """ + Verify that when avg_active_users.distribution is the default 'poisson', + requests_generator returns an iterator whose code object is from + poisson_poisson_sampling. + """ + rng = np.random.default_rng(0) + gen = requests_generator(base_input, rng=rng) + # It must be a generator. + assert isinstance(gen, GeneratorType) + + # Internally, it should call poisson_poisson_sampling. + assert gen.gi_code.co_name == "poisson_poisson_sampling" + +@pytest.mark.parametrize( + ("dist", "expected_sampler"), + [ + ("poisson", "poisson_poisson_sampling"), + ("normal", "gaussian_poisson_sampling"), + ("gaussian", "gaussian_poisson_sampling"), + ], +) +def test_requests_generator_dispatches_to_correct_sampler( + dist: str, + expected_sampler: str, +) -> None: + """ + Verify that requests_generator returns a generator whose code object + comes from the appropriate sampler function based on distribution: + - 'poisson' → poisson_poisson_sampling + - 'normal' → gaussian_poisson_sampling + - 'gaussian'→ gaussian_poisson_sampling + """ + input_data = SimulationInput( + avg_active_users={"mean": 1.0, "distribution": dist}, + avg_request_per_minute_per_user={"mean": 1.0}, + total_simulation_time=120, # Must be > 60 to pass schema validation + ) + rng = np.random.default_rng(0) + gen = requests_generator(input_data, rng=rng) + + # It must be a generator object. + assert isinstance(gen, GeneratorType) + # Check which underlying sampler function produced it. + assert gen.gi_code.co_name == expected_sampler + +# -------------------------------------------------------------- +# REQUESTS GENERATOR INSIDE SIMULATION TESTS +# -------------------------------------------------------------- + +def test_run_simulation_counts_events_up_to_horizon( + monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, +) -> None: + """ + Verify that all events whose cumulative inter-arrival times + fall within the simulation horizon are counted. + For gaps [1, 2, 3, 4], cumulative times [1, 3, 6, 10] + yield 4 events by t=10. + """ + def fake_requests_generator_fixed( + data: SimulationInput, *, rng: np.random.Generator, + ) -> Iterator[float]: + # Replace the complex Poisson-Poisson sampler with a deterministic sequence. + yield from [1.0, 2.0, 3.0, 4.0] + + # Monkeypatch the internal requests_generator to use our simple generator. + monkeypatch.setattr( + "app.core.simulation.simulation_run.requests_generator", + fake_requests_generator_fixed, + ) + + # The rng argument is unused in this deterministic test. + rng = np.random.default_rng(42) + output: SimulationOutput = run_simulation(base_input, rng=rng) + + assert output.total_requests["total_requests"] == 4 + # The returned metrics should reflect the input means as strings. + assert output.metric_2 == str(base_input.avg_request_per_minute_per_user.mean) + assert output.metric_n == str(base_input.avg_active_users.mean) + + +def test_run_simulation_includes_event_at_exact_horizon( + monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, +) -> None: + """ + Confirm that an event scheduled exactly at the simulation horizon + is not processed, since SimPy stops at t == horizon. + """ + def fake_generator_at_horizon( + data: SimulationInput, *, rng: np.random.Generator, + ) -> Iterator[float]: + + # mypy assertion, pydantic guaranteed + assert base_input.total_simulation_time is not None + # Yield a single event at exactly t == simulation_time. + yield float(base_input.total_simulation_time) + + monkeypatch.setattr( + "app.core.simulation.simulation_run.requests_generator", + fake_generator_at_horizon, + ) + + rng = np.random.default_rng(123) + output: SimulationOutput = run_simulation(base_input, rng=rng) + + # SimPy does not execute events scheduled exactly at the stop time. + assert output.total_requests["total_requests"] == 0 + + +def test_run_simulation_excludes_event_beyond_horizon( + monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, +) -> None: + """ + Ensure that events scheduled after the simulation horizon + are not counted. + """ + def fake_generator_beyond_horizon( + data: SimulationInput, *, rng: np.random.Generator, + ) -> Iterator[float]: + + # mypy assertion, pydantic guaranteed + assert base_input.total_simulation_time is not None + # Yield a single event just beyond the horizon. + yield float(base_input.total_simulation_time) + 0.1 + + monkeypatch.setattr( + "app.core.simulation.simulation_run.requests_generator", + fake_generator_beyond_horizon, + ) + + rng = np.random.default_rng(999) + output: SimulationOutput = run_simulation(base_input, rng=rng) + + assert output.total_requests["total_requests"] == 0 + + +def test_run_simulation_zero_events_when_generator_empty( + monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, +) -> None: + """ + Check that run_simulation reports zero requests when no + inter-arrival times are yielded. + """ + def fake_generator_empty( + data: SimulationInput, *, rng: np.random.Generator, + ) -> Iterator[float]: + # Empty generator yields nothing. + if False: + yield # pragma: no cover + + monkeypatch.setattr( + "app.core.simulation.simulation_run.requests_generator", + fake_generator_empty, + ) + + rng = np.random.default_rng(2025) + output: SimulationOutput = run_simulation(base_input, rng=rng) + + assert output.total_requests["total_requests"] == 0 diff --git a/tests/unit/simulation/test_simulation_input.py b/tests/unit/simulation/test_simulation_input.py new file mode 100644 index 0000000..20a32d9 --- /dev/null +++ b/tests/unit/simulation/test_simulation_input.py @@ -0,0 +1,93 @@ +import pytest +from pydantic import ValidationError + +from app.schemas.simulation_input import RVConfig, SimulationInput + + +def test_normal_sets_variance_to_mean() -> None: + """When distribution='normal' and variance is omitted, variance == mean.""" + cfg = RVConfig(mean=10, distribution="normal") + assert cfg.variance == 10.0 + + +def test_poisson_keeps_variance_none() -> None: + """When distribution='poisson' and variance is omitted, variance stays None.""" + cfg = RVConfig(mean=5, distribution="poisson") + assert cfg.variance is None + + +def test_explicit_variance_is_preserved() -> None: + """If the user supplies variance explicitly, it is preserved unchanged.""" + cfg = RVConfig(mean=8, distribution="normal", variance=4) + assert cfg.variance == 4.0 + + +def test_mean_must_be_numeric() -> None: + """A non-numeric mean raises a ValidationError with our custom message.""" + with pytest.raises(ValidationError) as excinfo: + RVConfig(mean="not a number", distribution="poisson") + + # Check that at least one error refers to the 'mean' field + assert any(err["loc"] == ("mean",) for err in excinfo.value.errors()) + assert "mean must be a number" in excinfo.value.errors()[0]["msg"] + + +def test_missing_mean_field() -> None: + """Omitting the mean field raises a 'field required' ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + # Using model_validate avoids the constructor signature check + RVConfig.model_validate({"distribution": "normal"}) + + assert any( + err["loc"] == ("mean",) and err["type"] == "missing" + for err in excinfo.value.errors() + ) + +def test_gaussian_sets_variance_to_mean() -> None: + """When distribution='gaussian' and variance is omitted, variance == mean.""" + cfg = RVConfig(mean=12.5, distribution="gaussian") + assert cfg.variance == pytest.approx(12.5) + + +def test_default_distribution_is_poisson() -> None: + """ + When distribution is omitted, it defaults to 'poisson' and + variance stays None. + """ + cfg = RVConfig(mean=3.3) + assert cfg.distribution == "poisson" + assert cfg.variance is None + + +def test_explicit_variance_kept_for_poisson() -> None: + """If the user supplies variance even for poisson, it is preserved.""" + cfg = RVConfig(mean=4.0, distribution="poisson", variance=2.2) + assert cfg.variance == pytest.approx(2.2) + + +def test_invalid_distribution_raises() -> None: + """Supplying a non-supported distribution literal raises ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + RVConfig(mean=5.0, distribution="not_a_dist") + + errors = excinfo.value.errors() + # Only assert there is at least one error for the 'distribution' field: + assert any(e["loc"] == ("distribution",) for e in errors) + + +def test_simulation_time_below_minimum_raises() -> None: + """ + Passing total_simulation_time <= 60 must raise a ValidationError, + because the minimum allowed simulation time is 61 seconds. + """ + with pytest.raises(ValidationError) as excinfo: + SimulationInput( + avg_active_users={"mean": 1.0}, + avg_request_per_minute_per_user={"mean": 1.0}, + total_simulation_time=60, # exactly at the boundary + ) + errors = excinfo.value.errors() + assert any( + err["loc"] == ("total_simulation_time",) and "at least 60 seconds" in err["msg"] + for err in errors + ) From 86501f95a07d7f324f0c76fc51e95896cd9beb7c Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Sun, 6 Jul 2025 15:46:09 +0200 Subject: [PATCH 09/35] minor changes --- tests/integration/db_initialization/test_init_models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/integration/db_initialization/test_init_models.py b/tests/integration/db_initialization/test_init_models.py index 05721eb..48389d0 100644 --- a/tests/integration/db_initialization/test_init_models.py +++ b/tests/integration/db_initialization/test_init_models.py @@ -1,7 +1,7 @@ import pytest from sqlalchemy import text -from sqlalchemy.ext.asyncio import create_async_engine from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.ext.asyncio import create_async_engine from app.config.settings import settings From 5c6f5db3a5967d58910c690e3e9acdd9c9a1ab02 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Thu, 10 Jul 2025 17:30:08 +0200 Subject: [PATCH 10/35] Features/event generator documentation test improvements (#2) * moving file to correct folder * Documentation added * Update requests_generator.md * test Added, introduced constants for the sampling window * Update tests/unit/sampler/test_poisson_posson.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- documentation/FASTSIM_VISION.md | 41 +++ .../requests_generator.md | 281 ++++++++++++++++++ .../test_sampler_helper.md | 0 .../test_simulation_input.md | 0 src/app/config/constants.py | 9 +- .../core/event_samplers/gaussian_poisson.py | 5 +- .../core/event_samplers/poisson_poisson.py | 5 +- src/app/core/simulation/simulation_run.py | 10 +- src/app/schemas/simulation_input.py | 39 +-- tests/unit/sampler/test_gaussian_poisson.py | 93 ++++++ tests/unit/sampler/test_poisson_posson.py | 119 ++++++++ .../simulation/test_events_generator_input.py | 210 +++++++++++++ .../simulation/test_requests_generator.py | 5 +- .../unit/simulation/test_simulation_input.py | 93 ------ 14 files changed, 784 insertions(+), 126 deletions(-) create mode 100644 documentation/FASTSIM_VISION.md create mode 100644 documentation/backend_documentation/requests_generator.md rename documentation/tests_documentation/{integration_tests => unit_tests}/test_sampler_helper.md (100%) rename documentation/tests_documentation/{integration_tests => unit_tests}/test_simulation_input.md (100%) create mode 100644 tests/unit/sampler/test_gaussian_poisson.py create mode 100644 tests/unit/sampler/test_poisson_posson.py create mode 100644 tests/unit/simulation/test_events_generator_input.py delete mode 100644 tests/unit/simulation/test_simulation_input.py diff --git a/documentation/FASTSIM_VISION.md b/documentation/FASTSIM_VISION.md new file mode 100644 index 0000000..7119807 --- /dev/null +++ b/documentation/FASTSIM_VISION.md @@ -0,0 +1,41 @@ +## 1 Why FastSim? + +FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **FastSim** fills that gap by becoming a **digital twin** of your actual service: + +* It **replays** your FastAPI + Uvicorn event-loop behavior in SimPy, generating exactly the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. +* It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. +* It **outputs** the very metrics you’d scrape in production (p50/p95/p99 latency, ready-queue lag, current & max concurrency, throughput, cost per LLM call), but entirely offline, in seconds. + +With FastSim you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. + +**Outcome:** data-driven capacity planning, early performance tuning, and far fewer “surprises” once you hit production. + +--- + +## 2 Project Goals + +| # | Goal | Practical Outcome | +| - | ------------------------- | ------------------------------------------------------------------------ | +| 1 | **Pre-production sizing** | Know core-count, pool-size, replica-count to hit SLA. | +| 2 | **Scenario lab** | Explore traffic models, endpoint mixes, latency distributions, RTT, etc. | +| 3 | **Twin metrics** | Produce the same metrics you’ll scrape in prod (latency, queue, CPU). | +| 4 | **Rapid iteration** | One YAML/JSON config or REST call → full report. | +| 5 | **Educational value** | Visualise how GIL lag, queue length, concurrency react to load. | + +--- + +## 3 Who benefits & why (detailed) + +| Audience | Pain-point solved | FastSim value | +| ------------------------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| **Backend engineers** | Unsure if 4 vCPU container survives a marketing spike | Run *what-if* load, tweak CPU cores / pool size, get p95 & max-concurrency before merging. | +| **DevOps / SRE** | Guesswork in capacity planning; cost of over-provisioning | Simulate 1 → N replicas, autoscaler thresholds, DB-pool size; pick the cheapest config meeting SLA. | +| **ML / LLM product teams** | LLM inference cost & latency hard to predict | Model the LLM step with a price + latency distribution; estimate \$/req and GPU batch gains without real GPU. | +| **Educators / Trainers** | Students struggle to “see” event-loop internals | Visualise GIL ready-queue lag, CPU vs I/O steps, effect of blocking code—perfect for live demos and labs. | +| **Consultants / Architects** | Need a quick PoC of new designs for clients | Drop endpoint definitions in YAML and demo throughput / latency under projected load in minutes. | +| **Open-source community** | Lacks a lightweight Python simulator for ASGI workloads | Extensible codebase; easy to plug in new resources (rate-limit, cache) or traffic models (spike, uniform ramp). | +| **System-design interviewees** | Hard to quantify trade-offs in whiteboard interviews | Prototype real-time metrics—queue lengths, concurrency, latency distributions—to demonstrate in interviews how your design scales and where bottlenecks lie. | + +--- + +**Bottom-line:** FastSim turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. diff --git a/documentation/backend_documentation/requests_generator.md b/documentation/backend_documentation/requests_generator.md new file mode 100644 index 0000000..556c4f4 --- /dev/null +++ b/documentation/backend_documentation/requests_generator.md @@ -0,0 +1,281 @@ +# Requests Generator + +This document describes the design of the **requests generator**, which models a stream of user requests to a given endpoint over time. + +--- + +## Model Inputs and Output + +Following the FastSim philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. + +**Inputs** + +1. **Average concurrent users** – expected number of users (or sessions) simultaneously hitting the endpoint. +2. **Average requests per minute per user** – average number of requests each user issues per minute. +3. **Simulation time** – total duration of the simulation, in seconds. + +**Output** +A continuous sequence of timestamps (seconds) marking individual request arrivals. + +--- + +## Model Assumptions + +* *Concurrent users* and *requests per minute per user* are **random variables**. +* *Simulation time* is **deterministic**. + +We model: + +* **Requests per minute per user** as Poisson($\lambda_r$). +* **Concurrent users** as either Poisson($\lambda_u$) or truncated Normal. +* **The variables are independent** + +```python +from pydantic import BaseModel +from typing import Literal + +class RVConfig(BaseModel): + """Configure a random-variable parameter.""" + mean: float + distribution: Literal["poisson", "normal", "gaussian"] = "poisson" + variance: float | None = None # required only for normal/gaussian + +class SimulationInput(BaseModel): + """Define simulation inputs.""" + avg_active_users: RVConfig + avg_request_per_minute_per_user: RVConfig + total_simulation_time: int | None = None +``` + +--- + +## Aggregate Request Rate + +From the two random inputs we define the **per-second aggregate rate** $\Lambda$: + +$$ +\Lambda + = \text{concurrent\_users} + \;\times\; + \frac{\text{requests\_per\_minute\_per\_user}}{60} + \quad[\text{requests/s}]. +$$ + +--- + +## 1. Poisson → Exponential Refresher + +### 1.1 Homogeneous Poisson process + +A Poisson process of rate $\lambda$ has + +$$ +\Pr\{N(t)=k\} + = e^{-\lambda t}\,\frac{(\lambda t)^{k}}{k!},\quad k=0,1,2,\dots +$$ + +### 1.2 Waiting time to first event + +Define $T_1=\inf\{t>0:N(t)=1\}$. +The survival function is + +$$ +\Pr\{T_1>t\} + = \Pr\{N(t)=0\} + = e^{-\lambda t}, +$$ + +so the CDF is + +$$ +F_{T_1}(t) = 1 - e^{-\lambda t},\quad t\ge0, +$$ + +and the density $f(t)=\lambda\,e^{-\lambda t}$. Thus + +$$ +T_1 \sim \mathrm{Exp}(\lambda), +$$ + +and by memorylessness every inter-arrival gap $\Delta t_i$ is i.i.d. Exp($\lambda$). + +### 1.3 Inverse-CDF sampling + +To draw $\Delta t\sim\mathrm{Exp}(\lambda)$: + +1. Sample $U\sim\mathcal U(0,1)$. +2. Solve $U=1-e^{-\lambda\,\Delta t}$;$\Rightarrow\;\Delta t=-\ln(1-U)/\lambda$. +3. Equivalent compact form: + $\displaystyle \Delta t = -\,\ln(U)/\lambda$. + +--- + +## 2. Poisson × Poisson Workload + +### 2.1 Notation + +| Symbol | Meaning | Law | +| --------------------------------- | --------------------------------------- | -------- | +| $U\sim\mathrm{Pois}(\lambda_u)$ | active users in current 1-minute window | Poisson | +| $R_i\sim\mathrm{Pois}(\lambda_r)$ | requests per minute by user *i* | Poisson | +| $N=\sum_{i=1}^U R_i$ | total requests in that minute | compound | +| $\Lambda=N/60$ | aggregate rate (requests / second) | compound | + +The procedure here rely heavily on the independence of our random variables. + +### 2.2 Conditional sum ⇒ Poisson + +Given $U=u$: + +$$ +N\mid U=u +=\sum_{i=1}^{u}R_i +\;\sim\;\mathrm{Pois}(u\,\lambda_r). +$$ + +### 2.3 Unconditional law of $N$ + +By the law of total probability: + +$$ +\Pr\{N=n\} +=\sum_{u=0}^{\infty} +\Pr\{U=u\}\; +\Pr\{N=n\mid U=u\} +\;=\; +e^{-\lambda_u}\,\frac1{n!} +\sum_{u=0}^{\infty} +\frac{\lambda_u^u}{u!}\, +e^{-u\lambda_r}\,(u\lambda_r)^n. +$$ + +This is the **Poisson–Poisson compound** (Borel–Tanner) distribution. + +--- + +## 3. Exact Hierarchical Sampler + +Rather than invert the discrete CDF above, we exploit the conditional structure: + +```python +# Hierarchical sampler code snippet +now = 0.0 # virtual clock (s) +window_end = 0.0 # end of the current user window +Lambda = 0.0 # aggregate rate Λ (req/s) + +while now < simulation_time: + # (Re)sample U at the start of each window + if now >= window_end: + window_end = now + float(sampling_window_s) + users = poisson_variable_generator(mean_concurrent_user, rng) + Lambda = users * mean_req_per_sec_per_user + + # No users → fast-forward to next window + if Lambda <= 0.0: + now = window_end + continue + + # Exponential gap from a protected uniform value + u_raw = max(uniform_variable_generator(rng), 1e-15) + delta_t = -math.log(1.0 - u_raw) / Lambda + + # End simulation if the next event exceeds the horizon + if now + delta_t > simulation_time: + break + + # If the gap crosses the window boundary, jump to it + if now + delta_t >= window_end: + now = window_end + continue + + now += delta_t + yield delta_t +``` + +Because each conditional step matches the exact Poisson→Exponential law, this two-stage algorithm reproduces the same joint distribution as analytically inverting the compound CDF, but with minimal computation. + +--- + +## 4. Validity of the hierarchical sampler + +The validity of the hierarchical sampler relies on a structural property of the model: + +$$ +N \;=\; \sum_{i=1}^{U} R_i, +$$ + +where each $R_i \sim \mathrm{Pois}(\lambda_r)$ is independent of the others and of $U$. Because the Poisson family is closed under convolution, + +$$ +N \,\big|\, U=u \;\sim\; \mathrm{Pois}\!\bigl(u\,\lambda_r\bigr). +$$ + +This result has two important consequences: + +1. **Deterministic conditional rate** – Given $U=u$, the aggregate request arrivals constitute a homogeneous Poisson process with the *deterministic* rate + + $$ + \Lambda = \frac{u\,\lambda_r}{60}. + $$ + + All inter-arrival gaps are therefore i.i.d. exponential with parameter $\Lambda$, allowing us to use the standard inverse–CDF formula for each gap. + +2. **Layered uncertainty handling** – The randomness associated with $U$ is handled in an outer step (sampling $U$ once per window), while the inner step leverages the well-known Poisson→Exponential correspondence. This two-level construction reproduces exactly the joint distribution obtained by first drawing $\Lambda = N/60$ from the compound Poisson law and then drawing gaps conditional on $\Lambda$. + +If the total count could **not** be written as a sum of independent Poisson variables, the conditional distribution of $N$ would no longer be Poisson and the exponential-gap shortcut would not apply. In that situation one would need to work directly with the (generally more complex) mixed distribution of $\Lambda$ or adopt another specialized sampling scheme. + + + +## 5. Equivalence to CDF Inversion + +By the law of total probability, for any event set $A$: + +$$ +\Pr\{(\Lambda,\Delta t_1,\dots)\in A\} +=\sum_{u=0}^\infty +\Pr\{U=u\}\; +\Pr\{(\Lambda,\Delta t_1,\dots)\in A\mid U=u\}. +$$ + +Step 1 samples $\Pr\{U=u\}$, step 2–3 sample the conditional exponential gaps. Because these two factors exactly match the mixture definition of the compound CDF, the hierarchical sampler **is** an exact implementation of two-stage CDF inversion, avoiding any explicit inversion of an infinite series. + +--- + +## 6. Gaussian × Poisson Variant + +If concurrent users follow a truncated Normal, + +$$ +U\sim \max\{0,\;\mathcal N(\mu_u,\sigma_u^2)\}, +$$ + +steps 2–3 remain unchanged; only step 1 draws $U$ from a continuous law. The resulting mixture is continuous, yet the hierarchical sampler remains exact. + +--- + +## 7. Time Window + +The sampling window length governs how often we re-sample $U$. It should reflect the timescale over which user count fluctuations become significant. Our default is **60 s**, but you can adjust this parameter in your configuration before each simulation. + +--- + +## Limitations of the Requests Model + +1. **Independence assumption** + Assumes per-user streams and $U$ are independent. Real traffic often exhibits user-behavior correlations (e.g., flash crowds). + +2. **Exponential inter-arrival times** + Implies memorylessness; cannot capture self-throttling or long-range dependence found in real workloads. + +3. **No diurnal/trend component** + User count $U$ is IID per window. To model seasonality or trends, you must vary $\lambda_u(t)$ externally. + +4. **No burst-control or rate-limiting** + Does not simulate client-side throttling or server back-pressure. Any rate-limit logic must be added externally. + +5. **Gaussian truncation artifacts** + In the Gaussian–Poisson variant, truncating negatives to zero and rounding can under-estimate extreme user counts. + + +**Key takeaway:** By structuring the generator as +$\Lambda = U\,\lambda_r/60$ with a two-stage Poisson→Exponential sampler, FastSim efficiently reproduces compound Poisson traffic dynamics without any complex CDF inversion. diff --git a/documentation/tests_documentation/integration_tests/test_sampler_helper.md b/documentation/tests_documentation/unit_tests/test_sampler_helper.md similarity index 100% rename from documentation/tests_documentation/integration_tests/test_sampler_helper.md rename to documentation/tests_documentation/unit_tests/test_sampler_helper.md diff --git a/documentation/tests_documentation/integration_tests/test_simulation_input.md b/documentation/tests_documentation/unit_tests/test_simulation_input.md similarity index 100% rename from documentation/tests_documentation/integration_tests/test_simulation_input.md rename to documentation/tests_documentation/unit_tests/test_simulation_input.md diff --git a/src/app/config/constants.py b/src/app/config/constants.py index fb0c231..5146c62 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -6,6 +6,9 @@ class TimeDefaults(IntEnum): """Default time-related constants (all in seconds).""" - MIN_TO_SEC = 60 # 1 minute → 60 s - SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s - SIMULATION_HORIZON = 3_600 # run 1 h if user gives no other value + MIN_TO_SEC = 60 # 1 minute → 60 s + USER_SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s, default + SIMULATION_TIME = 3_600 # run 1 h if user gives no other value + MIN_SIMULATION_TIME = 1800 # min simulation time + MIN_USER_SAMPLING_WINDOW = 1 # 1 second + MAX_USER_SAMPLING_WINDOW = 120 # 2 minutes diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 2239626..03434b5 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -22,7 +22,6 @@ def gaussian_poisson_sampling( input_data: SimulationInput, *, - sampling_window_s: int = TimeDefaults.SAMPLING_WINDOW.value, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: """ @@ -41,10 +40,12 @@ def gaussian_poisson_sampling( rng = rng or np.random.default_rng() simulation_time = input_data.total_simulation_time + user_sampling_window = input_data.user_sampling_window # pydantic in the validation assign a value and mypy is not # complaining because a None cannot be compared in the loop # to a float assert simulation_time is not None + assert user_sampling_window is not None # λ_u : mean concurrent users per window mean_concurrent_user = float(input_data.avg_active_users.mean) @@ -68,7 +69,7 @@ def gaussian_poisson_sampling( while now < simulation_time: # (Re)sample U at the start of each window if now >= window_end: - window_end = now + float(sampling_window_s) + window_end = now + float(user_sampling_window) users = truncated_gaussian_generator( mean_concurrent_user, variance_concurrent_user, diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index 37c2da5..5f0598c 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -19,7 +19,6 @@ def poisson_poisson_sampling( input_data: SimulationInput, *, - sampling_window_s: int = TimeDefaults.SAMPLING_WINDOW.value, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: """ @@ -38,10 +37,12 @@ def poisson_poisson_sampling( rng = rng or np.random.default_rng() simulation_time = input_data.total_simulation_time + user_sampling_window = input_data.user_sampling_window # pydantic in the validation assign a value and mypy is not # complaining because a None cannot be compared in the loop # to a float assert simulation_time is not None + assert user_sampling_window is not None # λ_u : mean concurrent users per window mean_concurrent_user = float(input_data.avg_active_users.mean) @@ -60,7 +61,7 @@ def poisson_poisson_sampling( while now < simulation_time: # (Re)sample U at the start of each window if now >= window_end: - window_end = now + float(sampling_window_s) + window_end = now + float(user_sampling_window) users = poisson_variable_generator(mean_concurrent_user, rng) lam = users * mean_req_per_sec_per_user diff --git a/src/app/core/simulation/simulation_run.py b/src/app/core/simulation/simulation_run.py index b2f72f3..d3f52f6 100644 --- a/src/app/core/simulation/simulation_run.py +++ b/src/app/core/simulation/simulation_run.py @@ -20,15 +20,15 @@ def run_simulation( - data: SimulationInput, + input_data: SimulationInput, *, rng: np.random.Generator, ) -> SimulationOutput: """Simulation executor in Simpy""" - gaps: Generator[float, None, None] = requests_generator(data, rng=rng) + gaps: Generator[float, None, None] = requests_generator(input_data, rng=rng) env = simpy.Environment() - simulation_time = data.total_simulation_time + simulation_time = input_data.total_simulation_time # pydantic in the validation assign a value and mypy is not # complaining because a None cannot be compared in the loop # to a float @@ -51,6 +51,6 @@ def arrival_process( return SimulationOutput( total_requests=total_request_per_time_period, - metric_2=str(data.avg_request_per_minute_per_user.mean), - metric_n=str(data.avg_active_users.mean), + metric_2=str(input_data.avg_request_per_minute_per_user.mean), + metric_n=str(input_data.avg_active_users.mean), ) diff --git a/src/app/schemas/simulation_input.py b/src/app/schemas/simulation_input.py index 2197be1..ed702bb 100644 --- a/src/app/schemas/simulation_input.py +++ b/src/app/schemas/simulation_input.py @@ -2,7 +2,7 @@ from typing import Literal -from pydantic import BaseModel, field_validator, model_validator +from pydantic import BaseModel, Field, field_validator, model_validator from app.config.constants import TimeDefaults @@ -37,22 +37,23 @@ class SimulationInput(BaseModel): avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig - total_simulation_time: int | None = None - - @field_validator("total_simulation_time", mode="before") - def check_simulation_time(cls, v: object) -> int: # noqa: N805 - """ - Assign constant value to total sim time if is None - check if it is of the right type - impose a lower boundary for the simulation - """ - if v is None: - v = TimeDefaults.SIMULATION_HORIZON.value - if not isinstance(v, int): - err_msg_type = "the simulation time must be an integer" - raise ValueError(err_msg_type) # noqa: TRY004 - if v <= 60: - err_msg_val = "the simulation must be at least 60 seconds" - raise ValueError(err_msg_val) - return v + total_simulation_time: int = Field( + default=TimeDefaults.SIMULATION_TIME.value, + ge=TimeDefaults.MIN_SIMULATION_TIME.value, # minimum simulation time in seconds + description=( + f"Simulation time in seconds (>= {TimeDefaults.MIN_SIMULATION_TIME.value})." + ), + ) + + user_sampling_window: int = Field( + default=TimeDefaults.USER_SAMPLING_WINDOW.value, + ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW.value, + le=TimeDefaults.MAX_USER_SAMPLING_WINDOW.value, + description=( + "Sampling window in seconds " + f"({TimeDefaults.MIN_USER_SAMPLING_WINDOW.value}-" + f"{TimeDefaults.MAX_USER_SAMPLING_WINDOW.value})." + ), + ) + diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/sampler/test_gaussian_poisson.py new file mode 100644 index 0000000..6d49902 --- /dev/null +++ b/tests/unit/sampler/test_gaussian_poisson.py @@ -0,0 +1,93 @@ +"""Unit tests for gaussian_poisson_sampling.""" + +from __future__ import annotations + +import itertools +from types import GeneratorType + +import numpy as np +import pytest + +from app.config.constants import TimeDefaults +from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling +from app.schemas.simulation_input import RVConfig, SimulationInput + +# --------------------------------------------------------------------------- +# Fixture +# --------------------------------------------------------------------------- + + +@pytest.fixture +def base_input() -> SimulationInput: + """Return a minimal, valid SimulationInput for the Gaussian-Poisson sampler.""" + return SimulationInput( + avg_active_users=RVConfig( + mean=10.0, variance=4.0, distribution="gaussian", + ), + avg_request_per_minute_per_user=RVConfig(mean=30.0), + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, + ) + + +# --------------------------------------------------------------------------- +# Basic behaviour +# --------------------------------------------------------------------------- + + +def test_returns_generator_type(base_input: SimulationInput) -> None: + """The function must return a generator object.""" + rng = np.random.default_rng(0) + gen = gaussian_poisson_sampling(base_input, rng=rng) + assert isinstance(gen, GeneratorType) + + +def test_generates_positive_gaps(base_input: SimulationInput) -> None: + """ + With nominal parameters the sampler should emit at least a few positive + gaps and no gap must be non-positive. + """ + rng = np.random.default_rng(42) + gaps: list[float] = list( + itertools.islice(gaussian_poisson_sampling(base_input, rng=rng), 1000), + ) + + # At least one event is expected. + assert gaps + # No gap may be negative or zero. + assert all(gap > 0.0 for gap in gaps) + # The cumulative time of gaps must stay below the horizon. + assert sum(gaps) < base_input.total_simulation_time + + +# --------------------------------------------------------------------------- +# Edge-case: zero users ⇒ no events +# --------------------------------------------------------------------------- + + +def test_zero_users_produces_no_events( + monkeypatch: pytest.MonkeyPatch, + base_input: SimulationInput, +) -> None: + """ + If every Gaussian draw returns 0 users, Λ == 0, + hence the generator must yield no events at all. + """ + + def fake_truncated_gaussian( + mean: float, + var: float, + rng: np.random.Generator, + ) -> float: + return 0.0 # force U = 0 + + # Patch the helper so that it always returns 0 users. + monkeypatch.setattr( + "app.core.event_samplers.gaussian_poisson.truncated_gaussian_generator", + fake_truncated_gaussian, + ) + + rng = np.random.default_rng(123) + gaps = list(gaussian_poisson_sampling(base_input, rng=rng)) + + assert gaps == [] # no events should be generated diff --git a/tests/unit/sampler/test_poisson_posson.py b/tests/unit/sampler/test_poisson_posson.py new file mode 100644 index 0000000..c0a2f3e --- /dev/null +++ b/tests/unit/sampler/test_poisson_posson.py @@ -0,0 +1,119 @@ +"""Unit tests for the poisson_poisson_sampling generator.""" + +from __future__ import annotations + +import itertools +import math +from types import GeneratorType + +import numpy as np +import pytest + +from app.config.constants import TimeDefaults +from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling +from app.schemas.simulation_input import RVConfig, SimulationInput + + +@pytest.fixture +def base_input() -> SimulationInput: + """Return a minimal-valid SimulationInput for the sampler tests.""" + return SimulationInput( + # 1 average concurrent user … + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + # … sending on average 60 req/min → 1 req/s + avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, # 30 min + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, # 60 s + ) + + +# --------------------------------------------------------------------- +# BASIC SHAPE / TYPE TESTS +# --------------------------------------------------------------------- + + +def test_sampler_returns_generator(base_input: SimulationInput) -> None: + """The function must return a real generator object.""" + rng = np.random.default_rng(0) + gen = poisson_poisson_sampling(base_input, rng=rng) + + assert isinstance(gen, GeneratorType) + + +def test_all_gaps_are_positive(base_input: SimulationInput) -> None: + """Every yielded inter-arrival gap Δt must be > 0.""" + rng = np.random.default_rng(1) + gaps: list[float] = list( + itertools.islice(poisson_poisson_sampling(base_input, rng=rng), 1_000), + ) + + # None of the first 1 000 gaps (if any) can be negative or zero + assert all(gap > 0.0 for gap in gaps) + + +# --------------------------------------------------------------------- +# REPRODUCIBILITY WITH FIXED RNG SEED +# --------------------------------------------------------------------- + + +def test_sampler_is_reproducible_with_fixed_seed(base_input: SimulationInput) -> None: + """Same seed ⇒ identical first N gaps.""" + seed = 42 + n_samples = 15 + + gaps_1 = list( + itertools.islice( + poisson_poisson_sampling( + base_input, rng=np.random.default_rng(seed), + ), + n_samples, + ), + ) + gaps_2 = list( + itertools.islice( + poisson_poisson_sampling( + base_input, rng=np.random.default_rng(seed), + ), + n_samples, + ), + ) + + assert gaps_1 == gaps_2 + + +# --------------------------------------------------------------------- +# EDGE-CASE: ZERO USERS ⇒ NO EVENTS +# --------------------------------------------------------------------- + + +def test_zero_users_produces_no_events(base_input: SimulationInput) -> None: + """ + With mean concurrent users == 0 the Poisson draw is almost surely 0, + so Λ = 0 and the generator should yield no events. + """ + input_data = SimulationInput( + avg_active_users=RVConfig(mean=0.0, distribution="poisson"), + avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, + ) + + rng = np.random.default_rng(123) + gaps = list(poisson_poisson_sampling(input_data, rng=rng)) + + assert gaps == [] # no events expected + +# --------------------------------------------------------------------- +# CUMULATIVE TIME ALWAYS < SIMULATION HORIZON +# --------------------------------------------------------------------- + + +def test_cumulative_time_never_exceeds_horizon(base_input: SimulationInput) -> None: + """ΣΔt (virtual clock) must stay strictly below total_simulation_time.""" + rng = np.random.default_rng(7) + gaps = list(poisson_poisson_sampling(base_input, rng=rng)) + + cum_time = math.fsum(gaps) + # Even if the virtual clock can jump when λ == 0, + # the summed gaps must never exceed the horizon. + assert cum_time < base_input.total_simulation_time diff --git a/tests/unit/simulation/test_events_generator_input.py b/tests/unit/simulation/test_events_generator_input.py new file mode 100644 index 0000000..39c5216 --- /dev/null +++ b/tests/unit/simulation/test_events_generator_input.py @@ -0,0 +1,210 @@ +import pytest +from pydantic import ValidationError + +from app.config.constants import TimeDefaults +from app.schemas.simulation_input import RVConfig, SimulationInput + +# -------------------------------------------------------------------------- +# TEST RANDOM VARIABLE CONFIGURATION +# -------------------------------------------------------------------------- + +def test_normal_sets_variance_to_mean() -> None: + """When distribution='normal' and variance is omitted, variance == mean.""" + cfg = RVConfig(mean=10, distribution="normal") + assert cfg.variance == 10.0 + + +def test_poisson_keeps_variance_none() -> None: + """When distribution='poisson' and variance is omitted, variance stays None.""" + cfg = RVConfig(mean=5, distribution="poisson") + assert cfg.variance is None + + +def test_explicit_variance_is_preserved() -> None: + """If the user supplies variance explicitly, it is preserved unchanged.""" + cfg = RVConfig(mean=8, distribution="normal", variance=4) + assert cfg.variance == 4.0 + + +def test_mean_must_be_numeric() -> None: + """A non-numeric mean raises a ValidationError with our custom message.""" + with pytest.raises(ValidationError) as excinfo: + RVConfig(mean="not a number", distribution="poisson") + + # Check that at least one error refers to the 'mean' field + assert any(err["loc"] == ("mean",) for err in excinfo.value.errors()) + assert "mean must be a number" in excinfo.value.errors()[0]["msg"] + + +def test_missing_mean_field() -> None: + """Omitting the mean field raises a 'field required' ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + # Using model_validate avoids the constructor signature check + RVConfig.model_validate({"distribution": "normal"}) + + assert any( + err["loc"] == ("mean",) and err["type"] == "missing" + for err in excinfo.value.errors() + ) + +def test_gaussian_sets_variance_to_mean() -> None: + """When distribution='gaussian' and variance is omitted, variance == mean.""" + cfg = RVConfig(mean=12.5, distribution="gaussian") + assert cfg.variance == pytest.approx(12.5) + + +def test_default_distribution_is_poisson() -> None: + """ + When distribution is omitted, it defaults to 'poisson' and + variance stays None. + """ + cfg = RVConfig(mean=3.3) + assert cfg.distribution == "poisson" + assert cfg.variance is None + + +def test_explicit_variance_kept_for_poisson() -> None: + """If the user supplies variance even for poisson, it is preserved.""" + cfg = RVConfig(mean=4.0, distribution="poisson", variance=2.2) + assert cfg.variance == pytest.approx(2.2) + + +def test_invalid_distribution_raises() -> None: + """Supplying a non-supported distribution literal raises ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + RVConfig(mean=5.0, distribution="not_a_dist") + + errors = excinfo.value.errors() + # Only assert there is at least one error for the 'distribution' field: + assert any(e["loc"] == ("distribution",) for e in errors) + +# -------------------------------------------------------------------------- +# TEST FIELD VALIDATOR USER SAMPLING WINDOW +# -------------------------------------------------------------------------- + +def test_default_user_sampling_window() -> None: + """When user_sampling_window is omitted, it defaults to USER_SAMPLING_WINDOW.""" + inp = SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + ) + assert inp.user_sampling_window == TimeDefaults.USER_SAMPLING_WINDOW.value + + +def test_explicit_user_sampling_window_kept() -> None: + """An explicit user_sampling_window value is preserved unchanged.""" + custom_window = 30 + inp = SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + user_sampling_window=custom_window, + ) + assert inp.user_sampling_window == custom_window + + +def test_user_sampling_window_not_int_raises() -> None: + """A non-integer user_sampling_window raises a ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + + SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + user_sampling_window="not-an-int", + ) + + errors = excinfo.value.errors() + assert any(err["loc"] == ("user_sampling_window",) for err in errors) + + # Pydantic v2 wording + assert any("valid integer" in err["msg"] for err in errors) + + + +def test_user_sampling_window_above_max_raises() -> None: + """ + Passing user_sampling_window > MAX_USER_SAMPLING_WINDOW + must raise a ValidationError. + """ + too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW.value + 1 + with pytest.raises(ValidationError) as excinfo: + SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + user_sampling_window=too_large, + ) + + errors = excinfo.value.errors() + assert any(err["loc"] == ("user_sampling_window",) for err in errors) + + expected_snippet = ( + f"less than or equal to {TimeDefaults.MAX_USER_SAMPLING_WINDOW.value}" + ) + assert any(expected_snippet in err["msg"] for err in errors) + + + +# -------------------------------------------------------------------------- +# TEST FIELD VALIDATOR TOTAL SIMULATION TIME +# -------------------------------------------------------------------------- + +def test_default_total_simulation_time() -> None: + """When total_simulation_time is omitted, it defaults to SIMULATION_TIME.""" + inp = SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + ) + assert inp.total_simulation_time == TimeDefaults.SIMULATION_TIME.value + + +def test_explicit_total_simulation_time_kept() -> None: + """An explicit total_simulation_time value is preserved unchanged.""" + custom_time = 3_000 + inp = SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + total_simulation_time=custom_time, + ) + assert inp.total_simulation_time == custom_time + + +def test_total_simulation_time_not_int_raises() -> None: + """A non-integer total_simulation_time raises a ValidationError.""" + with pytest.raises(ValidationError) as excinfo: + + SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + total_simulation_time="three thousand", + ) + + errors = excinfo.value.errors() + assert any(err["loc"] == ("total_simulation_time",) for err in errors) + + # Pydantic v2 wording: “Input should be a valid integer” + assert any("valid integer" in err["msg"] for err in errors) + + + +def test_total_simulation_time_below_minimum_raises() -> None: + """ + Passing total_simulation_time < MIN_SIMULATION_TIME + must raise a ValidationError. + """ + too_small = TimeDefaults.MIN_SIMULATION_TIME.value - 1 + with pytest.raises(ValidationError) as excinfo: + SimulationInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + total_simulation_time=too_small, + ) + + errors = excinfo.value.errors() + # c'è almeno un errore sul campo giusto + assert any(err["loc"] == ("total_simulation_time",) for err in errors) + + expected_snippet = ( + f"greater than or equal to {TimeDefaults.MIN_SIMULATION_TIME.value}" + ) + assert any(expected_snippet in err["msg"] for err in errors) + + diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py index e7fad85..0bf5872 100644 --- a/tests/unit/simulation/test_requests_generator.py +++ b/tests/unit/simulation/test_requests_generator.py @@ -8,6 +8,7 @@ import numpy as np import pytest +from app.config.constants import TimeDefaults from app.core.simulation.requests_generator import requests_generator from app.core.simulation.simulation_run import run_simulation from app.schemas.simulation_input import SimulationInput @@ -28,7 +29,7 @@ def base_input() -> SimulationInput: return SimulationInput( avg_active_users={"mean": 1.0}, avg_request_per_minute_per_user={"mean": 2.0}, - total_simulation_time=120, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, ) # -------------------------------------------------------------- @@ -73,7 +74,7 @@ def test_requests_generator_dispatches_to_correct_sampler( input_data = SimulationInput( avg_active_users={"mean": 1.0, "distribution": dist}, avg_request_per_minute_per_user={"mean": 1.0}, - total_simulation_time=120, # Must be > 60 to pass schema validation + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, ) rng = np.random.default_rng(0) gen = requests_generator(input_data, rng=rng) diff --git a/tests/unit/simulation/test_simulation_input.py b/tests/unit/simulation/test_simulation_input.py deleted file mode 100644 index 20a32d9..0000000 --- a/tests/unit/simulation/test_simulation_input.py +++ /dev/null @@ -1,93 +0,0 @@ -import pytest -from pydantic import ValidationError - -from app.schemas.simulation_input import RVConfig, SimulationInput - - -def test_normal_sets_variance_to_mean() -> None: - """When distribution='normal' and variance is omitted, variance == mean.""" - cfg = RVConfig(mean=10, distribution="normal") - assert cfg.variance == 10.0 - - -def test_poisson_keeps_variance_none() -> None: - """When distribution='poisson' and variance is omitted, variance stays None.""" - cfg = RVConfig(mean=5, distribution="poisson") - assert cfg.variance is None - - -def test_explicit_variance_is_preserved() -> None: - """If the user supplies variance explicitly, it is preserved unchanged.""" - cfg = RVConfig(mean=8, distribution="normal", variance=4) - assert cfg.variance == 4.0 - - -def test_mean_must_be_numeric() -> None: - """A non-numeric mean raises a ValidationError with our custom message.""" - with pytest.raises(ValidationError) as excinfo: - RVConfig(mean="not a number", distribution="poisson") - - # Check that at least one error refers to the 'mean' field - assert any(err["loc"] == ("mean",) for err in excinfo.value.errors()) - assert "mean must be a number" in excinfo.value.errors()[0]["msg"] - - -def test_missing_mean_field() -> None: - """Omitting the mean field raises a 'field required' ValidationError.""" - with pytest.raises(ValidationError) as excinfo: - # Using model_validate avoids the constructor signature check - RVConfig.model_validate({"distribution": "normal"}) - - assert any( - err["loc"] == ("mean",) and err["type"] == "missing" - for err in excinfo.value.errors() - ) - -def test_gaussian_sets_variance_to_mean() -> None: - """When distribution='gaussian' and variance is omitted, variance == mean.""" - cfg = RVConfig(mean=12.5, distribution="gaussian") - assert cfg.variance == pytest.approx(12.5) - - -def test_default_distribution_is_poisson() -> None: - """ - When distribution is omitted, it defaults to 'poisson' and - variance stays None. - """ - cfg = RVConfig(mean=3.3) - assert cfg.distribution == "poisson" - assert cfg.variance is None - - -def test_explicit_variance_kept_for_poisson() -> None: - """If the user supplies variance even for poisson, it is preserved.""" - cfg = RVConfig(mean=4.0, distribution="poisson", variance=2.2) - assert cfg.variance == pytest.approx(2.2) - - -def test_invalid_distribution_raises() -> None: - """Supplying a non-supported distribution literal raises ValidationError.""" - with pytest.raises(ValidationError) as excinfo: - RVConfig(mean=5.0, distribution="not_a_dist") - - errors = excinfo.value.errors() - # Only assert there is at least one error for the 'distribution' field: - assert any(e["loc"] == ("distribution",) for e in errors) - - -def test_simulation_time_below_minimum_raises() -> None: - """ - Passing total_simulation_time <= 60 must raise a ValidationError, - because the minimum allowed simulation time is 61 seconds. - """ - with pytest.raises(ValidationError) as excinfo: - SimulationInput( - avg_active_users={"mean": 1.0}, - avg_request_per_minute_per_user={"mean": 1.0}, - total_simulation_time=60, # exactly at the boundary - ) - errors = excinfo.value.errors() - assert any( - err["loc"] == ("total_simulation_time",) and "at least 60 seconds" in err["msg"] - for err in errors - ) From d43c91585a3d92a0b27bf761e9f66168b864384d Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 10 Jul 2025 17:38:39 +0200 Subject: [PATCH 11/35] README update --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 7a5e6bf..8180e20 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -## 🚀 How to Start the Backend with Docker (Development) +## How to Start the Backend with Docker (Development) To spin up the backend and its supporting services in development mode: @@ -17,7 +17,7 @@ To spin up the backend and its supporting services in development mode: --- -## 🏗️ Development Architecture & Philosophy +## Development Architecture & Philosophy We split responsibilities between Docker-managed services and local workflows: @@ -29,13 +29,13 @@ We split responsibilities between Docker-managed services and local workflows: **Why?** -* ⚡ **Instant feedback** on code changes -* 🛠️ **Full IDE support** (debugging, autocomplete, refactoring) -* ⏱️ **Blistering speed**—no rebuilding images on every change +* **Fater feedback** on code changes +* **Full IDE support** (debugging, autocomplete, refactoring) +* **Speed**—no rebuilding images on every change --- -### 🧪 Local Quality & Testing Workflow +### Local Quality & Testing Workflow All code quality tools, migrations, and tests execute on your host machine: @@ -52,7 +52,7 @@ All code quality tools, migrations, and tests execute on your host machine: --- -## ⚙️ CI/CD with GitHub Actions +## CI/CD with GitHub Actions We maintain two jobs on the `develop` branch: @@ -60,7 +60,7 @@ We maintain two jobs on the `develop` branch: * Ruff & MyPy * Unit tests only -* **No database** → < 1-minute feedback +* **No database** ### 🛠️ Full (on pushes to `develop`) @@ -75,12 +75,12 @@ We maintain two jobs on the `develop` branch: --- -## 🧠 Summary +## Summary 1. **Docker-Compose** for services & hot-reload of the app code 2. **Local** execution of migrations, tests, and QA for speed and IDE integration 3. **CI pipeline** split into quick PR checks and full develop-branch validation -This hybrid setup delivers **fast development** without sacrificing **production-grade safety** in CI. + From 02b47569e26dd27e12ccc06cfa86411577c12b6f Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 10 Jul 2025 18:17:51 +0200 Subject: [PATCH 12/35] Improved constants management --- src/app/config/constants.py | 11 +++++++- .../core/event_samplers/gaussian_poisson.py | 2 +- .../core/event_samplers/poisson_poisson.py | 2 +- src/app/core/simulation/requests_generator.py | 3 +- src/app/schemas/simulation_input.py | 28 ++++++++++--------- tests/unit/sampler/test_gaussian_poisson.py | 4 +-- tests/unit/sampler/test_poisson_posson.py | 8 +++--- .../simulation/test_events_generator_input.py | 12 ++++---- .../simulation/test_requests_generator.py | 4 +-- 9 files changed, 43 insertions(+), 31 deletions(-) diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 5146c62..ac5ca2b 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,6 +1,6 @@ """Application constants and configuration values.""" -from enum import IntEnum +from enum import Enum, IntEnum class TimeDefaults(IntEnum): @@ -12,3 +12,12 @@ class TimeDefaults(IntEnum): MIN_SIMULATION_TIME = 1800 # min simulation time MIN_USER_SAMPLING_WINDOW = 1 # 1 second MAX_USER_SAMPLING_WINDOW = 120 # 2 minutes + + +class Distribution(str, Enum): + """Allowed probability distributions for an RVConfig.""" + + POISSON = "poisson" + NORMAL = "normal" + GAUSSIAN = "gaussian" + diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 03434b5..4cd0463 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -59,7 +59,7 @@ def gaussian_poisson_sampling( mean_req_per_sec_per_user = ( float( input_data.avg_request_per_minute_per_user.mean) - / TimeDefaults.MIN_TO_SEC.value + / TimeDefaults.MIN_TO_SEC ) now = 0.0 # virtual clock (s) diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index 5f0598c..8637798 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -51,7 +51,7 @@ def poisson_poisson_sampling( mean_req_per_sec_per_user = ( float( input_data.avg_request_per_minute_per_user.mean) - / TimeDefaults.MIN_TO_SEC.value + / TimeDefaults.MIN_TO_SEC ) now = 0.0 # virtual clock (s) diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/simulation/requests_generator.py index 0da1c1c..2551ed6 100644 --- a/src/app/core/simulation/requests_generator.py +++ b/src/app/core/simulation/requests_generator.py @@ -7,6 +7,7 @@ from typing import TYPE_CHECKING +from app.config.constants import Distribution from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling @@ -36,7 +37,7 @@ def requests_generator( """ dist = input_data.avg_active_users.distribution.lower() - if dist in {"gaussian", "normal"}: + if dist in {Distribution.GAUSSIAN, Distribution.NORMAL}: #Gaussian-Poisson model return gaussian_poisson_sampling( input_data=input_data, diff --git a/src/app/schemas/simulation_input.py b/src/app/schemas/simulation_input.py index ed702bb..fca5701 100644 --- a/src/app/schemas/simulation_input.py +++ b/src/app/schemas/simulation_input.py @@ -1,21 +1,20 @@ """Define the schemas for the simulator""" -from typing import Literal from pydantic import BaseModel, Field, field_validator, model_validator -from app.config.constants import TimeDefaults +from app.config.constants import Distribution, TimeDefaults class RVConfig(BaseModel): """class to configure random variables""" mean: float - distribution: Literal["poisson", "normal", "gaussian"] = "poisson" + distribution: Distribution = Distribution.POISSON variance: float | None = None @field_validator("mean", mode="before") - def check_mean_is_number( + def ensure_mean_is_numeric( cls, # noqa: N805 v: object, ) -> float: @@ -28,7 +27,10 @@ def check_mean_is_number( @model_validator(mode="after") # type: ignore[arg-type] def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 """Set variance = mean when distribution == 'normal' and variance is missing.""" - if model.variance is None and model.distribution in {"normal", "gaussian"}: + if model.variance is None and model.distribution in { + Distribution.NORMAL, + Distribution.GAUSSIAN, + }: model.variance = model.mean return model @@ -38,21 +40,21 @@ class SimulationInput(BaseModel): avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig total_simulation_time: int = Field( - default=TimeDefaults.SIMULATION_TIME.value, - ge=TimeDefaults.MIN_SIMULATION_TIME.value, # minimum simulation time in seconds + default=TimeDefaults.SIMULATION_TIME, + ge=TimeDefaults.MIN_SIMULATION_TIME, # minimum simulation time in seconds description=( - f"Simulation time in seconds (>= {TimeDefaults.MIN_SIMULATION_TIME.value})." + f"Simulation time in seconds (>= {TimeDefaults.MIN_SIMULATION_TIME})." ), ) user_sampling_window: int = Field( - default=TimeDefaults.USER_SAMPLING_WINDOW.value, - ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW.value, - le=TimeDefaults.MAX_USER_SAMPLING_WINDOW.value, + default=TimeDefaults.USER_SAMPLING_WINDOW, + ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW, + le=TimeDefaults.MAX_USER_SAMPLING_WINDOW, description=( "Sampling window in seconds " - f"({TimeDefaults.MIN_USER_SAMPLING_WINDOW.value}-" - f"{TimeDefaults.MAX_USER_SAMPLING_WINDOW.value})." + f"({TimeDefaults.MIN_USER_SAMPLING_WINDOW}-" + f"{TimeDefaults.MAX_USER_SAMPLING_WINDOW})." ), ) diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/sampler/test_gaussian_poisson.py index 6d49902..419a68d 100644 --- a/tests/unit/sampler/test_gaussian_poisson.py +++ b/tests/unit/sampler/test_gaussian_poisson.py @@ -25,8 +25,8 @@ def base_input() -> SimulationInput: mean=10.0, variance=4.0, distribution="gaussian", ), avg_request_per_minute_per_user=RVConfig(mean=30.0), - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, - user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, ) diff --git a/tests/unit/sampler/test_poisson_posson.py b/tests/unit/sampler/test_poisson_posson.py index c0a2f3e..c11e187 100644 --- a/tests/unit/sampler/test_poisson_posson.py +++ b/tests/unit/sampler/test_poisson_posson.py @@ -22,8 +22,8 @@ def base_input() -> SimulationInput: avg_active_users={"mean": 1.0, "distribution": "poisson"}, # … sending on average 60 req/min → 1 req/s avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, # 30 min - user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, # 60 s + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, # 30 min + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, # 60 s ) @@ -94,8 +94,8 @@ def test_zero_users_produces_no_events(base_input: SimulationInput) -> None: input_data = SimulationInput( avg_active_users=RVConfig(mean=0.0, distribution="poisson"), avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, - user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW.value, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, ) rng = np.random.default_rng(123) diff --git a/tests/unit/simulation/test_events_generator_input.py b/tests/unit/simulation/test_events_generator_input.py index 39c5216..e794c50 100644 --- a/tests/unit/simulation/test_events_generator_input.py +++ b/tests/unit/simulation/test_events_generator_input.py @@ -88,7 +88,7 @@ def test_default_user_sampling_window() -> None: avg_active_users={"mean": 1.0, "distribution": "poisson"}, avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, ) - assert inp.user_sampling_window == TimeDefaults.USER_SAMPLING_WINDOW.value + assert inp.user_sampling_window == TimeDefaults.USER_SAMPLING_WINDOW def test_explicit_user_sampling_window_kept() -> None: @@ -125,7 +125,7 @@ def test_user_sampling_window_above_max_raises() -> None: Passing user_sampling_window > MAX_USER_SAMPLING_WINDOW must raise a ValidationError. """ - too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW.value + 1 + too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError) as excinfo: SimulationInput( avg_active_users={"mean": 1.0, "distribution": "poisson"}, @@ -137,7 +137,7 @@ def test_user_sampling_window_above_max_raises() -> None: assert any(err["loc"] == ("user_sampling_window",) for err in errors) expected_snippet = ( - f"less than or equal to {TimeDefaults.MAX_USER_SAMPLING_WINDOW.value}" + f"less than or equal to {TimeDefaults.MAX_USER_SAMPLING_WINDOW}" ) assert any(expected_snippet in err["msg"] for err in errors) @@ -153,7 +153,7 @@ def test_default_total_simulation_time() -> None: avg_active_users={"mean": 1.0, "distribution": "poisson"}, avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, ) - assert inp.total_simulation_time == TimeDefaults.SIMULATION_TIME.value + assert inp.total_simulation_time == TimeDefaults.SIMULATION_TIME def test_explicit_total_simulation_time_kept() -> None: @@ -190,7 +190,7 @@ def test_total_simulation_time_below_minimum_raises() -> None: Passing total_simulation_time < MIN_SIMULATION_TIME must raise a ValidationError. """ - too_small = TimeDefaults.MIN_SIMULATION_TIME.value - 1 + too_small = TimeDefaults.MIN_SIMULATION_TIME - 1 with pytest.raises(ValidationError) as excinfo: SimulationInput( avg_active_users={"mean": 1.0, "distribution": "poisson"}, @@ -203,7 +203,7 @@ def test_total_simulation_time_below_minimum_raises() -> None: assert any(err["loc"] == ("total_simulation_time",) for err in errors) expected_snippet = ( - f"greater than or equal to {TimeDefaults.MIN_SIMULATION_TIME.value}" + f"greater than or equal to {TimeDefaults.MIN_SIMULATION_TIME}" ) assert any(expected_snippet in err["msg"] for err in errors) diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py index 0bf5872..fcd2a55 100644 --- a/tests/unit/simulation/test_requests_generator.py +++ b/tests/unit/simulation/test_requests_generator.py @@ -29,7 +29,7 @@ def base_input() -> SimulationInput: return SimulationInput( avg_active_users={"mean": 1.0}, avg_request_per_minute_per_user={"mean": 2.0}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, ) # -------------------------------------------------------------- @@ -74,7 +74,7 @@ def test_requests_generator_dispatches_to_correct_sampler( input_data = SimulationInput( avg_active_users={"mean": 1.0, "distribution": dist}, avg_request_per_minute_per_user={"mean": 1.0}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME.value, + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, ) rng = np.random.default_rng(0) gen = requests_generator(input_data, rng=rng) From 6f06bb74b28da76fda751756b420bfe79b43494e Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Fri, 11 Jul 2025 17:25:34 +0200 Subject: [PATCH 13/35] Clean and refactor --- .../unit_tests/test_sampler_helper.md | 50 ---------- .../unit_tests/test_simulation_input.md | 93 ------------------- src/app/config/constants.py | 6 +- .../core/event_samplers/gaussian_poisson.py | 7 +- .../core/event_samplers/poisson_poisson.py | 7 +- src/app/core/simulation/requests_generator.py | 4 +- ...n_input.py => requests_generator_input.py} | 7 +- tests/unit/sampler/test_gaussian_poisson.py | 4 +- tests/unit/sampler/test_poisson_posson.py | 2 +- .../simulation/test_requests_generator.py | 4 +- ...ut.py => test_requests_generator_input.py} | 76 +++++++++------ 11 files changed, 63 insertions(+), 197 deletions(-) delete mode 100644 documentation/tests_documentation/unit_tests/test_sampler_helper.md delete mode 100644 documentation/tests_documentation/unit_tests/test_simulation_input.md rename src/app/schemas/{simulation_input.py => requests_generator_input.py} (88%) rename tests/unit/simulation/{test_events_generator_input.py => test_requests_generator_input.py} (72%) diff --git a/documentation/tests_documentation/unit_tests/test_sampler_helper.md b/documentation/tests_documentation/unit_tests/test_sampler_helper.md deleted file mode 100644 index 9084ed8..0000000 --- a/documentation/tests_documentation/unit_tests/test_sampler_helper.md +++ /dev/null @@ -1,50 +0,0 @@ -Below is a guided walkthrough of **`tests/unit/simulation/test_sampler_helper.py`**, explaining core ideas and each test’s intent. - ---- - -## File purpose - -This file verifies that your three helper functions— - -* `uniform_variable_generator` -* `poisson_variable_generator` -* `truncated_gaussian_generator` - -—correctly delegate to whatever RNG you pass in, and fall back to NumPy’s default RNG when you don’t provide one. - ---- - -## Key testing patterns - -1. **Dependency injection via `rng`** - Each helper takes an `rng` parameter. In production you’ll pass a `np.random.Generator`; in tests we inject a **`DummyRNG`** with predictable outputs to make our tests **deterministic**. - -2. **Duck typing** - Python doesn’t require `rng` to be a specific class—only that it implements the required methods (`random()`, `poisson(mean)`, `normal(mean, sigma)`). Our `DummyRNG` simply implements those three methods. - -3. **`typing.cast` for static typing** - We wrap `DummyRNG` instances in `cast("np.random.Generator", DummyRNG(...))` so mypy sees them as satisfying the generator type, but at runtime they remain our dummy. - ---- - -## Test-by-test breakdown - -| Test name | What it checks | -| -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| **`test_uniform_variable_generator_with_dummy_rng`** | Passing a `DummyRNG(uniform_value=0.75)`, `rng.random()` returns 0.75 → helper must return exactly 0.75. | -| **`test_uniform_variable_generator_default_rng_range`** | Without supplying `rng`, the helper uses `default_rng()`. We call it 100× to ensure it always returns a `float` in \[0.0, 1.0). | -| **`test_poisson_variable_generator_with_dummy_rng`** | With `DummyRNG(poisson_value=3)`, `rng.poisson(mean)` yields 3 → helper returns 3. | -| **`test_poisson_variable_generator_reproducible`** | Two NumPy generators created with the same seed (`12345`) must produce the same Poisson sample for `mean=10.0`. | -| **`test_truncated_gaussian_generator_truncates_negative`** | `DummyRNG(normal_value=-2.7)` forces a negative draw: helper must clamp it to **0**. | -| **`test_truncated_gaussian_generator_truncates_toward_zero`** | `DummyRNG(normal_value=3.9)` forces a positive draw: helper must cast/round toward zero (int(3.9) → **3**). | -| **`test_truncated_gaussian_generator_default_rng_non_negative_int`** | With a real seeded RNG, helper must produce **some** non-negative `int` (verifies default fallback path is valid). | - ---- - -## Why this matters - -* **Deterministic behavior**: by forcing the RNG’s output via `DummyRNG`, we can assert exactly how our helpers transform that value (clamping, rounding, type conversion). -* **Fallbacks work**: tests with **no** `rng` verify that calling `default_rng()` still gives valid outputs of the correct type and range. -* **Type safety**: using `cast(...)` silences mypy errors while still executing our dummy logic at runtime—ensuring we meet both static‐typing and functional correctness goals. - -With this suite, you have **full confidence** that your sampling helpers behave correctly under both controlled (dummy) and uncontrolled (default) RNG conditions. diff --git a/documentation/tests_documentation/unit_tests/test_simulation_input.md b/documentation/tests_documentation/unit_tests/test_simulation_input.md deleted file mode 100644 index f555571..0000000 --- a/documentation/tests_documentation/unit_tests/test_simulation_input.md +++ /dev/null @@ -1,93 +0,0 @@ -Below an explanation for the unit tests in the file `tests/unit/simulation/test_simulation_input.py` - -### 1. `test_normal_sets_variance_to_mean` - -**Purpose:** -Checks that when you create an `RVConfig` with `distribution="normal"` and omit the `variance` field, the model automatically sets `variance = mean`. - -* Verifies the “default variance” logic in the post‐init validator. - ---- - -### 2. `test_poisson_keeps_variance_none` - -**Purpose:** -Ensures that if you choose the Poisson distribution (`distribution="poisson"`) and do **not** supply a variance, the model **does not** fill in any default variance (keeps it `None`). - -* Confirms that defaulting only applies to “normal”/“gaussian,” not to Poisson. - ---- - -### 3. `test_explicit_variance_is_preserved` - -**Purpose:** -Validates that if you explicitly pass a `variance` value—even for a distribution that would normally default—it remains exactly what you provided, and is coerced to float. - -* Guards against accidental overwriting of user‐supplied variance. - ---- - -### 4. `test_mean_must_be_numeric` - -**Purpose:** -Verifies that giving a non‐numeric `mean` (e.g. a string) raises a `ValidationError` with our custom message `"mean must be a number"`. - -* Tests the “before” validator on the `mean` field for type checking and coercion. - ---- - -### 5. `test_missing_mean_field` - -**Purpose:** -Ensures that completely omitting the `mean` key triggers a standard “field required” error. - -* Confirms that `mean` is mandatory in the schema. - ---- - -### 6. `test_gaussian_sets_variance_to_mean` - -**Purpose:** -Exactly like the “normal” test above, but for `distribution="gaussian"`. - -* Demonstrates that “gaussian” is treated as an alias for “normal” in the default‐variance logic. - ---- - -### 7. `test_default_distribution_is_poisson` - -**Purpose:** -Checks two things simultaneously: - -1. When you omit `distribution`, it defaults to `"poisson"`. -2. In that default‐poisson case, `variance` remains `None`. - -* Validates both the default distribution and its variance behavior in one test. - ---- - -### 8. `test_explicit_variance_kept_for_poisson` - -**Purpose:** -Confirms that even if you supply a `variance` when `distribution="poisson"`, the model preserves it rather than discarding it or forcing it back to `None`. - -* Provides symmetry to the “explicit variance” test for non‐Poisson cases. - ---- - -### 9. `test_invalid_distribution_raises` - -**Purpose:** -Ensures that passing a value for `distribution` outside of the allowed literals (`"poisson"`, `"normal"`, `"gaussian"`) results in a `ValidationError`. - -* Confirms that the `Literal[...]` constraint on `distribution` is enforced. - ---- - -With these nine tests you fully cover: - -1. **Defaulting behavior** for both “normal” and “gaussian.” -2. **No‐op behavior** for Poisson defaults. -3. **Preservation** of explicit user input. -4. **Type‐checking** on required fields. -5. **Literal‐constraint** enforcement. diff --git a/src/app/config/constants.py b/src/app/config/constants.py index ac5ca2b..03448de 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,6 +1,6 @@ """Application constants and configuration values.""" -from enum import Enum, IntEnum +from enum import IntEnum, StrEnum class TimeDefaults(IntEnum): @@ -14,10 +14,10 @@ class TimeDefaults(IntEnum): MAX_USER_SAMPLING_WINDOW = 120 # 2 minutes -class Distribution(str, Enum): +class Distribution(StrEnum): """Allowed probability distributions for an RVConfig.""" POISSON = "poisson" NORMAL = "normal" - GAUSSIAN = "gaussian" + diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 4cd0463..98f9121 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -16,7 +16,7 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.simulation_input import SimulationInput +from app.schemas.requests_generator_input import SimulationInput def gaussian_poisson_sampling( @@ -41,11 +41,6 @@ def gaussian_poisson_sampling( simulation_time = input_data.total_simulation_time user_sampling_window = input_data.user_sampling_window - # pydantic in the validation assign a value and mypy is not - # complaining because a None cannot be compared in the loop - # to a float - assert simulation_time is not None - assert user_sampling_window is not None # λ_u : mean concurrent users per window mean_concurrent_user = float(input_data.avg_active_users.mean) diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index 8637798..d25c4dd 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -13,7 +13,7 @@ poisson_variable_generator, uniform_variable_generator, ) -from app.schemas.simulation_input import SimulationInput +from app.schemas.requests_generator_input import SimulationInput def poisson_poisson_sampling( @@ -38,11 +38,6 @@ def poisson_poisson_sampling( simulation_time = input_data.total_simulation_time user_sampling_window = input_data.user_sampling_window - # pydantic in the validation assign a value and mypy is not - # complaining because a None cannot be compared in the loop - # to a float - assert simulation_time is not None - assert user_sampling_window is not None # λ_u : mean concurrent users per window mean_concurrent_user = float(input_data.avg_active_users.mean) diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/simulation/requests_generator.py index 2551ed6..e19d8f0 100644 --- a/src/app/core/simulation/requests_generator.py +++ b/src/app/core/simulation/requests_generator.py @@ -16,7 +16,7 @@ import numpy as np - from app.schemas.simulation_input import SimulationInput + from app.schemas.requests_generator_input import SimulationInput def requests_generator( @@ -37,7 +37,7 @@ def requests_generator( """ dist = input_data.avg_active_users.distribution.lower() - if dist in {Distribution.GAUSSIAN, Distribution.NORMAL}: + if dist == Distribution.NORMAL: #Gaussian-Poisson model return gaussian_poisson_sampling( input_data=input_data, diff --git a/src/app/schemas/simulation_input.py b/src/app/schemas/requests_generator_input.py similarity index 88% rename from src/app/schemas/simulation_input.py rename to src/app/schemas/requests_generator_input.py index fca5701..9090fed 100644 --- a/src/app/schemas/simulation_input.py +++ b/src/app/schemas/requests_generator_input.py @@ -27,10 +27,7 @@ def ensure_mean_is_numeric( @model_validator(mode="after") # type: ignore[arg-type] def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 """Set variance = mean when distribution == 'normal' and variance is missing.""" - if model.variance is None and model.distribution in { - Distribution.NORMAL, - Distribution.GAUSSIAN, - }: + if model.variance is None and model.distribution == Distribution.NORMAL: model.variance = model.mean return model @@ -41,7 +38,7 @@ class SimulationInput(BaseModel): avg_request_per_minute_per_user: RVConfig total_simulation_time: int = Field( default=TimeDefaults.SIMULATION_TIME, - ge=TimeDefaults.MIN_SIMULATION_TIME, # minimum simulation time in seconds + ge=TimeDefaults.MIN_SIMULATION_TIME, description=( f"Simulation time in seconds (>= {TimeDefaults.MIN_SIMULATION_TIME})." ), diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/sampler/test_gaussian_poisson.py index 419a68d..f0abbf8 100644 --- a/tests/unit/sampler/test_gaussian_poisson.py +++ b/tests/unit/sampler/test_gaussian_poisson.py @@ -10,7 +10,7 @@ from app.config.constants import TimeDefaults from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling -from app.schemas.simulation_input import RVConfig, SimulationInput +from app.schemas.requests_generator_input import RVConfig, SimulationInput # --------------------------------------------------------------------------- # Fixture @@ -22,7 +22,7 @@ def base_input() -> SimulationInput: """Return a minimal, valid SimulationInput for the Gaussian-Poisson sampler.""" return SimulationInput( avg_active_users=RVConfig( - mean=10.0, variance=4.0, distribution="gaussian", + mean=10.0, variance=4.0, distribution="normal", ), avg_request_per_minute_per_user=RVConfig(mean=30.0), total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, diff --git a/tests/unit/sampler/test_poisson_posson.py b/tests/unit/sampler/test_poisson_posson.py index c11e187..5d89686 100644 --- a/tests/unit/sampler/test_poisson_posson.py +++ b/tests/unit/sampler/test_poisson_posson.py @@ -11,7 +11,7 @@ from app.config.constants import TimeDefaults from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling -from app.schemas.simulation_input import RVConfig, SimulationInput +from app.schemas.requests_generator_input import RVConfig, SimulationInput @pytest.fixture diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py index fcd2a55..5164413 100644 --- a/tests/unit/simulation/test_requests_generator.py +++ b/tests/unit/simulation/test_requests_generator.py @@ -11,7 +11,7 @@ from app.config.constants import TimeDefaults from app.core.simulation.requests_generator import requests_generator from app.core.simulation.simulation_run import run_simulation -from app.schemas.simulation_input import SimulationInput +from app.schemas.requests_generator_input import SimulationInput if TYPE_CHECKING: @@ -57,7 +57,6 @@ def test_default_requests_generator_uses_poisson_poisson_sampling( [ ("poisson", "poisson_poisson_sampling"), ("normal", "gaussian_poisson_sampling"), - ("gaussian", "gaussian_poisson_sampling"), ], ) def test_requests_generator_dispatches_to_correct_sampler( @@ -69,7 +68,6 @@ def test_requests_generator_dispatches_to_correct_sampler( comes from the appropriate sampler function based on distribution: - 'poisson' → poisson_poisson_sampling - 'normal' → gaussian_poisson_sampling - - 'gaussian'→ gaussian_poisson_sampling """ input_data = SimulationInput( avg_active_users={"mean": 1.0, "distribution": dist}, diff --git a/tests/unit/simulation/test_events_generator_input.py b/tests/unit/simulation/test_requests_generator_input.py similarity index 72% rename from tests/unit/simulation/test_events_generator_input.py rename to tests/unit/simulation/test_requests_generator_input.py index e794c50..bbd84ae 100644 --- a/tests/unit/simulation/test_events_generator_input.py +++ b/tests/unit/simulation/test_requests_generator_input.py @@ -1,8 +1,8 @@ import pytest from pydantic import ValidationError -from app.config.constants import TimeDefaults -from app.schemas.simulation_input import RVConfig, SimulationInput +from app.config.constants import Distribution, TimeDefaults +from app.schemas.requests_generator_input import RVConfig, SimulationInput # -------------------------------------------------------------------------- # TEST RANDOM VARIABLE CONFIGURATION @@ -10,26 +10,26 @@ def test_normal_sets_variance_to_mean() -> None: """When distribution='normal' and variance is omitted, variance == mean.""" - cfg = RVConfig(mean=10, distribution="normal") + cfg = RVConfig(mean=10, distribution=Distribution.NORMAL) assert cfg.variance == 10.0 def test_poisson_keeps_variance_none() -> None: """When distribution='poisson' and variance is omitted, variance stays None.""" - cfg = RVConfig(mean=5, distribution="poisson") + cfg = RVConfig(mean=5, distribution=Distribution.POISSON) assert cfg.variance is None def test_explicit_variance_is_preserved() -> None: """If the user supplies variance explicitly, it is preserved unchanged.""" - cfg = RVConfig(mean=8, distribution="normal", variance=4) + cfg = RVConfig(mean=8, distribution=Distribution.NORMAL, variance=4) assert cfg.variance == 4.0 def test_mean_must_be_numeric() -> None: """A non-numeric mean raises a ValidationError with our custom message.""" with pytest.raises(ValidationError) as excinfo: - RVConfig(mean="not a number", distribution="poisson") + RVConfig(mean="not a number", distribution=Distribution.POISSON) # Check that at least one error refers to the 'mean' field assert any(err["loc"] == ("mean",) for err in excinfo.value.errors()) @@ -40,7 +40,7 @@ def test_missing_mean_field() -> None: """Omitting the mean field raises a 'field required' ValidationError.""" with pytest.raises(ValidationError) as excinfo: # Using model_validate avoids the constructor signature check - RVConfig.model_validate({"distribution": "normal"}) + RVConfig.model_validate({"distribution": Distribution.NORMAL}) assert any( err["loc"] == ("mean",) and err["type"] == "missing" @@ -49,7 +49,7 @@ def test_missing_mean_field() -> None: def test_gaussian_sets_variance_to_mean() -> None: """When distribution='gaussian' and variance is omitted, variance == mean.""" - cfg = RVConfig(mean=12.5, distribution="gaussian") + cfg = RVConfig(mean=12.5, distribution=Distribution.NORMAL) assert cfg.variance == pytest.approx(12.5) @@ -59,13 +59,13 @@ def test_default_distribution_is_poisson() -> None: variance stays None. """ cfg = RVConfig(mean=3.3) - assert cfg.distribution == "poisson" + assert cfg.distribution == Distribution.POISSON assert cfg.variance is None def test_explicit_variance_kept_for_poisson() -> None: """If the user supplies variance even for poisson, it is preserved.""" - cfg = RVConfig(mean=4.0, distribution="poisson", variance=2.2) + cfg = RVConfig(mean=4.0, distribution=Distribution.POISSON, variance=2.2) assert cfg.variance == pytest.approx(2.2) @@ -85,8 +85,11 @@ def test_invalid_distribution_raises() -> None: def test_default_user_sampling_window() -> None: """When user_sampling_window is omitted, it defaults to USER_SAMPLING_WINDOW.""" inp = SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, ) assert inp.user_sampling_window == TimeDefaults.USER_SAMPLING_WINDOW @@ -95,8 +98,11 @@ def test_explicit_user_sampling_window_kept() -> None: """An explicit user_sampling_window value is preserved unchanged.""" custom_window = 30 inp = SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, user_sampling_window=custom_window, ) assert inp.user_sampling_window == custom_window @@ -107,8 +113,11 @@ def test_user_sampling_window_not_int_raises() -> None: with pytest.raises(ValidationError) as excinfo: SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, user_sampling_window="not-an-int", ) @@ -128,8 +137,11 @@ def test_user_sampling_window_above_max_raises() -> None: too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError) as excinfo: SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, user_sampling_window=too_large, ) @@ -150,8 +162,11 @@ def test_user_sampling_window_above_max_raises() -> None: def test_default_total_simulation_time() -> None: """When total_simulation_time is omitted, it defaults to SIMULATION_TIME.""" inp = SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, ) assert inp.total_simulation_time == TimeDefaults.SIMULATION_TIME @@ -160,8 +175,11 @@ def test_explicit_total_simulation_time_kept() -> None: """An explicit total_simulation_time value is preserved unchanged.""" custom_time = 3_000 inp = SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, total_simulation_time=custom_time, ) assert inp.total_simulation_time == custom_time @@ -172,8 +190,11 @@ def test_total_simulation_time_not_int_raises() -> None: with pytest.raises(ValidationError) as excinfo: SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, total_simulation_time="three thousand", ) @@ -193,8 +214,11 @@ def test_total_simulation_time_below_minimum_raises() -> None: too_small = TimeDefaults.MIN_SIMULATION_TIME - 1 with pytest.raises(ValidationError) as excinfo: SimulationInput( - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - avg_request_per_minute_per_user={"mean": 1.0, "distribution": "poisson"}, + avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, + avg_request_per_minute_per_user={ + "mean": 1.0, + "distribution": Distribution.POISSON, + }, total_simulation_time=too_small, ) From ee5d202500dac1de0266ac6d8aa9f12177c2eaf0 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Sun, 13 Jul 2025 16:34:06 +0200 Subject: [PATCH 14/35] Features/request handler endpoint input (#3) * Introduction of the input structure for endpoints * Documentation + foundation of topology input * Improve Step validation, added unit test for the input * improved documentation for the input --- .../input_structure_for_the_simulation.md | 404 ++++++++++++++++++ .../requests_generator.md | 2 +- src/app/api/simulation.py | 4 +- src/app/config/constants.py | 179 +++++++- .../core/event_samplers/gaussian_poisson.py | 4 +- .../core/event_samplers/poisson_poisson.py | 4 +- src/app/core/simulation/requests_generator.py | 4 +- src/app/core/simulation/simulation_run.py | 4 +- src/app/schemas/full_simulation_input.py | 13 + src/app/schemas/random_variables_config.py | 31 ++ src/app/schemas/requests_generator_input.py | 32 +- src/app/schemas/simulation_output.py | 1 + .../system_topology_schema/endpoint_schema.py | 97 +++++ .../full_system_topology_schema.py | 217 ++++++++++ .../input_sructure/test_endpoint_input.py | 125 ++++++ .../test_full_topology_input.py | 170 ++++++++ .../test_requests_generator_input.py | 19 +- tests/unit/sampler/test_gaussian_poisson.py | 15 +- tests/unit/sampler/test_poisson_posson.py | 21 +- .../simulation/test_requests_generator.py | 28 +- 20 files changed, 1286 insertions(+), 88 deletions(-) create mode 100644 documentation/backend_documentation/input_structure_for_the_simulation.md create mode 100644 src/app/schemas/full_simulation_input.py create mode 100644 src/app/schemas/random_variables_config.py create mode 100644 src/app/schemas/system_topology_schema/endpoint_schema.py create mode 100644 src/app/schemas/system_topology_schema/full_system_topology_schema.py create mode 100644 tests/unit/input_sructure/test_endpoint_input.py create mode 100644 tests/unit/input_sructure/test_full_topology_input.py rename tests/unit/{simulation => input_sructure}/test_requests_generator_input.py (95%) diff --git a/documentation/backend_documentation/input_structure_for_the_simulation.md b/documentation/backend_documentation/input_structure_for_the_simulation.md new file mode 100644 index 0000000..e31c860 --- /dev/null +++ b/documentation/backend_documentation/input_structure_for_the_simulation.md @@ -0,0 +1,404 @@ +### **FastSim — Request-Generator Input Configuration** + +A **single, self-consistent contract** links three layers of the codebase: + +1. **Global Constants** – `TimeDefaults`, `Distribution` +2. **Random Variable Schema** – `RVConfig` +3. **Traffic-Generator Payload** – `RqsGeneratorInput` + +Understanding how these layers interact is key to crafting valid and predictable traffic profiles, preventing common configuration errors before the simulation begins. + +--- + +### 1. Global Constants + +| Constant Set | Purpose | Key Values | +| :--- | :--- | :--- | +| **`TimeDefaults`** (`IntEnum`) | Defines default values and validation bounds for time-based fields. | `SIMULATION_TIME = 3600 s`, `MIN_SIMULATION_TIME = 1800 s`, `USER_SAMPLING_WINDOW = 60 s`, `MIN_USER_SAMPLING_WINDOW = 1 s`, `MAX_USER_SAMPLING_WINDOW = 120 s` | +| **`Distribution`** (`StrEnum`) | Defines the canonical names of probability distributions supported by the generator. | `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"` | + +***Why use constants?*** + +* **Consistency:** They are referenced by validators; changing a value in one place updates the entire validation tree. +* **Safety:** They guarantee that a typo, such as `"Poisson"`, raises an error instead of silently failing or switching to an unintended default. + +--- + +### 2. Random Variable Schema (`RVConfig`) + +```python +class RVConfig(BaseModel): + """class to configure random variables""" + + mean: float + distribution: Distribution = Distribution.POISSON + variance: float | None = None + + @field_validator("mean", mode="before") + def ensure_mean_is_numeric( + cls, # noqa: N805 + v: object, + ) -> float: + """Ensure `mean` is numeric, then coerce to float.""" + err_msg = "mean must be a number (int or float)" + if not isinstance(v, (float, int)): + raise ValueError(err_msg) # noqa: TRY004 + return float(v) + + @model_validator(mode="after") # type: ignore[arg-type] + def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 + """Set variance = mean when distribution == 'normal' and variance is missing.""" + if model.variance is None and model.distribution == Distribution.NORMAL: + model.variance = model.mean + return model + +``` + +#### Validation Logic + +| Check | Pydantic Hook | Rule | +| :--- | :--- | :--- | +| *Mean must be numeric* | `@field_validator("mean", before)` | Rejects strings and nulls; coerces `int` to `float`. | +| *Autofill variance* | `@model_validator(after)` | If `distribution == "normal"` **and** `variance` is not provided, sets `variance = mean`. | +| *Positivity enforcement* | `PositiveFloat` / `PositiveInt` | Pydantic's constrained types are used on fields like `mean` where negative values are invalid, rejecting them before business logic runs. | + +> **Self-Consistency:** Every random draw in the simulation engine relies on a validated `RVConfig` instance. This avoids redundant checks and defensive code downstream. + +--- + +### 3. Traffic-Generator Payload (`RqsGeneratorInput`) + +| Field | Type | Validation Tied to Constants | +| :--- | :--- | :--- | +| `avg_active_users` | `RVConfig` | No extra constraints needed; the inner schema guarantees correctness. | +| `avg_request_per_minute_per_user` | `RVConfig` | Same as above. | +| `total_simulation_time` | `int` | `ge=TimeDefaults.MIN_SIMULATION_TIME`
default=`TimeDefaults.SIMULATION_TIME` | +| `user_sampling_window` | `int` | `ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW`
`le=TimeDefaults.MAX_USER_SAMPLING_WINDOW`
default=`TimeDefaults.USER_SAMPLING_WINDOW` | + +#### How the Generator Uses Each Field + +The simulation evolves based on a simple, powerful loop: + +1. **Timeline Partitioning** (`user_sampling_window`): The simulation timeline is divided into fixed-length windows. For each window: +2. **Active User Sampling** (`avg_active_users`): A single value is drawn to determine the concurrent user population, `U(t)`, for that window. +3. **Request Rate Calculation** (`avg_request_per_minute_per_user`): Each of the `U(t)` users contributes to the total request rate, yielding an aggregate load for the window. +4. **Termination** (`total_simulation_time`): The loop stops once the cumulative simulated time reaches this value. + +Because every numeric input is range-checked upfront, **the runtime engine never needs to defend itself** against invalid data like zero-length windows or negative rates, making the event-loop lean and predictable. + +--- + +### 4. End-to-End Example (Fully Explicit) + +```json +{ + "avg_active_users": { + "mean": 100, + "distribution": "poisson" + }, + "avg_request_per_minute_per_user": { + "mean": 4.0, + "distribution": "normal", + "variance": null + }, + "total_simulation_time": 5400, + "user_sampling_window": 45 +}``` + +#### What the Validators Do + +1. `mean` is numeric ✔️ +2. `distribution` string matches an enum member ✔️ +3. `total_simulation_time` ≥ 1800 ✔️ +4. `user_sampling_window` is in the range ✔️ +5. `variance` is `null` with a `normal` distribution ⇒ **auto-set to 4.0** ✔️ + +The payload is accepted. The simulator will run for $5400 / 45 = 120$ simulation windows. + +--- + +### 5. Common Error Example + +```json +{ + "avg_active_users": { "mean": "many" }, + "avg_request_per_minute_per_user": { "mean": -2 }, + "total_simulation_time": 600, + "user_sampling_window": 400 +} +``` + +| # | Fails On | Error Message (Abridged) | +| :- | :--- | :--- | +| 1 | Numeric check | `Input should be a valid number` | +| 2 | Positivity check | `Input should be greater than 0` | +| 3 | Minimum time check | `Input should be at least 1800` | +| 4 | Maximum window check | `Input should be at most 120` | + +--- + +### Takeaways + +* **Single Source of Truth:** Enums centralize all literal values, eliminating magic strings. +* **Layered Validation:** The `Constants → RVConfig → Request Payload` hierarchy ensures that only well-formed traffic profiles reach the simulation engine. +* **Safe Defaults:** Omitting optional fields never leads to undefined behavior; defaults are sourced directly from the `TimeDefaults` constants. + +This robust, layered approach allows you to configure the generator with confidence, knowing that any malformed scenario will be rejected early with explicit, actionable error messages. + + +### **FastSim Topology Input Schema** + +The topology schema is the blueprint of the digital twin, defining the structure, resources, behavior, and network connections of the system you wish to simulate. It describes: + +1. **What work** each request performs (`Endpoint` → `Step`). +2. **What components** exist in the system (`Server`, `Client`). +3. **Which resources** each component possesses (`ServerResources`). +4. **How** components are interconnected (`Edge`). + +To ensure simulation integrity and prevent runtime errors, FastSim uses Pydantic to rigorously validate the entire topology upfront. Every inconsistency is rejected at load-time. The following sections detail the schema's layered design, from the most granular operation to the complete system graph. + +--- +### **A Controlled Vocabulary: The Role of Constants** + +To ensure that input configurations are unambiguous and robust, the topology schema is built upon a controlled vocabulary defined by a series of Python `Enum` classes. Instead of relying on raw strings or "magic values" (e.g., `"cpu_bound_operation"`), which are prone to typos and inconsistencies, the schema uses these enumerations to define the finite set of legal values for categories like operation kinds, metrics, and node types. + +This design choice provides three critical benefits: + +1. **Strong Type-Safety:** By using `StrEnum` and `IntEnum`, Pydantic models can validate input payloads with absolute certainty. Any value not explicitly defined in the corresponding `Enum` is immediately rejected. This prevents subtle configuration errors that would be difficult to debug at simulation time. +2. **Developer Experience and Error Prevention:** This approach provides powerful auto-completion and static analysis. IDEs, `mypy`, and linters can catch invalid values during development, providing immediate feedback long before the code is executed. +3. **Single Source of Truth:** All valid categories are centralized in the `app.config.constants` module. This makes the system easier to maintain and extend. To add a new resource type or metric, a developer only needs to update the `Enum` definition, and the change propagates consistently to validation logic, the simulation engine, and any other component that uses it. + +The key enumerations that govern the topology schema include: + +| Constant Enum | Purpose | +| :--- | :--- | +| **`EndpointStepIO`, `EndpointStepCPU`, `EndpointStepRAM`** | Define the exhaustive list of valid `kind` values for a `Step`. | +| **`Metrics`** | Specify the legal dictionary keys within a `Step`'s `step_metrics`, enforcing the one-to-one link between a `kind` and its metric. | +| **`SystemNodes` and `SystemEdges`** | Enumerate the allowed categories for nodes and their connections in the high-level `TopologyGraph`. | + +### **Design Philosophy: A "Micro-to-Macro" Approach** + +The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). + +This layered approach provides several key advantages: +* **Modularity and Reusability:** An `Endpoint` is just a sequence of `Steps`. You can reorder, add, or remove steps without redefining the core operations themselves. +* **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). +* **Clarity and Maintainability:** The hierarchy makes the system description intuitive to read and write. It’s clear how atomic operations roll up into endpoints, which are hosted on servers connected by a network. +* **Robustness:** All structural and referential errors are caught before the simulation begins, guaranteeing that the SimPy engine operates on a valid, self-consistent model. + +--- + +### **1. The Atomic Unit: `Step`** + +A `Step` represents a single, indivisible operation executed by an asynchronous coroutine within an endpoint. It is the fundamental building block of all work in the simulation. + +Each `Step` has a `kind` (the category of work) and `step_metrics` (the resources it consumes). + +```python +class Step(BaseModel): + """ + A single, indivisible operation. + It must be quantified by exactly ONE metric. + """ + kind: EndpointStepIO | EndpointStepCPU | EndpointStepRAM + step_metrics: dict[Metrics, PositiveFloat | PositiveInt] + + @model_validator(mode="after") + def ensure_coherence_kind_metrics(cls, model: "Step") -> "Step": + metrics_keys = set(model.step_metrics) + + # Enforce that a step performs one and only one type of work. + if len(metrics_keys) != 1: + raise ValueError("step_metrics must contain exactly one entry") + + # Enforce that the metric is appropriate for the kind of work. + if isinstance(model.kind, EndpointStepCPU): + if metrics_keys != {Metrics.CPU_TIME}: + raise ValueError(f"CPU step requires metric '{Metrics.CPU_TIME}'") + + elif isinstance(model.kind, EndpointStepRAM): + if metrics_keys != {Metrics.NECESSARY_RAM}: + raise ValueError(f"RAM step requires metric '{Metrics.NECESSARY_RAM}'") + + elif isinstance(model.kind, EndpointStepIO): + if metrics_keys != {Metrics.IO_WAITING_TIME}: + raise ValueError(f"I/O step requires metric '{Metrics.IO_WAITING_TIME}'") + + return model +``` + +> **Design Rationale:** The strict one-to-one mapping between a `Step` and a single metric is a core design choice. It simplifies the simulation engine immensely, as each `Step` can be deterministically routed to a request on a single SimPy resource (a CPU queue, a RAM container, or an I/O event). This avoids the complexity of modeling operations that simultaneously consume multiple resource types. + +--- + +### **2. Composing Workflows: `Endpoint`** + +An `Endpoint` defines a complete, user-facing operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. + +```python +class Endpoint(BaseModel): + """A higher-level API call, executed as a strict sequence of steps.""" + endpoint_name: str + steps: list[Step] + + @field_validator("endpoint_name", mode="before") + def name_to_lower(cls, v: str) -> str: + """Standardize endpoint name to be lowercase for consistency.""" + return v.lower() +``` + +> **Design Rationale:** The simulation processes the `steps` list in the exact order provided. The total latency and resource consumption of an endpoint call is the sequential sum of its individual `Step` delays. This directly models the execution flow of a typical web request handler. + +--- + +### **3. Defining Components: System Nodes** + +Nodes are the macro-components of your architecture where work is performed and resources are located. + +#### **`ServerResources` and `Server`** +A `Server` node hosts endpoints and owns a set of physical resources. These resources are mapped directly to specific SimPy primitives, which govern how requests queue and contend for service. + +```python +class ServerResources(BaseModel): + """Quantifiable resources available on a server node.""" + cpu_cores: PositiveInt = Field(ge=ServerResourcesDefaults.MINIMUM_CPU_CORES) + ram_mb: PositiveInt = Field(ge=ServerResourcesDefaults.MINIMUM_RAM_MB) + db_connection_pool: PositiveInt | None = None + +class Server(BaseModel): + """A node that hosts endpoints and owns resources.""" + id: str + type: SystemNodes = SystemNodes.SERVER + server_resources: ServerResources + endpoints: list[Endpoint] +``` + +> **Design Rationale: Mapping to SimPy Primitives** +> * `cpu_cores` maps to a `simpy.Resource`. This models a classic semaphore where only `N` processes can execute concurrently, and others must wait in a queue. It perfectly represents CPU-bound tasks competing for a limited number of cores. +> * `ram_mb` maps to a `simpy.Container`. A container models a divisible resource where processes can request and return variable amounts. This is ideal for memory, as multiple requests can simultaneously hold different amounts of RAM without exclusively locking the entire memory pool. + +#### **`Client`** +The `Client` is a special, resource-less node that serves as the origin point for all requests generated during the simulation. + +#### **Node Aggregation and Validation (`TopologyNodes`)** +All `Server` and `Client` nodes are collected in the `TopologyNodes` model, which performs a critical validation check: ensuring all component IDs are unique across the entire system. + +--- + +### **4. Connecting the Components: `Edge`** + +An `Edge` represents a directed network link between two nodes, defining how requests flow through the system. + +```python +class Edge(BaseModel): + """A directed connection in the topology graph.""" + source: str + target: str + latency: RVConfig + probability: float = Field(1.0, ge=0.0, le=1.0) + edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION +``` + +> **Design Rationale:** +> * **Stochastic Latency:** Latency is not a fixed number but an `RVConfig` object. This allows you to model realistic network conditions using various probability distributions (e.g., log-normal for internet RTTs, exponential for failure retries), making the simulation far more accurate. +> * **Probabilistic Routing:** The `probability` field enables modeling of simple load balancing or A/B testing scenarios where traffic from a single `source` can be split across multiple `target` nodes. + +--- + +### **5. The Complete System: `TopologyGraph`** + +The `TopologyGraph` is the root of the configuration. It aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. + +```python +class TopologyGraph(BaseModel): + """The complete system definition, uniting all nodes and edges.""" + nodes: TopologyNodes + edges: list[Edge] + + @model_validator(mode="after") + def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": + """Ensure every edge connects two valid, existing nodes.""" + valid_ids = {s.id for s in model.nodes.servers} | {model.nodes.client.id} + for e in model.edges: + if e.source not in valid_ids or e.target not in valid_ids: + raise ValueError(f"Edge '{e.source}->{e.target}' references an unknown node.") + return model +``` +> **Design Rationale:** This final check guarantees that the topology is a valid, connected graph. By confirming that every `edge.source` and `edge.target` corresponds to a defined node `id`, it prevents the simulation from starting with a broken or nonsensical configuration, embodying the "fail-fast" principle. + +--- + +### **End-to-End Example** + +Here is a minimal, complete JSON configuration that defines a single client and a single API server. + +```jsonc +{ + "nodes": { + // The client node is the source of all generated requests. + "client": { + "id": "user_browser", + "type": "client" + }, + // A list of all server nodes in the system. + "servers": [ + { + "id": "api_server_node", + "type": "server", + "server_resources": { + "cpu_cores": 2, + "ram_mb": 2048 + }, + "endpoints": [ + { + "endpoint_name": "/predict", + "steps": [ + { + "kind": "initial_parsing", + "step_metrics": { "cpu_time": 0.005 } + }, + { + "kind": "io_db", + "step_metrics": { "io_waiting_time": 0.050 } + }, + { + "kind": "cpu_bound_operation", + "step_metrics": { "cpu_time": 0.015 } + } + ] + } + ] + } + ] + }, + "edges": [ + // A network link from the client to the API server. + { + "source": "user_browser", + "target": "api_server_node", + "latency": { + "distribution": "log_normal", + "mean": 0.05, + "std_dev": 0.01 + }, + "probability": 1.0 + } + ] +}``` + + + + +> **YAML friendly:** +> The topology schema is 100 % agnostic to the wire format. +> You can encode the same structure in **YAML** with identical field +> names and value types—Pydantic will parse either JSON or YAML as long +> as the keys and data types respect the schema. +> No additional changes or converters are required. +``` + + + +### **Key Takeaway** + +This rigorously validated, compositional schema is the foundation of FastSim's reliability. By defining a clear vocabulary of constants (`Metrics`, `SystemNodes`) and enforcing relationships with Pydantic validators, the schema guarantees that every simulation run starts from a **complete and self-consistent** system description. This allows you to refactor simulation logic or extend the model with new resources (e.g., GPU memory) with full confidence that existing configurations remain valid and robust. \ No newline at end of file diff --git a/documentation/backend_documentation/requests_generator.md b/documentation/backend_documentation/requests_generator.md index 556c4f4..95190fa 100644 --- a/documentation/backend_documentation/requests_generator.md +++ b/documentation/backend_documentation/requests_generator.md @@ -40,7 +40,7 @@ class RVConfig(BaseModel): distribution: Literal["poisson", "normal", "gaussian"] = "poisson" variance: float | None = None # required only for normal/gaussian -class SimulationInput(BaseModel): +class RqsGeneratorInput(BaseModel): """Define simulation inputs.""" avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig diff --git a/src/app/api/simulation.py b/src/app/api/simulation.py index 55081c6..e025ad6 100644 --- a/src/app/api/simulation.py +++ b/src/app/api/simulation.py @@ -4,13 +4,13 @@ from fastapi import APIRouter from app.core.simulation.simulation_run import run_simulation -from app.schemas.simulation_input import SimulationInput +from app.schemas.requests_generator_input import RqsGeneratorInput from app.schemas.simulation_output import SimulationOutput router = APIRouter() @router.post("/simulation") -async def event_loop_simulation(input_data: SimulationInput) -> SimulationOutput: +async def event_loop_simulation(input_data: RqsGeneratorInput) -> SimulationOutput: """Run the simulation and return aggregate KPIs.""" rng = np.random.default_rng() return run_simulation(input_data, rng=rng) diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 03448de..23c7936 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,23 +1,184 @@ -"""Application constants and configuration values.""" +""" +Application-wide constants and configuration values. + +This module groups all the *static* enumerations used by the FastSim backend +so that: + +* JSON / YAML payloads can be strictly validated with Pydantic. +* Front-end and simulation engine share a single source of truth. +* Ruff, mypy and IDEs can leverage the strong typing provided by Enum classes. + +**IMPORTANT:** Changing any enum *value* is a breaking-change for every +stored configuration file. Add new members whenever possible instead of +renaming existing ones. +""" from enum import IntEnum, StrEnum +# ====================================================================== +# CONSTANTS FOR THE REQUEST-GENERATOR COMPONENT +# ====================================================================== + class TimeDefaults(IntEnum): - """Default time-related constants (all in seconds).""" + """ + Default time-related constants (expressed in **seconds**). + + These values are used when the user omits an explicit parameter. They also + serve as lower / upper bounds for validation for the requests generator. + """ - MIN_TO_SEC = 60 # 1 minute → 60 s - USER_SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s, default - SIMULATION_TIME = 3_600 # run 1 h if user gives no other value - MIN_SIMULATION_TIME = 1800 # min simulation time - MIN_USER_SAMPLING_WINDOW = 1 # 1 second - MAX_USER_SAMPLING_WINDOW = 120 # 2 minutes + MIN_TO_SEC = 60 # 1 minute → 60 s + USER_SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s + SIMULATION_TIME = 3_600 # run 1 h if user gives no value + MIN_SIMULATION_TIME = 1_800 # enforce at least 30 min + MIN_USER_SAMPLING_WINDOW = 1 # 1 s minimum + MAX_USER_SAMPLING_WINDOW = 120 # 2 min maximum class Distribution(StrEnum): - """Allowed probability distributions for an RVConfig.""" + """ + Probability distributions accepted by :class:`~app.schemas.RVConfig`. + + The *string value* is exactly the identifier that must appear in JSON + payloads. The simulation engine will map each name to the corresponding + random sampler (e.g. ``numpy.random.poisson``). + """ POISSON = "poisson" NORMAL = "normal" + LOG_NORMAL = "log_normal" + EXPONENTIAL = "exponential" + +# ====================================================================== +# CONSTANTS FOR ENDPOINT STEP DEFINITION (REQUEST-HANDLER) +# ====================================================================== + +# The JSON received by the API for an endpoint step is expected to look like: +# +# { +# "endpoint_name": "/predict", +# "kind": "io_llm", +# "metrics": { +# "cpu_time": 0.150, +# "necessary_ram": 256 +# } +# } +# +# The Enum classes below guarantee that only valid *kind* and *metric* keys +# are accepted by the Pydantic schema. + + +class EndpointStepIO(StrEnum): + """ + I/O-bound operation categories that can occur inside an endpoint *step*. + + .. list-table:: + :header-rows: 1 + + * - Constant + - Meaning (executed by coroutine) + * - ``TASK_SPAWN`` + - Spawns an additional ``asyncio.Task`` and returns immediately. + * - ``LLM`` + - Performs a remote Large-Language-Model inference call. + * - ``WAIT`` + - Passive, *non-blocking* wait for I/O completion; no new task spawned. + * - ``DB`` + - Round-trip to a relational / NoSQL database. + * - ``CACHE`` + - Access to a local or distributed cache layer. + + The *value* of each member (``"io_llm"``, ``"io_db"``, …) is the exact + identifier expected in external JSON. + """ + + TASK_SPAWN = "io_task_spawn" + LLM = "io_llm" + WAIT = "io_wait" + DB = "io_db" + CACHE = "io_cache" + + +class EndpointStepCPU(StrEnum): + """ + CPU-bound operation categories inside an endpoint step. + + Use these when the coroutine keeps the Python interpreter busy + (GIL-bound or compute-heavy code) rather than waiting for I/O. + """ + + INITIAL_PARSING = "initial_parsing" + CPU_BOUND_OPERATION = "cpu_bound_operation" + + +class EndpointStepRAM(StrEnum): + """ + Memory-related operations inside a step. + + Currently limited to a single category, but kept as an Enum so that future + resource types (e.g. GPU memory) can be added without schema changes. + """ + + RAM = "ram" + + +class Metrics(StrEnum): + """ + Keys used inside the ``metrics`` dictionary of a *step*. + + * ``NETWORK_LATENCY`` - Mean latency (seconds) incurred on a network edge + *outside* the service (used mainly for validation when steps model + short in-service hops). + * ``CPU_TIME`` - Service time (seconds) during which the coroutine occupies + the CPU / GIL. + * ``NECESSARY_RAM`` - Peak memory (MB) required by the step. + """ + + NETWORK_LATENCY = "network_latency" + CPU_TIME = "cpu_time" + IO_WAITING_TIME = "io_waiting_time" + NECESSARY_RAM = "necessary_ram" + +# ====================================================================== +# CONSTANTS FOR THE RESOURCES OF A SERVER +# ====================================================================== + +class ServerResourcesDefaults: + """Resources available for a single server""" + + CPU_CORES = 1 + MINIMUM_CPU_CORES = 1 + RAM_MB = 1024 + MINIMUM_RAM_MB = 256 + DB_CONNECTION_POOL = None + +# ====================================================================== +# CONSTANTS FOR THE MACRO-TOPOLOGY GRAPH +# ====================================================================== + +class SystemNodes(StrEnum): + """ + High-level node categories of the system topology graph. + + Each member represents a *macro-component* that may have its own SimPy + resources (CPU cores, DB pool, etc.). + """ + + SERVER = "server" + CLIENT = "client" + LOAD_BALANCER = "load_balancer" + API_GATEWAY = "api_gateway" + DATABASE = "database" + CACHE = "cache" + + +class SystemEdges(StrEnum): + """ + Edge categories connecting different :class:`SystemNodes`. + Currently only network links are modeled; new types (IPC queue, message + bus, stream) can be added without impacting existing payloads. + """ + NETWORK_CONNECTION = "network_connection" diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 98f9121..9c83b4f 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -16,11 +16,11 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.requests_generator_input import SimulationInput +from app.schemas.requests_generator_input import RqsGeneratorInput def gaussian_poisson_sampling( - input_data: SimulationInput, + input_data: RqsGeneratorInput, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index d25c4dd..ebb1970 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -13,11 +13,11 @@ poisson_variable_generator, uniform_variable_generator, ) -from app.schemas.requests_generator_input import SimulationInput +from app.schemas.requests_generator_input import RqsGeneratorInput def poisson_poisson_sampling( - input_data: SimulationInput, + input_data: RqsGeneratorInput, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/simulation/requests_generator.py index e19d8f0..810218f 100644 --- a/src/app/core/simulation/requests_generator.py +++ b/src/app/core/simulation/requests_generator.py @@ -16,11 +16,11 @@ import numpy as np - from app.schemas.requests_generator_input import SimulationInput + from app.schemas.requests_generator_input import RqsGeneratorInput def requests_generator( - input_data: SimulationInput, + input_data: RqsGeneratorInput, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: diff --git a/src/app/core/simulation/simulation_run.py b/src/app/core/simulation/simulation_run.py index d3f52f6..3e1672a 100644 --- a/src/app/core/simulation/simulation_run.py +++ b/src/app/core/simulation/simulation_run.py @@ -14,13 +14,13 @@ import numpy as np - from app.schemas.simulation_input import SimulationInput + from app.schemas.requests_generator_input import RqsGeneratorInput def run_simulation( - input_data: SimulationInput, + input_data: RqsGeneratorInput, *, rng: np.random.Generator, ) -> SimulationOutput: diff --git a/src/app/schemas/full_simulation_input.py b/src/app/schemas/full_simulation_input.py new file mode 100644 index 0000000..0e1d7a9 --- /dev/null +++ b/src/app/schemas/full_simulation_input.py @@ -0,0 +1,13 @@ +"""Definition of the full input for the simulation""" + +from pydantic import BaseModel + +from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.system_topology_schema.full_system_topology_schema import TopologyGraph + + +class SimulationPayload(BaseModel): + """Full input structure to perform a simulation""" + + rqs_input: RqsGeneratorInput + topology_graph: TopologyGraph diff --git a/src/app/schemas/random_variables_config.py b/src/app/schemas/random_variables_config.py new file mode 100644 index 0000000..8d17c5f --- /dev/null +++ b/src/app/schemas/random_variables_config.py @@ -0,0 +1,31 @@ +"""Definition of the schema for a Random variable""" + +from pydantic import BaseModel, field_validator, model_validator + +from app.config.constants import Distribution + + +class RVConfig(BaseModel): + """class to configure random variables""" + + mean: float + distribution: Distribution = Distribution.POISSON + variance: float | None = None + + @field_validator("mean", mode="before") + def ensure_mean_is_numeric( + cls, # noqa: N805 + v: object, + ) -> float: + """Ensure `mean` is numeric, then coerce to float.""" + err_msg = "mean must be a number (int or float)" + if not isinstance(v, (float, int)): + raise ValueError(err_msg) # noqa: TRY004 + return float(v) + + @model_validator(mode="after") # type: ignore[arg-type] + def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 + """Set variance = mean when distribution == 'normal' and variance is missing.""" + if model.variance is None and model.distribution == Distribution.NORMAL: + model.variance = model.mean + return model diff --git a/src/app/schemas/requests_generator_input.py b/src/app/schemas/requests_generator_input.py index 9090fed..88812e0 100644 --- a/src/app/schemas/requests_generator_input.py +++ b/src/app/schemas/requests_generator_input.py @@ -1,37 +1,13 @@ """Define the schemas for the simulator""" -from pydantic import BaseModel, Field, field_validator, model_validator +from pydantic import BaseModel, Field -from app.config.constants import Distribution, TimeDefaults +from app.config.constants import TimeDefaults +from app.schemas.random_variables_config import RVConfig -class RVConfig(BaseModel): - """class to configure random variables""" - - mean: float - distribution: Distribution = Distribution.POISSON - variance: float | None = None - - @field_validator("mean", mode="before") - def ensure_mean_is_numeric( - cls, # noqa: N805 - v: object, - ) -> float: - """Ensure `mean` is numeric, then coerce to float.""" - err_msg = "mean must be a number (int or float)" - if not isinstance(v, (float, int)): - raise ValueError(err_msg) # noqa: TRY004 - return float(v) - - @model_validator(mode="after") # type: ignore[arg-type] - def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 - """Set variance = mean when distribution == 'normal' and variance is missing.""" - if model.variance is None and model.distribution == Distribution.NORMAL: - model.variance = model.mean - return model - -class SimulationInput(BaseModel): +class RqsGeneratorInput(BaseModel): """Define the expected variables for the simulation""" avg_active_users: RVConfig diff --git a/src/app/schemas/simulation_output.py b/src/app/schemas/simulation_output.py index b02c172..26d1adb 100644 --- a/src/app/schemas/simulation_output.py +++ b/src/app/schemas/simulation_output.py @@ -7,6 +7,7 @@ class SimulationOutput(BaseModel): """Define the output of the simulation""" total_requests: dict[str, int | float] + # TO DEFINE metric_2: str #...... metric_n: str diff --git a/src/app/schemas/system_topology_schema/endpoint_schema.py b/src/app/schemas/system_topology_schema/endpoint_schema.py new file mode 100644 index 0000000..abe53da --- /dev/null +++ b/src/app/schemas/system_topology_schema/endpoint_schema.py @@ -0,0 +1,97 @@ +"""Defining the input schema for the requests handler""" + +from pydantic import ( + BaseModel, + PositiveFloat, + PositiveInt, + field_validator, + model_validator, +) + +from app.config.constants import ( + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + Metrics, +) + + +class Step(BaseModel): + """ + Steps to be executed inside an endpoint in terms of + the resources needed to accomplish the single step + """ + + kind: EndpointStepIO | EndpointStepCPU | EndpointStepRAM + step_metrics: dict[Metrics, PositiveFloat | PositiveInt] + + @field_validator("step_metrics", mode="before") + def ensure_non_empty( + cls, # noqa: N805 + v: dict[Metrics, PositiveFloat | PositiveInt], + ) -> dict[Metrics, PositiveFloat | PositiveInt]: + """Ensure the dict step metrics exist""" + if not v: + msg = "step_metrics cannot be empty" + raise ValueError(msg) + return v + + @model_validator(mode="after") # type: ignore[arg-type] + def ensure_coherence_kind_metrics( + cls, # noqa: N805 + model: "Step", + ) -> "Step": + """ + Validation to couple kind and metrics only when they are + valid for example ram cannot have associated a cpu time + """ + metrics_keys = set(model.step_metrics) + + # Control of the length of the set to be sure only on key is passed + if len(metrics_keys) != 1: + msg = "step_metrics must contain exactly one entry" + raise ValueError(msg) + + # Coherence CPU bound operation and metric + if isinstance(model.kind, EndpointStepCPU): + if metrics_keys != {Metrics.CPU_TIME}: + msg = ( + "The metric to quantify a CPU BOUND step" + f"must be {Metrics.CPU_TIME}" + ) + raise ValueError(msg) + + # Coherence RAM operation and metric + elif isinstance(model.kind, EndpointStepRAM): + if metrics_keys != {Metrics.NECESSARY_RAM}: + msg = ( + "The metric to quantify a RAM step" + f"must be {Metrics.NECESSARY_RAM}" + ) + raise ValueError(msg) + + # Coherence I/O operation and metric + elif metrics_keys != {Metrics.IO_WAITING_TIME}: + msg = ( + "The metric to quantify an I/O step" + f"must be {Metrics.IO_WAITING_TIME}" + ) + raise ValueError(msg) + + return model + + + + +class Endpoint(BaseModel): + """full endpoint structure to be validated with pydantic""" + + endpoint_name: str + steps: list[Step] + + @field_validator("endpoint_name", mode="before") + def name_to_lower(cls, v: str) -> str: # noqa: N805 + """Standardize endpoint name to be lowercase""" + return v.lower() + + diff --git a/src/app/schemas/system_topology_schema/full_system_topology_schema.py b/src/app/schemas/system_topology_schema/full_system_topology_schema.py new file mode 100644 index 0000000..b53f08e --- /dev/null +++ b/src/app/schemas/system_topology_schema/full_system_topology_schema.py @@ -0,0 +1,217 @@ +""" +Define the topology of the system as a directed graph +where nodes represents macro structure (server, client ecc ecc) +and edges how these strcutures are connected and the network +latency necessary for the requests generated to move from +one structure to another +""" + +from pydantic import ( + BaseModel, + ConfigDict, + Field, + PositiveInt, + field_validator, + model_validator, +) + +from app.config.constants import ( + ServerResourcesDefaults, + SystemEdges, + SystemNodes, +) +from app.schemas.random_variables_config import RVConfig +from app.schemas.system_topology_schema.endpoint_schema import Endpoint + +#------------------------------------------------------------- +# Definition of the nodes structure for the graph representing +# the topoogy of the system defined for the simulation +#------------------------------------------------------------- + +# ------------------------------------------------------------- +# CLIENT +# ------------------------------------------------------------- + +class Client(BaseModel): + """Definition of the client class""" + + id: str + type: SystemNodes = SystemNodes.CLIENT + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the client is standard""" + if v != SystemNodes.CLIENT: + msg = f"The type should have a standard value: {SystemNodes.CLIENT}" + raise ValueError(msg) + return v + +# ------------------------------------------------------------- +# SERVER RESOURCES EXAMPLE +# ------------------------------------------------------------- + +class ServerResources(BaseModel): + """ + Defines the quantifiable resources available on a server node. + Each attribute maps directly to a SimPy resource primitive. + """ + + cpu_cores: PositiveInt = Field( + ServerResourcesDefaults.CPU_CORES, + ge = ServerResourcesDefaults.MINIMUM_CPU_CORES, + description="Number of CPU cores available for processing.", + ) + db_connection_pool: PositiveInt | None = Field( + ServerResourcesDefaults.DB_CONNECTION_POOL, + description="Size of the database connection pool, if applicable.", + ) + + # Risorse modellate come simpy.Container (livello) + ram_mb: PositiveInt = Field( + ServerResourcesDefaults.RAM_MB, + ge = ServerResourcesDefaults.MINIMUM_RAM_MB, + description="Total available RAM in Megabytes.") + + # for the future + # disk_iops_limit: PositiveInt | None = None + # network_throughput_mbps: PositiveInt | None = None + +# ------------------------------------------------------------- +# SERVER +# ------------------------------------------------------------- + +class Server(BaseModel): + """ + definition of the server class: + - id: is the server identifier + - type: is the type of node in the structure + - server resources: is a dictionary to define the resources + of the machine where the server is living + - endpoints: is the list of all endpoints in a server + """ + + id: str + type: SystemNodes = SystemNodes.SERVER + #Later define a valide structure for the keys of server resources + server_resources : ServerResources + endpoints : list[Endpoint] + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the server is standard""" + if v != SystemNodes.SERVER: + msg = f"The type should have a standard value: {SystemNodes.SERVER}" + raise ValueError(msg) + return v + +# ------------------------------------------------------------- +# NODES CLASS WITH ALL POSSIBLE OBJECTS REPRESENTED BY A NODE +# ------------------------------------------------------------- + +class TopologyNodes(BaseModel): + """ + Definition of the nodes class: + - server: represent all servers implemented in the system + - client: is a simple object with just a name representing + the origin of the graph + """ + + servers: list[Server] + client: Client + + @model_validator(mode="after") # type: ignore[arg-type] + def unique_ids( + cls, # noqa: N805 + model: "TopologyNodes", + ) -> "TopologyNodes": + """Check that all id are unique""" + ids = [server.id for server in model.servers] + [model.client.id] + if len(ids) != len(set(ids)): + msg = "Node ids must be unique" + raise ValueError(msg) + return model + + model_config = ConfigDict(extra="forbid") + + +#------------------------------------------------------------- +# Definition of the edges structure for the graph representing +# the topoogy of the system defined for the simulation +#------------------------------------------------------------- + +class Edge(BaseModel): + """ + A directed connection in the topology graph. + + Attributes + ---------- + source : str + Identifier of the source node (where the request comes from). + target : str + Identifier of the destination node (where the request goes to). + latency : RVConfig + Random-variable configuration for network latency on this link. + probability : float + Probability of taking this edge when there are multiple outgoing links. + Must be in [0.0, 1.0]. Defaults to 1.0 (always taken). + edge_type : SystemEdges + Category of the link (e.g. network, queue, stream). + + """ + + source: str + target: str + latency: RVConfig + probability: float = Field(1.0, ge=0.0, le=1.0) + edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION + + @model_validator(mode="after") # type: ignore[arg-type] + def check_src_trgt_different(cls, model: "Edge") -> "Edge": # noqa: N805 + """Ensure source is different from target""" + if model.source == model.target: + msg = "source and target must be different nodes" + raise ValueError(msg) + return model + + +#------------------------------------------------------------- +# Definition of the Graph structure representing +# the topogy of the system defined for the simulation +#------------------------------------------------------------- + +class TopologyGraph(BaseModel): + """ + data collection for the whole graph representing + the full system + """ + + nodes: TopologyNodes + edges: list[Edge] + + @model_validator(mode="after") # type: ignore[arg-type] + def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + """ + Ensure that **every** edge points to valid nodes. + + The validator is executed *after* the entire ``TopologyGraph`` model has + been built, so all servers and the client already exist in ``m.nodes``. + + Steps + ----- + 1. Build the set ``valid_ids`` containing: + * all ``Server.id`` values, **plus** + * the single ``Client.id``. + 2. Iterate through each ``Edge`` in ``m.edges`` and raise + :class:`ValueError` if either ``edge.source`` or ``edge.target`` is + **not** present in ``valid_ids``. + + Returning the (unchanged) model signals that the integrity check passed. + """ + valid_ids = {s.id for s in model.nodes.servers} | {model.nodes.client.id} + for e in model.edges: + if e.source not in valid_ids or e.target not in valid_ids: + msg = f"Edge {e.source}->{e.target} references unknown node" + raise ValueError(msg) + return model + + diff --git a/tests/unit/input_sructure/test_endpoint_input.py b/tests/unit/input_sructure/test_endpoint_input.py new file mode 100644 index 0000000..7e166dd --- /dev/null +++ b/tests/unit/input_sructure/test_endpoint_input.py @@ -0,0 +1,125 @@ +"""Unit tests for the Endpoint and Step Pydantic schemas.""" + +from __future__ import annotations + +import pytest +from pydantic import ValidationError + +from app.config.constants import ( + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + Metrics, +) +from app.schemas.system_topology_schema.endpoint_schema import Endpoint, Step + + +# --------------------------------------------------------------------------- # +# Helper functions to build minimal valid Step objects +# --------------------------------------------------------------------------- # +def cpu_step(value: float = 0.1) -> Step: + """Return a minimal valid CPU-bound Step.""" + return Step( + kind=EndpointStepCPU.CPU_BOUND_OPERATION, + step_metrics={Metrics.CPU_TIME: value}, + ) + + +def ram_step(value: int = 128) -> Step: + """Return a minimal valid RAM Step.""" + return Step( + kind=EndpointStepRAM.RAM, + step_metrics={Metrics.NECESSARY_RAM: value}, + ) + + +def io_step(value: float = 0.05) -> Step: + """Return a minimal valid I/O Step.""" + return Step( + kind=EndpointStepIO.WAIT, + step_metrics={Metrics.IO_WAITING_TIME: value}, + ) + + +# --------------------------------------------------------------------------- # +# Positive test cases +# --------------------------------------------------------------------------- # +def test_valid_cpu_step() -> None: + """Test that a CPU step with correct 'cpu_time' metric passes validation.""" + step = cpu_step() + # The metric value must match the input + assert step.step_metrics[Metrics.CPU_TIME] == 0.1 + + +def test_valid_ram_step() -> None: + """Test that a RAM step with correct 'necessary_ram' metric passes validation.""" + step = ram_step() + assert step.step_metrics[Metrics.NECESSARY_RAM] == 128 + + +def test_valid_io_step() -> None: + """Test that an I/O step with correct 'io_waiting_time' metric passes validation.""" + step = io_step() + assert step.step_metrics[Metrics.IO_WAITING_TIME] == 0.05 + + +def test_endpoint_with_mixed_steps() -> None: + """Test that an Endpoint with multiple valid Step instances normalizes the name.""" + ep = Endpoint( + endpoint_name="/Predict", + steps=[cpu_step(), ram_step(), io_step()], + ) + # endpoint_name should be lowercased by the validator + assert ep.endpoint_name == "/predict" + # All steps should be present in the list + assert len(ep.steps) == 3 + + +# --------------------------------------------------------------------------- # +# Negative test cases +# --------------------------------------------------------------------------- # +@pytest.mark.parametrize( + ("kind", "bad_metrics"), + [ + # CPU step with RAM metric + (EndpointStepCPU.CPU_BOUND_OPERATION, {Metrics.NECESSARY_RAM: 64}), + # RAM step with CPU metric + (EndpointStepRAM.RAM, {Metrics.CPU_TIME: 0.2}), + # I/O step with CPU metric + (EndpointStepIO.DB, {Metrics.CPU_TIME: 0.05}), + ], +) +def test_incoherent_kind_metric_pair( + kind: EndpointStepCPU | EndpointStepRAM | EndpointStepIO, + bad_metrics: dict[Metrics, float | int], +) -> None: + """Test that mismatched kind and metric combinations raise ValidationError.""" + with pytest.raises(ValidationError): + Step(kind=kind, step_metrics=bad_metrics) + + +def test_multiple_metrics_not_allowed() -> None: + """Test that providing multiple metrics in a single Step raises ValidationError.""" + with pytest.raises(ValidationError): + Step( + kind=EndpointStepCPU.CPU_BOUND_OPERATION, + step_metrics={ + Metrics.CPU_TIME: 0.1, + Metrics.NECESSARY_RAM: 64, + }, + ) + + +def test_empty_metrics_rejected() -> None: + """Test that an empty metrics dict is rejected by the validator.""" + with pytest.raises(ValidationError): + Step(kind=EndpointStepCPU.CPU_BOUND_OPERATION, step_metrics={}) + + +def test_wrong_metric_name_for_io() -> None: + """Test that an I/O step with a non-I/O metric key is rejected.""" + with pytest.raises(ValidationError): + Step( + kind=EndpointStepIO.CACHE, + step_metrics={Metrics.NECESSARY_RAM: 64}, + ) diff --git a/tests/unit/input_sructure/test_full_topology_input.py b/tests/unit/input_sructure/test_full_topology_input.py new file mode 100644 index 0000000..9e17573 --- /dev/null +++ b/tests/unit/input_sructure/test_full_topology_input.py @@ -0,0 +1,170 @@ +"""Unit-tests for the **topology schemas** (Client, ServerResources, …). + +Every section below is grouped by the object under test, separated by +clear comment banners so that long files remain navigable. + +The tests aim for: +* 100 % branch-coverage on custom validators. +* mypy strict-compatibility (full type hints, no Any). +* ruff compliance (imports ordered, no unused vars, ≤ 88-char lines). +""" + +from __future__ import annotations + +import pytest +from pydantic import ValidationError + +from app.config.constants import ( + EndpointStepCPU, + Metrics, + ServerResourcesDefaults, + SystemEdges, + SystemNodes, +) +from app.schemas.random_variables_config import RVConfig +from app.schemas.system_topology_schema.endpoint_schema import Endpoint, Step +from app.schemas.system_topology_schema.full_system_topology_schema import ( + Client, + Edge, + Server, + ServerResources, + TopologyGraph, + TopologyNodes, +) + + +# --------------------------------------------------------------------------- # +# Client +# --------------------------------------------------------------------------- # +def test_valid_client() -> None: + """A client with correct `type` should validate.""" + cli = Client(id="frontend", type=SystemNodes.CLIENT) + assert cli.type is SystemNodes.CLIENT + + +def test_invalid_client_type() -> None: + """Wrong `type` enum on Client must raise ValidationError.""" + with pytest.raises(ValidationError): + Client(id="wrong", type=SystemNodes.SERVER) + + +# --------------------------------------------------------------------------- # +# ServerResources +# --------------------------------------------------------------------------- # +def test_server_resources_defaults() -> None: + """Default values must match the constant table.""" + res = ServerResources() # all defaults + assert res.cpu_cores == ServerResourcesDefaults.CPU_CORES + assert res.ram_mb == ServerResourcesDefaults.RAM_MB + assert res.db_connection_pool is ServerResourcesDefaults.DB_CONNECTION_POOL + + +def test_server_resources_min_constraints() -> None: + """cpu_cores and ram_mb < minimum should fail validation.""" + with pytest.raises(ValidationError): + ServerResources(cpu_cores=0, ram_mb=128) # too small + + +# --------------------------------------------------------------------------- # +# Server +# --------------------------------------------------------------------------- # +def _dummy_endpoint() -> Endpoint: + """Return a minimal valid Endpoint needed to build a Server.""" + step = Step( + kind=EndpointStepCPU.CPU_BOUND_OPERATION, + step_metrics={Metrics.CPU_TIME: 0.1}, + ) + return Endpoint(endpoint_name="/ping", steps=[step]) + + +def test_valid_server() -> None: + """Server with correct type, resources and endpoint list.""" + srv = Server( + id="api-1", + type=SystemNodes.SERVER, + server_resources=ServerResources(cpu_cores=2, ram_mb=1024), + endpoints=[_dummy_endpoint()], + ) + assert srv.id == "api-1" + + +def test_invalid_server_type() -> None: + """Server with wrong `type` enum must be rejected.""" + with pytest.raises(ValidationError): + Server( + id="oops", + type=SystemNodes.CLIENT, + server_resources=ServerResources(), + endpoints=[_dummy_endpoint()], + ) + + +# --------------------------------------------------------------------------- # +# TopologyNodes +# --------------------------------------------------------------------------- # +def _single_node_topology() -> TopologyNodes: + """Helper that returns a valid TopologyNodes with one server and one client.""" + srv = Server( + id="svc-A", + server_resources=ServerResources(), + endpoints=[_dummy_endpoint()], + ) + cli = Client(id="browser") + return TopologyNodes(servers=[srv], client=cli) + + +def test_unique_ids_validator() -> None: + """Duplicate node IDs should trigger the unique_ids validator.""" + nodes = _single_node_topology() + # duplicate client ID + dup_srv = nodes.servers[0].model_copy(update={"id": "browser"}) + with pytest.raises(ValidationError): + TopologyNodes(servers=[dup_srv], client=nodes.client) + + +# --------------------------------------------------------------------------- # +# Edge +# --------------------------------------------------------------------------- # +def test_edge_source_equals_target_fails() -> None: + """Edge with identical source/target must raise.""" + latency_cfg = RVConfig(mean=0.05) + with pytest.raises(ValidationError): + Edge( + source="same", + target="same", + latency=latency_cfg, + edge_type=SystemEdges.NETWORK_CONNECTION, + ) + + +# --------------------------------------------------------------------------- # +# TopologyGraph +# --------------------------------------------------------------------------- # +def _latency() -> RVConfig: + """A tiny helper for RVConfig latency objects.""" + return RVConfig(mean=0.02) + + +def test_valid_topology_graph() -> None: + """End-to-end happy-path graph passes validation.""" + nodes = _single_node_topology() + edge = Edge( + source="browser", + target="svc-A", + latency=_latency(), + probability=1.0, + ) + graph = TopologyGraph(nodes=nodes, edges=[edge]) + assert len(graph.edges) == 1 + + +def test_edge_refers_unknown_node() -> None: + """Edge pointing to a non-existent node ID must fail.""" + nodes = _single_node_topology() + bad_edge = Edge( + source="browser", + target="ghost-srv", + latency=_latency(), + ) + with pytest.raises(ValidationError): + TopologyGraph(nodes=nodes, edges=[bad_edge]) diff --git a/tests/unit/simulation/test_requests_generator_input.py b/tests/unit/input_sructure/test_requests_generator_input.py similarity index 95% rename from tests/unit/simulation/test_requests_generator_input.py rename to tests/unit/input_sructure/test_requests_generator_input.py index bbd84ae..9fb49a5 100644 --- a/tests/unit/simulation/test_requests_generator_input.py +++ b/tests/unit/input_sructure/test_requests_generator_input.py @@ -2,7 +2,8 @@ from pydantic import ValidationError from app.config.constants import Distribution, TimeDefaults -from app.schemas.requests_generator_input import RVConfig, SimulationInput +from app.schemas.random_variables_config import RVConfig +from app.schemas.requests_generator_input import RqsGeneratorInput # -------------------------------------------------------------------------- # TEST RANDOM VARIABLE CONFIGURATION @@ -84,7 +85,7 @@ def test_invalid_distribution_raises() -> None: def test_default_user_sampling_window() -> None: """When user_sampling_window is omitted, it defaults to USER_SAMPLING_WINDOW.""" - inp = SimulationInput( + inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -97,7 +98,7 @@ def test_default_user_sampling_window() -> None: def test_explicit_user_sampling_window_kept() -> None: """An explicit user_sampling_window value is preserved unchanged.""" custom_window = 30 - inp = SimulationInput( + inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -112,7 +113,7 @@ def test_user_sampling_window_not_int_raises() -> None: """A non-integer user_sampling_window raises a ValidationError.""" with pytest.raises(ValidationError) as excinfo: - SimulationInput( + RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -136,7 +137,7 @@ def test_user_sampling_window_above_max_raises() -> None: """ too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError) as excinfo: - SimulationInput( + RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -161,7 +162,7 @@ def test_user_sampling_window_above_max_raises() -> None: def test_default_total_simulation_time() -> None: """When total_simulation_time is omitted, it defaults to SIMULATION_TIME.""" - inp = SimulationInput( + inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -174,7 +175,7 @@ def test_default_total_simulation_time() -> None: def test_explicit_total_simulation_time_kept() -> None: """An explicit total_simulation_time value is preserved unchanged.""" custom_time = 3_000 - inp = SimulationInput( + inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -189,7 +190,7 @@ def test_total_simulation_time_not_int_raises() -> None: """A non-integer total_simulation_time raises a ValidationError.""" with pytest.raises(ValidationError) as excinfo: - SimulationInput( + RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, @@ -213,7 +214,7 @@ def test_total_simulation_time_below_minimum_raises() -> None: """ too_small = TimeDefaults.MIN_SIMULATION_TIME - 1 with pytest.raises(ValidationError) as excinfo: - SimulationInput( + RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/sampler/test_gaussian_poisson.py index f0abbf8..b464007 100644 --- a/tests/unit/sampler/test_gaussian_poisson.py +++ b/tests/unit/sampler/test_gaussian_poisson.py @@ -10,7 +10,8 @@ from app.config.constants import TimeDefaults from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling -from app.schemas.requests_generator_input import RVConfig, SimulationInput +from app.schemas.random_variables_config import RVConfig +from app.schemas.requests_generator_input import RqsGeneratorInput # --------------------------------------------------------------------------- # Fixture @@ -18,9 +19,9 @@ @pytest.fixture -def base_input() -> SimulationInput: - """Return a minimal, valid SimulationInput for the Gaussian-Poisson sampler.""" - return SimulationInput( +def base_input() -> RqsGeneratorInput: + """Return a minimal, valid RqsGeneratorInput for the Gaussian-Poisson sampler.""" + return RqsGeneratorInput( avg_active_users=RVConfig( mean=10.0, variance=4.0, distribution="normal", ), @@ -35,14 +36,14 @@ def base_input() -> SimulationInput: # --------------------------------------------------------------------------- -def test_returns_generator_type(base_input: SimulationInput) -> None: +def test_returns_generator_type(base_input: RqsGeneratorInput) -> None: """The function must return a generator object.""" rng = np.random.default_rng(0) gen = gaussian_poisson_sampling(base_input, rng=rng) assert isinstance(gen, GeneratorType) -def test_generates_positive_gaps(base_input: SimulationInput) -> None: +def test_generates_positive_gaps(base_input: RqsGeneratorInput) -> None: """ With nominal parameters the sampler should emit at least a few positive gaps and no gap must be non-positive. @@ -67,7 +68,7 @@ def test_generates_positive_gaps(base_input: SimulationInput) -> None: def test_zero_users_produces_no_events( monkeypatch: pytest.MonkeyPatch, - base_input: SimulationInput, + base_input: RqsGeneratorInput, ) -> None: """ If every Gaussian draw returns 0 users, Λ == 0, diff --git a/tests/unit/sampler/test_poisson_posson.py b/tests/unit/sampler/test_poisson_posson.py index 5d89686..48d4f9a 100644 --- a/tests/unit/sampler/test_poisson_posson.py +++ b/tests/unit/sampler/test_poisson_posson.py @@ -11,13 +11,14 @@ from app.config.constants import TimeDefaults from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling -from app.schemas.requests_generator_input import RVConfig, SimulationInput +from app.schemas.random_variables_config import RVConfig +from app.schemas.requests_generator_input import RqsGeneratorInput @pytest.fixture -def base_input() -> SimulationInput: - """Return a minimal-valid SimulationInput for the sampler tests.""" - return SimulationInput( +def base_input() -> RqsGeneratorInput: + """Return a minimal-valid RqsGeneratorInput for the sampler tests.""" + return RqsGeneratorInput( # 1 average concurrent user … avg_active_users={"mean": 1.0, "distribution": "poisson"}, # … sending on average 60 req/min → 1 req/s @@ -32,7 +33,7 @@ def base_input() -> SimulationInput: # --------------------------------------------------------------------- -def test_sampler_returns_generator(base_input: SimulationInput) -> None: +def test_sampler_returns_generator(base_input: RqsGeneratorInput) -> None: """The function must return a real generator object.""" rng = np.random.default_rng(0) gen = poisson_poisson_sampling(base_input, rng=rng) @@ -40,7 +41,7 @@ def test_sampler_returns_generator(base_input: SimulationInput) -> None: assert isinstance(gen, GeneratorType) -def test_all_gaps_are_positive(base_input: SimulationInput) -> None: +def test_all_gaps_are_positive(base_input: RqsGeneratorInput) -> None: """Every yielded inter-arrival gap Δt must be > 0.""" rng = np.random.default_rng(1) gaps: list[float] = list( @@ -56,7 +57,7 @@ def test_all_gaps_are_positive(base_input: SimulationInput) -> None: # --------------------------------------------------------------------- -def test_sampler_is_reproducible_with_fixed_seed(base_input: SimulationInput) -> None: +def test_sampler_is_reproducible_with_fixed_seed(base_input: RqsGeneratorInput) -> None: """Same seed ⇒ identical first N gaps.""" seed = 42 n_samples = 15 @@ -86,12 +87,12 @@ def test_sampler_is_reproducible_with_fixed_seed(base_input: SimulationInput) -> # --------------------------------------------------------------------- -def test_zero_users_produces_no_events(base_input: SimulationInput) -> None: +def test_zero_users_produces_no_events(base_input: RqsGeneratorInput) -> None: """ With mean concurrent users == 0 the Poisson draw is almost surely 0, so Λ = 0 and the generator should yield no events. """ - input_data = SimulationInput( + input_data = RqsGeneratorInput( avg_active_users=RVConfig(mean=0.0, distribution="poisson"), avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, @@ -108,7 +109,7 @@ def test_zero_users_produces_no_events(base_input: SimulationInput) -> None: # --------------------------------------------------------------------- -def test_cumulative_time_never_exceeds_horizon(base_input: SimulationInput) -> None: +def test_cumulative_time_never_exceeds_horizon(base_input: RqsGeneratorInput) -> None: """ΣΔt (virtual clock) must stay strictly below total_simulation_time.""" rng = np.random.default_rng(7) gaps = list(poisson_poisson_sampling(base_input, rng=rng)) diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py index 5164413..9b77baf 100644 --- a/tests/unit/simulation/test_requests_generator.py +++ b/tests/unit/simulation/test_requests_generator.py @@ -11,7 +11,7 @@ from app.config.constants import TimeDefaults from app.core.simulation.requests_generator import requests_generator from app.core.simulation.simulation_run import run_simulation -from app.schemas.requests_generator_input import SimulationInput +from app.schemas.requests_generator_input import RqsGeneratorInput if TYPE_CHECKING: @@ -24,9 +24,9 @@ # -------------------------------------------------------------- @pytest.fixture -def base_input() -> SimulationInput: - """Return a SimulationInput with a 120-second simulation horizon.""" - return SimulationInput( +def base_input() -> RqsGeneratorInput: + """Return a RqsGeneratorInput with a 120-second simulation horizon.""" + return RqsGeneratorInput( avg_active_users={"mean": 1.0}, avg_request_per_minute_per_user={"mean": 2.0}, total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, @@ -37,7 +37,7 @@ def base_input() -> SimulationInput: # -------------------------------------------------------------- def test_default_requests_generator_uses_poisson_poisson_sampling( - base_input: SimulationInput, + base_input: RqsGeneratorInput, ) -> None: """ Verify that when avg_active_users.distribution is the default 'poisson', @@ -69,7 +69,7 @@ def test_requests_generator_dispatches_to_correct_sampler( - 'poisson' → poisson_poisson_sampling - 'normal' → gaussian_poisson_sampling """ - input_data = SimulationInput( + input_data = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": dist}, avg_request_per_minute_per_user={"mean": 1.0}, total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, @@ -87,7 +87,7 @@ def test_requests_generator_dispatches_to_correct_sampler( # -------------------------------------------------------------- def test_run_simulation_counts_events_up_to_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, + monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, ) -> None: """ Verify that all events whose cumulative inter-arrival times @@ -96,7 +96,7 @@ def test_run_simulation_counts_events_up_to_horizon( yield 4 events by t=10. """ def fake_requests_generator_fixed( - data: SimulationInput, *, rng: np.random.Generator, + data: RqsGeneratorInput, *, rng: np.random.Generator, ) -> Iterator[float]: # Replace the complex Poisson-Poisson sampler with a deterministic sequence. yield from [1.0, 2.0, 3.0, 4.0] @@ -118,14 +118,14 @@ def fake_requests_generator_fixed( def test_run_simulation_includes_event_at_exact_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, + monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, ) -> None: """ Confirm that an event scheduled exactly at the simulation horizon is not processed, since SimPy stops at t == horizon. """ def fake_generator_at_horizon( - data: SimulationInput, *, rng: np.random.Generator, + data: RqsGeneratorInput, *, rng: np.random.Generator, ) -> Iterator[float]: # mypy assertion, pydantic guaranteed @@ -146,14 +146,14 @@ def fake_generator_at_horizon( def test_run_simulation_excludes_event_beyond_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, + monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, ) -> None: """ Ensure that events scheduled after the simulation horizon are not counted. """ def fake_generator_beyond_horizon( - data: SimulationInput, *, rng: np.random.Generator, + data: RqsGeneratorInput, *, rng: np.random.Generator, ) -> Iterator[float]: # mypy assertion, pydantic guaranteed @@ -173,14 +173,14 @@ def fake_generator_beyond_horizon( def test_run_simulation_zero_events_when_generator_empty( - monkeypatch: pytest.MonkeyPatch, base_input: SimulationInput, + monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, ) -> None: """ Check that run_simulation reports zero requests when no inter-arrival times are yielded. """ def fake_generator_empty( - data: SimulationInput, *, rng: np.random.Generator, + data: RqsGeneratorInput, *, rng: np.random.Generator, ) -> Iterator[float]: # Empty generator yields nothing. if False: From 953e31814c0c9094c869d80a26b16021ef49f3af Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Tue, 15 Jul 2025 19:39:09 +0200 Subject: [PATCH 15/35] Features/definition full payload simulation (#4) * Improved input structure and pytest * Improved pytest structure accordingly to the new schema * definition of the metrics to be measured and update of the simulation input * improved documentations added rationale behind metrics * improved pytest logic and code coherence * Update src/app/core/helpers.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../input_structure_for_the_simulation.md | 514 ++++++++---------- .../metrics_to_measure.md | 49 ++ src/app/api/simulation.py | 4 +- src/app/config/constants.py | 40 ++ .../core/event_samplers/gaussian_poisson.py | 6 +- .../core/event_samplers/poisson_poisson.py | 6 +- src/app/core/helpers.py | 38 ++ src/app/core/simulation/requests_generator.py | 4 + src/app/core/simulation/simulation_run.py | 28 +- src/app/schemas/full_simulation_input.py | 2 + src/app/schemas/requests_generator_input.py | 7 - src/app/schemas/simulation_settings_input.py | 31 ++ tests/conftest.py | 115 ++++ .../test_requests_generator_input.py | 175 ++---- tests/unit/sampler/test_gaussian_poisson.py | 75 ++- tests/unit/sampler/test_poisson_poisson.py | 124 +++++ tests/unit/sampler/test_poisson_posson.py | 120 ---- .../simulation/test_requests_generator.py | 212 +++----- 18 files changed, 818 insertions(+), 732 deletions(-) create mode 100644 documentation/backend_documentation/metrics_to_measure.md create mode 100644 src/app/core/helpers.py create mode 100644 src/app/schemas/simulation_settings_input.py create mode 100644 tests/unit/sampler/test_poisson_poisson.py delete mode 100644 tests/unit/sampler/test_poisson_posson.py diff --git a/documentation/backend_documentation/input_structure_for_the_simulation.md b/documentation/backend_documentation/input_structure_for_the_simulation.md index e31c860..d28b090 100644 --- a/documentation/backend_documentation/input_structure_for_the_simulation.md +++ b/documentation/backend_documentation/input_structure_for_the_simulation.md @@ -1,404 +1,320 @@ -### **FastSim — Request-Generator Input Configuration** +### **FastSim — Simulation Input Schema** -A **single, self-consistent contract** links three layers of the codebase: +The `SimulationPayload` is the single, self-contained contract that defines an entire simulation run. Its architecture is guided by a core philosophy: to achieve maximum control over input data through robust, upfront validation. To implement this, we extensively leverage Pydantic's powerful validation capabilities and Python's `Enum` classes. This approach creates a strictly-typed and self-consistent schema that guarantees any configuration is validated *before* the simulation engine starts. -1. **Global Constants** – `TimeDefaults`, `Distribution` -2. **Random Variable Schema** – `RVConfig` -3. **Traffic-Generator Payload** – `RqsGeneratorInput` +This contract brings together three distinct but interconnected layers of configuration into one cohesive structure: -Understanding how these layers interact is key to crafting valid and predictable traffic profiles, preventing common configuration errors before the simulation begins. +1. **`rqs_input` (`RqsGeneratorInput`)**: Defines the **workload profile**—how many users are active and how frequently they generate requests. +2. **`topology_graph` (`TopologyGraph`)**: Describes the **system's architecture**—its components, resources, and the network connections between them. +3. **`sim_settings` (`SimulationSettings`)**: Configures **global simulation parameters**, such as total runtime and which metrics to collect. + +This layered design decouples the *what* (the system topology) from the *how* (the traffic pattern and simulation control), allowing for modular and reusable configurations. Adherence to our validation-first philosophy means every payload is rigorously parsed against this schema. By using a controlled vocabulary of `Enums` and the power of Pydantic, we guarantee that any malformed or logically inconsistent input is rejected upfront with clear, actionable errors, ensuring the simulation engine operates only on perfectly valid data. --- -### 1. Global Constants +### **1. Component: Traffic Profile (`RqsGeneratorInput`)** -| Constant Set | Purpose | Key Values | -| :--- | :--- | :--- | -| **`TimeDefaults`** (`IntEnum`) | Defines default values and validation bounds for time-based fields. | `SIMULATION_TIME = 3600 s`, `MIN_SIMULATION_TIME = 1800 s`, `USER_SAMPLING_WINDOW = 60 s`, `MIN_USER_SAMPLING_WINDOW = 1 s`, `MAX_USER_SAMPLING_WINDOW = 120 s` | -| **`Distribution`** (`StrEnum`) | Defines the canonical names of probability distributions supported by the generator. | `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"` | +This component specifies the dynamic behavior of users interacting with the system. It is built upon a foundation of shared constants and a reusable, rigorously validated random variable schema. This design ensures that any traffic profile is not only structurally correct but also logically sound before the simulation begins. -***Why use constants?*** +#### **Global Constants** -* **Consistency:** They are referenced by validators; changing a value in one place updates the entire validation tree. -* **Safety:** They guarantee that a typo, such as `"Poisson"`, raises an error instead of silently failing or switching to an unintended default. +These enums provide a single source of truth for validation and default values, eliminating "magic strings" and ensuring consistency. + +| Constant Set | Purpose | Key Values | +| :--- | :--- | :--- | +| **`TimeDefaults`** (`IntEnum`) | Defines default values and validation bounds for time-based fields. | `USER_SAMPLING_WINDOW = 60`, `MIN_USER_SAMPLING_WINDOW = 1`, `MAX_USER_SAMPLING_WINDOW = 120` | +| **`Distribution`** (`StrEnum`) | Defines the canonical names of supported probability distributions. | `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"` | --- -### 2. Random Variable Schema (`RVConfig`) +#### **Random Variable Schema (`RVConfig`)** + +At the core of the traffic generator is the `RVConfig`, a schema for defining stochastic variables. This allows critical parameters like user population and request rates to be modeled not as fixed numbers, but as draws from a probability distribution. Pydantic validators are used extensively to enforce correctness. ```python class RVConfig(BaseModel): """class to configure random variables""" - mean: float distribution: Distribution = Distribution.POISSON variance: float | None = None @field_validator("mean", mode="before") - def ensure_mean_is_numeric( - cls, # noqa: N805 - v: object, - ) -> float: - """Ensure `mean` is numeric, then coerce to float.""" - err_msg = "mean must be a number (int or float)" - if not isinstance(v, (float, int)): - raise ValueError(err_msg) # noqa: TRY004 - return float(v) - - @model_validator(mode="after") # type: ignore[arg-type] - def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 - """Set variance = mean when distribution == 'normal' and variance is missing.""" - if model.variance is None and model.distribution == Distribution.NORMAL: - model.variance = model.mean - return model + def ensure_mean_is_numeric(cls, v: object) -> float: + # ... implementation ... + @model_validator(mode="after") + def default_variance(cls, model: "RVConfig") -> "RVConfig": + # ... implementation ... ``` -#### Validation Logic - -| Check | Pydantic Hook | Rule | -| :--- | :--- | :--- | -| *Mean must be numeric* | `@field_validator("mean", before)` | Rejects strings and nulls; coerces `int` to `float`. | -| *Autofill variance* | `@model_validator(after)` | If `distribution == "normal"` **and** `variance` is not provided, sets `variance = mean`. | -| *Positivity enforcement* | `PositiveFloat` / `PositiveInt` | Pydantic's constrained types are used on fields like `mean` where negative values are invalid, rejecting them before business logic runs. | - -> **Self-Consistency:** Every random draw in the simulation engine relies on a validated `RVConfig` instance. This avoids redundant checks and defensive code downstream. +##### **Built-in Validation Logic** ---- +Pydantic's validation system is leveraged to enforce several layers of correctness directly within the schema: -### 3. Traffic-Generator Payload (`RqsGeneratorInput`) - -| Field | Type | Validation Tied to Constants | +| Check | Pydantic Hook | Rule & Rationale | | :--- | :--- | :--- | -| `avg_active_users` | `RVConfig` | No extra constraints needed; the inner schema guarantees correctness. | -| `avg_request_per_minute_per_user` | `RVConfig` | Same as above. | -| `total_simulation_time` | `int` | `ge=TimeDefaults.MIN_SIMULATION_TIME`
default=`TimeDefaults.SIMULATION_TIME` | -| `user_sampling_window` | `int` | `ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW`
`le=TimeDefaults.MAX_USER_SAMPLING_WINDOW`
default=`TimeDefaults.USER_SAMPLING_WINDOW` | - -#### How the Generator Uses Each Field - -The simulation evolves based on a simple, powerful loop: - -1. **Timeline Partitioning** (`user_sampling_window`): The simulation timeline is divided into fixed-length windows. For each window: -2. **Active User Sampling** (`avg_active_users`): A single value is drawn to determine the concurrent user population, `U(t)`, for that window. -3. **Request Rate Calculation** (`avg_request_per_minute_per_user`): Each of the `U(t)` users contributes to the total request rate, yielding an aggregate load for the window. -4. **Termination** (`total_simulation_time`): The loop stops once the cumulative simulated time reaches this value. - -Because every numeric input is range-checked upfront, **the runtime engine never needs to defend itself** against invalid data like zero-length windows or negative rates, making the event-loop lean and predictable. +| **Numeric `mean` Enforcement** | `@field_validator("mean", mode="before")` | This validator intercepts the `mean` field *before* any type casting. It ensures the provided value is an `int` or `float`, raising an explicit `ValueError` for invalid types like strings (`"100"`) or nulls. This prevents common configuration errors and guarantees a valid numeric type for all downstream logic. | +| **Valid `distribution` Name** | `Distribution` (`StrEnum`) type hint | By type-hinting the `distribution` field with the `Distribution` enum, Pydantic automatically ensures that its value must be one of the predefined members (e.g., `"poisson"`, `"normal"`). Any typo or unsupported value (like `"Poisson"` with a capital 'P') results in an immediate validation error. | +| **Intelligent `variance` Defaulting** | `@model_validator(mode="after")` | This powerful validator runs *after* all individual fields have been validated. It enforces a crucial business rule: if `distribution` is `"normal"` **and** `variance` is not provided, the schema automatically sets `variance = mean`. This provides a safe, logical default and simplifies configuration for the user, while ensuring the model is always self-consistent. | --- -### 4. End-to-End Example (Fully Explicit) - -```json -{ - "avg_active_users": { - "mean": 100, - "distribution": "poisson" - }, - "avg_request_per_minute_per_user": { - "mean": 4.0, - "distribution": "normal", - "variance": null - }, - "total_simulation_time": 5400, - "user_sampling_window": 45 -}``` - -#### What the Validators Do +#### **Payload Structure (`RqsGeneratorInput`)** -1. `mean` is numeric ✔️ -2. `distribution` string matches an enum member ✔️ -3. `total_simulation_time` ≥ 1800 ✔️ -4. `user_sampling_window` is in the range ✔️ -5. `variance` is `null` with a `normal` distribution ⇒ **auto-set to 4.0** ✔️ +This is the main payload for configuring the traffic workload. It composes the `RVConfig` schema and adds its own validation rules. -The payload is accepted. The simulator will run for $5400 / 45 = 120$ simulation windows. - ---- +| Field | Type | Validation & Purpose | +| :--- | :--- | :--- | +| `avg_active_users` | `RVConfig` | A random variable defining concurrent users. **Inherits all `RVConfig` validation**, ensuring its `mean`, `distribution`, and `variance` are valid. | +| `avg_request_per_minute_per_user` | `RVConfig` | A random variable for the user request rate. Also **inherits all `RVConfig` validation**. | +| `user_sampling_window` | `int` | The time duration (in seconds) for which the number of active users is held constant. Its value is **strictly bounded** by Pydantic's `Field` to be between `MIN_USER_SAMPLING_WINDOW` (1) and `MAX_USER_SAMPLING_WINDOW` (120). | -### 5. Common Error Example +##### **How the Generator Uses Each Field** -```json -{ - "avg_active_users": { "mean": "many" }, - "avg_request_per_minute_per_user": { "mean": -2 }, - "total_simulation_time": 600, - "user_sampling_window": 400 -} -``` +The simulation evolves based on this robustly validated input: -| # | Fails On | Error Message (Abridged) | -| :- | :--- | :--- | -| 1 | Numeric check | `Input should be a valid number` | -| 2 | Positivity check | `Input should be greater than 0` | -| 3 | Minimum time check | `Input should be at least 1800` | -| 4 | Maximum window check | `Input should be at most 120` | +1. The timeline is divided into windows of `user_sampling_window` seconds. Because this value is range-checked upfront by Pydantic, the simulation is protected from invalid configurations like zero-length or excessively long windows. +2. At the start of each window, a number of active users, `U(t)`, is drawn from the `avg_active_users` distribution. The embedded `RVConfig` guarantees this distribution is well-defined. +3. Each of the `U(t)` users generates requests according to a rate drawn from `avg_request_per_minute_per_user`. ---- +Because every numeric input is type-checked and range-checked by Pydantic before the simulation begins, **the runtime engine never needs to defend itself** against invalid data. This makes the core simulation loop leaner, more predictable, and free from redundant error-handling logic. -### Takeaways +### **2. Component: System Blueprint (`TopologyGraph`)** -* **Single Source of Truth:** Enums centralize all literal values, eliminating magic strings. -* **Layered Validation:** The `Constants → RVConfig → Request Payload` hierarchy ensures that only well-formed traffic profiles reach the simulation engine. -* **Safe Defaults:** Omitting optional fields never leads to undefined behavior; defaults are sourced directly from the `TimeDefaults` constants. +The topology schema is the static blueprint of the digital twin you wish to simulate. It describes the system's components, their resources, their behavior, and how they are interconnected. To ensure simulation integrity, FastSim uses this schema to rigorously validate the entire system description upfront, rejecting any inconsistencies before the simulation begins. -This robust, layered approach allows you to configure the generator with confidence, knowing that any malformed scenario will be rejected early with explicit, actionable error messages. +Of course. Here is the complete, consolidated, and highly detailed documentation for the `TopologyGraph` component, with all duplications removed and explanations expanded as requested. +--- -### **FastSim Topology Input Schema** +### **2. Component: System Blueprint (`TopologyGraph`)** -The topology schema is the blueprint of the digital twin, defining the structure, resources, behavior, and network connections of the system you wish to simulate. It describes: +The topology schema is the static blueprint of the digital twin you wish to simulate. It describes the system's components, their resources, their behavior, and how they are interconnected. To ensure simulation integrity, FastSim uses this schema to rigorously validate the entire system description upfront, rejecting any inconsistencies before the simulation begins. -1. **What work** each request performs (`Endpoint` → `Step`). -2. **What components** exist in the system (`Server`, `Client`). -3. **Which resources** each component possesses (`ServerResources`). -4. **How** components are interconnected (`Edge`). +#### **Design Philosophy: A "Micro-to-Macro" Approach** -To ensure simulation integrity and prevent runtime errors, FastSim uses Pydantic to rigorously validate the entire topology upfront. Every inconsistency is rejected at load-time. The following sections detail the schema's layered design, from the most granular operation to the complete system graph. +The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). ---- -### **A Controlled Vocabulary: The Role of Constants** +This layered approach provides several key advantages that enhance the convenience and reliability of crafting simulations: -To ensure that input configurations are unambiguous and robust, the topology schema is built upon a controlled vocabulary defined by a series of Python `Enum` classes. Instead of relying on raw strings or "magic values" (e.g., `"cpu_bound_operation"`), which are prone to typos and inconsistencies, the schema uses these enumerations to define the finite set of legal values for categories like operation kinds, metrics, and node types. +* **Modularity and Reusability:** Core operations are defined once as `Steps` and can be reused across multiple `Endpoints`. This modularity simplifies configuration, as complex workflows can be built from a library of simple, well-defined blocks. +* **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). This allows you to focus on one part of the configuration at a time, confident that the overall structure will be validated globally. +* **Clarity and Maintainability:** The hierarchy is intuitive and mirrors how developers conceptualize system architecture. It is clear how atomic operations roll up into endpoints, which are hosted on servers connected by a network. This makes configuration files easy to read, write, and maintain over time. +* **Guaranteed Robustness:** By catching all structural and referential errors before the simulation begins, this approach embodies the "fail-fast" principle. It guarantees that the SimPy engine operates on a valid, self-consistent model, eliminating a whole class of potential runtime bugs. -This design choice provides three critical benefits: +#### **A Controlled Vocabulary: Topology Constants** -1. **Strong Type-Safety:** By using `StrEnum` and `IntEnum`, Pydantic models can validate input payloads with absolute certainty. Any value not explicitly defined in the corresponding `Enum` is immediately rejected. This prevents subtle configuration errors that would be difficult to debug at simulation time. -2. **Developer Experience and Error Prevention:** This approach provides powerful auto-completion and static analysis. IDEs, `mypy`, and linters can catch invalid values during development, providing immediate feedback long before the code is executed. -3. **Single Source of Truth:** All valid categories are centralized in the `app.config.constants` module. This makes the system easier to maintain and extend. To add a new resource type or metric, a developer only needs to update the `Enum` definition, and the change propagates consistently to validation logic, the simulation engine, and any other component that uses it. +The schema's robustness is founded on a controlled vocabulary defined by Python `Enum` classes. Instead of error-prone "magic strings" (e.g., `"cpu_operation"`), the schema uses these enums to define the finite set of legal values for categories like operation kinds, metrics, and node types. This design choice is critical for several reasons: -The key enumerations that govern the topology schema include: +* **Absolute Type-Safety:** Pydantic can validate input with certainty. Any value not explicitly defined in the corresponding `Enum` is immediately rejected, preventing subtle typos or incorrect values from causing difficult-to-debug runtime failures. +* **Enhanced Developer Experience:** IDEs and static analysis tools like `mypy` can provide auto-completion and catch invalid values during development, offering immediate feedback long before the simulation is run. +* **Single Source of Truth:** All valid categories are centralized. To add a new resource type or metric, a developer only needs to update the `Enum` definition, and the change propagates consistently throughout the validation logic. | Constant Enum | Purpose | | :--- | :--- | -| **`EndpointStepIO`, `EndpointStepCPU`, `EndpointStepRAM`** | Define the exhaustive list of valid `kind` values for a `Step`. | -| **`Metrics`** | Specify the legal dictionary keys within a `Step`'s `step_metrics`, enforcing the one-to-one link between a `kind` and its metric. | -| **`SystemNodes` and `SystemEdges`** | Enumerate the allowed categories for nodes and their connections in the high-level `TopologyGraph`. | - -### **Design Philosophy: A "Micro-to-Macro" Approach** - -The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). - -This layered approach provides several key advantages: -* **Modularity and Reusability:** An `Endpoint` is just a sequence of `Steps`. You can reorder, add, or remove steps without redefining the core operations themselves. -* **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). -* **Clarity and Maintainability:** The hierarchy makes the system description intuitive to read and write. It’s clear how atomic operations roll up into endpoints, which are hosted on servers connected by a network. -* **Robustness:** All structural and referential errors are caught before the simulation begins, guaranteeing that the SimPy engine operates on a valid, self-consistent model. +| **`EndpointStepIO`, `EndpointStepCPU`, `EndpointStepRAM`** | Defines the exhaustive list of valid `kind` values for a `Step`. | +| **`Metrics`** | Specifies the legal dictionary keys within a `Step`'s `step_metrics`. | +| **`SystemNodes`** | Enumerate the allowed `type` for nodes (e.g., `"server"`, `"client"`). | +| **`SystemEdges`** | Enumerate the allowed categories for connections between nodes. | --- -### **1. The Atomic Unit: `Step`** +### **Schema Hierarchy and In-Depth Validation** -A `Step` represents a single, indivisible operation executed by an asynchronous coroutine within an endpoint. It is the fundamental building block of all work in the simulation. +Here we break down each component of the topology, highlighting the specific Pydantic validators that enforce its correctness and the deep rationale behind these choices. -Each `Step` has a `kind` (the category of work) and `step_metrics` (the resources it consumes). +#### **1. `Step`**: The Atomic Unit of Work +A `Step` represents a single, indivisible operation. Its validation is the cornerstone of ensuring that all work performed in the simulation is logical and well-defined. -```python -class Step(BaseModel): - """ - A single, indivisible operation. - It must be quantified by exactly ONE metric. - """ - kind: EndpointStepIO | EndpointStepCPU | EndpointStepRAM - step_metrics: dict[Metrics, PositiveFloat | PositiveInt] +| Validation Check | Pydantic Hook | Rule & Rationale | +| :--- | :--- | :--- | +| **Coherence of `kind` and `metric`** | `@model_validator` | **Rule:** The `step_metrics` dictionary must contain *exactly one* entry, and its key must be the correct metric for the `Step`'s `kind`.

**Rationale:** This is the most critical validation on a `Step`. The one-to-one mapping is a deliberate design choice for simplicity and robustness. It allows the simulation engine to be deterministic: a `cpu_bound_operation` step is routed to the CPU resource, an `io_wait` step to an I/O event, etc. This avoids the immense complexity of modeling operations that simultaneously contend for multiple resource types (e.g., CPU and RAM). This validator enforces that clear, unambiguous contract, preventing illogical pairings like a RAM allocation step being measured in `cpu_time`. | +| **Positive Metric Values** | `PositiveFloat` / `PositiveInt` | **Rule:** All numeric values in `step_metrics` must be greater than zero.

**Rationale:** It is physically impossible to spend negative or zero time on an operation or allocate negative RAM. This validation uses Pydantic's constrained types to offload this fundamental sanity check, ensuring that only plausible, positive resource requests enter the system and keeping the core simulation logic free of defensive checks against nonsensical data. | - @model_validator(mode="after") - def ensure_coherence_kind_metrics(cls, model: "Step") -> "Step": - metrics_keys = set(model.step_metrics) +#### **2. `Endpoint`**: Composing Workflows +An `Endpoint` defines a complete, user-facing operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. - # Enforce that a step performs one and only one type of work. - if len(metrics_keys) != 1: - raise ValueError("step_metrics must contain exactly one entry") +| Validation Check | Pydantic Hook | Rule & Rationale | +| :--- | :--- | :--- | +| **Consistent Naming** | `@field_validator("endpoint_name")` | **Rule:** Automatically converts the `endpoint_name` to lowercase.

**Rationale:** This enforces a canonical representation for all endpoint identifiers. It eliminates ambiguity and potential bugs that could arise from inconsistent capitalization (e.g., treating `/predict` and `/Predict` as different endpoints). This simple normalization makes the configuration more robust and simplifies endpoint lookups within the simulation engine. | - # Enforce that the metric is appropriate for the kind of work. - if isinstance(model.kind, EndpointStepCPU): - if metrics_keys != {Metrics.CPU_TIME}: - raise ValueError(f"CPU step requires metric '{Metrics.CPU_TIME}'") +#### **3. System Nodes**: `Server` & `Client` +These models define the macro-components of your architecture where work is performed and resources are located. - elif isinstance(model.kind, EndpointStepRAM): - if metrics_keys != {Metrics.NECESSARY_RAM}: - raise ValueError(f"RAM step requires metric '{Metrics.NECESSARY_RAM}'") +| Validation Check | Pydantic Hook | Rule & Rationale | +| :--- | :--- | :--- | +| **Standardized Node `type`** | `@field_validator("type")` | **Rule:** The `type` field must strictly match the expected `SystemNodes` enum member (e.g., a `Server` object must have `type: "server"`).

**Rationale:** This provides a "belt-and-suspenders" check. Even if a default is provided, this validation prevents a user from explicitly overriding a node's type to a conflicting value. It enforces a strict contract: a `Server` object is always and only a server. This prevents object state confusion and simplifies pattern matching in the simulation engine. | +| **Unique Node IDs** | `@model_validator` in `TopologyNodes` | **Rule:** All `id` fields across all `Server` nodes and the `Client` node must be unique.

**Rationale:** This is fundamental to creating a valid graph. Node IDs are the primary keys used to address components. If two nodes shared the same ID, any `Edge` pointing to that ID would be ambiguous. This global validator prevents such ambiguity, guaranteeing that every node in the system is uniquely identifiable, which is a precondition for the final referential integrity check. | - elif isinstance(model.kind, EndpointStepIO): - if metrics_keys != {Metrics.IO_WAITING_TIME}: - raise ValueError(f"I/O step requires metric '{Metrics.IO_WAITING_TIME}'") +#### **4. `Edge`**: Connecting the Components +An `Edge` represents a directed network link between two nodes, defining how requests flow through the system. - return model -``` +| Validation Check | Pydantic Hook | Rule & Rationale | +| :--- | :--- | :--- | +| **No Self-Loops** | `@model_validator` | **Rule:** An edge's `source` ID cannot be the same as its `target` ID.

**Rationale:** In the context of a distributed system topology, a network call from a service to itself is a logical anti-pattern. Such an operation would typically be modeled as an internal process (i.e., another `Step`), not a network hop. This validator prevents this common configuration error and simplifies the routing logic by disallowing trivial cycles. | -> **Design Rationale:** The strict one-to-one mapping between a `Step` and a single metric is a core design choice. It simplifies the simulation engine immensely, as each `Step` can be deterministically routed to a request on a single SimPy resource (a CPU queue, a RAM container, or an I/O event). This avoids the complexity of modeling operations that simultaneously consume multiple resource types. +#### **5. `TopologyGraph`**: The Complete System +This is the root model that aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. ---- +| Validation Check | Pydantic Hook | Rule & Rationale | +| :--- | :--- | :--- | +| **Referential Integrity** | `@model_validator` | **Rule:** Every `edge.source` and `edge.target` ID must correspond to an actual node ID defined in `TopologyNodes`.

**Rationale:** This is the capstone validation that guarantees the structural integrity of the entire system graph. It prevents "dangling edges"—connections that point to non-existent nodes. Without this check, the simulation could start with a broken topology and crash unexpectedly at runtime when a request attempts to traverse a broken link. By performing this check *after* all nodes and edges have been parsed, we ensure that the system described is a complete and validly connected graph, fully embodying the "fail-fast" principle. | -### **2. Composing Workflows: `Endpoint`** +### **3. Component: Global Simulation Control (`SimulationSettings`)** -An `Endpoint` defines a complete, user-facing operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. +This final component configures the simulation's execution parameters and, critically, determines what data is collected. It acts as the master control panel for the simulation run, governing both its duration and the scope of its output. + +#### **Payload Structure (`SimulationSettings`)** ```python -class Endpoint(BaseModel): - """A higher-level API call, executed as a strict sequence of steps.""" - endpoint_name: str - steps: list[Step] - - @field_validator("endpoint_name", mode="before") - def name_to_lower(cls, v: str) -> str: - """Standardize endpoint name to be lowercase for consistency.""" - return v.lower() +class SimulationSettings(BaseModel): + """Global parameters that apply to the whole run.""" + total_simulation_time: int = Field(...) + enabled_sample_metrics: set[SampledMetricName] = Field( + default_factory=lambda: { + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.CORE_BUSY, + SampledMetricName.RAM_IN_USE, + }, + description="Which time‑series KPIs to collect by default.", + ) + enabled_event_metrics: set[EventMetricName] = Field( + default_factory=lambda: { + EventMetricName.RQS_LATENCY, + }, + description="Which per‑event KPIs to collect by default.", + ) ``` -> **Design Rationale:** The simulation processes the `steps` list in the exact order provided. The total latency and resource consumption of an endpoint call is the sequential sum of its individual `Step` delays. This directly models the execution flow of a typical web request handler. +| Field | Type | Purpose & Validation | +| :--- | :--- | :--- | +| `total_simulation_time` | `int` | The total simulation horizon in seconds. Must be `>= MIN_SIMULATION_TIME` (1800s). Defaults to `3600`. | +| `enabled_sample_metrics` | `set[SampledMetricName]` | A set of metrics to be sampled at fixed intervals, creating a time-series (e.g., `"ready_queue_len"`, `"ram_in_use"`). | +| `enabled_event_metrics` | `set[EventMetricName]` | A set of metrics recorded only when specific events occur, with no time-series (e.g., `"rqs_latency"`, `"llm_cost"`). | +We add standard default value for the metrics in case they will be omitted --- -### **3. Defining Components: System Nodes** +#### **Design Rationale: Pre-validated, On-Demand Metrics for Robust and Efficient Collection** -Nodes are the macro-components of your architecture where work is performed and resources are located. +The design of the `settings` component, particularly the `enabled_*_metrics` fields, is centered on two core principles: **user-driven selectivity** and **ironclad validation**. The rationale behind this approach is to create a system that is both flexible and fundamentally reliable. -#### **`ServerResources` and `Server`** -A `Server` node hosts endpoints and owns a set of physical resources. These resources are mapped directly to specific SimPy primitives, which govern how requests queue and contend for service. +##### **1. The Principle of User-Driven Selectivity** -```python -class ServerResources(BaseModel): - """Quantifiable resources available on a server node.""" - cpu_cores: PositiveInt = Field(ge=ServerResourcesDefaults.MINIMUM_CPU_CORES) - ram_mb: PositiveInt = Field(ge=ServerResourcesDefaults.MINIMUM_RAM_MB) - db_connection_pool: PositiveInt | None = None - -class Server(BaseModel): - """A node that hosts endpoints and owns resources.""" - id: str - type: SystemNodes = SystemNodes.SERVER - server_resources: ServerResources - endpoints: list[Endpoint] -``` +We recognize that data collection is not free; it incurs performance overhead in terms of both memory (to store the data) and CPU cycles (to record it). Not every simulation requires every possible metric. For instance: +* A simulation focused on CPU contention may not need detailed LLM cost tracking. +* A high-level analysis of end-to-end latency might not require fine-grained data on event loop queue lengths. -> **Design Rationale: Mapping to SimPy Primitives** -> * `cpu_cores` maps to a `simpy.Resource`. This models a classic semaphore where only `N` processes can execute concurrently, and others must wait in a queue. It perfectly represents CPU-bound tasks competing for a limited number of cores. -> * `ram_mb` maps to a `simpy.Container`. A container models a divisible resource where processes can request and return variable amounts. This is ideal for memory, as multiple requests can simultaneously hold different amounts of RAM without exclusively locking the entire memory pool. +By allowing the user to explicitly select only the metrics they need, we empower them to tailor the simulation to their specific analytical goals. This on-demand approach makes the simulator more efficient and versatile, avoiding the waste of collecting and processing irrelevant data. -#### **`Client`** -The `Client` is a special, resource-less node that serves as the origin point for all requests generated during the simulation. +##### **2. The Power of Ironclad, Upfront Validation** -#### **Node Aggregation and Validation (`TopologyNodes`)** -All `Server` and `Client` nodes are collected in the `TopologyNodes` model, which performs a critical validation check: ensuring all component IDs are unique across the entire system. +This is where the design choice becomes critical for robustness. Simply allowing users to provide a list of strings is inherently risky due to potential typos or misunderstandings of metric names. Our schema mitigates this risk entirely through a strict, upfront validation contract. ---- +* **A Strict Contract via Enums:** The `enabled_sample_metrics` and `enabled_event_metrics` fields are not just sets of strings; they are sets of `SampledMetricName` and `EventMetricName` enum members. When Pydantic parses the input payload, it validates every single metric name provided by the user against these canonical `Enum` definitions. -### **4. Connecting the Components: `Edge`** +* **Immediate Rejection of Invalid Input:** If a user provides a metric name that is not a valid member of the corresponding enum (e.g., a typo like `"request_latncy"` or a misunderstanding like `"cpu_usage"` instead of `"core_busy"`), Pydantic immediately rejects the entire payload with a clear `ValidationError`. This happens *before* a single line of the simulation engine code is executed. -An `Edge` represents a directed network link between two nodes, defining how requests flow through the system. +##### **3. The Benefit: Guaranteed Runtime Integrity** -```python -class Edge(BaseModel): - """A directed connection in the topology graph.""" - source: str - target: str - latency: RVConfig - probability: float = Field(1.0, ge=0.0, le=1.0) - edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION -``` +This pre-validation provides a crucial and powerful guarantee to the simulation engine, leading to a safer and more efficient runtime: -> **Design Rationale:** -> * **Stochastic Latency:** Latency is not a fixed number but an `RVConfig` object. This allows you to model realistic network conditions using various probability distributions (e.g., log-normal for internet RTTs, exponential for failure retries), making the simulation far more accurate. -> * **Probabilistic Routing:** The `probability` field enables modeling of simple load balancing or A/B testing scenarios where traffic from a single `source` can be split across multiple `target` nodes. +* **Safe, Error-Free Initialization:** At the very beginning of the simulation, the engine receives the *validated* set of metric names. It knows with absolute certainty the complete and exact set of metrics it needs to track. This allows it to safely initialize all necessary data collection structures (like dictionaries) at the start of the run. For example: + ```python + # This is safe because every key is guaranteed to be valid. + event_results = {metric_name: [] for metric_name in settings.enabled_event_metrics} + ``` ---- - -### **5. The Complete System: `TopologyGraph`** - -The `TopologyGraph` is the root of the configuration. It aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. - -```python -class TopologyGraph(BaseModel): - """The complete system definition, uniting all nodes and edges.""" - nodes: TopologyNodes - edges: list[Edge] - - @model_validator(mode="after") - def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": - """Ensure every edge connects two valid, existing nodes.""" - valid_ids = {s.id for s in model.nodes.servers} | {model.nodes.client.id} - for e in model.edges: - if e.source not in valid_ids or e.target not in valid_ids: - raise ValueError(f"Edge '{e.source}->{e.target}' references an unknown node.") - return model -``` -> **Design Rationale:** This final check guarantees that the topology is a valid, connected graph. By confirming that every `edge.source` and `edge.target` corresponds to a defined node `id`, it prevents the simulation from starting with a broken or nonsensical configuration, embodying the "fail-fast" principle. +* **Elimination of Runtime KeyErrors:** Because all dictionary keys are guaranteed to exist from the start, the core data collection logic within the simulation's tight event loop becomes incredibly lean and robust. The engine never needs to perform defensive, conditional checks like `if metric_name in event_results: ...`. It can directly and safely access the key: `event_results[metric_name].append(value)`. This completely eliminates an entire class of potential `KeyError` exceptions, which are notoriously difficult to debug in complex, asynchronous simulations. +In summary, the design of `SimulationSettings` is a perfect example of the "fail-fast" philosophy. By forcing a clear and validated contract with the user upfront, we ensure that the data collection process is not only tailored and efficient but also fundamentally reliable. The engine operates with the confidence that the output data structures will perfectly and safely match the user's validated request, leading to a predictable and robust simulation from start to finish. --- -### **End-to-End Example** +### **End-to-End Example (`SimulationPayload`)** -Here is a minimal, complete JSON configuration that defines a single client and a single API server. +The following JSON object shows how these three components combine into a single, complete `SimulationPayload` for a minimal client-server setup. ```jsonc { - "nodes": { - // The client node is the source of all generated requests. - "client": { - "id": "user_browser", - "type": "client" + // Defines the traffic workload profile. + "rqs_input": { + "avg_active_users": { + "mean": 50, + "distribution": "poisson" + }, + "avg_request_per_minute_per_user": { + "mean": 5.0, + "distribution": "normal", + "variance": 1.0 }, - // A list of all server nodes in the system. - "servers": [ + "user_sampling_window": 60 + }, + // Describes the system's architectural blueprint. + "topology_graph": { + "nodes": { + "client": { + "id": "mobile_client", + "type": "client" + }, + "servers": [ + { + "id": "api_server", + "type": "server", + "server_resources": { + "cpu_cores": 4, + "ram_mb": 4096 + }, + "endpoints": [ + { + "endpoint_name": "/predict", + "steps": [ + { + "kind": "initial_parsing", + "step_metrics": { "cpu_time": 0.005 } + }, + { + "kind": "io_db", + "step_metrics": { "io_waiting_time": 0.050 } + } + ] + } + ] + } + ] + }, + "edges": [ { - "id": "api_server_node", - "type": "server", - "server_resources": { - "cpu_cores": 2, - "ram_mb": 2048 - }, - "endpoints": [ - { - "endpoint_name": "/predict", - "steps": [ - { - "kind": "initial_parsing", - "step_metrics": { "cpu_time": 0.005 } - }, - { - "kind": "io_db", - "step_metrics": { "io_waiting_time": 0.050 } - }, - { - "kind": "cpu_bound_operation", - "step_metrics": { "cpu_time": 0.015 } - } - ] - } - ] + "source": "mobile_client", + "target": "api_server", + "latency": { + "distribution": "log_normal", + "mean": 0.04, + "variance": 0.01 + } } ] }, - "edges": [ - // A network link from the client to the API server. - { - "source": "user_browser", - "target": "api_server_node", - "latency": { - "distribution": "log_normal", - "mean": 0.05, - "std_dev": 0.01 - }, - "probability": 1.0 - } - ] -}``` - - + // Configures the simulation run and metric collection. + "settings": { + "total_simulation_time": 3600, + "enabled_sample_metrics": [ + "ready_queue_len", + "ram_in_use", + "throughput_rps" + ], + "enabled_event_metrics": [ + "rqs_latency" + ] + } +} +``` +### **Key Takeaways** -> **YAML friendly:** -> The topology schema is 100 % agnostic to the wire format. -> You can encode the same structure in **YAML** with identical field -> names and value types—Pydantic will parse either JSON or YAML as long -> as the keys and data types respect the schema. -> No additional changes or converters are required. -``` +* **Single Source of Truth**: `Enum` classes centralize all valid string literals, providing robust, type-safe validation across the entire schema. +* **Layered Validation**: The `Constants → Component Schemas → SimulationPayload` hierarchy ensures that only well-formed and self-consistent configurations reach the simulation engine. +* **Separation of Concerns**: The three top-level keys (`rqs_input`, `topology_graph`, `settings`) clearly separate the workload, the system architecture, and simulation control, making configurations easier to read, write, and reuse. -### **Key Takeaway** -This rigorously validated, compositional schema is the foundation of FastSim's reliability. By defining a clear vocabulary of constants (`Metrics`, `SystemNodes`) and enforcing relationships with Pydantic validators, the schema guarantees that every simulation run starts from a **complete and self-consistent** system description. This allows you to refactor simulation logic or extend the model with new resources (e.g., GPU memory) with full confidence that existing configurations remain valid and robust. \ No newline at end of file diff --git a/documentation/backend_documentation/metrics_to_measure.md b/documentation/backend_documentation/metrics_to_measure.md new file mode 100644 index 0000000..4de1a1a --- /dev/null +++ b/documentation/backend_documentation/metrics_to_measure.md @@ -0,0 +1,49 @@ +### **FastSim — simulation's metrics** + +Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. FastSim provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. + +To achieve this, FastSim categorizes metrics into three distinct types based on their collection methodology: + +1. **Sampled Metrics (`SampledMetricName`):** These metrics provide a **time-series view** of the system's state. They are captured at fixed, regular intervals throughout the simulation's duration (e.g., every second). This methodology is ideal for understanding trends, observing oscillations, and measuring the continuous utilization of finite resources like CPU and RAM. Think of them as periodic snapshots of your system's health. + +2. **Event-based Metrics (`EventMetricName`):** These metrics are recorded **only when a specific event occurs**. Their collection is asynchronous and irregular, triggered by discrete happenings within the simulation, such as the completion of a request. This methodology is perfect for measuring the properties of individual transactions, such as end-to-end latency, where an average value is less important than understanding the full distribution of outcomes. + +3. **Aggregated Metrics (`AggregatedMetricName`):** These are not collected directly during the simulation but are **calculated after the simulation ends**. They provide high-level statistical summaries (like mean, median, and percentiles) derived from the raw data collected by Event-based metrics. They distill thousands of individual data points into a handful of key performance indicators (KPIs) that are easy to interpret. + +The following sections provide a detailed breakdown of each metric within these categories, explaining what they measure and the rationale for their importance. + +--- + +### **1. Sampled Metrics: A Time-Series Perspective** + +Sampled metrics are configured in the `SimulationSettings` payload. Enabling them allows you to plot the evolution of system resources over time, which is crucial for identifying saturation points and transient performance issues. + +| Metric Name (`SampledMetricName`) | Description & Rationale | +| :--- | :--- | +| **`READY_QUEUE_LEN`** | **What it is:** The number of tasks in the `asyncio` event loop's "ready" queue waiting for their turn to run on the CPU.

**Rationale:** This is arguably the most critical indicator of **CPU saturation**. In a single-threaded Python process, only one coroutine can run at a time (held by the GIL). If this queue length is consistently greater than zero, it means tasks are ready to do work but are forced to wait because the CPU is busy. A long or growing queue is a definitive sign that your application is CPU-bound and that the CPU is a primary bottleneck. | +| **`CORE_BUSY`** | **What it is:** The number of server CPU cores that are currently executing a task.

**Rationale:** This provides a direct measure of **CPU utilization**. When plotted over time, it shows how effectively you are using your provisioned processing power. If `CORE_BUSY` is consistently at its maximum value (equal to `server_resources.cpu_cores`), the system is CPU-saturated. Conversely, if it's consistently low while latency is high, the bottleneck is likely elsewhere (e.g., I/O). It perfectly complements `READY_QUEUE_LEN` to form a complete picture of CPU health. | +| **`EVENT_LOOP_IO_SLEEP`** | **What it is:** A measure indicating if the event loop is idle, polling for I/O operations to complete.

**Rationale:** This metric helps you determine if your system is **I/O-bound**. If the event loop spends a significant amount of time in this state, it means the CPU is underutilized because it has no ready tasks to run and is instead waiting for external systems (like databases, caches, or downstream APIs) to respond. High values for this metric coupled with low CPU utilization are a clear signal to investigate and optimize the performance of your I/O operations. | +| **`RAM_IN_USE`** | **What it is:** The total amount of memory (in MB) currently allocated by all active requests within a server.

**Rationale:** Essential for **capacity planning and stability analysis**. This metric allows you to visualize your system's memory footprint under load. You can identify which endpoints cause memory spikes and ensure your provisioned RAM is sufficient. A steadily increasing `RAM_IN_USE` value that never returns to a baseline is the classic signature of a **memory leak**, a critical bug this metric helps you detect. | +| **`THROUGHPUT_RPS`** | **What it is:** The number of requests successfully completed per second, calculated over the last sampling window.

**Rationale:** This is a fundamental measure of **system performance and capacity**. It answers the question: "How much work is my system actually doing?" Plotting throughput against user load or other resource metrics is key to understanding your system's scaling characteristics. A drop in throughput often correlates with a spike in latency or resource saturation, helping you pinpoint the exact moment a bottleneck began to affect performance. | + +--- + +### **2. Event-based Metrics: A Per-Transaction Perspective** + +Event-based metrics are also enabled in the `SimulationSettings` payload. They generate a collection of raw data points, one for each relevant event, which is ideal for statistical analysis of transactional performance. + +| Metric Name (`EventMetricName`) | Description & Rationale | +| :--- | :--- | +| **`RQS_LATENCY`** | **What it is:** The total end-to-end duration, in seconds, for a single request to be fully processed.

**Rationale:** This is the **primary user-facing performance metric**. Users directly experience latency. While a simple average can be useful, it often hides critical problems. By collecting the latency for *every single request*, FastSim allows for the calculation of statistical distributions and, most importantly, **tail-latency percentiles (p95, p99)**. These percentiles represent the worst-case experience for your users and are crucial for evaluating Service Level Objectives (SLOs) and ensuring a consistent user experience. | +| **`LLM_COST`** | **What it is:** The estimated monetary cost (e.g., in USD) incurred by a single call to an external Large Language Model (LLM) API during a request.

**Rationale:** In modern AI-powered applications, API calls to third-party services like LLMs can be a major operational expense. This metric moves beyond technical performance to measure **financial performance**. By tracking cost on a per-event basis, you can attribute expenses to specific endpoints or user behaviors, identify unnecessarily costly operations, and make informed decisions to optimize your application's cost-effectiveness. | + +--- + +### **3. Aggregated Metrics: High-Level Summaries** + +**Important:** Aggregated metrics are **not configured in the input payload**. They are automatically calculated by the FastSim engine at the end of a simulation run, based on the raw data collected from the enabled Event-based metrics. + +| Metric Name (`AggregatedMetricName`) | Description & Rationale | +| :--- | :--- | +| **`LATENCY_STATS`** | **What it is:** A statistical summary of the entire collection of `RQS_LATENCY` data points. This typically includes the mean, median (p50), standard deviation, and high-end percentiles (p95, p99, p99.9).

**Rationale:** This provides a comprehensive and easily digestible summary of your system's latency profile. While the raw data is essential, these summary statistics answer high-level questions quickly. The mean tells you the average experience, the median protects against outliers, and the p95/p99 values tell you the latency that 95% or 99% of your users will beat—a critical KPI for reliability and user satisfaction. | +| **`LLM_STATS`** | **What it is:** A statistical summary of the `LLM_COST` data points. This can include total cost over the simulation, average cost per request, and cost distribution.

**Rationale:** This gives you a bird's-eye view of the financial implications of your system's design. Instead of looking at individual transaction costs, `LLM_STATS` provides the bottom line: the total operational cost during the simulation period. This is invaluable for budgeting, forecasting, and validating the financial viability of new features. | \ No newline at end of file diff --git a/src/app/api/simulation.py b/src/app/api/simulation.py index e025ad6..73984d5 100644 --- a/src/app/api/simulation.py +++ b/src/app/api/simulation.py @@ -4,13 +4,13 @@ from fastapi import APIRouter from app.core.simulation.simulation_run import run_simulation -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.full_simulation_input import SimulationPayload from app.schemas.simulation_output import SimulationOutput router = APIRouter() @router.post("/simulation") -async def event_loop_simulation(input_data: RqsGeneratorInput) -> SimulationOutput: +async def event_loop_simulation(input_data: SimulationPayload) -> SimulationOutput: """Run the simulation and return aggregate KPIs.""" rng = np.random.default_rng() return run_simulation(input_data, rng=rng) diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 23c7936..498e8b7 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -182,3 +182,43 @@ class SystemEdges(StrEnum): """ NETWORK_CONNECTION = "network_connection" + +# ====================================================================== +# CONSTANTS FOR SAMPLED METRICS +# ====================================================================== + +class SampledMetricName(StrEnum): + """ + define the metrics sampled every fixed amount of + time to create a time series + """ + + READY_QUEUE_LEN = "ready_queue_len" #length of the event loop ready q + CORE_BUSY = "core_busy" + EVENT_LOOP_IO_SLEEP = "event_loop_io_sleep" + RAM_IN_USE = "ram_in_use" + THROUGHPUT_RPS = "throughput_rps" + +# ====================================================================== +# CONSTANTS FOR EVENT METRICS +# ====================================================================== + +class EventMetricName(StrEnum): + """ + define the metrics triggered by event with no + time series + """ + + RQS_LATENCY = "rqs_latency" + LLM_COST = "llm_cost" + + +# ====================================================================== +# CONSTANTS FOR AGGREGATED METRICS +# ====================================================================== + +class AggregatedMetricName(StrEnum): + """aggregated metrics to calculate at the end of simulation""" + + LATENCY_STATS = "latency_stats" + LLM_STATS = "llm_stats" diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 9c83b4f..0b7818c 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -17,10 +17,12 @@ uniform_variable_generator, ) from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings def gaussian_poisson_sampling( input_data: RqsGeneratorInput, + sim_settings: SimulationSettings, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: @@ -35,11 +37,11 @@ def gaussian_poisson_sampling( Λ = U * (mean_req_per_minute_per_user / 60) [req/s]. 3. While inside the current window, draw gaps Δt ~ Exponential(Λ) using inverse-CDF. - 4. Stop once the virtual clock exceeds *simulation_time*. + 4. Stop once the virtual clock exceeds *total_simulation_time*. """ rng = rng or np.random.default_rng() - simulation_time = input_data.total_simulation_time + simulation_time = sim_settings.total_simulation_time user_sampling_window = input_data.user_sampling_window # λ_u : mean concurrent users per window diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index ebb1970..1566f90 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -14,10 +14,12 @@ uniform_variable_generator, ) from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings def poisson_poisson_sampling( input_data: RqsGeneratorInput, + sim_settings: SimulationSettings, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: @@ -32,11 +34,11 @@ def poisson_poisson_sampling( Λ = U * (mean_req_per_minute_per_user / 60) [req/s]. 3. While inside the current window, draw gaps Δt ~ Exponential(Λ) using inverse-CDF. - 4. Stop once the virtual clock exceeds *simulation_time*. + 4. Stop once the virtual clock exceeds *total_simulation_time*. """ rng = rng or np.random.default_rng() - simulation_time = input_data.total_simulation_time + simulation_time = sim_settings.total_simulation_time user_sampling_window = input_data.user_sampling_window # λ_u : mean concurrent users per window diff --git a/src/app/core/helpers.py b/src/app/core/helpers.py new file mode 100644 index 0000000..189af47 --- /dev/null +++ b/src/app/core/helpers.py @@ -0,0 +1,38 @@ +"""helpers for the simulation""" + +from collections.abc import Iterable + +from app.config.constants import EventMetricName, SampledMetricName + + +def alloc_sample_metric( + enabled_sample_metrics: Iterable[SampledMetricName], + ) -> dict[str, list[float | int]]: + """ + After the pydantic validation of the whole input we + instantiate a dictionary to collect the sampled metrics the + user want to measure + """ + # t is the alignment parameter for example assume + # the snapshot for the sampled metrics are done every 10ms + # t = [10,20,30,40....] to each t will correspond a measured + # metric corresponding to that time interval + + dict_sampled_metrics: dict[str, list[float | int]] = {"t": []} + for key in enabled_sample_metrics: + dict_sampled_metrics[key] = [] + return dict_sampled_metrics + + +def alloc_event_metric( + enabled_event_metrics: Iterable[EventMetricName], + ) -> dict[str, list[float | int]]: + """ + After the pydantic validation of the whole input we + instantiate a dictionary to collect the event metrics the + user want to measure + """ + dict_event_metrics: dict[str, list[float | int]] = {} + for key in enabled_event_metrics: + dict_event_metrics[key] = [] + return dict_event_metrics diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/simulation/requests_generator.py index 810218f..1b177e7 100644 --- a/src/app/core/simulation/requests_generator.py +++ b/src/app/core/simulation/requests_generator.py @@ -17,10 +17,12 @@ import numpy as np from app.schemas.requests_generator_input import RqsGeneratorInput + from app.schemas.simulation_settings_input import SimulationSettings def requests_generator( input_data: RqsGeneratorInput, + sim_settings: SimulationSettings, *, rng: np.random.Generator | None = None, ) -> Generator[float, None, None]: @@ -41,6 +43,7 @@ def requests_generator( #Gaussian-Poisson model return gaussian_poisson_sampling( input_data=input_data, + sim_settings=sim_settings, rng=rng, ) @@ -48,5 +51,6 @@ def requests_generator( # Poisson + Poisson return poisson_poisson_sampling( input_data=input_data, + sim_settings=sim_settings, rng=rng, ) diff --git a/src/app/core/simulation/simulation_run.py b/src/app/core/simulation/simulation_run.py index 3e1672a..1aea997 100644 --- a/src/app/core/simulation/simulation_run.py +++ b/src/app/core/simulation/simulation_run.py @@ -14,28 +14,32 @@ import numpy as np - from app.schemas.requests_generator_input import RqsGeneratorInput + from app.schemas.full_simulation_input import SimulationPayload + + def run_simulation( - input_data: RqsGeneratorInput, + input_data: SimulationPayload, *, rng: np.random.Generator, ) -> SimulationOutput: """Simulation executor in Simpy""" - gaps: Generator[float, None, None] = requests_generator(input_data, rng=rng) + sim_settings = input_data.sim_settings + + requests_generator_input = input_data.rqs_input + + gaps: Generator[float, None, None] = requests_generator( + requests_generator_input, + sim_settings, + rng=rng) env = simpy.Environment() - simulation_time = input_data.total_simulation_time - # pydantic in the validation assign a value and mypy is not - # complaining because a None cannot be compared in the loop - # to a float - assert simulation_time is not None total_request_per_time_period = { - "simulation_time": simulation_time, + "simulation_time": sim_settings.total_simulation_time, "total_requests": 0, } @@ -47,10 +51,10 @@ def arrival_process( total_request_per_time_period["total_requests"] += 1 env.process(arrival_process(env)) - env.run(until=simulation_time) + env.run(until=sim_settings.total_simulation_time) return SimulationOutput( total_requests=total_request_per_time_period, - metric_2=str(input_data.avg_request_per_minute_per_user.mean), - metric_n=str(input_data.avg_active_users.mean), + metric_2=str(requests_generator_input.avg_request_per_minute_per_user.mean), + metric_n=str(requests_generator_input.avg_active_users.mean), ) diff --git a/src/app/schemas/full_simulation_input.py b/src/app/schemas/full_simulation_input.py index 0e1d7a9..b745fee 100644 --- a/src/app/schemas/full_simulation_input.py +++ b/src/app/schemas/full_simulation_input.py @@ -3,6 +3,7 @@ from pydantic import BaseModel from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings from app.schemas.system_topology_schema.full_system_topology_schema import TopologyGraph @@ -11,3 +12,4 @@ class SimulationPayload(BaseModel): rqs_input: RqsGeneratorInput topology_graph: TopologyGraph + sim_settings: SimulationSettings diff --git a/src/app/schemas/requests_generator_input.py b/src/app/schemas/requests_generator_input.py index 88812e0..f56a4f0 100644 --- a/src/app/schemas/requests_generator_input.py +++ b/src/app/schemas/requests_generator_input.py @@ -12,13 +12,6 @@ class RqsGeneratorInput(BaseModel): avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig - total_simulation_time: int = Field( - default=TimeDefaults.SIMULATION_TIME, - ge=TimeDefaults.MIN_SIMULATION_TIME, - description=( - f"Simulation time in seconds (>= {TimeDefaults.MIN_SIMULATION_TIME})." - ), - ) user_sampling_window: int = Field( default=TimeDefaults.USER_SAMPLING_WINDOW, diff --git a/src/app/schemas/simulation_settings_input.py b/src/app/schemas/simulation_settings_input.py new file mode 100644 index 0000000..5d0ac6a --- /dev/null +++ b/src/app/schemas/simulation_settings_input.py @@ -0,0 +1,31 @@ +"""define a class with the global settings for the simulation""" + +from pydantic import BaseModel, Field + +from app.config.constants import EventMetricName, SampledMetricName, TimeDefaults + + +class SimulationSettings(BaseModel): + """Global parameters that apply to the whole run.""" + + total_simulation_time: int = Field( + default=TimeDefaults.SIMULATION_TIME, + ge=TimeDefaults.MIN_SIMULATION_TIME, + description="Simulation horizon in seconds.", + ) + + enabled_sample_metrics: set[SampledMetricName] = Field( + default_factory=lambda: { + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.CORE_BUSY, + SampledMetricName.RAM_IN_USE, + }, + description="Which time-series KPIs to collect by default.", + ) + enabled_event_metrics: set[EventMetricName] = Field( + default_factory=lambda: { + EventMetricName.RQS_LATENCY, + }, + description="Which per-event KPIs to collect by default.", + ) + diff --git a/tests/conftest.py b/tests/conftest.py index 5fcd4bc..e6d7b75 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,6 +10,8 @@ from alembic.config import Config from dotenv import load_dotenv from fastapi.testclient import TestClient +from numpy.random import Generator as NpGenerator +from numpy.random import default_rng from sqlalchemy.ext.asyncio import ( AsyncEngine, AsyncSession, @@ -18,9 +20,23 @@ ) from sqlalchemy_utils import create_database, database_exists, drop_database +from app.config.constants import ( + EventMetricName, + SampledMetricName, + TimeDefaults, +) from app.config.settings import settings from app.db.session import get_db from app.main import app +from app.schemas.full_simulation_input import SimulationPayload +from app.schemas.random_variables_config import RVConfig +from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings +from app.schemas.system_topology_schema.full_system_topology_schema import ( + Client, + TopologyGraph, + TopologyNodes, +) # Load test environment variables from .env.test ENV_PATH = Path(__file__).resolve().parents[1] / "docker_fs" / ".env.test" @@ -121,3 +137,102 @@ async def db_session(async_engine: AsyncEngine) -> AsyncGenerator[AsyncSession, await transaction.rollback() # Close the connection await connection.close() + +# ============================================================================ +# STANDARD CONFIGURATION FOR INPUT VARIABLES +# ============================================================================ + +# --------------------------------------------------------------------------- +# RNG +# --------------------------------------------------------------------------- + + +@pytest.fixture(scope="session") +def rng() -> NpGenerator: + """Deterministic NumPy RNG shared across tests (seed=0).""" + return default_rng(0) + + +# --------------------------------------------------------------------------- +# Metrics sets +# --------------------------------------------------------------------------- + + +@pytest.fixture(scope="session") +def enabled_sample_metrics() -> set[SampledMetricName]: + """Default sample-level KPIs tracked in most tests.""" + return { + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.RAM_IN_USE, + } + + +@pytest.fixture(scope="session") +def enabled_event_metrics() -> set[EventMetricName]: + """Default event-level KPIs tracked in most tests.""" + return {EventMetricName.RQS_LATENCY} + + +# --------------------------------------------------------------------------- +# Global simulation settings +# --------------------------------------------------------------------------- + + +@pytest.fixture +def sim_settings( + enabled_sample_metrics: set[SampledMetricName], + enabled_event_metrics: set[EventMetricName], +) -> SimulationSettings: + """A minimal `SimulationSettings` instance for unit tests.""" + return SimulationSettings( + total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, + enabled_sample_metrics=enabled_sample_metrics, + enabled_event_metrics=enabled_event_metrics, + ) + + +# --------------------------------------------------------------------------- +# Traffic profile +# --------------------------------------------------------------------------- + + +@pytest.fixture +def rqs_input() -> RqsGeneratorInput: + """`RqsGeneratorInput` with 1 user and 2 req/min for quick tests.""" + return RqsGeneratorInput( + avg_active_users=RVConfig(mean=1.0), + avg_request_per_minute_per_user=RVConfig(mean=2.0), + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, + ) + + +# --------------------------------------------------------------------------- +# Minimal topology (one client, no servers, no edges) +# --------------------------------------------------------------------------- + + +@pytest.fixture +def topology_minimal() -> TopologyGraph: + """Valid topology with a single client and zero servers/edges.""" + client = Client(id="client-1") + nodes = TopologyNodes(servers=[], client=client) + return TopologyGraph(nodes=nodes, edges=[]) + + +# --------------------------------------------------------------------------- +# Full simulation payload +# --------------------------------------------------------------------------- + + +@pytest.fixture +def payload_base( + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, + topology_minimal: TopologyGraph, +) -> SimulationPayload: + """End-to-end payload used by high-level simulation tests.""" + return SimulationPayload( + rqs_input=rqs_input, + topology_graph=topology_minimal, + sim_settings=sim_settings, + ) diff --git a/tests/unit/input_sructure/test_requests_generator_input.py b/tests/unit/input_sructure/test_requests_generator_input.py index 9fb49a5..39a0b2d 100644 --- a/tests/unit/input_sructure/test_requests_generator_input.py +++ b/tests/unit/input_sructure/test_requests_generator_input.py @@ -1,90 +1,82 @@ +"""Validation tests for RVConfig, RqsGeneratorInput and SimulationSettings.""" + +from __future__ import annotations + import pytest from pydantic import ValidationError from app.config.constants import Distribution, TimeDefaults from app.schemas.random_variables_config import RVConfig from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings + +# --------------------------------------------------------------------------- +# RVCONFIG +# --------------------------------------------------------------------------- -# -------------------------------------------------------------------------- -# TEST RANDOM VARIABLE CONFIGURATION -# -------------------------------------------------------------------------- def test_normal_sets_variance_to_mean() -> None: - """When distribution='normal' and variance is omitted, variance == mean.""" + """If variance is omitted with 'normal', it defaults to mean.""" cfg = RVConfig(mean=10, distribution=Distribution.NORMAL) assert cfg.variance == 10.0 def test_poisson_keeps_variance_none() -> None: - """When distribution='poisson' and variance is omitted, variance stays None.""" + """If variance is omitted with 'poisson', it remains None.""" cfg = RVConfig(mean=5, distribution=Distribution.POISSON) assert cfg.variance is None def test_explicit_variance_is_preserved() -> None: - """If the user supplies variance explicitly, it is preserved unchanged.""" + """An explicit variance value is not modified.""" cfg = RVConfig(mean=8, distribution=Distribution.NORMAL, variance=4) assert cfg.variance == 4.0 def test_mean_must_be_numeric() -> None: - """A non-numeric mean raises a ValidationError with our custom message.""" - with pytest.raises(ValidationError) as excinfo: + """A non numeric mean triggers a ValidationError.""" + with pytest.raises(ValidationError) as exc: RVConfig(mean="not a number", distribution=Distribution.POISSON) - # Check that at least one error refers to the 'mean' field - assert any(err["loc"] == ("mean",) for err in excinfo.value.errors()) - assert "mean must be a number" in excinfo.value.errors()[0]["msg"] + assert any(err["loc"] == ("mean",) for err in exc.value.errors()) def test_missing_mean_field() -> None: - """Omitting the mean field raises a 'field required' ValidationError.""" - with pytest.raises(ValidationError) as excinfo: - # Using model_validate avoids the constructor signature check + """Omitting mean raises a 'field required' ValidationError.""" + with pytest.raises(ValidationError) as exc: RVConfig.model_validate({"distribution": Distribution.NORMAL}) assert any( err["loc"] == ("mean",) and err["type"] == "missing" - for err in excinfo.value.errors() + for err in exc.value.errors() ) -def test_gaussian_sets_variance_to_mean() -> None: - """When distribution='gaussian' and variance is omitted, variance == mean.""" - cfg = RVConfig(mean=12.5, distribution=Distribution.NORMAL) - assert cfg.variance == pytest.approx(12.5) - def test_default_distribution_is_poisson() -> None: - """ - When distribution is omitted, it defaults to 'poisson' and - variance stays None. - """ + """If distribution is missing, it defaults to 'poisson'.""" cfg = RVConfig(mean=3.3) assert cfg.distribution == Distribution.POISSON assert cfg.variance is None def test_explicit_variance_kept_for_poisson() -> None: - """If the user supplies variance even for poisson, it is preserved.""" + """Variance is kept even when distribution is poisson.""" cfg = RVConfig(mean=4.0, distribution=Distribution.POISSON, variance=2.2) assert cfg.variance == pytest.approx(2.2) def test_invalid_distribution_raises() -> None: - """Supplying a non-supported distribution literal raises ValidationError.""" - with pytest.raises(ValidationError) as excinfo: + """An unsupported distribution literal raises ValidationError.""" + with pytest.raises(ValidationError): RVConfig(mean=5.0, distribution="not_a_dist") - errors = excinfo.value.errors() - # Only assert there is at least one error for the 'distribution' field: - assert any(e["loc"] == ("distribution",) for e in errors) +# --------------------------------------------------------------------------- +# RQSGENERATORINPUT - USER_SAMPLING_WINDOW +# --------------------------------------------------------------------------- -# -------------------------------------------------------------------------- -# TEST FIELD VALIDATOR USER SAMPLING WINDOW -# -------------------------------------------------------------------------- def test_default_user_sampling_window() -> None: - """When user_sampling_window is omitted, it defaults to USER_SAMPLING_WINDOW.""" + """If user_sampling_window is missing it defaults to the constant.""" inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ @@ -96,47 +88,35 @@ def test_default_user_sampling_window() -> None: def test_explicit_user_sampling_window_kept() -> None: - """An explicit user_sampling_window value is preserved unchanged.""" - custom_window = 30 + """An explicit user_sampling_window is preserved.""" inp = RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, "distribution": Distribution.POISSON, }, - user_sampling_window=custom_window, + user_sampling_window=30, ) - assert inp.user_sampling_window == custom_window + assert inp.user_sampling_window == 30 def test_user_sampling_window_not_int_raises() -> None: - """A non-integer user_sampling_window raises a ValidationError.""" - with pytest.raises(ValidationError) as excinfo: - + """A non integer user_sampling_window raises ValidationError.""" + with pytest.raises(ValidationError): RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ "mean": 1.0, "distribution": Distribution.POISSON, }, - user_sampling_window="not-an-int", + user_sampling_window="not-int", ) - errors = excinfo.value.errors() - assert any(err["loc"] == ("user_sampling_window",) for err in errors) - - # Pydantic v2 wording - assert any("valid integer" in err["msg"] for err in errors) - - def test_user_sampling_window_above_max_raises() -> None: - """ - Passing user_sampling_window > MAX_USER_SAMPLING_WINDOW - must raise a ValidationError. - """ + """user_sampling_window above the max constant raises ValidationError.""" too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 - with pytest.raises(ValidationError) as excinfo: + with pytest.raises(ValidationError): RqsGeneratorInput( avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, avg_request_per_minute_per_user={ @@ -146,90 +126,33 @@ def test_user_sampling_window_above_max_raises() -> None: user_sampling_window=too_large, ) - errors = excinfo.value.errors() - assert any(err["loc"] == ("user_sampling_window",) for err in errors) - - expected_snippet = ( - f"less than or equal to {TimeDefaults.MAX_USER_SAMPLING_WINDOW}" - ) - assert any(expected_snippet in err["msg"] for err in errors) +# --------------------------------------------------------------------------- +# SIMULATIONSETTINGS - TOTAL_SIMULATION_TIME +# --------------------------------------------------------------------------- -# -------------------------------------------------------------------------- -# TEST FIELD VALIDATOR TOTAL SIMULATION TIME -# -------------------------------------------------------------------------- def test_default_total_simulation_time() -> None: - """When total_simulation_time is omitted, it defaults to SIMULATION_TIME.""" - inp = RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, - ) - assert inp.total_simulation_time == TimeDefaults.SIMULATION_TIME + """If total_simulation_time is missing it defaults to the constant.""" + settings = SimulationSettings() + assert settings.total_simulation_time == TimeDefaults.SIMULATION_TIME def test_explicit_total_simulation_time_kept() -> None: - """An explicit total_simulation_time value is preserved unchanged.""" - custom_time = 3_000 - inp = RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, - total_simulation_time=custom_time, - ) - assert inp.total_simulation_time == custom_time + """An explicit total_simulation_time is preserved.""" + settings = SimulationSettings(total_simulation_time=3_000) + assert settings.total_simulation_time == 3_000 def test_total_simulation_time_not_int_raises() -> None: - """A non-integer total_simulation_time raises a ValidationError.""" - with pytest.raises(ValidationError) as excinfo: - - RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, - total_simulation_time="three thousand", - ) - - errors = excinfo.value.errors() - assert any(err["loc"] == ("total_simulation_time",) for err in errors) - - # Pydantic v2 wording: “Input should be a valid integer” - assert any("valid integer" in err["msg"] for err in errors) - + """A non integer total_simulation_time raises ValidationError.""" + with pytest.raises(ValidationError): + SimulationSettings(total_simulation_time="three thousand") def test_total_simulation_time_below_minimum_raises() -> None: - """ - Passing total_simulation_time < MIN_SIMULATION_TIME - must raise a ValidationError. - """ + """A total_simulation_time below the minimum constant raises ValidationError.""" too_small = TimeDefaults.MIN_SIMULATION_TIME - 1 - with pytest.raises(ValidationError) as excinfo: - RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, - total_simulation_time=too_small, - ) - - errors = excinfo.value.errors() - # c'è almeno un errore sul campo giusto - assert any(err["loc"] == ("total_simulation_time",) for err in errors) - - expected_snippet = ( - f"greater than or equal to {TimeDefaults.MIN_SIMULATION_TIME}" - ) - assert any(expected_snippet in err["msg"] for err in errors) - - + with pytest.raises(ValidationError): + SimulationSettings(total_simulation_time=too_small) diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/sampler/test_gaussian_poisson.py index b464007..c182376 100644 --- a/tests/unit/sampler/test_gaussian_poisson.py +++ b/tests/unit/sampler/test_gaussian_poisson.py @@ -1,94 +1,109 @@ -"""Unit tests for gaussian_poisson_sampling.""" +"""Unit-tests for `gaussian_poisson_sampling`.""" from __future__ import annotations import itertools from types import GeneratorType +from typing import TYPE_CHECKING -import numpy as np import pytest +from numpy.random import Generator, default_rng from app.config.constants import TimeDefaults -from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling +from app.core.event_samplers.gaussian_poisson import ( + gaussian_poisson_sampling, +) from app.schemas.random_variables_config import RVConfig from app.schemas.requests_generator_input import RqsGeneratorInput +if TYPE_CHECKING: + + from app.schemas.simulation_settings_input import SimulationSettings + # --------------------------------------------------------------------------- -# Fixture +# FIXTURES # --------------------------------------------------------------------------- @pytest.fixture -def base_input() -> RqsGeneratorInput: - """Return a minimal, valid RqsGeneratorInput for the Gaussian-Poisson sampler.""" +def rqs_cfg() -> RqsGeneratorInput: + """Minimal, valid RqsGeneratorInput for Gaussian-Poisson tests.""" return RqsGeneratorInput( avg_active_users=RVConfig( - mean=10.0, variance=4.0, distribution="normal", + mean=10.0, + variance=4.0, + distribution="normal", ), avg_request_per_minute_per_user=RVConfig(mean=30.0), - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, ) + # --------------------------------------------------------------------------- -# Basic behaviour +# BASIC BEHAVIOUR # --------------------------------------------------------------------------- -def test_returns_generator_type(base_input: RqsGeneratorInput) -> None: +def test_returns_generator_type( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, + rng: Generator, +) -> None: """The function must return a generator object.""" - rng = np.random.default_rng(0) - gen = gaussian_poisson_sampling(base_input, rng=rng) + gen = gaussian_poisson_sampling(rqs_cfg, sim_settings, rng=rng) assert isinstance(gen, GeneratorType) -def test_generates_positive_gaps(base_input: RqsGeneratorInput) -> None: +def test_generates_positive_gaps( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: """ With nominal parameters the sampler should emit at least a few positive - gaps and no gap must be non-positive. + gaps, and the cumulative time must stay below the horizon. """ - rng = np.random.default_rng(42) gaps: list[float] = list( - itertools.islice(gaussian_poisson_sampling(base_input, rng=rng), 1000), + itertools.islice( + gaussian_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(42)), + 1000, + ), ) - # At least one event is expected. - assert gaps - # No gap may be negative or zero. - assert all(gap > 0.0 for gap in gaps) - # The cumulative time of gaps must stay below the horizon. - assert sum(gaps) < base_input.total_simulation_time + assert gaps, "Expected at least one event" + assert all(g > 0.0 for g in gaps), "No gap may be ≤ 0" + assert sum(gaps) < sim_settings.total_simulation_time # --------------------------------------------------------------------------- -# Edge-case: zero users ⇒ no events +# EDGE CASE: ZERO USERS # --------------------------------------------------------------------------- def test_zero_users_produces_no_events( monkeypatch: pytest.MonkeyPatch, - base_input: RqsGeneratorInput, + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, ) -> None: """ - If every Gaussian draw returns 0 users, Λ == 0, - hence the generator must yield no events at all. + If every Gaussian draw returns 0 users, Λ == 0 and the generator must + yield no events at all. """ def fake_truncated_gaussian( mean: float, var: float, - rng: np.random.Generator, + rng: Generator, ) -> float: return 0.0 # force U = 0 - # Patch the helper so that it always returns 0 users. monkeypatch.setattr( "app.core.event_samplers.gaussian_poisson.truncated_gaussian_generator", fake_truncated_gaussian, ) - rng = np.random.default_rng(123) - gaps = list(gaussian_poisson_sampling(base_input, rng=rng)) + gaps: list[float] = list( + gaussian_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(123)), + ) assert gaps == [] # no events should be generated diff --git a/tests/unit/sampler/test_poisson_poisson.py b/tests/unit/sampler/test_poisson_poisson.py new file mode 100644 index 0000000..2fbbb9e --- /dev/null +++ b/tests/unit/sampler/test_poisson_poisson.py @@ -0,0 +1,124 @@ +"""Unit tests for `poisson_poisson_sampling`.""" + +from __future__ import annotations + +import itertools +import math +from types import GeneratorType +from typing import TYPE_CHECKING + +import pytest +from numpy.random import Generator, default_rng + +from app.config.constants import TimeDefaults +from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling +from app.schemas.random_variables_config import RVConfig +from app.schemas.requests_generator_input import RqsGeneratorInput + +if TYPE_CHECKING: + + from app.schemas.simulation_settings_input import SimulationSettings + + +@pytest.fixture +def rqs_cfg() -> RqsGeneratorInput: + """Return a minimal, valid RqsGeneratorInput for the sampler tests.""" + return RqsGeneratorInput( + avg_active_users={"mean": 1.0, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, + ) + +# -------------------------------------------------------- +# BASIC SHAPE AND TYPE TESTS +# -------------------------------------------------------- + + +def test_sampler_returns_generator( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, + rng: Generator, +) -> None: + """Function must return a generator object.""" + gen = poisson_poisson_sampling(rqs_cfg, sim_settings, rng=rng) + assert isinstance(gen, GeneratorType) + + +def test_all_gaps_are_positive( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Every yielded gap must be strictly positive.""" + gaps = list( + itertools.islice( + poisson_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(1)), + 1_000, + ), + ) + assert all(g > 0.0 for g in gaps) + + +# --------------------------------------------------------------------------- +# REPRODUCIBILITY WITH FIXED SEED +# --------------------------------------------------------------------------- + + +def test_sampler_is_reproducible_with_fixed_seed( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Same RNG seed must produce identical first N gaps.""" + seed = 42 + n_samples = 15 + + gaps_1 = list( + itertools.islice( + poisson_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(seed)), + n_samples, + ), + ) + gaps_2 = list( + itertools.islice( + poisson_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(seed)), + n_samples, + ), + ) + assert gaps_1 == gaps_2 + + +# --------------------------------------------------------------------------- +# EDGE CASE: ZERO USERS +# --------------------------------------------------------------------------- + + +def test_zero_users_produces_no_events( + sim_settings: SimulationSettings, +) -> None: + """If the mean user count is zero the generator must yield no events.""" + cfg_zero = RqsGeneratorInput( + avg_active_users=RVConfig(mean=0.0, distribution="poisson"), + avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, + ) + + gaps: list[float] = list( + poisson_poisson_sampling(cfg_zero, sim_settings, rng=default_rng(123)), + ) + assert gaps == [] + + +# --------------------------------------------------------------------------- +# CUMULATIVE TIME NEVER EXCEEDS THE HORIZON +# --------------------------------------------------------------------------- + + +def test_cumulative_time_never_exceeds_horizon( + rqs_cfg: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Sum of gaps must stay below the simulation horizon.""" + gaps: list[float] = list( + poisson_poisson_sampling(rqs_cfg, sim_settings, rng=default_rng(7)), + ) + cum_time = math.fsum(gaps) + assert cum_time < sim_settings.total_simulation_time diff --git a/tests/unit/sampler/test_poisson_posson.py b/tests/unit/sampler/test_poisson_posson.py deleted file mode 100644 index 48d4f9a..0000000 --- a/tests/unit/sampler/test_poisson_posson.py +++ /dev/null @@ -1,120 +0,0 @@ -"""Unit tests for the poisson_poisson_sampling generator.""" - -from __future__ import annotations - -import itertools -import math -from types import GeneratorType - -import numpy as np -import pytest - -from app.config.constants import TimeDefaults -from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling -from app.schemas.random_variables_config import RVConfig -from app.schemas.requests_generator_input import RqsGeneratorInput - - -@pytest.fixture -def base_input() -> RqsGeneratorInput: - """Return a minimal-valid RqsGeneratorInput for the sampler tests.""" - return RqsGeneratorInput( - # 1 average concurrent user … - avg_active_users={"mean": 1.0, "distribution": "poisson"}, - # … sending on average 60 req/min → 1 req/s - avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, # 30 min - user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, # 60 s - ) - - -# --------------------------------------------------------------------- -# BASIC SHAPE / TYPE TESTS -# --------------------------------------------------------------------- - - -def test_sampler_returns_generator(base_input: RqsGeneratorInput) -> None: - """The function must return a real generator object.""" - rng = np.random.default_rng(0) - gen = poisson_poisson_sampling(base_input, rng=rng) - - assert isinstance(gen, GeneratorType) - - -def test_all_gaps_are_positive(base_input: RqsGeneratorInput) -> None: - """Every yielded inter-arrival gap Δt must be > 0.""" - rng = np.random.default_rng(1) - gaps: list[float] = list( - itertools.islice(poisson_poisson_sampling(base_input, rng=rng), 1_000), - ) - - # None of the first 1 000 gaps (if any) can be negative or zero - assert all(gap > 0.0 for gap in gaps) - - -# --------------------------------------------------------------------- -# REPRODUCIBILITY WITH FIXED RNG SEED -# --------------------------------------------------------------------- - - -def test_sampler_is_reproducible_with_fixed_seed(base_input: RqsGeneratorInput) -> None: - """Same seed ⇒ identical first N gaps.""" - seed = 42 - n_samples = 15 - - gaps_1 = list( - itertools.islice( - poisson_poisson_sampling( - base_input, rng=np.random.default_rng(seed), - ), - n_samples, - ), - ) - gaps_2 = list( - itertools.islice( - poisson_poisson_sampling( - base_input, rng=np.random.default_rng(seed), - ), - n_samples, - ), - ) - - assert gaps_1 == gaps_2 - - -# --------------------------------------------------------------------- -# EDGE-CASE: ZERO USERS ⇒ NO EVENTS -# --------------------------------------------------------------------- - - -def test_zero_users_produces_no_events(base_input: RqsGeneratorInput) -> None: - """ - With mean concurrent users == 0 the Poisson draw is almost surely 0, - so Λ = 0 and the generator should yield no events. - """ - input_data = RqsGeneratorInput( - avg_active_users=RVConfig(mean=0.0, distribution="poisson"), - avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, - user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, - ) - - rng = np.random.default_rng(123) - gaps = list(poisson_poisson_sampling(input_data, rng=rng)) - - assert gaps == [] # no events expected - -# --------------------------------------------------------------------- -# CUMULATIVE TIME ALWAYS < SIMULATION HORIZON -# --------------------------------------------------------------------- - - -def test_cumulative_time_never_exceeds_horizon(base_input: RqsGeneratorInput) -> None: - """ΣΔt (virtual clock) must stay strictly below total_simulation_time.""" - rng = np.random.default_rng(7) - gaps = list(poisson_poisson_sampling(base_input, rng=rng)) - - cum_time = math.fsum(gaps) - # Even if the virtual clock can jump when λ == 0, - # the summed gaps must never exceed the horizon. - assert cum_time < base_input.total_simulation_time diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py index 9b77baf..fe72f2e 100644 --- a/tests/unit/simulation/test_requests_generator.py +++ b/tests/unit/simulation/test_requests_generator.py @@ -1,57 +1,48 @@ -"""Unit test to verify the behaviour of the rqs generator""" +"""Unit-tests for the requests generator and the SimPy runner. + +All common fixtures (`rng`, `rqs_input`, `sim_settings`, `payload_base`, …) +are defined once in *tests/conftest.py*. +This module focuses purely on behavioural checks. +""" from __future__ import annotations from types import GeneratorType from typing import TYPE_CHECKING -import numpy as np import pytest -from app.config.constants import TimeDefaults from app.core.simulation.requests_generator import requests_generator from app.core.simulation.simulation_run import run_simulation -from app.schemas.requests_generator_input import RqsGeneratorInput - -if TYPE_CHECKING: +if TYPE_CHECKING: # static-typing only from collections.abc import Iterator + from numpy.random import Generator + + from app.schemas.full_simulation_input import SimulationPayload + from app.schemas.requests_generator_input import RqsGeneratorInput from app.schemas.simulation_output import SimulationOutput + from app.schemas.simulation_settings_input import SimulationSettings -# -------------------------------------------------------------- -# TESTS INPUT -# -------------------------------------------------------------- - -@pytest.fixture -def base_input() -> RqsGeneratorInput: - """Return a RqsGeneratorInput with a 120-second simulation horizon.""" - return RqsGeneratorInput( - avg_active_users={"mean": 1.0}, - avg_request_per_minute_per_user={"mean": 2.0}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, - ) -# -------------------------------------------------------------- -# REQUESTS GENERATOR FUNCTION TESTS -# -------------------------------------------------------------- +# --------------------------------------------------------------------------- +# REQUESTS-GENERATOR - dispatcher tests +# --------------------------------------------------------------------------- + def test_default_requests_generator_uses_poisson_poisson_sampling( - base_input: RqsGeneratorInput, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, + rng: Generator, ) -> None: - """ - Verify that when avg_active_users.distribution is the default 'poisson', - requests_generator returns an iterator whose code object is from - poisson_poisson_sampling. - """ - rng = np.random.default_rng(0) - gen = requests_generator(base_input, rng=rng) - # It must be a generator. - assert isinstance(gen, GeneratorType) + """Default distribution must map to *poisson_poisson_sampling*.""" + gen = requests_generator(rqs_input, sim_settings, rng=rng) - # Internally, it should call poisson_poisson_sampling. + assert isinstance(gen, GeneratorType) assert gen.gi_code.co_name == "poisson_poisson_sampling" + @pytest.mark.parametrize( ("dist", "expected_sampler"), [ @@ -62,136 +53,93 @@ def test_default_requests_generator_uses_poisson_poisson_sampling( def test_requests_generator_dispatches_to_correct_sampler( dist: str, expected_sampler: str, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, + rng: Generator, ) -> None: - """ - Verify that requests_generator returns a generator whose code object - comes from the appropriate sampler function based on distribution: - - 'poisson' → poisson_poisson_sampling - - 'normal' → gaussian_poisson_sampling - """ - input_data = RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": dist}, - avg_request_per_minute_per_user={"mean": 1.0}, - total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, - ) - rng = np.random.default_rng(0) - gen = requests_generator(input_data, rng=rng) + """Dispatcher must select the sampler matching *dist*.""" + rqs_input.avg_active_users.distribution = dist # type: ignore[assignment] + gen = requests_generator(rqs_input, sim_settings, rng=rng) - # It must be a generator object. assert isinstance(gen, GeneratorType) - # Check which underlying sampler function produced it. assert gen.gi_code.co_name == expected_sampler -# -------------------------------------------------------------- -# REQUESTS GENERATOR INSIDE SIMULATION TESTS -# -------------------------------------------------------------- -def test_run_simulation_counts_events_up_to_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, +# --------------------------------------------------------------------------- +# SIMULATION-RUNNER - horizon handling +# --------------------------------------------------------------------------- + + +def _patch_generator( + monkeypatch: pytest.MonkeyPatch, + gaps: list[float], ) -> None: - """ - Verify that all events whose cumulative inter-arrival times - fall within the simulation horizon are counted. - For gaps [1, 2, 3, 4], cumulative times [1, 3, 6, 10] - yield 4 events by t=10. - """ - def fake_requests_generator_fixed( - data: RqsGeneratorInput, *, rng: np.random.Generator, + """Monkey-patch *requests_generator* with a deterministic gap sequence.""" + + def _fake( + data: RqsGeneratorInput, + config: SimulationSettings, # unused, keeps signature + *, + rng: Generator | None = None, ) -> Iterator[float]: - # Replace the complex Poisson-Poisson sampler with a deterministic sequence. - yield from [1.0, 2.0, 3.0, 4.0] + yield from gaps - # Monkeypatch the internal requests_generator to use our simple generator. monkeypatch.setattr( "app.core.simulation.simulation_run.requests_generator", - fake_requests_generator_fixed, + _fake, ) - # The rng argument is unused in this deterministic test. - rng = np.random.default_rng(42) - output: SimulationOutput = run_simulation(base_input, rng=rng) - assert output.total_requests["total_requests"] == 4 - # The returned metrics should reflect the input means as strings. - assert output.metric_2 == str(base_input.avg_request_per_minute_per_user.mean) - assert output.metric_n == str(base_input.avg_active_users.mean) - - -def test_run_simulation_includes_event_at_exact_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, +def test_run_simulation_counts_events_up_to_horizon( + monkeypatch: pytest.MonkeyPatch, + payload_base: SimulationPayload, + rng: Generator, ) -> None: - """ - Confirm that an event scheduled exactly at the simulation horizon - is not processed, since SimPy stops at t == horizon. - """ - def fake_generator_at_horizon( - data: RqsGeneratorInput, *, rng: np.random.Generator, - ) -> Iterator[float]: + """All events with cumulative time ≤ horizon must be counted.""" + _patch_generator(monkeypatch, gaps=[1.0, 2.0, 3.0, 4.0]) - # mypy assertion, pydantic guaranteed - assert base_input.total_simulation_time is not None - # Yield a single event at exactly t == simulation_time. - yield float(base_input.total_simulation_time) + output: SimulationOutput = run_simulation(payload_base, rng=rng) - monkeypatch.setattr( - "app.core.simulation.simulation_run.requests_generator", - fake_generator_at_horizon, + assert output.total_requests["total_requests"] == 4 + assert output.metric_2 == str( + payload_base.rqs_input.avg_request_per_minute_per_user.mean, ) + assert output.metric_n == str(payload_base.rqs_input.avg_active_users.mean) - rng = np.random.default_rng(123) - output: SimulationOutput = run_simulation(base_input, rng=rng) - # SimPy does not execute events scheduled exactly at the stop time. +def test_run_simulation_skips_event_at_exact_horizon( + monkeypatch: pytest.MonkeyPatch, + payload_base: SimulationPayload, + rng: Generator, +) -> None: + """An event scheduled exactly at *t == horizon* is ignored.""" + horizon = payload_base.sim_settings.total_simulation_time + _patch_generator(monkeypatch, gaps=[float(horizon)]) + + output: SimulationOutput = run_simulation(payload_base, rng=rng) assert output.total_requests["total_requests"] == 0 def test_run_simulation_excludes_event_beyond_horizon( - monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, + monkeypatch: pytest.MonkeyPatch, + payload_base: SimulationPayload, + rng: Generator, ) -> None: - """ - Ensure that events scheduled after the simulation horizon - are not counted. - """ - def fake_generator_beyond_horizon( - data: RqsGeneratorInput, *, rng: np.random.Generator, - ) -> Iterator[float]: - - # mypy assertion, pydantic guaranteed - assert base_input.total_simulation_time is not None - # Yield a single event just beyond the horizon. - yield float(base_input.total_simulation_time) + 0.1 - - monkeypatch.setattr( - "app.core.simulation.simulation_run.requests_generator", - fake_generator_beyond_horizon, - ) - - rng = np.random.default_rng(999) - output: SimulationOutput = run_simulation(base_input, rng=rng) + """Events strictly after the horizon must not be counted.""" + horizon = payload_base.sim_settings.total_simulation_time + _patch_generator(monkeypatch, gaps=[float(horizon) + 0.1]) + output: SimulationOutput = run_simulation(payload_base, rng=rng) assert output.total_requests["total_requests"] == 0 def test_run_simulation_zero_events_when_generator_empty( - monkeypatch: pytest.MonkeyPatch, base_input: RqsGeneratorInput, + monkeypatch: pytest.MonkeyPatch, + payload_base: SimulationPayload, + rng: Generator, ) -> None: - """ - Check that run_simulation reports zero requests when no - inter-arrival times are yielded. - """ - def fake_generator_empty( - data: RqsGeneratorInput, *, rng: np.random.Generator, - ) -> Iterator[float]: - # Empty generator yields nothing. - if False: - yield # pragma: no cover - - monkeypatch.setattr( - "app.core.simulation.simulation_run.requests_generator", - fake_generator_empty, - ) - - rng = np.random.default_rng(2025) - output: SimulationOutput = run_simulation(base_input, rng=rng) + """No gaps => no requests counted.""" + _patch_generator(monkeypatch, gaps=[]) + output: SimulationOutput = run_simulation(payload_base, rng=rng) assert output.total_requests["total_requests"] == 0 From 35d507eb6b683f91aff06032efbad1f5c57a4947 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 18 Jul 2025 14:56:11 +0200 Subject: [PATCH 16/35] Features/rqs generator runtime (#5) * definition of state and RqsGeneratorRuntime * defined edge runtime and more central logic for sampler * minor changes * minor changes * minor bug fixed * pytest adapted to the new structure, added pytest for rqs_state * Update src/app/core/runtime/rqs_generator.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/runtime/rqs_generator.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/runtime/edge.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/runtime/edge.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/unit/runtime/test_requests_generator.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/event_samplers/common_helpers.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/event_samplers/common_helpers.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/app/core/event_samplers/common_helpers.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * minor changes --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/app/api/simulation.py | 14 -- src/app/config/constants.py | 15 +- src/app/config/rqs_state.py | 50 +++++ src/app/core/event_samplers/common_helpers.py | 67 +++++- .../core/event_samplers/gaussian_poisson.py | 4 +- .../core/event_samplers/poisson_poisson.py | 4 +- .../dictionary_metrics.py} | 0 .../requests_generator.py | 10 +- src/app/core/runtime/__init__.py | 1 + src/app/core/runtime/edge.py | 69 ++++++ src/app/core/runtime/rqs_generator.py | 117 ++++++++++ .../core/{simulation => }/simulation_run.py | 2 +- src/app/schemas/random_variables_config.py | 11 +- src/app/schemas/requests_generator_input.py | 34 ++- .../system_topology_schema/endpoint_schema.py | 48 ++-- .../full_system_topology_schema.py | 33 ++- .../input_sructure/test_endpoint_input.py | 72 +++--- .../test_full_topology_input.py | 104 ++++++--- .../test_requests_generator_input.py | 132 ++++++++--- tests/unit/runtime/test_edge | 136 ++++++++++++ tests/unit/runtime/test_requests_generator.py | 151 +++++++++++++ tests/unit/sampler/test_sampler_helper.py | 208 ++++++++++++------ .../simulation/test_requests_generator.py | 145 ------------ tests/unit/test_state.py | 47 ++++ 24 files changed, 1085 insertions(+), 389 deletions(-) create mode 100644 src/app/config/rqs_state.py rename src/app/core/{helpers.py => helpers/dictionary_metrics.py} (100%) rename src/app/core/{simulation => helpers}/requests_generator.py (79%) create mode 100644 src/app/core/runtime/__init__.py create mode 100644 src/app/core/runtime/edge.py create mode 100644 src/app/core/runtime/rqs_generator.py rename src/app/core/{simulation => }/simulation_run.py (95%) create mode 100644 tests/unit/runtime/test_edge create mode 100644 tests/unit/runtime/test_requests_generator.py delete mode 100644 tests/unit/simulation/test_requests_generator.py create mode 100644 tests/unit/test_state.py diff --git a/src/app/api/simulation.py b/src/app/api/simulation.py index 73984d5..2775dcc 100644 --- a/src/app/api/simulation.py +++ b/src/app/api/simulation.py @@ -1,18 +1,4 @@ """"Api to simulate the process""" -import numpy as np -from fastapi import APIRouter - -from app.core.simulation.simulation_run import run_simulation -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.simulation_output import SimulationOutput - -router = APIRouter() - -@router.post("/simulation") -async def event_loop_simulation(input_data: SimulationPayload) -> SimulationOutput: - """Run the simulation and return aggregate KPIs.""" - rng = np.random.default_rng() - return run_simulation(input_data, rng=rng) diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 498e8b7..c611697 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -49,6 +49,7 @@ class Distribution(StrEnum): NORMAL = "normal" LOG_NORMAL = "log_normal" EXPONENTIAL = "exponential" + UNIFORM = "uniform" # ====================================================================== # CONSTANTS FOR ENDPOINT STEP DEFINITION (REQUEST-HANDLER) @@ -123,7 +124,7 @@ class EndpointStepRAM(StrEnum): RAM = "ram" -class Metrics(StrEnum): +class StepOperation(StrEnum): """ Keys used inside the ``metrics`` dictionary of a *step*. @@ -153,6 +154,17 @@ class ServerResourcesDefaults: MINIMUM_RAM_MB = 256 DB_CONNECTION_POOL = None +# ====================================================================== +# CONSTANTS FOR NETWORK PARAMETERS +# ====================================================================== + +class NetworkParameters: + """parameters for the network""" + + MIN_DROPOUT_RATE = 0.0 + DROPOUT_RATE = 0.01 + MAX_DROPOUT_RATE = 1.0 + # ====================================================================== # CONSTANTS FOR THE MACRO-TOPOLOGY GRAPH # ====================================================================== @@ -165,6 +177,7 @@ class SystemNodes(StrEnum): resources (CPU cores, DB pool, etc.). """ + GENERATOR = "generator" SERVER = "server" CLIENT = "client" LOAD_BALANCER = "load_balancer" diff --git a/src/app/config/rqs_state.py b/src/app/config/rqs_state.py new file mode 100644 index 0000000..dec9200 --- /dev/null +++ b/src/app/config/rqs_state.py @@ -0,0 +1,50 @@ +""" +defining a state in a one to one correspondence +with the requests generated that will go through +all the node necessary to accomplish the user request +""" + +from __future__ import annotations + +from dataclasses import dataclass, field + + +@dataclass +class RequestState: + """ + State object carried by each request through the simulation. + + Attributes: + id: Unique identifier of the request. + t0: Timestamp (simulated env.now) when the request was generated. + history: List of hop records, each noting a node/edge visit. + finish_time: Timestamp when the requests is satisfied + + """ + + id: int # Unique request identifier + initial_time: float # Generation timestamp (env.now) + finish_time: float | None = None # a requests might be dropped + history: list[str] = field(default_factory=list) # Trace of hops + + def record_hop(self, node_name: str, now: float) -> None: + """ + Append a record of visiting a node or edge. + + Args: + node_name: Name of the node or edge being recorded. + now: register the time of the operation + + """ + # Record hop as "NodeName@Timestamp" + self.history.append(f"{node_name}@{now:.3f}") + + @property + def latency(self) -> float | None: + """ + Return the total time in the system (finish_time - initial_time), + or None if the request hasn't completed yet. + """ + if self.finish_time is None: + return None + return self.finish_time - self.initial_time diff --git a/src/app/core/event_samplers/common_helpers.py b/src/app/core/event_samplers/common_helpers.py index 0f80870..e565a20 100644 --- a/src/app/core/event_samplers/common_helpers.py +++ b/src/app/core/event_samplers/common_helpers.py @@ -3,31 +3,74 @@ import numpy as np +from app.config.constants import Distribution +from app.schemas.random_variables_config import RVConfig -def uniform_variable_generator(rng: np.random.Generator | None = None) -> float: - """Return U~Uniform(0, 1).""" - rng = rng or np.random.default_rng() - return float(rng.random()) +def uniform_variable_generator(rng: np.random.Generator) -> float: + """Return U~Uniform(0, 1).""" + # rng is guaranteed to be a valid np.random.Generator due to the type signature. + return rng.random() def poisson_variable_generator( mean: float, - rng: np.random.Generator | None = None, -) -> int: + rng: np.random.Generator, +) -> float: """Return a Poisson-distributed integer with expectation *mean*.""" - rng = rng or np.random.default_rng() - return int(rng.poisson(mean)) - + return rng.poisson(mean) def truncated_gaussian_generator( mean: float, variance: float, rng: np.random.Generator, -) -> int: +) -> float: """ Generate a Normal-distributed variable with mean and variance """ - rng = rng or np.random.default_rng() value = rng.normal(mean, variance) - return max(0, int(value)) + return max(0.0, value) + +def lognormal_variable_generator( + mean: float, + variance: float, + rng: np.random.Generator, +) -> float: + """Return a Poisson-distributed floateger with expectation *mean*.""" + return rng.lognormal(mean, variance) + +def exponential_variable_generator( + mean: float, + rng: np.random.Generator, +) -> float: + """Return an exponentially-distributed float with mean *mean*.""" + return float(rng.exponential(mean)) + +def general_sampler(random_variable: RVConfig, rng: np.random.Generator) -> float: + """Sample a number according to the distribution described in `random_variable`.""" + dist = random_variable.distribution + mean = random_variable.mean + + match dist: + case Distribution.UNIFORM: + + assert random_variable.variance is None + return uniform_variable_generator(rng) + + case _: + + variance = random_variable.variance + assert variance is not None + + match dist: + case Distribution.NORMAL: + return truncated_gaussian_generator(mean, variance, rng) + case Distribution.LOG_NORMAL: + return lognormal_variable_generator(mean, variance, rng) + case Distribution.POISSON: + return float(poisson_variable_generator(mean, rng)) + case Distribution.EXPONENTIAL: + return exponential_variable_generator(mean, rng) + case _: + msg = f"Unsupported distribution: {dist}" + raise ValueError(msg) diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/core/event_samplers/gaussian_poisson.py index 0b7818c..f9cc401 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/core/event_samplers/gaussian_poisson.py @@ -24,7 +24,7 @@ def gaussian_poisson_sampling( input_data: RqsGeneratorInput, sim_settings: SimulationSettings, *, - rng: np.random.Generator | None = None, + rng: np.random.Generator, ) -> Generator[float, None, None]: """ Yield inter-arrival gaps (seconds) for the compound Gaussian-Poisson process. @@ -39,8 +39,6 @@ def gaussian_poisson_sampling( Δt ~ Exponential(Λ) using inverse-CDF. 4. Stop once the virtual clock exceeds *total_simulation_time*. """ - rng = rng or np.random.default_rng() - simulation_time = sim_settings.total_simulation_time user_sampling_window = input_data.user_sampling_window diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/core/event_samplers/poisson_poisson.py index 1566f90..1d4787f 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/core/event_samplers/poisson_poisson.py @@ -21,7 +21,7 @@ def poisson_poisson_sampling( input_data: RqsGeneratorInput, sim_settings: SimulationSettings, *, - rng: np.random.Generator | None = None, + rng: np.random.Generator, ) -> Generator[float, None, None]: """ Yield inter-arrival gaps (seconds) for the compound Poisson-Poisson process. @@ -36,8 +36,6 @@ def poisson_poisson_sampling( Δt ~ Exponential(Λ) using inverse-CDF. 4. Stop once the virtual clock exceeds *total_simulation_time*. """ - rng = rng or np.random.default_rng() - simulation_time = sim_settings.total_simulation_time user_sampling_window = input_data.user_sampling_window diff --git a/src/app/core/helpers.py b/src/app/core/helpers/dictionary_metrics.py similarity index 100% rename from src/app/core/helpers.py rename to src/app/core/helpers/dictionary_metrics.py diff --git a/src/app/core/simulation/requests_generator.py b/src/app/core/helpers/requests_generator.py similarity index 79% rename from src/app/core/simulation/requests_generator.py rename to src/app/core/helpers/requests_generator.py index 1b177e7..2d04bef 100644 --- a/src/app/core/simulation/requests_generator.py +++ b/src/app/core/helpers/requests_generator.py @@ -1,6 +1,10 @@ """ -Continuous-time event sampling for the Poisson-Poisson -and Gaussian-Poisson workload model. +SimPy process that generates user requests at stochastic intervals. + +This node samples inter-arrival times according to the configured +distribution (Gaussian-Poisson or Poisson-Poisson), constructs a +RequestState for each new request, records its origin hop, and +immediately pushes it into the next pipeline stage via an EdgeRuntime. """ from __future__ import annotations @@ -24,7 +28,7 @@ def requests_generator( input_data: RqsGeneratorInput, sim_settings: SimulationSettings, *, - rng: np.random.Generator | None = None, + rng: np.random.Generator, ) -> Generator[float, None, None]: """ Return an iterator of inter-arrival gaps (seconds) according to the model diff --git a/src/app/core/runtime/__init__.py b/src/app/core/runtime/__init__.py new file mode 100644 index 0000000..fdc562a --- /dev/null +++ b/src/app/core/runtime/__init__.py @@ -0,0 +1 @@ +"""module for the runtime folder""" diff --git a/src/app/core/runtime/edge.py b/src/app/core/runtime/edge.py new file mode 100644 index 0000000..4f22608 --- /dev/null +++ b/src/app/core/runtime/edge.py @@ -0,0 +1,69 @@ +""" +Unidirectional link that simulates message transmission between nodes. +Encapsulates network behavior—latency sampling (LogNormal, Exponential, etc.), +drop probability, and optional connection-pool contention—by exposing a +`send(msg)` method. Each `send` call schedules a SimPy subprocess that +waits the sampled delay (and any resource wait) before delivering the +message to the target node's inbox. +""" +from collections.abc import Generator +from typing import TYPE_CHECKING + +import numpy as np +import simpy + +from app.config.rqs_state import RequestState +from app.core.event_samplers.common_helpers import general_sampler +from app.schemas.system_topology_schema.full_system_topology_schema import Edge + +if TYPE_CHECKING: + from app.schemas.random_variables_config import RVConfig + + + +class EdgeRuntime: + """definining the logic to handle the edges during the simulation""" + + def __init__( + self, + *, + env: simpy.Environment, + edge_config: Edge, + rng: np.random.Generator | None = None, + target_box: simpy.Store, + ) -> None: + """Definition of the instance attributes""" + self.env = env + self.edge_config = edge_config + self.target_box = target_box + self.rng = rng or np.random.default_rng() + + def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: + """Function to deliver the state to the next node""" + # extract the random variables defining the latency of the edge + random_variable: RVConfig = self.edge_config.latency + + uniform_variable = self.rng.uniform() + if uniform_variable < self.edge_config.dropout_rate: + state.finish_time = self.env.now + state.record_hop(f"{self.edge_config.id}-dropped", state.finish_time) + return + + transit_time = general_sampler(random_variable, self.rng) + yield self.env.timeout(transit_time) + state.record_hop(self.edge_config.id, self.env.now) + yield self.target_box.put(state) + + + def transport(self, state: RequestState) -> simpy.Process: + """ + Called by the upstream node. Immediately spins off a SimPy process + that will handle drop + delay + delivery of `state`. + """ + return self.env.process(self._deliver(state)) + + + + + + diff --git a/src/app/core/runtime/rqs_generator.py b/src/app/core/runtime/rqs_generator.py new file mode 100644 index 0000000..5611c85 --- /dev/null +++ b/src/app/core/runtime/rqs_generator.py @@ -0,0 +1,117 @@ +""" +definition of the class representing the rqs generator +that will be passed as a process in the simpy simulation +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import numpy as np + +from app.config.constants import Distribution, SystemNodes +from app.config.rqs_state import RequestState +from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling +from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling + +if TYPE_CHECKING: + + from collections.abc import Generator + + import simpy + + from app.core.runtime.edge import EdgeRuntime + from app.schemas.requests_generator_input import RqsGeneratorInput + from app.schemas.simulation_settings_input import SimulationSettings + + +class RqsGeneratorRuntime: + """ + A “node” that produces request contexts at stochastic inter-arrival times + and immediately pushes them down the pipeline via an EdgeRuntime. + """ + + def __init__( + self, + env: simpy.Environment, + out_edge: EdgeRuntime, + rqs_generator_data: RqsGeneratorInput, + sim_settings: SimulationSettings, + *, + rng: np.random.Generator | None = None, + ) -> None: + """ + Definition of the instance attributes for the RqsGeneratorRuntime + + Args: + env (simpy.Environment): environment for the simulation + out_edge (EdgeRuntime): edge connecting this node with the next one + rqs_generator_data (RqsGeneratorInput): data do define the sampler + sim_settings (SimulationSettings): settings to start the simulation + rng (np.random.Generator | None, optional): random variable generator. + + """ + self.rqs_generator_data = rqs_generator_data + self.sim_settings = sim_settings + self.rng = rng or np.random.default_rng() + self.out_edge = out_edge + self.env = env + self.id_counter = 0 + + + def _next_id(self) -> int: + self.id_counter += 1 + return self.id_counter + + + def _requests_generator(self) -> Generator[float, None, None]: + """ + Return an iterator of inter-arrival gaps (seconds) according to the model + chosen in *input_data*. + + Notes + ----- + * If ``avg_active_users.distribution`` is ``"gaussian"`` or ``"normal"``, + the Gaussian-Poisson sampler is used. + * Otherwise the default Poisson-Poisson sampler is returned. + + """ + dist = self.rqs_generator_data.avg_active_users.distribution + + if dist == Distribution.NORMAL: + #Gaussian-Poisson model + return gaussian_poisson_sampling( + input_data=self.rqs_generator_data, + sim_settings=self.sim_settings, + rng=self.rng, + + ) + + # Poisson + Poisson + return poisson_poisson_sampling( + input_data=self.rqs_generator_data, + sim_settings=self.sim_settings, + rng=self.rng, + ) + + def _event_arrival(self) -> Generator[simpy.Event, None, None]: + """Simulating the process of event generation""" + time_gaps = self._requests_generator() + + for gap in time_gaps: + yield self.env.timeout(gap) + + state = RequestState( + id=self._next_id(), + initial_time=self.env.now, + + ) + state.record_hop(SystemNodes.GENERATOR, self.env.now) + # transport is a method of the edge runtime + # which define the step of how the state is moving + # from one node to another + self.out_edge.transport(state) + + def run(self) -> simpy.Process: + """Passing the structure as a simpy process""" + return self.env.process(self._event_arrival()) diff --git a/src/app/core/simulation/simulation_run.py b/src/app/core/simulation_run.py similarity index 95% rename from src/app/core/simulation/simulation_run.py rename to src/app/core/simulation_run.py index 1aea997..c6159ca 100644 --- a/src/app/core/simulation/simulation_run.py +++ b/src/app/core/simulation_run.py @@ -6,7 +6,7 @@ import simpy -from app.core.simulation.requests_generator import requests_generator +from app.core.helpers.requests_generator import requests_generator from app.schemas.simulation_output import SimulationOutput if TYPE_CHECKING: diff --git a/src/app/schemas/random_variables_config.py b/src/app/schemas/random_variables_config.py index 8d17c5f..b09ed13 100644 --- a/src/app/schemas/random_variables_config.py +++ b/src/app/schemas/random_variables_config.py @@ -15,7 +15,7 @@ class RVConfig(BaseModel): @field_validator("mean", mode="before") def ensure_mean_is_numeric( cls, # noqa: N805 - v: object, + v: float, ) -> float: """Ensure `mean` is numeric, then coerce to float.""" err_msg = "mean must be a number (int or float)" @@ -25,7 +25,12 @@ def ensure_mean_is_numeric( @model_validator(mode="after") # type: ignore[arg-type] def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 - """Set variance = mean when distribution == 'normal' and variance is missing.""" - if model.variance is None and model.distribution == Distribution.NORMAL: + """Set variance = mean when distribution require and variance is missing.""" + needs_variance: set[Distribution] = { + Distribution.NORMAL, + Distribution.LOG_NORMAL, + } + + if model.variance is None and model.distribution in needs_variance: model.variance = model.mean return model diff --git a/src/app/schemas/requests_generator_input.py b/src/app/schemas/requests_generator_input.py index f56a4f0..35ff361 100644 --- a/src/app/schemas/requests_generator_input.py +++ b/src/app/schemas/requests_generator_input.py @@ -1,9 +1,9 @@ """Define the schemas for the simulator""" -from pydantic import BaseModel, Field +from pydantic import BaseModel, Field, field_validator -from app.config.constants import TimeDefaults +from app.config.constants import Distribution, TimeDefaults from app.schemas.random_variables_config import RVConfig @@ -24,4 +24,34 @@ class RqsGeneratorInput(BaseModel): ), ) + @field_validator("avg_request_per_minute_per_user", mode="after") + def ensure_avg_request_is_poisson( + cls, # noqa: N805 + v: RVConfig, + ) -> RVConfig: + """ + Force the distribution for the rqs generator to be poisson + at the moment we have a joint sampler just for the poisson-poisson + and gaussian-poisson case + """ + if v.distribution != Distribution.POISSON: + msg = "At the moment the variable avg request must be Poisson" + raise ValueError(msg) + return v + + @field_validator("avg_active_users", mode="after") + def ensure_avg_user_is_poisson_or_gaussian( + cls, # noqa: N805 + v: RVConfig, + ) -> RVConfig: + """ + Force the distribution for the rqs generator to be poisson + at the moment we have a joint sampler just for the poisson-poisson + and gaussian-poisson case + """ + if v.distribution not in {Distribution.POISSON, Distribution.NORMAL}: + msg = "At the moment the variable active user must be Poisson or Gaussian" + raise ValueError(msg) + return v + diff --git a/src/app/schemas/system_topology_schema/endpoint_schema.py b/src/app/schemas/system_topology_schema/endpoint_schema.py index abe53da..8933dab 100644 --- a/src/app/schemas/system_topology_schema/endpoint_schema.py +++ b/src/app/schemas/system_topology_schema/endpoint_schema.py @@ -12,7 +12,7 @@ EndpointStepCPU, EndpointStepIO, EndpointStepRAM, - Metrics, + StepOperation, ) @@ -23,58 +23,58 @@ class Step(BaseModel): """ kind: EndpointStepIO | EndpointStepCPU | EndpointStepRAM - step_metrics: dict[Metrics, PositiveFloat | PositiveInt] + step_operation: dict[StepOperation, PositiveFloat | PositiveInt] - @field_validator("step_metrics", mode="before") + @field_validator("step_operation", mode="before") def ensure_non_empty( cls, # noqa: N805 - v: dict[Metrics, PositiveFloat | PositiveInt], - ) -> dict[Metrics, PositiveFloat | PositiveInt]: - """Ensure the dict step metrics exist""" + v: dict[StepOperation, PositiveFloat | PositiveInt], + ) -> dict[StepOperation, PositiveFloat | PositiveInt]: + """Ensure the dict step operation exist""" if not v: - msg = "step_metrics cannot be empty" + msg = "step_operation cannot be empty" raise ValueError(msg) return v @model_validator(mode="after") # type: ignore[arg-type] - def ensure_coherence_kind_metrics( + def ensure_coherence_type_operation( cls, # noqa: N805 model: "Step", ) -> "Step": """ - Validation to couple kind and metrics only when they are + Validation to couple kind and operation only when they are valid for example ram cannot have associated a cpu time """ - metrics_keys = set(model.step_metrics) + operation_keys = set(model.step_operation) # Control of the length of the set to be sure only on key is passed - if len(metrics_keys) != 1: - msg = "step_metrics must contain exactly one entry" + if len(operation_keys) != 1: + msg = "step_operation must contain exactly one entry" raise ValueError(msg) - # Coherence CPU bound operation and metric + # Coherence CPU bound operation and operation if isinstance(model.kind, EndpointStepCPU): - if metrics_keys != {Metrics.CPU_TIME}: + if operation_keys != {StepOperation.CPU_TIME}: msg = ( - "The metric to quantify a CPU BOUND step" - f"must be {Metrics.CPU_TIME}" + "The operation to quantify a CPU BOUND step" + f"must be {StepOperation.CPU_TIME}" ) raise ValueError(msg) - # Coherence RAM operation and metric + # Coherence RAM operation and operation elif isinstance(model.kind, EndpointStepRAM): - if metrics_keys != {Metrics.NECESSARY_RAM}: + if operation_keys != {StepOperation.NECESSARY_RAM}: msg = ( - "The metric to quantify a RAM step" - f"must be {Metrics.NECESSARY_RAM}" + "The operation to quantify a RAM step" + f"must be {StepOperation.NECESSARY_RAM}" ) raise ValueError(msg) - # Coherence I/O operation and metric - elif metrics_keys != {Metrics.IO_WAITING_TIME}: + # Coherence I/O operation and operation + elif operation_keys != {StepOperation.IO_WAITING_TIME}: msg = ( - "The metric to quantify an I/O step" - f"must be {Metrics.IO_WAITING_TIME}" + "The operation to quantify an I/O step" + f"must be {StepOperation.IO_WAITING_TIME}" ) raise ValueError(msg) diff --git a/src/app/schemas/system_topology_schema/full_system_topology_schema.py b/src/app/schemas/system_topology_schema/full_system_topology_schema.py index b53f08e..ddbac36 100644 --- a/src/app/schemas/system_topology_schema/full_system_topology_schema.py +++ b/src/app/schemas/system_topology_schema/full_system_topology_schema.py @@ -6,6 +6,8 @@ one structure to another """ +from collections import Counter + from pydantic import ( BaseModel, ConfigDict, @@ -16,6 +18,7 @@ ) from app.config.constants import ( + NetworkParameters, ServerResourcesDefaults, SystemEdges, SystemNodes, @@ -126,8 +129,10 @@ def unique_ids( ) -> "TopologyNodes": """Check that all id are unique""" ids = [server.id for server in model.servers] + [model.client.id] - if len(ids) != len(set(ids)): - msg = "Node ids must be unique" + counter = Counter(ids) + duplicate = [node_id for node_id, value in counter.items() if value > 1] + if duplicate: + msg = f"The following node ids are duplicate {duplicate}" raise ValueError(msg) return model @@ -159,11 +164,21 @@ class Edge(BaseModel): """ + id: str source: str target: str latency: RVConfig probability: float = Field(1.0, ge=0.0, le=1.0) edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION + dropout_rate: float = Field( + NetworkParameters.DROPOUT_RATE, + ge = NetworkParameters.MIN_DROPOUT_RATE, + le = NetworkParameters.MAX_DROPOUT_RATE, + description=( + "for each nodes representing a network we define" + "a probability to drop the request" + ), + ) @model_validator(mode="after") # type: ignore[arg-type] def check_src_trgt_different(cls, model: "Edge") -> "Edge": # noqa: N805 @@ -188,6 +203,20 @@ class TopologyGraph(BaseModel): nodes: TopologyNodes edges: list[Edge] + @model_validator(mode="after") # type: ignore[arg-type] + def unique_ids( + cls, # noqa: N805 + model: "TopologyGraph", + ) -> "TopologyGraph": + """Check that all id are unique""" + counter = Counter(edge.id for edge in model.edges) + duplicate = [edge_id for edge_id, value in counter.items() if value > 1] + if duplicate: + msg = f"There are multiple edges with the following ids {duplicate}" + raise ValueError(msg) + return model + + @model_validator(mode="after") # type: ignore[arg-type] def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 """ diff --git a/tests/unit/input_sructure/test_endpoint_input.py b/tests/unit/input_sructure/test_endpoint_input.py index 7e166dd..fc08b5e 100644 --- a/tests/unit/input_sructure/test_endpoint_input.py +++ b/tests/unit/input_sructure/test_endpoint_input.py @@ -9,7 +9,7 @@ EndpointStepCPU, EndpointStepIO, EndpointStepRAM, - Metrics, + StepOperation, ) from app.schemas.system_topology_schema.endpoint_schema import Endpoint, Step @@ -21,7 +21,7 @@ def cpu_step(value: float = 0.1) -> Step: """Return a minimal valid CPU-bound Step.""" return Step( kind=EndpointStepCPU.CPU_BOUND_OPERATION, - step_metrics={Metrics.CPU_TIME: value}, + step_operation={StepOperation.CPU_TIME: value}, ) @@ -29,7 +29,7 @@ def ram_step(value: int = 128) -> Step: """Return a minimal valid RAM Step.""" return Step( kind=EndpointStepRAM.RAM, - step_metrics={Metrics.NECESSARY_RAM: value}, + step_operation={StepOperation.NECESSARY_RAM: value}, ) @@ -37,7 +37,7 @@ def io_step(value: float = 0.05) -> Step: """Return a minimal valid I/O Step.""" return Step( kind=EndpointStepIO.WAIT, - step_metrics={Metrics.IO_WAITING_TIME: value}, + step_operation={StepOperation.IO_WAITING_TIME: value}, ) @@ -45,22 +45,25 @@ def io_step(value: float = 0.05) -> Step: # Positive test cases # --------------------------------------------------------------------------- # def test_valid_cpu_step() -> None: - """Test that a CPU step with correct 'cpu_time' metric passes validation.""" + """Test that a CPU step with correct 'cpu_time' operation passes validation.""" step = cpu_step() - # The metric value must match the input - assert step.step_metrics[Metrics.CPU_TIME] == 0.1 + # The operation value must match the input + assert step.step_operation[StepOperation.CPU_TIME] == 0.1 def test_valid_ram_step() -> None: - """Test that a RAM step with correct 'necessary_ram' metric passes validation.""" + """Test that a RAM step with correct 'necessary_ram' operation passes validation.""" step = ram_step() - assert step.step_metrics[Metrics.NECESSARY_RAM] == 128 + assert step.step_operation[StepOperation.NECESSARY_RAM] == 128 def test_valid_io_step() -> None: - """Test that an I/O step with correct 'io_waiting_time' metric passes validation.""" + """ + Test that an I/O step with correct 'io_waiting_time' + operation passes validation. + """ step = io_step() - assert step.step_metrics[Metrics.IO_WAITING_TIME] == 0.05 + assert step.step_operation[StepOperation.IO_WAITING_TIME] == 0.05 def test_endpoint_with_mixed_steps() -> None: @@ -79,47 +82,50 @@ def test_endpoint_with_mixed_steps() -> None: # Negative test cases # --------------------------------------------------------------------------- # @pytest.mark.parametrize( - ("kind", "bad_metrics"), + ("kind", "bad_operation"), [ - # CPU step with RAM metric - (EndpointStepCPU.CPU_BOUND_OPERATION, {Metrics.NECESSARY_RAM: 64}), - # RAM step with CPU metric - (EndpointStepRAM.RAM, {Metrics.CPU_TIME: 0.2}), - # I/O step with CPU metric - (EndpointStepIO.DB, {Metrics.CPU_TIME: 0.05}), + # CPU step with RAM operation + (EndpointStepCPU.CPU_BOUND_OPERATION, {StepOperation.NECESSARY_RAM: 64}), + # RAM step with CPU operation + (EndpointStepRAM.RAM, {StepOperation.CPU_TIME: 0.2}), + # I/O step with CPU operation + (EndpointStepIO.DB, {StepOperation.CPU_TIME: 0.05}), ], ) -def test_incoherent_kind_metric_pair( +def test_incoherent_kind_operation_pair( kind: EndpointStepCPU | EndpointStepRAM | EndpointStepIO, - bad_metrics: dict[Metrics, float | int], + bad_operation: dict[StepOperation, float | int], ) -> None: - """Test that mismatched kind and metric combinations raise ValidationError.""" + """Test that mismatched kind and operation combinations raise ValidationError.""" with pytest.raises(ValidationError): - Step(kind=kind, step_metrics=bad_metrics) + Step(kind=kind, step_operation=bad_operation) -def test_multiple_metrics_not_allowed() -> None: - """Test that providing multiple metrics in a single Step raises ValidationError.""" +def test_multiple_operation_not_allowed() -> None: + """ + Test that providing multiple operation in a single Step + raises ValidationError. + """ with pytest.raises(ValidationError): Step( kind=EndpointStepCPU.CPU_BOUND_OPERATION, - step_metrics={ - Metrics.CPU_TIME: 0.1, - Metrics.NECESSARY_RAM: 64, + step_operation={ + StepOperation.CPU_TIME: 0.1, + StepOperation.NECESSARY_RAM: 64, }, ) -def test_empty_metrics_rejected() -> None: - """Test that an empty metrics dict is rejected by the validator.""" +def test_empty_operation_rejected() -> None: + """Test that an empty operation dict is rejected by the validator.""" with pytest.raises(ValidationError): - Step(kind=EndpointStepCPU.CPU_BOUND_OPERATION, step_metrics={}) + Step(kind=EndpointStepCPU.CPU_BOUND_OPERATION, step_operation={}) -def test_wrong_metric_name_for_io() -> None: - """Test that an I/O step with a non-I/O metric key is rejected.""" +def test_wrong_operation_name_for_io() -> None: + """Test that an I/O step with a non-I/O operation key is rejected.""" with pytest.raises(ValidationError): Step( kind=EndpointStepIO.CACHE, - step_metrics={Metrics.NECESSARY_RAM: 64}, + step_operation={StepOperation.NECESSARY_RAM: 64}, ) diff --git a/tests/unit/input_sructure/test_full_topology_input.py b/tests/unit/input_sructure/test_full_topology_input.py index 9e17573..7f0d864 100644 --- a/tests/unit/input_sructure/test_full_topology_input.py +++ b/tests/unit/input_sructure/test_full_topology_input.py @@ -1,13 +1,4 @@ -"""Unit-tests for the **topology schemas** (Client, ServerResources, …). - -Every section below is grouped by the object under test, separated by -clear comment banners so that long files remain navigable. - -The tests aim for: -* 100 % branch-coverage on custom validators. -* mypy strict-compatibility (full type hints, no Any). -* ruff compliance (imports ordered, no unused vars, ≤ 88-char lines). -""" +"""Unit-tests for topology schemas (Client, ServerResources, Edge, …)""" from __future__ import annotations @@ -16,8 +7,9 @@ from app.config.constants import ( EndpointStepCPU, - Metrics, + NetworkParameters, ServerResourcesDefaults, + StepOperation, SystemEdges, SystemNodes, ) @@ -32,53 +24,58 @@ TopologyNodes, ) - # --------------------------------------------------------------------------- # -# Client +# Client # # --------------------------------------------------------------------------- # + + def test_valid_client() -> None: - """A client with correct `type` should validate.""" + """A client with correct ``type`` validates.""" cli = Client(id="frontend", type=SystemNodes.CLIENT) assert cli.type is SystemNodes.CLIENT def test_invalid_client_type() -> None: - """Wrong `type` enum on Client must raise ValidationError.""" + """Wrong ``type`` enumeration on Client raises ValidationError.""" with pytest.raises(ValidationError): - Client(id="wrong", type=SystemNodes.SERVER) + Client(id="oops", type=SystemNodes.SERVER) # --------------------------------------------------------------------------- # -# ServerResources +# ServerResources # # --------------------------------------------------------------------------- # + + def test_server_resources_defaults() -> None: - """Default values must match the constant table.""" - res = ServerResources() # all defaults + """All defaults match constant table.""" + res = ServerResources() assert res.cpu_cores == ServerResourcesDefaults.CPU_CORES assert res.ram_mb == ServerResourcesDefaults.RAM_MB assert res.db_connection_pool is ServerResourcesDefaults.DB_CONNECTION_POOL def test_server_resources_min_constraints() -> None: - """cpu_cores and ram_mb < minimum should fail validation.""" + """Values below minimum trigger validation failure.""" with pytest.raises(ValidationError): ServerResources(cpu_cores=0, ram_mb=128) # too small # --------------------------------------------------------------------------- # -# Server +# Server # # --------------------------------------------------------------------------- # + + def _dummy_endpoint() -> Endpoint: - """Return a minimal valid Endpoint needed to build a Server.""" + """Return a minimal valid Endpoint for Server construction.""" step = Step( kind=EndpointStepCPU.CPU_BOUND_OPERATION, - step_metrics={Metrics.CPU_TIME: 0.1}, + step_operation={StepOperation.CPU_TIME: 0.1}, ) return Endpoint(endpoint_name="/ping", steps=[step]) def test_valid_server() -> None: - """Server with correct type, resources and endpoint list.""" + """Server with correct ``type`` and resources passes validation.""" srv = Server( id="api-1", type=SystemNodes.SERVER, @@ -89,10 +86,10 @@ def test_valid_server() -> None: def test_invalid_server_type() -> None: - """Server with wrong `type` enum must be rejected.""" + """Server with wrong ``type`` raises ValidationError.""" with pytest.raises(ValidationError): Server( - id="oops", + id="bad-srv", type=SystemNodes.CLIENT, server_resources=ServerResources(), endpoints=[_dummy_endpoint()], @@ -100,10 +97,12 @@ def test_invalid_server_type() -> None: # --------------------------------------------------------------------------- # -# TopologyNodes +# TopologyNodes # # --------------------------------------------------------------------------- # + + def _single_node_topology() -> TopologyNodes: - """Helper that returns a valid TopologyNodes with one server and one client.""" + """Helper returning one server + one client topology.""" srv = Server( id="svc-A", server_resources=ServerResources(), @@ -114,22 +113,24 @@ def _single_node_topology() -> TopologyNodes: def test_unique_ids_validator() -> None: - """Duplicate node IDs should trigger the unique_ids validator.""" + """Duplicate node IDs trigger the ``unique_ids`` validator.""" nodes = _single_node_topology() - # duplicate client ID dup_srv = nodes.servers[0].model_copy(update={"id": "browser"}) with pytest.raises(ValidationError): TopologyNodes(servers=[dup_srv], client=nodes.client) # --------------------------------------------------------------------------- # -# Edge +# Edge # # --------------------------------------------------------------------------- # + + def test_edge_source_equals_target_fails() -> None: - """Edge with identical source/target must raise.""" + """Edge with identical source/target raises ValidationError.""" latency_cfg = RVConfig(mean=0.05) with pytest.raises(ValidationError): Edge( + id="edge-dup", source="same", target="same", latency=latency_cfg, @@ -137,18 +138,48 @@ def test_edge_source_equals_target_fails() -> None: ) +def test_edge_missing_id_raises() -> None: + """Omitting mandatory ``id`` field raises ValidationError.""" + latency_cfg = RVConfig(mean=0.01) + with pytest.raises(ValidationError): + Edge( # type: ignore[call-arg] + source="a", + target="b", + latency=latency_cfg, + ) + + +@pytest.mark.parametrize( + "bad_rate", + [-0.1, NetworkParameters.MAX_DROPOUT_RATE + 0.1], +) +def test_edge_dropout_rate_bounds(bad_rate: float) -> None: + """Drop-out rate outside valid range triggers ValidationError.""" + with pytest.raises(ValidationError): + Edge( + id="edge-bad-drop", + source="n1", + target="n2", + latency=RVConfig(mean=0.01), + dropout_rate=bad_rate, + ) + + # --------------------------------------------------------------------------- # -# TopologyGraph +# TopologyGraph # # --------------------------------------------------------------------------- # + + def _latency() -> RVConfig: - """A tiny helper for RVConfig latency objects.""" + """Tiny helper for latency objects.""" return RVConfig(mean=0.02) def test_valid_topology_graph() -> None: - """End-to-end happy-path graph passes validation.""" + """Happy-path graph passes validation.""" nodes = _single_node_topology() edge = Edge( + id="edge-1", source="browser", target="svc-A", latency=_latency(), @@ -159,9 +190,10 @@ def test_valid_topology_graph() -> None: def test_edge_refers_unknown_node() -> None: - """Edge pointing to a non-existent node ID must fail.""" + """Edge pointing to a non-existent node fails validation.""" nodes = _single_node_topology() bad_edge = Edge( + id="edge-ghost", source="browser", target="ghost-srv", latency=_latency(), diff --git a/tests/unit/input_sructure/test_requests_generator_input.py b/tests/unit/input_sructure/test_requests_generator_input.py index 39a0b2d..1ca9562 100644 --- a/tests/unit/input_sructure/test_requests_generator_input.py +++ b/tests/unit/input_sructure/test_requests_generator_input.py @@ -1,5 +1,4 @@ """Validation tests for RVConfig, RqsGeneratorInput and SimulationSettings.""" - from __future__ import annotations import pytest @@ -10,23 +9,41 @@ from app.schemas.requests_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings -# --------------------------------------------------------------------------- -# RVCONFIG -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# RVCONFIG # +# --------------------------------------------------------------------------- # def test_normal_sets_variance_to_mean() -> None: - """If variance is omitted with 'normal', it defaults to mean.""" + """If variance is omitted for 'normal', it defaults to mean.""" cfg = RVConfig(mean=10, distribution=Distribution.NORMAL) assert cfg.variance == 10.0 +def test_log_normal_sets_variance_to_mean() -> None: + """If variance is omitted for 'log_normal', it defaults to mean.""" + cfg = RVConfig(mean=5, distribution=Distribution.LOG_NORMAL) + assert cfg.variance == 5.0 + + def test_poisson_keeps_variance_none() -> None: - """If variance is omitted with 'poisson', it remains None.""" + """If variance is omitted for 'poisson', it remains None.""" cfg = RVConfig(mean=5, distribution=Distribution.POISSON) assert cfg.variance is None +def test_uniform_keeps_variance_none() -> None: + """If variance is omitted for 'uniform', it remains None.""" + cfg = RVConfig(mean=1, distribution=Distribution.UNIFORM) + assert cfg.variance is None + + +def test_exponential_keeps_variance_none() -> None: + """If variance is omitted for 'exponential', it remains None.""" + cfg = RVConfig(mean=2.5, distribution=Distribution.EXPONENTIAL) + assert cfg.variance is None + + def test_explicit_variance_is_preserved() -> None: """An explicit variance value is not modified.""" cfg = RVConfig(mean=8, distribution=Distribution.NORMAL, variance=4) @@ -34,7 +51,7 @@ def test_explicit_variance_is_preserved() -> None: def test_mean_must_be_numeric() -> None: - """A non numeric mean triggers a ValidationError.""" + """A non-numeric mean triggers a ValidationError.""" with pytest.raises(ValidationError) as exc: RVConfig(mean="not a number", distribution=Distribution.POISSON) @@ -65,24 +82,32 @@ def test_explicit_variance_kept_for_poisson() -> None: assert cfg.variance == pytest.approx(2.2) -def test_invalid_distribution_raises() -> None: +def test_invalid_distribution_literal_raises() -> None: """An unsupported distribution literal raises ValidationError.""" with pytest.raises(ValidationError): RVConfig(mean=5.0, distribution="not_a_dist") -# --------------------------------------------------------------------------- -# RQSGENERATORINPUT - USER_SAMPLING_WINDOW -# --------------------------------------------------------------------------- + +# --------------------------------------------------------------------------- # +# RQSGENERATORINPUT - USER_SAMPLING_WINDOW & DISTRIBUTION CONSTRAINTS # +# --------------------------------------------------------------------------- # + + +def _valid_poisson_cfg(mean: float = 1.0) -> dict[str, float | str]: + """Helper: minimal Poisson config for JSON-style input.""" + return {"mean": mean, "distribution": Distribution.POISSON} + + +def _valid_normal_cfg(mean: float = 1.0) -> dict[str, float | str]: + """Helper: minimal Normal config for JSON-style input.""" + return {"mean": mean, "distribution": Distribution.NORMAL} def test_default_user_sampling_window() -> None: """If user_sampling_window is missing it defaults to the constant.""" inp = RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), ) assert inp.user_sampling_window == TimeDefaults.USER_SAMPLING_WINDOW @@ -90,25 +115,19 @@ def test_default_user_sampling_window() -> None: def test_explicit_user_sampling_window_kept() -> None: """An explicit user_sampling_window is preserved.""" inp = RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window=30, ) assert inp.user_sampling_window == 30 def test_user_sampling_window_not_int_raises() -> None: - """A non integer user_sampling_window raises ValidationError.""" + """A non-integer user_sampling_window raises ValidationError.""" with pytest.raises(ValidationError): RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window="not-int", ) @@ -118,19 +137,60 @@ def test_user_sampling_window_above_max_raises() -> None: too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError): RqsGeneratorInput( - avg_active_users={"mean": 1.0, "distribution": Distribution.POISSON}, - avg_request_per_minute_per_user={ - "mean": 1.0, - "distribution": Distribution.POISSON, - }, + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window=too_large, ) +def test_avg_request_must_be_poisson() -> None: + """avg_request_per_minute_per_user must be Poisson; Normal raises.""" + with pytest.raises(ValidationError): + RqsGeneratorInput( + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_normal_cfg(), + ) + + +def test_avg_active_users_invalid_distribution_raises() -> None: + """avg_active_users cannot be Exponential; only Poisson or Normal allowed.""" + bad_cfg = {"mean": 1.0, "distribution": Distribution.EXPONENTIAL} + with pytest.raises(ValidationError): + RqsGeneratorInput( + avg_active_users=bad_cfg, + avg_request_per_minute_per_user=_valid_poisson_cfg(), + ) + + +def test_valid_poisson_poisson_configuration() -> None: + """Poisson-Poisson combo is accepted.""" + cfg = RqsGeneratorInput( + avg_active_users=_valid_poisson_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), + ) + assert cfg.avg_active_users.distribution is Distribution.POISSON + assert ( + cfg.avg_request_per_minute_per_user.distribution + is Distribution.POISSON + ) + + +def test_valid_normal_poisson_configuration() -> None: + """Normal-Poisson combo is accepted.""" + cfg = RqsGeneratorInput( + avg_active_users=_valid_normal_cfg(), + avg_request_per_minute_per_user=_valid_poisson_cfg(), + ) + assert cfg.avg_active_users.distribution is Distribution.NORMAL + assert ( + cfg.avg_request_per_minute_per_user.distribution + is Distribution.POISSON + ) + -# --------------------------------------------------------------------------- -# SIMULATIONSETTINGS - TOTAL_SIMULATION_TIME -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# SIMULATIONSETTINGS - TOTAL_SIMULATION_TIME # +# --------------------------------------------------------------------------- # def test_default_total_simulation_time() -> None: @@ -146,7 +206,7 @@ def test_explicit_total_simulation_time_kept() -> None: def test_total_simulation_time_not_int_raises() -> None: - """A non integer total_simulation_time raises ValidationError.""" + """A non-integer total_simulation_time raises ValidationError.""" with pytest.raises(ValidationError): SimulationSettings(total_simulation_time="three thousand") diff --git a/tests/unit/runtime/test_edge b/tests/unit/runtime/test_edge new file mode 100644 index 0000000..8daaf01 --- /dev/null +++ b/tests/unit/runtime/test_edge @@ -0,0 +1,136 @@ +"""Unit-tests for :class:`EdgeRuntime`. + +The tests cover: + +* correct delivery when the random 'uniform' draw exceeds the drop rate; +* correct drop behaviour when the draw is below the drop rate; +* that the latency sampler is invoked exactly once per message. +""" +from __future__ import annotations + +from collections.abc import Iterator +from typing import TYPE_CHECKING, cast + +import numpy as np +import pytest +import simpy + +from app.config.constants import NetworkParameters, SystemNodes +from app.config.rqs_state import RequestState +from app.core.event_samplers.common_helpers import general_sampler +from app.core.runtime.edge import EdgeRuntime +from app.schemas.random_variables_config import RVConfig +from app.schemas.system_topology_schema.full_system_topology_schema import Edge + +if TYPE_CHECKING: + from collections.abc import Generator + + +pytestmark = pytest.mark.unit # module-level marker + + +# --------------------------------------------------------------------------- # +# Dummy RNG # +# --------------------------------------------------------------------------- # + + +class DummyRNG: + """RNG stub returning preset values for `uniform()` and `normal()`.""" + + def __init__( + self, + *, + uniform_value: float, + sampler_value: float = 0.0, + ) -> None: + self.uniform_value = uniform_value + self.sampler_value = sampler_value + self.uniform_called = False + self.sampler_called = False + + def uniform(self) -> float: # noqa: D401 + self.uniform_called = True + return self.uniform_value + + # EdgeRuntime passes `self` to `general_sampler`; wrap the call + def normal(self, mean: float, sigma: float) -> float: # noqa: D401 + self.sampler_called = True + return self.sampler_value + + +# --------------------------------------------------------------------------- # +# Helper to create a minimal EdgeRuntime # +# --------------------------------------------------------------------------- # + + +def _make_edge( + env: simpy.Environment, + *, + uniform_value: float, + sampler_value: float = 0.0, +) -> tuple[EdgeRuntime, DummyRNG, simpy.Store]: + rng = DummyRNG(uniform_value=uniform_value, sampler_value=sampler_value) + store: simpy.Store = simpy.Store(env) + + edge_cfg = Edge( + id="edge-1", + source="src", + target="dst", + latency=RVConfig(mean=0.0, distribution="uniform"), # value ignored in test + ) + + edge_rt = EdgeRuntime( + env=env, + edge_config=edge_cfg, + rng=cast("np.random.Generator", rng), + target_box=store, + ) + return edge_rt, rng, store + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # + + +def test_edge_delivers_message_when_not_dropped() -> None: + """Message is delivered and latency sampler is called once.""" + env = simpy.Environment() + edge, rng, store = _make_edge(env, uniform_value=0.9, sampler_value=0.5) + + # prepare request state + state = RequestState(id=1, initial_time=0.0) + state.record_hop(SystemNodes.GENERATOR, env.now) + + edge.transport(state) + env.run() + + # exactly one message delivered + assert len(store.items) == 1 + delivered: RequestState = store.items[0] + assert delivered.hops[-1].node == "edge-1" # last hop is the edge id + assert rng.uniform_called is True + assert rng.sampler_called is True + + +def test_edge_drops_message_when_uniform_below_threshold( + monkeypatch: pytest.MonkeyPatch, +) -> None: + """Message is dropped and never placed in the target store.""" + # override global drop rate to deterministic 0.5 for the test + monkeypatch.setattr(NetworkParameters, "DROPOUT_RATE", 0.5, raising=False) + + env = simpy.Environment() + edge, rng, store = _make_edge(env, uniform_value=0.1) # below 0.5 ⇒ drop + + state = RequestState(id=2, initial_time=0.0) + state.record_hop(SystemNodes.GENERATOR, env.now) + + edge.transport(state) + env.run() + + assert len(store.items) == 0 # nothing delivered + assert state.hops[-1].node.endswith("dropped") + assert rng.uniform_called is True + # sampler must not be invoked when dropped + assert rng.sampler_called is False diff --git a/tests/unit/runtime/test_requests_generator.py b/tests/unit/runtime/test_requests_generator.py new file mode 100644 index 0000000..be03583 --- /dev/null +++ b/tests/unit/runtime/test_requests_generator.py @@ -0,0 +1,151 @@ +"""Unit-tests for the :class:`RqsGeneratorRuntime` dispatcher and event flow.""" +from __future__ import annotations + +from collections.abc import Iterator +from typing import TYPE_CHECKING, cast + +import numpy as np +import simpy + +from app.config.constants import Distribution +from app.core.runtime.rqs_generator import RqsGeneratorRuntime + +if TYPE_CHECKING: + + import pytest + from numpy.random import Generator + + from app.config.rqs_state import RequestState + from app.core.runtime.edge import EdgeRuntime + from app.schemas.requests_generator_input import RqsGeneratorInput + from app.schemas.simulation_settings_input import SimulationSettings + +import importlib + +# --------------------------------------------------------------------------- # +# Helpers # +# --------------------------------------------------------------------------- # + + +class DummyEdgeRuntime: + """Minimal stub capturing transported :class:`RequestState`.""" + + def __init__(self) -> None: + """Definition of the attributes""" + self.received: list[RequestState] = [] + + def transport(self, state: RequestState) -> None: + """Collect every state passed through the edge.""" + self.received.append(state) + + +def _make_runtime( + env: simpy.Environment, + edge: DummyEdgeRuntime, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, + *, + seed: int = 0, +) -> RqsGeneratorRuntime: + """Factory returning a fully wired :class:`RqsGeneratorRuntime`.""" + rng: Generator = np.random.default_rng(seed) + return RqsGeneratorRuntime( + env=env, + out_edge=cast("EdgeRuntime", edge), + rqs_generator_data=rqs_input, + sim_settings=sim_settings, + rng=rng, + ) + + +# --------------------------------------------------------------------------- # +# Dispatcher behaviour # +# --------------------------------------------------------------------------- # + + +RGR_MODULE = importlib.import_module("app.core.runtime.rqs_generator") + +def test_dispatcher_selects_poisson_poisson( + monkeypatch: pytest.MonkeyPatch, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Default (Poisson) distribution must invoke *poisson_poisson_sampling*.""" + called = {"pp": False} + + def _fake_pp(*args: object, **kwargs: object) -> Iterator[float]: + called["pp"] = True + return iter(()) # iterator already exhausted + + monkeypatch.setattr(RGR_MODULE, "poisson_poisson_sampling", _fake_pp) + + env = simpy.Environment() + edge = DummyEdgeRuntime() + runtime = _make_runtime(env, edge, rqs_input, sim_settings) + + gen = runtime._requests_generator() # noqa: SLF001 + for _ in gen: + pass + + assert called["pp"] is True + assert isinstance(gen, Iterator) + + +def test_dispatcher_selects_gaussian_poisson( + monkeypatch: pytest.MonkeyPatch, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Normal distribution must invoke *gaussian_poisson_sampling*.""" + rqs_input.avg_active_users.distribution = Distribution.NORMAL + called = {"gp": False} + + def _fake_gp(*args: object, **kwargs: object) -> Iterator[float]: + called["gp"] = True + return iter(()) + + monkeypatch.setattr(RGR_MODULE, "gaussian_poisson_sampling", _fake_gp) + + env = simpy.Environment() + edge = DummyEdgeRuntime() + runtime = _make_runtime(env, edge, rqs_input, sim_settings) + + gen = runtime._requests_generator() # noqa: SLF001 + for _ in gen: + pass + + assert called["gp"] is True + assert isinstance(gen, Iterator) + +# --------------------------------------------------------------------------- # +# Event-arrival flow # +# --------------------------------------------------------------------------- # + + +def test_event_arrival_generates_expected_number_of_requests( + monkeypatch: pytest.MonkeyPatch, + rqs_input: RqsGeneratorInput, + sim_settings: SimulationSettings, +) -> None: + """Given a deterministic gap list, exactly that many requests are sent.""" + gaps = [1.0, 2.0, 3.0] + + def _fake_gen(self: object) -> Iterator[float]: + yield from gaps + + monkeypatch.setattr( + RqsGeneratorRuntime, + "_requests_generator", + _fake_gen, + ) + + env = simpy.Environment() + edge = DummyEdgeRuntime() + runtime = _make_runtime(env, edge, rqs_input, sim_settings) + + env.process(runtime._event_arrival()) # noqa: SLF001 + env.run(until=sum(gaps) + 0.1) # run slightly past the last gap + + assert len(edge.received) == len(gaps) + ids = [s.id for s in edge.received] + assert ids == [1, 2, 3] diff --git a/tests/unit/sampler/test_sampler_helper.py b/tests/unit/sampler/test_sampler_helper.py index 0222196..7d34990 100644 --- a/tests/unit/sampler/test_sampler_helper.py +++ b/tests/unit/sampler/test_sampler_helper.py @@ -1,130 +1,196 @@ +"""Unit-tests for helper-functions in +`app.core.event_samplers.common_helpers`. +""" +from __future__ import annotations + from typing import cast import numpy as np +import pytest +from app.config.constants import Distribution from app.core.event_samplers.common_helpers import ( + exponential_variable_generator, + general_sampler, + lognormal_variable_generator, poisson_variable_generator, truncated_gaussian_generator, uniform_variable_generator, ) +from app.schemas.random_variables_config import RVConfig + +# --------------------------------------------------------------------------- # +# Dummy RNG # +# --------------------------------------------------------------------------- # class DummyRNG: - """Dummy RNG for testing: returns fixed values for random(), poisson(), normal().""" + """Minimal stub mimicking the subset of the NumPy RNG API used in tests.""" - def __init__( + def __init__( # noqa: D107 self, + *, uniform_value: float | None = None, poisson_value: int | None = None, normal_value: float | None = None, + lognormal_value: float | None = None, + exponential_value: float | None = None, ) -> None: - """ - Initialize the dummy RNG with optional preset outputs. - - Args: - uniform_value: value to return from random(), if not None. - poisson_value: value to return from poisson(), if not None. - normal_value: value to return from normal(), if not None. - - """ self.uniform_value = uniform_value self.poisson_value = poisson_value self.normal_value = normal_value + self.lognormal_value = lognormal_value + self.exponential_value = exponential_value - def random(self) -> float: - """ - Return the preset uniform_value or fall back to a real RNG. + # --- uniform ----------------------------------------------------------- # - Returns: - A float in [0.0, 1.0). - - """ + def random(self) -> float: + """Return the preset ``uniform_value`` or fall back to a real RNG.""" if self.uniform_value is not None: return self.uniform_value - return np.random.default_rng().random() - - def poisson(self, mean: float) -> int: - """ - Return the preset poisson_value or fall back to a real RNG. - - Args: - mean: the λ parameter for a Poisson draw (ignored if poisson_value is set). + return float(np.random.default_rng().random()) - Returns: - An integer sample from a Poisson distribution. + # --- Poisson ----------------------------------------------------------- # - """ + def poisson(self, lam: float) -> int: + """Return the preset ``poisson_value`` or draw from a real Poisson.""" if self.poisson_value is not None: return self.poisson_value - return int(np.random.default_rng().poisson(mean)) + return int(np.random.default_rng().poisson(lam)) - def normal(self, mean: float, sigma: float) -> float: - """ - Return the preset normal_value or fall back to a real RNG. - - Args: - mean: the mean of the Normal distribution. - sigma: the standard deviation of the Normal distribution. - - Returns: - A float sample from a Normal distribution. + # --- Normal ------------------------------------------------------------ # - """ + def normal(self, mean: float, sigma: float) -> float: + """Return the preset ``normal_value`` or draw from a real Normal.""" if self.normal_value is not None: return self.normal_value return float(np.random.default_rng().normal(mean, sigma)) + # --- Log-normal -------------------------------------------------------- # + + def lognormal(self, mean: float, sigma: float) -> float: + """Return the preset ``lognormal_value`` or draw from a real LogNormal.""" + if self.lognormal_value is not None: + return self.lognormal_value + return float(np.random.default_rng().lognormal(mean, sigma)) + + # --- Exponential ------------------------------------------------------- # + + def exponential(self, scale: float) -> float: + """Return the preset ``exponential_value`` or draw from a real Exponential.""" + if self.exponential_value is not None: + return self.exponential_value + return float(np.random.default_rng().exponential(scale)) + + +# --------------------------------------------------------------------------- # +# Tests for low-level generators # +# --------------------------------------------------------------------------- # + def test_uniform_variable_generator_with_dummy_rng() -> None: - """Ensure uniform_variable_generator returns the dummy RNGs uniform_value.""" + """`uniform_variable_generator` returns the dummy's ``uniform_value``.""" dummy = cast("np.random.Generator", DummyRNG(uniform_value=0.75)) assert uniform_variable_generator(dummy) == 0.75 -def test_uniform_variable_generator_default_rng_range() -> None: - """Ensure the default RNG produces a float in [0.0, 1.0).""" - for _ in range(100): - val = uniform_variable_generator() - assert isinstance(val, float) - assert 0.0 <= val < 1.0 +def test_uniform_variable_generator_bounds() -> None: + """Calling with a real RNG yields a value in the half-open interval [0, 1).""" + rng = np.random.default_rng(1_234) + val = uniform_variable_generator(rng) + assert 0.0 <= val < 1.0 def test_poisson_variable_generator_with_dummy_rng() -> None: - """Ensure poisson_variable_generator returns the dummy RNGs poisson_value.""" + """`poisson_variable_generator` returns the dummy's ``poisson_value``.""" dummy = cast("np.random.Generator", DummyRNG(poisson_value=3)) assert poisson_variable_generator(mean=5.0, rng=dummy) == 3 def test_poisson_variable_generator_reproducible() -> None: - """Ensure two generators with the same seed produce the same Poisson sample.""" - rng1 = np.random.default_rng(12345) - rng2 = np.random.default_rng(12345) - v1 = poisson_variable_generator(mean=10.0, rng=rng1) - v2 = poisson_variable_generator(mean=10.0, rng=rng2) + """Two RNGs with the same seed produce identical Poisson draws.""" + rng1 = np.random.default_rng(42) + rng2 = np.random.default_rng(42) + v1 = poisson_variable_generator(7.0, rng1) + v2 = poisson_variable_generator(7.0, rng2) assert v1 == v2 -def test_truncated_gaussian_generator_truncates_negative() -> None: - """Ensure truncated_gaussian_generator clamps negative draws to zero.""" +def test_truncated_gaussian_generator_negative_clamped() -> None: + """Negative Normal draws are clamped to zero.""" dummy = cast("np.random.Generator", DummyRNG(normal_value=-2.7)) - result = truncated_gaussian_generator(mean=10.0, variance=5.0, rng=dummy) - assert result == 0 + assert truncated_gaussian_generator(10.0, 5.0, dummy) == 0.0 -def test_truncated_gaussian_generator_truncates_toward_zero() -> None: - """Ensure truncated_gaussian_generator rounds toward zero for positive draws.""" +def test_truncated_gaussian_generator_positive_passthrough() -> None: + """Positive Normal draws pass through unchanged.""" dummy = cast("np.random.Generator", DummyRNG(normal_value=3.9)) - result = truncated_gaussian_generator(mean=10.0, variance=5.0, rng=dummy) - assert isinstance(result, int) - assert result == 3 + val = truncated_gaussian_generator(10.0, 5.0, dummy) + assert isinstance(val, float) + assert val == 3.9 -def test_truncated_gaussian_generator_default_rng_non_negative_int() -> None: - """ - Ensure the default RNG produces - a non-negative integer from the truncated Gaussian. - """ +def test_truncated_gaussian_generator_default_rng_non_negative() -> None: + """Real RNG always yields a non-negative float after truncation.""" rng = np.random.default_rng(321) - val = truncated_gaussian_generator(mean=10.0, variance=2.0, rng=rng) - assert isinstance(val, int) - assert val >= 0 + assert truncated_gaussian_generator(10.0, 2.0, rng) >= 0.0 + + +def test_lognormal_variable_generator_reproducible() -> None: + """`lognormal_variable_generator` is reproducible with a fixed seed.""" + rng1 = np.random.default_rng(99) + rng2 = np.random.default_rng(99) + v1 = lognormal_variable_generator(1.0, 0.5, rng1) + v2 = lognormal_variable_generator(1.0, 0.5, rng2) + assert v1 == pytest.approx(v2) + + +def test_exponential_variable_generator_reproducible() -> None: + """`exponential_variable_generator` is reproducible with a fixed seed.""" + rng1 = np.random.default_rng(54_321) + rng2 = np.random.default_rng(54_321) + v1 = exponential_variable_generator(2.0, rng1) + v2 = exponential_variable_generator(2.0, rng2) + assert v1 == pytest.approx(v2) + + +# --------------------------------------------------------------------------- # +# Tests for `general_sampler` # +# --------------------------------------------------------------------------- # + + +def test_general_sampler_uniform_path() -> None: + """Uniform branch returns the dummy's preset value.""" + dummy = cast("np.random.Generator", DummyRNG(uniform_value=0.42)) + cfg = RVConfig(mean=1.0, distribution=Distribution.UNIFORM) + assert general_sampler(cfg, dummy) == 0.42 + + +def test_general_sampler_normal_path() -> None: + """Normal branch applies truncation logic (negative → 0).""" + dummy = cast("np.random.Generator", DummyRNG(normal_value=-1.2)) + cfg = RVConfig(mean=0.0, variance=1.0, distribution=Distribution.NORMAL) + assert general_sampler(cfg, dummy) == 0.0 + + +def test_general_sampler_poisson_path() -> None: + """Poisson branch returns the dummy's preset integer as *float*.""" + dummy = cast("np.random.Generator", DummyRNG(poisson_value=4)) + cfg = RVConfig(mean=5.0, variance=5.0, distribution=Distribution.POISSON) + result = general_sampler(cfg, dummy) + assert isinstance(result, float) + assert result == 4.0 + + +def test_general_sampler_lognormal_path() -> None: + """Log-normal branch produces a strictly positive float.""" + rng = np.random.default_rng(2_025) + cfg = RVConfig(mean=0.0, variance=0.5, distribution=Distribution.LOG_NORMAL) + assert general_sampler(cfg, rng) > 0.0 + + +def test_general_sampler_exponential_path() -> None: + """Exponential branch produces a strictly positive float.""" + rng = np.random.default_rng(7) + cfg = RVConfig(mean=1.5, variance=1.5, distribution=Distribution.EXPONENTIAL) + assert general_sampler(cfg, rng) > 0.0 diff --git a/tests/unit/simulation/test_requests_generator.py b/tests/unit/simulation/test_requests_generator.py deleted file mode 100644 index fe72f2e..0000000 --- a/tests/unit/simulation/test_requests_generator.py +++ /dev/null @@ -1,145 +0,0 @@ -"""Unit-tests for the requests generator and the SimPy runner. - -All common fixtures (`rng`, `rqs_input`, `sim_settings`, `payload_base`, …) -are defined once in *tests/conftest.py*. -This module focuses purely on behavioural checks. -""" - -from __future__ import annotations - -from types import GeneratorType -from typing import TYPE_CHECKING - -import pytest - -from app.core.simulation.requests_generator import requests_generator -from app.core.simulation.simulation_run import run_simulation - -if TYPE_CHECKING: # static-typing only - from collections.abc import Iterator - - from numpy.random import Generator - - from app.schemas.full_simulation_input import SimulationPayload - from app.schemas.requests_generator_input import RqsGeneratorInput - from app.schemas.simulation_output import SimulationOutput - from app.schemas.simulation_settings_input import SimulationSettings - - -# --------------------------------------------------------------------------- -# REQUESTS-GENERATOR - dispatcher tests -# --------------------------------------------------------------------------- - - -def test_default_requests_generator_uses_poisson_poisson_sampling( - rqs_input: RqsGeneratorInput, - sim_settings: SimulationSettings, - rng: Generator, -) -> None: - """Default distribution must map to *poisson_poisson_sampling*.""" - gen = requests_generator(rqs_input, sim_settings, rng=rng) - - assert isinstance(gen, GeneratorType) - assert gen.gi_code.co_name == "poisson_poisson_sampling" - - -@pytest.mark.parametrize( - ("dist", "expected_sampler"), - [ - ("poisson", "poisson_poisson_sampling"), - ("normal", "gaussian_poisson_sampling"), - ], -) -def test_requests_generator_dispatches_to_correct_sampler( - dist: str, - expected_sampler: str, - rqs_input: RqsGeneratorInput, - sim_settings: SimulationSettings, - rng: Generator, -) -> None: - """Dispatcher must select the sampler matching *dist*.""" - rqs_input.avg_active_users.distribution = dist # type: ignore[assignment] - gen = requests_generator(rqs_input, sim_settings, rng=rng) - - assert isinstance(gen, GeneratorType) - assert gen.gi_code.co_name == expected_sampler - - -# --------------------------------------------------------------------------- -# SIMULATION-RUNNER - horizon handling -# --------------------------------------------------------------------------- - - -def _patch_generator( - monkeypatch: pytest.MonkeyPatch, - gaps: list[float], -) -> None: - """Monkey-patch *requests_generator* with a deterministic gap sequence.""" - - def _fake( - data: RqsGeneratorInput, - config: SimulationSettings, # unused, keeps signature - *, - rng: Generator | None = None, - ) -> Iterator[float]: - yield from gaps - - monkeypatch.setattr( - "app.core.simulation.simulation_run.requests_generator", - _fake, - ) - - -def test_run_simulation_counts_events_up_to_horizon( - monkeypatch: pytest.MonkeyPatch, - payload_base: SimulationPayload, - rng: Generator, -) -> None: - """All events with cumulative time ≤ horizon must be counted.""" - _patch_generator(monkeypatch, gaps=[1.0, 2.0, 3.0, 4.0]) - - output: SimulationOutput = run_simulation(payload_base, rng=rng) - - assert output.total_requests["total_requests"] == 4 - assert output.metric_2 == str( - payload_base.rqs_input.avg_request_per_minute_per_user.mean, - ) - assert output.metric_n == str(payload_base.rqs_input.avg_active_users.mean) - - -def test_run_simulation_skips_event_at_exact_horizon( - monkeypatch: pytest.MonkeyPatch, - payload_base: SimulationPayload, - rng: Generator, -) -> None: - """An event scheduled exactly at *t == horizon* is ignored.""" - horizon = payload_base.sim_settings.total_simulation_time - _patch_generator(monkeypatch, gaps=[float(horizon)]) - - output: SimulationOutput = run_simulation(payload_base, rng=rng) - assert output.total_requests["total_requests"] == 0 - - -def test_run_simulation_excludes_event_beyond_horizon( - monkeypatch: pytest.MonkeyPatch, - payload_base: SimulationPayload, - rng: Generator, -) -> None: - """Events strictly after the horizon must not be counted.""" - horizon = payload_base.sim_settings.total_simulation_time - _patch_generator(monkeypatch, gaps=[float(horizon) + 0.1]) - - output: SimulationOutput = run_simulation(payload_base, rng=rng) - assert output.total_requests["total_requests"] == 0 - - -def test_run_simulation_zero_events_when_generator_empty( - monkeypatch: pytest.MonkeyPatch, - payload_base: SimulationPayload, - rng: Generator, -) -> None: - """No gaps => no requests counted.""" - _patch_generator(monkeypatch, gaps=[]) - - output: SimulationOutput = run_simulation(payload_base, rng=rng) - assert output.total_requests["total_requests"] == 0 diff --git a/tests/unit/test_state.py b/tests/unit/test_state.py new file mode 100644 index 0000000..4612f1b --- /dev/null +++ b/tests/unit/test_state.py @@ -0,0 +1,47 @@ +"""Unit-tests for :class:`RequestState`.""" +from __future__ import annotations + +from app.config.rqs_state import RequestState + +# --------------------------------------------------------------------------- # +# Helpers # +# --------------------------------------------------------------------------- # + + +def _state() -> RequestState: + """Return a fresh RequestState with id=42 and t0=0.0.""" + return RequestState(id=42, initial_time=0.0) + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # + + +def test_record_hop_appends_formatted_entry() -> None: + """Calling *record_hop* stores 'node@timestamp' with 3-dec precision.""" + st = _state() + st.record_hop("generator", now=1.23456) + assert st.history == ["generator@1.235"] # rounded to 3 decimals + + +def test_multiple_hops_preserve_order() -> None: + """History keeps insertion order for consecutive hops.""" + st = _state() + st.record_hop("A", 0.1) + st.record_hop("B", 0.2) + st.record_hop("C", 0.3) + assert st.history == ["A@0.100", "B@0.200", "C@0.300"] + + +def test_latency_none_until_finish_time_set() -> None: + """Latency is None if *finish_time* not assigned.""" + st = _state() + assert st.latency is None + + +def test_latency_returns_difference() -> None: + """Latency equals finish_time - initial_time once completed.""" + st = _state() + st.finish_time = 5.5 + assert st.latency == 5.5 # 5.5 - 0.0 From 13d31d67d9bcb9048f7b69a6d468458ec189eb93 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Thu, 24 Jul 2025 17:48:21 +0200 Subject: [PATCH 17/35] Features/client server runtime (#6) * defined client runtime + tests * initiated the server runtime plus correction of tghe structure * code refactor + test added for runtime + documentation * Update tests/conftest.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- README.md | 226 +++++++++---- .../input_structure_for_the_simulation.md | 320 ------------------ .../runtime_and_resources.md | 283 ++++++++++++++++ .../backend_documentation/simulation_input.md | 228 +++++++++++++ ...ORKFLOW_GUIDE.md => dev_workflow_guide.md} | 90 +++-- .../{FASTSIM_VISION.md => fastsim_vision.md} | 0 src/app/config/constants.py | 15 +- src/app/config/rqs_state.py | 50 --- src/app/core/helpers/requests_generator.py | 60 ---- .../helpers => metrics}/dictionary_metrics.py | 0 src/app/resources/__init__.py | 1 + src/app/resources/registry.py | 38 +++ src/app/resources/server_containers.py | 73 ++++ src/app/{core => }/runtime/__init__.py | 0 src/app/runtime/actors/client.py | 59 ++++ .../{core/runtime => runtime/actors}/edge.py | 19 +- .../actors}/rqs_generator.py | 18 +- src/app/runtime/actors/server.py | 136 ++++++++ src/app/runtime/rqs_state.py | 51 +++ .../common_helpers.py | 0 .../gaussian_poisson.py | 4 +- .../poisson_poisson.py | 4 +- src/app/schemas/full_simulation_input.py | 4 +- ...erator_input.py => rqs_generator_input.py} | 4 +- .../endpoint.py} | 0 .../full_system_topology.py} | 3 +- src/app/{core => }/simulation_run.py | 2 +- tests/conftest.py | 69 ++-- tests/unit/{ => db}/test_settings.py | 0 tests/unit/resources/test_registry.py | 60 ++++ .../unit/resources/test_server_containers.py | 19 ++ tests/unit/runtime/engine/test_client.py | 96 ++++++ tests/unit/runtime/engine/test_edge.py | 127 +++++++ .../test_rqs_generator.py} | 10 +- tests/unit/runtime/engine/test_server.py | 181 ++++++++++ tests/unit/runtime/test_edge | 136 -------- tests/unit/runtime/test_rqs_state.py | 66 ++++ .../test_gaussian_poisson.py | 7 +- .../test_poisson_poisson.py | 6 +- .../test_sampler_helper.py | 2 +- .../test_endpoint_input.py | 2 +- .../test_full_topology_input.py | 4 +- .../test_requests_generator_input.py | 21 +- tests/unit/test_state.py | 47 --- 44 files changed, 1750 insertions(+), 791 deletions(-) delete mode 100644 documentation/backend_documentation/input_structure_for_the_simulation.md create mode 100644 documentation/backend_documentation/runtime_and_resources.md create mode 100644 documentation/backend_documentation/simulation_input.md rename documentation/{DEV_WORKFLOW_GUIDE.md => dev_workflow_guide.md} (57%) rename documentation/{FASTSIM_VISION.md => fastsim_vision.md} (100%) delete mode 100644 src/app/config/rqs_state.py delete mode 100644 src/app/core/helpers/requests_generator.py rename src/app/{core/helpers => metrics}/dictionary_metrics.py (100%) create mode 100644 src/app/resources/__init__.py create mode 100644 src/app/resources/registry.py create mode 100644 src/app/resources/server_containers.py rename src/app/{core => }/runtime/__init__.py (100%) create mode 100644 src/app/runtime/actors/client.py rename src/app/{core/runtime => runtime/actors}/edge.py (78%) rename src/app/{core/runtime => runtime/actors}/rqs_generator.py (87%) create mode 100644 src/app/runtime/actors/server.py create mode 100644 src/app/runtime/rqs_state.py rename src/app/{core/event_samplers => samplers}/common_helpers.py (100%) rename src/app/{core/event_samplers => samplers}/gaussian_poisson.py (96%) rename src/app/{core/event_samplers => samplers}/poisson_poisson.py (95%) rename src/app/schemas/{requests_generator_input.py => rqs_generator_input.py} (93%) rename src/app/schemas/{system_topology_schema/endpoint_schema.py => system_topology/endpoint.py} (100%) rename src/app/schemas/{system_topology_schema/full_system_topology_schema.py => system_topology/full_system_topology.py} (99%) rename src/app/{core => }/simulation_run.py (97%) rename tests/unit/{ => db}/test_settings.py (100%) create mode 100644 tests/unit/resources/test_registry.py create mode 100644 tests/unit/resources/test_server_containers.py create mode 100644 tests/unit/runtime/engine/test_client.py create mode 100644 tests/unit/runtime/engine/test_edge.py rename tests/unit/runtime/{test_requests_generator.py => engine/test_rqs_generator.py} (93%) create mode 100644 tests/unit/runtime/engine/test_server.py delete mode 100644 tests/unit/runtime/test_edge create mode 100644 tests/unit/runtime/test_rqs_state.py rename tests/unit/{sampler => samplers}/test_gaussian_poisson.py (93%) rename tests/unit/{sampler => samplers}/test_poisson_poisson.py (95%) rename tests/unit/{sampler => samplers}/test_sampler_helper.py (99%) rename tests/unit/{input_sructure => schemas}/test_endpoint_input.py (98%) rename tests/unit/{input_sructure => schemas}/test_full_topology_input.py (97%) rename tests/unit/{input_sructure => schemas}/test_requests_generator_input.py (95%) delete mode 100644 tests/unit/test_state.py diff --git a/README.md b/README.md index 8180e20..a9448e5 100644 --- a/README.md +++ b/README.md @@ -1,86 +1,176 @@ -## How to Start the Backend with Docker (Development) +Certamente. Ecco il contenuto del `README.md` visualizzato direttamente qui. -To spin up the backend and its supporting services in development mode: - -1. **Install & run Docker** on your machine. -2. **Clone** the repository and `cd` into its root. -3. Execute: - - ```bash - bash ./scripts/init-docker-dev.sh - ``` - - This will launch: - - * A **PostgreSQL** container - * A **Backend** container that mounts your local `src/` folder with live-reload - ---- - -## Development Architecture & Philosophy - -We split responsibilities between Docker-managed services and local workflows: +----- + +# **FastSim Project Overview** + +## **1. Why FastSim?** + +FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guesswork, costly cloud load-tests, or late surprises. **FastSim** fills that gap by becoming a **digital twin** of your actual service: + + * It **replicates** your FastAPI + Uvicorn event-loop behavior in SimPy, generating the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. + * It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, and even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. + * It **outputs** the very metrics you would scrape in production (p50/p95/p99 latency, ready-queue lag, concurrency, throughput, cost per LLM call), but entirely offline, in seconds. + +With FastSim you can ask, *“What happens if traffic doubles on Black Friday?”*, *“How many cores are needed to keep p95 latency below 100 ms?”*, or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. + +**Outcome:** Data-driven capacity planning, early performance tuning, and far fewer surprises in production. + +## **2. Project Goals** + +| \# | Goal | Practical Outcome | +| :--- | :--- | :--- | +| 1 | **Pre-production sizing** | Know the required core count, pool size, and replica count to meet your SLA. | +| 2 | **Scenario analysis** | Explore various traffic models, endpoint mixes, latency distributions, and RTT. | +| 3 | **Twin metrics** | Produce the same metrics you’ll scrape in production (latency, queue length, CPU utilization). | +| 4 | **Rapid iteration** | A single YAML/JSON configuration or REST call generates a full performance report. | +| 5 | **Educational value** | Visualize how GIL contention, queue length, and concurrency react to load. | + +## **3. Who Benefits & Why** + +| Audience | Pain-Point Solved | FastSim Value | +| :--- | :--- | :--- | +| **Backend Engineers** | Unsure if a 4-vCPU container can survive a marketing traffic spike. | Run *what-if* scenarios, tweak CPU cores or pool sizes, and get p95 latency and max-concurrency metrics before merging code. | +| **DevOps / SRE** | Guesswork in capacity planning; high cost of over-provisioning. | Simulate 1 to N replicas, autoscaler thresholds, and database pool sizes to find the most cost-effective configuration that meets the SLA. | +| **ML / LLM Product Teams** | LLM inference cost and latency are difficult to predict. | Model the LLM step with a price and latency distribution to estimate cost-per-request and the benefits of GPU batching without needing real GPUs. | +| **Educators / Trainers** | Students struggle to visualize event-loop internals. | Visualize GIL ready-queue lag, CPU vs. I/O steps, and the effect of blocking code—perfect for live demos and labs. | +| **Consultants / Architects** | Need a quick proof-of-concept for new client designs. | Define endpoints in YAML and demonstrate throughput and latency under projected load in minutes. | +| **Open-Source Community** | Lacks a lightweight Python simulator for ASGI workloads. | An extensible codebase makes it easy to plug in new resources (e.g., rate-limiters, caches) or traffic models (e.g., spike, uniform ramp). | +| **System-Design Interviewees** | Hard to quantify trade-offs in whiteboard interviews. | Prototype real-time metrics—queue lengths, concurrency, latency distributions—to demonstrate how your design scales and where bottlenecks lie. | + +## **4. About This Documentation** + +This project contains extensive documentation covering its vision, architecture, and technical implementation. The documents are designed to be read in sequence to build a comprehensive understanding of the project. + +### **How to Read This Documentation** + +For the best understanding of FastSim, we recommend reading the documentation in the following order: + +1. **README.md (This Document)**: Start here for a high-level overview of the project's purpose, goals, target audience, and development workflow. It provides the essential context for all other documents. +2. **dev_worflow_guide**: This document details the github workflow for the development +3. **simulation_input**: This document details the technical contract for configuring a simulation. It explains the `SimulationPayload` and its components (`rqs_input`, `topology_graph`, `sim_settings`). This is essential reading for anyone who will be creating or modifying simulation configurations. +4. **runtime_and_resources**: A deep dive into the simulation's internal engine. It explains how the validated input is transformed into live SimPy processes (Actors, Resources, State). This is intended for advanced users or contributors who want to understand *how* the simulation works under the hood. +5. **requests_generator**: This document covers the mathematical and algorithmic details behind the traffic generation model. It is for those interested in the statistical foundations of the simulator. +6. **Simulation Metrics**: A comprehensive guide to all output metrics. It explains what each metric measures, how it's collected, and why it's important for performance analysis. + +Optional **fastsim_vision**: a more detailed document about the project vision + +you can find the documentation at the root of the project in the folder `documentation/` + +## **5. Development Workflow & Architecture Guide** + +This section outlines the standardized development workflow, repository architecture, and branching strategy for the FastSim backend. + +### **Technology Stack** + + * **Backend**: FastAPI + * **Backend Package Manager**: Poetry + * **Frontend**: React + JavaScript + * **Database**: PostgreSQL + * **Caching**: Redis + * **Containerization**: Docker + +### **Backend Service (`FastSim-backend`)** + +The repository hosts the entire FastAPI backend, which exposes the REST API, runs the discrete-event simulation, communicates with the database, and provides metrics. + +``` +fastsim-backend/ +├── Dockerfile +├── docker_fs/ +│ ├── docker-compose.dev.yml +│ └── docker-compose.prod.yml +├── scripts/ +│ ├── init-docker-dev.sh +│ └── quality-check.sh +├── alembic/ +│ ├── env.py +│ └── versions/ +├── documentation/ +│ └── backend_documentation/ +├── tests/ +│ ├── unit/ +│ └── integration/ +├── src/ +│ └── app/ +│ ├── api/ +│ ├── config/ +│ ├── db/ +│ ├── metrics/ +│ ├── resources/ +│ ├── runtime/ +│ │ ├── rqs_state.py +│ │ └── actors/ +│ ├── samplers/ +│ ├── schemas/ +│ ├── main.py +│ └── simulation_run.py +├── poetry.lock +├── pyproject.toml +└── README.md +``` + +### **How to Start the Backend with Docker (Development)** -### 🐳 Docker-Compose Dev - -* **Containers** host external services (PostgreSQL) and run the FastAPI app. -* Your **local `src/` directory** is mounted into the backend container for hot-reload. -* **No tests, migrations, linting, or type checks** run inside these containers during development. - -**Why?** - -* **Fater feedback** on code changes -* **Full IDE support** (debugging, autocomplete, refactoring) -* **Speed**—no rebuilding images on every change - ---- - -### Local Quality & Testing Workflow - -All code quality tools, migrations, and tests execute on your host machine: - -| Task | Command | Notes | -| --------------------- | ---------------------------------------- | ------------------------------------------------- | -| **Lint & format** | `poetry run ruff check src tests` | Style and best-practice validations | -| **Type checking** | `poetry run mypy src tests` | Static type enforcement | -| **Unit tests** | `poetry run pytest -m "not integration"` | Fast, isolated tests—no DB required | -| **Integration tests** | `poetry run pytest -m integration` | Real-DB tests against Docker’s PostgreSQL | -| **DB migrations** | `poetry run alembic upgrade head` | Applies migrations to your local Docker-hosted DB | +To spin up the backend and its supporting services in development mode: -> **Rationale:** -> Running tests or Alembic migrations inside Docker images would force you to mount the full source tree, install dev dependencies in each build, and copy over configs—**slowing down** your feedback loop and **limiting** IDE features. +1. **Install & run Docker** on your machine. +2. **Clone** the repository and `cd` into its root. +3. Execute: + ```bash + bash ./scripts/init-docker-dev.sh + ``` + This will launch a **PostgreSQL** container and a **Backend** container that mounts your local `src/` folder with live-reload enabled. ---- +### **Development Architecture & Philosophy** -## CI/CD with GitHub Actions +We split responsibilities between Docker-managed services and local workflows. -We maintain two jobs on the `develop` branch: + * **Docker-Compose for Development**: Containers host external services (PostgreSQL) and run the FastAPI app. Your local `src/` directory is mounted into the backend container for hot-reloading. No tests, migrations, or linting run inside these containers during development. + * **Local Quality & Testing Workflow**: All code quality tools, migrations, and tests are executed on your host machine for faster feedback and full IDE support. -### 🔍 Quick (on Pull Requests) +| Task | Command | Notes | +| :--- | :--- | :--- | +| **Lint & format** | `poetry run ruff check src tests` | Style and best-practice validations | +| **Type checking** | `poetry run mypy src tests` | Static type enforcement | +| **Unit tests** | `poetry run pytest -m "not integration"` | Fast, isolated tests—no DB required | +| **Integration tests** | `poetry run pytest -m integration` | Real-DB tests against Docker’s PostgreSQL | +| **DB migrations** | `poetry run alembic upgrade head` | Applies migrations to your local Docker-hosted DB | -* Ruff & MyPy -* Unit tests only -* **No database** +**Rationale**: Running tests or Alembic migrations inside Docker images would slow down your feedback loop and limit IDE features by requiring you to mount the full source tree and install dev dependencies in each build. -### 🛠️ Full (on pushes to `develop`) +## **6. CI/CD with GitHub Actions** -* All **Quick** checks -* Start a **PostgreSQL** service container -* Run **Alembic** migrations -* Execute **unit + integration** tests -* Build the **Docker** image -* **Smoke-test** the `/health` endpoint +We maintain two jobs on the `develop` branch to ensure code quality and stability. -> **Guarantee:** Every commit in `develop` is style-checked, type-safe, DB-tested, and Docker-ready. +### **Quick (on Pull Requests)** ---- + * Ruff & MyPy checks + * Unit tests only + * **No database required** -## Summary +### **Full (on pushes to `develop`)** -1. **Docker-Compose** for services & hot-reload of the app code -2. **Local** execution of migrations, tests, and QA for speed and IDE integration -3. **CI pipeline** split into quick PR checks and full develop-branch validation + * All checks from the "Quick" suite + * Starts a **PostgreSQL** service container + * Runs **Alembic** migrations + * Executes the **full test suite** (unit + integration) + * Builds the **Docker** image + * **Smoke-tests** the `/health` endpoint of the built container +**Guarantee**: Every commit in `develop` is style-checked, type-safe, database-tested, and Docker-ready. +## **7. Limitations – v0.1 (First Public Release)** +1. **Network Delay Model** + * Only pure transport latency is simulated. + * Bandwidth-related effects (e.g., payload size, link speed, congestion) are NOT accounted for. +2. **Concurrency Model** + * The service exposes **async-only endpoints**. + * Execution runs on a single `asyncio` event-loop thread. + * No thread-pool workers or multi-process setups are supported yet; therefore, concurrency is limited to coroutine scheduling (cooperative, single-thread). +3. **CPU Core Allocation** + * Every server instance is pinned to **one physical CPU core**. + * Horizontal scaling must be achieved via multiple containers/VMs, not via multi-core utilization inside a single process. +These constraints will be revisited in future milestones once kernel-level context-switching costs, I/O bandwidth modeling, and multi-process orchestration are integrated. \ No newline at end of file diff --git a/documentation/backend_documentation/input_structure_for_the_simulation.md b/documentation/backend_documentation/input_structure_for_the_simulation.md deleted file mode 100644 index d28b090..0000000 --- a/documentation/backend_documentation/input_structure_for_the_simulation.md +++ /dev/null @@ -1,320 +0,0 @@ -### **FastSim — Simulation Input Schema** - -The `SimulationPayload` is the single, self-contained contract that defines an entire simulation run. Its architecture is guided by a core philosophy: to achieve maximum control over input data through robust, upfront validation. To implement this, we extensively leverage Pydantic's powerful validation capabilities and Python's `Enum` classes. This approach creates a strictly-typed and self-consistent schema that guarantees any configuration is validated *before* the simulation engine starts. - -This contract brings together three distinct but interconnected layers of configuration into one cohesive structure: - -1. **`rqs_input` (`RqsGeneratorInput`)**: Defines the **workload profile**—how many users are active and how frequently they generate requests. -2. **`topology_graph` (`TopologyGraph`)**: Describes the **system's architecture**—its components, resources, and the network connections between them. -3. **`sim_settings` (`SimulationSettings`)**: Configures **global simulation parameters**, such as total runtime and which metrics to collect. - -This layered design decouples the *what* (the system topology) from the *how* (the traffic pattern and simulation control), allowing for modular and reusable configurations. Adherence to our validation-first philosophy means every payload is rigorously parsed against this schema. By using a controlled vocabulary of `Enums` and the power of Pydantic, we guarantee that any malformed or logically inconsistent input is rejected upfront with clear, actionable errors, ensuring the simulation engine operates only on perfectly valid data. - ---- - -### **1. Component: Traffic Profile (`RqsGeneratorInput`)** - -This component specifies the dynamic behavior of users interacting with the system. It is built upon a foundation of shared constants and a reusable, rigorously validated random variable schema. This design ensures that any traffic profile is not only structurally correct but also logically sound before the simulation begins. - -#### **Global Constants** - -These enums provide a single source of truth for validation and default values, eliminating "magic strings" and ensuring consistency. - -| Constant Set | Purpose | Key Values | -| :--- | :--- | :--- | -| **`TimeDefaults`** (`IntEnum`) | Defines default values and validation bounds for time-based fields. | `USER_SAMPLING_WINDOW = 60`, `MIN_USER_SAMPLING_WINDOW = 1`, `MAX_USER_SAMPLING_WINDOW = 120` | -| **`Distribution`** (`StrEnum`) | Defines the canonical names of supported probability distributions. | `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"` | - ---- - -#### **Random Variable Schema (`RVConfig`)** - -At the core of the traffic generator is the `RVConfig`, a schema for defining stochastic variables. This allows critical parameters like user population and request rates to be modeled not as fixed numbers, but as draws from a probability distribution. Pydantic validators are used extensively to enforce correctness. - -```python -class RVConfig(BaseModel): - """class to configure random variables""" - mean: float - distribution: Distribution = Distribution.POISSON - variance: float | None = None - - @field_validator("mean", mode="before") - def ensure_mean_is_numeric(cls, v: object) -> float: - # ... implementation ... - - @model_validator(mode="after") - def default_variance(cls, model: "RVConfig") -> "RVConfig": - # ... implementation ... -``` - -##### **Built-in Validation Logic** - -Pydantic's validation system is leveraged to enforce several layers of correctness directly within the schema: - -| Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **Numeric `mean` Enforcement** | `@field_validator("mean", mode="before")` | This validator intercepts the `mean` field *before* any type casting. It ensures the provided value is an `int` or `float`, raising an explicit `ValueError` for invalid types like strings (`"100"`) or nulls. This prevents common configuration errors and guarantees a valid numeric type for all downstream logic. | -| **Valid `distribution` Name** | `Distribution` (`StrEnum`) type hint | By type-hinting the `distribution` field with the `Distribution` enum, Pydantic automatically ensures that its value must be one of the predefined members (e.g., `"poisson"`, `"normal"`). Any typo or unsupported value (like `"Poisson"` with a capital 'P') results in an immediate validation error. | -| **Intelligent `variance` Defaulting** | `@model_validator(mode="after")` | This powerful validator runs *after* all individual fields have been validated. It enforces a crucial business rule: if `distribution` is `"normal"` **and** `variance` is not provided, the schema automatically sets `variance = mean`. This provides a safe, logical default and simplifies configuration for the user, while ensuring the model is always self-consistent. | - ---- - -#### **Payload Structure (`RqsGeneratorInput`)** - -This is the main payload for configuring the traffic workload. It composes the `RVConfig` schema and adds its own validation rules. - -| Field | Type | Validation & Purpose | -| :--- | :--- | :--- | -| `avg_active_users` | `RVConfig` | A random variable defining concurrent users. **Inherits all `RVConfig` validation**, ensuring its `mean`, `distribution`, and `variance` are valid. | -| `avg_request_per_minute_per_user` | `RVConfig` | A random variable for the user request rate. Also **inherits all `RVConfig` validation**. | -| `user_sampling_window` | `int` | The time duration (in seconds) for which the number of active users is held constant. Its value is **strictly bounded** by Pydantic's `Field` to be between `MIN_USER_SAMPLING_WINDOW` (1) and `MAX_USER_SAMPLING_WINDOW` (120). | - -##### **How the Generator Uses Each Field** - -The simulation evolves based on this robustly validated input: - -1. The timeline is divided into windows of `user_sampling_window` seconds. Because this value is range-checked upfront by Pydantic, the simulation is protected from invalid configurations like zero-length or excessively long windows. -2. At the start of each window, a number of active users, `U(t)`, is drawn from the `avg_active_users` distribution. The embedded `RVConfig` guarantees this distribution is well-defined. -3. Each of the `U(t)` users generates requests according to a rate drawn from `avg_request_per_minute_per_user`. - -Because every numeric input is type-checked and range-checked by Pydantic before the simulation begins, **the runtime engine never needs to defend itself** against invalid data. This makes the core simulation loop leaner, more predictable, and free from redundant error-handling logic. - -### **2. Component: System Blueprint (`TopologyGraph`)** - -The topology schema is the static blueprint of the digital twin you wish to simulate. It describes the system's components, their resources, their behavior, and how they are interconnected. To ensure simulation integrity, FastSim uses this schema to rigorously validate the entire system description upfront, rejecting any inconsistencies before the simulation begins. - -Of course. Here is the complete, consolidated, and highly detailed documentation for the `TopologyGraph` component, with all duplications removed and explanations expanded as requested. - ---- - -### **2. Component: System Blueprint (`TopologyGraph`)** - -The topology schema is the static blueprint of the digital twin you wish to simulate. It describes the system's components, their resources, their behavior, and how they are interconnected. To ensure simulation integrity, FastSim uses this schema to rigorously validate the entire system description upfront, rejecting any inconsistencies before the simulation begins. - -#### **Design Philosophy: A "Micro-to-Macro" Approach** - -The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). - -This layered approach provides several key advantages that enhance the convenience and reliability of crafting simulations: - -* **Modularity and Reusability:** Core operations are defined once as `Steps` and can be reused across multiple `Endpoints`. This modularity simplifies configuration, as complex workflows can be built from a library of simple, well-defined blocks. -* **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). This allows you to focus on one part of the configuration at a time, confident that the overall structure will be validated globally. -* **Clarity and Maintainability:** The hierarchy is intuitive and mirrors how developers conceptualize system architecture. It is clear how atomic operations roll up into endpoints, which are hosted on servers connected by a network. This makes configuration files easy to read, write, and maintain over time. -* **Guaranteed Robustness:** By catching all structural and referential errors before the simulation begins, this approach embodies the "fail-fast" principle. It guarantees that the SimPy engine operates on a valid, self-consistent model, eliminating a whole class of potential runtime bugs. - -#### **A Controlled Vocabulary: Topology Constants** - -The schema's robustness is founded on a controlled vocabulary defined by Python `Enum` classes. Instead of error-prone "magic strings" (e.g., `"cpu_operation"`), the schema uses these enums to define the finite set of legal values for categories like operation kinds, metrics, and node types. This design choice is critical for several reasons: - -* **Absolute Type-Safety:** Pydantic can validate input with certainty. Any value not explicitly defined in the corresponding `Enum` is immediately rejected, preventing subtle typos or incorrect values from causing difficult-to-debug runtime failures. -* **Enhanced Developer Experience:** IDEs and static analysis tools like `mypy` can provide auto-completion and catch invalid values during development, offering immediate feedback long before the simulation is run. -* **Single Source of Truth:** All valid categories are centralized. To add a new resource type or metric, a developer only needs to update the `Enum` definition, and the change propagates consistently throughout the validation logic. - -| Constant Enum | Purpose | -| :--- | :--- | -| **`EndpointStepIO`, `EndpointStepCPU`, `EndpointStepRAM`** | Defines the exhaustive list of valid `kind` values for a `Step`. | -| **`Metrics`** | Specifies the legal dictionary keys within a `Step`'s `step_metrics`. | -| **`SystemNodes`** | Enumerate the allowed `type` for nodes (e.g., `"server"`, `"client"`). | -| **`SystemEdges`** | Enumerate the allowed categories for connections between nodes. | - ---- - -### **Schema Hierarchy and In-Depth Validation** - -Here we break down each component of the topology, highlighting the specific Pydantic validators that enforce its correctness and the deep rationale behind these choices. - -#### **1. `Step`**: The Atomic Unit of Work -A `Step` represents a single, indivisible operation. Its validation is the cornerstone of ensuring that all work performed in the simulation is logical and well-defined. - -| Validation Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **Coherence of `kind` and `metric`** | `@model_validator` | **Rule:** The `step_metrics` dictionary must contain *exactly one* entry, and its key must be the correct metric for the `Step`'s `kind`.

**Rationale:** This is the most critical validation on a `Step`. The one-to-one mapping is a deliberate design choice for simplicity and robustness. It allows the simulation engine to be deterministic: a `cpu_bound_operation` step is routed to the CPU resource, an `io_wait` step to an I/O event, etc. This avoids the immense complexity of modeling operations that simultaneously contend for multiple resource types (e.g., CPU and RAM). This validator enforces that clear, unambiguous contract, preventing illogical pairings like a RAM allocation step being measured in `cpu_time`. | -| **Positive Metric Values** | `PositiveFloat` / `PositiveInt` | **Rule:** All numeric values in `step_metrics` must be greater than zero.

**Rationale:** It is physically impossible to spend negative or zero time on an operation or allocate negative RAM. This validation uses Pydantic's constrained types to offload this fundamental sanity check, ensuring that only plausible, positive resource requests enter the system and keeping the core simulation logic free of defensive checks against nonsensical data. | - -#### **2. `Endpoint`**: Composing Workflows -An `Endpoint` defines a complete, user-facing operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. - -| Validation Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **Consistent Naming** | `@field_validator("endpoint_name")` | **Rule:** Automatically converts the `endpoint_name` to lowercase.

**Rationale:** This enforces a canonical representation for all endpoint identifiers. It eliminates ambiguity and potential bugs that could arise from inconsistent capitalization (e.g., treating `/predict` and `/Predict` as different endpoints). This simple normalization makes the configuration more robust and simplifies endpoint lookups within the simulation engine. | - -#### **3. System Nodes**: `Server` & `Client` -These models define the macro-components of your architecture where work is performed and resources are located. - -| Validation Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **Standardized Node `type`** | `@field_validator("type")` | **Rule:** The `type` field must strictly match the expected `SystemNodes` enum member (e.g., a `Server` object must have `type: "server"`).

**Rationale:** This provides a "belt-and-suspenders" check. Even if a default is provided, this validation prevents a user from explicitly overriding a node's type to a conflicting value. It enforces a strict contract: a `Server` object is always and only a server. This prevents object state confusion and simplifies pattern matching in the simulation engine. | -| **Unique Node IDs** | `@model_validator` in `TopologyNodes` | **Rule:** All `id` fields across all `Server` nodes and the `Client` node must be unique.

**Rationale:** This is fundamental to creating a valid graph. Node IDs are the primary keys used to address components. If two nodes shared the same ID, any `Edge` pointing to that ID would be ambiguous. This global validator prevents such ambiguity, guaranteeing that every node in the system is uniquely identifiable, which is a precondition for the final referential integrity check. | - -#### **4. `Edge`**: Connecting the Components -An `Edge` represents a directed network link between two nodes, defining how requests flow through the system. - -| Validation Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **No Self-Loops** | `@model_validator` | **Rule:** An edge's `source` ID cannot be the same as its `target` ID.

**Rationale:** In the context of a distributed system topology, a network call from a service to itself is a logical anti-pattern. Such an operation would typically be modeled as an internal process (i.e., another `Step`), not a network hop. This validator prevents this common configuration error and simplifies the routing logic by disallowing trivial cycles. | - -#### **5. `TopologyGraph`**: The Complete System -This is the root model that aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. - -| Validation Check | Pydantic Hook | Rule & Rationale | -| :--- | :--- | :--- | -| **Referential Integrity** | `@model_validator` | **Rule:** Every `edge.source` and `edge.target` ID must correspond to an actual node ID defined in `TopologyNodes`.

**Rationale:** This is the capstone validation that guarantees the structural integrity of the entire system graph. It prevents "dangling edges"—connections that point to non-existent nodes. Without this check, the simulation could start with a broken topology and crash unexpectedly at runtime when a request attempts to traverse a broken link. By performing this check *after* all nodes and edges have been parsed, we ensure that the system described is a complete and validly connected graph, fully embodying the "fail-fast" principle. | - -### **3. Component: Global Simulation Control (`SimulationSettings`)** - -This final component configures the simulation's execution parameters and, critically, determines what data is collected. It acts as the master control panel for the simulation run, governing both its duration and the scope of its output. - -#### **Payload Structure (`SimulationSettings`)** - -```python -class SimulationSettings(BaseModel): - """Global parameters that apply to the whole run.""" - total_simulation_time: int = Field(...) - enabled_sample_metrics: set[SampledMetricName] = Field( - default_factory=lambda: { - SampledMetricName.READY_QUEUE_LEN, - SampledMetricName.CORE_BUSY, - SampledMetricName.RAM_IN_USE, - }, - description="Which time‑series KPIs to collect by default.", - ) - enabled_event_metrics: set[EventMetricName] = Field( - default_factory=lambda: { - EventMetricName.RQS_LATENCY, - }, - description="Which per‑event KPIs to collect by default.", - ) -``` - -| Field | Type | Purpose & Validation | -| :--- | :--- | :--- | -| `total_simulation_time` | `int` | The total simulation horizon in seconds. Must be `>= MIN_SIMULATION_TIME` (1800s). Defaults to `3600`. | -| `enabled_sample_metrics` | `set[SampledMetricName]` | A set of metrics to be sampled at fixed intervals, creating a time-series (e.g., `"ready_queue_len"`, `"ram_in_use"`). | -| `enabled_event_metrics` | `set[EventMetricName]` | A set of metrics recorded only when specific events occur, with no time-series (e.g., `"rqs_latency"`, `"llm_cost"`). | - -We add standard default value for the metrics in case they will be omitted ---- - -#### **Design Rationale: Pre-validated, On-Demand Metrics for Robust and Efficient Collection** - -The design of the `settings` component, particularly the `enabled_*_metrics` fields, is centered on two core principles: **user-driven selectivity** and **ironclad validation**. The rationale behind this approach is to create a system that is both flexible and fundamentally reliable. - -##### **1. The Principle of User-Driven Selectivity** - -We recognize that data collection is not free; it incurs performance overhead in terms of both memory (to store the data) and CPU cycles (to record it). Not every simulation requires every possible metric. For instance: -* A simulation focused on CPU contention may not need detailed LLM cost tracking. -* A high-level analysis of end-to-end latency might not require fine-grained data on event loop queue lengths. - -By allowing the user to explicitly select only the metrics they need, we empower them to tailor the simulation to their specific analytical goals. This on-demand approach makes the simulator more efficient and versatile, avoiding the waste of collecting and processing irrelevant data. - -##### **2. The Power of Ironclad, Upfront Validation** - -This is where the design choice becomes critical for robustness. Simply allowing users to provide a list of strings is inherently risky due to potential typos or misunderstandings of metric names. Our schema mitigates this risk entirely through a strict, upfront validation contract. - -* **A Strict Contract via Enums:** The `enabled_sample_metrics` and `enabled_event_metrics` fields are not just sets of strings; they are sets of `SampledMetricName` and `EventMetricName` enum members. When Pydantic parses the input payload, it validates every single metric name provided by the user against these canonical `Enum` definitions. - -* **Immediate Rejection of Invalid Input:** If a user provides a metric name that is not a valid member of the corresponding enum (e.g., a typo like `"request_latncy"` or a misunderstanding like `"cpu_usage"` instead of `"core_busy"`), Pydantic immediately rejects the entire payload with a clear `ValidationError`. This happens *before* a single line of the simulation engine code is executed. - -##### **3. The Benefit: Guaranteed Runtime Integrity** - -This pre-validation provides a crucial and powerful guarantee to the simulation engine, leading to a safer and more efficient runtime: - -* **Safe, Error-Free Initialization:** At the very beginning of the simulation, the engine receives the *validated* set of metric names. It knows with absolute certainty the complete and exact set of metrics it needs to track. This allows it to safely initialize all necessary data collection structures (like dictionaries) at the start of the run. For example: - ```python - # This is safe because every key is guaranteed to be valid. - event_results = {metric_name: [] for metric_name in settings.enabled_event_metrics} - ``` - -* **Elimination of Runtime KeyErrors:** Because all dictionary keys are guaranteed to exist from the start, the core data collection logic within the simulation's tight event loop becomes incredibly lean and robust. The engine never needs to perform defensive, conditional checks like `if metric_name in event_results: ...`. It can directly and safely access the key: `event_results[metric_name].append(value)`. This completely eliminates an entire class of potential `KeyError` exceptions, which are notoriously difficult to debug in complex, asynchronous simulations. - -In summary, the design of `SimulationSettings` is a perfect example of the "fail-fast" philosophy. By forcing a clear and validated contract with the user upfront, we ensure that the data collection process is not only tailored and efficient but also fundamentally reliable. The engine operates with the confidence that the output data structures will perfectly and safely match the user's validated request, leading to a predictable and robust simulation from start to finish. ---- - -### **End-to-End Example (`SimulationPayload`)** - -The following JSON object shows how these three components combine into a single, complete `SimulationPayload` for a minimal client-server setup. - -```jsonc -{ - // Defines the traffic workload profile. - "rqs_input": { - "avg_active_users": { - "mean": 50, - "distribution": "poisson" - }, - "avg_request_per_minute_per_user": { - "mean": 5.0, - "distribution": "normal", - "variance": 1.0 - }, - "user_sampling_window": 60 - }, - // Describes the system's architectural blueprint. - "topology_graph": { - "nodes": { - "client": { - "id": "mobile_client", - "type": "client" - }, - "servers": [ - { - "id": "api_server", - "type": "server", - "server_resources": { - "cpu_cores": 4, - "ram_mb": 4096 - }, - "endpoints": [ - { - "endpoint_name": "/predict", - "steps": [ - { - "kind": "initial_parsing", - "step_metrics": { "cpu_time": 0.005 } - }, - { - "kind": "io_db", - "step_metrics": { "io_waiting_time": 0.050 } - } - ] - } - ] - } - ] - }, - "edges": [ - { - "source": "mobile_client", - "target": "api_server", - "latency": { - "distribution": "log_normal", - "mean": 0.04, - "variance": 0.01 - } - } - ] - }, - // Configures the simulation run and metric collection. - "settings": { - "total_simulation_time": 3600, - "enabled_sample_metrics": [ - "ready_queue_len", - "ram_in_use", - "throughput_rps" - ], - "enabled_event_metrics": [ - "rqs_latency" - ] - } -} -``` - -### **Key Takeaways** - -* **Single Source of Truth**: `Enum` classes centralize all valid string literals, providing robust, type-safe validation across the entire schema. -* **Layered Validation**: The `Constants → Component Schemas → SimulationPayload` hierarchy ensures that only well-formed and self-consistent configurations reach the simulation engine. -* **Separation of Concerns**: The three top-level keys (`rqs_input`, `topology_graph`, `settings`) clearly separate the workload, the system architecture, and simulation control, making configurations easier to read, write, and reuse. - - - - diff --git a/documentation/backend_documentation/runtime_and_resources.md b/documentation/backend_documentation/runtime_and_resources.md new file mode 100644 index 0000000..6c84bd2 --- /dev/null +++ b/documentation/backend_documentation/runtime_and_resources.md @@ -0,0 +1,283 @@ +Of course. This is an excellent request. A deep dive into the "why" and the real-world analogies is what makes documentation truly valuable. + +Here is the comprehensive, detailed documentation for the FastSim Runtime Layer, written in English, incorporating all your requests. + +----- + +# **FastSim — The Runtime Layer Documentation** + +*(Version July 2025 – Aligned with `app/runtime` and `app/resources`)* + +## **1. The Runtime Philosophy: From Blueprint to Living System** + +If the `SimulationPayload` is the static **blueprint** of a system, the `runtime` package is the **engine** that brings that blueprint to life. It translates a validated, declarative configuration into a dynamic, interacting set of processes within a SimPy simulation environment. The entire design is guided by a few core principles to ensure robustness, testability, and a faithful reflection of real-world systems. + +### **The Actor Model & Process Management** + +Distributed systems are, by nature, composed of independent components that communicate with each other concurrently. To model this, we've adopted an **Actor Model**. Each major component of the architecture (`Generator`, `Server`, `Client`) is implemented as an "Actor"—a self-contained object with its own internal state and behavior that communicates with other actors by sending and receiving messages (`RequestState` objects). + +SimPy's process management is a perfect fit for this model. It uses **cooperative multitasking** within a single-threaded event loop. An actor "runs" until it `yield`s control to the SimPy environment, typically to wait for a duration (`timeout`), a resource (`Container.get`), or an event (`Store.get`). This elegantly mimics modern, non-blocking I/O frameworks (like Python's `asyncio`, Node.js, or Go's goroutines) where a process performs work until it hits an I/O-bound operation, at which point it yields control, allowing the event loop to run other ready tasks. + +### **The "Validation-First" Contract** + +A crucial design decision is the strict separation between configuration and execution. The `runtime` layer operates under the assumption that the input `SimulationPayload` is **100% valid and logically consistent**. This "validation-first" contract means the runtime code is streamlined and free of defensive checks. It doesn't need to validate if a server ID exists or if a resource is defined; it can focus entirely on its core responsibility: accurately modeling the passage of time and contention for resources. + +----- + +## **2. High-Level Architecture & Data Flow** + +The simulation is a choreography of Actors passing a `RequestState` object between them. Communication and resource access are mediated exclusively by the SimPy environment, ensuring all interactions are captured on the simulation timeline. + +```text + .start() .transport(state) .start() +┌───────────┐ Starts ┌───────────┐ Forwards ┌───────────┐ Processes ┌───────────┐ +│ ├─────────►│ ├─────────────►│ ├────────────►│ │ +│ Generator │ │ Edge │ │ Server │ │ Client │ +│ ◄─────────┤ ◄─────────────┤ ◄────────────┤ │ +└───────────┘ └───────────┘ └───────────┘ └───────────┘ + ▲ Creates ▲ Delays RequestState ▲ Consumes ▲ Finishes + │ RequestState │ (Latency & Drops) │ Resources │ Request +``` + + * **Actors** (`runtime/actors/`): The active, stateful processes that perform work (`RqsGeneratorRuntime`, `ServerRuntime`, `ClientRuntime`, `EdgeRuntime`). + * **State Object** (`RequestState`): The message passed between actors. It acts as a digital passport, collecting stamps (`Hop` objects) at every stage of its journey. + * **Resource Registry** (`resources/`): A central authority that creates and allocates finite system resources (CPU cores, RAM) to the actors that need them. + +----- + +## **3. The Anatomy of a Request: State & History** + +At the heart of the simulation is the `RequestState` object, which represents a single user request flowing through the system. + +### **3.1. `Hop` – The Immutable Breadcrumb** + +A `Hop` is a `NamedTuple` that records a single, atomic event in a request's lifecycle: its arrival at a specific component at a specific time. Being an immutable `NamedTuple` makes it lightweight and safe to use in analysis. + +### **3.2. `RequestState` – The Digital Passport** + +```python +@dataclass +class RequestState: + id: int + initial_time: float + finish_time: float | None = None + history: list[Hop] = field(default_factory=list) +``` + +This mutable dataclass is the sole carrier of a request's identity and history. + + * `id`: A unique identifier for the request, assigned by the generator. + * `initial_time`: The simulation timestamp (`env.now`) when the request was created. + * `finish_time`: The timestamp when the request completes its lifecycle. It remains `None` until then. + * `history`: A chronologically ordered list of `Hop` objects, creating a complete, traceable path of the request's journey. + +#### **Real-World Analogy** + +Think of `RequestState` as a request context in a modern microservices architecture. The `id` is analogous to a **Trace ID** (like from OpenTelemetry or Jaeger). The `history` of `Hop` objects is the collection of **spans** associated with that trace, providing a detailed, end-to-end view of where the request spent its time, which is invaluable for performance analysis and debugging. + +----- + +## **4 The Resource Layer — Modelling Contention ⚙️** + +In real infrastructures every machine has a hard ceiling: only *N* CPU cores, only *M* MB of RAM. +FastSim mirrors that physical constraint through the **Resource layer**, which exposes pre-filled SimPy containers that actors must draw from. If a token is not available the coroutine simply blocks — giving you back-pressure “for free”. + +--- + +### **4.1 `ResourcesRuntime` — The Central Bank of Resources** + +| Responsibility | Implementation detail | +| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Discover capacity** | Walks the *validated* `TopologyGraph.nodes.servers`, reading `cpu_cores` and `ram_mb` from each `ServerResources` spec. | +| **Mint containers** | Calls `build_containers(env, spec)` which returns
`{"CPU": simpy.Container(init=cpu_cores), "RAM": simpy.Container(init=ram_mb)}` — the containers start **full** so a server can immediately consume tokens. | +| **Registry map** | Stores them in a private dict `_by_server: dict[str, ServerContainers]`. | +| **Public API** | `registry[server_id] → ServerContainers` (raises `KeyError` if the ID is unknown). | + +```python +registry = ResourcesRuntime(env, topology) +cpu_bucket = registry["srv-1"]["CPU"] # simpy.Container, level == capacity at t=0 +ram_bucket = registry["srv-1"]["RAM"] +``` + +Because the schema guarantees that every `server_id` is unique and every +server referenced in an edge actually exists, `ResourcesRuntime` never needs +defensive checks beyond the simple dictionary lookup. + +--- + +### **4.2 How Contention Emerges** + +* **CPU** – Each `yield CPU.get(1)` represents “claiming one core”. + When all tokens are gone the coroutine waits, modelling a thread-pool or worker saturation. +* **RAM** – `yield RAM.get(amount)` blocks until enough memory is free. + Large requests can starve, reproducing OOM throttling or JVM heap pressure. +* **Automatic fairness** – SimPy’s event loop resumes whichever coroutine became ready first, giving a natural first-come, first-served order. + +> **No bespoke semaphore or queueing code is required** — the SimPy +> containers *are* the semaphore. + +--- + +### **Real-World Analogy** + +| Runtime Component | Real Infrastructure Counterpart | +| -------------------- | --------------------------------------------------------------------------------------------------------- | +| `ResourcesRuntime` | A **cloud provider control plane** or **Kubernetes scheduler**: single source of truth for node capacity. | +| CPU container tokens | **Worker threads / processes** in Gunicorn, uWSGI, or an OS CPU-quota. | +| RAM container tokens | **cgroup memory limit** or a pod’s allocatable memory; once exhausted new workloads must wait. | + +Just like a Kubernetes scheduler won’t place a pod if a node lacks free CPU/RAM, +FastSim won’t let an actor proceed until it obtains the necessary tokens. + +## **5. The Actors: Bringing the System to Life** + +Actors are the core drivers of the simulation. Each represents a key component of the system architecture. They all expose a consistent `.start()` method, which registers their primary behavior as a process with the SimPy environment, allowing for clean and uniform orchestration. + +### **5.1. RqsGeneratorRuntime: The Source of Load** + +This actor's sole purpose is to create `RequestState` objects according to a specified stochastic model, initiating all traffic in the system. + +| Key Parameter (`__init__`) | Meaning | +| :--- | :--- | +| `env` | The SimPy simulation environment. | +| `out_edge` | The `EdgeRuntime` instance to which newly created requests are immediately sent. | +| `rqs_generator_data` | The validated Pydantic schema containing the statistical model for traffic (e.g., user count, request rate). | +| `rng` | A NumPy random number generator instance for deterministic, reproducible randomness. | + +**Core Logic (`.start()`):** +The generator's main process uses a statistical sampler (e.g., `poisson_poisson_sampling`) to yield a series of inter-arrival time gaps. It waits for each gap (`yield self.env.timeout(gap)`), then creates a new `RequestState`, records its first `Hop`, and immediately forwards it to the outbound edge via `out_edge.transport()`. + +**Real-World Analogy:** +The `RqsGeneratorRuntime` represents the collective behavior of your entire user base or the output of an upstream service. It's equivalent to a **load-testing tool** like **k6, Locust, or JMeter**, configured to simulate a specific traffic pattern (e.g., 500 users with an average of 30 requests per minute). + +----- + +### **5.2. EdgeRuntime: The Network Fabric 🚚** + +This actor models the connection *between* two nodes. It simulates the two most important factors of network transit: latency and unreliability. + +| Key Parameter (`__init__`) | Meaning | +| :--- | :--- | +| `env` | The SimPy simulation environment. | +| `edge_config` | The Pydantic `Edge` model containing this link's configuration (latency distribution, dropout rate). | +| `target_box` | A `simpy.Store` that acts as the "inbox" for the destination node. | +| `rng` | The random number generator for sampling latency and dropout. | + +**Core Logic (`.transport()`):** +Unlike other actors, `EdgeRuntime`'s primary method is `.transport(state)`. When called, it doesn't block the caller. Instead, it spawns a new, temporary SimPy process (`_deliver`) for that specific `RequestState`. This process: + +1. Checks for a **dropout** (packet loss) based on `dropout_rate`. If dropped, the request's `finish_time` is set, and its journey ends. +2. If not dropped, it samples a **latency** value from the configured probability distribution. +3. It `yield`s a `timeout` for the sampled latency, simulating network travel time. +4. After the wait, it records a successful `Hop` and places the `RequestState` into the `target_box` of the destination node. + +**Real-World Analogy:** +An `EdgeRuntime` is a direct analog for a **physical or virtual network link**. This could be the public **internet** between a user and your server, a **LAN connection** between two services in a data center, or a **VPC link** between two cloud resources. `latency` represents round-trip time (RTT), and `dropout_rate` models packet loss. + +----- + +### **5.3 `ServerRuntime` — The Workhorse 📦** + +`ServerRuntime` models an application server that owns finite CPU/RAM resources and executes a chain of steps for every incoming request. +With the 2025 refactor it now uses a **dispatcher / handler** pattern: the dispatcher sits in an infinite loop, and each request is handled in its own SimPy subprocess. This enables many concurrent in-flight requests while keeping the code easy to reason about. + +| `__init__` parameter | Meaning | +| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`env`** | The shared `simpy.Environment`. Every timeout and resource operation is scheduled here. | +| **`server_resources`** | A `ServerContainers` mapping (`{"CPU": Container, "RAM": Container}`) created by `ResourcesRuntime`. The containers are **pre-filled** (`level == capacity`) so the server can immediately pull tokens. | +| **`server_config`** | The validated Pydantic `Server` model: server-wide ID, resource spec, and a list of `Endpoint` objects (each endpoint is an ordered list of `Step`s). | +| **`out_edge`** | The `EdgeRuntime` (or stub) that receives the `RequestState` once processing finishes. | +| **`server_box`** | A `simpy.Store` acting as the server’s inbox. Up-stream actors drop `RequestState`s here. | +| **`rng`** | Instance of `numpy.random.Generator`; defaults to `default_rng()`. Used to pick a random endpoint. | + +--- + +#### **Public API** + +```python +def start(self) -> simpy.Process +``` + +Registers the **dispatcher** coroutine in the environment and returns the created `Process`. + +--- + +#### **Internal Workflow** + +```text +┌───────────┐ server_box.get() ┌──────────────┐ +│ dispatcher │ ────────────────────► │ handle_req N │ +└───────────┘ spawn new process └──────────────┘ + │ + ▼ + RAM get → CPU/IO steps → RAM put → out_edge.transport() +``` + +1. **Dispatcher loop** + + ```python + while True: + raw_state = yield self.server_box.get() # blocks until a request arrives + state = cast(RequestState, raw_state) + self.env.process(self._handle_request(state)) # fire-and-forget + ``` + + *Spawning a new process per request mimics worker thread concurrency.* + +2. **Handler coroutine (`_handle_request`)** + + | Stage | Implementation detail | + | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | + | **Record arrival** | `state.record_hop(SystemNodes.SERVER, self.server_config.id, env.now)` – leaves a breadcrumb for tracing. | + | **Endpoint selection** | Uniform random index `rng.integers(0, len(endpoints))`. (Hook point for custom routing later.) | + | **Reserve RAM (back-pressure)** | Compute `total_ram` (sum of all `StepOperation.NECESSARY_RAM`). `yield RAM.get(total_ram)`. If not enough RAM is free, the coroutine blocks, creating natural memory pressure. | + | **Execute steps in order** | | + | – CPU-bound step | `yield CPU.get(1)` → `yield env.timeout(cpu_time)` → `yield CPU.put(1)` – exactly one core is busy for the duration. | + | – I/O-bound step | `yield env.timeout(io_wait)` – no core is held, modelling non-blocking I/O. | + | **Release RAM** | `yield RAM.put(total_ram)`. | + | **Forward** | `out_edge.transport(state)` – hands the request to the next hop without waiting for network latency. | + +--- + +#### **Concurrency Guarantees** + +* **CPU contention** – because CPU is a token bucket (`simpy.Container`) the maximum number of concurrent CPU-bound steps equals `cpu_cores`. +* **RAM contention** – large requests can stall entirely until enough RAM frees up, accurately modelling out-of-memory throttling. +* **Non-blocking I/O** – while a handler waits on an I/O step it releases the core, allowing other handlers to run; this mirrors an async framework where the event loop can service other sockets. + +--- + +#### **Real-World Analogy** + +| Runtime concept | Real server analogue | +| ------------------------------------- | ------------------------------------------------------------------------------------------ | +| `server_box` | A web server’s accept queue. | +| `CPU.get(1)` | Obtaining one worker thread/process in Gunicorn, uWSGI, or a Node.js “JS thread”. | +| `env.timeout(io_wait)` without a core | An `await` on a database or HTTP call; the worker is idle while the OS handles the socket. | +| RAM token bucket | Process resident set or container memory limit; requests block when heap is exhausted. | + +Thus a **CPU-bound step** is a tight Python loop holding the GIL, while an **I/O-bound step** is `await cursor.execute(...)` that frees the event loop. + +--- + + +### **5.4. ClientRuntime: The Destination** + +This actor typically represents the end-user or system that initiated the request, serving as the final destination. + +| Key Parameter (`__init__`) | Meaning | +| :--- | :--- | +| `env` | The SimPy simulation environment. | +| `out_edge` | The `EdgeRuntime` to use if the client needs to forward the request (acting as a relay). | +| `client_box` | This client's "inbox". | +| `completed_box` | A global `simpy.Store` where all finished requests are placed for final collection and analysis. | + +**Core Logic (`.start()`):** +The client pulls requests from its `client_box`. It then makes a critical decision: + + * **If the request is new** (coming directly from the `RqsGeneratorRuntime`), it acts as a **relay**, immediately forwarding the request to its `out_edge`. + * **If the request is returning** (coming from a `ServerRuntime`), it acts as the **terminus**. It sets the request's `finish_time`, completing its lifecycle, and puts it into the global `completed_box`. + +**Design Note & Real-World Analogy:** +The current logic for this decision—`if state.history[-2].component_type != SystemNodes.GENERATOR`—is **fragile**. While it works, it's not robust. A future improvement would be to add a more explicit routing mechanism. +In the real world, the `ClientRuntime` could be a user's **web browser**, a **mobile application**, or even a **Backend-For-Frontend (BFF)** service that both initiates requests and receives the final aggregated responses. \ No newline at end of file diff --git a/documentation/backend_documentation/simulation_input.md b/documentation/backend_documentation/simulation_input.md new file mode 100644 index 0000000..aa27d58 --- /dev/null +++ b/documentation/backend_documentation/simulation_input.md @@ -0,0 +1,228 @@ +Of course. Here is the complete documentation, translated into English, based on the new Pydantic schemas. + +----- + +### **FastSim — Simulation Input Schema** + +The `SimulationPayload` is the single, self-contained contract that defines an entire simulation run. Its architecture is guided by a core philosophy: to achieve maximum control over input data through robust, upfront validation. To implement this, we extensively leverage Pydantic's powerful validation capabilities and Python's `Enum` classes. This approach creates a strictly-typed and self-consistent schema that guarantees any configuration is validated *before* the simulation engine starts. + +This contract brings together three distinct but interconnected layers of configuration into one cohesive structure: + +1. **`rqs_input` (`RqsGeneratorInput`)**: Defines the **workload profile**—how many users are active and how frequently they generate requests—and acts as the **source node** in our system graph. +2. **`topology_graph` (`TopologyGraph`)**: Describes the **system's architecture**—its components, resources, and the network connections between them, represented as a directed graph. +3. **`sim_settings` (`SimulationSettings`)**: Configures **global simulation parameters**, such as total runtime and which metrics to collect. + +This layered design decouples the *what* (the system topology) from the *how* (the traffic pattern and simulation control), allowing for modular and reusable configurations. Adherence to our validation-first philosophy means every payload is rigorously parsed against this schema. By using a controlled vocabulary of `Enums` and the power of Pydantic, we guarantee that any malformed or logically inconsistent input is rejected upfront with clear, actionable errors, ensuring the simulation engine operates only on perfectly valid data. + +----- + +## **1. The System Graph (`topology_graph` and `rqs_input`)** + +At the core of FastSim is the representation of the system as a **directed graph**. The **nodes** represent the architectural components (like servers, clients, and the traffic generator itself), while the **edges** represent the directed network connections between them. This graph-based approach allows for flexible and realistic modeling of request flows through distributed systems. + +### **Design Philosophy: A "Micro-to-Macro" Approach** + +The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). + +This layered approach provides several key advantages: + + * **Modularity and Reusability:** Core operations are defined once as `Steps` and can be reused across multiple `Endpoints`. + * **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). + * **Guaranteed Robustness:** By catching all structural and referential errors before the simulation begins, this approach embodies the "fail-fast" principle. It guarantees that the SimPy engine operates on a valid, self-consistent model. + +### **A Controlled Vocabulary: Topology Constants** + +The schema's robustness is founded on a controlled vocabulary defined by Python `Enum` classes. Instead of error-prone "magic strings," the schema uses these enums to define the finite set of legal values for categories like operation kinds, metrics, and node types. + +| Enum | Purpose | +| :------------------------- | :------------------------------------------------------------------------ | +| **`EndpointStepCPU`, `EndpointStepRAM`, `EndpointStepIO`** | Defines the exhaustive list of valid `kind` values for a `Step`. | +| **`StepOperation`** | Specifies the legal dictionary keys within a `Step`'s `step_operation`. | +| **`SystemNodes`** | Enumerate the allowed `type` for nodes (e.g., `"server"`, `"client"`, `"generator"`). | +| **`SystemEdges`** | Enumerate the allowed categories for connections between nodes. | + +----- + +### **Schema Hierarchy and In-Depth Validation** + +Here we break down each component of the topology, highlighting the specific Pydantic validators that enforce its correctness. + +#### **Random Variable Schema (`RVConfig`)** + +At the core of both the traffic generator and network latencies is `RVConfig`, a schema for defining stochastic variables. This allows critical parameters to be modeled not as fixed numbers, but as draws from a probability distribution. + +| Check | Pydantic Hook | Rule & Rationale | +| :---------------------------- | :---------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Numeric `mean` Enforcement** | `@field_validator("mean", mode="before")` | Intercepts the `mean` field and ensures the provided value is an `int` or `float`, rejecting invalid types. This guarantees a valid numeric type for all downstream logic. | +| **Valid `distribution` Name** | `Distribution` (`StrEnum`) type hint | Pydantic automatically ensures that the `distribution` field's value must be one of the predefined members (e.g., `"poisson"`, `"normal"`). Any typo or unsupported value results in an immediate validation error. | +| **Intelligent `variance` Defaulting** | `@model_validator(mode="after")` | Enforces a crucial business rule: if `distribution` is `"normal"` or `"log_normal"` **and** `variance` is not provided, the schema automatically sets `variance = mean`. This provides a safe, logical default. | + +#### **1. `Step`: The Atomic Unit of Work** + +A `Step` represents a single, indivisible operation. + +| Validation Check | Pydantic Hook | Rule & Rationale | +| :------------------------------- | :--------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Coherence of `kind` and `step_operation`** | `@model_validator` | **Rule:** The `step_operation` dictionary must contain *exactly one* entry, and its key (`StepOperation`) must be the correct metric for the `Step`'s `kind`. \\ **Rationale:** This is the most critical validation on a `Step`. It prevents illogical pairings like a RAM allocation step being measured in `cpu_time`. It ensures every step has a clear, unambiguous impact on a single system resource. | +| **Positive Metric Values** | `PositiveFloat` / `PositiveInt` | **Rule:** All numeric values in `step_operation` must be greater than zero. \\ **Rationale:** It is physically impossible to spend negative or zero time on an operation. This ensures that only plausible resource requests enter the system. | + +#### **2. `Endpoint`: Composing Workflows** + +An `Endpoint` defines a complete operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. + +| Validation Check | Pydantic Hook | Rule & Rationale | +| :-------------------- | :--------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Consistent Naming** | `@field_validator("endpoint_name")` | **Rule:** Automatically converts the `endpoint_name` to lowercase. \\ **Rationale:** This enforces a canonical representation, eliminating ambiguity from inconsistent capitalization (e.g., treating `/predict` and `/Predict` as the same). | + +#### **3. System Nodes: `Server`, `Client`, and `RqsGeneratorInput`** + +These models define the macro-components of your architecture where work is performed, resources are located, and requests originate. + +| Validation Check | Pydantic Hook | Rule & Rationale | +| :-------------------------------- | :---------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Standardized Node `type`** | `@field_validator("type")` | **Rule:** The `type` field must strictly match the expected `SystemNodes` enum member (e.g., a `Server` object must have `type: "server"`). \\ **Rationale:** This enforces a strict contract: a `Server` object is always and only a server, preventing object state confusion. | +| **Unique Node IDs** | `@model_validator` in `TopologyNodes` | **Rule:** All `id` fields across all `Server` nodes, the `Client` node, and the `RqsGeneratorInput` node must be unique. \\ **Rationale:** This is fundamental to creating a valid graph. Node IDs are the primary keys. If two nodes shared the same ID, any `Edge` pointing to that ID would be ambiguous. | +| **Workload Distribution Constraints** | `@field_validator` in `RqsGeneratorInput` | **Rule:** The `avg_request_per_minute_per_user` field must use a Poisson distribution. The `avg_active_users` field must use a Poisson or Normal distribution. \\ **Rationale:** This is a current restriction of the simulation engine, which has a joint sampler optimized only for these combinations. This validator ensures that only supported configurations are accepted. | + +#### **4. `Edge`: Connecting the Components** + +An `Edge` represents a directed network link between two nodes. + +| Validation Check | Pydantic Hook | Rule & Rationale | +| :---------------- | :----------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **No Self-Loops** | `@model_validator` | **Rule:** An edge's `source` ID cannot be the same as its `target` ID. \\ **Rationale:** A network call from a service to itself is a logical anti-pattern in a system topology. Such an operation should be modeled as an internal process (i.e., another `Step`), not a network hop. | +| **Unique Edge IDs** | `@model_validator` in `TopologyGraph` | **Rule:** All `id` fields of the `Edge`s must be unique. \\ **Rationale:** Ensures that every network connection is uniquely identifiable, which is useful for logging and debugging. | + +#### **5. `TopologyGraph`: The Complete System** + +This is the root model that aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. + +| Validation Check | Pydantic Hook | Rule & Rationale | +| :---------------------- | :----------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Referential Integrity** | `@model_validator` | **Rule:** Every `edge.source` and `edge.target` ID must correspond to an actual node ID defined in the topology. \\ **Rationale:** This is the capstone validation that guarantees the structural integrity of the entire system graph. It prevents "dangling edges"—connections that point to non-existent nodes—ensuring the described system is a complete and validly connected graph. | + +----- + +## **2. Global Simulation Control (`SimulationSettings`)** + +This final component configures the simulation's execution parameters and, critically, determines what data is collected. + +#### **Payload Structure (`SimulationSettings`)** + +| Field | Type | Purpose & Validation | +| :----------------------- | :------------------------- | :------------------------------------------------------------------------------------------------------ | +| `total_simulation_time` | `int` | The total simulation horizon in seconds. Must be `>=` a defined minimum (e.g., 1800s). | +| `enabled_sample_metrics` | `set[SampledMetricName]` | A set of metrics to be sampled at fixed intervals, creating a time-series (e.g., `"ready_queue_len"`, `"ram_in_use"`). | +| `enabled_event_metrics` | `set[EventMetricName]` | A set of metrics recorded only when specific events occur (e.g., `"rqs_latency"`). | + +### **Design Rationale: Pre-validated, On-Demand Metrics** + +The design of the `settings`, particularly the `enabled_*_metrics` fields, is centered on **user-driven selectivity** and **ironclad validation**. + +1. **Selectivity:** Data collection has a performance cost. By allowing the user to explicitly select only the metrics they need, we make the simulator more efficient and versatile. + +2. **Ironclad Validation:** Simply allowing users to provide a list of strings is risky. Our schema mitigates this risk by validating every metric name provided by the user against the canonical `Enum` definitions (`SampledMetricName`, `EventMetricName`). If a user provides a misspelled or invalid metric name (e.g., `"request_latncy"`), Pydantic immediately rejects the entire payload *before* the simulation engine runs. + +This guarantees that the simulation engine can safely initialize all necessary data collection structures at the start of the run, completely eliminating an entire class of potential `KeyError` exceptions at runtime. + +----- + +## **End-to-End Example (`SimulationPayload`)** + +The following JSON object shows how these components combine into a single `SimulationPayload` for a minimal client-server setup, updated according to the new schema. + +```jsonc +{ + // Defines the workload profile as a generator node. + "rqs_input": { + "id": "mobile_user_generator", + "type": "generator", + "avg_active_users": { + "mean": 50, + "distribution": "poisson" + }, + "avg_request_per_minute_per_user": { + "mean": 5.0, + "distribution": "poisson" + }, + "user_sampling_window": 60 + }, + // Describes the system's architecture as a graph. + "topology_graph": { + "nodes": { + "client": { + "id": "entry_point_client", + "type": "client" + }, + "servers": [ + { + "id": "api_server", + "type": "server", + "server_resources": { + "cpu_cores": 4, + "ram_mb": 4096, + "db_connection_pool": 10 + }, + "endpoints": [ + { + "endpoint_name": "/predict", + "steps": [ + { + "kind": "initial_parsing", + "step_operation": { "cpu_time": 0.005 } + }, + { + "kind": "io_db_query", + "step_operation": { "io_waiting_time": 0.050 } + } + ] + } + ] + } + ] + }, + "edges": [ + { + "id": "client_to_generator", + "source": "entry_point_client", + "target": "mobile_user_generator", + "latency": { + "distribution": "log_normal", + "mean": 0.001, + "variance": 0.0001 + } + }, + { + "id": "generator_to_api", + "source": "mobile_user_generator", + "target": "api_server", + "latency": { + "distribution": "log_normal", + "mean": 0.04, + "variance": 0.01 + }, + "probability": 1.0, + "dropout_rate": 0.0 + } + ] + }, + // Configures the simulation run and metric collection. + "sim_settings": { + "total_simulation_time": 3600, + "enabled_sample_metrics": [ + "ready_queue_len", + "ram_in_use", + "core_busy" + ], + "enabled_event_metrics": [ + "rqs_latency" + ] + } +} +``` + +### **Key Takeaways** + + * **Single Source of Truth**: `Enum` classes centralize all valid string literals, providing robust, type-safe validation across the entire schema. + * **Layered Validation**: The `Constants → Component Schemas → SimulationPayload` hierarchy ensures that only well-formed and self-consistent configurations reach the simulation engine. + * **Separation of Concerns**: The three top-level keys (`rqs_input`, `topology_graph`, `sim_settings`) clearly separate the workload, the system architecture, and simulation control, making configurations easier to read, write, and reuse. \ No newline at end of file diff --git a/documentation/DEV_WORKFLOW_GUIDE.md b/documentation/dev_workflow_guide.md similarity index 57% rename from documentation/DEV_WORKFLOW_GUIDE.md rename to documentation/dev_workflow_guide.md index c08cea4..b06ef1c 100644 --- a/documentation/DEV_WORKFLOW_GUIDE.md +++ b/documentation/dev_workflow_guide.md @@ -13,47 +13,65 @@ The project is built upon the following core technologies: - **Caching**: Redis - **Containerization**: Docker -### 2.1. Backend Service (`FastSim-backend`) +### 2.1 Backend Service (`FastSim-backend`) -This repository contains all code related to the FastAPI backend service. Its primary responsibility is to handle business logic, interact with the database, and expose a RESTful API. +The repository hosts the entire FastAPI backend for FastSim. +Its job is to expose the REST API, run the discrete-event simulation, talk to the database, and provide metrics. -**Folder Structure:** ``` -project-backend/ -├── .github/ # CI workflows: tests, builds, and publishes the Docker image -│ └── workflows/ -│ └── main.yml -├── src/ -│ └── app/ # Main Python package -│ ├── api/ # API routers & endpoints -│ ├── db/ # Database session management & base models -│ ├── models/ # SQLAlchemy ORM models (database table definitions) -│ ├── schemas/ # Pydantic schemas for validation/serialization -│ ├── core/ # Business logic (services, utilities, etc.) -│ ├── config/ # settings.py & constants.py for configuration -│ └── main.py # FastAPI application entrypoint -├── Alembic/ # Database migrations managed with Alembic -│ ├── versions/ # Generated migration files -│ ├── env.py # Alembic environment setup -│ └── script.py.mako # Template for new migrations -├── tests/ # Unit and integration tests -├── alembic.ini # Alembic configuration file -├── py.ini # Python tool configurations (flake8, mypy, etc.) -├── .env.example # Template for environment variables -├── .gitignore # Files and paths ignored by Git -├── docker-compose.override.yml # Local overrides (e.g., hot-reload) -├── docker-compose.test.yml # Docker Compose setup for isolated testing -├── docker-compose.yml # Base Docker Compose configuration for development -├── Dockerfile # Instructions to build the production Docker image -├── poetry.lock # Locked dependency versions for Poetry -├── pyproject.toml # Poetry project configuration (including src layout) -└── README.md # Setup instructions and project overview - +fastsim-backend/ +├── Dockerfile +├── docker_fs/ # docker-compose for dev & prod +│ ├── docker-compose.dev.yml +│ └── docker-compose.prod.yml +├── scripts/ # helper bash scripts (lint, dev-startup, …) +│ ├── init-docker-dev.sh +│ └── quality-check.sh +├── alembic/ # DB migrations (versions/ contains revision files) +│ ├── env.py +│ └── versions/ +├── documentation/ # project vision & low-level docs +│ └── backend_documentation/ +│ └── … +├── tests/ # unit & integration tests +│ ├── unit/ +│ └── integration/ +├── src/ # **application code lives here** +│ └── app/ +│ ├── api/ # FastAPI routers & endpoint handlers +│ ├── config/ # Pydantic Settings + constants +│ ├── db/ # SQLAlchemy base, sessions, initial seed utilities +│ ├── metrics/ # helpers to compute/aggregate simulation KPIs +│ ├── resources/ # SimPy resource registry (CPU/RAM containers, etc.) +│ ├── runtime/ # simulation core +│ │ ├── rqs_state.py # RequestState & Hop +│ │ └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator +│ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) +│ ├── schemas/ # Pydantic input/output models +│ ├── main.py # FastAPI application factory / ASGI entry-point +│ └── simulation_run.py # CLI utility to run a sim outside of HTTP layer +├── poetry.lock +├── pyproject.toml +└── README.md ``` -**Key Responsibilities:** -* To be testable in isolation. -* To produce a versioned Docker image (`backend:`) as its main artifact. +#### What each top-level directory in `src/app` does + +| Directory | Purpose | +| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`api/`** | Defines the public HTTP surface. Each module holds a router with path operations and dependency wiring. | +| **`config/`** | Centralised configuration: `settings.py` (Pydantic `BaseSettings`) reads env vars; `constants.py` stores enums and global literals. | +| **`db/`** | Persistence layer. Contains the SQLAlchemy base class, the session factory, and a thin wrapper that seeds or resets the database (Alembic migration scripts live at project root). | +| **`metrics/`** | Post-processing helpers that turn raw simulation traces into aggregated KPIs (latency percentiles, cost per request, utilisation curves, …). | +| **`resources/`** | A tiny run-time registry mapping every simulated server to its SimPy `Container`s (CPU, RAM). Keeps resource management separate from actor logic. | +| **`runtime/`** | The heart of the simulator. `rqs_state.py` holds the mutable `RequestState`; sub-package **`actors/`** contains each SimPy process class (Generator, Edge, Server, Client). | +| **`samplers/`** | Probability-distribution utilities that generate inter-arrival and service-time samples—used by the actors during simulation. | +| **`schemas/`** | All Pydantic models for validation and (de)serialisation: request DTOs, topology definitions, simulation settings, outputs. | +| **`main.py`** | Creates and returns the FastAPI app; imported by Uvicorn/Gunicorn. | +| **`simulation_run.py`** | Convenience script to launch a simulation offline (e.g. inside tests or CLI). | + +Everything under `src/` is import-safe thanks to Poetry’s `packages = [{ include = "app" }]` entry in `pyproject.toml`. + ## 3. Branching Strategy: Git Flow diff --git a/documentation/FASTSIM_VISION.md b/documentation/fastsim_vision.md similarity index 100% rename from documentation/FASTSIM_VISION.md rename to documentation/fastsim_vision.md diff --git a/src/app/config/constants.py b/src/app/config/constants.py index c611697..8eeb01e 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -128,15 +128,11 @@ class StepOperation(StrEnum): """ Keys used inside the ``metrics`` dictionary of a *step*. - * ``NETWORK_LATENCY`` - Mean latency (seconds) incurred on a network edge - *outside* the service (used mainly for validation when steps model - short in-service hops). * ``CPU_TIME`` - Service time (seconds) during which the coroutine occupies the CPU / GIL. * ``NECESSARY_RAM`` - Peak memory (MB) required by the step. """ - NETWORK_LATENCY = "network_latency" CPU_TIME = "cpu_time" IO_WAITING_TIME = "io_waiting_time" NECESSARY_RAM = "necessary_ram" @@ -165,6 +161,7 @@ class NetworkParameters: DROPOUT_RATE = 0.01 MAX_DROPOUT_RATE = 1.0 + # ====================================================================== # CONSTANTS FOR THE MACRO-TOPOLOGY GRAPH # ====================================================================== @@ -235,3 +232,13 @@ class AggregatedMetricName(StrEnum): LATENCY_STATS = "latency_stats" LLM_STATS = "llm_stats" + +# ====================================================================== +# CONSTANTS FOR SERVER RUNTIME +# ====================================================================== + +class ServerResourceName(StrEnum): + """Keys for each server resource type, used when building the container map.""" + + CPU = "CPU" + RAM = "RAM" diff --git a/src/app/config/rqs_state.py b/src/app/config/rqs_state.py deleted file mode 100644 index dec9200..0000000 --- a/src/app/config/rqs_state.py +++ /dev/null @@ -1,50 +0,0 @@ -""" -defining a state in a one to one correspondence -with the requests generated that will go through -all the node necessary to accomplish the user request -""" - -from __future__ import annotations - -from dataclasses import dataclass, field - - -@dataclass -class RequestState: - """ - State object carried by each request through the simulation. - - Attributes: - id: Unique identifier of the request. - t0: Timestamp (simulated env.now) when the request was generated. - history: List of hop records, each noting a node/edge visit. - finish_time: Timestamp when the requests is satisfied - - """ - - id: int # Unique request identifier - initial_time: float # Generation timestamp (env.now) - finish_time: float | None = None # a requests might be dropped - history: list[str] = field(default_factory=list) # Trace of hops - - def record_hop(self, node_name: str, now: float) -> None: - """ - Append a record of visiting a node or edge. - - Args: - node_name: Name of the node or edge being recorded. - now: register the time of the operation - - """ - # Record hop as "NodeName@Timestamp" - self.history.append(f"{node_name}@{now:.3f}") - - @property - def latency(self) -> float | None: - """ - Return the total time in the system (finish_time - initial_time), - or None if the request hasn't completed yet. - """ - if self.finish_time is None: - return None - return self.finish_time - self.initial_time diff --git a/src/app/core/helpers/requests_generator.py b/src/app/core/helpers/requests_generator.py deleted file mode 100644 index 2d04bef..0000000 --- a/src/app/core/helpers/requests_generator.py +++ /dev/null @@ -1,60 +0,0 @@ -""" -SimPy process that generates user requests at stochastic intervals. - -This node samples inter-arrival times according to the configured -distribution (Gaussian-Poisson or Poisson-Poisson), constructs a -RequestState for each new request, records its origin hop, and -immediately pushes it into the next pipeline stage via an EdgeRuntime. -""" - -from __future__ import annotations - -from typing import TYPE_CHECKING - -from app.config.constants import Distribution -from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling -from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling - -if TYPE_CHECKING: - from collections.abc import Generator - - import numpy as np - - from app.schemas.requests_generator_input import RqsGeneratorInput - from app.schemas.simulation_settings_input import SimulationSettings - - -def requests_generator( - input_data: RqsGeneratorInput, - sim_settings: SimulationSettings, - *, - rng: np.random.Generator, -) -> Generator[float, None, None]: - """ - Return an iterator of inter-arrival gaps (seconds) according to the model - chosen in *input_data*. - - Notes - ----- - * If ``avg_active_users.distribution`` is ``"gaussian"`` or ``"normal"``, - the Gaussian-Poisson sampler is used. - * Otherwise the default Poisson-Poisson sampler is returned. - - """ - dist = input_data.avg_active_users.distribution.lower() - - if dist == Distribution.NORMAL: - #Gaussian-Poisson model - return gaussian_poisson_sampling( - input_data=input_data, - sim_settings=sim_settings, - rng=rng, - - ) - - # Poisson + Poisson - return poisson_poisson_sampling( - input_data=input_data, - sim_settings=sim_settings, - rng=rng, - ) diff --git a/src/app/core/helpers/dictionary_metrics.py b/src/app/metrics/dictionary_metrics.py similarity index 100% rename from src/app/core/helpers/dictionary_metrics.py rename to src/app/metrics/dictionary_metrics.py diff --git a/src/app/resources/__init__.py b/src/app/resources/__init__.py new file mode 100644 index 0000000..69884c1 --- /dev/null +++ b/src/app/resources/__init__.py @@ -0,0 +1 @@ +"""python package for resource registry""" diff --git a/src/app/resources/registry.py b/src/app/resources/registry.py new file mode 100644 index 0000000..c768cef --- /dev/null +++ b/src/app/resources/registry.py @@ -0,0 +1,38 @@ +""" +Runtime resource registry for server nodes. + +This module defines the ResourcesRuntime class, which takes a validated +TopologyGraph and a SimPy environment, then builds and stores a map +from each server's unique identifier to its SimPy resource containers. +Processes can later retrieve CPU and RAM containers by indexing this registry. +""" + +import simpy + +from app.resources.server_containers import ServerContainers, build_containers +from app.schemas.system_topology.full_system_topology import TopologyGraph + + +class ResourcesRuntime: + """definition of the class to associate resources to various nodes""" + + def __init__( + self, + env: simpy.Environment, + data: TopologyGraph, + + ) -> None: + """Initialization of the attributes""" + self.env = env + self.data = data + self._by_server: dict[str, ServerContainers] = { + server.id: build_containers(env, server.server_resources) + for server in data.nodes.servers + } + + def __getitem__(self, server_id: str) -> ServerContainers: + """ + Useful map to pass to each server the resources based + on the server unique id + """ + return self._by_server[server_id] diff --git a/src/app/resources/server_containers.py b/src/app/resources/server_containers.py new file mode 100644 index 0000000..dcbef1f --- /dev/null +++ b/src/app/resources/server_containers.py @@ -0,0 +1,73 @@ +""" +Definition of support structures for the simulation runtime. + +After Pydantic validation, this module provides TypedDicts and helpers +to build SimPy Containers for each server in the topology, improving +readability and ensuring a single point of truth for resource setup. +""" + + +from typing import TypedDict + +import simpy + +from app.config.constants import ServerResourceName +from app.schemas.system_topology.full_system_topology import ( + ServerResources, +) + +# ============================================================== +# DICT FOR THE REGISTRY TO INITIALIZE RESOURCES FOR EACH SERVER +# ============================================================== + + +class ServerContainers(TypedDict): + """ + Mapping of resource names to their SimPy Container instances for a server. + + - CPU: simpy.Container for CPU cores. + - RAM: simpy.Container for RAM in megabytes. + """ + + CPU: simpy.Container + RAM: simpy.Container + +# Central funcrion to initialize the dictionary with ram and cpu container +def build_containers( + env: simpy.Environment, + spec: ServerResources, + ) -> ServerContainers: + """ + Construct and return a mapping of SimPy Containers for a server's CPU and RAM. + + Given a SimPy environment and a validated ServerResources spec, this function + initializes one simpy.Container for CPU (with capacity equal to cpu_cores) + and one for RAM (with capacity equal to ram_mb), then returns them in a + ServerContainers TypedDict keyed by "CPU" and "RAM". + + Parameters + ---------- + env : simpy.Environment + The simulation environment in which the Containers will be created. + spec : ServerResources + A Pydantic model instance defining the server's cpu_cores and ram_mb. + + Returns + ------- + ServerContainers + A TypedDict with exactly two entries: + - "CPU": simpy.Container initialized with spec.cpu_cores + - "RAM": simpy.Container initialized with spec.ram_mb + + """ + return { + ServerResourceName.CPU.value: simpy.Container( + env, capacity=spec.cpu_cores, init=spec.cpu_cores, + ), + ServerResourceName.RAM.value: simpy.Container( + env, capacity=spec.ram_mb, init=spec.ram_mb, + ), + } + + + diff --git a/src/app/core/runtime/__init__.py b/src/app/runtime/__init__.py similarity index 100% rename from src/app/core/runtime/__init__.py rename to src/app/runtime/__init__.py diff --git a/src/app/runtime/actors/client.py b/src/app/runtime/actors/client.py new file mode 100644 index 0000000..207bd71 --- /dev/null +++ b/src/app/runtime/actors/client.py @@ -0,0 +1,59 @@ +"""defining the object client for the simulation""" + +from collections.abc import Generator +from typing import TYPE_CHECKING + +import simpy + +from app.config.constants import SystemNodes +from app.runtime.actors.edge import EdgeRuntime +from app.schemas.system_topology.full_system_topology import Client + +if TYPE_CHECKING: + from app.runtime.rqs_state import RequestState + + + +class ClientRuntime: + """class to define the client runtime""" + + def __init__( + self, + env: simpy.Environment, + out_edge: EdgeRuntime, + client_box: simpy.Store, + completed_box: simpy.Store, + client_config: Client, + ) -> None: + """Definition of attributes for the client""" + self.env = env + self.out_edge = out_edge + self.client_config = client_config + self.client_box = client_box + self.completed_box = completed_box + + + def _forwarder(self) -> Generator[simpy.Event, None, None]: + """Updtate the state before passing it to another node""" + while True: + state: RequestState = yield self.client_box.get() # type: ignore[assignment] + + state.record_hop( + SystemNodes.CLIENT, + self.client_config.id, + self.env.now, + ) + + # by checking the previous node (-2 the previous component is an edge) + # we are able to understand if the request should be elaborated + # when the type is Generator, or the request is completed, in this case + # the client is the target and the previous node type is not a rqs generator + if state.history[-2].component_type != SystemNodes.GENERATOR: + state.finish_time = self.env.now + yield self.completed_box.put(state) + else: + self.out_edge.transport(state) + + def start(self) -> simpy.Process: + """Initialization of the process""" + return self.env.process(self._forwarder()) diff --git a/src/app/core/runtime/edge.py b/src/app/runtime/actors/edge.py similarity index 78% rename from src/app/core/runtime/edge.py rename to src/app/runtime/actors/edge.py index 4f22608..afef720 100644 --- a/src/app/core/runtime/edge.py +++ b/src/app/runtime/actors/edge.py @@ -12,9 +12,10 @@ import numpy as np import simpy -from app.config.rqs_state import RequestState -from app.core.event_samplers.common_helpers import general_sampler -from app.schemas.system_topology_schema.full_system_topology_schema import Edge +from app.config.constants import SystemEdges +from app.runtime.rqs_state import RequestState +from app.samplers.common_helpers import general_sampler +from app.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: from app.schemas.random_variables_config import RVConfig @@ -46,12 +47,20 @@ def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: uniform_variable = self.rng.uniform() if uniform_variable < self.edge_config.dropout_rate: state.finish_time = self.env.now - state.record_hop(f"{self.edge_config.id}-dropped", state.finish_time) + state.record_hop( + SystemEdges.NETWORK_CONNECTION, + f"{self.edge_config.id}-dropped", + state.finish_time, + ) return transit_time = general_sampler(random_variable, self.rng) yield self.env.timeout(transit_time) - state.record_hop(self.edge_config.id, self.env.now) + state.record_hop( + SystemEdges.NETWORK_CONNECTION, + self.edge_config.id, + self.env.now, + ) yield self.target_box.put(state) diff --git a/src/app/core/runtime/rqs_generator.py b/src/app/runtime/actors/rqs_generator.py similarity index 87% rename from src/app/core/runtime/rqs_generator.py rename to src/app/runtime/actors/rqs_generator.py index 5611c85..bc114ba 100644 --- a/src/app/core/runtime/rqs_generator.py +++ b/src/app/runtime/actors/rqs_generator.py @@ -10,9 +10,9 @@ import numpy as np from app.config.constants import Distribution, SystemNodes -from app.config.rqs_state import RequestState -from app.core.event_samplers.gaussian_poisson import gaussian_poisson_sampling -from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling +from app.runtime.rqs_state import RequestState +from app.samplers.gaussian_poisson import gaussian_poisson_sampling +from app.samplers.poisson_poisson import poisson_poisson_sampling if TYPE_CHECKING: @@ -20,8 +20,8 @@ import simpy - from app.core.runtime.edge import EdgeRuntime - from app.schemas.requests_generator_input import RqsGeneratorInput + from app.runtime.actors.edge import EdgeRuntime + from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings @@ -106,12 +106,16 @@ def _event_arrival(self) -> Generator[simpy.Event, None, None]: initial_time=self.env.now, ) - state.record_hop(SystemNodes.GENERATOR, self.env.now) + state.record_hop( + SystemNodes.GENERATOR, + self.rqs_generator_data.id, + self.env.now, + ) # transport is a method of the edge runtime # which define the step of how the state is moving # from one node to another self.out_edge.transport(state) - def run(self) -> simpy.Process: + def start(self) -> simpy.Process: """Passing the structure as a simpy process""" return self.env.process(self._event_arrival()) diff --git a/src/app/runtime/actors/server.py b/src/app/runtime/actors/server.py new file mode 100644 index 0000000..0a0f772 --- /dev/null +++ b/src/app/runtime/actors/server.py @@ -0,0 +1,136 @@ +""" +definition of the class necessary to manage the server +during the simulation +""" + +from collections.abc import Generator +from typing import cast + +import numpy as np +import simpy + +from app.config.constants import ( + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + ServerResourceName, + StepOperation, + SystemNodes, +) +from app.resources.server_containers import ServerContainers +from app.runtime.actors.edge import EdgeRuntime +from app.runtime.rqs_state import RequestState +from app.schemas.system_topology.full_system_topology import Server + + +class ServerRuntime: + """class to define the server during the simulation""" + + def __init__( # noqa: PLR0913 + self, + env: simpy.Environment, + server_resources: ServerContainers, + server_config: Server, + out_edge: EdgeRuntime, + server_box: simpy.Store, + rng: np.random.Generator | None = None, + ) -> None: + """Server attributes + + Args: + env (simpy.Environment): _description_ + server_resources (ServerContainers): _description_ + server_config (Server): _description_ + out_edge (EdgeRuntime): _description_ + server_box (simpy.Store): _description_ + rng (np.random.Generator | None, optional): _description_. Defaults to None. + + """ + self.env = env + self.server_resources = server_resources + self.server_config = server_config + self.out_edge = out_edge + self.server_box = server_box + self.rng = rng or np.random.default_rng() + + + def _handle_request( + self, + state: RequestState, + ) -> Generator[simpy.Event, None, None]: + """ + Define all the step each request has to do ones reach + the server + """ + #register the history for the state: + state.record_hop( + SystemNodes.SERVER, + self.server_config.id, + self.env.now, + ) + + # Define the length of the endpoint list + endpoints_list = self.server_config.endpoints + endpoints_number = len(endpoints_list) + + # select the endpoint where the requests is directed at the moment we use + # a uniform distribution, in the future we will allow the user to define a + # custom distribution + selected_endpoint_idx = self.rng.integers(low=0, high=endpoints_number) + selected_endpoint = endpoints_list[selected_endpoint_idx] + + # RAM management: + # first calculate the ram needed + # Ask if it is available + # Release everything when the operation completed + + total_ram = sum( + step.step_operation[StepOperation.NECESSARY_RAM] + for step in selected_endpoint.steps + if isinstance(step.kind, EndpointStepRAM) + ) + + + if total_ram: + yield self.server_resources[ServerResourceName.RAM.value].get(total_ram) + + + # --- Step Execution: Process CPU and IO operations --- + for step in selected_endpoint.steps: + + if isinstance(step.kind, EndpointStepCPU): + cpu_time = step.step_operation[StepOperation.CPU_TIME] + + # Acquire one core + yield self.server_resources[ServerResourceName.CPU.value].get(1) + # Hold the core busy + yield self.env.timeout(cpu_time) + # Release the core + yield self.server_resources[ServerResourceName.CPU.value].put(1) + + elif isinstance(step.kind, EndpointStepIO): + io_time = step.step_operation[StepOperation.IO_WAITING_TIME] + yield self.env.timeout(io_time) # Wait without holding a CPU core + + # release the ram + if total_ram: + yield self.server_resources[ServerResourceName.RAM.value].put(total_ram) + + self.out_edge.transport(state) + + def _dispatcher(self) -> Generator[simpy.Event, None, None]: + """ + The main dispatcher loop. It pulls requests from the inbox and + spawns a new '_handle_request' process for each one. + """ + while True: + # Wait for a request to arrive in the server's inbox + raw_state = yield self.server_box.get() + request_state = cast("RequestState", raw_state) + # Spawn a new, independent process to handle this request + self.env.process(self._handle_request(request_state)) + + def start(self) -> simpy.Process: + """Generate the process to simulate the server inside simpy env""" + return self.env.process(self._dispatcher()) + diff --git a/src/app/runtime/rqs_state.py b/src/app/runtime/rqs_state.py new file mode 100644 index 0000000..1c953fd --- /dev/null +++ b/src/app/runtime/rqs_state.py @@ -0,0 +1,51 @@ +"""Data structures representing the life-cycle of a single request.""" + +from __future__ import annotations + +from dataclasses import dataclass, field +from typing import TYPE_CHECKING, NamedTuple + +if TYPE_CHECKING: + from app.config.constants import SystemEdges, SystemNodes + + +class Hop(NamedTuple): + """A single traversal of a node or edge.""" + + component_type: SystemNodes | SystemEdges + component_id: str + timestamp: float + + +@dataclass +class RequestState: + """Mutable state carried by each request throughout the simulation.""" + + id: int + initial_time: float + finish_time: float | None = None + history: list[Hop] = field(default_factory=list) + + # ------------------------------------------------------------------ # + # API # + # ------------------------------------------------------------------ # + + def record_hop( + self, + component_type: SystemNodes | SystemEdges, + component_id: str, + now: float, + ) -> None: + """Append a new hop in chronological order.""" + self.history.append(Hop(component_type, component_id, now)) + + # ------------------------------------------------------------------ # + # Derived metrics # + # ------------------------------------------------------------------ # + + @property + def latency(self) -> float | None: + """Total time inside the system or ``None`` if not yet completed.""" + if self.finish_time is None: + return None + return self.finish_time - self.initial_time diff --git a/src/app/core/event_samplers/common_helpers.py b/src/app/samplers/common_helpers.py similarity index 100% rename from src/app/core/event_samplers/common_helpers.py rename to src/app/samplers/common_helpers.py diff --git a/src/app/core/event_samplers/gaussian_poisson.py b/src/app/samplers/gaussian_poisson.py similarity index 96% rename from src/app/core/event_samplers/gaussian_poisson.py rename to src/app/samplers/gaussian_poisson.py index f9cc401..bb1f6fd 100644 --- a/src/app/core/event_samplers/gaussian_poisson.py +++ b/src/app/samplers/gaussian_poisson.py @@ -12,11 +12,11 @@ import numpy as np from app.config.constants import TimeDefaults -from app.core.event_samplers.common_helpers import ( +from app.samplers.common_helpers import ( truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings diff --git a/src/app/core/event_samplers/poisson_poisson.py b/src/app/samplers/poisson_poisson.py similarity index 95% rename from src/app/core/event_samplers/poisson_poisson.py rename to src/app/samplers/poisson_poisson.py index 1d4787f..7f17364 100644 --- a/src/app/core/event_samplers/poisson_poisson.py +++ b/src/app/samplers/poisson_poisson.py @@ -9,11 +9,11 @@ import numpy as np from app.config.constants import TimeDefaults -from app.core.event_samplers.common_helpers import ( +from app.samplers.common_helpers import ( poisson_variable_generator, uniform_variable_generator, ) -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings diff --git a/src/app/schemas/full_simulation_input.py b/src/app/schemas/full_simulation_input.py index b745fee..8be873a 100644 --- a/src/app/schemas/full_simulation_input.py +++ b/src/app/schemas/full_simulation_input.py @@ -2,9 +2,9 @@ from pydantic import BaseModel -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology_schema.full_system_topology_schema import TopologyGraph +from app.schemas.system_topology.full_system_topology import TopologyGraph class SimulationPayload(BaseModel): diff --git a/src/app/schemas/requests_generator_input.py b/src/app/schemas/rqs_generator_input.py similarity index 93% rename from src/app/schemas/requests_generator_input.py rename to src/app/schemas/rqs_generator_input.py index 35ff361..4f217e7 100644 --- a/src/app/schemas/requests_generator_input.py +++ b/src/app/schemas/rqs_generator_input.py @@ -3,13 +3,15 @@ from pydantic import BaseModel, Field, field_validator -from app.config.constants import Distribution, TimeDefaults +from app.config.constants import Distribution, SystemNodes, TimeDefaults from app.schemas.random_variables_config import RVConfig class RqsGeneratorInput(BaseModel): """Define the expected variables for the simulation""" + id: str + type: SystemNodes = SystemNodes.GENERATOR avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig diff --git a/src/app/schemas/system_topology_schema/endpoint_schema.py b/src/app/schemas/system_topology/endpoint.py similarity index 100% rename from src/app/schemas/system_topology_schema/endpoint_schema.py rename to src/app/schemas/system_topology/endpoint.py diff --git a/src/app/schemas/system_topology_schema/full_system_topology_schema.py b/src/app/schemas/system_topology/full_system_topology.py similarity index 99% rename from src/app/schemas/system_topology_schema/full_system_topology_schema.py rename to src/app/schemas/system_topology/full_system_topology.py index ddbac36..2f29f2a 100644 --- a/src/app/schemas/system_topology_schema/full_system_topology_schema.py +++ b/src/app/schemas/system_topology/full_system_topology.py @@ -24,7 +24,7 @@ SystemNodes, ) from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology_schema.endpoint_schema import Endpoint +from app.schemas.system_topology.endpoint import Endpoint #------------------------------------------------------------- # Definition of the nodes structure for the graph representing @@ -138,7 +138,6 @@ def unique_ids( model_config = ConfigDict(extra="forbid") - #------------------------------------------------------------- # Definition of the edges structure for the graph representing # the topoogy of the system defined for the simulation diff --git a/src/app/core/simulation_run.py b/src/app/simulation_run.py similarity index 97% rename from src/app/core/simulation_run.py rename to src/app/simulation_run.py index c6159ca..1176751 100644 --- a/src/app/core/simulation_run.py +++ b/src/app/simulation_run.py @@ -19,7 +19,7 @@ - +### TO MODIFY EVERYTHING WORK IN PROGRESS def run_simulation( input_data: SimulationPayload, diff --git a/tests/conftest.py b/tests/conftest.py index e6d7b75..7d0f587 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -30,9 +30,9 @@ from app.main import app from app.schemas.full_simulation_input import SimulationPayload from app.schemas.random_variables_config import RVConfig -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology_schema.full_system_topology_schema import ( +from app.schemas.system_topology.full_system_topology import ( Client, TopologyGraph, TopologyNodes, @@ -153,14 +153,14 @@ def rng() -> NpGenerator: return default_rng(0) -# --------------------------------------------------------------------------- -# Metrics sets -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# Metric sets # +# --------------------------------------------------------------------------- # @pytest.fixture(scope="session") def enabled_sample_metrics() -> set[SampledMetricName]: - """Default sample-level KPIs tracked in most tests.""" + """Default time-series KPIs collected in most tests.""" return { SampledMetricName.READY_QUEUE_LEN, SampledMetricName.RAM_IN_USE, @@ -169,13 +169,15 @@ def enabled_sample_metrics() -> set[SampledMetricName]: @pytest.fixture(scope="session") def enabled_event_metrics() -> set[EventMetricName]: - """Default event-level KPIs tracked in most tests.""" - return {EventMetricName.RQS_LATENCY} + """Default per-event KPIs collected in most tests.""" + return { + EventMetricName.RQS_LATENCY, + } -# --------------------------------------------------------------------------- -# Global simulation settings -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# Global simulation settings # +# --------------------------------------------------------------------------- # @pytest.fixture @@ -183,7 +185,12 @@ def sim_settings( enabled_sample_metrics: set[SampledMetricName], enabled_event_metrics: set[EventMetricName], ) -> SimulationSettings: - """A minimal `SimulationSettings` instance for unit tests.""" + """ + Minimal :class:`SimulationSettings` instance. + + The simulation horizon is fixed to the lowest allowed value so that unit + tests run quickly. + """ return SimulationSettings( total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, enabled_sample_metrics=enabled_sample_metrics, @@ -191,37 +198,46 @@ def sim_settings( ) -# --------------------------------------------------------------------------- -# Traffic profile -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# Traffic profile # +# --------------------------------------------------------------------------- # @pytest.fixture def rqs_input() -> RqsGeneratorInput: - """`RqsGeneratorInput` with 1 user and 2 req/min for quick tests.""" + """ + One active user issuing two requests per minute—sufficient to + exercise the entire request-generator pipeline with minimal overhead. + """ return RqsGeneratorInput( + id="rqs-1", avg_active_users=RVConfig(mean=1.0), avg_request_per_minute_per_user=RVConfig(mean=2.0), user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, ) -# --------------------------------------------------------------------------- -# Minimal topology (one client, no servers, no edges) -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# Minimal topology (one client, no servers, no edges) # +# --------------------------------------------------------------------------- # @pytest.fixture def topology_minimal() -> TopologyGraph: - """Valid topology with a single client and zero servers/edges.""" + """ + A valid topology containing a single client and **no** servers or edges. + + Suitable for low-level tests that do not need to traverse the server + layer or network graph. + """ client = Client(id="client-1") nodes = TopologyNodes(servers=[], client=client) return TopologyGraph(nodes=nodes, edges=[]) -# --------------------------------------------------------------------------- -# Full simulation payload -# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- # +# Complete simulation payload # +# --------------------------------------------------------------------------- # @pytest.fixture @@ -230,7 +246,12 @@ def payload_base( sim_settings: SimulationSettings, topology_minimal: TopologyGraph, ) -> SimulationPayload: - """End-to-end payload used by high-level simulation tests.""" + """ + End-to-end payload used by integration tests and FastAPI endpoint tests. + + It wires together the individual fixtures into the single object expected + by the simulation engine. + """ return SimulationPayload( rqs_input=rqs_input, topology_graph=topology_minimal, diff --git a/tests/unit/test_settings.py b/tests/unit/db/test_settings.py similarity index 100% rename from tests/unit/test_settings.py rename to tests/unit/db/test_settings.py diff --git a/tests/unit/resources/test_registry.py b/tests/unit/resources/test_registry.py new file mode 100644 index 0000000..fe5a693 --- /dev/null +++ b/tests/unit/resources/test_registry.py @@ -0,0 +1,60 @@ +"""Unit tests for ResourcesRuntime (resource registry).""" + +from __future__ import annotations + +import pytest +import simpy + +from app.config.constants import ServerResourceName +from app.resources.registry import ResourcesRuntime +from app.schemas.system_topology.endpoint import Endpoint +from app.schemas.system_topology.full_system_topology import ( + Client, + Server, + ServerResources, + TopologyGraph, + TopologyNodes, +) + + +def _minimal_server(server_id: str, cores: int, ram: int) -> Server: + """Create a Server with a dummy endpoint and resource spec.""" + res = ServerResources(cpu_cores=cores, ram_mb=ram) + dummy_ep = Endpoint(endpoint_name="/ping", steps=[]) + return Server(id=server_id, server_resources=res, endpoints=[dummy_ep]) + + +def _build_topology() -> TopologyGraph: + """Return a minimal but schema-valid topology with two servers.""" + servers = [ + _minimal_server("srv-A", 2, 1024), + _minimal_server("srv-B", 4, 2048), + ] + client = Client(id="clt-1") + nodes = TopologyNodes(servers=servers, client=client) + return TopologyGraph(nodes=nodes, edges=[]) + + +def test_registry_initialises_filled_containers() -> None: + """CPU and RAM containers must start full for every server.""" + env = simpy.Environment() + topo = _build_topology() + registry = ResourcesRuntime(env, topo) + + for srv in topo.nodes.servers: + containers = registry[srv.id] + + cpu = containers[ServerResourceName.CPU.value] + ram = containers[ServerResourceName.RAM.value] + + assert cpu.level == cpu.capacity == srv.server_resources.cpu_cores + assert ram.level == ram.capacity == srv.server_resources.ram_mb + + +def test_getitem_unknown_server_raises_keyerror() -> None: + """Accessing an undefined server ID should raise KeyError.""" + env = simpy.Environment() + registry = ResourcesRuntime(env, _build_topology()) + + with pytest.raises(KeyError): + _ = registry["non-existent-server"] diff --git a/tests/unit/resources/test_server_containers.py b/tests/unit/resources/test_server_containers.py new file mode 100644 index 0000000..c36f927 --- /dev/null +++ b/tests/unit/resources/test_server_containers.py @@ -0,0 +1,19 @@ +"""Unit test: build_containers must return full containers.""" + +import simpy + +from app.config.constants import ServerResourceName +from app.resources.server_containers import build_containers +from app.schemas.system_topology.full_system_topology import ServerResources + + +def test_containers_start_full() -> None: + env = simpy.Environment() + spec = ServerResources(cpu_cores=4, ram_mb=2048) + containers = build_containers(env, spec) + + cpu = containers[ServerResourceName.CPU.value] + ram = containers[ServerResourceName.RAM.value] + + assert cpu.level == cpu.capacity == 4 + assert ram.level == ram.capacity == 2048 diff --git a/tests/unit/runtime/engine/test_client.py b/tests/unit/runtime/engine/test_client.py new file mode 100644 index 0000000..bc17471 --- /dev/null +++ b/tests/unit/runtime/engine/test_client.py @@ -0,0 +1,96 @@ +"""Unit-tests for :class:`ClientRuntime` (outbound / inbound paths).""" + +from __future__ import annotations + +import simpy + +from app.config.constants import SystemEdges, SystemNodes +from app.runtime.actors.client import ClientRuntime +from app.runtime.rqs_state import RequestState +from app.schemas.system_topology.full_system_topology import ( + Client, +) + +# --------------------------------------------------------------------------- # +# Dummy edge (no real network) # +# --------------------------------------------------------------------------- # + + +class DummyEdgeRuntime: + """Collect states passed through *transport* without SimPy side-effects.""" + + def __init__(self, env: simpy.Environment) -> None: + """Init attributes""" + self.env = env + self.forwarded: list[RequestState] = [] + + # Signature compatible with EdgeRuntime.transport but returns *None* + def transport(self, state: RequestState) -> None: + """Transport state""" + self.forwarded.append(state) + + +# --------------------------------------------------------------------------- # +# Helper # +# --------------------------------------------------------------------------- # + + +def _setup( + env: simpy.Environment, +) -> tuple[simpy.Store, simpy.Store, DummyEdgeRuntime]: + inbox: simpy.Store = simpy.Store(env) + completed: simpy.Store = simpy.Store(env) + edge_rt = DummyEdgeRuntime(env) + cli_cfg = Client(id="cli-1") + + client = ClientRuntime( + env=env, + out_edge=edge_rt, # type: ignore[arg-type] + client_box=inbox, + completed_box=completed, + client_config=cli_cfg, + ) + client.start() # start the forwarder + return inbox, completed, edge_rt + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # + + +def test_outbound_is_forwarded() -> None: + """First visit ⇒ forwarded; completed store remains empty.""" + env = simpy.Environment() + inbox, completed, edge_rt = _setup(env) + + req = RequestState(id=1, initial_time=0.0) + req.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) + + inbox.put(req) + env.run() + + assert len(edge_rt.forwarded) == 1 + assert len(completed.items) == 0 + assert req.history[-1].component_type is SystemNodes.CLIENT + assert req.finish_time is None + + +def test_inbound_is_completed() -> None: + """Second visit ⇒ request stored in *completed_box* and not re-forwarded.""" + env = simpy.Environment() + inbox, completed, edge_rt = _setup(env) + + req = RequestState(id=2, initial_time=0.0) + req.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) + req.record_hop(SystemEdges.NETWORK_CONNECTION, "edge-X", env.now) + + inbox.put(req) + env.run() + + assert len(edge_rt.forwarded) == 0 + assert len(completed.items) == 1 + + done = completed.items[0] + assert done.finish_time is not None + assert done.history[-1].component_type is SystemNodes.CLIENT diff --git a/tests/unit/runtime/engine/test_edge.py b/tests/unit/runtime/engine/test_edge.py new file mode 100644 index 0000000..10cb758 --- /dev/null +++ b/tests/unit/runtime/engine/test_edge.py @@ -0,0 +1,127 @@ +"""Unit-tests for :class:`EdgeRuntime` (delivery / drop paths).""" +from __future__ import annotations + +from typing import TYPE_CHECKING, cast + +import simpy + +from app.config.constants import SystemEdges, SystemNodes +from app.runtime.actors.edge import EdgeRuntime +from app.runtime.rqs_state import RequestState +from app.schemas.random_variables_config import RVConfig +from app.schemas.system_topology.full_system_topology import Edge + +if TYPE_CHECKING: + + import numpy as np + +# --------------------------------------------------------------------------- # +# Dummy RNG # +# --------------------------------------------------------------------------- # + + +class DummyRNG: + """Return preset values for ``uniform`` and ``normal``.""" + + def __init__(self, *, uniform_value: float, normal_value: float = 0.0) -> None: + """Attribute init""" + self.uniform_value = uniform_value + self.normal_value = normal_value + self.uniform_called = False + self.normal_called = False + + + def uniform(self) -> float: + """Intercept ``rng.uniform`` calls.""" + self.uniform_called = True + return self.uniform_value + + def normal(self, _mean: float, _sigma: float) -> float: + """Intercept ``rng.normal`` calls.""" + self.normal_called = True + return self.normal_value + + +# --------------------------------------------------------------------------- # +# Helper to build an EdgeRuntime # +# --------------------------------------------------------------------------- # + + +def _make_edge( + env: simpy.Environment, + *, + uniform_value: float, + normal_value: float = 0.0, + dropout_rate: float = 0.0, +) -> tuple[EdgeRuntime, DummyRNG, simpy.Store]: + """Attributes init""" + rng = DummyRNG(uniform_value=uniform_value, normal_value=normal_value) + + store: simpy.Store = simpy.Store(env) + edge_cfg = Edge( + id="edge-1", + source="src", + target="dst", + latency=RVConfig(mean=0.0, variance=1.0, distribution="normal"), + dropout_rate=dropout_rate, + ) + + edge_rt = EdgeRuntime( + env=env, + edge_config=edge_cfg, + rng=cast("np.random.Generator", rng), + target_box=store, + ) + return edge_rt, rng, store + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # + + +def test_edge_delivers_message_when_not_dropped() -> None: + """A message traverses the edge and calls the latency sampler once.""" + env = simpy.Environment() + edge_rt, rng, store = _make_edge( + env, + uniform_value=0.9, + normal_value=0.5, + dropout_rate=0.2, + ) + + state = RequestState(id=1, initial_time=0.0) + state.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) + + edge_rt.transport(state) + env.run() + + assert len(store.items) == 1 + delivered: RequestState = store.items[0] + last = delivered.history[-1] + assert last.component_type is SystemEdges.NETWORK_CONNECTION + assert last.component_id == "edge-1" + assert rng.uniform_called is True + assert rng.normal_called is True + + +def test_edge_drops_message_when_uniform_below_threshold() -> None: + """A message is dropped when the random draw is below *dropout_rate*.""" + env = simpy.Environment() + edge_rt, rng, store = _make_edge( + env, + uniform_value=0.1, # < dropout → drop + dropout_rate=0.5, + ) + + state = RequestState(id=1, initial_time=0.0) + state.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) + + edge_rt.transport(state) + env.run() + + assert len(store.items) == 0 + last = state.history[-1] + assert last.component_id.endswith("dropped") + assert rng.uniform_called is True + assert rng.normal_called is False diff --git a/tests/unit/runtime/test_requests_generator.py b/tests/unit/runtime/engine/test_rqs_generator.py similarity index 93% rename from tests/unit/runtime/test_requests_generator.py rename to tests/unit/runtime/engine/test_rqs_generator.py index be03583..bc76f4d 100644 --- a/tests/unit/runtime/test_requests_generator.py +++ b/tests/unit/runtime/engine/test_rqs_generator.py @@ -8,16 +8,16 @@ import simpy from app.config.constants import Distribution -from app.core.runtime.rqs_generator import RqsGeneratorRuntime +from app.runtime.actors.rqs_generator import RqsGeneratorRuntime if TYPE_CHECKING: import pytest from numpy.random import Generator - from app.config.rqs_state import RequestState - from app.core.runtime.edge import EdgeRuntime - from app.schemas.requests_generator_input import RqsGeneratorInput + from app.runtime.actors.edge import EdgeRuntime + from app.runtime.rqs_state import RequestState + from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings import importlib @@ -63,7 +63,7 @@ def _make_runtime( # --------------------------------------------------------------------------- # -RGR_MODULE = importlib.import_module("app.core.runtime.rqs_generator") +RGR_MODULE = importlib.import_module("app.runtime.actors.rqs_generator") def test_dispatcher_selects_poisson_poisson( monkeypatch: pytest.MonkeyPatch, diff --git a/tests/unit/runtime/engine/test_server.py b/tests/unit/runtime/engine/test_server.py new file mode 100644 index 0000000..69292ba --- /dev/null +++ b/tests/unit/runtime/engine/test_server.py @@ -0,0 +1,181 @@ +"""Unit tests for the concurrent ServerRuntime. + +The tests create an isolated SimPy environment with a test fixture that sets up: +* A single ServerRuntime instance. +* A mock "instant" edge that immediately forwards requests to a sink. +* A server configuration with 2 CPU cores and 1024 MB of RAM. +* A single endpoint with a sequence of RAM, CPU, and I/O steps. + +This setup allows for precise testing of resource acquisition/release and +the correct execution of the processing pipeline for a single request. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import simpy +from numpy.random import default_rng + +from app.config.constants import ( + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + StepOperation, + SystemNodes, +) +from app.resources.server_containers import build_containers +from app.runtime.actors.server import ServerRuntime +from app.runtime.rqs_state import RequestState +from app.schemas.system_topology.endpoint import Endpoint, Step +from app.schemas.system_topology.full_system_topology import Server, ServerResources + +if TYPE_CHECKING: + from collections.abc import Generator + + +# --------------------------------------------------------------------------- # +# Test Helper: A mock edge that instantly delivers requests to a sink. # +# --------------------------------------------------------------------------- # +class InstantEdge: + """A test stub for EdgeRuntime with zero latency and no drops. + + This mock allows us to test the ServerRuntime in isolation, without + introducing the complexities of network simulation. + """ + + def __init__(self, env: simpy.Environment, sink: simpy.Store) -> None: + """Initializes the mock edge.""" + self.env = env + self.sink = sink + + def transport(self, state: RequestState) -> simpy.Process: + """Immediately puts the state in the sink via a SimPy process.""" + return self.env.process(self._deliver(state)) + + def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: + """The generator function that performs the delivery.""" + yield self.sink.put(state) + + +# --------------------------------------------------------------------------- # +# Test Fixture: Creates a standardized ServerRuntime for tests. # +# --------------------------------------------------------------------------- # +def _make_server_runtime( + env: simpy.Environment, +) -> tuple[ServerRuntime, simpy.Store]: + """Create a ServerRuntime with a dummy edge and return it and the sink store.""" + # 1. Define server resources + res_spec = ServerResources(cpu_cores=2, ram_mb=1024) + containers = build_containers(env, res_spec) + + # 2. Define a single endpoint with a sequence of steps + # Order: RAM (instant) -> CPU (5ms) -> I/O (20ms) + endpoint = Endpoint( + endpoint_name="/predict", + steps=[ + Step( + kind=EndpointStepRAM.RAM, + step_operation={StepOperation.NECESSARY_RAM: 128}, + ), + Step( + kind=EndpointStepCPU.CPU_BOUND_OPERATION, + step_operation={StepOperation.CPU_TIME: 0.005}, + ), + Step( + kind=EndpointStepIO.DB, + step_operation={StepOperation.IO_WAITING_TIME: 0.020}, + ), + ], + ) + + # 3. Create the full server configuration + server_cfg = Server( + id="api_srv", + endpoints=[endpoint], + server_resources=res_spec, + ) + + # 4. Set up the simulation environment with mock components + inbox: simpy.Store = simpy.Store(env) + sink: simpy.Store = simpy.Store(env) + edge = InstantEdge(env, sink) + + # 5. Instantiate the ServerRuntime + runtime = ServerRuntime( + env=env, + server_resources=containers, + server_config=server_cfg, + out_edge=edge, # type: ignore[arg-type] + server_box=inbox, + rng=default_rng(0), + ) + return runtime, sink + + +# --------------------------------------------------------------------------- # +# Unit Tests # +# --------------------------------------------------------------------------- # +def test_server_reserves_and_releases_ram() -> None: + """Verify that RAM is acquired at the start and fully released at the end.""" + env = simpy.Environment() + server, sink = _make_server_runtime(env) + + # Prepare a request and inject it into the server's inbox. + req = RequestState(id=1, initial_time=0.0) + server.server_box.put(req) + + # Start the server's dispatcher process and run until all events are processed. + server.start() + env.run() + + ram_container = server.server_resources["RAM"] + # After the request is fully processed, the RAM level must return to its capacity. + assert ram_container.level == ram_container.capacity, "RAM must be fully released" + # The request should have successfully reached the sink. + assert len(sink.items) == 1, "Request should be forwarded to the sink" + + +def test_cpu_core_held_only_during_cpu_step() -> None: + """Verify a CPU core is held exclusively during the CPU-bound step.""" + env = simpy.Environment() + server, _ = _make_server_runtime(env) + cpu_container = server.server_resources["CPU"] + + # Inject a single request and start the server. + req = RequestState(id=2, initial_time=0.0) + server.server_box.put(req) + server.start() + + # The endpoint logic is: RAM (t=0) -> CPU (t=0 to t=0.005). + # Run the simulation to a point *during* the CPU step. + env.run(until=0.004) + # The server has 2 cores. One should be busy. + assert cpu_container.level == 1, "One core should still be busy during the CPU step" + + # Now, run the simulation past the CPU step's completion. + env.run(until=0.006) + # The core should have been released immediately after the CPU step. + assert cpu_container.level == 2, "Core should be released after the CPU step" + + +def test_server_records_hop_in_history() -> None: + """Verify that the request's history correctly records its arrival at the server.""" + env = simpy.Environment() + server, sink = _make_server_runtime(env) + + # Inject a request and run the simulation to completion. + req = RequestState(id=3, initial_time=0.0) + server.server_box.put(req) + server.start() + env.run() + + # The request must be in the sink. + assert len(sink.items) == 1, "Request did not reach the sink" + finished_req = sink.items[0] + + # Check the request's history for a 'Hop' corresponding to this server. + assert any( + hop.component_type == SystemNodes.SERVER and hop.component_id == "api_srv" + for hop in finished_req.history + ), "Server hop missing in request history" diff --git a/tests/unit/runtime/test_edge b/tests/unit/runtime/test_edge deleted file mode 100644 index 8daaf01..0000000 --- a/tests/unit/runtime/test_edge +++ /dev/null @@ -1,136 +0,0 @@ -"""Unit-tests for :class:`EdgeRuntime`. - -The tests cover: - -* correct delivery when the random 'uniform' draw exceeds the drop rate; -* correct drop behaviour when the draw is below the drop rate; -* that the latency sampler is invoked exactly once per message. -""" -from __future__ import annotations - -from collections.abc import Iterator -from typing import TYPE_CHECKING, cast - -import numpy as np -import pytest -import simpy - -from app.config.constants import NetworkParameters, SystemNodes -from app.config.rqs_state import RequestState -from app.core.event_samplers.common_helpers import general_sampler -from app.core.runtime.edge import EdgeRuntime -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology_schema.full_system_topology_schema import Edge - -if TYPE_CHECKING: - from collections.abc import Generator - - -pytestmark = pytest.mark.unit # module-level marker - - -# --------------------------------------------------------------------------- # -# Dummy RNG # -# --------------------------------------------------------------------------- # - - -class DummyRNG: - """RNG stub returning preset values for `uniform()` and `normal()`.""" - - def __init__( - self, - *, - uniform_value: float, - sampler_value: float = 0.0, - ) -> None: - self.uniform_value = uniform_value - self.sampler_value = sampler_value - self.uniform_called = False - self.sampler_called = False - - def uniform(self) -> float: # noqa: D401 - self.uniform_called = True - return self.uniform_value - - # EdgeRuntime passes `self` to `general_sampler`; wrap the call - def normal(self, mean: float, sigma: float) -> float: # noqa: D401 - self.sampler_called = True - return self.sampler_value - - -# --------------------------------------------------------------------------- # -# Helper to create a minimal EdgeRuntime # -# --------------------------------------------------------------------------- # - - -def _make_edge( - env: simpy.Environment, - *, - uniform_value: float, - sampler_value: float = 0.0, -) -> tuple[EdgeRuntime, DummyRNG, simpy.Store]: - rng = DummyRNG(uniform_value=uniform_value, sampler_value=sampler_value) - store: simpy.Store = simpy.Store(env) - - edge_cfg = Edge( - id="edge-1", - source="src", - target="dst", - latency=RVConfig(mean=0.0, distribution="uniform"), # value ignored in test - ) - - edge_rt = EdgeRuntime( - env=env, - edge_config=edge_cfg, - rng=cast("np.random.Generator", rng), - target_box=store, - ) - return edge_rt, rng, store - - -# --------------------------------------------------------------------------- # -# Tests # -# --------------------------------------------------------------------------- # - - -def test_edge_delivers_message_when_not_dropped() -> None: - """Message is delivered and latency sampler is called once.""" - env = simpy.Environment() - edge, rng, store = _make_edge(env, uniform_value=0.9, sampler_value=0.5) - - # prepare request state - state = RequestState(id=1, initial_time=0.0) - state.record_hop(SystemNodes.GENERATOR, env.now) - - edge.transport(state) - env.run() - - # exactly one message delivered - assert len(store.items) == 1 - delivered: RequestState = store.items[0] - assert delivered.hops[-1].node == "edge-1" # last hop is the edge id - assert rng.uniform_called is True - assert rng.sampler_called is True - - -def test_edge_drops_message_when_uniform_below_threshold( - monkeypatch: pytest.MonkeyPatch, -) -> None: - """Message is dropped and never placed in the target store.""" - # override global drop rate to deterministic 0.5 for the test - monkeypatch.setattr(NetworkParameters, "DROPOUT_RATE", 0.5, raising=False) - - env = simpy.Environment() - edge, rng, store = _make_edge(env, uniform_value=0.1) # below 0.5 ⇒ drop - - state = RequestState(id=2, initial_time=0.0) - state.record_hop(SystemNodes.GENERATOR, env.now) - - edge.transport(state) - env.run() - - assert len(store.items) == 0 # nothing delivered - assert state.hops[-1].node.endswith("dropped") - assert rng.uniform_called is True - # sampler must not be invoked when dropped - assert rng.sampler_called is False diff --git a/tests/unit/runtime/test_rqs_state.py b/tests/unit/runtime/test_rqs_state.py new file mode 100644 index 0000000..d07caa4 --- /dev/null +++ b/tests/unit/runtime/test_rqs_state.py @@ -0,0 +1,66 @@ +"""Unit-tests for :class:`RequestState` and :class:`Hop`.""" +from __future__ import annotations + +from app.config.constants import SystemEdges, SystemNodes +from app.runtime.rqs_state import Hop, RequestState + +# --------------------------------------------------------------------------- # +# Helpers # +# --------------------------------------------------------------------------- # + + +def _state() -> RequestState: + """Return a fresh RequestState with id='42' and t0=0.0.""" + return RequestState(id=42, initial_time=0.0) + + +def _hop( + c_type: SystemNodes | SystemEdges, + c_id: str, + ts: float, +) -> Hop: + """Shorthand to build an Hop literal in tests.""" + return Hop(c_type, c_id, ts) + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # + + +def test_record_hop_appends_tuple() -> None: + """record_hop stores a :class:`Hop` instance with all three fields.""" + st = _state() + st.record_hop(SystemNodes.GENERATOR, "gen-1", now=1.23456) + + expected = [_hop(SystemNodes.GENERATOR, "gen-1", 1.23456)] + assert st.history == expected + assert isinstance(st.history[0], Hop) + + +def test_multiple_hops_preserve_global_order() -> None: + """History keeps exact insertion order for successive hops.""" + st = _state() + st.record_hop(SystemNodes.GENERATOR, "gen-1", 0.1) + st.record_hop(SystemEdges.NETWORK_CONNECTION, "edge-7", 0.2) + st.record_hop(SystemNodes.SERVER, "api-A", 0.3) + + expected: list[Hop] = [ + _hop(SystemNodes.GENERATOR, "gen-1", 0.1), + _hop(SystemEdges.NETWORK_CONNECTION, "edge-7", 0.2), + _hop(SystemNodes.SERVER, "api-A", 0.3), + ] + assert st.history == expected + + +def test_latency_none_until_finish_time_set() -> None: + """Latency is ``None`` if *finish_time* has not been assigned.""" + st = _state() + assert st.latency is None + + +def test_latency_returns_difference() -> None: + """Latency equals ``finish_time - initial_time`` once closed.""" + st = _state() + st.finish_time = 5.5 + assert st.latency == 5.5 # 5.5 - 0.0 diff --git a/tests/unit/sampler/test_gaussian_poisson.py b/tests/unit/samplers/test_gaussian_poisson.py similarity index 93% rename from tests/unit/sampler/test_gaussian_poisson.py rename to tests/unit/samplers/test_gaussian_poisson.py index c182376..b2b3c2e 100644 --- a/tests/unit/sampler/test_gaussian_poisson.py +++ b/tests/unit/samplers/test_gaussian_poisson.py @@ -10,11 +10,11 @@ from numpy.random import Generator, default_rng from app.config.constants import TimeDefaults -from app.core.event_samplers.gaussian_poisson import ( +from app.samplers.gaussian_poisson import ( gaussian_poisson_sampling, ) from app.schemas.random_variables_config import RVConfig -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: @@ -29,6 +29,7 @@ def rqs_cfg() -> RqsGeneratorInput: """Minimal, valid RqsGeneratorInput for Gaussian-Poisson tests.""" return RqsGeneratorInput( + id= "gen-1", avg_active_users=RVConfig( mean=10.0, variance=4.0, @@ -98,7 +99,7 @@ def fake_truncated_gaussian( return 0.0 # force U = 0 monkeypatch.setattr( - "app.core.event_samplers.gaussian_poisson.truncated_gaussian_generator", + "app.samplers.gaussian_poisson.truncated_gaussian_generator", fake_truncated_gaussian, ) diff --git a/tests/unit/sampler/test_poisson_poisson.py b/tests/unit/samplers/test_poisson_poisson.py similarity index 95% rename from tests/unit/sampler/test_poisson_poisson.py rename to tests/unit/samplers/test_poisson_poisson.py index 2fbbb9e..00242fa 100644 --- a/tests/unit/sampler/test_poisson_poisson.py +++ b/tests/unit/samplers/test_poisson_poisson.py @@ -11,9 +11,9 @@ from numpy.random import Generator, default_rng from app.config.constants import TimeDefaults -from app.core.event_samplers.poisson_poisson import poisson_poisson_sampling +from app.samplers.poisson_poisson import poisson_poisson_sampling from app.schemas.random_variables_config import RVConfig -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: @@ -24,6 +24,7 @@ def rqs_cfg() -> RqsGeneratorInput: """Return a minimal, valid RqsGeneratorInput for the sampler tests.""" return RqsGeneratorInput( + id="gen-1", avg_active_users={"mean": 1.0, "distribution": "poisson"}, avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, @@ -96,6 +97,7 @@ def test_zero_users_produces_no_events( ) -> None: """If the mean user count is zero the generator must yield no events.""" cfg_zero = RqsGeneratorInput( + id="gen-1", avg_active_users=RVConfig(mean=0.0, distribution="poisson"), avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, diff --git a/tests/unit/sampler/test_sampler_helper.py b/tests/unit/samplers/test_sampler_helper.py similarity index 99% rename from tests/unit/sampler/test_sampler_helper.py rename to tests/unit/samplers/test_sampler_helper.py index 7d34990..7e615d0 100644 --- a/tests/unit/sampler/test_sampler_helper.py +++ b/tests/unit/samplers/test_sampler_helper.py @@ -9,7 +9,7 @@ import pytest from app.config.constants import Distribution -from app.core.event_samplers.common_helpers import ( +from app.samplers.common_helpers import ( exponential_variable_generator, general_sampler, lognormal_variable_generator, diff --git a/tests/unit/input_sructure/test_endpoint_input.py b/tests/unit/schemas/test_endpoint_input.py similarity index 98% rename from tests/unit/input_sructure/test_endpoint_input.py rename to tests/unit/schemas/test_endpoint_input.py index fc08b5e..76d22a2 100644 --- a/tests/unit/input_sructure/test_endpoint_input.py +++ b/tests/unit/schemas/test_endpoint_input.py @@ -11,7 +11,7 @@ EndpointStepRAM, StepOperation, ) -from app.schemas.system_topology_schema.endpoint_schema import Endpoint, Step +from app.schemas.system_topology.endpoint import Endpoint, Step # --------------------------------------------------------------------------- # diff --git a/tests/unit/input_sructure/test_full_topology_input.py b/tests/unit/schemas/test_full_topology_input.py similarity index 97% rename from tests/unit/input_sructure/test_full_topology_input.py rename to tests/unit/schemas/test_full_topology_input.py index 7f0d864..8382ee6 100644 --- a/tests/unit/input_sructure/test_full_topology_input.py +++ b/tests/unit/schemas/test_full_topology_input.py @@ -14,8 +14,8 @@ SystemNodes, ) from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology_schema.endpoint_schema import Endpoint, Step -from app.schemas.system_topology_schema.full_system_topology_schema import ( +from app.schemas.system_topology.endpoint import Endpoint, Step +from app.schemas.system_topology.full_system_topology import ( Client, Edge, Server, diff --git a/tests/unit/input_sructure/test_requests_generator_input.py b/tests/unit/schemas/test_requests_generator_input.py similarity index 95% rename from tests/unit/input_sructure/test_requests_generator_input.py rename to tests/unit/schemas/test_requests_generator_input.py index 1ca9562..f676f4c 100644 --- a/tests/unit/input_sructure/test_requests_generator_input.py +++ b/tests/unit/schemas/test_requests_generator_input.py @@ -6,7 +6,7 @@ from app.config.constants import Distribution, TimeDefaults from app.schemas.random_variables_config import RVConfig -from app.schemas.requests_generator_input import RqsGeneratorInput +from app.schemas.rqs_generator_input import RqsGeneratorInput from app.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # @@ -52,22 +52,15 @@ def test_explicit_variance_is_preserved() -> None: def test_mean_must_be_numeric() -> None: """A non-numeric mean triggers a ValidationError.""" - with pytest.raises(ValidationError) as exc: + with pytest.raises(ValidationError): RVConfig(mean="not a number", distribution=Distribution.POISSON) - assert any(err["loc"] == ("mean",) for err in exc.value.errors()) - def test_missing_mean_field() -> None: """Omitting mean raises a 'field required' ValidationError.""" - with pytest.raises(ValidationError) as exc: + with pytest.raises(ValidationError): RVConfig.model_validate({"distribution": Distribution.NORMAL}) - assert any( - err["loc"] == ("mean",) and err["type"] == "missing" - for err in exc.value.errors() - ) - def test_default_distribution_is_poisson() -> None: """If distribution is missing, it defaults to 'poisson'.""" @@ -106,6 +99,7 @@ def _valid_normal_cfg(mean: float = 1.0) -> dict[str, float | str]: def test_default_user_sampling_window() -> None: """If user_sampling_window is missing it defaults to the constant.""" inp = RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), ) @@ -115,6 +109,7 @@ def test_default_user_sampling_window() -> None: def test_explicit_user_sampling_window_kept() -> None: """An explicit user_sampling_window is preserved.""" inp = RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window=30, @@ -126,6 +121,7 @@ def test_user_sampling_window_not_int_raises() -> None: """A non-integer user_sampling_window raises ValidationError.""" with pytest.raises(ValidationError): RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window="not-int", @@ -137,6 +133,7 @@ def test_user_sampling_window_above_max_raises() -> None: too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError): RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), user_sampling_window=too_large, @@ -147,6 +144,7 @@ def test_avg_request_must_be_poisson() -> None: """avg_request_per_minute_per_user must be Poisson; Normal raises.""" with pytest.raises(ValidationError): RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_normal_cfg(), ) @@ -157,6 +155,7 @@ def test_avg_active_users_invalid_distribution_raises() -> None: bad_cfg = {"mean": 1.0, "distribution": Distribution.EXPONENTIAL} with pytest.raises(ValidationError): RqsGeneratorInput( + id="rqs-1", avg_active_users=bad_cfg, avg_request_per_minute_per_user=_valid_poisson_cfg(), ) @@ -165,6 +164,7 @@ def test_avg_active_users_invalid_distribution_raises() -> None: def test_valid_poisson_poisson_configuration() -> None: """Poisson-Poisson combo is accepted.""" cfg = RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), ) @@ -178,6 +178,7 @@ def test_valid_poisson_poisson_configuration() -> None: def test_valid_normal_poisson_configuration() -> None: """Normal-Poisson combo is accepted.""" cfg = RqsGeneratorInput( + id="rqs-1", avg_active_users=_valid_normal_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), ) diff --git a/tests/unit/test_state.py b/tests/unit/test_state.py deleted file mode 100644 index 4612f1b..0000000 --- a/tests/unit/test_state.py +++ /dev/null @@ -1,47 +0,0 @@ -"""Unit-tests for :class:`RequestState`.""" -from __future__ import annotations - -from app.config.rqs_state import RequestState - -# --------------------------------------------------------------------------- # -# Helpers # -# --------------------------------------------------------------------------- # - - -def _state() -> RequestState: - """Return a fresh RequestState with id=42 and t0=0.0.""" - return RequestState(id=42, initial_time=0.0) - - -# --------------------------------------------------------------------------- # -# Tests # -# --------------------------------------------------------------------------- # - - -def test_record_hop_appends_formatted_entry() -> None: - """Calling *record_hop* stores 'node@timestamp' with 3-dec precision.""" - st = _state() - st.record_hop("generator", now=1.23456) - assert st.history == ["generator@1.235"] # rounded to 3 decimals - - -def test_multiple_hops_preserve_order() -> None: - """History keeps insertion order for consecutive hops.""" - st = _state() - st.record_hop("A", 0.1) - st.record_hop("B", 0.2) - st.record_hop("C", 0.3) - assert st.history == ["A@0.100", "B@0.200", "C@0.300"] - - -def test_latency_none_until_finish_time_set() -> None: - """Latency is None if *finish_time* not assigned.""" - st = _state() - assert st.latency is None - - -def test_latency_returns_difference() -> None: - """Latency equals finish_time - initial_time once completed.""" - st = _state() - st.finish_time = 5.5 - assert st.latency == 5.5 # 5.5 - 0.0 From 26868452150ee3dfca7a149edb67467b4628a86d Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Tue, 29 Jul 2025 17:17:27 +0200 Subject: [PATCH 18/35] Features/metric sampler and collection (#7) * defined architecture for the central collector + documentation * server modification to collect metrics and updated docs * Completed metric collector for server plus test * remove web app dependencies and added metrics for rqs latency * improved docs and improved metric collection * changes to make the code compatible with new changes * improved ci against toml changes * update lock file * minor change --- .gitattributes | 4 - .github/workflows/ci-cd-main.yml | 0 .github/workflows/ci-develop.yml | 54 +- Dockerfile | 50 - README.md | 207 +-- alembic.ini | 144 -- alembic/README | 1 - alembic/env.py | 83 - alembic/script.py.mako | 28 - docker_fs/.env.example | 8 - docker_fs/docker-compose.dev.yml | 40 - docker_fs/docker-compose.prod.yml | 0 {documentation => docs}/dev_workflow_guide.md | 0 docs/fastsim-docs/metrics_to_measure.md | 49 + .../fastsim-docs}/requests_generator.md | 0 .../fastsim-docs}/runtime_and_resources.md | 158 +- .../fastsim-docs}/simulation_input.md | 0 .../time_series_metric_architecture.md | 91 ++ {documentation => docs}/fastsim_vision.md | 0 .../metrics_to_measure.md | 49 - poetry.lock | 1432 +++-------------- pyproject.toml | 11 +- scripts/init-docker-dev.sh | 98 -- src/app/api/__init__.py | 1 - src/app/api/health_check.py | 11 - src/app/api/simulation.py | 4 - src/app/config/constants.py | 22 +- src/app/config/settings.py | 43 - src/app/db/__init__.py | 1 - src/app/db/base.py | 14 - src/app/db/init_db.py | 15 - src/app/db/session.py | 37 - src/app/main.py | 33 - src/app/metrics/client.py | 18 + src/app/metrics/collector.py | 70 + src/app/metrics/dictionary_metrics.py | 38 - src/app/metrics/edge.py | 29 + src/app/metrics/server.py | 34 + src/app/runtime/actors/client.py | 31 +- src/app/runtime/actors/edge.py | 30 +- src/app/runtime/actors/server.py | 185 ++- src/app/schemas/simulation_settings_input.py | 20 +- src/app/simulation_run.py | 60 - tests/conftest.py | 122 +- .../integration/db_initialization/__init__.py | 1 - .../db_initialization/test_db_connection.py | 16 - .../db_initialization/test_init_models.py | 17 - tests/unit/db/test_settings.py | 18 - tests/unit/runtime/engine/test_edge.py | 92 +- tests/unit/runtime/engine/test_server.py | 170 +- tests/unit/test_health_route.py | 8 - 51 files changed, 1130 insertions(+), 2517 deletions(-) delete mode 100644 .gitattributes delete mode 100644 .github/workflows/ci-cd-main.yml delete mode 100644 Dockerfile delete mode 100644 alembic.ini delete mode 100644 alembic/README delete mode 100644 alembic/env.py delete mode 100644 alembic/script.py.mako delete mode 100644 docker_fs/.env.example delete mode 100644 docker_fs/docker-compose.dev.yml delete mode 100644 docker_fs/docker-compose.prod.yml rename {documentation => docs}/dev_workflow_guide.md (100%) create mode 100644 docs/fastsim-docs/metrics_to_measure.md rename {documentation/backend_documentation => docs/fastsim-docs}/requests_generator.md (100%) rename {documentation/backend_documentation => docs/fastsim-docs}/runtime_and_resources.md (69%) rename {documentation/backend_documentation => docs/fastsim-docs}/simulation_input.md (100%) create mode 100644 docs/fastsim-docs/time_series_metric_architecture.md rename {documentation => docs}/fastsim_vision.md (100%) delete mode 100644 documentation/backend_documentation/metrics_to_measure.md delete mode 100644 scripts/init-docker-dev.sh delete mode 100644 src/app/api/__init__.py delete mode 100644 src/app/api/health_check.py delete mode 100644 src/app/api/simulation.py delete mode 100644 src/app/config/settings.py delete mode 100644 src/app/db/__init__.py delete mode 100644 src/app/db/base.py delete mode 100644 src/app/db/init_db.py delete mode 100644 src/app/db/session.py delete mode 100644 src/app/main.py create mode 100644 src/app/metrics/client.py create mode 100644 src/app/metrics/collector.py delete mode 100644 src/app/metrics/dictionary_metrics.py create mode 100644 src/app/metrics/edge.py create mode 100644 src/app/metrics/server.py delete mode 100644 src/app/simulation_run.py delete mode 100644 tests/integration/db_initialization/__init__.py delete mode 100644 tests/integration/db_initialization/test_db_connection.py delete mode 100644 tests/integration/db_initialization/test_init_models.py delete mode 100644 tests/unit/db/test_settings.py delete mode 100644 tests/unit/test_health_route.py diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index 06ab1ee..0000000 --- a/.gitattributes +++ /dev/null @@ -1,4 +0,0 @@ -*.sh text eol=lf -*.py text eol=lf -*.env text eol=lf -*.yml text eol=lf diff --git a/.github/workflows/ci-cd-main.yml b/.github/workflows/ci-cd-main.yml deleted file mode 100644 index e69de29..0000000 diff --git a/.github/workflows/ci-develop.yml b/.github/workflows/ci-develop.yml index 480f075..9727868 100644 --- a/.github/workflows/ci-develop.yml +++ b/.github/workflows/ci-develop.yml @@ -62,33 +62,12 @@ jobs: # Job 2 ─ Full validation (executed only on push events) -# --------------------------------------------------------------------------- # -# Includes everything from the quick job plus: -# • PostgreSQL service container -# • Alembic migrations -# • Integration tests -# • Multi-stage Docker build and health-check - full: if: | github.event_name == 'push' && github.ref == 'refs/heads/develop' runs-on: ubuntu-latest - services: - postgres: - image: postgres:17 - env: - POSTGRES_USER: ${{ secrets.DB_USER }} - POSTGRES_PASSWORD: ${{ secrets.DB_PASSWORD }} - POSTGRES_DB: ${{ secrets.DB_NAME }} - ports: ["5432:5432"] - options: >- - --health-cmd "pg_isready -U $POSTGRES_USER -d $POSTGRES_DB" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 @@ -110,41 +89,12 @@ jobs: - name: Run mypy run: poetry run mypy src - - name: Apply Alembic migrations - env: - ENVIRONMENT: test - DB_URL: postgresql+psycopg://${{ secrets.DB_USER }}:${{ secrets.DB_PASSWORD }}@localhost:5432/${{ secrets.DB_NAME }} - run: poetry run alembic upgrade head - - name: Run all tests - env: - ENVIRONMENT: test - DB_URL: postgresql+asyncpg://${{ secrets.DB_USER }}:${{ secrets.DB_PASSWORD }}@localhost:5432/${{ secrets.DB_NAME }} run: | poetry run pytest \ --cov=src --cov-report=term \ --disable-warnings - - name: Build Docker image - run: docker build --progress=plain -t backend:ci . + - - name: Smoke test container - run: | - # partiamo con --network host così il container condivide la rete del runner - docker run -d \ - --name backend_ci \ - --network host \ - -e ENVIRONMENT=test \ - -e DB_URL=postgresql+asyncpg://${{ secrets.DB_USER }}:${{ secrets.DB_PASSWORD }}@localhost:5432/${{ secrets.DB_NAME }} \ - backend:ci \ - uvicorn app.main:app --host 0.0.0.0 --port 8000 - - for i in {1..10}; do - if curl --silent --fail http://localhost:8000/health; then - echo "✔ Health OK"; break - else - echo "Waiting…"; sleep 3 - fi - done - - docker stop backend_ci \ No newline at end of file + \ No newline at end of file diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 6bf546c..0000000 --- a/Dockerfile +++ /dev/null @@ -1,50 +0,0 @@ -# ─────────────── Build stage ─────────────── -FROM python:3.12-slim AS builder - -# Install system dependencies for psycopg and build tools -RUN apt-get update \ - && apt-get install -y --no-install-recommends gcc libpq-dev curl \ - && rm -rf /var/lib/apt/lists/* - -WORKDIR /opt/app - -# Copy only pyproject.toml, poetry.lock, README so we leverage cache -COPY pyproject.toml poetry.lock* README.md ./ - -# Install Poetry (into /root/.local/bin) -RUN curl -sSL https://install.python-poetry.org | python3 - - -# Symlink Poetry into /usr/local/bin so "poetry" is on PATH -RUN ln -s /root/.local/bin/poetry /usr/local/bin/poetry - -# Tell Poetry not to create its own venv -RUN poetry config virtualenvs.create false - -# Install only the prod deps (uvicorn, fastapi, sqlalchemy, psycopg...) -RUN poetry install --no-root --without dev - -# Now copy in your application code -COPY src/ ./src - -# ─────────── Runtime stage ─────────── -FROM python:3.12-slim AS runtime - -WORKDIR /opt/app - -# 1) Copy installed libraries -COPY --from=builder /usr/local/lib/python3.12 /usr/local/lib/python3.12 - -# 2) Copy console scripts (uvicorn, alembic, etc.) -COPY --from=builder /usr/local/bin /usr/local/bin - -# 3) Copy application code -COPY --from=builder /opt/app/src ./src - -# 4) Non-root user -RUN adduser --disabled-password --gecos '' appuser -USER appuser - -WORKDIR /opt/app/src - -# 5) Default command -CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"] diff --git a/README.md b/README.md index a9448e5..526a127 100644 --- a/README.md +++ b/README.md @@ -1,176 +1,127 @@ -Certamente. Ecco il contenuto del `README.md` visualizzato direttamente qui. - ------ - # **FastSim Project Overview** ## **1. Why FastSim?** -FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guesswork, costly cloud load-tests, or late surprises. **FastSim** fills that gap by becoming a **digital twin** of your actual service: +Modern async Python stacks like FastAPI + Uvicorn are incredibly fast, yet sizing them for production often involves guesswork, costly cloud load-tests, or late-stage surprises. **FastSim** fills that gap by acting as a **digital twin** of your service: - * It **replicates** your FastAPI + Uvicorn event-loop behavior in SimPy, generating the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. - * It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, and even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. - * It **outputs** the very metrics you would scrape in production (p50/p95/p99 latency, ready-queue lag, concurrency, throughput, cost per LLM call), but entirely offline, in seconds. + * It **replicates** the behavior of an async event-loop in SimPy, generating the same kinds of steps (parsing, CPU work, I/O waits) that happen in real code. + * It **models** your infrastructure primitives—CPU cores, connection pools, and rate-limiters—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. + * It **outputs** the very metrics you would scrape in production (p50/p95/p99 latency, ready-queue lag, concurrency, throughput), but entirely offline, in seconds. -With FastSim you can ask, *“What happens if traffic doubles on Black Friday?”*, *“How many cores are needed to keep p95 latency below 100 ms?”*, or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. +With FastSim, you can ask, *“What happens if traffic doubles on Black Friday?”*, *“How many cores are needed to keep p95 latency below 100 ms?”*, or *“Is our new endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. **Outcome:** Data-driven capacity planning, early performance tuning, and far fewer surprises in production. -## **2. Project Goals** - -| \# | Goal | Practical Outcome | -| :--- | :--- | :--- | -| 1 | **Pre-production sizing** | Know the required core count, pool size, and replica count to meet your SLA. | -| 2 | **Scenario analysis** | Explore various traffic models, endpoint mixes, latency distributions, and RTT. | -| 3 | **Twin metrics** | Produce the same metrics you’ll scrape in production (latency, queue length, CPU utilization). | -| 4 | **Rapid iteration** | A single YAML/JSON configuration or REST call generates a full performance report. | -| 5 | **Educational value** | Visualize how GIL contention, queue length, and concurrency react to load. | - -## **3. Who Benefits & Why** - -| Audience | Pain-Point Solved | FastSim Value | -| :--- | :--- | :--- | -| **Backend Engineers** | Unsure if a 4-vCPU container can survive a marketing traffic spike. | Run *what-if* scenarios, tweak CPU cores or pool sizes, and get p95 latency and max-concurrency metrics before merging code. | -| **DevOps / SRE** | Guesswork in capacity planning; high cost of over-provisioning. | Simulate 1 to N replicas, autoscaler thresholds, and database pool sizes to find the most cost-effective configuration that meets the SLA. | -| **ML / LLM Product Teams** | LLM inference cost and latency are difficult to predict. | Model the LLM step with a price and latency distribution to estimate cost-per-request and the benefits of GPU batching without needing real GPUs. | -| **Educators / Trainers** | Students struggle to visualize event-loop internals. | Visualize GIL ready-queue lag, CPU vs. I/O steps, and the effect of blocking code—perfect for live demos and labs. | -| **Consultants / Architects** | Need a quick proof-of-concept for new client designs. | Define endpoints in YAML and demonstrate throughput and latency under projected load in minutes. | -| **Open-Source Community** | Lacks a lightweight Python simulator for ASGI workloads. | An extensible codebase makes it easy to plug in new resources (e.g., rate-limiters, caches) or traffic models (e.g., spike, uniform ramp). | -| **System-Design Interviewees** | Hard to quantify trade-offs in whiteboard interviews. | Prototype real-time metrics—queue lengths, concurrency, latency distributions—to demonstrate how your design scales and where bottlenecks lie. | - -## **4. About This Documentation** +## **2. Installation & Quick Start** -This project contains extensive documentation covering its vision, architecture, and technical implementation. The documents are designed to be read in sequence to build a comprehensive understanding of the project. +FastSim is designed to be used as a Python library. -### **How to Read This Documentation** +```bash +# Installation (coming soon to PyPI) +pip install fastsim +``` -For the best understanding of FastSim, we recommend reading the documentation in the following order: +**Example Usage:** + +1. Define your system topology in a `config.yml` file: + + ```yaml + topology: + servers: + - id: "app-server-1" + # ... server configuration ... + load_balancers: + - id: "main-lb" + backends: ["app-server-1"] + # ... lb configuration ... + settings: + duration_s: 60 + ``` -1. **README.md (This Document)**: Start here for a high-level overview of the project's purpose, goals, target audience, and development workflow. It provides the essential context for all other documents. -2. **dev_worflow_guide**: This document details the github workflow for the development -3. **simulation_input**: This document details the technical contract for configuring a simulation. It explains the `SimulationPayload` and its components (`rqs_input`, `topology_graph`, `sim_settings`). This is essential reading for anyone who will be creating or modifying simulation configurations. -4. **runtime_and_resources**: A deep dive into the simulation's internal engine. It explains how the validated input is transformed into live SimPy processes (Actors, Resources, State). This is intended for advanced users or contributors who want to understand *how* the simulation works under the hood. -5. **requests_generator**: This document covers the mathematical and algorithmic details behind the traffic generation model. It is for those interested in the statistical foundations of the simulator. -6. **Simulation Metrics**: A comprehensive guide to all output metrics. It explains what each metric measures, how it's collected, and why it's important for performance analysis. +2. Run the simulation from a Python script: -Optional **fastsim_vision**: a more detailed document about the project vision + ```python + from fastsim import run_simulation + from fastsim.schemas import SimulationPayload -you can find the documentation at the root of the project in the folder `documentation/` + # Load and validate configuration using Pydantic + payload = SimulationPayload.from_yaml("config.yml") -## **5. Development Workflow & Architecture Guide** + # Run the simulation + results = run_simulation(payload) -This section outlines the standardized development workflow, repository architecture, and branching strategy for the FastSim backend. + # Analyze and plot results + results.plot_latency_distribution() + print(results.summary()) + ``` -### **Technology Stack** +## **3. Who Benefits & Why** - * **Backend**: FastAPI - * **Backend Package Manager**: Poetry - * **Frontend**: React + JavaScript - * **Database**: PostgreSQL - * **Caching**: Redis - * **Containerization**: Docker +| Audience | Pain-Point Solved | FastSim Value | +| :--- | :--- | :--- | +| **Backend Engineers** | Unsure if a 4-vCPU container can survive a traffic spike. | Run *what-if* scenarios, tweak CPU cores, and get p95 latency metrics before merging code. | +| **DevOps / SRE** | Guesswork in capacity planning; high cost of over-provisioning. | Simulate 1 to N replicas to find the most cost-effective configuration that meets the SLA. | +| **ML / LLM Teams** | LLM inference cost and latency are difficult to predict. | Model the LLM step with a price and latency distribution to estimate cost-per-request. | +| **Educators / Trainers** | Students struggle to visualize event-loop internals. | Visualize GIL ready-queue lag, CPU vs. I/O steps, and the effect of blocking code. | +| **System-Design Interviewees** | Hard to quantify trade-offs in whiteboard interviews. | Prototype real-time metrics to demonstrate how your design scales and where bottlenecks lie. | -### **Backend Service (`FastSim-backend`)** +## **4. Project Structure** -The repository hosts the entire FastAPI backend, which exposes the REST API, runs the discrete-event simulation, communicates with the database, and provides metrics. +The project is a standard Python library managed with Poetry. ``` -fastsim-backend/ -├── Dockerfile -├── docker_fs/ -│ ├── docker-compose.dev.yml -│ └── docker-compose.prod.yml -├── scripts/ -│ ├── init-docker-dev.sh -│ └── quality-check.sh -├── alembic/ -│ ├── env.py -│ └── versions/ +fastsim/ ├── documentation/ -│ └── backend_documentation/ -├── tests/ -│ ├── unit/ -│ └── integration/ +│ └── ... ├── src/ │ └── app/ -│ ├── api/ │ ├── config/ -│ ├── db/ │ ├── metrics/ │ ├── resources/ │ ├── runtime/ -│ │ ├── rqs_state.py -│ │ └── actors/ +│ │ ├── actors/ +│ │ └── rqs_state.py │ ├── samplers/ -│ ├── schemas/ -│ ├── main.py -│ └── simulation_run.py -├── poetry.lock +│ └── schemas/ +├── tests/ +│ ├── unit/ +│ └── integration/ +├── .github/ +│ └── workflows/ +│ └── ci-develop.yml ├── pyproject.toml +├── poetry.lock └── README.md ``` -### **How to Start the Backend with Docker (Development)** +## **5. Development & Contribution** -To spin up the backend and its supporting services in development mode: - -1. **Install & run Docker** on your machine. -2. **Clone** the repository and `cd` into its root. -3. Execute: - ```bash - bash ./scripts/init-docker-dev.sh - ``` - This will launch a **PostgreSQL** container and a **Backend** container that mounts your local `src/` folder with live-reload enabled. - -### **Development Architecture & Philosophy** - -We split responsibilities between Docker-managed services and local workflows. - - * **Docker-Compose for Development**: Containers host external services (PostgreSQL) and run the FastAPI app. Your local `src/` directory is mounted into the backend container for hot-reloading. No tests, migrations, or linting run inside these containers during development. - * **Local Quality & Testing Workflow**: All code quality tools, migrations, and tests are executed on your host machine for faster feedback and full IDE support. +We welcome contributions\! The development workflow is managed by Poetry and quality is enforced by Ruff and MyPy. | Task | Command | Notes | | :--- | :--- | :--- | -| **Lint & format** | `poetry run ruff check src tests` | Style and best-practice validations | -| **Type checking** | `poetry run mypy src tests` | Static type enforcement | -| **Unit tests** | `poetry run pytest -m "not integration"` | Fast, isolated tests—no DB required | -| **Integration tests** | `poetry run pytest -m integration` | Real-DB tests against Docker’s PostgreSQL | -| **DB migrations** | `poetry run alembic upgrade head` | Applies migrations to your local Docker-hosted DB | - -**Rationale**: Running tests or Alembic migrations inside Docker images would slow down your feedback loop and limit IDE features by requiring you to mount the full source tree and install dev dependencies in each build. - -## **6. CI/CD with GitHub Actions** +| **Install dependencies** | `poetry install --with dev` | Installs main and development packages. | +| **Lint & format** | `poetry run ruff check src tests` | Style and best-practice validations. | +| **Type checking** | `poetry run mypy src tests` | Static type enforcement. | +| **Run all tests** | `poetry run pytest` | Executes the full test suite. | -We maintain two jobs on the `develop` branch to ensure code quality and stability. +### **CI with GitHub Actions** -### **Quick (on Pull Requests)** +We maintain two jobs on the `develop` branch to ensure code quality: - * Ruff & MyPy checks - * Unit tests only - * **No database required** + * **Quick (on Pull Requests):** Runs Ruff, MyPy, and unit tests for immediate feedback. + * **Full (on pushes to `develop`):** Runs the full suite, including integration tests and code coverage reports. -### **Full (on pushes to `develop`)** +This guarantees that every commit in `develop` is style-checked, type-safe, and fully tested. - * All checks from the "Quick" suite - * Starts a **PostgreSQL** service container - * Runs **Alembic** migrations - * Executes the **full test suite** (unit + integration) - * Builds the **Docker** image - * **Smoke-tests** the `/health` endpoint of the built container +## **6. Limitations – v0.1 (First Public Release)** -**Guarantee**: Every commit in `develop` is style-checked, type-safe, database-tested, and Docker-ready. +1. **Network Delay Model:** Only pure transport latency is simulated. Bandwidth-related effects (e.g., payload size, link speed) are not yet accounted for. +2. **Concurrency Model:** The simulation models a single-threaded, cooperative event-loop (like `asyncio`). Multi-process or multi-threaded parallelism is not yet supported. +3. **CPU Core Allocation:** Every server instance is pinned to one physical CPU core. Horizontal scaling is achieved by adding more server instances, not by using multiple cores within a single process. -## **7. Limitations – v0.1 (First Public Release)** +These constraints will be revisited in future milestones. -1. **Network Delay Model** - * Only pure transport latency is simulated. - * Bandwidth-related effects (e.g., payload size, link speed, congestion) are NOT accounted for. -2. **Concurrency Model** - * The service exposes **async-only endpoints**. - * Execution runs on a single `asyncio` event-loop thread. - * No thread-pool workers or multi-process setups are supported yet; therefore, concurrency is limited to coroutine scheduling (cooperative, single-thread). -3. **CPU Core Allocation** - * Every server instance is pinned to **one physical CPU core**. - * Horizontal scaling must be achieved via multiple containers/VMs, not via multi-core utilization inside a single process. +## **7. Documentation** -These constraints will be revisited in future milestones once kernel-level context-switching costs, I/O bandwidth modeling, and multi-process orchestration are integrated. \ No newline at end of file +For a deeper understanding of FastSim, we recommend reading the detailed documentation located in the `/documentation` folder at the root of the project. A guided reading path is suggested within to build a comprehensive understanding of the project's vision, architecture, and technical implementation. \ No newline at end of file diff --git a/alembic.ini b/alembic.ini deleted file mode 100644 index 24fc464..0000000 --- a/alembic.ini +++ /dev/null @@ -1,144 +0,0 @@ -# A generic, single database configuration. - -[alembic] -# path to migration scripts. -# this is typically a path given in POSIX (e.g. forward slashes) -# format, relative to the token %(here)s which refers to the location of this -# ini file -script_location = %(here)s/alembic - -# template used to generate migration file names; The default value is %%(rev)s_%%(slug)s -# Uncomment the line below if you want the files to be prepended with date and time -# see https://alembic.sqlalchemy.org/en/latest/tutorial.html#editing-the-ini-file -# for all available tokens -# file_template = %%(year)d_%%(month).2d_%%(day).2d_%%(hour).2d%%(minute).2d-%%(rev)s_%%(slug)s - -# sys.path path, will be prepended to sys.path if present. -# defaults to the current working directory. for multiple paths, the path separator -# is defined by "path_separator" below. -prepend_sys_path = . - - -# timezone to use when rendering the date within the migration file -# as well as the filename. -# If specified, requires the python>=3.9 or backports.zoneinfo library and tzdata library. -# Any required deps can installed by adding `alembic[tz]` to the pip requirements -# string value is passed to ZoneInfo() -# leave blank for localtime -# timezone = - -# max length of characters to apply to the "slug" field -# truncate_slug_length = 40 - -# set to 'true' to run the environment during -# the 'revision' command, regardless of autogenerate -# revision_environment = false - -# set to 'true' to allow .pyc and .pyo files without -# a source .py file to be detected as revisions in the -# versions/ directory -# sourceless = false - -# version location specification; This defaults -# to /versions. When using multiple version -# directories, initial revisions must be specified with --version-path. -# The path separator used here should be the separator specified by "path_separator" -# below. -# version_locations = %(here)s/bar:%(here)s/bat:%(here)s/alembic/versions - -# path_separator; This indicates what character is used to split lists of file -# paths, including version_locations and prepend_sys_path within configparser -# files such as alembic.ini. -# The default rendered in new alembic.ini files is "os", which uses os.pathsep -# to provide os-dependent path splitting. -# -# Note that in order to support legacy alembic.ini files, this default does NOT -# take place if path_separator is not present in alembic.ini. If this -# option is omitted entirely, fallback logic is as follows: -# -# 1. Parsing of the version_locations option falls back to using the legacy -# "version_path_separator" key, which if absent then falls back to the legacy -# behavior of splitting on spaces and/or commas. -# 2. Parsing of the prepend_sys_path option falls back to the legacy -# behavior of splitting on spaces, commas, or colons. -# -# Valid values for path_separator are: -# -# path_separator = : -# path_separator = ; -# path_separator = space -# path_separator = newline -# -# Use os.pathsep. Default configuration used for new projects. -path_separator = os - -# set to 'true' to search source files recursively -# in each "version_locations" directory -# new in Alembic version 1.10 -# recursive_version_locations = false - -# the output encoding used when revision files -# are written from script.py.mako -# output_encoding = utf-8 - -# database URL. This is consumed by the user-maintained env.py script only. -# other means of configuring database URLs may be customized within the env.py -# file. -#sqlalchemy.url = driver://user:pass@localhost/dbname -# sqlalchemy.url is overridden at runtime in alembic/env.py -# via config.set_main_option(..., settings.db_url) -# leave this here as a placeholder or for offline mode if needed -# sqlalchemy.url = postgresql+asyncpg://user:pass@localhost:5432/dbname - -[post_write_hooks] -# post_write_hooks defines scripts or Python functions that are run -# on newly generated revision scripts. See the documentation for further -# detail and examples - -# format using "black" - use the console_scripts runner, against the "black" entrypoint -# hooks = black -# black.type = console_scripts -# black.entrypoint = black -# black.options = -l 79 REVISION_SCRIPT_FILENAME - -# lint with attempts to fix using "ruff" - use the exec runner, execute a binary -# hooks = ruff -# ruff.type = exec -# ruff.executable = %(here)s/.venv/bin/ruff -# ruff.options = check --fix REVISION_SCRIPT_FILENAME - -# Logging configuration. This is also consumed by the user-maintained -# env.py script only. -[loggers] -keys = root,sqlalchemy,alembic - -[handlers] -keys = console - -[formatters] -keys = generic - -[logger_root] -level = WARNING -handlers = console -qualname = - -[logger_sqlalchemy] -level = WARNING -handlers = -qualname = sqlalchemy.engine - -[logger_alembic] -level = INFO -handlers = -qualname = alembic - -[handler_console] -class = StreamHandler -args = (sys.stderr,) -level = NOTSET -formatter = generic - -[formatter_generic] -format = %(levelname)-5.5s [%(name)s] %(message)s -datefmt = %H:%M:%S diff --git a/alembic/README b/alembic/README deleted file mode 100644 index 98e4f9c..0000000 --- a/alembic/README +++ /dev/null @@ -1 +0,0 @@ -Generic single-database configuration. \ No newline at end of file diff --git a/alembic/env.py b/alembic/env.py deleted file mode 100644 index 2e671fd..0000000 --- a/alembic/env.py +++ /dev/null @@ -1,83 +0,0 @@ -from logging.config import fileConfig - -from alembic import context -from sqlalchemy import engine_from_config, pool - -from app.config.settings import settings -from app.db.base import Base - - -# this is the Alembic Config object, which provides -# access to the values within the .ini file in use. -config = context.config - -# replace sqlalchemy.url with the value of the url in env.dev -raw_url = settings.db_url.replace("+asyncpg", "+psycopg") -config.set_main_option("sqlalchemy.url", raw_url) - - -# Interpret the config file for Python logging. -# This line sets up loggers basically. -if config.config_file_name is not None: - fileConfig(config.config_file_name) - -# add your model's MetaData object here -# for 'autogenerate' support -# from myapp import mymodel -# target_metadata = mymodel.Base.metadata -target_metadata = Base.metadata - -# other values from the config, defined by the needs of env.py, -# can be acquired: -# my_important_option = config.get_main_option("my_important_option") -# ... etc. - - -def run_migrations_offline() -> None: - """Run migrations in 'offline' mode. - - This configures the context with just a URL - and not an Engine, though an Engine is acceptable - here as well. By skipping the Engine creation - we don't even need a DBAPI to be available. - - Calls to context.execute() here emit the given string to the - script output. - - """ - url = config.get_main_option("sqlalchemy.url") - context.configure( - url=url, - target_metadata=target_metadata, - literal_binds=True, - dialect_opts={"paramstyle": "named"}, - ) - - with context.begin_transaction(): - context.run_migrations() - - -def run_migrations_online() -> None: - """Run migrations in 'online' mode. - - In this scenario we need to create an Engine - and associate a connection with the context. - - """ - connectable = engine_from_config( - config.get_section(config.config_ini_section, {}), - prefix="sqlalchemy.", - poolclass=pool.NullPool, - ) - - with connectable.connect() as connection: - context.configure(connection=connection, target_metadata=target_metadata) - - with context.begin_transaction(): - context.run_migrations() - - -if context.is_offline_mode(): - run_migrations_offline() -else: - run_migrations_online() diff --git a/alembic/script.py.mako b/alembic/script.py.mako deleted file mode 100644 index 1101630..0000000 --- a/alembic/script.py.mako +++ /dev/null @@ -1,28 +0,0 @@ -"""${message} - -Revision ID: ${up_revision} -Revises: ${down_revision | comma,n} -Create Date: ${create_date} - -""" -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -${imports if imports else ""} - -# revision identifiers, used by Alembic. -revision: str = ${repr(up_revision)} -down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)} -branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)} -depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)} - - -def upgrade() -> None: - """Upgrade schema.""" - ${upgrades if upgrades else "pass"} - - -def downgrade() -> None: - """Downgrade schema.""" - ${downgrades if downgrades else "pass"} diff --git a/docker_fs/.env.example b/docker_fs/.env.example deleted file mode 100644 index 1ee9b47..0000000 --- a/docker_fs/.env.example +++ /dev/null @@ -1,8 +0,0 @@ -DB_HOST= -DB_USER= -DB_PASSWORD= -DB_NAME= -DB_URL= -PGADMIN_DEFAULT_EMAIL= -PGADMIN_DEFAULT_PASSWORD= -ENVIRONMENT= \ No newline at end of file diff --git a/docker_fs/docker-compose.dev.yml b/docker_fs/docker-compose.dev.yml deleted file mode 100644 index cea5fa4..0000000 --- a/docker_fs/docker-compose.dev.yml +++ /dev/null @@ -1,40 +0,0 @@ -services: - db: - image: postgres:17 - ports: ["5432:5432"] - - env_file: - - .env.dev - environment: - POSTGRES_USER: ${DB_USER} - POSTGRES_PASSWORD: ${DB_PASSWORD} - POSTGRES_DB: ${DB_NAME} - - volumes: - - dev_db:/var/lib/postgresql/data - - pgadmin: - image: dpage/pgadmin4 - ports: ["8080:80"] - env_file: - - .env.dev - environment: - PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL} - PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD} - depends_on: - - db - - backend: - build: .. - command: uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 - volumes: - - ../src:/opt/app/src - ports: - - "8000:8000" - env_file: - - .env.dev - depends_on: - - db - -volumes: - dev_db: \ No newline at end of file diff --git a/docker_fs/docker-compose.prod.yml b/docker_fs/docker-compose.prod.yml deleted file mode 100644 index e69de29..0000000 diff --git a/documentation/dev_workflow_guide.md b/docs/dev_workflow_guide.md similarity index 100% rename from documentation/dev_workflow_guide.md rename to docs/dev_workflow_guide.md diff --git a/docs/fastsim-docs/metrics_to_measure.md b/docs/fastsim-docs/metrics_to_measure.md new file mode 100644 index 0000000..390f6d9 --- /dev/null +++ b/docs/fastsim-docs/metrics_to_measure.md @@ -0,0 +1,49 @@ +### **FastSim — Simulation Metrics** + +Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. FastSim provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. + +To achieve this, FastSim categorizes metrics into three distinct types: + +1. **Sampled Metrics (`SampledMetricName`):** These metrics provide a **time-series view** of the system's state. They are captured at fixed, regular intervals (e.g., every 5 milliseconds). This methodology is ideal for understanding trends and measuring the continuous utilization of finite resources. Think of them as periodic snapshots of your system's health. + +2. **Event-based Metrics (`EventMetricName`):** These metrics are raw data points recorded **only when a specific event occurs**, such as the completion of a request. Their collection is asynchronous and irregular. This approach is designed to capture the fundamental data needed for post-simulation analysis with maximum efficiency and flexibility. + +3. **Aggregated Metrics (`AggregatedMetricName`):** These are not collected directly but are **calculated after the simulation ends**. They provide high-level statistical summaries (like mean, median, and percentiles) or rate calculations derived from the raw data collected by event-based metrics. They distill thousands of individual data points into a handful of key performance indicators (KPIs). + +The following sections provide a detailed breakdown of each metric within these categories. + +----- + +### **1. Sampled Metrics: A Time-Series Perspective** + +Sampled metrics are configured in the `SimulationSettings` payload. Enabling them allows you to plot the evolution of system resources over time, which is crucial for identifying saturation points and transient performance issues. + +| Metric Name (`SampledMetricName`) | Description & Rationale | +| :--- | :--- | +| **`READY_QUEUE_LEN`** | **What it is:** The number of tasks in the event loop's "ready" queue waiting for their turn to run on a CPU core. \\ **Rationale:** This is arguably the most critical indicator of **CPU saturation**. If this queue length is consistently greater than zero, it means tasks are ready to do work but are forced to wait because the CPU is busy. A long or growing queue is a definitive sign that your application is CPU-bound. | +| **`EVENT_LOOP_IO_SLEEP`** | **What it is:** The number of tasks currently suspended and waiting for an I/O operation to complete (e.g., a database query or a network call). \\ **Rationale:** This metric helps you determine if your system is **I/O-bound**. If this queue is long, it means the CPU is potentially underutilized because it has no ready tasks to run and is instead waiting for external systems to respond. | +| **`RAM_IN_USE`** | **What it is:** The total amount of memory (in MB) currently allocated by all active requests within a server. \\ **Rationale:** Essential for **capacity planning and stability analysis**. This metric allows you to visualize your system's memory footprint under load. A steadily increasing `RAM_IN_USE` value that never returns to a baseline is the classic signature of a **memory leak**. | +| **`EDGE_CONCURRENT_CONNECTION`** | **What it is:** The number of requests currently in transit across a network edge. \\ **Rationale:** This metric helps visualize the load on your network links. A high number of concurrent connections can indicate that downstream services are slow to respond, causing requests to pile up. | + +----- + +### **2. Event-based Metrics: The Raw Data Foundation** + +The goal of event-based metrics is to collect the most fundamental data points with minimal overhead during the simulation. This raw data becomes the single source of truth for all post-simulation transactional analysis. + +| Metric Name (`EventMetricName`) | Description & Rationale | +| :--- | :--- | +| **`RQS_CLOCK`** | **What it is:** A collection of `(start_time, finish_time)` tuples, with one tuple recorded for every single request that is fully processed. \\ **Rationale:** This is the **most efficient and flexible way to capture transactional data**. Instead of storing separate lists for latencies and completion times, we store a single, cohesive data structure. This design choice is deliberate: this raw data is all that is needed to calculate both latency and throughput after the simulation, providing maximum flexibility for analysis. | +| **`LLM_COST`** | **What it is:** A collection of the estimated monetary cost (e.g., in USD) incurred by each individual call to an external Large Language Model (LLM) API. \\ **Rationale:** In modern AI-powered applications, API calls can be a major operational expense. This metric moves beyond technical performance to measure **financial performance**, allowing for cost optimization. | + +----- + +### **3. Aggregated Metrics: Post-Simulation Insights** + +These metrics are calculated by an analysis module after the simulation finishes, using the raw data from the event-based metrics. This approach provides flexibility and keeps the simulation core lean. + +| Metric Name (`AggregatedMetricName`) | Description & Rationale | +| :--- | :--- | +| **`THROUGHPUT_RPS`** | **What it is:** The number of requests successfully completed per second, calculated by aggregating the `finish_time` timestamps from the `RQS_CLOCK` data over a specific time window. \\ **Rationale:** This is a fundamental measure of **system performance and capacity**. Calculating it post-simulation is superior because the same raw data can be analyzed with different window sizes (e.g., per-second, per-minute) without re-running the simulation. | +| **`LATENCY_STATS`** | **What it is:** Statistical summaries (mean, median, standard deviation, p50, p95, p99) calculated from the `RQS_CLOCK` data by taking `finish_time - start_time` for each tuple. \\ **Rationale:** These statistics distill thousands of raw data points into key indicators. They tell you about the average user experience (`mean`/`p50`) and, more critically, the worst-case experience (`p95`/`p99`) needed to validate Service Level Objectives (SLOs). | +| **`LLM_STATS`** | **What it is:** Statistical summaries (total cost, average cost per request, etc.) calculated from the raw `LLM_COST` data. \\ **Rationale:** Provides high-level insights into the financial performance of AI-driven features, enabling strategic decisions on cost optimization. | \ No newline at end of file diff --git a/documentation/backend_documentation/requests_generator.md b/docs/fastsim-docs/requests_generator.md similarity index 100% rename from documentation/backend_documentation/requests_generator.md rename to docs/fastsim-docs/requests_generator.md diff --git a/documentation/backend_documentation/runtime_and_resources.md b/docs/fastsim-docs/runtime_and_resources.md similarity index 69% rename from documentation/backend_documentation/runtime_and_resources.md rename to docs/fastsim-docs/runtime_and_resources.md index 6c84bd2..763e0a9 100644 --- a/documentation/backend_documentation/runtime_and_resources.md +++ b/docs/fastsim-docs/runtime_and_resources.md @@ -176,19 +176,42 @@ An `EdgeRuntime` is a direct analog for a **physical or virtual network link**. ----- -### **5.3 `ServerRuntime` — The Workhorse 📦** +### **5.3  `ServerRuntime` — The Workhorse 📦 (2025 edition)** -`ServerRuntime` models an application server that owns finite CPU/RAM resources and executes a chain of steps for every incoming request. -With the 2025 refactor it now uses a **dispatcher / handler** pattern: the dispatcher sits in an infinite loop, and each request is handled in its own SimPy subprocess. This enables many concurrent in-flight requests while keeping the code easy to reason about. +`ServerRuntime` emulates an application server that owns **finite CPU / RAM containers** and executes an ordered chain of **Step** objects for every incoming request. +The 2025 refactor keeps the classic **dispatcher / handler** pattern, adds **live metric counters** (ready‑queue length, I/O‑queue length, RAM‑in‑use) and implements the **lazy‑CPU lock** algorithm described earlier. -| `__init__` parameter | Meaning | -| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`env`** | The shared `simpy.Environment`. Every timeout and resource operation is scheduled here. | -| **`server_resources`** | A `ServerContainers` mapping (`{"CPU": Container, "RAM": Container}`) created by `ResourcesRuntime`. The containers are **pre-filled** (`level == capacity`) so the server can immediately pull tokens. | -| **`server_config`** | The validated Pydantic `Server` model: server-wide ID, resource spec, and a list of `Endpoint` objects (each endpoint is an ordered list of `Step`s). | -| **`out_edge`** | The `EdgeRuntime` (or stub) that receives the `RequestState` once processing finishes. | -| **`server_box`** | A `simpy.Store` acting as the server’s inbox. Up-stream actors drop `RequestState`s here. | -| **`rng`** | Instance of `numpy.random.Generator`; defaults to `default_rng()`. Used to pick a random endpoint. | +| `__init__` parameter | Meaning | +| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`env`** | Shared `simpy.Environment`. Every timeout or resource operation is scheduled here. | +| **`server_resources`** | A `ServerContainers` mapping `{"CPU": Container, "RAM": Container}` created by `ResourcesRuntime`. Containers start **full** so a server can immediately pull tokens. | +| **`server_config`** | Validated Pydantic `Server` model: ID, resource spec, list `endpoints: list[Endpoint]`. | +| **`out_edge`** | `EdgeRuntime` (or stub) that receives the `RequestState` once processing finishes. | +| **`server_box`** | `simpy.Store` acting as the server’s inbox. Up‑stream actors drop `RequestState`s here. | +| **`rng`** | `numpy.random.Generator`; defaults to `default_rng()`. Used to pick a random endpoint. | + +--- + +#### **Live metric fields** + +| Field | Unit | Updated when… | Used for… | +| --------------------- | -------- | ------------------------------------------------ | ------------------------------------------------------------------------ | +| `_el_ready_queue_len` | requests | a CPU step acquires / releases a core | **Ready queue length** (how many coroutines wait for the GIL / a worker) | +| `_el_io_queue_len` | requests | an I/O step enters / leaves the socket wait list | **I/O queue length** (awaits in progress) | +| `_ram_in_use` | MB | RAM `get` / `put` | Instant **RAM usage** per server | + +Accessor properties expose them read‑only: + +```python +@property +def ready_queue_len(self) -> int: return self._el_ready_queue_len + +@property +def io_queue_len(self) -> int: return self._el_io_queue_len + +@property +def ram_in_use(self) -> int: return self._ram_in_use +``` --- @@ -211,56 +234,111 @@ Registers the **dispatcher** coroutine in the environment and returns the create │ ▼ RAM get → CPU/IO steps → RAM put → out_edge.transport() + ▲ │ + │ └── metric counters updated here + └── lazy CPU lock (get once, put on first I/O) ``` 1. **Dispatcher loop** - ```python - while True: - raw_state = yield self.server_box.get() # blocks until a request arrives - state = cast(RequestState, raw_state) - self.env.process(self._handle_request(state)) # fire-and-forget - ``` - - *Spawning a new process per request mimics worker thread concurrency.* +```python +while True: + raw_state = yield self.server_box.get() # blocks until a request arrives + state = cast(RequestState, raw_state) + self.env.process(self._handle_request(state)) # fire‑and‑forget +``` 2. **Handler coroutine (`_handle_request`)** - | Stage | Implementation detail | - | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | - | **Record arrival** | `state.record_hop(SystemNodes.SERVER, self.server_config.id, env.now)` – leaves a breadcrumb for tracing. | - | **Endpoint selection** | Uniform random index `rng.integers(0, len(endpoints))`. (Hook point for custom routing later.) | - | **Reserve RAM (back-pressure)** | Compute `total_ram` (sum of all `StepOperation.NECESSARY_RAM`). `yield RAM.get(total_ram)`. If not enough RAM is free, the coroutine blocks, creating natural memory pressure. | - | **Execute steps in order** | | - | – CPU-bound step | `yield CPU.get(1)` → `yield env.timeout(cpu_time)` → `yield CPU.put(1)` – exactly one core is busy for the duration. | - | – I/O-bound step | `yield env.timeout(io_wait)` – no core is held, modelling non-blocking I/O. | - | **Release RAM** | `yield RAM.put(total_ram)`. | - | **Forward** | `out_edge.transport(state)` – hands the request to the next hop without waiting for network latency. | +| Stage | Implementation detail | +| ------------------------------- | ----------------------------------------------------------------------------------------- | +| **Record arrival** | `state.record_hop(SystemNodes.SERVER, self.server_config.id, env.now)` | +| **Endpoint selection** | Uniform random index `rng.integers(0, len(endpoints))` (plug‑in point for custom routing) | +| **Reserve RAM (back‑pressure)** | compute `total_ram` → `yield RAM.get(total_ram)` → `_ram_in_use += total_ram` | +| **Execute steps** | handled in a loop with *lazy CPU lock* and metric updates (see edge‑case notes below) | +| **Release RAM** | `_ram_in_use -= total_ram` → `yield RAM.put(total_ram)` | +| **Forward** | `out_edge.transport(state)` — send to next hop without awaiting latency | + +--- + +#### **CPU / I‑O loop details** + +* **Lazy‑CPU lock** – first CPU step acquires one core; all following contiguous CPU steps reuse it. +* **Release on I/O** – on the first I/O step the core is released; it remains free until the next CPU step. +* **Metric updates** – counters are modified only on the **state transition** (CPU→I/O, I/O→CPU) so there is never double‑counting. + +```python +if isinstance(step.kind, EndpointStepCPU): + if not core_locked: + yield CPU.get(1) + core_locked = True + self._el_ready_queue_len += 1 # entered ready queue + if is_in_io_queue: + self._el_io_queue_len -= 1 + is_in_io_queue = False + yield env.timeout(cpu_time) + +elif isinstance(step.kind, EndpointStepIO): + if core_locked: + yield CPU.put(1) + core_locked = False + self._el_ready_queue_len -= 1 + if not is_in_io_queue: + self._el_io_queue_len += 1 + is_in_io_queue = True + yield env.timeout(io_time) +``` + +**Handler epilogue** + +```python +# at exit, remove ourselves from whichever queue we are in +if core_locked: # we are still in ready queue + self._el_ready_queue_len -= 1 + yield CPU.put(1) +elif is_in_io_queue: # finished while awaiting I/O + self._el_io_queue_len -= 1 +``` + +> This guarantees both queues always balance back to 0 after the last request completes. --- #### **Concurrency Guarantees** -* **CPU contention** – because CPU is a token bucket (`simpy.Container`) the maximum number of concurrent CPU-bound steps equals `cpu_cores`. -* **RAM contention** – large requests can stall entirely until enough RAM frees up, accurately modelling out-of-memory throttling. -* **Non-blocking I/O** – while a handler waits on an I/O step it releases the core, allowing other handlers to run; this mirrors an async framework where the event loop can service other sockets. +* **CPU contention** – the `CPU` container is a token bucket; max concurrent CPU‑bound steps = `cpu_cores`. +* **RAM contention** – requests block at `RAM.get()` until memory is free (models cgroup / OOM throttling). +* **Non‑blocking I/O** – while in `env.timeout(io_wait)` no core token is held, so other handlers can run; mirrors an async server where workers return to the event‑loop on each `await`. --- -#### **Real-World Analogy** +#### **Edge‑case handling (metrics)** -| Runtime concept | Real server analogue | -| ------------------------------------- | ------------------------------------------------------------------------------------------ | -| `server_box` | A web server’s accept queue. | -| `CPU.get(1)` | Obtaining one worker thread/process in Gunicorn, uWSGI, or a Node.js “JS thread”. | -| `env.timeout(io_wait)` without a core | An `await` on a database or HTTP call; the worker is idle while the OS handles the socket. | -| RAM token bucket | Process resident set or container memory limit; requests block when heap is exhausted. | +* **First‑step I/O** – counted only in I/O queue (`+1`), never touches ready queue. +* **Consecutive I/O steps** – second I/O sees `is_in_io_queue == True`, so no extra increment (no double count). +* **CPU → I/O → CPU** – +  – CPU step: `core_locked=True`, `+1` ready queue +  – I/O step: core released, `‑1` ready queue, `+1` I/O queue +  – next CPU: core reacquired, `‑1` I/O queue, `+1` ready queue +* **Endpoint finishes** – epilogue removes the request from whichever queue it still occupies, avoiding “ghost” entries. + +--- -Thus a **CPU-bound step** is a tight Python loop holding the GIL, while an **I/O-bound step** is `await cursor.execute(...)` that frees the event loop. +#### **Real‑World Analogy** + +| Runtime concept | Real server analogue | +| --------------------------------------- | --------------------------------------------------------------------------------------- | +| `server_box` | Web server accept queue (e.g., `accept()` backlog). | +| `CPU.get(1)` / `CPU.put(1)` | Claiming / releasing a worker thread or GIL slot (Gunicorn, uWSGI, Node.js event‑loop). | +| `env.timeout(io_wait)` (without a core) | `await redis.get()` – coroutine parked while the kernel handles the socket. | +| RAM token bucket | cgroup memory limit / container hard‑RSS; requests block when heap is exhausted. | + +Thus a **CPU‑bound step** models tight Python code holding the GIL, while an **I/O‑bound step** models an `await` that yields control back to the event loop, freeing the core. --- + ### **5.4. ClientRuntime: The Destination** This actor typically represents the end-user or system that initiated the request, serving as the final destination. diff --git a/documentation/backend_documentation/simulation_input.md b/docs/fastsim-docs/simulation_input.md similarity index 100% rename from documentation/backend_documentation/simulation_input.md rename to docs/fastsim-docs/simulation_input.md diff --git a/docs/fastsim-docs/time_series_metric_architecture.md b/docs/fastsim-docs/time_series_metric_architecture.md new file mode 100644 index 0000000..572ba71 --- /dev/null +++ b/docs/fastsim-docs/time_series_metric_architecture.md @@ -0,0 +1,91 @@ +## Time‑Series Metrics: Architectural Overview + +Collecting high‑frequency, time‑series metrics from a complex simulation requires an architecture that is **performant, maintainable, and extensible**. Our design meets those goals by keeping metric *declaration*, *state management,* and *data collection* in strictly separate layers. + +\### 1  Guiding Principles & Architecture + +1. **Minimal Hot‑Path Overhead** — every state update in the simulation core is `O(1)`. +2. **Single Source of Truth** — one “Registry” enumerates every metric that can exist. +3. **User‑Defined Extensibility** — advanced users can register custom metrics without touching the framework. +4. **Predictable Memory Footprint** — data structures are pre‑allocated once, never rebuilt at each sample tick. + +| Layer | Responsibility | Lifetime | +| ------------- | ---------------------------------------------------------------- | ---------------------- | +| **Registry** | Declare *which* metrics exist for each component type | Module import (once) | +| **Runtime** | Maintain the **current value** of each metric per component | Per component instance | +| **Collector** | Periodically read runtime values and append to time‑series lists | One per simulation run | + +--- + +\### 2  Case Study — Edge Metric Collection + +```mermaid +graph TD + subgraph Init + A(Registry: EDGE_METRICS) -- builds --> B{Metric Dict} + end + subgraph Loop + C[EdgeRuntime] -- inc/dec --> D(_concurrent_connections) + E[SampledMetricCollector] -->|every N ms| F{iterate} + F -->|read property| D + F -->|append| B + end + C -- owns --> B +``` + +#### Layer Walk‑through + +1. **Registry (`metrics/edge.py`)** + + ```python + EDGE_METRICS = (SampledMetricName.EDGE_CONCURRENT_CONNECTION,) + + def build_edge_metrics(enabled): + return {m: [] for m in EDGE_METRICS if m in enabled} + ``` + +2. **Runtime (`EdgeRuntime`)** + + * Updates the counter `_concurrent_connections` in `O(1)`. + * Holds the dict produced by `build_edge_metrics`. + * **New:** exposes read‑only properties so external modules never touch private fields directly. + + ```python + class EdgeRuntime: + @property + def concurrent_connections(self) -> int: + return self._concurrent_connections + + @property + def enabled_metrics(self) -> dict[SampledMetricName, list[float | int]]: + return self._edge_enabled_metrics + ``` + +3. **Collector (`SampledMetricCollector`)** + + ```python + while True: + yield env.timeout(sample_period_s) + for edge in self.edges: + key = SampledMetricName.EDGE_CONCURRENT_CONNECTION + # properties keep encapsulation intact + if key in edge.enabled_metrics: + edge.enabled_metrics[key].append(edge.concurrent_connections) + ``` + +--- + +\### 3  Why the `if key in …` Guard Still Matters + +Even with the new properties, the guard remains essential: + +* **Robustness** — prevents `KeyError` when a metric is disabled for a given edge. +* **Extensibility** — a user can add `EDGE_PACKET_LOSS` (or any custom metric) to a subset of edges; the collector automatically respects that configuration. + +This single `O(1)` check keeps the system plug‑and‑play while preserving full encapsulation: + +* Runtime internals stay protected behind properties. +* The collector never needs to know which metrics exist ahead of time. + +--- + diff --git a/documentation/fastsim_vision.md b/docs/fastsim_vision.md similarity index 100% rename from documentation/fastsim_vision.md rename to docs/fastsim_vision.md diff --git a/documentation/backend_documentation/metrics_to_measure.md b/documentation/backend_documentation/metrics_to_measure.md deleted file mode 100644 index 4de1a1a..0000000 --- a/documentation/backend_documentation/metrics_to_measure.md +++ /dev/null @@ -1,49 +0,0 @@ -### **FastSim — simulation's metrics** - -Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. FastSim provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. - -To achieve this, FastSim categorizes metrics into three distinct types based on their collection methodology: - -1. **Sampled Metrics (`SampledMetricName`):** These metrics provide a **time-series view** of the system's state. They are captured at fixed, regular intervals throughout the simulation's duration (e.g., every second). This methodology is ideal for understanding trends, observing oscillations, and measuring the continuous utilization of finite resources like CPU and RAM. Think of them as periodic snapshots of your system's health. - -2. **Event-based Metrics (`EventMetricName`):** These metrics are recorded **only when a specific event occurs**. Their collection is asynchronous and irregular, triggered by discrete happenings within the simulation, such as the completion of a request. This methodology is perfect for measuring the properties of individual transactions, such as end-to-end latency, where an average value is less important than understanding the full distribution of outcomes. - -3. **Aggregated Metrics (`AggregatedMetricName`):** These are not collected directly during the simulation but are **calculated after the simulation ends**. They provide high-level statistical summaries (like mean, median, and percentiles) derived from the raw data collected by Event-based metrics. They distill thousands of individual data points into a handful of key performance indicators (KPIs) that are easy to interpret. - -The following sections provide a detailed breakdown of each metric within these categories, explaining what they measure and the rationale for their importance. - ---- - -### **1. Sampled Metrics: A Time-Series Perspective** - -Sampled metrics are configured in the `SimulationSettings` payload. Enabling them allows you to plot the evolution of system resources over time, which is crucial for identifying saturation points and transient performance issues. - -| Metric Name (`SampledMetricName`) | Description & Rationale | -| :--- | :--- | -| **`READY_QUEUE_LEN`** | **What it is:** The number of tasks in the `asyncio` event loop's "ready" queue waiting for their turn to run on the CPU.

**Rationale:** This is arguably the most critical indicator of **CPU saturation**. In a single-threaded Python process, only one coroutine can run at a time (held by the GIL). If this queue length is consistently greater than zero, it means tasks are ready to do work but are forced to wait because the CPU is busy. A long or growing queue is a definitive sign that your application is CPU-bound and that the CPU is a primary bottleneck. | -| **`CORE_BUSY`** | **What it is:** The number of server CPU cores that are currently executing a task.

**Rationale:** This provides a direct measure of **CPU utilization**. When plotted over time, it shows how effectively you are using your provisioned processing power. If `CORE_BUSY` is consistently at its maximum value (equal to `server_resources.cpu_cores`), the system is CPU-saturated. Conversely, if it's consistently low while latency is high, the bottleneck is likely elsewhere (e.g., I/O). It perfectly complements `READY_QUEUE_LEN` to form a complete picture of CPU health. | -| **`EVENT_LOOP_IO_SLEEP`** | **What it is:** A measure indicating if the event loop is idle, polling for I/O operations to complete.

**Rationale:** This metric helps you determine if your system is **I/O-bound**. If the event loop spends a significant amount of time in this state, it means the CPU is underutilized because it has no ready tasks to run and is instead waiting for external systems (like databases, caches, or downstream APIs) to respond. High values for this metric coupled with low CPU utilization are a clear signal to investigate and optimize the performance of your I/O operations. | -| **`RAM_IN_USE`** | **What it is:** The total amount of memory (in MB) currently allocated by all active requests within a server.

**Rationale:** Essential for **capacity planning and stability analysis**. This metric allows you to visualize your system's memory footprint under load. You can identify which endpoints cause memory spikes and ensure your provisioned RAM is sufficient. A steadily increasing `RAM_IN_USE` value that never returns to a baseline is the classic signature of a **memory leak**, a critical bug this metric helps you detect. | -| **`THROUGHPUT_RPS`** | **What it is:** The number of requests successfully completed per second, calculated over the last sampling window.

**Rationale:** This is a fundamental measure of **system performance and capacity**. It answers the question: "How much work is my system actually doing?" Plotting throughput against user load or other resource metrics is key to understanding your system's scaling characteristics. A drop in throughput often correlates with a spike in latency or resource saturation, helping you pinpoint the exact moment a bottleneck began to affect performance. | - ---- - -### **2. Event-based Metrics: A Per-Transaction Perspective** - -Event-based metrics are also enabled in the `SimulationSettings` payload. They generate a collection of raw data points, one for each relevant event, which is ideal for statistical analysis of transactional performance. - -| Metric Name (`EventMetricName`) | Description & Rationale | -| :--- | :--- | -| **`RQS_LATENCY`** | **What it is:** The total end-to-end duration, in seconds, for a single request to be fully processed.

**Rationale:** This is the **primary user-facing performance metric**. Users directly experience latency. While a simple average can be useful, it often hides critical problems. By collecting the latency for *every single request*, FastSim allows for the calculation of statistical distributions and, most importantly, **tail-latency percentiles (p95, p99)**. These percentiles represent the worst-case experience for your users and are crucial for evaluating Service Level Objectives (SLOs) and ensuring a consistent user experience. | -| **`LLM_COST`** | **What it is:** The estimated monetary cost (e.g., in USD) incurred by a single call to an external Large Language Model (LLM) API during a request.

**Rationale:** In modern AI-powered applications, API calls to third-party services like LLMs can be a major operational expense. This metric moves beyond technical performance to measure **financial performance**. By tracking cost on a per-event basis, you can attribute expenses to specific endpoints or user behaviors, identify unnecessarily costly operations, and make informed decisions to optimize your application's cost-effectiveness. | - ---- - -### **3. Aggregated Metrics: High-Level Summaries** - -**Important:** Aggregated metrics are **not configured in the input payload**. They are automatically calculated by the FastSim engine at the end of a simulation run, based on the raw data collected from the enabled Event-based metrics. - -| Metric Name (`AggregatedMetricName`) | Description & Rationale | -| :--- | :--- | -| **`LATENCY_STATS`** | **What it is:** A statistical summary of the entire collection of `RQS_LATENCY` data points. This typically includes the mean, median (p50), standard deviation, and high-end percentiles (p95, p99, p99.9).

**Rationale:** This provides a comprehensive and easily digestible summary of your system's latency profile. While the raw data is essential, these summary statistics answer high-level questions quickly. The mean tells you the average experience, the median protects against outliers, and the p95/p99 values tell you the latency that 95% or 99% of your users will beat—a critical KPI for reliability and user satisfaction. | -| **`LLM_STATS`** | **What it is:** A statistical summary of the `LLM_COST` data points. This can include total cost over the simulation, average cost per request, and cost distribution.

**Rationale:** This gives you a bird's-eye view of the financial implications of your system's design. Instead of looking at individual transaction costs, `LLM_STATS` provides the bottom line: the total operational cost during the simulation period. This is invaluable for budgeting, forecasting, and validating the financial viability of new features. | \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index b959392..e657f54 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,24 +1,5 @@ # This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. -[[package]] -name = "alembic" -version = "1.16.2" -description = "A database migration tool for SQLAlchemy." -optional = false -python-versions = ">=3.9" -files = [ - {file = "alembic-1.16.2-py3-none-any.whl", hash = "sha256:5f42e9bd0afdbd1d5e3ad856c01754530367debdebf21ed6894e34af52b3bb03"}, - {file = "alembic-1.16.2.tar.gz", hash = "sha256:e53c38ff88dadb92eb22f8b150708367db731d58ad7e9d417c9168ab516cbed8"}, -] - -[package.dependencies] -Mako = "*" -SQLAlchemy = ">=1.4.0" -typing-extensions = ">=4.12" - -[package.extras] -tz = ["tzdata"] - [[package]] name = "annotated-types" version = "0.7.0" @@ -30,115 +11,6 @@ files = [ {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] -[[package]] -name = "anyio" -version = "4.9.0" -description = "High level compatibility layer for multiple asynchronous event loop implementations" -optional = false -python-versions = ">=3.9" -files = [ - {file = "anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c"}, - {file = "anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028"}, -] - -[package.dependencies] -idna = ">=2.8" -sniffio = ">=1.1" -typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""} - -[package.extras] -doc = ["Sphinx (>=8.2,<9.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"] -test = ["anyio[trio]", "blockbuster (>=1.5.23)", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21)"] -trio = ["trio (>=0.26.1)"] - -[[package]] -name = "asyncpg" -version = "0.30.0" -description = "An asyncio PostgreSQL driver" -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "asyncpg-0.30.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bfb4dd5ae0699bad2b233672c8fc5ccbd9ad24b89afded02341786887e37927e"}, - {file = "asyncpg-0.30.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dc1f62c792752a49f88b7e6f774c26077091b44caceb1983509edc18a2222ec0"}, - {file = "asyncpg-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3152fef2e265c9c24eec4ee3d22b4f4d2703d30614b0b6753e9ed4115c8a146f"}, - {file = "asyncpg-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7255812ac85099a0e1ffb81b10dc477b9973345793776b128a23e60148dd1af"}, - {file = "asyncpg-0.30.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:578445f09f45d1ad7abddbff2a3c7f7c291738fdae0abffbeb737d3fc3ab8b75"}, - {file = "asyncpg-0.30.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c42f6bb65a277ce4d93f3fba46b91a265631c8df7250592dd4f11f8b0152150f"}, - {file = "asyncpg-0.30.0-cp310-cp310-win32.whl", hash = "sha256:aa403147d3e07a267ada2ae34dfc9324e67ccc4cdca35261c8c22792ba2b10cf"}, - {file = "asyncpg-0.30.0-cp310-cp310-win_amd64.whl", hash = "sha256:fb622c94db4e13137c4c7f98834185049cc50ee01d8f657ef898b6407c7b9c50"}, - {file = "asyncpg-0.30.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5e0511ad3dec5f6b4f7a9e063591d407eee66b88c14e2ea636f187da1dcfff6a"}, - {file = "asyncpg-0.30.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:915aeb9f79316b43c3207363af12d0e6fd10776641a7de8a01212afd95bdf0ed"}, - {file = "asyncpg-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c198a00cce9506fcd0bf219a799f38ac7a237745e1d27f0e1f66d3707c84a5a"}, - {file = "asyncpg-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3326e6d7381799e9735ca2ec9fd7be4d5fef5dcbc3cb555d8a463d8460607956"}, - {file = "asyncpg-0.30.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:51da377487e249e35bd0859661f6ee2b81db11ad1f4fc036194bc9cb2ead5056"}, - {file = "asyncpg-0.30.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bc6d84136f9c4d24d358f3b02be4b6ba358abd09f80737d1ac7c444f36108454"}, - {file = "asyncpg-0.30.0-cp311-cp311-win32.whl", hash = "sha256:574156480df14f64c2d76450a3f3aaaf26105869cad3865041156b38459e935d"}, - {file = "asyncpg-0.30.0-cp311-cp311-win_amd64.whl", hash = "sha256:3356637f0bd830407b5597317b3cb3571387ae52ddc3bca6233682be88bbbc1f"}, - {file = "asyncpg-0.30.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c902a60b52e506d38d7e80e0dd5399f657220f24635fee368117b8b5fce1142e"}, - {file = "asyncpg-0.30.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:aca1548e43bbb9f0f627a04666fedaca23db0a31a84136ad1f868cb15deb6e3a"}, - {file = "asyncpg-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c2a2ef565400234a633da0eafdce27e843836256d40705d83ab7ec42074efb3"}, - {file = "asyncpg-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1292b84ee06ac8a2ad8e51c7475aa309245874b61333d97411aab835c4a2f737"}, - {file = "asyncpg-0.30.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0f5712350388d0cd0615caec629ad53c81e506b1abaaf8d14c93f54b35e3595a"}, - {file = "asyncpg-0.30.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:db9891e2d76e6f425746c5d2da01921e9a16b5a71a1c905b13f30e12a257c4af"}, - {file = "asyncpg-0.30.0-cp312-cp312-win32.whl", hash = "sha256:68d71a1be3d83d0570049cd1654a9bdfe506e794ecc98ad0873304a9f35e411e"}, - {file = "asyncpg-0.30.0-cp312-cp312-win_amd64.whl", hash = "sha256:9a0292c6af5c500523949155ec17b7fe01a00ace33b68a476d6b5059f9630305"}, - {file = "asyncpg-0.30.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:05b185ebb8083c8568ea8a40e896d5f7af4b8554b64d7719c0eaa1eb5a5c3a70"}, - {file = "asyncpg-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:c47806b1a8cbb0a0db896f4cd34d89942effe353a5035c62734ab13b9f938da3"}, - {file = "asyncpg-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b6fde867a74e8c76c71e2f64f80c64c0f3163e687f1763cfaf21633ec24ec33"}, - {file = "asyncpg-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46973045b567972128a27d40001124fbc821c87a6cade040cfcd4fa8a30bcdc4"}, - {file = "asyncpg-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9110df111cabc2ed81aad2f35394a00cadf4f2e0635603db6ebbd0fc896f46a4"}, - {file = "asyncpg-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:04ff0785ae7eed6cc138e73fc67b8e51d54ee7a3ce9b63666ce55a0bf095f7ba"}, - {file = "asyncpg-0.30.0-cp313-cp313-win32.whl", hash = "sha256:ae374585f51c2b444510cdf3595b97ece4f233fde739aa14b50e0d64e8a7a590"}, - {file = "asyncpg-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:f59b430b8e27557c3fb9869222559f7417ced18688375825f8f12302c34e915e"}, - {file = "asyncpg-0.30.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:29ff1fc8b5bf724273782ff8b4f57b0f8220a1b2324184846b39d1ab4122031d"}, - {file = "asyncpg-0.30.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:64e899bce0600871b55368b8483e5e3e7f1860c9482e7f12e0a771e747988168"}, - {file = "asyncpg-0.30.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b290f4726a887f75dcd1b3006f484252db37602313f806e9ffc4e5996cfe5cb"}, - {file = "asyncpg-0.30.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f86b0e2cd3f1249d6fe6fd6cfe0cd4538ba994e2d8249c0491925629b9104d0f"}, - {file = "asyncpg-0.30.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:393af4e3214c8fa4c7b86da6364384c0d1b3298d45803375572f415b6f673f38"}, - {file = "asyncpg-0.30.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:fd4406d09208d5b4a14db9a9dbb311b6d7aeeab57bded7ed2f8ea41aeef39b34"}, - {file = "asyncpg-0.30.0-cp38-cp38-win32.whl", hash = "sha256:0b448f0150e1c3b96cb0438a0d0aa4871f1472e58de14a3ec320dbb2798fb0d4"}, - {file = "asyncpg-0.30.0-cp38-cp38-win_amd64.whl", hash = "sha256:f23b836dd90bea21104f69547923a02b167d999ce053f3d502081acea2fba15b"}, - {file = "asyncpg-0.30.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6f4e83f067b35ab5e6371f8a4c93296e0439857b4569850b178a01385e82e9ad"}, - {file = "asyncpg-0.30.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5df69d55add4efcd25ea2a3b02025b669a285b767bfbf06e356d68dbce4234ff"}, - {file = "asyncpg-0.30.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3479a0d9a852c7c84e822c073622baca862d1217b10a02dd57ee4a7a081f708"}, - {file = "asyncpg-0.30.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26683d3b9a62836fad771a18ecf4659a30f348a561279d6227dab96182f46144"}, - {file = "asyncpg-0.30.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1b982daf2441a0ed314bd10817f1606f1c28b1136abd9e4f11335358c2c631cb"}, - {file = "asyncpg-0.30.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1c06a3a50d014b303e5f6fc1e5f95eb28d2cee89cf58384b700da621e5d5e547"}, - {file = "asyncpg-0.30.0-cp39-cp39-win32.whl", hash = "sha256:1b11a555a198b08f5c4baa8f8231c74a366d190755aa4f99aacec5970afe929a"}, - {file = "asyncpg-0.30.0-cp39-cp39-win_amd64.whl", hash = "sha256:8b684a3c858a83cd876f05958823b68e8d14ec01bb0c0d14a6704c5bf9711773"}, - {file = "asyncpg-0.30.0.tar.gz", hash = "sha256:c551e9928ab6707602f44811817f82ba3c446e018bfe1d3abecc8ba5f3eac851"}, -] - -[package.extras] -docs = ["Sphinx (>=8.1.3,<8.2.0)", "sphinx-rtd-theme (>=1.2.2)"] -gssauth = ["gssapi", "sspilib"] -test = ["distro (>=1.9.0,<1.10.0)", "flake8 (>=6.1,<7.0)", "flake8-pyi (>=24.1.0,<24.2.0)", "gssapi", "k5test", "mypy (>=1.8.0,<1.9.0)", "sspilib", "uvloop (>=0.15.3)"] - -[[package]] -name = "certifi" -version = "2025.6.15" -description = "Python package for providing Mozilla's CA Bundle." -optional = false -python-versions = ">=3.7" -files = [ - {file = "certifi-2025.6.15-py3-none-any.whl", hash = "sha256:2e0c7ce7cb5d8f8634ca55d2ba7e6ec2689a2fd6537d8dec1296a477a4910057"}, - {file = "certifi-2025.6.15.tar.gz", hash = "sha256:d747aa5a8b9bbbb1bb8c22bb13e22bd1f18e9796defa16bab421f7f7a317323b"}, -] - -[[package]] -name = "click" -version = "8.2.1" -description = "Composable command line interface toolkit" -optional = false -python-versions = ">=3.10" -files = [ - {file = "click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b"}, - {file = "click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202"}, -] - -[package.dependencies] -colorama = {version = "*", markers = "platform_system == \"Windows\""} - [[package]] name = "colorama" version = "0.4.6" @@ -152,78 +24,99 @@ files = [ [[package]] name = "coverage" -version = "7.9.2" +version = "7.10.1" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" files = [ - {file = "coverage-7.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:66283a192a14a3854b2e7f3418d7db05cdf411012ab7ff5db98ff3b181e1f912"}, - {file = "coverage-7.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4e01d138540ef34fcf35c1aa24d06c3de2a4cffa349e29a10056544f35cca15f"}, - {file = "coverage-7.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f22627c1fe2745ee98d3ab87679ca73a97e75ca75eb5faee48660d060875465f"}, - {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b1c2d8363247b46bd51f393f86c94096e64a1cf6906803fa8d5a9d03784bdbf"}, - {file = "coverage-7.9.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c10c882b114faf82dbd33e876d0cbd5e1d1ebc0d2a74ceef642c6152f3f4d547"}, - {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:de3c0378bdf7066c3988d66cd5232d161e933b87103b014ab1b0b4676098fa45"}, - {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:1e2f097eae0e5991e7623958a24ced3282676c93c013dde41399ff63e230fcf2"}, - {file = "coverage-7.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:28dc1f67e83a14e7079b6cea4d314bc8b24d1aed42d3582ff89c0295f09b181e"}, - {file = "coverage-7.9.2-cp310-cp310-win32.whl", hash = "sha256:bf7d773da6af9e10dbddacbf4e5cab13d06d0ed93561d44dae0188a42c65be7e"}, - {file = "coverage-7.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:0c0378ba787681ab1897f7c89b415bd56b0b2d9a47e5a3d8dc0ea55aac118d6c"}, - {file = "coverage-7.9.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a7a56a2964a9687b6aba5b5ced6971af308ef6f79a91043c05dd4ee3ebc3e9ba"}, - {file = "coverage-7.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:123d589f32c11d9be7fe2e66d823a236fe759b0096f5db3fb1b75b2fa414a4fa"}, - {file = "coverage-7.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:333b2e0ca576a7dbd66e85ab402e35c03b0b22f525eed82681c4b866e2e2653a"}, - {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:326802760da234baf9f2f85a39e4a4b5861b94f6c8d95251f699e4f73b1835dc"}, - {file = "coverage-7.9.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19e7be4cfec248df38ce40968c95d3952fbffd57b400d4b9bb580f28179556d2"}, - {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0b4a4cb73b9f2b891c1788711408ef9707666501ba23684387277ededab1097c"}, - {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:2c8937fa16c8c9fbbd9f118588756e7bcdc7e16a470766a9aef912dd3f117dbd"}, - {file = "coverage-7.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:42da2280c4d30c57a9b578bafd1d4494fa6c056d4c419d9689e66d775539be74"}, - {file = "coverage-7.9.2-cp311-cp311-win32.whl", hash = "sha256:14fa8d3da147f5fdf9d298cacc18791818f3f1a9f542c8958b80c228320e90c6"}, - {file = "coverage-7.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:549cab4892fc82004f9739963163fd3aac7a7b0df430669b75b86d293d2df2a7"}, - {file = "coverage-7.9.2-cp311-cp311-win_arm64.whl", hash = "sha256:c2667a2b913e307f06aa4e5677f01a9746cd08e4b35e14ebcde6420a9ebb4c62"}, - {file = "coverage-7.9.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:ae9eb07f1cfacd9cfe8eaee6f4ff4b8a289a668c39c165cd0c8548484920ffc0"}, - {file = "coverage-7.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9ce85551f9a1119f02adc46d3014b5ee3f765deac166acf20dbb851ceb79b6f3"}, - {file = "coverage-7.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8f6389ac977c5fb322e0e38885fbbf901743f79d47f50db706e7644dcdcb6e1"}, - {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff0d9eae8cdfcd58fe7893b88993723583a6ce4dfbfd9f29e001922544f95615"}, - {file = "coverage-7.9.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fae939811e14e53ed8a9818dad51d434a41ee09df9305663735f2e2d2d7d959b"}, - {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:31991156251ec202c798501e0a42bbdf2169dcb0f137b1f5c0f4267f3fc68ef9"}, - {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:d0d67963f9cbfc7c7f96d4ac74ed60ecbebd2ea6eeb51887af0f8dce205e545f"}, - {file = "coverage-7.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:49b752a2858b10580969ec6af6f090a9a440a64a301ac1528d7ca5f7ed497f4d"}, - {file = "coverage-7.9.2-cp312-cp312-win32.whl", hash = "sha256:88d7598b8ee130f32f8a43198ee02edd16d7f77692fa056cb779616bbea1b355"}, - {file = "coverage-7.9.2-cp312-cp312-win_amd64.whl", hash = "sha256:9dfb070f830739ee49d7c83e4941cc767e503e4394fdecb3b54bfdac1d7662c0"}, - {file = "coverage-7.9.2-cp312-cp312-win_arm64.whl", hash = "sha256:4e2c058aef613e79df00e86b6d42a641c877211384ce5bd07585ed7ba71ab31b"}, - {file = "coverage-7.9.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:985abe7f242e0d7bba228ab01070fde1d6c8fa12f142e43debe9ed1dde686038"}, - {file = "coverage-7.9.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82c3939264a76d44fde7f213924021ed31f55ef28111a19649fec90c0f109e6d"}, - {file = "coverage-7.9.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae5d563e970dbe04382f736ec214ef48103d1b875967c89d83c6e3f21706d5b3"}, - {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdd612e59baed2a93c8843c9a7cb902260f181370f1d772f4842987535071d14"}, - {file = "coverage-7.9.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:256ea87cb2a1ed992bcdfc349d8042dcea1b80436f4ddf6e246d6bee4b5d73b6"}, - {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f44ae036b63c8ea432f610534a2668b0c3aee810e7037ab9d8ff6883de480f5b"}, - {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:82d76ad87c932935417a19b10cfe7abb15fd3f923cfe47dbdaa74ef4e503752d"}, - {file = "coverage-7.9.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:619317bb86de4193debc712b9e59d5cffd91dc1d178627ab2a77b9870deb2868"}, - {file = "coverage-7.9.2-cp313-cp313-win32.whl", hash = "sha256:0a07757de9feb1dfafd16ab651e0f628fd7ce551604d1bf23e47e1ddca93f08a"}, - {file = "coverage-7.9.2-cp313-cp313-win_amd64.whl", hash = "sha256:115db3d1f4d3f35f5bb021e270edd85011934ff97c8797216b62f461dd69374b"}, - {file = "coverage-7.9.2-cp313-cp313-win_arm64.whl", hash = "sha256:48f82f889c80af8b2a7bb6e158d95a3fbec6a3453a1004d04e4f3b5945a02694"}, - {file = "coverage-7.9.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:55a28954545f9d2f96870b40f6c3386a59ba8ed50caf2d949676dac3ecab99f5"}, - {file = "coverage-7.9.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cdef6504637731a63c133bb2e6f0f0214e2748495ec15fe42d1e219d1b133f0b"}, - {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bcd5ebe66c7a97273d5d2ddd4ad0ed2e706b39630ed4b53e713d360626c3dbb3"}, - {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9303aed20872d7a3c9cb39c5d2b9bdbe44e3a9a1aecb52920f7e7495410dfab8"}, - {file = "coverage-7.9.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc18ea9e417a04d1920a9a76fe9ebd2f43ca505b81994598482f938d5c315f46"}, - {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6406cff19880aaaadc932152242523e892faff224da29e241ce2fca329866584"}, - {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2d0d4f6ecdf37fcc19c88fec3e2277d5dee740fb51ffdd69b9579b8c31e4232e"}, - {file = "coverage-7.9.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c33624f50cf8de418ab2b4d6ca9eda96dc45b2c4231336bac91454520e8d1fac"}, - {file = "coverage-7.9.2-cp313-cp313t-win32.whl", hash = "sha256:1df6b76e737c6a92210eebcb2390af59a141f9e9430210595251fbaf02d46926"}, - {file = "coverage-7.9.2-cp313-cp313t-win_amd64.whl", hash = "sha256:f5fd54310b92741ebe00d9c0d1d7b2b27463952c022da6d47c175d246a98d1bd"}, - {file = "coverage-7.9.2-cp313-cp313t-win_arm64.whl", hash = "sha256:c48c2375287108c887ee87d13b4070a381c6537d30e8487b24ec721bf2a781cb"}, - {file = "coverage-7.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ddc39510ac922a5c4c27849b739f875d3e1d9e590d1e7b64c98dadf037a16cce"}, - {file = "coverage-7.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a535c0c7364acd55229749c2b3e5eebf141865de3a8f697076a3291985f02d30"}, - {file = "coverage-7.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df0f9ef28e0f20c767ccdccfc5ae5f83a6f4a2fbdfbcbcc8487a8a78771168c8"}, - {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f3da12e0ccbcb348969221d29441ac714bbddc4d74e13923d3d5a7a0bebef7a"}, - {file = "coverage-7.9.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a17eaf46f56ae0f870f14a3cbc2e4632fe3771eab7f687eda1ee59b73d09fe4"}, - {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:669135a9d25df55d1ed56a11bf555f37c922cf08d80799d4f65d77d7d6123fcf"}, - {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:9d3a700304d01a627df9db4322dc082a0ce1e8fc74ac238e2af39ced4c083193"}, - {file = "coverage-7.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:71ae8b53855644a0b1579d4041304ddc9995c7b21c8a1f16753c4d8903b4dfed"}, - {file = "coverage-7.9.2-cp39-cp39-win32.whl", hash = "sha256:dd7a57b33b5cf27acb491e890720af45db05589a80c1ffc798462a765be6d4d7"}, - {file = "coverage-7.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:f65bb452e579d5540c8b37ec105dd54d8b9307b07bcaa186818c104ffda22441"}, - {file = "coverage-7.9.2-pp39.pp310.pp311-none-any.whl", hash = "sha256:8a1166db2fb62473285bcb092f586e081e92656c7dfa8e9f62b4d39d7e6b5050"}, - {file = "coverage-7.9.2-py3-none-any.whl", hash = "sha256:e425cd5b00f6fc0ed7cdbd766c70be8baab4b7839e4d4fe5fac48581dd968ea4"}, - {file = "coverage-7.9.2.tar.gz", hash = "sha256:997024fa51e3290264ffd7492ec97d0690293ccd2b45a6cd7d82d945a4a80c8b"}, + {file = "coverage-7.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1c86eb388bbd609d15560e7cc0eb936c102b6f43f31cf3e58b4fd9afe28e1372"}, + {file = "coverage-7.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b4ba0f488c1bdb6bd9ba81da50715a372119785458831c73428a8566253b86b"}, + {file = "coverage-7.10.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:083442ecf97d434f0cb3b3e3676584443182653da08b42e965326ba12d6b5f2a"}, + {file = "coverage-7.10.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:c1a40c486041006b135759f59189385da7c66d239bad897c994e18fd1d0c128f"}, + {file = "coverage-7.10.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3beb76e20b28046989300c4ea81bf690df84ee98ade4dc0bbbf774a28eb98440"}, + {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:bc265a7945e8d08da28999ad02b544963f813a00f3ed0a7a0ce4165fd77629f8"}, + {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:47c91f32ba4ac46f1e224a7ebf3f98b4b24335bad16137737fe71a5961a0665c"}, + {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1a108dd78ed185020f66f131c60078f3fae3f61646c28c8bb4edd3fa121fc7fc"}, + {file = "coverage-7.10.1-cp310-cp310-win32.whl", hash = "sha256:7092cc82382e634075cc0255b0b69cb7cada7c1f249070ace6a95cb0f13548ef"}, + {file = "coverage-7.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:ac0c5bba938879c2fc0bc6c1b47311b5ad1212a9dcb8b40fe2c8110239b7faed"}, + {file = "coverage-7.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b45e2f9d5b0b5c1977cb4feb5f594be60eb121106f8900348e29331f553a726f"}, + {file = "coverage-7.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a7a4d74cb0f5e3334f9aa26af7016ddb94fb4bfa11b4a573d8e98ecba8c34f1"}, + {file = "coverage-7.10.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:d4b0aab55ad60ead26159ff12b538c85fbab731a5e3411c642b46c3525863437"}, + {file = "coverage-7.10.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:dcc93488c9ebd229be6ee1f0d9aad90da97b33ad7e2912f5495804d78a3cd6b7"}, + {file = "coverage-7.10.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aa309df995d020f3438407081b51ff527171cca6772b33cf8f85344b8b4b8770"}, + {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cfb8b9d8855c8608f9747602a48ab525b1d320ecf0113994f6df23160af68262"}, + {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:320d86da829b012982b414c7cdda65f5d358d63f764e0e4e54b33097646f39a3"}, + {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dc60ddd483c556590da1d9482a4518292eec36dd0e1e8496966759a1f282bcd0"}, + {file = "coverage-7.10.1-cp311-cp311-win32.whl", hash = "sha256:4fcfe294f95b44e4754da5b58be750396f2b1caca8f9a0e78588e3ef85f8b8be"}, + {file = "coverage-7.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:efa23166da3fe2915f8ab452dde40319ac84dc357f635737174a08dbd912980c"}, + {file = "coverage-7.10.1-cp311-cp311-win_arm64.whl", hash = "sha256:d12b15a8c3759e2bb580ffa423ae54be4f184cf23beffcbd641f4fe6e1584293"}, + {file = "coverage-7.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6b7dc7f0a75a7eaa4584e5843c873c561b12602439d2351ee28c7478186c4da4"}, + {file = "coverage-7.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:607f82389f0ecafc565813aa201a5cade04f897603750028dd660fb01797265e"}, + {file = "coverage-7.10.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:f7da31a1ba31f1c1d4d5044b7c5813878adae1f3af8f4052d679cc493c7328f4"}, + {file = "coverage-7.10.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:51fe93f3fe4f5d8483d51072fddc65e717a175490804e1942c975a68e04bf97a"}, + {file = "coverage-7.10.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3e59d00830da411a1feef6ac828b90bbf74c9b6a8e87b8ca37964925bba76dbe"}, + {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:924563481c27941229cb4e16eefacc35da28563e80791b3ddc5597b062a5c386"}, + {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:ca79146ee421b259f8131f153102220b84d1a5e6fb9c8aed13b3badfd1796de6"}, + {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2b225a06d227f23f386fdc0eab471506d9e644be699424814acc7d114595495f"}, + {file = "coverage-7.10.1-cp312-cp312-win32.whl", hash = "sha256:5ba9a8770effec5baaaab1567be916c87d8eea0c9ad11253722d86874d885eca"}, + {file = "coverage-7.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:9eb245a8d8dd0ad73b4062135a251ec55086fbc2c42e0eb9725a9b553fba18a3"}, + {file = "coverage-7.10.1-cp312-cp312-win_arm64.whl", hash = "sha256:7718060dd4434cc719803a5e526838a5d66e4efa5dc46d2b25c21965a9c6fcc4"}, + {file = "coverage-7.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ebb08d0867c5a25dffa4823377292a0ffd7aaafb218b5d4e2e106378b1061e39"}, + {file = "coverage-7.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f32a95a83c2e17422f67af922a89422cd24c6fa94041f083dd0bb4f6057d0bc7"}, + {file = "coverage-7.10.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:c4c746d11c8aba4b9f58ca8bfc6fbfd0da4efe7960ae5540d1a1b13655ee8892"}, + {file = "coverage-7.10.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7f39edd52c23e5c7ed94e0e4bf088928029edf86ef10b95413e5ea670c5e92d7"}, + {file = "coverage-7.10.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ab6e19b684981d0cd968906e293d5628e89faacb27977c92f3600b201926b994"}, + {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5121d8cf0eacb16133501455d216bb5f99899ae2f52d394fe45d59229e6611d0"}, + {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:df1c742ca6f46a6f6cbcaef9ac694dc2cb1260d30a6a2f5c68c5f5bcfee1cfd7"}, + {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:40f9a38676f9c073bf4b9194707aa1eb97dca0e22cc3766d83879d72500132c7"}, + {file = "coverage-7.10.1-cp313-cp313-win32.whl", hash = "sha256:2348631f049e884839553b9974f0821d39241c6ffb01a418efce434f7eba0fe7"}, + {file = "coverage-7.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:4072b31361b0d6d23f750c524f694e1a417c1220a30d3ef02741eed28520c48e"}, + {file = "coverage-7.10.1-cp313-cp313-win_arm64.whl", hash = "sha256:3e31dfb8271937cab9425f19259b1b1d1f556790e98eb266009e7a61d337b6d4"}, + {file = "coverage-7.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1c4f679c6b573a5257af6012f167a45be4c749c9925fd44d5178fd641ad8bf72"}, + {file = "coverage-7.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:871ebe8143da284bd77b84a9136200bd638be253618765d21a1fce71006d94af"}, + {file = "coverage-7.10.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:998c4751dabf7d29b30594af416e4bf5091f11f92a8d88eb1512c7ba136d1ed7"}, + {file = "coverage-7.10.1-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:780f750a25e7749d0af6b3631759c2c14f45de209f3faaa2398312d1c7a22759"}, + {file = "coverage-7.10.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:590bdba9445df4763bdbebc928d8182f094c1f3947a8dc0fc82ef014dbdd8324"}, + {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b2df80cb6a2af86d300e70acb82e9b79dab2c1e6971e44b78dbfc1a1e736b53"}, + {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d6a558c2725bfb6337bf57c1cd366c13798bfd3bfc9e3dd1f4a6f6fc95a4605f"}, + {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e6150d167f32f2a54690e572e0a4c90296fb000a18e9b26ab81a6489e24e78dd"}, + {file = "coverage-7.10.1-cp313-cp313t-win32.whl", hash = "sha256:d946a0c067aa88be4a593aad1236493313bafaa27e2a2080bfe88db827972f3c"}, + {file = "coverage-7.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:e37c72eaccdd5ed1130c67a92ad38f5b2af66eeff7b0abe29534225db2ef7b18"}, + {file = "coverage-7.10.1-cp313-cp313t-win_arm64.whl", hash = "sha256:89ec0ffc215c590c732918c95cd02b55c7d0f569d76b90bb1a5e78aa340618e4"}, + {file = "coverage-7.10.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:166d89c57e877e93d8827dac32cedae6b0277ca684c6511497311249f35a280c"}, + {file = "coverage-7.10.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bed4a2341b33cd1a7d9ffc47df4a78ee61d3416d43b4adc9e18b7d266650b83e"}, + {file = "coverage-7.10.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ddca1e4f5f4c67980533df01430184c19b5359900e080248bbf4ed6789584d8b"}, + {file = "coverage-7.10.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:37b69226001d8b7de7126cad7366b0778d36777e4d788c66991455ba817c5b41"}, + {file = "coverage-7.10.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b2f22102197bcb1722691296f9e589f02b616f874e54a209284dd7b9294b0b7f"}, + {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1e0c768b0f9ac5839dac5cf88992a4bb459e488ee8a1f8489af4cb33b1af00f1"}, + {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:991196702d5e0b120a8fef2664e1b9c333a81d36d5f6bcf6b225c0cf8b0451a2"}, + {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae8e59e5f4fd85d6ad34c2bb9d74037b5b11be072b8b7e9986beb11f957573d4"}, + {file = "coverage-7.10.1-cp314-cp314-win32.whl", hash = "sha256:042125c89cf74a074984002e165d61fe0e31c7bd40ebb4bbebf07939b5924613"}, + {file = "coverage-7.10.1-cp314-cp314-win_amd64.whl", hash = "sha256:a22c3bfe09f7a530e2c94c87ff7af867259c91bef87ed2089cd69b783af7b84e"}, + {file = "coverage-7.10.1-cp314-cp314-win_arm64.whl", hash = "sha256:ee6be07af68d9c4fca4027c70cea0c31a0f1bc9cb464ff3c84a1f916bf82e652"}, + {file = "coverage-7.10.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d24fb3c0c8ff0d517c5ca5de7cf3994a4cd559cde0315201511dbfa7ab528894"}, + {file = "coverage-7.10.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1217a54cfd79be20512a67ca81c7da3f2163f51bbfd188aab91054df012154f5"}, + {file = "coverage-7.10.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:51f30da7a52c009667e02f125737229d7d8044ad84b79db454308033a7808ab2"}, + {file = "coverage-7.10.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ed3718c757c82d920f1c94089066225ca2ad7f00bb904cb72b1c39ebdd906ccb"}, + {file = "coverage-7.10.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cc452481e124a819ced0c25412ea2e144269ef2f2534b862d9f6a9dae4bda17b"}, + {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:9d6f494c307e5cb9b1e052ec1a471060f1dea092c8116e642e7a23e79d9388ea"}, + {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:fc0e46d86905ddd16b85991f1f4919028092b4e511689bbdaff0876bd8aab3dd"}, + {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:80b9ccd82e30038b61fc9a692a8dc4801504689651b281ed9109f10cc9fe8b4d"}, + {file = "coverage-7.10.1-cp314-cp314t-win32.whl", hash = "sha256:e58991a2b213417285ec866d3cd32db17a6a88061a985dbb7e8e8f13af429c47"}, + {file = "coverage-7.10.1-cp314-cp314t-win_amd64.whl", hash = "sha256:e88dd71e4ecbc49d9d57d064117462c43f40a21a1383507811cf834a4a620651"}, + {file = "coverage-7.10.1-cp314-cp314t-win_arm64.whl", hash = "sha256:1aadfb06a30c62c2eb82322171fe1f7c288c80ca4156d46af0ca039052814bab"}, + {file = "coverage-7.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:57b6e8789cbefdef0667e4a94f8ffa40f9402cee5fc3b8e4274c894737890145"}, + {file = "coverage-7.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:85b22a9cce00cb03156334da67eb86e29f22b5e93876d0dd6a98646bb8a74e53"}, + {file = "coverage-7.10.1-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:97b6983a2f9c76d345ca395e843a049390b39652984e4a3b45b2442fa733992d"}, + {file = "coverage-7.10.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ddf2a63b91399a1c2f88f40bc1705d5a7777e31c7e9eb27c602280f477b582ba"}, + {file = "coverage-7.10.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:47ab6dbbc31a14c5486420c2c1077fcae692097f673cf5be9ddbec8cdaa4cdbc"}, + {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:21eb7d8b45d3700e7c2936a736f732794c47615a20f739f4133d5230a6512a88"}, + {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:283005bb4d98ae33e45f2861cd2cde6a21878661c9ad49697f6951b358a0379b"}, + {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:fefe31d61d02a8b2c419700b1fade9784a43d726de26495f243b663cd9fe1513"}, + {file = "coverage-7.10.1-cp39-cp39-win32.whl", hash = "sha256:e8ab8e4c7ec7f8a55ac05b5b715a051d74eac62511c6d96d5bb79aaafa3b04cf"}, + {file = "coverage-7.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:c36baa0ecde742784aa76c2b816466d3ea888d5297fda0edbac1bf48fa94688a"}, + {file = "coverage-7.10.1-py3-none-any.whl", hash = "sha256:fa2a258aa6bf188eb9a8948f7102a83da7c430a0dce918dbd8b60ef8fcb772d7"}, + {file = "coverage-7.10.1.tar.gz", hash = "sha256:ae2b4856f29ddfe827106794f3589949a57da6f0d38ab01e24ec35107979ba57"}, ] [package.extras] @@ -264,225 +157,6 @@ files = [ dnspython = ">=2.0.0" idna = ">=2.0.0" -[[package]] -name = "fastapi" -version = "0.115.14" -description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" -optional = false -python-versions = ">=3.8" -files = [ - {file = "fastapi-0.115.14-py3-none-any.whl", hash = "sha256:6c0c8bf9420bd58f565e585036d971872472b4f7d3f6c73b698e10cffdefb3ca"}, - {file = "fastapi-0.115.14.tar.gz", hash = "sha256:b1de15cdc1c499a4da47914db35d0e4ef8f1ce62b624e94e0e5824421df99739"}, -] - -[package.dependencies] -pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" -starlette = ">=0.40.0,<0.47.0" -typing-extensions = ">=4.8.0" - -[package.extras] -all = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=3.1.5)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.18)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] -standard = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "jinja2 (>=3.1.5)", "python-multipart (>=0.0.18)", "uvicorn[standard] (>=0.12.0)"] - -[[package]] -name = "greenlet" -version = "3.2.3" -description = "Lightweight in-process concurrent programming" -optional = false -python-versions = ">=3.9" -files = [ - {file = "greenlet-3.2.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:1afd685acd5597349ee6d7a88a8bec83ce13c106ac78c196ee9dde7c04fe87be"}, - {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:761917cac215c61e9dc7324b2606107b3b292a8349bdebb31503ab4de3f559ac"}, - {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:a433dbc54e4a37e4fff90ef34f25a8c00aed99b06856f0119dcf09fbafa16392"}, - {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:72e77ed69312bab0434d7292316d5afd6896192ac4327d44f3d613ecb85b037c"}, - {file = "greenlet-3.2.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:68671180e3849b963649254a882cd544a3c75bfcd2c527346ad8bb53494444db"}, - {file = "greenlet-3.2.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:49c8cfb18fb419b3d08e011228ef8a25882397f3a859b9fe1436946140b6756b"}, - {file = "greenlet-3.2.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:efc6dc8a792243c31f2f5674b670b3a95d46fa1c6a912b8e310d6f542e7b0712"}, - {file = "greenlet-3.2.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:731e154aba8e757aedd0781d4b240f1225b075b4409f1bb83b05ff410582cf00"}, - {file = "greenlet-3.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:96c20252c2f792defe9a115d3287e14811036d51e78b3aaddbee23b69b216302"}, - {file = "greenlet-3.2.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:784ae58bba89fa1fa5733d170d42486580cab9decda3484779f4759345b29822"}, - {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0921ac4ea42a5315d3446120ad48f90c3a6b9bb93dd9b3cf4e4d84a66e42de83"}, - {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:d2971d93bb99e05f8c2c0c2f4aa9484a18d98c4c3bd3c62b65b7e6ae33dfcfaf"}, - {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:c667c0bf9d406b77a15c924ef3285e1e05250948001220368e039b6aa5b5034b"}, - {file = "greenlet-3.2.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:592c12fb1165be74592f5de0d70f82bc5ba552ac44800d632214b76089945147"}, - {file = "greenlet-3.2.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:29e184536ba333003540790ba29829ac14bb645514fbd7e32af331e8202a62a5"}, - {file = "greenlet-3.2.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:93c0bb79844a367782ec4f429d07589417052e621aa39a5ac1fb99c5aa308edc"}, - {file = "greenlet-3.2.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:751261fc5ad7b6705f5f76726567375bb2104a059454e0226e1eef6c756748ba"}, - {file = "greenlet-3.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:83a8761c75312361aa2b5b903b79da97f13f556164a7dd2d5448655425bd4c34"}, - {file = "greenlet-3.2.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:25ad29caed5783d4bd7a85c9251c651696164622494c00802a139c00d639242d"}, - {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:88cd97bf37fe24a6710ec6a3a7799f3f81d9cd33317dcf565ff9950c83f55e0b"}, - {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:baeedccca94880d2f5666b4fa16fc20ef50ba1ee353ee2d7092b383a243b0b0d"}, - {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:be52af4b6292baecfa0f397f3edb3c6092ce071b499dd6fe292c9ac9f2c8f264"}, - {file = "greenlet-3.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0cc73378150b8b78b0c9fe2ce56e166695e67478550769536a6742dca3651688"}, - {file = "greenlet-3.2.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:706d016a03e78df129f68c4c9b4c4f963f7d73534e48a24f5f5a7101ed13dbbb"}, - {file = "greenlet-3.2.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:419e60f80709510c343c57b4bb5a339d8767bf9aef9b8ce43f4f143240f88b7c"}, - {file = "greenlet-3.2.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:93d48533fade144203816783373f27a97e4193177ebaaf0fc396db19e5d61163"}, - {file = "greenlet-3.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:7454d37c740bb27bdeddfc3f358f26956a07d5220818ceb467a483197d84f849"}, - {file = "greenlet-3.2.3-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:500b8689aa9dd1ab26872a34084503aeddefcb438e2e7317b89b11eaea1901ad"}, - {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:a07d3472c2a93117af3b0136f246b2833fdc0b542d4a9799ae5f41c28323faef"}, - {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:8704b3768d2f51150626962f4b9a9e4a17d2e37c8a8d9867bbd9fa4eb938d3b3"}, - {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:5035d77a27b7c62db6cf41cf786cfe2242644a7a337a0e155c80960598baab95"}, - {file = "greenlet-3.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2d8aa5423cd4a396792f6d4580f88bdc6efcb9205891c9d40d20f6e670992efb"}, - {file = "greenlet-3.2.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2c724620a101f8170065d7dded3f962a2aea7a7dae133a009cada42847e04a7b"}, - {file = "greenlet-3.2.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:873abe55f134c48e1f2a6f53f7d1419192a3d1a4e873bace00499a4e45ea6af0"}, - {file = "greenlet-3.2.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:024571bbce5f2c1cfff08bf3fbaa43bbc7444f580ae13b0099e95d0e6e67ed36"}, - {file = "greenlet-3.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:5195fb1e75e592dd04ce79881c8a22becdfa3e6f500e7feb059b1e6fdd54d3e3"}, - {file = "greenlet-3.2.3-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:3d04332dddb10b4a211b68111dabaee2e1a073663d117dc10247b5b1642bac86"}, - {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8186162dffde068a465deab08fc72c767196895c39db26ab1c17c0b77a6d8b97"}, - {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f4bfbaa6096b1b7a200024784217defedf46a07c2eee1a498e94a1b5f8ec5728"}, - {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:ed6cfa9200484d234d8394c70f5492f144b20d4533f69262d530a1a082f6ee9a"}, - {file = "greenlet-3.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:02b0df6f63cd15012bed5401b47829cfd2e97052dc89da3cfaf2c779124eb892"}, - {file = "greenlet-3.2.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:86c2d68e87107c1792e2e8d5399acec2487a4e993ab76c792408e59394d52141"}, - {file = "greenlet-3.2.3-cp314-cp314-win_amd64.whl", hash = "sha256:8c47aae8fbbfcf82cc13327ae802ba13c9c36753b67e760023fd116bc124a62a"}, - {file = "greenlet-3.2.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:42efc522c0bd75ffa11a71e09cd8a399d83fafe36db250a87cf1dacfaa15dc64"}, - {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d760f9bdfe79bff803bad32b4d8ffb2c1d2ce906313fc10a83976ffb73d64ca7"}, - {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:8324319cbd7b35b97990090808fdc99c27fe5338f87db50514959f8059999805"}, - {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:8c37ef5b3787567d322331d5250e44e42b58c8c713859b8a04c6065f27efbf72"}, - {file = "greenlet-3.2.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ce539fb52fb774d0802175d37fcff5c723e2c7d249c65916257f0a940cee8904"}, - {file = "greenlet-3.2.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:003c930e0e074db83559edc8705f3a2d066d4aa8c2f198aff1e454946efd0f26"}, - {file = "greenlet-3.2.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7e70ea4384b81ef9e84192e8a77fb87573138aa5d4feee541d8014e452b434da"}, - {file = "greenlet-3.2.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:22eb5ba839c4b2156f18f76768233fe44b23a31decd9cc0d4cc8141c211fd1b4"}, - {file = "greenlet-3.2.3-cp39-cp39-win32.whl", hash = "sha256:4532f0d25df67f896d137431b13f4cdce89f7e3d4a96387a41290910df4d3a57"}, - {file = "greenlet-3.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:aaa7aae1e7f75eaa3ae400ad98f8644bb81e1dc6ba47ce8a93d3f17274e08322"}, - {file = "greenlet-3.2.3.tar.gz", hash = "sha256:8b0dd8ae4c0d6f5e54ee55ba935eeb3d735a9b58a8a1e5b5cbab64e01a39f365"}, -] - -[package.extras] -docs = ["Sphinx", "furo"] -test = ["objgraph", "psutil"] - -[[package]] -name = "gunicorn" -version = "23.0.0" -description = "WSGI HTTP Server for UNIX" -optional = false -python-versions = ">=3.7" -files = [ - {file = "gunicorn-23.0.0-py3-none-any.whl", hash = "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d"}, - {file = "gunicorn-23.0.0.tar.gz", hash = "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec"}, -] - -[package.dependencies] -packaging = "*" - -[package.extras] -eventlet = ["eventlet (>=0.24.1,!=0.36.0)"] -gevent = ["gevent (>=1.4.0)"] -setproctitle = ["setproctitle"] -testing = ["coverage", "eventlet", "gevent", "pytest", "pytest-cov"] -tornado = ["tornado (>=0.2)"] - -[[package]] -name = "h11" -version = "0.16.0" -description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -optional = false -python-versions = ">=3.8" -files = [ - {file = "h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86"}, - {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"}, -] - -[[package]] -name = "httpcore" -version = "1.0.9" -description = "A minimal low-level HTTP client." -optional = false -python-versions = ">=3.8" -files = [ - {file = "httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55"}, - {file = "httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8"}, -] - -[package.dependencies] -certifi = "*" -h11 = ">=0.16" - -[package.extras] -asyncio = ["anyio (>=4.0,<5.0)"] -http2 = ["h2 (>=3,<5)"] -socks = ["socksio (==1.*)"] -trio = ["trio (>=0.22.0,<1.0)"] - -[[package]] -name = "httptools" -version = "0.6.4" -description = "A collection of framework independent HTTP protocol utils." -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "httptools-0.6.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3c73ce323711a6ffb0d247dcd5a550b8babf0f757e86a52558fe5b86d6fefcc0"}, - {file = "httptools-0.6.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:345c288418f0944a6fe67be8e6afa9262b18c7626c3ef3c28adc5eabc06a68da"}, - {file = "httptools-0.6.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deee0e3343f98ee8047e9f4c5bc7cedbf69f5734454a94c38ee829fb2d5fa3c1"}, - {file = "httptools-0.6.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca80b7485c76f768a3bc83ea58373f8db7b015551117375e4918e2aa77ea9b50"}, - {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:90d96a385fa941283ebd231464045187a31ad932ebfa541be8edf5b3c2328959"}, - {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:59e724f8b332319e2875efd360e61ac07f33b492889284a3e05e6d13746876f4"}, - {file = "httptools-0.6.4-cp310-cp310-win_amd64.whl", hash = "sha256:c26f313951f6e26147833fc923f78f95604bbec812a43e5ee37f26dc9e5a686c"}, - {file = "httptools-0.6.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f47f8ed67cc0ff862b84a1189831d1d33c963fb3ce1ee0c65d3b0cbe7b711069"}, - {file = "httptools-0.6.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0614154d5454c21b6410fdf5262b4a3ddb0f53f1e1721cfd59d55f32138c578a"}, - {file = "httptools-0.6.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8787367fbdfccae38e35abf7641dafc5310310a5987b689f4c32cc8cc3ee975"}, - {file = "httptools-0.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40b0f7fe4fd38e6a507bdb751db0379df1e99120c65fbdc8ee6c1d044897a636"}, - {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:40a5ec98d3f49904b9fe36827dcf1aadfef3b89e2bd05b0e35e94f97c2b14721"}, - {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dacdd3d10ea1b4ca9df97a0a303cbacafc04b5cd375fa98732678151643d4988"}, - {file = "httptools-0.6.4-cp311-cp311-win_amd64.whl", hash = "sha256:288cd628406cc53f9a541cfaf06041b4c71d751856bab45e3702191f931ccd17"}, - {file = "httptools-0.6.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:df017d6c780287d5c80601dafa31f17bddb170232d85c066604d8558683711a2"}, - {file = "httptools-0.6.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:85071a1e8c2d051b507161f6c3e26155b5c790e4e28d7f236422dbacc2a9cc44"}, - {file = "httptools-0.6.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69422b7f458c5af875922cdb5bd586cc1f1033295aa9ff63ee196a87519ac8e1"}, - {file = "httptools-0.6.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16e603a3bff50db08cd578d54f07032ca1631450ceb972c2f834c2b860c28ea2"}, - {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec4f178901fa1834d4a060320d2f3abc5c9e39766953d038f1458cb885f47e81"}, - {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f9eb89ecf8b290f2e293325c646a211ff1c2493222798bb80a530c5e7502494f"}, - {file = "httptools-0.6.4-cp312-cp312-win_amd64.whl", hash = "sha256:db78cb9ca56b59b016e64b6031eda5653be0589dba2b1b43453f6e8b405a0970"}, - {file = "httptools-0.6.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ade273d7e767d5fae13fa637f4d53b6e961fb7fd93c7797562663f0171c26660"}, - {file = "httptools-0.6.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:856f4bc0478ae143bad54a4242fccb1f3f86a6e1be5548fecfd4102061b3a083"}, - {file = "httptools-0.6.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:322d20ea9cdd1fa98bd6a74b77e2ec5b818abdc3d36695ab402a0de8ef2865a3"}, - {file = "httptools-0.6.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4d87b29bd4486c0093fc64dea80231f7c7f7eb4dc70ae394d70a495ab8436071"}, - {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:342dd6946aa6bda4b8f18c734576106b8a31f2fe31492881a9a160ec84ff4bd5"}, - {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4b36913ba52008249223042dca46e69967985fb4051951f94357ea681e1f5dc0"}, - {file = "httptools-0.6.4-cp313-cp313-win_amd64.whl", hash = "sha256:28908df1b9bb8187393d5b5db91435ccc9c8e891657f9cbb42a2541b44c82fc8"}, - {file = "httptools-0.6.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:d3f0d369e7ffbe59c4b6116a44d6a8eb4783aae027f2c0b366cf0aa964185dba"}, - {file = "httptools-0.6.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:94978a49b8f4569ad607cd4946b759d90b285e39c0d4640c6b36ca7a3ddf2efc"}, - {file = "httptools-0.6.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40dc6a8e399e15ea525305a2ddba998b0af5caa2566bcd79dcbe8948181eeaff"}, - {file = "httptools-0.6.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab9ba8dcf59de5181f6be44a77458e45a578fc99c31510b8c65b7d5acc3cf490"}, - {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:fc411e1c0a7dcd2f902c7c48cf079947a7e65b5485dea9decb82b9105ca71a43"}, - {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:d54efd20338ac52ba31e7da78e4a72570cf729fac82bc31ff9199bedf1dc7440"}, - {file = "httptools-0.6.4-cp38-cp38-win_amd64.whl", hash = "sha256:df959752a0c2748a65ab5387d08287abf6779ae9165916fe053e68ae1fbdc47f"}, - {file = "httptools-0.6.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:85797e37e8eeaa5439d33e556662cc370e474445d5fab24dcadc65a8ffb04003"}, - {file = "httptools-0.6.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:db353d22843cf1028f43c3651581e4bb49374d85692a85f95f7b9a130e1b2cab"}, - {file = "httptools-0.6.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1ffd262a73d7c28424252381a5b854c19d9de5f56f075445d33919a637e3547"}, - {file = "httptools-0.6.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:703c346571fa50d2e9856a37d7cd9435a25e7fd15e236c397bf224afaa355fe9"}, - {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:aafe0f1918ed07b67c1e838f950b1c1fabc683030477e60b335649b8020e1076"}, - {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0e563e54979e97b6d13f1bbc05a96109923e76b901f786a5eae36e99c01237bd"}, - {file = "httptools-0.6.4-cp39-cp39-win_amd64.whl", hash = "sha256:b799de31416ecc589ad79dd85a0b2657a8fe39327944998dea368c1d4c9e55e6"}, - {file = "httptools-0.6.4.tar.gz", hash = "sha256:4e93eee4add6493b59a5c514da98c939b244fce4a0d8879cd3f466562f4b7d5c"}, -] - -[package.extras] -test = ["Cython (>=0.29.24)"] - -[[package]] -name = "httpx" -version = "0.28.1" -description = "The next generation HTTP client." -optional = false -python-versions = ">=3.8" -files = [ - {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, - {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, -] - -[package.dependencies] -anyio = "*" -certifi = "*" -httpcore = "==1.*" -idna = "*" - -[package.extras] -brotli = ["brotli", "brotlicffi"] -cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] -http2 = ["h2 (>=3,<5)"] -socks = ["socksio (==1.*)"] -zstd = ["zstandard (>=0.18.0)"] - [[package]] name = "idna" version = "3.10" @@ -508,134 +182,45 @@ files = [ {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"}, ] -[[package]] -name = "mako" -version = "1.3.10" -description = "A super-fast templating language that borrows the best ideas from the existing templating languages." -optional = false -python-versions = ">=3.8" -files = [ - {file = "mako-1.3.10-py3-none-any.whl", hash = "sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59"}, - {file = "mako-1.3.10.tar.gz", hash = "sha256:99579a6f39583fa7e5630a28c3c1f440e4e97a414b80372649c0ce338da2ea28"}, -] - -[package.dependencies] -MarkupSafe = ">=0.9.2" - -[package.extras] -babel = ["Babel"] -lingua = ["lingua"] -testing = ["pytest"] - -[[package]] -name = "markupsafe" -version = "3.0.2" -description = "Safely add untrusted strings to HTML/XML markup." -optional = false -python-versions = ">=3.9" -files = [ - {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, - {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, - {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, - {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, - {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, - {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, - {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, - {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, -] - [[package]] name = "mypy" -version = "1.16.1" +version = "1.17.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.9" files = [ - {file = "mypy-1.16.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b4f0fed1022a63c6fec38f28b7fc77fca47fd490445c69d0a66266c59dd0b88a"}, - {file = "mypy-1.16.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:86042bbf9f5a05ea000d3203cf87aa9d0ccf9a01f73f71c58979eb9249f46d72"}, - {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ea7469ee5902c95542bea7ee545f7006508c65c8c54b06dc2c92676ce526f3ea"}, - {file = "mypy-1.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:352025753ef6a83cb9e7f2427319bb7875d1fdda8439d1e23de12ab164179574"}, - {file = "mypy-1.16.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ff9fa5b16e4c1364eb89a4d16bcda9987f05d39604e1e6c35378a2987c1aac2d"}, - {file = "mypy-1.16.1-cp310-cp310-win_amd64.whl", hash = "sha256:1256688e284632382f8f3b9e2123df7d279f603c561f099758e66dd6ed4e8bd6"}, - {file = "mypy-1.16.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:472e4e4c100062488ec643f6162dd0d5208e33e2f34544e1fc931372e806c0cc"}, - {file = "mypy-1.16.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ea16e2a7d2714277e349e24d19a782a663a34ed60864006e8585db08f8ad1782"}, - {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:08e850ea22adc4d8a4014651575567b0318ede51e8e9fe7a68f25391af699507"}, - {file = "mypy-1.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:22d76a63a42619bfb90122889b903519149879ddbf2ba4251834727944c8baca"}, - {file = "mypy-1.16.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:2c7ce0662b6b9dc8f4ed86eb7a5d505ee3298c04b40ec13b30e572c0e5ae17c4"}, - {file = "mypy-1.16.1-cp311-cp311-win_amd64.whl", hash = "sha256:211287e98e05352a2e1d4e8759c5490925a7c784ddc84207f4714822f8cf99b6"}, - {file = "mypy-1.16.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:af4792433f09575d9eeca5c63d7d90ca4aeceda9d8355e136f80f8967639183d"}, - {file = "mypy-1.16.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:66df38405fd8466ce3517eda1f6640611a0b8e70895e2a9462d1d4323c5eb4b9"}, - {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:44e7acddb3c48bd2713994d098729494117803616e116032af192871aed80b79"}, - {file = "mypy-1.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0ab5eca37b50188163fa7c1b73c685ac66c4e9bdee4a85c9adac0e91d8895e15"}, - {file = "mypy-1.16.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dedb6229b2c9086247e21a83c309754b9058b438704ad2f6807f0d8227f6ebdd"}, - {file = "mypy-1.16.1-cp312-cp312-win_amd64.whl", hash = "sha256:1f0435cf920e287ff68af3d10a118a73f212deb2ce087619eb4e648116d1fe9b"}, - {file = "mypy-1.16.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ddc91eb318c8751c69ddb200a5937f1232ee8efb4e64e9f4bc475a33719de438"}, - {file = "mypy-1.16.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:87ff2c13d58bdc4bbe7dc0dedfe622c0f04e2cb2a492269f3b418df2de05c536"}, - {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a7cfb0fe29fe5a9841b7c8ee6dffb52382c45acdf68f032145b75620acfbd6f"}, - {file = "mypy-1.16.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:051e1677689c9d9578b9c7f4d206d763f9bbd95723cd1416fad50db49d52f359"}, - {file = "mypy-1.16.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d5d2309511cc56c021b4b4e462907c2b12f669b2dbeb68300110ec27723971be"}, - {file = "mypy-1.16.1-cp313-cp313-win_amd64.whl", hash = "sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee"}, - {file = "mypy-1.16.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7fc688329af6a287567f45cc1cefb9db662defeb14625213a5b7da6e692e2069"}, - {file = "mypy-1.16.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5e198ab3f55924c03ead626ff424cad1732d0d391478dfbf7bb97b34602395da"}, - {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:09aa4f91ada245f0a45dbc47e548fd94e0dd5a8433e0114917dc3b526912a30c"}, - {file = "mypy-1.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13c7cd5b1cb2909aa318a90fd1b7e31f17c50b242953e7dd58345b2a814f6383"}, - {file = "mypy-1.16.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:58e07fb958bc5d752a280da0e890c538f1515b79a65757bbdc54252ba82e0b40"}, - {file = "mypy-1.16.1-cp39-cp39-win_amd64.whl", hash = "sha256:f895078594d918f93337a505f8add9bd654d1a24962b4c6ed9390e12531eb31b"}, - {file = "mypy-1.16.1-py3-none-any.whl", hash = "sha256:5fc2ac4027d0ef28d6ba69a0343737a23c4d1b83672bf38d1fe237bdc0643b37"}, - {file = "mypy-1.16.1.tar.gz", hash = "sha256:6bd00a0a2094841c5e47e7374bb42b83d64c527a502e3334e1173a0c24437bab"}, + {file = "mypy-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8e08de6138043108b3b18f09d3f817a4783912e48828ab397ecf183135d84d6"}, + {file = "mypy-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce4a17920ec144647d448fc43725b5873548b1aae6c603225626747ededf582d"}, + {file = "mypy-1.17.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6ff25d151cc057fdddb1cb1881ef36e9c41fa2a5e78d8dd71bee6e4dcd2bc05b"}, + {file = "mypy-1.17.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93468cf29aa9a132bceb103bd8475f78cacde2b1b9a94fd978d50d4bdf616c9a"}, + {file = "mypy-1.17.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:98189382b310f16343151f65dd7e6867386d3e35f7878c45cfa11383d175d91f"}, + {file = "mypy-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:c004135a300ab06a045c1c0d8e3f10215e71d7b4f5bb9a42ab80236364429937"}, + {file = "mypy-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9d4fe5c72fd262d9c2c91c1117d16aac555e05f5beb2bae6a755274c6eec42be"}, + {file = "mypy-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96b196e5c16f41b4f7736840e8455958e832871990c7ba26bf58175e357ed61"}, + {file = "mypy-1.17.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:73a0ff2dd10337ceb521c080d4147755ee302dcde6e1a913babd59473904615f"}, + {file = "mypy-1.17.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:24cfcc1179c4447854e9e406d3af0f77736d631ec87d31c6281ecd5025df625d"}, + {file = "mypy-1.17.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3c56f180ff6430e6373db7a1d569317675b0a451caf5fef6ce4ab365f5f2f6c3"}, + {file = "mypy-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:eafaf8b9252734400f9b77df98b4eee3d2eecab16104680d51341c75702cad70"}, + {file = "mypy-1.17.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f986f1cab8dbec39ba6e0eaa42d4d3ac6686516a5d3dccd64be095db05ebc6bb"}, + {file = "mypy-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:51e455a54d199dd6e931cd7ea987d061c2afbaf0960f7f66deef47c90d1b304d"}, + {file = "mypy-1.17.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3204d773bab5ff4ebbd1f8efa11b498027cd57017c003ae970f310e5b96be8d8"}, + {file = "mypy-1.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1051df7ec0886fa246a530ae917c473491e9a0ba6938cfd0ec2abc1076495c3e"}, + {file = "mypy-1.17.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f773c6d14dcc108a5b141b4456b0871df638eb411a89cd1c0c001fc4a9d08fc8"}, + {file = "mypy-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:1619a485fd0e9c959b943c7b519ed26b712de3002d7de43154a489a2d0fd817d"}, + {file = "mypy-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2c41aa59211e49d717d92b3bb1238c06d387c9325d3122085113c79118bebb06"}, + {file = "mypy-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e69db1fb65b3114f98c753e3930a00514f5b68794ba80590eb02090d54a5d4a"}, + {file = "mypy-1.17.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03ba330b76710f83d6ac500053f7727270b6b8553b0423348ffb3af6f2f7b889"}, + {file = "mypy-1.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:037bc0f0b124ce46bfde955c647f3e395c6174476a968c0f22c95a8d2f589bba"}, + {file = "mypy-1.17.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c38876106cb6132259683632b287238858bd58de267d80defb6f418e9ee50658"}, + {file = "mypy-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:d30ba01c0f151998f367506fab31c2ac4527e6a7b2690107c7a7f9e3cb419a9c"}, + {file = "mypy-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:63e751f1b5ab51d6f3d219fe3a2fe4523eaa387d854ad06906c63883fde5b1ab"}, + {file = "mypy-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f7fb09d05e0f1c329a36dcd30e27564a3555717cde87301fae4fb542402ddfad"}, + {file = "mypy-1.17.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b72c34ce05ac3a1361ae2ebb50757fb6e3624032d91488d93544e9f82db0ed6c"}, + {file = "mypy-1.17.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:434ad499ad8dde8b2f6391ddfa982f41cb07ccda8e3c67781b1bfd4e5f9450a8"}, + {file = "mypy-1.17.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f105f61a5eff52e137fd73bee32958b2add9d9f0a856f17314018646af838e97"}, + {file = "mypy-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:ba06254a5a22729853209550d80f94e28690d5530c661f9416a68ac097b13fc4"}, + {file = "mypy-1.17.0-py3-none-any.whl", hash = "sha256:15d9d0018237ab058e5de3d8fce61b6fa72cc59cc78fd91f1b474bce12abf496"}, + {file = "mypy-1.17.0.tar.gz", hash = "sha256:e5d7ccc08ba089c06e2f5629c660388ef1fee708444f1dee0b9203fa031dee03"}, ] [package.dependencies] @@ -663,62 +248,85 @@ files = [ [[package]] name = "numpy" -version = "2.3.1" +version = "2.3.2" description = "Fundamental package for array computing in Python" optional = false python-versions = ">=3.11" files = [ - {file = "numpy-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6ea9e48336a402551f52cd8f593343699003d2353daa4b72ce8d34f66b722070"}, - {file = "numpy-2.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ccb7336eaf0e77c1635b232c141846493a588ec9ea777a7c24d7166bb8533ae"}, - {file = "numpy-2.3.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:0bb3a4a61e1d327e035275d2a993c96fa786e4913aa089843e6a2d9dd205c66a"}, - {file = "numpy-2.3.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:e344eb79dab01f1e838ebb67aab09965fb271d6da6b00adda26328ac27d4a66e"}, - {file = "numpy-2.3.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:467db865b392168ceb1ef1ffa6f5a86e62468c43e0cfb4ab6da667ede10e58db"}, - {file = "numpy-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:afed2ce4a84f6b0fc6c1ce734ff368cbf5a5e24e8954a338f3bdffa0718adffb"}, - {file = "numpy-2.3.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0025048b3c1557a20bc80d06fdeb8cc7fc193721484cca82b2cfa072fec71a93"}, - {file = "numpy-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a5ee121b60aa509679b682819c602579e1df14a5b07fe95671c8849aad8f2115"}, - {file = "numpy-2.3.1-cp311-cp311-win32.whl", hash = "sha256:a8b740f5579ae4585831b3cf0e3b0425c667274f82a484866d2adf9570539369"}, - {file = "numpy-2.3.1-cp311-cp311-win_amd64.whl", hash = "sha256:d4580adadc53311b163444f877e0789f1c8861e2698f6b2a4ca852fda154f3ff"}, - {file = "numpy-2.3.1-cp311-cp311-win_arm64.whl", hash = "sha256:ec0bdafa906f95adc9a0c6f26a4871fa753f25caaa0e032578a30457bff0af6a"}, - {file = "numpy-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2959d8f268f3d8ee402b04a9ec4bb7604555aeacf78b360dc4ec27f1d508177d"}, - {file = "numpy-2.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:762e0c0c6b56bdedfef9a8e1d4538556438288c4276901ea008ae44091954e29"}, - {file = "numpy-2.3.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:867ef172a0976aaa1f1d1b63cf2090de8b636a7674607d514505fb7276ab08fc"}, - {file = "numpy-2.3.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:4e602e1b8682c2b833af89ba641ad4176053aaa50f5cacda1a27004352dde943"}, - {file = "numpy-2.3.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:8e333040d069eba1652fb08962ec5b76af7f2c7bce1df7e1418c8055cf776f25"}, - {file = "numpy-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:e7cbf5a5eafd8d230a3ce356d892512185230e4781a361229bd902ff403bc660"}, - {file = "numpy-2.3.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5f1b8f26d1086835f442286c1d9b64bb3974b0b1e41bb105358fd07d20872952"}, - {file = "numpy-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ee8340cb48c9b7a5899d1149eece41ca535513a9698098edbade2a8e7a84da77"}, - {file = "numpy-2.3.1-cp312-cp312-win32.whl", hash = "sha256:e772dda20a6002ef7061713dc1e2585bc1b534e7909b2030b5a46dae8ff077ab"}, - {file = "numpy-2.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:cfecc7822543abdea6de08758091da655ea2210b8ffa1faf116b940693d3df76"}, - {file = "numpy-2.3.1-cp312-cp312-win_arm64.whl", hash = "sha256:7be91b2239af2658653c5bb6f1b8bccafaf08226a258caf78ce44710a0160d30"}, - {file = "numpy-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:25a1992b0a3fdcdaec9f552ef10d8103186f5397ab45e2d25f8ac51b1a6b97e8"}, - {file = "numpy-2.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7dea630156d39b02a63c18f508f85010230409db5b2927ba59c8ba4ab3e8272e"}, - {file = "numpy-2.3.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:bada6058dd886061f10ea15f230ccf7dfff40572e99fef440a4a857c8728c9c0"}, - {file = "numpy-2.3.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:a894f3816eb17b29e4783e5873f92faf55b710c2519e5c351767c51f79d8526d"}, - {file = "numpy-2.3.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:18703df6c4a4fee55fd3d6e5a253d01c5d33a295409b03fda0c86b3ca2ff41a1"}, - {file = "numpy-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5902660491bd7a48b2ec16c23ccb9124b8abfd9583c5fdfa123fe6b421e03de1"}, - {file = "numpy-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:36890eb9e9d2081137bd78d29050ba63b8dab95dff7912eadf1185e80074b2a0"}, - {file = "numpy-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a780033466159c2270531e2b8ac063704592a0bc62ec4a1b991c7c40705eb0e8"}, - {file = "numpy-2.3.1-cp313-cp313-win32.whl", hash = "sha256:39bff12c076812595c3a306f22bfe49919c5513aa1e0e70fac756a0be7c2a2b8"}, - {file = "numpy-2.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:8d5ee6eec45f08ce507a6570e06f2f879b374a552087a4179ea7838edbcbfa42"}, - {file = "numpy-2.3.1-cp313-cp313-win_arm64.whl", hash = "sha256:0c4d9e0a8368db90f93bd192bfa771ace63137c3488d198ee21dfb8e7771916e"}, - {file = "numpy-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:b0b5397374f32ec0649dd98c652a1798192042e715df918c20672c62fb52d4b8"}, - {file = "numpy-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c5bdf2015ccfcee8253fb8be695516ac4457c743473a43290fd36eba6a1777eb"}, - {file = "numpy-2.3.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:d70f20df7f08b90a2062c1f07737dd340adccf2068d0f1b9b3d56e2038979fee"}, - {file = "numpy-2.3.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:2fb86b7e58f9ac50e1e9dd1290154107e47d1eef23a0ae9145ded06ea606f992"}, - {file = "numpy-2.3.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:23ab05b2d241f76cb883ce8b9a93a680752fbfcbd51c50eff0b88b979e471d8c"}, - {file = "numpy-2.3.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ce2ce9e5de4703a673e705183f64fd5da5bf36e7beddcb63a25ee2286e71ca48"}, - {file = "numpy-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c4913079974eeb5c16ccfd2b1f09354b8fed7e0d6f2cab933104a09a6419b1ee"}, - {file = "numpy-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:010ce9b4f00d5c036053ca684c77441f2f2c934fd23bee058b4d6f196efd8280"}, - {file = "numpy-2.3.1-cp313-cp313t-win32.whl", hash = "sha256:6269b9edfe32912584ec496d91b00b6d34282ca1d07eb10e82dfc780907d6c2e"}, - {file = "numpy-2.3.1-cp313-cp313t-win_amd64.whl", hash = "sha256:2a809637460e88a113e186e87f228d74ae2852a2e0c44de275263376f17b5bdc"}, - {file = "numpy-2.3.1-cp313-cp313t-win_arm64.whl", hash = "sha256:eccb9a159db9aed60800187bc47a6d3451553f0e1b08b068d8b277ddfbb9b244"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:ad506d4b09e684394c42c966ec1527f6ebc25da7f4da4b1b056606ffe446b8a3"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_arm64.whl", hash = "sha256:ebb8603d45bc86bbd5edb0d63e52c5fd9e7945d3a503b77e486bd88dde67a19b"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_x86_64.whl", hash = "sha256:15aa4c392ac396e2ad3d0a2680c0f0dee420f9fed14eef09bdb9450ee6dcb7b7"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c6e0bf9d1a2f50d2b65a7cf56db37c095af17b59f6c132396f7c6d5dd76484df"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:eabd7e8740d494ce2b4ea0ff05afa1b7b291e978c0ae075487c51e8bd93c0c68"}, - {file = "numpy-2.3.1-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:e610832418a2bc09d974cc9fecebfa51e9532d6190223bc5ef6a7402ebf3b5cb"}, - {file = "numpy-2.3.1.tar.gz", hash = "sha256:1ec9ae20a4226da374362cca3c62cd753faf2f951440b0e3b98e93c235441d2b"}, + {file = "numpy-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:852ae5bed3478b92f093e30f785c98e0cb62fa0a939ed057c31716e18a7a22b9"}, + {file = "numpy-2.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7a0e27186e781a69959d0230dd9909b5e26024f8da10683bd6344baea1885168"}, + {file = "numpy-2.3.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:f0a1a8476ad77a228e41619af2fa9505cf69df928e9aaa165746584ea17fed2b"}, + {file = "numpy-2.3.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:cbc95b3813920145032412f7e33d12080f11dc776262df1712e1638207dde9e8"}, + {file = "numpy-2.3.2-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f75018be4980a7324edc5930fe39aa391d5734531b1926968605416ff58c332d"}, + {file = "numpy-2.3.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:20b8200721840f5621b7bd03f8dcd78de33ec522fc40dc2641aa09537df010c3"}, + {file = "numpy-2.3.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1f91e5c028504660d606340a084db4b216567ded1056ea2b4be4f9d10b67197f"}, + {file = "numpy-2.3.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:fb1752a3bb9a3ad2d6b090b88a9a0ae1cd6f004ef95f75825e2f382c183b2097"}, + {file = "numpy-2.3.2-cp311-cp311-win32.whl", hash = "sha256:4ae6863868aaee2f57503c7a5052b3a2807cf7a3914475e637a0ecd366ced220"}, + {file = "numpy-2.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:240259d6564f1c65424bcd10f435145a7644a65a6811cfc3201c4a429ba79170"}, + {file = "numpy-2.3.2-cp311-cp311-win_arm64.whl", hash = "sha256:4209f874d45f921bde2cff1ffcd8a3695f545ad2ffbef6d3d3c6768162efab89"}, + {file = "numpy-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bc3186bea41fae9d8e90c2b4fb5f0a1f5a690682da79b92574d63f56b529080b"}, + {file = "numpy-2.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2f4f0215edb189048a3c03bd5b19345bdfa7b45a7a6f72ae5945d2a28272727f"}, + {file = "numpy-2.3.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:8b1224a734cd509f70816455c3cffe13a4f599b1bf7130f913ba0e2c0b2006c0"}, + {file = "numpy-2.3.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:3dcf02866b977a38ba3ec10215220609ab9667378a9e2150615673f3ffd6c73b"}, + {file = "numpy-2.3.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:572d5512df5470f50ada8d1972c5f1082d9a0b7aa5944db8084077570cf98370"}, + {file = "numpy-2.3.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8145dd6d10df13c559d1e4314df29695613575183fa2e2d11fac4c208c8a1f73"}, + {file = "numpy-2.3.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:103ea7063fa624af04a791c39f97070bf93b96d7af7eb23530cd087dc8dbe9dc"}, + {file = "numpy-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:fc927d7f289d14f5e037be917539620603294454130b6de200091e23d27dc9be"}, + {file = "numpy-2.3.2-cp312-cp312-win32.whl", hash = "sha256:d95f59afe7f808c103be692175008bab926b59309ade3e6d25009e9a171f7036"}, + {file = "numpy-2.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:9e196ade2400c0c737d93465327d1ae7c06c7cb8a1756121ebf54b06ca183c7f"}, + {file = "numpy-2.3.2-cp312-cp312-win_arm64.whl", hash = "sha256:ee807923782faaf60d0d7331f5e86da7d5e3079e28b291973c545476c2b00d07"}, + {file = "numpy-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c8d9727f5316a256425892b043736d63e89ed15bbfe6556c5ff4d9d4448ff3b3"}, + {file = "numpy-2.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:efc81393f25f14d11c9d161e46e6ee348637c0a1e8a54bf9dedc472a3fae993b"}, + {file = "numpy-2.3.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:dd937f088a2df683cbb79dda9a772b62a3e5a8a7e76690612c2737f38c6ef1b6"}, + {file = "numpy-2.3.2-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:11e58218c0c46c80509186e460d79fbdc9ca1eb8d8aee39d8f2dc768eb781089"}, + {file = "numpy-2.3.2-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5ad4ebcb683a1f99f4f392cc522ee20a18b2bb12a2c1c42c3d48d5a1adc9d3d2"}, + {file = "numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:938065908d1d869c7d75d8ec45f735a034771c6ea07088867f713d1cd3bbbe4f"}, + {file = "numpy-2.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:66459dccc65d8ec98cc7df61307b64bf9e08101f9598755d42d8ae65d9a7a6ee"}, + {file = "numpy-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a7af9ed2aa9ec5950daf05bb11abc4076a108bd3c7db9aa7251d5f107079b6a6"}, + {file = "numpy-2.3.2-cp313-cp313-win32.whl", hash = "sha256:906a30249315f9c8e17b085cc5f87d3f369b35fedd0051d4a84686967bdbbd0b"}, + {file = "numpy-2.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:c63d95dc9d67b676e9108fe0d2182987ccb0f11933c1e8959f42fa0da8d4fa56"}, + {file = "numpy-2.3.2-cp313-cp313-win_arm64.whl", hash = "sha256:b05a89f2fb84d21235f93de47129dd4f11c16f64c87c33f5e284e6a3a54e43f2"}, + {file = "numpy-2.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4e6ecfeddfa83b02318f4d84acf15fbdbf9ded18e46989a15a8b6995dfbf85ab"}, + {file = "numpy-2.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:508b0eada3eded10a3b55725b40806a4b855961040180028f52580c4729916a2"}, + {file = "numpy-2.3.2-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:754d6755d9a7588bdc6ac47dc4ee97867271b17cee39cb87aef079574366db0a"}, + {file = "numpy-2.3.2-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:a9f66e7d2b2d7712410d3bc5684149040ef5f19856f20277cd17ea83e5006286"}, + {file = "numpy-2.3.2-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:de6ea4e5a65d5a90c7d286ddff2b87f3f4ad61faa3db8dabe936b34c2275b6f8"}, + {file = "numpy-2.3.2-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a3ef07ec8cbc8fc9e369c8dcd52019510c12da4de81367d8b20bc692aa07573a"}, + {file = "numpy-2.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:27c9f90e7481275c7800dc9c24b7cc40ace3fdb970ae4d21eaff983a32f70c91"}, + {file = "numpy-2.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:07b62978075b67eee4065b166d000d457c82a1efe726cce608b9db9dd66a73a5"}, + {file = "numpy-2.3.2-cp313-cp313t-win32.whl", hash = "sha256:c771cfac34a4f2c0de8e8c97312d07d64fd8f8ed45bc9f5726a7e947270152b5"}, + {file = "numpy-2.3.2-cp313-cp313t-win_amd64.whl", hash = "sha256:72dbebb2dcc8305c431b2836bcc66af967df91be793d63a24e3d9b741374c450"}, + {file = "numpy-2.3.2-cp313-cp313t-win_arm64.whl", hash = "sha256:72c6df2267e926a6d5286b0a6d556ebe49eae261062059317837fda12ddf0c1a"}, + {file = "numpy-2.3.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:448a66d052d0cf14ce9865d159bfc403282c9bc7bb2a31b03cc18b651eca8b1a"}, + {file = "numpy-2.3.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:546aaf78e81b4081b2eba1d105c3b34064783027a06b3ab20b6eba21fb64132b"}, + {file = "numpy-2.3.2-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:87c930d52f45df092f7578889711a0768094debf73cfcde105e2d66954358125"}, + {file = "numpy-2.3.2-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:8dc082ea901a62edb8f59713c6a7e28a85daddcb67454c839de57656478f5b19"}, + {file = "numpy-2.3.2-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:af58de8745f7fa9ca1c0c7c943616c6fe28e75d0c81f5c295810e3c83b5be92f"}, + {file = "numpy-2.3.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed5527c4cf10f16c6d0b6bee1f89958bccb0ad2522c8cadc2efd318bcd545f5"}, + {file = "numpy-2.3.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:095737ed986e00393ec18ec0b21b47c22889ae4b0cd2d5e88342e08b01141f58"}, + {file = "numpy-2.3.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b5e40e80299607f597e1a8a247ff8d71d79c5b52baa11cc1cce30aa92d2da6e0"}, + {file = "numpy-2.3.2-cp314-cp314-win32.whl", hash = "sha256:7d6e390423cc1f76e1b8108c9b6889d20a7a1f59d9a60cac4a050fa734d6c1e2"}, + {file = "numpy-2.3.2-cp314-cp314-win_amd64.whl", hash = "sha256:b9d0878b21e3918d76d2209c924ebb272340da1fb51abc00f986c258cd5e957b"}, + {file = "numpy-2.3.2-cp314-cp314-win_arm64.whl", hash = "sha256:2738534837c6a1d0c39340a190177d7d66fdf432894f469728da901f8f6dc910"}, + {file = "numpy-2.3.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:4d002ecf7c9b53240be3bb69d80f86ddbd34078bae04d87be81c1f58466f264e"}, + {file = "numpy-2.3.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:293b2192c6bcce487dbc6326de5853787f870aeb6c43f8f9c6496db5b1781e45"}, + {file = "numpy-2.3.2-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:0a4f2021a6da53a0d580d6ef5db29947025ae8b35b3250141805ea9a32bbe86b"}, + {file = "numpy-2.3.2-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:9c144440db4bf3bb6372d2c3e49834cc0ff7bb4c24975ab33e01199e645416f2"}, + {file = "numpy-2.3.2-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f92d6c2a8535dc4fe4419562294ff957f83a16ebdec66df0805e473ffaad8bd0"}, + {file = "numpy-2.3.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cefc2219baa48e468e3db7e706305fcd0c095534a192a08f31e98d83a7d45fb0"}, + {file = "numpy-2.3.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:76c3e9501ceb50b2ff3824c3589d5d1ab4ac857b0ee3f8f49629d0de55ecf7c2"}, + {file = "numpy-2.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:122bf5ed9a0221b3419672493878ba4967121514b1d7d4656a7580cd11dddcbf"}, + {file = "numpy-2.3.2-cp314-cp314t-win32.whl", hash = "sha256:6f1ae3dcb840edccc45af496f312528c15b1f79ac318169d094e85e4bb35fdf1"}, + {file = "numpy-2.3.2-cp314-cp314t-win_amd64.whl", hash = "sha256:087ffc25890d89a43536f75c5fe8770922008758e8eeeef61733957041ed2f9b"}, + {file = "numpy-2.3.2-cp314-cp314t-win_arm64.whl", hash = "sha256:092aeb3449833ea9c0bf0089d70c29ae480685dd2377ec9cdbbb620257f84631"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:14a91ebac98813a49bc6aa1a0dfc09513dcec1d97eaf31ca21a87221a1cdcb15"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:71669b5daae692189540cffc4c439468d35a3f84f0c88b078ecd94337f6cb0ec"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-macosx_14_0_arm64.whl", hash = "sha256:69779198d9caee6e547adb933941ed7520f896fd9656834c300bdf4dd8642712"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-macosx_14_0_x86_64.whl", hash = "sha256:2c3271cc4097beb5a60f010bcc1cc204b300bb3eafb4399376418a83a1c6373c"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8446acd11fe3dc1830568c941d44449fd5cb83068e5c70bd5a470d323d448296"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:aa098a5ab53fa407fded5870865c6275a5cd4101cfdef8d6fafc48286a96e981"}, + {file = "numpy-2.3.2-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:6936aff90dda378c09bea075af0d9c675fe3a977a9d2402f95a87f440f59f619"}, + {file = "numpy-2.3.2.tar.gz", hash = "sha256:e0486a11ec30cdecb53f184d496d1c6a20786c81e55e41640270130056f8ee48"}, ] [[package]] @@ -758,104 +366,6 @@ files = [ dev = ["pre-commit", "tox"] testing = ["coverage", "pytest", "pytest-benchmark"] -[[package]] -name = "psycopg" -version = "3.2.9" -description = "PostgreSQL database adapter for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "psycopg-3.2.9-py3-none-any.whl", hash = "sha256:01a8dadccdaac2123c916208c96e06631641c0566b22005493f09663c7a8d3b6"}, - {file = "psycopg-3.2.9.tar.gz", hash = "sha256:2fbb46fcd17bc81f993f28c47f1ebea38d66ae97cc2dbc3cad73b37cefbff700"}, -] - -[package.dependencies] -psycopg-binary = {version = "3.2.9", optional = true, markers = "implementation_name != \"pypy\" and extra == \"binary\""} -typing-extensions = {version = ">=4.6", markers = "python_version < \"3.13\""} -tzdata = {version = "*", markers = "sys_platform == \"win32\""} - -[package.extras] -binary = ["psycopg-binary (==3.2.9)"] -c = ["psycopg-c (==3.2.9)"] -dev = ["ast-comments (>=1.1.2)", "black (>=24.1.0)", "codespell (>=2.2)", "dnspython (>=2.1)", "flake8 (>=4.0)", "isort-psycopg", "isort[colors] (>=6.0)", "mypy (>=1.14)", "pre-commit (>=4.0.1)", "types-setuptools (>=57.4)", "types-shapely (>=2.0)", "wheel (>=0.37)"] -docs = ["Sphinx (>=5.0)", "furo (==2022.6.21)", "sphinx-autobuild (>=2021.3.14)", "sphinx-autodoc-typehints (>=1.12)"] -pool = ["psycopg-pool"] -test = ["anyio (>=4.0)", "mypy (>=1.14)", "pproxy (>=2.7)", "pytest (>=6.2.5)", "pytest-cov (>=3.0)", "pytest-randomly (>=3.5)"] - -[[package]] -name = "psycopg-binary" -version = "3.2.9" -description = "PostgreSQL database adapter for Python -- C optimisation distribution" -optional = false -python-versions = ">=3.8" -files = [ - {file = "psycopg_binary-3.2.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:528239bbf55728ba0eacbd20632342867590273a9bacedac7538ebff890f1093"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e4978c01ca4c208c9d6376bd585e2c0771986b76ff7ea518f6d2b51faece75e8"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ed2bab85b505d13e66a914d0f8cdfa9475c16d3491cf81394e0748b77729af2"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:799fa1179ab8a58d1557a95df28b492874c8f4135101b55133ec9c55fc9ae9d7"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bb37ac3955d19e4996c3534abfa4f23181333974963826db9e0f00731274b695"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:001e986656f7e06c273dd4104e27f4b4e0614092e544d950c7c938d822b1a894"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:fa5c80d8b4cbf23f338db88a7251cef8bb4b68e0f91cf8b6ddfa93884fdbb0c1"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:39a127e0cf9b55bd4734a8008adf3e01d1fd1cb36339c6a9e2b2cbb6007c50ee"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fb7599e436b586e265bea956751453ad32eb98be6a6e694252f4691c31b16edb"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:5d2c9fe14fe42b3575a0b4e09b081713e83b762c8dc38a3771dd3265f8f110e7"}, - {file = "psycopg_binary-3.2.9-cp310-cp310-win_amd64.whl", hash = "sha256:7e4660fad2807612bb200de7262c88773c3483e85d981324b3c647176e41fdc8"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2504e9fd94eabe545d20cddcc2ff0da86ee55d76329e1ab92ecfcc6c0a8156c4"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:093a0c079dd6228a7f3c3d82b906b41964eaa062a9a8c19f45ab4984bf4e872b"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:387c87b51d72442708e7a853e7e7642717e704d59571da2f3b29e748be58c78a"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d9ac10a2ebe93a102a326415b330fff7512f01a9401406896e78a81d75d6eddc"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:72fdbda5b4c2a6a72320857ef503a6589f56d46821592d4377c8c8604810342b"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f34e88940833d46108f949fdc1fcfb74d6b5ae076550cd67ab59ef47555dba95"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a3e0f89fe35cb03ff1646ab663dabf496477bab2a072315192dbaa6928862891"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:6afb3e62f2a3456f2180a4eef6b03177788df7ce938036ff7f09b696d418d186"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:cc19ed5c7afca3f6b298bfc35a6baa27adb2019670d15c32d0bb8f780f7d560d"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bc75f63653ce4ec764c8f8c8b0ad9423e23021e1c34a84eb5f4ecac8538a4a4a"}, - {file = "psycopg_binary-3.2.9-cp311-cp311-win_amd64.whl", hash = "sha256:3db3ba3c470801e94836ad78bf11fd5fab22e71b0c77343a1ee95d693879937a"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:be7d650a434921a6b1ebe3fff324dbc2364393eb29d7672e638ce3e21076974e"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6a76b4722a529390683c0304501f238b365a46b1e5fb6b7249dbc0ad6fea51a0"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:96a551e4683f1c307cfc3d9a05fec62c00a7264f320c9962a67a543e3ce0d8ff"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:61d0a6ceed8f08c75a395bc28cb648a81cf8dee75ba4650093ad1a24a51c8724"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad280bbd409bf598683dda82232f5215cfc5f2b1bf0854e409b4d0c44a113b1d"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76eddaf7fef1d0994e3d536ad48aa75034663d3a07f6f7e3e601105ae73aeff6"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:52e239cd66c4158e412318fbe028cd94b0ef21b0707f56dcb4bdc250ee58fd40"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:08bf9d5eabba160dd4f6ad247cf12f229cc19d2458511cab2eb9647f42fa6795"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1b2cf018168cad87580e67bdde38ff5e51511112f1ce6ce9a8336871f465c19a"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:14f64d1ac6942ff089fc7e926440f7a5ced062e2ed0949d7d2d680dc5c00e2d4"}, - {file = "psycopg_binary-3.2.9-cp312-cp312-win_amd64.whl", hash = "sha256:7a838852e5afb6b4126f93eb409516a8c02a49b788f4df8b6469a40c2157fa21"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:98bbe35b5ad24a782c7bf267596638d78aa0e87abc7837bdac5b2a2ab954179e"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:72691a1615ebb42da8b636c5ca9f2b71f266be9e172f66209a361c175b7842c5"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25ab464bfba8c401f5536d5aa95f0ca1dd8257b5202eede04019b4415f491351"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e8aeefebe752f46e3c4b769e53f1d4ad71208fe1150975ef7662c22cca80fab"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7e4e4dd177a8665c9ce86bc9caae2ab3aa9360b7ce7ec01827ea1baea9ff748"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fc2915949e5c1ea27a851f7a472a7da7d0a40d679f0a31e42f1022f3c562e87"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a1fa38a4687b14f517f049477178093c39c2a10fdcced21116f47c017516498f"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:5be8292d07a3ab828dc95b5ee6b69ca0a5b2e579a577b39671f4f5b47116dfd2"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:778588ca9897b6c6bab39b0d3034efff4c5438f5e3bd52fda3914175498202f9"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f0d5b3af045a187aedbd7ed5fc513bd933a97aaff78e61c3745b330792c4345b"}, - {file = "psycopg_binary-3.2.9-cp313-cp313-win_amd64.whl", hash = "sha256:2290bc146a1b6a9730350f695e8b670e1d1feb8446597bed0bbe7c3c30e0abcb"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4df22ec17390ec5ccb38d211fb251d138d37a43344492858cea24de8efa15003"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eac3a6e926421e976c1c2653624e1294f162dc67ac55f9addbe8f7b8d08ce603"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cf789be42aea5752ee396d58de0538d5fcb76795c85fb03ab23620293fb81b6f"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0f05b9dafa5670a7503abc715af081dbbb176a8e6770de77bccaeb9024206c5"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2d7a6646d41228e9049978be1f3f838b557a1bde500b919906d54c4390f5086"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:a4d76e28df27ce25dc19583407f5c6c6c2ba33b443329331ab29b6ef94c8736d"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:418f52b77b715b42e8ec43ee61ca74abc6765a20db11e8576e7f6586488a266f"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:1f1736d5b21f69feefeef8a75e8d3bf1f0a1e17c165a7488c3111af9d6936e91"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:5918c0fab50df764812f3ca287f0d716c5c10bedde93d4da2cefc9d40d03f3aa"}, - {file = "psycopg_binary-3.2.9-cp38-cp38-win_amd64.whl", hash = "sha256:7b617b81f08ad8def5edd110de44fd6d326f969240cc940c6f6b3ef21fe9c59f"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:587a3f19954d687a14e0c8202628844db692dbf00bba0e6d006659bf1ca91cbe"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:791759138380df21d356ff991265fde7fe5997b0c924a502847a9f9141e68786"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95315b8c8ddfa2fdcb7fe3ddea8a595c1364524f512160c604e3be368be9dd07"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18ac08475c9b971237fcc395b0a6ee4e8580bb5cf6247bc9b8461644bef5d9f4"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac2c04b6345e215e65ca6aef5c05cc689a960b16674eaa1f90a8f86dfaee8c04"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c1ab25e3134774f1e476d4bb9050cdec25f10802e63e92153906ae934578734"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4bfec4a73e8447d8fe8854886ffa78df2b1c279a7592241c2eb393d4499a17e2"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:166acc57af5d2ff0c0c342aed02e69a0cd5ff216cae8820c1059a6f3b7cf5f78"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:413f9e46259fe26d99461af8e1a2b4795a4e27cc8ac6f7919ec19bcee8945074"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:354dea21137a316b6868ee41c2ae7cce001e104760cf4eab3ec85627aed9b6cd"}, - {file = "psycopg_binary-3.2.9-cp39-cp39-win_amd64.whl", hash = "sha256:24ddb03c1ccfe12d000d950c9aba93a7297993c4e3905d9f2c9795bb0764d523"}, -] - [[package]] name = "pydantic" version = "2.11.7" @@ -1049,13 +559,13 @@ dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests [[package]] name = "pytest-asyncio" -version = "1.0.0" +version = "1.1.0" description = "Pytest support for asyncio" optional = false python-versions = ">=3.9" files = [ - {file = "pytest_asyncio-1.0.0-py3-none-any.whl", hash = "sha256:4f024da9f1ef945e680dc68610b52550e36590a67fd31bb3b4943979a1f90ef3"}, - {file = "pytest_asyncio-1.0.0.tar.gz", hash = "sha256:d15463d13f4456e1ead2594520216b225a16f781e144f8fdf6c5bb4667c48b3f"}, + {file = "pytest_asyncio-1.1.0-py3-none-any.whl", hash = "sha256:5fe2d69607b0bd75c656d1211f969cadba035030156745ee09e7d71740e58ecf"}, + {file = "pytest_asyncio-1.1.0.tar.gz", hash = "sha256:796aa822981e01b68c12e4827b8697108f7205020f24b5793b3c41555dab68ea"}, ] [package.dependencies] @@ -1098,93 +608,31 @@ files = [ [package.extras] cli = ["click (>=5.0)"] -[[package]] -name = "pyyaml" -version = "6.0.2" -description = "YAML parser and emitter for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, - {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, - {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, - {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, - {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, - {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, - {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, - {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, - {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, - {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, - {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, - {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, - {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, - {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, - {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, - {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, - {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, - {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, - {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, - {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, - {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, - {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, - {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, - {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, - {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, - {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, - {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, - {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, - {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, - {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, - {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, - {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, - {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, - {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, - {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, - {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, - {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, - {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, - {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, - {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, - {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, - {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, - {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, - {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, - {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, - {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, - {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, - {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, - {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, - {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, - {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, - {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, - {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, -] - [[package]] name = "ruff" -version = "0.12.1" +version = "0.12.5" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.12.1-py3-none-linux_armv6l.whl", hash = "sha256:6013a46d865111e2edb71ad692fbb8262e6c172587a57c0669332a449384a36b"}, - {file = "ruff-0.12.1-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:b3f75a19e03a4b0757d1412edb7f27cffb0c700365e9d6b60bc1b68d35bc89e0"}, - {file = "ruff-0.12.1-py3-none-macosx_11_0_arm64.whl", hash = "sha256:9a256522893cb7e92bb1e1153283927f842dea2e48619c803243dccc8437b8be"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:069052605fe74c765a5b4272eb89880e0ff7a31e6c0dbf8767203c1fbd31c7ff"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a684f125a4fec2d5a6501a466be3841113ba6847827be4573fddf8308b83477d"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdecdef753bf1e95797593007569d8e1697a54fca843d78f6862f7dc279e23bd"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:70d52a058c0e7b88b602f575d23596e89bd7d8196437a4148381a3f73fcd5010"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84d0a69d1e8d716dfeab22d8d5e7c786b73f2106429a933cee51d7b09f861d4e"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6cc32e863adcf9e71690248607ccdf25252eeeab5193768e6873b901fd441fed"}, - {file = "ruff-0.12.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fd49a4619f90d5afc65cf42e07b6ae98bb454fd5029d03b306bd9e2273d44cc"}, - {file = "ruff-0.12.1-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:ed5af6aaaea20710e77698e2055b9ff9b3494891e1b24d26c07055459bb717e9"}, - {file = "ruff-0.12.1-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:801d626de15e6bf988fbe7ce59b303a914ff9c616d5866f8c79eb5012720ae13"}, - {file = "ruff-0.12.1-py3-none-musllinux_1_2_i686.whl", hash = "sha256:2be9d32a147f98a1972c1e4df9a6956d612ca5f5578536814372113d09a27a6c"}, - {file = "ruff-0.12.1-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:49b7ce354eed2a322fbaea80168c902de9504e6e174fd501e9447cad0232f9e6"}, - {file = "ruff-0.12.1-py3-none-win32.whl", hash = "sha256:d973fa626d4c8267848755bd0414211a456e99e125dcab147f24daa9e991a245"}, - {file = "ruff-0.12.1-py3-none-win_amd64.whl", hash = "sha256:9e1123b1c033f77bd2590e4c1fe7e8ea72ef990a85d2484351d408224d603013"}, - {file = "ruff-0.12.1-py3-none-win_arm64.whl", hash = "sha256:78ad09a022c64c13cc6077707f036bab0fac8cd7088772dcd1e5be21c5002efc"}, - {file = "ruff-0.12.1.tar.gz", hash = "sha256:806bbc17f1104fd57451a98a58df35388ee3ab422e029e8f5cf30aa4af2c138c"}, + {file = "ruff-0.12.5-py3-none-linux_armv6l.whl", hash = "sha256:1de2c887e9dec6cb31fcb9948299de5b2db38144e66403b9660c9548a67abd92"}, + {file = "ruff-0.12.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d1ab65e7d8152f519e7dea4de892317c9da7a108da1c56b6a3c1d5e7cf4c5e9a"}, + {file = "ruff-0.12.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:962775ed5b27c7aa3fdc0d8f4d4433deae7659ef99ea20f783d666e77338b8cf"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b4cae449597e7195a49eb1cdca89fd9fbb16140c7579899e87f4c85bf82f73"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b13489c3dc50de5e2d40110c0cce371e00186b880842e245186ca862bf9a1ac"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1504fea81461cf4841778b3ef0a078757602a3b3ea4b008feb1308cb3f23e08"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c7da4129016ae26c32dfcbd5b671fe652b5ab7fc40095d80dcff78175e7eddd4"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ca972c80f7ebcfd8af75a0f18b17c42d9f1ef203d163669150453f50ca98ab7b"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8dbbf9f25dfb501f4237ae7501d6364b76a01341c6f1b2cd6764fe449124bb2a"}, + {file = "ruff-0.12.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c47dea6ae39421851685141ba9734767f960113d51e83fd7bb9958d5be8763a"}, + {file = "ruff-0.12.5-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:c5076aa0e61e30f848846f0265c873c249d4b558105b221be1828f9f79903dc5"}, + {file = "ruff-0.12.5-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:a5a4c7830dadd3d8c39b1cc85386e2c1e62344f20766be6f173c22fb5f72f293"}, + {file = "ruff-0.12.5-py3-none-musllinux_1_2_i686.whl", hash = "sha256:46699f73c2b5b137b9dc0fc1a190b43e35b008b398c6066ea1350cce6326adcb"}, + {file = "ruff-0.12.5-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5a655a0a0d396f0f072faafc18ebd59adde8ca85fb848dc1b0d9f024b9c4d3bb"}, + {file = "ruff-0.12.5-py3-none-win32.whl", hash = "sha256:dfeb2627c459b0b78ca2bbdc38dd11cc9a0a88bf91db982058b26ce41714ffa9"}, + {file = "ruff-0.12.5-py3-none-win_amd64.whl", hash = "sha256:ae0d90cf5f49466c954991b9d8b953bd093c32c27608e409ae3564c63c5306a5"}, + {file = "ruff-0.12.5-py3-none-win_arm64.whl", hash = "sha256:48cdbfc633de2c5c37d9f090ba3b352d1576b0015bfc3bc98eaf230275b7e805"}, + {file = "ruff-0.12.5.tar.gz", hash = "sha256:b209db6102b66f13625940b7f8c7d0f18e20039bb7f6101fbdac935c9612057e"}, ] [[package]] @@ -1198,166 +646,15 @@ files = [ {file = "simpy-4.1.1.tar.gz", hash = "sha256:06d0750a7884b11e0e8e20ce0bc7c6d4ed5f1743d456695340d13fdff95001a6"}, ] -[[package]] -name = "sniffio" -version = "1.3.1" -description = "Sniff out which async library your code is running under" -optional = false -python-versions = ">=3.7" -files = [ - {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, - {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, -] - -[[package]] -name = "sqlalchemy" -version = "2.0.41" -description = "Database Abstraction Library" -optional = false -python-versions = ">=3.7" -files = [ - {file = "SQLAlchemy-2.0.41-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6854175807af57bdb6425e47adbce7d20a4d79bbfd6f6d6519cd10bb7109a7f8"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05132c906066142103b83d9c250b60508af556982a385d96c4eaa9fb9720ac2b"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b4af17bda11e907c51d10686eda89049f9ce5669b08fbe71a29747f1e876036"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:c0b0e5e1b5d9f3586601048dd68f392dc0cc99a59bb5faf18aab057ce00d00b2"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0b3dbf1e7e9bc95f4bac5e2fb6d3fb2f083254c3fdd20a1789af965caf2d2348"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-win32.whl", hash = "sha256:1e3f196a0c59b0cae9a0cd332eb1a4bda4696e863f4f1cf84ab0347992c548c2"}, - {file = "SQLAlchemy-2.0.41-cp37-cp37m-win_amd64.whl", hash = "sha256:6ab60a5089a8f02009f127806f777fca82581c49e127f08413a66056bd9166dd"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b1f09b6821406ea1f94053f346f28f8215e293344209129a9c0fcc3578598d7b"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1936af879e3db023601196a1684d28e12f19ccf93af01bf3280a3262c4b6b4e5"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b2ac41acfc8d965fb0c464eb8f44995770239668956dc4cdf502d1b1ffe0d747"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81c24e0c0fde47a9723c81d5806569cddef103aebbf79dbc9fcbb617153dea30"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:23a8825495d8b195c4aa9ff1c430c28f2c821e8c5e2d98089228af887e5d7e29"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:60c578c45c949f909a4026b7807044e7e564adf793537fc762b2489d522f3d11"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-win32.whl", hash = "sha256:118c16cd3f1b00c76d69343e38602006c9cfb9998fa4f798606d28d63f23beda"}, - {file = "sqlalchemy-2.0.41-cp310-cp310-win_amd64.whl", hash = "sha256:7492967c3386df69f80cf67efd665c0f667cee67032090fe01d7d74b0e19bb08"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6375cd674fe82d7aa9816d1cb96ec592bac1726c11e0cafbf40eeee9a4516b5f"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9f8c9fdd15a55d9465e590a402f42082705d66b05afc3ffd2d2eb3c6ba919560"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32f9dc8c44acdee06c8fc6440db9eae8b4af8b01e4b1aee7bdd7241c22edff4f"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90c11ceb9a1f482c752a71f203a81858625d8df5746d787a4786bca4ffdf71c6"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:911cc493ebd60de5f285bcae0491a60b4f2a9f0f5c270edd1c4dbaef7a38fc04"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03968a349db483936c249f4d9cd14ff2c296adfa1290b660ba6516f973139582"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-win32.whl", hash = "sha256:293cd444d82b18da48c9f71cd7005844dbbd06ca19be1ccf6779154439eec0b8"}, - {file = "sqlalchemy-2.0.41-cp311-cp311-win_amd64.whl", hash = "sha256:3d3549fc3e40667ec7199033a4e40a2f669898a00a7b18a931d3efb4c7900504"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:81f413674d85cfd0dfcd6512e10e0f33c19c21860342a4890c3a2b59479929f9"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:598d9ebc1e796431bbd068e41e4de4dc34312b7aa3292571bb3674a0cb415dd1"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a104c5694dfd2d864a6f91b0956eb5d5883234119cb40010115fd45a16da5e70"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6145afea51ff0af7f2564a05fa95eb46f542919e6523729663a5d285ecb3cf5e"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:b46fa6eae1cd1c20e6e6f44e19984d438b6b2d8616d21d783d150df714f44078"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41836fe661cc98abfae476e14ba1906220f92c4e528771a8a3ae6a151242d2ae"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-win32.whl", hash = "sha256:a8808d5cf866c781150d36a3c8eb3adccfa41a8105d031bf27e92c251e3969d6"}, - {file = "sqlalchemy-2.0.41-cp312-cp312-win_amd64.whl", hash = "sha256:5b14e97886199c1f52c14629c11d90c11fbb09e9334fa7bb5f6d068d9ced0ce0"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4eeb195cdedaf17aab6b247894ff2734dcead6c08f748e617bfe05bd5a218443"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d4ae769b9c1c7757e4ccce94b0641bc203bbdf43ba7a2413ab2523d8d047d8dc"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a62448526dd9ed3e3beedc93df9bb6b55a436ed1474db31a2af13b313a70a7e1"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc56c9788617b8964ad02e8fcfeed4001c1f8ba91a9e1f31483c0dffb207002a"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c153265408d18de4cc5ded1941dcd8315894572cddd3c58df5d5b5705b3fa28d"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f67766965996e63bb46cfbf2ce5355fc32d9dd3b8ad7e536a920ff9ee422e23"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-win32.whl", hash = "sha256:bfc9064f6658a3d1cadeaa0ba07570b83ce6801a1314985bf98ec9b95d74e15f"}, - {file = "sqlalchemy-2.0.41-cp313-cp313-win_amd64.whl", hash = "sha256:82ca366a844eb551daff9d2e6e7a9e5e76d2612c8564f58db6c19a726869c1df"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:90144d3b0c8b139408da50196c5cad2a6909b51b23df1f0538411cd23ffa45d3"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:023b3ee6169969beea3bb72312e44d8b7c27c75b347942d943cf49397b7edeb5"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:725875a63abf7c399d4548e686debb65cdc2549e1825437096a0af1f7e374814"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81965cc20848ab06583506ef54e37cf15c83c7e619df2ad16807c03100745dea"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dd5ec3aa6ae6e4d5b5de9357d2133c07be1aff6405b136dad753a16afb6717dd"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:ff8e80c4c4932c10493ff97028decfdb622de69cae87e0f127a7ebe32b4069c6"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-win32.whl", hash = "sha256:4d44522480e0bf34c3d63167b8cfa7289c1c54264c2950cc5fc26e7850967e45"}, - {file = "sqlalchemy-2.0.41-cp38-cp38-win_amd64.whl", hash = "sha256:81eedafa609917040d39aa9332e25881a8e7a0862495fcdf2023a9667209deda"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9a420a91913092d1e20c86a2f5f1fc85c1a8924dbcaf5e0586df8aceb09c9cc2"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:906e6b0d7d452e9a98e5ab8507c0da791856b2380fdee61b765632bb8698026f"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a373a400f3e9bac95ba2a06372c4fd1412a7cee53c37fc6c05f829bf672b8769"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:087b6b52de812741c27231b5a3586384d60c353fbd0e2f81405a814b5591dc8b"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:34ea30ab3ec98355235972dadc497bb659cc75f8292b760394824fab9cf39826"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:8280856dd7c6a68ab3a164b4a4b1c51f7691f6d04af4d4ca23d6ecf2261b7923"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-win32.whl", hash = "sha256:b50eab9994d64f4a823ff99a0ed28a6903224ddbe7fef56a6dd865eec9243440"}, - {file = "sqlalchemy-2.0.41-cp39-cp39-win_amd64.whl", hash = "sha256:5e22575d169529ac3e0a120cf050ec9daa94b6a9597993d1702884f6954a7d71"}, - {file = "sqlalchemy-2.0.41-py3-none-any.whl", hash = "sha256:57df5dc6fdb5ed1a88a1ed2195fd31927e705cad62dedd86b46972752a80f576"}, - {file = "sqlalchemy-2.0.41.tar.gz", hash = "sha256:edba70118c4be3c2b1f90754d308d0b79c6fe2c0fdc52d8ddf603916f83f4db9"}, -] - -[package.dependencies] -greenlet = {version = ">=1", markers = "python_version < \"3.14\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} -typing-extensions = ">=4.6.0" - -[package.extras] -aiomysql = ["aiomysql (>=0.2.0)", "greenlet (>=1)"] -aioodbc = ["aioodbc", "greenlet (>=1)"] -aiosqlite = ["aiosqlite", "greenlet (>=1)", "typing_extensions (!=3.10.0.1)"] -asyncio = ["greenlet (>=1)"] -asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (>=1)"] -mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5,!=1.1.10)"] -mssql = ["pyodbc"] -mssql-pymssql = ["pymssql"] -mssql-pyodbc = ["pyodbc"] -mypy = ["mypy (>=0.910)"] -mysql = ["mysqlclient (>=1.4.0)"] -mysql-connector = ["mysql-connector-python"] -oracle = ["cx_oracle (>=8)"] -oracle-oracledb = ["oracledb (>=1.0.1)"] -postgresql = ["psycopg2 (>=2.7)"] -postgresql-asyncpg = ["asyncpg", "greenlet (>=1)"] -postgresql-pg8000 = ["pg8000 (>=1.29.1)"] -postgresql-psycopg = ["psycopg (>=3.0.7)"] -postgresql-psycopg2binary = ["psycopg2-binary"] -postgresql-psycopg2cffi = ["psycopg2cffi"] -postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] -pymysql = ["pymysql"] -sqlcipher = ["sqlcipher3_binary"] - -[[package]] -name = "sqlalchemy-utils" -version = "0.41.2" -description = "Various utility functions for SQLAlchemy." -optional = false -python-versions = ">=3.7" -files = [ - {file = "SQLAlchemy-Utils-0.41.2.tar.gz", hash = "sha256:bc599c8c3b3319e53ce6c5c3c471120bd325d0071fb6f38a10e924e3d07b9990"}, - {file = "SQLAlchemy_Utils-0.41.2-py3-none-any.whl", hash = "sha256:85cf3842da2bf060760f955f8467b87983fb2e30f1764fd0e24a48307dc8ec6e"}, -] - -[package.dependencies] -SQLAlchemy = ">=1.3" - -[package.extras] -arrow = ["arrow (>=0.3.4)"] -babel = ["Babel (>=1.3)"] -color = ["colour (>=0.0.4)"] -encrypted = ["cryptography (>=0.6)"] -intervals = ["intervals (>=0.7.1)"] -password = ["passlib (>=1.6,<2.0)"] -pendulum = ["pendulum (>=2.0.5)"] -phone = ["phonenumbers (>=5.9.2)"] -test = ["Jinja2 (>=2.3)", "Pygments (>=1.2)", "backports.zoneinfo", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "isort (>=4.2.2)", "pg8000 (>=1.12.4)", "psycopg (>=3.1.8)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (==7.4.4)", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] -test-all = ["Babel (>=1.3)", "Jinja2 (>=2.3)", "Pygments (>=1.2)", "arrow (>=0.3.4)", "backports.zoneinfo", "colour (>=0.0.4)", "cryptography (>=0.6)", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "furl (>=0.4.1)", "intervals (>=0.7.1)", "isort (>=4.2.2)", "passlib (>=1.6,<2.0)", "pendulum (>=2.0.5)", "pg8000 (>=1.12.4)", "phonenumbers (>=5.9.2)", "psycopg (>=3.1.8)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (==7.4.4)", "python-dateutil", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] -timezone = ["python-dateutil"] -url = ["furl (>=0.4.1)"] - -[[package]] -name = "starlette" -version = "0.46.2" -description = "The little ASGI library that shines." -optional = false -python-versions = ">=3.9" -files = [ - {file = "starlette-0.46.2-py3-none-any.whl", hash = "sha256:595633ce89f8ffa71a015caed34a5b2dc1c0cdb3f0f1fbd1e69339cf2abeec35"}, - {file = "starlette-0.46.2.tar.gz", hash = "sha256:7f7361f34eed179294600af672f565727419830b54b7b084efe44bb82d2fccd5"}, -] - -[package.dependencies] -anyio = ">=3.6.2,<5" - -[package.extras] -full = ["httpx (>=0.27.0,<0.29.0)", "itsdangerous", "jinja2", "python-multipart (>=0.0.18)", "pyyaml"] - [[package]] name = "typing-extensions" -version = "4.14.0" +version = "4.14.1" description = "Backported and Experimental Type Hints for Python 3.9+" optional = false python-versions = ">=3.9" files = [ - {file = "typing_extensions-4.14.0-py3-none-any.whl", hash = "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af"}, - {file = "typing_extensions-4.14.0.tar.gz", hash = "sha256:8676b788e32f02ab42d9e7c61324048ae4c6d844a399eebace3d4979d75ceef4"}, + {file = "typing_extensions-4.14.1-py3-none-any.whl", hash = "sha256:d1e1e3b58374dc93031d6eda2420a48ea44a36c2b4766a4fdeb3710755731d76"}, + {file = "typing_extensions-4.14.1.tar.gz", hash = "sha256:38b39f4aeeab64884ce9f74c94263ef78f3c22467c8724005483154c26648d36"}, ] [[package]] @@ -1374,290 +671,7 @@ files = [ [package.dependencies] typing-extensions = ">=4.12.0" -[[package]] -name = "tzdata" -version = "2025.2" -description = "Provider of IANA time zone data" -optional = false -python-versions = ">=2" -files = [ - {file = "tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8"}, - {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"}, -] - -[[package]] -name = "uvicorn" -version = "0.34.3" -description = "The lightning-fast ASGI server." -optional = false -python-versions = ">=3.9" -files = [ - {file = "uvicorn-0.34.3-py3-none-any.whl", hash = "sha256:16246631db62bdfbf069b0645177d6e8a77ba950cfedbfd093acef9444e4d885"}, - {file = "uvicorn-0.34.3.tar.gz", hash = "sha256:35919a9a979d7a59334b6b10e05d77c1d0d574c50e0fc98b8b1a0f165708b55a"}, -] - -[package.dependencies] -click = ">=7.0" -colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""} -h11 = ">=0.8" -httptools = {version = ">=0.6.3", optional = true, markers = "extra == \"standard\""} -python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} -pyyaml = {version = ">=5.1", optional = true, markers = "extra == \"standard\""} -uvloop = {version = ">=0.15.1", optional = true, markers = "(sys_platform != \"win32\" and sys_platform != \"cygwin\") and platform_python_implementation != \"PyPy\" and extra == \"standard\""} -watchfiles = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} -websockets = {version = ">=10.4", optional = true, markers = "extra == \"standard\""} - -[package.extras] -standard = ["colorama (>=0.4)", "httptools (>=0.6.3)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] - -[[package]] -name = "uvloop" -version = "0.21.0" -description = "Fast implementation of asyncio event loop on top of libuv" -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ec7e6b09a6fdded42403182ab6b832b71f4edaf7f37a9a0e371a01db5f0cb45f"}, - {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:196274f2adb9689a289ad7d65700d37df0c0930fd8e4e743fa4834e850d7719d"}, - {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f38b2e090258d051d68a5b14d1da7203a3c3677321cf32a95a6f4db4dd8b6f26"}, - {file = "uvloop-0.21.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87c43e0f13022b998eb9b973b5e97200c8b90823454d4bc06ab33829e09fb9bb"}, - {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:10d66943def5fcb6e7b37310eb6b5639fd2ccbc38df1177262b0640c3ca68c1f"}, - {file = "uvloop-0.21.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:67dd654b8ca23aed0a8e99010b4c34aca62f4b7fce88f39d452ed7622c94845c"}, - {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c0f3fa6200b3108919f8bdabb9a7f87f20e7097ea3c543754cabc7d717d95cf8"}, - {file = "uvloop-0.21.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0878c2640cf341b269b7e128b1a5fed890adc4455513ca710d77d5e93aa6d6a0"}, - {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9fb766bb57b7388745d8bcc53a359b116b8a04c83a2288069809d2b3466c37e"}, - {file = "uvloop-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a375441696e2eda1c43c44ccb66e04d61ceeffcd76e4929e527b7fa401b90fb"}, - {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:baa0e6291d91649c6ba4ed4b2f982f9fa165b5bbd50a9e203c416a2797bab3c6"}, - {file = "uvloop-0.21.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4509360fcc4c3bd2c70d87573ad472de40c13387f5fda8cb58350a1d7475e58d"}, - {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:359ec2c888397b9e592a889c4d72ba3d6befba8b2bb01743f72fffbde663b59c"}, - {file = "uvloop-0.21.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f7089d2dc73179ce5ac255bdf37c236a9f914b264825fdaacaded6990a7fb4c2"}, - {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baa4dcdbd9ae0a372f2167a207cd98c9f9a1ea1188a8a526431eef2f8116cc8d"}, - {file = "uvloop-0.21.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86975dca1c773a2c9864f4c52c5a55631038e387b47eaf56210f873887b6c8dc"}, - {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:461d9ae6660fbbafedd07559c6a2e57cd553b34b0065b6550685f6653a98c1cb"}, - {file = "uvloop-0.21.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:183aef7c8730e54c9a3ee3227464daed66e37ba13040bb3f350bc2ddc040f22f"}, - {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:bfd55dfcc2a512316e65f16e503e9e450cab148ef11df4e4e679b5e8253a5281"}, - {file = "uvloop-0.21.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:787ae31ad8a2856fc4e7c095341cccc7209bd657d0e71ad0dc2ea83c4a6fa8af"}, - {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ee4d4ef48036ff6e5cfffb09dd192c7a5027153948d85b8da7ff705065bacc6"}, - {file = "uvloop-0.21.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3df876acd7ec037a3d005b3ab85a7e4110422e4d9c1571d4fc89b0fc41b6816"}, - {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bd53ecc9a0f3d87ab847503c2e1552b690362e005ab54e8a48ba97da3924c0dc"}, - {file = "uvloop-0.21.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a5c39f217ab3c663dc699c04cbd50c13813e31d917642d459fdcec07555cc553"}, - {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:17df489689befc72c39a08359efac29bbee8eee5209650d4b9f34df73d22e414"}, - {file = "uvloop-0.21.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bc09f0ff191e61c2d592a752423c767b4ebb2986daa9ed62908e2b1b9a9ae206"}, - {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0ce1b49560b1d2d8a2977e3ba4afb2414fb46b86a1b64056bc4ab929efdafbe"}, - {file = "uvloop-0.21.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e678ad6fe52af2c58d2ae3c73dc85524ba8abe637f134bf3564ed07f555c5e79"}, - {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:460def4412e473896ef179a1671b40c039c7012184b627898eea5072ef6f017a"}, - {file = "uvloop-0.21.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:10da8046cc4a8f12c91a1c39d1dd1585c41162a15caaef165c2174db9ef18bdc"}, - {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c097078b8031190c934ed0ebfee8cc5f9ba9642e6eb88322b9958b649750f72b"}, - {file = "uvloop-0.21.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:46923b0b5ee7fc0020bef24afe7836cb068f5050ca04caf6b487c513dc1a20b2"}, - {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:53e420a3afe22cdcf2a0f4846e377d16e718bc70103d7088a4f7623567ba5fb0"}, - {file = "uvloop-0.21.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88cb67cdbc0e483da00af0b2c3cdad4b7c61ceb1ee0f33fe00e09c81e3a6cb75"}, - {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:221f4f2a1f46032b403bf3be628011caf75428ee3cc204a22addf96f586b19fd"}, - {file = "uvloop-0.21.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2d1f581393673ce119355d56da84fe1dd9d2bb8b3d13ce792524e1607139feff"}, - {file = "uvloop-0.21.0.tar.gz", hash = "sha256:3bf12b0fda68447806a7ad847bfa591613177275d35b6724b1ee573faa3704e3"}, -] - -[package.extras] -dev = ["Cython (>=3.0,<4.0)", "setuptools (>=60)"] -docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)"] -test = ["aiohttp (>=3.10.5)", "flake8 (>=5.0,<6.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=23.0.0,<23.1.0)", "pycodestyle (>=2.9.0,<2.10.0)"] - -[[package]] -name = "watchfiles" -version = "1.1.0" -description = "Simple, modern and high performance file watching and code reload in python." -optional = false -python-versions = ">=3.9" -files = [ - {file = "watchfiles-1.1.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:27f30e14aa1c1e91cb653f03a63445739919aef84c8d2517997a83155e7a2fcc"}, - {file = "watchfiles-1.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3366f56c272232860ab45c77c3ca7b74ee819c8e1f6f35a7125556b198bbc6df"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8412eacef34cae2836d891836a7fff7b754d6bcac61f6c12ba5ca9bc7e427b68"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:df670918eb7dd719642e05979fc84704af913d563fd17ed636f7c4783003fdcc"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d7642b9bc4827b5518ebdb3b82698ada8c14c7661ddec5fe719f3e56ccd13c97"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:199207b2d3eeaeb80ef4411875a6243d9ad8bc35b07fc42daa6b801cc39cc41c"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a479466da6db5c1e8754caee6c262cd373e6e6c363172d74394f4bff3d84d7b5"}, - {file = "watchfiles-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:935f9edd022ec13e447e5723a7d14456c8af254544cefbc533f6dd276c9aa0d9"}, - {file = "watchfiles-1.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8076a5769d6bdf5f673a19d51da05fc79e2bbf25e9fe755c47595785c06a8c72"}, - {file = "watchfiles-1.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:86b1e28d4c37e89220e924305cd9f82866bb0ace666943a6e4196c5df4d58dcc"}, - {file = "watchfiles-1.1.0-cp310-cp310-win32.whl", hash = "sha256:d1caf40c1c657b27858f9774d5c0e232089bca9cb8ee17ce7478c6e9264d2587"}, - {file = "watchfiles-1.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:a89c75a5b9bc329131115a409d0acc16e8da8dfd5867ba59f1dd66ae7ea8fa82"}, - {file = "watchfiles-1.1.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:c9649dfc57cc1f9835551deb17689e8d44666315f2e82d337b9f07bd76ae3aa2"}, - {file = "watchfiles-1.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:406520216186b99374cdb58bc48e34bb74535adec160c8459894884c983a149c"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb45350fd1dc75cd68d3d72c47f5b513cb0578da716df5fba02fff31c69d5f2d"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:11ee4444250fcbeb47459a877e5e80ed994ce8e8d20283857fc128be1715dac7"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bda8136e6a80bdea23e5e74e09df0362744d24ffb8cd59c4a95a6ce3d142f79c"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b915daeb2d8c1f5cee4b970f2e2c988ce6514aace3c9296e58dd64dc9aa5d575"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ed8fc66786de8d0376f9f913c09e963c66e90ced9aa11997f93bdb30f7c872a8"}, - {file = "watchfiles-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe4371595edf78c41ef8ac8df20df3943e13defd0efcb732b2e393b5a8a7a71f"}, - {file = "watchfiles-1.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b7c5f6fe273291f4d414d55b2c80d33c457b8a42677ad14b4b47ff025d0893e4"}, - {file = "watchfiles-1.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7738027989881e70e3723c75921f1efa45225084228788fc59ea8c6d732eb30d"}, - {file = "watchfiles-1.1.0-cp311-cp311-win32.whl", hash = "sha256:622d6b2c06be19f6e89b1d951485a232e3b59618def88dbeda575ed8f0d8dbf2"}, - {file = "watchfiles-1.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:48aa25e5992b61debc908a61ab4d3f216b64f44fdaa71eb082d8b2de846b7d12"}, - {file = "watchfiles-1.1.0-cp311-cp311-win_arm64.whl", hash = "sha256:00645eb79a3faa70d9cb15c8d4187bb72970b2470e938670240c7998dad9f13a"}, - {file = "watchfiles-1.1.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9dc001c3e10de4725c749d4c2f2bdc6ae24de5a88a339c4bce32300a31ede179"}, - {file = "watchfiles-1.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d9ba68ec283153dead62cbe81872d28e053745f12335d037de9cbd14bd1877f5"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:130fc497b8ee68dce163e4254d9b0356411d1490e868bd8790028bc46c5cc297"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:50a51a90610d0845a5931a780d8e51d7bd7f309ebc25132ba975aca016b576a0"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc44678a72ac0910bac46fa6a0de6af9ba1355669b3dfaf1ce5f05ca7a74364e"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a543492513a93b001975ae283a51f4b67973662a375a403ae82f420d2c7205ee"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ac164e20d17cc285f2b94dc31c384bc3aa3dd5e7490473b3db043dd70fbccfd"}, - {file = "watchfiles-1.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7590d5a455321e53857892ab8879dce62d1f4b04748769f5adf2e707afb9d4f"}, - {file = "watchfiles-1.1.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:37d3d3f7defb13f62ece99e9be912afe9dd8a0077b7c45ee5a57c74811d581a4"}, - {file = "watchfiles-1.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:7080c4bb3efd70a07b1cc2df99a7aa51d98685be56be6038c3169199d0a1c69f"}, - {file = "watchfiles-1.1.0-cp312-cp312-win32.whl", hash = "sha256:cbcf8630ef4afb05dc30107bfa17f16c0896bb30ee48fc24bf64c1f970f3b1fd"}, - {file = "watchfiles-1.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:cbd949bdd87567b0ad183d7676feb98136cde5bb9025403794a4c0db28ed3a47"}, - {file = "watchfiles-1.1.0-cp312-cp312-win_arm64.whl", hash = "sha256:0a7d40b77f07be87c6faa93d0951a0fcd8cbca1ddff60a1b65d741bac6f3a9f6"}, - {file = "watchfiles-1.1.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:5007f860c7f1f8df471e4e04aaa8c43673429047d63205d1630880f7637bca30"}, - {file = "watchfiles-1.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:20ecc8abbd957046f1fe9562757903f5eaf57c3bce70929fda6c7711bb58074a"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2f0498b7d2a3c072766dba3274fe22a183dbea1f99d188f1c6c72209a1063dc"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:239736577e848678e13b201bba14e89718f5c2133dfd6b1f7846fa1b58a8532b"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eff4b8d89f444f7e49136dc695599a591ff769300734446c0a86cba2eb2f9895"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12b0a02a91762c08f7264e2e79542f76870c3040bbc847fb67410ab81474932a"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:29e7bc2eee15cbb339c68445959108803dc14ee0c7b4eea556400131a8de462b"}, - {file = "watchfiles-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9481174d3ed982e269c090f780122fb59cee6c3796f74efe74e70f7780ed94c"}, - {file = "watchfiles-1.1.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:80f811146831c8c86ab17b640801c25dc0a88c630e855e2bef3568f30434d52b"}, - {file = "watchfiles-1.1.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:60022527e71d1d1fda67a33150ee42869042bce3d0fcc9cc49be009a9cded3fb"}, - {file = "watchfiles-1.1.0-cp313-cp313-win32.whl", hash = "sha256:32d6d4e583593cb8576e129879ea0991660b935177c0f93c6681359b3654bfa9"}, - {file = "watchfiles-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:f21af781a4a6fbad54f03c598ab620e3a77032c5878f3d780448421a6e1818c7"}, - {file = "watchfiles-1.1.0-cp313-cp313-win_arm64.whl", hash = "sha256:5366164391873ed76bfdf618818c82084c9db7fac82b64a20c44d335eec9ced5"}, - {file = "watchfiles-1.1.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:17ab167cca6339c2b830b744eaf10803d2a5b6683be4d79d8475d88b4a8a4be1"}, - {file = "watchfiles-1.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:328dbc9bff7205c215a7807da7c18dce37da7da718e798356212d22696404339"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7208ab6e009c627b7557ce55c465c98967e8caa8b11833531fdf95799372633"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a8f6f72974a19efead54195bc9bed4d850fc047bb7aa971268fd9a8387c89011"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d181ef50923c29cf0450c3cd47e2f0557b62218c50b2ab8ce2ecaa02bd97e670"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:adb4167043d3a78280d5d05ce0ba22055c266cf8655ce942f2fb881262ff3cdf"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8c5701dc474b041e2934a26d31d39f90fac8a3dee2322b39f7729867f932b1d4"}, - {file = "watchfiles-1.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b067915e3c3936966a8607f6fe5487df0c9c4afb85226613b520890049deea20"}, - {file = "watchfiles-1.1.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:9c733cda03b6d636b4219625a4acb5c6ffb10803338e437fb614fef9516825ef"}, - {file = "watchfiles-1.1.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:cc08ef8b90d78bfac66f0def80240b0197008e4852c9f285907377b2947ffdcb"}, - {file = "watchfiles-1.1.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:9974d2f7dc561cce3bb88dfa8eb309dab64c729de85fba32e98d75cf24b66297"}, - {file = "watchfiles-1.1.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c68e9f1fcb4d43798ad8814c4c1b61547b014b667216cb754e606bfade587018"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95ab1594377effac17110e1352989bdd7bdfca9ff0e5eeccd8c69c5389b826d0"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fba9b62da882c1be1280a7584ec4515d0a6006a94d6e5819730ec2eab60ffe12"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3434e401f3ce0ed6b42569128b3d1e3af773d7ec18751b918b89cd49c14eaafb"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fa257a4d0d21fcbca5b5fcba9dca5a78011cb93c0323fb8855c6d2dfbc76eb77"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7fd1b3879a578a8ec2076c7961076df540b9af317123f84569f5a9ddee64ce92"}, - {file = "watchfiles-1.1.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:62cc7a30eeb0e20ecc5f4bd113cd69dcdb745a07c68c0370cea919f373f65d9e"}, - {file = "watchfiles-1.1.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:891c69e027748b4a73847335d208e374ce54ca3c335907d381fde4e41661b13b"}, - {file = "watchfiles-1.1.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:12fe8eaffaf0faa7906895b4f8bb88264035b3f0243275e0bf24af0436b27259"}, - {file = "watchfiles-1.1.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:bfe3c517c283e484843cb2e357dd57ba009cff351edf45fb455b5fbd1f45b15f"}, - {file = "watchfiles-1.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a9ccbf1f129480ed3044f540c0fdbc4ee556f7175e5ab40fe077ff6baf286d4e"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba0e3255b0396cac3cc7bbace76404dd72b5438bf0d8e7cefa2f79a7f3649caa"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4281cd9fce9fc0a9dbf0fc1217f39bf9cf2b4d315d9626ef1d4e87b84699e7e8"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6d2404af8db1329f9a3c9b79ff63e0ae7131986446901582067d9304ae8aaf7f"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e78b6ed8165996013165eeabd875c5dfc19d41b54f94b40e9fff0eb3193e5e8e"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:249590eb75ccc117f488e2fabd1bfa33c580e24b96f00658ad88e38844a040bb"}, - {file = "watchfiles-1.1.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d05686b5487cfa2e2c28ff1aa370ea3e6c5accfe6435944ddea1e10d93872147"}, - {file = "watchfiles-1.1.0-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:d0e10e6f8f6dc5762adee7dece33b722282e1f59aa6a55da5d493a97282fedd8"}, - {file = "watchfiles-1.1.0-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:af06c863f152005c7592df1d6a7009c836a247c9d8adb78fef8575a5a98699db"}, - {file = "watchfiles-1.1.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:865c8e95713744cf5ae261f3067861e9da5f1370ba91fc536431e29b418676fa"}, - {file = "watchfiles-1.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:42f92befc848bb7a19658f21f3e7bae80d7d005d13891c62c2cd4d4d0abb3433"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa0cc8365ab29487eb4f9979fd41b22549853389e22d5de3f134a6796e1b05a4"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:90ebb429e933645f3da534c89b29b665e285048973b4d2b6946526888c3eb2c7"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c588c45da9b08ab3da81d08d7987dae6d2a3badd63acdb3e206a42dbfa7cb76f"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7c55b0f9f68590115c25272b06e63f0824f03d4fc7d6deed43d8ad5660cabdbf"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd17a1e489f02ce9117b0de3c0b1fab1c3e2eedc82311b299ee6b6faf6c23a29"}, - {file = "watchfiles-1.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da71945c9ace018d8634822f16cbc2a78323ef6c876b1d34bbf5d5222fd6a72e"}, - {file = "watchfiles-1.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:51556d5004887045dba3acdd1fdf61dddea2be0a7e18048b5e853dcd37149b86"}, - {file = "watchfiles-1.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04e4ed5d1cd3eae68c89bcc1a485a109f39f2fd8de05f705e98af6b5f1861f1f"}, - {file = "watchfiles-1.1.0-cp39-cp39-win32.whl", hash = "sha256:c600e85f2ffd9f1035222b1a312aff85fd11ea39baff1d705b9b047aad2ce267"}, - {file = "watchfiles-1.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:3aba215958d88182e8d2acba0fdaf687745180974946609119953c0e112397dc"}, - {file = "watchfiles-1.1.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3a6fd40bbb50d24976eb275ccb55cd1951dfb63dbc27cae3066a6ca5f4beabd5"}, - {file = "watchfiles-1.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9f811079d2f9795b5d48b55a37aa7773680a5659afe34b54cc1d86590a51507d"}, - {file = "watchfiles-1.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2726d7bfd9f76158c84c10a409b77a320426540df8c35be172444394b17f7ea"}, - {file = "watchfiles-1.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:df32d59cb9780f66d165a9a7a26f19df2c7d24e3bd58713108b41d0ff4f929c6"}, - {file = "watchfiles-1.1.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:0ece16b563b17ab26eaa2d52230c9a7ae46cf01759621f4fbbca280e438267b3"}, - {file = "watchfiles-1.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:51b81e55d40c4b4aa8658427a3ee7ea847c591ae9e8b81ef94a90b668999353c"}, - {file = "watchfiles-1.1.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2bcdc54ea267fe72bfc7d83c041e4eb58d7d8dc6f578dfddb52f037ce62f432"}, - {file = "watchfiles-1.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:923fec6e5461c42bd7e3fd5ec37492c6f3468be0499bc0707b4bbbc16ac21792"}, - {file = "watchfiles-1.1.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:7b3443f4ec3ba5aa00b0e9fa90cf31d98321cbff8b925a7c7b84161619870bc9"}, - {file = "watchfiles-1.1.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:7049e52167fc75fc3cc418fc13d39a8e520cbb60ca08b47f6cedb85e181d2f2a"}, - {file = "watchfiles-1.1.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54062ef956807ba806559b3c3d52105ae1827a0d4ab47b621b31132b6b7e2866"}, - {file = "watchfiles-1.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a7bd57a1bb02f9d5c398c0c1675384e7ab1dd39da0ca50b7f09af45fa435277"}, - {file = "watchfiles-1.1.0.tar.gz", hash = "sha256:693ed7ec72cbfcee399e92c895362b6e66d63dac6b91e2c11ae03d10d503e575"}, -] - -[package.dependencies] -anyio = ">=3.0.0" - -[[package]] -name = "websockets" -version = "15.0.1" -description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" -optional = false -python-versions = ">=3.9" -files = [ - {file = "websockets-15.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d63efaa0cd96cf0c5fe4d581521d9fa87744540d4bc999ae6e08595a1014b45b"}, - {file = "websockets-15.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac60e3b188ec7574cb761b08d50fcedf9d77f1530352db4eef1707fe9dee7205"}, - {file = "websockets-15.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5756779642579d902eed757b21b0164cd6fe338506a8083eb58af5c372e39d9a"}, - {file = "websockets-15.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0fdfe3e2a29e4db3659dbd5bbf04560cea53dd9610273917799f1cde46aa725e"}, - {file = "websockets-15.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c2529b320eb9e35af0fa3016c187dffb84a3ecc572bcee7c3ce302bfeba52bf"}, - {file = "websockets-15.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac1e5c9054fe23226fb11e05a6e630837f074174c4c2f0fe442996112a6de4fb"}, - {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:5df592cd503496351d6dc14f7cdad49f268d8e618f80dce0cd5a36b93c3fc08d"}, - {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0a34631031a8f05657e8e90903e656959234f3a04552259458aac0b0f9ae6fd9"}, - {file = "websockets-15.0.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3d00075aa65772e7ce9e990cab3ff1de702aa09be3940d1dc88d5abf1ab8a09c"}, - {file = "websockets-15.0.1-cp310-cp310-win32.whl", hash = "sha256:1234d4ef35db82f5446dca8e35a7da7964d02c127b095e172e54397fb6a6c256"}, - {file = "websockets-15.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:39c1fec2c11dc8d89bba6b2bf1556af381611a173ac2b511cf7231622058af41"}, - {file = "websockets-15.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:823c248b690b2fd9303ba00c4f66cd5e2d8c3ba4aa968b2779be9532a4dad431"}, - {file = "websockets-15.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678999709e68425ae2593acf2e3ebcbcf2e69885a5ee78f9eb80e6e371f1bf57"}, - {file = "websockets-15.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d50fd1ee42388dcfb2b3676132c78116490976f1300da28eb629272d5d93e905"}, - {file = "websockets-15.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d99e5546bf73dbad5bf3547174cd6cb8ba7273062a23808ffea025ecb1cf8562"}, - {file = "websockets-15.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66dd88c918e3287efc22409d426c8f729688d89a0c587c88971a0faa2c2f3792"}, - {file = "websockets-15.0.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8dd8327c795b3e3f219760fa603dcae1dcc148172290a8ab15158cf85a953413"}, - {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8fdc51055e6ff4adeb88d58a11042ec9a5eae317a0a53d12c062c8a8865909e8"}, - {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:693f0192126df6c2327cce3baa7c06f2a117575e32ab2308f7f8216c29d9e2e3"}, - {file = "websockets-15.0.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:54479983bd5fb469c38f2f5c7e3a24f9a4e70594cd68cd1fa6b9340dadaff7cf"}, - {file = "websockets-15.0.1-cp311-cp311-win32.whl", hash = "sha256:16b6c1b3e57799b9d38427dda63edcbe4926352c47cf88588c0be4ace18dac85"}, - {file = "websockets-15.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:27ccee0071a0e75d22cb35849b1db43f2ecd3e161041ac1ee9d2352ddf72f065"}, - {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3"}, - {file = "websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665"}, - {file = "websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2"}, - {file = "websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215"}, - {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5"}, - {file = "websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65"}, - {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe"}, - {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4"}, - {file = "websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597"}, - {file = "websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9"}, - {file = "websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7"}, - {file = "websockets-15.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee443ef070bb3b6ed74514f5efaa37a252af57c90eb33b956d35c8e9c10a1931"}, - {file = "websockets-15.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5a939de6b7b4e18ca683218320fc67ea886038265fd1ed30173f5ce3f8e85675"}, - {file = "websockets-15.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:746ee8dba912cd6fc889a8147168991d50ed70447bf18bcda7039f7d2e3d9151"}, - {file = "websockets-15.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b6c3969023ecf9041b2936ac3827e4623bfa3ccf007575f04c5a6aa318c22"}, - {file = "websockets-15.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c714d2fc58b5ca3e285461a4cc0c9a66bd0e24c5da9911e30158286c9b5be7f"}, - {file = "websockets-15.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f3c1e2ab208db911594ae5b4f79addeb3501604a165019dd221c0bdcabe4db8"}, - {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:229cf1d3ca6c1804400b0a9790dc66528e08a6a1feec0d5040e8b9eb14422375"}, - {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:756c56e867a90fb00177d530dca4b097dd753cde348448a1012ed6c5131f8b7d"}, - {file = "websockets-15.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:558d023b3df0bffe50a04e710bc87742de35060580a293c2a984299ed83bc4e4"}, - {file = "websockets-15.0.1-cp313-cp313-win32.whl", hash = "sha256:ba9e56e8ceeeedb2e080147ba85ffcd5cd0711b89576b83784d8605a7df455fa"}, - {file = "websockets-15.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561"}, - {file = "websockets-15.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5f4c04ead5aed67c8a1a20491d54cdfba5884507a48dd798ecaf13c74c4489f5"}, - {file = "websockets-15.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:abdc0c6c8c648b4805c5eacd131910d2a7f6455dfd3becab248ef108e89ab16a"}, - {file = "websockets-15.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a625e06551975f4b7ea7102bc43895b90742746797e2e14b70ed61c43a90f09b"}, - {file = "websockets-15.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d591f8de75824cbb7acad4e05d2d710484f15f29d4a915092675ad3456f11770"}, - {file = "websockets-15.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:47819cea040f31d670cc8d324bb6435c6f133b8c7a19ec3d61634e62f8d8f9eb"}, - {file = "websockets-15.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac017dd64572e5c3bd01939121e4d16cf30e5d7e110a119399cf3133b63ad054"}, - {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4a9fac8e469d04ce6c25bb2610dc535235bd4aa14996b4e6dbebf5e007eba5ee"}, - {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:363c6f671b761efcb30608d24925a382497c12c506b51661883c3e22337265ed"}, - {file = "websockets-15.0.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2034693ad3097d5355bfdacfffcbd3ef5694f9718ab7f29c29689a9eae841880"}, - {file = "websockets-15.0.1-cp39-cp39-win32.whl", hash = "sha256:3b1ac0d3e594bf121308112697cf4b32be538fb1444468fb0a6ae4feebc83411"}, - {file = "websockets-15.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b7643a03db5c95c799b89b31c036d5f27eeb4d259c798e878d6937d71832b1e4"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:0c9e74d766f2818bb95f84c25be4dea09841ac0f734d1966f415e4edfc4ef1c3"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1009ee0c7739c08a0cd59de430d6de452a55e42d6b522de7aa15e6f67db0b8e1"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76d1f20b1c7a2fa82367e04982e708723ba0e7b8d43aa643d3dcd404d74f1475"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f29d80eb9a9263b8d109135351caf568cc3f80b9928bccde535c235de55c22d9"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b359ed09954d7c18bbc1680f380c7301f92c60bf924171629c5db97febb12f04"}, - {file = "websockets-15.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:cad21560da69f4ce7658ca2cb83138fb4cf695a2ba3e475e0559e05991aa8122"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7f493881579c90fc262d9cdbaa05a6b54b3811c2f300766748db79f098db9940"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:47b099e1f4fbc95b701b6e85768e1fcdaf1630f3cbe4765fa216596f12310e2e"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:67f2b6de947f8c757db2db9c71527933ad0019737ec374a8a6be9a956786aaf9"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d08eb4c2b7d6c41da6ca0600c077e93f5adcfd979cd777d747e9ee624556da4b"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b826973a4a2ae47ba357e4e82fa44a463b8f168e1ca775ac64521442b19e87f"}, - {file = "websockets-15.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:21c1fa28a6a7e3cbdc171c694398b6df4744613ce9b36b1a498e816787e28123"}, - {file = "websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f"}, - {file = "websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee"}, -] - [metadata] lock-version = "2.0" python-versions = "^3.12" -content-hash = "71f5d3bb002c33ab3bad9d5e9efadc144b033c272b4319c2686728026dd5d849" +content-hash = "ca95f91568cb076386715d183efe27addd2732eb4347c385a0e9f1479d2035d6" diff --git a/pyproject.toml b/pyproject.toml index f5fc34a..b4c46ff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [tool.poetry] -name = "FastSim-backend" +name = "FastSim" version = "0.1.0" description = "Simulate fastapi event loop to manage resources" authors = ["Gioele Botta"] @@ -11,25 +11,16 @@ packages = [ [tool.poetry.dependencies] python = "^3.12" -fastapi = "^0.115.14" -sqlalchemy = "^2.0.41" -psycopg = {extras = ["binary"], version = "^3.2.9"} -uvicorn = {extras = ["standard"], version = "^0.34.3"} -gunicorn = "^23.0.0" pydantic-settings = "^2.10.1" pydantic = {extras = ["email"], version = "^2.11.7"} -asyncpg = "^0.30.0" -sqlalchemy-utils = "^0.41.2" numpy = "^2.3.1" simpy = "^4.1.1" [tool.poetry.group.dev.dependencies] pytest = "^8.4.1" pytest-asyncio = "^1.0.0" -httpx = "^0.28.1" pytest-cov = "^6.2.1" mypy = "^1.16.1" -alembic = "^1.16.2" ruff = "^0.12.1" [build-system] diff --git a/scripts/init-docker-dev.sh b/scripts/init-docker-dev.sh deleted file mode 100644 index fa2c4ee..0000000 --- a/scripts/init-docker-dev.sh +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/env bash -# scripts/init-docker-dev.sh -# Bring up local development stack using .env.dev in project root - - -set -euo pipefail - -# ────────────────────────────────────────────────────────────────────────────── -# 0. Paths -# ────────────────────────────────────────────────────────────────────────────── -SCRIPT_PATH="$(realpath "${BASH_SOURCE[0]}")" -SCRIPT_DIR="$(cd "$(dirname "$SCRIPT_PATH")" && pwd)" -PROJECT_ROOT="$(dirname "$SCRIPT_DIR")" -COMPOSE_FILE="$PROJECT_ROOT/docker_fs/docker-compose.dev.yml" -ENV_DEV="$PROJECT_ROOT/docker_fs/.env.dev" -ENV_DOT="$PROJECT_ROOT/docker_fs/.env" - -# ────────────────────────────────────────────────────────────────────────────── -# 0.1 Make script executable -# ────────────────────────────────────────────────────────────────────────────── -if [[ ! -x "$SCRIPT_PATH" ]]; then - chmod +x "$SCRIPT_PATH" || true -fi - -# ────────────────────────────────────────────────────────────────────────────── -# 0.2 Ensure docker_fs/.env exists for Compose interpolation -# ────────────────────────────────────────────────────────────────────────────── -if [[ -f "$ENV_DEV" && ! -f "$ENV_DOT" ]]; then - echo ">>> Copying .env.dev → .env for Compose interpolation" - cp "$ENV_DEV" "$ENV_DOT" -fi - -# ────────────────────────────────────────────────────────────────────────────── -# 1. Load env vars from .env.dev into this shell -# ────────────────────────────────────────────────────────────────────────────── -if [[ -f "$ENV_DEV" ]]; then - set -o allexport - source "$ENV_DEV" - set +o allexport -else - echo "ERROR: $ENV_DEV not found. Please create it from .env.example." >&2 - exit 1 -fi - -# ────────────────────────────────────────────────────────────────────────────── -# 2. Pull remote images (only missing ones) -# ────────────────────────────────────────────────────────────────────────────── -echo ">>> Pulling external service images..." -docker compose \ - --env-file "$ENV_DEV" \ - -f "$COMPOSE_FILE" pull - -# ────────────────────────────────────────────────────────────────────────────── -# 3. Start Postgres + pgAdmin (detached) -# ────────────────────────────────────────────────────────────────────────────── -echo ">>> Starting Postgres and pgAdmin..." -docker compose \ - --env-file "$ENV_DEV" \ - -f "$COMPOSE_FILE" up -d db pgadmin - -# ────────────────────────────────────────────────────────────────────────────── -# 4. Wait for Postgres to be ready, then run Alembic migrations -# ────────────────────────────────────────────────────────────────────────────── -PGUSER="${DB_USER:-${POSTGRES_USER:-postgres}}" - -echo ">>> Waiting for Postgres to be ready..." -MAX_RETRIES=30 -RETRIES=0 -until docker exec docker_fs-db-1 pg_isready -U "$PGUSER" > /dev/null 2>&1; do - sleep 1 - RETRIES=$((RETRIES+1)) - if [ "$RETRIES" -ge "$MAX_RETRIES" ]; then - echo "ERROR: Postgres non si è avviato in tempo." >&2 - exit 1 - fi -done -echo ">>> Postgres is ready!" - -echo ">>> Applying database migrations (Alembic)…" -cd "$PROJECT_ROOT" -poetry run alembic upgrade head - -# ────────────────────────────────────────────────────────────────────────────── -# 5. Build (if needed) & start everything in background -# ────────────────────────────────────────────────────────────────────────────── -echo ">>> Building (if needed) and starting all services…" -docker compose \ - --env-file "$ENV_DEV" \ - -f "$COMPOSE_FILE" up -d --build - -echo ">>> Development stack is up!" -echo " • Backend: http://localhost:8000" -echo " • pgAdmin: http://localhost:8080" -echo -echo "To tail backend logs without warnings, run:" -echo " docker compose \\ - --env-file \"$ENV_DEV\" \\ - -f \"$COMPOSE_FILE\" logs -f backend" diff --git a/src/app/api/__init__.py b/src/app/api/__init__.py deleted file mode 100644 index 9455eaa..0000000 --- a/src/app/api/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""API endpoints and routers.""" diff --git a/src/app/api/health_check.py b/src/app/api/health_check.py deleted file mode 100644 index 74b4d4f..0000000 --- a/src/app/api/health_check.py +++ /dev/null @@ -1,11 +0,0 @@ -"""Health check API endpoints.""" - -from fastapi import APIRouter - -router = APIRouter() - - -@router.get("/health") -def health_check() -> dict[str, str]: - """Return the health status of the application.""" - return {"status": "ok"} diff --git a/src/app/api/simulation.py b/src/app/api/simulation.py deleted file mode 100644 index 2775dcc..0000000 --- a/src/app/api/simulation.py +++ /dev/null @@ -1,4 +0,0 @@ -""""Api to simulate the process""" - - - diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 8eeb01e..0e40950 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -13,7 +13,7 @@ renaming existing ones. """ -from enum import IntEnum, StrEnum +from enum import Enum, IntEnum, StrEnum # ====================================================================== # CONSTANTS FOR THE REQUEST-GENERATOR COMPONENT @@ -203,11 +203,22 @@ class SampledMetricName(StrEnum): time to create a time series """ + # Mandatory metrics to collect READY_QUEUE_LEN = "ready_queue_len" #length of the event loop ready q - CORE_BUSY = "core_busy" EVENT_LOOP_IO_SLEEP = "event_loop_io_sleep" RAM_IN_USE = "ram_in_use" - THROUGHPUT_RPS = "throughput_rps" + EDGE_CONCURRENT_CONNECTION = "edge_concurrent_connection" + + +class SamplePeriods(float, Enum): + """ + defining the value of the sample periods for the metrics for which + we have to extract a time series + """ + + STANDARD_TIME = 0.005 # 5 MILLISECONDS + MINIMUM_TIME = 0.001 # 1 MILLISECOND + MAXIMUM_TIME = 0.1 # 10 MILLISECONDS # ====================================================================== # CONSTANTS FOR EVENT METRICS @@ -219,7 +230,9 @@ class EventMetricName(StrEnum): time series """ - RQS_LATENCY = "rqs_latency" + # Mandatory + RQS_CLOCK = "rqs_clock" + # Not mandatory LLM_COST = "llm_cost" @@ -231,6 +244,7 @@ class AggregatedMetricName(StrEnum): """aggregated metrics to calculate at the end of simulation""" LATENCY_STATS = "latency_stats" + THROUGHPUT_RPS = "throughput_rps" LLM_STATS = "llm_stats" # ====================================================================== diff --git a/src/app/config/settings.py b/src/app/config/settings.py deleted file mode 100644 index 7fc3d9d..0000000 --- a/src/app/config/settings.py +++ /dev/null @@ -1,43 +0,0 @@ -"""Application settings and configuration.""" - -from pathlib import Path -from typing import Literal - -from dotenv import load_dotenv -from pydantic import Field -from pydantic_settings import BaseSettings, SettingsConfigDict - -env_path = Path(__file__).resolve().parents[3] / "docker_fs" / ".env.dev" -if env_path.exists(): - load_dotenv(dotenv_path=env_path) - - -class Settings(BaseSettings): - """Application settings loaded from environment variables.""" - - model_config = SettingsConfigDict(env_file=None, extra="ignore") - - app_name: str = "FastSim" - - environment: Literal["development", "staging", "production", "test"] = Field( - default="development", - description="Runtime environment", - alias="ENVIRONMENT", - ) - - db_host: str = Field(default="localhost", alias="DB_HOST") - db_user: str = Field(default="postgres", alias="DB_USER") - db_password: str = Field(default="password", alias="DB_PASSWORD") - db_name: str = Field(default="project_db", alias="DB_NAME") - db_url_env: str | None = Field(default=None, alias="DB_URL") - - @property - def db_url(self) -> str: - """Compute the full database URL from components if not explicitly set.""" - if self.db_url_env: - return self.db_url_env - return f"postgresql+asyncpg://{self.db_user}:{self.db_password}@{self.db_host}/{self.db_name}" - - - -settings = Settings() diff --git a/src/app/db/__init__.py b/src/app/db/__init__.py deleted file mode 100644 index 8e0edc2..0000000 --- a/src/app/db/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Database modules and utilities.""" diff --git a/src/app/db/base.py b/src/app/db/base.py deleted file mode 100644 index 2b59174..0000000 --- a/src/app/db/base.py +++ /dev/null @@ -1,14 +0,0 @@ -"""Database base classes and utilities.""" - -import re - -from sqlalchemy.orm import DeclarativeBase, declared_attr - - -class Base(DeclarativeBase): - """Base class for all ORM models.""" - - @declared_attr.directive - def __tablename__(cls) -> str: - """Generate table name from class name by converting CamelCase to snake_case.""" - return re.sub(r"(? None: - """Initialize database models by creating all tables.""" - async with engine.begin() as conn: - await conn.run_sync(Base.metadata.create_all) - - -async def close_engine() -> None: - """Close the database engine and dispose of connections.""" - await engine.dispose() diff --git a/src/app/db/session.py b/src/app/db/session.py deleted file mode 100644 index 6e2924e..0000000 --- a/src/app/db/session.py +++ /dev/null @@ -1,37 +0,0 @@ -"""Database session management and connection utilities.""" - -from collections.abc import AsyncGenerator - -from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker, create_async_engine - -from app.config.settings import settings - -engine = create_async_engine( - settings.db_url, - echo=False, - future=True, -) - -AsyncSessionLocal = async_sessionmaker( - engine, - class_=AsyncSession, - expire_on_commit=False, -) - - -async def get_db() -> AsyncGenerator[AsyncSession, None]: - """ - Dependency that provides a transactional database session. - It commits the transaction on successful completion or rolls back on error. - """ - async with AsyncSessionLocal() as session: - try: - - yield session - - await session.commit() - except Exception: - - await session.rollback() - - raise diff --git a/src/app/main.py b/src/app/main.py deleted file mode 100644 index b5ef876..0000000 --- a/src/app/main.py +++ /dev/null @@ -1,33 +0,0 @@ -"""Main FastAPI application module.""" - -from collections.abc import AsyncGenerator -from contextlib import asynccontextmanager - -from fastapi import FastAPI - -from app.api.health_check import router as health_router -from app.config.settings import settings -from app.db.init_db import close_engine, init_models - - -@asynccontextmanager -async def lifespan(_app: FastAPI) -> AsyncGenerator[None, None]: - """Manage application lifespan events.""" - # Startup - if settings.environment == "development": - await init_models() - yield - # Shutdown - await close_engine() - - -app = FastAPI( - title="Project Backend", - version="0.1.0", - description="Backend service with health-check endpoint", - validate_response=True, #type validation of pydantic output - lifespan=lifespan, -) - -app.include_router(health_router) - diff --git a/src/app/metrics/client.py b/src/app/metrics/client.py new file mode 100644 index 0000000..2e49638 --- /dev/null +++ b/src/app/metrics/client.py @@ -0,0 +1,18 @@ +""" +initialization of the structure to gather the metrics +for the client of the system +""" + +from typing import NamedTuple + + +class RqsClock(NamedTuple): + """ + structure to register time of generation and + time of elaboration for each request + """ + + start: float + finish: float + + diff --git a/src/app/metrics/collector.py b/src/app/metrics/collector.py new file mode 100644 index 0000000..ed85126 --- /dev/null +++ b/src/app/metrics/collector.py @@ -0,0 +1,70 @@ +"""class to centralized the the collection of time series regarding metrics""" + +from collections.abc import Generator + +import simpy + +from app.config.constants import SampledMetricName +from app.runtime.actors.edge import EdgeRuntime +from app.runtime.actors.server import ServerRuntime +from app.schemas.simulation_settings_input import SimulationSettings + +# The idea for this class is to gather list of runtime objects that +# are defined in the central class to build the simulation, in this +# way we optimize the initialization of various objects reducing +# the global overhead + + +class SampledMetricCollector: + """class to define a centralized object to collect sampled metrics""" + + def __init__( + self, + *, + edges: list[EdgeRuntime], + servers: list[ServerRuntime], + env: simpy.Environment, + sim_settings: SimulationSettings, + ) -> None: + """Docstring to complete""" + self.edges = edges + self.servers = servers + self.sim_settings = sim_settings + self.env = env + self._sample_period = sim_settings.sample_period_s + + + # enum keys instance-level for mandatory sampled metrics to collect + self._conn_key = SampledMetricName.EDGE_CONCURRENT_CONNECTION + self._ram_key = SampledMetricName.RAM_IN_USE + self._io_key = SampledMetricName.EVENT_LOOP_IO_SLEEP + self._ready_key = SampledMetricName.READY_QUEUE_LEN + + + env.process(self._build_time_series()) + + def _build_time_series(self) -> Generator[simpy.Event, None, None]: + """Function to build time series for enabled metrics""" + while True: + yield self.env.timeout(self._sample_period) + for edge in self.edges: + if self._conn_key in edge.enabled_metrics: + edge.enabled_metrics[self._conn_key].append( + edge.concurrent_connections, + ) + for server in self.servers: + if all( + k in server.enabled_metrics + for k in (self._ram_key, self._io_key, self._ready_key) + ): + server.enabled_metrics[self._ram_key].append(server.ram_in_use) + server.enabled_metrics[self._io_key].append(server.io_queue_len) + server.enabled_metrics[self._ready_key].append(server.ready_queue_len) + + + + + + + + diff --git a/src/app/metrics/dictionary_metrics.py b/src/app/metrics/dictionary_metrics.py deleted file mode 100644 index 189af47..0000000 --- a/src/app/metrics/dictionary_metrics.py +++ /dev/null @@ -1,38 +0,0 @@ -"""helpers for the simulation""" - -from collections.abc import Iterable - -from app.config.constants import EventMetricName, SampledMetricName - - -def alloc_sample_metric( - enabled_sample_metrics: Iterable[SampledMetricName], - ) -> dict[str, list[float | int]]: - """ - After the pydantic validation of the whole input we - instantiate a dictionary to collect the sampled metrics the - user want to measure - """ - # t is the alignment parameter for example assume - # the snapshot for the sampled metrics are done every 10ms - # t = [10,20,30,40....] to each t will correspond a measured - # metric corresponding to that time interval - - dict_sampled_metrics: dict[str, list[float | int]] = {"t": []} - for key in enabled_sample_metrics: - dict_sampled_metrics[key] = [] - return dict_sampled_metrics - - -def alloc_event_metric( - enabled_event_metrics: Iterable[EventMetricName], - ) -> dict[str, list[float | int]]: - """ - After the pydantic validation of the whole input we - instantiate a dictionary to collect the event metrics the - user want to measure - """ - dict_event_metrics: dict[str, list[float | int]] = {} - for key in enabled_event_metrics: - dict_event_metrics[key] = [] - return dict_event_metrics diff --git a/src/app/metrics/edge.py b/src/app/metrics/edge.py new file mode 100644 index 0000000..f714482 --- /dev/null +++ b/src/app/metrics/edge.py @@ -0,0 +1,29 @@ +"""initialization of the structure to gather the metrics for the edges of the system""" + +from collections.abc import Iterable + +from app.config.constants import SampledMetricName + +# Initialize one time outside the function all possible metrics +# related to the edges, the idea of this structure is to +# guarantee scalability in the long term if multiple metrics +# will be considered + +EDGE_METRICS = ( + SampledMetricName.EDGE_CONCURRENT_CONNECTION, +) + +def build_edge_metrics( + enabled_sample_metrics: Iterable[SampledMetricName], + ) -> dict[SampledMetricName, list[float | int]]: + """ + Function to populate a dictionary to collect values for + time series of sampled metrics related to the edges of + the system. + """ + # The edge case of the empty dict is avoided since at least + # one metric is always measured by default. + return { + metric: [] for metric in EDGE_METRICS + if metric in enabled_sample_metrics + } diff --git a/src/app/metrics/server.py b/src/app/metrics/server.py new file mode 100644 index 0000000..18810ed --- /dev/null +++ b/src/app/metrics/server.py @@ -0,0 +1,34 @@ +""" +initialization of the structure to gather the sampled metrics +for the server of the system +""" + +from collections.abc import Iterable + +from app.config.constants import SampledMetricName + +# Initialize one time outside the function all possible metrics +# related to the servers, the idea of this structure is to +# guarantee scalability in the long term if multiple metrics +# will be considered + +SERVER_METRICS = ( + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.EVENT_LOOP_IO_SLEEP, + SampledMetricName.RAM_IN_USE, +) + +def build_server_metrics( + enabled_sample_metrics: Iterable[SampledMetricName], + ) -> dict[SampledMetricName, list[float | int]]: + """ + Function to populate a dictionary to collect values for + time series of sampled metrics related to the server of + the system. + """ + # The edge case of the empty dict is avoided since at least + # one metric is always measured by default. + return { + metric: [] for metric in SERVER_METRICS + if metric in enabled_sample_metrics + } diff --git a/src/app/runtime/actors/client.py b/src/app/runtime/actors/client.py index 207bd71..f5d63ac 100644 --- a/src/app/runtime/actors/client.py +++ b/src/app/runtime/actors/client.py @@ -6,6 +6,7 @@ import simpy from app.config.constants import SystemNodes +from app.metrics.client import RqsClock from app.runtime.actors.edge import EdgeRuntime from app.schemas.system_topology.full_system_topology import Client @@ -31,6 +32,11 @@ def __init__( self.client_config = client_config self.client_box = client_box self.completed_box = completed_box + # This list will be enough to calculate at the end + # of the simulation both the throughput and the + # latency distribution + + self._rqs_clock: list[RqsClock] = [] def _forwarder(self) -> Generator[simpy.Event, None, None]: @@ -44,12 +50,19 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: self.env.now, ) - # by checking the previous node (-2 the previous component is an edge) - # we are able to understand if the request should be elaborated - # when the type is Generator, or the request is completed, in this case - # the client is the target and the previous node type is not a rqs generator - if state.history[-2].component_type != SystemNodes.GENERATOR: + # if the length of the list is bigger than two + # it means that the state is coming back to the + # client after being elaborated, since if the value + # would be equal to two would mean that the state + # went through the mandatory path to be generated + # rqs generator and client registration + if len(state.history) > 2: state.finish_time = self.env.now + clock_data = RqsClock( + start=state.initial_time, + finish=state.finish_time, + ) + self._rqs_clock.append(clock_data) yield self.completed_box.put(state) else: self.out_edge.transport(state) @@ -57,3 +70,11 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: def start(self) -> simpy.Process: """Initialization of the process""" return self.env.process(self._forwarder()) + + @property + def rqs_clock(self) -> list[RqsClock]: + """ + Expose the value of the private list of the starting + and arrival time for each rqs just for reading purpose + """ + return self._rqs_clock diff --git a/src/app/runtime/actors/edge.py b/src/app/runtime/actors/edge.py index afef720..4e2f549 100644 --- a/src/app/runtime/actors/edge.py +++ b/src/app/runtime/actors/edge.py @@ -12,9 +12,11 @@ import numpy as np import simpy -from app.config.constants import SystemEdges +from app.config.constants import SampledMetricName, SystemEdges +from app.metrics.edge import build_edge_metrics from app.runtime.rqs_state import RequestState from app.samplers.common_helpers import general_sampler +from app.schemas.simulation_settings_input import SimulationSettings from app.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: @@ -32,12 +34,26 @@ def __init__( edge_config: Edge, rng: np.random.Generator | None = None, target_box: simpy.Store, + settings: SimulationSettings, ) -> None: """Definition of the instance attributes""" self.env = env self.edge_config = edge_config self.target_box = target_box self.rng = rng or np.random.default_rng() + self.setting = settings + self._edge_enabled_metrics = build_edge_metrics( + settings.enabled_sample_metrics, + ) + self._concurrent_connections: int = 0 + + # We keep a reference to `settings` because this class needs to observe but not + # persist the edge-related metrics the user has enabled. + # The actual persistence (appending snapshots to the time series lists) + # is handled centrally in metrics/collector.py,which runs every Xmilliseconds. + # Here we only expose the current metric values, guarded by a few if checks to + # verify that each optional metric is active. For deafult metric settings + # is not needed but as we will scale as explained above we will need it def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: """Function to deliver the state to the next node""" @@ -54,13 +70,17 @@ def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: ) return + self._concurrent_connections +=1 + transit_time = general_sampler(random_variable, self.rng) yield self.env.timeout(transit_time) + state.record_hop( SystemEdges.NETWORK_CONNECTION, self.edge_config.id, self.env.now, ) + self._concurrent_connections -=1 yield self.target_box.put(state) @@ -71,7 +91,15 @@ def transport(self, state: RequestState) -> simpy.Process: """ return self.env.process(self._deliver(state)) + @property + def enabled_metrics(self) -> dict[SampledMetricName, list[float | int]]: + """Read-only access to the metric store.""" + return self._edge_enabled_metrics + @property + def concurrent_connections(self) -> int: + """Current number of open connections on this edge.""" + return self._concurrent_connections diff --git a/src/app/runtime/actors/server.py b/src/app/runtime/actors/server.py index 0a0f772..94d6b24 100644 --- a/src/app/runtime/actors/server.py +++ b/src/app/runtime/actors/server.py @@ -13,13 +13,16 @@ EndpointStepCPU, EndpointStepIO, EndpointStepRAM, + SampledMetricName, ServerResourceName, StepOperation, SystemNodes, ) +from app.metrics.server import build_server_metrics from app.resources.server_containers import ServerContainers from app.runtime.actors.edge import EdgeRuntime from app.runtime.rqs_state import RequestState +from app.schemas.simulation_settings_input import SimulationSettings from app.schemas.system_topology.full_system_topology import Server @@ -33,28 +36,34 @@ def __init__( # noqa: PLR0913 server_config: Server, out_edge: EdgeRuntime, server_box: simpy.Store, + settings: SimulationSettings, rng: np.random.Generator | None = None, ) -> None: - """Server attributes - - Args: - env (simpy.Environment): _description_ - server_resources (ServerContainers): _description_ - server_config (Server): _description_ - out_edge (EdgeRuntime): _description_ - server_box (simpy.Store): _description_ - rng (np.random.Generator | None, optional): _description_. Defaults to None. - - """ + """Docstring to complete""" self.env = env self.server_resources = server_resources self.server_config = server_config self.out_edge = out_edge self.server_box = server_box self.rng = rng or np.random.default_rng() + # length of the active queue of the event loop + self._el_ready_queue_len: int = 0 + # total ram used in the server + self._ram_in_use: int | float = 0 + # length of the queue of the I/O task of the vent loop + self._el_io_queue_len: int = 0 + # Right now is not necessary but as we will introduce + # non mandatory metrics we will need this structure to + # check if we have to measure a given metric + # right now it is not necessary because we are dealing + # only with mandatory metrics + self._server_enabled_metrics = build_server_metrics( + settings.enabled_sample_metrics, + ) - def _handle_request( + # right now we disable the warnings but a refactor will be done soon + def _handle_request( # noqa: PLR0915, PLR0912, C901 self, state: RequestState, ) -> Generator[simpy.Event, None, None]: @@ -79,45 +88,175 @@ def _handle_request( selected_endpoint_idx = self.rng.integers(low=0, high=endpoints_number) selected_endpoint = endpoints_list[selected_endpoint_idx] - # RAM management: - # first calculate the ram needed - # Ask if it is available - # Release everything when the operation completed + # Extract the total ram to execute the endpoint total_ram = sum( step.step_operation[StepOperation.NECESSARY_RAM] for step in selected_endpoint.steps if isinstance(step.kind, EndpointStepRAM) ) + # ------------------------------------------------------------------ + # CPU & RAM SCHEDULING + # + # RAM FIRST, CPU LATER + # - The request reserves its full working set (total_ram) before + # acquiring any CPU core. If memory isn't available, it stays + # queued and leaves cores free for other requests. + # + # LAZY-CPU LOCK + # - A core token is acquired only at the FIRST CPU step + # (`if not core_locked`) and held for all consecutive CPU steps. + # - As soon as an I/O step is encountered, the core is released + # (`CPU.put(1)`) and remains free until the next CPU step, + # which will re-acquire it. + # + # WHY THIS IS REALISTIC + # Prevents “core-hogging” during long I/O awaits. + # Avoids redundant get/put calls for consecutive CPU steps + # (one token for the entire sequence). + # Mirrors a real Python async server: the GIL/worker thread is + # held only during CPU-bound code and released on each await. + # + # END OF HANDLER + # - If we still hold the core at the end (`core_locked == True`), + # we put it back, then release the reserved RAM. + # ------------------------------------------------------------------ + # Ask the necessary ram to the server if total_ram: yield self.server_resources[ServerResourceName.RAM.value].get(total_ram) + self._ram_in_use += total_ram + + # Initial conditions of the server a rqs a priori is not in any queue + # and it does not occupy a core until it started to be elaborated + core_locked = False + is_in_io_queue = False + is_in_ready_queue = False # --- Step Execution: Process CPU and IO operations --- + # EDGE CASE + # First-step I/O + # A request could (in theory) start with an I/O step. In that case + # it doesn't hold any core; we enter the + # `not core_locked and not is_in_io_queue` branch and add +1 + # to the I/O queue without touching the ready queue. + # + # Consecutive I/O steps + # The second I/O sees `is_in_io_queue == True`, so it does NOT + # increment again—no double counting. + # + # Transition CPU → I/O → CPU + # - CPU step: `core_locked` becomes True, +1 ready queue + # - I/O step: core is put back, -1 ready queue, +1 I/O queue + # - Next CPU step: core is acquired, -1 I/O queue, +1 ready queue + # + # Endpoint completion + # If `core_locked == True` we were in the ready queue (-1) + # Otherwise we were in the I/O queue (-1) + # In both cases we clear the local flags so no “ghost” entries + # remain in the global counters. + # ------------------------------------------------------------------ + + for step in selected_endpoint.steps: if isinstance(step.kind, EndpointStepCPU): - cpu_time = step.step_operation[StepOperation.CPU_TIME] + # with the boolean we avoid redundant operation of asking + # the core multiple time on a given step + # for example if we have two consecutive cpu bound step + # in this configuration we are asking the cpu just in the + # first one - # Acquire one core - yield self.server_resources[ServerResourceName.CPU.value].get(1) - # Hold the core busy + if not core_locked: + core_locked = True + + if is_in_io_queue: + is_in_io_queue = False + self._el_io_queue_len -= 1 + + if not is_in_ready_queue: + is_in_ready_queue = True + self._el_ready_queue_len += 1 + + + yield self.server_resources[ServerResourceName.CPU.value].get(1) + + cpu_time = step.step_operation[StepOperation.CPU_TIME] + # Execute the step giving back the control to the simpy env yield self.env.timeout(cpu_time) - # Release the core - yield self.server_resources[ServerResourceName.CPU.value].put(1) + elif isinstance(step.kind, EndpointStepIO): io_time = step.step_operation[StepOperation.IO_WAITING_TIME] + # Same here with the boolean if we have multiple I/O steps + # we release the core just the first time if the previous step + # was a cpu bound step + + if not core_locked and not is_in_io_queue: + is_in_io_queue = True + self._el_io_queue_len += 1 + + + if core_locked: + # if the core is locked in the function it means that for sure + # we had a cpu bound step so the if statement will be always + # satisfy and we have to remove one element from the ready queue + + if is_in_ready_queue: + is_in_ready_queue = False + self._el_ready_queue_len -= 1 + + if not is_in_io_queue: + is_in_io_queue = True + self._el_io_queue_len += 1 + + yield self.server_resources[ServerResourceName.CPU.value].put(1) + core_locked = False yield self.env.timeout(io_time) # Wait without holding a CPU core - # release the ram + + if core_locked: + is_in_ready_queue = False + self._el_ready_queue_len -= 1 + yield self.server_resources[ServerResourceName.CPU.value].put(1) + else: + is_in_io_queue = False + self._el_io_queue_len -= 1 + if total_ram: + + self._ram_in_use -= total_ram yield self.server_resources[ServerResourceName.RAM.value].put(total_ram) self.out_edge.transport(state) + + # we need three accessor because we need to read these private attribute + # in the sampled metric collector + @property + def ready_queue_len(self) -> int: + """Current length of the event-loop ready queue for this server.""" + return self._el_ready_queue_len + + @property + def io_queue_len(self) -> int: + """Current length of the event-loop I/O queue for this server.""" + return self._el_io_queue_len + + @property + def ram_in_use(self) -> int | float: + """Total RAM (MB) currently reserved by active requests.""" + return self._ram_in_use + + @property + def enabled_metrics(self) -> dict[SampledMetricName, list[float | int]]: + """Read-only access to the metric store.""" + return self._server_enabled_metrics + + + def _dispatcher(self) -> Generator[simpy.Event, None, None]: """ The main dispatcher loop. It pulls requests from the inbox and diff --git a/src/app/schemas/simulation_settings_input.py b/src/app/schemas/simulation_settings_input.py index 5d0ac6a..80828b5 100644 --- a/src/app/schemas/simulation_settings_input.py +++ b/src/app/schemas/simulation_settings_input.py @@ -2,7 +2,12 @@ from pydantic import BaseModel, Field -from app.config.constants import EventMetricName, SampledMetricName, TimeDefaults +from app.config.constants import ( + EventMetricName, + SampledMetricName, + SamplePeriods, + TimeDefaults, +) class SimulationSettings(BaseModel): @@ -14,18 +19,27 @@ class SimulationSettings(BaseModel): description="Simulation horizon in seconds.", ) + # These represent the mandatory metrics to collect enabled_sample_metrics: set[SampledMetricName] = Field( default_factory=lambda: { SampledMetricName.READY_QUEUE_LEN, - SampledMetricName.CORE_BUSY, + SampledMetricName.EVENT_LOOP_IO_SLEEP, SampledMetricName.RAM_IN_USE, + SampledMetricName.EDGE_CONCURRENT_CONNECTION, }, description="Which time-series KPIs to collect by default.", ) enabled_event_metrics: set[EventMetricName] = Field( default_factory=lambda: { - EventMetricName.RQS_LATENCY, + EventMetricName.RQS_CLOCK, }, description="Which per-event KPIs to collect by default.", ) + sample_period_s: float = Field( + default = SamplePeriods.STANDARD_TIME, + ge = SamplePeriods.MINIMUM_TIME, + le = SamplePeriods.MAXIMUM_TIME, + description="constant interval of time to build time series for metrics", + ) + diff --git a/src/app/simulation_run.py b/src/app/simulation_run.py deleted file mode 100644 index 1176751..0000000 --- a/src/app/simulation_run.py +++ /dev/null @@ -1,60 +0,0 @@ -"""simulation of the server""" - -from __future__ import annotations - -from typing import TYPE_CHECKING - -import simpy - -from app.core.helpers.requests_generator import requests_generator -from app.schemas.simulation_output import SimulationOutput - -if TYPE_CHECKING: - from collections.abc import Generator - - import numpy as np - - from app.schemas.full_simulation_input import SimulationPayload - - - - -### TO MODIFY EVERYTHING WORK IN PROGRESS - -def run_simulation( - input_data: SimulationPayload, - *, - rng: np.random.Generator, -) -> SimulationOutput: - """Simulation executor in Simpy""" - sim_settings = input_data.sim_settings - - requests_generator_input = input_data.rqs_input - - gaps: Generator[float, None, None] = requests_generator( - requests_generator_input, - sim_settings, - rng=rng) - env = simpy.Environment() - - - total_request_per_time_period = { - "simulation_time": sim_settings.total_simulation_time, - "total_requests": 0, - } - - def arrival_process( - env: simpy.Environment, - ) -> Generator[simpy.events.Event, None, None]: - for gap in gaps: - yield env.timeout(gap) - total_request_per_time_period["total_requests"] += 1 - - env.process(arrival_process(env)) - env.run(until=sim_settings.total_simulation_time) - - return SimulationOutput( - total_requests=total_request_per_time_period, - metric_2=str(requests_generator_input.avg_request_per_minute_per_user.mean), - metric_n=str(requests_generator_input.avg_active_users.mean), - ) diff --git a/tests/conftest.py b/tests/conftest.py index 7d0f587..09a80d4 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,33 +1,16 @@ """Pytest configuration file for setting up test fixtures and plugins.""" -import os -from collections.abc import AsyncGenerator, Generator -from pathlib import Path -from typing import cast import pytest -from alembic import command -from alembic.config import Config -from dotenv import load_dotenv -from fastapi.testclient import TestClient from numpy.random import Generator as NpGenerator from numpy.random import default_rng -from sqlalchemy.ext.asyncio import ( - AsyncEngine, - AsyncSession, - async_sessionmaker, - create_async_engine, -) -from sqlalchemy_utils import create_database, database_exists, drop_database from app.config.constants import ( EventMetricName, SampledMetricName, + SamplePeriods, TimeDefaults, ) -from app.config.settings import settings -from app.db.session import get_db -from app.main import app from app.schemas.full_simulation_input import SimulationPayload from app.schemas.random_variables_config import RVConfig from app.schemas.rqs_generator_input import RqsGeneratorInput @@ -38,106 +21,6 @@ TopologyNodes, ) -# Load test environment variables from .env.test -ENV_PATH = Path(__file__).resolve().parents[1] / "docker_fs" / ".env.test" -load_dotenv(dotenv_path=ENV_PATH, override=True) - - -class DummySession: - """A no-op async session substitute for unit tests.""" - - def add(self, instance: object) -> None: - """Perform a no-op add.""" - - async def commit(self) -> None: - """Perform a no-op commit.""" - - async def refresh(self, instance: object) -> None: - """Perform a no-op refresh.""" - - async def flush(self) -> None: - """Perform a no-op flush, required for unit tests.""" - - -async def override_get_db() -> AsyncGenerator[AsyncSession, None]: - """Yield a dummy async session for DB dependency override in unit tests.""" - # Cast so mypy sees an AsyncSession - yield cast("AsyncSession", DummySession()) - - -# Override the get_db dependency for all tests that use the app directly -app.dependency_overrides[get_db] = override_get_db - - -@pytest.fixture(scope="module") -def client() -> TestClient: - """Return a TestClient with the database dependency overridden.""" - return TestClient(app) - - -@pytest.fixture(scope="session", autouse=True) -def setup_test_database( - request: pytest.FixtureRequest, -) -> Generator[None, None, None]: - """Drop and recreate the test database, then apply migrations.""" - markexpr = request.config.option.markexpr or "" - is_integration_test = ( - "integration" in markexpr and "not integration" not in markexpr - ) - - if not is_integration_test: - yield - return - - # --- SETUP: This code runs before the test session starts --- - sync_db_url = settings.db_url.replace("+asyncpg", "") - - if database_exists(sync_db_url): - drop_database(sync_db_url) - create_database(sync_db_url) - - os.environ["ENVIRONMENT"] = "test" - alembic_cfg = Config("alembic.ini") - command.upgrade(alembic_cfg, "head") - - try: - # The test session runs at this point - yield - finally: - # --- TEARDOWN: This code runs after the test session ends --- - if database_exists(sync_db_url): - drop_database(sync_db_url) - - -@pytest.fixture(scope="session") -def async_engine() -> AsyncEngine: - """Create and return an async SQLAlchemy engine for the test session.""" - return create_async_engine(settings.db_url, future=True, echo=False) - - -@pytest.fixture -async def db_session(async_engine: AsyncEngine) -> AsyncGenerator[AsyncSession, None]: - """Yield an async DB session wrapped in a transaction that is always rolled back.""" - # This fixture ensures that each test is isolated from others - # within the same session. - connection = await async_engine.connect() - transaction = await connection.begin() - - session_factory = async_sessionmaker( - bind=connection, - expire_on_commit=False, - class_=AsyncSession, - ) - session = session_factory() - - try: - yield session - finally: - # Roll back the transaction to discard any changes made during the test - await transaction.rollback() - # Close the connection - await connection.close() - # ============================================================================ # STANDARD CONFIGURATION FOR INPUT VARIABLES # ============================================================================ @@ -171,7 +54,7 @@ def enabled_sample_metrics() -> set[SampledMetricName]: def enabled_event_metrics() -> set[EventMetricName]: """Default per-event KPIs collected in most tests.""" return { - EventMetricName.RQS_LATENCY, + EventMetricName.RQS_CLOCK, } @@ -195,6 +78,7 @@ def sim_settings( total_simulation_time=TimeDefaults.MIN_SIMULATION_TIME, enabled_sample_metrics=enabled_sample_metrics, enabled_event_metrics=enabled_event_metrics, + sample_period_s=SamplePeriods.STANDARD_TIME, ) diff --git a/tests/integration/db_initialization/__init__.py b/tests/integration/db_initialization/__init__.py deleted file mode 100644 index 8c00603..0000000 --- a/tests/integration/db_initialization/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Database initialization integration tests.""" diff --git a/tests/integration/db_initialization/test_db_connection.py b/tests/integration/db_initialization/test_db_connection.py deleted file mode 100644 index 8f725ee..0000000 --- a/tests/integration/db_initialization/test_db_connection.py +++ /dev/null @@ -1,16 +0,0 @@ -import pytest -from sqlalchemy import text - -from app.db.session import engine - - -@pytest.mark.integration -async def test_db_connection() -> None: - """Verify that the SQLAlchemy engine can connect to the database. - - This test ensures that the database connection is properly configured - and can execute a simple query. - """ - async with engine.connect() as conn: - result = await conn.execute(text("SELECT 1")) - assert result.scalar_one() == 1 diff --git a/tests/integration/db_initialization/test_init_models.py b/tests/integration/db_initialization/test_init_models.py deleted file mode 100644 index 0ae8e69..0000000 --- a/tests/integration/db_initialization/test_init_models.py +++ /dev/null @@ -1,17 +0,0 @@ -import pytest -from sqlalchemy import text -from sqlalchemy.exc import SQLAlchemyError -from sqlalchemy.ext.asyncio import create_async_engine - -from app.config.settings import settings - -pytestmark = [pytest.mark.integration, pytest.mark.asyncio] - -async def test_users_table_exists_after_migrations() -> None: - engine = create_async_engine(settings.db_url, echo=False) - try: - async with engine.connect() as conn: - await conn.execute(text("SELECT 1")) - except SQLAlchemyError: - pytest.fail("Database connection or Alembic setup failed.") - diff --git a/tests/unit/db/test_settings.py b/tests/unit/db/test_settings.py deleted file mode 100644 index 9a277bc..0000000 --- a/tests/unit/db/test_settings.py +++ /dev/null @@ -1,18 +0,0 @@ -from app.config.settings import Settings - - -def test_settings_defaults() -> None: - """Ensure that default settings are applied correctly. - - This test verifies that the Settings class properly handles explicit configuration - values and applies the correct defaults for unspecified fields. - """ - s = Settings( - db_host="localhost", - db_user="x", - db_password="y", - db_name="z", - db_url="postgresql+asyncpg://x:y@localhost/z", - ) - assert s.environment == "test" - assert "postgresql" in s.db_url diff --git a/tests/unit/runtime/engine/test_edge.py b/tests/unit/runtime/engine/test_edge.py index 10cb758..37ad296 100644 --- a/tests/unit/runtime/engine/test_edge.py +++ b/tests/unit/runtime/engine/test_edge.py @@ -1,20 +1,28 @@ -"""Unit-tests for :class:`EdgeRuntime` (delivery / drop paths).""" +""" +Unit tests for :class:`EdgeRuntime`: +* delivery vs. drop paths +* connection-counter bookkeeping +* public properties (`enabled_metrics`, `concurrent_connections`) +""" + from __future__ import annotations from typing import TYPE_CHECKING, cast import simpy -from app.config.constants import SystemEdges, SystemNodes +from app.config.constants import SampledMetricName, SystemEdges, SystemNodes from app.runtime.actors.edge import EdgeRuntime from app.runtime.rqs_state import RequestState from app.schemas.random_variables_config import RVConfig from app.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: - import numpy as np + from app.schemas.simulation_settings_input import SimulationSettings + + # --------------------------------------------------------------------------- # # Dummy RNG # # --------------------------------------------------------------------------- # @@ -24,26 +32,38 @@ class DummyRNG: """Return preset values for ``uniform`` and ``normal``.""" def __init__(self, *, uniform_value: float, normal_value: float = 0.0) -> None: - """Attribute init""" + """To complete""" self.uniform_value = uniform_value self.normal_value = normal_value self.uniform_called = False self.normal_called = False - - def uniform(self) -> float: - """Intercept ``rng.uniform`` calls.""" + def uniform(self) -> float: # called by EdgeRuntime + """To complete""" self.uniform_called = True return self.uniform_value - def normal(self, _mean: float, _sigma: float) -> float: - """Intercept ``rng.normal`` calls.""" + def normal(self, _mean: float, _sigma: float) -> float: # called by sampler + """To complete""" self.normal_called = True return self.normal_value # --------------------------------------------------------------------------- # -# Helper to build an EdgeRuntime # +# Minimal stub for SimulationSettings # +# --------------------------------------------------------------------------- # + + +class _SettingsStub: + """Only the attributes required by EdgeRuntime/build_edge_metrics.""" + + def __init__(self, enabled_sample_metrics: set[SampledMetricName]) -> None: + self.enabled_sample_metrics = enabled_sample_metrics + self.sample_period_s = 0.001 # not used in these unit tests + + +# --------------------------------------------------------------------------- # +# Helper factory # # --------------------------------------------------------------------------- # @@ -54,10 +74,10 @@ def _make_edge( normal_value: float = 0.0, dropout_rate: float = 0.0, ) -> tuple[EdgeRuntime, DummyRNG, simpy.Store]: - """Attributes init""" + """Create a fully wired :class:`EdgeRuntime` + associated objects.""" rng = DummyRNG(uniform_value=uniform_value, normal_value=normal_value) - store: simpy.Store = simpy.Store(env) + edge_cfg = Edge( id="edge-1", source="src", @@ -66,11 +86,16 @@ def _make_edge( dropout_rate=dropout_rate, ) + settings_stub = _SettingsStub( + enabled_sample_metrics={SampledMetricName.EDGE_CONCURRENT_CONNECTION}, + ) + edge_rt = EdgeRuntime( env=env, edge_config=edge_cfg, rng=cast("np.random.Generator", rng), target_box=store, + settings=cast("SimulationSettings", settings_stub), ) return edge_rt, rng, store @@ -80,8 +105,8 @@ def _make_edge( # --------------------------------------------------------------------------- # -def test_edge_delivers_message_when_not_dropped() -> None: - """A message traverses the edge and calls the latency sampler once.""" +def test_edge_delivers_message() -> None: + """A request traverses the edge when `uniform >= dropout_rate`.""" env = simpy.Environment() edge_rt, rng, store = _make_edge( env, @@ -93,24 +118,32 @@ def test_edge_delivers_message_when_not_dropped() -> None: state = RequestState(id=1, initial_time=0.0) state.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) + assert edge_rt.concurrent_connections == 0 + edge_rt.transport(state) env.run() + # message delivered assert len(store.items) == 1 delivered: RequestState = store.items[0] last = delivered.history[-1] assert last.component_type is SystemEdges.NETWORK_CONNECTION assert last.component_id == "edge-1" + + # RNG calls assert rng.uniform_called is True assert rng.normal_called is True + # counter restored + assert edge_rt.concurrent_connections == 0 + -def test_edge_drops_message_when_uniform_below_threshold() -> None: - """A message is dropped when the random draw is below *dropout_rate*.""" +def test_edge_drops_message() -> None: + """A request is dropped when `uniform < dropout_rate`.""" env = simpy.Environment() edge_rt, rng, store = _make_edge( env, - uniform_value=0.1, # < dropout → drop + uniform_value=0.1, # < dropout_rate → drop dropout_rate=0.5, ) @@ -120,8 +153,33 @@ def test_edge_drops_message_when_uniform_below_threshold() -> None: edge_rt.transport(state) env.run() + # no delivery assert len(store.items) == 0 last = state.history[-1] assert last.component_id.endswith("dropped") + + # RNG calls assert rng.uniform_called is True assert rng.normal_called is False + + # counter unchanged + assert edge_rt.concurrent_connections == 0 + + +def test_metric_dict_initialised_and_mutable() -> None: + """`enabled_metrics` exposes the default key and supports list append.""" + env = simpy.Environment() + edge_rt, _rng, _store = _make_edge( + env, + uniform_value=0.9, + dropout_rate=0.0, + ) + + key = SampledMetricName.EDGE_CONCURRENT_CONNECTION + assert key in edge_rt.enabled_metrics + assert edge_rt.enabled_metrics[key] == [] + + # Simulate a collector append + edge_rt.enabled_metrics[key].append(5) + assert edge_rt.enabled_metrics[key] == [5] + diff --git a/tests/unit/runtime/engine/test_server.py b/tests/unit/runtime/engine/test_server.py index 69292ba..9e7edb1 100644 --- a/tests/unit/runtime/engine/test_server.py +++ b/tests/unit/runtime/engine/test_server.py @@ -1,13 +1,18 @@ -"""Unit tests for the concurrent ServerRuntime. +"""Unit-tests for ServerRuntime concurrency, resource handling and metrics. -The tests create an isolated SimPy environment with a test fixture that sets up: -* A single ServerRuntime instance. -* A mock "instant" edge that immediately forwards requests to a sink. -* A server configuration with 2 CPU cores and 1024 MB of RAM. -* A single endpoint with a sequence of RAM, CPU, and I/O steps. +Each test spins up an isolated SimPy environment containing: -This setup allows for precise testing of resource acquisition/release and -the correct execution of the processing pipeline for a single request. +* one ServerRuntime +* one mock edge with zero-latency delivery (InstantEdge) +* an inbox (simpy.Store) for incoming requests +* a sink (simpy.Store) that receives the request after the server + +The server exposes: + RAM = 1024 MB, CPU cores = 2 +and a single endpoint with the step sequence: + RAM(128 MB) ➜ CPU(5 ms) ➜ I/O(20 ms). + +All timings are in **seconds** because SimPy's clock is unit-agnostic. """ from __future__ import annotations @@ -21,56 +26,51 @@ EndpointStepCPU, EndpointStepIO, EndpointStepRAM, + SampledMetricName, StepOperation, - SystemNodes, ) from app.resources.server_containers import build_containers from app.runtime.actors.server import ServerRuntime from app.runtime.rqs_state import RequestState +from app.schemas.simulation_settings_input import SimulationSettings from app.schemas.system_topology.endpoint import Endpoint, Step from app.schemas.system_topology.full_system_topology import Server, ServerResources if TYPE_CHECKING: + from collections.abc import Generator -# --------------------------------------------------------------------------- # -# Test Helper: A mock edge that instantly delivers requests to a sink. # -# --------------------------------------------------------------------------- # -class InstantEdge: - """A test stub for EdgeRuntime with zero latency and no drops. - This mock allows us to test the ServerRuntime in isolation, without - introducing the complexities of network simulation. - """ +# ---------------------------------------------------------------------------# +# Helpers # +# ---------------------------------------------------------------------------# +class InstantEdge: + """Stub EdgeRuntime with zero latency and no drops.""" def __init__(self, env: simpy.Environment, sink: simpy.Store) -> None: - """Initializes the mock edge.""" - self.env = env - self.sink = sink + """Attribute""" + self._env = env + self._sink = sink def transport(self, state: RequestState) -> simpy.Process: - """Immediately puts the state in the sink via a SimPy process.""" - return self.env.process(self._deliver(state)) + """Transport function""" + return self._env.process(self._deliver(state)) def _deliver(self, state: RequestState) -> Generator[simpy.Event, None, None]: - """The generator function that performs the delivery.""" - yield self.sink.put(state) + """Deliver function""" + yield self._sink.put(state) -# --------------------------------------------------------------------------- # -# Test Fixture: Creates a standardized ServerRuntime for tests. # -# --------------------------------------------------------------------------- # def _make_server_runtime( env: simpy.Environment, ) -> tuple[ServerRuntime, simpy.Store]: - """Create a ServerRuntime with a dummy edge and return it and the sink store.""" - # 1. Define server resources + """Return a (ServerRuntime, sink) ready for injection tests.""" + # Resources res_spec = ServerResources(cpu_cores=2, ram_mb=1024) containers = build_containers(env, res_spec) - # 2. Define a single endpoint with a sequence of steps - # Order: RAM (instant) -> CPU (5ms) -> I/O (20ms) + # Endpoint: RAM → CPU → I/O endpoint = Endpoint( endpoint_name="/predict", steps=[ @@ -89,93 +89,95 @@ def _make_server_runtime( ], ) - # 3. Create the full server configuration - server_cfg = Server( - id="api_srv", - endpoints=[endpoint], - server_resources=res_spec, - ) + server_cfg = Server(id="api_srv", endpoints=[endpoint], server_resources=res_spec) - # 4. Set up the simulation environment with mock components inbox: simpy.Store = simpy.Store(env) sink: simpy.Store = simpy.Store(env) edge = InstantEdge(env, sink) - # 5. Instantiate the ServerRuntime + settings = SimulationSettings(total_simulation_time=1900, sample_period_s=0.1) + runtime = ServerRuntime( env=env, server_resources=containers, server_config=server_cfg, - out_edge=edge, # type: ignore[arg-type] + out_edge=edge, # type: ignore[arg-type] server_box=inbox, - rng=default_rng(0), + settings=settings, + rng=default_rng(seed=0), ) return runtime, sink -# --------------------------------------------------------------------------- # -# Unit Tests # -# --------------------------------------------------------------------------- # -def test_server_reserves_and_releases_ram() -> None: - """Verify that RAM is acquired at the start and fully released at the end.""" +# ---------------------------------------------------------------------------# +# Tests # +# ---------------------------------------------------------------------------# +def test_ram_is_released_at_end() -> None: + """RAM tokens must return to capacity once the request finishes.""" env = simpy.Environment() server, sink = _make_server_runtime(env) - # Prepare a request and inject it into the server's inbox. - req = RequestState(id=1, initial_time=0.0) - server.server_box.put(req) - - # Start the server's dispatcher process and run until all events are processed. + server.server_box.put(RequestState(id=1, initial_time=0.0)) server.start() env.run() - ram_container = server.server_resources["RAM"] - # After the request is fully processed, the RAM level must return to its capacity. - assert ram_container.level == ram_container.capacity, "RAM must be fully released" - # The request should have successfully reached the sink. - assert len(sink.items) == 1, "Request should be forwarded to the sink" + ram = server.server_resources["RAM"] + assert ram.level == ram.capacity + assert len(sink.items) == 1 def test_cpu_core_held_only_during_cpu_step() -> None: - """Verify a CPU core is held exclusively during the CPU-bound step.""" + """Exactly one core is busy during the CPU-bound window (0 5ms).""" env = simpy.Environment() server, _ = _make_server_runtime(env) - cpu_container = server.server_resources["CPU"] + cpu = server.server_resources["CPU"] - # Inject a single request and start the server. - req = RequestState(id=2, initial_time=0.0) - server.server_box.put(req) + server.server_box.put(RequestState(id=2, initial_time=0.0)) server.start() - # The endpoint logic is: RAM (t=0) -> CPU (t=0 to t=0.005). - # Run the simulation to a point *during* the CPU step. - env.run(until=0.004) - # The server has 2 cores. One should be busy. - assert cpu_container.level == 1, "One core should still be busy during the CPU step" + env.run(until=0.004) # mid-CPU step + assert cpu.level == 1 # 2-1 - # Now, run the simulation past the CPU step's completion. - env.run(until=0.006) - # The core should have been released immediately after the CPU step. - assert cpu_container.level == 2, "Core should be released after the CPU step" + env.run(until=0.006) # after CPU step + assert cpu.level == 2 # released -def test_server_records_hop_in_history() -> None: - """Verify that the request's history correctly records its arrival at the server.""" +def test_ready_and_io_queue_counters() -> None: + """ready_queue_len and io_queue_len should toggle as CPU⇄I/O phases alternate.""" env = simpy.Environment() - server, sink = _make_server_runtime(env) + server, _ = _make_server_runtime(env) - # Inject a request and run the simulation to completion. - req = RequestState(id=3, initial_time=0.0) - server.server_box.put(req) + server.server_box.put(RequestState(id=3, initial_time=0.0)) server.start() + + # 1) before start queues are empty + assert server.ready_queue_len == 0 + assert server.io_queue_len == 0 + + # 2) during CPU (0 5ms) ready queue+1 + env.run(until=0.003) + assert server.ready_queue_len == 1 + assert server.io_queue_len == 0 + + # 3) during I/O (5 25ms) ready 0, io+1 + env.run(until=0.010) + assert server.ready_queue_len == 0 + assert server.io_queue_len == 1 + + # 4) completed both back to 0 env.run() + assert server.ready_queue_len == 0 + assert server.io_queue_len == 0 + - # The request must be in the sink. - assert len(sink.items) == 1, "Request did not reach the sink" - finished_req = sink.items[0] +def test_enabled_metrics_dict_populated() -> None: + """ServerRuntime must create lists for every mandatory sampled metric.""" + env = simpy.Environment() + server, _ = _make_server_runtime(env) - # Check the request's history for a 'Hop' corresponding to this server. - assert any( - hop.component_type == SystemNodes.SERVER and hop.component_id == "api_srv" - for hop in finished_req.history - ), "Server hop missing in request history" + mandatory = { + SampledMetricName.RAM_IN_USE, + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.EVENT_LOOP_IO_SLEEP, + } + assert mandatory.issubset(server.enabled_metrics.keys()) diff --git a/tests/unit/test_health_route.py b/tests/unit/test_health_route.py deleted file mode 100644 index 57cfe1f..0000000 --- a/tests/unit/test_health_route.py +++ /dev/null @@ -1,8 +0,0 @@ -from fastapi.testclient import TestClient - - -def test_health_endpoint_returns_ok(client: TestClient) -> None: - """Ensure the /health endpoint returns HTTP 200 and the expected JSON payload.""" - response = client.get("/health") - assert response.status_code == 200 - assert response.json() == {"status": "ok"} From 7f1f7dea3e3f93cb1eaebc35087d479dabf3ea6b Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 1 Aug 2025 15:35:32 +0200 Subject: [PATCH 19/35] Features/metrics elaboration (#8) * introduction to the analyzer class + tests * refactor of the analyzer --- poetry.lock | 481 +++++++++++++++++++++++++++- pyproject.toml | 1 + src/app/config/constants.py | 28 +- src/app/config/plot_constants.py | 47 +++ src/app/metrics/analyzer.py | 225 +++++++++++++ tests/unit/metrics/test_analyzer.py | 190 +++++++++++ 6 files changed, 965 insertions(+), 7 deletions(-) create mode 100644 src/app/config/plot_constants.py create mode 100644 src/app/metrics/analyzer.py create mode 100644 tests/unit/metrics/test_analyzer.py diff --git a/poetry.lock b/poetry.lock index e657f54..543faa8 100644 --- a/poetry.lock +++ b/poetry.lock @@ -22,6 +22,97 @@ files = [ {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] +[[package]] +name = "contourpy" +version = "1.3.3" +description = "Python library for calculating contours of 2D quadrilateral grids" +optional = false +python-versions = ">=3.11" +files = [ + {file = "contourpy-1.3.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:709a48ef9a690e1343202916450bc48b9e51c049b089c7f79a267b46cffcdaa1"}, + {file = "contourpy-1.3.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:23416f38bfd74d5d28ab8429cc4d63fa67d5068bd711a85edb1c3fb0c3e2f381"}, + {file = "contourpy-1.3.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:929ddf8c4c7f348e4c0a5a3a714b5c8542ffaa8c22954862a46ca1813b667ee7"}, + {file = "contourpy-1.3.3-cp311-cp311-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:9e999574eddae35f1312c2b4b717b7885d4edd6cb46700e04f7f02db454e67c1"}, + {file = "contourpy-1.3.3-cp311-cp311-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0bf67e0e3f482cb69779dd3061b534eb35ac9b17f163d851e2a547d56dba0a3a"}, + {file = "contourpy-1.3.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:51e79c1f7470158e838808d4a996fa9bac72c498e93d8ebe5119bc1e6becb0db"}, + {file = "contourpy-1.3.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:598c3aaece21c503615fd59c92a3598b428b2f01bfb4b8ca9c4edeecc2438620"}, + {file = "contourpy-1.3.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:322ab1c99b008dad206d406bb61d014cf0174df491ae9d9d0fac6a6fda4f977f"}, + {file = "contourpy-1.3.3-cp311-cp311-win32.whl", hash = "sha256:fd907ae12cd483cd83e414b12941c632a969171bf90fc937d0c9f268a31cafff"}, + {file = "contourpy-1.3.3-cp311-cp311-win_amd64.whl", hash = "sha256:3519428f6be58431c56581f1694ba8e50626f2dd550af225f82fb5f5814d2a42"}, + {file = "contourpy-1.3.3-cp311-cp311-win_arm64.whl", hash = "sha256:15ff10bfada4bf92ec8b31c62bf7c1834c244019b4a33095a68000d7075df470"}, + {file = "contourpy-1.3.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b08a32ea2f8e42cf1d4be3169a98dd4be32bafe4f22b6c4cb4ba810fa9e5d2cb"}, + {file = "contourpy-1.3.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:556dba8fb6f5d8742f2923fe9457dbdd51e1049c4a43fd3986a0b14a1d815fc6"}, + {file = "contourpy-1.3.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92d9abc807cf7d0e047b95ca5d957cf4792fcd04e920ca70d48add15c1a90ea7"}, + {file = "contourpy-1.3.3-cp312-cp312-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:b2e8faa0ed68cb29af51edd8e24798bb661eac3bd9f65420c1887b6ca89987c8"}, + {file = "contourpy-1.3.3-cp312-cp312-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:626d60935cf668e70a5ce6ff184fd713e9683fb458898e4249b63be9e28286ea"}, + {file = "contourpy-1.3.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4d00e655fcef08aba35ec9610536bfe90267d7ab5ba944f7032549c55a146da1"}, + {file = "contourpy-1.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:451e71b5a7d597379ef572de31eeb909a87246974d960049a9848c3bc6c41bf7"}, + {file = "contourpy-1.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:459c1f020cd59fcfe6650180678a9993932d80d44ccde1fa1868977438f0b411"}, + {file = "contourpy-1.3.3-cp312-cp312-win32.whl", hash = "sha256:023b44101dfe49d7d53932be418477dba359649246075c996866106da069af69"}, + {file = "contourpy-1.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:8153b8bfc11e1e4d75bcb0bff1db232f9e10b274e0929de9d608027e0d34ff8b"}, + {file = "contourpy-1.3.3-cp312-cp312-win_arm64.whl", hash = "sha256:07ce5ed73ecdc4a03ffe3e1b3e3c1166db35ae7584be76f65dbbe28a7791b0cc"}, + {file = "contourpy-1.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:177fb367556747a686509d6fef71d221a4b198a3905fe824430e5ea0fda54eb5"}, + {file = "contourpy-1.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d002b6f00d73d69333dac9d0b8d5e84d9724ff9ef044fd63c5986e62b7c9e1b1"}, + {file = "contourpy-1.3.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:348ac1f5d4f1d66d3322420f01d42e43122f43616e0f194fc1c9f5d830c5b286"}, + {file = "contourpy-1.3.3-cp313-cp313-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:655456777ff65c2c548b7c454af9c6f33f16c8884f11083244b5819cc214f1b5"}, + {file = "contourpy-1.3.3-cp313-cp313-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:644a6853d15b2512d67881586bd03f462c7ab755db95f16f14d7e238f2852c67"}, + {file = "contourpy-1.3.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4debd64f124ca62069f313a9cb86656ff087786016d76927ae2cf37846b006c9"}, + {file = "contourpy-1.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a15459b0f4615b00bbd1e91f1b9e19b7e63aea7483d03d804186f278c0af2659"}, + {file = "contourpy-1.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ca0fdcd73925568ca027e0b17ab07aad764be4706d0a925b89227e447d9737b7"}, + {file = "contourpy-1.3.3-cp313-cp313-win32.whl", hash = "sha256:b20c7c9a3bf701366556e1b1984ed2d0cedf999903c51311417cf5f591d8c78d"}, + {file = "contourpy-1.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263"}, + {file = "contourpy-1.3.3-cp313-cp313-win_arm64.whl", hash = "sha256:fd914713266421b7536de2bfa8181aa8c699432b6763a0ea64195ebe28bff6a9"}, + {file = "contourpy-1.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:88df9880d507169449d434c293467418b9f6cbe82edd19284aa0409e7fdb933d"}, + {file = "contourpy-1.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:d06bb1f751ba5d417047db62bca3c8fde202b8c11fb50742ab3ab962c81e8216"}, + {file = "contourpy-1.3.3-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e4e6b05a45525357e382909a4c1600444e2a45b4795163d3b22669285591c1ae"}, + {file = "contourpy-1.3.3-cp313-cp313t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ab3074b48c4e2cf1a960e6bbeb7f04566bf36b1861d5c9d4d8ac04b82e38ba20"}, + {file = "contourpy-1.3.3-cp313-cp313t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c3d53c796f8647d6deb1abe867daeb66dcc8a97e8455efa729516b997b8ed99"}, + {file = "contourpy-1.3.3-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:50ed930df7289ff2a8d7afeb9603f8289e5704755c7e5c3bbd929c90c817164b"}, + {file = "contourpy-1.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4feffb6537d64b84877da813a5c30f1422ea5739566abf0bd18065ac040e120a"}, + {file = "contourpy-1.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2b7e9480ffe2b0cd2e787e4df64270e3a0440d9db8dc823312e2c940c167df7e"}, + {file = "contourpy-1.3.3-cp313-cp313t-win32.whl", hash = "sha256:283edd842a01e3dcd435b1c5116798d661378d83d36d337b8dde1d16a5fc9ba3"}, + {file = "contourpy-1.3.3-cp313-cp313t-win_amd64.whl", hash = "sha256:87acf5963fc2b34825e5b6b048f40e3635dd547f590b04d2ab317c2619ef7ae8"}, + {file = "contourpy-1.3.3-cp313-cp313t-win_arm64.whl", hash = "sha256:3c30273eb2a55024ff31ba7d052dde990d7d8e5450f4bbb6e913558b3d6c2301"}, + {file = "contourpy-1.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fde6c716d51c04b1c25d0b90364d0be954624a0ee9d60e23e850e8d48353d07a"}, + {file = "contourpy-1.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cbedb772ed74ff5be440fa8eee9bd49f64f6e3fc09436d9c7d8f1c287b121d77"}, + {file = "contourpy-1.3.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:22e9b1bd7a9b1d652cd77388465dc358dafcd2e217d35552424aa4f996f524f5"}, + {file = "contourpy-1.3.3-cp314-cp314-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a22738912262aa3e254e4f3cb079a95a67132fc5a063890e224393596902f5a4"}, + {file = "contourpy-1.3.3-cp314-cp314-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:afe5a512f31ee6bd7d0dda52ec9864c984ca3d66664444f2d72e0dc4eb832e36"}, + {file = "contourpy-1.3.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f64836de09927cba6f79dcd00fdd7d5329f3fccc633468507079c829ca4db4e3"}, + {file = "contourpy-1.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1fd43c3be4c8e5fd6e4f2baeae35ae18176cf2e5cced681cca908addf1cdd53b"}, + {file = "contourpy-1.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6afc576f7b33cf00996e5c1102dc2a8f7cc89e39c0b55df93a0b78c1bd992b36"}, + {file = "contourpy-1.3.3-cp314-cp314-win32.whl", hash = "sha256:66c8a43a4f7b8df8b71ee1840e4211a3c8d93b214b213f590e18a1beca458f7d"}, + {file = "contourpy-1.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd"}, + {file = "contourpy-1.3.3-cp314-cp314-win_arm64.whl", hash = "sha256:95b181891b4c71de4bb404c6621e7e2390745f887f2a026b2d99e92c17892339"}, + {file = "contourpy-1.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:33c82d0138c0a062380332c861387650c82e4cf1747aaa6938b9b6516762e772"}, + {file = "contourpy-1.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ea37e7b45949df430fe649e5de8351c423430046a2af20b1c1961cae3afcda77"}, + {file = "contourpy-1.3.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d304906ecc71672e9c89e87c4675dc5c2645e1f4269a5063b99b0bb29f232d13"}, + {file = "contourpy-1.3.3-cp314-cp314t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca658cd1a680a5c9ea96dc61cdbae1e85c8f25849843aa799dfd3cb370ad4fbe"}, + {file = "contourpy-1.3.3-cp314-cp314t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:ab2fd90904c503739a75b7c8c5c01160130ba67944a7b77bbf36ef8054576e7f"}, + {file = "contourpy-1.3.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7301b89040075c30e5768810bc96a8e8d78085b47d8be6e4c3f5a0b4ed478a0"}, + {file = "contourpy-1.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:2a2a8b627d5cc6b7c41a4beff6c5ad5eb848c88255fda4a8745f7e901b32d8e4"}, + {file = "contourpy-1.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fd6ec6be509c787f1caf6b247f0b1ca598bef13f4ddeaa126b7658215529ba0f"}, + {file = "contourpy-1.3.3-cp314-cp314t-win32.whl", hash = "sha256:e74a9a0f5e3fff48fb5a7f2fd2b9b70a3fe014a67522f79b7cca4c0c7e43c9ae"}, + {file = "contourpy-1.3.3-cp314-cp314t-win_amd64.whl", hash = "sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc"}, + {file = "contourpy-1.3.3-cp314-cp314t-win_arm64.whl", hash = "sha256:b7448cb5a725bb1e35ce88771b86fba35ef418952474492cf7c764059933ff8b"}, + {file = "contourpy-1.3.3-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:cd5dfcaeb10f7b7f9dc8941717c6c2ade08f587be2226222c12b25f0483ed497"}, + {file = "contourpy-1.3.3-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:0c1fc238306b35f246d61a1d416a627348b5cf0648648a031e14bb8705fcdfe8"}, + {file = "contourpy-1.3.3-pp311-pypy311_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:70f9aad7de812d6541d29d2bbf8feb22ff7e1c299523db288004e3157ff4674e"}, + {file = "contourpy-1.3.3-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5ed3657edf08512fc3fe81b510e35c2012fbd3081d2e26160f27ca28affec989"}, + {file = "contourpy-1.3.3-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:3d1a3799d62d45c18bafd41c5fa05120b96a28079f2393af559b843d1a966a77"}, + {file = "contourpy-1.3.3.tar.gz", hash = "sha256:083e12155b210502d0bca491432bb04d56dc3432f95a979b429f2848c3dbe880"}, +] + +[package.dependencies] +numpy = ">=1.25" + +[package.extras] +bokeh = ["bokeh", "selenium"] +docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] +mypy = ["bokeh", "contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.17.0)", "types-Pillow"] +test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] +test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist", "wurlitzer"] + [[package]] name = "coverage" version = "7.10.1" @@ -122,6 +213,21 @@ files = [ [package.extras] toml = ["tomli"] +[[package]] +name = "cycler" +version = "0.12.1" +description = "Composable style cycles" +optional = false +python-versions = ">=3.8" +files = [ + {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, + {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, +] + +[package.extras] +docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] +tests = ["pytest", "pytest-cov", "pytest-xdist"] + [[package]] name = "dnspython" version = "2.7.0" @@ -157,6 +263,70 @@ files = [ dnspython = ">=2.0.0" idna = ">=2.0.0" +[[package]] +name = "fonttools" +version = "4.59.0" +description = "Tools to manipulate font files" +optional = false +python-versions = ">=3.9" +files = [ + {file = "fonttools-4.59.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:524133c1be38445c5c0575eacea42dbd44374b310b1ffc4b60ff01d881fabb96"}, + {file = "fonttools-4.59.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:21e606b2d38fed938dde871c5736822dd6bda7a4631b92e509a1f5cd1b90c5df"}, + {file = "fonttools-4.59.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e93df708c69a193fc7987192f94df250f83f3851fda49413f02ba5dded639482"}, + {file = "fonttools-4.59.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:62224a9bb85b4b66d1b46d45cbe43d71cbf8f527d332b177e3b96191ffbc1e64"}, + {file = "fonttools-4.59.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8974b2a266b54c96709bd5e239979cddfd2dbceed331aa567ea1d7c4a2202db"}, + {file = "fonttools-4.59.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:209b75943d158f610b78320eacb5539aa9e920bee2c775445b2846c65d20e19d"}, + {file = "fonttools-4.59.0-cp310-cp310-win32.whl", hash = "sha256:4c908a7036f0f3677f8afa577bcd973e3e20ddd2f7c42a33208d18bee95cdb6f"}, + {file = "fonttools-4.59.0-cp310-cp310-win_amd64.whl", hash = "sha256:8b4309a2775e4feee7356e63b163969a215d663399cce1b3d3b65e7ec2d9680e"}, + {file = "fonttools-4.59.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:841b2186adce48903c0fef235421ae21549020eca942c1da773ac380b056ab3c"}, + {file = "fonttools-4.59.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9bcc1e77fbd1609198966ded6b2a9897bd6c6bcbd2287a2fc7d75f1a254179c5"}, + {file = "fonttools-4.59.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:37c377f7cb2ab2eca8a0b319c68146d34a339792f9420fca6cd49cf28d370705"}, + {file = "fonttools-4.59.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fa39475eaccb98f9199eccfda4298abaf35ae0caec676ffc25b3a5e224044464"}, + {file = "fonttools-4.59.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d3972b13148c1d1fbc092b27678a33b3080d1ac0ca305742b0119b75f9e87e38"}, + {file = "fonttools-4.59.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a408c3c51358c89b29cfa5317cf11518b7ce5de1717abb55c5ae2d2921027de6"}, + {file = "fonttools-4.59.0-cp311-cp311-win32.whl", hash = "sha256:6770d7da00f358183d8fd5c4615436189e4f683bdb6affb02cad3d221d7bb757"}, + {file = "fonttools-4.59.0-cp311-cp311-win_amd64.whl", hash = "sha256:84fc186980231a287b28560d3123bd255d3c6b6659828c642b4cf961e2b923d0"}, + {file = "fonttools-4.59.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:f9b3a78f69dcbd803cf2fb3f972779875b244c1115481dfbdd567b2c22b31f6b"}, + {file = "fonttools-4.59.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:57bb7e26928573ee7c6504f54c05860d867fd35e675769f3ce01b52af38d48e2"}, + {file = "fonttools-4.59.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4536f2695fe5c1ffb528d84a35a7d3967e5558d2af58b4775e7ab1449d65767b"}, + {file = "fonttools-4.59.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:885bde7d26e5b40e15c47bd5def48b38cbd50830a65f98122a8fb90962af7cd1"}, + {file = "fonttools-4.59.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6801aeddb6acb2c42eafa45bc1cb98ba236871ae6f33f31e984670b749a8e58e"}, + {file = "fonttools-4.59.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:31003b6a10f70742a63126b80863ab48175fb8272a18ca0846c0482968f0588e"}, + {file = "fonttools-4.59.0-cp312-cp312-win32.whl", hash = "sha256:fbce6dae41b692a5973d0f2158f782b9ad05babc2c2019a970a1094a23909b1b"}, + {file = "fonttools-4.59.0-cp312-cp312-win_amd64.whl", hash = "sha256:332bfe685d1ac58ca8d62b8d6c71c2e52a6c64bc218dc8f7825c9ea51385aa01"}, + {file = "fonttools-4.59.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:78813b49d749e1bb4db1c57f2d4d7e6db22c253cb0a86ad819f5dc197710d4b2"}, + {file = "fonttools-4.59.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:401b1941ce37e78b8fd119b419b617277c65ae9417742a63282257434fd68ea2"}, + {file = "fonttools-4.59.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:efd7e6660674e234e29937bc1481dceb7e0336bfae75b856b4fb272b5093c5d4"}, + {file = "fonttools-4.59.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:51ab1ff33c19e336c02dee1e9fd1abd974a4ca3d8f7eef2a104d0816a241ce97"}, + {file = "fonttools-4.59.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a9bf8adc9e1f3012edc8f09b08336272aec0c55bc677422273e21280db748f7c"}, + {file = "fonttools-4.59.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:37e01c6ec0c98599778c2e688350d624fa4770fbd6144551bd5e032f1199171c"}, + {file = "fonttools-4.59.0-cp313-cp313-win32.whl", hash = "sha256:70d6b3ceaa9cc5a6ac52884f3b3d9544e8e231e95b23f138bdb78e6d4dc0eae3"}, + {file = "fonttools-4.59.0-cp313-cp313-win_amd64.whl", hash = "sha256:26731739daa23b872643f0e4072d5939960237d540c35c14e6a06d47d71ca8fe"}, + {file = "fonttools-4.59.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8d77f92438daeaddc05682f0f3dac90c5b9829bcac75b57e8ce09cb67786073c"}, + {file = "fonttools-4.59.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:60f6665579e909b618282f3c14fa0b80570fbf1ee0e67678b9a9d43aa5d67a37"}, + {file = "fonttools-4.59.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:169b99a2553a227f7b5fea8d9ecd673aa258617f466b2abc6091fe4512a0dcd0"}, + {file = "fonttools-4.59.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:052444a5d0151878e87e3e512a1aa1a0ab35ee4c28afde0a778e23b0ace4a7de"}, + {file = "fonttools-4.59.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d40dcf533ca481355aa7b682e9e079f766f35715defa4929aeb5597f9604272e"}, + {file = "fonttools-4.59.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:b818db35879d2edf7f46c7e729c700a0bce03b61b9412f5a7118406687cb151d"}, + {file = "fonttools-4.59.0-cp39-cp39-win32.whl", hash = "sha256:2e7cf8044ce2598bb87e44ba1d2c6e45d7a8decf56055b92906dc53f67c76d64"}, + {file = "fonttools-4.59.0-cp39-cp39-win_amd64.whl", hash = "sha256:902425f5afe28572d65d2bf9c33edd5265c612ff82c69e6f83ea13eafc0dcbea"}, + {file = "fonttools-4.59.0-py3-none-any.whl", hash = "sha256:241313683afd3baacb32a6bd124d0bce7404bc5280e12e291bae1b9bba28711d"}, + {file = "fonttools-4.59.0.tar.gz", hash = "sha256:be392ec3529e2f57faa28709d60723a763904f71a2b63aabe14fee6648fe3b14"}, +] + +[package.extras] +all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "pycairo", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0)", "xattr", "zopfli (>=0.1.4)"] +graphite = ["lz4 (>=1.7.4.2)"] +interpolatable = ["munkres", "pycairo", "scipy"] +lxml = ["lxml (>=4.0)"] +pathops = ["skia-pathops (>=0.5.0)"] +plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] +symfont = ["sympy"] +type1 = ["xattr"] +unicode = ["unicodedata2 (>=15.1.0)"] +woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] + [[package]] name = "idna" version = "3.10" @@ -182,6 +352,152 @@ files = [ {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"}, ] +[[package]] +name = "kiwisolver" +version = "1.4.8" +description = "A fast implementation of the Cassowary constraint solver" +optional = false +python-versions = ">=3.10" +files = [ + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"}, + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"}, + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e"}, + {file = "kiwisolver-1.4.8-cp310-cp310-win_amd64.whl", hash = "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751"}, + {file = "kiwisolver-1.4.8-cp310-cp310-win_arm64.whl", hash = "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67"}, + {file = "kiwisolver-1.4.8-cp311-cp311-win_amd64.whl", hash = "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34"}, + {file = "kiwisolver-1.4.8-cp311-cp311-win_arm64.whl", hash = "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8"}, + {file = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl", hash = "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50"}, + {file = "kiwisolver-1.4.8-cp312-cp312-win_arm64.whl", hash = "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb"}, + {file = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl", hash = "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2"}, + {file = "kiwisolver-1.4.8-cp313-cp313-win_arm64.whl", hash = "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b"}, + {file = "kiwisolver-1.4.8.tar.gz", hash = "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e"}, +] + +[[package]] +name = "matplotlib" +version = "3.10.3" +description = "Python plotting package" +optional = false +python-versions = ">=3.10" +files = [ + {file = "matplotlib-3.10.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:213fadd6348d106ca7db99e113f1bea1e65e383c3ba76e8556ba4a3054b65ae7"}, + {file = "matplotlib-3.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d3bec61cb8221f0ca6313889308326e7bb303d0d302c5cc9e523b2f2e6c73deb"}, + {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c21ae75651c0231b3ba014b6d5e08fb969c40cdb5a011e33e99ed0c9ea86ecb"}, + {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a49e39755580b08e30e3620efc659330eac5d6534ab7eae50fa5e31f53ee4e30"}, + {file = "matplotlib-3.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cf4636203e1190871d3a73664dea03d26fb019b66692cbfd642faafdad6208e8"}, + {file = "matplotlib-3.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:fd5641a9bb9d55f4dd2afe897a53b537c834b9012684c8444cc105895c8c16fd"}, + {file = "matplotlib-3.10.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:0ef061f74cd488586f552d0c336b2f078d43bc00dc473d2c3e7bfee2272f3fa8"}, + {file = "matplotlib-3.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96985d14dc5f4a736bbea4b9de9afaa735f8a0fc2ca75be2fa9e96b2097369d"}, + {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c5f0283da91e9522bdba4d6583ed9d5521566f63729ffb68334f86d0bb98049"}, + {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdfa07c0ec58035242bc8b2c8aae37037c9a886370eef6850703d7583e19964b"}, + {file = "matplotlib-3.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c0b9849a17bce080a16ebcb80a7b714b5677d0ec32161a2cc0a8e5a6030ae220"}, + {file = "matplotlib-3.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:eef6ed6c03717083bc6d69c2d7ee8624205c29a8e6ea5a31cd3492ecdbaee1e1"}, + {file = "matplotlib-3.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:0ab1affc11d1f495ab9e6362b8174a25afc19c081ba5b0775ef00533a4236eea"}, + {file = "matplotlib-3.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2a818d8bdcafa7ed2eed74487fdb071c09c1ae24152d403952adad11fa3c65b4"}, + {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748ebc3470c253e770b17d8b0557f0aa85cf8c63fd52f1a61af5b27ec0b7ffee"}, + {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed70453fd99733293ace1aec568255bc51c6361cb0da94fa5ebf0649fdb2150a"}, + {file = "matplotlib-3.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dbed9917b44070e55640bd13419de83b4c918e52d97561544814ba463811cbc7"}, + {file = "matplotlib-3.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:cf37d8c6ef1a48829443e8ba5227b44236d7fcaf7647caa3178a4ff9f7a5be05"}, + {file = "matplotlib-3.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9f2efccc8dcf2b86fc4ee849eea5dcaecedd0773b30f47980dc0cbeabf26ec84"}, + {file = "matplotlib-3.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3ddbba06a6c126e3301c3d272a99dcbe7f6c24c14024e80307ff03791a5f294e"}, + {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748302b33ae9326995b238f606e9ed840bf5886ebafcb233775d946aa8107a15"}, + {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a80fcccbef63302c0efd78042ea3c2436104c5b1a4d3ae20f864593696364ac7"}, + {file = "matplotlib-3.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:55e46cbfe1f8586adb34f7587c3e4f7dedc59d5226719faf6cb54fc24f2fd52d"}, + {file = "matplotlib-3.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:151d89cb8d33cb23345cd12490c76fd5d18a56581a16d950b48c6ff19bb2ab93"}, + {file = "matplotlib-3.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:c26dd9834e74d164d06433dc7be5d75a1e9890b926b3e57e74fa446e1a62c3e2"}, + {file = "matplotlib-3.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:24853dad5b8c84c8c2390fc31ce4858b6df504156893292ce8092d190ef8151d"}, + {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68f7878214d369d7d4215e2a9075fef743be38fa401d32e6020bab2dfabaa566"}, + {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6929fc618cb6db9cb75086f73b3219bbb25920cb24cee2ea7a12b04971a4158"}, + {file = "matplotlib-3.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6c7818292a5cc372a2dc4c795e5c356942eb8350b98ef913f7fda51fe175ac5d"}, + {file = "matplotlib-3.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:4f23ffe95c5667ef8a2b56eea9b53db7f43910fa4a2d5472ae0f72b64deab4d5"}, + {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:86ab63d66bbc83fdb6733471d3bff40897c1e9921cba112accd748eee4bce5e4"}, + {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:a48f9c08bf7444b5d2391a83e75edb464ccda3c380384b36532a0962593a1751"}, + {file = "matplotlib-3.10.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb73d8aa75a237457988f9765e4dfe1c0d2453c5ca4eabc897d4309672c8e014"}, + {file = "matplotlib-3.10.3.tar.gz", hash = "sha256:2f82d2c5bb7ae93aaaa4cd42aca65d76ce6376f83304fa3a630b569aca274df0"}, +] + +[package.dependencies] +contourpy = ">=1.0.1" +cycler = ">=0.10" +fonttools = ">=4.22.0" +kiwisolver = ">=1.3.1" +numpy = ">=1.23" +packaging = ">=20.0" +pillow = ">=8" +pyparsing = ">=2.3.1" +python-dateutil = ">=2.7" + +[package.extras] +dev = ["meson-python (>=0.13.1,<0.17.0)", "pybind11 (>=2.13.2,!=2.13.3)", "setuptools (>=64)", "setuptools_scm (>=7)"] + [[package]] name = "mypy" version = "1.17.0" @@ -351,6 +667,130 @@ files = [ {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, ] +[[package]] +name = "pillow" +version = "11.3.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pillow-11.3.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:1b9c17fd4ace828b3003dfd1e30bff24863e0eb59b535e8f80194d9cc7ecf860"}, + {file = "pillow-11.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:65dc69160114cdd0ca0f35cb434633c75e8e7fad4cf855177a05bf38678f73ad"}, + {file = "pillow-11.3.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7107195ddc914f656c7fc8e4a5e1c25f32e9236ea3ea860f257b0436011fddd0"}, + {file = "pillow-11.3.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:cc3e831b563b3114baac7ec2ee86819eb03caa1a2cef0b481a5675b59c4fe23b"}, + {file = "pillow-11.3.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f1f182ebd2303acf8c380a54f615ec883322593320a9b00438eb842c1f37ae50"}, + {file = "pillow-11.3.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4445fa62e15936a028672fd48c4c11a66d641d2c05726c7ec1f8ba6a572036ae"}, + {file = "pillow-11.3.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:71f511f6b3b91dd543282477be45a033e4845a40278fa8dcdbfdb07109bf18f9"}, + {file = "pillow-11.3.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:040a5b691b0713e1f6cbe222e0f4f74cd233421e105850ae3b3c0ceda520f42e"}, + {file = "pillow-11.3.0-cp310-cp310-win32.whl", hash = "sha256:89bd777bc6624fe4115e9fac3352c79ed60f3bb18651420635f26e643e3dd1f6"}, + {file = "pillow-11.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:19d2ff547c75b8e3ff46f4d9ef969a06c30ab2d4263a9e287733aa8b2429ce8f"}, + {file = "pillow-11.3.0-cp310-cp310-win_arm64.whl", hash = "sha256:819931d25e57b513242859ce1876c58c59dc31587847bf74cfe06b2e0cb22d2f"}, + {file = "pillow-11.3.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1cd110edf822773368b396281a2293aeb91c90a2db00d78ea43e7e861631b722"}, + {file = "pillow-11.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9c412fddd1b77a75aa904615ebaa6001f169b26fd467b4be93aded278266b288"}, + {file = "pillow-11.3.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7d1aa4de119a0ecac0a34a9c8bde33f34022e2e8f99104e47a3ca392fd60e37d"}, + {file = "pillow-11.3.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:91da1d88226663594e3f6b4b8c3c8d85bd504117d043740a8e0ec449087cc494"}, + {file = "pillow-11.3.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:643f189248837533073c405ec2f0bb250ba54598cf80e8c1e043381a60632f58"}, + {file = "pillow-11.3.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:106064daa23a745510dabce1d84f29137a37224831d88eb4ce94bb187b1d7e5f"}, + {file = "pillow-11.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cd8ff254faf15591e724dc7c4ddb6bf4793efcbe13802a4ae3e863cd300b493e"}, + {file = "pillow-11.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:932c754c2d51ad2b2271fd01c3d121daaa35e27efae2a616f77bf164bc0b3e94"}, + {file = "pillow-11.3.0-cp311-cp311-win32.whl", hash = "sha256:b4b8f3efc8d530a1544e5962bd6b403d5f7fe8b9e08227c6b255f98ad82b4ba0"}, + {file = "pillow-11.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:1a992e86b0dd7aeb1f053cd506508c0999d710a8f07b4c791c63843fc6a807ac"}, + {file = "pillow-11.3.0-cp311-cp311-win_arm64.whl", hash = "sha256:30807c931ff7c095620fe04448e2c2fc673fcbb1ffe2a7da3fb39613489b1ddd"}, + {file = "pillow-11.3.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fdae223722da47b024b867c1ea0be64e0df702c5e0a60e27daad39bf960dd1e4"}, + {file = "pillow-11.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:921bd305b10e82b4d1f5e802b6850677f965d8394203d182f078873851dada69"}, + {file = "pillow-11.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:eb76541cba2f958032d79d143b98a3a6b3ea87f0959bbe256c0b5e416599fd5d"}, + {file = "pillow-11.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:67172f2944ebba3d4a7b54f2e95c786a3a50c21b88456329314caaa28cda70f6"}, + {file = "pillow-11.3.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97f07ed9f56a3b9b5f49d3661dc9607484e85c67e27f3e8be2c7d28ca032fec7"}, + {file = "pillow-11.3.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:676b2815362456b5b3216b4fd5bd89d362100dc6f4945154ff172e206a22c024"}, + {file = "pillow-11.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3e184b2f26ff146363dd07bde8b711833d7b0202e27d13540bfe2e35a323a809"}, + {file = "pillow-11.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6be31e3fc9a621e071bc17bb7de63b85cbe0bfae91bb0363c893cbe67247780d"}, + {file = "pillow-11.3.0-cp312-cp312-win32.whl", hash = "sha256:7b161756381f0918e05e7cb8a371fff367e807770f8fe92ecb20d905d0e1c149"}, + {file = "pillow-11.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:a6444696fce635783440b7f7a9fc24b3ad10a9ea3f0ab66c5905be1c19ccf17d"}, + {file = "pillow-11.3.0-cp312-cp312-win_arm64.whl", hash = "sha256:2aceea54f957dd4448264f9bf40875da0415c83eb85f55069d89c0ed436e3542"}, + {file = "pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:1c627742b539bba4309df89171356fcb3cc5a9178355b2727d1b74a6cf155fbd"}, + {file = "pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:30b7c02f3899d10f13d7a48163c8969e4e653f8b43416d23d13d1bbfdc93b9f8"}, + {file = "pillow-11.3.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:7859a4cc7c9295f5838015d8cc0a9c215b77e43d07a25e460f35cf516df8626f"}, + {file = "pillow-11.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ec1ee50470b0d050984394423d96325b744d55c701a439d2bd66089bff963d3c"}, + {file = "pillow-11.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7db51d222548ccfd274e4572fdbf3e810a5e66b00608862f947b163e613b67dd"}, + {file = "pillow-11.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2d6fcc902a24ac74495df63faad1884282239265c6839a0a6416d33faedfae7e"}, + {file = "pillow-11.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f0f5d8f4a08090c6d6d578351a2b91acf519a54986c055af27e7a93feae6d3f1"}, + {file = "pillow-11.3.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c37d8ba9411d6003bba9e518db0db0c58a680ab9fe5179f040b0463644bc9805"}, + {file = "pillow-11.3.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13f87d581e71d9189ab21fe0efb5a23e9f28552d5be6979e84001d3b8505abe8"}, + {file = "pillow-11.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:023f6d2d11784a465f09fd09a34b150ea4672e85fb3d05931d89f373ab14abb2"}, + {file = "pillow-11.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:45dfc51ac5975b938e9809451c51734124e73b04d0f0ac621649821a63852e7b"}, + {file = "pillow-11.3.0-cp313-cp313-win32.whl", hash = "sha256:a4d336baed65d50d37b88ca5b60c0fa9d81e3a87d4a7930d3880d1624d5b31f3"}, + {file = "pillow-11.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51"}, + {file = "pillow-11.3.0-cp313-cp313-win_arm64.whl", hash = "sha256:1904e1264881f682f02b7f8167935cce37bc97db457f8e7849dc3a6a52b99580"}, + {file = "pillow-11.3.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4c834a3921375c48ee6b9624061076bc0a32a60b5532b322cc0ea64e639dd50e"}, + {file = "pillow-11.3.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5e05688ccef30ea69b9317a9ead994b93975104a677a36a8ed8106be9260aa6d"}, + {file = "pillow-11.3.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1019b04af07fc0163e2810167918cb5add8d74674b6267616021ab558dc98ced"}, + {file = "pillow-11.3.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f944255db153ebb2b19c51fe85dd99ef0ce494123f21b9db4877ffdfc5590c7c"}, + {file = "pillow-11.3.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1f85acb69adf2aaee8b7da124efebbdb959a104db34d3a2cb0f3793dbae422a8"}, + {file = "pillow-11.3.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:05f6ecbeff5005399bb48d198f098a9b4b6bdf27b8487c7f38ca16eeb070cd59"}, + {file = "pillow-11.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a7bc6e6fd0395bc052f16b1a8670859964dbd7003bd0af2ff08342eb6e442cfe"}, + {file = "pillow-11.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:83e1b0161c9d148125083a35c1c5a89db5b7054834fd4387499e06552035236c"}, + {file = "pillow-11.3.0-cp313-cp313t-win32.whl", hash = "sha256:2a3117c06b8fb646639dce83694f2f9eac405472713fcb1ae887469c0d4f6788"}, + {file = "pillow-11.3.0-cp313-cp313t-win_amd64.whl", hash = "sha256:857844335c95bea93fb39e0fa2726b4d9d758850b34075a7e3ff4f4fa3aa3b31"}, + {file = "pillow-11.3.0-cp313-cp313t-win_arm64.whl", hash = "sha256:8797edc41f3e8536ae4b10897ee2f637235c94f27404cac7297f7b607dd0716e"}, + {file = "pillow-11.3.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d9da3df5f9ea2a89b81bb6087177fb1f4d1c7146d583a3fe5c672c0d94e55e12"}, + {file = "pillow-11.3.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0b275ff9b04df7b640c59ec5a3cb113eefd3795a8df80bac69646ef699c6981a"}, + {file = "pillow-11.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0743841cabd3dba6a83f38a92672cccbd69af56e3e91777b0ee7f4dba4385632"}, + {file = "pillow-11.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2465a69cf967b8b49ee1b96d76718cd98c4e925414ead59fdf75cf0fd07df673"}, + {file = "pillow-11.3.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:41742638139424703b4d01665b807c6468e23e699e8e90cffefe291c5832b027"}, + {file = "pillow-11.3.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93efb0b4de7e340d99057415c749175e24c8864302369e05914682ba642e5d77"}, + {file = "pillow-11.3.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7966e38dcd0fa11ca390aed7c6f20454443581d758242023cf36fcb319b1a874"}, + {file = "pillow-11.3.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:98a9afa7b9007c67ed84c57c9e0ad86a6000da96eaa638e4f8abe5b65ff83f0a"}, + {file = "pillow-11.3.0-cp314-cp314-win32.whl", hash = "sha256:02a723e6bf909e7cea0dac1b0e0310be9d7650cd66222a5f1c571455c0a45214"}, + {file = "pillow-11.3.0-cp314-cp314-win_amd64.whl", hash = "sha256:a418486160228f64dd9e9efcd132679b7a02a5f22c982c78b6fc7dab3fefb635"}, + {file = "pillow-11.3.0-cp314-cp314-win_arm64.whl", hash = "sha256:155658efb5e044669c08896c0c44231c5e9abcaadbc5cd3648df2f7c0b96b9a6"}, + {file = "pillow-11.3.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:59a03cdf019efbfeeed910bf79c7c93255c3d54bc45898ac2a4140071b02b4ae"}, + {file = "pillow-11.3.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f8a5827f84d973d8636e9dc5764af4f0cf2318d26744b3d902931701b0d46653"}, + {file = "pillow-11.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ee92f2fd10f4adc4b43d07ec5e779932b4eb3dbfbc34790ada5a6669bc095aa6"}, + {file = "pillow-11.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c96d333dcf42d01f47b37e0979b6bd73ec91eae18614864622d9b87bbd5bbf36"}, + {file = "pillow-11.3.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4c96f993ab8c98460cd0c001447bff6194403e8b1d7e149ade5f00594918128b"}, + {file = "pillow-11.3.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41342b64afeba938edb034d122b2dda5db2139b9a4af999729ba8818e0056477"}, + {file = "pillow-11.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:068d9c39a2d1b358eb9f245ce7ab1b5c3246c7c8c7d9ba58cfa5b43146c06e50"}, + {file = "pillow-11.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:a1bc6ba083b145187f648b667e05a2534ecc4b9f2784c2cbe3089e44868f2b9b"}, + {file = "pillow-11.3.0-cp314-cp314t-win32.whl", hash = "sha256:118ca10c0d60b06d006be10a501fd6bbdfef559251ed31b794668ed569c87e12"}, + {file = "pillow-11.3.0-cp314-cp314t-win_amd64.whl", hash = "sha256:8924748b688aa210d79883357d102cd64690e56b923a186f35a82cbc10f997db"}, + {file = "pillow-11.3.0-cp314-cp314t-win_arm64.whl", hash = "sha256:79ea0d14d3ebad43ec77ad5272e6ff9bba5b679ef73375ea760261207fa8e0aa"}, + {file = "pillow-11.3.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:48d254f8a4c776de343051023eb61ffe818299eeac478da55227d96e241de53f"}, + {file = "pillow-11.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7aee118e30a4cf54fdd873bd3a29de51e29105ab11f9aad8c32123f58c8f8081"}, + {file = "pillow-11.3.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:23cff760a9049c502721bdb743a7cb3e03365fafcdfc2ef9784610714166e5a4"}, + {file = "pillow-11.3.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6359a3bc43f57d5b375d1ad54a0074318a0844d11b76abccf478c37c986d3cfc"}, + {file = "pillow-11.3.0-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:092c80c76635f5ecb10f3f83d76716165c96f5229addbd1ec2bdbbda7d496e06"}, + {file = "pillow-11.3.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cadc9e0ea0a2431124cde7e1697106471fc4c1da01530e679b2391c37d3fbb3a"}, + {file = "pillow-11.3.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6a418691000f2a418c9135a7cf0d797c1bb7d9a485e61fe8e7722845b95ef978"}, + {file = "pillow-11.3.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:97afb3a00b65cc0804d1c7abddbf090a81eaac02768af58cbdcaaa0a931e0b6d"}, + {file = "pillow-11.3.0-cp39-cp39-win32.whl", hash = "sha256:ea944117a7974ae78059fcc1800e5d3295172bb97035c0c1d9345fca1419da71"}, + {file = "pillow-11.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:e5c5858ad8ec655450a7c7df532e9842cf8df7cc349df7225c60d5d348c8aada"}, + {file = "pillow-11.3.0-cp39-cp39-win_arm64.whl", hash = "sha256:6abdbfd3aea42be05702a8dd98832329c167ee84400a1d1f61ab11437f1717eb"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:3cee80663f29e3843b68199b9d6f4f54bd1d4a6b59bdd91bceefc51238bcb967"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:b5f56c3f344f2ccaf0dd875d3e180f631dc60a51b314295a3e681fe8cf851fbe"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e67d793d180c9df62f1f40aee3accca4829d3794c95098887edc18af4b8b780c"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d000f46e2917c705e9fb93a3606ee4a819d1e3aa7a9b442f6444f07e77cf5e25"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:527b37216b6ac3a12d7838dc3bd75208ec57c1c6d11ef01902266a5a0c14fc27"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:be5463ac478b623b9dd3937afd7fb7ab3d79dd290a28e2b6df292dc75063eb8a"}, + {file = "pillow-11.3.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:8dc70ca24c110503e16918a658b869019126ecfe03109b754c402daff12b3d9f"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7c8ec7a017ad1bd562f93dbd8505763e688d388cde6e4a010ae1486916e713e6"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:9ab6ae226de48019caa8074894544af5b53a117ccb9d3b3dcb2871464c829438"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fe27fb049cdcca11f11a7bfda64043c37b30e6b91f10cb5bab275806c32f6ab3"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:465b9e8844e3c3519a983d58b80be3f668e2a7a5db97f2784e7079fbc9f9822c"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5418b53c0d59b3824d05e029669efa023bbef0f3e92e75ec8428f3799487f361"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:504b6f59505f08ae014f724b6207ff6222662aab5cc9542577fb084ed0676ac7"}, + {file = "pillow-11.3.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:c84d689db21a1c397d001aa08241044aa2069e7587b398c8cc63020390b1c1b8"}, + {file = "pillow-11.3.0.tar.gz", hash = "sha256:3828ee7586cd0b2091b6209e5ad53e20d0649bbe87164a459d0676e035e8f523"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=8.2)", "sphinx-autobuild", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] +test-arrow = ["pyarrow"] +tests = ["check-manifest", "coverage (>=7.4.2)", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "trove-classifiers (>=2024.10.12)"] +typing = ["typing-extensions"] +xmp = ["defusedxml"] + [[package]] name = "pluggy" version = "1.6.0" @@ -536,6 +976,20 @@ files = [ [package.extras] windows-terminal = ["colorama (>=0.4.6)"] +[[package]] +name = "pyparsing" +version = "3.2.3" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pyparsing-3.2.3-py3-none-any.whl", hash = "sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf"}, + {file = "pyparsing-3.2.3.tar.gz", hash = "sha256:b9c13f1ab8b3b542f72e28f634bad4de758ab3ce4546e4301970ad6fa77c38be"}, +] + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + [[package]] name = "pytest" version = "8.4.1" @@ -594,6 +1048,20 @@ pytest = ">=6.2.5" [package.extras] testing = ["fields", "hunter", "process-tests", "pytest-xdist", "virtualenv"] +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, + {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, +] + +[package.dependencies] +six = ">=1.5" + [[package]] name = "python-dotenv" version = "1.1.1" @@ -646,6 +1114,17 @@ files = [ {file = "simpy-4.1.1.tar.gz", hash = "sha256:06d0750a7884b11e0e8e20ce0bc7c6d4ed5f1743d456695340d13fdff95001a6"}, ] +[[package]] +name = "six" +version = "1.17.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, + {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, +] + [[package]] name = "typing-extensions" version = "4.14.1" @@ -674,4 +1153,4 @@ typing-extensions = ">=4.12.0" [metadata] lock-version = "2.0" python-versions = "^3.12" -content-hash = "ca95f91568cb076386715d183efe27addd2732eb4347c385a0e9f1479d2035d6" +content-hash = "1441494d6783804e41cd06a1a630c2031b47573ba6f28619d4967e27953aff40" diff --git a/pyproject.toml b/pyproject.toml index b4c46ff..1528987 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,6 +15,7 @@ pydantic-settings = "^2.10.1" pydantic = {extras = ["email"], version = "^2.11.7"} numpy = "^2.3.1" simpy = "^4.1.1" +matplotlib = "^3.10.3" [tool.poetry.group.dev.dependencies] pytest = "^8.4.1" diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 0e40950..74cf0e2 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -216,9 +216,9 @@ class SamplePeriods(float, Enum): we have to extract a time series """ - STANDARD_TIME = 0.005 # 5 MILLISECONDS + STANDARD_TIME = 0.01 # 10 MILLISECONDS MINIMUM_TIME = 0.001 # 1 MILLISECOND - MAXIMUM_TIME = 0.1 # 10 MILLISECONDS + MAXIMUM_TIME = 0.1 # 100 MILLISECONDS # ====================================================================== # CONSTANTS FOR EVENT METRICS @@ -244,7 +244,7 @@ class AggregatedMetricName(StrEnum): """aggregated metrics to calculate at the end of simulation""" LATENCY_STATS = "latency_stats" - THROUGHPUT_RPS = "throughput_rps" + THROUGHPUT = "throughput_rps" LLM_STATS = "llm_stats" # ====================================================================== @@ -252,7 +252,23 @@ class AggregatedMetricName(StrEnum): # ====================================================================== class ServerResourceName(StrEnum): - """Keys for each server resource type, used when building the container map.""" + """Keys for each server resource type, used when building the container map.""" - CPU = "CPU" - RAM = "RAM" + CPU = "CPU" + RAM = "RAM" + +# ====================================================================== +# CONSTANTS FOR LATENCY STATS +# ====================================================================== + +class LatencyKey(StrEnum): + """Keys for the collection of the latency stats""" + + TOTAL_REQUESTS = "total_requests" + MEAN = "mean" + MEDIAN = "median" + STD_DEV = "std_dev" + P95 = "p95" + P99 = "p99" + MIN = "min" + MAX = "max" diff --git a/src/app/config/plot_constants.py b/src/app/config/plot_constants.py new file mode 100644 index 0000000..efe28b9 --- /dev/null +++ b/src/app/config/plot_constants.py @@ -0,0 +1,47 @@ +"""Dataclass to define a central structure to plot the metrics""" +from dataclasses import dataclass + + +@dataclass(frozen=True) +class PlotCfg: + """Dataclass for the plot of the various metrics""" + + no_data: str + title: str + x_label: str + y_label: str + ready_label: str | None = None + io_label: str | None = None + legend_label: str | None = None + +LATENCY_PLOT = PlotCfg( + no_data="No latency data", + title="Request Latency Distribution", + x_label="Latency (s)", + y_label="Frequency", +) + +THROUGHPUT_PLOT = PlotCfg( + no_data="No throughput data", + title="Throughput (RPS)", + x_label="Time (s)", + y_label="Requests/s", +) + + +SERVER_QUEUES_PLOT = PlotCfg( + no_data="No queue data", + title="Server Queues", + x_label="Time (s)", + y_label="Queue length", + ready_label="Ready queue", + io_label="I/O queue", +) + +RAM_PLOT = PlotCfg( + no_data="No RAM data", + title="RAM Usage", + x_label="Time (s)", + y_label="RAM (MB)", + legend_label="RAM", +) diff --git a/src/app/metrics/analyzer.py b/src/app/metrics/analyzer.py new file mode 100644 index 0000000..00bbd35 --- /dev/null +++ b/src/app/metrics/analyzer.py @@ -0,0 +1,225 @@ +"""Module for post-simulation analysis and visualization.""" + +from __future__ import annotations + +from collections import defaultdict +from typing import TYPE_CHECKING + +import numpy as np + +from app.config.constants import LatencyKey, SampledMetricName +from app.config.plot_constants import ( + LATENCY_PLOT, + RAM_PLOT, + SERVER_QUEUES_PLOT, + THROUGHPUT_PLOT, +) + +if TYPE_CHECKING: + + from matplotlib.axes import Axes + + from app.runtime.actors.client import ClientRuntime + from app.runtime.actors.edge import EdgeRuntime + from app.runtime.actors.server import ServerRuntime + from app.schemas.simulation_settings_input import SimulationSettings + + +class ResultsAnalyzer: + """Analyze and visualize the results of a completed simulation. + + This class holds the raw runtime objects and lazily computes: + - latency statistics + - throughput time series (RPS) + - sampled metrics from servers and edges + """ + + # Class attribute to define the period to calculate the throughput in s + _WINDOW_SIZE_S: float = 1 + + def __init__( + self, + *, + client: ClientRuntime, + servers: list[ServerRuntime], + edges: list[EdgeRuntime], + settings: SimulationSettings, + ) -> None: + """ + Args: + client: Client runtime object, containing RqsClock entries. + servers: List of server runtime objects. + edges: List of edge runtime objects. + settings: Original simulation settings. + + """ + self._client = client + self._servers = servers + self._edges = edges + self._settings = settings + + # Lazily computed caches + self.latencies: list[float] | None = None + self.latency_stats: dict[LatencyKey, float] | None = None + self.throughput_series: tuple[list[float], list[float]] | None = None + self.sampled_metrics: dict[str, dict[str, list[float]]] | None = None + + def process_all_metrics(self) -> None: + """Compute all aggregated and sampled metrics if not already done.""" + if self.latency_stats is None and self._client.rqs_clock: + self._process_event_metrics() + + if self.sampled_metrics is None: + self._extract_sampled_metrics() + + def _process_event_metrics(self) -> None: + """Calculate latency stats and throughput time series (RPS).""" + # 1) Latencies + self.latencies = [ + clock.finish - clock.start for clock in self._client.rqs_clock + ] + + # 2) Summary stats + if self.latencies: + arr = np.array(self.latencies) + self.latency_stats = { + LatencyKey.TOTAL_REQUESTS: float(arr.size), + LatencyKey.MEAN: float(np.mean(arr)), + LatencyKey.MEDIAN: float(np.median(arr)), + LatencyKey.STD_DEV: float(np.std(arr)), + LatencyKey.P95: float(np.percentile(arr, 95)), + LatencyKey.P99: float(np.percentile(arr, 99)), + LatencyKey.MIN: float(np.min(arr)), + LatencyKey.MAX: float(np.max(arr)), + } + else: + self.latency_stats = {} + + # 3) Throughput per 1s window + completion_times = sorted(clock.finish for clock in self._client.rqs_clock) + end_time = self._settings.total_simulation_time + + timestamps: list[float] = [] + rps_values: list[float] = [] + count = 0 + idx = 0 + current_end = ResultsAnalyzer._WINDOW_SIZE_S + + while current_end <= end_time: + while idx < len(completion_times) and completion_times[idx] <= current_end: + count += 1 + idx += 1 + timestamps.append(current_end) + rps_values.append(count / ResultsAnalyzer._WINDOW_SIZE_S) + current_end += ResultsAnalyzer._WINDOW_SIZE_S + count = 0 + + self.throughput_series = (timestamps, rps_values) + + def _extract_sampled_metrics(self) -> None: + """Gather sampled metrics from servers and edges into a nested dict.""" + metrics: dict[str, dict[str, list[float]]] = defaultdict(dict) + + for server in self._servers: + sid = server.server_config.id + for name, values in server.enabled_metrics.items(): + metrics[name.value][sid] = values + + for edge in self._edges: + eid = edge.edge_config.id + for name, values in edge.enabled_metrics.items(): + metrics[name.value][eid] = values + + self.sampled_metrics = metrics + + def get_latency_stats(self) -> dict[LatencyKey, float]: + """Return latency statistics, computing them if necessary.""" + self.process_all_metrics() + return self.latency_stats or {} + + def get_throughput_series(self) -> tuple[list[float], list[float]]: + """Return throughput time series (timestamps, RPS).""" + self.process_all_metrics() + assert self.throughput_series is not None + return self.throughput_series + + def get_sampled_metrics(self) -> dict[str, dict[str, list[float]]]: + """Return sampled metrics from servers and edges.""" + self.process_all_metrics() + assert self.sampled_metrics is not None + return self.sampled_metrics + + def plot_latency_distribution(self, ax: Axes) -> None: + """Draw a histogram of request latencies onto the given Axes.""" + if not self.latencies: + ax.text(0.5, 0.5, LATENCY_PLOT.no_data, ha="center", va="center") + return + + ax.hist(self.latencies, bins=50) + ax.set_title(LATENCY_PLOT.title) + ax.set_xlabel(LATENCY_PLOT.x_label) + ax.set_ylabel(LATENCY_PLOT.y_label) + ax.grid(visible=True) + + def plot_throughput(self, ax: Axes) -> None: + """Draw throughput (RPS) over time onto the given Axes.""" + timestamps, values = self.get_throughput_series() + if not timestamps: + ax.text(0.5, 0.5, THROUGHPUT_PLOT.no_data, ha="center", va="center") + return + + ax.plot(timestamps, values, marker="o", linestyle="-") + ax.set_title(THROUGHPUT_PLOT.title) + ax.set_xlabel(THROUGHPUT_PLOT.x_label) + ax.set_ylabel(THROUGHPUT_PLOT.y_label) + ax.grid(visible=True) + + def plot_server_queues(self, ax: Axes) -> None: + """Draw server queue lengths over time onto the given Axes.""" + metrics = self.get_sampled_metrics() + ready = metrics.get(SampledMetricName.READY_QUEUE_LEN, {}) + io_q = metrics.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) + + if not (ready or io_q): + ax.text(0.5, 0.5, SERVER_QUEUES_PLOT.no_data, ha="center", va="center") + return + + samples = len(next(iter(ready.values()), [])) + times = np.arange(samples) * self._settings.sample_period_s + + for sid, vals in ready.items(): + ax.plot(times, vals, label=f"{sid} {SERVER_QUEUES_PLOT.ready_label}") + for sid, vals in io_q.items(): + ax.plot( + times, + vals, + label=f"{sid} {SERVER_QUEUES_PLOT.io_label}", + linestyle="--", + ) + + ax.set_title(SERVER_QUEUES_PLOT.title) + ax.set_xlabel(SERVER_QUEUES_PLOT.x_label) + ax.set_ylabel(SERVER_QUEUES_PLOT.y_label) + ax.legend() + ax.grid(visible=True) + + def plot_ram_usage(self, ax: Axes) -> None: + """Draw RAM usage over time onto the given Axes.""" + metrics = self.get_sampled_metrics() + ram = metrics.get(SampledMetricName.RAM_IN_USE, {}) + + if not ram: + ax.text(0.5, 0.5, RAM_PLOT.no_data, ha="center", va="center") + return + + samples = len(next(iter(ram.values()))) + times = np.arange(samples) * self._settings.sample_period_s + + for sid, vals in ram.items(): + ax.plot(times, vals, label=f"{sid} {RAM_PLOT.legend_label}") + + ax.set_title(RAM_PLOT.title) + ax.set_xlabel(RAM_PLOT.x_label) + ax.set_ylabel(RAM_PLOT.y_label) + ax.legend() + ax.grid(visible=True) diff --git a/tests/unit/metrics/test_analyzer.py b/tests/unit/metrics/test_analyzer.py new file mode 100644 index 0000000..4aa33b9 --- /dev/null +++ b/tests/unit/metrics/test_analyzer.py @@ -0,0 +1,190 @@ +"""Unit-tests for ``ResultsAnalyzer`` (latency, throughput, plots).""" + +from __future__ import annotations + +from typing import TYPE_CHECKING, cast + +import pytest +from matplotlib.figure import Figure + +from app.config.constants import LatencyKey +from app.metrics.analyzer import ResultsAnalyzer + +if TYPE_CHECKING: + from app.runtime.actors.client import ClientRuntime + from app.runtime.actors.edge import EdgeRuntime + from app.runtime.actors.server import ServerRuntime + from app.schemas.simulation_settings_input import SimulationSettings + + +# ---------------------------------------------------------------------- # +# Dummy objects (test doubles) # +# ---------------------------------------------------------------------- # +class DummyClock: + """Clock with *start* / *finish* timestamps to emulate a request.""" + + def __init__(self, start: float, finish: float) -> None: + """Save *start* and *finish* times.""" + self.start = start + self.finish = finish + + +class DummyClient: + """Emulates ``ClientRuntime`` by exposing ``rqs_clock``.""" + + def __init__(self, clocks: list[DummyClock]) -> None: + """Attach a list of dummy clocks to the stub client.""" + self.rqs_clock = clocks + + +class DummyName: + """Mimic an Enum member that carries a ``.value`` attribute.""" + + def __init__(self, value: str) -> None: + """Store the dummy string *value*.""" + self.value = value + + +class DummyServerConfig: + """Lightweight replacement for the real ``ServerConfig``.""" + + def __init__(self, identifier: str) -> None: + """Expose only the *id* field required by the analyzer.""" + self.id = identifier + + +class DummyServer: + """Stub for ``ServerRuntime`` exposing ``enabled_metrics``.""" + + def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: + """Create a fake server with the given *metrics*.""" + self.server_config = DummyServerConfig(identifier) + self.enabled_metrics = { + DummyName(name): values for name, values in metrics.items() + } + + +class DummyEdgeConfig: + """Minified replacement for the real ``EdgeConfig``.""" + + def __init__(self, identifier: str) -> None: + """Expose only the *id* property.""" + self.id = identifier + + +class DummyEdge: + """Stub for ``EdgeRuntime`` exposing ``enabled_metrics``.""" + + def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: + """Create a fake edge with the given *metrics*.""" + self.edge_config = DummyEdgeConfig(identifier) + self.enabled_metrics = { + DummyName(name): values for name, values in metrics.items() + } + + +# ---------------------------------------------------------------------- # +# Fixtures # +# ---------------------------------------------------------------------- # +@pytest.fixture +def simple_analyzer(sim_settings: SimulationSettings) -> ResultsAnalyzer: + """ + Analyzer with two synthetic requests (durations 1 s and 2 s) on a + 3-second horizon and **no** sampled metrics. + """ + sim_settings.total_simulation_time = 3 + clocks = [DummyClock(0.0, 1.0), DummyClock(0.0, 2.0)] + client = DummyClient(clocks) + return ResultsAnalyzer( + client=cast("ClientRuntime", client), + servers=[], + edges=[], + settings=sim_settings, + ) + + +# ---------------------------------------------------------------------- # +# Tests for computed metrics # +# ---------------------------------------------------------------------- # +def test_latency_stats(simple_analyzer: ResultsAnalyzer) -> None: + stats = simple_analyzer.get_latency_stats() + assert stats[LatencyKey.TOTAL_REQUESTS] == 2.0 + assert stats[LatencyKey.MEAN] == pytest.approx(1.5) + assert stats[LatencyKey.MEDIAN] == pytest.approx(1.5) + assert stats[LatencyKey.MIN] == pytest.approx(1.0) + assert stats[LatencyKey.MAX] == pytest.approx(2.0) + assert stats[LatencyKey.P95] == pytest.approx(1.95, rel=1e-3) + + +def test_throughput_series(simple_analyzer: ResultsAnalyzer) -> None: + timestamps, rps = simple_analyzer.get_throughput_series() + assert timestamps == [1.0, 2.0, 3.0] + assert rps == [1.0, 1.0, 0.0] + + +def test_sampled_metrics_empty(simple_analyzer: ResultsAnalyzer) -> None: + assert simple_analyzer.get_sampled_metrics() == {} + + +# ---------------------------------------------------------------------- # +# Tests for plotting methods # +# ---------------------------------------------------------------------- # +def test_plot_latency_distribution(simple_analyzer: ResultsAnalyzer) -> None: + fig = Figure() + ax = fig.subplots() + simple_analyzer.process_all_metrics() + simple_analyzer.plot_latency_distribution(ax) + assert ax.get_title() == "Request Latency Distribution" + + +def test_plot_throughput(simple_analyzer: ResultsAnalyzer) -> None: + fig = Figure() + ax = fig.subplots() + simple_analyzer.process_all_metrics() + simple_analyzer.plot_throughput(ax) + assert ax.get_title() == "Throughput (RPS)" + + +def test_plot_server_queues_with_data(sim_settings: SimulationSettings) -> None: + sim_settings.total_simulation_time = 3 + client = DummyClient([]) + server = DummyServer("srv1", {"ready_queue_len": [1, 2, 3]}) + edge = DummyEdge("edge1", {}) + analyzer = ResultsAnalyzer( + client=cast("ClientRuntime", client), + servers=[cast("ServerRuntime", server)], + edges=[cast("EdgeRuntime", edge)], + settings=sim_settings, + ) + + fig = Figure() + ax = fig.subplots() + analyzer.process_all_metrics() + analyzer.plot_server_queues(ax) + assert ax.get_title() == "Server Queues" + legend = ax.get_legend() + assert legend is not None + texts = [t.get_text() for t in legend.get_texts()] + assert "srv1 Ready queue" in texts + + +def test_plot_ram_usage_with_data(sim_settings: SimulationSettings) -> None: + sim_settings.total_simulation_time = 3 + client = DummyClient([]) + edge = DummyEdge("edgeA", {"ram_in_use": [10.0, 20.0]}) + analyzer = ResultsAnalyzer( + client=cast("ClientRuntime", client), + servers=[], + edges=[cast("EdgeRuntime", edge)], + settings=sim_settings, + ) + + fig = Figure() + ax = fig.subplots() + analyzer.process_all_metrics() + analyzer.plot_ram_usage(ax) + assert ax.get_title() == "RAM Usage" + legend = ax.get_legend() + assert legend is not None + texts = [t.get_text() for t in legend.get_texts()] + assert "edgeA RAM" in texts From 84f9897d4e4bd9d529b921cba64aa92dbc1c53cb Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Sun, 3 Aug 2025 15:24:06 +0200 Subject: [PATCH 20/35] Features/load balancer node (#9) * Added LB structure in the input for the simulation + tests * introduced LB runtime + documentation * Added test for LB and small refactor to define the SimRunner --- docs/fastsim-docs/runtime_and_resources.md | 92 +++++++++++- src/app/config/constants.py | 14 +- src/app/metrics/analyzer.py | 53 ++++--- src/app/metrics/collector.py | 4 +- src/app/resources/registry.py | 1 + src/app/runtime/actors/client.py | 4 +- .../runtime/actors/helpers/lb_algorithms.py | 30 ++++ src/app/runtime/actors/load_balancer.py | 73 ++++++++++ src/app/runtime/actors/rqs_generator.py | 4 +- src/app/runtime/actors/server.py | 2 + src/app/schemas/simulation_settings_input.py | 1 + .../system_topology/full_system_topology.py | 65 ++++++++- tests/unit/resources/test_registry.py | 4 +- .../runtime/{engine => actors}/test_client.py | 0 .../runtime/{engine => actors}/test_edge.py | 0 .../unit/runtime/actors/test_load_balancer.py | 131 ++++++++++++++++++ .../{engine => actors}/test_rqs_generator.py | 0 .../runtime/{engine => actors}/test_server.py | 0 .../unit/schemas/test_full_topology_input.py | 103 ++++++++++++++ 19 files changed, 547 insertions(+), 34 deletions(-) create mode 100644 src/app/runtime/actors/helpers/lb_algorithms.py create mode 100644 src/app/runtime/actors/load_balancer.py rename tests/unit/runtime/{engine => actors}/test_client.py (100%) rename tests/unit/runtime/{engine => actors}/test_edge.py (100%) create mode 100644 tests/unit/runtime/actors/test_load_balancer.py rename tests/unit/runtime/{engine => actors}/test_rqs_generator.py (100%) rename tests/unit/runtime/{engine => actors}/test_server.py (100%) diff --git a/docs/fastsim-docs/runtime_and_resources.md b/docs/fastsim-docs/runtime_and_resources.md index 763e0a9..a5dca9c 100644 --- a/docs/fastsim-docs/runtime_and_resources.md +++ b/docs/fastsim-docs/runtime_and_resources.md @@ -358,4 +358,94 @@ The client pulls requests from its `client_box`. It then makes a critical decisi **Design Note & Real-World Analogy:** The current logic for this decision—`if state.history[-2].component_type != SystemNodes.GENERATOR`—is **fragile**. While it works, it's not robust. A future improvement would be to add a more explicit routing mechanism. -In the real world, the `ClientRuntime` could be a user's **web browser**, a **mobile application**, or even a **Backend-For-Frontend (BFF)** service that both initiates requests and receives the final aggregated responses. \ No newline at end of file +In the real world, the `ClientRuntime` could be a user's **web browser**, a **mobile application**, or even a **Backend-For-Frontend (BFF)** service that both initiates requests and receives the final aggregated responses. + +## **5.5 `LoadBalancerRuntime` — The Traffic Cop 🚦** + +The **Load Balancer** actor lives in `app/runtime/actors/load_balancer_runtime.py`. +It receives a `RequestState` from the client side, decides **which outbound +edge** should carry it to a server, and immediately forwards the request. + +```text +lb_box.get() choose edge transport(state) +┌───────────────┐ ───────────────────────────► ┌────────────────┐ +│ LoadBalancer │ │ EdgeRuntime n │ +└───────────────┘ ◄───────────────────────────┘ └────────────────┘ +``` + +### **Constructor Parameters** + +| Parameter | Meaning | +| ------------- | ----------------------------------------------------------------------- | +| `env` | Shared `simpy.Environment` | +| `lb_config` | Validated `LoadBalancer` schema (ID, chosen algorithm enum) | +| `outer_edges` | Immutable list `list[EdgeRuntime]`, one per target server | +| `lb_box` | `simpy.Store` acting as the inbox for requests arriving from the client | + +```python +self._round_robin_index: int = 0 # round-robin pointer (private state) +``` + +### **Supported Algorithms** + +| Enum value (`LbAlgorithmsName`) | Function used | Signature | +| ------------------------------- | --------------------------------------------- | --------- | +| `ROUND_ROBIN` | `round_robin(edges, idx)` → `(edge, new_idx)` | O(1) | +| `LEAST_CONNECTIONS` | `least_connections(edges)` → `edge` | O(N) scan | + +*Both helpers live in* `app/runtime/actors/helpers/lb_algorithms.py`. + +#### **Why an index and not list rotation?** + +`outer_edges` is **shared** with other components (e.g. metrics collector, +tests). Rotating it in-place would mutate a shared object and create +hard-to-trace bugs (aliasing). +Keeping `_round_robin_index` inside the LB runtime preserves immutability while +still advancing the pointer on every request. + +### **Process Workflow** + +```python +def _forwarder(self) -> Generator[simpy.Event, None, None]: + while True: + state: RequestState = yield self.lb_box.get() # ① wait for a request + + state.record_hop(SystemNodes.LOAD_BALANCER, + self.lb_config.id, + self.env.now) # ② trace + + if self.lb_config.algorithms is LbAlgorithmsName.ROUND_ROBIN: + edge, self._round_robin_index = round_robin( + self.outer_edges, + self._round_robin_index, + ) # ③a choose RR edge + else: # LEAST_CONNECTIONS + edge = least_connections(self.outer_edges) # ③b choose LC edge + + edge.transport(state) # ④ forward +``` + +| Step | What happens | Real-world analogue | +| ---- | ------------------------------------------------------------------------ | ---------------------------------------- | +| ① | Pull next `RequestState` out of `lb_box`. | Socket `accept()` on the LB front-end. | +| ② | Add a `Hop` stamped `LOAD_BALANCER`. | Trace span in NGINX/Envoy access log. | +| ③a | **Round-Robin** – pick `outer_edges[_round_robin_index]`, advance index. | Classic DNS-RR or NGINX default. | +| ③b | **Least-Connections** – `min(edges, key=concurrent_connections)`. | HAProxy `leastconn`, NGINX `least_conn`. | +| ④ | Spawn network transit via `EdgeRuntime.transport()`. | LB writes request to backend socket. | + +### **Edge-Case Safety** + +* **Empty `outer_edges`** → impossible by schema validation (LB must cover >1 server). +* **Single server** → RR degenerates to index 0; LC always returns that edge. +* **Concurrency metric** (`edge.concurrent_connections`) is updated inside + `EdgeRuntime` in real time, so `least_connections` adapts instantly to load spikes. + +### **Key Takeaways** + +1. **Stateful but side-effect-free** – `_round_robin_index` keeps per-LB state without mutating the shared edge list. +2. **Uniform API** – both algorithms integrate through a simple `if/else`; additional strategies can be added with negligible changes. +3. **Deterministic & reproducible** – no randomness inside the LB, ensuring repeatable simulations. + +With these mechanics the `LoadBalancerRuntime` faithfully emulates behaviour of +production LBs (NGINX, HAProxy, AWS ALB) while remaining lightweight and +fully deterministic inside the FastSim event loop. diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 74cf0e2..07e383c 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -161,6 +161,16 @@ class NetworkParameters: DROPOUT_RATE = 0.01 MAX_DROPOUT_RATE = 1.0 +# ====================================================================== +# NAME FOR LOAD BALANCER ALGORITHMS +# ====================================================================== + +class LbAlgorithmsName(StrEnum): + """definition of the available algortithms for the Load Balancer""" + + ROUND_ROBIN = "round_robin" + LEAST_CONNECTIONS = "least_connection" + # ====================================================================== # CONSTANTS FOR THE MACRO-TOPOLOGY GRAPH @@ -178,10 +188,6 @@ class SystemNodes(StrEnum): SERVER = "server" CLIENT = "client" LOAD_BALANCER = "load_balancer" - API_GATEWAY = "api_gateway" - DATABASE = "database" - CACHE = "cache" - class SystemEdges(StrEnum): """ diff --git a/src/app/metrics/analyzer.py b/src/app/metrics/analyzer.py index 00bbd35..07a021e 100644 --- a/src/app/metrics/analyzer.py +++ b/src/app/metrics/analyzer.py @@ -13,11 +13,15 @@ RAM_PLOT, SERVER_QUEUES_PLOT, THROUGHPUT_PLOT, + PlotCfg, ) if TYPE_CHECKING: + from collections.abc import Iterable + from matplotlib.axes import Axes + from matplotlib.lines import Line2D from app.runtime.actors.client import ClientRuntime from app.runtime.actors.edge import EdgeRuntime @@ -35,7 +39,7 @@ class ResultsAnalyzer: """ # Class attribute to define the period to calculate the throughput in s - _WINDOW_SIZE_S: float = 1 + _WINDOW_SIZE_S: float = 1.0 def __init__( self, @@ -64,6 +68,22 @@ def __init__( self.throughput_series: tuple[list[float], list[float]] | None = None self.sampled_metrics: dict[str, dict[str, list[float]]] | None = None + @staticmethod + def _apply_plot_cfg( + ax: Axes, + cfg: PlotCfg, + *, + legend_handles: Iterable[Line2D] | None = None, + ) -> None: + """Apply title / axis labels / grid and (optionally) legend to ax.""" + ax.set_title(cfg.title) + ax.set_xlabel(cfg.x_label) + ax.set_ylabel(cfg.y_label) + ax.grid(visible=True) + + if legend_handles: + ax.legend(handles=legend_handles) + def process_all_metrics(self) -> None: """Compute all aggregated and sampled metrics if not already done.""" if self.latency_stats is None and self._client.rqs_clock: @@ -150,32 +170,26 @@ def get_sampled_metrics(self) -> dict[str, dict[str, list[float]]]: return self.sampled_metrics def plot_latency_distribution(self, ax: Axes) -> None: - """Draw a histogram of request latencies onto the given Axes.""" + """Plot the distribution of the latency""" if not self.latencies: ax.text(0.5, 0.5, LATENCY_PLOT.no_data, ha="center", va="center") return ax.hist(self.latencies, bins=50) - ax.set_title(LATENCY_PLOT.title) - ax.set_xlabel(LATENCY_PLOT.x_label) - ax.set_ylabel(LATENCY_PLOT.y_label) - ax.grid(visible=True) + self._apply_plot_cfg(ax, LATENCY_PLOT) def plot_throughput(self, ax: Axes) -> None: - """Draw throughput (RPS) over time onto the given Axes.""" + """Plot the distribution of the throughput""" timestamps, values = self.get_throughput_series() if not timestamps: ax.text(0.5, 0.5, THROUGHPUT_PLOT.no_data, ha="center", va="center") return ax.plot(timestamps, values, marker="o", linestyle="-") - ax.set_title(THROUGHPUT_PLOT.title) - ax.set_xlabel(THROUGHPUT_PLOT.x_label) - ax.set_ylabel(THROUGHPUT_PLOT.y_label) - ax.grid(visible=True) + self._apply_plot_cfg(ax, THROUGHPUT_PLOT) def plot_server_queues(self, ax: Axes) -> None: - """Draw server queue lengths over time onto the given Axes.""" + """Plot the server queues""" metrics = self.get_sampled_metrics() ready = metrics.get(SampledMetricName.READY_QUEUE_LEN, {}) io_q = metrics.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) @@ -197,14 +211,11 @@ def plot_server_queues(self, ax: Axes) -> None: linestyle="--", ) - ax.set_title(SERVER_QUEUES_PLOT.title) - ax.set_xlabel(SERVER_QUEUES_PLOT.x_label) - ax.set_ylabel(SERVER_QUEUES_PLOT.y_label) - ax.legend() - ax.grid(visible=True) + self._apply_plot_cfg(ax, SERVER_QUEUES_PLOT, legend_handles=ax.lines) + def plot_ram_usage(self, ax: Axes) -> None: - """Draw RAM usage over time onto the given Axes.""" + """Plot the ram usage""" metrics = self.get_sampled_metrics() ram = metrics.get(SampledMetricName.RAM_IN_USE, {}) @@ -218,8 +229,4 @@ def plot_ram_usage(self, ax: Axes) -> None: for sid, vals in ram.items(): ax.plot(times, vals, label=f"{sid} {RAM_PLOT.legend_label}") - ax.set_title(RAM_PLOT.title) - ax.set_xlabel(RAM_PLOT.x_label) - ax.set_ylabel(RAM_PLOT.y_label) - ax.legend() - ax.grid(visible=True) + self._apply_plot_cfg(ax, RAM_PLOT, legend_handles=ax.lines) diff --git a/src/app/metrics/collector.py b/src/app/metrics/collector.py index ed85126..17339fa 100644 --- a/src/app/metrics/collector.py +++ b/src/app/metrics/collector.py @@ -61,7 +61,9 @@ def _build_time_series(self) -> Generator[simpy.Event, None, None]: server.enabled_metrics[self._io_key].append(server.io_queue_len) server.enabled_metrics[self._ready_key].append(server.ready_queue_len) - + def start(self) -> simpy.Process: + """Definition of the process to collect sampled metrics""" + return self.env.process(self._build_time_series()) diff --git a/src/app/resources/registry.py b/src/app/resources/registry.py index c768cef..02b7585 100644 --- a/src/app/resources/registry.py +++ b/src/app/resources/registry.py @@ -18,6 +18,7 @@ class ResourcesRuntime: def __init__( self, + *, env: simpy.Environment, data: TopologyGraph, diff --git a/src/app/runtime/actors/client.py b/src/app/runtime/actors/client.py index f5d63ac..42b0c3f 100644 --- a/src/app/runtime/actors/client.py +++ b/src/app/runtime/actors/client.py @@ -20,8 +20,9 @@ class ClientRuntime: def __init__( self, + *, env: simpy.Environment, - out_edge: EdgeRuntime, + out_edge: EdgeRuntime | None, client_box: simpy.Store, completed_box: simpy.Store, client_config: Client, @@ -41,6 +42,7 @@ def __init__( def _forwarder(self) -> Generator[simpy.Event, None, None]: """Updtate the state before passing it to another node""" + assert self.out_edge is not None while True: state: RequestState = yield self.client_box.get() # type: ignore[assignment] diff --git a/src/app/runtime/actors/helpers/lb_algorithms.py b/src/app/runtime/actors/helpers/lb_algorithms.py new file mode 100644 index 0000000..90c325e --- /dev/null +++ b/src/app/runtime/actors/helpers/lb_algorithms.py @@ -0,0 +1,30 @@ +"""algorithms to simulate the load balancer during the simulation""" + + + +from app.runtime.actors.edge import EdgeRuntime + + +def least_connections(list_edges: list[EdgeRuntime]) -> EdgeRuntime: + """We send the state to the edge with less concurrent connections""" + concurrent_connections = [edge.concurrent_connections for edge in list_edges] + + idx_min = concurrent_connections.index(min(concurrent_connections)) + + return list_edges[idx_min] + +def round_robin(edges: list[EdgeRuntime], idx: int) -> tuple[EdgeRuntime, int]: + """ + We send states to different server in uniform way by + rotating the list of edges that should transport the state + to the correct server, we rotate the index and not the list + to avoid aliasing since the list is shared by many components + """ + idx %= len(edges) + chosen = edges[idx] + idx = (idx + 1) % len(edges) + return chosen, idx + + + + diff --git a/src/app/runtime/actors/load_balancer.py b/src/app/runtime/actors/load_balancer.py new file mode 100644 index 0000000..b370ff3 --- /dev/null +++ b/src/app/runtime/actors/load_balancer.py @@ -0,0 +1,73 @@ +"""Definition of the node represented by the LB in the simulation""" + +from collections.abc import Generator +from typing import TYPE_CHECKING + +import simpy + +from app.config.constants import LbAlgorithmsName, SystemNodes +from app.runtime.actors.edge import EdgeRuntime +from app.runtime.actors.helpers.lb_algorithms import ( + least_connections, + round_robin, +) +from app.schemas.system_topology.full_system_topology import LoadBalancer + +if TYPE_CHECKING: + from app.runtime.rqs_state import RequestState + + + +class LoadBalancerRuntime: + """class to define the behaviour of the LB in the simulation""" + + def __init__( + self, + *, + env: simpy.Environment, + lb_config: LoadBalancer, + out_edges: list[EdgeRuntime] | None, + lb_box: simpy.Store, + ) -> None: + """ + Descriprion of the instance attributes for the class + Args: + env (simpy.Environment): env of the simulation + lb_config (LoadBalancer): input to define the lb in the runtime + rqs_state (RequestState): state of the simulation + out_edges (list[EdgeRuntime]): list of edges that connects lb with servers + lb_box (simpy.Store): store to add the state + + """ + self.env = env + self.lb_config = lb_config + self.out_edges = out_edges + self.lb_box = lb_box + self._round_robin_index: int = 0 + + + def _forwarder(self) -> Generator[simpy.Event, None, None]: + """Updtate the state before passing it to another node""" + assert self.out_edges is not None + while True: + state: RequestState = yield self.lb_box.get() # type: ignore[assignment] + + state.record_hop( + SystemNodes.LOAD_BALANCER, + self.lb_config.id, + self.env.now, + ) + + if self.lb_config.algorithms == LbAlgorithmsName.ROUND_ROBIN: + out_edge, self._round_robin_index = round_robin( + self.out_edges, + self._round_robin_index, + ) + else: + out_edge = least_connections(self.out_edges) + + out_edge.transport(state) + + def start(self) -> simpy.Process: + """Initialization of the simpy process for the LB""" + return self.env.process(self._forwarder()) diff --git a/src/app/runtime/actors/rqs_generator.py b/src/app/runtime/actors/rqs_generator.py index bc114ba..b666d5d 100644 --- a/src/app/runtime/actors/rqs_generator.py +++ b/src/app/runtime/actors/rqs_generator.py @@ -33,11 +33,11 @@ class RqsGeneratorRuntime: def __init__( self, + *, env: simpy.Environment, out_edge: EdgeRuntime, rqs_generator_data: RqsGeneratorInput, sim_settings: SimulationSettings, - *, rng: np.random.Generator | None = None, ) -> None: """ @@ -96,6 +96,8 @@ def _requests_generator(self) -> Generator[float, None, None]: def _event_arrival(self) -> Generator[simpy.Event, None, None]: """Simulating the process of event generation""" + assert self.out_edge is not None + time_gaps = self._requests_generator() for gap in time_gaps: diff --git a/src/app/runtime/actors/server.py b/src/app/runtime/actors/server.py index 94d6b24..bf6b0b6 100644 --- a/src/app/runtime/actors/server.py +++ b/src/app/runtime/actors/server.py @@ -31,6 +31,7 @@ class ServerRuntime: def __init__( # noqa: PLR0913 self, + *, env: simpy.Environment, server_resources: ServerContainers, server_config: Server, @@ -262,6 +263,7 @@ def _dispatcher(self) -> Generator[simpy.Event, None, None]: The main dispatcher loop. It pulls requests from the inbox and spawns a new '_handle_request' process for each one. """ + assert self.out_edge is not None while True: # Wait for a request to arrive in the server's inbox raw_state = yield self.server_box.get() diff --git a/src/app/schemas/simulation_settings_input.py b/src/app/schemas/simulation_settings_input.py index 80828b5..a9a90a6 100644 --- a/src/app/schemas/simulation_settings_input.py +++ b/src/app/schemas/simulation_settings_input.py @@ -43,3 +43,4 @@ class SimulationSettings(BaseModel): description="constant interval of time to build time series for metrics", ) + diff --git a/src/app/schemas/system_topology/full_system_topology.py b/src/app/schemas/system_topology/full_system_topology.py index 2f29f2a..6b49b21 100644 --- a/src/app/schemas/system_topology/full_system_topology.py +++ b/src/app/schemas/system_topology/full_system_topology.py @@ -18,6 +18,7 @@ ) from app.config.constants import ( + LbAlgorithmsName, NetworkParameters, ServerResourcesDefaults, SystemEdges, @@ -50,7 +51,7 @@ def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 return v # ------------------------------------------------------------- -# SERVER RESOURCES EXAMPLE +# SERVER RESOURCES # ------------------------------------------------------------- class ServerResources(BaseModel): @@ -107,6 +108,29 @@ def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 raise ValueError(msg) return v +class LoadBalancer(BaseModel): + """ + basemodel for the load balancer + - id: unique name associated to the lb + - type: type of the node in the structure + - server_covered: list of server id connected to the lb + """ + + id: str + type: SystemNodes = SystemNodes.LOAD_BALANCER + algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN + server_covered: set[str] = Field(default_factory=set) + + + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the server is standard""" + if v != SystemNodes.LOAD_BALANCER: + msg = f"The type should have a standard value: {SystemNodes.LOAD_BALANCER}" + raise ValueError(msg) + return v + # ------------------------------------------------------------- # NODES CLASS WITH ALL POSSIBLE OBJECTS REPRESENTED BY A NODE # ------------------------------------------------------------- @@ -121,6 +145,7 @@ class TopologyNodes(BaseModel): servers: list[Server] client: Client + load_balancer: LoadBalancer | None = None @model_validator(mode="after") # type: ignore[arg-type] def unique_ids( @@ -236,10 +261,48 @@ def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N80 Returning the (unchanged) model signals that the integrity check passed. """ valid_ids = {s.id for s in model.nodes.servers} | {model.nodes.client.id} + if model.nodes.load_balancer is not None: + valid_ids.add(model.nodes.load_balancer.id) + for e in model.edges: if e.source not in valid_ids or e.target not in valid_ids: msg = f"Edge {e.source}->{e.target} references unknown node" raise ValueError(msg) return model + @model_validator(mode="after") # type: ignore[arg-type] + def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + """ + Check de validity of the load balancer: first we check + if is present in the simulation, second we check if the LB list + is a proper subset of the server sets of ids, then we check if + edge from LB to the servers are well defined + """ + lb = model.nodes.load_balancer + if lb is None: + return model + + server_ids = {s.id for s in model.nodes.servers} + + # 1) LB list ⊆ server_ids + missing = lb.server_covered - server_ids + if missing: + + msg = (f"Load balancer '{lb.id}'" + "references unknown servers: {sorted(missing)}") + raise ValueError(msg) + + # edge are well defined + targets_from_lb = {e.target for e in model.edges if e.source == lb.id} + not_linked = lb.server_covered - targets_from_lb + if not_linked: + msg = ( + f"Servers {sorted(not_linked)} are covered by LB '{lb.id}' " + "but have no outgoing edge from it." + ) + + raise ValueError(msg) + + return model + diff --git a/tests/unit/resources/test_registry.py b/tests/unit/resources/test_registry.py index fe5a693..6aef76a 100644 --- a/tests/unit/resources/test_registry.py +++ b/tests/unit/resources/test_registry.py @@ -39,7 +39,7 @@ def test_registry_initialises_filled_containers() -> None: """CPU and RAM containers must start full for every server.""" env = simpy.Environment() topo = _build_topology() - registry = ResourcesRuntime(env, topo) + registry = ResourcesRuntime(env=env, data=topo) for srv in topo.nodes.servers: containers = registry[srv.id] @@ -54,7 +54,7 @@ def test_registry_initialises_filled_containers() -> None: def test_getitem_unknown_server_raises_keyerror() -> None: """Accessing an undefined server ID should raise KeyError.""" env = simpy.Environment() - registry = ResourcesRuntime(env, _build_topology()) + registry = ResourcesRuntime(env=env, data=_build_topology()) with pytest.raises(KeyError): _ = registry["non-existent-server"] diff --git a/tests/unit/runtime/engine/test_client.py b/tests/unit/runtime/actors/test_client.py similarity index 100% rename from tests/unit/runtime/engine/test_client.py rename to tests/unit/runtime/actors/test_client.py diff --git a/tests/unit/runtime/engine/test_edge.py b/tests/unit/runtime/actors/test_edge.py similarity index 100% rename from tests/unit/runtime/engine/test_edge.py rename to tests/unit/runtime/actors/test_edge.py diff --git a/tests/unit/runtime/actors/test_load_balancer.py b/tests/unit/runtime/actors/test_load_balancer.py new file mode 100644 index 0000000..35e622a --- /dev/null +++ b/tests/unit/runtime/actors/test_load_balancer.py @@ -0,0 +1,131 @@ +"""Unit tests for ``LoadBalancerRuntime`` (round-robin & least-connections).""" + +from __future__ import annotations + +from typing import TYPE_CHECKING, cast + +import pytest +import simpy + +from app.config.constants import LbAlgorithmsName, SystemNodes +from app.runtime.actors.load_balancer import LoadBalancerRuntime +from app.schemas.system_topology.full_system_topology import LoadBalancer + +if TYPE_CHECKING: + from app.runtime.actors.edge import EdgeRuntime + + + +# --------------------------------------------------------------------------- # +# Dummy objects (lightweight test doubles) # +# --------------------------------------------------------------------------- # +class DummyState: + """Tiny substitute for ``RequestState`` - only ``history`` is needed.""" + + def __init__(self) -> None: + """Instance of the state history""" + self.history: list[str] = [] + + def record_hop(self, comp_type: SystemNodes, comp_id: str, _: float) -> None: + """Append the hop as ``":"``.""" + self.history.append(f"{comp_type.value}:{comp_id}") + + +class DummyEdge: + """Stub that mimics just the pieces `LoadBalancerRuntime` relies on.""" + + def __init__(self, edge_id: str, concurrent: int = 0) -> None: + """Instance for the dummy edge""" + self.edge_config = type("Cfg", (), {"id": edge_id}) + self.concurrent_connections = concurrent + self.received: list[DummyState] = [] + + # Signature compatible with EdgeRuntime.transport + def transport(self, state: DummyState) -> None: + """Collect the state for later assertions.""" + self.received.append(state) + + +# --------------------------------------------------------------------------- # +# Fixtures # +# --------------------------------------------------------------------------- # +@pytest.fixture +def env() -> simpy.Environment: + """Return a fresh SimPy environment per test.""" + return simpy.Environment() + + +def _make_lb_runtime( + env: simpy.Environment, + algorithm: LbAlgorithmsName, + edges: list[DummyEdge], +) -> LoadBalancerRuntime: + """Wire LB, its inbox store and the supplied dummy edges.""" + lb_cfg = LoadBalancer( + id="lb-1", + algorithms=algorithm, + server_covered={e.edge_config.id for e in edges}, # type: ignore[attr-defined] + ) + inbox: simpy.Store = simpy.Store(env) + lb = LoadBalancerRuntime( + env=env, + lb_config=lb_cfg, + # ② cast DummyEdge list to the expected interface type + out_edges=cast("list[EdgeRuntime]", edges), + lb_box=inbox, + ) + lb.start() + return lb + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # +def test_round_robin_rotation(env: simpy.Environment) -> None: + """Three requests, two edges ⇒ order must be edge-0, edge-1, edge-0.""" + edge0, edge1 = DummyEdge("srv-A"), DummyEdge("srv-B") + lb = _make_lb_runtime(env, LbAlgorithmsName.ROUND_ROBIN, [edge0, edge1]) + + for _ in range(3): + lb.lb_box.put(DummyState()) + + env.run() + + assert len(edge0.received) == 2 + assert len(edge1.received) == 1 + + tag = SystemNodes.LOAD_BALANCER.value + assert edge0.received[0].history[0].startswith(f"{tag}:") + assert edge0.received[1].history[0].startswith(f"{tag}:") + + +def test_least_connections_picks_lowest(env: simpy.Environment) -> None: + """Edge with fewer concurrent connections must be selected.""" + busy = DummyEdge("busy", concurrent=10) + idle = DummyEdge("idle", concurrent=1) + + lb = _make_lb_runtime(env, LbAlgorithmsName.LEAST_CONNECTIONS, [busy, idle]) + lb.lb_box.put(DummyState()) + + env.run() + + assert idle.received + assert not busy.received + + +def test_start_raises_if_no_edges(env: simpy.Environment) -> None: + """`start()` followed by `env.run()` with `out_edges=None` must assert.""" + lb_cfg = LoadBalancer( + id="lb-bad", + algorithms=LbAlgorithmsName.ROUND_ROBIN, + server_covered=set(), + ) + lb = LoadBalancerRuntime( + env=env, + lb_config=lb_cfg, + out_edges=None, + lb_box=simpy.Store(env), + ) + + lb.start() + with pytest.raises(AssertionError): + env.run() diff --git a/tests/unit/runtime/engine/test_rqs_generator.py b/tests/unit/runtime/actors/test_rqs_generator.py similarity index 100% rename from tests/unit/runtime/engine/test_rqs_generator.py rename to tests/unit/runtime/actors/test_rqs_generator.py diff --git a/tests/unit/runtime/engine/test_server.py b/tests/unit/runtime/actors/test_server.py similarity index 100% rename from tests/unit/runtime/engine/test_server.py rename to tests/unit/runtime/actors/test_server.py diff --git a/tests/unit/schemas/test_full_topology_input.py b/tests/unit/schemas/test_full_topology_input.py index 8382ee6..f6bf1f9 100644 --- a/tests/unit/schemas/test_full_topology_input.py +++ b/tests/unit/schemas/test_full_topology_input.py @@ -18,6 +18,7 @@ from app.schemas.system_topology.full_system_topology import ( Client, Edge, + LoadBalancer, Server, ServerResources, TopologyGraph, @@ -95,6 +96,18 @@ def test_invalid_server_type() -> None: endpoints=[_dummy_endpoint()], ) +# --------------------------------------------------------------------------- # +# Load Balancer # +# --------------------------------------------------------------------------- # + +def test_valid_lb() -> None: + """A LB with correct ``type`` validates.""" + cli = LoadBalancer( + id="LB", + type=SystemNodes.LOAD_BALANCER, + server_covered=["s1", "s2"], + ) + assert cli.type is SystemNodes.LOAD_BALANCER # --------------------------------------------------------------------------- # # TopologyNodes # @@ -174,6 +187,37 @@ def _latency() -> RVConfig: """Tiny helper for latency objects.""" return RVConfig(mean=0.02) +def _topology_with_lb( + cover: set[str], + extra_edges: list[Edge] | None = None, +) -> TopologyGraph: + """Build a minimal graph with 1 client, 1 server and a load balancer.""" + nodes = _single_node_topology() + lb = LoadBalancer(id="lb-1", server_covered=cover) + nodes = TopologyNodes( + servers=nodes.servers, + client=nodes.client, + load_balancer=lb, + ) + + edges: list[Edge] = [ + Edge( # client -> LB + id="cli-lb", + source="browser", + target="lb-1", + latency=_latency(), + ), + Edge( # LB -> server (may be removed in invalid tests) + id="lb-srv", + source="lb-1", + target="svc-A", + latency=_latency(), + ), + ] + if extra_edges: + edges.extend(extra_edges) + return TopologyGraph(nodes=nodes, edges=edges) + def test_valid_topology_graph() -> None: """Happy-path graph passes validation.""" @@ -188,6 +232,19 @@ def test_valid_topology_graph() -> None: graph = TopologyGraph(nodes=nodes, edges=[edge]) assert len(graph.edges) == 1 +def test_topology_graph_without_lb_still_valid() -> None: + """Graph without load balancer validates just like before.""" + nodes = _single_node_topology() + edge = Edge( + id="edge-1", + source="browser", + target="svc-A", + latency=_latency(), + ) + graph = TopologyGraph(nodes=nodes, edges=[edge]) + assert graph.nodes.load_balancer is None + + def test_edge_refers_unknown_node() -> None: """Edge pointing to a non-existent node fails validation.""" @@ -200,3 +257,49 @@ def test_edge_refers_unknown_node() -> None: ) with pytest.raises(ValidationError): TopologyGraph(nodes=nodes, edges=[bad_edge]) + + +# --------------------------------------------------------------------------- # +# 2) LB is valid # +# --------------------------------------------------------------------------- # +def test_load_balancer_valid_graph() -> None: + """LB covering a server with proper edges passes validation.""" + graph = _topology_with_lb({"svc-A"}) + assert graph.nodes.load_balancer is not None + assert graph.nodes.load_balancer.server_covered == {"svc-A"} + + +# --------------------------------------------------------------------------- # +# 3) LB con server inesistente # +# --------------------------------------------------------------------------- # +def test_lb_references_unknown_server() -> None: + """LB that lists a non-existent server triggers ValidationError.""" + with pytest.raises(ValidationError): + _topology_with_lb({"ghost-srv"}) + + +# --------------------------------------------------------------------------- # +# 4) LB no edge with a server covered # +# --------------------------------------------------------------------------- # +def test_lb_missing_edge_to_covered_server() -> None: + """LB covers svc-A but edge LB→svc-A is missing → ValidationError.""" + # costruiamo il grafo senza l'edge lb-srv + nodes = _single_node_topology() + lb = LoadBalancer(id="lb-1", server_covered={"svc-A"}) + nodes = TopologyNodes( + servers=nodes.servers, + client=nodes.client, + load_balancer=lb, + ) + edges = [ + Edge( + id="cli-lb", + source="browser", + target="lb-1", + latency=_latency(), + ), + ] + with pytest.raises(ValidationError): + TopologyGraph(nodes=nodes, edges=edges) + + From 7649866b0281a077efacbda6091cdf8c0629b79f Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Wed, 6 Aug 2025 16:24:40 +0200 Subject: [PATCH 21/35] Features/simulation runner (#10) * added the first method to the simulation runner * added methods to handle nodes * completed simulation runtime + integration test --- poetry.lock | 75 +++++- pyproject.toml | 2 + src/app/metrics/analyzer.py | 6 +- src/app/runtime/actors/rqs_generator.py | 2 +- src/app/runtime/actors/server.py | 22 +- src/app/runtime/simulation_runner.py | 313 ++++++++++++++++++++++ tests/integration/conftest.py | 46 ++++ tests/integration/minimal/conftest.py | 80 ++++++ tests/integration/minimal/test_minimal.py | 100 +++++++ 9 files changed, 637 insertions(+), 9 deletions(-) create mode 100644 src/app/runtime/simulation_runner.py create mode 100644 tests/integration/conftest.py create mode 100644 tests/integration/minimal/conftest.py create mode 100644 tests/integration/minimal/test_minimal.py diff --git a/poetry.lock b/poetry.lock index 543faa8..f698f6c 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1076,6 +1076,68 @@ files = [ [package.extras] cli = ["click (>=5.0)"] +[[package]] +name = "pyyaml" +version = "6.0.2" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, + {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, + {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, + {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, + {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, + {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, + {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, + {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, + {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, + {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, + {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, + {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, + {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, + {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, + {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, + {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, +] + [[package]] name = "ruff" version = "0.12.5" @@ -1125,6 +1187,17 @@ files = [ {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, ] +[[package]] +name = "types-pyyaml" +version = "6.0.12.20250516" +description = "Typing stubs for PyYAML" +optional = false +python-versions = ">=3.9" +files = [ + {file = "types_pyyaml-6.0.12.20250516-py3-none-any.whl", hash = "sha256:8478208feaeb53a34cb5d970c56a7cd76b72659442e733e268a94dc72b2d0530"}, + {file = "types_pyyaml-6.0.12.20250516.tar.gz", hash = "sha256:9f21a70216fc0fa1b216a8176db5f9e0af6eb35d2f2932acb87689d03a5bf6ba"}, +] + [[package]] name = "typing-extensions" version = "4.14.1" @@ -1153,4 +1226,4 @@ typing-extensions = ">=4.12.0" [metadata] lock-version = "2.0" python-versions = "^3.12" -content-hash = "1441494d6783804e41cd06a1a630c2031b47573ba6f28619d4967e27953aff40" +content-hash = "b7b303ed9df0a73da71790803bfde02b8dc243871801686bb7a3127ca3f638aa" diff --git a/pyproject.toml b/pyproject.toml index 1528987..22fcaa2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,6 +16,7 @@ pydantic = {extras = ["email"], version = "^2.11.7"} numpy = "^2.3.1" simpy = "^4.1.1" matplotlib = "^3.10.3" +pyyaml = "^6.0.2" [tool.poetry.group.dev.dependencies] pytest = "^8.4.1" @@ -23,6 +24,7 @@ pytest-asyncio = "^1.0.0" pytest-cov = "^6.2.1" mypy = "^1.16.1" ruff = "^0.12.1" +types-pyyaml = "^6.0.12.20250516" [build-system] requires = ["poetry-core"] diff --git a/src/app/metrics/analyzer.py b/src/app/metrics/analyzer.py index 07a021e..762e5c6 100644 --- a/src/app/metrics/analyzer.py +++ b/src/app/metrics/analyzer.py @@ -158,9 +158,11 @@ def get_latency_stats(self) -> dict[LatencyKey, float]: return self.latency_stats or {} def get_throughput_series(self) -> tuple[list[float], list[float]]: - """Return throughput time series (timestamps, RPS).""" + """Return (timestamps, RPS). Empty lists when no traffic.""" self.process_all_metrics() - assert self.throughput_series is not None + if self.throughput_series is None: + return [], [] + return self.throughput_series def get_sampled_metrics(self) -> dict[str, dict[str, list[float]]]: diff --git a/src/app/runtime/actors/rqs_generator.py b/src/app/runtime/actors/rqs_generator.py index b666d5d..d9e7e38 100644 --- a/src/app/runtime/actors/rqs_generator.py +++ b/src/app/runtime/actors/rqs_generator.py @@ -35,7 +35,7 @@ def __init__( self, *, env: simpy.Environment, - out_edge: EdgeRuntime, + out_edge: EdgeRuntime | None, rqs_generator_data: RqsGeneratorInput, sim_settings: SimulationSettings, rng: np.random.Generator | None = None, diff --git a/src/app/runtime/actors/server.py b/src/app/runtime/actors/server.py index bf6b0b6..9051d99 100644 --- a/src/app/runtime/actors/server.py +++ b/src/app/runtime/actors/server.py @@ -29,18 +29,30 @@ class ServerRuntime: """class to define the server during the simulation""" - def __init__( # noqa: PLR0913 + def __init__( # noqa: PLR0913 self, *, env: simpy.Environment, server_resources: ServerContainers, server_config: Server, - out_edge: EdgeRuntime, + out_edge: EdgeRuntime | None, server_box: simpy.Store, settings: SimulationSettings, rng: np.random.Generator | None = None, - ) -> None: - """Docstring to complete""" + ) -> None: + """ + Definition of the instance attributes + Args: + env (simpy.Environment): simpy environment + server_resources (ServerContainers):resource defined in the + input for each server + server_config (Server): parameter to define the server from the input + out_edge (EdgeRuntime): edge connecting the server to the next node + server_box (simpy.Store): box with the states that the server + should elaborate + settings (SimulationSettings): general input settings for the simulation + rng (np.random.Generator | None, optional): random number generator. + """ self.env = env self.server_resources = server_resources self.server_config = server_config @@ -231,6 +243,7 @@ def _handle_request( # noqa: PLR0915, PLR0912, C901 self._ram_in_use -= total_ram yield self.server_resources[ServerResourceName.RAM.value].put(total_ram) + assert self.out_edge is not None self.out_edge.transport(state) @@ -263,7 +276,6 @@ def _dispatcher(self) -> Generator[simpy.Event, None, None]: The main dispatcher loop. It pulls requests from the inbox and spawns a new '_handle_request' process for each one. """ - assert self.out_edge is not None while True: # Wait for a request to arrive in the server's inbox raw_state = yield self.server_box.get() diff --git a/src/app/runtime/simulation_runner.py b/src/app/runtime/simulation_runner.py new file mode 100644 index 0000000..e2b5c6f --- /dev/null +++ b/src/app/runtime/simulation_runner.py @@ -0,0 +1,313 @@ +"""Components to run the whole simulation given specific input data""" + +from itertools import chain +from pathlib import Path +from typing import TYPE_CHECKING, Protocol, cast + +import numpy as np +import simpy +import yaml + +from app.metrics.analyzer import ResultsAnalyzer +from app.metrics.collector import SampledMetricCollector +from app.resources.registry import ResourcesRuntime +from app.runtime.actors.client import ClientRuntime +from app.runtime.actors.edge import EdgeRuntime +from app.runtime.actors.load_balancer import LoadBalancerRuntime +from app.runtime.actors.rqs_generator import RqsGeneratorRuntime +from app.runtime.actors.server import ServerRuntime +from app.schemas.full_simulation_input import SimulationPayload + +if TYPE_CHECKING: + from collections.abc import Iterable + + from app.schemas.rqs_generator_input import RqsGeneratorInput + from app.schemas.system_topology.full_system_topology import ( + Client, + Edge, + LoadBalancer, + Server, + ) + +# --- PROTOCOL DEFINITION --- +# This is the contract that all runtime actors must follow. +# it is a contract useful to communicate to mypy that object of +# startable type have all the method start +class Startable(Protocol): + """A protocol for runtime actors that can be started.""" + + def start(self) -> simpy.Process: + """Starts the main process loop for the actor.""" + ... + +class SimulationRunner: + """Class to handle the simulation""" + + def __init__( + self, + *, + env: simpy.Environment, + simulation_input: SimulationPayload, + ) -> None: + """ + Orchestrates building, wiring and running all actor runtimes. + + Args: + env (simpy.Environment): global environment for the simulation + simulation_input (SimulationPayload): full input for the simulation + + """ + self.env = env + self.simulation_input = simulation_input + + # instantiation of object needed to build nodes for the runtime phase + self.servers: list[Server] = simulation_input.topology_graph.nodes.servers + self.client: Client = simulation_input.topology_graph.nodes.client + self.rqs_generator: RqsGeneratorInput = simulation_input.rqs_input + self.lb: LoadBalancer | None = None + self.simulation_settings = simulation_input.sim_settings + self.edges: list[Edge] = simulation_input.topology_graph.edges + self.rng = np.random.default_rng() + + # Object needed to start the simualation + self._servers_runtime: dict[str, ServerRuntime] = {} + self._client_runtime: dict[str, ClientRuntime] = {} + self._rqs_runtime: dict[str, RqsGeneratorRuntime] = {} + self._lb_runtime: dict[str, LoadBalancerRuntime] = {} + self._edges_runtime: dict[tuple[str, str], EdgeRuntime] = {} + + + # ------------------------------------------------------------------ # + # Private: build phase # + # ------------------------------------------------------------------ # + + def _make_inbox(self) -> simpy.Store: # local helper + """Helper to create store for the states of the simulation""" + return simpy.Store(self.env) + + def _build_rqs_generator(self) -> None: + """ + Build the rqs generator runtime, we use a dict for one reason + In the future we might add CDN so we will need + multiple generators , one for each client + """ + self._rqs_runtime[self.rqs_generator.id] = RqsGeneratorRuntime( + env = self.env, + out_edge=None, + rqs_generator_data=self.rqs_generator, + sim_settings=self.simulation_settings, + rng=self.rng, + ) + + + def _build_client(self) -> None: + """ + Build the client runtime, we use a dict for two reasons + 1) In the future we might add CDN so we will need + multiple client + 2) When we will assign outer edges we will need a dict + with all components indexed by their id + """ + self._client_runtime[self.client.id] = ClientRuntime( + env=self.env, + out_edge=None, + completed_box=self._make_inbox(), + client_box=self._make_inbox(), + client_config=self.client, + ) + + + def _build_servers(self) -> None: + """ + Build given the input data a dict containing all server Runtime + indexed by their unique id + """ + registry = ResourcesRuntime( + env=self.env, + data=self.simulation_input.topology_graph, + ) + for server in self.servers: + container = registry[server.id] + self._servers_runtime[server.id] = ServerRuntime( + env=self.env, + server_resources=container, + server_config=server, + out_edge=None, + server_box=self._make_inbox(), + settings=self.simulation_settings, + rng= self.rng, + + ) + + + def _build_load_balancer(self) -> None: + """ + Build given the input data the load balancer runtime we will + use a dict because we may have multiple load balancer and we + will be usefull to assign outer edges + """ + # Topologies without a LB are perfectly legal (e.g. the “minimal” + # integration test). Early-return instead of asserting. + if self.simulation_input.topology_graph.nodes.load_balancer is None: + return + + self.lb = self.simulation_input.topology_graph.nodes.load_balancer + + self._lb_runtime[self.lb.id] = LoadBalancerRuntime( + env=self.env, + lb_config=self.lb, + out_edges= [], + lb_box=self._make_inbox(), + ) + + + def _build_edges(self) -> None: + """Initialization of the edges runtime dictionary from the input data""" + # We need to merge all previous dictionary for the nodes to assign + # for each edge the correct target box + all_nodes: dict[str, object] = { + **self._servers_runtime, + **self._client_runtime, + **self._lb_runtime, + **self._rqs_runtime, +} + + for edge in self.edges: + + target_object = all_nodes[edge.target] # O(1) lookup + + if isinstance(target_object, ServerRuntime): + target_box = target_object.server_box + elif isinstance(target_object, ClientRuntime): + target_box = target_object.client_box + elif isinstance(target_object, LoadBalancerRuntime): + target_box = target_object.lb_box + else: + msg = f"Unknown runtime for {edge.target!r}" + raise TypeError(msg) + + self._edges_runtime[(edge.source, edge.target)] = ( + EdgeRuntime( + env=self.env, + edge_config=edge, + rng=self.rng, + target_box= target_box, + settings=self.simulation_settings, + ) + ) + # Here we assign the outer edges to all nodes + source_object = all_nodes[edge.source] + + if isinstance(source_object, ( + ServerRuntime, + ClientRuntime, + RqsGeneratorRuntime, + )): + source_object.out_edge = self._edges_runtime[( + edge.source, + edge.target) + ] + elif isinstance(source_object, LoadBalancerRuntime): + assert source_object.out_edges is not None + source_object.out_edges.append(self._edges_runtime[( + edge.source, + edge.target, + ) + ]) + + else: + msg = f"Unknown runtime for {edge.source!r}" + raise TypeError(msg) + + + # ------------------------------------------------------------------ # + # RUN phase # + # ------------------------------------------------------------------ # + def _start_all_processes(self) -> None: + """Register every .start() in the environment.""" + # ------------------------------------------------------------------ + # Start every actor's main coroutine + # + # * itertools.chain lazily stitches together the four dict_views + # into ONE iterator. No temporary list is built, zero extra + # allocations, yet the for-loop stays single and readable. + # * Order matters only for determinism, so we keep the natural + # “generator → client → servers → LB” sequence by listing the + # dicts explicitly. + # * Alternative ( list(a)+list(b)+… ) would copy thousands of + # references just to throw them away after the loop - wasteful. + # ------------------------------------------------------------------ + + runtimes = chain( + self._rqs_runtime.values(), + self._client_runtime.values(), + self._servers_runtime.values(), + self._lb_runtime.values(), + ) + + # Here we are saying to mypy that those object are of + # the startable type and they share the start method + for rt in cast("Iterable[Startable]", runtimes): + rt.start() + + def _start_metric_collector(self) -> None: + """One coroutine that snapshots RAM / queues / connections.""" + SampledMetricCollector( + edges=list(self._edges_runtime.values()), + servers=list(self._servers_runtime.values()), + env=self.env, + sim_settings=self.simulation_settings, + ).start() + + # ------------------------------------------------------------------ # + # Public entry-point # + # ------------------------------------------------------------------ # + def run(self) -> ResultsAnalyzer: + """Build → wire → start → run the clock → return `ResultsAnalyzer`""" + # 1. BUILD + self._build_rqs_generator() + self._build_client() + self._build_servers() + self._build_load_balancer() + + # 2. WIRE + self._build_edges() + + # 3. START ALL COROUTINES + self._start_all_processes() + self._start_metric_collector() + + # 4. ADVANCE THE SIMULATION + self.env.run(until=self.simulation_settings.total_simulation_time) + + return ResultsAnalyzer( + client=next(iter(self._client_runtime.values())), + servers=list(self._servers_runtime.values()), + edges=list(self._edges_runtime.values()), + settings=self.simulation_settings, + ) + + # ------------------------------------------------------------------ # + # Convenience constructor (load from YAML) # + # ------------------------------------------------------------------ # + @classmethod + def from_yaml( + cls, + *, + env: simpy.Environment, + yaml_path: str | Path, + ) -> "SimulationRunner": + """ + Quick helper so that integration tests & CLI can do: + + ```python + runner = SimulationRunner.from_yaml(env, "scenario.yml") + results = runner.run() + ``` + """ + data = yaml.safe_load(Path(yaml_path).read_text()) + payload = SimulationPayload.model_validate(data) + return cls(env=env, simulation_input=payload) + + + diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py new file mode 100644 index 0000000..b46300b --- /dev/null +++ b/tests/integration/conftest.py @@ -0,0 +1,46 @@ +"""Shared fixtures used by several integration-test groups.""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import pytest +import simpy + +from app.runtime.simulation_runner import SimulationRunner + +if TYPE_CHECKING: + from collections.abc import Callable + from pathlib import Path + + +# --------------------------------------------------------------------------- # +# Environment # +# --------------------------------------------------------------------------- # +@pytest.fixture +def env() -> simpy.Environment: + """A fresh SimPy environment per test.""" + return simpy.Environment() + + +# --------------------------------------------------------------------------- # +# Runner factory (load YAML scenarios) # +# --------------------------------------------------------------------------- # +@pytest.fixture +def make_runner( + env: simpy.Environment, +) -> Callable[[str | Path], SimulationRunner]: + """ + Factory that loads a YAML scenario and instantiates a + :class:`SimulationRunner`. + + Usage inside a test:: + + runner = make_runner("scenarios/minimal.yml") + results = runner.run() + """ + + def _factory(yaml_path: str | Path) -> SimulationRunner: + return SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) + + return _factory diff --git a/tests/integration/minimal/conftest.py b/tests/integration/minimal/conftest.py new file mode 100644 index 0000000..1c9f81e --- /dev/null +++ b/tests/integration/minimal/conftest.py @@ -0,0 +1,80 @@ +""" +Local fixtures for the *minimal* integration scenario. + +We **do not** add any Edge to the TopologyGraph because the core schema +forbids generator-origin edges. Instead we patch the single +`RqsGeneratorRuntime` after the `SimulationRunner` is built, giving it a +*no-op* EdgeRuntime so its internal assertion passes. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import pytest +import simpy + +from app.config.constants import TimeDefaults +from app.runtime.simulation_runner import SimulationRunner +from app.schemas.random_variables_config import RVConfig +from app.schemas.rqs_generator_input import RqsGeneratorInput + +if TYPE_CHECKING: + from app.schemas.full_simulation_input import SimulationPayload + from app.schemas.full_simulation_input import ( + SimulationPayload as _Payload, # noqa: F401 + ) + from app.schemas.rqs_generator_input import ( + RqsGeneratorInput as _RqsIn, # noqa: F401 + ) + +# ────────────────────────────────────────────────────────────────────────────── +# 0-traffic generator (shadows the project-wide fixture) +# ────────────────────────────────────────────────────────────────────────────── +@pytest.fixture(scope="session") +def rqs_input() -> RqsGeneratorInput: + """A generator that never emits any request.""" + return RqsGeneratorInput( + id="rqs-zero", + avg_active_users=RVConfig(mean=0.0), + avg_request_per_minute_per_user=RVConfig(mean=0.0), + user_sampling_window=TimeDefaults.USER_SAMPLING_WINDOW, + ) + + +# ────────────────────────────────────────────────────────────────────────────── +# SimPy env - local to this directory +# ────────────────────────────────────────────────────────────────────────────── +@pytest.fixture +def env() -> simpy.Environment: + """Fresh environment per test module.""" + return simpy.Environment() + + +class _NoOpEdge: + """EdgeRuntime stand-in that simply discards every state.""" + + def transport(self, _state: object) -> None: # ANN001: _state annotated + return # swallow the request silently + + +# ────────────────────────────────────────────────────────────────────────────── +# Runner factory - assigns the dummy edge *after* building the runner +# ────────────────────────────────────────────────────────────────────────────── +@pytest.fixture +def runner( + env: simpy.Environment, + payload_base: SimulationPayload, +) -> SimulationRunner: + """Build a `SimulationRunner` and patch the generator's `out_edge`.""" + sim_runner = SimulationRunner(env=env, simulation_input=payload_base) + + def _patch_noop_edge(r: SimulationRunner) -> None: + + gen_rt = next(iter(r._rqs_runtime.values())) # noqa: SLF001 + gen_rt.out_edge = _NoOpEdge() # type: ignore[assignment] + + + sim_runner._patch_noop_edge = _patch_noop_edge # type: ignore[attr-defined] # noqa: SLF001 + + return sim_runner diff --git a/tests/integration/minimal/test_minimal.py b/tests/integration/minimal/test_minimal.py new file mode 100644 index 0000000..0ae77c2 --- /dev/null +++ b/tests/integration/minimal/test_minimal.py @@ -0,0 +1,100 @@ +""" +Smoke-test: the **smallest** valid topology boots, ticks and +shuts down without recording any metric. + +Topology under test +------------------- +generator ──Ø── client (Ø == no real EdgeRuntime) + +The request-generator cannot emit messages because its ``out_edge`` is +replaced by a no-op stub. The client is patched the same way so its own +forwarder never attempts a network send. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import pytest +import simpy + +from app.metrics.analyzer import ResultsAnalyzer +from app.runtime.simulation_runner import SimulationRunner + +if TYPE_CHECKING: + from app.schemas.full_simulation_input import SimulationPayload + + +# --------------------------------------------------------------------------- # +# Helpers # +# --------------------------------------------------------------------------- # + +class _NoOpEdge: + """Edge stub: swallows every transport call.""" + + def transport(self) -> None: + # Nothing to do - we just black-hole the message. + return + + +# --------------------------------------------------------------------------- # +# Local fixtures # +# --------------------------------------------------------------------------- # +@pytest.fixture +def env() -> simpy.Environment: + """Fresh SimPy environment for this test file.""" + return simpy.Environment() + + +@pytest.fixture +def runner( + env: simpy.Environment, + payload_base: SimulationPayload, # comes from project-wide conftest +) -> SimulationRunner: + """SimulationRunner already loaded with *minimal* payload.""" + return SimulationRunner(env=env, simulation_input=payload_base) + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # +def test_smoke_minimal_runs(runner: SimulationRunner) -> None: + """ + The simulation should: + + * start without any server or edge, + * execute its clock, + * leave all metric collections empty. + """ + # ── 1. Build generator + patch its edge ────────────────────────────── + runner._build_rqs_generator() # noqa: SLF001 - private builder ok in test + gen_rt = next(iter(runner._rqs_runtime.values())) # noqa: SLF001 + gen_rt.out_edge = _NoOpEdge() # type: ignore[assignment] + + # ── 2. Build client + patch its edge ───────────────────────────────── + runner._build_client() # noqa: SLF001 + cli_rt = next(iter(runner._client_runtime.values())) # noqa: SLF001 + cli_rt.out_edge = _NoOpEdge() # type: ignore[assignment] + + # ── 3. Build remaining artefacts (no servers / no LB present) ─────── + runner._start_all_processes() # noqa: SLF001 + runner._start_metric_collector() # noqa: SLF001 + + # ── 4. Run the clock ───────────────────────────────────────────────── + runner.env.run(until=runner.simulation_settings.total_simulation_time) + + # ── 5. Post-processing - everything must be empty ─────────────────── + results: ResultsAnalyzer = ResultsAnalyzer( + client=cli_rt, + servers=[], # none built + edges=[], # none built + settings=runner.simulation_settings, + ) + + # No latencies were produced + assert results.get_latency_stats() == {} + # Throughput time-series must be entirely empty + timestamps, rps = results.get_throughput_series() + assert timestamps == [] + # No sampled metrics either + assert results.get_sampled_metrics() == {} From d6ff9f6539b33566f3845f079ec364a70e34a6db Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 8 Aug 2025 17:04:47 +0200 Subject: [PATCH 22/35] Features/integration tests unit tests (#11) * new integration test + bug fixing * added integration and unit test * first tests working * minor change * first working example, upgrade docs, upgrade docstrings * improvements * path bug fixed --- docs/dev_workflow_guide.md | 92 ++-- docs/fastsim-docs/requests_generator.md | 150 +++++- docs/fastsim-docs/simulation_input.md | 495 +++++++++++------- docs/fastsim-docs/simulation_runner.md | 236 +++++++++ example/data/single_server.yml | 56 ++ example/single_server_yaml.py | 273 ++++++++++ example/single_server_yml.png | Bin 0 -> 158475 bytes src/app/config/constants.py | 96 ++-- src/app/metrics/analyzer.py | 9 +- src/app/metrics/collector.py | 14 +- src/app/runtime/actors/client.py | 3 +- src/app/runtime/actors/server.py | 8 +- src/app/samplers/common_helpers.py | 55 +- src/app/samplers/poisson_poisson.py | 2 +- src/app/schemas/random_variables_config.py | 3 +- src/app/schemas/simulation_output.py | 13 - src/app/schemas/system_topology/endpoint.py | 23 +- .../system_topology/full_system_topology.py | 98 +++- tests/conftest.py | 20 +- tests/integration/minimal/conftest.py | 7 +- .../payload/data/invalid/missing_field.yml | 17 + .../payload/data/invalid/negative_latency.yml | 15 + .../payload/data/invalid/wrong_enum.yml | 13 + .../payload/test_payload_invalid.py | 19 + tests/integration/single_server/conftest.py | 47 ++ .../single_server/data/single_server.yml | 54 ++ .../single_server/test_single_server.py | 52 ++ tests/unit/runtime/actors/test_client.py | 1 + tests/unit/runtime/actors/test_edge.py | 2 +- tests/unit/runtime/test_simulation_runner.py | 159 ++++++ tests/unit/samplers/test_sampler_helper.py | 4 +- 31 files changed, 1622 insertions(+), 414 deletions(-) create mode 100644 docs/fastsim-docs/simulation_runner.md create mode 100644 example/data/single_server.yml create mode 100644 example/single_server_yaml.py create mode 100644 example/single_server_yml.png delete mode 100644 src/app/schemas/simulation_output.py create mode 100644 tests/integration/payload/data/invalid/missing_field.yml create mode 100644 tests/integration/payload/data/invalid/negative_latency.yml create mode 100644 tests/integration/payload/data/invalid/wrong_enum.yml create mode 100644 tests/integration/payload/test_payload_invalid.py create mode 100644 tests/integration/single_server/conftest.py create mode 100644 tests/integration/single_server/data/single_server.yml create mode 100644 tests/integration/single_server/test_single_server.py create mode 100644 tests/unit/runtime/test_simulation_runner.py diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md index b06ef1c..d1379db 100644 --- a/docs/dev_workflow_guide.md +++ b/docs/dev_workflow_guide.md @@ -20,58 +20,56 @@ Its job is to expose the REST API, run the discrete-event simulation, talk to th ``` fastsim-backend/ -├── Dockerfile -├── docker_fs/ # docker-compose for dev & prod -│ ├── docker-compose.dev.yml -│ └── docker-compose.prod.yml -├── scripts/ # helper bash scripts (lint, dev-startup, …) -│ ├── init-docker-dev.sh +├── example/ # examples of working simulations +│ ├── data +├── scripts/ # helper bash scripts (lint, dev-startup, …) │ └── quality-check.sh -├── alembic/ # DB migrations (versions/ contains revision files) -│ ├── env.py -│ └── versions/ -├── documentation/ # project vision & low-level docs -│ └── backend_documentation/ -│ └── … -├── tests/ # unit & integration tests +├── docs/ # project vision & low-level docs +│ └── fastsim-documentation/ +├── tests/ # unit & integration tests │ ├── unit/ │ └── integration/ -├── src/ # **application code lives here** +├── src/ # application code lives here │ └── app/ -│ ├── api/ # FastAPI routers & endpoint handlers -│ ├── config/ # Pydantic Settings + constants -│ ├── db/ # SQLAlchemy base, sessions, initial seed utilities -│ ├── metrics/ # helpers to compute/aggregate simulation KPIs -│ ├── resources/ # SimPy resource registry (CPU/RAM containers, etc.) -│ ├── runtime/ # simulation core -│ │ ├── rqs_state.py # RequestState & Hop -│ │ └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator -│ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) -│ ├── schemas/ # Pydantic input/output models -│ ├── main.py # FastAPI application factory / ASGI entry-point -│ └── simulation_run.py # CLI utility to run a sim outside of HTTP layer +│ ├── config/ # Pydantic Settings + constants +│ ├── metrics/ # logic to compute/aggregate simulation KPIs +│ ├── resources/ # SimPy resource registry (CPU/RAM containers, etc.) +│ ├── runtime/ # simulation core +│ │ ├── rqs_state.py # RequestState & Hop +│ │ ├── simulation_runner.py # logic to initialize the whole simulation + | └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator +│ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) +│ ├── schemas/ # Pydantic input/output models ├── poetry.lock ├── pyproject.toml └── README.md ``` +### **What each top-level directory in `src/app` does** + +| Directory | Purpose | +| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`config/`** | Centralised configuration layer. Contains Pydantic `BaseSettings` classes for reading environment variables and constants/enums used across the simulation engine. | +| **`metrics/`** | Post-processing and analytics. Aggregates raw simulation traces into KPIs such as latency percentiles, throughput, resource utilisation, and other performance metrics. | +| **`resources/`** | Runtime resource registry for simulated hardware components (e.g., SimPy `Container`s for CPU and RAM). Decouples resource management from actor behaviour. | +| **`runtime/`** | Core simulation engine. Orchestrates SimPy execution, maintains request state, and wires together simulation components. Includes: | +| | - **`rqs_state.py`** — Defines `RequestState` and `Hop` for tracking request lifecycle. | +| | - **`simulation_runner.py`** — Entry point for initialising and running simulations. | +| | - **`actors/`** — SimPy actor classes representing system components (`RqsGenerator`, `Client`, `Server`, `Edge`) and their behaviour. | +| **`samplers/`** | Random-variable samplers for stochastic simulation. Supports Poisson, Normal, and mixed distributions for modelling inter-arrival times and service steps. | +| **`schemas/`** | Pydantic models for input/output validation and serialisation. Includes scenario definitions, topology graphs, simulation settings, and results payloads. | -#### What each top-level directory in `src/app` does +--- -| Directory | Purpose | -| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`api/`** | Defines the public HTTP surface. Each module holds a router with path operations and dependency wiring. | -| **`config/`** | Centralised configuration: `settings.py` (Pydantic `BaseSettings`) reads env vars; `constants.py` stores enums and global literals. | -| **`db/`** | Persistence layer. Contains the SQLAlchemy base class, the session factory, and a thin wrapper that seeds or resets the database (Alembic migration scripts live at project root). | -| **`metrics/`** | Post-processing helpers that turn raw simulation traces into aggregated KPIs (latency percentiles, cost per request, utilisation curves, …). | -| **`resources/`** | A tiny run-time registry mapping every simulated server to its SimPy `Container`s (CPU, RAM). Keeps resource management separate from actor logic. | -| **`runtime/`** | The heart of the simulator. `rqs_state.py` holds the mutable `RequestState`; sub-package **`actors/`** contains each SimPy process class (Generator, Edge, Server, Client). | -| **`samplers/`** | Probability-distribution utilities that generate inter-arrival and service-time samples—used by the actors during simulation. | -| **`schemas/`** | All Pydantic models for validation and (de)serialisation: request DTOs, topology definitions, simulation settings, outputs. | -| **`main.py`** | Creates and returns the FastAPI app; imported by Uvicorn/Gunicorn. | -| **`simulation_run.py`** | Convenience script to launch a simulation offline (e.g. inside tests or CLI). | +### **Other Top-Level Directories** -Everything under `src/` is import-safe thanks to Poetry’s `packages = [{ include = "app" }]` entry in `pyproject.toml`. +| Directory | Purpose | +| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`example/`** | Ready-to-run simulation scenarios and example configurations. Includes `data/` with YAML definitions and scripts to demonstrate engine usage. | +| **`scripts/`** | Utility shell scripts for development workflow, linting, formatting, and local startup (`quality-check.sh`, etc.). | +| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`fastsim-documentation/`). | +| **`tests/`** | Automated test suite, split into **unit** and **integration** tests to verify correctness of both individual components and end-to-end scenarios. | +--- ## 3. Branching Strategy: Git Flow @@ -182,21 +180,11 @@ We will start to describe the CI part related to push and PR in the develop bran * **Full Suite (push to `develop`)** *Runs in a few minutes; includes real services and Docker.* - - * All steps from the Quick Suite - * PostgreSQL service container started via `services:` - * Alembic migrations applied to the test database + * Full test suite, including `@pytest.mark.integration` tests - * Multi-stage Docker build of the backend image - * Smoke test: container started with Uvicorn → `curl /health` + -### 4.1.3 Key Implementation Details -* **Service containers** – PostgreSQL 17 is spun up in CI with a health-check to ensure migrations run against a live instance. -* **Test markers** – integration tests are isolated with `@pytest.mark.integration`, enabling selective execution. -* **Caching** – Poetry’s download cache is restored to cut installation time; Docker layer cache is reused between builds. -* **Smoke test logic** – after the image is built, CI launches it in detached mode, polls the `/health` endpoint, prints logs, and stops the container. The job fails if the endpoint is unreachable. -* **Secrets management** – database credentials and registry tokens are stored in GitHub Secrets and injected as environment variables only at runtime. diff --git a/docs/fastsim-docs/requests_generator.md b/docs/fastsim-docs/requests_generator.md index 95190fa..a15e241 100644 --- a/docs/fastsim-docs/requests_generator.md +++ b/docs/fastsim-docs/requests_generator.md @@ -8,43 +8,151 @@ This document describes the design of the **requests generator**, which models a Following the FastSim philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. -**Inputs** +## **Inputs** -1. **Average concurrent users** – expected number of users (or sessions) simultaneously hitting the endpoint. -2. **Average requests per minute per user** – average number of requests each user issues per minute. -3. **Simulation time** – total duration of the simulation, in seconds. +1. **Average Concurrent Users (`avg_active_users`)** + Expected number of simultaneous active users (or sessions) interacting with the system. -**Output** -A continuous sequence of timestamps (seconds) marking individual request arrivals. + * Modeled as a random variable (`RVConfig`). + * Allowed distributions: **Poisson** or **Normal**. + +2. **Average Requests per Minute per User (`avg_request_per_minute_per_user`)** + Average request rate per user, expressed in requests per minute. + + * Modeled as a random variable (`RVConfig`). + * **Must** use the **Poisson** distribution. + +3. **User Sampling Window (`user_sampling_window`)** + Time interval (in seconds) over which active users are resampled. + + * Constrained between `MIN_USER_SAMPLING_WINDOW` and `MAX_USER_SAMPLING_WINDOW`. + * Defaults to `USER_SAMPLING_WINDOW`. --- -## Model Assumptions +## **Model Assumptions** -* *Concurrent users* and *requests per minute per user* are **random variables**. -* *Simulation time* is **deterministic**. +* **Random variables**: -We model: + * *Concurrent users* and *requests per minute per user* are independent random variables. + * Each is configured via the `RVConfig` model, which specifies: -* **Requests per minute per user** as Poisson($\lambda_r$). -* **Concurrent users** as either Poisson($\lambda_u$) or truncated Normal. -* **The variables are independent** + * **mean** (mandatory, must be numeric and positive), + * **distribution** (default: Poisson), + * **variance** (optional; defaults to `mean` for Normal and Log-Normal distributions). -```python -from pydantic import BaseModel -from typing import Literal +* **Supported joint sampling cases**: + + * Poisson (users) × Poisson (requests) + * Normal (users) × Poisson (requests) + + Other combinations are currently unsupported. + +* **Variance handling**: + + * If the distribution is **Normal** or **Log-Normal** and `variance` is not provided, it is automatically set to the `mean`. + +--- + +## **Validation Rules** +* `avg_request_per_minute_per_user`: + + * **Must** be Poisson-distributed. + * Validation enforces this constraint. + +* `avg_active_users`: + + * Must be either Poisson or Normal. + * Validation enforces this constraint. + +* `mean` in `RVConfig`: + + * Must be a positive number (int or float). + * Automatically coerced to `float`. + +```python class RVConfig(BaseModel): - """Configure a random-variable parameter.""" + """class to configure random variables""" + mean: float - distribution: Literal["poisson", "normal", "gaussian"] = "poisson" - variance: float | None = None # required only for normal/gaussian + distribution: Distribution = Distribution.POISSON + variance: float | None = None + + @field_validator("mean", mode="before") + def ensure_mean_is_numeric_and_positive( + cls, # noqa: N805 + v: float, + ) -> float: + """Ensure `mean` is numeric, then coerce to float.""" + err_msg = "mean must be a number (int or float)" + if not isinstance(v, (float, int)): + raise ValueError(err_msg) # noqa: TRY004 + + return float(v) + + @model_validator(mode="after") # type: ignore[arg-type] + def default_variance(cls, model: "RVConfig") -> "RVConfig": # noqa: N805 + """Set variance = mean when distribution require and variance is missing.""" + needs_variance: set[Distribution] = { + Distribution.NORMAL, + Distribution.LOG_NORMAL, + } + + if model.variance is None and model.distribution in needs_variance: + model.variance = model.mean + return model + class RqsGeneratorInput(BaseModel): - """Define simulation inputs.""" + """Define the expected variables for the simulation""" + + id: str + type: SystemNodes = SystemNodes.GENERATOR avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig - total_simulation_time: int | None = None + + user_sampling_window: int = Field( + default=TimeDefaults.USER_SAMPLING_WINDOW, + ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW, + le=TimeDefaults.MAX_USER_SAMPLING_WINDOW, + description=( + "Sampling window in seconds " + f"({TimeDefaults.MIN_USER_SAMPLING_WINDOW}-" + f"{TimeDefaults.MAX_USER_SAMPLING_WINDOW})." + ), + ) + + @field_validator("avg_request_per_minute_per_user", mode="after") + def ensure_avg_request_is_poisson( + cls, # noqa: N805 + v: RVConfig, + ) -> RVConfig: + """ + Force the distribution for the rqs generator to be poisson + at the moment we have a joint sampler just for the poisson-poisson + and gaussian-poisson case + """ + if v.distribution != Distribution.POISSON: + msg = "At the moment the variable avg request must be Poisson" + raise ValueError(msg) + return v + + @field_validator("avg_active_users", mode="after") + def ensure_avg_user_is_poisson_or_gaussian( + cls, # noqa: N805 + v: RVConfig, + ) -> RVConfig: + """ + Force the distribution for the rqs generator to be poisson + at the moment we have a joint sampler just for the poisson-poisson + and gaussian-poisson case + """ + if v.distribution not in {Distribution.POISSON, Distribution.NORMAL}: + msg = "At the moment the variable active user must be Poisson or Gaussian" + raise ValueError(msg) + return v + ``` --- diff --git a/docs/fastsim-docs/simulation_input.md b/docs/fastsim-docs/simulation_input.md index aa27d58..ad89247 100644 --- a/docs/fastsim-docs/simulation_input.md +++ b/docs/fastsim-docs/simulation_input.md @@ -1,228 +1,349 @@ -Of course. Here is the complete documentation, translated into English, based on the new Pydantic schemas. +# FastSim — Simulation Input Schema (v2) ------ +This document describes the **complete input contract** used by FastSim to run a simulation, the **design rationale** behind it, and the **guarantees** provided by the validation layer. It closes with an **end-to-end example** (YAML) you can drop into the project and run as-is. -### **FastSim — Simulation Input Schema** +The entry point is the Pydantic model: -The `SimulationPayload` is the single, self-contained contract that defines an entire simulation run. Its architecture is guided by a core philosophy: to achieve maximum control over input data through robust, upfront validation. To implement this, we extensively leverage Pydantic's powerful validation capabilities and Python's `Enum` classes. This approach creates a strictly-typed and self-consistent schema that guarantees any configuration is validated *before* the simulation engine starts. +```python +class SimulationPayload(BaseModel): + """Full input structure to perform a simulation""" + rqs_input: RqsGeneratorInput + topology_graph: TopologyGraph + sim_settings: SimulationSettings +``` + +Everything the engine needs is captured by these three components: + +* **`rqs_input`** — the workload model (how traffic is generated). +* **`topology_graph`** — the system under test, described as a directed graph (nodes & edges). +* **`sim_settings`** — global simulation controls and which metrics to collect. + +--- + +## Why this shape? (Rationale) + +### 1) **Separation of concerns** + +* **Workload** (traffic intensity & arrival process) is independent from the **topology** (architecture under test) and from **simulation control** (duration & metrics). +* This lets you reuse the same topology with different workloads, or vice versa, without touching unrelated parts. + +### 2) **Validation-first, fail-fast** + +* All inputs are **typed** and **validated** with Pydantic before the engine starts. +* Validation catches type errors, inconsistent references, and illegal combinations (e.g., an I/O step with a CPU metric). +* When a payload parses successfully, the engine can run without defensive checks scattered in runtime code. + +### 3) **Small-to-large composition** + +* The smallest unit is a **`Step`** (one resource-bound operation). +* Steps compose into an **`Endpoint`** (an ordered workflow). +* Endpoints live on a **`Server`** node with finite resources. +* Nodes and **Edges** form a **`TopologyGraph`**. +* A disciplined set of **Enums** (no magic strings) ensure a closed vocabulary. + +--- + +## 1. Workload: `RqsGeneratorInput` + +### Purpose + +Defines the traffic generator that produces request arrivals. + +```python +class RqsGeneratorInput(BaseModel): + id: str + type: SystemNodes = SystemNodes.GENERATOR + avg_active_users: RVConfig + avg_request_per_minute_per_user: RVConfig + user_sampling_window: int = Field( ... ) # seconds +``` + +### Random variables (`RVConfig`) + +```python +class RVConfig(BaseModel): + mean: float + distribution: Distribution = Distribution.POISSON + variance: float | None = None +``` + +#### Validation & guarantees -This contract brings together three distinct but interconnected layers of configuration into one cohesive structure: +* **`mean` is numeric** + `@field_validator("mean", mode="before")` coerces to `float` and rejects non-numeric values. +* **Auto variance** for Normal/LogNormal + `@model_validator(mode="after")` sets `variance = mean` if missing and the distribution is `NORMAL` or `LOG_NORMAL`. +* **Distribution constraints** on workload: -1. **`rqs_input` (`RqsGeneratorInput`)**: Defines the **workload profile**—how many users are active and how frequently they generate requests—and acts as the **source node** in our system graph. -2. **`topology_graph` (`TopologyGraph`)**: Describes the **system's architecture**—its components, resources, and the network connections between them, represented as a directed graph. -3. **`sim_settings` (`SimulationSettings`)**: Configures **global simulation parameters**, such as total runtime and which metrics to collect. + * `avg_request_per_minute_per_user` **must be Poisson** (engine currently optimised for Poisson arrivals). + * `avg_active_users` **must be Poisson or Normal**. + * Enforced via `@field_validator(..., mode="after")` with clear error messages. -This layered design decouples the *what* (the system topology) from the *how* (the traffic pattern and simulation control), allowing for modular and reusable configurations. Adherence to our validation-first philosophy means every payload is rigorously parsed against this schema. By using a controlled vocabulary of `Enums` and the power of Pydantic, we guarantee that any malformed or logically inconsistent input is rejected upfront with clear, actionable errors, ensuring the simulation engine operates only on perfectly valid data. +#### Why these constraints? ------ +* They reflect the current joint-sampling logic in the generator: **Poisson–Poisson** and **Normal–Poisson** are implemented and tested. Additional combos can be enabled later without changing the public contract. -## **1. The System Graph (`topology_graph` and `rqs_input`)** +--- -At the core of FastSim is the representation of the system as a **directed graph**. The **nodes** represent the architectural components (like servers, clients, and the traffic generator itself), while the **edges** represent the directed network connections between them. This graph-based approach allows for flexible and realistic modeling of request flows through distributed systems. +## 2. System Graph: `TopologyGraph` -### **Design Philosophy: A "Micro-to-Macro" Approach** +### Purpose -The schema is built on a compositional, "micro-to-macro" principle. We start by defining the smallest indivisible units of work (`Step`) and progressively assemble them into larger, more complex structures (`Endpoint`, `Server`, and finally the `TopologyGraph`). +Defines the architecture under test as a **directed graph**: nodes are components (client, server, optional load balancer), edges are network links with latency models. -This layered approach provides several key advantages: +```python +class TopologyGraph(BaseModel): + nodes: TopologyNodes + edges: list[Edge] +``` - * **Modularity and Reusability:** Core operations are defined once as `Steps` and can be reused across multiple `Endpoints`. - * **Local Reasoning, Global Safety:** Each model is responsible for its own internal consistency (e.g., a `Step` ensures its metric is valid for its kind). Parent models then enforce the integrity of the connections *between* these components (e.g., the `TopologyGraph` ensures all `Edges` connect to valid `Nodes`). - * **Guaranteed Robustness:** By catching all structural and referential errors before the simulation begins, this approach embodies the "fail-fast" principle. It guarantees that the SimPy engine operates on a valid, self-consistent model. +### Nodes -### **A Controlled Vocabulary: Topology Constants** +```python +class TopologyNodes(BaseModel): + servers: list[Server] + client: Client + load_balancer: LoadBalancer | None = None +``` -The schema's robustness is founded on a controlled vocabulary defined by Python `Enum` classes. Instead of error-prone "magic strings," the schema uses these enums to define the finite set of legal values for categories like operation kinds, metrics, and node types. +#### `Client` -| Enum | Purpose | -| :------------------------- | :------------------------------------------------------------------------ | -| **`EndpointStepCPU`, `EndpointStepRAM`, `EndpointStepIO`** | Defines the exhaustive list of valid `kind` values for a `Step`. | -| **`StepOperation`** | Specifies the legal dictionary keys within a `Step`'s `step_operation`. | -| **`SystemNodes`** | Enumerate the allowed `type` for nodes (e.g., `"server"`, `"client"`, `"generator"`). | -| **`SystemEdges`** | Enumerate the allowed categories for connections between nodes. | +```python +class Client(BaseModel): + id: str + type: SystemNodes = SystemNodes.CLIENT +``` ------ +* **Validator**: `type` must equal `SystemNodes.CLIENT`. -### **Schema Hierarchy and In-Depth Validation** +#### `ServerResources` -Here we break down each component of the topology, highlighting the specific Pydantic validators that enforce its correctness. +```python +class ServerResources(BaseModel): + cpu_cores: PositiveInt = Field(...) + db_connection_pool: PositiveInt | None = Field(...) + ram_mb: PositiveInt = Field(...) +``` -#### **Random Variable Schema (`RVConfig`)** +* Maps directly to SimPy containers (CPU tokens, RAM capacity, etc.). +* Bounds enforced via `Field(ge=..., ...)`. -At the core of both the traffic generator and network latencies is `RVConfig`, a schema for defining stochastic variables. This allows critical parameters to be modeled not as fixed numbers, but as draws from a probability distribution. +#### `Step` (the atomic unit) -| Check | Pydantic Hook | Rule & Rationale | -| :---------------------------- | :---------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Numeric `mean` Enforcement** | `@field_validator("mean", mode="before")` | Intercepts the `mean` field and ensures the provided value is an `int` or `float`, rejecting invalid types. This guarantees a valid numeric type for all downstream logic. | -| **Valid `distribution` Name** | `Distribution` (`StrEnum`) type hint | Pydantic automatically ensures that the `distribution` field's value must be one of the predefined members (e.g., `"poisson"`, `"normal"`). Any typo or unsupported value results in an immediate validation error. | -| **Intelligent `variance` Defaulting** | `@model_validator(mode="after")` | Enforces a crucial business rule: if `distribution` is `"normal"` or `"log_normal"` **and** `variance` is not provided, the schema automatically sets `variance = mean`. This provides a safe, logical default. | +```python +class Step(BaseModel): + kind: EndpointStepIO | EndpointStepCPU | EndpointStepRAM + step_operation: dict[StepOperation, PositiveFloat | PositiveInt] +``` -#### **1. `Step`: The Atomic Unit of Work** +**Key validator (coherence):** -A `Step` represents a single, indivisible operation. +```python +@model_validator(mode="after") +def ensure_coherence_type_operation(cls, model: "Step") -> "Step": + # exactly one operation key, and it must match the step kind +``` -| Validation Check | Pydantic Hook | Rule & Rationale | -| :------------------------------- | :--------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Coherence of `kind` and `step_operation`** | `@model_validator` | **Rule:** The `step_operation` dictionary must contain *exactly one* entry, and its key (`StepOperation`) must be the correct metric for the `Step`'s `kind`. \\ **Rationale:** This is the most critical validation on a `Step`. It prevents illogical pairings like a RAM allocation step being measured in `cpu_time`. It ensures every step has a clear, unambiguous impact on a single system resource. | -| **Positive Metric Values** | `PositiveFloat` / `PositiveInt` | **Rule:** All numeric values in `step_operation` must be greater than zero. \\ **Rationale:** It is physically impossible to spend negative or zero time on an operation. This ensures that only plausible resource requests enter the system. | +* If `kind` is CPU → the only key must be `CPU_TIME`. +* If `kind` is RAM → only `NECESSARY_RAM`. +* If `kind` is I/O → only `IO_WAITING_TIME`. +* Values must be positive (`PositiveFloat/PositiveInt`). -#### **2. `Endpoint`: Composing Workflows** +This guarantees every step is **unambiguous** and **physically meaningful**. -An `Endpoint` defines a complete operation (e.g., an API call like `/predict`) as an ordered sequence of `Steps`. +#### `Endpoint` -| Validation Check | Pydantic Hook | Rule & Rationale | -| :-------------------- | :--------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Consistent Naming** | `@field_validator("endpoint_name")` | **Rule:** Automatically converts the `endpoint_name` to lowercase. \\ **Rationale:** This enforces a canonical representation, eliminating ambiguity from inconsistent capitalization (e.g., treating `/predict` and `/Predict` as the same). | +```python +class Endpoint(BaseModel): + endpoint_name: str + steps: list[Step] -#### **3. System Nodes: `Server`, `Client`, and `RqsGeneratorInput`** + @field_validator("endpoint_name", mode="before") + def name_to_lower(cls, v: str) -> str: + return v.lower() +``` -These models define the macro-components of your architecture where work is performed, resources are located, and requests originate. +* Canonical lowercase naming avoids duplicates differing only by case. -| Validation Check | Pydantic Hook | Rule & Rationale | -| :-------------------------------- | :---------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Standardized Node `type`** | `@field_validator("type")` | **Rule:** The `type` field must strictly match the expected `SystemNodes` enum member (e.g., a `Server` object must have `type: "server"`). \\ **Rationale:** This enforces a strict contract: a `Server` object is always and only a server, preventing object state confusion. | -| **Unique Node IDs** | `@model_validator` in `TopologyNodes` | **Rule:** All `id` fields across all `Server` nodes, the `Client` node, and the `RqsGeneratorInput` node must be unique. \\ **Rationale:** This is fundamental to creating a valid graph. Node IDs are the primary keys. If two nodes shared the same ID, any `Edge` pointing to that ID would be ambiguous. | -| **Workload Distribution Constraints** | `@field_validator` in `RqsGeneratorInput` | **Rule:** The `avg_request_per_minute_per_user` field must use a Poisson distribution. The `avg_active_users` field must use a Poisson or Normal distribution. \\ **Rationale:** This is a current restriction of the simulation engine, which has a joint sampler optimized only for these combinations. This validator ensures that only supported configurations are accepted. | +#### `Server` -#### **4. `Edge`: Connecting the Components** +```python +class Server(BaseModel): + id: str + type: SystemNodes = SystemNodes.SERVER + server_resources: ServerResources + endpoints: list[Endpoint] +``` -An `Edge` represents a directed network link between two nodes. +* **Validator**: `type` must equal `SystemNodes.SERVER`. -| Validation Check | Pydantic Hook | Rule & Rationale | -| :---------------- | :----------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **No Self-Loops** | `@model_validator` | **Rule:** An edge's `source` ID cannot be the same as its `target` ID. \\ **Rationale:** A network call from a service to itself is a logical anti-pattern in a system topology. Such an operation should be modeled as an internal process (i.e., another `Step`), not a network hop. | -| **Unique Edge IDs** | `@model_validator` in `TopologyGraph` | **Rule:** All `id` fields of the `Edge`s must be unique. \\ **Rationale:** Ensures that every network connection is uniquely identifiable, which is useful for logging and debugging. | +#### `LoadBalancer` (optional) -#### **5. `TopologyGraph`: The Complete System** +```python +class LoadBalancer(BaseModel): + id: str + type: SystemNodes = SystemNodes.LOAD_BALANCER + algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN + server_covered: set[str] = Field(default_factory=set) +``` + +### Edges + +```python +class Edge(BaseModel): + id: str + source: str + target: str + latency: RVConfig + probability: float = Field(1.0, ge=0.0, le=1.0) + edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION + dropout_rate: float = Field(...) +``` -This is the root model that aggregates all `nodes` and `edges` and performs the final, most critical validation: ensuring referential integrity. +#### Validation & guarantees -| Validation Check | Pydantic Hook | Rule & Rationale | -| :---------------------- | :----------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Referential Integrity** | `@model_validator` | **Rule:** Every `edge.source` and `edge.target` ID must correspond to an actual node ID defined in the topology. \\ **Rationale:** This is the capstone validation that guarantees the structural integrity of the entire system graph. It prevents "dangling edges"—connections that point to non-existent nodes—ensuring the described system is a complete and validly connected graph. | +* **Latency sanity** + `@field_validator("latency", mode="after")` ensures `mean > 0` and `variance >= 0` (if provided). Error messages mention the **edge id** for clarity. +* **No self-loops** + `@model_validator(mode="after")` rejects `source == target`. +* **Unique edge IDs** + `TopologyGraph.unique_ids` enforces uniqueness across `edges`. +* **Referential integrity** + `TopologyGraph.edge_refs_valid` ensures: ------ - -## **2. Global Simulation Control (`SimulationSettings`)** - -This final component configures the simulation's execution parameters and, critically, determines what data is collected. - -#### **Payload Structure (`SimulationSettings`)** - -| Field | Type | Purpose & Validation | -| :----------------------- | :------------------------- | :------------------------------------------------------------------------------------------------------ | -| `total_simulation_time` | `int` | The total simulation horizon in seconds. Must be `>=` a defined minimum (e.g., 1800s). | -| `enabled_sample_metrics` | `set[SampledMetricName]` | A set of metrics to be sampled at fixed intervals, creating a time-series (e.g., `"ready_queue_len"`, `"ram_in_use"`). | -| `enabled_event_metrics` | `set[EventMetricName]` | A set of metrics recorded only when specific events occur (e.g., `"rqs_latency"`). | - -### **Design Rationale: Pre-validated, On-Demand Metrics** - -The design of the `settings`, particularly the `enabled_*_metrics` fields, is centered on **user-driven selectivity** and **ironclad validation**. - -1. **Selectivity:** Data collection has a performance cost. By allowing the user to explicitly select only the metrics they need, we make the simulator more efficient and versatile. - -2. **Ironclad Validation:** Simply allowing users to provide a list of strings is risky. Our schema mitigates this risk by validating every metric name provided by the user against the canonical `Enum` definitions (`SampledMetricName`, `EventMetricName`). If a user provides a misspelled or invalid metric name (e.g., `"request_latncy"`), Pydantic immediately rejects the entire payload *before* the simulation engine runs. - -This guarantees that the simulation engine can safely initialize all necessary data collection structures at the start of the run, completely eliminating an entire class of potential `KeyError` exceptions at runtime. - ------ - -## **End-to-End Example (`SimulationPayload`)** - -The following JSON object shows how these components combine into a single `SimulationPayload` for a minimal client-server setup, updated according to the new schema. - -```jsonc -{ - // Defines the workload profile as a generator node. - "rqs_input": { - "id": "mobile_user_generator", - "type": "generator", - "avg_active_users": { - "mean": 50, - "distribution": "poisson" - }, - "avg_request_per_minute_per_user": { - "mean": 5.0, - "distribution": "poisson" - }, - "user_sampling_window": 60 - }, - // Describes the system's architecture as a graph. - "topology_graph": { - "nodes": { - "client": { - "id": "entry_point_client", - "type": "client" - }, - "servers": [ - { - "id": "api_server", - "type": "server", - "server_resources": { - "cpu_cores": 4, - "ram_mb": 4096, - "db_connection_pool": 10 - }, - "endpoints": [ - { - "endpoint_name": "/predict", - "steps": [ - { - "kind": "initial_parsing", - "step_operation": { "cpu_time": 0.005 } - }, - { - "kind": "io_db_query", - "step_operation": { "io_waiting_time": 0.050 } - } - ] - } - ] - } - ] - }, - "edges": [ - { - "id": "client_to_generator", - "source": "entry_point_client", - "target": "mobile_user_generator", - "latency": { - "distribution": "log_normal", - "mean": 0.001, - "variance": 0.0001 - } - }, - { - "id": "generator_to_api", - "source": "mobile_user_generator", - "target": "api_server", - "latency": { - "distribution": "log_normal", - "mean": 0.04, - "variance": 0.01 - }, - "probability": 1.0, - "dropout_rate": 0.0 - } - ] - }, - // Configures the simulation run and metric collection. - "sim_settings": { - "total_simulation_time": 3600, - "enabled_sample_metrics": [ - "ready_queue_len", - "ram_in_use", - "core_busy" - ], - "enabled_event_metrics": [ - "rqs_latency" - ] - } -} + * Every `target` is a declared node ID. + * **External sources** (e.g., the generator id) are allowed, but **may not** appear as a `target` anywhere. +* **Load balancer integrity** (if present) + `TopologyGraph.valid_load_balancer` enforces: + + * `server_covered ⊆ {server ids}`. + * For every covered server there exists an **outgoing edge from the LB** to that server. + +These checks make the graph **closed**, **consistent**, and **wirable** without surprises at runtime. + +--- + +## 3. Simulation Control: `SimulationSettings` + +```python +class SimulationSettings(BaseModel): + total_simulation_time: int = Field(..., ge=TimeDefaults.MIN_SIMULATION_TIME) + enabled_sample_metrics: set[SampledMetricName] = Field(default_factory=...) + enabled_event_metrics: set[EventMetricName] = Field(default_factory=...) + sample_period_s: float = Field(..., ge=SamplePeriods.MINIMUM_TIME, le=SamplePeriods.MAXIMUM_TIME) ``` -### **Key Takeaways** +### What it controls + +* **Clock** — `total_simulation_time` (seconds). +* **Sampling cadence** — `sample_period_s` for time-series metrics. +* **What to collect** — two sets of enums: + + * `enabled_sample_metrics`: time-series KPIs (e.g., ready queue length, RAM in use, edge concurrency). + * `enabled_event_metrics`: per-event KPIs (e.g., request clocks/latency). + +### Why Enums matter here + +Letting users pass strings like `"ram_in_use"` is error-prone. By using **`SampledMetricName`** and **`EventMetricName`** enums, the settings are **validated upfront**, so the runtime collector knows exactly which lists to allocate and fill. No hidden `KeyError`s halfway through a run. + +--- + +## What these validations buy you + +* **Type safety** (no accidental strings where enums are expected). +* **Physical realism** (no zero/negative times or RAM). +* **Graph integrity** (no dangling edges or self-loops). +* **Operational clarity** (every step has exactly one effect). +* **Better errors** (validators point to the exact field/entity at fault). + +Together, they make the model **predictable** for the simulation engine and **pleasant** to debug. + +--- + +## End-to-End Example (YAML) + +This is a complete, valid payload you can load with `SimulationRunner.from_yaml(...)`. + +```yaml +# ─────────────────────────────────────────────────────────────── +# FastSim scenario: generator → client → server → client +# ─────────────────────────────────────────────────────────────── + +rqs_input: + id: rqs-1 + # avg_active_users can be POISSON or NORMAL; mean is required. + avg_active_users: + mean: 100 + distribution: poisson + # must be POISSON (engine constraint) + avg_request_per_minute_per_user: + mean: 20 + distribution: poisson + user_sampling_window: 60 # seconds + +topology_graph: + nodes: + client: + id: client-1 + type: client + servers: + - id: srv-1 + type: server + server_resources: + cpu_cores: 1 + ram_mb: 2048 + # db_connection_pool: 50 # optional + endpoints: + - endpoint_name: /predict + steps: + - kind: ram + step_operation: { necessary_ram: 100 } + - kind: initial_parsing # CPU step (enum in your code) + step_operation: { cpu_time: 0.001 } + - kind: io_wait # I/O step + step_operation: { io_waiting_time: 0.100 } + + edges: + - id: gen-to-client + source: rqs-1 # external source OK + target: client-1 + latency: { mean: 0.003, distribution: exponential } + + - id: client-to-server + source: client-1 + target: srv-1 + latency: { mean: 0.003, distribution: exponential } + + - id: server-to-client + source: srv-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + +sim_settings: + total_simulation_time: 500 + sample_period_s: 0.05 + enabled_sample_metrics: + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection + enabled_event_metrics: + - rqs_clock +``` + + Notes: +> + * `kind` uses the **EndpointStep** enums you’ve defined (e.g., `ram`, `initial_parsing`, `io_wait`). + * The coherence validator ensures that each `kind` uses the correct `step_operation` key and **exactly one** entry. + * The **edge** constraints guarantee a clean, connected, and sensible graph. + +--- + +## Summary + +* The **payload** is small but expressive: workload, topology, and settings. +* The **validators** are doing real work: they make illegal states unrepresentable. +* The **enums** keep the contract tight and maintainable. +* Together, they let you move fast **without** breaking the simulation engine. - * **Single Source of Truth**: `Enum` classes centralize all valid string literals, providing robust, type-safe validation across the entire schema. - * **Layered Validation**: The `Constants → Component Schemas → SimulationPayload` hierarchy ensures that only well-formed and self-consistent configurations reach the simulation engine. - * **Separation of Concerns**: The three top-level keys (`rqs_input`, `topology_graph`, `sim_settings`) clearly separate the workload, the system architecture, and simulation control, making configurations easier to read, write, and reuse. \ No newline at end of file +If you extend the engine (new distributions, step kinds, metrics), you can **keep the same contract** and enrich the enums & validators to preserve the same guarantees. diff --git a/docs/fastsim-docs/simulation_runner.md b/docs/fastsim-docs/simulation_runner.md new file mode 100644 index 0000000..8153e13 --- /dev/null +++ b/docs/fastsim-docs/simulation_runner.md @@ -0,0 +1,236 @@ + +# **Simulation Runner — Technical Documentation** + +## **Overview** + +The `SimulationRunner` is the **orchestrator** of the FastSim engine. +Its main responsibility is to: + +1. **Build** simulation actors from a structured input (`SimulationPayload`). +2. **Wire** actors together via `EdgeRuntime` connections. +3. **Start** all simulation processes in a SimPy environment. +4. **Run** the simulation clock for the configured duration. +5. **Collect and return** performance metrics through a `ResultsAnalyzer` instance. + +This design separates **topology definition** (data models) from **execution logic** (runtime actors), ensuring clarity, testability, and future extensibility. + +--- + +## **High-Level Flow** + +```mermaid +flowchart TD + subgraph Input + A["SimulationPayload (Pydantic)"] + end + + subgraph Build_Phase + B1[Build RqsGeneratorRuntime] + B2[Build ClientRuntime] + B3[Build ServerRuntimes] + B4["Build LoadBalancerRuntime (optional)"] + end + + subgraph Wire_Phase + C["Build EdgeRuntimes + assign target boxes"] + end + + subgraph Start_Phase + D1[Start all Startable actors] + D2[Start SampledMetricCollector] + end + + subgraph Run_Phase + E["SimPy env.run(until=total_simulation_time)"] + end + + subgraph Output + F[ResultsAnalyzer] + end + + A --> B1 & B2 & B3 & B4 + B1 & B2 & B3 & B4 --> C + C --> D1 & D2 + D1 & D2 --> E + E --> F +``` + +--- + +## **Component Responsibilities** + +### **SimulationRunner** + +* **Inputs:** + + * `env`: a `simpy.Environment` controlling discrete-event simulation time. + * `simulation_input`: a `SimulationPayload` describing topology, request generation parameters, and simulation settings. + +* **Responsibilities:** + + * Build **all runtime actors** (`RqsGeneratorRuntime`, `ClientRuntime`, `ServerRuntime`, `LoadBalancerRuntime`). + * Instantiate **EdgeRuntime** objects to connect actors. + * Start processes and the metric collector. + * Advance the simulation clock. + * Package results into a `ResultsAnalyzer`. + +--- + +### **Actors** + +All runtime actors implement the `Startable` protocol (i.e., they expose a `.start()` method returning a `simpy.Process`). + +| Actor | Responsibility | +| ----------------------- | -------------------------------------------------------------------------------------------- | +| **RqsGeneratorRuntime** | Produces incoming requests according to stochastic models (Poisson, Gaussian-Poisson, etc.). | +| **ClientRuntime** | Consumes responses, tracks completion, and stores latency samples. | +| **ServerRuntime** | Processes incoming requests, interacts with CPU/RAM containers, measures processing times. | +| **LoadBalancerRuntime** | Distributes incoming requests across available servers according to configured policy. | +| **EdgeRuntime** | Models the connection between two nodes (latency, bandwidth, loss). | + +--- + +### **ResourcesRuntime** + +* Registry mapping server IDs to their SimPy `Container` resources (CPU, RAM). +* Keeps resource allocation/consumption logic decoupled from server logic. + +--- + +### **Metrics** + +* **SampledMetricCollector**: Periodically snapshots runtime metrics (queue sizes, RAM usage, connection counts). +* **ResultsAnalyzer**: Consumes raw metrics and computes aggregated KPIs (latency distribution, throughput series, etc.). + +--- + +## **Execution Timeline** + +```mermaid +sequenceDiagram + participant Runner as SimulationRunner + participant RqsGen as RqsGeneratorRuntime + participant Client as ClientRuntime + participant Server as ServerRuntime + participant LB as LoadBalancerRuntime + participant Edge as EdgeRuntime + participant Metrics as SampledMetricCollector + + Runner->>RqsGen: Build from input + Runner->>Client: Build from input + Runner->>Server: Build each from input + Runner->>LB: Build if present + Runner->>Edge: Build + assign target_box + Runner->>RqsGen: Set out_edge + Runner->>Client: Set out_edge + Runner->>Server: Set out_edge + Runner->>LB: Append out_edges + Runner->>Metrics: Start collector + Runner->>RqsGen: start() + Runner->>Client: start() + Runner->>Server: start() + Runner->>LB: start() + Runner->>Runner: env.run(until=total_simulation_time) + Runner->>Metrics: Gather results + Runner->>Runner: Return ResultsAnalyzer +``` + +--- + +## **Detailed Build & Wire Steps** + +### 1️⃣ **Build Phase** + +* **`_build_rqs_generator()`**: Creates a single `RqsGeneratorRuntime` for now; architecture allows for multiple (future CDN scenarios). +* **`_build_client()`**: Instantiates the single client node; stored in a dict for future multi-client extensions. +* **`_build_servers()`**: Creates one `ServerRuntime` per configured server. Pulls CPU/RAM resources from `ResourcesRuntime`. +* **`_build_load_balancer()`**: Optional; created only if present in the topology. + +--- + +### 2️⃣ **Wire Phase** + +* Merges all runtime actor dictionaries into a `all_nodes` map. +* For each `Edge` in the topology: + + * Looks up **target** object and assigns the correct inbox (`simpy.Store`). + * Creates an `EdgeRuntime` and assigns it as `out_edge` (or appends to `out_edges` for LBs). + +--- + +### 3️⃣ **Start Phase** + +* Uses `itertools.chain` to lazily iterate over all runtime actors in the correct deterministic order. +* Casts to `Iterable[Startable]` to make Mypy type-checking explicit. +* Starts `SampledMetricCollector` to record periodic metrics. + +--- + +### 4️⃣ **Run Phase** + +* Advances SimPy’s event loop until `total_simulation_time` from the simulation settings. +* Returns a `ResultsAnalyzer` for downstream reporting and plotting. + +--- + +## **Extensibility Hooks** + +* **Multiple Generators / Clients**: Dictionaries keyed by node ID already prepared. +* **CDN or Multi-tier Architectures**: Easily extendable via new actor types + wiring rules. +* **Different LB Policies**: Swap `LoadBalancerRuntime` strategy without touching the runner. +* **Metric Expansion**: `SampledMetricCollector` can be extended to capture additional KPIs. + +--- + +## **Architecture Diagram** + +``` + ┌───────────────────────┐ + │ SimulationPayload │ + │ (input topology + cfg) │ + └─────────┬─────────────┘ + │ + ▼ + ┌───────────────────────┐ + │ SimulationRunner │ + └─────────┬─────────────┘ + │ build actors + ▼ + ┌─────────────────────────────────────────────────┐ + │ Runtime Actors (Startable) │ + │ ┌──────────────────┐ ┌──────────────────────┐ │ + │ │ RqsGenerator │→│ ClientRuntime │ │ + │ └──────────────────┘ └──────────────────────┘ │ + │ ↓ edges ↑ edges │ + │ ┌──────────────────┐ ┌──────────────────────┐ │ + │ │ ServerRuntime(s) │←→│ LoadBalancerRuntime │ │ + │ └──────────────────┘ └──────────────────────┘ │ + └─────────────────────────────────────────────────┘ + │ + ▼ + ┌────────────────────────────┐ + │ SampledMetricCollector │ + └──────────────┬─────────────┘ + ▼ + ┌────────────────┐ + │ ResultsAnalyzer │ + └────────────────┘ +``` + +--- + +## Architectural rationale + +✅ **Separation of concerns** — Topology definition, resource allocation, runtime behaviour, and metric processing are decoupled. + +✅ **Extensible** — Adding new node types or connection logic requires minimal changes. + +✅ **Testable** — Each phase can be tested in isolation (unit + integration). + +✅ **Deterministic order** — Startup sequence guarantees reproducibility. + +✅ **Scalable** — Supports larger topologies by design. + +--- + + diff --git a/example/data/single_server.yml b/example/data/single_server.yml new file mode 100644 index 0000000..c6e2ce6 --- /dev/null +++ b/example/data/single_server.yml @@ -0,0 +1,56 @@ +# ─────────────────────────────────────────────────────────────── +# FastSim scenario: generator ➜ client ➜ server ➜ client +# ─────────────────────────────────────────────────────────────── + +# 1. Traffic generator (light load) +rqs_input: + id: rqs-1 + avg_active_users: { mean: 100 } + avg_request_per_minute_per_user: { mean: 20 } + user_sampling_window: 60 + +# 2. Topology +topology_graph: + nodes: + client: { id: client-1 } + servers: + - id: srv-1 + server_resources: { cpu_cores: 1, ram_mb: 2048 } + endpoints: + - endpoint_name: ep-1 + probability: 1.0 + steps: + - kind: initial_parsing + step_operation: { cpu_time: 0.001 } + - kind: ram + step_operation: { necessary_ram: 100} + - kind: io_wait + step_operation: { io_waiting_time: 0.1 } + + edges: + - id: gen-to-client + source: rqs-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + + - id: client-to-server + source: client-1 + target: srv-1 + latency: { mean: 0.003, distribution: exponential } + + - id: server-to-client + source: srv-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + +# 3. Simulation settings +sim_settings: + total_simulation_time: 500 + sample_period_s: 0.05 + enabled_sample_metrics: + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection + enabled_event_metrics: + - rqs_clock diff --git a/example/single_server_yaml.py b/example/single_server_yaml.py new file mode 100644 index 0000000..3057a52 --- /dev/null +++ b/example/single_server_yaml.py @@ -0,0 +1,273 @@ +#!/usr/bin/env python3 +""" +Run a FastSim scenario from a YAML file and print diagnostics. + +What it does: +- Loads the simulation payload from YAML via `SimulationRunner.from_yaml`. +- Runs the simulation. +- Prints latency stats, 1s-bucket throughput, and a preview of sampled metrics. +- Saves four plots (latency histogram, throughput, server queues, RAM). +- Performs sanity checks (expected vs observed) with simple queueing heuristics. + +Usage: + python src/app/example/run_from_yaml.py \ + --yaml src/app/example/data/single_server.yml +""" + +from __future__ import annotations + +from argparse import ArgumentParser +from pathlib import Path +from typing import Dict, Iterable, List, Mapping, Tuple + +import matplotlib.pyplot as plt +import numpy as np +import simpy +from app.config.constants import ( + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + LatencyKey, + StepOperation, +) +from app.metrics.analyzer import ResultsAnalyzer +from app.runtime.simulation_runner import SimulationRunner + + +# ───────────────────────────────────────────────────────────── +# Pretty printers +# ───────────────────────────────────────────────────────────── +def print_latency_stats(res: ResultsAnalyzer) -> None: + """Print latency statistics returned by the analyzer.""" + stats: Mapping[LatencyKey, float] = res.get_latency_stats() + print("\n════════ LATENCY STATS ════════") + if not stats: + print("(empty)") + return + + # Keep deterministic ordering for readability. + order: List[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + + +def print_throughput(res: ResultsAnalyzer) -> None: + """Print 1-second throughput buckets.""" + timestamps, rps = res.get_throughput_series() + print("\n════════ THROUGHPUT (req/sec) ════════") + if not timestamps: + print("(empty)") + return + + for t, rate in zip(timestamps, rps): + print(f"t={t:4.1f}s → {rate:6.2f} rps") + + +def print_sampled_preview(res: ResultsAnalyzer) -> None: + """Print first 5 samples of each sampled metric series.""" + sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() + print("\n════════ SAMPLED METRICS ════════") + if not sampled: + print("(empty)") + return + + for metric, series in sampled.items(): + print(f"\n📈 {metric}:") + for entity, vals in series.items(): + head = list(vals[:5]) if vals else [] + print(f" - {entity}: len={len(vals)}, first={head}") + + +# ───────────────────────────────────────────────────────────── +# Plotting +# ───────────────────────────────────────────────────────────── +def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: + """Generate the 2x2 plot figure and save it to `out_path`.""" + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + res.plot_latency_distribution(axes[0, 0]) + res.plot_throughput(axes[0, 1]) + res.plot_server_queues(axes[1, 0]) + res.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + fig.savefig(out_path) + print(f"\n🖼️ Plots saved to: {out_path}") + + +# ───────────────────────────────────────────────────────────── +# Sanity checks (expected vs observed) +# ───────────────────────────────────────────────────────────── +REL_TOL = 0.30 # 30% tolerance for rough sanity checks + + +def _tick(label: str, expected: float, observed: float) -> None: + """Print a ✓ or ⚠ depending on relative error vs `REL_TOL`.""" + if expected == 0.0: + delta_pct = 0.0 + icon = "•" + else: + delta = abs(observed - expected) / abs(expected) + delta_pct = delta * 100.0 + icon = "✓" if delta <= REL_TOL else "⚠" + print(f"{icon} {label:<28} expected≈{expected:.3f} observed={observed:.3f} Δ={delta_pct:.1f}%") + + +def _endpoint_totals(runner: SimulationRunner) -> Tuple[float, float, float]: + """ + Return (CPU_seconds, IO_seconds, RAM_MB) of the first endpoint on the first server. + + This keeps the check simple. If you use multiple endpoints weighted by probability, + extend this function to compute a probability-weighted average. + """ + servers = runner.simulation_input.topology_graph.nodes.servers + if not servers or not servers[0].endpoints: + return (0.0, 0.0, 0.0) + + ep = servers[0].endpoints[0] + cpu_s = 0.0 + io_s = 0.0 + ram_mb = 0.0 + + for step in ep.steps: + if isinstance(step.kind, EndpointStepCPU): + cpu_s += float(step.step_operation[StepOperation.CPU_TIME]) + elif isinstance(step.kind, EndpointStepIO): + io_s += float(step.step_operation[StepOperation.IO_WAITING_TIME]) + elif isinstance(step.kind, EndpointStepRAM): + ram_mb += float(step.step_operation[StepOperation.NECESSARY_RAM]) + + return (cpu_s, io_s, ram_mb) + + +def _edges_mean_latency(runner: SimulationRunner) -> float: + """Sum of edge mean latencies across the graph (simple additive approximation).""" + return float(sum(e.latency.mean for e in runner.simulation_input.topology_graph.edges)) + + +def _mean(series: Iterable[float]) -> float: + """Numerically stable mean for a generic float iterable.""" + arr = np.asarray(list(series), dtype=float) + return float(np.mean(arr)) if arr.size else 0.0 + + +def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: + """ + Compare expected vs observed metrics using back-of-the-envelope approximations. + + Approximations used: + - Throughput ≈ λ = users * RPM / 60 + - Mean latency ≈ CPU_s + IO_s + NET_s (ignores queueing inside the server) + - Mean RAM ≈ λ * T_srv * RAM_per_request (Little’s law approximation) + - Mean I/O queue length ≈ λ * IO_s + - Edge concurrency ≈ λ * edge_mean_latency + """ + print("\n════════ SANITY CHECKS (expected vs observed) ════════") + + # Arrival rate λ (requests per second) + w = runner.simulation_input.rqs_input + lam_rps = float(w.avg_active_users.mean) * float(w.avg_request_per_minute_per_user.mean) / 60.0 + + # Endpoint sums + cpu_s, io_s, ram_mb = _endpoint_totals(runner) + net_s = _edges_mean_latency(runner) + t_srv = cpu_s + io_s + latency_expected = cpu_s + io_s + net_s + + # Observed latency, throughput + stats = res.get_latency_stats() + latency_observed = float(stats.get(LatencyKey.MEAN, 0.0)) + _, rps_series = res.get_throughput_series() + rps_observed = _mean(rps_series) + + # Observed RAM and queues + sampled = res.get_sampled_metrics() + ram_series = sampled.get("ram_in_use", {}) + ram_means = [_mean(vals) for vals in ram_series.values()] + ram_observed = float(sum(ram_means)) if ram_means else 0.0 + + ready_series = sampled.get("ready_queue_len", {}) + ioq_series = sampled.get("event_loop_io_sleep", {}) + ready_observed = _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 + ioq_observed = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 + + # Expected quantities (very rough) + rps_expected = lam_rps + ram_expected = lam_rps * t_srv * ram_mb + ioq_expected = lam_rps * io_s + + _tick("Mean throughput (rps)", rps_expected, rps_observed) + _tick("Mean latency (s)", latency_expected, latency_observed) + _tick("Mean RAM (MB)", ram_expected, ram_observed) + _tick("Mean I/O queue", ioq_expected, ioq_observed) + + # Edge concurrency + edge_conc = sampled.get("edge_concurrent_connection", {}) + if edge_conc: + print("\n— Edge concurrency —") + edge_means: Dict[str, float] = {eid: _mean(vals) for eid, vals in edge_conc.items()} + for e in runner.simulation_input.topology_graph.edges: + exp = lam_rps * float(e.latency.mean) + obs = edge_means.get(e.id, 0.0) + _tick(f"edge {e.id}", exp, obs) + + # Extra diagnostics + print("\n— Diagnostics —") + print( + "λ={:.3f} rps | CPU_s={:.3f} IO_s={:.3f} NET_s≈{:.3f} | RAM/req={:.1f} MB" + .format(lam_rps, cpu_s, io_s, net_s, ram_mb) + ) + print("T_srv={:.3f}s → RAM_expected≈λ*T_srv*RAM = {:.1f} MB".format(t_srv, ram_expected)) + + +# ───────────────────────────────────────────────────────────── +# Main +# ───────────────────────────────────────────────────────────── +def main() -> None: + """Entry-point: parse args, run simulation, print/plot, sanity-check.""" + parser = ArgumentParser(description="Run FastSim from YAML and print outputs + sanity checks.") + parser.add_argument( + "--yaml", + type=Path, + default=Path(__file__).parent / "data" /"single_server.yml", + help="Path to the simulation YAML file.", + ) + parser.add_argument( + "--out", + type=Path, + default=Path(__file__).parent / "single_server_yml.png", + help="Path to the output image (plots).", + ) + args = parser.parse_args() + + yaml_path: Path = args.yaml + if not yaml_path.exists(): + raise FileNotFoundError(f"YAML not found: {yaml_path}") + + # Build runner from YAML and execute + env = simpy.Environment() + runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) + results: ResultsAnalyzer = runner.run() + + # Prints + print_latency_stats(results) + print_throughput(results) + print_sampled_preview(results) + + # Sanity checks + run_sanity_checks(runner, results) + + # Plots + save_all_plots(results, args.out) + + +if __name__ == "__main__": + main() diff --git a/example/single_server_yml.png b/example/single_server_yml.png new file mode 100644 index 0000000000000000000000000000000000000000..89cca6d5cd245400ed7fe97b9ff0b33123794647 GIT binary patch literal 158475 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%0DavzOl-vBSq%J! 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%0Af+5+vw7!V*X~ZXk7n}wZ@?#} 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 PM!}||VW3{9Y8&=nluSd8 literal 0 HcmV?d00001 diff --git a/src/app/config/constants.py b/src/app/config/constants.py index 07e383c..0aa5f9d 100644 --- a/src/app/config/constants.py +++ b/src/app/config/constants.py @@ -1,15 +1,15 @@ """ Application-wide constants and configuration values. -This module groups all the *static* enumerations used by the FastSim backend +This module groups all the static enumerations used by the FastSim backend so that: -* JSON / YAML payloads can be strictly validated with Pydantic. -* Front-end and simulation engine share a single source of truth. -* Ruff, mypy and IDEs can leverage the strong typing provided by Enum classes. + JSON / YAML payloads can be strictly validated with Pydantic. + Front-end and simulation engine share a single source of truth. + Ruff, mypy and IDEs can leverage the strong typing provided by Enum classes. -**IMPORTANT:** Changing any enum *value* is a breaking-change for every -stored configuration file. Add new members whenever possible instead of +IMPORTANT: Changing any enum value is a breaking-change for every +stored configuration file. Add new members whenever possible instead of renaming existing ones. """ @@ -22,27 +22,27 @@ class TimeDefaults(IntEnum): """ - Default time-related constants (expressed in **seconds**). + Default time-related constants (expressed in seconds). - These values are used when the user omits an explicit parameter. They also + These values are used when the user omits an explicit parameter. They also serve as lower / upper bounds for validation for the requests generator. """ - MIN_TO_SEC = 60 # 1 minute → 60 s - USER_SAMPLING_WINDOW = 60 # keep U(t) constant for 60 s - SIMULATION_TIME = 3_600 # run 1 h if user gives no value - MIN_SIMULATION_TIME = 1_800 # enforce at least 30 min - MIN_USER_SAMPLING_WINDOW = 1 # 1 s minimum - MAX_USER_SAMPLING_WINDOW = 120 # 2 min maximum + MIN_TO_SEC = 60 # 1 minute → 60 s + USER_SAMPLING_WINDOW = 60 # every 60 seconds sample the number of active user + SIMULATION_TIME = 3_600 # run 1 h if user gives no value + MIN_SIMULATION_TIME = 5 # 5 seconds give a broad spectrum + MIN_USER_SAMPLING_WINDOW = 1 # 1 s minimum + MAX_USER_SAMPLING_WINDOW = 120 # 2 min maximum class Distribution(StrEnum): """ - Probability distributions accepted by :class:`~app.schemas.RVConfig`. + Probability distributions accepted by app.schemas.RVConfig. - The *string value* is exactly the identifier that must appear in JSON + The string value is exactly the identifier that must appear in JSON payloads. The simulation engine will map each name to the corresponding - random sampler (e.g. ``numpy.random.poisson``). + random sampler (e.g.numpy.random.poisson). """ POISSON = "poisson" @@ -55,43 +55,19 @@ class Distribution(StrEnum): # CONSTANTS FOR ENDPOINT STEP DEFINITION (REQUEST-HANDLER) # ====================================================================== -# The JSON received by the API for an endpoint step is expected to look like: -# -# { -# "endpoint_name": "/predict", -# "kind": "io_llm", -# "metrics": { -# "cpu_time": 0.150, -# "necessary_ram": 256 -# } -# } -# -# The Enum classes below guarantee that only valid *kind* and *metric* keys -# are accepted by the Pydantic schema. - - class EndpointStepIO(StrEnum): """ - I/O-bound operation categories that can occur inside an endpoint *step*. - - .. list-table:: - :header-rows: 1 - - * - Constant - - Meaning (executed by coroutine) - * - ``TASK_SPAWN`` - - Spawns an additional ``asyncio.Task`` and returns immediately. - * - ``LLM`` - - Performs a remote Large-Language-Model inference call. - * - ``WAIT`` - - Passive, *non-blocking* wait for I/O completion; no new task spawned. - * - ``DB`` - - Round-trip to a relational / NoSQL database. - * - ``CACHE`` - - Access to a local or distributed cache layer. - - The *value* of each member (``"io_llm"``, ``"io_db"``, …) is the exact - identifier expected in external JSON. + I/O-bound operation categories that can occur inside an endpoint step. + - TASK_SPAWN + Spawns an additional ``asyncio.Task`` and returns immediately. + - LLM + Performs a remote Large-Language-Model inference call. + - WAIT + Passive, *non-blocking* wait for I/O completion; no new task spawned. + - DB + Round-trip to a relational / NoSQL database. + - CACHE + Access to a local or distributed cache layer. """ TASK_SPAWN = "io_task_spawn" @@ -126,11 +102,11 @@ class EndpointStepRAM(StrEnum): class StepOperation(StrEnum): """ - Keys used inside the ``metrics`` dictionary of a *step*. + Keys used inside the metrics dictionary of a step. - * ``CPU_TIME`` - Service time (seconds) during which the coroutine occupies + CPU_TIME - Service time (seconds) during which the coroutine occupies the CPU / GIL. - * ``NECESSARY_RAM`` - Peak memory (MB) required by the step. + NECESSARY_RAM - Peak memory (MB) required by the step. """ CPU_TIME = "cpu_time" @@ -191,7 +167,7 @@ class SystemNodes(StrEnum): class SystemEdges(StrEnum): """ - Edge categories connecting different :class:`SystemNodes`. + Edge categories connecting different class SystemNodes. Currently only network links are modeled; new types (IPC queue, message bus, stream) can be added without impacting existing payloads. @@ -205,7 +181,7 @@ class SystemEdges(StrEnum): class SampledMetricName(StrEnum): """ - define the metrics sampled every fixed amount of + Define the metrics sampled every fixed amount of time to create a time series """ @@ -218,7 +194,7 @@ class SampledMetricName(StrEnum): class SamplePeriods(float, Enum): """ - defining the value of the sample periods for the metrics for which + Defining the value of the sample periods for the metrics for which we have to extract a time series """ @@ -232,12 +208,12 @@ class SamplePeriods(float, Enum): class EventMetricName(StrEnum): """ - define the metrics triggered by event with no + Define the metrics triggered by event with no time series """ # Mandatory - RQS_CLOCK = "rqs_clock" + RQS_CLOCK = "rqs_clock" # useful to collect starting and finishing time of rqs # Not mandatory LLM_COST = "llm_cost" diff --git a/src/app/metrics/analyzer.py b/src/app/metrics/analyzer.py index 762e5c6..e1aa50e 100644 --- a/src/app/metrics/analyzer.py +++ b/src/app/metrics/analyzer.py @@ -51,11 +51,10 @@ def __init__( ) -> None: """ Args: - client: Client runtime object, containing RqsClock entries. - servers: List of server runtime objects. - edges: List of edge runtime objects. - settings: Original simulation settings. - + client: Client runtime object, containing RqsClock entries. + servers: List of server runtime objects. + edges: List of edge runtime objects. + settings: Original simulation settings. """ self._client = client self._servers = servers diff --git a/src/app/metrics/collector.py b/src/app/metrics/collector.py index 17339fa..d2158f5 100644 --- a/src/app/metrics/collector.py +++ b/src/app/metrics/collector.py @@ -14,7 +14,6 @@ # way we optimize the initialization of various objects reducing # the global overhead - class SampledMetricCollector: """class to define a centralized object to collect sampled metrics""" @@ -26,7 +25,14 @@ def __init__( env: simpy.Environment, sim_settings: SimulationSettings, ) -> None: - """Docstring to complete""" + """ + Args: + edges (list[EdgeRuntime]): list of the class EdgeRuntime + servers (list[ServerRuntime]): list of server of the class ServerRuntime + env (simpy.Environment): environment for the simulation + sim_settings (SimulationSettings): general settings for the simulation + + """ self.edges = edges self.servers = servers self.sim_settings = sim_settings @@ -41,8 +47,6 @@ def __init__( self._ready_key = SampledMetricName.READY_QUEUE_LEN - env.process(self._build_time_series()) - def _build_time_series(self) -> Generator[simpy.Event, None, None]: """Function to build time series for enabled metrics""" while True: @@ -61,6 +65,8 @@ def _build_time_series(self) -> Generator[simpy.Event, None, None]: server.enabled_metrics[self._io_key].append(server.io_queue_len) server.enabled_metrics[self._ready_key].append(server.ready_queue_len) + + def start(self) -> simpy.Process: """Definition of the process to collect sampled metrics""" return self.env.process(self._build_time_series()) diff --git a/src/app/runtime/actors/client.py b/src/app/runtime/actors/client.py index 42b0c3f..2f2da4b 100644 --- a/src/app/runtime/actors/client.py +++ b/src/app/runtime/actors/client.py @@ -44,6 +44,7 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: """Updtate the state before passing it to another node""" assert self.out_edge is not None while True: + state: RequestState = yield self.client_box.get() # type: ignore[assignment] state.record_hop( @@ -58,7 +59,7 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: # would be equal to two would mean that the state # went through the mandatory path to be generated # rqs generator and client registration - if len(state.history) > 2: + if len(state.history) > 3: state.finish_time = self.env.now clock_data = RqsClock( start=state.initial_time, diff --git a/src/app/runtime/actors/server.py b/src/app/runtime/actors/server.py index 9051d99..d791bbb 100644 --- a/src/app/runtime/actors/server.py +++ b/src/app/runtime/actors/server.py @@ -141,6 +141,7 @@ def _handle_request( # noqa: PLR0915, PLR0912, C901 yield self.server_resources[ServerResourceName.RAM.value].get(total_ram) self._ram_in_use += total_ram + # Initial conditions of the server a rqs a priori is not in any queue # and it does not occupy a core until it started to be elaborated core_locked = False @@ -175,7 +176,7 @@ def _handle_request( # noqa: PLR0915, PLR0912, C901 for step in selected_endpoint.steps: - if isinstance(step.kind, EndpointStepCPU): + if step.kind in EndpointStepCPU: # with the boolean we avoid redundant operation of asking # the core multiple time on a given step # for example if we have two consecutive cpu bound step @@ -200,8 +201,9 @@ def _handle_request( # noqa: PLR0915, PLR0912, C901 # Execute the step giving back the control to the simpy env yield self.env.timeout(cpu_time) - - elif isinstance(step.kind, EndpointStepIO): + # since the object is of an Enum class we check if the step.kind + # is one member of enum + elif step.kind in EndpointStepIO: io_time = step.step_operation[StepOperation.IO_WAITING_TIME] # Same here with the boolean if we have multiple I/O steps # we release the core just the first time if the previous step diff --git a/src/app/samplers/common_helpers.py b/src/app/samplers/common_helpers.py index e565a20..d594538 100644 --- a/src/app/samplers/common_helpers.py +++ b/src/app/samplers/common_helpers.py @@ -47,30 +47,43 @@ def exponential_variable_generator( return float(rng.exponential(mean)) def general_sampler(random_variable: RVConfig, rng: np.random.Generator) -> float: - """Sample a number according to the distribution described in `random_variable`.""" - dist = random_variable.distribution - mean = random_variable.mean + """ + Draw one sample from the distribution described by *random_variable*. + + Only **Normal** and **Log-normal** require an explicit ``variance``. + For **Uniform**, **Poisson** and **Exponential** the mean is enough. + """ + dist = random_variable.distribution + mean = random_variable.mean + var = random_variable.variance match dist: + # ── No extra parameters needed ────────────────────────────────── case Distribution.UNIFORM: - - assert random_variable.variance is None + # Variance is meaningless for an ad-hoc uniform [0, 1) helper. + assert var is None return uniform_variable_generator(rng) - case _: + case Distribution.POISSON: + # λ == mean ; numpy returns ints → cast to float for consistency + assert var is None + return float(poisson_variable_generator(mean, rng)) - variance = random_variable.variance - assert variance is not None - - match dist: - case Distribution.NORMAL: - return truncated_gaussian_generator(mean, variance, rng) - case Distribution.LOG_NORMAL: - return lognormal_variable_generator(mean, variance, rng) - case Distribution.POISSON: - return float(poisson_variable_generator(mean, rng)) - case Distribution.EXPONENTIAL: - return exponential_variable_generator(mean, rng) - case _: - msg = f"Unsupported distribution: {dist}" - raise ValueError(msg) + case Distribution.EXPONENTIAL: + # β (scale) == mean ; nothing else required + assert var is None + return exponential_variable_generator(mean, rng) + + # ── Distributions that *do* need a variance parameter ─────────── + case Distribution.NORMAL: + assert var is not None + return truncated_gaussian_generator(mean, var, rng) + + case Distribution.LOG_NORMAL: + assert var is not None + return lognormal_variable_generator(mean, var, rng) + + # ── Anything else is unsupported ──────────────────────────────── + case _: + msg = f"Unsupported distribution: {dist}" + raise ValueError(msg) diff --git a/src/app/samplers/poisson_poisson.py b/src/app/samplers/poisson_poisson.py index 7f17364..725faa5 100644 --- a/src/app/samplers/poisson_poisson.py +++ b/src/app/samplers/poisson_poisson.py @@ -28,7 +28,7 @@ def poisson_poisson_sampling( Algorithm --------- - 1. Every *sampling_window_s* seconds, draw + 1. Every sampling_window_s seconds, draw U ~ Poisson(mean_concurrent_user). 2. Compute the aggregate rate Λ = U * (mean_req_per_minute_per_user / 60) [req/s]. diff --git a/src/app/schemas/random_variables_config.py b/src/app/schemas/random_variables_config.py index b09ed13..e15d509 100644 --- a/src/app/schemas/random_variables_config.py +++ b/src/app/schemas/random_variables_config.py @@ -13,7 +13,7 @@ class RVConfig(BaseModel): variance: float | None = None @field_validator("mean", mode="before") - def ensure_mean_is_numeric( + def ensure_mean_is_numeric_and_positive( cls, # noqa: N805 v: float, ) -> float: @@ -21,6 +21,7 @@ def ensure_mean_is_numeric( err_msg = "mean must be a number (int or float)" if not isinstance(v, (float, int)): raise ValueError(err_msg) # noqa: TRY004 + return float(v) @model_validator(mode="after") # type: ignore[arg-type] diff --git a/src/app/schemas/simulation_output.py b/src/app/schemas/simulation_output.py deleted file mode 100644 index 26d1adb..0000000 --- a/src/app/schemas/simulation_output.py +++ /dev/null @@ -1,13 +0,0 @@ -"""Define the output of the simulation""" - -from pydantic import BaseModel - - -class SimulationOutput(BaseModel): - """Define the output of the simulation""" - - total_requests: dict[str, int | float] - # TO DEFINE - metric_2: str - #...... - metric_n: str diff --git a/src/app/schemas/system_topology/endpoint.py b/src/app/schemas/system_topology/endpoint.py index 8933dab..aa40e9e 100644 --- a/src/app/schemas/system_topology/endpoint.py +++ b/src/app/schemas/system_topology/endpoint.py @@ -53,8 +53,10 @@ def ensure_coherence_type_operation( raise ValueError(msg) # Coherence CPU bound operation and operation - if isinstance(model.kind, EndpointStepCPU): - if operation_keys != {StepOperation.CPU_TIME}: + if ( + isinstance(model.kind, EndpointStepCPU) + and operation_keys != {StepOperation.CPU_TIME} + ): msg = ( "The operation to quantify a CPU BOUND step" f"must be {StepOperation.CPU_TIME}" @@ -62,8 +64,10 @@ def ensure_coherence_type_operation( raise ValueError(msg) # Coherence RAM operation and operation - elif isinstance(model.kind, EndpointStepRAM): - if operation_keys != {StepOperation.NECESSARY_RAM}: + if ( + isinstance(model.kind, EndpointStepRAM) + and operation_keys != {StepOperation.NECESSARY_RAM} + ): msg = ( "The operation to quantify a RAM step" f"must be {StepOperation.NECESSARY_RAM}" @@ -71,11 +75,12 @@ def ensure_coherence_type_operation( raise ValueError(msg) # Coherence I/O operation and operation - elif operation_keys != {StepOperation.IO_WAITING_TIME}: - msg = ( - "The operation to quantify an I/O step" - f"must be {StepOperation.IO_WAITING_TIME}" - ) + if ( + isinstance(model.kind, EndpointStepIO) + and operation_keys != {StepOperation.IO_WAITING_TIME} + ): + + msg = f"An I/O step must use {StepOperation.IO_WAITING_TIME}" raise ValueError(msg) return model diff --git a/src/app/schemas/system_topology/full_system_topology.py b/src/app/schemas/system_topology/full_system_topology.py index 6b49b21..ddd4c5f 100644 --- a/src/app/schemas/system_topology/full_system_topology.py +++ b/src/app/schemas/system_topology/full_system_topology.py @@ -16,6 +16,7 @@ field_validator, model_validator, ) +from pydantic_core.core_schema import ValidationInfo from app.config.constants import ( LbAlgorithmsName, @@ -204,6 +205,37 @@ class Edge(BaseModel): ), ) + # The idea to put here the control about variance and mean about the edges + # latencies and not in RVConfig is to provide a better error handling + # providing a direct indication of the edge with the error + # The idea to put here the control about variance and mean about the edges + # latencies and not in RVConfig is to provide a better error handling + # providing a direct indication of the edge with the error + @field_validator("latency", mode="after") + def ensure_latency_is_non_negative( + cls, # noqa: N805 + v: RVConfig, + info: ValidationInfo, + ) -> RVConfig: + """Ensures that the latency's mean and variance are positive.""" + mean = v.mean + variance = v.variance + + # We can get the edge ID from the validation context for a better error message + edge_id = info.data.get("id", "unknown") + + if mean <= 0: + msg = f"The mean latency of the edge '{edge_id}' must be positive" + raise ValueError(msg) + if variance is not None and variance < 0: # Variance can be zero + msg = ( + f"The variance of the latency of the edge {edge_id}" + "must be positive" + ) + raise ValueError(msg) + return v + + @model_validator(mode="after") # type: ignore[arg-type] def check_src_trgt_different(cls, model: "Edge") -> "Edge": # noqa: N805 """Ensure source is different from target""" @@ -241,33 +273,55 @@ def unique_ids( return model - @model_validator(mode="after") # type: ignore[arg-type] - def edge_refs_valid(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + @model_validator(mode="after") # type: ignore[arg-type] + def edge_refs_valid( + cls, # noqa: N805 + model: "TopologyGraph", + ) -> "TopologyGraph": """ - Ensure that **every** edge points to valid nodes. - - The validator is executed *after* the entire ``TopologyGraph`` model has - been built, so all servers and the client already exist in ``m.nodes``. + Validate that the graph is self-consistent. - Steps - ----- - 1. Build the set ``valid_ids`` containing: - * all ``Server.id`` values, **plus** - * the single ``Client.id``. - 2. Iterate through each ``Edge`` in ``m.edges`` and raise - :class:`ValueError` if either ``edge.source`` or ``edge.target`` is - **not** present in ``valid_ids``. - - Returning the (unchanged) model signals that the integrity check passed. + * All targets must be nodes declared in ``m.nodes``. + * External IDs are allowed as sources (entry points, generator) but + they must never appear as a target anywhere else. """ - valid_ids = {s.id for s in model.nodes.servers} | {model.nodes.client.id} + # ------------------------------------------------------------------ + # 1. Collect declared node IDs (servers, client, optional LB) + # ------------------------------------------------------------------ + node_ids: set[str] = {srv.id for srv in model.nodes.servers} + node_ids.add(model.nodes.client.id) if model.nodes.load_balancer is not None: - valid_ids.add(model.nodes.load_balancer.id) - - for e in model.edges: - if e.source not in valid_ids or e.target not in valid_ids: - msg = f"Edge {e.source}->{e.target} references unknown node" + node_ids.add(model.nodes.load_balancer.id) + + # ------------------------------------------------------------------ + # 2. Scan every edge once + # ------------------------------------------------------------------ + external_sources: set[str] = set() + + for edge in model.edges: + # ── Rule 1: target must be a declared node + if edge.target not in node_ids: + msg = ( + f"Edge {edge.source}->{edge.target} references " + f"unknown target node '{edge.target}'." + ) raise ValueError(msg) + + # Collect any source that is not a declared node + if edge.source not in node_ids: + external_sources.add(edge.source) + + # ------------------------------------------------------------------ + # 3. Ensure external sources never appear as targets elsewhere + # ------------------------------------------------------------------ + forbidden_targets = external_sources & {e.target for e in model.edges} + if forbidden_targets: + msg = ( + "External IDs cannot be used as targets as well:" + f"{sorted(forbidden_targets)}" + ) + raise ValueError(msg) + return model @model_validator(mode="after") # type: ignore[arg-type] diff --git a/tests/conftest.py b/tests/conftest.py index 09a80d4..39c8b40 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -6,6 +6,7 @@ from numpy.random import default_rng from app.config.constants import ( + Distribution, EventMetricName, SampledMetricName, SamplePeriods, @@ -17,6 +18,7 @@ from app.schemas.simulation_settings_input import SimulationSettings from app.schemas.system_topology.full_system_topology import ( Client, + Edge, TopologyGraph, TopologyNodes, ) @@ -109,15 +111,23 @@ def rqs_input() -> RqsGeneratorInput: @pytest.fixture def topology_minimal() -> TopologyGraph: """ - A valid topology containing a single client and **no** servers or edges. + A valid *tiny* topology: one generator ➜ one client. - Suitable for low-level tests that do not need to traverse the server - layer or network graph. + The single edge has a negligible latency; its only purpose is to give the + generator a valid ``out_edge`` so that the runtime can start. """ client = Client(id="client-1") - nodes = TopologyNodes(servers=[], client=client) - return TopologyGraph(nodes=nodes, edges=[]) + # Stub edge: generator id comes from rqs_input fixture (“rqs-1”) + edge = Edge( + id="gen-to-client", + source="rqs-1", + target="client-1", + latency=RVConfig(mean=0.001, distribution=Distribution.POISSON), + ) + + nodes = TopologyNodes(servers=[], client=client) + return TopologyGraph(nodes=nodes, edges=[edge]) # --------------------------------------------------------------------------- # # Complete simulation payload # diff --git a/tests/integration/minimal/conftest.py b/tests/integration/minimal/conftest.py index 1c9f81e..434f9f0 100644 --- a/tests/integration/minimal/conftest.py +++ b/tests/integration/minimal/conftest.py @@ -21,12 +21,7 @@ if TYPE_CHECKING: from app.schemas.full_simulation_input import SimulationPayload - from app.schemas.full_simulation_input import ( - SimulationPayload as _Payload, # noqa: F401 - ) - from app.schemas.rqs_generator_input import ( - RqsGeneratorInput as _RqsIn, # noqa: F401 - ) + # ────────────────────────────────────────────────────────────────────────────── # 0-traffic generator (shadows the project-wide fixture) diff --git a/tests/integration/payload/data/invalid/missing_field.yml b/tests/integration/payload/data/invalid/missing_field.yml new file mode 100644 index 0000000..c74102d --- /dev/null +++ b/tests/integration/payload/data/invalid/missing_field.yml @@ -0,0 +1,17 @@ +rqs_input: + id: gen-1 + avg_active_users: { mean: 1 } + avg_request_per_minute_per_user: { mean: 10 } + +topology_graph: + nodes: + client: { id: cli } + servers: + - id: srv-1 + endpoints: + - endpoint_name: ep + steps: + - { kind: cpu_parse, step_operation: { cpu_time: 0.001 } } + + edges: [] +sim_settings: { total_simulation_time: 10 } diff --git a/tests/integration/payload/data/invalid/negative_latency.yml b/tests/integration/payload/data/invalid/negative_latency.yml new file mode 100644 index 0000000..f69fb60 --- /dev/null +++ b/tests/integration/payload/data/invalid/negative_latency.yml @@ -0,0 +1,15 @@ +rqs_input: + id: gen-1 + avg_active_users: { mean: 1 } + avg_request_per_minute_per_user: { mean: 10 } + +topology_graph: + nodes: + client: { id: cli } + servers: [] + edges: + - id: bad-lat + source: gen-1 + target: cli + latency: { mean: -0.001 } +sim_settings: { total_simulation_time: 5 } diff --git a/tests/integration/payload/data/invalid/wrong_enum.yml b/tests/integration/payload/data/invalid/wrong_enum.yml new file mode 100644 index 0000000..58a1c50 --- /dev/null +++ b/tests/integration/payload/data/invalid/wrong_enum.yml @@ -0,0 +1,13 @@ +rqs_input: + id: gen-1 + avg_active_users: { mean: 1 } + avg_request_per_minute_per_user: + mean: 10 + distribution: gamma # not valid enum + +topology_graph: + nodes: + client: { id: cli } + servers: [] + edges: [] +sim_settings: { total_simulation_time: 5 } diff --git a/tests/integration/payload/test_payload_invalid.py b/tests/integration/payload/test_payload_invalid.py new file mode 100644 index 0000000..09249c1 --- /dev/null +++ b/tests/integration/payload/test_payload_invalid.py @@ -0,0 +1,19 @@ +"""test to verify validation on invalid yml""" + +from pathlib import Path + +import pytest +import yaml +from pydantic import ValidationError + +from app.schemas.full_simulation_input import SimulationPayload + +DATA_DIR = Path(__file__).parent / "data" / "invalid" +YMLS = sorted(DATA_DIR.glob("*.yml")) + +@pytest.mark.integration +@pytest.mark.parametrize("yaml_path", YMLS, ids=lambda p: p.stem) +def test_invalid_payloads_raise(yaml_path: Path) -> None : + raw = yaml.safe_load(yaml_path.read_text()) + with pytest.raises(ValidationError): + SimulationPayload.model_validate(raw) diff --git a/tests/integration/single_server/conftest.py b/tests/integration/single_server/conftest.py new file mode 100644 index 0000000..38f575a --- /dev/null +++ b/tests/integration/single_server/conftest.py @@ -0,0 +1,47 @@ +""" +Fixtures for the *single-server* integration scenario: + +generator ──edge──> server ──edge──> client + +The topology is stored as a YAML file (`tests/data/single_server.yml`) so +tests remain declarative and we avoid duplicating Pydantic wiring logic. +""" + +from __future__ import annotations + +from pathlib import Path +from typing import TYPE_CHECKING + +import pytest +import simpy + +if TYPE_CHECKING: # heavy imports only when type-checking + from app.runtime.simulation_runner import SimulationRunner + + +# --------------------------------------------------------------------------- # +# Shared SimPy environment (function-scope so every test starts fresh) # +# --------------------------------------------------------------------------- # +@pytest.fixture +def env() -> simpy.Environment: + """Return an empty ``simpy.Environment`` for each test.""" + return simpy.Environment() + + +# --------------------------------------------------------------------------- # +# Build a SimulationRunner from the YAML scenario # +# --------------------------------------------------------------------------- # +@pytest.fixture +def runner(env: simpy.Environment) -> SimulationRunner: + """ + Load *single_server.yml* through the public constructor + :pymeth:`SimulationRunner.from_yaml`. + """ + # import deferred to avoid ruff TC001 + from app.runtime.simulation_runner import SimulationRunner # noqa: PLC0415 + + yaml_path: Path = ( + Path(__file__).parent / "data" / "single_server.yml" + ) + + return SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) diff --git a/tests/integration/single_server/data/single_server.yml b/tests/integration/single_server/data/single_server.yml new file mode 100644 index 0000000..4072f48 --- /dev/null +++ b/tests/integration/single_server/data/single_server.yml @@ -0,0 +1,54 @@ +# ─────────────────────────────────────────────────────────────── +# FastSim scenario: generator ➜ client ➜ server ➜ client +# ─────────────────────────────────────────────────────────────── + +# 1. Traffic generator (light load) +rqs_input: + id: rqs-1 + avg_active_users: { mean: 5 } + avg_request_per_minute_per_user: { mean: 40 } + user_sampling_window: 60 + +# 2. Topology +topology_graph: + nodes: + client: { id: client-1 } + servers: + - id: srv-1 + server_resources: { cpu_cores: 2, ram_mb: 2048 } + endpoints: + - endpoint_name: ep-1 + probability: 1.0 + steps: + - kind: initial_parsing + step_operation: { cpu_time: 0.001 } + - kind: io_wait + step_operation: { io_waiting_time: 0.002 } + + edges: + - id: gen-to-client + source: rqs-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + + - id: client-to-server + source: client-1 + target: srv-1 + latency: { mean: 0.003, distribution: exponential } + + - id: server-to-client + source: srv-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + +# 3. Simulation settings +sim_settings: + total_simulation_time: 50 + sample_period_s: 0.01 + enabled_sample_metrics: + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection + enabled_event_metrics: + - rqs_clock diff --git a/tests/integration/single_server/test_single_server.py b/tests/integration/single_server/test_single_server.py new file mode 100644 index 0000000..498a7a1 --- /dev/null +++ b/tests/integration/single_server/test_single_server.py @@ -0,0 +1,52 @@ +""" +End-to-end verification of a *functional* topology (1 generator, 1 server). + +Assertions cover: + +* non-zero latency stats, +* throughput series length > 0, +* presence of sampled metrics for both edge & server. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import pytest + +from app.config.constants import LatencyKey, SampledMetricName + +if TYPE_CHECKING: # only needed for type-checking + from app.metrics.analyzer import ResultsAnalyzer + from app.runtime.simulation_runner import SimulationRunner + + +# --------------------------------------------------------------------------- # +# Tests # +# --------------------------------------------------------------------------- # +@pytest.mark.integration +def test_single_server_happy_path(runner: SimulationRunner) -> None: + """Run the simulation and ensure that *something* was processed.""" + results: ResultsAnalyzer = runner.run() + + # ── Latency stats must exist ─────────────────────────────────────────── + stats = results.get_latency_stats() + assert stats, "Expected non-empty latency statistics." + assert stats[LatencyKey.TOTAL_REQUESTS] > 0 + assert stats[LatencyKey.MEAN] > 0.0 + + # ── Throughput series must have at least one bucket > 0 ─────────────── + ts, rps = results.get_throughput_series() + assert len(ts) == len(rps) > 0 + assert any(val > 0 for val in rps) + + # ── Sampled metrics must include *one* server and *one* edge ─────────── + sampled = results.get_sampled_metrics() + + # Server RAM & queues + assert SampledMetricName.RAM_IN_USE in sampled + assert sampled[SampledMetricName.RAM_IN_USE], "Server RAM time-series missing." + + # Edge concurrent-connection metric + assert SampledMetricName.EDGE_CONCURRENT_CONNECTION in sampled + assert sampled[SampledMetricName.EDGE_CONCURRENT_CONNECTION], "Edge metric missing." diff --git a/tests/unit/runtime/actors/test_client.py b/tests/unit/runtime/actors/test_client.py index bc17471..7ee194e 100644 --- a/tests/unit/runtime/actors/test_client.py +++ b/tests/unit/runtime/actors/test_client.py @@ -84,6 +84,7 @@ def test_inbound_is_completed() -> None: req = RequestState(id=2, initial_time=0.0) req.record_hop(SystemNodes.GENERATOR, "gen-1", env.now) req.record_hop(SystemEdges.NETWORK_CONNECTION, "edge-X", env.now) + req.record_hop(SystemNodes.CLIENT, "cli-1", env.now) # simulate return inbox.put(req) env.run() diff --git a/tests/unit/runtime/actors/test_edge.py b/tests/unit/runtime/actors/test_edge.py index 37ad296..644b078 100644 --- a/tests/unit/runtime/actors/test_edge.py +++ b/tests/unit/runtime/actors/test_edge.py @@ -82,7 +82,7 @@ def _make_edge( id="edge-1", source="src", target="dst", - latency=RVConfig(mean=0.0, variance=1.0, distribution="normal"), + latency=RVConfig(mean=1.0, variance=1.0, distribution="normal"), dropout_rate=dropout_rate, ) diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py new file mode 100644 index 0000000..d785e3d --- /dev/null +++ b/tests/unit/runtime/test_simulation_runner.py @@ -0,0 +1,159 @@ +"""Unit-tests for :pyclass:`app.runtime.simulation_runner.SimulationRunner`. + +Purpose +------- +Validate each private builder in isolation and run a minimal end-to-end +execution without relying on the full integration scenarios. +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING +from unittest.mock import patch + +import pytest +import simpy +import yaml + +from app.metrics.analyzer import ResultsAnalyzer +from app.runtime.simulation_runner import SimulationRunner + +if TYPE_CHECKING: + from pathlib import Path + + from app.runtime.actors.client import ClientRuntime + from app.runtime.actors.rqs_generator import RqsGeneratorRuntime + from app.schemas.full_simulation_input import SimulationPayload + + +# --------------------------------------------------------------------------- # +# Fixtures # +# --------------------------------------------------------------------------- # +@pytest.fixture +def env() -> simpy.Environment: + """Return a fresh SimPy environment for every unit test.""" + return simpy.Environment() + + +@pytest.fixture +def runner( + env: simpy.Environment, + payload_base: SimulationPayload, +) -> SimulationRunner: + """Factory producing an **un-started** SimulationRunner.""" + return SimulationRunner(env=env, simulation_input=payload_base) + + +# --------------------------------------------------------------------------- # +# Builder-level tests # +# --------------------------------------------------------------------------- # +def test_build_rqs_generator_populates_dict(runner: SimulationRunner) -> None: + """_build_rqs_generator() must register one generator runtime.""" + runner._build_rqs_generator() # noqa: SLF001 + assert len(runner._rqs_runtime) == 1 # noqa: SLF001 + gen_rt: RqsGeneratorRuntime = next( + iter(runner._rqs_runtime.values()), # noqa: SLF001 + ) + assert gen_rt.rqs_generator_data.id == runner.rqs_generator.id + + +def test_build_client_populates_dict(runner: SimulationRunner) -> None: + """_build_client() must register exactly one client runtime.""" + runner._build_client() # noqa: SLF001 + assert len(runner._client_runtime) == 1 # noqa: SLF001 + cli_rt: ClientRuntime = next( + iter(runner._client_runtime.values()), # noqa: SLF001 + ) + assert cli_rt.client_config.id == runner.client.id + assert cli_rt.out_edge is None + + +def test_build_servers_keeps_empty_with_minimal_topology( + runner: SimulationRunner, +) -> None: + """Zero servers in the payload → dict stays empty.""" + runner._build_servers() # noqa: SLF001 + assert runner._servers_runtime == {} # noqa: SLF001 + + +def test_build_load_balancer_noop_when_absent( + runner: SimulationRunner, +) -> None: + """No LB in the payload → builder leaves dict empty.""" + runner._build_load_balancer() # noqa: SLF001 + assert runner._lb_runtime == {} # noqa: SLF001 + + +# --------------------------------------------------------------------------- # +# Edges builder # +# --------------------------------------------------------------------------- # +def test_build_edges_with_stub_edge(runner: SimulationRunner) -> None: + """ + `_build_edges()` must register exactly one `EdgeRuntime`, corresponding + to the single stub edge (generator → client) present in the minimal + topology fixture. + """ + runner._build_rqs_generator() # noqa: SLF001 + runner._build_client() # noqa: SLF001 + runner._build_edges() # noqa: SLF001 + assert len(runner._edges_runtime) == 1 # noqa: SLF001 + + +# --------------------------------------------------------------------------- # +# End-to-end “mini” run # +# --------------------------------------------------------------------------- # +def test_run_returns_results_analyzer(runner: SimulationRunner) -> None: + """ + `.run()` must complete even though the client is a sink node. We patch + `_build_client` to assign a no-op edge to avoid assertions. + """ + + class _NoOpEdge: + """Edge stub that silently discards transported states.""" + + def transport(self) -> None: + return + + def patched_build_client(self: SimulationRunner) -> None: + # Call the original builder + SimulationRunner._build_client(self) # noqa: SLF001 + cli_rt = next(iter(self._client_runtime.values())) + cli_rt.out_edge = _NoOpEdge() # type: ignore[assignment] + + with patch.object(runner, "_build_client", patched_build_client.__get__(runner)): + results: ResultsAnalyzer = runner.run() + + assert isinstance(results, ResultsAnalyzer) + assert ( + pytest.approx(runner.env.now) + == runner.simulation_settings.total_simulation_time + ) + + +# --------------------------------------------------------------------------- # +# from_yaml utility # +# --------------------------------------------------------------------------- # +def test_from_yaml_minimal(tmp_path: Path, env: simpy.Environment) -> None: + """from_yaml() parses YAML, validates via Pydantic and returns a runner.""" + yml_payload = { + "rqs_input": { + "id": "gen-yaml", + "avg_active_users": {"mean": 1}, + "avg_request_per_minute_per_user": {"mean": 2}, + "user_sampling_window": 10, + }, + "topology_graph": { + "nodes": {"client": {"id": "cli-yaml"}, "servers": []}, + "edges": [], + }, + "sim_settings": {"total_simulation_time": 5}, + } + + yml_path: Path = tmp_path / "scenario.yml" + yml_path.write_text(yaml.safe_dump(yml_payload)) + + runner = SimulationRunner.from_yaml(env=env, yaml_path=yml_path) + + assert isinstance(runner, SimulationRunner) + assert runner.rqs_generator.id == "gen-yaml" + assert runner.client.id == "cli-yaml" diff --git a/tests/unit/samplers/test_sampler_helper.py b/tests/unit/samplers/test_sampler_helper.py index 7e615d0..ff44c3b 100644 --- a/tests/unit/samplers/test_sampler_helper.py +++ b/tests/unit/samplers/test_sampler_helper.py @@ -176,7 +176,7 @@ def test_general_sampler_normal_path() -> None: def test_general_sampler_poisson_path() -> None: """Poisson branch returns the dummy's preset integer as *float*.""" dummy = cast("np.random.Generator", DummyRNG(poisson_value=4)) - cfg = RVConfig(mean=5.0, variance=5.0, distribution=Distribution.POISSON) + cfg = RVConfig(mean=5.0, distribution=Distribution.POISSON) result = general_sampler(cfg, dummy) assert isinstance(result, float) assert result == 4.0 @@ -192,5 +192,5 @@ def test_general_sampler_lognormal_path() -> None: def test_general_sampler_exponential_path() -> None: """Exponential branch produces a strictly positive float.""" rng = np.random.default_rng(7) - cfg = RVConfig(mean=1.5, variance=1.5, distribution=Distribution.EXPONENTIAL) + cfg = RVConfig(mean=1.5, distribution=Distribution.EXPONENTIAL) assert general_sampler(cfg, rng) > 0.0 From 90df33d4566f6ee21b69667db8e2a048c6e949cb Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Fri, 8 Aug 2025 18:16:27 +0200 Subject: [PATCH 23/35] new readme and guide to build yaml --- README.md | 377 ++++++++++++---- docs/yaml_builder.md | 448 +++++++++++++++++++ {example => examples}/data/single_server.yml | 0 {example => examples}/single_server_yaml.py | 0 {example => examples}/single_server_yml.png | Bin examples/your_example.py | 54 +++ src/app/metrics/analyzer.py | 1 + 7 files changed, 794 insertions(+), 86 deletions(-) create mode 100644 docs/yaml_builder.md rename {example => examples}/data/single_server.yml (100%) rename {example => examples}/single_server_yaml.py (100%) rename {example => examples}/single_server_yml.png (100%) create mode 100644 examples/your_example.py diff --git a/README.md b/README.md index 526a127..bb5d72e 100644 --- a/README.md +++ b/README.md @@ -1,127 +1,332 @@ -# **FastSim Project Overview** +# **FastSim – Event-Loop Aware Simulation for Backend Systems** -## **1. Why FastSim?** +## **1. Overview** -Modern async Python stacks like FastAPI + Uvicorn are incredibly fast, yet sizing them for production often involves guesswork, costly cloud load-tests, or late-stage surprises. **FastSim** fills that gap by acting as a **digital twin** of your service: +Modern asynchronous Python stacks such as **FastAPI + Uvicorn** deliver impressive performance, yet capacity planning for production workloads often relies on guesswork, costly cloud-based load tests, or late-stage troubleshooting. - * It **replicates** the behavior of an async event-loop in SimPy, generating the same kinds of steps (parsing, CPU work, I/O waits) that happen in real code. - * It **models** your infrastructure primitives—CPU cores, connection pools, and rate-limiters—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. - * It **outputs** the very metrics you would scrape in production (p50/p95/p99 latency, ready-queue lag, concurrency, throughput), but entirely offline, in seconds. +**FastSim** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. -With FastSim, you can ask, *“What happens if traffic doubles on Black Friday?”*, *“How many cores are needed to keep p95 latency below 100 ms?”*, or *“Is our new endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. +FastSim allows you to answer questions such as: -**Outcome:** Data-driven capacity planning, early performance tuning, and far fewer surprises in production. +* *What happens to p95 latency if traffic doubles during a peak event?* +* *How many cores are required to maintain SLAs at scale?* +* *What is the cost-per-request of adding a large language model (LLM) inference step?* -## **2. Installation & Quick Start** +The simulation outputs metrics identical in form to those collected in production—such as p50/p95/p99 latency, concurrency, resource utilisation, and throughput—making results directly actionable. -FastSim is designed to be used as a Python library. +**Outcome:** Data-driven capacity planning, early performance tuning, and reduced operational surprises. + +--- + +## **2. Key Features** + +* **Event-loop accuracy** – Models a single-threaded asynchronous runtime, including CPU-bound work, I/O waits, and parsing. +* **Resource modelling** – Simulates CPU cores, memory, connection pools, and rate limiters as discrete resources. +* **Network simulation** – Models transport latency per edge in the system topology. +* **Workload flexibility** – Supports stochastic arrival processes (e.g., Poisson, Normal) for user traffic generation. +* **Metrics parity with production** – Produces time-series and event-level metrics aligned with observability tools. +* **Offline and repeatable** – No need for costly cloud infrastructure to conduct performance tests. + +--- + +## **3. Installation** + +Until published, clone the repository and install in editable mode: + +### Requirements +- Python 3.11+ (recommended 3.12) +- Poetry ≥ 1.6 + +FastSim uses [Poetry](https://python-poetry.org/) for dependency management. +If you do not have Poetry installed, follow these steps. + +### 3.1 Install Poetry (official method) + +**Linux / macOS** ```bash -# Installation (coming soon to PyPI) -pip install fastsim +curl -sSL https://install.python-poetry.org | python3 - ``` -**Example Usage:** +**Windows (PowerShell)** -1. Define your system topology in a `config.yml` file: +```powershell +(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python - +``` - ```yaml - topology: - servers: - - id: "app-server-1" - # ... server configuration ... - load_balancers: - - id: "main-lb" - backends: ["app-server-1"] - # ... lb configuration ... - settings: - duration_s: 60 - ``` +> **Note:** Ensure that Poetry’s binary directory is in your `PATH`. +> On Linux/macOS this is typically `~/.local/bin`; +> on Windows it is `%APPDATA%\Python\Scripts` or the path printed at the end of installation. -2. Run the simulation from a Python script: +--- - ```python - from fastsim import run_simulation - from fastsim.schemas import SimulationPayload +### 3.2 Clone the repository and set up a local virtual environment - # Load and validate configuration using Pydantic - payload = SimulationPayload.from_yaml("config.yml") +```bash +# Clone the repository +git clone https://github.com/GioeleB00/Fastsim-Backend.git +cd Fastsim-Backend + +# Configure Poetry to always create a local `.venv` inside the project +poetry config virtualenvs.in-project true - # Run the simulation - results = run_simulation(payload) +# Install all dependencies (main + dev) inside the local venv +poetry install --with dev +``` - # Analyze and plot results - results.plot_latency_distribution() - print(results.summary()) - ``` +After this step, you will see a `.venv/` directory inside the project root. +To activate the environment manually: + +```bash +source .venv/bin/activate # Linux / macOS +.venv\Scripts\activate # Windows +``` -## **3. Who Benefits & Why** +Or simply run commands via Poetry without manual activation, for example: -| Audience | Pain-Point Solved | FastSim Value | -| :--- | :--- | :--- | -| **Backend Engineers** | Unsure if a 4-vCPU container can survive a traffic spike. | Run *what-if* scenarios, tweak CPU cores, and get p95 latency metrics before merging code. | -| **DevOps / SRE** | Guesswork in capacity planning; high cost of over-provisioning. | Simulate 1 to N replicas to find the most cost-effective configuration that meets the SLA. | -| **ML / LLM Teams** | LLM inference cost and latency are difficult to predict. | Model the LLM step with a price and latency distribution to estimate cost-per-request. | -| **Educators / Trainers** | Students struggle to visualize event-loop internals. | Visualize GIL ready-queue lag, CPU vs. I/O steps, and the effect of blocking code. | -| **System-Design Interviewees** | Hard to quantify trade-offs in whiteboard interviews. | Prototype real-time metrics to demonstrate how your design scales and where bottlenecks lie. | +```bash +poetry run pytest +poetry run python examples/single_server.py +``` -## **4. Project Structure** +--- + +## **4. Quick Start** + +### 1. Define your simulation payload + +Go to the folder `/examples` open the file `single_server.py` +and run it from the terminal, you will see the output of the system +described in `/examples/data/single_server.yml` and you will see a +`.png` file with different plots. + +If you want to build your own configuration, read the guide in the `/docs` folder on how to craft a `.yml` input correctly. + +```yaml +rqs_input: + id: generator-1 + avg_active_users: + mean: 100 + distribution: poisson + avg_request_per_minute_per_user: + mean: 20 + distribution: poisson + user_sampling_window: 60 + +topology_graph: + nodes: + client: + id: client-1 + type: client + servers: + - id: app-server-1 + type: server + server_resources: + cpu_cores: 2 + ram_mb: 2048 + endpoints: + - endpoint_name: /predict + steps: + - kind: ram + step_operation: { necessary_ram: 100 } + - kind: cpu + step_operation: { cpu_time: 0.005 } + edges: + - id: gen-to-client + source: generator-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + - id: client-to-server + source: client-1 + target: app-server-1 + latency: { mean: 0.003, distribution: exponential } + - id: server-to-client + source: app-server-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + +sim_settings: + total_simulation_time: 300 + sample_period_s: 0.05 + enabled_sample_metrics: + - ready_queue_len + - ram_in_use + enabled_event_metrics: + - rqs_clock +``` -The project is a standard Python library managed with Poetry. +and add it to the `/examples/data` folder + +### 2. Run the simulation + +build a python file in the `/examples` folder and copy the +following script replacing `` with the +real name + + +```python + +from pathlib import Path + +import simpy +import matplotlib.pyplot as plt + +from app.config.constants import LatencyKey +from app.runtime.simulation_runner import SimulationRunner +from app.metrics.analyzer import ResultsAnalyzer + +def print_latency_stats(res: ResultsAnalyzer) -> None: + """Print latency statistics returned by the analyzer.""" + stats = res.get_latency_stats() + print("\n=== LATENCY STATS ===") + if not stats: + print("(empty)") + return + + order: list[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + +def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: + """Generate the 2x2 plot figure and save it to `out_path`.""" + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + res.plot_latency_distribution(axes[0, 0]) + res.plot_throughput(axes[0, 1]) + res.plot_server_queues(axes[1, 0]) + res.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + fig.savefig(out_path) + print(f"Plots saved to: {out_path}") + +# Paths +yaml_path = Path(__file__).parent / "data" /".yml" +out_path = Path(__file__).parent / "_plots.png" + +# Simulation +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) +results: ResultsAnalyzer = runner.run() + +# Output +print_latency_stats(results) +save_all_plots(results, out_path) ``` -fastsim/ -├── documentation/ -│ └── ... +run the script and you will see the different plots and on your terminal +you will see the latency stats + +--- + +## **5. Target Users and Use Cases** + +| Audience | Challenge | FastSim Value | +| ------------------------ | ------------------------------------------------- | -------------------------------------------------------------------------------- | +| Backend Engineers | Sizing services for variable workloads | Model endpoint workflows and resource bottlenecks before deployment | +| DevOps / SRE | Balancing cost and SLA | Simulate scaling scenarios to choose optimal capacity | +| ML / LLM Teams | Unclear latency/cost impact of inference steps | Integrate stochastic inference times and cost models into the service simulation | +| Educators | Explaining async runtime internals | Demonstrate queueing, blocking effects, and CPU vs. I/O trade-offs | +| System Design Candidates | Quantifying architecture trade-offs in interviews | Prototype a simulated design to visualise scalability and bottlenecks | + +--- + +## **6. Project Structure** + +The project follows a standard Python package layout, managed with Poetry. + +``` +Fastsim-Backend/ +├── examples/ # Examples payloads and datasets +├── scripts/ # Utility scripts (linting, startup) +├── docs/ # Project vision and technical documentation +├── tests/ # Unit and integration tests ├── src/ │ └── app/ -│ ├── config/ -│ ├── metrics/ -│ ├── resources/ -│ ├── runtime/ -│ │ ├── actors/ -│ │ └── rqs_state.py -│ ├── samplers/ -│ └── schemas/ -├── tests/ -│ ├── unit/ -│ └── integration/ -├── .github/ -│ └── workflows/ -│ └── ci-develop.yml +│ ├── config/ # Settings and constants +│ ├── metrics/ # KPI computation and aggregation +│ ├── resources/ # SimPy resource registry +│ ├── runtime/ # Simulation core and actors +│ ├── samplers/ # Random variable generators +│ └── schemas/ # Pydantic models for validation ├── pyproject.toml -├── poetry.lock └── README.md ``` -## **5. Development & Contribution** +--- + +## **7. Development Workflow** + +FastSim uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. + +| Task | Command | Description | +| ------------- | --------------------------------- | -------------------------------------- | +| Install deps | `poetry install --with dev` | Main and development dependencies | +| Lint & format | `poetry run ruff check src tests` | Style and best-practice checks | +| Type checking | `poetry run mypy src tests` | Static type enforcement | +| Run tests | `poetry run pytest` | Execute all unit and integration tests | + +--- + +## **8. Continuous Integration** + +The GitHub Actions pipeline enforces: + +* **Pull Requests:** Ruff, MyPy, and unit tests for rapid feedback. +* **Develop branch:** Full suite including integration tests and coverage reporting. + +No code is merged without passing all checks, ensuring maintainability and reliability. + +--- + +## **9. Current Limitations (v0.1)** + +1. **Network delay model** – Bandwidth effects and payload size are not yet considered. +2. **Concurrency model** – Single-threaded async event-loop; no native multi-thread or multi-process simulation. +3. **CPU allocation** – One process per server instance; multi-core within a process is not yet modelled. + +In addition to the items already listed (simplified network delay, single-threaded async model, and one process per server), keep in mind: + +* **Stationary, independent workload.** Traffic is sampled from stationary distributions; there is no diurnal seasonality, burst shaping, or feedback coupling (e.g., servers slowing down arrivals). Average users and per-user RPM are sampled independently. +* **Simplified request flow.** Endpoints execute a linear sequence of steps; there is no conditional branching/fan-out within an endpoint (e.g., cache hit/miss paths, error paths) and no per-request control flow. +* **Network realism is limited.** Beyond base latency and optional drops, the model does not account for payload size, bandwidth constraints, TCP behavior (slow start, congestion), retries/timeouts, or jitter. +* **No backpressure or autoscaling.** The generator does not adapt to server state (queues, errors), and there is no policy loop for rate limiting or scaling during the run. +* **Telemetry granularity.** Sampled metrics are collected at a fixed `sample_period_s` and may miss very short-lived spikes unless you lower the period (at a runtime cost). Event resolution itself is not affected by the sampling period. +* **Reproducibility.** Unless you fix a random seed (not yet exposed in all entry points), repeated runs will vary within the chosen distributions. -We welcome contributions\! The development workflow is managed by Poetry and quality is enforced by Ruff and MyPy. +--- -| Task | Command | Notes | -| :--- | :--- | :--- | -| **Install dependencies** | `poetry install --with dev` | Installs main and development packages. | -| **Lint & format** | `poetry run ruff check src tests` | Style and best-practice validations. | -| **Type checking** | `poetry run mypy src tests` | Static type enforcement. | -| **Run all tests** | `poetry run pytest` | Executes the full test suite. | +## Mini Roadmap -### **CI with GitHub Actions** +Short, high-impact items we plan to add next: -We maintain two jobs on the `develop` branch to ensure code quality: +1. **Cache modeling.** First-class cache layers (per-endpoint hit/miss with TTL and warm-up), configurable hit-ratio profiles, and their effect on latency, CPU, and RAM. +2. **LLM inference as a step + cost accounting.** Treat inference as a dedicated endpoint step with its own latency distribution, concurrency limits/batching, and per-request cost model (tokens, provider pricing). +3. **Fault and event injection.** Time-based events (node down/up, degraded edge, error-rate spikes) with deterministic timelines to test resilience and recovery. +4. **Network bandwidth & payload size.** Throughput-aware links, request/response sizes, retries/timeouts, and simple congestion effects. +5. **Branching/control-flow within endpoints.** Conditional steps (e.g., cache hit vs. miss), probabilistic routing, and fan-out/fan-in to external services. +6. **Backpressure and autoscaling loops.** Rate limiting tied to queue depth/latency SLOs and simple scale-up/down policies during a run. - * **Quick (on Pull Requests):** Runs Ruff, MyPy, and unit tests for immediate feedback. - * **Full (on pushes to `develop`):** Runs the full suite, including integration tests and code coverage reports. -This guarantees that every commit in `develop` is style-checked, type-safe, and fully tested. +Future milestones will extend these capabilities. -## **6. Limitations – v0.1 (First Public Release)** +--- -1. **Network Delay Model:** Only pure transport latency is simulated. Bandwidth-related effects (e.g., payload size, link speed) are not yet accounted for. -2. **Concurrency Model:** The simulation models a single-threaded, cooperative event-loop (like `asyncio`). Multi-process or multi-threaded parallelism is not yet supported. -3. **CPU Core Allocation:** Every server instance is pinned to one physical CPU core. Horizontal scaling is achieved by adding more server instances, not by using multiple cores within a single process. +## **10. Documentation** -These constraints will be revisited in future milestones. +Comprehensive documentation is available in the `/docs` directory, covering: -## **7. Documentation** +* Simulation model and architecture +* Schema definitions +* Example scenarios +* Extension guidelines -For a deeper understanding of FastSim, we recommend reading the detailed documentation located in the `/documentation` folder at the root of the project. A guided reading path is suggested within to build a comprehensive understanding of the project's vision, architecture, and technical implementation. \ No newline at end of file +--- \ No newline at end of file diff --git a/docs/yaml_builder.md b/docs/yaml_builder.md new file mode 100644 index 0000000..40f519e --- /dev/null +++ b/docs/yaml_builder.md @@ -0,0 +1,448 @@ +# FastSim – YAML Input Guide + +This guide explains **how to author the simulation YAML** for FastSim, covering every field, valid values, units, constraints, and the validation rules enforced by the Pydantic schemas. + +The YAML you write is parsed into a single model: + +```yaml +rqs_input: # traffic generator (workload) +topology_graph: # system architecture as a directed graph +sim_settings: # global settings and metric collection config +``` + +Everything is **validated up front**. If something is inconsistent (e.g., an edge points to a non-existent node), the simulator raises a clear error before running. + +--- + +## 1) Random Variables (`RVConfig`) + +Many knobs use a **random variable** specification: + +```yaml +mean: # required +distribution: # optional, default: poisson +variance: # optional; required by some distributions +``` + +### Supported distributions + +* `poisson` +* `normal` +* `log_normal` +* `exponential` +* `uniform` + +### Rules & defaults + +* **`mean`** must be numeric (int or float). It is coerced to float. +* If `distribution` is `normal` or `log_normal` **and** `variance` is missing, it is set to `variance = mean`. +* For **edge latency** (see §3.3), additional checks apply: `mean > 0`, and if provided, `variance ≥ 0`. + +**Units** + +* Time values are **seconds**. +* Rates are **requests per minute** (where noted). + +--- + +## 2) Workload: `rqs_input` (Request Generator) + +```yaml +rqs_input: + id: + # type is implicit and fixed to "generator" + avg_active_users: + mean: + distribution: poisson | normal # ONLY these two are allowed + variance: # required if normal and not provided (auto=mean) + avg_request_per_minute_per_user: + mean: + distribution: poisson # MUST be poisson + user_sampling_window: # default 60, bounds [1, 120] +``` + +### Semantics + +* **`avg_active_users`**: expected concurrent users (a random variable). + + * Allowed distributions: **Poisson** or **Normal**. +* **`avg_request_per_minute_per_user`**: per-user request rate (RPM). + + * Must be **Poisson**.\* +* **`user_sampling_window`**: every N seconds the generator re-samples the active user count. + +\* This reflects current sampler support (Poisson–Poisson and Gaussian–Poisson). + +--- + +## 3) System Topology: `topology_graph` + +The system is a **directed graph** of nodes and edges. + +```yaml +topology_graph: + nodes: + client: { id: } + load_balancer: # optional + id: + algorithms: round_robin | least_connection + server_covered: [ , ... ] + servers: + - id: + server_resources: + cpu_cores: + ram_mb: + db_connection_pool: # optional + endpoints: + - endpoint_name: # normalized to lowercase + steps: + - kind: # see §3.2 + step_operation: { : } # exactly ONE key (see §3.2) + edges: + - id: + source: + target: # must be a declared node + latency: { mean: , distribution: , variance: } + probability: <0..1> # default 1.0 + edge_type: network_connection # (enum; current default/only) + dropout_rate: <0..1> # default 0.01 +``` + +### 3.1 Nodes + +#### Client + +```yaml +client: + id: client-1 + # type is fixed to "client" +``` + +#### Server + +```yaml +- id: srv-1 + # type is fixed to "server" + server_resources: + cpu_cores: 1 # default 1, min 1 + ram_mb: 1024 # default 1024, min 256 + db_connection_pool: null # optional; set an integer to enable pool modeling + endpoints: + - endpoint_name: /predict + steps: + # defined in §3.2 +``` + +**Resource semantics** + +* `cpu_cores`: number of worker “core tokens” available for CPU-bound step execution. +* `ram_mb`: total available RAM (MB) tracked as a reservoir; steps reserve then release. +* `db_connection_pool`: optional capacity bound for DB-like steps (future-use; declared here for forward compatibility). + +#### Load Balancer (optional) + +```yaml +load_balancer: + id: lb-1 + algorithms: round_robin | least_connection + server_covered: [ srv-1, srv-2 ] # must be a subset of declared server IDs +``` + +LB **validation**: + +* `server_covered` must be a subset of declared servers. +* You must also define **edges from the LB to each covered server** (see §3.3); otherwise validation fails. + +### 3.2 Endpoints & Steps + +An endpoint is a **linear sequence** of steps. +Each step must declare **exactly one** operation (`step_operation`) whose key matches the step’s kind. + +#### Step kinds (enums) + +**CPU-bound** + +* `initial_parsing` +* `cpu_bound_operation` + +**RAM** + +* `ram` + +**I/O-bound** (all use `io_waiting_time` as the operation key) + +* `io_task_spawn` (spawns a background task, returns immediately) +* `io_llm` (LLM inference call) +* `io_wait` (generic wait, non-blocking) +* `io_db` (DB roundtrip) +* `io_cache` (cache access) + +#### Operation keys (enum `StepOperation`) + +* `cpu_time`: service time (seconds) that **occupies a CPU core/GIL**. +* `necessary_ram`: peak RAM (MB) reserved for the step. +* `io_waiting_time`: passive wait (seconds) **without a CPU core**. + +#### Valid pairings + +* CPU step → `{ cpu_time: }` +* RAM step → `{ necessary_ram: }` +* I/O step → `{ io_waiting_time: }` + +**Example** + +```yaml +endpoints: + - endpoint_name: /hello + steps: + - kind: ram + step_operation: { necessary_ram: 64 } + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } + - kind: io_cache + step_operation: { io_waiting_time: 0.003 } + - kind: io_db + step_operation: { io_waiting_time: 0.012 } + - kind: cpu_bound_operation + step_operation: { cpu_time: 0.001 } +``` + +**Validation enforced** + +* `step_operation` must contain **exactly one** entry. +* The operation key must match the step kind (e.g., RAM cannot use `cpu_time`). +* All numeric values are **strictly positive**. + +### 3.3 Edges + +```yaml +- id: c2s + source: client-1 # may be an external ID only for sources + target: srv-1 # MUST be a declared node + latency: + mean: 0.003 + distribution: exponential + # variance optional; if normal/log_normal and missing → set to mean + probability: 1.0 # optional [0..1] + edge_type: network_connection + dropout_rate: 0.01 # optional [0..1] +``` + +**Semantics** + +* **`source`** can be an external entry point (e.g., `rqs-1`) for inbound edges. +* **`target`** must always reference a declared node: client, server, or LB. +* **`latency`** is a random variable; **`mean > 0`**, **`variance ≥ 0`** (if provided). +* **`probability`** is used when multiple outgoing edges exist from a node. +* **`dropout_rate`** models probabilistic packet/request loss on the link. + +--- + +## 4) Global Settings: `sim_settings` + +```yaml +sim_settings: + total_simulation_time: # default 3600, min 5 + sample_period_s: # default 0.01, bounds [0.001, 0.1] + enabled_sample_metrics: + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection + enabled_event_metrics: + - rqs_clock + # - llm_cost # optional, for future accounting +``` + +**Notes** + +* `enabled_sample_metrics` are **time-series** collected every `sample_period_s`. +* `enabled_event_metrics` are **per-event** (e.g., per request) and not tied to the sampling period. +* The defaults already include the four main sampled metrics and `rqs_clock`. + +--- + +## 5) Graph-level Validation Rules (what’s checked before running) + +FastSim validates the entire payload. Key checks include: + +1. **Unique IDs** + + * All server IDs are unique. + * Edge IDs are unique. +2. **Node Types** + + * `type` fields on nodes are fixed to: `client`, `server`, `load_balancer`. +3. **Edge referential integrity** + + * Every **target** is a declared node ID. + * **External IDs** are allowed **only** as **sources**. If an ID appears as an external source, it must **never** appear as a target anywhere. +4. **No self-loops** + + * `source != target` for every edge. +5. **Load balancer sanity** + + * `server_covered` is a subset of declared servers. + * There is an **edge from the LB to every covered server**. + +If any rule is violated, the simulator raises a descriptive error. + +--- + +## 6) End-to-End Examples + +### 6.1 Minimal single-server scenario + +```yaml +rqs_input: + id: rqs-1 + avg_active_users: { mean: 50, distribution: poisson } + avg_request_per_minute_per_user: { mean: 30, distribution: poisson } + user_sampling_window: 60 + +topology_graph: + nodes: + client: { id: client-1 } + servers: + - id: srv-1 + server_resources: { cpu_cores: 1, ram_mb: 1024 } + endpoints: + - endpoint_name: /hello + steps: + - kind: ram + step_operation: { necessary_ram: 32 } + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } + - kind: io_wait + step_operation: { io_waiting_time: 0.010 } + edges: + - id: gen-to-client + source: rqs-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + - id: client-to-server + source: client-1 + target: srv-1 + latency: { mean: 0.003, distribution: exponential } + - id: server-to-client + source: srv-1 + target: client-1 + latency: { mean: 0.003, distribution: exponential } + +sim_settings: + total_simulation_time: 300 + sample_period_s: 0.01 + enabled_sample_metrics: + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection + enabled_event_metrics: + - rqs_clock +``` + +### 6.2 With a load balancer and two servers + +```yaml +rqs_input: + id: rqs-1 + avg_active_users: { mean: 120, distribution: poisson } + avg_request_per_minute_per_user: { mean: 20, distribution: poisson } + +topology_graph: + nodes: + client: { id: client-1 } + load_balancer: + id: lb-1 + algorithms: round_robin + server_covered: [ srv-1, srv-2 ] + servers: + - id: srv-1 + server_resources: { cpu_cores: 1, ram_mb: 1024 } + endpoints: + - endpoint_name: /api + steps: + - kind: ram + step_operation: { necessary_ram: 64 } + - kind: cpu_bound_operation + step_operation: { cpu_time: 0.004 } + - id: srv-2 + server_resources: { cpu_cores: 2, ram_mb: 2048 } + endpoints: + - endpoint_name: /api + steps: + - kind: ram + step_operation: { necessary_ram: 64 } + - kind: io_db + step_operation: { io_waiting_time: 0.012 } + + edges: + - { id: gen-client, source: rqs-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + + - { id: client-lb, source: client-1, target: lb-1, + latency: { mean: 0.002, distribution: exponential } } + + - { id: lb-srv1, source: lb-1, target: srv-1, + latency: { mean: 0.002, distribution: exponential }, probability: 0.5 } + - { id: lb-srv2, source: lb-1, target: srv-2, + latency: { mean: 0.002, distribution: exponential }, probability: 0.5 } + + - { id: srv1-client, source: srv-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + - { id: srv2-client, source: srv-2, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + +sim_settings: + total_simulation_time: 600 + sample_period_s: 0.02 + enabled_sample_metrics: [ ready_queue_len, ram_in_use, edge_concurrent_connection ] + enabled_event_metrics: [ rqs_clock ] +``` + +## 7) Common Pitfalls & How to Avoid Them + +* **Mismatched step operations** + A CPU step must use `cpu_time`; an I/O step must use `io_waiting_time`; a RAM step must use `necessary_ram`. The validator enforces **exactly one** key. + +* **Edge targets must be declared nodes** + `source` can be external (e.g., `rqs-1`), but **no external ID** may ever appear as a **target**. + +* **Load balancer coverage without edges** + If the LB declares `server_covered: [srv-1, srv-2]`, you must also add edges `lb→srv-1` and `lb→srv-2`. + +* **Latency RV rules on edges** + For edge latency, `mean` must be **> 0**; if `variance` is present, it must be **≥ 0**. + +* **Sampling too coarse** + If `sample_period_s` is large, short spikes in queues may be missed. Lower it (e.g., `0.005`) to capture fine-grained bursts—at the cost of larger time-series. + +--- + +## 8) Quick Reference (Enums) + +* **Distributions**: `poisson`, `normal`, `log_normal`, `exponential`, `uniform` +* **Node types**: `generator`, `server`, `client`, `load_balancer` (fixed by model) +* **Edge types**: `network_connection` +* **LB algorithms**: `round_robin`, `least_connection` +* **Step kinds** + CPU: `initial_parsing`, `cpu_bound_operation` + RAM: `ram` + I/O: `io_task_spawn`, `io_llm`, `io_wait`, `io_db`, `io_cache` +* **Step operation keys**: `cpu_time`, `io_waiting_time`, `necessary_ram` +* **Sampled metrics**: `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection` +* **Event metrics**: `rqs_clock` (and `llm_cost` reserved for future use) + +--- + +## 9) Units & Conventions + +* **Time**: seconds (`cpu_time`, `io_waiting_time`, latencies, `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **RAM**: megabytes (`ram_mb`, `necessary_ram`) +* **Rates**: requests/minute (`avg_request_per_minute_per_user.mean`) +* **Probabilities**: `[0.0, 1.0]` (`probability`, `dropout_rate`) +* **IDs**: strings; must be **unique** per category (servers, edges, LB). + +--- + +If you stick to these rules and examples, your YAML will parse cleanly and the simulation will run with a self-consistent, strongly-validated model. diff --git a/example/data/single_server.yml b/examples/data/single_server.yml similarity index 100% rename from example/data/single_server.yml rename to examples/data/single_server.yml diff --git a/example/single_server_yaml.py b/examples/single_server_yaml.py similarity index 100% rename from example/single_server_yaml.py rename to examples/single_server_yaml.py diff --git a/example/single_server_yml.png b/examples/single_server_yml.png similarity index 100% rename from example/single_server_yml.png rename to examples/single_server_yml.png diff --git a/examples/your_example.py b/examples/your_example.py new file mode 100644 index 0000000..ca31a05 --- /dev/null +++ b/examples/your_example.py @@ -0,0 +1,54 @@ +from pathlib import Path + +import simpy +import matplotlib.pyplot as plt + +from app.config.constants import LatencyKey +from app.runtime.simulation_runner import SimulationRunner +from app.metrics.analyzer import ResultsAnalyzer + +def print_latency_stats(res: ResultsAnalyzer) -> None: + """Print latency statistics returned by the analyzer.""" + stats = res.get_latency_stats() + print("\n=== LATENCY STATS ===") + if not stats: + print("(empty)") + return + + order: list[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + +def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: + """Generate the 2x2 plot figure and save it to `out_path`.""" + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + res.plot_latency_distribution(axes[0, 0]) + res.plot_throughput(axes[0, 1]) + res.plot_server_queues(axes[1, 0]) + res.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + fig.savefig(out_path) + print(f"Plots saved to: {out_path}") + +# Paths +yaml_path = Path(__file__).parent / "data" / ".yml" +out_path = Path(__file__).parent / "_plots.png" + +# Simulation +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) +results: ResultsAnalyzer = runner.run() + +# Output +print_latency_stats(results) +save_all_plots(results, out_path) diff --git a/src/app/metrics/analyzer.py b/src/app/metrics/analyzer.py index e1aa50e..8308d54 100644 --- a/src/app/metrics/analyzer.py +++ b/src/app/metrics/analyzer.py @@ -55,6 +55,7 @@ def __init__( servers: List of server runtime objects. edges: List of edge runtime objects. settings: Original simulation settings. + """ self._client = client self._servers = servers From 43eb8c50d105372763867000ce836c8c4125bd79 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 8 Aug 2025 18:20:38 +0200 Subject: [PATCH 24/35] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index bb5d72e..9f88a1b 100644 --- a/README.md +++ b/README.md @@ -328,5 +328,6 @@ Comprehensive documentation is available in the `/docs` directory, covering: * Schema definitions * Example scenarios * Extension guidelines +* Guide to build valid .yaml as valid simulation input ---- \ No newline at end of file +--- From 2a306acdf3551498e78aa9d5ca70148d4d078b18 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Wed, 13 Aug 2025 17:22:11 +0200 Subject: [PATCH 25/35] Added pybuilder and unit tests (#12) --- docs/dev_workflow_guide.md | 1 + examples/single_server_pybuilder.png | Bin 0 -> 164870 bytes examples/single_server_pybuilder.py | 293 ++++++++++++++++++ src/app/pybuilder/input_builder.py | 127 ++++++++ .../system_topology/full_system_topology.py | 37 ++- tests/unit/pybuilder/test_input_builder.py | 280 +++++++++++++++++ 6 files changed, 734 insertions(+), 4 deletions(-) create mode 100644 examples/single_server_pybuilder.png create mode 100644 examples/single_server_pybuilder.py create mode 100644 src/app/pybuilder/input_builder.py create mode 100644 tests/unit/pybuilder/test_input_builder.py diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md index d1379db..c0a9705 100644 --- a/docs/dev_workflow_guide.md +++ b/docs/dev_workflow_guide.md @@ -38,6 +38,7 @@ fastsim-backend/ │ │ ├── rqs_state.py # RequestState & Hop │ │ ├── simulation_runner.py # logic to initialize the whole simulation | └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator + ├── pybuilder/ # Pythonic way to build the simulation payload │ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) │ ├── schemas/ # Pydantic input/output models ├── poetry.lock diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png new file mode 100644 index 0000000000000000000000000000000000000000..e851f7bceebc2d08377411fc450446bef225fc26 GIT binary patch literal 164870 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%0A3{Qv*hPjplR!)qgL)o{#o;asQKn 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 zÐ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 literal 0 HcmV?d00001 diff --git a/examples/single_server_pybuilder.py b/examples/single_server_pybuilder.py new file mode 100644 index 0000000..4d8b757 --- /dev/null +++ b/examples/single_server_pybuilder.py @@ -0,0 +1,293 @@ +#!/usr/bin/env python3 +""" +Didactic example: build and run a FastSim scenario **without** YAML, +using the 'pybuilder' (AsyncFlow) to assemble the SimulationPayload. + +Scenario reproduced (same as the previous YAML): + generator ──edge──> client ──edge──> server ──edge──> client + +Load: + ~100 active users, 20 req/min each. + +Server: + 1 CPU core, 2GB RAM, endpoint with steps: + CPU(1ms) → RAM(100MB) → IO(100ms) + +Network: + 3ms mean (exponential) latency on each edge. + +What this script does: + 1) Build Pydantic models (generator, client, server, edges, settings). + 2) Compose the final SimulationPayload via AsyncFlow (builder pattern). + 3) Run the simulation with SimulationRunner. + 4) Print latency stats, throughput timeline, and a sampled-metrics preview. + 5) (Optional) Visualize the topology with Matplotlib. + +Run: + python run_with_pybuilder.py +""" + +from __future__ import annotations + +from pathlib import Path +from typing import Dict, Iterable, List, Mapping, Tuple + +import numpy as np +import simpy + +# ── FastSim domain imports ─────────────────────────────────────────────────── +from app.pybuilder.input_builder import AsyncFlow +from app.runtime.simulation_runner import SimulationRunner +from app.metrics.analyzer import ResultsAnalyzer +from app.schemas.full_simulation_input import SimulationPayload +from app.schemas.rqs_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings +from app.schemas.system_topology.endpoint import Endpoint +from app.schemas.system_topology.full_system_topology import ( + Client, + Edge, + Server, +) + +from app.config.constants import LatencyKey, SampledMetricName + + +# ───────────────────────────────────────────────────────────── +# Pretty printers (compact, readable output) +# ───────────────────────────────────────────────────────────── +def print_latency_stats(res: ResultsAnalyzer) -> None: + """Print latency statistics calculated by the analyzer.""" + stats: Mapping[LatencyKey, float] = res.get_latency_stats() + print("\n════════ LATENCY STATS ════════") + if not stats: + print("(empty)") + return + + order: List[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + + +def print_throughput(res: ResultsAnalyzer) -> None: + """Print the 1-second throughput buckets.""" + timestamps, rps = res.get_throughput_series() + print("\n════════ THROUGHPUT (req/sec) ════════") + if not timestamps: + print("(empty)") + return + + for t, rate in zip(timestamps, rps): + print(f"t={t:4.1f}s → {rate:6.2f} rps") + + +def print_sampled_preview(res: ResultsAnalyzer) -> None: + """ + Print a small preview for each sampled metric series (first 5 values). + This helps verify that sampler pipelines are running. + """ + sampled = res.get_sampled_metrics() + print("\n════════ SAMPLED METRICS (preview) ════════") + if not sampled: + print("(empty)") + return + + for metric, series in sampled.items(): + metric_name = ( + metric.name if isinstance(metric, SampledMetricName) else str(metric) + ) + print(f"\n📈 {metric_name}:") + for entity, vals in series.items(): + head = list(vals[:5]) if vals else [] + print(f" - {entity}: len={len(vals)}, first={head}") + + +# ───────────────────────────────────────────────────────────── +# Tiny helpers for sanity checks (optional) +# ───────────────────────────────────────────────────────────── +def _mean(series: Iterable[float]) -> float: + """Numerically stable mean for a generic float iterable.""" + arr = np.asarray(list(series), dtype=float) + return float(np.mean(arr)) if arr.size else 0.0 + + +def run_sanity_checks( + runner: SimulationRunner, + res: ResultsAnalyzer, +) -> None: + """ + Back-of-the-envelope checks to compare rough expectations vs observations. + These are intentionally simplistic approximations. + """ + print("\n════════ SANITY CHECKS (rough) ════════") + w = runner.simulation_input.rqs_input + lam_rps = ( + float(w.avg_active_users.mean) + * float(w.avg_request_per_minute_per_user.mean) + / 60.0 + ) + + # Observed throughput + _, rps_series = res.get_throughput_series() + rps_observed = _mean(rps_series) + print(f"• Mean throughput (rps) expected≈{lam_rps:.3f} " + f"observed={rps_observed:.3f}") + + # A few sampled signals (RAM, queues) just to show they are populated. + sampled = res.get_sampled_metrics() + ram_series = sampled.get(SampledMetricName.RAM_IN_USE, {}) + ioq_series = sampled.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) + ready_series = sampled.get(SampledMetricName.READY_QUEUE_LEN, {}) + + ram_mean = _mean([_mean(v) for v in ram_series.values()]) if ram_series else 0.0 + ioq_mean = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 + ready_mean = ( + _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 + ) + + print(f"• Mean RAM in use (MB) observed={ram_mean:.3f}") + print(f"• Mean I/O queue length observed={ioq_mean:.3f}") + print(f"• Mean ready queue length observed={ready_mean:.3f}") + + +# ───────────────────────────────────────────────────────────── +# Build the same scenario via AsyncFlow (pybuilder) +# ───────────────────────────────────────────────────────────── +def build_payload_with_pybuilder() -> SimulationPayload: + """ + Construct the SimulationPayload programmatically using the builder. + + This mirrors the YAML: + - Generator (100 users, 20 rpm each) + - Client + - One server with a single endpoint (CPU → RAM → IO) + - Three edges with exponential latency (3ms mean) + - Simulation settings: 500s total, sample period 50ms + """ + # 1) Request generator + generator = RqsGeneratorInput( + id="rqs-1", + avg_active_users={"mean": 100}, + avg_request_per_minute_per_user={"mean": 20}, + user_sampling_window=60, + ) + + # 2) Client + client = Client(id="client-1") + + # 3) Server (1 CPU core, 2GB RAM) with one endpoint and three steps + # We let Pydantic coerce nested dicts for the endpoint steps. + endpoint = Endpoint( + endpoint_name="ep-1", + probability=1.0, + steps=[ + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.001}}, + {"kind": "ram", "step_operation": {"necessary_ram": 100}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.1}}, + ], + ) + + server = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[endpoint], + ) + + # 4) Edges: exponential latency with 3ms mean (same as YAML) + e_gen_client = Edge( + id="gen-to-client", + source="rqs-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + e_client_server = Edge( + id="client-to-server", + source="client-1", + target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + e_server_client = Edge( + id="server-to-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + + # 5) Simulation settings + settings = SimulationSettings( + total_simulation_time=500, + sample_period_s=0.05, + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], + ) + + # 6) Assemble the payload via the builder (AsyncFlow). + # The builder will validate the final structure on build. + flow = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(server) + .add_edges(e_gen_client, e_client_server, e_server_client) + .add_simulation_settings(settings) + ) + + return flow.build_payload() + + +# ───────────────────────────────────────────────────────────── +# Main entry-point +# ───────────────────────────────────────────────────────────── +def main() -> None: + """ + Build → wire → run the simulation, then print diagnostics. + Mirrors run_from_yaml.py but uses the pybuilder to construct the input. + Also saves a 2x2 plot figure (latency, throughput, server queues, RAM). + """ + env = simpy.Environment() + payload = build_payload_with_pybuilder() + + runner = SimulationRunner(env=env, simulation_input=payload) + results: ResultsAnalyzer = runner.run() + + # Human-friendly diagnostics + print_latency_stats(results) + print_throughput(results) + print_sampled_preview(results) + + # Optional sanity checks (very rough) + run_sanity_checks(runner, results) + + # Save plots (2x2 figure), same layout as in the YAML-based example + try: + from matplotlib import pyplot as plt # noqa: PLC0415 + + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + results.plot_latency_distribution(axes[0, 0]) + results.plot_throughput(axes[0, 1]) + results.plot_server_queues(axes[1, 0]) + results.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + + out_path = Path(__file__).parent / "single_server_pybuilder.png" + fig.savefig(out_path) + print(f"\n🖼️ Plots saved to: {out_path}") + except Exception as exc: # Matplotlib not installed or plotting failed + print(f"\n[plotting skipped] {exc!r}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/src/app/pybuilder/input_builder.py b/src/app/pybuilder/input_builder.py new file mode 100644 index 0000000..223cd32 --- /dev/null +++ b/src/app/pybuilder/input_builder.py @@ -0,0 +1,127 @@ +"""Definition of the input of the simulation through python object""" + +from __future__ import annotations + +from typing import Self + +from app.schemas.full_simulation_input import SimulationPayload +from app.schemas.rqs_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings +from app.schemas.system_topology.full_system_topology import ( + Client, + Edge, + LoadBalancer, + Server, + TopologyGraph, + TopologyNodes, +) + + +class AsyncFlow: + """class with method to create the input for the simulation""" + + def __init__(self) -> None: + """Instance attributes necessary to define the simulation payload""" + self._generator: RqsGeneratorInput | None = None + self._client: Client | None = None + self._servers: list[Server] | None = None + self._edges: list[Edge] | None = None + self._sim_settings: SimulationSettings | None = None + self._load_balancer: LoadBalancer | None = None + + def add_generator(self, rqs_generator: RqsGeneratorInput) -> Self: + """Method to instantiate the generator""" + if not isinstance(rqs_generator, RqsGeneratorInput): + msg = "You must add a RqsGeneratorInput instance" + raise TypeError(msg) + self._generator = rqs_generator + return self + + def add_client(self, client: Client) -> Self: + """Method to instantiate the client""" + if not isinstance(client, Client): + msg = "You must add a Client instance" + raise TypeError(msg) + + self._client = client + return self + + def add_servers(self, *servers: Server) -> Self: + """Method to instantiate the server list""" + if self._servers is None: + self._servers = [] + + for server in servers: + if not isinstance(server, Server): + msg = "All the instances must be of the type Server" + raise TypeError(msg) + self._servers.append(server) + return self + + def add_edges(self, *edges: Edge) -> Self: + """Method to instantiate the list of edges""" + if self._edges is None: + self._edges = [] + + for edge in edges: + if not isinstance(edge, Edge): + msg = "All the instances must be of the type Edge" + raise TypeError(msg) + self._edges.append(edge) + return self + + def add_simulation_settings(self, sim_settings: SimulationSettings) -> Self: + """Method to instantiate the settings for the simulation""" + if not isinstance(sim_settings, SimulationSettings): + msg = "The instance must be of the type SimulationSettings" + raise TypeError(msg) + + self._sim_settings = sim_settings + return self + + def add_load_balancer(self, load_balancer: LoadBalancer) -> Self: + """Method to instantiate a load balancer""" + if not isinstance(load_balancer, LoadBalancer): + msg = "The instance must be of the type LoadBalancer" + raise TypeError(msg) + + self._load_balancer = load_balancer + return self + + def build_payload(self) -> SimulationPayload: + """Method to build the payload for the simulation""" + if self._generator is None: + msg = "The generator input must be instantiated before the simulation" + raise ValueError(msg) + if self._client is None: + msg = "The client input must be instantiated before the simulation" + raise ValueError(msg) + if not self._servers: + msg = "You must instantiate at least one server before the simulation" + raise ValueError(msg) + if not self._edges: + msg = "You must instantiate edges before the simulation" + raise ValueError(msg) + if self._sim_settings is None: + msg = "The simulation settings must be instantiated before the simulation" + raise ValueError(msg) + + nodes = TopologyNodes( + servers=self._servers, + client=self._client, + load_balancer=self._load_balancer, + ) + + graph = TopologyGraph( + nodes = nodes, + edges=self._edges, + ) + + return SimulationPayload.model_validate({ + "rqs_input": self._generator, + "topology_graph": graph, + "sim_settings": self._sim_settings, + }) + + + diff --git a/src/app/schemas/system_topology/full_system_topology.py b/src/app/schemas/system_topology/full_system_topology.py index ddd4c5f..f70b16c 100644 --- a/src/app/schemas/system_topology/full_system_topology.py +++ b/src/app/schemas/system_topology/full_system_topology.py @@ -155,6 +155,10 @@ def unique_ids( ) -> "TopologyNodes": """Check that all id are unique""" ids = [server.id for server in model.servers] + [model.client.id] + + if model.load_balancer is not None: + ids.append(model.load_balancer.id) + counter = Counter(ids) duplicate = [node_id for node_id, value in counter.items() if value > 1] if duplicate: @@ -193,7 +197,6 @@ class Edge(BaseModel): source: str target: str latency: RVConfig - probability: float = Field(1.0, ge=0.0, le=1.0) edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION dropout_rate: float = Field( NetworkParameters.DROPOUT_RATE, @@ -230,7 +233,7 @@ def ensure_latency_is_non_negative( if variance is not None and variance < 0: # Variance can be zero msg = ( f"The variance of the latency of the edge {edge_id}" - "must be positive" + "must be non negative" ) raise ValueError(msg) return v @@ -327,7 +330,7 @@ def edge_refs_valid( @model_validator(mode="after") # type: ignore[arg-type] def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 """ - Check de validity of the load balancer: first we check + Check the validity of the load balancer: first we check if is present in the simulation, second we check if the LB list is a proper subset of the server sets of ids, then we check if edge from LB to the servers are well defined @@ -343,7 +346,7 @@ def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: if missing: msg = (f"Load balancer '{lb.id}'" - "references unknown servers: {sorted(missing)}") + f"references unknown servers: {sorted(missing)}") raise ValueError(msg) # edge are well defined @@ -360,3 +363,29 @@ def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: return model + @model_validator(mode="after") # type: ignore[arg-type] + def no_fanout_except_lb(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + """Ensure only the LB (declared node) can have multiple outgoing edges.""" + lb_id = model.nodes.load_balancer.id if model.nodes.load_balancer else None + + # let us consider only nodes declared in the topology + node_ids: set[str] = {server.id for server in model.nodes.servers} + node_ids.add(model.nodes.client.id) + if lb_id: + node_ids.add(lb_id) + + counts: dict[str, int] = {} + for edge in model.edges: + if edge.source not in node_ids: + continue + counts[edge.source] = counts.get(edge.source, 0) + 1 + + offenders = [src for src, c in counts.items() if c > 1 and src != lb_id] + if offenders: + msg = ( + "Only the load balancer can have multiple outgoing edges. " + f"Offending sources: {offenders}" + ) + raise ValueError(msg) + + return model diff --git a/tests/unit/pybuilder/test_input_builder.py b/tests/unit/pybuilder/test_input_builder.py new file mode 100644 index 0000000..1bdddf8 --- /dev/null +++ b/tests/unit/pybuilder/test_input_builder.py @@ -0,0 +1,280 @@ +""" +Unit tests for the AsyncFlow builder. + +The goal is to verify that: +- The builder enforces types on each `add_*` method. +- Missing components produce clear ValueError exceptions on `build_payload()`. +- A valid, minimal scenario builds a `SimulationPayload` successfully. +- Methods return `self` to support fluent chaining. +- Servers and edges can be added in multiples and preserve order. +""" + +from __future__ import annotations + +import pytest + +from app.pybuilder.input_builder import AsyncFlow +from app.schemas.full_simulation_input import SimulationPayload +from app.schemas.rqs_generator_input import RqsGeneratorInput +from app.schemas.simulation_settings_input import SimulationSettings +from app.schemas.system_topology.endpoint import Endpoint +from app.schemas.system_topology.full_system_topology import Client, Edge, Server + + +# --------------------------------------------------------------------------- # +# Helpers: build minimal, valid components # +# --------------------------------------------------------------------------- # +def make_generator() -> RqsGeneratorInput: + """Return a minimal valid request generator.""" + return RqsGeneratorInput( + id="rqs-1", + avg_active_users={"mean": 10}, + avg_request_per_minute_per_user={"mean": 30}, + user_sampling_window=60, + ) + + +def make_client() -> Client: + """Return a minimal valid client.""" + return Client(id="client-1") + + +def make_endpoint() -> Endpoint: + """Return a minimal endpoint with CPU and IO steps.""" + return Endpoint( + endpoint_name="ep-1", + probability=1.0, + steps=[ + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.001}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.001}}, + ], + ) + + +def make_server(server_id: str = "srv-1") -> Server: + """Return a minimal valid server with 1 core, 2GB RAM, and one endpoint.""" + return Server( + id=server_id, + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[make_endpoint()], + ) + + +def make_edges() -> list[Edge]: + """Return a valid edge triplet for the minimal single-server scenario.""" + e1 = Edge( + id="gen-to-client", + source="rqs-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + e2 = Edge( + id="client-to-server", + source="client-1", + target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + e3 = Edge( + id="server-to-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ) + return [e1, e2, e3] + + +def make_settings() -> SimulationSettings: + """Return minimal simulation settings within validation bounds.""" + return SimulationSettings( + total_simulation_time=5.0, # lower bound is 5 seconds + sample_period_s=0.1, + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], + ) + + +# --------------------------------------------------------------------------- # +# Positive / “happy path” # +# --------------------------------------------------------------------------- # +def test_builder_happy_path_returns_payload() -> None: + """Building a minimal scenario returns a validated SimulationPayload.""" + flow = AsyncFlow() + generator = make_generator() + client = make_client() + server = make_server() + e1, e2, e3 = make_edges() + settings = make_settings() + + payload = ( + flow.add_generator(generator) + .add_client(client) + .add_servers(server) + .add_edges(e1, e2, e3) + .add_simulation_settings(settings) + .build_payload() + ) + + assert isinstance(payload, SimulationPayload) + assert payload.topology_graph.nodes.client.id == client.id + assert len(payload.topology_graph.nodes.servers) == 1 + assert {e.id for e in payload.topology_graph.edges} == { + "gen-to-client", + "client-to-server", + "server-to-client", + } + + +def test_add_methods_return_self_for_chaining() -> None: + """Every add_* method returns `self` to support fluent chaining.""" + flow = AsyncFlow() + ret = ( + flow.add_generator(make_generator()) + .add_client(make_client()) + .add_servers(make_server()) + .add_edges(*make_edges()) + .add_simulation_settings(make_settings()) + ) + assert ret is flow + + +def test_add_servers_accepts_multiple_and_keeps_order() -> None: + """Adding multiple servers keeps insertion order.""" + flow = AsyncFlow().add_generator(make_generator()).add_client(make_client()) + s1 = make_server("srv-1") + s2 = make_server("srv-2") + s3 = make_server("srv-3") + + flow.add_servers(s1, s2).add_servers(s3) + e1, e2, e3 = make_edges() + settings = make_settings() + payload = ( + flow.add_edges(e1, e2, e3) + .add_simulation_settings(settings) + .build_payload() + ) + + ids = [srv.id for srv in payload.topology_graph.nodes.servers] + assert ids == ["srv-1", "srv-2", "srv-3"] + + +# --------------------------------------------------------------------------- # +# Negative cases: missing components # +# --------------------------------------------------------------------------- # +def test_build_without_generator_raises() -> None: + """Building without a generator fails with a clear error.""" + flow = AsyncFlow() + flow.add_client(make_client()) + flow.add_servers(make_server()) + flow.add_edges(*make_edges()) + flow.add_simulation_settings(make_settings()) + + with pytest.raises( + ValueError, + match="The generator input must be instantiated before the simulation", + ): + flow.build_payload() + + +def test_build_without_client_raises() -> None: + """Building without a client fails with a clear error.""" + flow = AsyncFlow() + flow.add_generator(make_generator()) + flow.add_servers(make_server()) + flow.add_edges(*make_edges()) + flow.add_simulation_settings(make_settings()) + + with pytest.raises( + ValueError, + match="The client input must be instantiated before the simulation", + ): + flow.build_payload() + + +def test_build_without_servers_raises() -> None: + """Building without servers fails with a clear error.""" + flow = AsyncFlow() + flow.add_generator(make_generator()) + flow.add_client(make_client()) + flow.add_edges(*make_edges()) + flow.add_simulation_settings(make_settings()) + + with pytest.raises( + ValueError, + match="You must instantiate at least one server before the simulation", + ): + flow.build_payload() + + +def test_build_without_edges_raises() -> None: + """Building without edges fails with a clear error.""" + flow = AsyncFlow() + flow.add_generator(make_generator()) + flow.add_client(make_client()) + flow.add_servers(make_server()) + flow.add_simulation_settings(make_settings()) + + with pytest.raises( + ValueError, + match="You must instantiate edges before the simulation", + ): + flow.build_payload() + + +def test_build_without_settings_raises() -> None: + """Building without settings fails with a clear error.""" + flow = AsyncFlow() + flow.add_generator(make_generator()) + flow.add_client(make_client()) + flow.add_servers(make_server()) + flow.add_edges(*make_edges()) + + with pytest.raises( + ValueError, + match="The simulation settings must be instantiated before the simulation", + ): + flow.build_payload() + + +# --------------------------------------------------------------------------- # +# Negative cases: type enforcement in add_* methods # +# --------------------------------------------------------------------------- # +def test_add_generator_rejects_wrong_type() -> None: + """`add_generator` rejects non-RqsGeneratorInput instances.""" + flow = AsyncFlow() + with pytest.raises(TypeError): + flow.add_generator("not-a-generator") # type: ignore[arg-type] + + +def test_add_client_rejects_wrong_type() -> None: + """`add_client` rejects non-Client instances.""" + flow = AsyncFlow() + with pytest.raises(TypeError): + flow.add_client(1234) # type: ignore[arg-type] + + +def test_add_servers_rejects_wrong_type() -> None: + """`add_servers` rejects any non-Server in the varargs.""" + flow = AsyncFlow() + good = make_server() + with pytest.raises(TypeError): + flow.add_servers(good, "not-a-server") # type: ignore[arg-type] + + +def test_add_edges_rejects_wrong_type() -> None: + """`add_edges` rejects any non-Edge in the varargs.""" + flow = AsyncFlow() + good = make_edges()[0] + with pytest.raises(TypeError): + flow.add_edges(good, 3.14) # type: ignore[arg-type] + + +def test_add_settings_rejects_wrong_type() -> None: + """`add_simulation_settings` rejects non-SimulationSettings instances.""" + flow = AsyncFlow() + with pytest.raises(TypeError): + flow.add_simulation_settings({"total_simulation_time": 1.0}) # type: ignore[arg-type] From 0098453bc847bd2e02a67744e44ed9590dfd3ecd Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Wed, 13 Aug 2025 18:08:40 +0200 Subject: [PATCH 26/35] Refactor/change project name plus docs improvement (#13) * Changed name from fastsim to asyncflow app folder renamed in asyncflow * improved docs --- README.md | 24 +- docs/dev_workflow_guide.md | 185 ++++-- docs/fastsim-docs/metrics_to_measure.md | 6 +- docs/fastsim-docs/requests_generator.md | 4 +- docs/fastsim-docs/runtime_and_resources.md | 10 +- docs/fastsim-docs/simulation_input.md | 350 +++++------ docs/fastsim-docs/simulation_runner.md | 2 +- docs/fastsim_vision.md | 10 +- docs/pybuilder.md | 458 ++++++++++++++ docs/yaml_builder.md | 6 +- examples/data/single_server.yml | 2 +- examples/single_server_pybuilder.png | Bin 164870 -> 163305 bytes examples/single_server_pybuilder.py | 24 +- examples/single_server_yaml.py | 10 +- examples/single_server_yml.png | Bin 158475 -> 160670 bytes examples/your_example.py | 6 +- poetry.lock | 568 ++++++++++-------- pyproject.toml | 6 +- src/{app => asyncflow}/__init__.py | 0 src/{app => asyncflow}/config/__init__.py | 0 src/{app => asyncflow}/config/constants.py | 2 +- .../config/plot_constants.py | 0 src/{app => asyncflow}/metrics/analyzer.py | 12 +- src/{app => asyncflow}/metrics/client.py | 0 src/{app => asyncflow}/metrics/collector.py | 8 +- src/{app => asyncflow}/metrics/edge.py | 2 +- src/{app => asyncflow}/metrics/server.py | 2 +- .../pybuilder/input_builder.py | 8 +- src/{app => asyncflow}/resources/__init__.py | 0 src/{app => asyncflow}/resources/registry.py | 4 +- .../resources/server_containers.py | 4 +- src/{app => asyncflow}/runtime/__init__.py | 0 .../runtime/actors/client.py | 10 +- src/{app => asyncflow}/runtime/actors/edge.py | 14 +- .../runtime/actors/helpers/lb_algorithms.py | 2 +- .../runtime/actors/load_balancer.py | 10 +- .../runtime/actors/rqs_generator.py | 14 +- .../runtime/actors/server.py | 14 +- src/{app => asyncflow}/runtime/rqs_state.py | 2 +- .../runtime/simulation_runner.py | 22 +- .../samplers/common_helpers.py | 4 +- .../samplers/gaussian_poisson.py | 8 +- .../samplers/poisson_poisson.py | 8 +- .../schemas/full_simulation_input.py | 6 +- .../schemas/random_variables_config.py | 2 +- .../schemas/rqs_generator_input.py | 4 +- .../schemas/simulation_settings_input.py | 2 +- .../schemas/system_topology/endpoint.py | 2 +- .../system_topology/full_system_topology.py | 6 +- tests/conftest.py | 12 +- tests/integration/conftest.py | 2 +- tests/integration/minimal/conftest.py | 10 +- tests/integration/minimal/test_minimal.py | 6 +- .../payload/test_payload_invalid.py | 2 +- tests/integration/single_server/conftest.py | 4 +- .../single_server/data/single_server.yml | 2 +- .../single_server/test_single_server.py | 6 +- tests/unit/metrics/test_analyzer.py | 12 +- tests/unit/pybuilder/test_input_builder.py | 12 +- tests/unit/resources/test_registry.py | 8 +- .../unit/resources/test_server_containers.py | 6 +- tests/unit/runtime/actors/test_client.py | 8 +- tests/unit/runtime/actors/test_edge.py | 12 +- .../unit/runtime/actors/test_load_balancer.py | 8 +- .../unit/runtime/actors/test_rqs_generator.py | 14 +- tests/unit/runtime/actors/test_server.py | 17 +- tests/unit/runtime/test_rqs_state.py | 4 +- tests/unit/runtime/test_simulation_runner.py | 10 +- tests/unit/samplers/test_gaussian_poisson.py | 12 +- tests/unit/samplers/test_poisson_poisson.py | 10 +- tests/unit/samplers/test_sampler_helper.py | 6 +- tests/unit/schemas/test_endpoint_input.py | 4 +- .../unit/schemas/test_full_topology_input.py | 8 +- .../schemas/test_requests_generator_input.py | 8 +- 74 files changed, 1300 insertions(+), 746 deletions(-) create mode 100644 docs/pybuilder.md rename src/{app => asyncflow}/__init__.py (100%) rename src/{app => asyncflow}/config/__init__.py (100%) rename src/{app => asyncflow}/config/constants.py (99%) rename src/{app => asyncflow}/config/plot_constants.py (100%) rename src/{app => asyncflow}/metrics/analyzer.py (95%) rename src/{app => asyncflow}/metrics/client.py (100%) rename src/{app => asyncflow}/metrics/collector.py (91%) rename src/{app => asyncflow}/metrics/edge.py (94%) rename src/{app => asyncflow}/metrics/server.py (94%) rename src/{app => asyncflow}/pybuilder/input_builder.py (93%) rename src/{app => asyncflow}/resources/__init__.py (100%) rename src/{app => asyncflow}/resources/registry.py (86%) rename src/{app => asyncflow}/resources/server_containers.py (94%) rename src/{app => asyncflow}/runtime/__init__.py (100%) rename src/{app => asyncflow}/runtime/actors/client.py (89%) rename src/{app => asyncflow}/runtime/actors/edge.py (88%) rename src/{app => asyncflow}/runtime/actors/helpers/lb_algorithms.py (94%) rename src/{app => asyncflow}/runtime/actors/load_balancer.py (86%) rename src/{app => asyncflow}/runtime/actors/rqs_generator.py (88%) rename src/{app => asyncflow}/runtime/actors/server.py (96%) rename src/{app => asyncflow}/runtime/rqs_state.py (95%) rename src/{app => asyncflow}/runtime/simulation_runner.py (93%) rename src/{app => asyncflow}/samplers/common_helpers.py (96%) rename src/{app => asyncflow}/samplers/gaussian_poisson.py (92%) rename src/{app => asyncflow}/samplers/poisson_poisson.py (90%) rename src/{app => asyncflow}/schemas/full_simulation_input.py (55%) rename src/{app => asyncflow}/schemas/random_variables_config.py (95%) rename src/{app => asyncflow}/schemas/rqs_generator_input.py (92%) rename src/{app => asyncflow}/schemas/simulation_settings_input.py (97%) rename src/{app => asyncflow}/schemas/system_topology/endpoint.py (98%) rename src/{app => asyncflow}/schemas/system_topology/full_system_topology.py (98%) diff --git a/README.md b/README.md index 9f88a1b..2005eea 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ -# **FastSim – Event-Loop Aware Simulation for Backend Systems** +# **AsyncFlow – Event-Loop Aware Simulation for Backend Systems** ## **1. Overview** Modern asynchronous Python stacks such as **FastAPI + Uvicorn** deliver impressive performance, yet capacity planning for production workloads often relies on guesswork, costly cloud-based load tests, or late-stage troubleshooting. -**FastSim** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. +**AsyncFlow** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. -FastSim allows you to answer questions such as: +AsyncFlow allows you to answer questions such as: * *What happens to p95 latency if traffic doubles during a peak event?* * *How many cores are required to maintain SLAs at scale?* @@ -37,7 +37,7 @@ Until published, clone the repository and install in editable mode: - Python 3.11+ (recommended 3.12) - Poetry ≥ 1.6 -FastSim uses [Poetry](https://python-poetry.org/) for dependency management. +AsyncFlow uses [Poetry](https://python-poetry.org/) for dependency management. If you do not have Poetry installed, follow these steps. ### 3.1 Install Poetry (official method) @@ -64,8 +64,8 @@ curl -sSL https://install.python-poetry.org | python3 - ```bash # Clone the repository -git clone https://github.com/GioeleB00/Fastsim-Backend.git -cd Fastsim-Backend +git clone https://github.com/GioeleB00/AsyncFlow-Backend.git +cd AsyncFlow-Backend # Configure Poetry to always create a local `.venv` inside the project poetry config virtualenvs.in-project true @@ -171,9 +171,9 @@ from pathlib import Path import simpy import matplotlib.pyplot as plt -from app.config.constants import LatencyKey -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer def print_latency_stats(res: ResultsAnalyzer) -> None: """Print latency statistics returned by the analyzer.""" @@ -229,7 +229,7 @@ you will see the latency stats ## **5. Target Users and Use Cases** -| Audience | Challenge | FastSim Value | +| Audience | Challenge | AsyncFlow Value | | ------------------------ | ------------------------------------------------- | -------------------------------------------------------------------------------- | | Backend Engineers | Sizing services for variable workloads | Model endpoint workflows and resource bottlenecks before deployment | | DevOps / SRE | Balancing cost and SLA | Simulate scaling scenarios to choose optimal capacity | @@ -244,7 +244,7 @@ you will see the latency stats The project follows a standard Python package layout, managed with Poetry. ``` -Fastsim-Backend/ +AsyncFlow-Backend/ ├── examples/ # Examples payloads and datasets ├── scripts/ # Utility scripts (linting, startup) ├── docs/ # Project vision and technical documentation @@ -265,7 +265,7 @@ Fastsim-Backend/ ## **7. Development Workflow** -FastSim uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. +AsyncFlow uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. | Task | Command | Description | | ------------- | --------------------------------- | -------------------------------------- | diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md index c0a9705..8c1974c 100644 --- a/docs/dev_workflow_guide.md +++ b/docs/dev_workflow_guide.md @@ -1,31 +1,23 @@ # **Development Workflow & Architecture Guide** -This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the FastSim project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. +This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the AsyncFlow project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. -## 1. Technology Stack -The project is built upon the following core technologies: +## 1. Repository Layout -- **Backend**: FastAPI -- **Backend Package Manager**: Poetry -- **Frontend**: React + JavaScript -- **Database**: PostgreSQL -- **Caching**: Redis -- **Containerization**: Docker +### 1.1 Backend Service (`AsyncFlow-backend`) -### 2.1 Backend Service (`FastSim-backend`) - -The repository hosts the entire FastAPI backend for FastSim. +The repository hosts the entire FastAPI backend for AsyncFlow. Its job is to expose the REST API, run the discrete-event simulation, talk to the database, and provide metrics. ``` -fastsim-backend/ +AsyncFlow-backend/ ├── example/ # examples of working simulations │ ├── data ├── scripts/ # helper bash scripts (lint, dev-startup, …) │ └── quality-check.sh ├── docs/ # project vision & low-level docs -│ └── fastsim-documentation/ +│ └── AsyncFlow-documentation/ ├── tests/ # unit & integration tests │ ├── unit/ │ └── integration/ @@ -37,15 +29,18 @@ fastsim-backend/ │ ├── runtime/ # simulation core │ │ ├── rqs_state.py # RequestState & Hop │ │ ├── simulation_runner.py # logic to initialize the whole simulation - | └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator - ├── pybuilder/ # Pythonic way to build the simulation payload +│ │ └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator +│ ├── pybuilder/ # Pythonic way to build the simulation payload │ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) │ ├── schemas/ # Pydantic input/output models ├── poetry.lock ├── pyproject.toml └── README.md ``` -### **What each top-level directory in `src/app` does** + +> Note: If your package name under `src/` is `asyncflow/` (instead of `app/`), the structure is identical—only the package folder name changes. + +### What each top-level directory in `src/app` does | Directory | Purpose | | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -56,31 +51,32 @@ fastsim-backend/ | | - **`rqs_state.py`** — Defines `RequestState` and `Hop` for tracking request lifecycle. | | | - **`simulation_runner.py`** — Entry point for initialising and running simulations. | | | - **`actors/`** — SimPy actor classes representing system components (`RqsGenerator`, `Client`, `Server`, `Edge`) and their behaviour. | +| **`pybuilder/`** | Pythonic builder to programmatically construct validated simulation payloads (alternative to YAML). | | **`samplers/`** | Random-variable samplers for stochastic simulation. Supports Poisson, Normal, and mixed distributions for modelling inter-arrival times and service steps. | | **`schemas/`** | Pydantic models for input/output validation and serialisation. Includes scenario definitions, topology graphs, simulation settings, and results payloads. | --- -### **Other Top-Level Directories** +### Other Top-Level Directories | Directory | Purpose | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | **`example/`** | Ready-to-run simulation scenarios and example configurations. Includes `data/` with YAML definitions and scripts to demonstrate engine usage. | | **`scripts/`** | Utility shell scripts for development workflow, linting, formatting, and local startup (`quality-check.sh`, etc.). | -| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`fastsim-documentation/`). | +| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`AsyncFlow-documentation/`). | | **`tests/`** | Automated test suite, split into **unit** and **integration** tests to verify correctness of both individual components and end-to-end scenarios. | --- -## 3. Branching Strategy: Git Flow +## 2. Branching Strategy: Git Flow -To manage code development and releases in a structured manner, we use the **Git Flow** branching model. +To manage code development and releases in a structured manner, we use the **Git Flow** branching model—with an additional **refactor** branch type for non-feature refactoring work. ### Git Flow Workflow Diagram ```mermaid --- -title: Git Flow +title: Git Flow (with refactor/*) --- gitGraph @@ -89,6 +85,7 @@ gitGraph checkout develop commit id: "Setup Project" + %% feature branch branch feature/user-authentication checkout feature/user-authentication commit id: "feat: Add login form" @@ -96,6 +93,15 @@ gitGraph checkout develop merge feature/user-authentication + %% refactor branch (no new features, code cleanup/improvements) + branch refactor/performance-cleanup + checkout refactor/performance-cleanup + commit id: "refactor: simplify hot path" + commit id: "refactor: remove dead code" + checkout develop + merge refactor/performance-cleanup + + %% release branch branch release/v1.0.0 checkout release/v1.0.0 commit id: "fix: Pre-release bug fixes" tag: "v1.0.0" @@ -104,6 +110,7 @@ gitGraph checkout develop merge release/v1.0.0 + %% hotfix branch checkout main branch hotfix/critical-login-bug checkout hotfix/critical-login-bug @@ -122,70 +129,128 @@ This workflow is built upon two long-lived branches and several temporary, suppo #### Main Branches -1. **`main`** - * **Purpose**: This branch contains **production-ready, stable code**. Every commit on `main` represents a new, official release. - * **Rules**: You should **never** commit directly to `main`. It only receives merges from `release/*` and `hotfix/*` branches. Each merge should be tagged with a version number (e.g., `v1.0.0`). +1. **`main`** + **Purpose**: Production-ready, stable code. Every commit on `main` represents an official release. + **Rules**: Never commit directly to `main`. It only receives merges from `release/*` and `hotfix/*`. Each merge should be **tagged** (e.g., `v1.0.0`). -2. **`develop`** - * **Purpose**: This is the main **integration branch** for ongoing development. It contains all completed and tested features that are planned for the next release. - * **Rules**: It's the base for creating new `feature/*` branches. It reflects the most up-to-date state of development. +1. **`develop`** + **Purpose**: The main integration branch for ongoing development. It contains all completed and tested changes planned for the next release. + **Rules**: Base for `feature/*` and `refactor/*` branches. Reflects the most up-to-date development state. #### Supporting Branches -3. **`feature/*`** (e.g., `feature/user-authentication`) - * **Purpose**: To develop a new, specific feature in isolation. - * **Lifecycle**: - 1. Branched off of **`develop`**. - 2. Once development is complete, a **Pull Request (PR)** is opened to merge the changes back into **`develop`**. - 3. After the merge, the `feature/*` branch can be deleted. +3. **`feature/*`** (e.g., `feature/user-authentication`) + **Purpose**: Develop a new, specific feature in isolation. + **Lifecycle**: + + 1. Branched off **`develop`**. + 1. When complete, open a **Pull Request (PR)** back into **`develop`**. + 3. Delete the branch after merge. + +3. **`refactor/*`** (e.g., `refactor/performance-cleanup`) **← new** + **Purpose**: Perform **non-functional code changes** (no new features), such as internal restructurings, performance optimisations, reducing technical debt, renaming, file moves, or dependency hygiene. + **Rules**: -4. **`release/*`** (e.g., `release/v1.2.0`) - * **Purpose**: To prepare for a new production release. This branch is used for final bug fixes, documentation updates, and last-minute testing. It freezes the feature set for the release. - * **Lifecycle**: - 1. Branched off of **`develop`** when it's decided that the next version is feature-complete. - 2. When ready, it is merged into **`main`** (and tagged) and also back into **`develop`** to ensure any fixes made during the release phase are not lost. - 3. After merging, the `release/*` branch can be deleted. + * Must **not** introduce user-visible features or breaking API/DB changes. + * Prefer commit prefix `refactor:`; avoid `feat:`. + * Keep changes scoped and well-described to simplify review. + **Lifecycle**: -5. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) - * **Purpose**: To quickly patch a critical bug discovered in the production version (`main`). - * **Lifecycle**: - 1. Branched off of **`main`** (from the specific version tag). - 2. Once the fix is ready, it is merged into **`main`** (and a new patch version tag is created, e.g., `v1.0.1`). - 3. It is also merged into **`develop`** to ensure the fix is included in future releases. - 4. After merging, the `hotfix/*` branch can be deleted. + 1. Branched off **`develop`**. + 1. Open a **PR** back into **`develop`** (same review gates as features). + 3. Delete the branch after merge. -## 4. Continuous Integration / Continuous Delivery (CI/CD) Pipeline +5. **`release/*`** (e.g., `release/v1.1.0`) + **Purpose**: Prepare a production release—final bug fixes, docs, and last-minute tests. The feature set is frozen here. + **Lifecycle**: + + 1. Branched off **`develop`** when feature-complete. + 1. Merge into **`main`** (tag version) and back into **`develop`**. + 3. Delete after merges. + +6. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) + **Purpose**: Quickly patch a critical bug in production. + **Lifecycle**: + + 1. Branched off **`main`** (from a specific tag). + 1. Merge into **`main`** (tag a patch version, e.g., `v1.0.1`) **and** into **`develop`**. + 3. Delete after merges. + +**When to choose which branch?** + +* **New behavior / endpoints / DB migrations** → `feature/*` +* **Internal code improvements only** → `refactor/*` +* **Release prep** → `release/*` +* **Production emergency** → `hotfix/*` + +--- -A robust CI/CD pipeline guarantees that every change pushed to the repository is automatically validated, packaged, and—when appropriate—promoted to the next environment. -Our pipeline is built with **GitHub Actions** and follows a layered approach that mirrors the Git Flow branching model. +## 3. Continuous Integration / Continuous Delivery (CI/CD) Pipeline -We will start to describe the CI part related to push and PR in the develop branch of the backend service. +A robust CI/CD pipeline guarantees that every change is automatically validated, packaged, and—when appropriate—promoted to the next environment. Our pipeline is built with **GitHub Actions** and mirrors the branching model. -### 4.1 CI for project-backend on `develop` +We start with the CI part related to pushes and PRs in the backend service. -#### 4.1.1 Goals +### 3.1 CI for project-backend on `develop` -* **Fast feedback** – linting, type-checking, and unit tests finish in under a minute for every Pull Request. +#### 3.1.1 Goals + +* **Fast feedback** – linting, type-checking, and unit tests finish quickly for every Pull Request. * **Confidence in integration** – migrations, integration tests, and Docker smoke-tests run on every push to `develop`. -* **Deployment safety** – only artifacts produced from a green pipeline can be released or deployed. -* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI, preventing “works-on-my-machine” surprises. +* **Deployment safety** – only artifacts from a green pipeline can be released/deployed. +* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI. -### 4.1.2 Pipeline Layers +#### 3.1.1 Pipeline Layers * **Quick Suite (PR to `develop`)** *Runs in seconds; no external services or containers.* - * Black, isort, Flake8 + * Black, isort, Flake8 (or Ruff if adopted) * mypy static type-checking * Unit tests only (`pytest -m "not integration"`) * **Full Suite (push to `develop`)** *Runs in a few minutes; includes real services and Docker.* - + * Full test suite, including `@pytest.mark.integration` tests - + * Database migrations (PostgreSQL) against a disposable instance + * Redis available for tests if required + * Build multi-stage Docker image and run a quick smoke test + +### 3.1 CI for `feature/*` and `refactor/*` + +* **On PR to `develop`**: run the **Quick Suite** (lint, type-checking, unit tests). +* **Optional (recommended for large changes)**: allow a manual or scheduled **Full Suite** run for the branch to catch integration issues early. +* **On merge to `develop`**: the **Full Suite** runs (as described above). + +> `refactor/*` branches should maintain **zero behavior change**. If a refactor has the potential to alter behavior (e.g., performance-sensitive code), add targeted tests and consider a manual Full Suite run before merge. + +### 3.3 CI for `release/*` + +* Always run the **Full Suite**. +* Build and publish versioned artifacts/images to the registry with the release tag. +* Prepare release notes and changelog generation. +### 3.3 CI for `hotfix/*` +* Run the **Full Suite** against the hotfix branch. +* Tag the patch release on merge to `main` and propagate the merge back to `develop`. +--- + +## 4. Quality Gates & Conventions + +* **Static Analysis**: mypy (no new type errors). +* **Style**: Black/Flake8/isort or Ruff; no lint violations. +* **Tests**: + + * Unit tests for new logic or refactor touch points. + * Integration tests for cross-layer behavior. +* **Commits**: Conventional commits (`feat:`, `fix:`, `refactor:`, `docs:`, `test:`, `chore:` …). +* **Code Review**: PRs must be reviewed and approved; refactors must include rationale in the PR description (what changed, why safe). +* **Documentation**: Update `README`, `docs/`, and API docs when applicable. + +--- +By following this workflow—now with the **refactor** branch type—you keep feature development cleanly separated from codebase improvements, reduce merge friction, and maintain a predictable, high-quality delivery pipeline. diff --git a/docs/fastsim-docs/metrics_to_measure.md b/docs/fastsim-docs/metrics_to_measure.md index 390f6d9..bcffd33 100644 --- a/docs/fastsim-docs/metrics_to_measure.md +++ b/docs/fastsim-docs/metrics_to_measure.md @@ -1,8 +1,8 @@ -### **FastSim — Simulation Metrics** +### **AsyncFlow — Simulation Metrics** -Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. FastSim provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. +Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. AsyncFlow provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. -To achieve this, FastSim categorizes metrics into three distinct types: +To achieve this, AsyncFlow categorizes metrics into three distinct types: 1. **Sampled Metrics (`SampledMetricName`):** These metrics provide a **time-series view** of the system's state. They are captured at fixed, regular intervals (e.g., every 5 milliseconds). This methodology is ideal for understanding trends and measuring the continuous utilization of finite resources. Think of them as periodic snapshots of your system's health. diff --git a/docs/fastsim-docs/requests_generator.md b/docs/fastsim-docs/requests_generator.md index a15e241..eab8080 100644 --- a/docs/fastsim-docs/requests_generator.md +++ b/docs/fastsim-docs/requests_generator.md @@ -6,7 +6,7 @@ This document describes the design of the **requests generator**, which models a ## Model Inputs and Output -Following the FastSim philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. +Following the AsyncFlow philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. ## **Inputs** @@ -386,4 +386,4 @@ The sampling window length governs how often we re-sample $U$. It should reflect **Key takeaway:** By structuring the generator as -$\Lambda = U\,\lambda_r/60$ with a two-stage Poisson→Exponential sampler, FastSim efficiently reproduces compound Poisson traffic dynamics without any complex CDF inversion. +$\Lambda = U\,\lambda_r/60$ with a two-stage Poisson→Exponential sampler, AsyncFlow efficiently reproduces compound Poisson traffic dynamics without any complex CDF inversion. diff --git a/docs/fastsim-docs/runtime_and_resources.md b/docs/fastsim-docs/runtime_and_resources.md index a5dca9c..32f1611 100644 --- a/docs/fastsim-docs/runtime_and_resources.md +++ b/docs/fastsim-docs/runtime_and_resources.md @@ -1,10 +1,10 @@ Of course. This is an excellent request. A deep dive into the "why" and the real-world analogies is what makes documentation truly valuable. -Here is the comprehensive, detailed documentation for the FastSim Runtime Layer, written in English, incorporating all your requests. +Here is the comprehensive, detailed documentation for the AsyncFlow Runtime Layer, written in English, incorporating all your requests. ----- -# **FastSim — The Runtime Layer Documentation** +# **AsyncFlow — The Runtime Layer Documentation** *(Version July 2025 – Aligned with `app/runtime` and `app/resources`)* @@ -80,7 +80,7 @@ Think of `RequestState` as a request context in a modern microservices architect ## **4 The Resource Layer — Modelling Contention ⚙️** In real infrastructures every machine has a hard ceiling: only *N* CPU cores, only *M* MB of RAM. -FastSim mirrors that physical constraint through the **Resource layer**, which exposes pre-filled SimPy containers that actors must draw from. If a token is not available the coroutine simply blocks — giving you back-pressure “for free”. +AsyncFlow mirrors that physical constraint through the **Resource layer**, which exposes pre-filled SimPy containers that actors must draw from. If a token is not available the coroutine simply blocks — giving you back-pressure “for free”. --- @@ -127,7 +127,7 @@ defensive checks beyond the simple dictionary lookup. | RAM container tokens | **cgroup memory limit** or a pod’s allocatable memory; once exhausted new workloads must wait. | Just like a Kubernetes scheduler won’t place a pod if a node lacks free CPU/RAM, -FastSim won’t let an actor proceed until it obtains the necessary tokens. +AsyncFlow won’t let an actor proceed until it obtains the necessary tokens. ## **5. The Actors: Bringing the System to Life** @@ -448,4 +448,4 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: With these mechanics the `LoadBalancerRuntime` faithfully emulates behaviour of production LBs (NGINX, HAProxy, AWS ALB) while remaining lightweight and -fully deterministic inside the FastSim event loop. +fully deterministic inside the AsyncFlow event loop. diff --git a/docs/fastsim-docs/simulation_input.md b/docs/fastsim-docs/simulation_input.md index ad89247..d5d860c 100644 --- a/docs/fastsim-docs/simulation_input.md +++ b/docs/fastsim-docs/simulation_input.md @@ -1,8 +1,8 @@ -# FastSim — Simulation Input Schema (v2) +# AsyncFlow — Simulation Input Schema (v2) -This document describes the **complete input contract** used by FastSim to run a simulation, the **design rationale** behind it, and the **guarantees** provided by the validation layer. It closes with an **end-to-end example** (YAML) you can drop into the project and run as-is. +This document describes the **complete input contract** used by AsyncFlow to run a simulation, the **design rationale** behind it, and the **validation guarantees** enforced by the Pydantic layer. At the end you’ll find an **end-to-end YAML example** you can run as-is. -The entry point is the Pydantic model: +The entry point is: ```python class SimulationPayload(BaseModel): @@ -14,40 +14,38 @@ class SimulationPayload(BaseModel): Everything the engine needs is captured by these three components: -* **`rqs_input`** — the workload model (how traffic is generated). -* **`topology_graph`** — the system under test, described as a directed graph (nodes & edges). +* **`rqs_input`** — workload model (how traffic is generated). +* **`topology_graph`** — system under test as a directed graph (nodes & edges). * **`sim_settings`** — global simulation controls and which metrics to collect. --- -## Why this shape? (Rationale) +## Rationale -### 1) **Separation of concerns** +### 1) Separation of concerns -* **Workload** (traffic intensity & arrival process) is independent from the **topology** (architecture under test) and from **simulation control** (duration & metrics). -* This lets you reuse the same topology with different workloads, or vice versa, without touching unrelated parts. +* **Workload** (traffic intensity & arrival process) is independent from **topology** (architecture) and **simulation control** (duration & metrics). +* You can reuse the same topology with different workloads (or vice versa) without touching unrelated parts. -### 2) **Validation-first, fail-fast** +### 2) Validation-first, fail-fast -* All inputs are **typed** and **validated** with Pydantic before the engine starts. -* Validation catches type errors, inconsistent references, and illegal combinations (e.g., an I/O step with a CPU metric). -* When a payload parses successfully, the engine can run without defensive checks scattered in runtime code. +* Inputs are **typed** and **validated** before the engine starts. +* Validation catches type errors, dangling references, illegal step definitions, and inconsistent graphs. +* Once a payload parses, the runtime code can remain lean (no defensive checks scattered everywhere). -### 3) **Small-to-large composition** +### 3) Small-to-large composition * The smallest unit is a **`Step`** (one resource-bound operation). -* Steps compose into an **`Endpoint`** (an ordered workflow). +* Steps compose into an **`Endpoint`** (ordered workflow). * Endpoints live on a **`Server`** node with finite resources. * Nodes and **Edges** form a **`TopologyGraph`**. -* A disciplined set of **Enums** (no magic strings) ensure a closed vocabulary. +* A closed set of **Enums** eliminates magic strings. --- -## 1. Workload: `RqsGeneratorInput` +## 1) Workload: `RqsGeneratorInput` -### Purpose - -Defines the traffic generator that produces request arrivals. +**Purpose:** Defines the stochastic traffic generator that produces request arrivals. ```python class RqsGeneratorInput(BaseModel): @@ -55,7 +53,11 @@ class RqsGeneratorInput(BaseModel): type: SystemNodes = SystemNodes.GENERATOR avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig - user_sampling_window: int = Field( ... ) # seconds + user_sampling_window: int = Field( + default=TimeDefaults.USER_SAMPLING_WINDOW, + ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW, + le=TimeDefaults.MAX_USER_SAMPLING_WINDOW, + ) ``` ### Random variables (`RVConfig`) @@ -67,29 +69,24 @@ class RVConfig(BaseModel): variance: float | None = None ``` -#### Validation & guarantees - -* **`mean` is numeric** - `@field_validator("mean", mode="before")` coerces to `float` and rejects non-numeric values. -* **Auto variance** for Normal/LogNormal - `@model_validator(mode="after")` sets `variance = mean` if missing and the distribution is `NORMAL` or `LOG_NORMAL`. -* **Distribution constraints** on workload: +**Validators & guarantees** - * `avg_request_per_minute_per_user` **must be Poisson** (engine currently optimised for Poisson arrivals). - * `avg_active_users` **must be Poisson or Normal**. - * Enforced via `@field_validator(..., mode="after")` with clear error messages. +* `mean` is **numeric** and coerced to `float`. (Non-numeric → `ValueError`.) +* If `distribution ∈ {NORMAL, LOG_NORMAL}` and `variance is None`, then `variance := mean`. +* Workload-specific constraints: -#### Why these constraints? + * `avg_request_per_minute_per_user.distribution` **must be** `POISSON`. + * `avg_active_users.distribution` **must be** `POISSON` or `NORMAL`. +* `user_sampling_window` is an **integer in seconds**, bounded to `[1, 120]`. -* They reflect the current joint-sampling logic in the generator: **Poisson–Poisson** and **Normal–Poisson** are implemented and tested. Additional combos can be enabled later without changing the public contract. +**Why these constraints?** +They match the currently implemented samplers (Poisson–Poisson and Normal–Poisson). --- -## 2. System Graph: `TopologyGraph` - -### Purpose +## 2) System Graph: `TopologyGraph` -Defines the architecture under test as a **directed graph**: nodes are components (client, server, optional load balancer), edges are network links with latency models. +**Purpose:** Describes the architecture as a **directed graph**. Nodes are macro-components (client, server, optional load balancer); edges are network links with latency models. ```python class TopologyGraph(BaseModel): @@ -97,13 +94,15 @@ class TopologyGraph(BaseModel): edges: list[Edge] ``` -### Nodes +### 2.1 Nodes ```python class TopologyNodes(BaseModel): servers: list[Server] client: Client load_balancer: LoadBalancer | None = None + + # also: model_config = ConfigDict(extra="forbid") ``` #### `Client` @@ -112,23 +111,23 @@ class TopologyNodes(BaseModel): class Client(BaseModel): id: str type: SystemNodes = SystemNodes.CLIENT + # validator: type must equal SystemNodes.CLIENT ``` -* **Validator**: `type` must equal `SystemNodes.CLIENT`. - #### `ServerResources` ```python class ServerResources(BaseModel): - cpu_cores: PositiveInt = Field(...) - db_connection_pool: PositiveInt | None = Field(...) - ram_mb: PositiveInt = Field(...) + cpu_cores: PositiveInt = Field(ServerResourcesDefaults.CPU_CORES, + ge=ServerResourcesDefaults.MINIMUM_CPU_CORES) + db_connection_pool: PositiveInt | None = Field(ServerResourcesDefaults.DB_CONNECTION_POOL) + ram_mb: PositiveInt = Field(ServerResourcesDefaults.RAM_MB, + ge=ServerResourcesDefaults.MINIMUM_RAM_MB) ``` -* Maps directly to SimPy containers (CPU tokens, RAM capacity, etc.). -* Bounds enforced via `Field(ge=..., ...)`. +Each attribute maps directly to a SimPy primitive (core tokens, RAM container, optional DB pool). -#### `Step` (the atomic unit) +#### `Step` (atomic unit) ```python class Step(BaseModel): @@ -136,20 +135,15 @@ class Step(BaseModel): step_operation: dict[StepOperation, PositiveFloat | PositiveInt] ``` -**Key validator (coherence):** - -```python -@model_validator(mode="after") -def ensure_coherence_type_operation(cls, model: "Step") -> "Step": - # exactly one operation key, and it must match the step kind -``` +**Coherence validator** -* If `kind` is CPU → the only key must be `CPU_TIME`. -* If `kind` is RAM → only `NECESSARY_RAM`. -* If `kind` is I/O → only `IO_WAITING_TIME`. -* Values must be positive (`PositiveFloat/PositiveInt`). +* `step_operation` must contain **exactly one** key. +* Valid pairings: -This guarantees every step is **unambiguous** and **physically meaningful**. + * CPU step → `{ cpu_time: PositiveFloat }` + * RAM step → `{ necessary_ram: PositiveInt | PositiveFloat }` + * I/O step → `{ io_waiting_time: PositiveFloat }` +* Any mismatch (e.g., RAM step with `cpu_time`) → `ValueError`. #### `Endpoint` @@ -159,11 +153,10 @@ class Endpoint(BaseModel): steps: list[Step] @field_validator("endpoint_name", mode="before") - def name_to_lower(cls, v: str) -> str: - return v.lower() + def name_to_lower(cls, v): return v.lower() ``` -* Canonical lowercase naming avoids duplicates differing only by case. +Canonical lowercase names avoid accidental duplicates by case. #### `Server` @@ -173,10 +166,9 @@ class Server(BaseModel): type: SystemNodes = SystemNodes.SERVER server_resources: ServerResources endpoints: list[Endpoint] + # validator: type must equal SystemNodes.SERVER ``` -* **Validator**: `type` must equal `SystemNodes.SERVER`. - #### `LoadBalancer` (optional) ```python @@ -185,165 +177,153 @@ class LoadBalancer(BaseModel): type: SystemNodes = SystemNodes.LOAD_BALANCER algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN server_covered: set[str] = Field(default_factory=set) + # validator: type must equal SystemNodes.LOAD_BALANCER ``` -### Edges +### 2.2 Edges ```python class Edge(BaseModel): id: str - source: str - target: str + source: str # may be an external entrypoint (e.g., generator id) + target: str # MUST be a declared node id latency: RVConfig - probability: float = Field(1.0, ge=0.0, le=1.0) edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION - dropout_rate: float = Field(...) + dropout_rate: float = Field(NetworkParameters.DROPOUT_RATE, + ge=NetworkParameters.MIN_DROPOUT_RATE, + le=NetworkParameters.MAX_DROPOUT_RATE) + # validator: source != target + # validator on latency: mean > 0, variance >= 0 if provided ``` -#### Validation & guarantees +> **Note:** The former `probability` field has been **removed**. Fan-out is controlled at the **load balancer** via `algorithms` (e.g., round-robin, least-connections). Non-LB nodes are not allowed to have multiple outgoing edges (see graph-level validators below). + +### 2.3 Graph-level validators + +The `TopologyGraph` class performs several global checks: + +1. **Unique edge IDs** + + * Duplicate edge ids → `ValueError`. + +2. **Referential integrity** + + * Every **`target`** must be a declared node (`client`, any `server`, optional `load_balancer`). + * **External IDs** (e.g., generator id) are **allowed only as sources** and **must never appear as a target** anywhere. -* **Latency sanity** - `@field_validator("latency", mode="after")` ensures `mean > 0` and `variance >= 0` (if provided). Error messages mention the **edge id** for clarity. -* **No self-loops** - `@model_validator(mode="after")` rejects `source == target`. -* **Unique edge IDs** - `TopologyGraph.unique_ids` enforces uniqueness across `edges`. -* **Referential integrity** - `TopologyGraph.edge_refs_valid` ensures: +3. **Load balancer integrity (if present)** - * Every `target` is a declared node ID. - * **External sources** (e.g., the generator id) are allowed, but **may not** appear as a `target` anywhere. -* **Load balancer integrity** (if present) - `TopologyGraph.valid_load_balancer` enforces: + * `server_covered ⊆ declared server ids`. + * There must be **an outgoing edge from the LB to every covered server**; missing links → `ValueError`. - * `server_covered ⊆ {server ids}`. - * For every covered server there exists an **outgoing edge from the LB** to that server. +4. **Fan-out restriction** -These checks make the graph **closed**, **consistent**, and **wirable** without surprises at runtime. + * Among **declared nodes**, **only the load balancer** may have **multiple outgoing edges**. + * Edges originating from non-declared external sources (e.g., generator) are ignored by this check. + * Violations list the offending source ids. --- -## 3. Simulation Control: `SimulationSettings` +## 3) Simulation Control: `SimulationSettings` ```python class SimulationSettings(BaseModel): - total_simulation_time: int = Field(..., ge=TimeDefaults.MIN_SIMULATION_TIME) + total_simulation_time: int = Field( + default=TimeDefaults.SIMULATION_TIME, + ge=TimeDefaults.MIN_SIMULATION_TIME, + ) enabled_sample_metrics: set[SampledMetricName] = Field(default_factory=...) enabled_event_metrics: set[EventMetricName] = Field(default_factory=...) - sample_period_s: float = Field(..., ge=SamplePeriods.MINIMUM_TIME, le=SamplePeriods.MAXIMUM_TIME) + sample_period_s: float = Field( + default=SamplePeriods.STANDARD_TIME, + ge=SamplePeriods.MINIMUM_TIME, + le=SamplePeriods.MAXIMUM_TIME, + ) ``` -### What it controls +**What it controls** -* **Clock** — `total_simulation_time` (seconds). -* **Sampling cadence** — `sample_period_s` for time-series metrics. -* **What to collect** — two sets of enums: +* **Clock** — `total_simulation_time` in seconds (default 3600, min 5). +* **Sampling cadence** — `sample_period_s` in seconds (default 0.01; bounds `[0.001, 0.1]`). +* **Metric selection** — default sets include: - * `enabled_sample_metrics`: time-series KPIs (e.g., ready queue length, RAM in use, edge concurrency). - * `enabled_event_metrics`: per-event KPIs (e.g., request clocks/latency). + * Sampled (time-series): `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection`. + * Event (per-request): `rqs_clock`. -### Why Enums matter here +--- -Letting users pass strings like `"ram_in_use"` is error-prone. By using **`SampledMetricName`** and **`EventMetricName`** enums, the settings are **validated upfront**, so the runtime collector knows exactly which lists to allocate and fill. No hidden `KeyError`s halfway through a run. +## 4) Enums & Units (Quick Reference) ---- +**Distributions:** `poisson`, `normal`, `log_normal`, `exponential`, `uniform` +**Node types:** `generator`, `server`, `client`, `load_balancer` (fixed by models) +**Edge types:** `network_connection` +**LB algorithms:** `round_robin`, `least_connection` +**Step kinds:** -## What these validations buy you +* CPU: `initial_parsing`, `cpu_bound_operation` +* RAM: `ram` +* I/O: `io_task_spawn`, `io_llm`, `io_wait`, `io_db`, `io_cache` + **Step operation keys:** `cpu_time`, `io_waiting_time`, `necessary_ram` + **Sampled metrics:** `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection` + **Event metrics:** `rqs_clock` (and `llm_cost` reserved) -* **Type safety** (no accidental strings where enums are expected). -* **Physical realism** (no zero/negative times or RAM). -* **Graph integrity** (no dangling edges or self-loops). -* **Operational clarity** (every step has exactly one effect). -* **Better errors** (validators point to the exact field/entity at fault). +**Units & conventions** -Together, they make the model **predictable** for the simulation engine and **pleasant** to debug. +* **Time:** seconds (`cpu_time`, `io_waiting_time`, latencies, `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **RAM:** megabytes (`ram_mb`, `necessary_ram`) +* **Rates:** requests/minute (`avg_request_per_minute_per_user.mean`) +* **Probabilities:** `[0.0, 1.0]` (`dropout_rate`) +* **IDs:** strings; must be **unique** within their category --- -## End-to-End Example (YAML) - -This is a complete, valid payload you can load with `SimulationRunner.from_yaml(...)`. - -```yaml -# ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator → client → server → client -# ─────────────────────────────────────────────────────────────── - -rqs_input: - id: rqs-1 - # avg_active_users can be POISSON or NORMAL; mean is required. - avg_active_users: - mean: 100 - distribution: poisson - # must be POISSON (engine constraint) - avg_request_per_minute_per_user: - mean: 20 - distribution: poisson - user_sampling_window: 60 # seconds - -topology_graph: - nodes: - client: - id: client-1 - type: client - servers: - - id: srv-1 - type: server - server_resources: - cpu_cores: 1 - ram_mb: 2048 - # db_connection_pool: 50 # optional - endpoints: - - endpoint_name: /predict - steps: - - kind: ram - step_operation: { necessary_ram: 100 } - - kind: initial_parsing # CPU step (enum in your code) - step_operation: { cpu_time: 0.001 } - - kind: io_wait # I/O step - step_operation: { io_waiting_time: 0.100 } - - edges: - - id: gen-to-client - source: rqs-1 # external source OK - target: client-1 - latency: { mean: 0.003, distribution: exponential } - - - id: client-to-server - source: client-1 - target: srv-1 - latency: { mean: 0.003, distribution: exponential } - - - id: server-to-client - source: srv-1 - target: client-1 - latency: { mean: 0.003, distribution: exponential } - -sim_settings: - total_simulation_time: 500 - sample_period_s: 0.05 - enabled_sample_metrics: - - ready_queue_len - - event_loop_io_sleep - - ram_in_use - - edge_concurrent_connection - enabled_event_metrics: - - rqs_clock -``` +## 5) Validation Checklist (What is guaranteed if the payload parses) - Notes: -> - * `kind` uses the **EndpointStep** enums you’ve defined (e.g., `ram`, `initial_parsing`, `io_wait`). - * The coherence validator ensures that each `kind` uses the correct `step_operation` key and **exactly one** entry. - * The **edge** constraints guarantee a clean, connected, and sensible graph. +### Workload (`RqsGeneratorInput`, `RVConfig`) ---- +* `mean` is numeric (`int|float`) and coerced to `float`. +* If `distribution ∈ {NORMAL, LOG_NORMAL}` and `variance is None` → `variance := mean`. +* `avg_request_per_minute_per_user.distribution == POISSON`. +* `avg_active_users.distribution ∈ {POISSON, NORMAL}`. +* `user_sampling_window ∈ [1, 120]` seconds. +* `type` fields default to the correct enum (`generator`) and are strongly typed. + +### Steps & Endpoints + +* `endpoint_name` is normalized to lowercase. +* Each `Step` has **exactly one** `step_operation` key. +* `Step.kind` and `step_operation` key **must match**: + + * CPU ↔ `cpu_time` + * RAM ↔ `necessary_ram` + * I/O ↔ `io_waiting_time` +* All step operation values are strictly **positive**. + +### Nodes + +* `Client.type == client`, `Server.type == server`, `LoadBalancer.type == load_balancer` (enforced). +* `ServerResources` obey lower bounds: `cpu_cores ≥ 1`, `ram_mb ≥ 256`. +* `TopologyNodes` contains **unique ids** across `client`, `servers[]`, and (optional) `load_balancer`. Duplicates → `ValueError`. +* `TopologyNodes` forbids unknown fields (`extra="forbid"`). + +### Edges + +* **No self-loops:** `source != target`. +* **Latency sanity:** `latency.mean > 0`; if `variance` is provided, `variance ≥ 0`. Error messages reference the **edge id**. +* `dropout_rate ∈ [0, 1]`. + +### Graph (`TopologyGraph`) + +* **Edge ids are unique.** +* **Targets** are always **declared node ids**. +* **External ids** (e.g., generator) are allowed only as **sources**; they must **never** appear as **targets**. +* **Load balancer integrity:** + + * `server_covered` is a subset of declared servers. + * Every covered server has a **corresponding edge from the LB** (LB → srv). Missing links → `ValueError`. +* **Fan-out restriction:** among **declared nodes**, only the **LB** can have **multiple outgoing edges**. Offenders are listed. + +If your payload passes validation, the engine can wire and run the simulation deterministically with consistent semantics. -## Summary -* The **payload** is small but expressive: workload, topology, and settings. -* The **validators** are doing real work: they make illegal states unrepresentable. -* The **enums** keep the contract tight and maintainable. -* Together, they let you move fast **without** breaking the simulation engine. -If you extend the engine (new distributions, step kinds, metrics), you can **keep the same contract** and enrich the enums & validators to preserve the same guarantees. diff --git a/docs/fastsim-docs/simulation_runner.md b/docs/fastsim-docs/simulation_runner.md index 8153e13..300b226 100644 --- a/docs/fastsim-docs/simulation_runner.md +++ b/docs/fastsim-docs/simulation_runner.md @@ -3,7 +3,7 @@ ## **Overview** -The `SimulationRunner` is the **orchestrator** of the FastSim engine. +The `SimulationRunner` is the **orchestrator** of the AsyncFlow engine. Its main responsibility is to: 1. **Build** simulation actors from a structured input (`SimulationPayload`). diff --git a/docs/fastsim_vision.md b/docs/fastsim_vision.md index 7119807..bf5b88a 100644 --- a/docs/fastsim_vision.md +++ b/docs/fastsim_vision.md @@ -1,12 +1,12 @@ -## 1 Why FastSim? +## 1 Why AsyncFlow? -FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **FastSim** fills that gap by becoming a **digital twin** of your actual service: +FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **AsyncFlow** fills that gap by becoming a **digital twin** of your actual service: * It **replays** your FastAPI + Uvicorn event-loop behavior in SimPy, generating exactly the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. * It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. * It **outputs** the very metrics you’d scrape in production (p50/p95/p99 latency, ready-queue lag, current & max concurrency, throughput, cost per LLM call), but entirely offline, in seconds. -With FastSim you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. +With AsyncFlow you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. **Outcome:** data-driven capacity planning, early performance tuning, and far fewer “surprises” once you hit production. @@ -26,7 +26,7 @@ With FastSim you can ask *“What happens if traffic doubles on Black Friday?” ## 3 Who benefits & why (detailed) -| Audience | Pain-point solved | FastSim value | +| Audience | Pain-point solved | AsyncFlow value | | ------------------------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Backend engineers** | Unsure if 4 vCPU container survives a marketing spike | Run *what-if* load, tweak CPU cores / pool size, get p95 & max-concurrency before merging. | | **DevOps / SRE** | Guesswork in capacity planning; cost of over-provisioning | Simulate 1 → N replicas, autoscaler thresholds, DB-pool size; pick the cheapest config meeting SLA. | @@ -38,4 +38,4 @@ With FastSim you can ask *“What happens if traffic doubles on Black Friday?” --- -**Bottom-line:** FastSim turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. +**Bottom-line:** AsyncFlow turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. diff --git a/docs/pybuilder.md b/docs/pybuilder.md new file mode 100644 index 0000000..19b7b24 --- /dev/null +++ b/docs/pybuilder.md @@ -0,0 +1,458 @@ +# AsyncFlow – Programmatic Input Guide (pybuilder) + +This guide shows how to **build the full simulation input in Python** using the +`AsyncFlow` builder (the “pybuilder”), with the same precision and validation +guarantees as the YAML flow. You’ll see **all components, valid values, units, +constraints, and how validation is enforced**. + +Under the hood, the builder assembles a single `SimulationPayload`: + +```python +SimulationPayload( + rqs_input=RqsGeneratorInput(...), # traffic generator (workload) + topology_graph=TopologyGraph(...), # system architecture as a graph + sim_settings=SimulationSettings(...), # global settings and metrics +) +``` + +Everything is **validated up front** by Pydantic. If something is inconsistent +(e.g., an edge points to a non-existent node), a clear error is raised +**before** running the simulation. + +--- + +## Quick Start (Minimal Example) + +```python +from __future__ import annotations + +import simpy + +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( + Client, Edge, Server, +) + +# 1) Workload +generator = RqsGeneratorInput( + id="rqs-1", + avg_active_users={"mean": 50, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 30, "distribution": "poisson"}, + user_sampling_window=60, # seconds +) + +# 2) Nodes (client + one server) +client = Client(id="client-1") +endpoint = Endpoint( + endpoint_name="/hello", + probability=1.0, # per-endpoint weight on this server + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], +) +server = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[endpoint], +) + +# 3) Edges (directed, with latency as RV) +edges = [ + Edge( + id="gen-to-client", + source="rqs-1", # external sources allowed + target="client-1", # targets must be declared nodes + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-to-server", + source="client-1", + target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="server-to-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), +] + +# 4) Global settings +settings = SimulationSettings( + total_simulation_time=300, # seconds, min 5 + sample_period_s=0.01, # seconds, [0.001 .. 0.1] + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], +) + +# 5) Build (validates everything) +payload: SimulationPayload = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(server) + .add_edges(*edges) + .add_simulation_settings(settings) + .build_payload() +) + +# 6) Run +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() +``` + +--- + +## 1) Random Variables (`RVConfig`) + +Where a parameter is stochastic (e.g., edge latency, users, RPM), you pass a +dictionary that Pydantic converts into an `RVConfig`: + +```python +{"mean": , "distribution": , "variance": } +``` + +### Supported distributions + +* `"poisson"` +* `"normal"` +* `"log_normal"` +* `"exponential"` +* `"uniform"` + +### Rules & defaults + +* `mean` is **required** and numeric; coerced to `float`. +* If `distribution` is `"normal"` or `"log_normal"` and `variance` is absent, + it defaults to **`variance = mean`**. +* For **edge latency** (see §3.3): **`mean > 0`** and, if provided, + **`variance ≥ 0`**. + +**Units** + +* Time values are **seconds**. +* Rates are **requests per minute** (where noted). + +--- + +## 2) Workload: `RqsGeneratorInput` + +```python +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + +generator = RqsGeneratorInput( + id="rqs-1", + avg_active_users={ + "mean": 100, + "distribution": "poisson", # or "normal" + # "variance": , # optional; auto=mean if "normal" + }, + avg_request_per_minute_per_user={ + "mean": 20, + "distribution": "poisson", # must be poisson in current samplers + }, + user_sampling_window=60, # [1 .. 120] seconds +) +``` + +**Semantics** + +* `avg_active_users`: active users as a random variable (Poisson or Normal). +* `avg_request_per_minute_per_user`: per-user RPM (Poisson). +* `user_sampling_window`: re-sample active users every N seconds. + +--- + +## 3) System Topology (`Client`, `Server`, `LoadBalancer`, `Edge`) + +Represent the system as a **directed graph**: nodes (client, servers, optional +LB) and edges (network links). + +### 3.1 Client + +```python +from asyncflow.schemas.system_topology.full_system_topology import Client + +client = Client(id="client-1") # type is fixed to 'client' +``` + +### 3.2 Server & Endpoints + +```python +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import Server + +endpoint = Endpoint( + endpoint_name="/api", # normalized to lowercase internally + probability=1.0, # endpoint selection weight within the server + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, + {"kind": "cpu_bound_operation", "step_operation": {"cpu_time": 0.004}}, + {"kind": "io_db", "step_operation": {"io_waiting_time": 0.012}}, + ], +) + +server = Server( + id="srv-1", # type fixed to 'server' + server_resources={ + "cpu_cores": 2, # int ≥ 1 + "ram_mb": 2048, # int ≥ 256 + "db_connection_pool": None, # optional future-use + }, + endpoints=[endpoint], +) +``` + +**Step kinds** (enums) + +* **CPU**: `"initial_parsing"`, `"cpu_bound_operation"` +* **RAM**: `"ram"` +* **I/O**: `"io_task_spawn"`, `"io_llm"`, `"io_wait"`, `"io_db"`, `"io_cache"` + +**Operation keys** (enum `StepOperation`) + +* `cpu_time` (seconds, positive) +* `necessary_ram` (MB, positive int/float) +* `io_waiting_time` (seconds, positive) + +**Validation enforced** + +* Each step’s `step_operation` has **exactly one** entry. +* The operation **must match** the step kind. +* All numeric values **> 0**. + +**Runtime semantics (high level)** + +* RAM is reserved before CPU, then released at the end. +* CPU tokens acquired lazily for consecutive CPU steps; released on I/O. +* I/O waits **do not** hold a CPU core. + +### 3.3 Load Balancer (optional) + +```python +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer + +lb = LoadBalancer( + id="lb-1", + algorithms="round_robin", # or "least_connection" + server_covered={"srv-1", "srv-2"}, +) +``` + +**LB validation** + +* `server_covered` must be a subset of declared servers. +* You must define **edges from the LB to each covered server** (see below). + +### 3.4 Edges + +```python +from asyncflow.schemas.system_topology.full_system_topology import Edge + +edge = Edge( + id="client-to-srv1", + source="client-1", # may be external only for sources + target="srv-1", # MUST be a declared node + latency={"mean": 0.003, "distribution": "exponential"}, + probability=1.0, # optional [0..1] + edge_type="network_connection", # current default/only + dropout_rate=0.01, # optional [0..1] +) +``` + +**Semantics** + +* `source`: can be an **external** ID for entry points (e.g., `"rqs-1"`). +* `target`: **must** be a declared node (`client`, `server`, `load_balancer`). +* `latency`: random variable; **`mean > 0`**, `variance ≥ 0` (if provided). +* `probability`: used when a node has multiple outgoing edges (fan-out). + If your code enforces “no fan-out except LB”, do **not** create multiple + outgoing edges from nodes other than the LB. +* `dropout_rate`: per-request/packet drop probability on this link. + +--- + +## 4) Global Settings: `SimulationSettings` + +```python +from asyncflow.schemas.simulation_settings_input import SimulationSettings + +settings = SimulationSettings( + total_simulation_time=600, # seconds, default 3600, min 5 + sample_period_s=0.02, # seconds, [0.001 .. 0.1], default 0.01 + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=[ + "rqs_clock", + # "llm_cost", # optional future accounting + ], +) +``` + +**Notes** + +* Sampled metrics are time-series collected at `sample_period_s`. +* Event metrics are per-event (e.g., per request), not sampled. + +--- + +## 5) Building the Payload with `AsyncFlow` + +```python +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.schemas.full_simulation_input import SimulationPayload + +flow = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(server) # varargs; supports multiple + .add_edges(*edges) # varargs; supports multiple + # .add_load_balancer(lb) # optional + .add_simulation_settings(settings) +) + +payload: SimulationPayload = flow.build_payload() +``` + +**What `build_payload()` validates** + +1. **Presence**: generator, client, ≥1 server, ≥1 edge, settings. +2. **Unique IDs**: servers and edges have unique IDs. +3. **Node types**: fixed enums: `client`, `server`, `load_balancer`. +4. **Edge integrity**: every target is a declared node; external IDs allowed only as sources; no self-loops (`source != target`). +5. **Load balancer sanity**: `server_covered ⊆ declared_servers` and there is an edge from the LB to **each** covered server. +6. **(Optional in your codebase)** “No fan-out except LB” validator: multiple + outgoing edges only allowed for the LB. + +If any rule is violated, a **descriptive `ValueError`** pinpoints the problem. + +--- + +## 6) Running the Simulation + +```python +import simpy +from asyncflow.runtime.simulation_runner import SimulationRunner + +env = simpy.Environment() +runner = SimulationRunner(env=env, simulation_input=payload) +results = runner.run() # blocks until total_simulation_time + +# Access results via the ResultsAnalyzer API: +stats = results.get_latency_stats() +ts, rps = results.get_throughput_series() +sampled = results.get_sampled_metrics() +``` + +You can also plot with the analyzer methods: + +```python +from matplotlib import pyplot as plt # optional +fig, axes = plt.subplots(2, 2, figsize=(12, 8)) +results.plot_latency_distribution(axes[0, 0]) +results.plot_throughput(axes[0, 1]) +results.plot_server_queues(axes[1, 0]) +results.plot_ram_usage(axes[1, 1]) +fig.tight_layout() +fig.savefig("single_server_pybuilder.png") +``` + +--- + +## 7) Builder vs YAML: Field Mapping + +| YAML path | Builder (Python) | +| --------------------------------------------- | ---------------------------------------------------------------- | +| `rqs_input.id` | `RqsGeneratorInput(id=...)` | +| `rqs_input.avg_active_users.*` | `RqsGeneratorInput(avg_active_users={...})` | +| `rqs_input.avg_request_per_minute_per_user.*` | `RqsGeneratorInput(avg_request_per_minute_per_user={...})` | +| `rqs_input.user_sampling_window` | `RqsGeneratorInput(user_sampling_window=...)` | +| `topology_graph.nodes.client.id` | `Client(id=...)` | +| `topology_graph.nodes.servers[*]` | `Server(id=..., server_resources={...}, endpoints=[...])` | +| `endpoint.endpoint_name` | `Endpoint(endpoint_name=...)` | +| `endpoint.steps[*]` | `Endpoint(steps=[{"kind": "...","step_operation": {...}}, ...])` | +| `topology_graph.nodes.load_balancer.*` | `LoadBalancer(id=..., algorithms=..., server_covered={...})` | +| `topology_graph.edges[*]` | `Edge(id=..., source=..., target=..., latency={...}, ...)` | +| `sim_settings.*` | `SimulationSettings(...)` | + +--- + +## 8) Common Pitfalls & How to Avoid Them + +* **Mismatched step operations** + A CPU step must use `cpu_time`; an I/O step must use `io_waiting_time`; a RAM + step must use `necessary_ram`. Exactly **one** key per step. + +* **Edge target must be a declared node** + `source` can be external (e.g., `"rqs-1"`), but **no external ID** may ever + appear as a `target`. + +* **Load balancer coverage without edges** + If the LB covers `[srv-1, srv-2]`, you **must** add edges `lb→srv-1` and + `lb→srv-2`. + +* **Latency RV rules on edges** + `mean` must be **> 0**; if `variance` is present, it must be **≥ 0**. + +* **Fan-out rules** + If your codebase enforces “no fan-out except LB”, do not create multiple + outgoing edges from non-LB nodes. If you do allow it, set `probability` + weights so outgoing probabilities per source sum to \~1.0 (or ensure a single + edge per source). + +* **Sampling too coarse** + Large `sample_period_s` may miss short spikes. Lower it to capture bursts + (at the cost of larger time series). + +--- + +## 9) Enums, Units & Conventions (Cheat Sheet) + +* **Distributions**: `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"`, + `"uniform"` +* **Node types**: fixed internally to: `generator`, `server`, `client`, + `load_balancer` +* **Edge type**: `network_connection` +* **LB algorithms**: `"round_robin"`, `"least_connection"` +* **Step kinds** + CPU: `"initial_parsing"`, `"cpu_bound_operation"` + RAM: `"ram"` + I/O: `"io_task_spawn"`, `"io_llm"`, `"io_wait"`, `"io_db"`, `"io_cache"` +* **Step operation keys**: `cpu_time`, `io_waiting_time`, `necessary_ram` +* **Sampled metrics**: `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, + `edge_concurrent_connection` +* **Event metrics**: `rqs_clock` (and `llm_cost` reserved for future use) + +**Units & ranges** + +* **Time**: seconds (`cpu_time`, `io_waiting_time`, edge latency means/variance, + `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **RAM**: megabytes (`ram_mb`, `necessary_ram`) +* **Rates**: requests/minute (`avg_request_per_minute_per_user.mean`) +* **Probabilities**: `[0.0, 1.0]` (`probability`, `dropout_rate`) +* **Bounds**: `total_simulation_time ≥ 5`, `sample_period_s ∈ [0.001, 0.1]`, + `cpu_cores ≥ 1`, `ram_mb ≥ 256`, numeric step values > 0 + +--- + +With these patterns, you can build any topology that the YAML supports—**fully +programmatically**, with the same strong validation and clear errors on invalid +configurations. diff --git a/docs/yaml_builder.md b/docs/yaml_builder.md index 40f519e..f3d22e3 100644 --- a/docs/yaml_builder.md +++ b/docs/yaml_builder.md @@ -1,6 +1,6 @@ -# FastSim – YAML Input Guide +# AsyncFlow – YAML Input Guide -This guide explains **how to author the simulation YAML** for FastSim, covering every field, valid values, units, constraints, and the validation rules enforced by the Pydantic schemas. +This guide explains **how to author the simulation YAML** for AsyncFlow, covering every field, valid values, units, constraints, and the validation rules enforced by the Pydantic schemas. The YAML you write is parsed into a single model: @@ -264,7 +264,7 @@ sim_settings: ## 5) Graph-level Validation Rules (what’s checked before running) -FastSim validates the entire payload. Key checks include: +AsyncFlow validates the entire payload. Key checks include: 1. **Unique IDs** diff --git a/examples/data/single_server.yml b/examples/data/single_server.yml index c6e2ce6..844b1ad 100644 --- a/examples/data/single_server.yml +++ b/examples/data/single_server.yml @@ -1,5 +1,5 @@ # ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator ➜ client ➜ server ➜ client +# AsyncFlow scenario: generator ➜ client ➜ server ➜ client # ─────────────────────────────────────────────────────────────── # 1. Traffic generator (light load) diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png index e851f7bceebc2d08377411fc450446bef225fc26..fb313450917caa26e06f997aafe30a87ba8ce39d 100644 GIT binary patch literal 163305 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 =paA<^tFC@O+yXabfO?%vjL+NGMha$k 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

DKE7e>? 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�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 TS4^N33bwm)DzXLAM*jZ?CvQaM literal 164870 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%0A3{Qv*hPjplR!)qgL)o{#o;asQKn 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 zÐ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 diff --git a/examples/single_server_pybuilder.py b/examples/single_server_pybuilder.py index 4d8b757..223766f 100644 --- a/examples/single_server_pybuilder.py +++ b/examples/single_server_pybuilder.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Didactic example: build and run a FastSim scenario **without** YAML, +Didactic example: build and run a AsyncFlow scenario **without** YAML, using the 'pybuilder' (AsyncFlow) to assemble the SimulationPayload. Scenario reproduced (same as the previous YAML): @@ -30,26 +30,26 @@ from __future__ import annotations from pathlib import Path -from typing import Dict, Iterable, List, Mapping, Tuple +from typing import Iterable, List, Mapping import numpy as np import simpy -# ── FastSim domain imports ─────────────────────────────────────────────────── -from app.pybuilder.input_builder import AsyncFlow -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import ( +# ── AsyncFlow domain imports ─────────────────────────────────────────────────── +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, Server, ) -from app.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.constants import LatencyKey, SampledMetricName # ───────────────────────────────────────────────────────────── diff --git a/examples/single_server_yaml.py b/examples/single_server_yaml.py index 3057a52..fb20d50 100644 --- a/examples/single_server_yaml.py +++ b/examples/single_server_yaml.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Run a FastSim scenario from a YAML file and print diagnostics. +Run a AsyncFlow scenario from a YAML file and print diagnostics. What it does: - Loads the simulation payload from YAML via `SimulationRunner.from_yaml`. @@ -23,15 +23,15 @@ import matplotlib.pyplot as plt import numpy as np import simpy -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, LatencyKey, StepOperation, ) -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner # ───────────────────────────────────────────────────────────── @@ -233,7 +233,7 @@ def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: # ───────────────────────────────────────────────────────────── def main() -> None: """Entry-point: parse args, run simulation, print/plot, sanity-check.""" - parser = ArgumentParser(description="Run FastSim from YAML and print outputs + sanity checks.") + parser = ArgumentParser(description="Run AsyncFlow from YAML and print outputs + sanity checks.") parser.add_argument( "--yaml", type=Path, diff --git a/examples/single_server_yml.png b/examples/single_server_yml.png index 89cca6d5cd245400ed7fe97b9ff0b33123794647..560a4b3e3eabe2e0b8408c3e322656deb770d7af 100644 GIT binary patch literal 160670 zcmce8Wmr{d^zQ)y2`NEJ8bJ^ckPazDP$U%T1_|lz?k*)nLJ(9!Lb|&|N)$wp6i_-u zKQ-1WOC6h;XOb&4Jv z3tr)!eu57F5pj~ya8j`~b#gUyFhMC8I@wv-I$1q1qIWTIaC~5E!+V*B`!YWVy}6T< zouddBm-U~YxNPfS#-({+E(%A%v6ItuM4<=`k-um!C0;y0p`lPWuS?x?OIt~I^&&Mn z?vki`a)Uk?L;9@6nTQ}|jF@a}IeY`s78MNAUVlc`46`Q$7_ zVBCoaVa)2F=O<-gh>KH9=hB-4h@mO;zhA<)g2-~38L*cAOy$axPk8Ts7I*)3(ryWvzQ>eUfoKKl#XqW8FWb+y<4~Nz zs{irH@|a9Ukh+V3pZ^?J<6d@?3~~3sfUL4I(bm@1At$aBh8S`YT-)DXWVRY`W1j>B z1PnHMdm_gca$JaN>e$BJ-{03LF+fvH6Ur*6znDmCHjvQ~fQeV)x~^BXjEk|>cwp1B z_uxbRxuWV>+zF56S9?E~i(Bl|WHYvxi<^w#v{~8Nx8=MuF2tEIA$NsmcEIYDuf)k= zS(A+QR-ty4;ucdXZR6f7UYfW!mE&UnxqjgTU2j-{ge@K(p1ofE20F>)2!3)U68KH!;C6xqJ66w_z)W*zSa5KR-%JCj?_(8x>Hk<958i z82{)|(5FvYR#S~MnLa<+Dy_#u>g&aVf`j+9#bOgOGh^Sry?usGoLaZmY4cmzK*rTb zc){u0J52AN-{FM@8FO=1@xzU4sODVxWV@{|Hw$&^$f_ni*h2{EVr-j^$l~MUrT6jA z3kV%W>H8j?d;Iuu^}$*lF%8YDgGTw}%M7gDb#%;HuW3Y_ux~IOkzIp2!oY%iR`bPe z?6paEe}ARuRD-80wV2yrayGx{$Sdto*Gcy-Hs+Cn;>HLzmFM)AF1=Yx<(>K<>h#qw zSyau~$%N=-k(#XCJHW znHmqb&VMR@ z5GWH#X4sd?U%gs6e#k*X+>L>WY54Q|w**J7`VDkFpM8_JnG$roX8rBH$J=x>T5@t> z>hm)~1UoxB*m!u`bzA&=eD8|~F8;dfTLa6h<5f(eqT_2~sH$@s{QUgbgoLgIF}>ke zJ%1QXHG1!jHXY}>eSW;Ybmz{U1o4KGV_qCT>pW2y9q?K`9TgeW1Gm6R`sbiRlF+O`en zpqSvauALkom74ZZ)gAbr9JxkO@St;Ql}m;a&}_8gaZS&~N`$l+#8t2L7?W-l|ol#rO1I4mmaIuuRm{hqTZHQtq`4s zeOM{@im1zqq?Q&{c6K%qEp3cpTgVLD*?6%?*9T%A-(MQ+keoXg?73ER8kW!HHK%?f z^(m|~l5TE7$U0A~Js=;Tngi@WyM+e69ZxUM%#E+a@e&aTE_;4{{(a|0C?%T@R+Uz=ubEaVjA+kCzn8qG;Zf?$XZNmNh zwdjO|T~DO~H;#6vdQb?Wh+w z%FJQ=%PA;ytbMNIar&x^6f*QEECbb$3D+ra^U)$2c;{f9tF70MF|&k&{ei3dyF3*G zbE*Yu49v`!hK7d7yHAdHC6Hd0pR}{ybRwSc@F6i3RYcR_JlDqx%j7RVKf6vvtG&{i z+1s3>5Ov|usi)RX}|Z@Dv`F0`&bMN3=|?xFHMDME7q58 zZA=N~7ZljTM%1acLpyiwT=iP*GHGvDN5{>Wz`#Jv0*?Ut_Y8O(0UIQTSoO}!Bds-4 zz9%%Jx~?>zs%&FlWO(3mYFDw5=>lU$sIZrRCMHGz&|y>zJ+UvR=NBm^sK;$Xcg zmW)%YnnOuJ0Y3!)dEnZS*%ylG8%TpaKHO*J;Ao%ih(tq;jg3{$#fTy+%Ar+` z?YBeTuJ5ytxxLWWHkfs7bEA!Lu1|2PeOO5%8W#4H-$qjbwS*7#l-D-?@z2pFMm9E_ z#s2g*&-I2-s5}M<3A*s`@UN2%q8Yx&?nrA*;kQiM=$L~xgNd^GRE{&(8GWtE=O`{d z9_`ssn3DKD2GfnGX6Ro$2F<7*UR&tS7nqr6a+CF>ZEP+hJrsI3&N@B{S|l=6iW+`s zA=OSj~*F7t4+CLg8N)4Gsb20)6BbEc^LOXF|=1BY8)4l`%s|v zsuiif*RQXkjhd4t+LrB|KSH6E6w%S?xP-s0~$-&3>C|%rJi&Ye=a|HUK z8Z?cxIiVO`&((?*I4#ott6SYnXHes%#-Vma)zv97GBP})fOk0A3($yVO-p99B-sh=A@pLZqJ?Ua(V$!^JEpSP+SgRre z%|PPl`@?4ohEY68@$oIFlI_KTf~34xuT01yWgLp0KJ^O@338mGHWjT5o%g-Aw zBH=Z4S1EgOeL^&iXp%kk#kAtQJj0teZ(4o-I^?o70Xrl?#HMDRjO_e*c4|6dhak%6 z8!o+^RUdmgCEAQiO9*I0O2%!QbRCXhP0g?Z{b?k8bav7yjjcMPD3MdoAKhIUYeSVZ zogA&V*1&Eng}*pmf>U0+%R|pX7aaAxcU0?2+fMnxk$*rJVAmswS?-LZnWASbWBW`(iwqD<6q><$<3UkQOh+U+FUo3vYreJS z=T8p-w+(}ld{uU}J9ik|lMd@1zgx72k*5h`Q^Uk0*KQ4#&lIHr8)S7YIy%|}#$M|_ zAfqHS1Iy8(bNziOJb`Eigjc`E*~QEW2>?(dJA0PV>$KAi#aET8+1Ek|thT=NxGbjc z7xkx9a1}NFv~YpG`s?q;wA2sS+`K4`t5wT%dh}~p$wek$IBm(Akguin%Zn@ zFdm?4^jo)Xal5Q&PzyU;?+$ux^I7B!6`!0D&-+Si?b}ZT`b_p=Py|E6rG2GcMV8?` z(~22I#g9uCiK$&_g@(E=EBmarmI@lMO?k+6P)G=FOD!iE9vpNKmJLQQeoajc!TMC4 zD_0D)a6q2Qi|m}7>uya;OBPYo!e`+arH+YS)BdL~bdBo!UWNB5-?@X*Owfg)8q)ccVGG(%|vZ@y|JTELF_;hd2ZNk2brnP2z+5l;WFZ1(TVe6$Q z%&&}<3E54fU>07U5ydh%qD8<@ho?=`kxO`D!iZU(&;cD?_S42j+Vg@oPPY`*S=rcz z%AY%Y*VTQCKsDs9LBBx8&ZNgO=j{}3Ge-6{|wM2CBKP*sfqa@(XA$V`;DAc2Z<`|InN{ z6@SuI_jnVHPANky9QOIUHOjSi6%mIo*sou|Udgy>@t(D(jLvIAO2_$wDgxO=0C>Z$ zS5LtGsBK3biVPFzvdq%gt_?j`I1eL*491SEyL(OBK`gZ}dNb9-TgNeUK6?yHOG_(D z-`?jv{E~8FWWPBpgBnS}zVU1*%V@EvZmks<#Rl{MLO*`TNtns@i|MXQp6>Yh`S~am zV9R`y46m)52y_IT*PN)X7cT6$@Ui2_A*d`uV1MtnqGHI9`J;BTZLEt*8TZmo*W)es zJiN%fNVCI(&{?a%;l`>7g)!WJ{y= zl5e26AK#9cFK;|#jZa7j@HzTv2;HrExu~whYu_O#D9G)?!F@eFTGVRk5W>ZPt4(?D z(m*+EKntInIyn|ZHsXC#((ajI211@6={r)d=@5bHoWB&~Inr+RMz5!h&pCk{J z{*NCu`siL#d#jTVL;snP)w_EA#tkDFArx0V_yPh0H^58tSf@meX|Y2(Uxe3uw&F8!lM@Eu9F^ zj1~VW=g?SKcza8#_{R#6LevNsQNP#BAfvD_C8!4y68fraosO{VGefd;GKPi>YDGHX zI3z4z32^f}p!E{~<^W!1nPfTkni<*X2vB)hT-=p&^Wny9Bo_iw5k}~iNdxWGsKWXC z*E@F97cqPnr*y>y5`EZQZdCTCi?a6zN*wQ9t5!sGmcC$k#Tdxiw2-1vF!Ra8@Ig&) zvih6uWt$|um^r({J^P#QD8(aRS2fY0nm?%PM+XF;>zX7s7I;PgotY~e5HCBptf#Du zdN%Yj^-(B2wgbZj>?R(sJ-ag$+^9%$t{c|YoU^mD-0(_0RFDgu`7c&IvktJy7-lOh z^NTM(BhIm}tihU+&8lzK10{87y8qc_+`7A`rvJq3M*REYVg|a+E@!WVu+~Bc; zj(Y#$16s)?`Mm?N;GX-h514H~FIG>tr*3q66Klw@u9apoWzii zYV&Y=U|iF`$D{#vmjMtj+etA5fDOM;a{cM@x`y=Jci5|W zl9Cek{{21B9d2)VKLA<*joxp3s}UG_>r@mE!ql+|2s*ptnbH$T?2hYtr&|K!lanuc z={pA<*46U9fB#;tF*0m_CX^2KG4%LjgQuX!_pkmhU$VZ)kReJYxeqdg&lg0%&_DU9 z?giMz4MyTdzv#L_cN_zPd`wMC9Zz#%PP1jzwDA+L#xkZZKu|{CqIsHW!V^QT9Ohr-4Fs_@6pmV$^|Kr-2J4 z5f&5ES+@?W6NX)GHFoyYX@cu_@18{{6LLd=e>Y#QE z559;hA#t*=#GzA7grEl&h18(ILFJWC6?nkk+`i=|2fc=gDg$eSfS9je&0(lY?K)CX zQ6aq#B?%ir5#}H)g#m21Up)tCf#swG2nOw4U30a|Mc3+FR_y?aA@?|i+c1Dgv_QYf z2jvIKPbR`-pqs^KWL)+Vc1nVMIN>y`0E`2$X3iyoubC zql4WpxKBa)Mjb*-<0?v5gF&N22kOw)Mko;ly&U28tgNifa81_aOhJeon|h_pw67KE zW3X1|0r}m4F;(KRV{y3E%cW88R=Ocf2MP(I!MK6C0UIeUEiDQltzww{rG=B@^%J}8 zK0)My+K}ahE-(um=7xnu{%owD2M+KYH8nCsL4kWS8%pQXygTI^3kaGD*3Vf>@%W$x zIk!^duGafk4BtFr%O7akUwBe#HzRE|Sx;%)88yUQ29>U7VPRnhd)#R7sT8sf(Bto@ zsf8dKf_9Zn2W)x!KK@bc`94!#0o%zafb+_`yx6m^+m*%$ab{opEA`a@6{)i%iwtJI zc(Dvx^2p#|GlelQN#hlO4Mv-rn;b$yDHXO;8K0r75R#SPxw}3!01`nbNFy51zs3OB zj>*z_x1&nnmh|u5Uo>2gfj7#MuZ|M}i%O&ifr0FD0-s10LUI z>2T^cx^m?T1**fBz0|je#Ce(PbX+q#xAgo zB~a@lwa%6TAPpy_r(5r4=zH&+JJoF3mzw*D%wey5_^@eX!)^pba{>3Q`;|~FrllGy zYw=Y*P)J=N1T>fG9UUC5cph$cX##@#(g<+zHS9FrXG5&+N+>J9&JkN^2EdtHd8S-I z5MKeI!35A*A>e4MwTYS);O_~ZmKGKtL2T**MyzrDIz}C+rW*G4rMl@_ui2vKfQXbr zOHGuKl`ShN;T8aac1Msc!M8H}@P7Zr{tn9_?;>Z2%#j!6v4>dsmwESGlUkCF^Q%^5rc5xC^!ybf2 zkx@~-xvQcwmdbDW5q@$E2Br1IMUa&(b~*OV_CamY=uP4rgNpu$+*{;8Ag=Xxcb6Po zex}|J8q|-$YlNi$%C7{rJpI&f4OR30FPfOtGP53lJP#ci9q0>en7SN0dqNT4) zHPL~ZcQuJab2gD9`nS83F%2g}0je~j>wuC71x4ouA`LMe-TFQ1my+$~e2iRN15-wF zz;5c&TjS`lO@7%*GbU@*a|8&?M9LSV~Rp9~dTo26- z#HXDqHw-DAPUSQIo0XMC@qaSA;3qD(+Ee#~(*ffKxBE5%xRNQOcz{+i^6(IYNkRMd z%y*gyWT`GIO&lFx$K@aw_WZ#i;~M%taPsXePxL!EQ-RP8@=ElZTrU|ClV2K9!koD(v~0zeeT; zo~CI)54xdfYrchHL|74NUb+4^FI zgSDazgSZVvnlx%;CY84y#299Z+b5V^Bgs>O-83|xw@#BJyt#!zCnt^66Nc1Y!tAY` zzH;_?>;UD^h4Vu?^dN@+v*KR2bgrk!_7Y=c5&SyDUq9CCjb9GMh3mmBPaQs^EM3ZB zO&Uof>8ar~9byuv#~aMz91C-9wnu00-{2$f4u(zi`=FUdSE%CRGXmgZSBo~EtVDe$ zO^LG5wh7p{dT{HE+c$k}<$HH7rpbrlUc2Fe`|d8uA?ss-*?m*gg_em2jl>E#umAYU zt&2IiEC%1cH@Ym&J!>s-@|f~d!zN0mTlSR*jU_zK{DvJ=`r?k2`I_!G?B5^W|2e&= z?e*xrLL6M>qyJpxVSv~0VaHo3ia641N%Yqx4QD9yG%H@#bq6d~q!*W#mYRbdjG%3p-1~Qo;9%>} z?tX)T8};4dI!PeMzX<{Vr%&ktXE5Zo>r?W*R=i?VW$)RE2hNd3Q?O~oB2yN1{fw-8Jodf?yy#lgVe z16Sc*uQ-^n@C5=`zj!@(zy{t%2=p;f5$75Y)~*44&v^?Z)*jSjCJv4>G@>r;AX3c+ zS26smb#pC{DKX%H)w2=oh{KR3;*5(b@!YjZ=`#gc@)oP-&Ik2pFvozVZYEbl6^IAB zl3@6KRLeSB)$+DtKjO~oJ;%qE+db)V^b_>cI@mC#hrmull?LPODwlj=xbbn z*+7iI5OlHM4mdFBR&WJ3fu=FQKx9`dl=Sw#iXcu5a*;_4y3-MvM5u7)7U6Vz>kRt8ROb?@u^`1JJEO%a@~>e01I&YoK5 z9ez9p4)&TrLpIEXt}*6^@UETOx$A8SuBpFXkw9Pq8>el}1DIF#vuBv|=TL}D4Z;K%%gtaf27mx? zhDHR^I1JK{0reRTWy@5%Z8Cy?Y^`2=(dTNt4qtZ`%K&G0hIv76?&niD7LLfQrhEC> zTj^-ey3nLxilQAI`m|@Ep7eR8@`L&`{MIRuX?Gu)_mNR8A4^TFb?@V#26=dB z=el;$Q0-)ojK<=ps7H7ge){`VHP0^Utm`%K98-D5K9@w6ZNs!~+k;g7fdg(KL>3rW zS+M~zmCWvBXETC^c(WgP1p^Dq4Q^YmOP8eY-c8844Qw{Z@)jEy3Q;r_(?x;- zEf$O*{xZ;!y6u*h7QL}Jw*uq}D@1qFeas6FPCx9a3??ANIs4PVZd3?HT-M8aH6DT_ zw2`Rbz`D+xv*!C$EVr(jUwORJ85e8}O+I4wjaIu%kRdc*{dr6{1fFeqUEK~p8|Daz z#Yp1d%fdpd!N%%^t@h&3rn`#v9G@+iAQAR#Uz zBL?)fIS}i+ySx2*?zhsoP9Q=IVz0Y>ACe^|Aqj+zgzORuF*j~3e5x`<5 zL}cVpp323Uv<{;diQ`Q|4!wGci;8KIUS4AGE#_TFjXW(czsGGG8ynjNjsAkko-sd( z+dsF;nQVabO@`Hrg~>I4?24N8EP-7@0C!ze){{C12M_~kN3J9x;Vh!bUkf?Y0&RN; z$OEeRylp+=QiDGJtf+_p_*e%B@3s>13V`WFFMk*()yR^%(Nj_W9)lx&l3dB#8)cGg zRkW~)mV4SPEbe3x6VvbVI}>SaXc4j*6z9k$OaJiKf089eEP_kDi+E+3E@ zK@u7$ZZORrB_A=#Zpu4!1K;g2t@K8vRVo%$|WJ5V02cd&noB z0?R&kVFx&3{dT{o8yEs!7l@^Zt{d3*yv6ZlcgM`lWqCUCb|(I01rz1Pzg_m10f;dVU)n7E(xrHHy-et!FLK>Kw|zgm!S7{P==C<>w_e3_p& z1UC`n2SKmh?B8b(|GxfE+R8uIwC_GCn>*IUu1iUqRC>XBYV+3b-kLqG4%B^ z&1@x**(%EKQJVz~#%0mS$f(3&{#M@su-afS_C(le{~X8uF{7FRkIV~E6Tt>a7Jy05 z=CNC~DQL)l&){FEQ#!lZ!Xoujw+{CC6S_Fkz@V4hs=Yj?3dgWdU+8et77G}>F#QK< z01lFl`R}&gXBP5swhr8Ig%w#kFSH`=euq(o{#lL_FC~7roKg!?ZKHc5eR4{h7TWAP zoKoHYO(_x&-k(3m=xE(|;iKDMIzU4CBavcbXELyL^SMNX{Z5&LoRJ~(^%&2$8bK;f?n|D&k^g2f z+fA;k=`omc4OFN!k|vHC{n*lhJu8cnR~=AW9-plT?@S%<1`QQ> z%ky#mH=&7fK@{&6bCHPyMPcbnC^rw)kn9K%N&dGrB4{r>aOnNNf4A0bKx;~`|0lD^44B7xf%8xy`z~Co$4x2m14bE%jtyQJO}!R zjHreVwGWmFEjJdrOt)0R5sy zxI9|S)jOx9_Rt>=`9YKIu&keDV!GN<(9)@J<5UKvZ$;5-2R3wTi}0NX8A*L(&N50< zic78T6}I8e|1yN@Bn-e60SYqv$C6|tpg90KVCDxYqQ(pVRLSAV!i{PHdO@0`Rbe@QfY8gw_85qu*G zKcMHply@v>FlLn8n6VdSnG5!M95CZ#q!>uee;S12Wu0Dn<{Z4i{GYRVQGM4t@MTrn zMdY$u>+1RU?y$Gtg zxNYygc{^M8?}>aW$F;8^;Dit1@pLcJRbKpOG8fiMS1nzar2(toWwD467=kH~7P;mqx` zr{rVIJMwX$*HW$Q^1wWr=D*SP>m<_k-&Tgi-{kgb#0^#A ze;v)OkQH!(o3hG5*UpU!p05Bvxb&ketd}GlGbwY{-~pST)#V_#Irxh+^lL`#AMl}W z^RmN6GJ8+`EfW%H>gG?Xf|ml#^?TgS$+dOz8r_|8sinGS#JGQaPLg5@x%V*4pLu^= zPr$W(XYt9qpN{U5f7BRrX}++-mpb^Z9F>t9kC^2_w3(Aue8hw;Jey@vy4Qm)Pu;HT zqR=hP8vbzpR92egEc&+xcpMUq?5`w}Pya0wmLQFpFX4TqF9bfGN-&BeI)}yof&u1a zGt{Hof`7Y7D06c_b%CY@d0 zqb$?#pP$9L$Nn(2ASDXxe$ER6m`N1$6^b*0iBM;tqLuur=$`aYJKX-hQZ8Codt$>P zOv=$P24)Qd`^hqgyRDCRjV}3m&ej~aKi+vEJRM&;f$?X;8g@aLFA4;9q=AnH6Q z1IVO)tamTVnE+=o7I5+?;aR=LFx?kA{7*O3xL5uGjz}v-O9a{IpH>P}`jhTO?5km2 z)`1V_)E-PQhjr%qP+Ix+GEWyj(0t%dWj58TvRQ*}PrJQ5P&RcKv#sjfy6;B*Q#fw( zy@pN1A6<_D;iqov4ZDLtH0vxO33}boFl%ESVj-J>LCJ#nX$L$d^^f~Fq0q)Ns2QkZ z6&{3IE5#7~k|*+QJj%9kuU^6%swaw7HS2u!sha(_hNT!S`aCPmC_-w&S$&nSs6M$p zcu;1Hy3g1*0Scec>^pf(=Ho$K4d2vL8PvTB#D9tlT~$>zMZlU$d~f0}-+}76fmQy?>IZreO)=N5yI5zJX28ea2&atZ*K&&GyHdfZdLj;NXKyS?#y|SR$peIe!U~ZnVX`gF>p98~SsuYafH(wDq5S z^0|AjYv76CoB`hM{kt}gvzHjIM^r2hW3d7kVln&I^k$3t1c)NE;y$ElAuF3VwDXffS2i)&yh# zlr=QMAWjDA8sb(VX*o#1;57g2odRWp8^U4;UHX-JYuMET70-C2P*dDn|JPgzlbnXA zK#HI(EhrzvWY5zSZXI6DgU4v(|q2i|muU@Wh7L&#%u~?V(D+XbIyn z?sR*9G-xFNPfeVECL4Rh&aR|u3IF)PV1~qBaxsxtw@83(h>aP zp+iGAvq7sAE!y~bytCret$yw0nCOmb`=ib7A1j@60u&OB5{lMjJ?@{0aw>Q03n~iM z6J4L97t?$sK*=>SQqFbhu(36<`r=(4(SGIC8B4cbx+oH$&(%KQ>|B_6uyes~g$VW3 zw#kRW-8pT|^Ax52tE@>KV>fmybsQngk!t%nZkq|A4ol#7E?UiC0iH*~ZooDNK_;LU zb0gB!)P%r3`On=dEL%^o^|^fx-H@l7`uOACf2vLBh1(MY1A8Vf@L9b2! z=b0~^BxFZ*baZ?juPV0dH!3v%8_f+I=R4}^ryt(@*}LBCe+mr+{8&}h0HVO~oX7h$ zFIZ}IfvL%S!Kd6Gf3}$O)qHP!PCqWtY~b*UfM?5vyp92Kxu9Vg|5bAMeH4L*VYxrP@yXuNqc0=8vHK21{l@!_=`_n9b_4{K)JMA|+lP(Eh$l6SCth)Z-q(LuPY(%Q zL6id}`F|<(Wg9i$Rcg02Cpccpdj8zZhti__&BUYehP)x_P7js9-+o($$LB_|M_SBNPnG{P~(bmzY*_PO)&L@5nP$sTwKzrBdWWpgRlUj~m zP+3U^4*z9dpqAxcI{qx8sX-fa?4T0>gPGlTlWt`p05-i zzd`xRPm3tje13B2{lXu|(YLCmj)xjO9vsq~=g)8TS3oKUyba{J63|T%*#L=5!7Cq| zd?k*-pD>08TE2cLNY2cuEIra_OW=2CIC^y+caz~Kt((ao-GNh^_tC@(C5&(umx-;!XPA$q@EFl7qSJLZ+QpywD|z< z%w}=zj@8`zs}xjedgqa|`{;c3b4W|(ETMY8d|O^Ya(P2c=Vkuxo@4kzv|FJ_ft!N7 zLNos7e){EIN0c9^1r9w+H}cbr&a$)URdJNQb1;lCoj-?&54x6GS{CR+F*7ZRo+woB z+7VvS@+Y;OhMYH+FJwsM;MjL$ILQioP8(Pch>Cw)^9a72J)$ON!f$%>iSTfx|1Eg; zjTh}q`wuKj4m^vN1I$?XY77+Ig^r;%fAu)B}tM(>PGr8 zm|76p=<=cz&WM^Ce020-nM1+#F5kS1ZT^46*2B*W$@0GNXv;wB6tX@LN;|q31+~rK zXzep++CHh;iK2J37KgJCe8RPB8ZRGJa9%lY{GsO-t09@D0h_9C-sJ3l=-EEnO$}>h zI~C_3p~m6qFB;?~L~L;;UG+vOHHQAoy2CjyUp=^8{^KZDzA&&tQ5)xLRBPW?{~u1L zUsWbNtP!ANDzaI08ppb1v|nUCd}VrmhxA653_6~kyECLQAVW`FTKX>h%3rCnwFY!G z|2ZLs!LN|sD>dmQyLlJ^vkx-t3Paxin622iK~lL?8@=&|mxyN7M~SMj-r9BV2v*L~ zQFhqLXTcftD{;wjOoN^mk!c-W5RxFMG3oT8FFHe;I@{;YC#W_)Ek zjihgTyLEa!V}l0G%pZ_tFpNChF3|1~uLYF4xVSh!l0qKyn$1FDBN$Aoi5f>9lQ*OnSXj_e&jH$i1@lYWhKD;Kk{HS?pEMmUIJwa) zdKyPNV7Q2RsWngEf;9 zE6NWKuW)FTpe#oU(NIW!&|wNJv7ni@&{HTi2=gPZ=9lhxZmQ@MG50HzUfT*;R`>3a zLa@mXV&6|8aA!XJ93P1xzfI-ut>cp2ON0$eQ!AO_<{l86^Gld)B>}_0y2K z`6Tblk1sdd-(afiG+;~P*v4vK<(50AcGe_uTAKCJ`j-pNCJH3WVKfzyqHEFqA!W-R zixl2Hqp8D-GLB3zXxc&vN7KG|koiFzuTZDvZrSZ(y#^%w{bK&Nu}6;{3I@F#cg|A}#li_U0ekV=f7PJ}5`QoM(#99T!J^Ur0>9xx!e!?nJ4l>)ZX!X~RgK%(jlm zMnW%Qwd)m+Np>4oECzOv=RX4K=jz6M-5|S_H`V-Z&11LLfXw=LjCD0TjP$A3K4()I zZ)Ol}l1rJ}nQbSC;V7A|b?76IU{`Fnp8u)}DGZ{s_wQM2%Vv^W7{42Wle^4xq&kfE zuaQk;1WAL9kw=qZ1o0WMvAC9J*@n_(s8yEA(jK~uoc0pggQosLBz;@E+CeIC(YI8oIhv*;gBNBT{cN?}hb_GI%%gA0T5`^4{t-&~+&h1mhekD4 zzI7=JVL=48)buS}yA_cR{XS4OYI}B{V$XHVC3)@yVE=es& zvEEVJ+?>3iiLL9^|MiiZ>L~XB9Sfe}aHcJc@;-5E%y+5Y!3h=2KubBV-EQ3k zEicbU?}S3wsn8_|RBYf{XgYy7{Xeve_)De@P_9P|$;Z{jYtB_jgp}Pp|h`*{tO}wYB)R zj59EM`{cAVk!#G&wx@!8rr3%7T%#G!syHF5b7z#^fx#&ySb5)e{`DtJbi>Ea&(qOM zebk9}%Ptz#@t^yH#_}rEGW!W z*6~=pxC^}(Wf{Uz;j}Spo&UnP>Wo~3lqGo?etxgK4gvCo^u3g#{pASEq>H5E4tOl{ z6dIL|MT*6+bFtsq1(FTem$jqI*Xcbt!*%rLvJB<**?o2|8VS>KWgR?c0!&%scbi(v zG(x}PZ@-wgLb54QzsxzjE{Nh_Os!oFe8~JE)r2ND@bnk|v>gdi5T~yNC-;~)zd8~z zSI@WSvfuw5&dGLD5Wj-X7$%z1em2UL;eLXUW>L?BD^x_}#QAKeCAye3v4x*sHA_6X z*Pewg|DIjA>k)6P$N5)0ZOk`{MoUPh?11xecZ@4w(IR zM2zTXv=5vm!LrC-vZAE;t;J+N_P=9GCY@_`@#{;83hzg=`(HN<-V55j%&TJ6yNHbn z!zDzvox^1jF^ZekT8z8*C{fL`-S6ellsNFTF1sD-ob}wVeP$YojfZs)Jxn&Tka}50 z?eTa_T9fQ9Rn2Gc0;qlC-KV?OkAxIi5-iwYTdlqeOw`@<%kLx}eM5@Bl)TT- z{Ws9{BBNHXr*AX&X5Po6x8`E}YZeM)VZG!&Z+jBeQFf)B9OtXVNpA;oVr~C{aW&0T|E^up?tP)n!Vw-F#4dS zl;MQhqOY>AKuyGrXBPk2JJUPMV}~^${^XBnz}ESm-^u%D!eoPJ_GyLEjarNEILu;OeVKZ^`PKSIk>UU+{S zI+(~Kg`zJG9Tu-DOJB8KE4-5s6`lS{Krz*0f;IAf)czeJxhY|X)m#&&Xbk;zBs zk|x%H!_JNb93|hy>#AQXZq_GYl37mt9DRIbEPM?^z@v*gwuz%e=&{4C#x)J0ff^!# zujOh^EYEdnx~~q$TTx*dC>9dO^!Ci#GRax#kL|v?r~Rt2SKn`l-5{U*5Fhz)(yYMbrphO`?Ezx#AtH>}NuI7bq@To{ zHc!^p;MYiT@~L4ki@P~B;bMvtW@Xqrw-AGwbj;ssFD#0ggojHxsr5=GOx53nZ;MQ$ zPo<_U{?9L5;nPhWcisDqB8Cq?NHFqY&qSXWFe9?9O%!m8$*}h0FVj5fZ0>PbO5`Y^ z%G6ZC<&Z|ZYJ8cmyVBda1HG5T!g|wchN4UbC1{s+uV%Wl%*~RKf6x7;8UA!HOO-Wq znqv;@yIOIu-tKS)s1|PzoR1@&Qx@2#`f_XHl9YdkwgF}NISqv)L4r-s|C|?3>Nw#l z%QH04lTq&lC);W(oO`lwriQ=uF!+;2EGc_RI-scRBjB3`aWfnvj>e{GuZqvS)}Z*u z`ZN2u^p_@>S~?G<4e?IawTIyOdR`H#;^lrkkM}U|rTCQ3S>L2jv+wMqzR_lGIcOEL zW`xEhq3ktFo%0hYW_O2DZ@}jZ{&?5l+*M2*GpSz``9;X`$to*r2jqiRSXn=$4U@&p z#7bM|N{9*|f2)WGM@@W?Qo#x^E^7?>Jn+D+EkZX9fusL%?=4c_AXC(d`A!A_!QKbuEjpm_pA#gfAfc= z)S;dOUg1JL3v89&j{Xn_QGrbALwOmXew9~+r8lXJZ+AD&pP5xyf}R6;4$G>Wh#r2R zjk~cDwANa45US@7;(44^0OF_*CLd7SZ0*Tfu$82#iUAGHeMYwp>$L@pCpBu#nk1+;DE3B-JO zlt0ADnu*$%$1yIa@IB_cMw`y>ng*K1?Bv{3^sL3--zwEO56%_rE~gG_?fClo6>Dp{ z$Uc*OWwYt*%jnEdo^HEl$@mux__uQwJr35qlBZ#07ge($&HAa)T1=y``tjTV=iy|f zlv0eP$)dpC6v+);dmp#pYw01aeUwLuzq>V?=fbB$(>W1GVZ$p_ImTIcHZQ29?De6` ze|H_r^{84x46dJ8iq6ypLyYYg9*54RIFiL&E9t51qf4V^XJdEve_z?`kdmuBUq57E zXW_GSN2hmvNJZjl8u15WE$8h$PisR56-gc1|8d4*)m!tZt{hy32D00;NAjw=ffmA8 zay~uD1w%ff?!+cLKMS??WG`X5RrTaHO+gd2sN-n8bO1>2v-4U1K+T-sg>yw`tJu^z zN+!sA+3=YAJPc?uGZ)kB#%20A?iir4M6U$D+jIRfnvNq`Tsg@tBq*`d$xAXd_tGcB zG4YK_d1pXI?NLLe25INadas!{dM!Zx-1v|8z~c*1<-(Z8xA|G z`wM5JzXox1Tsp6!-b?Hs_~BBQ%iCDX(syr|@i++0OT-!~(?~JBT+cZMvOcFVPAx6V zk@~c%e`7Xv0n!#lj#0w=66qD#mx>BM=$_p6W@oidT@@BNys zIUThu@8}Nr1WxDvL`9;t(Q zT4X`)|COwTweJ3icky04bilg}efS@(W(>}G+ds3o zH3s?RO7L4Fy5Lvcl(=mg{d!>Tcr(^_8Z5%=y1F#*G*zVU$-xx-UYc~@VC$dp5?x=cg3j$(iKlk3G>b{Z7750Yzudn)Fbe(ln zRZ-XO4=9L~NVjxIqcozRfP!=#Iz<8LZYgO{8fg&e?rshtAWC;i#{rRsySDm$?|a9% zcMSbU6x{plz1CcFKF{yTesU5*+6d zMGa34y+zqWW0l5Pwg@#w+kLaO{Z4YZAw6DJ{WO20RKV=hJ^1^YFTbQzT}rX8sShGyUg#nr@rB`vx=o@Wav#xSw3cuC(uMhNGoh<*hvr=qTY(;)ogNE2F%E zV~r4oH_jZCE${FRYy7Wb1P|gRfWgu}@Xe)z(O&!M!GWCz&|SI!$v2NtCkDipO7l3l z?R9yi0l;OtSyJ<~x0mKlTDX3MxG!nCeXp^|a7=^0N0=_v-$N^TdN)m`lBT}^tzO3>H4gOR6YB*`w3EmHM?gQhci(1=t|1Ur;AOn({l3@ zTHM(qw{v-N`jAB~+?g_~b?U%~B5e!=+b%_}MKSxQ8G;leEfziFuT_o`dU_jtiJj$$ zvE4zjNMr1ONBxLV->|W3G7~-p1-7aG998581EH_#N!nNFW*BOTooxze;7 z=cv$}4k&Fi`k3oURMXBCS~fpJpjEr$Q8c2Hm^U_$&cDJc|~gC}(XKS=`g?16Bbac#QFA`l3pM}_qP zMF`*wrc&mCsIt9dcBq+As_=Ku`K5Cq+dv1TKaVJ);(t5q6XmzdDldv;Z*r{dUtG>< z6EP+vOm3}rMA&Y|C<)g541C+k@3yLzgyJ<_YQ3j-Gp#H#u!{9{%?~>Y9Bj&Ht8e2a z^Y4f`_Y?~Sh=JwIaqG&V3P13~?xh(dgs-Z<9H^6h=TdMsy{q#u*&w%&*GFSBSx7s` zacfXeZEw=Pnx{BGeO@=eh{yzj3jC%LN#~=+rM|c^Ix4l8ilbfCe|YifTqM5$M^V{m zR3~3ebdQ}eo1_dtTzZ8fDyon_Ikasnvn{ri$Igy=8gloVXZ)BKUbYC*57pUsIqhM< zj*hC2RqF>U6n+&(MJe|_0?%he%yg>fe&plQ;?49Gw^voo$3NOBEMCfmH@~|y|KInx zb>l}453uS3Ya%`SS9{iKVAG2P1`<`l;=hhI9$=vc&YHFQ094$L!Xh zCM!eBhC8hY1Rh7$d8JRce1Kl-Et~k_6cL)56?Rzq(;Ruy$6{zL9)}_}gZX&tB5yF< z7_`oFKIh|}SU!NIJEw_}&QJe*Z^WMj?qm2}zjMRMk4^Hu-*_KRaKe6rQRv+~eEaUZ zhj#oh7(PA$kCzA6t!!OHys^yf<^eG83|}x9pSu4|NLBUr_Q2hUlDePdVY1dAT(dOuU+17T_|8DNdmDOl{aeY3; zLH-bG6`#bcTerf{E^r6TNi0NperX}*Xje3Jnnz_576vSqJA@Hr#tHGp+R`Nyyf;~I zf8;EZ&60`~H!=(;K6i88@@*2zp^RHT?;>+Gny&0RL0)bTK5n^wt(sVLDG0{Cqvv&( z0pPa5U^KkK#yHG!~uUI8m-1>SGb%(-rt3;Th$Vh(d!4OQN! z3QRH@!O8(a2Qaa)kPvi*fLWff_(3x z?!f5|fjo>a&yK)DEUl@T*og`Jvi3l#qLDi+0}zvdC9^Yl3)mtqLdzyTAq=?bfXx8- z0ybpW#A+>)rxO#wJ1Ff~i^cUca3U@<8Xb(EJLt??WO4A$5O2y)Qvmy<%Znmrh8P)c zC*me{t+zbK!Iq-O&aD46h~%`SGvH=HM4I1yd(a~cxQLY*qTJ2Bgr6;_)Y=IN8D?^R znj&hBYe$}W{CwgQOS4Jx$euf2lDm&Hac546g?>}7$d-`ML?zKC6S=lEMAA?%xg2rb zNI>s2>g1TR-wl*6o+u=pO<;!Dd%vziil>bo9~@ zoe**X2;dj>fi{K*7^fEZ0Ke$sWI3|^5pc4$1I+=X+J7u#^|aAvVR>ZVtSff^nU?K; z8l9jJc5(7OsBk&8+M7q2-+3IGY|I$q<5{)hNPJ2WJg-3+mJ;9bwhYZ_-eo_TCQCAE zN9I%$9O4fVx;u(Y$Q>D!#gqYw^*f!OpGUjppd#*Wq+~1qZm0d1(nfVh>O4d4+~eTd zJ=j7#J<0ym*<B;Ik+M*C>w%LHA=aO0YJ)Ra4^$AuNSMveN?(FV{qLu19n}dXr zM}6#hNj$S#)*pIpip`HuJl1~W2cW{_=8 zqpmAKA86<|Dc)kGwPM{e*HDZE+23$ z|I>h59cqEz_Hhj%4I?coc*4!cl>YX*%Rt9ml2QHGKTGgi0_GLa&)OhvP48?zw<3rz zCV3l@V@=(NdwZAz2Fp@e`gl>v=VJY`-vEfh{r8){zcj}N-@oUP+837P$1S}C5v!b1 z;2?mO+M+v-mV}#vKw^!CTb87thq|_!Kk4Y{&H`Po=Tk0kWkfFA-5!@W9>8#TvDmu{ z?TaPa=w4V*_uh>xo}8z6EX9zu`%JB(CZ`srt))Ph8CvppE$gvqs0nm}uPc zmV4o|+KVmh^ND9A7Ue3gwSj$mNQiye{5`rv;uET^0Wx5_hwSt~&9G}aYbHyZ6Q z0zTJObQB{JR$EV6rsx&8hxQEw&_gumhZ$A!OIDe>uZ~#W5H`F{w4-b>xEG`q{H1yW zzsBtCGZxkoQGZQ-JaTqQ-ij+l_N_P6FZx3ASBpx7yQ({ZDgrL}9?inbnI&nWJj%z% zzO>6AEU%t3r*m)HX_w>Uy1^qglu{*uY`fhH*tq1>UikA2IbFOe-e#T_q z^K|7Z9?99Ztr=9L!ep;gmfv#^?Pt}L&&xO}xMGw z3*{!67pxIKnR3!wmpC+aK8=4xeozbX=`toxq-L#?KEu44-O<4yBIGgZzi01vHXXVZ zRf1#J6i?sv0Y3S;ChY`v;ub4!9<(=JkZ>RgbIe2SzjCt=_aU;;#He~MBO~GA(a3Nv z2Nao3+Y_`VEo8t9+1J+xd95?P0+CRwEhTU^v%~<7cPN9Gq>~draMFEQ7yBnqxG84W zk6{ha4nL!Xk2DP?5t!foYCV1B&T4LIC5hL?q8X^QZzy%L_KuG12aI;D`g-U{`)`~N zw+_z`9xLiDyR0@0#JUc&Qr4TB;b4_T(bflCdyy{Ar}PrZ;_CdU1UP5l{x!0k9Dl`C zK(AF(+1=oz@sU1GZnHW^uY@a%hpKm}c!^UH=q%NNtNcSfSt+^|M4<$ZRWu+Vl%{sQ z3BkO9Ueyn>ZUeTEgpm;)0QO=0w;OPKrj7s*ud#j(ri4N`a-b20L3~|chF$=M^$tK+ zj<~*9dkil(3GS5qClY$2_5Ay^JCbDo-)P4{?T5v<)jK|lMX*{nSS*pkmq19t%G#)& z_Up*Ya&uQ7thsYfh z#iyV9G2W*GIqhh~zRxX7g5i)Qn!s3X1U zc|OxRG~yqkarDi*Z!T965;7hpS&e;;Te^&$Lr#RwAqWy;c+`-HBv~V;uRew#N&CFl zIY8vu_}P4Ai-ovQkcAx-`ZodjnFkmTA%7>J%JlU0Nx%~<#kI?f(4c$tkzN`z(GC*u zEV}*w1w77NGXLxhgh=&13JMG?1T;G$ob zrmgUZ3@zF*wKpGzSp%YKjy;#e!a_0Zg$c61gL_sZP<1|4iH(Nc8jvp>Z}P^9r7EwH zBQmX|yLQB76x$QK^<=~aqJLN@*j}zl?!E>c$E}K&Qa6ZaMmiQnG5E=Do(gtT7V{kx z7`bZQoQ@e`ibgTZL!NBbJm%Xvd`Px2X0RrNkg;jxu_BBtH+r`HK5y6SYl$4_+kWkm z&39y>vUv34pN)v`j1{zuf&7!G&DiQqi4mi*8 z0c@WfM^&3aE5N=*LipaQmoHyp16_9BX|i6Eo8i`25oiC4zc=_MafEMe!&5L*2g5E| z-&==qlCSuxO9_D^0Ww;q{&`A{~ z9&LBz^7R*SzC2m!k_$$o_MJ zPW#7>CouLE1WGw{0R{#QXhNb-avc_R_?0a+`?Mp|Ka*w@X05?mFRrP-F&4~uM%Pld zuwoHt`sEsyG?pu?SSvZuCPUrZ{KCXp4nX1lhBnH+p zIyMDO@!T~p>TJ0J^)z8Na7zp1G#o#=;V^~Dp-1e0ttpg`|+$YiNflGn{`=K{ujBD?$EP32r%2keo46#31R#v2s z>?Th%sIUc{pXLigP4BW@NlowP-3?h`u0~zdkF8>O`9nC=T-ih)S%j$H3yD=<60!nx zNA{8$16~VmA;Qj-e>56Y(lT>Niy!!fzf~Gg|ENBjGac{xJ&fp6+oAK9i=LtX`i6U< zo^2Wf0qWN6ndFhwWo$QNZ&udxO}-hQnZ-A@vHLH_PWpxyY2W7&Bh^y`+iR|p@JdQr5Ij0Q)G7Q}FD3jV zCjzWKF6NCE8PnuS;&*9kzC?G6Ma4OOrZEi5>n@Fsv4^))N7Us!vtw{Kb8MPTh%q4< zLF$Ml(hYfr{ z=<{EWW>zplE_DG{x!=9)gGWmx`v;ePE?GqQpRd_$Y_lzr-qv9)GFC_)$TsVsYoyUj z?@385d3~>SRS8{OVHNz?5Zn9aof0Ub13VMvs@2$Xj=k#Kv)Md1^K9|fZ+>^bKS1Vc zchl^*keO@XuJu>zxE0vhQfHKM;m?8Tb`01ysZN$4=Z9qjyeC(UnEZhllHu_xvbU4Gjex4?6*uS{B!G8t`8=CN zR-L5Hj7HS{!v>lgoo&^xIQ=oT z#5ivMU!WnE!aF#nrp=H51nhmZyfuoi&qh9CyV;IN6<234<2_DVCS9VRy|<@z%*OgL zR?*xSJ$5@)M&;RCwOn;?mmuTSC^pMBp7&=`XmP2pdw9qz)24+*C#+t&nWwy=qW0&I z4ng+ByYF9KReX9SG$`yP7(rVvS!$~3MUA}7ke+*we&m|LFTJgc;c0xgYlz-9ZW_#) zTE3cjVGl0EguBa@c(^+J|h3e-K$@G|t+D z7Ny%Y0jrsXns!+1MQeh7V3}5KB(`?Nb5aQE1pA`F*SNL;6Pv*R?td)8(o5SVLYVIwtS|}>nLupiH`V3nXm0eVq?V>%GzB` zmH2@b%3^gRD3lKeepVsIRh+d}09}%FAG>bMS04wt6c)vGZ|#w-Tehgmh@W*49^jd8x6RNT(PREziimWXu{KKa{DZ~=Gke(|v0 zizp&W+pzGuSZ?H89UVcT3UFO{Ni0!zfcdSax<`S{^U4Lk%9SAyy2nVGU2$=7K##(Q zD6;^>0|A2mq~DYoOV0r4Cky+pxuw4cBU_;Z;G|nDLr^~j09S6Cg(uk5qNMLe$+rME z5?SHU?Dv8nZ;EyN)P6~ISF0x$3(N@pff}dv1K2Uw*vZwOz!cSuD;yLnDqn#6y}oOU zyQ=hbulhw}UiHKJwV-J(J|#`0s~qA@ukD);DE9T*AI^vF*76If+ZD+b;DH7Y#u&3s z78YLmUEp6Xthux0m=FnpRaCZ!0pv5#jYt|4eiOe}FnWcMWjY(Q%?gEp<~jdlaS!N> zL>T?>Bc_5-P7Ex3q<{M4yo%PQM|ysz6`olx&&~M!unKEwFkZ<{fDrgNXf;d=6Gb}F zSYr)KyIL{r+XB9|^FTiHxgIv65;j&NR3SZ=A>85id0(`+e5~}dPqe8d=Di#%mh{xp zb|k9K!=I$>P;1>qeGz}n1k`{^&%nU20I1{$eZwZW2N+Mkpg|O*(=y7=Y_LBBM@;k^Fu2XWB3QE?QrtPDKkW{GTtP0*nSmzQzgUaSZ=pSD_(nliu`kZv$$Jy@0(fkeYrLR zl>@*{NFa2gvqK*JUMwc478?okWT@{s&Unz%9~!x8_4+$vs!x|$*{!=0+exIgCW{}n zayEA+@m9pQAKpeMV#DUL3R$0PquFTK$%)|?2{<^)>NK`r-Nl>8jQL3U~PWL2`qj|vTBD| z&iC$d)p^x*(ZvGS_+Yk%0yE~zTrJy!`z z=k5}LP2{r_^Rc&ct%>aZ;BUU1Mh*3OQTR?Y59FlO5_P6{J2P55ey z2}vLzzW1m^{-KQe))tin@89#9LRd^pWtrdRa7i)||m4R*}9#zSq~;QG?PVVEQr;D`UIN z?VPFlRnSfy`D$a`kyBS+H^D*e1Ft5fNaoELwhxWLz$7TL^+^hgJ)r!e@s3)sF2aNu zP8^YuO<}Kd@Ky<%-FXbhFJv;a9Lo^KR{E^OP$jvbr{IBHwpPQGwt?$Vz_-~tvK|@f z*T@9aE#Rkx;A8msBbPN#B_z0k;YQ(6)SsGssoWIQc~Hn$0GI?V08NiL;L7d;lrJsl zSwXo)AneEXqPCe`VE{$`bNvD-_diw(CeDqwtmC>}bY+EjY^9aP245bBJJCEUYFgp1qOUl347t;IM*4TcOR|{`Ao@ z#;C!f;%lc_)KHCs+@r|vc1sb?$u&jqI=70m*!?3!oljkdIb}3mP43<3|6P+qRO^i07j<+ znSsDFeR6gFGwp>&qmMy2CTW$!(glf!*lK-2(5z2HT1opq5KRglI_zLDW_smEuF61) z^c|1=GcXl{+&&Fk7gay9N89T{v>rH7$9F$AUm$HK)XBVwRoFdH?{cWmrD8CeCQeOg!(@UO~oS`F3oAA^#}%#Ix%%&c5*3@s}UN zf&#DvSI?-;OYFg+8%^b#iGFtdj93Vp;`YPcFmsk(y*(LX38I~swy&u2H^~`RAHDKX z(@_d-Kahoe#W#&uH~Mj2Jr5+^Lti7gV<-)}e-4PHp<8?_qaj<- z+WU3FHLjrLk(%-$bK2+!II*ilV!aV1zOj`J(xLz~@wKxUCnqj|lhgIH{T1%r`w0AM z5GE1y)^dxBy8)RSk9@OkWXC5&nf&k{ECRA?Vk)smJAE{S+o*(SPtL>gvU~bca?0%1 z%wSLaeFM5c5!OC0J*bvHW;U`hmDw5Li!XXMs@L$Y#Sw?{FJEPTSIex5%)VuUUP!~W zH|&$!Ib3HnoWfRbgJy0aPCq|BhNHN!1*+bE5K~9tO3mRvJ?k`#Zj;QzZ^51g zT<7Jk1mWIsk}-Y#YW0=-&m>^!EDyh{SB=ovBO%N(-zk(*4K)b1C}v}+#}ob-@FDF+ zT}~h2775!Ul!c}N#Qs{B>?dByDh#PtMUxp-KlTEu9ZjBI3GK9FjwA^6lE!73q*oNF=a_qpzi^gH)|W0-fT)U^j8Tr@ zx`Teap{NmcTOda?)^RHFrgsmU1i%?B@i88EPzQgkU(swt1}*(;$uCB^!#*@xL@KDS zR&rwTxP@nxqx8f{@A_OQM!(z};@G_9VliXy_doXwLzfJ_S2bV@e#kE6jHbG}rW42N zJ2s>{guT(0o-XSym&x5=AT!QCBKeEv8WmoJ3XJC(+V4Ani?$tfX8=Q!Ye=o?8*2g2 zmRCeU`Il^_g~M}nOvIktUMQ%mN(aT2;@8by^8oc*EpKu5?tu*Wyzaxl!M?xD5e=k> z9kwIU;%gp!w9KtH6>SDU05M;FAXtL)_yVrJ3!(4Oje4^S$poBzdISXb^-3KM(Q$VBH zAYUM3qryV$YYx7M-y4GHJTjRpy`x`Z9aKn{)&@BCIJs&!3hhpX{(x5}b9J zaIg!HwdOBe@}>M4lF9?EaS)?)4spQR-&>b@y5_4eghf|?jx&kHCKZWl25_*5U~L-g3XDF^>RE?@8TNED%@8?lMU7SP!-nNsM4{TrE|ENN!Ub%(AbyE0GR zrpl3o4@*)%tMa8et3(8$hO3EXtbInlo)OP0wfEEU1Z-Vh-fV13Z@mwDSz$D))z$e& zO&67&sG-K-2DP3ZNr&4LIo6MVc!DtIDTP9Sz?*6SOtcu7tLVUO zOPP&Xy*(uM?o~CG5;*~M!e;lMYc)|F{JvpNI3;C)sWxWbAm7jjI!xuJ_F=4jhN?Xh zZ#b;=)e8lSh`Yw3nTZs&A5<24P_QRYA9fA%y+)eoUUeE{76OR{7`I%vfrtl)USIiU z7!{j6#V#2@<{{+BKFW6J|zS+_KdXJ{A z<8SBY=)9$f8z~$I95*Ggta5aa#YG_=c=rjwpIu!+&2Ydul;( zJ*I}PV{A^rUv3SJDukTm_B?Zdv?(XxHUt;z7PSFl8+VFmS#X&ciIE9yU4lA^5mj z=mi)a4cU$mgU5bIT;9khyF`B!gBO*P;hkzsfb?#8e+`@dh(YOnVfHXu(az5aWk0Au zThxeMRDZeWNM2q>g27h~T?8$?;aL?%)YX$V9?5YP+oawKyuQ0F+K!%nORiP!MXR3? zMy}-SUw2MX1zWCi!H98lq@J+HWjlJvsB9rCQmh^1a`6B(4T!jvIEeh)mfpvObXH(f zQ`FOo2n)krynv)qK#j9e{2Fi|fNq-vWGCJQ$ufXuyA1MA@QUw%U}SVZ@q;~|Th#mO z4YhtQ^KA)yLAzYioC{S)-V5W#${I2XH!Jzba1vbPGW(AK-J7L;n6*n5vyv3fA@R1w zj{>{(sQ?38+=HHoPELQBNn$=-3`g@cWqdlmrCUPddw(rf_5BLlS)$acj(5?I&Q9G& zx`XkTY*QeADG*t)dT)GYGxNz>dsBtxJzhajZw#RM&9m<4V6Mb)kkG~HPfoQ{IQPYK z%Z7RHgR+)x;PuYOJ~oY3IQe+=ax8jMSom_8{@R$;BmH0+H7v<_y9T2oE58Te`omLFMT z$|Bo5q*X)l+yomW2D3QEW@M-Ai11b3ZZ>F*@csS{>uMMDo?H)qE&{A+m;Y^o51&5e zpZGlcH~341!i>QCSl)l3qpckZvh0=s^yh?^NTKO+3lZZ5xb8)J0-cW*0F|`O$SS^ zhx=Xc2pMba{a$9wk3(I$(gnJFAk^O~O$Gtn%|O=uFpc@=EC&L)(_8^&Y2sSuzBYP} z)}3#U9v{u$h`Iv2zKR0G-6iLiWxt*Fd7xZc5PXjrKq`4#UNkWNs7&pgVOa$HP=O=) z*7m(SGKEc@j!BZH%3y)jY%zsMprjATx6k>(RItG7oB(E{Ysc;-q`tIIwGyM6ggn09 zj_qNKOsrXUVWqwt(j!z$AYZM~wYWEn`tEEd`T>77Rr#INACx&vDh6-^&*n=8v3aY3 z%D$TLF-l%DmN{%#)O2;{@ZqR@e;bb}$x}I@poXLCznm44!N;Yd8ob1-do)h8F>Hk+ zVr)bTbed2lc zyQROtgEj^ZoWURv1rq{YtH%B*G4cFyLFyt(XqVTrDj<}BOmr3JM;jX(QOh8(_AY2k zK+JhGH1)q!wON7**`Su{wUoSX>iTp4OCSARcqk>^L5#}2BPL#&p}xPFrkWdxFmkWpiQ>!qz1flYCGC|uHXsy zW?-0b-bD>-g&>^(RsADzT_!(fR7VU0m*Mckmh#8dSBA7DB z7t3ExLKAP;mQ95TvDxnsHZE1;Ij3pqWPq~~2u48g4ZY6F919bp$|^l}5Q5S02xFJb zP2B?HaTjpRP#xo6m|EdKFGs=D z&9#eI7xWHKWaFcK?T#R+T3NlGWAnOFOu=0O>M;A*sYKh+G3G}*#27N{k?6K-%N%$< zlJPms$2Ay#o(dNq5X6PyU83JYt)#?nK@-~L3j#3jzId^jgu}s3j0JU9L2f8$n8F2H zK%WL0ssJ+0a|HziSSKjB)!~CK!WZXjSqZk5Bsu)M=mEI{cH?5O+Ak^=+m{tDHBx{^ zi$|DIk1p_gv)XR=;vOj=Un{>tNt5GxIN{&ct1SEE%2TkLL0!!*)^^yr^n70TT06y1~0K+%feEKd!Oe2dbW--^jg9^mArm?$m5N++cKdyb7}0T zUn{L-S#E-4>GSK#DvKflOvebGU^PlaLb)~-MCshKVaIK_FK;Jj?!(wLL_|`bFT6Fe za;_v=1N0*XJ(+U(y!9QY_bpe6uCY(gOcsAtC4K+2X#r+eXCS)D2g1bwPBqi9_`kzF zH^>0x+r~t*Uk)e|-G;GhCM(qR{;R z0DGQ}j*htn6`BF6s&I}h;B@(FI#gSMJQAuHs#R2r{9|2tW}uA}(9!!XT+u`%*))kA z8X?E%H@ftc^OlNYNFv4OILx-IQGMEHzdRyPMytleaCyjf&SJgqg$8sahVtQVshbnD zewvik>5didw6*0N9Tg#x{hEkm+|x!DE&VRDNw%5!W?+|Ek58&kvc7$3#CxnU!`$A$_q(dr9XoTY@xt-QRNRNY+RgSB zdiq$Qew|(K+ms|qW8la!NUl~>()IK+CNYih6VDOuAVB$HK{Uq0NSeO!UPrm8=*i+V zrj0z$h`}NQ@7QS4@Hd0`!N8C{$M7z2=~0KVRs40pWfLVdoNh3?jnPe`=`CnVp&*3& zGgL${%Y>vv0ld-NBM3y6pNV9N!;Q(jL%gccqp`{MEoT3P}JWHvs1<5T4rxa)bTtpz2ye0#ypM(4mIA zkfu=3@qZ^f?ANXm+w(pieqSV_Xs3A16k^P@Zw}>yp@7a9IqZ4SN3WU6+X&3?Z%JG) zI1xyd-^c2sI==7#b#<-G1}|$xn{DosV^f&d>?s9|V3SJ?%d*3M$^XbRf?DML;{udN zc5Fuj8$ZsbRf}*dG)Dp-o6vT$mONMkAZqM5^lAH+Yp)c=@vhKU67H*drQz9o-X|zb zxA;*2r!i`ImSh`|i65U|plHnl<2LB8wiMj(WwvZft8SjCwTv%b+kNbyQ~SDLy^iwr zt1Wf@&UA{3(K6R}9{0}+l{WK> z^wMR;gFmTVeizzr;YPY#*4ebFBf!l|e+@DK^`x3C0xQ60IWi)6b@wS&Bx@;@IRWyu zUGjzhopG7b(0*G{0LumlPIRj0w1o!&COq_U0u9=2kU;XNp&SU>Zo()Zxv8r8@clp7 ziZr~u-_1@(z~gzc@-0$+7D|_pzx;GDG5FRdd<@rPX8eaX=DX;t zoV`dyH~oZ*)KpFzZN`(P0hx4936Tq>VoK>gl3y}%ZBr_NFgOwXk-Pqll|AXC1Qq~^ zd#>!{Jw|(>`sd2QKo?Zr;SZ>RzqlXKkr$;j6@k+of<0A*l#zzaZ|* z=?qsP3WxaE{{64i)AoqZ*(lQjsIbgT%biz~`WTc#Fc_%_zuc(s*Z+k>#*yOuPfkYP z2oEQE0Fh%Y-21j4x_+pIu$0K9UO$#I$}18Sm;m-}WGv#hVB=c;3TF>%b$0>z!xODv zW*)nbolLNb>p*>S3&HcXzwG{6J(FX1#9~4{k;l;@o3|4YkMwIOs&uz0`by8?h zVq$d?%2xcm{ls<_&$0049`#I-RSD~0Ko?>a`3Yp!kxz>2+_5qV zZ*;nkN=mim+M+h?`EYXKw}K(|Lp0je^1o$w-rpO_N3bn_jGXM55KQl^=hXd}9EQv) zAuRUPs3u|Ih|^faL!KR`EzR51HmVAiyiPs)&$F_xK2f{`UVP>>kEOhP47&7T3YG27 zeu75!+fV}uu37o!ZoR{XFNkHQg6)Gb0Fl1;B_GHn1W&Z^uie?{)q0_b=vr9FB#=kK zKz0166vUwZuPbL-bGsq*!AAq5c0WVzPo=xZMzj;PT5s=&rPK-5a(V0fwMPy!so-Iw zBU&aX3yvSp)e4Qsi_V=8INWg>L6yD?=({DU}bM5#4Xfk5W+3 z4XH^bFRd^!B}!RXgdU@Zf&?)N>YEXhL$p_(RCT5Sf#_{-N(arNd+*=Vuc@W#9EwSM ztZ$}GaOMyp2@b&_eHKJ1b0@ZQtku~z@-x4eCQLzQNiI=cVnD#e)cqb4!nycJl-Jy! z{BPa@nl9Vn8=Cw$UkO#^2XH5eV;*WKw+ydyCq98cFWo(X=3WUDf;CIb zLW?}X#BEYK%5@oF-m3F0sDoi}g!JvhbRU)ASB!psD9LY#$>f-x7>3Ke2pgjeh2j0+ zB^`J8*qtDvVMsAV{N!wM#mI#r;(@_huN|NSJ`G?oxLzo>#eMaQ|00>vMpFC2>40uf zBk}GJ-kT%^TYPJ!OZD3fyI#BQzoJVrGEhJ<{UCx$AK@?FaRPc4Gt5i@^7wJN3<7n4cBngwQC5_R`A>h+zXVG9gXU&1^_ol&HAKh8h6M#tLYX{oC(?)POh5|q zpD1z1P5-_=8Guv6hyIgeCHj$IOM%jqAU}{Fi zs@8@HzZY>A;T&qU4~uHU0U;6%R*6}4Ej+;UMPynR_`*#~?NZSvO@${udMC!;y=D7Y z(Y)2!^%m%ua;Yu@$G7ZM^mW7_&w7Y*;Rw^%dE)0V^=i&4;m*i=H70B!k|CrDIiXw) zCf${HoPojSC4P(SMGc%9sjhcXEMv?q-08o-xn^UWhTAR#A_w?6p4t>EYc77RINe9f zu=IMQBKC~C`$ z!PCsDCIL(l6<^t$$pz&TD2{dFKPQq6k_mTLww86jb&cQ_;1t#06%D7!LMd=c8)lzx zS0M^E>ZEVR>#Bbc5q|La7ORR?JT{7c^c_~~)JciOVsjxb8w87bR$do1i zLFsDOZK_@O#Ly8K;IZA0m;;fuo%R#+C^IN`gzHnmP!-e!ozSTq%uN?AT(??vzzRd{ zzRjcX2pw|HfaeAYMRx;?A{=~0&vlguGEGS&g5Y>G5CzLL=XtCP5?ybAfUr(r!BNt- z*h&WZlZzl#RT>D%f$m4-?PR$m{5C+P!I>{OSf+uKvw z7mQlLK$-&SEY`=0D4;?GSbq(H-4M!X0%_5uw#!mbQWr?3;)CD?1_vv>@CK)%8ohqA zzRKer{1ue6Q`JRam1!3eE2YpE3= z=om?C)YTqhEES_4rPUlX9X%iP0G-z5s8ei*Xf@IPX?Z^Ci^h#{WnSIU;@C|`BvUQ? z%eoTzjns6&d??=_X$gcYG5%&*?#~TxD|cIfn4!H>60a4xny{$bvm%ptQaZ~!IgZtn}iXWp>$U-zuHR950%a8Uws31FWRfjf1 zX)cI6FSe&?+|ky>+OY`@e4{6Meoubl5D#XQKYC7YpDn>QX*Gb=ciu$c?w8v(ZfAo%=`iGG%AxmFF`_lBAPfFSX$#oJq_(d90O z*2GIcYv8)NILWd{VpN_0L5D49Xd1Ws-(LTojb+tzqz-*vBF?)v4KB+e@Pz2$*9Wyg z83!#2AcPwm(tH5z-wl|c%RUX1R1d0MqlH!QPa0%Zm{a%R_?7nI7KBg0+Fj=T)xA`h%bh%*t*Sf@(jiY2roOXf- zwhN}KoDo_$+>BAlln2;g(Iqt>HBCCb=R3!=m83{ISON#@(w*MB?SkXRs}Scjo?Q2< zZy0(|V4c!ipI4xwuAV;e8!;{=_0+1N|EcB98m zN#63_ug5{f(@FeFoa8Gmnwr_+clX|Cdj?-j!u|)E481vJt_hQOlS>n;Lu9{L4t&F; z;tAo|qoxjK%N|Y|3QhVz643svY#L<7v`<~C-}p$As2ov~34)i};ggP;s%3f+FNnN} zV<$AxNht>@9tEw%6>$2S2dx!OFqS;svgs{z+3sIc4(bgOCee|;#f+c>$iw2_w|O*m z#cs4&Duy8l;gks0tM+5yOaS#qyGmpmlyDBx5_LdWCU@e?QaHN{vWo;VA;Z)O++Ywp zW~CXh`frbigoNOcF!S-?fa31u%P>W$2xgTh{VH>ANgC)Uzid(Z+pn50pT*~V0DYe$ zI5Y5=p@9@#D61|Bed-5fzJ%5fNVEuc8p)syO+c@|buCTi6po?*43OY3L=oT zmBnn93EPBl`76{RQbnaLp)QN(AC#OMiRUuk8^0{Y<0X4X-1eK3SIg~j=rf;eJ$bp? zUl0cYh*_TW01yZhqCD8nGs_#)@2Wh!glU8pFxmcs9gWR=XVx-yVYUGbF%m~(i?Cbr ziY@SNc?i5HZuk+{n63Bb!);Spzug3r;*mRP!^+uS*d9$;k@Rh@+ z>P-z_;@|qfv+8Q~5GF~Kn$&Q>a3i&F99J{Y;t{`K4@T|D#~f!p7DkraH$jtz9BhQd zTzX;9%koam7!K&cV7x&)P|AF=Sx{06sxqkDdgS&C;+7+O=p!Ku6X@OSPuQ=x(4kdo z^=Vs2*Bdkqr4j}GgngIN9~7h?Wd?-I$P!uF2CC3nbDE)prZ8q78DGe z9vQ;1#UD8e9sO^TF}k~z@yaS11RI40$KI3jYbz34;V6~x3(L*_vDch`%aa(69*h?8 zK(K+|g}iJ=JX7p8FB#!-La>s3_)kHmPT?CPzs~}5v{7KDnZ!segvhEFNlU;2<2+tA2Hqs#`)#EoYZzOeTKoH zatO$`k>6#x47U%zP^a zWNZSx*2kC_e*g=ZoL_QH0idZ46NA#)MJblg#0urzhIV|TLO+1M^9Pzdf*>W_=haO` z+g?{7VViP4Jq$6W4)Eq4#5(~z zga&@g`-%22V{DLJ^AM39RcN$DVk@L?!XFxm`BW8a`gi$KlqQIR%X->N3DmX)Q<_cA z666Td$S5@RqL8Xcz(bqx(%K&rYZOUlHV)lTGDy_HSmOL8o^UOeHYNF9hWB$wYzR}< zU8Z3C?_O7dH(6V%W>EXvdAj&UU>KLX5fm9NR<2X1Y~pKYOE~>pu=+JglLgNKl!Z2$ zT`FORRxmf(|Mf#*dC&V=q!?g4poH*=ir0}T4XGj{BO|RW6x&SEw{@0pi7PAPgMb!B zpJjkdC^bglLbBWcPAZg0{EPnvcJXh<<$tB5C%)OT@k@{-9Yi%Kf~Ze_N6>VEZvQ1) z@||FtWvm)OH9;7#h;;$SSUmrgn~?zzT)+^_=Jt2y9`p#Q)3G@J+SbPG=MrL6@eAk} z3LF$-XPy_URt-`?gWbYnd&u#ubBAo?WVQ*^e6RaCZ;!|Bjyuq*_RhW54+NM=KbX>- z3<+0Bp19EqCOZm3%Wp#62E63{$lPzrA?2UcVjP-JZVS*ql02{i=(pDE-xJ-{)Ut6o z-;0UQ_ywPn-;xp4bCK-17ZBSnWP90I9%uddHOL1VZJf3+PEn(FXqk2T)!4!7F0beR zz+Ad_!jY%7h8e^#3j|kbeR!To#9&YB(2d$}w8((@CW4hM9|zr!+j@rT@M7km5+!cx z%ZJ3#hygsZ!fceR>EZ7lEQSP56X}35Rxl7>-yII@*iVEYoEQuYE8J<9#kCsR+ zEG$y^oc^^8AcbToT>xJtPfqm1hpe98Ae9qP`QT&gmORnOy^rC5cry$Po3wbBL8U1% z-LWMJ6kB*DH>AK!ua0qyDNu>J>Rm)EDo)D;mR61QRrwWDV067n620VkJ@(;a_0S<7 zN;LbQ*);FUvzm>1So>a}jHRhJ3U~WZwSuW&j(yp!lUB#Fmx9i=2Jl*gQSi-L`#U|NZ`$L5 zzZY<a@C?hC}8UgY`lR^?)c@Gf?w(?9f|Z^k zknbvTyuO~+yj5qBX+;dcFQ#mdDAENfN7|pjDb4eK#^ctP?!RQJ`iCNJeyYy{S-EY> z#=C6_1mm?#z<&D~zLAR!;kBR0+zU;5Jk1z)S1~uxhQWq%R+sbnH7uq-mK1eurliv?Uc9==Okl*1wxa zKO$y+F9I$cNg_$Z((&xf0(hNXkKPBdtr?`MEki!_7Q zz4Thhn_r0saY0PEDlmv<{V63N+MfUxHxAW+w2tL2({qjP`o8xs!h6n3eddi_vc-zL z#DdpSh6kz*h~f5Ta7Xc>YK1f<9k7vaqc|sGYZD5Dbvx8VkiUU=>29n6?}_HAC>#Lm zf!iMqA9w0-L1CdNupR5@>=eptiwFyYF|4_US1}L~GW;Gq1VK7RktqmvfMuz~_WehR zSXBhOAIzc$c=>2K3IhynvC-`+UUlie#74J)VU`-D0IHU7EWrb7y>{yCES-eO=I)z< zQSaA<%L=;AsuP$RL4SQK&p63Q7v)`yXO$^_HBh2M@O=HSvz6Dtrm|ePf)bk4$JLZy!ZM-@H+uaV7s&Gq|h5(Rb4|r;E5n5_W!rytMZ^I%quvu7?ZZEMU?C%k>hzI~Mng+~xwd z5&WbDJe+;OGMw+YwGe}>T;K*Ad_c;IcdivP8TxzlZ--%?q;La?w54Uez`g>=MsP>M zd6GQgGY5?-v=_WHoW!c-6D_Au4O#Fc>?+*YFxY>WAjaVQ9aZ{lDN}FsIUAEsHb79`FX(|;1DuKpwW8+`^ z+}!>Kkf(YA3S#L7s>ulv70R1Yf+%}i#=&W3MT&6Z>6F|g1GIaK{`?RrW5a&v=>WqC z@Xj;-d%gq8Tal(4+JAdo*kDrY{ehkNSk}`Fk1aw_RT=J16vD7$00IXO4G+hy$!zn` zdT$9-c61opmooPxlzK8ot$u-uu3{do#so?{96ldJ=HX_ekxkUItNFDjR-mO|hR%rA z8~m_NLd!A{nB5qt8bCF-vFj~z;aO|9##6ke`4-bz-}QyY)T>u=4I!$L&vHV(RYk8` zNBA3R;fcjZp1puDPu1gdyu$)Lfa#5{sC@g1Vt3G(;rrS)_I_RDO+3w!8q!`cx=;Og zBMd~+O2squlm+X$oql()JxNU~Ud9diNkUaDU#TCZ=-no=Tcv6UH`R6su%(O3|7ir6 zt$@=-D1atGU=$)qW+5AfCoO>a$1=aB|wRklWwcQ6l80Qkt@$QA@bB_dEowAAIC(F## zLGp3m@nqjc1L1!>QNk$1>8aNmC~uzz zjnUTPp?-l<%d$%kaMF*|q=%@)aP(;$DTo}e3Fv(Ceh4>C37-!pza5!4Dsy>hxV+@= zytvL(;cn^+!DNAusT!7QRZBV!5r`WZQ7rl1+UUA1y8Pca=ZC1fJ8ws4x&{fS1Yi#S zFFo~dP<^U98sj`)P#k1uA=KO z!%_>Gly2h1o*ME?meBHL^BSnOmIhCM-v%9 z#fHd95bRNOrFEyd&qBN|^MtF1$`M4Hz3AT_;$Nc=g{ZQn0ENvsW3Xfx4i+L|u2NFk zj!sVk?&Mv)Yd-lkG+&C$p-187Gv26FjX>QoCMeKTXPVdkElB}T=mT|y%b*nfex zSI=CM4Tjiv$_QuOxIrH*9t;o0i_xG%nrabJT#i*k-~xLwBpW&SfU)9VFw$ zZ4XRJsu+V2x3}p0%)oqQg}+2%Uj0zV0$N24mAT3FjIB@dc%I$1rmdZ?!pez(qE-m!L^lr$6X@pGo>cqeL-721F+YwozxURW;P4N+GPzr zLLR>6Sd5QH;?0FNE+h>wz2|#70$S6Q_ZQGYmKr`Bcs%&i&U$P`!gy>7Xl zD6OhOVv^XPT0~liW6le0&)?kgTUS#2@n8FgOdPpGj&3hbslEz&Y<)G0*}B={GZA56 zsuuAy>_@D4a+5(@DtZ~tZuWhCTL>|9+0$?qfwPi;A{bi?S&0Y4u8&z2PeuT)D9C$1 zD>9Iyp&X9N4f_H$Khe&_asmfXwq!i`5@DSX+-(h{}nc_qrUx^dudtaTNi zYBfyW6L0n~3;&D_zqQZ&M-R!in{GW3TH|xHhLpruTPItdFeix^FFS zpApUQ#fapO_tXrJoL-HPt8ZIm|I_UgRnKk)E@VjvZkA^7Z6@wzC|uf= zisUz~7jo}$h%G)hFXc=(WH{({;#;M`S*LICy=qPp#4R&Z#W&-1FGJ17vs;agW3fVu zVOmhteC2uX7igu-dqwoJ)zLC^h(0+j#(_Gm*nT4482N`I79%r@-AE8CZA#on$;JYE z-6DtkA8VJQq;a{YB+n6xLay$zGq+A26(ZuWzESsn`~1RqBXcj{8-mqsW#nC}A6;S3 z;-J%YqL#Qr7(I3{Uj;JkvA;7Ey4i@Ynonlb3IssT6DVhUa@@zB8GV%NZTzpuJXh_h zsj&=soA8<)J+a4Lo|4}PHHd87cSUaDAhKqdJtb;4RUUL)bgr57Zabo9Cr7q#B+_x8 zZqrxZ^}afniRch;!w_qIN(=`Xl{<{?wcAB$j%k-ngs20ybHu;|jnp(-TT^(mX|j2% zm!{dwKI21m@3Z&Mxm`KX7*lHL4Ss)4&8I%^*wxEdqSvxHxiW5SESEI|QngKA`~TZW^win3O$R`Kb{ zTKQkPL&f0+8p-U_i29fW&sY@VLdV{h`8ic&u?)JI9ity}zDg8hJ8m!9nmOzTT4Adf z8S4gDTaQE3owPW{hu(dD;v#5jrp3vLLgRox8qmG-4VwV@vBqs%cFDC1odf3 zwmG(iI5f{4u9_YuwE@u>R#Hl$%Ngc@urT}P*Z!MwnQI5Ye&7RYzZiV^`XC??ymAbCn2kB>>g~<$5-LAMx9cFVNf&3n5141&*XoGD zmROeIKmr|1oC%W7#>OR3c$;HH%Qf-zyy~2A+8jA0gPp#-oB!FdN_O8&FmmN#%NFWt z!!YM+9P7&Z$ECoIY>Vn%wAoELDo>wnn|`5=-Z653?U4UQ`i`7%QE$S^U%)vvy}P3} z@s2QxVod~hO-=uVKaexJaV zl%d$z@3qB1{I7o2vv9ciIBw6xukU|-fg!tz+lp8*q2Q;WL`a>(pDF7oR1rK!(8Pl6`ij3txHdMl&djP?TYHP-WyR1UqP_jV!n-GeLws(ME8=ax>V|x_K!;x zt(^rHV;)p-<@gX~4ngzFp32VGj+@+ZHk!1nLH8%2%kY{ob4~z-8`Wz66AHDBWlQ~- z-eUvir^0%&t`@IhCjm6c8zg>)#kz@joJ_uD)_m1fE>`dh0S!`yOhl~CgJV1h)islV znh-q4XI*JQt7c?CeNvINYCPakj6t_H!98c6r`wXOUawDM$?JHLsH1u~#!4(}D)fA= zp4(=F=$B)DPLq0batw+w1KTr3q{|Tm0bws+q$b zXk3-*6lGmOTI-fepc=BGLD3|q-<)at1!KCQ{!G34w|N-`pb*wA$EhU^x%zp|U+l*5 zi2vJr=;0g3fUTJx8A(U7_Q=s}==6>72Qf1;_~Hq`YnE**AI=Ch`{hiBjZ+!dRu)AnaJrw=iP!rm!qO5lAAIJ|6gKV9zDoNrD|VYb4s zxqOE2Ukks32ynA0f|1dQINweDGS6X zYQBfh6*=D#P3Ve8&Bv$XK31_+wC?vaKsRRLOxXZwc$-= z^7L*hatrK@zx>IK;>Fm{qpT%DE^gr>BvPWri?5Uz>M;)auEhE&!C8W{v4hRMbEN9- z7sC#H@S0y_IbALpv)BW=;jHEq)iG1kNNq;-_^zk39e#J~)ZQk7tM(au4Hkt7!4dp< zO99>!+0OG_s@i!iCI23(^__c4p9lIXO~tAGu#YY^Kt1pom0q@4j`KL3*m#+d+_0pakPu=Pj*=QwXu7p}kO%wJ=- zOa@3Z63Z>8#Uy&A3zuz{WMZ_|I`x-rj@(sE_qdDSlaKV;5@SQ^D_JZ#Z+=8Cax43; zd=f1W(tpog*6=)Ap6p1x42~ZE4f^FZ+A8#7tNyP4qnTbHe>AsQrv~TU2(ySuA9?R* z0-H7BwGK7pkY>M$w*+a!lG9|GBYw9;ZB?^czJC%$Su)Obc%R7d-wiFIMlF~%Wu_0- zrj1kLCaLZ5$wqOD&ODPQs5s#~9z0Ol+a_QQ@3sDFm zXoxizY+|gv-`*>0mDBltjNv+Qp?f_|n}|kFU4tU!VUsQL!G*bgNtRmxtub9fHy93A zW8#y{S9E?(&4UOW@m>j{x1E1#s;bL`DiqMDS2cD6sP2&6Y@0|W&11M$fe)8Ne7)0l zp?C?3lBAI33(tLr=f+VLvsxQ?iIh@Rf0vD9slM&IzLre&CKIc#yJmOIbd=MzEo=(R zI7n}fp9saC;^w5def!mX&6RG))xguFvc$?zJf%75R=V7nm63|9SEg8E{;j~6e}M61 zgArW@2EG|V@Ah3k8%KN-tucWo6)LquvIjHrsFX{yT7pLD_bc`IVP=uw_td(FUo1KW;PGL%F-0Bo|Y z4;SSpzr?XtLDFbjg;6I20;E12urzl-LR>Uxq{x~4bGd(I`#a6kMjKlOJi-l24K=k* zVWsMnloUu(&L(s(;KC)t_@cQ~Dovz`jIOjjPPtdc`fC)jaUb?FlcR~Mw~72D^glbq}2vTxl}yhl-kz$X0KX>)9kfH5Vbs39WdSKv;e zW|~KrX`=$S|K{JDWl&5=5c?|G9D5FqQ~@cJ;p&{&aP(9SW@Vp%&up&Xf|Wrif@vn0 zVuRr4vIZ5o;%w!7s~N!uKSlbRRZ!F29_4|32&6r`#$sP}#V z)bX?S#p*PU%6)4|1CPPONjXp+jBV z)79f?9}XE8UE%HS?Nv{FRxfgSb6$ML=!3+Nae^;))x~*sI{g+jDHF)}Wn$*WTIc3R zM981#JhF!J!#A3#nhZjwEyr@TXV0k;FF*}W{`Dzd@>Nc|jRlsNQxpn{O^3vMR`lt; zkTv5TJAR7uA2K%)I=yu^>L6L@xhE<6e}%gWR!03h1aQ%e4Z<}s^tXSuRd}6d?~C#> z-U}>|9b~^9MKWTI6!^HqrC!J?rK6XPaXYHsV4W;*IRqamRs0Q4uLws^M22*gXkj=Y zclAy>lgHmlzbb;^5UI)YxnYB@*`za8>NkA;oe4>&DbdY3GR?TSIQPfcfgN5a`nGMk?GxA)6(Y5M&di=>w8rB(P` z@|!J7GPb6HeSC;u@{Ez22Wfh#+3Dr;tY}_!?P&Z~r}LOUY1nkPTFicQP^YYEz8GWO z<=0V~HM0jr!OGKA3|Ft4#?60E6z{bYH?B4_^}_LbYJm=StX!N?vb6;la@@f*&Bf#0 z+=|#TB2xU1tH4S9jEC%gs(J>j3y0bZ^y7fQbJC(mRPQk=ciRa35 ztu21HAaFdqjOnl6`@Nq z1?_nHwN*-xgm?QdLn}-Dn%b0(L*dj}8!{!qDNmJ#K-B&uCZxhVsJgOnnhjZHC*tET z2A*BG6B5>SWq`b)i^pCnf%0W$AxPG?KF=D9@hiK1dfTaj!6mQz(}FACUvrwcm{^-J zS~Kdk)o-K|?V4k1o@9ZJC2omQl%(xT89#Nrl31#}(y@5q4~(!+qC14!6EFAubMYpett0Ksg?X$xib1huk+ zSF`ux`7jgxmCljy&U){BQ^<7eIJTIZlOZ^E5|=39K8-X!_*ht1fvQ{g!gq^=>EuXv zy;J%5vBx1HWX|jKY3ee(6_8-Sc*~wwhtYs*-SNS}xzX!-^^?U@G1#;C3>g?1=>bG$ zy`Na5{4YRuH`Dv9r1hQgvqRl;dlXl<`cn@9kqBjf1^(EWx#t(2>Grr{)6On|k~XPZ zYP-QFtl6S`{#5up@$%D6!@sEx`DEJR6_JU*-*xo|dh|0-KFLRVqJbpiWC(ZKPG`}n zZ6oHmy6wVm1{t$8Q&Krv)(;Knz$pCfIsERobh$X_i|}H?JK2bW2uZ19 zT-C5v45cHi3Q_955o54BqTtg7g@^fZV!8_%$BH-RP3_$mr+wL_1+&DpcZcwr+IWz- zGWR|o1uN(xlfo*Uz@F|R+uL=G2Q)*WiwPB00(97D70}IF??(iV-hTX;*Xk<%4`zAI z?{*lqIhfpN{RnoaXdnlxdlRl5(~6*J#NN#5-Htmt-yfeyG_i(K=2BFw5)$rd2+hOc z&VoXcS@qnV()%zeCU}wXraxafhkM1;!M&kaB@x&4m*RDBOi=QDlsX>L><%AaeJ4_S@0j71;1r2NUmz!JpU%q7EFu|c2 z8NOrrBj2y|tyeC(as52lNi+Kq>9h1FY{yYryG%I8oKJ`U?t!NmG&NgpkmRGI2hW`5 z@TM(3?xAoT(mvyLMhFG3p8!MzlVYL90*BjnAq@CThyT3VokYu5%)Feo{dW_>xfLF z(h(z0F_xz-EV=UZC9^fK40VpiPlU6-my5TC$llH6J%1CYur`v8Be3@G z0P`tY78WU>SIbk(jDdXu=22jZ`Tg`N`EVWoPM{arKrFQVNHW*`&LY<}*S^{qlQEG@ zGjIvlF`mo-Z%DeEt0EXfQ9K1eilxQas5BM&tU_u((=4~EMv6$Tou(~fbSw^Y45r9W4Z}a0^84TiVXlIR_=})fP;%MPRsi7?wbBw+aHrXeC4IqoS3O= z5MFaN)E~)J)X5763MKyj=59SF%ZpOiv<3E{hMu8*8>HQqk^ z%KFvJzkE8ShQ4VywOAv`6c?;lrz;794RT&>fObFa1v_EIVVj4%(06oO^{5Ng!+u9i z`uj%q+}4|eFjx$dqVP?y-!LoszN>(~-@VHMu$6e2!}te=$BjXq%8ItY;V z5rKresJ9ad$UP%~O${YAH6j}u8%%o({GG0^_V)JJz~~kD^T9~DfMD1bf`)(RLo0l8 zh22pqwV@%Pf`juclw~9n5#Z6-!=XEwfmAg>ikhAzama+8o$WUw*UHwMxG*0;owZ2Fr9 zRPCTfHOYY@V&+ckIza1x=qszml4A;}FW*r=l1MTw1$HLUcUMV!&3IQ|3Hr6tvh|&V zlTWNq&q+6ygU=xjv3uQwGt}~saEj1}s@TJ^-KJLJ<-|g>;HPqg!@rv)0*37ikNfKe zXt6pwDTy(!JHAUTZ_p+mIF1rAUC>Pk)2Eed)OxKuIvvgKdX8>0t@mwax?IC&=vHHC z=iS8LwzuJoZ_iO??zbC7Qik0wT99&+p_aBD`I963=L!fkK5}2#pGHSVU!P?@M%C1C z!qga%_$>c-ql$tFuQ|*{xpzEFXb*7<$Im16q) z7g?Ica<#l#SLjHDfy@R1vL%<98LU`5={Bakwo#P-6J7tVmoIL9dJK&Vv~yvehFsi_ z0$`r9gCJ0_ujG-kGKYZI{lnI>Wmts9OE@@3$p0HBI>km1H9*(E&h|Vj>iQvktjOZQ zLCUZ0#(lTtyzH)(u*ai$LT5Af;>KdSAJGM}5|MiLvNZI|fT#CV)2meAJWt`)O8c}D z?295uNn*b?Z!89yADO*)&j}#He$G#ppjIy*|2AM&GLND#+frTKv4-p%7sKsd!L1Yo z^=fRcJAB>Ks9!6n+13Oj29bMH64<};<*6cuY~BiH8$6$rY(P{^B=hQMYOITYbOm``GMI5k;|&RF1LmN+bhJ|^^C*gxMw<0Z;;jAwPS2*&B-uz$jX zSH_gU#8G!pi_v;KkAC<1aKK3irT+qXj3a8-mv0Z#eaZcU*7TBef2E|-y4DClzRh1e zkqj;#;G%yb2X8val56|va@Kkd%=Qi#Tj#zy%_N-(VW{x5_s}bT9G2cA*b}D2VuiHK z_^8*&A9xx;n(pq6X8qHKN7lZip0RAon+Mzuf!|uSiG9`f{E^&#Nd;{4$*nA^3s~7z zSh-S$p0Q6B_$#ujOBnY~1y{Wc`_IGBv3~#Xqq*9iNv0_DBn<+`CJYMrJ4^0M7b5== zMWlAg419b}hVo~ITa3%j=%>t?!A)eN*8r&jg61xX2ZNp&Q#VVsvUaJuiHV6JNY%LB zGkDyMWki8($6=D?O{b{9{yG$dfRS5Gm8{mqlJGqTA4X_+%vp28^ezRZr4pW={HLd< zhPB#kMjcOt<(FH0#&TuxK}Mf(SJ<m8IL6PHmL8W$SMbVJ)1|2g?>hSF< ziN5hc%)JxCEEgA)vn*}X>2A#iOnBU#?id+#>=^eJ$gS!ST&E4D0FarO> z%rqBF`Qke6lipY9EOftWNG`j-Au8$dXm5I{Oz?1LweKP?{UMNaF4eZ-)=XVED((L$ zuGj1dDOehH=@MHo?p0RWzT~e3p!lsjU8pQI_p+KQS&d}9Hec`+8A7j9JG1-8S?d@p zTMZ@XbT2)|l4H)5sY?9b#oA1(o~lBOes4kWmXKRc4r;bn17^0X+rGc?jQ%F>^xp8t z>W)R@$&HUo1=Q^vB|q5g{S-^oPdEmMFCmZ3Dvcven|sSXtxo{09RZVscO|yuzq;-d zj2_Nr+*5BI8yyXll_63dq=N3)z|jO2c?W_pTJA4(a`N&%fG2{Cg(an{n?~yc7|Aj+ z34TllKqCkIyZ%)9{LYiFLWA5`-u|>XUKgAHc30y=j7bPL=s^l0MFmQj%|U+TTY?hc zj{$k_{uSyv*Jv5H4@N@t}=1Syjd=A>ErUmy#yE zzWQl98@R4EGHU5?p4_QvpcNK@DwK0id%3?9{mpny^6-Iu`p)l~0__vC*G~gQ@GWro zyKslRSY#p?OhJmLs4=HIsHmj9D3I>qZSDl!qJph*1_-aCc1sj7w@FqB9Hhh0uIdBO z-Q8U{ZVhSi@_#ENpYM)LKJH8^ecxF3^YJ=<_qK&!&6`Ynq&<(^?Z+v4uY4vM8>4^#M|b%U4HB6vo6Cv1?mFe9E7 zekV@6jmS}*dJ1%vd<98>Uop--azG5%f=~YVR^nxn%x6Q<5&q^I?P8>#?A++SP}2xo zk|k$D-&w?YJC7ccd;RB+@Yqkfc$(~Ws7&nTUbr+NA+JXz-b^M21kkZkCR(Lf9nO?lo^h&Z^*THp|d7pkP6DUF4#jL9MW( ziR!VJOZVhp6v^yx>y|P){54jot^M_{$*|2jj{SN;OIwR|H)oJ70p^Ph55G6I=YQs& zAu%_SEAv~N+b1u*LXp^nYn&3KliI{($e6Fjg@AxQFS&I7C(-h*g7LQqkd;v4&=1x} zm)`~%>SBkA?q@U(J%yoWzv5?8ArPN(S&3lLSeD2%(Hskve19VX)d{T=?d0Gea@c|gth}?T3EPgex@%G$SDex z@(B6#Dcej@D%%H`x5F|vmpryf7d*Dp&8@A$X&h33KLsl8&uM8TDVbyD!DD~;XUp0R z{o7xPj6qpC5I*M%JfqHDcdv*3aOO`A;9jUC>L4*_)nYxxk%Sr{{~nyuNm;sKXklA` zsJPc#5v5}y23-q*prrGR@c*VCECO%B0*qaFY&ByGZx(h;2FRJ6^gBCry$DjGR&B4) zc(=|@K7LC98EJpc%NS+~*?PbIYWCrLoalq-=7G^~M z#kVWA?2Un3F3vPL2w%~-LpN@IcH}LH?tjg_N^3}jPRR2l58vHyCu;vG7e>XDch3sH{Ur)cpB_F^Ali<*aH~uWz)^9;TJ7? zb~zS>a%1n*wkE%1_gS;AN!wxxZ0Jht0Y%652C+P69UG_m4Lka z&JE5~{T#N|~MMNiLe}WhU zm&#+ewJhMcfeeDhfNJ7!kK#JI>?ySa*0#o`)BZddM=4q22f>c$rzaV&Ej(S*!*6U(UkQoht1+yJbF;Oj_~uP^kT#$7b~I*A?#Q$*q)q zf!nu)4|PW*BYG{bQb&5K?o1|ht%Di`YXE`{E~qF?^8xJAV^dNH1W&qfKvS%d*49kb=QA1;&Dy7M&CqM|%VS}_=hp)5 zraE?Y^_xlDli+DLmeBx!un2r|MO-mA=9cyy;rT!AKJf;}7V|gTo#h8HP&5v~ zqv>BSQ~1ssXKuBVSarbWS76uy%H$XF-_yVc<%lUKr&phDY-E3CwDH_*V^jYA9$)MS zeYJdhq{qs$O-gJ5I7xRm{S0L*vHkH&9HZV;8JSm6V)mcnUl@Zy2w~;{{Z^fiU&WJU za_0qs!#TUf`MUN*$<)D(-|M&3AGX8UbscaP;=Uz(>}jTKSPLJ$qSwbs)F5KBJi)ud zS)ET8r5EZf73-^S%J1ocSLcB%`73#0EC&Xhc}oYCAFl}OZr97CjXnn(5r9Sw_us;Z zi~FcP#KFu?l0R58+KPj3(Pn4&C(6%8r0|C0aDYM=ZsLE_IPLAvP2FFmj-@Xxgs~K3 zxvJX&hg%Z{4s{yJCmTmr=9{-~rn!?gGgbU>pOo+!@u$;5@NtY*yn6d5;ULLXb+PPg zAEJ$wuxh^}yX~|1x*=1kjYzzi3*J+jHy4*_vF4Kd6m1D%vVf#rALQ?v^28%I@DRhVb1 zW`i@G=f!UKwi2+Xgo#l=4;`YA-w9;!#{ftLkP7{GQyN&Wc9IPCi>B+fNRYf12m~qr zW~#Q07!2wqZNP=g>d%FzAV6Zjoq^7;8^i!(0TZ>E8O`&fWpZL3+pex~95@I}3iH@p z2)sgIRvxg9qM-8(mGXC>hl3~m7h}rz+Iq2F<~U^c?mU(+h~_(0)++D+P>ucE`;zTY z|Mnr-G1P&(tNwCk3~iEEW0go1z>B@}sibGBmG&4U=({AJ7F2f67}M)%ABA*eu^5Yo zVWT>|(9HzZDdVXkZ^m>!0$6_wrUEw&4Z8DTvzh&VJ<5gpmqG9ycA2SSn+V}tt z&6aouE-8XxW^;=KAx4rDGU@-ZJCRyG+EM_m#f*?A;md97@Q5WU`rJXuJS0h%g)1ng zUBp)a0?1|niR|5mcKfG7rq&3j*LlSG#mkMaGd%sz<_6wz7=N&=`om9}^!(^&a@cXw z_1)Mrm>wYB>XI(6Ro5&;!C0ik?U1OTkfh^BNwOu;;!*b#McIPWB5T z$%6k~mzkH|;7C}ILWiHnHbRJFS)N{EPxMw?bVjspM$-!sKt)`YlTVwb4IPIuIVhKDBbxn>^yN# ztnJSw?~GGEKxE5Ac^cfjx*C1$Z{C#;hK7L}{*-S% zR##sy4f=qYrYFGN7r}mc?Oo1!^@kXcSo4`DEl~}*W)HHK*jvE)B>b{R58qSNPP8%f zGBw?FY$nGB*{EK>7mJ58cn3yk^Cn^vkCVKz9L>kc!}C?uoYqDOng?tXa7GuwF(S6% z6M06$VUuR7=MP$PEyilcOnx-0w72<@cQdrGddZS&OfcpoaecJ9h+{&dn4EOq)lD?! zb@;~x-LtzYWo{WA6kw%NB+Y~Sfku^U>;v1z)z$7NjpC)OEgXT%aBV|JM|an%mDCOR7tz}pUYI~L$pBf2 zR}_W`V;_KydkrLDb^!bAxUXNsf%53A`6tXv4Aj`TkJr5-V2<_4KQR+_Vs;s{+?~pL zgItB{$#UP2z(9D|<{~dIKLb>kZ(3tR*r5hFx$SAliEotTgRCG7++rT%T1GVRw#!@? zhhE*f7B%f3@p%$z(Dh0z%*AY#pt3>gG&_V8ZV!|Ea~1aIVb8bH0cFnB{aZrKgHz;y zgO-u|_k4K1$DfNMuj&95;6fi0=Zk8ceVD$FlOavV_i4f8p+Z>~vgzjMtKL@LSd0LC zZ$LLqG>+d1$em`((ht`77Ssx8BakG0N1=BHgU?2|UN^<~q%SLIUqB@`Pf=1UAp?85 zpZabhwU79rw@T4GS4Bj#OY%|1&mao*hL{Yc`I0O&YdguW20%L6wf9O};}-HqERsHkUfm)5*)h2H zA_-4!wULvO8m7ukRkxXfc7?9Raz}JLAJeMMMqy!45PyIH6GThGj*e;TW7N-f@1%)a z7VO#hYT4UqCLu{L?G%ferSp)Irk3wzi}i?$I`jrH$R}h{>K1$#;<#m+`?INLG^g^b zWQe^MT#Sshe9hDQgCOcI&5s#u;BW?`3AiV#*kZ#%6((EO@o0vGozCVNTgaaMwFRbJ zecY>SiHCwWB}6+;-??;CwFe1GjFol+a=Geh*KA+{!%ls-`zU- zGvJ$#MCR_FnWM@d?hO|HqrS8>%5xkXiK9;;As`J!-{H$|kl$pq+7ZG$&to$e+}HOm zHim+MVKDo=#nVUgy&Ha&J{ghcqUdzF!Sc8Sa)F`2Uhr;H?)zpW1KDX0z4Xg)e}w*z z)hB})2r)+-(|^4)9NPsf-bj@qCFw#Kn3Z)PgYjgq_(L7OA}~zl*m#_Dna2-u`(3C$ z+hVFCcgukzvO6_L;cm1uO}q?V!E>la3B{HSwZbyAAXF$yG)AV-V79Fqw3RJFi_cQ4Q`OUSqxsWO(qA7opaI5PBmT#tAxix(9M?p<{#QqUnwQ?Pmhh$YRUaom^J6u~8iu-*MPHb2C?W*%s5--Pr`a!hj0YI1T(Rn+eVA5l=Jkjq9d zV0Rp|3PHB-m8ZRrG@sr;M<%x(uB#OjPH+Muk64yldSwS+HBD`@Lgpli-XG>uR45w_ zi?h})#acE&H6~d<`zeIMYX*`d)?^SH4Ou*XMSb0!B8Y0jr{S4ME>>Uy;PNlVQQ!x~ zLQjMWyza8@7Gm1e1cO;;fIq6Tii*TM*sJ-yffo+Me`CW00voj%atkDTH`%YkgHYza zd^#pv7M8h*iQv;y$A>dz$?UjCM_LnB0>KCPgJCo8F+;SmVwOIleYw8L?#ZPUjLTYu zf)O3mNw4Et=k!klH<+%9*YE3EquR50T7xW& zb46WWA-mM5VD3s{y;5KOxp!RZ6Rq8d$(YoK7F;mzj7Z{1R9QC!F2wDhwUL+XpW-zIIuS}nXHcW zO&1156zd{X4Z* z^~#3t>il1!eYp$iN42+!_@&6D>eca~3TZz~L4nWfxDjSP4?u#kS}P4m49a4Bd_2rw z>fyeqh<<;r77akf5Pv|)0u8}S7M57WYSTeHfH0tw3kxDkiNYYFwMM|+GXHy|U2*d3 zskgH#%`Mt(V`?mAbz27u$I+--UOgEXAga{`#BONfJP1OuAW~THfcCMvAYuvL1DHI7 z9W5;yO9_inh|+U39sCrGoHide1WMbTq4sw%Tu|?ihTEFS=Z+YM&lWdnesK4GJHBP3 zW9@AqU*dR01$UO8mt_@brs8JaeId5HFx7aM7)Z%2FgS{V`>d?@1dVGv7I6V!`HZuk z@ctYt1A29g49iwZ13gumlv;5ty5sRmhb=_~)e&V9rEr9YM9Us`&s&F=oeT@ZZOFLy z=O|TL$^@ayykmK+-CnXgzN*>I<&H`HP54weoZFWy-K=X%>8oUb7M#(XJGr)9y-+O| zonLH*Y6^IR)?0>?6su`|z;>g&(;Yz+G#30-7cXELVE@M1V5Fr33*Q73 zxHjMo1Zf*9wLe^dx^E_G`~vP`IXO8iz+YbK6DFxW;9SGmpU({R_5B0qKw3b%W$lNN zG`{-1vPSd&(R|cjn03i&d52mzIk?s2ygl#;RZo2$9TzYe?$47Q z`k3f@5y%ft>v@dAddjs8AbX+2wryaP83}OGbr3}buo_gDf^`8{<#>M+dAu0~^RRAM zOdxQciX!4d{rVLUCeohuO%`hygGUHsZh<-qmTc~}>{CaD8U7Cqx^9EMZ8+69d^7Bm zHEp5O(b6;((eyictmhB1awQ{L>TAtcdZbFs?%hUkn)G{dI;t_}WNTy!NTceO^oovA z{hQS?=lnfXrMmOdfMYK=U1{^gmUKpm?TC`<)Tzo|{3sY&{Inc0y@CsI4v&3ni8Os< z1w|}!&Y&sHks6*951JfFKC8$@ouuF9Bq-zLj~V?<5$u>FRFQyOuA&If!RRl`HF7(3 zCB0Ca%Mr4tq`Wy>g4trymH`0<;=E>2=N>i^ zlNP_NvOfse9R7@JyWG)}Hih!rr<4aOS*+{d5g%TUf$H?uK|I;}AOt6Gx*t=*39+Kd zszj!GWA{hi7-2=xd1vr`i{%F>BIw zT^uTQPz111U;TjlKa9O)TvcED?z?D^?gkM7l~!6pLJ*LYW>F$i(%ndkD5xMH2uMjU zTDnn6QbM{}(p|EEGbZZu{P#Y4pU-*o3qhE3t}#d4_jP@*xidz@&J*ulU)S)7dSO}I z;oX?hvU}RNlSMYM2+OgrJattbGH#SDI>IHd|jS^AhAMakkuQq+>o1q}G{y;)4>(h&AH8if^sJBLVZ09Q zTvxDCezKAmxY~ARiQ+|Ytz-JbOvP#Ua(^#HDXvwMEiLSD1Z8L+HeFk^8Q2)xn))ny zFkXH&7JAy&^&gcpM`f)|?>oODg$3hlpX)zOY31u>TYn$c$>;d+^Ifq2X^hoE3q&#K zy<-Uhl4T9!i5rH-W+{Qk)E;VG;MRoR!r$B*0?Jd_t{f5yaQ{Kk3N-sDl&15d&g|`9 zZl(2YdL#S=KUOXH+Ou$UTqK5sM0Bq*#Jvmri7Oj<*f!5zOhv@9|AphtVD-D(_z1y5 z>FZ5S=i~S3PqYdBR_d`}Vy{z?o2l=VHu|oVQ6I%fd6S$ddGgBn{KVjVxbQM@bM;3I zk`#y~h+Qfp4htP|xw_Nyrkzs1CA6p;%`6_Bko#q6xhuew;Rb3!J)64@)@gKle+HWz zIWSSWJUT^JPoZA?YI4vT*{DR=(NN8{J`7a;w-VdNdCGoI3=Gm~oG>%~FcRYBA&k#v zm9jMc#+UrqYf*BIyV~UU60(VGzsdP-hNlTf@uy#}8!0z-f#;10AI(;tjAJO2Y zagndao_*i@f%xJ2ti|VCDVRHFkJBRc#-pj3v2IT55uhdE)mZ$`-{H`m?c0J0(wecQsKm$bL<|kwSr~T zp7*&Y%Y(Ypkkw{fzr3Mz=*gN}$6X_y)9EmD{9bMNj)+=Q1rC*NFLSgJCJY>k=YY%M z*uL>=KFaTAq_>7l!CXO`C(^inXJsx0pp zbeG9UM#ncwz50%R;F1KCS2z)WpC^2H(Kc|K#_oSzABJ2R_X zBAsrW*_6mmsHD(M?JSu$3rdlUuDZ|UtQxoAoV+DL`+oC1^1=g`BPq2n=?d>vp~0&z z+#==CWEVX%W=Y4OEqh+8hC0tC zCYCiRa~ZyiAT@HRSjb+8*XnNKi`tc^J;<>)CSA+LtLL|btHs}YvmNefEei-gVY>Fp zvX9Hn6QYVFijL1Z1eTY)_3(aF<6nDrwiL8}n21gPw6IGdbcM{UT}RBcv?f_Z0!1>G7@hz=u8RN-33X64bURTVk^YQFN*E1dv%B!-si z!`SbFpVbbG$Y>($WJh0c;v7TorOgm*h7|4g0scDX^I70Zc=iGI2{8}`{Kztu?sjsc zD>tRz2-D<~CIjfxX>ouG_kL^17nLy!NobjMST$7;f z2yT?&d5owv@4PIk-i8Xn$UKg|4AAKqS(nVXS*T+WoJiR-istcJa&HMuKqpS%*%s-1Lr7Cg)tT9qjy8f179>-CVC=?^)CN zz~rbY%F#Xfc_(apa$=pUR1Nc~)W-)Hk+JT(68$Z$u6kv)dIx))Wolqs*|h6UGm*Bp z`+A@B_EBU{?_*HA97ciL4>tVmL1L8M;(hSsoJ-Uoh;kAx4fm=TA&9pJ-xB{@t6O=) zW!kw?imGXs*(g|daMx3*yTq~25=U?Zsb{sO-f1Pm@*0bpcQ?^Dw6S|#m z4Sqs?93G78{Xqve8Sxgyh%H|jiL+Z?R-Go-Vsx{Su@ZRi<4W_Boe^LRVK9gr<|Y<_ zYGWC&d#NB>f1G(ct3*Vps0YXg8<&52&MS-C>PoPhRF@pCMh`3+{B&U*kNyq?nIJiu z$v20S{kI$6k5G=#2shJOXN<)Ni3mTtpHMj1Wm2Fd$ECg}*ZpjKN!Uab(0U1%C;_sviHv zeyzl4ugh8}E>vX+T_fKt>z-rCcXtmY73_OSlwy5oIg!+`Ot)VjR&mv?cc}vQZu=|` zZ&sg|vhtYQtKI6Qu7%R%=M%SopX!Oo*5;Y~U{E_+Q&iXTeAZ$ZW=7LVBC{pS1zN0D zgw1RwG_CuIVFTe-sF#0Tw~MQ+>u#|Dze{uCBjC~G)_0eGhSI4>JX)noI(FR*5^fna z@b+}-PF@q-Z?Y)`vV=}a4R!;eDVws>`gp>tjaSkb%qFD^U4o3;XHTqi^Slleoe?rO z2*a#JzumO%wEy8LEB4SC2B1&R{*&v%VM~Nq%RAb!KqboOzMe66?b2WeW3Yj-4R}Xt&-h_XjLGQ+ zDadRij-<+QlV zbvh~66;skn153UVD0&?ERYeAzb#VCbfu$EL-*5h`#&Aj2GepB|tt`rN=wp>$ceYC< zI`b^*t4TZG1HoDZCfl>q?fQyI%wnME*88$?{o*&+3j8`nVV}FjBoDiCr3_B%42?vx zgI;cYW4wtqmrzR}v_aAD$Cm{oXtPe~V2dI=-hWu_P{MhdIduUT4y z*rWW`aSXQ7tra%{U^)AhNV2kP{G^Hr@Hm$HjNIyf+ax$liK_3^OJs9Csq91X>F(T7 zl9)~TFo^?vZ1EefzMsv$28#{QGl*Xpfall?Z)lm}guZ4=1e?FsNbO$j(B(QL>qh%z{)tYuaHt;lV|^?akgIP18p|yZb;lcEl&d{Ou$s@Y6AJ zo@x)xFQ)k=xFF>~P6)6=Lk7HvfhaSJP45fbz1_vjMX>sacU0){q2(?z!mwJi_Yt|b zS#Omw+Fh#NPdrZkJ!)%$Zq=%FeCYT~OnN@5COY3O<&+E;DQ-5JxR&S)b#Hum&InZ4 zjF1T+zPyAK+xMb<04g?oZXqi;KB0ikzBl|~8WnjDFauPL@>(aP7>0c}@I%2Q;r;J5 z2~Nf`*1w2+w$PoVp*d+eDR@}zI&Osv5$DsqjWGpW2^QQ~ z@4_vdEv)&}=yK?PvJrtMBZ>W+K34X@KtmjNIj|o)w!=c^*WKcv{uy&u%9}Am)DsI9 zIZ}Jrwu9MSn%KM57$APr$LLD_K+^Ghj-wY89z~#b2{u5c-T`;Kzls^VOjMoftO+h{ zAnTUw16q#4v)UGxwj_!;v6~X7cApys>@BD0W>oy9eUX~XBT+2S`ys(c3Hl{>qm0Pj z--H**0$udi{mB!0o`h57B9CXaSphf&V@B)46~rO-#Q&XFS|V;?vuRHg&%9}sG3;Za zy0=7`-|cQq@;rb|?@Z-5vKAg}ln`EwqXT+_pG)z&t#S(#5K2W%YF2i$FTm#O#N@AGH{%IWN`gP0bDn zF07roezp1G>d!kY&}AIo@_To=zze+oD8Hg|?7}oe`Qh(<5C1`Ptt1TP*R?Z5Hgt({ zt=_{aqUk=e%hkU&P8Ro$e#bng%v-v4c`9gQ)kf@OP-P3?#DV7U&}8BOzPI+u{pNyY z(PGS0>RxE$V6@OS(WjUzh>%;E#7r)a%Py~(MvA_*p|>+8zW*qx$>4XK@t|S%khntB zAZ8ET$lFk8F8df3_fW@~JRav=Pp`MDf0plS-DB^<(=}sjLIYW&lUm(3*(XlzHwfjd zKTsHP=3jNGV6s%|li8eUNFh#aOTOI8y@9=SYP{{)uc*7aK!?Q@>ut(kYAxDAi6G0E z;^pLR2Uq3wqv0*SsWrFS<8s9>+0Qx1#zSyGk1tawld$i_GAwQo-P}f+gZm-&=+&G_ zCwbc7yI7^h?VjL*>Zqla!YIZjQ?_cf|5JVD>^{%(moc;cq^xV9H!^7)#V0YJ(K-+skwk`mFl$RLJ zz*Mi^gHyKXZHkA)zCymgP8&y7l>4mZcA_~Wx#(%|vf?Bqx+?>B`+(43AW+&TvWMup zB#VAq^K#YlF;z6s9$YD{VhK@_D6ZP$5&!%XcY}1yO4{@m@=3LM1K$T%#&P*3t}^Ej zWNL$55q!S{lV{qjGS=NzZ0lNn_=GHM`D6)N5xOmPE5+`fSSx3{zXGB=IMt~7M5;j- z%_Exe`=VPu6_)Se{Z||%mFpx@8CIX)M^B$9o2fmEh913KB*TBtPl8o{Z6b z^4qoAJhTeX37``&Sb9mZibI-tqWE57?=;ob<-AmBP$b@75Ao+XS~RLx{c{uuI84ewsu`3$>p1L~?e1#cN>Wg?kN^i;q>lyK z{7I<@wj$YISv0kI0cF4%D1NOi?(d@05$1r)DgL1ZXf zg|~xdRoe&Nxz;If#-~n_6B4i2PK|2g4j&e}(k5Uy7L`-MjlOp6v%e>QfqY4K(f52w zvK7Dr0$zaz&Ub?)x`G<59~~E`apwrP=HVZx++5FRubfFZPoL28Xo(^bnyGC@#}3VR zbhfcQB(r203|-(tRl%R|SeSl{M{W+;{y>M5fpMr?`~CaFfwlLXx)4#@%gYN&&1sal zeVeSav$L5e<>_BjzrBX2QvTXonhl!Y%~*IaiZ59|p=E;{*NF{1$z5RVEt49-JQrDnCyCI@_XA@a_AXp5d-`k)UF35j|rf0PHhZ z$+1$`C8Ai_hCKr&@L;_uxGlyagQopz0krL@qq+^ea{7g91?Skr=z8Dy7+qhTzHfy= z1hJp%1@ov!zA)vq=I?4hc|GrnKMZ&Bi;)|(^|E7q%(^e4UB!HcP0&=(H(WFm=U(#p zc@g!>$=TdCR>9QPuby;~>iX1g{JB%C@cM5Gv~L;66Tn;jAtCVO$ z-;q~PfC+1Bk3^p7)q4vi>{&sI4q1$gn!K)^rAeEL7Mp{a z(&upF7V&WR2s9Fa_nt^Jt(4xMMx?V>nS-_Q(CNhZ(W6tgm%C3x?^->zEe+xvM5H^% z>Ihe5&K1K7ge*B*p4tWt=aFL-53N4*tTVOCYu_T~TB}J<29O7pUhk(HLY2s5&PwBc ztta}ME>0F^HQfp8yru7rpPwDzVplrC-7Y!wgN9NAz^KeJbh_&{A15O2GIf| zxG;8D=&%izZTyTd#-<+TLSoV87m^bb88agPb}{rpo>H=HGSwt z35`r+RvQWGCnKwJb32i{Ia90*Sw8nSXp1b(?$z0pq-AQ`PG^3wb}4OJCSY$V+E;DN%UfD*?46cTMC zjB3+m!-+&3XJL?xa~90t$H3_JWDg3|`;TGgr8KVzfQ4JDCV51l&HA70sYq?2cduSe zrhN*mFzKUMONbLd3TVzedKU1pM+z0#!S|^_x^K&{rZ3KQ{ngq|$NQr3D~>%;C}oz91nK|UcIUNNcoMjz_Ds9RfGO>-IBi{86o8LED^ zx38?-|Fw7%S&d?`B`3I@T+Co+(|+!;(Iq`*mils@Iz`;vfK@Fe(itg8QY9v3jFn>) zog&HXkv!~QK(zUTiSrh=hf#crXz0P3+U}OuZ{gXW117}{%Y2Jb)$_X+=bq8JL26|j z!qo2-+K@|=SjaucJ$41PwMZ)D8O{iHH4=UmaZpnub`+uY@71VEknj<@a^(t?UK;U5 z3aAWGjYW;;-T?a#vLu-}R6jy_rtsYl0Hp^&+wF~rygV6XZ!$jsu(q|eRb?K<4cpuY zIz@nG#SNC8Kyd@x$noM&rpgue*Gy4;YRk<}$%U@~8~H77MyJJVam-_!<8l06WY=0- z#mAW~cQYei2+?k%rn&FA6tS#G8V+_Aa=h_646#arpLE&K?@XrH!2*Fq&P=NhQ{|-c zu6C3~qsXf5P{&)E{+m>HL1|eu3kieCViUG-v=en~`YeqZ0VB^Z=?=mvw7?SK*U|vS z^Sx&*GnXKYPvV)*XbPS)xU$|Of!h>ukG~H1p?rSaW@iDFUu8i;y*G_hOJ$6AU7Ln- z&&+@&IJ=z~9VQ=LM;ctyR-L(oI3UG9$S&)@$Bk!(RC;PpZSy(VTD(ceE9Y=cMG0Y5 z7ONCvX;vyicT=VhFkn~xd{s)kN7NbSkQllGoN;5q5%aDx<5B9($-pp9M7=DAQ=vdt+4fD%R>4<*h*<_7(

FIk{D(xRM|jTJ49zP%|*;B++6I6zIXBn@o37V(!KW^alA>4 zksHA6{eOKfKB5FmFdwSD%l`?(_&cgN3)s5v?C@NCkL0h4aH-U*@c7c{#(6lBP z7#ILjORzDYH%nGG+N5fIZJV_Xovpz5{?-pI`9!S43sKc`4y{l`j zWiUWYBHR(8+~Fe4T+z2m8zyzsg1sowT60yOZ>L0ESh^?@Dn?a3Wxg2iML#M`QG2CiwK$YIH(5#WmWdFM^QrVl9ae=hm@?7{cr!7ui| zuud`A)AAAMWX#vB$K9IXJ^HwGaW+ES4oB!`iNj_Q^kS^{w^_qnv$S_4mx6U#Ho!I& z+}?cwesSFtTxru85-OBwW~CJ_%Vl334aQ|uLjmJ+U)LKrgpgCsILvZ@CGLMbhf@b= z0FYA|nzzlr5kT=9-0B7wfHF*^rm`Lk0E+;1cWluoG50i9%Y|+y>?bZpTn|Ib*4B@Y zKX_6rPO3+xi}|m-=489vD!<>l-S#=N)VMq-e*A>=(3tE{Yu?*57fUVVfSVwM@E1d5 zyo0hVC=}c%X5~HwDtwEX{G77+T;9XZhU}wHI3wR=ska9-7z5?Uj#3l*@m;WC>fHvEpAO{|6iC^s+=8!H%nAw}@)=JUP#jx^f{GZpq(%e6_z&wK;!*n>A zh1lp;=h+MYbe+b+@?4X=VciwdI50DB#%Jz2?wy`#K*Ge&FQ~t-U$2T&uX-X@GNxa5 zJjF8X`@VyaMWBm-v>g0F={faRUmBRLdunq*iA2f8v#e)yI&U_!8(#&3nzxpI;RH;_ zE142T5gpL8`FQwDaV=IGSD~sFdvW*L^ECH*oXBJ>s=|w}Tg{yJ#v>I^OIF`;jrGU-JUVnOxq$B^9c>j-9ID{EaVvaJPWb{F!oMrGyCX=qf2jn$8eur z-&MkyEg(|P%Z?C=2zT}xH_T-l6T}{o+mo)w69KiyNN@dI4SeGeJcH-n0Hh140qp5p zT2)goX2$yMUw+!*(nTaDcS($(P9>C^PJ7hDJwv@ zd{UOO2hBQgx#>zG5a%xd>34khM|?=wHi9sU}mRi>KJj4|ms-zVp#U=bloMp|Sr=}D^tlN}IhQFq7lDgZ3m z$;ST|NTQuz2Xe;W;Noh_)6VB}oV^D*Zoxg@jswi@Z}KN4fADsTt4rZTdWkwqdzm;o zIl?!~iB?D%W0J&_Ud5#nz@xyieKaj0Fav1V{lFa4hQ{^2w5-6=0%wuFuVpUX8L-f& z6h@C9sH{|>9%9?|$Yh=QXl65Hv2;%_-bWbokB`uAzx;Dk+^GY~=$nDQW0}&Nb4Uqp zLp@HqmlHO~CTNX;5+m@)*=OJD8qZZCmzE&SAV@YveF0fz>B{jukf#3yDeD_x?gi8h zCPl?wZBur&lvj``6xb|i1gze4pVQIN_4m)N*MK}fEEp(?09}7*Xtk@s4_mXL%1u$y zpynL&`xlJ{Cwn!!+E)>7=~1h77LW)%XUI!=EA^OpA>8q8oKT>E;=>SU;)484jJPMB zk>2C~VVQ0T-TN$*sV0I_W%%y=-6+F+h=WwPy+(C@-M#@Lo<4};w_(~`6d5hZd8HD> z#?fj))L$L#-63d8E25)T%Ue%B-659uv+Sj^FpwI--q4uGs&G&sERXk{mo)D>44$C{ z8nFZ}sTeP=4zq?qG9~IfI+P@F+_Bf%7{+Lf<@*uaxaXcXSdVb~`CoOPUE?Y;ruhC? zU`iHGW3EbT;a45`=R-b1{=(aV6;FHU7LiEvBm2=Tb7dtZ5}@L*suCGE%*?zF@>#d7 zLz+1^{Wc{;q3q$7P<*2=4&&u`Z{Lpl&&`69nOCfF&sr-gZdiM3DXq|#&_);pPXq0~ z<6NI@vX$%~<#|!oS{*`lVw(Y!Kc_OT>LKz1u%@&J;Mp+$_-2~aVgg6P}f1UuIX*8qKRMsztsL0@GI85_WR0`x_2_7zIMxQc=|^Z z5gyu}5*sx~#srt9-h;2nF%ElmfAS`7P|tNia0pq~Lk+^JFK+_;w&9czI|*2ZPqKPL z7lWt<_YIcS$2=dP%vU^4`^=AWoh4IAqV*#>3a@#9b`9vHp>{w=a(mvR*V`XxnLGp5 zoW6QvGbn%O1r9?f_<;SIYLsAFK(^j9@kPClif*`Rv-PcP!#qomYzv~ck~-p5%7fCP zoT}|bfIaJ^ls8F~rqAC+T|n_Rto*fr>A=S59vaUaIK+!0I)NN%T~o)}NM$oVWai+D zxu0TYPNi;X=ClXrLz-l+&O2bAb+K``2+q>eYmCsXR~YI|+P?!fDZT;yUc3*YhhyqG zh8>(6uaB)Y>nf3_*=D&WU&#eaJhC%fDp@9WfHr+D1>ZUHGk6VL*b>!>PVNnDrkN1( znU8&mL466@L(Ev8>*uuVI;=N=p+l{CWC%W}rKP2`@^Xq`9OC85v1dXM#_0lulqvz< zWC0-|um;Ku;je*r;(@9vHtaeF2dl8KZY*!55=*>%mz6+^mFw9sIJtPDu*Q@6Zdeyr zq&tXm7c}?6_dxaKTZ&YXTRP$2&nph$A~sWK2wK9>wkE{nucRDE$kzvdei?@c3l8pY z(%qZ%AKt|~`%v^T$|&dUR4*gI-fC_)M_ubV;DS7j0Kfm=PTrib!!t4Trk#2tZqpkK zWULY%EoOpZ*m`FjxG2x{Ytu9C=&*hc(eV$_rp_Nw^WDeDxP?*)?k`N$FTl2y*%vD3 zeI&Q&ko3ZXL1-PC0SRde67smlUyr$`XS`)xj0hi??jU{IO}EBuG|qk{1wV5h6-EMp zQ$&!ijWtl}-_6=%7q>4wN{y@QsF3xP5O26e{9f0Wxr=wBdeOETR7D36uSrdT=$0^V zv|!Lro%I)CMP(KG#iTRbz45eHYqyUfD-G#<)W0+?|NZ>oghW7EUh_to*iQo^m@Vpf z2jo+KvYL=3mIwi}|2%KN2|n=3K(4-?Bw;`UpoIm3V7X6KRW$$f|8>7t^KWo--v{w@ zuy*wj;3x;!80@3K%ihU@e$XI+@JMI7y)C4Y2B1g@TBSe*?&~c&xNk#vweVDB?Ngy; zfO6TG{xhjnF>yjiB3=FS4BPFOJ|+fz&ii5tvkDI;Z54qX$$2c)V*Zen>Dx9MmwAG* zJ9EAVWxmkwkoJsGen=NAe`u4PV62B?Z0GTU>pCA~xF@HH7D1}K&YssA73I$5AMaK> zTi;BDPuqCCwI%kDkfUuyku{MWH0{b(mpgl;I_n^Av{1_80{@w=pCRxM3xeDSA)-dpcSt$mhp1McoDZN2%ZUdv%}+T8=&m{&i(3*qutg<%ti|I0UJOeNyu)y34?eR=%{U)HOViJr}sDuM-G>g zm63|S4+rKXw<#|Eug;xCPjMp)P37qn-7_q|{SMyznrk<6cZX0Qa%;oG|MgOl`gW&W!VKWb(| zZtS>H4Gt48>Bv6AyOakF<$oUF?|Lm`En&N4pTe)IbSjj%dq)r_KSVnJhed_2aSM|k z&^v3>SEn#V^9fPeUD;DM@^bd8RnBjla6ww1;A+elr99#m3{hXJ&p!CT>U+49+E8%p z(URmNIkc(xPyS*X1~l@`uI=d(gS)vhWV5SLQV&Td=jk zqzHK5q*;s=p7^Pj%7be(uQU@reY8H`0(K^p?aFCjRZ0aJd*g!1So%?j8|%jxMhIVq zVB>HwjeTy|V{NoMiM|gmeD}=%p+|flzL&Rni%aqVufC9j+8P*thTMf@CcVkoORRDc zjq>LeLl&P8rWaB~mHY*pUKO;EO*Xi4G;R#2?NMB)dV2ST&r2x&t*<$&KpIQP-4nN8 zpcEz8$wLiNP?mjGJF;*BfeXti_nTYG6!?!5ApbS7zH_h2WUjarvS+bRa_1IMFO9wP zE{}c(P2`{p#WY+-)$+Sqk2@vDNKY8Md2wy$?R<6TJ9Cv^1Cz4(15Y7X-;LaNMM%x& zC)*j`74Z^GuqvRrjE+|L$@CDA*D7mv7k}$0*#a`ek+~+^oB6l%X5CF@7H1UYL(+q$ zE6zxrtkZiUC@-y|L(gXqUp{8K7}p2^c)WZ`{EAIoRp$c!#m&zA$3%b1hce=jYUO`f zR9MKA2s8NViL6pg&ys7gcURD=jN;%`m|j4hW7l$!W9|Cz_W7m}27h4yj(;OK>@U$O zbtmG}`{w%#Q&_mE@ErWImZ+V|R#L%Vdpg}VjXDIL{ug}ps^u3xamd-WuLf{LS>DKA z+MYJ*3!lV-vpBH5;J|*7G2e`d6k7?|KQG`^+tpM)MZQ`?xo_5SGqY%()5-jlajDu{ z+zfV!U)#r^@pY(u z+_aPE7B%$$YWD$XD@BZSx*hO;ticcahO5UvKIUr6r*(e)bZ*BHjmrVIuhy8|!Nlub zyrw}w97lpzOnwqy;8(usqZFH55CoBV)O>L$dXYk5kf(LgkmGdZAyYN;!@>=9xF*(S z`sC<~UVyv91MFDqzjYuM`x}0*M{CNfZX|yy0WQ@5#-k?|HR}2!;t4=mA&`}C=Zc-O zNM|-J@Lk;KZ9k)#ySL4I()16ij*Z8+_tnHBe5|AH~KslFwUe{K6^> z`K9r9>WDAr;pTZbdi~ddIc^MgF{*Lv9^TfSX)?M#3FCCh$7W6n}aW zg{E8$DW^I&4DII~JAQBM_$*>T{(bDY)yduF@^nkkT)&)Pb#6_6-z#<5wViA!yWX#}>|kncAQ zDtenLN*3*lQN#&W;(Nc_xOGc6S*^Nw?n<1DcOBca@xl6U`6ynHeFK4>G`xaWfaW&o&G}?hI;mdL9GPITblAjPD zv6msihm-cKB}G+{pFLKqb5y0b^R|EOI)h#h<&@<33n`V&LcKn(Y+mzj-ma7FrNRE= zohc(oX(#~epCGcQr}SKemP|B<78h1={CvR!KC zl|(jg_sDB$zMc2$BrVIXX5R7@DSMHeA5(YI1`4z+Kb~3May*??HAbp+R4m#Mnc~$x za>7?|?90Kr;B3lUW+t*{o_rh7`}? zLFUdEGVyF9hKYYGYxiF5i(rs~gn=E*V1rT`;XMqc`huiHf-~*h;Vyo+AzhU)n=JSm;)Z)48 z`=%AW_%a=6Qbjdw%6ogp$y>pe_0eRNi(hKw{go_IS;}b;4WnxbQ+N7GS1iW5XhXhQ zAL4t>vm;b7UGZCSQ;0)mE0rwmzrnwwVO`-JC}Ueg;&AtPL!>^-4RHgEqzc8!to(aQ zcr)52q3Zg|qqHo#Nw!(p>H8wBtwZ7RKFR_SJ}*YO|NRuF)+y&TKvYpVsZyq%x5H^< z%&uIgW7RXWUv45JV$@m+4>S7nLjnm{2%7mr1}&pJ-Lx+@6poL$hXUmOnOs;T|0snO zonTinni$p+;JPX~#53EYPTt*{_ldd2v~exieLNKGaMKJHMvaou?mY`(F?Eyg7-kk@JAatgQcw7bF=_hy?UQQ+Os9w630_+k_ShpY>hp8puHy4dde3QPXjYr0 z|871=U`>Y`6A(~&adGh~$N~nY`WSW<89O`f)aBgll$P-d+nuF&lgFor8zKSc;`WVa zhg4i{zdHU|c`1ppl!4nBEc~c2Y9sC6BQnA3L~1Q$Q!>)>!}4|2rAVJp}0tK!T|NB$s3vjIAq+-q-Pj0i21?R=Yvj z7gYP9!a9y5-y+MVNEr|z{D`jQ1DL?fqlW~?+vE_$KffK4=ms<1Ph1;IO(v}pI|V04 z&$aLjo~`iJYWC|xIR|7mg-37W8qt=2;`-N0rK%7d{GE~ujVvtKU{@ul`Ri`-@)Cmw z52!Y?KlV2!sEuk|rQO}#BV+j~fbjUQbp#4F;LmAQ5wO2hji`TdA+5BV8*h2TpeiEH z#w0slLW3a5+!L-ieqZbT1dZ!rK+yARJ@K(--?&uSQ;!lGqBKtg9v+*GTH=T&v-KH0 z$!Fq+YB!yT3;KyJ%_}b+R9ZHU#{O5-rhoPwe$2`%l)qiJVQazdqWzyyR=o6j~I{m;CaU0i&zEbUbE8vP}9dH7-btITM{ zEA2)%?lL4wTtU~~(&UJAoyC6ppf7mD+f_lYuRZep5pq@}{_9uEV*fMiO0UyBI8J_V z1P#C&D6ZA*zuRlj%Gmg@QWZ{5M~~Wmb`&*&lyRT-mz;`NXfJ6PaJx||d}!jj8F2c= z?uD?}7o2&6qWt{5mA!vAam{7vLW&*S>~P|2JlRNDp%P^hm93h*`p8)AsRKGpE}@0rZMEmY zja%&;?T1xolbHjpvZXjWSJ#Ye`i>f5Y*8$pgL|JUn5IZa_T~!AkLTcT*Uw?d>h+=O zJD*iIkU|atAJX>L}d()QcMgQ8Ez`dx%FH27ynlYQOpT_mDsA zUXif`zniaGF@FG3M| zGXjk6|7e3V+#q1!L}8h~b9KPVn;u@ji6B#XvxQ(nYp>(y;*>If|4ahEx7IbF<;0Cg zTUaKW*u}>m<%KXz@5LMTQGPSxb!s)*cvA+9NLoH_cjF34YWYK@#mccWJ>%eJTB_S& z^rn2jk}6Lx42}e){>fxvjs*1Z3L8qv)Ac)Y3JMvSnV3)to%7Na*i|7RDlld7fqM!s zG_1S^rUPP$eUiZ+KZ;fudJ0twE0l08mD_!OJGpj-$T_uE@`65bkGRBWyYyd4#Aj+A2H(e`Z=oK`SM z#eX~3d+(8X4CDDV)N}SWq+|BqPM;Hmi@U|i$qyQ=Kpb=42m;N6)b>UU9p>T;?VABK z4oZdr)xL!!hX(6rO&o=*4MX_4u@J-T59lFc@Opcq!Ibm%^CoV7lTj;jJ7in}5?x_) z)#-dlOXcAEM$wmMw}9xPu6BrA#%>fBcONg=R;I3XDqgpstC`+mDV_Y)PXw({k8L2!pT;F+ zF2<^3yrOH0Y>xocZPgyCfJ1jxp@PSjt^S~K6kI>HznZ=6j?EDpN5gBhiPUP^IkUpD z)Tmk{Ix8-Z{&1YuLBbsq#(%pG>kZUJ*7PS2yC;9<=VL#ULVd(Hwq-z(I;nBdjkejU zok*ptF7fIj=wN8}xgw-R1Lhgi2 zK_kB19bJ7~7NY0=L{=-$8I(|>A?gpP=SkB^cvJHKZ<61Gg9Av{L`FtNLP-f_f6Rh% zY`VbLuU`{{?C5~t?`=ZD3(FKQY(UUz7N?LgsIc$zFFH0EkEA!O@dWGXgARPavAPdu zlTVuD*uDCnt7!Ho3K0vyE)FTV3m_MkQ2%dztn6(}OfcXJ>lNyN_&~ghiVEMv>=f@S z{|6@j$&sB9J=ClMGuQfLH8~X1sDpq`GDt$}D5#m-Ag z6x7tL;QfL9+XjF{33jjz2xpNEGyVFK5^7UAJ3GT*pf)B0$a9cT<2eS-W00Kc3E1W( zfENeq*0I+guo=WB9OCr-hLRD{pp)t%J3r@K3N*ybyQ+Y$iK*83pX0_w?uO5@eLcj-YO ziv-B;J{Euwi3R#)j=%a@Kul$ag%l|40fpu)gmy-Q0VH05PX6ao=aur$qb)hvyb_x< zZUw(Cu5VY>93m@Jhp^^PWF|8%`yG36(^7Z{Fa>nkCQCU_1JyMUZGfiGfmJSu{K5xy z-9-~-z`+3G4JM=u_k3J}36N|EfK*&+WHa+A21$7-i3~%~83QicU?VdK3;VsX6<++l zz&zp2X4FU?hMs#ZBVbK`1v}F_2L42$9waR~?$P2RGF)F@U7FDdYwKpyjC zy7Tb2*v4I;n{l?oJDeeA2XknlJ()+G1wT;6`GRi#&r%C~O-)U?E#m)Df-4zCoiV`_ z0;ITLBlcz^fo-sr~F3*R^ZcNa*P!!-)lwCnh6pC8Ndh2J<f-!#2M|aq+F1V10|J+vubA$48w}Wiq9gpz9r>VVNk)?<<{EYG|DvJ> zxKU~jKRjdyxJgXqI4+HcKLCLVNMol{@Bd**=#u`ocT3R58R_ym0-W@wR6nj=UOT2d zzo6?7x2x9M=;-g(Cs9vcOpQo0|=9{b5pf_MRBX)@+rp zp8JC?Cpi2_X8QH6MuTzT8GGjm^ueK320Lx=OK! z1ebl84PDyaW9Q@6%9}9QX#U`=Lq-<&Qu}gQ??RA*wg@O9d9x=RN8-5+-?bLzOpN-6!l&rw}|666_3ELZXoG-@jjtj|D$y#~5r5L5*&=h(2*0I>Up7 z&KAAs*ThWxgmxNin3 z`*ys4yrf`wmaBKZxI2XL2LS+sL1CXaAAQdG%un|kyo*Gd5zr6600J;*LcNQm#1BL( z{==>Uc-$bk*gVnS=lS9(5c9}_n#%YWyGW;nZ*xEcBP}Bn^!PV`7DM49MIgTy1_Nhm zo%~^krTN`m%ak^WyrbC+F$Y?$t!C;MVj#+6b8t`T1(qpfY}nBxP>VR4@HdRPXS~+1 z{I9E#t|%{$4Qd|l5UmR!jV~dOkSJ(uY^;CnpfvS=QRu&T^=jXTw(Rm;=@bo)t^jq1 z4bFlmWxadgJh^ybjA!@TiMor(WFn^K|8>|)oOByC`XfY#IHw>{vk9De`210xV}0NM z&oK`u9ijj2gh%EE?oQz^pVlX*b}v|b7zIoA=Wp#cx~e^EmdXf*&Wh0nG|awP$Hf_s+9*+&mU08bnw5{-Ek z)4)1Q*g;98ZW-BhrLAJq*1!D9A9dzV7qDAt=;&aVeTZWKL!0dPz8E&B@uE9o=7&^` zg8wq!YtC2yr_ct23M?j|dtK}>BMG~wp+O2NQ{g~RH#9Uf3z+HBV1$6IyHL>3UH~VM z`+#!I@3p%a$1MT|O}Yl?x1=(sQrwg2d#9_ITAqR%mCQc6D;iDF+Bl=M@<2C~M zojZD9&p%-5(&&AqFzW9`S*svcU?bod7Xi89pwlPpG8+h}lXnIbnCC#4tKHlnsmy~} zs})*#X`ah@K;}VC)l&>Tp#FnuZ(xIUVkeeN1j<+-?)8iEf8Iq-PEIr!5RiaMP~xF= zg@J~yZg^?wZD6*pTxm_T5nNIp3LVoQ8XhBkI^6u!W9Clian!2#F}em);$ok}KE4f{+15ei0);rZXP$Wp*m?-k)lzlrGWgt9aI*9Gh z_U3YE%Z!4kR#<|t0}~U-r~w3e3P1sGg;>!44{vV*&2`_kkN(UVN&}$`sbok(Q8J4L zO-M47F(ny7rew-Yp)#b&lv0wJWKO7rB$;JM8q8$M@V`Fp;eF0~-v2r4taH|R*1DhW z)y?ns{eFhM_jT=S@7>y}?{Q*jVCi31;NuuMaAZyb#=-UYaTqFL;n7nx5T%6CK^^lI z7CTMLuF{F^U3JhHF)eoS9}ASYM^OEHs|B&+e_J}T)4ujaJ490#5C6vEPj2|JxP(oAg+^qm1X-O2_JN3LN^7YOw3};Vo#7$&JaX!RIkz)feGooI#$A zF(3-CelurC;sE7FwXYpBFm@4t!dSz?h@E$UC$>v2jJ$7;vsw49{ zoYrHA)9TVq7Wd~)4@0M^wzx3AYRwuSBEdoUi3OvQyZTvhW!xG$aES%yL($@X_`6pJh zD7?Z1Bc8OP$#pkx-I~AIpR;A9qoIL82&|Yf7#nZV%PH(|#^_N^(AvFw+yE9t$olc& zLBtr#zs6^acqdQ6?sr3dy%#aewmW~h{!b%%T?`y2{jH^~TaCxQzQqKs{syvK zyD?u7>~K0D0nxdI$xrI0uZVA~AM5!3Kc_^T7TjS_&Nn=Y&&XIM>pb+jiqG>Js$t2o zwg}p5$=>e1D`5}%gbwf59`=r(oKJ52By*@x+NxRH3GXv^;ciW()AtYFr?V|?wAJB} zBHb}VZ|+Wi&W4qaVzgc;Ww3P@?Q0bH;8>d}YM`(Gj@mfS_RG*A%`}m+WI(tUL<*VY z%oT0>c0xeI(eU)?n#rGyAvN#bncBYmv1RhDVC=;4AcGR6Pcs+@(Tvrf&WLy@6*qj$ zd(*tlnY^|Z*o;Y_Gue{VgoLY7>#h%=JwLvzdhOb^nUrSIsQo;iw^Wj)`~d{;7Us4! z55HW8ztr_9EA;?#a^+5W0BaVd86Cu<%=MhW$UHmxn5bx{cjAnjo0*z6`}_NM@hWYt z{O^k))hGigmzJ5?Cd`x*$3QucyBJAg9oX4 z;y*jiW|`F7ks>u7moL9G8nddQ*6W8vt1|n1gR1MT($6y)W>v(SlLI)_>9!pQ+kKlD zqshelh8MxX!JsKNJ{`u$3f%2`X~TbYJ~#RPA^yr8sH&A7H<(}mz4CU43!CR{BBG-i zQW`~`PW>&dPPkmMF#GF9M8xaIG08xs42M5mYQZ5cfa!El)tg_CP( zR0sd8I{jpVxy*_YcqC55AS^;e(V&i7cDS(j_=A%^N}pU|P1Fw^l5iO@_C-^6QBf8`Z59j{ zhhVf+vz4?bTTvs^=Ny>g`WqV zWTD)jyL0XWTi_l(w3uDND;EfIaddGxd@ecd*Z_ti!{M}^JoU1dwHGWcFQWDgBz{TX zK^10q#bwWtOaXHr^0VOSQznG|J-=kZy0EjeBb4iHuxiPq1Ivdi&3ZY;fCfg>pM{Is zr)H-Q-A8Swq6=N z883C=b2_?%pU$@zFwoU~qky7YE4U=Z9gFT$9aZ3lvaXPL(P_A|2u<|e^s-vsFZ?*> zX*xC3QOzssblBlR(@SibqoY(TJ>?Ioqch#6hRkvBcqV$8)x49(QPqIZEMowcP&cIF z)gq!p4*aJR@E+%4-J?3-VGOjjU-Rz1=;c1ya!$|Rr1{8QX}bAo70nGlPX+7nvoWjQ zSDc?{AfM2jkg#zQ2Jo!l;oGIT7n(x1K{Pr$dZR0T_}D_#bz3Y z73pNm#oe1XUm51x`_*mQw8@8Or^U*G3r%8^7_4UMhLJm+c+qW+2l$UwJ14?F+#CFu z#9V;p+fF#3R+y)G_rZhOk}sb=y?&IGlz|+)>C|9b)!DOWGcn%wTz_5cm(>BEL|*){ zQFY|y{zx3jLjTYo%?nQ)n2cw>0}z-MT>A0KKOi6r0fd=@z5Vo*4YB;Vj9o???Ccqo zQws$@9^Kv9e{jyIAJ-)E$fo!G`u)RuqTTo?1*R3jT|C-byM`|>b_{z|5g)Xim6eeF zb)kHU53ZhE?d|f2S(8#7S@LTRlY-9FoZYdWm$%kwp!r78c&%(pZ&et>XyAcEWQBT% z3T|}RoFjaIw6Jgx@g~!wy)8I7fn!2jx0->@vym1N3BDc_WWt9*FS##YzN8C%8q_Pwi&IJ+X=x+!HXm$PX{%cErwfW&c z%?X!&z<1|A5{absR(_%M=ICb(!Nmr`|Cg2 zlTToDB`gdPhNLN$AbEk=8#AeL-npKO9;B$AjFON_@*K+VANiS*mH^CDx)f}`$$8T> zY+9VaH@S?TLag!TuZ6htFM2~|k^4y!cGuTmcX{Hw_lXo8x)*22H|DpBvn0-b3E5s8 z=-lbbu=V6~s~cnWtZu$5mnfCgPJ;YMm5_C7wlaXqXn^7zm6Vhe#S7ceO-AgPn&M`y!1l3dL*<%WA62s4xV7`Iol8mGP%vPsO3k1yvniwY;CyC zvBwSFsIeu1;>c(fpBaoO8AQ!Oc`;hK{&exRd6*b#%KMld3?OuLv(7HZtW_`Bp%*lu zw01iUaK<{HKFzZ*8s^!BRsj{5WQ0ufdrw|U6lRly-001y;w>-pVHm}C#Gk8sK=Ino z>q?6T;0az$NZV@w=fd3_pVTEE`|h1OnaK4e_go$C96s{(q3uP!xDp$7>{tVZ{wjBy z=5&)cH8pB`_xgn85Zz(;g@g9?l8Z*5$~pa4S%(A%+jFVlv2@AoH&TX3*e}3XQKMpR zB;bgI9UlKWCS{w#1|+z%V`?D0ZD4S)3e*}H38Qf8<)woeRukpC{Hkd8hy}6*hJ7*f z?QT6_&b9TsR*>nx3s@lv0q4N9W z>xRe2_NFxf9^Lq&gIqoiRu>Y?$_T(DEIw?Awwd7Bb4dyDAw1}n=f{?~2WP@vW+NZ~ zEOY4z5){AiS(J>sAv=2`HZ}}nLb{9p4DH1RQsNR4sBt*USdppJsCAiM zB+Z1@2p%2zfxIdfg>@mP#R`Z=m=cE~85rv-*gN*A@i&{oMyN6ntdP-c(=e=$Z!f^W ziLbkE%<2C{+O9|S(qJn)g6k?chX8bpFW@#%Ri&jQ^X?!pG_Zt#DU$KP%r-wz3*~1d z;~}9ZV|?l{Lx4a&*wb<(FewyLjzd<93?JAFKt=wYOag6w>9{qNS6-yxKi|{|fWO_o zdfWFeC5puhvlqVh^^pWR#S1ywin_*6pOmm2NTWjb)w?KrWm=pJ0adtPX1vlp)Pyr# zl)02^rm%Ey=R7}u{!}#&gYeD6LqTD2&H<4Jd0I|! zV+ugS^iI%06feXm1>4pvy=mI))NtLR0lt-=pNix}OSTCMGg7Ac7AA+kgh3P$?6Dht z1h!KGJ>=My44(>7$z)rib^|?CTzaqX5;uLlY+|TmJ(iy%iIJ5x03o;adbnYj7Q}h= zS?7+`dm=)+Gs%NnV$<<5$e&GJVDsj#+%}tX%&sEYW4VbBd!M@Ex~`;X=;{i!@~&OG zRAY(GP*qsvi&!>;+uvaBA)d^Hw#jrE}e2b2&2KsGhn={9VFNx#z=3z1>f zBB}Wj&lr!Q99*YLknPYd1tB!*#gCDJdttjeU1)sJ0;D2@gG~4!q%o>j8?>Ku7+qNv zrns;h9l<2b-?3?9lq6!A$~DL2${xFZy|Mpd^|rjyvsolg*QiND)W|94BJP14Ojl(629&&K~-y0sY63Xb9NRv_+;&k%b?L#cs_b!dH!ay66=2*eA=S9spMxvJeY)qMHva_=zop!`+ z+IOFF?ru4FXs(R;hSudm&z5RStn7#n&B7j z9&3OVe}7*#+UPphMV3u-Sa;G9j*3D?@RiKn_?j&NqQfgl4h z1&ahY#z5q|?RtE_iH(yC4Z`(D$6|-12TK;`ZLjgl>rYf~BG>&*qnAhXCf|!oB4fsI zko-unkW9F4zJ1cSF7~cz^W!P-rLRLkIl~kB76%3{BhUEa(vO>uCNRQwxM<4I>yX;A z^Nj!Glm3p{{*hb#e-p$leG2}M@PYroMUMXuzO-i-P}pl*kMZ@yk!-oe2t@&zy-93I z&ZTRFwvKGYb9)4XwB_P+p5OzBPWGwEF<~a z*V~w-lY!S4Vbr_|DE=Zkb3qnYItJ(!=lG4FLez`t5>b z%m{3CVn#-NUlAIeac{Zx*0xG%8UK)P&Lt{jMFUP6xw8W&lG{rJE5ngdQM1;H7|Kqv zcLpAvL%+z9wdXrXSbh>B^5TzpCT7HGuOW9M;+*K&4dlT_A0u^X47%vApbr#$c~32{#^v9ZqPpoy(q9l8UzzG~Mzlv`Q}kQM;}0fTYHDi} zTDc1$_=pwbIm=N&e9XI{pHsdm>W6# zLV`8S5s61h$!TJJAPGQ6dn(|T6E0o&{H!dTe=mtk!Ec}Pod12&dix&S>93YMFHcxd zLWj?3kxhiPAgnVY{SsoD*~fq2D57rF2VHdD3xpA90(xv=+lx{Vv;lZ3esmWEHmN|^ zsn)mKeRk)U_`!FKcBS#M?!Y6?D@-nPcB?2x4 z3-YyT&!4Z@)p2PJQLvHGx&YNnZRP&XKwWtW&W-pfi?-ZtYquL-Ych0Oj-yh6TQSgR zM{LaI=@)T_vGAum4bUNwq`8se0d^m*1ao?-_&8&SL!G>CfzviiOG^p`vcYMj%Ipx1 z(mouZkfFi^#;96aija9okXNt7O20-kyXl>H-AXc_6>qwPzk0(IL&-{kPRD@a-Udty zT><6I4!C1qJZ~?d)v@d5p7;LXrZ1%*)YMFHhFlhA`ZaZR0|7SP(pN6ySFS|1n$M~= zJE-y3?`MW-=NcLsTF4Nl0ciYM5WH%>gcr%UT=c;GcjHO5HdbD_H~xNpLAhTpH5?J8 zIJIP&CuE}s$g_HjGe`@Zub)J$dEcDVAA6JiWm4cA0%uVQq06<8G-1rBG)6UMhuyV# z`BtEVhE=YV@FJe`cpY%!2-ibCnx8%U(u$!}OgFt$pbqbz$tpKOS)4`5#M!p&^X0tq zm$f5?kUTa2eOcZB;1P_v!pzrOR)-I>w0-*Y@Uj)LCFfmnAdRWg73W51+(vuUCIO-b zV5lkpGaeB31bQ*mA5#M@<i0MXpH4TXV)iO>8BMU1=}7w3lotD4_9K)~?|%vL*_3DlX*TRN1r5SIL4=KnWa`(nI0o4T@^Y^=VfVjM!(?IaD>-sMKz3 z`540XBR=l~V|2cf?uU#QHHDg*IvmjR`*(|wFy(j+AvUH82@*@< zr0hR%U>TY|GTPeOl7JOV_P0m_6dG85N{-Kwj6Sg01ydF?ppi`07AboPmwb(=QUO{i zUdz`@#~~(6HpqM4Q7gD%0|iD-%92axiI%|NIX@L|DBlTxjsI}+`KfvvS+tRaA-)E? zaK7op6D>N#^4*ObFu*VfFgAB~>D+vK2A)3gMDKPcKT`vXmCpEMM{AyK7+FFhN_QGu z2V&0~1RfX6k17a=JJQy{AnkojICok#YoxE(wQE=Blzxt7Sw}}lTszEjDDLz|C;}0R zmw`4Wo&uEn0fS1Ns*eFDPQ_>)?fdqPsd7=WV*bw*4#~EcX;R9g!(U3maGhBWp0t9E=2oLwdqmtaRv?4>0YQnr6FcP=I z6;8r2=<0IPvv7J5Xa$_z7$uBeK+rW1=PlOWx#VN)_?hW6|v|| zVq!>-&JWSq3puO#lf zP6_w=gWw0vA~q0Mjh!$9-f}^*aRhcSMo!F61;;ib^D)|ywr-ZjKJG_!MFRUS9QfAJ zS~yE&y?n9KCcv8Xj$kPbwY{Y-eb;btaWRH@7ZMYbeq&|9bnMtMit3Nes&JgSER-d` z(oxWyb&i!#VPLd-0a(b?d2y7UQA!^kyp@h6KKwwA3wz^VQlhwdHRHbP>&(OBD!H58 z7Z(25($dj!Sw&a>_!OgJw{t@5p@xu?AJ1VNR;mqLvz-3QNI2%GuemTXIavv=CIgF1 zpbSzfJ6<{uhjw)tFD)P6_U+qAg;fA6UnQup4^&cdon0or-%xH5JoaFu zIKbb(2a)gh)|`}sN&0>7B9~vSkB*42XuE504vC}L-@nfNoah=F3MImF#AF&NjngCL ztY8^EjRE56ZMO=O0~^1aLo$YCyuWTgD6kBIwBVO0fmcPu#aAMSm{JD3InGKh+ZWHp z(-#LcajS{g;MeC=LRV>|>Pv;3F|AU^xmJS-u{BUurUI^C9&xU-vy<42(Z6-Egt;TS zAG8&G)zGj8ZoRxY!z|-sx5}UbSUmdP1mN@@kd^e3Khl_&FQ-#7{1&srFhN7eob~$B zS$zesPn#M-5=Rt^_7@TuNpRB8`|y@>sQs6}+ri=kLz5LYgYWBw&t9skJ6+&U{AXTA zRMp3Gt=Z@QmPC}by`G+Sxq__lGDgNSP|HtF^Q~JKjLbNiZyYHYLQx?-*8;iQuy$8) zDe0?Dh(s28>seSNOM9?akM&hA7fmPs9b%a-Y$v_rS#xvcC)(6r%6AVWX=Pi~Q&TcT z5{ZTN>zO0*7%p#Vf?9|M;^5Pk1$1^1T~ zW8@$V4GjVH$9Ow_!k5NtixAdqaL@c`ATBO!9+SUGcFS#Z$(XWf8}MWFW^owQjE6$S zj!uEtrcLFgA4!{QT>ELDZMq!_4pp|q>T58I!ltevjYLp{Mp`~ve0<0V`tsuBfSwh6 z4z67T{eITv%PR=faQvw)=P}2L`xcOvw!Npf7hAF7@NID_Sm1oUs%yc)SMm3Rns{?Y z@*1ba)uk1G3^Yf`BBJjiOG3C0%g@h(u+CkG@_e;LDiDONTDdZ=<6Qd-yXhZ~V+n_Z zMCK+bDfW`Z1=%}N7yO~Qu+B%w-UCjl3bt+)B-zjhl-ATNpBnyB1qV1 zXo$kWcV&cX-!)EexWry;BxyWTcDEi_keWn&*sM{kL?S}-H+6MYzkgveWt%j4xyGj_ z%1Lq+@CSSn13VzPfkZ)?ZQ00#RH#l4``_lLA6!UjN?LI+`2ILtOR(Z3&ZnzJ$ioO{ zT7}!U+;CZDwpGh&*vV}5sM1m;(hCJPX)jv$iW7U}>e`Ki+x)_A6S3&Hr54q!U{jTq zm2s!H!tZ(`xn=g_W0K2{BuwNu03dx0YqEY}VZov`TNqOGi_;?}+Nt`H&I2T6j~lrc zkd`z7c5!nv1ACKv{P7A&Ny+StJOmZ#fTx9s_$?Y9Er;duLpV#QOdv2d(AebWr_{!( z#5XTvIHLgL)fW!qy955+?9R^fucoJ`#c>i3!~N{Q=Wh`ZsEC`xMT`LhD1nQ9EiZ3Z z!^4AXz9oh!n8M_zY-<3Uc}qB=>Ka!$#Td&Ws1HZGy64lAfGhZ8wYmV}a@c}< zNtbdOuYAO*Wzv!A6~6xdlJW8J?{T2G;7qnCDjH=!CoGqpgM%63yE1VWytxAMONmvn zG7ej4ybc~ZwBt}G9!dhioM~ZE5f=i3M_?@9;~c~wqidM2xG?SWqdt-0c#h?X%JOm_ z#^uY+i>G^-x4^3#Y}v8n7WfJ0rNvWFP&kb2BRDsnGKmj3b1`s$I}k-42GWm#{o4WA z+F6P?_~gP&5WHqs6fRFs&&q~|TjWy-B>MI->CoBxn-C4~t@d9vGPCraCy2d6nKC`0 z-9gqh)%Pr!F{}bD>Ep97-OCC#o^i_`{CF*cBR>uc+j>d&*-LVs3*4km0&hn|GW$bR z$p$VL`pav|?7IJa-qK$Pu|4*$EX`bcGT`zrLJW4$04P|C-VNzNA{Y)ssHE)g+^*WJ5!YkocE zRB0<5h_@c%v?z#{&#tNFb<1;w*!aXN-5~iYjR`{smTZU+TECgIT90Q2}^48Y-|UcuA!mf$oP2Tt_xhs|Lp@?ztx72k9sLf-#Ya7$GEoaZEKf^ zP%AK4ui`~-_xS&~Zo8$H0?7YdU^~lX>X3i8bLq!>K7HWSb=sGt1+<}C2=n4~N^C!f zCvA~Pp3RBh@dYapsKaOM5BUp^kZpR$kI)l=(^YiadoL03sAEvx^C6R{EN&DudN(2? z&3`YzN}_>j_MTF%3Q3E*%xhMz^oony(7NT{ovb*Ej))r+6nHIj^e@WZkCpNNm|Gy< zABF`H)a^TgTV7aLC|c}-uR?}qWOUS9TU}nhn!5Gd6$EPtVlZBwiURw7DP8s74^5IQ z#WUQzx#8B^m8(~8+`X7EzN5<6x*)n@?uJPEfR}pGN0GFrI;oZ?c%BI-J$@`$q*uMH z^_#!;Q*A~{_?g$+1Y2*lwuKiM1?V!JJA&IIe%H8^-3L1W?X&jv2Afk#4XDhpQ^tP*BBd3CVr z^J{w&d#JaVgk&5;g#dUe8bw7#T3T9?JtP8}$e@srz0j_7|M(FU9=;O9U!3SsTre2^ zWzxAf3knK+1mc_5xz+Mjr&4cKROEvjdyO9Smg%X;ECI)r!AIKly<;bl%nP?EF@Rpn z<6OzHVo7pJeN+Pt2Djkq~Rr=FR;1vuV$sJ9#$nir~R$P)n)-F;(Wu z8$Bu{$O6=Ug&>Q28&i^8nK)&>{*i`|bV9aSEIes%sW;6Fm(h*5aA>)Zd4>^r(h(3P zGfk`OA#vhkx0B$X;1FCF8xo{Wri z@BNf=vQBA**?85*PDO2Rx;Su+#~&Ro`(B?2b10~Lc42M?Rl&Jsvp{rQuV3D*?pp?0 zgec$eKLG<98=EJSd4jM8I)6m_zkM?u=_(@;3_)Cj#-BOWlU5VX5Z+o7d3jK4CJ@Sw zjEs~bznyw>?_ue9Gk~Jo0_R*wZJwW>-)`5j%@OKJr$ggy*)>*iIynMHy!EfUm^Hb6 z#f|ulxdn;w)`pYKDK*SYOaofBdi*;l4<0?b&v=7TyjXO#W|BHPL}?eQKcyMPo_vHj zs?}NrN1{?A_v$|@Sl@c3oJQF2>%ok#NFlLzI0Uk=r(yvG9L}D5ux5REOn)_o9x-e= zeA^4LKsVfW;Wh7>nHkD~wPlKnb8FBSB*v)?4ox%b>=8NlSvJ_GtM*)X6{DQyw7c1L zaliLCST2QFI z#&&)sc~juZ>)=1)5wvhZ-%9G%5O%MBa~cRwJyIkdA&bt`ISDojLDjy<&u_`L zdE76e_sO=6!Le;$Pg=?5n7frPR0th1ON0vJL#tm;mj^PG0+MMh6C6@vVPDCez zxmciX>?lbZb@%pe5{k~4F*{#%j9uTmVnx>jIoGSu%&Z$^gB`-n5!W65_U-Hl<@gir z@B^E})stGYZ?TleX~at!NFyYAwVM4a(}^d?{dMeb#Wz-s9bE=QPiZf7U4xW%bFq8D!IqZ6Zx1$YWiA&d$r0#od~kRy zrxp>C+x_~y4HPq<0tOiBi}SON;PqC*4p>0EL4;U11}2~^NPc;pv{kZW3~`La zWr7#u2YEr1j~C&f2zb+a!iMZy6{M;cLHlLfe&MBD{QdI;)NI`Vu&d;vp*JQ1XFm6d zRpee`U%Qb`N}FtNnQXLWo_BA|dZ^>erB5q>-> zDTa8apTmS~(CyuJ8<$#+8y4x0tOEg7R&29%KrgRhH5=7tqkw1noM%?-nPO@gTH&AT z+G3U_?cDgw!fId*8yo5FY3Q1y6$CH}V(EM}($6FB(!aDw&gx3~XR`kt^F0Xu{H@(C zGqJWHAt%4+L+lRbnrLeoLFs*Jcec~0GByE`5oQZ{^w-GBjN+A!wb2jQ!*%KwUy-SO zARmHQoZQnl@87>B`Y1em=e^@bXUPE>zR#3WYRYhtfNa2h4M36t-ZYJPl?E<`!OJWX zHZ?)M(FH#a-H(W%#gme>73>)uMO9UG}crke`oE}LuE@@|u_@qt!0=1ZWUzw}e{V}P?a@7}%YtB$VEwKkxX!qCL) zq>weRjzKK74xxqYvg^i+@TM%OPnZ)j#C0ElznZ_G{2RpZ|1w#TKju!k577*Xfj~Z&XxPZUoGS z(;#^|s36b@=rUL>(gImVCjXN}%BdJ^QG)FkNEiZ_NDbnIpb;#TgtDF9qY(6b8LlQ} z<)JJ{NlbCuDPB;8Qh-2P7e7j3AzoKj_8=n!$;?Uu8ZZ6$NJk+z7GDD^0?pA^>0giceH=Fr9?kI~IxzJnQ;hHmX1ihy=hH z&_n-sR2zCF+wq^YZ#I{%9vdGYMTCKoNDrJnu-1(aVr5RDe=AbD-HofbxENusV9rC% zBt%@jR3o+3=}4>x=(sBpP6KPuIUV_n9#W@>jV6U`qzMri=#Rymm!Z`n#3?L)FT53@ zXi-4I@gQUaiA;t1R-KI9PE!g|oL%=TI+7iw*vVcY*%9co%4SI~57Hw?MurRYm(-sA zZOrdd={{rSKNL9I4mvv-OF<#|9yxo^QS=m;r{KIVI9Dt?!*b(p-et-Arh4bJVXDri zU4k6N9>vmj{5u(94*Mf#b5GuFEvoKbq3Vlh2zqf0TfI_MByR2t<5Mzo&9Pz4%8^IP* zgR1x(^?Pcnis)dGyNd@qm#mYz?(F;9-l%nHp885~rq=UScec0LAGP|~{H^QfxVe|E zk#MB?V2H5Sdmec?Ibxir|NI&M8G-~m{I@vL_ppA6uH)ZYIm|=j+C@O&|1^(d=`yvt zD-YjxHbx*5A+}J5`G|dV+wZfD`#0W*L*kCmZ{(X{OiaO??ECTzqb1gp3l0lLlD%LS zFJy7j(bKOxvon(&_h9<#tz#n~I(tE?S#-RV(iUL{e5@~Wb1rkQy(i;iQtp5L$d*P+ zDFk}~aLd#i#9R^CLfKHL6LSlZ4_G*&&uzW@)m{dSRS5W;@{SH3oJW-;^+;87NZp%` za_fREt@;Co#1Xd_nXc3?5>wq8iTjq*GBEVQxaeOmQowIAD7`n(JGo+>0h2GRFT$4= z+Q<=uyT~- zWZUKGk{$vm3^3_=9pnO0O*ddW%mV+OJ?ju;NEHkUCv8rq3+HCgX1bWY`Cp=;g7&$B zQB-vw@ykFm%SBTOqm7C^CXsX~r{qa<^j6WS(AP4bZnHfut*c{2PDoW-n{Azxr7!CI z$a)b4<6C!ZM-cKNY>-+*3csbg4lFdxQzh*6jp*nA1ks7`+C;XdCV3LcSlgoCYtPo) zp@Z$jQR*cfNl@5rw9}@Yu>V!ia^`&2CNwtA79r~iUneB=MyZpIc`cFika{6plK=!3 z=Y3l2&o`&@gK52rL<8rGi6010dC1m+%ut0UdlcrP7b>2tJQDtEW}Z=22HgfE7&b}yRbRUFzccWAs^!e!Nmq5G2Z zm;7v;8UBXz>(?`ATr;c7O`N)87B^@(sr^ZM(e#&;RnZ(9Wn{V_`oCZ~%N{`|mLzLu zv!>i^GfGv;2XLR8aqUP0Dai9XT_0OTvPRhNo2A)*Na^1N5IV|w0{o~Bxu+oGO=iaW zT8)4FdjN^28=zVG31j9ugX1j;LhQa?FGHiehztDd$L{g|JU~`7G;SZQo({9aGw%QT z^&V;sy0uI0^54I!coNTqq?3vrt;}Yh73xgfTN(cOfu0Q(2O`G;M;b5B1w%~ z4A`YCB9)!0nbJu5Kxt~;=yD2nPtWbZKK(`Wkp$EUt=82~m#F3a8d>b&Y|Jhv9RIzK zV&1Af7K}oIZXBJ}Mn8kJTTenVq^g)H(-1Zgzej)-(zqy&DI?YlS=6@f!$NFZ4+aZV z-|Jt&?(@%s*s%c%J$UfoYTFq}t_XDjIeGaf)F~`>-<%$YK4eP~K2ll)3r)-mDSJFF z!iD@1iH=y%a*49!;z$;b$SI(Tz(^@7Fg@t>P>zTAsKpbalEJ)vNJgLfzuw&LGDzW9 zX5i?F?hVe2;0O|c5XQp`C}2G?D|qRZ+}zg?JN3fa@S%9eLgN?=1Zn+L-~0Z7{CZL& z4cb#(0GQ9M9z6f2WK9|r0+pjsVw40g;34-TJ%zFmGBtt3=A^+YQqgL^UV1Jn0GSch z0-W#0%fn&^Hm@E)r#A}eCxU-}kfRF;2~zsJiXP8SJI_v>CpEc|A}7%KVi`ej*6XRe z8sDx4%S`M~iQtwkJ*3vb=;Hbza%Rfn)&TP)N99B*3 ztgbiJc*iwUq0U_#d3B@TyZQv(!|F#@9ql|sQ@*=t{<+SM-A=pMf4EkJuB~|9?hsox#k>C2S3+?O2@#3E1_`;_V{W&hYae?j%?~t4 zBit{KZ>B*)yQvoHu-TnJUl+FfBuL=yz7Mnkb`f3XVQ)di`s3&($BBi}-TM}JeWp30t}j|0`I>Ot6})YNM+lP zbK6j%T9`Gvk$&#V$NGfk>xHHQ^xI{wCs#a<(|E$O?P!d$nQ^4l7y1y}3%e&@)P!5@ZOd%lc(m?YnNS@E~8H7Bg)mTfTCDWzz)}kIk2k8crb+(3@(q7=qiX5a| zi!R9^^!Eq2P5E}@tl(3)1_!$Vb-@5^{@EDm=J9(K{rs2BA+KWhi=hZ+Amz*&`G8oLPjSru!{d&Db-uzBr9{j8n($HB0W~m4_~>n2oM<-^yis z=~=J1jMeg{xB)do3F<FCy@Fo$;S4mY9AveRsl5*L8h%0~?URPD! zJza%SLtVdqrKBbTvI>ca^ys~W>r&5;>$AwTQh1eN|F4@|XX$<7^IYA5N(n~Ajx&>g zPImSGVt%5nR3}t#uxsY>6SZ4!&k%JlqDwpIw@H6CQnpeXt4LxDnhk4pX9>zAv^gR` zl>G#Pt|H24iWiw>3d6U{D3JR4t7n_*&eQ{znt|VG9lpL!>eY{i$LPpo8h6HRVNM1V z@rPv1P2=YEK1C}|3B;(xcSXKMTO7n-VMK9lytv2ljlqE+Rns_&-p{uX9D?jLMHYeH zk;vaHXM~ULQ*dpgHZ}^K#c;vbXr%{5P4z#T+x!&CKaf;7Sawy?v>` z^~RVA)3cACF3<+4UWN9Qh?PlZnWTMyC%dxh6xMV+27N;~8O$OJgEu8rLf8$87gA+| z=L}wnvn5B)Sfs2s_k3VH-Y3H)eJ9fH6Q3K&Bk6fr@Tw&8}K zmcrXjk7@!Hsdn;y*VVJ~-j#C7v5abOqIYRzj?%^T`wy8OXcRY%{Mr4>;^07l{+jI1 zF{gL`rKQri#}>3Tv?SG6Bwa|K>>uC*QTHulVR?-_44P5;kBnTr^(PdTcE`C|RpgvJ z7G}=f>RYpVHDPeUet|Pd-6-__7!}{KhK@000no!h3D2DUi)bc~Da_E421;N=#IHL?H zS#%c4;E@AJG7GJyA~+S-e=1=G<3*iC>%@#2CTsa`ty z2!R-ih-e9#$3Fx>kz;+;$Fb}W9B3d=Ac-Gr3rFdRBnnEO^LcKN`+$Qbi9X_dK}?t- z6$`tOuvV{+@pEfc)#TdX70Mf_&e(j7HI@B2Mf-}uL9`tUQ?Z-&%FDT)JD#jHnDiKh+ z{zA(cmoGk7uM#Pyo(nx&Fpcm#`rMNJ3Slihx_Y7le}qT6mUW$o6biW)bW4#EGx~aU zb(3r6pXP`?r@ef$lzOAN;hrJlI7oMA+a50Vw`P%={JkALtV~n(o5E5?S5I?`>5QCPM51pV~sBN~MKr z@=7o5Y2MINd*G~`-j;hy2&TgP;@WDTG3mUg%k*l%SWy?9uHOC$Pk74Z1l>c)($t%Y z0#p?7y62R#RGw}0ekxDCC$r0EmBQqI6w9P!-8?zQjK)19}J#g`@B(+G`Sdz6+(NXsg0>#qZ+buR^n zK-1#nTl^&B>eWkK74jQo>+5f7?EK(y7@$tQ&G}7cMat6m;@+vt#LsPwiD7ywO(Ygw z-@c(;u8`2h^vz-il_V3YI5xh2+FKhme=_d8DH(E)T@CZ$D`kVd&lWR349_v5? z^KdRDmgAlr7}$PqdU4!_>LeAQGPl7EHHGhBUZ_yf&&`cHTGk7>4? zmFmsO*IyyTrL=LogUmfTe-jN24KE}=AXQM>a!W@4;h5UzHJMi~a#}RkWn?x}r#*dH z$I`1`@-W`rtNOyd;|JNA*$x!Zxy;HUs$POyPOl^VkFr%A*SvownY#KYvL{qtIzi^b z$YG_YuS87$RQJ4_gO+1U?pSa2#0P)t=Wl&)pUk!2y&jL;x^Osyrg6QjK6P6c&$7ey zLVc$OV;V1Uif?VJ*IKrQbHy8ZDrY0O0L9vQ^{B_5^s_bg$>feYy=dM}1^G7}yLPmS z9fhb&04Ipp5q?aFE$Xr2Ng+0pdq&#>&5Tod3k!!i7A<>{2JB74t{Zv$rOLxa^RdUZ8g%6B-{Cf7hXf4nVp3$I-x_{&C z869EDzkqIQlw^`P*P8~RbUAsvVWITNZ&b%>scj+y-B$UjNF3E%F*02Bbv*EdYJ8u_ z*UeO6$JWrDDqjeV@~`V|dEJq{Z%66lmx)OktWpM42Q!psTP52 zKSQ`fwodUJvWw@U_tWw}HM72Xf_`MGIyA~x%h2^vhPdbf9Ms%|F1m{j3^UGBwW8Du zt{l3GAM0;wAGXZlufCJYErOeqv5nnAK}~pXvib4~Zi`*QB@qU6pW#U)&<+Qb=H87r zjA5V)2U*IE5wj-iWo^Ok`J%R}8)hqXRa8Qvjx3I$@h8v{TABy)e^@YD`MmPG#Um8L zv(0rUF% zLb}3IZDF}^BGoyKm*^+8WAZ2je#>{y6x}D3QiCNuVDb7OtJ|X;2tw-^K zW;Fqt1kytsf1HR)(0cJ{Sb0G>B3Q+hv1jPxi&EKVW8CccxxVBs2pnKoU(5fg(`mGBqxDbXkJRb*X1_m8?a8q)rh?v+uyNuczaMui!x2Mh>iBdkE z?%0}W^Z3yQpVuGlrs(D@qkhEaTZ^4Y;cqZ7vN_;MY01dfaGYmLZuuCWpxx}TLdj5` z`(}2V2E8?&>d zM>Ho?uJc_p*&sU-`T60=cx}pRDjK6m>dc~B@z2|qkEAl5ANZo7=E3T6GHXoKnr7Ie z?%>uF(rRxTn8P0!(Vr-h@$w9GDr#{*t;f>Rc`Rhno% z?#frHEx%W&-P&MO@Xiu?C$U0b^(U8H_)?PHPp5u9&ER&=&E^JmgL6k^c$D(@w$0&r z*W13ir3v=Fxvzaiwva2rl0LPcSFPYBRr9nB!xiT)F%h@?-g(~NM|ihOOB@>EoV{1L zNZlr;SpL53$jIIa_w3X)UMJf==MHVAnzR2(^@(NVe2I9T zw-(hJ9;O}`vkhThu3#6)f;pPY4(0oty)zuWtJX*Tr#DCO5uS}dPWdZYC=&^!Q|(dI?u_dpE~no#l+v2Rta41(*hJS%4cmU7uwcl1 zaH{Ib{?*#GC9L^RIrR)3S2@maq9`r&R_|_|a7(Nj+j>B0czR9iFlm;cZS40jR^_g5 zO}OEgYjR=hMud-+rCM#5d&X}ip{0|3_<*W>P5!qV+$WxDcSk-kDk)ax8Ib0ui`rDF!9MEj$Me~! z*q$r6DpZ1F zo}9OAB)3RtRPg7fHEWWL6T1eo%55tZ!;*I2*j&-M{_S*9mR9;<2>iBGg%@vld)Z&M zWi>_X)a9FgQf*Tv=AtcYZ#uVq9aRYGK2}vx8??=N!bvi?akW*+7L|VT$_;M zyo_WpmD}W+a~pD28n-Q$mib)F+IvyRP0mPN*5he7ljw!p(0h}X?t@b(An^6|B{&So zFl%P?KP5SlKcDnyy@>{w^67o?wdCZ?BTs6r9l{Q=diS4kf4pDO=gBF)cTL-)p2$tU z8vJR{T4&x-Ijj8%$7jsf)@x&&S-_<6&#CNrs^>S=8ZIkad<^lt-{NH3kx4g#yPu3t z6ne8bzz#M@;3Y8k0I6kMbm~kG(xCxdU&Rs;svT? zWA@9uy?sxT-RIxe-VHn`pcpaveJjH*Bbu99w7)oh_BZZb*JbL&L|J_(-7I=Y$?96m zScZG7niXH}sSJJ7%xA)q%<5htRaBHBOq!75W9^mY^xj$`;o59}zhF|Se4PS)+cCuh z3^u2vldEoe)bf@W=!>^USZ>(V`0&*8_len8-iOH3P&hfc7+H741j)Z&vK^tZA`hvz z3I)Ethf)INnmc=T<)C{UQtRp$`Jl0PapCN2N50i*zCPV~zBXVeejs_=$-%(~Ln}J> z1gUCyJohi39sVcRDsS`py8Dg$Q`zGC1AY+`yJEBp)1v6z^tkVDrQ6x zgWSn(`>%mcry)cqOb0NstcGN8!^&2M+mXvv=MNO0le2#&m-}$OU{0VSLp$fl02R&C zfLrE8LkVh|WsbcKc+BxevX5R*A&5WtC?&b0b0R}dhUr<|(6X&?m|E?0rU`P`U%^*i;<%-8H2?>LK+{9G)bX;MpxRY(4!YP?Gs3UzO=J!u+s zv#%uy(bhe)+W(Z`1L7!U0tdiBN{LWAG>Y6bKLo^}%$<|l*#r~i9zTD) zd##SdSB?SkRh!>7`Rx*7_U<&Ixo$+ghqKadwVL7Exv$LUo!^Yr8jkt0?^e+pnijBL6NE^@+&!cx`cO{BD`ucrCHTVuVes#+}5q26h5W$ z?ncmWddz>GNr=fS?%O^lu9+ZP#RqeDeLgK8NuxOrq#Ic1|^R`;3vrV@2K#rF8=O+HziUAy6raK^)@XW|W5%PDkRN(U9}&W}&* z(lk60Axg=2_7`0%R`s&##B&r*htn23=P!N4{)ejeiiH*5jECy z=z3*uaHz8CvDFT9#)Phi{9tg{S?ql>oo;0f;T?i$=(gWKQ^!QC|kcXyWr*Wec1 zEd+ND1b4s9d+(30>Z{@pGSx%(IX%7C-s@S`lq)}|pyo1}Dw9Gc)@gr3x0qoCE16VQ z{5SZY?EJ0aI8u)cHkD#!dZ{LlK}F@}D`4_)V%F*YDA55gG3n7rxrf8$>Ha7_G%8xh zVjEqSeNZSlXACtQ79abJq|q115RfoMgS{xq1B!u7G*5qFXVn=nrGQvw$k^(|xxfd{ zpM4?l(w4il)6L^ZKvPQ1xcFZkV!XIek&rI5#l+CDc)WVi0Q2BK;Y8BP!KfcT|0)bv zWJ-J9fXd=tD_TlI%w`a)%C)!xN%zwAU>;09%uXuN9IJwmwwHL*-|@J_7&f^p^x<4u zt#xF3kFQH9)o!CMkCCo~A+wUOqjt zW~(4wLjk(x`Xa0s6$si86kq)*mtx3IMr+uM;60N9&3{fAxMZ>uf6EpI} z7)~!zto|Qwh;Q}!;%p?N@NFlQS((F^-SIhl`PZ0VxeG5=`3Gs5gc8L}V>^iPC1aGE z|ImS+#Cr`792Fj@cj5OhkpSBk502J+;$F-Na0SMe3wmNv2$^6)Oni#j>&>7-&+b9m zoFJLVpFrBhq84Z7%A0nok%EfrmXZ;edvi`{+gzthG<7T3jzMd$t*HuFK*_qJ4P9Ac zPE!5#sBL1mo%JJPR(Im+p7g2&YQQJ}xx@|iyGrJH4~Q%9BCBu^o0A5Bu7_}~j|?72 z7fLx^F~qh3J_b6R0cnkHAqLKyg~^tXJvFmxcs3h!`M&}&VI)I;av`=HrdB8*tYMPj zBY`Z;p@IXbH#kOB28Fmp{M-LqQMFoM1L+IQz|B!sXtLGR;#&=4W*Oc|j2M#;r(L@) z$_T%QE_Z1qY4p)Z@aouN%fB6&2=a>SRdP8%IxAha`g>eBFK{K62x5@d+KtfH`v!yF z_ySk^{D)jWS*FGB4PgDBe3q;#W@@A|8X0NkHW2duj!cua@xn92*d%47>#u9<@*cq< zVG_@5EMCM69R-vqhx|lV(+G#>xer6GcQEClnOa;AeBkxvFa9sLl*Lfs$1q$L%Sao7 z;mhaC**|@=#*nOs{P`C0D{}|q+64Exz%?AjweESpl(9kYo~&=QlTfM-DW4hh>q|vh z3RhW&>O;5NfRA5H6;AU0G28~SvwNWjZnzBo5u@}Q=*1^q)xP)5cTMRwSYkM4LI<4;a7Yi zWoXuU9NaR2`v?U?$ZacAldywWWT(tu*JJCc#7YjY2)VgIQOV0)Dy;%ch z*E^KNW4-g`~i(w&ZoJ6I}mC!-mp@G{o9LLAk0mW%a|=gnotV;O0&PqCOsNS z9vX|~2qPowDj#?;I{sA1EaNH~STkU)|2#>wd+-NpN-dd*^9h%2V(~taF8^)T!U|K%mb^|5l0BU<%m`OZ$;!68Ii`t&cc=pc;IQ~~H&Zqf2_n~2_&SoRq z{PRHXHn)9k3X8+mwTPF(QtMS}u!p!MtagTHF&=5;dWv2_dJ8*h-GCFGX)z*sH3uttR25O=8v z!}%B1id7Kg$+cj zZjG7x1M$d7BQk{^lc8#yPZt)GPF?xOw;Cltmr=Ru zR_&ljGwIk8QTIh?2?5vz+EcN2L1$ue+z=XcGDO0m39?InxH+pk-x7qG*B;BH6ov3& znkE#(Bh!pjF|xB{sQcL+@`}*19vORWhLUGQb96D zbys};L`Ts*?_=(-CXMeqXl%!*T-i#Ffo9+Oqai=#d7(N~^BI0mkI zv*i@b?oiY9<7L%#P}B@d`^yM(?@*S>`}wdJ_#Gpwv_W(CYkZB{&YMx%>E#O-xdl-# zO_qt|*z?Bdm6gyHDLMx{bTdtH(#Cg>dA>uK20UPjZ@_z-D{1eqBHrTA?R`qa8pzEiHb|h^t!J&?C+P`P+V|^ciqm8Nf>Y z<7UnT&ec=4uA>|kyA-Vg)$@qHF#RNUzS<6$QiKL(fo4hK&un2k1NnNN&Kep9N`wxo z#w+jtv7cWf>tEoVuz+*ZseUuQCV!ex^ICVR=Wak1 zfiXFhC7fVMMVFb{Y5t*-&O-o^UOo1|XIRWVN6iBW{~w_t-qQ-8|Tj zH@FvX7V>3fWgx)q2=`Swcplc*`}n+?Eev-1tp?BApyqrxHC%tfpNXZ&Xd~IP+#-w; z2U!6d;c$mSHWnYd|0k`4J3PfF(fr1-ul~{V{;yDXKqPG_$p_kGKgf}KYjJ-8MlR2e zq8}?*%TJ`Ql&#$%x$U-)&}_ce$p+X>!gIDI55yp#HEZT9zLzRQY+)wrDmBSWEw3r+ zA&lQr7o*Jtl!0kO8DSF1kx^HCGAg#Bk_g)d3Hk7hG=txH@Dj7XhhoTE78rQc+uqjS zxDB`bDy;IIuC24GM9TDiq#@-;o26(#Y)<*mpTf%?rk#GyXo)K_s1n^eD^Wj2`I=|~ z7mb)SUU$3G+qMoN(hI(D&V4nbOUcr5$j$v@w1Fq_@W;R7q23D?#HpK})*Ama7s_=C zU0S6ANx3HL)W^LrL(|K9fwQva#LUFfSFj5tRS9kF0qUqoatr$WVD9&IxZc@sg=hn< zmW6E5Hf4YrJ1-V^+_q_%M|QPVDB$77A`ADCe1H0k9mv`7HanHj%`4Wf?|7-n;AbVz zMZS#J;-wIBq1YiRlyS3N-#2*nZ zm(S&XaeXCkwnn?w;^twvmHbrl2XTQHVS(;vAJPuUJ!m3Z3K_RwQwnj^DDr{l9A<#r zKQVS9w`Tu*Cb=XMHx=Z8tgWeZ5Et!mKu<71WoYWwf16^r6WARFm63f+aogdf!2#zG zW1j2pLp6}n$@u=!Ul(3a49UO4Lez}pnK!n*sIH=B>{RmiJ5!yisR#fjiKzUy7S;lu z>1Rh9vh<$4>U#R|-aEE&M5yZ8x{AN#F{B^$>2Y=?4jf zVN6K87H2);kG^Kc2|82mztihIKahGR-%$7dr2OQQENi{aEp-z7^p$f8dLz^9FP>2g zlOaa2U{&@&sP!~LOP8d`mX@frMY8HnG{)*>c*W5;1N>lae#u1Jez^S9EqB4a6i|F9^21I!`Q5!7 zT?tKkk*yeXuARhtvgH&OVa5qaU>f2O+)BW8g(O(-dxYp1Xn8e|Ed9p@m$IrgGTvQLGF3)+@uawq9M>f-zX!x&c@Djed#beqMUvE0+|ZR@m#OYBh;n9Y8 zyFv@Dj+iKHT{IMk+u@aK!>GRTQ*LHM4?Va_rAZZdt}NpHI1u6FE*X*(rB&^C+m)~6 zh2qF8`XD?MiTFOC9ak=a5tsu3RG#b0FxRhndpC{^2>8KSY{~|*9fUY)Y^kfAF%BNo z+FE4dOwGVHBG;H&K@Ma?zm!kb{d()$eI`x&*DrHm*dQ?8tJ5@v{ z*i%kim89?uKp#Jr=B4*8-+Rnop3^$IR(t*0Z@s?PyL;Fd9t=K&n%CEDin-qTCQI4& zSl;4U>+ZL$6#t*<87xLep=VdmAmzo2;xf}bPpdRfP*P-z-#hTR+j~?N6YqN-scKS zzc7;hlqI#zwLY1uvT~B%Wut0|INaU7Et;Msp^Y9_>1Uzd&YS>R=O zwuTFw8ObJ95WZPlRLcIXNd&wTJx_f5Jm6?XNbf_k^iW-#<1~v=Z3XXa*It6prA=Zd_U7X-{XIipUlo=+Zvo8tB}pjHsgw4a+;_&@#4} zuPMUn&iA-G65`L|G+Iy!#D`oWICg`1RM@GU=09thxJ`;Mb{%DUVT@~?8o3M!Zs6CE z*P6KM`h#14eNHx3-!%T;bOCsA%zK0|Tfc7W-=&J{w9Q^7Fvo#`fpf{F&cX!Qp~tA3 zEqN%&Tm6MPaDfXK8;hcmd)g%V3%4+~B-w!r#Ps7^U|L$xmrpV+&-If%r88}3#xH@t zgrS&tkKql{Sy%?xJIWJ`PI6zHYO*@*y)<OeRf)}u=DtJ(3oS^)(F1At}ICX%1gXi z7T}o+sQf9{d}satWF=b>$#hCh2@fhFbC;l;nbDX5tW{V*&3pVg8*s{VMr5MD=GaIj*KrLYWf|TYJA8v0@`sD%4%lye?5~&N!`k_&`gP&4<5ry8G0dHK1z( zw|JS<6?BA#U#hgsVqPO++B0PzB6+W9iz?Gf1Y!lx`0KiqsUs(5i3=GeTze=+GO%)! zXMvF^MTG^QD^lGhoMEq1E0up?O#Uxw4iF#N_J2HO%_p@4y(*F%WEDV%LL69%w= z@+AK0)Xi3k8x+0*`8)%~bA!={VJzQ}!JD|QHc~&K4d`23hzf6QI!kfd=D8Fp-t)IP zVbXy}Mg7eU@F-j^IdtsA7u^k!>+}VscYAFlv2oNv8xCh&j0Xe~sekaVpnhnfa4Sjq zpv|h>JzUUj#^p+|RZpdK$1Ln<{JgIB)S?*EIT=^QLL}ocR=i=JhvyJcZhV;IW zFL{xJ-5(a~oYmFKx$7zgvKm34(-Rz)gCZ5|jI10E;h4A14aR(_Z_MFc?@LXLFFoxW zSx^!$dthg;b?F+_SfcOH2%tnU_9n0;jKZJd@v(=uw&J#v@4Z>`BI6w5GmDlH(_!u6s|OBM zlL88M9WhsKTqEXMIDael7^GDs(0RJt7oHz0h^xny39urkz|Hp&Yn#R>cK0c4bZ(sO z(W|be07}$|w2vR^s!vzmF5`?@a`opKS(fg2^t_c|LSHPpzB2BRz4-vQfVXT|K0hOG z!&bPuxltvk*Z@o1g($ZXbNya}RZb;ppI<*)Aj1ob57K&8d_u;eW{khC!*?D8a^g{g zGk{49!+6Pmb4Y=#oZA`qt1SGLyPR^raReETZJhYR+71zy?LzVMyP^KWx@*s~~o2nHx6AEh^N~DcT@40+F&;C9I(Q!|lWvv=^;ZHE}r-s!i zLb&@12~$|UIk={Z+ls-zcq-l^7uG0QIc%n21!fJZUiLa~){ymNrj6GWt$Y_*s~#Nt z0CU0}GViP?QZS`M>!hDK235JIW7;W!?}{w~OpuN4RE@JLvp)xN=c?_6Y$uO z6r8$2FC$lf{7>z1vtwkIbUcxR=;@EzHKd0s4_%V@RI&Lw>X@RppRaiZHO+s_f(-)t zAH>8|@*q#=P(~7Bw`_%ZbX?>)TjS1~Tn6-j-VWzFfgG@}j%DaoTxF z`_44rbI(%;X1%X>Pzy7{ueN|x?g8u&6Q)V-ZYEQDUnu2Kwn?jBhvR+zNj%0rkR|Pt z=o2IZ&UyuFz-2NKtXxS|Zu4>hK*Ae;sNM!zDc2Qcr1^(Tw^!5W1&Bg!ohtg@Zk%1V z^G|K{Smx<}1P!Lt`lAdDtKk#pK@bx{MAj2A$pXo<7THvqq9Zyd+G3+fr1l&jSe}N( z%a>NdOjt}a+-e7Q?YpHOtf@&eAy^ZCD1m3Dl{kV1hXd*2GpCOyV{cu3h;oHK$QK3~|~P8!i!{4_v`u4K15#Wl-CjJPrDeZhuqSZ_1Z72O50ILV6Dl9 zXc(2L)4yA7fF`aq;7WT3K>*0~QZX}?I=p|yjh`|KTQJNAM;X6X!l>LUAMb%c83YGW z32>QKO%jS51uw(yjRexE69(8UNeZao!z*FySMvzYFhVUVgR=_F#F6#%g^DGN-^Vr2;k5Rj=WXd9-2Ap4mu7zyQs>-z|App7C2G*Hmt5+IllO66 zf_WR-UK+=5H+FE-t8l$p@bk(FUmYZHW-I|h^1B_x|Lw)&-FOaQDBp40DhbSF@3!&( zZ^)9?RLjUzJ({gUO(pi=+rG*cLC>ptd@FAWqLW)msbI2GwNVPSMBqq7K0F2w$%1_V#wDqH7YE1_(Ux68g&&2WtiXwRtf}R*oR^spP$3{ zT7ypA9XU*yKqo}v^5igP#J%9ZxjGNyACKX#v%q|cz3uqZ_5zMyN<1?j z1>GS2HsmIsdNvi?b6;30{gc|f?cRP$r7nPpTD0o_&KI9zx52n6_YBmp--t;>O8G(IOh;D8zgOz(~W>AlfLdbKu<5&RXH zEPAJ90#p|F@sU>4J#%scgUR4+9d%3w47tCkYW>Lvr)nw!BlMLpnn0ZByGwtyUD~An z9mw&HO9J?93je@Tmlbxvi^9(%bFYqdA>}ckOjVG94o9f7S$hHY^y=t96j{ zzzD^w>`Z+#4uQMJgJS~Sa?}ZWkuD1DY(fI1N&NN=_Aen=lsxr9U81FXd#cNDgTZ}0 zo#G<)@Qzzb`Lsg-w8S1dcL=hqIcO{(;nsqVj?~RunA0$}J{^Q(f!2Dd8k9`%BgtR2 z+>yM+>so+!A`6-^{^H$6RL&*y*NckiiSEOO|hzNuVlIW|}w z)mT0yXlIQIUU&JR@73NKp>Ip!T84%sPIJJLE^Hm~t#NFh`Wubu_M31#W&HJSO~>y9 z&VjAp3M=UKcT~?>XWP53;?MVS-hcfYe*v5Q31n_IRbIuX>8iNgf~SA>k^)SotBZ<{ zEvR?M@Rn2)vgCfEwDQL2CO-mL<&_YQu5vUE@g zz%$7Jj5ELr-}nR&G>QOtRCoj#+XjG`MSb^18$gHvzaveNb9(KN$)h)gPu`zUp0kD} zV4>Xfmt&rFj;iC@XLF8Zd?NbPMAFBq?RrmKdeRY_oK0RC;}w0~VG^YC%_}}LDh3BV zUp0%^wBvFGZ~YEHNp-CRz#$;7iUNHTie|O*Q$w7Dc>7m}fuw8SXZL4_cflTbb+BKv z0lS0m#ixep!`mW{agt+;{WK%HaZ|JXq>ai-$V)+rZfH0MYKr{=FU<+1*{izKRSclp zvMkiIcbSCv>~qpO!`FhbnxY^IN}UKJ$=Q+n+udO3*{^wmPl?$habir<|H29OR$r;NGg;4; zCok~kAa7H&JS1Zh;vd%x4g@K104SWC{*s|k1JbzJ%i7mx450VaG0ZS{sm2#|Vx#oH z;^ZJW#bzb%GmHR&v!~qZ{Fzq!sL)}Rku~MwNTxwfs{}ZUUt_(ZpG{uVZ#P;1;L`7U z#?=GjlAWFy%3pT>8a(fQ9^Bt8yS)FmAylCS4zpLoXQJ*wTW7z36WN05;AyvLsiPS* z%(MCd2d0{HY+gQs$L}rVj~hP+);#1fKuQ(^#>4=SFl2@TEC9j>3~2Avu&;YjQBf*- zl}}{DBV;H_00%0h_cqCYBv)x>`>*0=+D~PLHspJ}kB}3IX^_pIiz4(4b>qDlx$*3? z)=@WD9{5(9Vs@%jeZ5h1+H3EV3hhW+>##1@k|d5(*O!s(4sYZu?uV3V1A7@|h>0M~ za*Y5lMe|-K2qae{!kSs>RsTJW^mBMn{T@MoWTd>TQ2fOQ`v4T0r^|Ocunu?l3k7^l2{}KpqYk2V!f^i0be#Ew_H<=^Oc{Ryj|lyIU&xn=t8o`q4Uy z!|whc{;qWzF~7kyCm&lO<=?w&(PlbtD?6VM<%Px*Ce;#6UHL7aW@TyIqr-H8F~JAQk_LosW&Rk<2{!F|dO0Vs(y zmSiJd@ETGAXX(x;hBAPk2{D?rg$0%;;5SmENYpn)^=$WBuH*<-kE zmM@$=f%MQDQn;2 zh%cdq8}@~kF^i{-B3%&pjkH|FieXP+K(W##w>HSQ{med$tb~(l7`!`4%(^tS zssGPDZNo}rQ>P6C+?q#5%z6v~!q2)tr}f;lz5F|h(umZd9l+=UR;EVtYq~MEWPiWG zqYdASkEN$AA3;{=yHWfjtvr6hNZqma=C>E?dQQk5s+W%Y{`jd!C(U=>?AS!q7k%?N z6xhit%ru2=GJ#DB{>E&pd%b5#PcN?MpnUam*78oLsD1{*kZ)pTz0E!j+h7T?tz?N|4d zcGEoLopvHthbgqz8Y`2GSu9j0 zdTD%C%4;i|>A>33Wxix;dSVnn4w3u5cRKu z-Vos@6O zqq*O3TJMdB@S>zP*wsxK0B<@bJffjHav);oX=$MrMwdX%vpeimeWW838^V>LeX0Hw zy#lypL8V01rrRaOq$o8H3Pku)Ngzgl)hV=S$(H6b!kf;PPGY~E!-<1>_X$qgzQkxi z*RJt6uNY@j_;{rC$S~_;fMM^zPzH~q;KzW@-^i(~mT{9J#l;f8`14qJMvV&E{$#sv z7OGy=qzDf3l~gtK($~JD`+(}p6!7T(pQY$MCjjt$y{9n2?g8GaIKUB4P$}$sh}zL% zd$xQ%E11Ku^6)~Ca5^@{x2Kj2ozaH-KpX_>6M^SkRfjR!$T(f0*@UP0YG@3($T}K9!8aOYI; zIwS*+8URB1-IzitX=!(NxZ2%vr=2FLT1`LQB>Q+p^8Ds#$7x|yP`oO$@3b%OnBRjQU3KIG9ccn(?u?0%~Ck8Yl>%-TX<3J#Q!fydM7kk@3-wzxCr=Y&`lot$K_@l|ii=pNG3{|>$y z^LY1|t|}U|yDj$5tyqw~QR)Ni+tAC=5{1>&gMY<-#g8N>bfJOJ;K&xY-|_n^m;?3@ zAW-*LnnR@g=_+>QwMl7_UvAgC$=v|hnGffRMo2X#@dIdk&$y+_frK&|-j+VJf*+fr z%o)xuqrBB)8cC$ul9icoHKfa%9eg=%laU_ooqcxqhwR6;+P5RG=jPfA7I>#%wKG&s z)BOBVdHHX7`whjkW1HHK&Q5tOpiPbJ&{t5hDhiOEskEYXO-IYvo3b)BO(c>ljT-BC zL_~WP6h@D7uyb0lyMLxU+^KvxIaP_5?uV2^!t{yGup|-3C`=RX_AErF+{K3|^)odc zRrBp;zHPpHXBIn-O6F7;^1onJi!R8DvEZ?3iH@&)G#LVSlB4gqUivb)W#MHQcR4Ee zwf6PAIBPGDEiH#a(X5rouaIMv#5oZ1Lqbi3l|#y_TUEv+Gj=O3w|v@`(DQ}lkD8H^ zQ%U@E#a)Lhp-(SQ67YVOVJ+Wz&lx9Yt2f%;Kmrm;v`KAu{i}h7nepb4=d7wAgv5KKjt-5`}^&s2+f3{h*KNqIfXj^J>nL;VV!?H*dBR3 z*x{&i*bvJ0lIdy~Wl(!MCVi@lr09DYzSR#?+EKw`r(;wQzu}!Ryr|hLp#d*8JCGpj zB|*enrD%a_-)05pCc1+Uv&>eCa2_&u@NdI%W@u(818wZYM+Ll|q2ow`Y527OBKBKu z7yKU#P6uH&c3w^Pc4T64!I%OU)x>JQaX)NKY|Ow;;-SeQNYu_Um?KW+gGma@n0XJt zuY2Eqb&S?t`ZT#Q7=tJt(i$)D-1Mn(4D*ecC)zqwITb$Wwf<>SrN~Xc)fuLoCc0^S z{kN9#d3Zo)o_T^@ShcXEM;uMzjnmUIK*XzaAgLpsn52G57^@B*n(0xhfei9SF_0JG zr`vF5Jf)-a*cJ*nbraTo2K!vFEgk$TLX7hFx!#Kua{VAXg%sd|cuf7Y+8%)N6p7eL zPb~0f1Rht&&{p&v=nE)312~48!1H$R50zaee}I|xj`syjbO^}XrHVO`Q$oLC6edST zL;u#c zVa>`u=pni+)phJ{Z0{iooY8g#iR3}BKyV8|fIK~)B8Zi|_lX^!^R3nrSL8PT^8NBF zDl7y|B7_mojxA5wc_YE7MOihi?W0j?={7%EVR1$o2AF6BCJB`Jg~fv229h9v%#pAx zOc7DOVjN}=KEop5hJ_GCi{E&IWJNooW@JP}@{ZJll7v{rj)nsv5>Dr}w0{{a`BMQ0 z$twatFHq+v?m3eM+M!pWIy!toG34Lv+hx8rQaz23OhJEQ>1efM@j8U~Bj_+!z6S9N zO(mW<7UGjZ@=x!Mh|SW$I0iu;ta^Tid}MosKQ?*R3uCkXFqc6<*!R~jCdJ4>X)*w7 z=fh5umP%~(=gZ-hkkSFIY1$(#J2bCn#1k)RSEBI!Y+L`tcF=ZE;Al$BI>Mzej+Jn; z>^%mW!z6cngIvmJ;GlR)RaEC2=2_0SYgx5TJXAtGjN#dnNx|ytdrnf~ADICg`GyF; zP8mAyF{dfdO*_g(RgJ9dwsj@=tYj<@zY5I_SSHRfgqD*+oe)UjYxe`r+tpR)*yifb zM24Gnr#^j7V<1rZ;g@**O&T7nr(F-)us4X(jD5o2r(eCg5L2AL!uRy@x^p0esf$!zHNchWqB-44T$N*nbPH3P1=r zQt6f_EgshHvEfX04IqylA#M&keuk`GS6X}4@buAuxn7oT7c9mAkXxi{Z!l(BnouD4 zE`_fI+||bO7@OGd=?Pd^FtWDPq(-u5RF>1NE|!}@K%l_{zu^OsM?UIdVk=SN^^=jW zjo1U*29fS%&)VkFkUDycFnmK`)^4-?W`5fJ5}5O4Ua*BXpnF?S#H9ry*r1;FzU^91 z!0}tZbJE<2?e%LoA2eJQkchG}s;b%po@C1Z8Ly7jQcY=r0=1v;xBtQ!1z??<^{)n4 z9+SoAYnznlV}r`JeyS0e09~%bjvINsFX12#>GqvH%v_vc>0!1D@@z#w8Cq%+7ZXFp z`lI05F7(c7OTf9iC=6FX_x0^a&?(MhtvyI{+(x^l6xgid`0h^z(0`&#f%KDrx7Uu_ z1>sU&H+-9b(^p_Ce!asp{q@1vP!Ea_rs6f*f)LjGn>KK zl>$?^&3W_SlhPxjySv+4sm%S%BjFu|oR$4K`IfXCvX+?kfEVu@RIGu3pvgkzvWq1z z@#c$nvCs1Wb2jRs>zx8At*)-?>-M*nYc*u?<`~FbXbaKcjQ?)m*=B^h=_*&4uK=26 zWkgi*>+^id5C_!1X*p9oFIsM78KwErVStDHLGh5m%L^jY#U4QW-csXxIN==Gn7os@ zZO)>?v;j;JiuJu0{wjgqqMazG4J2MD3w6luR#Sjwv) zh3d8Qof{Xic1REq2^0+R*~Thvp~cBm!p)(Fq0ips?p#D&okeA-#ji@U%1A;I?J7c; zcnI|1n>Go!)QarZMmyZZZW8OXxo4bLxdiWMq2wL(*|i;PNnAEhR|0xK*{go?D;_s9 z0kGWGiyu_{#E?b>`EF5V=33L2O%XMgFOmSZ!aIHVJxmv1r~#mh5S@vIdm(Q#v121L z7#Ns%xd(i?3GS7{jqiwpxHq7nL`ZQJ-5rc`qKWO@bnA z$+OmBjH>r(WG}Od4~ermTS9}}zhk*-gq>Eb*xrfvW=!7UY&+a+kypW z&;B{)gO6S_K^8BbL6v*7$|9QQ^|kDLE?i9a&UW zhx0D@8kb4a7aukPuR?=X%vCAwjPw4+&)dpwA4ia; zjLN=^&9@5RK3mitlxQa2K=h8#Qhp8-H4yVZr@}*lnbJyBY`jTarR+QL3caAEL^Rb_ zEPFboPP@vRVUmVg;1XN*M1AX09pQay$?y+#O!%8CJZsSxy#Yu2-AUwP6(UTNlN_`pAKqi{3=?>Zn3|{B zTMa1bM7Gbg4AB-$opZ1U>k^L5`Lkyzv>QxbR3?le)nrL7$WZ%EOjHFE46kNCg>&1d zeYk`3D^|_$>{Q))NCe`BjN;uQB+AR=J(+(=GUEtUtJ8DhIRlD}j@!$gbE~^>#9U+a zqoWd-n!};mn7Q-_qwRHjLEZBc-Qqes#li;SDvw<`dM$k7Sd8$U89VRUJ$un5Zh(|? zv(rjHwLeK8YGN_Ze8X{MJ1Q;k7j44^zs=4F*-Z?(U@>kG94e-WbSZU~9dH zOP}v&ITQlSD)%YYcPhwu7B`C9(VQqizk3Jxzb7aHoZsxfIXPH%?t-B_rYq%0SDX$y zt;`~NZ;Jw^qL&K8`AxHMn&uX$bBvwMpQaSjyJ|nclupekfF`~yKwogfhjw>mKiZ#? zj{WWi33jpiN4rj}PLk~|-i zNZ0H(sP9s>jotva995R+Z^ExDpsAV<4i%*?V{^F_BABYFj!rP~7pNaj7}Ci&cz#RV z_T`WyZf>vRYkhiAh}pkQG00TNsoYi#Z<**}7<;&riZvjekcjDEIfb+jtz%;>bQa9F z6WrX0i%H{u;|Cl+lkk(gchmjQJN=LBMu#RBc8vcxEzU?#&}@<|(`5263zY@Jzo+8d zeNL;xmZExIs`UFjE(MvDXo)SdJUo#^`wt@Dz~kcOQ@8FP7l-h)vcPowCxDyzPT2&& z>ykhTuhQ-B_ufza_3PJr90rK=|1qq-qf!9UBS3-g|DjT31uMp}B_uczk!1Tt$3>d5 zupGCw=04f2&CA|5%Q;)-Gv-IVqP!G0Y94vy10C5TMzs0o`c*De{LxI^BzaDA-o7uG z+Q5hS&^rk9r;XO{5WDvVCM%FY=6k;t2HcD#0cOd1z?&Z+G51|hnuB(1EI^K@O6fo8 zR^=C8B~AT zVQz$#1SWksc+lu`BO?m*ZwRuExqqs|yIedbUe;=UTZ0m5NSjE~M^uZ92~Cjri;0V@ zQ5DP6;6PGn{plbrp&jb&&wcm=dPZZz>Y8-rga8kC+4chAWzV!eSthU)aKg}4p6}Rm zBQG-L_Z(fasZ`e{OBJLSu)T4nQqAGk9gob;U5TP9E}32hDUyIX--fh|oUnB4HfH_} zdKFb{RLjNAF8@aHyrZoxjDul!8upi~-}lmJ&|@2}KSLn(4R;#YJBsg%`3o8-wq9=9$?fo)%}P(YJRzx}XBsh{>0jf^Q? zF9?u9)cR~=8g=A~m(j+Piw8h(iiE$v5Wubp1Y&z#kLQu#kO>37f3NOb0BAA5&V5f5 z0GKDZY$njyEL`Hox-+P)H%xww9GVI#(YSzF%zYs9)taM{kb7yxu@|d=NtMkhME4hP zZ2`!k6d-OY;54EE$uHWCR%ig^M%`kl@k2)YU-l-ke!E#7i(7jaOtweFhY;<~MX0O} zZ`!?_sy8#EIf(*OHpqisI|nZ+)tc|Ql0#IVHGj%i0K;)t&2&*l9;=-Z8gW!fdZ2R* zuZ92{oM~&sX^SPh65tMrM=LPwRjBnH($kmdty!71(vpw{!2CFg742 zq|dRUA3uOm@x{si0HiYUXF8)Pv$4BlexmSsg=-c@?w4%$W^$gN+Pb4_ZhpZ(Me3n} zB_5ry5sV%KAc|(p5MuohTwnTKc{AVuRNBF-0vif|iUIPyT=vI*0lzrRbJO? z#ih4-?j48YXC6yi;>!p&o2q~%CMJ7J?dfFZ)J>#Xa6X%1Gg=7iDfzR%fG5>FHZBc$3fDbN>~Y%#M-bzv8!3$?KT zM@&dvml!*NLuVyr_;F@8#gu76F#`G%(7se-T_$+(5g%_GBD}6DX}O~jS=~kUHP2A6 z_s;l7nVnZrXuFA1_grETk80W$jVj9II&T7sU|U!WcRuf;ZYiysNqlYkgjO+^2)XFX z1D4$^LDOn2e`Bo16iGex?&j2!r_Bg)LRxlOy)A)!I(<{U%Q%7ZxP#bOfZ^(}Z}b12 zW3G}7(LTi?d310q=VDens1bwqVnRaSTeYunU{ywIellOG#5?m>**099=|&rmkOgu8 zp0K>f8sLiqsj|U9iMaVa&%YPIgIm4w08x9O)_0?KO`~jbsCzPJO{1gEJI5N%fifRS?M&FVd=uT4&AC@>(F^-%_C?_r zwK{i{zrc4rMFrmKz0|P4KiFCsCSRw@FEGDUrpIg|qzCg0f5)I*_$Iof z)MNKY>)+bJH_U3RvOInruoWT=c9l90IkGmdom^TE;EJ>rQH~^2t;PyXLtBtLEtVJ` z7{#;|aj)BKFY&TVER8Tt#$-?xDYhrOYm$O;`_$lXuA9o_#6ADVIPN3q>7vjJ0u}Cj% zRsV#CsApjJgQwy*j0{hOnrGy%LCr{EGJ{Ybdv@+Z0Z!#i{D;3rW0|V1nLF%X#`WbW zqvC1*c{!yx!*@Qm!Vi`91@&M3n|yXQeu-e;tB1jMCsar8yscC7G$RMDL7<(%)!l!4y%v$jD}n7#569zPLf#r!8-s1-Z3Iqr&@z?G znh!ScWZZM*NNwkSs;RVtK zhbjito}XY-?HuPzT{K$*XBlos`FMnQsSh|faiBI4{l+iQThN;x|2l_gdi;R20bmNT z0v#@DCgh|~?b6`{pOq1|`Mxt!Yof5pGYO}bA!`1!ip^q+pGY@{ujY(EHJRrWbA3|( z-ZMMpOMBPYQ>6kz5k9vEo67agk|!j5#DB`z>aSwQ4v=aTid~&D4Vr(m?6i$I2>O7L zDq*)y9yEBf*8eX=PLw^a?o__%8$s=3N#6K|gE!w7j|fap+kW_OC6syBDkL^0IbTrQ zwIGi`;E$zMkT+e1Zu0uiEE4Yf&^wF4T@1A4_~!4t%`t@zx?aKrp|U|#oX>IS2*}G zG6D1Z)A%5wkCRqQCDmP=78a}j&-_Gikqm$iP2GOBhFMWXqmJD3Ds)iFUJ8jfP+Jkr znswp-mJ)jr2efU;hc@_%i zA80-WIzFz(xA1*BTMK6xIaz!D*wl(QJWB%UBmCR1WF$&UnRItcH;mYOdH*Hu*w}ve8|R$Q8nC`j+JZ<=(ieP; zJ$c5CUa9m5!QDQRy>wzlKr!#Wb;A9Y6;LI;oC;XuE?@M+`FY|y*(ZjEhM3GV^CYI7 zcr#cM8BRG}cc?bAOzyf5>INdeI?P$B$E)5fISm;JJIOk!hTbtocpamsaO(+wi&?P@ zd}`YWl~TR%3W^ibiJ{q+(`R4kn1?J>f%$NhDM2mwphqtBg{P>m@lpHCJgxUwWKRiX zk}S7`Jz^F3e76&|Ul=38+SlOcbCPEZ8+mFM=}DzwCfXjNK`6nrnL5NRtv|uqB zSoB~)}5FhGu0Izca7pa5CpO>eSzIZ zJZWoNL?C6op3r8KaP7hN8A7dzvHp z){H*8p5gM5t7XQ*ar!m?>cO<8%MD73g`o9IiNBh?tg43;qlT4A!LZli$Zkle&H6LdzvdY&X4fQn3h@Bd_8s#&T@Se zF&=S;>bi>d0F-LxB6$3e68C!Sz)Sv6lxQ zBO*j>xnP+_4@U;hlV0C{3kFBHe5mf@jcG%XL5`&I_-U;?QJ8jyh`}UURPoddzTaY za|m$<%eiX2%vw!y1beh>@tTdgr1O=h%TzBH<|6h6URZUfc&gzqCA(Y&>jgudb9Djgu(zZjqq0X_0uur2^Z;p7|w z0^@mnFU)2L(giE)WXyIVxLKu~WVu~=Q2FXcTlEK8ok>cwiS_*|vdA`tm0f7>XJu6A z32E+`=Oh1;$F~vvGgUuJy}9eL^g9!r8TS1?x>^>J$X=NaUm;`ZM~P;%QKS`IKaT~e z*F#;A+)hwAgvq;AKE>3Cy8Do5!|~(8)75yZAC4@hZdNhYahWdvtOm*bCbB+bKCikr zjoxvZfD6nVDIDZo{XjLHvNJk6+)cG#m3RLj2#7^lJ0QwE353L;sknKgjHZmn5tPv} zuYA68zNg=e;x=DGAZEfbX1CaCV546zz?Ri7OQK6V`VV{3i+?52 zgyVUM(ABu)WAK?&&2bm94!b2d|Hf}BScgt+HP3s zowcD4>m5Mr&4D6kvei?kGAdV0^&hYFRKy`6q@C%eeToj|+_3B?OU2&UZ`E#GS>^5l_WBdFFEB<9c#1E80!S9T==}>yi0+Ip4<4)ql z(et!k-YY447x`lQgs|}vp;|TbS-oe07i?`WeffNx&zkmfDM{X9c*154Ov|6<6p$|+Q*&NhEEgE0S<~I| zCvwk{qyaxVcX)%5?|T!z*69wO!tNDHW2Fht!mmZIfw{_0A>;qxqWSgQb1wuujM)F2 zqC)D{2kF=Ik#*W*uLRj6Q$hTT= z*!WF_d=plYBl(7B1~QD_D7+T{hijdF5TFYIpZ(#_D0tiennj^h?YcWz`lp7_sn(Dk z0-Jb>W^Qg%fO}N+>~_rNp*3^dj+RwAO=9=i{w5!4CBXe70SKpWaDu(DbQnPDk#%u( z6`quY^#;Bxd=E!1>WxlAV?EI0>PGJpCZ*AN{ncS|B$aqmgcwT+5^@@RD=A4FSn+hX47EhjR7;XvV9NvV>D z5)DpXHdwWLs)cGcW~(rGNUoDpN5fPh@jb5)GystEP1J`|#Pcw8bJI*4piPmGkhHq( zAOZ(@BrxwW1M+e8y8QWxY`k8_aE=ts#m3_La2R*` zU>EkZz;|Gfr zIyY3mk6UEC+$QsJ<#TxR@$WyY_Jp|C@_wDiPFo{iE70-WDGu6+mH0C{PtYjerWw2W zpimVq-UinU9>AR9dvl2Mrg;O#ba-!Eo|+mi05t~-2RBu&PBoD$jQ3`{06;9!12S8B z-f7cYKiEGL60)@5amIRBoPJ)+$FsBPBFfcfS3>xm@>I;10U%?5Y3ZAZ;|*N>S7XhL z7f?t@zCO^sNj(6>g$3Y{5%L)7=eyyI<-2oPBYKG;&jcm%lP+Kk(>66R5+)khJ(*I> zGn{29TzJ-rsxn6l3+muy_PVB2n{23}fqwD*HKcJ5#wGbS?}FlDak4SgB ztJ>+9H@UsidX{D+OJ3-4z&EZL@4;C)hbZ_Umea)Zp8let3GljPKv0wX*G5wu5E$Vd zV(6@!im-}l6*17mzmOeORLVwwjYJ`Go?zg)iOBRw9`Ph((nMReY|}@HyEWJDY6bc= zEsdi*m){DTb92Df2&+^ZJUx|GuP!N(+}Abu9k3`bIzZ}L7hhq&#z#Qlk69KQB^z;f z76!@=Z`*Q2W5V-v2jXEu>z=ZLND6C4X3Lq;MgkondZD$Ej$SyjEey3v!vojPx20MC zA)gx3^*>0k(CXM5{quqY;kSKkmS%q94S5aJuCmX+atE+fzIz16>2vr<=0jh{a{tRL z{m>A5!`MyxU-tOFL(Wg5;LmIZ(ZZVM{ym05r~D*vcJjvq(uEC zCG^bcUs4qTVDhfzHYGj)JzHH}ttb4$Lp<(?0CG8Ju(EH0%SLB>Un%~gXhav6G>Ee7 zz>Y{L$Sq(&uZEgQjz@xeYn&86b*i=5_vtFD0(5af7b{kysiJ*j;n}t_nvFq?iZ%aB zjdri4wC;h|+_h$*L0L+fuG+iIHyFY86K#6XaZ7alEFqq`$5#bKaxSe{9*2?OUr%C( zNSE%Az|y)euJeP0$k3bQ2EwZ_^SkZqx{Ty`J@z6QH>{_lQ9_=Y^=uup)zq z+Y=t=x#PR6S>{*K_RVKY)yEXWzu)iV`{uVcxcgblNyjX_ev$s(3k*@Pt$tP3>3u3Y zd?e6lh*VfX%WcqLXLFLY0LkKP?*CjFV#U1W==F8O=a`UY-kr2dBx_SNy8mMiP;vm? z&E}59@Wyxdc)Up#R(OK?HRF383&Kg;Q_Gs*{jquGyZ-fs9$JZa%*}mv?6v;)X9+;6 zI+bqCKg|x)E`I{(BRJ$Q@HqqZ0(;oEU6p*yq0r|vsoQotSh@xJ*v|$|4_SqdC}f3M zqG1A0dW@9nW%Ve4ADi=oD&jTMgfMwaE0Vl|3Mq}QFccdX-z1>3;)@li@W@rc*}Zm^mP*qN^}Q3sA=*`9 z@L$?ryylLgGzEPWuGTjati@rASt(~2^P~}MFWi4VudL_!6Z;Ta_G2ujeDGuM>OuqV zZhJ%BVTT+lP4eOE?Wd$+gY8EWx4qq=S3Fwo+yU6irG8h#y>_YHKp+L+iVIQK%{DQT zwigU*55&?{pvOsm*Jm=XV@oU5KvxfWo3eZ*i7DOxKiL}q^Y#O}78nqK0*wTYz~`5j zsh*IKlJasemW0r{vl06^+VmxshsPDYKW3%J%7Egmvc;r zhPU_#_1*~C08csw;8gYhNznVvoUU|pxlQp_5TdIhCpkWt$_pEWQ~Cu&ZrP3i{)X(w1q$ zLW8B7WjR1Di-sK(S=bw^FrDpkov*vc^irZy%ckG6q)hbG(kSO{EW4VN52gp(7YM9i z*dWPLkV=B}KOrOZb=+~SsNPcp+nR)_-I_I`{{@yxQtP+?(a6X0uvkg|5Nn!a8F+8CvEoYMw^_8S$T8#S)sR1shuD>5-AWAqEtLsjIPjzil z3Ht*G=SQ;J`Ac_B^;Onv)GQfBIj1{e-aBD^k}zZDBLbbV5WD*auOpj6M?uWi?zO*z zIMnwG#XB#@2IWPTwoWC?oHHM$9X#BPpccqwlHoASVS3Eg&|+o{rB387Up~V=K}EBS&KDMNBHtOXfH}dlr z4s)>zVG>5tY99RlQ2}ILV7*hmU;u=+S3C2|a|Q1Ap|K0OB3+x}XlOe;*up{g{s5ZU z&T|I~N{gZD9K?5lJy1-s-FM`zc7En*O93uBuNExLWyXZ7CV)-Ndf}FuAL~M zUq^^>|G1O=cK}&_JSooO00r!HpS3UhNWs-_DNF{udHdJ{J;jlC#yX*3u{2(*|8cx*xd2+16y73czSsOnLqO)`3FO zUU!}pbw=X25LG2u5-Sy`B`&dH|BPUfd7emGiPy1#xvs)vpi6roMo7_}w4p90lic4= zq(z$25O*>|%`NI@p_^ix)YU}C2t>mIX;8j-Q-L>*xNRF+xd+Jsk5WPMItrAK~ zc5<-zvo!2mTD!(RltyG5##NFWa@{2y{G?*W*$RZ z(g_PJs*2{6`E(@fEjGRqNT)hGEZz(2pXJLinwfkIUG%av-ZcvDB=x990y%EBqWFJA zs27fyk$i&Hx=mv=T%Tr{{lyR89|apj^q`}{?kG3FRPKdZd2Bc;^El;Jl_l(Cv%Tbp4HAt=}*|7Ezx0C`?X6O0>7CWuOWaNI%4t;SR&tTmJc z@1Ue``?v3%pMQi%PO;Q3CnC5brGRcgu67LnnXN5i+C8H@{98!%&V+WAgx=6q(`H2m zgzWv(kEVPXs(ohRH4$@M(3+;oSF9(hugxMOh-?=iis+JH9|D-xSrm6Uvg|Rhl+}h% zYSPx0jfd_bGm9-*@aL5*Sz<&foLg9-hHuPFhES@%-%`crzFndIHCE^NxY9Noz9&RJyxb6ywhK`y6TIZNEtzgb=r*RMWOnHxXd6gjV` z(Pc?Qz9To89|#+dKQKgS2RY1F_5t`s9{(HLH&!};eH;L=o!sW|bbpeldyXp7j$tcH_c`Jk459pr?ESs z0Y+<*O7%G{WcGMQk8*K0FveJYG)oOAcw-OunwbL3AG^MgS@64G*KqqLf=K8^su#id zgL|UeVC^fBBA1_wrx$?ndELrGG|Y9_QkcwNE`?d5liSFETGP7s%@ zQ2Za4VXE!%Fx87m`>XgDv%FeOO3-UVz9XCV4{jSU$GX5-5N(+ThbHlt@evM9a|rN) z-wK$LP+W6U44-6Z`MO6Fkn|`v{XSD~tH&cO@peoA90_ z*Pvi_4u>fpCX1zegpKrZY3XV8%e7CAit~8pFgh`*`fB>LmAe*gO>uf`e222(!wvX{ zZ6R~cH97Ed@$}<=C8UNv{1!rqP(~|lifgZ>$)1oRpo<%O+N`ZGU z98u~NGlNat-h)xaUA;SwK2EQaEohu5D6Vq)tN*wsNzgl)^^!eCn2ZQ=JgPBUN1Y@wKU zO zyZz@)1MQHuVh*qlqhOcL0}SBf%gGGo(Hp`4G$B6v#ZuTQ;=}#HFvNEVTKJioOW!wq zZoyp&b{!9Clk-t%N+WF_Ef=^QAU}v9N;=9o?dYpEZg%Gm-w%Fa51sW@!d{<&ae0#l zQw%NjTw=x&>pls$N<)3JiS=01QQvBJGMCOUfadmHy+EQ9iW;Rs$YRA)w~y0c{)tK1 zo&Wp;488|!xHWbF%NFc1O3%s&rJv+ zpi+9i<&Zy;I5vE&b&aSLBzZffa~%N?zdDx4>8$p)|iAH z=7PYX#Ky9nQJ8OZYS+iZHr<}6Es=~Hq>?V_0S?1P+qC zma$Pmz`yc4YcUMlV4ItXyxzg!6iL5|)dTCXa8c9g)>zgUd+Bzr-O^^I+d6yKeeRxE zt}LcaFVF)^JnrJXAw9UdZg8^&UCwZqB|G{tn2p6(JA?4ad9~BSTMcV7lvXQ)AR}xr zN;8a=gniwQMBxd^v|e<0xDF%nL?$i?rSkfHtZuROLTvo%bUkK8p1X+UNYSNVupuOm zt*0Z1D_Hh0txvHXhWf{}qe0>S*b)acklAXr&&dbEfR_Jb1xHNP?G5dJ8H)71@kI2& z#K++%$k2acT?(+e4Q`$8`8ZZJO(m=F|Gc+qp005Id#*Zh3F@-KAmjSU7k%4v^_J=( zWqb_2d_FH52f})X9Qlnxf^y`(z|B*vki$wB26g{Pf7bI8n|Q983lVVR8KzZd=Get12cofYiki||jqW(iQ7uu|_se)-AN;;`%)x61hFiOr=dHaw5C%f+ z{$ySpFtQ`J7)B(w?0k=%nlmeIm&(;scwo?-Dj+H+(0{4gTgcK&8e>_TjA~+hn_Ns* z9DteoZ`oNvbJT|{cHCMx1)b=Hg`&1$es*tc38HWN^uv7|tL_octp8ZbpxRROQZt#45g?C(_yVpHf@4g52RDSH>`>&rExCkr% z<_k2!|FA42QhBe+m!usV)Ler5qH*ZNU^z35wrx4skYQ#1+fDLwWBul%iZ5G0@X#E^ zG%eWny_4$FznEeiR9jf*s@U0WgP-f`TTnVijJ20Y@CUwDg%NKVa0mMKAxbm5cGMkt zx7DYsoK=02se!^6Jy&{yj=P8TH6@iD!N1TE9CA;uyy{Fn*`y+Wf6L|EuBC8Sl>nJVhO5?YAgv`DOGMv8YO9p-|S<^d- zVwM@m-ar7c!}rV?RsSr~7Eb=9>Ed6^^UUDO9-rPRXCKeDr)RmAAiqRZT8AAZZpUYk zILu;mGe{)f9e&xp9Yis#kmUU1X8CWh%$h>dS#C|SYe6wVy!L{@&rZj)HR7GTYhph7 z%d6KQuZqBh^?$g-hZUhV%A#%aRRlI-l3bAirJ2gNlp;$`c~oa8xolk8bAyRE*m>`H z%6Hi%tA5(EjC%dx1$nb6rCfg{@U{C0V8rE4X=jz~*Z5?;dOGpw(|vV!NIYq)kogrT zJTWW(dgBp(k$#?00XaNg?djE9q5wGQD8S3;NB<5Xw5A6$$g<71WJRFmY;=_36>mkP zjVaqZ_?O|0Ph%^0DU9SgQ`dU8DFt+8BJs9Ul3z*gCv0dIZq?6RKi@R(h5zDcP>PyJ z!>7k*gH}pRYtnQfLRXsn=?c+#-)J_%rCHvC)Y>ruPA0G#POsbTRHc#4+LFjwW-(0* zzM(XVgQukFfAVP54hnKFieHzXtayGj*;n?nf~CyS9z7hhFrRerDyOgHbe+^<74Ja;$!jQ z0lmY-z+NWX3F`uOYYV#m3nI5~>~npH;lAx-+WdrIc~S$vN_kvKM-nK%7=PI*R06g< zl9wq}+l2PMqIlxaGq$CsZ1pTZj81rxO#6U2`HKv7Q!_$VA(~|9Ue%>=_YCcA0zI<9`1|Dgio1Q^g(Q&4eO`fABDBDew8iV0Yp!e7?*wKz;U#%Fd9*|>7hPz& z2qadE6pBo5gQO=ggx?grQ&aw)r}Q&bZ~MOwdcVebLi%c2kwFkuM1f8$^gP7pJ5S#g zZ$z!GbOI1dQy-ZYsVi$IjseUp1yYic!zZCuqxL}yYc?nhJIh&>W?1Ww$QGxS`P;=T zpP?>*Ia}`N`-l_8gw$^H#~Fa}I{JgPJ>D z3j4jWQ{6j-kdi#m{L^_)jW+@7nQkSx(jTI9wvx>K+$t zSJ%~grC-HaT?+NGbIa7^7jb0v0Er8cvo+6L!BHD5*eXP!*UlC+P!+feZL&?-Wh(@q zx6m2?y%ePLC+97?%;Qdw7S+Uolwt+zPtMAz&AcBX*bFrdMxT7lV#&L3xJ&!1ug4IW zk)@)hde;$>H_A(4UC+gIZ_01nl|p0`{-lHX7w+XY<_+B2O}A_@P=wm~{gWsk4sfBz zJ|tMOPDHrV)MYK9gI{rd_0y5VLxI+GyDZ1KAK<8c;!Ao4+& z%ICwSUu`+e1{|X9>`rrOylj6#3BIiaNYE(KPDO!m7uS;HAz{vx@{_Ke2Y8(Z^ldc<6t2l**H#{6N6OB8k|C>x zh4>V%Cp#0t54q)0y8g|F9{+rkcfeF_*%7=207G$M>6QOt_}&W)H)pxm9w3~~JP|Zs z5_jI%d7V}ju;IO#3~Q$MwJm40Bbxu5tt;M03c_{%pr*APBs9NlycrT)-28eFKqfqc z6L?$3%L?`)`t={G`@LVPy%qDI<_cuSNQdliiiSSD_?krsM+w}FTEwaxN8rPcoooi1 za6=+lApN!Wxh;r=d!NK=JYO97`wg*-(?<_6a&dortumFq)iw_v=T)J=n<;tjES1B# zip*iEL8^lVpjqcQU#(f+(CoBAQ!6o45sHwuZybpBy5I=zH^s-m*n05^E^Az!R`^pt z_yOC9m%rmf6y|pTu-kf4KhEv-PdiuQ^icYK)dReB9+H#_-&waEqywICeRlf!C#O_! z4xu*J7^h4A2VAJy4y_ht2ptNd68rhu>4%?;6s6@YqEv?-9~5%%?G5jdqjWy&lu1oz z3(L`;h+*nINe-Jbe;5h4R{LzqJcSE3wsw#Y{-#mohxTA5R{OxRckG!1Lhs~gd=c)5 zJA2j%&YE3qFS#w17e7F-f80|Y6+U{N$op^69DKBSK9(`=xHqDztwp$cw|3jPoD5ZF zId_nW;_1EN?wAyAJJ8ZnItv70N`A20*c{Z4plUj>1|!gyL{u^ra1 z&4*Z3^Bau>hvh~VO8-NeljSC~Hx%GxzIfdG2*ghpn|;1dr!Aja;y z+I<5s3`*wClnoAMBDrIqVx!2crmHm!Erhu+l(=y0jTGq(U9YnDi?TrTUH9v80JM7t zh*nfk`lZYo@VJ+0F-4m-b^VX$sqJ1_r4c6Q03_OzYH~E7vtj4t5G5mN^ZC4UO)}C% zsx%j6u)zvejVASR`sp%wbK_Kc-Ck`pquod;Stl4*51MatFP|eDjL!pl*pc6i3OH_G z9kJv8apu;OLk=BhcqNjRuLhL=`?(&BDeE-6wc$RQ)Sw6RcNdogFaqS8{YJH_{{B5V zp*nEKus_#hmcU)ZIE@}C8lPB2w?euDDoTEtKkkJeK@LvSC3-Uj$FVx8%jY)RhkpuB z7l?jHIp+f{?yMzngqx-*$t7Gf@=Mci9%{ZosE_>AI)c%iO?xKc*C~zy5=m1_kW4kk zOmaGY2-u`Ke2pHHmiO5kqXm~7DJkwbr>5vU>0d0QOqLYJtxX@0@12+g1o|5v2#4eu z9(SFeBkoJG_f&nveLPL`4``)x<(#u0-}R!X!g&2R_<-z)K_P;F-u=XRceWM>(12In zhA9AnpH7D!KI3|Rl>9gceSg_S6G9MjQQ*YC+W_h81IimqvGT2H70@xTEFCURl0Z!z zy=YvxCA36~g-HD?>oe$s(#88@=xPMW+lzL8Gc~7SOocE;POA22ZglH+@>fnt@KV>*H}u>kqUF0i*pI_>e4PP&+Ld1yjpBOE^|~;V ztq_k*aw3IrxeG3p%1HT-%&O9l?&6)Y6{7OurIQm$Fj^2ato5xs15;tHvQ+&XK^TMC zJb~HUa~C{x>755h7%5gd=$}+GzPelG3%S99#qY^Qe9qzl>md2j(UD%AIl_Fkah&K` zE1XE4^)K7YQp(j&!+kFwRAkPo;&Z{E38`-@T9E#ID7J4L?{mXRMbsbR_X^(v_F- zT?FUcx$X|5$SNfsc-R!#0?e?kJ`Xe4wt4@ao=w}2I`kfRU8l;uOTVgr+seb9#O1?5 zR5MIWs&9*~iRF2J`Y304$o!~sdYE06*3eXXpZ7ubRN<>U zTx0l6#@za4h(k+;n@?4yiB5S98oOT$G;*1-yb+_j#P9%gF#m3UWB@FgRb2{hI zJE`g`iLusiL8mIimZ7&{8W8+KDhYk&b#6amTs-x5Tx*}(N!m_gJ8B8HlCA5T{j#mY zEZBKT%6-Mz;&a>s3A_epBm!mO?<4liX%GF1nqr!n32ZH{&I{O~c#?=}CcG3l7 zABwj#<>bWiO#>Dtr~yW964nBNx~l(cPEjo4kAEt6UPa4qQ_4Lv+8JRfR(FNRke=JA zkvc+=MoF^)92r;+O3z(X8nKZ?i+}~6HjRuBzG>*$TL}DRm_?OM9yg>#x9qs zuPr&brwSsKGIRR!wF4Up&Sz_r(iCCJ_VmA``q-%5``9dEpKEW{S>wpxBM)5HMs0V-Wy#K8&h7UE8Fncji{UWd0mX zh~6@1!d>CO;akoK%r!v0X55>Q;}0i^+TcU)V8i>}UChEiZDG18W8Y^hGwFmIcn}`W z)Q)ap6BezM{v+(o&e{_F<2U1}!01~>fO0g}J|Xr)nT6P!D-*K3h2>OGv+6f{{|f!$+N{5lZEU;9d-1W#g8p|bZ{qHL2&pd! z+^-a6-fIguNq6dKu4+ICrm(Lj2Q-63a{Ic|d_^+1fBe9Zqu;>gLH#au@4+}*b=`T* zMTwd8OSrZh`Wi48GUa-*$YT`payv3MCatN7>wj|?c6(fW4D4gM%iR&zwbJ{XlkLnGEm{Ywt$K$@5R)A)5P|!M5z>U%!6sQ;dKQwQny4wtt?a>_I_e%*28h( zjm%N~cHf|SXp=u}>U41u>_wx@FqLO%tM;@ShWX%hy!RPh^07Po2dv0-Z(9opZFs6F zk-D`d<0X6}!>7VDVL=0n3X?O_gkIhPQ~MrA7H6hhT^@+G_?njXIhju0{M-b5UH;<- zG7y{~j+fVMoTH_%Q|uM@$RRvDi8{m=E0J05U|;yhI|Wq>JX9^m(6}Ou7Ni>N{J%g$yx^yko%3=>CWC7(jIFs zzk2-|xip$Z-l<_P(}NtS1lNR$Y!mRkdBUBs{C@tjX!Cj!B(-pf4K+gT+fXn(Ba|d~ z9x;S0XJ9Vng?6kOVC%g!o{jXN>D^|#yt_-FniZF*6Taxa=c*0}T;B-Wu)1<<6Yc6a ztK+rvm0Qd%>`kCZ-k=G4piKPJ8GXvWA)# zOE~1EEWUY@VFU_U3bUT^F;Yr+dg!=oT3`~G6I1+GiO#t+VOU+Ya?AELMK8&Wlw5|8 zvzs0gpgpKR^(4W1zKqzpJX-5kT)pRlmFakfNXWXdME*X_IMk0w!Yl0xB(^1=PpwQuY!Yu5Xzd)D^!VxO}IuNwk1jY zj`;1CnJ4N)%QH1)?z}w^BjmOXPsnM695)y~n##0ux8gDk82tM=Em|8rJ#hWeV4RT5 znkGek3BXajnpV1^h4Ll*$q$Zm!wz0zo%A2!^t?L?lQfzH)-?iay&NDrr<_ewKQ zJIhC@uaKfCvd}Ds#DPv|vhB;xdiF5MiTl2mFdf0FX3W!{7)v5fg!s|Wwh149VDkRQ zA5OUd!#N;F0`Ugrp&A@TY|`9ugY4PNSrSm|zwpyTnv zth&kDm)JJ5PdpD~IU8MPTW$ZEL5?t{Ht#%qEGFKm2|4?I%1vF>W)WQLIkYK1=6TN8 zaxC8~&P{SSb|P{0Jxw!`gQf)c_#p4VwhQ;i%HeEN;;P3J5sc|ZnPW((O}KX(4BBqH zweekhpr8dmvi~CtQuaMUqDz|TLRU^XE|CQ631n1|xRO`SdqA9}xBz|~`CVu!Us4wD zxk*9+VTF<$jEep4h$;h7??2I>oT0Z#FR$13s=f`Jp$xH2#v5y}lds{rg3xVSyHfh{ zrK~P&rKG<6(w{0QoPd61py&0L>n-p;CMM=^p@s_Bk|hod$mEI#5WamkkwWxui;Jlk z^!XZxEJ0XfO&(vi^JZGv7no4EEm>v4fFzzTKJ4!AZ?CxY4Dv4+MF84sI3VJ0xZUgc zFCc0J^#TQ1EKr(mOF|#9-mZ?wwJ5g+v+uydOmyCFhd^M|oejAxlfAaGJ(X+A@3hLs z@lO0Tf=}mYz!H_AR3z}R1N+wzFrbr%zP`BarR&l%F(Cy(Zu)=+tn#kg)&G(M#&22G&uKDJ(-{%jy@YEYhB@G9iN?~nVKL&v#y8@{dNv`@ED zLVw4xwY12E#%BXlMjM14wW0zebHt^Kg zn4%5H8;s-~jFr2JQqqCIu31mf_uGQ(xH>Gue)#rymJ@8`l^)r*ci^x(>DE=5(Q3Wy zlz2YcAC%Z9(3rCZdpjLW0#5lo5C6hMMn+aw`@iMme8C{AwV(SHjZhQX z>s0`UgjrZv2%?jpHx_;O?j5)7U+PMOy+e_9`#DxiYwPxKT@bhXuEL?GNTojAe+wE* z$wf+O+K5nn2~W8#DUK$`yLN};WjNVI-v{BQp+Il!QgG+wk?(yrKi0dN;ga-7gMu8zJ9^FYFt@pa# zH&d{^ZyNm4<$S($7T!J_LZ}4wt?ej87fs4E-}w1%R?kVulkq~>vTiO9t>O-8V{G|l zwJBf@=dR$6{h(XxHRR^PL?ZtgGOUQ7rd{0nE3&d21!_)=3BZK{z>ToJ#5)NLV z>Vrhc)~`sI7)8dCvH{O}JBnkt4j3HZ2LvTmEtb26@*~VsvG)T%^@Gn4E_kR(3j26m z9sa$$KtzFn6KQqll~Sc)3+DZL0M~lpwW>-s->A)Fb~fqk?5x)s6>`QL)-%}_-5e?3KRH8KW)%NhYNi+K0_@B5!(@WDsZzKiW8XAY| zv;N+Q8d*!jJI>6$yG)-?&zXUk6ys|vW`Q65)@hFksH9HBCT()ei<_}m+xeC`{VApU zbPiWjBvx|n!h;qgxC144qIGdZ&7HB3nOa7{f~CFwP)g#0YmDxtFX~aiU%}liK5-d1 z;qe!GrJ=A_Yx0DEUSL8p-EQ#d@c`v;z8mFbdsw{8km(rdK9zWjh0XGfXe-$Cgqy*XbNA_ zIdud@iSqTEFs`w+64h_WW-cSkVu(mNJo%U*gEiFMOENG2tV=Jnlrq?PsL%-7(X9&Jd6%Z1c&)w0r{&i@t z+Wj^h)#iVBy_h3P*|k=-r2ZN<)6 zy`$ND;?=WqWwY~dgNJ*-t7-diW#Rj27K6l$LvS!W%l-^&8nXbY^aUyiUYSAW{Mm!m z9ZYeEZUPhPyaD^IzyYhcsnvOj8NMcT+2M$1Pqz0chU~wRZlWX z?8h4X0@SPjPAjQ&=ydY%OMv5v)DyUwUP3%i%yW6J zop#Z0Jj;B%rnzr3yHLtH4^EN%atjloOK-K+k9@1*j_3UH^EDV1?kyv{-TU+(PnB{e z=fl5>8v4u-AnuFDX_;@qpdw}~;T@Y5g+BDAY z54DVaNxKlA_lcfa>hm+uX~T)8xo}Mx#H0C0{^MOUyLUXxHRqJMzvhCIs2=wya+sr1 zg{Z-HV^qaiHI^RS!oCVIi*5k@VNo0>Z1ck;?-Hx4Nfdfv^Lr`(V#h+(#xZCwT+M?@ zgIYGyZzQ6qMsa=xgc=a_Perm#y%!8KetHoZZ?jZeMNc#n*_n%L#8DIF;>%;2%^yeu zIZ|E)WvUc@Eb94UM^muJyQ8UxYaJ~PSz6^{9r}hOr+i*MJG7K8~IDB^4fpep5g1SmX;+uwvjgZbC{rywoesnRVaol2Kqd)l_$%zi9$_`d+RfafwF6><%H%FD-+Zfor>d@ z#h-bSs2R$vzlG-)PWVE3ejv9(<)BeIeD=cWSq+Je|Bk2)v_=YG<0~viXf@jkfBe7) zVA2oHn7@aHUVZq$&1*gF2hd}15JFCUjK=v$5T}qm;7f334t)7Cy&dAzaB1^i)nE$~ zd13*jAg0U7qxom-aVK`y^*f0yzMqTFGnjQpF4G^odVanBywK_^M(KU3tn0a7U21Rv z3)fQ!1z2Qf4}*?bQJ@6s>h`ycZji&o1yK99hrSP;;{~d8EoDlmK?y;%aLS00rC|z2 z9a;27&ff9R`D5Svv^J?X{cQMM_)gFkd$0{4%jv2PrPruQmu8pH?R(9o2UF=@1V2%} z%gAnKrqOn2pt7J##U!_nc8rvoipkQbrhiO}UJ|pP@|*8^@CG%cQA_diP@@V?`BXGu zD%dbqoouCXDrZ90~IX173&$EW~VvZ!z#ks?~If!cP0JirR$u19mu zQ+jn9U#f3Gq~hPfYk_kl6-6mh{%(NO>+WodnbXy@ZL!h}{oQXRE>o9iU;+7o zmT1TsKG#ngTn{6eGQ4nMSTe@fl!N33*E95`{k;wj&pQ39~r|#R@l8Su48vX{&3D6= zRVyo4jBAq>VxXb5oPIWzewy)c%LF5(LJBV?NNO(K?hL}}u_}||sHka_=cq?a)OC3&@Bcmq$+Rt|nG+H$ZZ`1RQ zI%%PmY`{9fMif5&iRZS0b~Wh=5=^^O1>gcwSd8|+i7q$FN=l{!yacG1n__Cl46F#C zaFfA5k? zD2(ft>?+Ly)yP~@j~k3Et#BZ%F7ZrdOp~c=7ivLc4)GSBO9~BIQm@iqMzWHqV32G7 z{H~dzgsC~6(($%SP7ZG=EX5B&-lTSjOV7R?sZ>`e`**b>HsZAPaZGteaBwj5>@yHd zse?!&l2|DEt>vA9uj*gD5^Xygo@syJ0lXLN@ zNBd1U!c4&;+95w)^1u~?GIOM0TT8=~P<{PK;G#F4E;r%_K7!+|oTx&*rpqM^Es{7m z)yf95thO4jM@jt%oQYe`2xHl;mHYA&HKC80bu=+aO74ahPr@Fqwr$y;vvzE`kSi?J z0!!jXIj~-QAJ;;MOV6Wo;xcu3N?nlDJlE+4+?qeD@j75IChS+n3xR5Jf*{vK#yB)h z1MlZPSL;Nuh%pc!KlNPaKWUU`FUP#1^q-jZdv&b-mOj8xt@S9CnsyZVAB5h5&yCIA zVk;FaRax}@(ggNhD(_RAQ;+7^t}p?pUn^3pN`R(j2pvmp4cGhH-Os5!Pbf?pB?@BT zo7o-YbD=)?_9>Dorm9~zPk!^h==V<_dt3&1Fjh-=MQqZ6?|qhf^xYLJH$tza!NuG= zv}SSyJJlBJhyX$-%S-6fSBc7Y3BRTj8Pcaa`RxMKe~6trilNoQo}z1QYG2 zPq9MkmW+lrM+8w!ycKARop&dbM7;%l?#?uw_NH-$L~q#SpM+67=#sP-< z8Wx9{t}yv9p{|()FbI}JuS5#!+sjsO-FsEgrfpt?`NXiRmVf!dF`85yDq>00-kNefsF$M{a2Dtuu{6` zLJzP=yt3>w+Aj;(2c7X&>&Q$cBuX18sTrXD6=U<(nOOA z0f=EQnP^VbgkhI_Y3+P?l3i>&nOG>*aDJ2T@^#}C(NZ&amL1QeMk|MiNOS$_9Cc`X z757dJc~A-Z6o~M_GI3#LV)gYY8Q-Lb1L$k2KPzT%CuPCe7ncRpbUaDP*-QWu0PS8x z(skGftruG;K&dTIN48EbPbDg8UUr{W5;;(_tv9)CMxyQWg-PS$9Oa99y|%)so&5Lp z1PS#W%AzA2B4SE27n}v2so0r9#^tolBGpMM;~a3xm#2(9QFI6G(<}V_uTTsDn85-R zZak<5@$cPD3+`sGD~F7Aj^@)*Eh6wLgJt3X2e<~*^2(ptcL7ES(q<~2bS0FZVK1@Q z5g!9cdz)YdBj#s=xoZ-KuD6^dZK1}RK?50X$Yqc3AD>2a1gC2bx*#TsVmU%ZO5sZ% z9wj~D+0kf~{e@s3b6@bo-qp1BTS93f+>MWVBR&f@xxZ-&iPj&^YIHmU4ljJIKVN3^ zj!b#vYw3Rr4Sh%pqYJ{K>W+IO`b5Y8#wlxv6PWL%XlHowT<~J}V&>yQp1tfG;D)5V z4thV9zufw8S2io9JY^F`!H0uyaIm;>X@F1R8GgPBp!_eDL!}2qt8PxK*43Ny;A5>wJJl$xsh(MyFEg4V>386jO#Q@Trn=|rV zE-$7{v!2*>#$vIn1vCOMc|R8-HwBhA7{|^%e)G0impw}aI8yL|m6B=(7J`0A5Kyt# zE?Po%_Z;|wRmv&&t9g3ak5c4#^!FYKr=x+;by{LbeN#E?0!8;uL0=rJf4U#$nvM@$7vA*_PYP8C z{J7d?_je)sTr;G!b=vkR3Zm)W^01CJi)n~tTnjy3je>&@#wYmgD!G7&xxPy4%!MkG zi}`h1oF7;dQJdM!zC#=_sQ6Sxa{xKgBt_d6h6pAdPCNy{}IO|FOa zh2T3-bv#;1W*Jb6-*OJUL@_pUjE1w%)83RffXYP)-WxLrpeK1!9Bsw|$iW;?JC7DT z4~;;b4}S0KXKaLFvr?g~O+ED47E9HiWXPV4!CL_}nbKFM))ooUbkuWJwM#d`HF!{5|7 zc)*7?&z|$>#&?_psY}p}KvAWgH3It#t$a&$g5xu-y1M%1Q70C+^)#2$&Nvz@k>hlG z?8B)AMxdXhB)z;T9viLVumXB9gZ#>arm7-0J%INiJuXvgq>sV-&MMz@wNGL=j_04a z>&sJq-+XlOt!z_oPr;V2@S0k?<~cp-V_qc@ZV+;9;TB-OM(CM*Wxl9iQiiC5`5W0L zs;S;~Ua;w8PzY8NWl&&~Tp^Vo2R4V@vR0ThEYuUG1s}x`1#~t@xpv9r*_6TYq>f!y zaWMwO{`T?%h>I5KR`QSJR;~J~vP4Jc+rDKk$E@-%tnyEkw>r2I{-(2a6RzH$tCYKO zozcqK)|;AKvP-F%4y1^pCyPPNsTNF1R%`F$Mysy!lj_y>#NTfUA#@8OM347ARKDDF zRFerdvYJHQo~dGjd6P`d%#1*hoawp`bTHgBszMt+A#W@-czb!Uw};mTO1ogg;$Qt7 zjTj&;z6W*=?-a4>p z<7ci*iO}O)WBM?dU!XY(lwTUWaQW6t$fC9J)cJxcAhmKoW`5~6#>0si+Hhq%bOC7; zdOC>dd`>-Fmv-oI00c| z6TZdmt{`K5{Lp}3;??rhWj~AJH$xLmsumw)Hgl|8JziR$Qw0EU1YVk;bH|q_s>79L z^0#+~zCEBK(lk7)0+U>a-TQ`Z`wy2$S>*~oz7(Q*MX!sF_j}~L^Y1REL|DGiJKSG? z{_NWpj)!ocw=DQf83BfD13i=@Ur~AEGsc;xr~iYTGM{&%ec@`X>PDt@F0521^z>8K zmOvHfQ)q?kkK&j|=hG!IGa008@om2}*EgxO0U)Z7`Sk8q7fajg{yt!qfqL}gm#=Y_ zL@zZ!_SR7^U6di{Q+5f|J0&G0KM=xev#d4-%wW2Tsl_g7!eM)NdGULhSZ=1Lm@@f{ zdj}u$E6KGXxQH65e_%(Q@2aj8#5_)!M@Lu6SV@8TSHRj;ygX@X`x%QW5>%WahAE>~ zWzCcVBL~$Z@sF+U<2fm0AxZlU`a5v4{+av?(A6Vy3RY79t467 zo;ut0_v<0Ry$VZ&U-Z66o0XygBaUJO&LY`c&QvnMO6Jr%ZW`}SmcRg4?6q?Npt`sR zy)zT+!LHArKTi^HWQ4`p;`%6a_DzuF{APCQ5H~eY))ikXtgv;yF9wy~>@L^C|z;y!g17_ID zgr-4P$0zg(ph5z)6+w|^SvQE+<~W3`{;a=%uo?gh^q+}HN*bw(_?`X4d(&q6)Ch$0 zdItv1lKDVd^qhSsrdGKjoWA=fIFhcyFkmwNJ4z)&MY^Z zx=1^0Z~Xlry;N$1JXOOoG&46}U1|@kJi#L8_e)Jp{hqiwW1jJe8nq4pO0!!y!H}UX zmJ*+5rG}psG`w+kehw=!1tM9w`S~lMtfg%rz%4Q<n_lPr&W~sk?>s)aUiznX3qEF4!j(yBXAlGw@35%eQx>h|0K57Z9uJg!^!v_zpEmF zDFT28_<>POzw z@^1Xx0GQR_9j^eNk~HWkmR*yP8JrE6a<*H|4O6xJi(EAI?ry-G}vA#bbR$=(wKr;H^2lR~Bs zc7V?TqxqB2VG|yf*e%!3*`)|-RO08Bpw7_#^B;gVmNyw-tHOv2fFS@LmL98DnxBsh zxL@gJUS1vq64nJD)`dGGuAbONJj0HQgY%qUHi1^{s}(#aaX_%|MNhQuJjiUsEZ1TK zmSV1z_U2&PNQ1Lgv3B*NKoqR*LiM8IoL5*;?XEBw!xPnf!=6Zrt+8)WL-)qoL4UWD zjS#Ekx{%Mv{01aQ7no@UNOEh$#*CiZN3d~;3)rZ$=O=dk)sb&Bh(yHjqcDem>N3b2=+;v=j%R1R} z%a5RMeYdH>t4Q*8n4$X#orsp3n|tXGjH*D;Z+PfyYli|-8vzWd%$qk+7Bfyo=WsoA z4YJ_SAa8>lflpcQ6NBxhW~o#s#3y$0#naY20okhCoBW5CZVW^3EUZ0`r_j7fQx$7m^>q;yU!Q@=3)61JjtUy zI)UQq@I5sPG`t4*{sGn=32a}$ktj>bU#AO)fVsj$zVh0HR$EPZSWgMaWjT`AahFJd zW2-DFx#}r6xBq-vrVltb%Wa^%)(cHDXHx)i08@rj`0UP6^}BRWTKp4%D9vtj!ieTa zD!hTksibpofJ)&|QUy)|xu_TM)zuZm4+v{(XbtAK*J%#yRrbr`zz3CMHC4*(s|Y(h z_RppXwSZT2Yhj*eOifPiQDtSNSALJK_L`$Ja4jfz=I0(b0$7qEXoLWq4&0!A;0JId z=)}aRz`jC;gj0%;>NUD_Ve-xS!B8`xI~EK;!42{<`ZP4a6C`6s4H2}yPUhx-Lqg*sD=>vFm25L8oWLCzwaE){;^@1=m#Wkx*?JH-|zXsv9bT!FZ_3URuTU> z$fFAw`vilxtNb(nzmFTuj_v$A$Ul;e2P`F9q6qj%zyd^Q3iTjhT-s0wa`}&5TlIfd zh|sDEG@jrcB;@jEA+3af#D713*GG$>1=fc{gZl57v|vVx#*i=|iJ$&m8*L#Lj9Pyw z7aG3S{U7(STRN8h`@%6~|MR+>RsO##+W2pRXKytBm5a)Eh8&uICnkvxhhg|$d08K@ zWJyUiF}1XRCj9U95xBqC|B^qK1l&22wf^@h-+h*PTVR*Z;1RU6O{;)U4Yp|5X8=b1 zODk?bjE_e`@nF^8MPZjD8~>p!?4D7K|Ah{F;$X|*lk~m)&vjUOrvJM>g@XUQE@uVy z;$QlMKb{4GcWC+i#Xc^~O^3DN@b9c~z%C|CTPXR55<#J3|2YE7T+#m+LGTA~+WsAZ zd?pb#Z++Oj+2a5G7PunAL;7!A+7AvPIw9e6YAQJl>(=OMMSp?s%gzYiJGRd^!6yYb zYMPoRJL3f~V5X%dOKIK8qf}w{QIlj46)~Bs`vAh((jY*8e;nlt43X|Xc`z=3Fb>Wz z(2BZ1T&%+5%#uyF4x2Cx2?S-OrKCR1N+Ga90m<>-%k78)gkdWYIj87jCD82vN&!>p@Nk*1zy(%Qcl1OSK>>3{fiykb-)xQMp=*@sM}S)K zu(Fub^^Qz1UoJpzWxF0Oxc%v4ItKoJBhbtOB%fI}Jp-@W5&}rpuLDMdWPVufjyl8mKiXd7Ux>7~BAC=Gi+7esr8lr@Uw{a7uOgk; z$3T-yAjnC9-@XHAS``4n11mpVUteEp_CF=AkMY~T61O+F+tsNKY6?LI9V#sI#0P^6c#e*>&I zGqbHa-1F#{z@oq#SlGUJ7AOo--9V8A64-wC&20h-EN>3xhwV?~Ow`)|YF9Vlmbycr zYxM|dkO^bzAcX^mJ<6UR?{aG(*cOCNvgH+I0+mz=>-QPV+j;-UqILyk8l3C?tbs-c zV{=)KGZRO22irk`WYq_|>@Qy6qEs7uWFNe@=V~M0B|ho+S{}g_Hy$*g!$Jcf8S^vv z{fi?J6rlb15iw(1I*0oY!K&k6Q1gJ&)?=ww6`(=I&}`AA+`RfOj38lao_Q$g2Ui@8 zifx2%W%x|GAs#Cm7e9=kzTpjUkQwo&DC_F(jXZ*d*DYp$6j&wym99hoyL45P2Y$fP z#)A$}ur&~78G~@NB~iiP_B@6@4o+9fFP@mi4QQu-GD*y$t%QmTENmhTc3-Q{o#8W5 zSkQXv2Pm+-dbHdL1QiNoZFAEET4TfSyz|8>8K#(sh)@8*7%_kjlhViq?KN#*fsO}u zU?5PsAHxEXO_(GkBrX8kBC z-&-7zyZI8BMk*>QFmEX=1X%aW| zuaNsbj|Ah8q%1lx+3AY#fE<1oHJcZ#Gw~UNx*%q@iyF-4AE7*&Qltm}C;yES5I(ui z?we9Bo&fUPuIlGsE9KG%lP8iNf&niV+!UYI!PIEPUyCeJ31*I7k%*bsU$)K6e^v># zHpDGq@B{HRW7wpX5sAk+AhP_;C=GNVPKbnqgOqb=zg7$CsZtBD{(;)a$VEb)Bm-j_ z@Rs0?pM+Z4YUS!MHXoy*mahDd5R@!50gV1}32a(Gq#?XI2b%FeI!bn-@&6EkxG**! z|AQ206<_*V(anrwXY(@a+78uVtGouX8+?;z<9)S!=I_F(XhyXHy+`1GfMCD@3PJFd zV6Y6kY{Xw>0Zcyz3nmD`cU1aNR)K6*HqBf6zi7J;qj)fB;iw7tIj1G07f|T1US;LWV<_Wrntcx@T#N zS3-L>v^8Z~Z!LEVTyR!?p(nITn+g@}>(N$H`0`E*eXMR#FTSyywzDG~Z(yAlt$Mv~ zY^(&m93i}x3HAlWB^`@$2&}S_BE`8y)@(|uT-BQP`X^hLMmq|U%*n9rX9mt4@ogL} zuB!N{1tT9cYfkVJr3!-BYNfnVv`uh};Ne-oR=%_J3265v`BNEdqK2!|KTWAf zS5xvqB(NyX;$@C$PWHOP7+$t+?9#1?!nf!t@1yMDsfdrD;6mx%6t4T*KDQH(tD9G$ zZ+3jEVsZnGd4w&K_jtUsN~r!6Zc>+dMD{qPbkvU0?%WL~&enWcw3#LlWFuV-;z)>CPx)!Dnhy7}t% zyJvT$rU(i`q4|}9kdY;VX|<-t0_0DjSUY{c*htm2 z@3hB^`0r}{rLVP<3utMD=8frgl{W_`#Yrr!#|OU7NZ32)-)_B7*A#adUb1r%D53p2 zrPYlQ!djdSs$=xFpg_{SWG<{)*O{yH^_d^)xB4B`=OYd8<05DP|C{YtU@B;`X|G}$ zMSoLkYUjeV7Fu?Vxu!nUu0F8Qm_KixyyM~Z$^G5FsJ??@5n&#y$+s>iU2}JQlczpM z%mx=s|(gWGgT`0@u-zPUS**--%;NA2lr`&CZCrZia3Y=`EDf4)IJ=KJU z6R>D=JK#m7G2P&U#ny znI8Q9yQ2i~&jepeR}tSf2b9u6cebTn#|uBRN0fUl3NH6-yLqBxgTe1hdnP_R0rY&& z?T|GQ%j|{o#shktLUPiY$6U@e1#D?nll}NM2EWXnzxmiy8kH?ZSIa)y)chv0yZ=gK z>crnY;=|F*2TEW0d!LuXP`&%;%Aqh^lne@#mn);szT24muq_tOj7zpYb+)^F|y)aJpV1_^nQ13 zmx_WUg7(SN?>4KM2^k(n^H?037j^{W4I$DLk41$Zm%TZ~q;|4ld{~XWIo=+j?Obh2 zb=EWZ5rgW%;kzYH?&U%*TL1hA%kZIIrKN>qeW_~Ieo6 zdE-G^&WG@jfAQp18NyKbncMwg>$zl^M)EIxg_4XzfuYT>BSq?rjE^n%Jw(qs+Ahc) z;C6&Kk94ONH>GxF*KL=*C4|!r#OkVl$2uq6-ofAA{L;VNry^R(K2Wq8>TH3Vid*&3 zT|0fBMl#MD7e0Ei1}GKOfAevHOr8mnmXeR8&lL%bHlsY_&=s?@a#n2)CG${uXI3uR zhp+&UZS(|#6{mR+(ysl?W~JrghL{wEgEUt%@yV+Qg1z{15v6^8KF`e!>Z3 zJ)|4yPI1HaBA=;Bl)9$J6E^5A%+K>)jAZmmqm@o^{xr{LI?8*`_>NfgNNW%NjxZH_ zm!+WHhxFC%)Qv);bnDMEe&uq+da3u#PNV*xjvLgIY_45VqPX+Bkwynr24T& z4v*aKU#$#W7WpLiU?IFC78WJ)#AP%xSc&MBF0j(3wX{#XC+qXx(r8*c_Da|`>s#N^ zII>aS8IruC&3JDx^SPdqZ14Gt`!vdvMl=+Bo14dXSg~XCIw^T*>Y^tpXy&kO?us@h zp`X|*;bySNAy^QsiXTi$(aR*w+4|CgIYLbv;e0dnyr=R(8!C4! z!nR550*Bv;`Ijq@koPK4?w^aJTVmgqb*ubZx(PFo?P=}h@YOwiVBPG=H#gnvt05IC z$8gKTnq+$YQhxav^0rG>t1XuFHlGLEInkZNxXh1O2RpQ_H%|-oq7YDuc5mP9vI`BJ zH2rBEcqgvh=Iw1p23T5!EhcQ2G4TocoLGRx81JGk{n10yYqqi9p?C8U1@yb`PbDhVRdU1HA?JMUdIZ_j}oflXV z)YUL@C)d?56m;Ub^XSe&3K}K2(VmSO+%+JbJ2c*#e%%Bu#MuYd0{4K=J6v5#GTDY&hHj+EaZ{H6yVQ9%6NiS_)* zo7$8J5n?DykB0_?1lbO>G{N$HrrS`c!RfO!l(==V=uYw?`woG z#IDl}J~nK0wj*Ximf+LuxHNWjk6o0$3^{)IRkFTpcdkF&$=GP^IsakC{dJe^{HjW` z_QUDqKFSjFNg3~hVmG?fHXNz+7B7%)2tA(l&;?w<_79?_=nSP-B~IVWE^-VWB6llB zITlq?{TmG(r%5DvvfX!A?vpQw@aabblv+k4Y!qpOE|~D`Xh~#3Cb!FSgOBe=P986P zA{#D(zLw<8L9=X1xOTez5edhJIX0nhjEBV2QiIurR#EW^Vj0rxssz=sIwYTzf-+A+ z(z*d+ZJJ*0BJ93vQtTtUr}s+H;OFv)w$f*8fr{aK6AVgx+)ogk8xc6-;1(zG<*aez znGOjdPS}yx3bo=`LWpctXKhbYoZ5I~xmL+(?4xOP2N5R^N+&qG9d!7})sk{sgRtM- zlW9WaLvNXW34O=yz1w*5lATJ%ptdx_0j^kVUr{-{Ve*q>3DFWO)P0&}qds4~4JUY) zV`TofP(|J7Za>FJ)mb{vkhWB%6S{K2i+s-)BTRK#@+d-)C>GBdT&=ZHKT$%RvFhsI z@X=fzd|9`>%3eb!^dV?$y{LY7*il})ZTnpzbG~`~E3HTwoWqVbMM7}Q>mBmLT2}n` zS*bWNEdnFg1CbZpqwkxV#_d1OXFs9M8&0C$#c&8i@w6G=aaM?+LcPq9+ykn>1S zQ|xK~`y$rp)Ryj2YLdM(gGS1R+8-a}1nWo4zs6OWWyT(4EY1#g@trpq4x={P?Pl2X z>)h6D8YB2I74vx@lHI>=roht5cXNub5*H;JLm(W=gbFm^RrWW)TiOiu5b+MtKVWH* zPgP6=zB95O7~|iLXX3zlm$4r)RTev+*obs~UpM9TZLNuAWbJ~~L|l({OEO9C@cpY~ z+qMJ$5}@7m*Ug_r-Dj_@vGM;|Wq8!m^HV2r_7FQ!Rfr)G-C1(fwn2h&h^l5T zAc(ydu{Eo;32Do!vB`xr%=fc^pfMM_a>0Gr_+7m8;n;2H+CZL$otkXpZ5oeUql|2g z7siQhxLO!P9yGlBo-|gb+Gk=Gnpv^(lK@x&Y{MZo0qP@);c<^$H2Em=LWaDj*|4oQ zGEZJJASn+T_Eon)ymVwfjT%4lvlcf?V_w9R!$fWmmDGx6_(F^G?#uQ2Z5mgfPowMX zu^0h5!!OD|&eIMpUg1PncRzS3-#cQzwylxbbdEz8Pd3Y!r{G~|H;qb_ul!Vy;O*_9 zLx5{^K9i^)Eyr89=Ux4hDaA=tmMe!g_`r4$v;lfLjy&;Ytx(lt1LZ_y#Z`!l4(FXF zNuY6|4Vp#mr;B8%qY|o+og#Z}M7J`sZH_Owv0Q^8*SNtUwYTCQH0FZGcG?I>@DEr^ z4>vIov`A|f7H}Z;D!+f;bZ?dmEc1pB+t?4Z_8+m|n|Zylb*ADYCT!5w!I-jp+#uY8 zHwY)%KrUkL+QvU`*=HuodoS=3oA zGqqZDCJ$*eKYIDmk4o_&XaY@@z~&Gu+4RJrenI$m^W<5%TsE1GVuC`YGi0LLKL!sj zwjQAk@lH;6o%h$GW#g?&=dy^yntb00wtvg`T*`Sbs>A5wHcjsi3rz`D%V^o}! z$&V(BIp__m>JLr|%=-BE!bO~LM$ftY2v8(Z>y%oNlEsmvcXk@sB8K~24PqTyK=twU zw)RCh$d%ysfyqJ+BC-lg{O(VipJGJ;s^bRz*cT}WSS2~ptoSJEEiZ5-uMqz@@VYIk z$wga{;Pq0^Q-vlHK=yESt`**V%=t9$e!X9L)v%ZS_+}n=?UlUwa{17YGV9J^Jy)d< zN={XJf(AO}0sDibd!Cm~I?)VsrB!~L)L0JlQjQ;ub2CfhXZY{5!^iFZ^hRv#wbbhG ztyQ(SYQDZfOE?_s zW--ulLc@P{XaD@viu1}C!uq&w@i#BwFWo2|RP%t@*RJy~!zaqn>QZ%WGYOwN%Vq`6 zyDEKbNEN1a(y}>RaXrS(?H$}@AqSQyRXjU!fw;P4tKu8?^^2Iwj+<`PEPR?5iF|xP zUF5~_Ze=&y=ZK)%?mbNrak9L80JgYhF7vS{!p~E};R*bHjzep+F$LyF9tLs&9A(-} zmuVS$E*!*n;g?M7d?9eOU)E%In8{<(rc}O@WgWuLziWlgAvq=RTiG>tmIZK&PSV)}nDt>oY;%0!=Vu25wpWExVU4ZHhdpmd-GT>zy%j^yw~!Eqi|y>0?_O8=IsX zJQthHSyNa?icTS?xIkRzdnEj@sMqC* zk4un$g?s_7qfXNL>Y7KA@3EPN2evrR;Vy@H8Ta--N_`8mkddsm`1sgm&iD#NaMJ6e zdCAnWUBZnBVRQQ*-%?!(|0Ho)HgXzP>v`QM9{9D^t65QuSCT`@KRBK}5HTs(_!aj$ z1$j<-uuEH-JQ3eKma3as7&O1b$P)L#@1WGYMqK)W{4Cyr4)HN# zgQ}pm9yM}SDZyCdWEjnP3Wl%xXUj`4t}I5@P5cuQ8N1K8xht$UTnd%9c$z8SOg^76 zMs;aG8{H7`1MZsSs%x$n^!Wl+-Hrf@}VL&2QHZt~=hTRhHUR-9Zx{#&(2cJ3Jii0-tEmJX+jQ(lT9>rPqMT2v)=p zHOa3(N>Yt^31SEB>Ehg-hn0!DJ{Maok0A027dgpS*!J%-ervZU8(l)+_v+MIahqGH zBCO^c=-f36J$LU<-#!#4eRi%6#JB{Q$2YYlfgw|$bW9VyAK5je5z5R>2X*Wb{;2Qb z!s^(0Yh+VahFw>bk0no_%GqEu6J|sTxg!SwlDC;*Z1YbpWBW+u+>wgOPhm8yml^eG)bEq- z6oqSnH~}sqx-IwbP6m&mO3X34K$_lL(RM)&-p}mqzQbq`j&W9baj(e12gOxiMY|=3 zJBO(EHqJ~0HaZ1;pAC+hmVIMSBE#OoP4RX5m7F`$YUf)#d9~%A`U3hy$h>LqkH15j zcN&+fOS<*r@7}HOoK8O{e?o^}^ZTQp>e#3IG_rEWjyZp3V3yK@%w4%V1IxK{UxIz& zPASCfT)#TyPqTQclMtnUDV2kJ!Cbv7Q;SwDG74TDPmyZrT0L;oBc zV(YB{(H!?SiEfAnxxHBHyki47L6tYrxk+s^17YKxF-K41^MJ9Ck2TIw1Z&^XlA90m zmHdL?;9^6+iHo*|c(#>te{t<|(qv?$i`67y$k|LIS_zK%7AS);ufqJ(FzwK@xy$Eu z+l%cXxIej1`fTz)#zM@CQS}WJ#V6is;jN3IEDdHqY@b4lZ!Du&o)ngMP8 zb=u(&SMABrRpC%PiTik3s{<8|qi&RM?S9GQ$NlrJb7p*WrS8W&CSV-&CJFq0%1SE#cTblvN#QJ;cud{|DRY z75S^n!Rb4m}vF!1_*^meC}+nS)QUTrVd9>iN+*nR|L5l7192*%z)>H_4i)KrQ_;`%F!J3G#-S zk(BV$T#4L4-HdphGFkBr-O|%O)cp;Yh~}adGo+W2<{`?fd)0i+yZaPojcBBZjj!N0 zEoK;M{v^AU_;A-uL!Xci;6OYcjn0n;Fr8V&-!jR)pVIjDij5CNkJfiC@Pz|hUzKs; zEBO+n8lTI7Np#P-$VQ$-O{(_Vn?lz=Zh7pIweIUJ4vf@g3f6@d-gy}1%h5VZY{WJn zRVfe4Jo#**+9D(!9$w(<1;LL?$CK|a2$o&!wW(|)NsJq8^nA)}w5p{-GyN2e_xj0X z8QHUflmjK(pYEi}5=7PqSr%Q5xAB1jRpLaPaB?LrJ?#l{DP^>xFl|A^N(X0c`}K-l z!uu`tlgB=J}(_@rho_VyczWXt=c0|?{pG%%e-(dFgmr^J}bnE1kdoN=$f4GS<*o#fF zBZD+<9m?xB2p;fnz~5V@hp-OtFeD1lnSVQVJ(2EkQj_|u+&_}^ZOwQHFRH` zdqtfbiuS8P+GhPZS3|#&h?Y#|4z7+|pOyC9!-up&Jy$Xkbj&ty8oTKmBE*v*RYenO zLV8O}`xF~DrkiQ%v2$MQMX_5*)x&e zBnaKNw{U7>G8XtxRZJTJrh7a81uim`jlej2(M&jzuc0Q1@O|m3)eWdCK|Tpm_L!$@q{6(QRA2yKV^x*9_<=0U8*!Jz_gSMys;|7 zReaI#&}8G^n?|J~`^}s9uC+Bl(T7Y9MFRrC6OPMf`ZNvyCUVY`blWm0d&-*2o&Kk* z`503+ZiuMfuv5UHXHstYx+-RP$Y?f1wQmI}TngAfgRvB3E3${1aQf)}(b z(ZsXLl~a+I76p%Qm@^2*I_BVGJZRmkNc&hdntlvsUSiwnkyMkOYUn5|pdVVJ(xi(t zeV(Ag6!m)!LceS4>onZlIDyER9kbP=eU>JDR~2(ADfBl#k|L+VIZezu^oUELTiOTu zol|Zjr}-=U3znCC6BJvu#wz@l0g?(uyYqb|iw@$+Pa-A-ekwV#nJ9Yo<&?s$zOeI6Ftn zd8I)rIRP5$rwMx1@R6BqvPgOqJ-eE#Dz!u7b}m=@pG~Tp!+K6$VN%hxvtyrrS=PIS z9x;AxWFY2i!_kTsq|dne3oE?r)zm?g`tHF*dHcL4Ue)M!1Wc{B4FA_ifZvUCOJ`lIYMS z)It6sPT!gtsK;vy+W9V>Z3zCteR=J<+kNV>jj*|w&?RB+;_DL6CQxlh=r<1ONfUB2 zwyMOgwA}ssihDIG$v@Hp#ft7Fzdc*8X;McRb`>GiEbYwBSg*@prpZtQBq5%Y8Xj@Y zCF(9Blwu0{odLwK5eVofaho8+asc$3J&XWI8HRTN_#dSy%WQ3hHiqlx799A?;`8sO zZcm)s=bbPn?{G9;^m1(Z--Xcx^Pa}_c|X;sazm7GjcvVU8o%=>&3zuNlJS=F1s=^0 zqj{;u(+@nM?VGJJ6h?y)p0%Zhr~hvHD5hP{So-Ni#&0X(=m2V&`8EXk>!FEv;B zd@;z&c4JeiwQkwS1Huzx<|*H|+^=z{2$a(*hS9~nr-;%@T_z*Mi)r}sQ{J`B?TI<{ z?PFBEz{iHopn_1{ehrk%{g0{B{wx7V)Mt#1i#rB+Vg=e9n`Lw=e1S8zS59Bnj6O`s zUoZ`7ay87qD?{vmJz%+GYpL_-PmT?e#GlWan=TT;Z6V8PInA=$)Z^=7EPkgJCjP{R z5f=KPtB<7ZPi>#%sBytH;2E2+)m|JWFDSZlEj1)=Yql9A<;h`ifL7>=*+o{vXxVf> zZze+fW`>j3U)3lSU}CI4>Uw!tWagKN4*6ZFzvJ4X7A^VS&#a*2+t4!xx}+L{*S&*Q z0mf6SF%1zuV#+$Er7sVj&P!9C9?0!0JZc?ZKquP0t9|sIWo%ZykRbKs8Y<^Xx-pCM zG;FS+h~TE4aOQep&BOX5=BJn8#5)JEvs7ptWAe2D5eyg9ru9%yY|F=Dp;X!>Vp6K! z4^q$+*XAHToihn7y$f26PnvAmW<26RBy!;+drJSg zr$W`_0<({;$Rblxb^8L%4#>l4h`V&j^HSMI5+XkwGuE+_flhC)!U?Uy~Y2@GWQV-A->j`ojsgT)pA8JtZ>jR!96Kz+AtOr3&+$ z-JrJ^Y3p9zj`N+H)|#A|M50VWn5p*QAvY|G zFCT5#B|eN8x6ao-Hw&Gz(rLM=>p77JO_X(zzezo9?|&z*7gn#9Wot0#xIqTR29c*4 zJSl$^73%dLy1ub020kU4WKpz8Wc;BEphoA$v81}>Q$MYtsI*Ca%Atv2fGg4fDIM0l zWDbswBKeyzL|fYhV-|o311vnHFT}7yi}v1iEqryO45Nk506OpRwayjCqhIhbh-F-Q z4?y?aEA>PnnMw*hwdYxGJ-ma5E)c^;Nmp9eWv4q&_idae+h+W-sT!{O!9UCZVX^db zchSE3ihByx41hwGADygz|5%B5{QPN1PW+`|ju%&UQ+EuVMGEtx<U{?n3)E!U^894kbg^ zIzJtwIn?BAZ+uShGn5y>vzb{Eaodq||IjzkAg|^bP}Elz&TGft4S0zi6gOdpv8;)q zcuGCYCuqzxE`Lwj_h{)~_;semVJL9nL`i9&95H6`QJ@B=?w2qEOck3?XcS4f`6&ob z^7JsO)-vRv@KB4>MZ|?s;9;D1?zv4xN$rq~KcrmRsK1@y`~W+v(|XsU@5)Z6XC?cq zdBwuQi21^=S;I6n+X^0n$jo_!geOUcKDcCEk#PNL)V$p}34L0dHD#p}hs)^DD^WdE ztWZV0p~i`(sK*mjE4e!TgS5G;Z;K8$kszf|gDLMa1%+; z7tQ-T*@XY6Vc|8E7;*feWf((;9>uC;`56;+jWhG%MV{x$vy3aW_6P|C>N3a3rg&>#O^PW9j#Om)Y@<3L zOuk>-4bN?OsWND@>4s@TdX?^ZU`DFt`S=?XDSe`{_(9dyoj{EiTd$p_Yvg)9$;h`n zr&9g@Q`&h)MYSz?xB(?dkSGW=Nf1z?L23J6G6kt{8# z0TCoMO3pboN)B=fO46yreRtlxHEY(InRotS(dq27t9I?$`<&lbXXmLD(%x@6q=rVF z^+@Zx@a>AkoJ2|WhR`}Zh&uLCvAuMqtw*3d?q%xangT_$B?Y60$EULR$Y-4&H7B_R zH;Z;T3CV`vegvEhYM)MCPPb00Hh+C$==ENU-L2Wmz2sSGx6zTa?_Q=n*#F%;-%&Ap zYkS}Ouy(|z;6<9Zw6{4GL6l=&;t&vb+Jx_XO<`kK(9v_)H`*_3+LC0rS~{T0J?IVb z9T?;($FEXQ;8 zbwkGojfi-C&ScvsA7%OW)p7or?1bk!&#^Ye{vXXSy@v5N!FG~c_H^|h>YUtLi)>xO z{AF`$Ki%(e-P(-woVHvvXO8&nmEpwSWXE-h>qt>a{_#i0qxsZsU%V5EwzpMabYd}e zUJh(A@XQRm`jq>NVn)SPtnL<_#+N(MvbRk#slr`roW?R4fN#{ko^!+&HVrzm(N*`AGzNb~C z*cW!v;0(6OV94hys+MLb2r+OFiM`2fPR!;#`dhm7qRAq+*Xeo8*I_*y`_GMYZ+4l` zAtwfJt@=AkmDyHhD2nB5GstKJbIBS~3Y$7|Vzc6^zF+H8V@vX)6vzHvFqN)YyVf9FqI%gWT575m563F}-j4-oCENU-_IweCLq$}IEvx-RRdQ*8Qo4$G#j z(J-FxobxOxUaHT{jsH0)dn6^e-s{Aa%m&0v*?JqI+GQ-RTIoN9C)9}7#(SKeqyb*P{X=*OXI3!*z?++0} z+wfl$AMRFhu9}Nq622x`6b6r09cDJ{tL}HMySOL%kSaga&^xrt)ZkgbEyL-P``)bp z@=LRMFdAP|o_A7k*BZrla&gx7iSp4Znv|FqCv6<{$9`4X58q@B_}cBmc6XGv zShwN+V^703fFHZXV3pfHOQ(FL zQli^fBHi-4-Do=6aAc&eOTEIQf0VFO>z?Q;Sn^DM;f`80qHA2;;z~&S^AO#lIq_9E ziGx6L(`?!L8m3NLs912a__8P8@i;c4_0!iH?|U1Lv*s<0b&BFBS%WsV%@0hHEjoC=uA-T>J2thI`+G|Iy=%$vAu=Z~6Flek@!K&NjNo{w)l*!h zOm+Z6%^;d;>+s-OM{Js8&3mTd#i)$pHEBjBCR_#|hxo#c#v}DSdr1=HDfv}J{qpqN z@qO70I;Li+5orZvu5NX*8&aGX%C;r$sxl=}-Ima)q5aKN*f3(mI(e@r0yc&GL$-X` zURgv7Y>od^n$mPC@~GwVd2D%7tj;m#$E$mbWzFGrJ}!240`Nq=LTqd-kFs)!SjL*r z;0_c0h(c^nn3naf8Of|13$KSB?pKMwluT`h`o`RNbChfjUn_>hqMcISX!+-;)lh$^ z(OY-_jO~$VC77f47ket?Aa81{#RTEv7 zHzv6yNIE?-h+7JV(91XchRmMhdvvLXT$M8WkednxLFU$)8~PaM151ncmeOfMnWC!K zE9MU#rqbGTNR;GYZ@nYYjBxaqd3%`Vvq$Uha z#~wdgch@uD;wH-QN6`iKIUar>qjPb~>%7 za0@$Vv?TvziSPS25@qLACl&a`QzB98uWs8iaCFRFH6+VdT=x21c;~i?Zy{DUB#NJ1 zmfcUaRLiO`oHr*I|ShF@$mo$|_$|)PO0DtF5)jhEHnih#){Mm(( z?X#Fz3;$0QeBrqP_MdCd&hw2A6{uu#;WMhy+{--~4K(gw=y5Y8bSKeZ3mcyd{|Jk- z3)6}b=(Mn!uR}3J3|;G>ga37UH+^lzP#F)--#>oLUA@O7kr7Focv78}@NtOmit&Nt z)g;a_xfbF`wDl%$NFcu+UEdo#@5V;S1i-0$)G zXgj|f^SoK=FP6ynNcxz*Gl~6bSB5UT#K+RH>4fA0x8xTUVSG_WN1Cs=kD6TXY>nEQ z=Q~vp)$z{YqCio>mU+$qNe!B{Q&L4W&u}ujnDj_4DgrHkjn~>Sh7LA-tyu%knMHN1 z_PpE_DyGDzC!!-6Ri*XF73{G>l8WOIdz=jOS(T1|`a3Z=>QT>4sH)nQFY4WtDVm9; zGw$lDvv1TS>De8&9KdGLKAw^PRh;9*K3&aS{Q05|i>`Uj0@1C$ICB zgwx$f|8Qo+Z3NThTqb;cM#DFQ?wT53kzG4}|Cj*j zGukLei_A}M*OLp$-AN_#bFj87wR-9s5+j_1e3!CU&gS>X;#uc9U*XW|U(mCft0D{? zPW`W3%Fx?q`TCQOxjGlxju~WOYer%)zxJiT8bW{2D$}S|JCJB4m8!@=!FTkT#uDz7AD=ImATdjBeo>P0ZNR) zV1lTv4_o+=+E_dx-quAct>FIpAp9wea^U&_x~|aLh+aJqg6;2Y)@Q0kSh7d}H&ZR* z*i>Pa_Y-kF4UG$z0#`c>L1vZ9o#o(?=Dn6c;EJwL@EWy^CMa!XdbDyZ?6NuSQ(b*a z*VvKt_v>D*@U|toOMYd_`Q0b-A{3$pPLRICxbtH*8U)$IH!rSVQd2t&IE{Qv7ouj7 z4%gX0eSfjAZUtm^AK{}krNWF4r84qjJHYWknP zKwe5s|4tRyPO}fyt~8Dd%NBr&r?&| zk2*g6S9^Q4mI@y85c;_Kx35i0g3CSdP+i17>HhOenC2)V%R~;1p1kkf+f{ggDLplPB;TZlml?c`}cn&B?0{cPb#RFx?ws4NJqw3*;t%+MZ~I-839r)^yT3I3}7m93=w{^u&@-`t_dwexzAtY zJnzftx7~8Xa{Znx2hblViie)UCIAuE|Fr<0&D{1)%xn*SfvL7;pr^CtrtBH-7!#LA(t%gR<~IWgp~m$uGP>;kL+gXl&ynK zN$YLgF>vaOP>9t?Is?Ui+(5TnI4k>77l;TIKU<|bvQ2Y$Nc?}ob>mY8x-1&dri|yDl1#%=j4PfQ)6wR z#0ulY!&x-fx)4Avm=xXTc*HF6SCPUJjgMEWO_2pFI={ujSd$rl5TL4wFQdD0m35*M48PoClDzyi?;E3w7e?{PR~V9JaK{y zZmiu$uL4|@7f`DEyFWZdrT#7yP<(R6E=nE9B`ANe6B!CP%0Lexx{U&;>#ANkuppt|F&jQv-CuC$;CcM{a5$IIgOS$y~_0LFUEVt>)K=*II z&DF8l%mMMjz9TgfhRhU<0t8dyHvVw-=I++A(l{+A(q;w24Y&lw{PT@mi+VVd8w*!q zCeiQJNl{=KDR=oXcSEY!5o4&x&oJkAShaXxH)bqo9oZq_mHY%Nmk_ zi$y<kiZlQa%C8E$0cnJA$|c~Q1uH*Nr3KC$+eDGH-X}TTdNb%Fe9ufxlA5h zM@A;h$oF8xRhs&BhvExV8bz#>gwJ@cSR&CPS^04p{=w{(HGnd)N=Zp6zu$j;ABz4G zf!ERi-5rK%00ZlfmfU&nHP^|j&#blvcSTv?lZ~M1zA{?rk>>^BE)1mPEP1)PmLvGN z%!r0_K08=In=`x+zafU1>%913YuK^xk!F&d-4|xb6DL&m07cXQxGemyQ>RZ`wIGE( z5gb}0h|(hc;C5K}(9jSOhP|r(*EQ!k=q?dtRst`u-PhzW^$Y*FbL|N{Ocr$AXVVBu(Di42 zzQssE$0<~Jz1n=4udx6e6N~cx1-usi@Jw5_Ilw>Zw6?Xe0B5X$;lyR^LGg#CM5)^i z0HZV3(bZ+?>FH?%v{VFi@u?3fUs6%g!h14+LKWCZ(iD-VZ=8QCY`+9qB|J8$jhWKm{N3(Q=nG$8*tgFgnjdFyn&2K-hUMTl9vin?gFJ1|c0UYTa)DkA;5GCBPT-*ooYOfcyoF0O3waO;+?>uLdLWt9OXo@|NGKw0K12GJonZqFA|9@yXVkAo zg2KR!%a_RyUHqO9pOm!FbLbbK32MhYCn9%Os*b`OdI^FMf{r#cG_?Nn>t_vZZ54>r zk}l&)(LVP8RRJSU@|uAG0(0YV#v?^_-rE%qIUNLLNCl(k0b8H|tWAHY@q|=udgr&F zN7w^)o$bnK#S}LuVh<`oo279o7I12Shz~fD;Frq6TcbyRsFaiZ^SN>t?G>T^c zwn-BLHTv>J3w6QGO%mxe7|GVKxJo$hcMhRAL4gx33^!m|)c_&_k!Llj%y<70K&F(v z{(&PyDs@2IT{m@^tPMcUbocJv%ylASuS>N%Obm_4DyDaGbD@tq`rM8X(s~%oY>@0W zx3@RlD<2D`Ln~MV>P-H@3{9Ey*b$W1a_K2{f(Zv(F!SeF9MKTlwSMiEy z7^<)g@Z#4(1JDd1K46xIr$RZLYoVe5aVM@D8bF2e&O*pSImo&&Tn1A7>`zh<3gQH}Y}u2sFbFj6j#SsDxgbZ3dn#Q3zhfPmWl6j&LM zp)f0>^O9rM64qavV-V~fQdSe93q4Fym^MIiDw>x$g)J>DWmj{7>ts40;Kq{*p|iC{0zBMY&TCt$YwHq;_~nQWR`T6N%} zSjg_wS~wyvf7n^b(-%XCgE1H!1dS{Igkr(+`xpX{Iyn9xYxMu~qW<6d!v1-6it?22 SVxlD|I5gF+s1{zb4*U;N>cpo2 literal 158475 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%0DavzOl-vBSq%J! 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%0Af+5+vw7!V*X~ZXk7n}wZ@?#} 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 PM!}||VW3{9Y8&=nluSd8 diff --git a/examples/your_example.py b/examples/your_example.py index ca31a05..ea2c3fa 100644 --- a/examples/your_example.py +++ b/examples/your_example.py @@ -3,9 +3,9 @@ import simpy import matplotlib.pyplot as plt -from app.config.constants import LatencyKey -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer def print_latency_stats(res: ResultsAnalyzer) -> None: """Print latency statistics returned by the analyzer.""" diff --git a/poetry.lock b/poetry.lock index f698f6c..9147300 100644 --- a/poetry.lock +++ b/poetry.lock @@ -115,99 +115,99 @@ test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist" [[package]] name = "coverage" -version = "7.10.1" +version = "7.10.3" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" files = [ - {file = "coverage-7.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1c86eb388bbd609d15560e7cc0eb936c102b6f43f31cf3e58b4fd9afe28e1372"}, - {file = "coverage-7.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b4ba0f488c1bdb6bd9ba81da50715a372119785458831c73428a8566253b86b"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:083442ecf97d434f0cb3b3e3676584443182653da08b42e965326ba12d6b5f2a"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:c1a40c486041006b135759f59189385da7c66d239bad897c994e18fd1d0c128f"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3beb76e20b28046989300c4ea81bf690df84ee98ade4dc0bbbf774a28eb98440"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:bc265a7945e8d08da28999ad02b544963f813a00f3ed0a7a0ce4165fd77629f8"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:47c91f32ba4ac46f1e224a7ebf3f98b4b24335bad16137737fe71a5961a0665c"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1a108dd78ed185020f66f131c60078f3fae3f61646c28c8bb4edd3fa121fc7fc"}, - {file = "coverage-7.10.1-cp310-cp310-win32.whl", hash = "sha256:7092cc82382e634075cc0255b0b69cb7cada7c1f249070ace6a95cb0f13548ef"}, - {file = "coverage-7.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:ac0c5bba938879c2fc0bc6c1b47311b5ad1212a9dcb8b40fe2c8110239b7faed"}, - {file = "coverage-7.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b45e2f9d5b0b5c1977cb4feb5f594be60eb121106f8900348e29331f553a726f"}, - {file = "coverage-7.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a7a4d74cb0f5e3334f9aa26af7016ddb94fb4bfa11b4a573d8e98ecba8c34f1"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:d4b0aab55ad60ead26159ff12b538c85fbab731a5e3411c642b46c3525863437"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:dcc93488c9ebd229be6ee1f0d9aad90da97b33ad7e2912f5495804d78a3cd6b7"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aa309df995d020f3438407081b51ff527171cca6772b33cf8f85344b8b4b8770"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cfb8b9d8855c8608f9747602a48ab525b1d320ecf0113994f6df23160af68262"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:320d86da829b012982b414c7cdda65f5d358d63f764e0e4e54b33097646f39a3"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dc60ddd483c556590da1d9482a4518292eec36dd0e1e8496966759a1f282bcd0"}, - {file = "coverage-7.10.1-cp311-cp311-win32.whl", hash = "sha256:4fcfe294f95b44e4754da5b58be750396f2b1caca8f9a0e78588e3ef85f8b8be"}, - {file = "coverage-7.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:efa23166da3fe2915f8ab452dde40319ac84dc357f635737174a08dbd912980c"}, - {file = "coverage-7.10.1-cp311-cp311-win_arm64.whl", hash = "sha256:d12b15a8c3759e2bb580ffa423ae54be4f184cf23beffcbd641f4fe6e1584293"}, - {file = "coverage-7.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6b7dc7f0a75a7eaa4584e5843c873c561b12602439d2351ee28c7478186c4da4"}, - {file = "coverage-7.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:607f82389f0ecafc565813aa201a5cade04f897603750028dd660fb01797265e"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:f7da31a1ba31f1c1d4d5044b7c5813878adae1f3af8f4052d679cc493c7328f4"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:51fe93f3fe4f5d8483d51072fddc65e717a175490804e1942c975a68e04bf97a"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3e59d00830da411a1feef6ac828b90bbf74c9b6a8e87b8ca37964925bba76dbe"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:924563481c27941229cb4e16eefacc35da28563e80791b3ddc5597b062a5c386"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:ca79146ee421b259f8131f153102220b84d1a5e6fb9c8aed13b3badfd1796de6"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2b225a06d227f23f386fdc0eab471506d9e644be699424814acc7d114595495f"}, - {file = "coverage-7.10.1-cp312-cp312-win32.whl", hash = "sha256:5ba9a8770effec5baaaab1567be916c87d8eea0c9ad11253722d86874d885eca"}, - {file = "coverage-7.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:9eb245a8d8dd0ad73b4062135a251ec55086fbc2c42e0eb9725a9b553fba18a3"}, - {file = "coverage-7.10.1-cp312-cp312-win_arm64.whl", hash = "sha256:7718060dd4434cc719803a5e526838a5d66e4efa5dc46d2b25c21965a9c6fcc4"}, - {file = "coverage-7.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ebb08d0867c5a25dffa4823377292a0ffd7aaafb218b5d4e2e106378b1061e39"}, - {file = "coverage-7.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f32a95a83c2e17422f67af922a89422cd24c6fa94041f083dd0bb4f6057d0bc7"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:c4c746d11c8aba4b9f58ca8bfc6fbfd0da4efe7960ae5540d1a1b13655ee8892"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7f39edd52c23e5c7ed94e0e4bf088928029edf86ef10b95413e5ea670c5e92d7"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ab6e19b684981d0cd968906e293d5628e89faacb27977c92f3600b201926b994"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5121d8cf0eacb16133501455d216bb5f99899ae2f52d394fe45d59229e6611d0"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:df1c742ca6f46a6f6cbcaef9ac694dc2cb1260d30a6a2f5c68c5f5bcfee1cfd7"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:40f9a38676f9c073bf4b9194707aa1eb97dca0e22cc3766d83879d72500132c7"}, - {file = "coverage-7.10.1-cp313-cp313-win32.whl", hash = "sha256:2348631f049e884839553b9974f0821d39241c6ffb01a418efce434f7eba0fe7"}, - {file = "coverage-7.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:4072b31361b0d6d23f750c524f694e1a417c1220a30d3ef02741eed28520c48e"}, - {file = "coverage-7.10.1-cp313-cp313-win_arm64.whl", hash = "sha256:3e31dfb8271937cab9425f19259b1b1d1f556790e98eb266009e7a61d337b6d4"}, - {file = "coverage-7.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1c4f679c6b573a5257af6012f167a45be4c749c9925fd44d5178fd641ad8bf72"}, - {file = "coverage-7.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:871ebe8143da284bd77b84a9136200bd638be253618765d21a1fce71006d94af"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:998c4751dabf7d29b30594af416e4bf5091f11f92a8d88eb1512c7ba136d1ed7"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:780f750a25e7749d0af6b3631759c2c14f45de209f3faaa2398312d1c7a22759"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:590bdba9445df4763bdbebc928d8182f094c1f3947a8dc0fc82ef014dbdd8324"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b2df80cb6a2af86d300e70acb82e9b79dab2c1e6971e44b78dbfc1a1e736b53"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d6a558c2725bfb6337bf57c1cd366c13798bfd3bfc9e3dd1f4a6f6fc95a4605f"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e6150d167f32f2a54690e572e0a4c90296fb000a18e9b26ab81a6489e24e78dd"}, - {file = "coverage-7.10.1-cp313-cp313t-win32.whl", hash = "sha256:d946a0c067aa88be4a593aad1236493313bafaa27e2a2080bfe88db827972f3c"}, - {file = "coverage-7.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:e37c72eaccdd5ed1130c67a92ad38f5b2af66eeff7b0abe29534225db2ef7b18"}, - {file = "coverage-7.10.1-cp313-cp313t-win_arm64.whl", hash = "sha256:89ec0ffc215c590c732918c95cd02b55c7d0f569d76b90bb1a5e78aa340618e4"}, - {file = "coverage-7.10.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:166d89c57e877e93d8827dac32cedae6b0277ca684c6511497311249f35a280c"}, - {file = "coverage-7.10.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bed4a2341b33cd1a7d9ffc47df4a78ee61d3416d43b4adc9e18b7d266650b83e"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ddca1e4f5f4c67980533df01430184c19b5359900e080248bbf4ed6789584d8b"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:37b69226001d8b7de7126cad7366b0778d36777e4d788c66991455ba817c5b41"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b2f22102197bcb1722691296f9e589f02b616f874e54a209284dd7b9294b0b7f"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1e0c768b0f9ac5839dac5cf88992a4bb459e488ee8a1f8489af4cb33b1af00f1"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:991196702d5e0b120a8fef2664e1b9c333a81d36d5f6bcf6b225c0cf8b0451a2"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae8e59e5f4fd85d6ad34c2bb9d74037b5b11be072b8b7e9986beb11f957573d4"}, - {file = "coverage-7.10.1-cp314-cp314-win32.whl", hash = "sha256:042125c89cf74a074984002e165d61fe0e31c7bd40ebb4bbebf07939b5924613"}, - {file = "coverage-7.10.1-cp314-cp314-win_amd64.whl", hash = "sha256:a22c3bfe09f7a530e2c94c87ff7af867259c91bef87ed2089cd69b783af7b84e"}, - {file = "coverage-7.10.1-cp314-cp314-win_arm64.whl", hash = "sha256:ee6be07af68d9c4fca4027c70cea0c31a0f1bc9cb464ff3c84a1f916bf82e652"}, - {file = "coverage-7.10.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d24fb3c0c8ff0d517c5ca5de7cf3994a4cd559cde0315201511dbfa7ab528894"}, - {file = "coverage-7.10.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1217a54cfd79be20512a67ca81c7da3f2163f51bbfd188aab91054df012154f5"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:51f30da7a52c009667e02f125737229d7d8044ad84b79db454308033a7808ab2"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ed3718c757c82d920f1c94089066225ca2ad7f00bb904cb72b1c39ebdd906ccb"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cc452481e124a819ced0c25412ea2e144269ef2f2534b862d9f6a9dae4bda17b"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:9d6f494c307e5cb9b1e052ec1a471060f1dea092c8116e642e7a23e79d9388ea"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:fc0e46d86905ddd16b85991f1f4919028092b4e511689bbdaff0876bd8aab3dd"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:80b9ccd82e30038b61fc9a692a8dc4801504689651b281ed9109f10cc9fe8b4d"}, - {file = "coverage-7.10.1-cp314-cp314t-win32.whl", hash = "sha256:e58991a2b213417285ec866d3cd32db17a6a88061a985dbb7e8e8f13af429c47"}, - {file = "coverage-7.10.1-cp314-cp314t-win_amd64.whl", hash = "sha256:e88dd71e4ecbc49d9d57d064117462c43f40a21a1383507811cf834a4a620651"}, - {file = "coverage-7.10.1-cp314-cp314t-win_arm64.whl", hash = "sha256:1aadfb06a30c62c2eb82322171fe1f7c288c80ca4156d46af0ca039052814bab"}, - {file = "coverage-7.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:57b6e8789cbefdef0667e4a94f8ffa40f9402cee5fc3b8e4274c894737890145"}, - {file = "coverage-7.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:85b22a9cce00cb03156334da67eb86e29f22b5e93876d0dd6a98646bb8a74e53"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:97b6983a2f9c76d345ca395e843a049390b39652984e4a3b45b2442fa733992d"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ddf2a63b91399a1c2f88f40bc1705d5a7777e31c7e9eb27c602280f477b582ba"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:47ab6dbbc31a14c5486420c2c1077fcae692097f673cf5be9ddbec8cdaa4cdbc"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:21eb7d8b45d3700e7c2936a736f732794c47615a20f739f4133d5230a6512a88"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:283005bb4d98ae33e45f2861cd2cde6a21878661c9ad49697f6951b358a0379b"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:fefe31d61d02a8b2c419700b1fade9784a43d726de26495f243b663cd9fe1513"}, - {file = "coverage-7.10.1-cp39-cp39-win32.whl", hash = "sha256:e8ab8e4c7ec7f8a55ac05b5b715a051d74eac62511c6d96d5bb79aaafa3b04cf"}, - {file = "coverage-7.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:c36baa0ecde742784aa76c2b816466d3ea888d5297fda0edbac1bf48fa94688a"}, - {file = "coverage-7.10.1-py3-none-any.whl", hash = "sha256:fa2a258aa6bf188eb9a8948f7102a83da7c430a0dce918dbd8b60ef8fcb772d7"}, - {file = "coverage-7.10.1.tar.gz", hash = "sha256:ae2b4856f29ddfe827106794f3589949a57da6f0d38ab01e24ec35107979ba57"}, + {file = "coverage-7.10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:53808194afdf948c462215e9403cca27a81cf150d2f9b386aee4dab614ae2ffe"}, + {file = "coverage-7.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f4d1b837d1abf72187a61645dbf799e0d7705aa9232924946e1f57eb09a3bf00"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:2a90dd4505d3cc68b847ab10c5ee81822a968b5191664e8a0801778fa60459fa"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:d52989685ff5bf909c430e6d7f6550937bc6d6f3e6ecb303c97a86100efd4596"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdb558a1d97345bde3a9f4d3e8d11c9e5611f748646e9bb61d7d612a796671b5"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c9e6331a8f09cb1fc8bda032752af03c366870b48cce908875ba2620d20d0ad4"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:992f48bf35b720e174e7fae916d943599f1a66501a2710d06c5f8104e0756ee1"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c5595fc4ad6a39312c786ec3326d7322d0cf10e3ac6a6df70809910026d67cfb"}, + {file = "coverage-7.10.3-cp310-cp310-win32.whl", hash = "sha256:9e92fa1f2bd5a57df9d00cf9ce1eb4ef6fccca4ceabec1c984837de55329db34"}, + {file = "coverage-7.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:b96524d6e4a3ce6a75c56bb15dbd08023b0ae2289c254e15b9fbdddf0c577416"}, + {file = "coverage-7.10.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f2ff2e2afdf0d51b9b8301e542d9c21a8d084fd23d4c8ea2b3a1b3c96f5f7397"}, + {file = "coverage-7.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:18ecc5d1b9a8c570f6c9b808fa9a2b16836b3dd5414a6d467ae942208b095f85"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1af4461b25fe92889590d438905e1fc79a95680ec2a1ff69a591bb3fdb6c7157"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:3966bc9a76b09a40dc6063c8b10375e827ea5dfcaffae402dd65953bef4cba54"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:205a95b87ef4eb303b7bc5118b47b6b6604a644bcbdb33c336a41cfc0a08c06a"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b3801b79fb2ad61e3c7e2554bab754fc5f105626056980a2b9cf3aef4f13f84"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:b0dc69c60224cda33d384572da945759756e3f06b9cdac27f302f53961e63160"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a83d4f134bab2c7ff758e6bb1541dd72b54ba295ced6a63d93efc2e20cb9b124"}, + {file = "coverage-7.10.3-cp311-cp311-win32.whl", hash = "sha256:54e409dd64e5302b2a8fdf44ec1c26f47abd1f45a2dcf67bd161873ee05a59b8"}, + {file = "coverage-7.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:30c601610a9b23807c5e9e2e442054b795953ab85d525c3de1b1b27cebeb2117"}, + {file = "coverage-7.10.3-cp311-cp311-win_arm64.whl", hash = "sha256:dabe662312a97958e932dee056f2659051d822552c0b866823e8ba1c2fe64770"}, + {file = "coverage-7.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:449c1e2d3a84d18bd204258a897a87bc57380072eb2aded6a5b5226046207b42"}, + {file = "coverage-7.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d4f9ce50b9261ad196dc2b2e9f1fbbee21651b54c3097a25ad783679fd18294"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4dd4564207b160d0d45c36a10bc0a3d12563028e8b48cd6459ea322302a156d7"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5ca3c9530ee072b7cb6a6ea7b640bcdff0ad3b334ae9687e521e59f79b1d0437"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b6df359e59fa243c9925ae6507e27f29c46698359f45e568fd51b9315dbbe587"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a181e4c2c896c2ff64c6312db3bda38e9ade2e1aa67f86a5628ae85873786cea"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a374d4e923814e8b72b205ef6b3d3a647bb50e66f3558582eda074c976923613"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:daeefff05993e5e8c6e7499a8508e7bd94502b6b9a9159c84fd1fe6bce3151cb"}, + {file = "coverage-7.10.3-cp312-cp312-win32.whl", hash = "sha256:187ecdcac21f9636d570e419773df7bd2fda2e7fa040f812e7f95d0bddf5f79a"}, + {file = "coverage-7.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:4a50ad2524ee7e4c2a95e60d2b0b83283bdfc745fe82359d567e4f15d3823eb5"}, + {file = "coverage-7.10.3-cp312-cp312-win_arm64.whl", hash = "sha256:c112f04e075d3495fa3ed2200f71317da99608cbb2e9345bdb6de8819fc30571"}, + {file = "coverage-7.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b99e87304ffe0eb97c5308447328a584258951853807afdc58b16143a530518a"}, + {file = "coverage-7.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4af09c7574d09afbc1ea7da9dcea23665c01f3bc1b1feb061dac135f98ffc53a"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:488e9b50dc5d2aa9521053cfa706209e5acf5289e81edc28291a24f4e4488f46"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:913ceddb4289cbba3a310704a424e3fb7aac2bc0c3a23ea473193cb290cf17d4"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b1f91cbc78c7112ab84ed2a8defbccd90f888fcae40a97ddd6466b0bec6ae8a"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0bac054d45af7cd938834b43a9878b36ea92781bcb009eab040a5b09e9927e3"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fe72cbdd12d9e0f4aca873fa6d755e103888a7f9085e4a62d282d9d5b9f7928c"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c1e2e927ab3eadd7c244023927d646e4c15c65bb2ac7ae3c3e9537c013700d21"}, + {file = "coverage-7.10.3-cp313-cp313-win32.whl", hash = "sha256:24d0c13de473b04920ddd6e5da3c08831b1170b8f3b17461d7429b61cad59ae0"}, + {file = "coverage-7.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:3564aae76bce4b96e2345cf53b4c87e938c4985424a9be6a66ee902626edec4c"}, + {file = "coverage-7.10.3-cp313-cp313-win_arm64.whl", hash = "sha256:f35580f19f297455f44afcd773c9c7a058e52eb6eb170aa31222e635f2e38b87"}, + {file = "coverage-7.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07009152f497a0464ffdf2634586787aea0e69ddd023eafb23fc38267db94b84"}, + {file = "coverage-7.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:8dd2ba5f0c7e7e8cc418be2f0c14c4d9e3f08b8fb8e4c0f83c2fe87d03eb655e"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1ae22b97003c74186e034a93e4f946c75fad8c0ce8d92fbbc168b5e15ee2841f"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:eb329f1046888a36b1dc35504d3029e1dd5afe2196d94315d18c45ee380f67d5"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ce01048199a91f07f96ca3074b0c14021f4fe7ffd29a3e6a188ac60a5c3a4af8"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:08b989a06eb9dfacf96d42b7fb4c9a22bafa370d245dc22fa839f2168c6f9fa1"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:669fe0d4e69c575c52148511029b722ba8d26e8a3129840c2ce0522e1452b256"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3262d19092771c83f3413831d9904b1ccc5f98da5de4ffa4ad67f5b20c7aaf7b"}, + {file = "coverage-7.10.3-cp313-cp313t-win32.whl", hash = "sha256:cc0ee4b2ccd42cab7ee6be46d8a67d230cb33a0a7cd47a58b587a7063b6c6b0e"}, + {file = "coverage-7.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:03db599f213341e2960430984e04cf35fb179724e052a3ee627a068653cf4a7c"}, + {file = "coverage-7.10.3-cp313-cp313t-win_arm64.whl", hash = "sha256:46eae7893ba65f53c71284585a262f083ef71594f05ec5c85baf79c402369098"}, + {file = "coverage-7.10.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:bce8b8180912914032785850d8f3aacb25ec1810f5f54afc4a8b114e7a9b55de"}, + {file = "coverage-7.10.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:07790b4b37d56608536f7c1079bd1aa511567ac2966d33d5cec9cf520c50a7c8"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:e79367ef2cd9166acedcbf136a458dfe9a4a2dd4d1ee95738fb2ee581c56f667"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:419d2a0f769f26cb1d05e9ccbc5eab4cb5d70231604d47150867c07822acbdf4"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee221cf244757cdc2ac882e3062ab414b8464ad9c884c21e878517ea64b3fa26"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c2079d8cdd6f7373d628e14b3357f24d1db02c9dc22e6a007418ca7a2be0435a"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:bd8df1f83c0703fa3ca781b02d36f9ec67ad9cb725b18d486405924f5e4270bd"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6b4e25e0fa335c8aa26e42a52053f3786a61cc7622b4d54ae2dad994aa754fec"}, + {file = "coverage-7.10.3-cp314-cp314-win32.whl", hash = "sha256:d7c3d02c2866deb217dce664c71787f4b25420ea3eaf87056f44fb364a3528f5"}, + {file = "coverage-7.10.3-cp314-cp314-win_amd64.whl", hash = "sha256:9c8916d44d9e0fe6cdb2227dc6b0edd8bc6c8ef13438bbbf69af7482d9bb9833"}, + {file = "coverage-7.10.3-cp314-cp314-win_arm64.whl", hash = "sha256:1007d6a2b3cf197c57105cc1ba390d9ff7f0bee215ced4dea530181e49c65ab4"}, + {file = "coverage-7.10.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:ebc8791d346410d096818788877d675ca55c91db87d60e8f477bd41c6970ffc6"}, + {file = "coverage-7.10.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1f4e4d8e75f6fd3c6940ebeed29e3d9d632e1f18f6fb65d33086d99d4d073241"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:24581ed69f132b6225a31b0228ae4885731cddc966f8a33fe5987288bdbbbd5e"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ec151569ddfccbf71bac8c422dce15e176167385a00cd86e887f9a80035ce8a5"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2ae8e7c56290b908ee817200c0b65929b8050bc28530b131fe7c6dfee3e7d86b"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5fb742309766d7e48e9eb4dc34bc95a424707bc6140c0e7d9726e794f11b92a0"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:c65e2a5b32fbe1e499f1036efa6eb9cb4ea2bf6f7168d0e7a5852f3024f471b1"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d48d2cb07d50f12f4f18d2bb75d9d19e3506c26d96fffabf56d22936e5ed8f7c"}, + {file = "coverage-7.10.3-cp314-cp314t-win32.whl", hash = "sha256:dec0d9bc15ee305e09fe2cd1911d3f0371262d3cfdae05d79515d8cb712b4869"}, + {file = "coverage-7.10.3-cp314-cp314t-win_amd64.whl", hash = "sha256:424ea93a323aa0f7f01174308ea78bde885c3089ec1bef7143a6d93c3e24ef64"}, + {file = "coverage-7.10.3-cp314-cp314t-win_arm64.whl", hash = "sha256:f5983c132a62d93d71c9ef896a0b9bf6e6828d8d2ea32611f58684fba60bba35"}, + {file = "coverage-7.10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:da749daa7e141985487e1ff90a68315b0845930ed53dc397f4ae8f8bab25b551"}, + {file = "coverage-7.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3126fb6a47d287f461d9b1aa5d1a8c97034d1dffb4f452f2cf211289dae74ef"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3da794db13cc27ca40e1ec8127945b97fab78ba548040047d54e7bfa6d442dca"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4e27bebbd184ef8d1c1e092b74a2b7109dcbe2618dce6e96b1776d53b14b3fe8"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8fd4ee2580b9fefbd301b4f8f85b62ac90d1e848bea54f89a5748cf132782118"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6999920bdd73259ce11cabfc1307484f071ecc6abdb2ca58d98facbcefc70f16"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c3623f929db885fab100cb88220a5b193321ed37e03af719efdbaf5d10b6e227"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:25b902c5e15dea056485d782e420bb84621cc08ee75d5131ecb3dbef8bd1365f"}, + {file = "coverage-7.10.3-cp39-cp39-win32.whl", hash = "sha256:f930a4d92b004b643183451fe9c8fe398ccf866ed37d172ebaccfd443a097f61"}, + {file = "coverage-7.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:08e638a93c8acba13c7842953f92a33d52d73e410329acd472280d2a21a6c0e1"}, + {file = "coverage-7.10.3-py3-none-any.whl", hash = "sha256:416a8d74dc0adfd33944ba2f405897bab87b7e9e84a391e09d241956bd953ce1"}, + {file = "coverage-7.10.3.tar.gz", hash = "sha256:812ba9250532e4a823b070b0420a36499859542335af3dca8f47fc6aa1a05619"}, ] [package.extras] @@ -354,134 +354,176 @@ files = [ [[package]] name = "kiwisolver" -version = "1.4.8" +version = "1.4.9" description = "A fast implementation of the Cassowary constraint solver" optional = false python-versions = ">=3.10" files = [ - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"}, - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"}, - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e"}, - {file = "kiwisolver-1.4.8-cp310-cp310-win_amd64.whl", hash = "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751"}, - {file = "kiwisolver-1.4.8-cp310-cp310-win_arm64.whl", hash = "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67"}, - {file = "kiwisolver-1.4.8-cp311-cp311-win_amd64.whl", hash = "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34"}, - {file = "kiwisolver-1.4.8-cp311-cp311-win_arm64.whl", hash = "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8"}, - {file = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl", hash = "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50"}, - {file = "kiwisolver-1.4.8-cp312-cp312-win_arm64.whl", hash = "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb"}, - {file = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl", hash = "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2"}, - {file = "kiwisolver-1.4.8-cp313-cp313-win_arm64.whl", hash = "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b"}, - {file = "kiwisolver-1.4.8.tar.gz", hash = "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:b4b4d74bda2b8ebf4da5bd42af11d02d04428b2c32846e4c2c93219df8a7987b"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:fb3b8132019ea572f4611d770991000d7f58127560c4889729248eb5852a102f"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:84fd60810829c27ae375114cd379da1fa65e6918e1da405f356a775d49a62bcf"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b78efa4c6e804ecdf727e580dbb9cba85624d2e1c6b5cb059c66290063bd99a9"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4efec7bcf21671db6a3294ff301d2fc861c31faa3c8740d1a94689234d1b415"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:90f47e70293fc3688b71271100a1a5453aa9944a81d27ff779c108372cf5567b"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:8fdca1def57a2e88ef339de1737a1449d6dbf5fab184c54a1fca01d541317154"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9cf554f21be770f5111a1690d42313e140355e687e05cf82cb23d0a721a64a48"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fc1795ac5cd0510207482c3d1d3ed781143383b8cfd36f5c645f3897ce066220"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:ccd09f20ccdbbd341b21a67ab50a119b64a403b09288c27481575105283c1586"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:540c7c72324d864406a009d72f5d6856f49693db95d1fbb46cf86febef873634"}, + {file = "kiwisolver-1.4.9-cp310-cp310-win_amd64.whl", hash = "sha256:ede8c6d533bc6601a47ad4046080d36b8fc99f81e6f1c17b0ac3c2dc91ac7611"}, + {file = "kiwisolver-1.4.9-cp310-cp310-win_arm64.whl", hash = "sha256:7b4da0d01ac866a57dd61ac258c5607b4cd677f63abaec7b148354d2b2cdd536"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:eb14a5da6dc7642b0f3a18f13654847cd8b7a2550e2645a5bda677862b03ba16"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:39a219e1c81ae3b103643d2aedb90f1ef22650deb266ff12a19e7773f3e5f089"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2405a7d98604b87f3fc28b1716783534b1b4b8510d8142adca34ee0bc3c87543"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:dc1ae486f9abcef254b5618dfb4113dd49f94c68e3e027d03cf0143f3f772b61"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a1f570ce4d62d718dce3f179ee78dac3b545ac16c0c04bb363b7607a949c0d1"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb27e7b78d716c591e88e0a09a2139c6577865d7f2e152488c2cc6257f460872"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:15163165efc2f627eb9687ea5f3a28137217d217ac4024893d753f46bce9de26"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bdee92c56a71d2b24c33a7d4c2856bd6419d017e08caa7802d2963870e315028"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:412f287c55a6f54b0650bd9b6dce5aceddb95864a1a90c87af16979d37c89771"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:2c93f00dcba2eea70af2be5f11a830a742fe6b579a1d4e00f47760ef13be247a"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f117e1a089d9411663a3207ba874f31be9ac8eaa5b533787024dc07aeb74f464"}, + {file = "kiwisolver-1.4.9-cp311-cp311-win_amd64.whl", hash = "sha256:be6a04e6c79819c9a8c2373317d19a96048e5a3f90bec587787e86a1153883c2"}, + {file = "kiwisolver-1.4.9-cp311-cp311-win_arm64.whl", hash = "sha256:0ae37737256ba2de764ddc12aed4956460277f00c4996d51a197e72f62f5eec7"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:ac5a486ac389dddcc5bef4f365b6ae3ffff2c433324fb38dd35e3fab7c957999"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f2ba92255faa7309d06fe44c3a4a97efe1c8d640c2a79a5ef728b685762a6fd2"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a2899935e724dd1074cb568ce7ac0dce28b2cd6ab539c8e001a8578eb106d14"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f6008a4919fdbc0b0097089f67a1eb55d950ed7e90ce2cc3e640abadd2757a04"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:67bb8b474b4181770f926f7b7d2f8c0248cbcb78b660fdd41a47054b28d2a752"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2327a4a30d3ee07d2fbe2e7933e8a37c591663b96ce42a00bc67461a87d7df77"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7a08b491ec91b1d5053ac177afe5290adacf1f0f6307d771ccac5de30592d198"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d8fc5c867c22b828001b6a38d2eaeb88160bf5783c6cb4a5e440efc981ce286d"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:3b3115b2581ea35bb6d1f24a4c90af37e5d9b49dcff267eeed14c3893c5b86ab"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858e4c22fb075920b96a291928cb7dea5644e94c0ee4fcd5af7e865655e4ccf2"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ed0fecd28cc62c54b262e3736f8bb2512d8dcfdc2bcf08be5f47f96bf405b145"}, + {file = "kiwisolver-1.4.9-cp312-cp312-win_amd64.whl", hash = "sha256:f68208a520c3d86ea51acf688a3e3002615a7f0238002cccc17affecc86a8a54"}, + {file = "kiwisolver-1.4.9-cp312-cp312-win_arm64.whl", hash = "sha256:2c1a4f57df73965f3f14df20b80ee29e6a7930a57d2d9e8491a25f676e197c60"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a5d0432ccf1c7ab14f9949eec60c5d1f924f17c037e9f8b33352fa05799359b8"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efb3a45b35622bb6c16dbfab491a8f5a391fe0e9d45ef32f4df85658232ca0e2"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a12cf6398e8a0a001a059747a1cbf24705e18fe413bc22de7b3d15c67cffe3f"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b67e6efbf68e077dd71d1a6b37e43e1a99d0bff1a3d51867d45ee8908b931098"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5656aa670507437af0207645273ccdfee4f14bacd7f7c67a4306d0dcaeaf6eed"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:bfc08add558155345129c7803b3671cf195e6a56e7a12f3dde7c57d9b417f525"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:40092754720b174e6ccf9e845d0d8c7d8e12c3d71e7fc35f55f3813e96376f78"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:497d05f29a1300d14e02e6441cf0f5ee81c1ff5a304b0d9fb77423974684e08b"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:bdd1a81a1860476eb41ac4bc1e07b3f07259e6d55bbf739b79c8aaedcf512799"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:e6b93f13371d341afee3be9f7c5964e3fe61d5fa30f6a30eb49856935dfe4fc3"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d75aa530ccfaa593da12834b86a0724f58bff12706659baa9227c2ccaa06264c"}, + {file = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl", hash = "sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d"}, + {file = "kiwisolver-1.4.9-cp313-cp313-win_arm64.whl", hash = "sha256:d4188e73af84ca82468f09cadc5ac4db578109e52acb4518d8154698d3a87ca2"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:5a0f2724dfd4e3b3ac5a82436a8e6fd16baa7d507117e4279b660fe8ca38a3a1"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1b11d6a633e4ed84fc0ddafd4ebfd8ea49b3f25082c04ad12b8315c11d504dc1"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61874cdb0a36016354853593cffc38e56fc9ca5aa97d2c05d3dcf6922cd55a11"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:60c439763a969a6af93b4881db0eed8fadf93ee98e18cbc35bc8da868d0c4f0c"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92a2f997387a1b79a75e7803aa7ded2cfbe2823852ccf1ba3bcf613b62ae3197"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a31d512c812daea6d8b3be3b2bfcbeb091dbb09177706569bcfc6240dcf8b41c"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:52a15b0f35dad39862d376df10c5230155243a2c1a436e39eb55623ccbd68185"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a30fd6fdef1430fd9e1ba7b3398b5ee4e2887783917a687d86ba69985fb08748"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cc9617b46837c6468197b5945e196ee9ca43057bb7d9d1ae688101e4e1dddf64"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:0ab74e19f6a2b027ea4f845a78827969af45ce790e6cb3e1ebab71bdf9f215ff"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dba5ee5d3981160c28d5490f0d1b7ed730c22470ff7f6cc26cfcfaacb9896a07"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-win_arm64.whl", hash = "sha256:0749fd8f4218ad2e851e11cc4dc05c7cbc0cbc4267bdfdb31782e65aace4ee9c"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:9928fe1eb816d11ae170885a74d074f57af3a0d65777ca47e9aeb854a1fba386"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d0005b053977e7b43388ddec89fa567f43d4f6d5c2c0affe57de5ebf290dc552"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2635d352d67458b66fd0667c14cb1d4145e9560d503219034a18a87e971ce4f3"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:767c23ad1c58c9e827b649a9ab7809fd5fd9db266a9cf02b0e926ddc2c680d58"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72d0eb9fba308b8311685c2268cf7d0a0639a6cd027d8128659f72bdd8a024b4"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f68e4f3eeca8fb22cc3d731f9715a13b652795ef657a13df1ad0c7dc0e9731df"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d84cd4061ae292d8ac367b2c3fa3aad11cb8625a95d135fe93f286f914f3f5a6"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a60ea74330b91bd22a29638940d115df9dc00af5035a9a2a6ad9399ffb4ceca5"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ce6a3a4e106cf35c2d9c4fa17c05ce0b180db622736845d4315519397a77beaf"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:77937e5e2a38a7b48eef0585114fe7930346993a88060d0bf886086d2aa49ef5"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:24c175051354f4a28c5d6a31c93906dc653e2bf234e8a4bbfb964892078898ce"}, + {file = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl", hash = "sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7"}, + {file = "kiwisolver-1.4.9-cp314-cp314-win_arm64.whl", hash = "sha256:0e4e2bf29574a6a7b7f6cb5fa69293b9f96c928949ac4a53ba3f525dffb87f9c"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d976bbb382b202f71c67f77b0ac11244021cfa3f7dfd9e562eefcea2df711548"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2489e4e5d7ef9a1c300a5e0196e43d9c739f066ef23270607d45aba368b91f2d"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:e2ea9f7ab7fbf18fffb1b5434ce7c69a07582f7acc7717720f1d69f3e806f90c"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b34e51affded8faee0dfdb705416153819d8ea9250bbbf7ea1b249bdeb5f1122"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8aacd3d4b33b772542b2e01beb50187536967b514b00003bdda7589722d2a64"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7cf974dd4e35fa315563ac99d6287a1024e4dc2077b8a7d7cd3d2fb65d283134"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:85bd218b5ecfbee8c8a82e121802dcb519a86044c9c3b2e4aef02fa05c6da370"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:0856e241c2d3df4efef7c04a1e46b1936b6120c9bcf36dd216e3acd84bc4fb21"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:9af39d6551f97d31a4deebeac6f45b156f9755ddc59c07b402c148f5dbb6482a"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:bb4ae2b57fc1d8cbd1cf7b1d9913803681ffa903e7488012be5b76dedf49297f"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:aedff62918805fb62d43a4aa2ecd4482c380dc76cd31bd7c8878588a61bd0369"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl", hash = "sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-win_arm64.whl", hash = "sha256:4a48a2ce79d65d363597ef7b567ce3d14d68783d2b2263d98db3d9477805ba32"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:4d1d9e582ad4d63062d34077a9a1e9f3c34088a2ec5135b1f7190c07cf366527"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:deed0c7258ceb4c44ad5ec7d9918f9f14fd05b2be86378d86cf50e63d1e7b771"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0a590506f303f512dff6b7f75fd2fd18e16943efee932008fe7140e5fa91d80e"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e09c2279a4d01f099f52d5c4b3d9e208e91edcbd1a175c9662a8b16e000fece9"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:c9e7cdf45d594ee04d5be1b24dd9d49f3d1590959b2271fb30b5ca2b262c00fb"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:720e05574713db64c356e86732c0f3c5252818d05f9df320f0ad8380641acea5"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:17680d737d5335b552994a2008fab4c851bcd7de33094a82067ef3a576ff02fa"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:85b5352f94e490c028926ea567fc569c52ec79ce131dadb968d3853e809518c2"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:464415881e4801295659462c49461a24fb107c140de781d55518c4b80cb6790f"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:fb940820c63a9590d31d88b815e7a3aa5915cad3ce735ab45f0c730b39547de1"}, + {file = "kiwisolver-1.4.9.tar.gz", hash = "sha256:c3b22c26c6fd6811b0ae8363b95ca8ce4ea3c202d3d0975b2914310ceb1bcc4d"}, ] [[package]] name = "matplotlib" -version = "3.10.3" +version = "3.10.5" description = "Python plotting package" optional = false python-versions = ">=3.10" files = [ - {file = "matplotlib-3.10.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:213fadd6348d106ca7db99e113f1bea1e65e383c3ba76e8556ba4a3054b65ae7"}, - {file = "matplotlib-3.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d3bec61cb8221f0ca6313889308326e7bb303d0d302c5cc9e523b2f2e6c73deb"}, - {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c21ae75651c0231b3ba014b6d5e08fb969c40cdb5a011e33e99ed0c9ea86ecb"}, - {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a49e39755580b08e30e3620efc659330eac5d6534ab7eae50fa5e31f53ee4e30"}, - {file = "matplotlib-3.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cf4636203e1190871d3a73664dea03d26fb019b66692cbfd642faafdad6208e8"}, - {file = "matplotlib-3.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:fd5641a9bb9d55f4dd2afe897a53b537c834b9012684c8444cc105895c8c16fd"}, - {file = "matplotlib-3.10.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:0ef061f74cd488586f552d0c336b2f078d43bc00dc473d2c3e7bfee2272f3fa8"}, - {file = "matplotlib-3.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96985d14dc5f4a736bbea4b9de9afaa735f8a0fc2ca75be2fa9e96b2097369d"}, - {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c5f0283da91e9522bdba4d6583ed9d5521566f63729ffb68334f86d0bb98049"}, - {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdfa07c0ec58035242bc8b2c8aae37037c9a886370eef6850703d7583e19964b"}, - {file = "matplotlib-3.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c0b9849a17bce080a16ebcb80a7b714b5677d0ec32161a2cc0a8e5a6030ae220"}, - {file = "matplotlib-3.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:eef6ed6c03717083bc6d69c2d7ee8624205c29a8e6ea5a31cd3492ecdbaee1e1"}, - {file = "matplotlib-3.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:0ab1affc11d1f495ab9e6362b8174a25afc19c081ba5b0775ef00533a4236eea"}, - {file = "matplotlib-3.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2a818d8bdcafa7ed2eed74487fdb071c09c1ae24152d403952adad11fa3c65b4"}, - {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748ebc3470c253e770b17d8b0557f0aa85cf8c63fd52f1a61af5b27ec0b7ffee"}, - {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed70453fd99733293ace1aec568255bc51c6361cb0da94fa5ebf0649fdb2150a"}, - {file = "matplotlib-3.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dbed9917b44070e55640bd13419de83b4c918e52d97561544814ba463811cbc7"}, - {file = "matplotlib-3.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:cf37d8c6ef1a48829443e8ba5227b44236d7fcaf7647caa3178a4ff9f7a5be05"}, - {file = "matplotlib-3.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9f2efccc8dcf2b86fc4ee849eea5dcaecedd0773b30f47980dc0cbeabf26ec84"}, - {file = "matplotlib-3.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3ddbba06a6c126e3301c3d272a99dcbe7f6c24c14024e80307ff03791a5f294e"}, - {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748302b33ae9326995b238f606e9ed840bf5886ebafcb233775d946aa8107a15"}, - {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a80fcccbef63302c0efd78042ea3c2436104c5b1a4d3ae20f864593696364ac7"}, - {file = "matplotlib-3.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:55e46cbfe1f8586adb34f7587c3e4f7dedc59d5226719faf6cb54fc24f2fd52d"}, - {file = "matplotlib-3.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:151d89cb8d33cb23345cd12490c76fd5d18a56581a16d950b48c6ff19bb2ab93"}, - {file = "matplotlib-3.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:c26dd9834e74d164d06433dc7be5d75a1e9890b926b3e57e74fa446e1a62c3e2"}, - {file = "matplotlib-3.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:24853dad5b8c84c8c2390fc31ce4858b6df504156893292ce8092d190ef8151d"}, - {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68f7878214d369d7d4215e2a9075fef743be38fa401d32e6020bab2dfabaa566"}, - {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6929fc618cb6db9cb75086f73b3219bbb25920cb24cee2ea7a12b04971a4158"}, - {file = "matplotlib-3.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6c7818292a5cc372a2dc4c795e5c356942eb8350b98ef913f7fda51fe175ac5d"}, - {file = "matplotlib-3.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:4f23ffe95c5667ef8a2b56eea9b53db7f43910fa4a2d5472ae0f72b64deab4d5"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:86ab63d66bbc83fdb6733471d3bff40897c1e9921cba112accd748eee4bce5e4"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:a48f9c08bf7444b5d2391a83e75edb464ccda3c380384b36532a0962593a1751"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb73d8aa75a237457988f9765e4dfe1c0d2453c5ca4eabc897d4309672c8e014"}, - {file = "matplotlib-3.10.3.tar.gz", hash = "sha256:2f82d2c5bb7ae93aaaa4cd42aca65d76ce6376f83304fa3a630b569aca274df0"}, + {file = "matplotlib-3.10.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5d4773a6d1c106ca05cb5a5515d277a6bb96ed09e5c8fab6b7741b8fcaa62c8f"}, + {file = "matplotlib-3.10.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dc88af74e7ba27de6cbe6faee916024ea35d895ed3d61ef6f58c4ce97da7185a"}, + {file = "matplotlib-3.10.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:64c4535419d5617f7363dad171a5a59963308e0f3f813c4bed6c9e6e2c131512"}, + {file = "matplotlib-3.10.5-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a277033048ab22d34f88a3c5243938cef776493f6201a8742ed5f8b553201343"}, + {file = "matplotlib-3.10.5-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:e4a6470a118a2e93022ecc7d3bd16b3114b2004ea2bf014fff875b3bc99b70c6"}, + {file = "matplotlib-3.10.5-cp310-cp310-win_amd64.whl", hash = "sha256:7e44cada61bec8833c106547786814dd4a266c1b2964fd25daa3804f1b8d4467"}, + {file = "matplotlib-3.10.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:dcfc39c452c6a9f9028d3e44d2d721484f665304857188124b505b2c95e1eecf"}, + {file = "matplotlib-3.10.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:903352681b59f3efbf4546985142a9686ea1d616bb054b09a537a06e4b892ccf"}, + {file = "matplotlib-3.10.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:080c3676a56b8ee1c762bcf8fca3fe709daa1ee23e6ef06ad9f3fc17332f2d2a"}, + {file = "matplotlib-3.10.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4b4984d5064a35b6f66d2c11d668565f4389b1119cc64db7a4c1725bc11adffc"}, + {file = "matplotlib-3.10.5-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3967424121d3a46705c9fa9bdb0931de3228f13f73d7bb03c999c88343a89d89"}, + {file = "matplotlib-3.10.5-cp311-cp311-win_amd64.whl", hash = "sha256:33775bbeb75528555a15ac29396940128ef5613cf9a2d31fb1bfd18b3c0c0903"}, + {file = "matplotlib-3.10.5-cp311-cp311-win_arm64.whl", hash = "sha256:c61333a8e5e6240e73769d5826b9a31d8b22df76c0778f8480baf1b4b01c9420"}, + {file = "matplotlib-3.10.5-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:00b6feadc28a08bd3c65b2894f56cf3c94fc8f7adcbc6ab4516ae1e8ed8f62e2"}, + {file = "matplotlib-3.10.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee98a5c5344dc7f48dc261b6ba5d9900c008fc12beb3fa6ebda81273602cc389"}, + {file = "matplotlib-3.10.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a17e57e33de901d221a07af32c08870ed4528db0b6059dce7d7e65c1122d4bea"}, + {file = "matplotlib-3.10.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97b9d6443419085950ee4a5b1ee08c363e5c43d7176e55513479e53669e88468"}, + {file = "matplotlib-3.10.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ceefe5d40807d29a66ae916c6a3915d60ef9f028ce1927b84e727be91d884369"}, + {file = "matplotlib-3.10.5-cp312-cp312-win_amd64.whl", hash = "sha256:c04cba0f93d40e45b3c187c6c52c17f24535b27d545f757a2fffebc06c12b98b"}, + {file = "matplotlib-3.10.5-cp312-cp312-win_arm64.whl", hash = "sha256:a41bcb6e2c8e79dc99c5511ae6f7787d2fb52efd3d805fff06d5d4f667db16b2"}, + {file = "matplotlib-3.10.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:354204db3f7d5caaa10e5de74549ef6a05a4550fdd1c8f831ab9bca81efd39ed"}, + {file = "matplotlib-3.10.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b072aac0c3ad563a2b3318124756cb6112157017f7431626600ecbe890df57a1"}, + {file = "matplotlib-3.10.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d52fd5b684d541b5a51fb276b2b97b010c75bee9aa392f96b4a07aeb491e33c7"}, + {file = "matplotlib-3.10.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee7a09ae2f4676276f5a65bd9f2bd91b4f9fbaedf49f40267ce3f9b448de501f"}, + {file = "matplotlib-3.10.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ba6c3c9c067b83481d647af88b4e441d532acdb5ef22178a14935b0b881188f4"}, + {file = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl", hash = "sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe"}, + {file = "matplotlib-3.10.5-cp313-cp313-win_arm64.whl", hash = "sha256:48fe6d47380b68a37ccfcc94f009530e84d41f71f5dae7eda7c4a5a84aa0a674"}, + {file = "matplotlib-3.10.5-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b80eb8621331449fc519541a7461987f10afa4f9cfd91afcd2276ebe19bd56c"}, + {file = "matplotlib-3.10.5-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:47a388908e469d6ca2a6015858fa924e0e8a2345a37125948d8e93a91c47933e"}, + {file = "matplotlib-3.10.5-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8b6b49167d208358983ce26e43aa4196073b4702858670f2eb111f9a10652b4b"}, + {file = "matplotlib-3.10.5-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a8da0453a7fd8e3da114234ba70c5ba9ef0e98f190309ddfde0f089accd46ea"}, + {file = "matplotlib-3.10.5-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:52c6573dfcb7726a9907b482cd5b92e6b5499b284ffacb04ffbfe06b3e568124"}, + {file = "matplotlib-3.10.5-cp313-cp313t-win_amd64.whl", hash = "sha256:a23193db2e9d64ece69cac0c8231849db7dd77ce59c7b89948cf9d0ce655a3ce"}, + {file = "matplotlib-3.10.5-cp313-cp313t-win_arm64.whl", hash = "sha256:56da3b102cf6da2776fef3e71cd96fcf22103a13594a18ac9a9b31314e0be154"}, + {file = "matplotlib-3.10.5-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:96ef8f5a3696f20f55597ffa91c28e2e73088df25c555f8d4754931515512715"}, + {file = "matplotlib-3.10.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:77fab633e94b9da60512d4fa0213daeb76d5a7b05156840c4fd0399b4b818837"}, + {file = "matplotlib-3.10.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:27f52634315e96b1debbfdc5c416592edcd9c4221bc2f520fd39c33db5d9f202"}, + {file = "matplotlib-3.10.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:525f6e28c485c769d1f07935b660c864de41c37fd716bfa64158ea646f7084bb"}, + {file = "matplotlib-3.10.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:1f5f3ec4c191253c5f2b7c07096a142c6a1c024d9f738247bfc8e3f9643fc975"}, + {file = "matplotlib-3.10.5-cp314-cp314-win_amd64.whl", hash = "sha256:707f9c292c4cd4716f19ab8a1f93f26598222cd931e0cd98fbbb1c5994bf7667"}, + {file = "matplotlib-3.10.5-cp314-cp314-win_arm64.whl", hash = "sha256:21a95b9bf408178d372814de7baacd61c712a62cae560b5e6f35d791776f6516"}, + {file = "matplotlib-3.10.5-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:a6b310f95e1102a8c7c817ef17b60ee5d1851b8c71b63d9286b66b177963039e"}, + {file = "matplotlib-3.10.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:94986a242747a0605cb3ff1cb98691c736f28a59f8ffe5175acaeb7397c49a5a"}, + {file = "matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1ff10ea43288f0c8bab608a305dc6c918cc729d429c31dcbbecde3b9f4d5b569"}, + {file = "matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f6adb644c9d040ffb0d3434e440490a66cf73dbfa118a6f79cd7568431f7a012"}, + {file = "matplotlib-3.10.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:4fa40a8f98428f789a9dcacd625f59b7bc4e3ef6c8c7c80187a7a709475cf592"}, + {file = "matplotlib-3.10.5-cp314-cp314t-win_amd64.whl", hash = "sha256:95672a5d628b44207aab91ec20bf59c26da99de12b88f7e0b1fb0a84a86ff959"}, + {file = "matplotlib-3.10.5-cp314-cp314t-win_arm64.whl", hash = "sha256:2efaf97d72629e74252e0b5e3c46813e9eeaa94e011ecf8084a971a31a97f40b"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:b5fa2e941f77eb579005fb804026f9d0a1082276118d01cc6051d0d9626eaa7f"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1fc0d2a3241cdcb9daaca279204a3351ce9df3c0e7e621c7e04ec28aaacaca30"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8dee65cb1424b7dc982fe87895b5613d4e691cc57117e8af840da0148ca6c1d7"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:160e125da27a749481eaddc0627962990f6029811dbeae23881833a011a0907f"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:ac3d50760394d78a3c9be6b28318fe22b494c4fcf6407e8fd4794b538251899b"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6c49465bf689c4d59d174d0c7795fb42a21d4244d11d70e52b8011987367ac61"}, + {file = "matplotlib-3.10.5.tar.gz", hash = "sha256:352ed6ccfb7998a00881692f38b4ca083c691d3e275b4145423704c34c909076"}, ] [package.dependencies] @@ -500,43 +542,49 @@ dev = ["meson-python (>=0.13.1,<0.17.0)", "pybind11 (>=2.13.2,!=2.13.3)", "setup [[package]] name = "mypy" -version = "1.17.0" +version = "1.17.1" description = "Optional static typing for Python" optional = false python-versions = ">=3.9" files = [ - {file = "mypy-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8e08de6138043108b3b18f09d3f817a4783912e48828ab397ecf183135d84d6"}, - {file = "mypy-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce4a17920ec144647d448fc43725b5873548b1aae6c603225626747ededf582d"}, - {file = "mypy-1.17.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6ff25d151cc057fdddb1cb1881ef36e9c41fa2a5e78d8dd71bee6e4dcd2bc05b"}, - {file = "mypy-1.17.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93468cf29aa9a132bceb103bd8475f78cacde2b1b9a94fd978d50d4bdf616c9a"}, - {file = "mypy-1.17.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:98189382b310f16343151f65dd7e6867386d3e35f7878c45cfa11383d175d91f"}, - {file = "mypy-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:c004135a300ab06a045c1c0d8e3f10215e71d7b4f5bb9a42ab80236364429937"}, - {file = "mypy-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9d4fe5c72fd262d9c2c91c1117d16aac555e05f5beb2bae6a755274c6eec42be"}, - {file = "mypy-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96b196e5c16f41b4f7736840e8455958e832871990c7ba26bf58175e357ed61"}, - {file = "mypy-1.17.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:73a0ff2dd10337ceb521c080d4147755ee302dcde6e1a913babd59473904615f"}, - {file = "mypy-1.17.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:24cfcc1179c4447854e9e406d3af0f77736d631ec87d31c6281ecd5025df625d"}, - {file = "mypy-1.17.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3c56f180ff6430e6373db7a1d569317675b0a451caf5fef6ce4ab365f5f2f6c3"}, - {file = "mypy-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:eafaf8b9252734400f9b77df98b4eee3d2eecab16104680d51341c75702cad70"}, - {file = "mypy-1.17.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f986f1cab8dbec39ba6e0eaa42d4d3ac6686516a5d3dccd64be095db05ebc6bb"}, - {file = "mypy-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:51e455a54d199dd6e931cd7ea987d061c2afbaf0960f7f66deef47c90d1b304d"}, - {file = "mypy-1.17.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3204d773bab5ff4ebbd1f8efa11b498027cd57017c003ae970f310e5b96be8d8"}, - {file = "mypy-1.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1051df7ec0886fa246a530ae917c473491e9a0ba6938cfd0ec2abc1076495c3e"}, - {file = "mypy-1.17.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f773c6d14dcc108a5b141b4456b0871df638eb411a89cd1c0c001fc4a9d08fc8"}, - {file = "mypy-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:1619a485fd0e9c959b943c7b519ed26b712de3002d7de43154a489a2d0fd817d"}, - {file = "mypy-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2c41aa59211e49d717d92b3bb1238c06d387c9325d3122085113c79118bebb06"}, - {file = "mypy-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e69db1fb65b3114f98c753e3930a00514f5b68794ba80590eb02090d54a5d4a"}, - {file = "mypy-1.17.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03ba330b76710f83d6ac500053f7727270b6b8553b0423348ffb3af6f2f7b889"}, - {file = "mypy-1.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:037bc0f0b124ce46bfde955c647f3e395c6174476a968c0f22c95a8d2f589bba"}, - {file = "mypy-1.17.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c38876106cb6132259683632b287238858bd58de267d80defb6f418e9ee50658"}, - {file = "mypy-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:d30ba01c0f151998f367506fab31c2ac4527e6a7b2690107c7a7f9e3cb419a9c"}, - {file = "mypy-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:63e751f1b5ab51d6f3d219fe3a2fe4523eaa387d854ad06906c63883fde5b1ab"}, - {file = "mypy-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f7fb09d05e0f1c329a36dcd30e27564a3555717cde87301fae4fb542402ddfad"}, - {file = "mypy-1.17.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b72c34ce05ac3a1361ae2ebb50757fb6e3624032d91488d93544e9f82db0ed6c"}, - {file = "mypy-1.17.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:434ad499ad8dde8b2f6391ddfa982f41cb07ccda8e3c67781b1bfd4e5f9450a8"}, - {file = "mypy-1.17.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f105f61a5eff52e137fd73bee32958b2add9d9f0a856f17314018646af838e97"}, - {file = "mypy-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:ba06254a5a22729853209550d80f94e28690d5530c661f9416a68ac097b13fc4"}, - {file = "mypy-1.17.0-py3-none-any.whl", hash = "sha256:15d9d0018237ab058e5de3d8fce61b6fa72cc59cc78fd91f1b474bce12abf496"}, - {file = "mypy-1.17.0.tar.gz", hash = "sha256:e5d7ccc08ba089c06e2f5629c660388ef1fee708444f1dee0b9203fa031dee03"}, + {file = "mypy-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3fbe6d5555bf608c47203baa3e72dbc6ec9965b3d7c318aa9a4ca76f465bd972"}, + {file = "mypy-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:80ef5c058b7bce08c83cac668158cb7edea692e458d21098c7d3bce35a5d43e7"}, + {file = "mypy-1.17.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4a580f8a70c69e4a75587bd925d298434057fe2a428faaf927ffe6e4b9a98df"}, + {file = "mypy-1.17.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:dd86bb649299f09d987a2eebb4d52d10603224500792e1bee18303bbcc1ce390"}, + {file = "mypy-1.17.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:a76906f26bd8d51ea9504966a9c25419f2e668f012e0bdf3da4ea1526c534d94"}, + {file = "mypy-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:e79311f2d904ccb59787477b7bd5d26f3347789c06fcd7656fa500875290264b"}, + {file = "mypy-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad37544be07c5d7fba814eb370e006df58fed8ad1ef33ed1649cb1889ba6ff58"}, + {file = "mypy-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:064e2ff508e5464b4bd807a7c1625bc5047c5022b85c70f030680e18f37273a5"}, + {file = "mypy-1.17.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:70401bbabd2fa1aa7c43bb358f54037baf0586f41e83b0ae67dd0534fc64edfd"}, + {file = "mypy-1.17.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e92bdc656b7757c438660f775f872a669b8ff374edc4d18277d86b63edba6b8b"}, + {file = "mypy-1.17.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c1fdf4abb29ed1cb091cf432979e162c208a5ac676ce35010373ff29247bcad5"}, + {file = "mypy-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:ff2933428516ab63f961644bc49bc4cbe42bbffb2cd3b71cc7277c07d16b1a8b"}, + {file = "mypy-1.17.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:69e83ea6553a3ba79c08c6e15dbd9bfa912ec1e493bf75489ef93beb65209aeb"}, + {file = "mypy-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1b16708a66d38abb1e6b5702f5c2c87e133289da36f6a1d15f6a5221085c6403"}, + {file = "mypy-1.17.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:89e972c0035e9e05823907ad5398c5a73b9f47a002b22359b177d40bdaee7056"}, + {file = "mypy-1.17.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:03b6d0ed2b188e35ee6d5c36b5580cffd6da23319991c49ab5556c023ccf1341"}, + {file = "mypy-1.17.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c837b896b37cd103570d776bda106eabb8737aa6dd4f248451aecf53030cdbeb"}, + {file = "mypy-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:665afab0963a4b39dff7c1fa563cc8b11ecff7910206db4b2e64dd1ba25aed19"}, + {file = "mypy-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:93378d3203a5c0800c6b6d850ad2f19f7a3cdf1a3701d3416dbf128805c6a6a7"}, + {file = "mypy-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:15d54056f7fe7a826d897789f53dd6377ec2ea8ba6f776dc83c2902b899fee81"}, + {file = "mypy-1.17.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:209a58fed9987eccc20f2ca94afe7257a8f46eb5df1fb69958650973230f91e6"}, + {file = "mypy-1.17.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:099b9a5da47de9e2cb5165e581f158e854d9e19d2e96b6698c0d64de911dd849"}, + {file = "mypy-1.17.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa6ffadfbe6994d724c5a1bb6123a7d27dd68fc9c059561cd33b664a79578e14"}, + {file = "mypy-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a"}, + {file = "mypy-1.17.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:15a83369400454c41ed3a118e0cc58bd8123921a602f385cb6d6ea5df050c733"}, + {file = "mypy-1.17.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:55b918670f692fc9fba55c3298d8a3beae295c5cded0a55dccdc5bbead814acd"}, + {file = "mypy-1.17.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:62761474061feef6f720149d7ba876122007ddc64adff5ba6f374fda35a018a0"}, + {file = "mypy-1.17.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c49562d3d908fd49ed0938e5423daed8d407774a479b595b143a3d7f87cdae6a"}, + {file = "mypy-1.17.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:397fba5d7616a5bc60b45c7ed204717eaddc38f826e3645402c426057ead9a91"}, + {file = "mypy-1.17.1-cp314-cp314-win_amd64.whl", hash = "sha256:9d6b20b97d373f41617bd0708fd46aa656059af57f2ef72aa8c7d6a2b73b74ed"}, + {file = "mypy-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5d1092694f166a7e56c805caaf794e0585cabdbf1df36911c414e4e9abb62ae9"}, + {file = "mypy-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:79d44f9bfb004941ebb0abe8eff6504223a9c1ac51ef967d1263c6572bbebc99"}, + {file = "mypy-1.17.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b01586eed696ec905e61bd2568f48740f7ac4a45b3a468e6423a03d3788a51a8"}, + {file = "mypy-1.17.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:43808d9476c36b927fbcd0b0255ce75efe1b68a080154a38ae68a7e62de8f0f8"}, + {file = "mypy-1.17.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:feb8cc32d319edd5859da2cc084493b3e2ce5e49a946377663cc90f6c15fb259"}, + {file = "mypy-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d7598cf74c3e16539d4e2f0b8d8c318e00041553d83d4861f87c7a72e95ac24d"}, + {file = "mypy-1.17.1-py3-none-any.whl", hash = "sha256:a9f52c0351c21fe24c21d8c0eb1f62967b262d6729393397b6f443c3b773c3b9"}, + {file = "mypy-1.17.1.tar.gz", hash = "sha256:25e01ec741ab5bb3eec8ba9cdb0f769230368a22c959c4937360efb89b7e9f01"}, ] [package.dependencies] @@ -1140,29 +1188,29 @@ files = [ [[package]] name = "ruff" -version = "0.12.5" +version = "0.12.8" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.12.5-py3-none-linux_armv6l.whl", hash = "sha256:1de2c887e9dec6cb31fcb9948299de5b2db38144e66403b9660c9548a67abd92"}, - {file = "ruff-0.12.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d1ab65e7d8152f519e7dea4de892317c9da7a108da1c56b6a3c1d5e7cf4c5e9a"}, - {file = "ruff-0.12.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:962775ed5b27c7aa3fdc0d8f4d4433deae7659ef99ea20f783d666e77338b8cf"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b4cae449597e7195a49eb1cdca89fd9fbb16140c7579899e87f4c85bf82f73"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b13489c3dc50de5e2d40110c0cce371e00186b880842e245186ca862bf9a1ac"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1504fea81461cf4841778b3ef0a078757602a3b3ea4b008feb1308cb3f23e08"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c7da4129016ae26c32dfcbd5b671fe652b5ab7fc40095d80dcff78175e7eddd4"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ca972c80f7ebcfd8af75a0f18b17c42d9f1ef203d163669150453f50ca98ab7b"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8dbbf9f25dfb501f4237ae7501d6364b76a01341c6f1b2cd6764fe449124bb2a"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c47dea6ae39421851685141ba9734767f960113d51e83fd7bb9958d5be8763a"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:c5076aa0e61e30f848846f0265c873c249d4b558105b221be1828f9f79903dc5"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:a5a4c7830dadd3d8c39b1cc85386e2c1e62344f20766be6f173c22fb5f72f293"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_i686.whl", hash = "sha256:46699f73c2b5b137b9dc0fc1a190b43e35b008b398c6066ea1350cce6326adcb"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5a655a0a0d396f0f072faafc18ebd59adde8ca85fb848dc1b0d9f024b9c4d3bb"}, - {file = "ruff-0.12.5-py3-none-win32.whl", hash = "sha256:dfeb2627c459b0b78ca2bbdc38dd11cc9a0a88bf91db982058b26ce41714ffa9"}, - {file = "ruff-0.12.5-py3-none-win_amd64.whl", hash = "sha256:ae0d90cf5f49466c954991b9d8b953bd093c32c27608e409ae3564c63c5306a5"}, - {file = "ruff-0.12.5-py3-none-win_arm64.whl", hash = "sha256:48cdbfc633de2c5c37d9f090ba3b352d1576b0015bfc3bc98eaf230275b7e805"}, - {file = "ruff-0.12.5.tar.gz", hash = "sha256:b209db6102b66f13625940b7f8c7d0f18e20039bb7f6101fbdac935c9612057e"}, + {file = "ruff-0.12.8-py3-none-linux_armv6l.whl", hash = "sha256:63cb5a5e933fc913e5823a0dfdc3c99add73f52d139d6cd5cc8639d0e0465513"}, + {file = "ruff-0.12.8-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:9a9bbe28f9f551accf84a24c366c1aa8774d6748438b47174f8e8565ab9dedbc"}, + {file = "ruff-0.12.8-py3-none-macosx_11_0_arm64.whl", hash = "sha256:2fae54e752a3150f7ee0e09bce2e133caf10ce9d971510a9b925392dc98d2fec"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c0acbcf01206df963d9331b5838fb31f3b44fa979ee7fa368b9b9057d89f4a53"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ae3e7504666ad4c62f9ac8eedb52a93f9ebdeb34742b8b71cd3cccd24912719f"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cb82efb5d35d07497813a1c5647867390a7d83304562607f3579602fa3d7d46f"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:dbea798fc0065ad0b84a2947b0aff4233f0cb30f226f00a2c5850ca4393de609"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49ebcaccc2bdad86fd51b7864e3d808aad404aab8df33d469b6e65584656263a"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ac9c570634b98c71c88cb17badd90f13fc076a472ba6ef1d113d8ed3df109fb"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:560e0cd641e45591a3e42cb50ef61ce07162b9c233786663fdce2d8557d99818"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:71c83121512e7743fba5a8848c261dcc454cafb3ef2934a43f1b7a4eb5a447ea"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:de4429ef2ba091ecddedd300f4c3f24bca875d3d8b23340728c3cb0da81072c3"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_i686.whl", hash = "sha256:a2cab5f60d5b65b50fba39a8950c8746df1627d54ba1197f970763917184b161"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:45c32487e14f60b88aad6be9fd5da5093dbefb0e3e1224131cb1d441d7cb7d46"}, + {file = "ruff-0.12.8-py3-none-win32.whl", hash = "sha256:daf3475060a617fd5bc80638aeaf2f5937f10af3ec44464e280a9d2218e720d3"}, + {file = "ruff-0.12.8-py3-none-win_amd64.whl", hash = "sha256:7209531f1a1fcfbe8e46bcd7ab30e2f43604d8ba1c49029bb420b103d0b5f76e"}, + {file = "ruff-0.12.8-py3-none-win_arm64.whl", hash = "sha256:c90e1a334683ce41b0e7a04f41790c429bf5073b62c1ae701c9dc5b3d14f0749"}, + {file = "ruff-0.12.8.tar.gz", hash = "sha256:4cb3a45525176e1009b2b64126acf5f9444ea59066262791febf55e40493a033"}, ] [[package]] @@ -1189,13 +1237,13 @@ files = [ [[package]] name = "types-pyyaml" -version = "6.0.12.20250516" +version = "6.0.12.20250809" description = "Typing stubs for PyYAML" optional = false python-versions = ">=3.9" files = [ - {file = "types_pyyaml-6.0.12.20250516-py3-none-any.whl", hash = "sha256:8478208feaeb53a34cb5d970c56a7cd76b72659442e733e268a94dc72b2d0530"}, - {file = "types_pyyaml-6.0.12.20250516.tar.gz", hash = "sha256:9f21a70216fc0fa1b216a8176db5f9e0af6eb35d2f2932acb87689d03a5bf6ba"}, + {file = "types_pyyaml-6.0.12.20250809-py3-none-any.whl", hash = "sha256:032b6003b798e7de1a1ddfeefee32fac6486bdfe4845e0ae0e7fb3ee4512b52f"}, + {file = "types_pyyaml-6.0.12.20250809.tar.gz", hash = "sha256:af4a1aca028f18e75297da2ee0da465f799627370d74073e96fee876524f61b5"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 22fcaa2..1348af6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] -name = "FastSim" +name = "AsyncFlow" version = "0.1.0" -description = "Simulate fastapi event loop to manage resources" +description = "Simulate distributed system for what if analysis for the capacity planning" authors = ["Gioele Botta"] readme = "README.md" packages = [ - { include = "app", from = "src" } + { include = "asyncflow", from = "src" } ] [tool.poetry.dependencies] diff --git a/src/app/__init__.py b/src/asyncflow/__init__.py similarity index 100% rename from src/app/__init__.py rename to src/asyncflow/__init__.py diff --git a/src/app/config/__init__.py b/src/asyncflow/config/__init__.py similarity index 100% rename from src/app/config/__init__.py rename to src/asyncflow/config/__init__.py diff --git a/src/app/config/constants.py b/src/asyncflow/config/constants.py similarity index 99% rename from src/app/config/constants.py rename to src/asyncflow/config/constants.py index 0aa5f9d..de79a33 100644 --- a/src/app/config/constants.py +++ b/src/asyncflow/config/constants.py @@ -1,7 +1,7 @@ """ Application-wide constants and configuration values. -This module groups all the static enumerations used by the FastSim backend +This module groups all the static enumerations used by the AsyncFlow backend so that: JSON / YAML payloads can be strictly validated with Pydantic. diff --git a/src/app/config/plot_constants.py b/src/asyncflow/config/plot_constants.py similarity index 100% rename from src/app/config/plot_constants.py rename to src/asyncflow/config/plot_constants.py diff --git a/src/app/metrics/analyzer.py b/src/asyncflow/metrics/analyzer.py similarity index 95% rename from src/app/metrics/analyzer.py rename to src/asyncflow/metrics/analyzer.py index 8308d54..4db2ee1 100644 --- a/src/app/metrics/analyzer.py +++ b/src/asyncflow/metrics/analyzer.py @@ -7,8 +7,8 @@ import numpy as np -from app.config.constants import LatencyKey, SampledMetricName -from app.config.plot_constants import ( +from asyncflow.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.plot_constants import ( LATENCY_PLOT, RAM_PLOT, SERVER_QUEUES_PLOT, @@ -23,10 +23,10 @@ from matplotlib.axes import Axes from matplotlib.lines import Line2D - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.actors.server import ServerRuntime - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.server import ServerRuntime + from asyncflow.schemas.simulation_settings_input import SimulationSettings class ResultsAnalyzer: diff --git a/src/app/metrics/client.py b/src/asyncflow/metrics/client.py similarity index 100% rename from src/app/metrics/client.py rename to src/asyncflow/metrics/client.py diff --git a/src/app/metrics/collector.py b/src/asyncflow/metrics/collector.py similarity index 91% rename from src/app/metrics/collector.py rename to src/asyncflow/metrics/collector.py index d2158f5..97421b7 100644 --- a/src/app/metrics/collector.py +++ b/src/asyncflow/metrics/collector.py @@ -4,10 +4,10 @@ import simpy -from app.config.constants import SampledMetricName -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.server import ServerRuntime -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.config.constants import SampledMetricName +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.schemas.simulation_settings_input import SimulationSettings # The idea for this class is to gather list of runtime objects that # are defined in the central class to build the simulation, in this diff --git a/src/app/metrics/edge.py b/src/asyncflow/metrics/edge.py similarity index 94% rename from src/app/metrics/edge.py rename to src/asyncflow/metrics/edge.py index f714482..f9626dd 100644 --- a/src/app/metrics/edge.py +++ b/src/asyncflow/metrics/edge.py @@ -2,7 +2,7 @@ from collections.abc import Iterable -from app.config.constants import SampledMetricName +from asyncflow.config.constants import SampledMetricName # Initialize one time outside the function all possible metrics # related to the edges, the idea of this structure is to diff --git a/src/app/metrics/server.py b/src/asyncflow/metrics/server.py similarity index 94% rename from src/app/metrics/server.py rename to src/asyncflow/metrics/server.py index 18810ed..6ebb96e 100644 --- a/src/app/metrics/server.py +++ b/src/asyncflow/metrics/server.py @@ -5,7 +5,7 @@ from collections.abc import Iterable -from app.config.constants import SampledMetricName +from asyncflow.config.constants import SampledMetricName # Initialize one time outside the function all possible metrics # related to the servers, the idea of this structure is to diff --git a/src/app/pybuilder/input_builder.py b/src/asyncflow/pybuilder/input_builder.py similarity index 93% rename from src/app/pybuilder/input_builder.py rename to src/asyncflow/pybuilder/input_builder.py index 223cd32..7d3c26f 100644 --- a/src/app/pybuilder/input_builder.py +++ b/src/asyncflow/pybuilder/input_builder.py @@ -4,10 +4,10 @@ from typing import Self -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/src/app/resources/__init__.py b/src/asyncflow/resources/__init__.py similarity index 100% rename from src/app/resources/__init__.py rename to src/asyncflow/resources/__init__.py diff --git a/src/app/resources/registry.py b/src/asyncflow/resources/registry.py similarity index 86% rename from src/app/resources/registry.py rename to src/asyncflow/resources/registry.py index 02b7585..6e1e3be 100644 --- a/src/app/resources/registry.py +++ b/src/asyncflow/resources/registry.py @@ -9,8 +9,8 @@ import simpy -from app.resources.server_containers import ServerContainers, build_containers -from app.schemas.system_topology.full_system_topology import TopologyGraph +from asyncflow.resources.server_containers import ServerContainers, build_containers +from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph class ResourcesRuntime: diff --git a/src/app/resources/server_containers.py b/src/asyncflow/resources/server_containers.py similarity index 94% rename from src/app/resources/server_containers.py rename to src/asyncflow/resources/server_containers.py index dcbef1f..ca054c2 100644 --- a/src/app/resources/server_containers.py +++ b/src/asyncflow/resources/server_containers.py @@ -11,8 +11,8 @@ import simpy -from app.config.constants import ServerResourceName -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import ServerResourceName +from asyncflow.schemas.system_topology.full_system_topology import ( ServerResources, ) diff --git a/src/app/runtime/__init__.py b/src/asyncflow/runtime/__init__.py similarity index 100% rename from src/app/runtime/__init__.py rename to src/asyncflow/runtime/__init__.py diff --git a/src/app/runtime/actors/client.py b/src/asyncflow/runtime/actors/client.py similarity index 89% rename from src/app/runtime/actors/client.py rename to src/asyncflow/runtime/actors/client.py index 2f2da4b..58ba7e9 100644 --- a/src/app/runtime/actors/client.py +++ b/src/asyncflow/runtime/actors/client.py @@ -5,13 +5,13 @@ import simpy -from app.config.constants import SystemNodes -from app.metrics.client import RqsClock -from app.runtime.actors.edge import EdgeRuntime -from app.schemas.system_topology.full_system_topology import Client +from asyncflow.config.constants import SystemNodes +from asyncflow.metrics.client import RqsClock +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.schemas.system_topology.full_system_topology import Client if TYPE_CHECKING: - from app.runtime.rqs_state import RequestState + from asyncflow.runtime.rqs_state import RequestState diff --git a/src/app/runtime/actors/edge.py b/src/asyncflow/runtime/actors/edge.py similarity index 88% rename from src/app/runtime/actors/edge.py rename to src/asyncflow/runtime/actors/edge.py index 4e2f549..c2c5328 100644 --- a/src/app/runtime/actors/edge.py +++ b/src/asyncflow/runtime/actors/edge.py @@ -12,15 +12,15 @@ import numpy as np import simpy -from app.config.constants import SampledMetricName, SystemEdges -from app.metrics.edge import build_edge_metrics -from app.runtime.rqs_state import RequestState -from app.samplers.common_helpers import general_sampler -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import Edge +from asyncflow.config.constants import SampledMetricName, SystemEdges +from asyncflow.metrics.edge import build_edge_metrics +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.samplers.common_helpers import general_sampler +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: - from app.schemas.random_variables_config import RVConfig + from asyncflow.schemas.random_variables_config import RVConfig diff --git a/src/app/runtime/actors/helpers/lb_algorithms.py b/src/asyncflow/runtime/actors/helpers/lb_algorithms.py similarity index 94% rename from src/app/runtime/actors/helpers/lb_algorithms.py rename to src/asyncflow/runtime/actors/helpers/lb_algorithms.py index 90c325e..46078f7 100644 --- a/src/app/runtime/actors/helpers/lb_algorithms.py +++ b/src/asyncflow/runtime/actors/helpers/lb_algorithms.py @@ -2,7 +2,7 @@ -from app.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.edge import EdgeRuntime def least_connections(list_edges: list[EdgeRuntime]) -> EdgeRuntime: diff --git a/src/app/runtime/actors/load_balancer.py b/src/asyncflow/runtime/actors/load_balancer.py similarity index 86% rename from src/app/runtime/actors/load_balancer.py rename to src/asyncflow/runtime/actors/load_balancer.py index b370ff3..fac3f66 100644 --- a/src/app/runtime/actors/load_balancer.py +++ b/src/asyncflow/runtime/actors/load_balancer.py @@ -5,16 +5,16 @@ import simpy -from app.config.constants import LbAlgorithmsName, SystemNodes -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.helpers.lb_algorithms import ( +from asyncflow.config.constants import LbAlgorithmsName, SystemNodes +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.helpers.lb_algorithms import ( least_connections, round_robin, ) -from app.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer if TYPE_CHECKING: - from app.runtime.rqs_state import RequestState + from asyncflow.runtime.rqs_state import RequestState diff --git a/src/app/runtime/actors/rqs_generator.py b/src/asyncflow/runtime/actors/rqs_generator.py similarity index 88% rename from src/app/runtime/actors/rqs_generator.py rename to src/asyncflow/runtime/actors/rqs_generator.py index d9e7e38..6c983df 100644 --- a/src/app/runtime/actors/rqs_generator.py +++ b/src/asyncflow/runtime/actors/rqs_generator.py @@ -9,10 +9,10 @@ import numpy as np -from app.config.constants import Distribution, SystemNodes -from app.runtime.rqs_state import RequestState -from app.samplers.gaussian_poisson import gaussian_poisson_sampling -from app.samplers.poisson_poisson import poisson_poisson_sampling +from asyncflow.config.constants import Distribution, SystemNodes +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.samplers.gaussian_poisson import gaussian_poisson_sampling +from asyncflow.samplers.poisson_poisson import poisson_poisson_sampling if TYPE_CHECKING: @@ -20,9 +20,9 @@ import simpy - from app.runtime.actors.edge import EdgeRuntime - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.simulation_settings_input import SimulationSettings class RqsGeneratorRuntime: diff --git a/src/app/runtime/actors/server.py b/src/asyncflow/runtime/actors/server.py similarity index 96% rename from src/app/runtime/actors/server.py rename to src/asyncflow/runtime/actors/server.py index d791bbb..7d72de1 100644 --- a/src/app/runtime/actors/server.py +++ b/src/asyncflow/runtime/actors/server.py @@ -9,7 +9,7 @@ import numpy as np import simpy -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, @@ -18,12 +18,12 @@ StepOperation, SystemNodes, ) -from app.metrics.server import build_server_metrics -from app.resources.server_containers import ServerContainers -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import Server +from asyncflow.metrics.server import build_server_metrics +from asyncflow.resources.server_containers import ServerContainers +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import Server class ServerRuntime: diff --git a/src/app/runtime/rqs_state.py b/src/asyncflow/runtime/rqs_state.py similarity index 95% rename from src/app/runtime/rqs_state.py rename to src/asyncflow/runtime/rqs_state.py index 1c953fd..71b8389 100644 --- a/src/app/runtime/rqs_state.py +++ b/src/asyncflow/runtime/rqs_state.py @@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, NamedTuple if TYPE_CHECKING: - from app.config.constants import SystemEdges, SystemNodes + from asyncflow.config.constants import SystemEdges, SystemNodes class Hop(NamedTuple): diff --git a/src/app/runtime/simulation_runner.py b/src/asyncflow/runtime/simulation_runner.py similarity index 93% rename from src/app/runtime/simulation_runner.py rename to src/asyncflow/runtime/simulation_runner.py index e2b5c6f..f82fb72 100644 --- a/src/app/runtime/simulation_runner.py +++ b/src/asyncflow/runtime/simulation_runner.py @@ -8,21 +8,21 @@ import simpy import yaml -from app.metrics.analyzer import ResultsAnalyzer -from app.metrics.collector import SampledMetricCollector -from app.resources.registry import ResourcesRuntime -from app.runtime.actors.client import ClientRuntime -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.load_balancer import LoadBalancerRuntime -from app.runtime.actors.rqs_generator import RqsGeneratorRuntime -from app.runtime.actors.server import ServerRuntime -from app.schemas.full_simulation_input import SimulationPayload +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.metrics.collector import SampledMetricCollector +from asyncflow.resources.registry import ResourcesRuntime +from asyncflow.runtime.actors.client import ClientRuntime +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime +from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.schemas.full_simulation_input import SimulationPayload if TYPE_CHECKING: from collections.abc import Iterable - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.system_topology.full_system_topology import ( + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/src/app/samplers/common_helpers.py b/src/asyncflow/samplers/common_helpers.py similarity index 96% rename from src/app/samplers/common_helpers.py rename to src/asyncflow/samplers/common_helpers.py index d594538..123ae4a 100644 --- a/src/app/samplers/common_helpers.py +++ b/src/asyncflow/samplers/common_helpers.py @@ -3,8 +3,8 @@ import numpy as np -from app.config.constants import Distribution -from app.schemas.random_variables_config import RVConfig +from asyncflow.config.constants import Distribution +from asyncflow.schemas.random_variables_config import RVConfig def uniform_variable_generator(rng: np.random.Generator) -> float: diff --git a/src/app/samplers/gaussian_poisson.py b/src/asyncflow/samplers/gaussian_poisson.py similarity index 92% rename from src/app/samplers/gaussian_poisson.py rename to src/asyncflow/samplers/gaussian_poisson.py index bb1f6fd..5caa9ed 100644 --- a/src/app/samplers/gaussian_poisson.py +++ b/src/asyncflow/samplers/gaussian_poisson.py @@ -11,13 +11,13 @@ import numpy as np -from app.config.constants import TimeDefaults -from app.samplers.common_helpers import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.common_helpers import ( truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings def gaussian_poisson_sampling( diff --git a/src/app/samplers/poisson_poisson.py b/src/asyncflow/samplers/poisson_poisson.py similarity index 90% rename from src/app/samplers/poisson_poisson.py rename to src/asyncflow/samplers/poisson_poisson.py index 725faa5..5e1b4cc 100644 --- a/src/app/samplers/poisson_poisson.py +++ b/src/asyncflow/samplers/poisson_poisson.py @@ -8,13 +8,13 @@ import numpy as np -from app.config.constants import TimeDefaults -from app.samplers.common_helpers import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.common_helpers import ( poisson_variable_generator, uniform_variable_generator, ) -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings def poisson_poisson_sampling( diff --git a/src/app/schemas/full_simulation_input.py b/src/asyncflow/schemas/full_simulation_input.py similarity index 55% rename from src/app/schemas/full_simulation_input.py rename to src/asyncflow/schemas/full_simulation_input.py index 8be873a..504396a 100644 --- a/src/app/schemas/full_simulation_input.py +++ b/src/asyncflow/schemas/full_simulation_input.py @@ -2,9 +2,9 @@ from pydantic import BaseModel -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import TopologyGraph +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph class SimulationPayload(BaseModel): diff --git a/src/app/schemas/random_variables_config.py b/src/asyncflow/schemas/random_variables_config.py similarity index 95% rename from src/app/schemas/random_variables_config.py rename to src/asyncflow/schemas/random_variables_config.py index e15d509..d827b92 100644 --- a/src/app/schemas/random_variables_config.py +++ b/src/asyncflow/schemas/random_variables_config.py @@ -2,7 +2,7 @@ from pydantic import BaseModel, field_validator, model_validator -from app.config.constants import Distribution +from asyncflow.config.constants import Distribution class RVConfig(BaseModel): diff --git a/src/app/schemas/rqs_generator_input.py b/src/asyncflow/schemas/rqs_generator_input.py similarity index 92% rename from src/app/schemas/rqs_generator_input.py rename to src/asyncflow/schemas/rqs_generator_input.py index 4f217e7..f0f63a3 100644 --- a/src/app/schemas/rqs_generator_input.py +++ b/src/asyncflow/schemas/rqs_generator_input.py @@ -3,8 +3,8 @@ from pydantic import BaseModel, Field, field_validator -from app.config.constants import Distribution, SystemNodes, TimeDefaults -from app.schemas.random_variables_config import RVConfig +from asyncflow.config.constants import Distribution, SystemNodes, TimeDefaults +from asyncflow.schemas.random_variables_config import RVConfig class RqsGeneratorInput(BaseModel): diff --git a/src/app/schemas/simulation_settings_input.py b/src/asyncflow/schemas/simulation_settings_input.py similarity index 97% rename from src/app/schemas/simulation_settings_input.py rename to src/asyncflow/schemas/simulation_settings_input.py index a9a90a6..7f0d145 100644 --- a/src/app/schemas/simulation_settings_input.py +++ b/src/asyncflow/schemas/simulation_settings_input.py @@ -2,7 +2,7 @@ from pydantic import BaseModel, Field -from app.config.constants import ( +from asyncflow.config.constants import ( EventMetricName, SampledMetricName, SamplePeriods, diff --git a/src/app/schemas/system_topology/endpoint.py b/src/asyncflow/schemas/system_topology/endpoint.py similarity index 98% rename from src/app/schemas/system_topology/endpoint.py rename to src/asyncflow/schemas/system_topology/endpoint.py index aa40e9e..aa91c7b 100644 --- a/src/app/schemas/system_topology/endpoint.py +++ b/src/asyncflow/schemas/system_topology/endpoint.py @@ -8,7 +8,7 @@ model_validator, ) -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, diff --git a/src/app/schemas/system_topology/full_system_topology.py b/src/asyncflow/schemas/system_topology/full_system_topology.py similarity index 98% rename from src/app/schemas/system_topology/full_system_topology.py rename to src/asyncflow/schemas/system_topology/full_system_topology.py index f70b16c..7ab91bc 100644 --- a/src/app/schemas/system_topology/full_system_topology.py +++ b/src/asyncflow/schemas/system_topology/full_system_topology.py @@ -18,15 +18,15 @@ ) from pydantic_core.core_schema import ValidationInfo -from app.config.constants import ( +from asyncflow.config.constants import ( LbAlgorithmsName, NetworkParameters, ServerResourcesDefaults, SystemEdges, SystemNodes, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.endpoint import Endpoint #------------------------------------------------------------- # Definition of the nodes structure for the graph representing diff --git a/tests/conftest.py b/tests/conftest.py index 39c8b40..968d835 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -5,18 +5,18 @@ from numpy.random import Generator as NpGenerator from numpy.random import default_rng -from app.config.constants import ( +from asyncflow.config.constants import ( Distribution, EventMetricName, SampledMetricName, SamplePeriods, TimeDefaults, ) -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, TopologyGraph, diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py index b46300b..2c94d6f 100644 --- a/tests/integration/conftest.py +++ b/tests/integration/conftest.py @@ -7,7 +7,7 @@ import pytest import simpy -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: from collections.abc import Callable diff --git a/tests/integration/minimal/conftest.py b/tests/integration/minimal/conftest.py index 434f9f0..812ba5e 100644 --- a/tests/integration/minimal/conftest.py +++ b/tests/integration/minimal/conftest.py @@ -14,13 +14,13 @@ import pytest import simpy -from app.config.constants import TimeDefaults -from app.runtime.simulation_runner import SimulationRunner -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.config.constants import TimeDefaults +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.full_simulation_input import SimulationPayload # ────────────────────────────────────────────────────────────────────────────── diff --git a/tests/integration/minimal/test_minimal.py b/tests/integration/minimal/test_minimal.py index 0ae77c2..2a82601 100644 --- a/tests/integration/minimal/test_minimal.py +++ b/tests/integration/minimal/test_minimal.py @@ -18,11 +18,11 @@ import pytest import simpy -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.full_simulation_input import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/integration/payload/test_payload_invalid.py b/tests/integration/payload/test_payload_invalid.py index 09249c1..fb700b4 100644 --- a/tests/integration/payload/test_payload_invalid.py +++ b/tests/integration/payload/test_payload_invalid.py @@ -6,7 +6,7 @@ import yaml from pydantic import ValidationError -from app.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.full_simulation_input import SimulationPayload DATA_DIR = Path(__file__).parent / "data" / "invalid" YMLS = sorted(DATA_DIR.glob("*.yml")) diff --git a/tests/integration/single_server/conftest.py b/tests/integration/single_server/conftest.py index 38f575a..f45633a 100644 --- a/tests/integration/single_server/conftest.py +++ b/tests/integration/single_server/conftest.py @@ -16,7 +16,7 @@ import simpy if TYPE_CHECKING: # heavy imports only when type-checking - from app.runtime.simulation_runner import SimulationRunner + from asyncflow.runtime.simulation_runner import SimulationRunner # --------------------------------------------------------------------------- # @@ -38,7 +38,7 @@ def runner(env: simpy.Environment) -> SimulationRunner: :pymeth:`SimulationRunner.from_yaml`. """ # import deferred to avoid ruff TC001 - from app.runtime.simulation_runner import SimulationRunner # noqa: PLC0415 + from asyncflow.runtime.simulation_runner import SimulationRunner # noqa: PLC0415 yaml_path: Path = ( Path(__file__).parent / "data" / "single_server.yml" diff --git a/tests/integration/single_server/data/single_server.yml b/tests/integration/single_server/data/single_server.yml index 4072f48..c6ec078 100644 --- a/tests/integration/single_server/data/single_server.yml +++ b/tests/integration/single_server/data/single_server.yml @@ -1,5 +1,5 @@ # ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator ➜ client ➜ server ➜ client +# AsyncFlow scenario: generator ➜ client ➜ server ➜ client # ─────────────────────────────────────────────────────────────── # 1. Traffic generator (light load) diff --git a/tests/integration/single_server/test_single_server.py b/tests/integration/single_server/test_single_server.py index 498a7a1..4d55310 100644 --- a/tests/integration/single_server/test_single_server.py +++ b/tests/integration/single_server/test_single_server.py @@ -14,11 +14,11 @@ import pytest -from app.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.constants import LatencyKey, SampledMetricName if TYPE_CHECKING: # only needed for type-checking - from app.metrics.analyzer import ResultsAnalyzer - from app.runtime.simulation_runner import SimulationRunner + from asyncflow.metrics.analyzer import ResultsAnalyzer + from asyncflow.runtime.simulation_runner import SimulationRunner # --------------------------------------------------------------------------- # diff --git a/tests/unit/metrics/test_analyzer.py b/tests/unit/metrics/test_analyzer.py index 4aa33b9..eaae45d 100644 --- a/tests/unit/metrics/test_analyzer.py +++ b/tests/unit/metrics/test_analyzer.py @@ -7,14 +7,14 @@ import pytest from matplotlib.figure import Figure -from app.config.constants import LatencyKey -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.metrics.analyzer import ResultsAnalyzer if TYPE_CHECKING: - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.actors.server import ServerRuntime - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.server import ServerRuntime + from asyncflow.schemas.simulation_settings_input import SimulationSettings # ---------------------------------------------------------------------- # diff --git a/tests/unit/pybuilder/test_input_builder.py b/tests/unit/pybuilder/test_input_builder.py index 1bdddf8..3ee710c 100644 --- a/tests/unit/pybuilder/test_input_builder.py +++ b/tests/unit/pybuilder/test_input_builder.py @@ -13,12 +13,12 @@ import pytest -from app.pybuilder.input_builder import AsyncFlow -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import Client, Edge, Server +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import Client, Edge, Server # --------------------------------------------------------------------------- # diff --git a/tests/unit/resources/test_registry.py b/tests/unit/resources/test_registry.py index 6aef76a..34154db 100644 --- a/tests/unit/resources/test_registry.py +++ b/tests/unit/resources/test_registry.py @@ -5,10 +5,10 @@ import pytest import simpy -from app.config.constants import ServerResourceName -from app.resources.registry import ResourcesRuntime -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import ServerResourceName +from asyncflow.resources.registry import ResourcesRuntime +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Server, ServerResources, diff --git a/tests/unit/resources/test_server_containers.py b/tests/unit/resources/test_server_containers.py index c36f927..3772528 100644 --- a/tests/unit/resources/test_server_containers.py +++ b/tests/unit/resources/test_server_containers.py @@ -2,9 +2,9 @@ import simpy -from app.config.constants import ServerResourceName -from app.resources.server_containers import build_containers -from app.schemas.system_topology.full_system_topology import ServerResources +from asyncflow.config.constants import ServerResourceName +from asyncflow.resources.server_containers import build_containers +from asyncflow.schemas.system_topology.full_system_topology import ServerResources def test_containers_start_full() -> None: diff --git a/tests/unit/runtime/actors/test_client.py b/tests/unit/runtime/actors/test_client.py index 7ee194e..9188d64 100644 --- a/tests/unit/runtime/actors/test_client.py +++ b/tests/unit/runtime/actors/test_client.py @@ -4,10 +4,10 @@ import simpy -from app.config.constants import SystemEdges, SystemNodes -from app.runtime.actors.client import ClientRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import SystemEdges, SystemNodes +from asyncflow.runtime.actors.client import ClientRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.system_topology.full_system_topology import ( Client, ) diff --git a/tests/unit/runtime/actors/test_edge.py b/tests/unit/runtime/actors/test_edge.py index 644b078..e180bec 100644 --- a/tests/unit/runtime/actors/test_edge.py +++ b/tests/unit/runtime/actors/test_edge.py @@ -11,16 +11,16 @@ import simpy -from app.config.constants import SampledMetricName, SystemEdges, SystemNodes -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.full_system_topology import Edge +from asyncflow.config.constants import SampledMetricName, SystemEdges, SystemNodes +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: import numpy as np - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # diff --git a/tests/unit/runtime/actors/test_load_balancer.py b/tests/unit/runtime/actors/test_load_balancer.py index 35e622a..41902e0 100644 --- a/tests/unit/runtime/actors/test_load_balancer.py +++ b/tests/unit/runtime/actors/test_load_balancer.py @@ -7,12 +7,12 @@ import pytest import simpy -from app.config.constants import LbAlgorithmsName, SystemNodes -from app.runtime.actors.load_balancer import LoadBalancerRuntime -from app.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.config.constants import LbAlgorithmsName, SystemNodes +from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer if TYPE_CHECKING: - from app.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime diff --git a/tests/unit/runtime/actors/test_rqs_generator.py b/tests/unit/runtime/actors/test_rqs_generator.py index bc76f4d..7130306 100644 --- a/tests/unit/runtime/actors/test_rqs_generator.py +++ b/tests/unit/runtime/actors/test_rqs_generator.py @@ -7,18 +7,18 @@ import numpy as np import simpy -from app.config.constants import Distribution -from app.runtime.actors.rqs_generator import RqsGeneratorRuntime +from asyncflow.config.constants import Distribution +from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime if TYPE_CHECKING: import pytest from numpy.random import Generator - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.rqs_state import RequestState - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.rqs_state import RequestState + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.simulation_settings_input import SimulationSettings import importlib @@ -63,7 +63,7 @@ def _make_runtime( # --------------------------------------------------------------------------- # -RGR_MODULE = importlib.import_module("app.runtime.actors.rqs_generator") +RGR_MODULE = importlib.import_module("asyncflow.runtime.actors.rqs_generator") def test_dispatcher_selects_poisson_poisson( monkeypatch: pytest.MonkeyPatch, diff --git a/tests/unit/runtime/actors/test_server.py b/tests/unit/runtime/actors/test_server.py index 9e7edb1..7085e12 100644 --- a/tests/unit/runtime/actors/test_server.py +++ b/tests/unit/runtime/actors/test_server.py @@ -22,19 +22,22 @@ import simpy from numpy.random import default_rng -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, SampledMetricName, StepOperation, ) -from app.resources.server_containers import build_containers -from app.runtime.actors.server import ServerRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint, Step -from app.schemas.system_topology.full_system_topology import Server, ServerResources +from asyncflow.resources.server_containers import build_containers +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.full_system_topology import ( + Server, + ServerResources, +) if TYPE_CHECKING: diff --git a/tests/unit/runtime/test_rqs_state.py b/tests/unit/runtime/test_rqs_state.py index d07caa4..eaf752b 100644 --- a/tests/unit/runtime/test_rqs_state.py +++ b/tests/unit/runtime/test_rqs_state.py @@ -1,8 +1,8 @@ """Unit-tests for :class:`RequestState` and :class:`Hop`.""" from __future__ import annotations -from app.config.constants import SystemEdges, SystemNodes -from app.runtime.rqs_state import Hop, RequestState +from asyncflow.config.constants import SystemEdges, SystemNodes +from asyncflow.runtime.rqs_state import Hop, RequestState # --------------------------------------------------------------------------- # # Helpers # diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py index d785e3d..c0f6b2e 100644 --- a/tests/unit/runtime/test_simulation_runner.py +++ b/tests/unit/runtime/test_simulation_runner.py @@ -15,15 +15,15 @@ import simpy import yaml -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: from pathlib import Path - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.rqs_generator import RqsGeneratorRuntime - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime + from asyncflow.schemas.full_simulation_input import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/unit/samplers/test_gaussian_poisson.py b/tests/unit/samplers/test_gaussian_poisson.py index b2b3c2e..4b3ed80 100644 --- a/tests/unit/samplers/test_gaussian_poisson.py +++ b/tests/unit/samplers/test_gaussian_poisson.py @@ -9,16 +9,16 @@ import pytest from numpy.random import Generator, default_rng -from app.config.constants import TimeDefaults -from app.samplers.gaussian_poisson import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.gaussian_poisson import ( gaussian_poisson_sampling, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # FIXTURES @@ -99,7 +99,7 @@ def fake_truncated_gaussian( return 0.0 # force U = 0 monkeypatch.setattr( - "app.samplers.gaussian_poisson.truncated_gaussian_generator", + "asyncflow.samplers.gaussian_poisson.truncated_gaussian_generator", fake_truncated_gaussian, ) diff --git a/tests/unit/samplers/test_poisson_poisson.py b/tests/unit/samplers/test_poisson_poisson.py index 00242fa..fde7d04 100644 --- a/tests/unit/samplers/test_poisson_poisson.py +++ b/tests/unit/samplers/test_poisson_poisson.py @@ -10,14 +10,14 @@ import pytest from numpy.random import Generator, default_rng -from app.config.constants import TimeDefaults -from app.samplers.poisson_poisson import poisson_poisson_sampling -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.poisson_poisson import poisson_poisson_sampling +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings @pytest.fixture diff --git a/tests/unit/samplers/test_sampler_helper.py b/tests/unit/samplers/test_sampler_helper.py index ff44c3b..f6b4241 100644 --- a/tests/unit/samplers/test_sampler_helper.py +++ b/tests/unit/samplers/test_sampler_helper.py @@ -8,8 +8,8 @@ import numpy as np import pytest -from app.config.constants import Distribution -from app.samplers.common_helpers import ( +from asyncflow.config.constants import Distribution +from asyncflow.samplers.common_helpers import ( exponential_variable_generator, general_sampler, lognormal_variable_generator, @@ -17,7 +17,7 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.random_variables_config import RVConfig +from asyncflow.schemas.random_variables_config import RVConfig # --------------------------------------------------------------------------- # # Dummy RNG # diff --git a/tests/unit/schemas/test_endpoint_input.py b/tests/unit/schemas/test_endpoint_input.py index 76d22a2..3813dd6 100644 --- a/tests/unit/schemas/test_endpoint_input.py +++ b/tests/unit/schemas/test_endpoint_input.py @@ -5,13 +5,13 @@ import pytest from pydantic import ValidationError -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation, ) -from app.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step # --------------------------------------------------------------------------- # diff --git a/tests/unit/schemas/test_full_topology_input.py b/tests/unit/schemas/test_full_topology_input.py index f6bf1f9..4e27562 100644 --- a/tests/unit/schemas/test_full_topology_input.py +++ b/tests/unit/schemas/test_full_topology_input.py @@ -5,7 +5,7 @@ import pytest from pydantic import ValidationError -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, NetworkParameters, ServerResourcesDefaults, @@ -13,9 +13,9 @@ SystemEdges, SystemNodes, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.endpoint import Endpoint, Step -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/tests/unit/schemas/test_requests_generator_input.py b/tests/unit/schemas/test_requests_generator_input.py index f676f4c..66ad037 100644 --- a/tests/unit/schemas/test_requests_generator_input.py +++ b/tests/unit/schemas/test_requests_generator_input.py @@ -4,10 +4,10 @@ import pytest from pydantic import ValidationError -from app.config.constants import Distribution, TimeDefaults -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.config.constants import Distribution, TimeDefaults +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # # RVCONFIG # From c9007085c55b079c3d2e1b400090b367096528ef Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Wed, 13 Aug 2025 18:13:26 +0200 Subject: [PATCH 27/35] minor changes --- examples/single_server_pybuilder.png | Bin 163305 -> 152423 bytes tests/conftest.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png index fb313450917caa26e06f997aafe30a87ba8ce39d..575c50bd5c172a3a20475678be3327db586ac536 100644 GIT binary patch literal 152423 zcmb@uby!tv_$|8Vln`kFF%S^xP6a^;ML`>Ne8xUBzu1*ffpIhWSKLos+40=rvUjwlqVA@UzamQ$ zcktF$SIk_$i7~$pJx?ZmGhD$I;|BQ|3-+)#y7z-}slVj<>2eJg>gV|p3ihT37@P|y zv_!FCoc}7Le2y$8D#)s|b2YL{$;`~$#ayuXlAUDF^o1(1*;lS+f=RKPwKvd znS;pw{4e0SWbdhSf4{?LZe}1fApiIGQE74*9RGetcDj$%PxgQOEgeqbf8X7@n~tLT z_kHmREYH-R|L=XTKgHDi@4Jgx_fQf4tN`8tTj2lKi$*%jrafTk zGB5Axu4JLMSFU4^3+j&PNJ3>|j}F({m=dLYCBq{k1cp-L11hYM?PEGIFReQ9*_%zc zCREZrTxb|L5&2NT>v(To*n6L!(S3$|MWUoG7riu~TQ>H#gxILblI}jN8uh@x|(}T)legg4~mO#~z8yd@TG5l3?sgj38aE6yIa_ zw;364K72SmTx#7EPI+Z**tU*YNQnCN>(~A^DH$YZh5c}dsM7T7d>($!OVUSsuZ)Or zXcnTnUI@r!-g$LcX{*nZ+_k&bM2dmZD9~$ZkG))EGb%dbKL2WApn$3NU`6c4&6|!L zwm&|~Z%ZEUPLm>k4f`i&WtBIzov&9D9z`~O%xXVSDica_y&$u$1vY_zB-Lj>dt&=? zs#ic>9!CNiRu@rsay*=RyK2sAun=Rldh=P%x$hlZbx-W4TbWr{T4(tL>T-oF`|u;E zu41CjP*F|ADoZx>Wvklnt{HOZRnwr>K3^%AXuq6#W4zXz$8|+FC^U3>;Y<219K(7G zwf?ya7XpXJnn~NhG0;zZk2at>eL6rsmW5#KpvU((uqA@pcx9x*ZLI-seKtYgAvH;fCAG9| z(k?A0hY&UwgS7TV*PP!Iwomq#xQJ=EQHF+w5Bsvnk2h0K42C|K_WpDVc$z zbGr4Zp;;)%RM*sdQNm&&pzjvrqRv*m0YFDufdLR=8TZ#EH6ga(pD9 z7{|rV-bkS=?!U7ty;E2AA(H{o0-TIp@EQA$a?!NX{X%W~6F+wo^l zo)9-TH=h$1KMQZ#vRZe-IY=$`b{$Sp_q(!^5^;u7Qb2e(VM6J9-HOwrRjxN752mK3 zdNY-oRubY4R;oxJKYm=O{ho8_6fH0Id!4eKO63%fMK)siE?1+V6;8ea{cf(_W9fZa zZ~gH1rgL- zM!yD&!k#^ola|Ib>wfw8^Jj$>N0%|;;|jy|vY*-3Dg*25({1(x4_uigB^f6tCl`i_ zFMlu4=h6&$x71I15toma=kN z{(~yywvZtHnVE_^K^&s=N|bVYY2fC=hpeJ5zrx_)H47yV9F-3b5=VNb`*SreKox+{ zL;m{YX#B(wO4Em=ZP-Og?T-&Jiie)i+g6kN9`9vNY(g3%htd|w)Yki2hMb(-ANLg9 z#NK==UK4lDun1Jv>dkI3R8W)P=-$q-ts!p`vY4`tq8T5JgvR6AdwP1$8XKi`tKG=o zy?a-_Hl{kCH2MUCDSgdXcjo3C8t)7=xA0S1Mgs zIS1z<^`c+A2$zkZGDNS8BE>WM`SWH5Arw*@H|KlWZVQbD&8PY@vcwV$m)W+#`|y~2 zA{&8A?ast17urwDjX;Qwc;MjR3|71I!S6M4eJbWtJPR$pv6z^ePKMCiMCr~2l1kPa zM@oc1hQ|_JTplhXMcyrlfP&j&>)}~RFPc=}V-Y>iWr2$Vp2P$M1iQP_k@myZWroluMkJcGtKE3EJS0-wrU;%te?IXpL9em-F-4L0fs5Mm zMQD1}@3zdpyi-izwi@JqLN7!T%W_-#Xn)&&dr@s`X@K-*BxB2kNb!KazWaH4HFQYx zu(#)d&=hx!|Jr9DUq@+Y4TShCvY%9UkH)Za(vFlQ-$p8 zo}Ezb%uw7?Cx^wED~2>7hVVvhC<8(wBGZKIygZX%E>#mX)z#vyR)T!cJ;c#t5Gw5` zgLp1|PR;L=cHHl^ON>HD7(NT1C0RLwlFK3>5JxNSR;cK?Qg`ChAh=RKO~S&=?CsXbVpzkv@`@;~!0OD$MK;Kv1r?swju(oQs zbQrtiXqxH70LATzUNNOkds0Dw`ppF}FaB`d{O9>G}?M^d3A+54en>I*&GFsZla5TnH z4;cq~+S?nVFWlrdY{b^Bbb2gSyRqRwd{&qY-ou`jeGlp-ksiE|K7sRrw1ov5%ACEj zX%Ydq^Ssf*$*uVVOFZ^dH}W1-QEBAsPD<*RSW?) zy!)lS{Jcgwf|?Z-RjUu5(DGpyFnMp?Lv=qINI-6HWwdHKUdLu~EaJ(N=8qQN?53It z&I;RID?EJ8ri$$tQl#YxT@q~}MgYtx{%fkNSuw3@h7x&onPC&|#mkqC4|mr`Jmu2K zBPDidK7anawp37;W7z>Lq0sllXT)>0W@MGdZxihY6-+VT5kiaT!}F0Nj#-Tp<4o49 zoSa6eKUq1i#$e}ThOO9@>vA_4#NEiY7yD&uJhppFt#zumzw6NO7-7d>)oHz2Y|wz| zwKHVCFjB!MXfqOKp5l)CpvpxS_Uhuil<{zeteTB$Wi?|IxDlvnf+alJd__(HA~-b~+8A0b^nx z9Jfgw`_tQ$V?dwR!nMPI}3x4uyGv6YlilgRV;(OGL85_()-)(`QTK7Fc`=VaP zZMrP~2=-j5xH;5Nbx&O#7ZnyB9`gXYfk@bsCpRE0zT~J~=}hElG9BYm?!*1jJYWu# zAZ=g?XR~;(5rEC5RV)|$CHMko)l;+$$?yWUBdxwdLzx8WtG`x*rlj7sAB}7VJ*YM9 zi04d|ufb!rtv3xTK6ve2*iK z3@%=}#C-WO9=(uFGwh`wlg};&T(qqQJ+{Pam=%9~Fn%%xy|4vPQzX!Y^ME`(Y8WA| z$`$9HpK(coVoLi;)Hy~s~E^VV=!3oD>x`u|s-4#Yba4A}nm;_*3o;CntX778?TbnjZ2` zK?`h!{P>;Zpq{i7UW@cS z#9FOEGp2a&XnnLA`g++{M7!AR)INGOGE#E?)|!vKebEG7%}A{dVCMQgqM#T0!Xp-6 z-r$@i!Gk7#j{c1CC?s{Fgs0%f=H@zVyJ2$}dH7`<=lO5SQo(mJn(khQbWO~ zcOCZ@g6@F;GDLt#6m#X2mXQ&VGQaukEV+p_gM`N!lF-29!&ee6>m_X42}T0ekA8g2 zp7FL@o4CH>2+GZj_Lq+qs=ol-fvOM{eCfC%b8DWns`|d{*bnue&cbH_@06!45bMYe z4b(BAt|bdvMAo^fM_g?)rjf& z9y#AvS3l3jMgW+s3GQuv1M3tD8c&5UDU;+`L^ycHAcmbb_=V zWb~$^WUubzsK->t@`s?;t{qS~ELio3=j`mP8&tC|d0KpGn{J3|)?l-{Hi;xTp_zqA94VtAyE zHlzVWmQ(3p!u+xDax5>W9lIs~cmUNU;lR6}VtsYd^8Wq%_&(H=2a};psPa2UMUMtJ zKRy~D;o;%Q*^&LU9mETvp9TQ@wCkudwR)bWe<+g=4QL`HHWjl}A8p4ONhNpBAp#JP zi3?(4^w8%T#%eqY^;kOqP@ABY)l z_%lSIGw(@h0bKWFVc}t(PT8IQy+=bIE~U87(Q@dPlht^lTcOK=YOxM1>&^8*T!h?| zSwTOIijMY2s4{>95X|mYGbMM0K>fo+v0u4j4^0pO6$d-ZGN56sA0Mn%J@EY$#eD0| zoz^a)@hAJ+OVa?vTH$z~0(!G^G-y&Rw_ zaz+=L)R z3q%`)XhkO^go3E}!}J-b1k7(aA;IaOTuUgWh||K3NP`qw2-gDXh^cDV%#Zuf2oX6rGgx7*SFr zJhtkQZUd47qCm*O=G`xgJv#c$r$ICTlEiH@B0O|7?sKrLS#HPdbF{4iLd%VN$t`uc zSJZ$l0>>ec@Z5nuhl>EvsVO5bxE8{b0qX{LzY=ro(0Q+ZxW81e3mD_I8&i;O0_Odr zsHi1eofl|0UZ=fIn=(EqZY4Q0rKvr1T5lLtgq>j8%&OExXvkya`%CB*wYD)CL0s;9wA9NxmSpDJdurQczK~ zj(BZ$DY>`^euK7$tT|vAikhnubY+Uur>9gL+mU3>wPeN}cZyGf z;lAMxfM?J)AtbeEc$sr4>|h2q)OdgEXA^@XWMLvygcvq9HuAhOyGiK`!={iYdIi*H zFQd%h&tjIb>O0}SJiB&Ap}-{~;=|+ca3j#+5^plP2UU1%=NOCvWi(st%T@x>j)Ic1 zOgj!iL;hoJpia@tA zv(ChZPZAE6))VEAtkV2 zuR|G)92^}l`L1|FT~dOyp(!5fe4Clc2L;X)*#Ln1t?ypJ?BGL3ZL?IzYSpSF%lY#G zBCt9>&|_G{#b0LY*Gcl(j)^CXn?5i7W>(AtAc0l2KuZP<`HT*Jch6LFXcYcoDK zQM{mph$f~xW6Mo)WkY)Xv4m&dxIZLi8PE}{K@`>zHADFjDc+4zjOym z0EB(E8g2rWXuXi#LhxSxLg1PacVxAGJT6{1)_k)j8v7Xg>Jm25%S z5-+e|?&9?;f~&S30Dqy+kw^7FCzoh=>RoptkGKE8i3r zk^zH7xDXYW-jkr9pld>rWDX2OmCQj9wvA7P#==092DprDn=k-FgCr1WkzE1N3g|;~ zB9F1%@u7PIFYHod82JS*$f=xaii>+&ls2+ML8^ZcwC&G)ROWL&epzb%gW8NIeNB zQ$gcAKrMlY(E`1<(0W)9I9Y>bi4k-b=(F?jNdk|kfE$OxUrr;hLMBXr7grpsMxQ~O zK_&{mhwFGST`|tnEW+%OK%XsB($iy-~hKmjSr z4XP54dG}cux-^>b8Uhp3tn;ZcAl@pspT4WB`=qn8)9>sRB$obM*Pe3ASW7`c0fmAN zhVp}yMeY{DVT2bXjq9NPm7~<5?)@mU?ZGKP830mDl=K!ohM5FZF zdv7ik^UmB$t6MgO?`z`_<2(B8sooV*#5bbW&YBTiOFU;ZuMwU8Rpov=K;) z3@PN&?-ehfMrVy5Med7p|MQR6&?>C-;YfMWK%EqhHEJpPCSwDVjsP9-&pWoaw}Xrz z4ZP(X(GqC2fL7+>hl-3t4Lq&lq>p*0J_pbDq~3IL`lz@=i9(cf$j&*vVg@O=ul_nO zt@rAPNC2}Xrwi;iyfYZLlRWy&$6ouWM(!)s7%UZk{i=ejoFBWJ$SPI#=FLZp^@OCP z@P7J`s@&GF1XW8IJt|&}NuYAzJU3Tn(rfB({TRglXGS=gI>vK82#<+5jVRvGTSt6BFT7ON zi6|&Kwl$Q{xvr;5dPlu{`NXz%FXUjvfO`TuVrYZGwF12wZi}xM5iJQp&K0IAs;Wg$ za^cio8@D}kgGmZf9gQH5d?fV#NkX{zlwPl?0T1!CeG(|y$UMglTCPa~w59A0vg_~; z`-Xrpa)y7`>_2~YczFT1$A1f-{J%N^t}e{|bqGWmn7DEeMr#BSX|PA1p$uQiUgutL z_O}5)fiCrbo&!dcxjEy8N~}*@*)wB`j|p0;qb)w&QYJ9yK$7^H3_hZ=!BU!^c8+){ z=~w8GRb%=E#3;a*^hp(a7?!l~ep3IvAMY;`T%zv`s0-_~2V()wcm}Swu3pDyzH#M0 z>jJIVMz}6-!7dGI?@}DBaHdX<9Lh)-EIo(c)3T<`^bQB(WN7@K>NVv_o&O21pjr#S zc9<(G(&m0|hsj0RV9Uz0u)5W|{~8}moRpv5R8V4d;!Rze$denC5Ex7CIv*6ZMDnk# z;zr2zf+o00)Wqp#BmExwB-}tf&StP++#vdIi9)|gMu;pJTa*OyCUj-vjo5x*jSkb&4`hH|noP60OU zji;qJu?L;gtxqL>E35Ud|8w#hlbYr5i!U4vu?X>r*WO%ZP3RbW{%L2tt8i5Y^5Udh^d6Rp5rr+bM?= zs(noPIt$W6;L7R*nG;4HsNqh(2FVc*#LPTQIRj1r;NyY?0LBCO@t#lua5^NQw2qiV zTcF`J!G9rW9S&V~5)fP~GysIS9&8Q%lg0xXkc+n-6F4W)N4yIx*49Gzx%mo4kiEgE ztP7O6l}3LKWN>a`dO@X~&6ydKh9#s#9vz_n=%F`dWh*#3v_WA96|2x{h&NG*1(7O5 zL_{<{m=M5Z3R>kq?jv0dVh@J7r%Fv*aa9i_jhQ^=pDG1j=R)Hv;S;F;-nou?m1$TY zzy}E^x{Dh_pyotJMfpKzorcASbeT;{c64{kK_N8YO)5ttlL%mGlfY7aEdHsdZ&$v` z&ls7!%`|{42_vMOBe?i)#{7;OI^$Jap31r-q?Gj`1e%vVIY`X^JCy&Xdz_%BM3-EL1|K4+-$#x|CWmDa%l<7Bl?&6S|o}1 z7x}icda7lPez)?5ujZ7Ll>RoD%ooGfnan&(Zs8jMK&-uiTzd%h9gwFzh|yl)NMcM_ z{*sPoB}jkgrLaHz{DO!GEkFlgWwr6iLXW`j5>T%R0~sWenPo!GiHd5g4Zl~v0>&0@ zw>1N3>}pH6+WUu3Usx+zfLQg%5!%3&My5XL4*T7EIFt zj-!y4ho~y`mL(2#*yhmZ!21-_gojaYC8%g-OZ!x=z&AR-tJ2@7=uraQ&#t0@|I=+Z z^x{h2@~hY@(X{kI3St_d&^jUZT1v&KUJ0nrKD#l^+z zph_68j@2O3WYDLAVM1>B^{u?Fon>PX0e6y8qNp=Ff>@D#L+mfuwCev<6}ZwxVeALE z-yy2M)cN|Z2+-fJgrq72PJyZihXO{3A-B(=Tf%mi8DH)06j5iY6cbehPIh*7qQIm0 zbHbDq6oJ6?4FP2!E&~uD*1;NJ_~WBRt%UHOYWPW@;lZ=GXQ!c8-*CK6T@N^&iKf;2 zT@^SL+HsRBoqh&@)xmv48Te_T^OAbOk6RzV{L0>DOb{t@3u4m#r=~IoMHx^z{o8es z8~7g`KkG&lHUV>U-GA+t?(01#=!pE(PLBV>V~8Cv+F)=~kDOCC`-aMW*2>J*rnJm7 zC+`1h=)*8ZXM*fxUdPQMsKql0_Z?Q>H3u1ued32a#*crO7=Q9#p}!}8(~w;{pAGtb zVy#2jIX4^>&ZRi`QV9MYXLZRUt8n~3^CAC@o|2%xt1ftfI7=jc(YsH)Z2?~tidn|@ zsuITkj~99c8NOwFOu*b=a#Jr_agLG+>s;O2)6f9Q(X2kRzW;UOxDivWb*VSIl*|pQ zjg)&6aU%}=LA@vc?SkY~8a@^CbuKpc``Zp@>NlkRb{7>SggKNf&u;sngjyuzwdW zvD`1^4ZK)|3XR*nD=(TyPyXT`J85ZYK&G8X35kjLC{{MM29VT(pl%v~?*)lb@C`hJ6=A`! zfXFVFU|q^JGXF4I_Do&n4ubghKaX<8`cOZ=Zvg*!D+i}bKpAw$MWKC6_dX^&m zU2J7JHj4$^>fh6~dv;bN0E|g#?wfOo!uIFyyb{Gh4VFBj&QrevKW@G{oN=3;-{LDa zP)2`CPG*dB)!j7(TFn8fKi&VFv-%L4Do^ZM6Twmzlwqrv{Ry5&pC2%+4Zp;Q(Q)YG8UeCp|G3&0`jt#Y-UnVWm_ABl8^L_MT-o$MyDDXzefb51UwkE8ie>kqQn8 ziun-CMFgTT#MUR?)t61b=5sJaNu;$PUpn!LBG zHpxGm6@!>}Dn@aJY5_%qLeUGEGLPUXKN!$R#f$73s;W=XaTT;4eWvKEN)=Ca=>0xH z2V+Na{KKrq*{P#lN0$4dQpK9=rgd2PIJFDt@bGZ$_saj+i_f!xq%JgKhXsmiIE?ku zLA7XUX$j!SLuM2rB3dr=pn*8i{Z-8X54grZmlvt_g7Q&ul&vxr-32ni-Fo&8m7*EOfF#kLCnv(Tl(^( zp&^ZAb>xiTh<7NqnEsAfa`5uizxgb0YHBJBV&F=}JfjmR{V?U1I@+Rux{QSab%_k( zF&Na!b{k-$e+jAg#VcdSlkLAx$w%jzB}8_#Q2*6imm z@f7jq-;UR4v-BtV$rf&+OKiA>Esq(_SNkq!(JE#Q$ot~yUZG_7{<2y!%6NO~&Tlw} zLLuW~L}^FHGKeaK7;$Kbai1_rF#@ASx{_H>%2OC4AhUr+@G$iL;j(FBPn^9QJ5O=v%k@s@yUfK#x@?K6oZcR#4XavrDbVmFUk*4DrKfT{<13u#%1B^4N_ zEL1eaDh9M11BLj@5V;89^PnIH0)_-#TL{BOfceK=*a3ppE-dcsgMTSb5aF2eGlG_{ z@(&j8$DguqDLBVg>%Euycv|EB>#tDhn13@s43rm$wl-3vr%ttiNEPTh=H8}!^?b80 zFblRE&Nlm4gC^gFcjo<%ROLJfaWgNaw|wiCuRi#w(7eGm%C@;kSKm{Adc01(>hRS2 zEitJ159ROvtg z4?9LB@=XG~LzCr4tV#BWIZCD9Wv-IZSuRS@N&iFgD>&WQ?MYFJmz}Rmzm;FBxbH0T z>drB9-{{5OnIAVYMTFfd+xQ$eC2X1|&F~AmCVhOwN~KMugXUMs-XNaNKfod1Jw;(; zX@bN41PbY`F#hR$*J2nx(#AboA5G5s{31=H5Px0j9eQ`-qe&UMxa#o_>uUBO7wGZo za9XD?bd?wHi_Q2_R2e)JLmyoHd>8kh=MH9GWM(u==x=(E=P-%y(Viv7Da+g zf*;QYR%DQ~$r%`)4i0J}K3YiZ08?-rgu)c`0yuG>(hIeMzB98VbKwt)!w!3K8hxl> zJWExz=)HdB>u)!eOqayUvqJnpR=?Q{LS`o48iib?9IAU)7edJ56B5!PGs;hn4|qVk zZ8zoRwX%LBxfS!$k_`lE%IJ zdcnK5`0nWCOvI-%2OZx_&T-UEE9U6YpJxG-5<80>hbw#eyQK!z%Q;_l3pGY;(ksyMK~$( zlH;>OAzLEWQci#V!@tR+F07Jih zt2$)f0uV`eZ2Y4I1&rKkeweANt6L|(%TB1otHj9%QQ@2$gO#^B_1)C$o8EH_i$Xw3 z`-tKtbF;G6s>zs}SD)W!robzZ^exQn5a(0Jq19BtqN47|DZEgCU!#4IRmYz-BV+OG zcAYQI#t4ALG|yser@hEc*N~HE3T>mK$*d&DgE+C}L{if|k>(nS{-#A0qy}G{^K@Sk z89WxS9XkuQ1!0dZR>T+%T?u66>xECc%w+D}BNwt&cW~hCPL%>*zV}t3vhN@T@ObW6 ztsr>rf709J|ApS}s{pH%IhCZYHvjP&fu^*-q|o7nN@#0Q4sXKl=JyKR z!kH^)2uqo>q!%RpC>LsT6c@cvOPxu4h&fY54T|u5Mc=f%cC;|(-ZtbW zEM3auOq1Ls*-i%Se-TG96-S01pE)1ay&0r$k=NLDaYezRpY!}%wSJMSk(k~# zyGbgR%1^6A3a!F($u_VwSLW*po%H)JT^D-nsij5h;NSqI0Soo1qeJG-9TEgBefYqO z%-ROwX&6LffTw^6KtLDMF1336TIQ9OFpySRa0@VctzAbulmpB;>?yL|B!{%Cpjiq=~0rG!Jj^|fgYW>3v2$J(0Ahzj3TG1c&O zCMy{bqf@E`o_da3^w>iIWdhr8Pf$xNy(Aa-%qY;?#xjO8P_)N-Hr91UGa=i^Xdvvt6k&T()MBkn|)58nj?9y}{I0bOLC9sk4B^fcm;Lu~p8Z3LkU zoWN|F8KCMRJ`lupGuKHAvE7y$D*w-2HVuE+u%i6Xd@FY1XeRM4$E&`U=|Fu@e`|L) zKXx2|7_i%x^8!!lQo|KgdGv<@uW*U+_BWlPm*$6uA9XUpgLWx}*3{HW1}!1Ches3 zpJ!(h=S{qA5om3Dm>BTRdH9e`^M_4t%UMmAFK0E!&QeI3ncYkDpVd`%*9lxdJoxWP z(d)7iA2wDnH67YTYFSl%8J=wr2w&nsUCrmwCzvaBKh0rXwvj`Y^OSjWRV&1>T9l=M zOd7}0zq!uIynkF2g~J!}}T-kjZD z$X@mTLQ)Ya@kWmbL+OU6qfi`>>0^E^T7T zi{@9bCrl!loQ@}wQNB3SQiB;;sS;fSv&(x0MB@hvh&l6jBIHw8vANktU8YeiE;gN| zIIk3djy0Apf;mxxOu~qLQ7J>+MYs2{#5enYxfO!)m<6RVpm&i5bU#~8m2U0b^x z{d_*VGf__>^Vb99<}l9c(r z*yAdh^W5!>s&BOtv7Vo?jz5&t-Z>yhSZ4oe?xQ+RGeE%n=3Jc6d>yCvs;Bhdhl}&E z#-0a|egu)F+EZC$Wg8Fe(qij~i_bVV!a%*$@hTIiZ8rO>MtV7S!;)#NZ8QAN;M(y1 zi02#`mQOMtipNmS6t9UQ@5o!?^DX5D__bX@Xy)ZAU1Nv0m<-xwT@SM=G^GG4OqD*~ zJ2<9BU%A5GCly$4k(==vuMAIW{9Yahq+|AZ=bYSybq;Bdy@{&vH~+c_X_prw>YTv7w8_qd;|9bKXZb z0!})CnBZMNNnHVsWuW}wqnztjiBqq&0@`Z@@}yZaH6pMJLdS5XjuR{&y;E!9m@PT? z5=(KkvQd5{IQ6mqlG9>sr1&=91^g5Y4?QLiSjZx}_UvCe>A-*=zp-Pvj-{m1z+(F> zg6Yh3Ph8WKxh+b-@!@*$g~8i{kCHqntd4F!S4|$8KK0&(oCEFqPR(7m_DA9O^H>ol z5*J96!dG3_OCJsQ92N-UHI-w3>LZNb%%_A{``s3!maY{(FVl!fm1pjLf>|xbd3?bz zZq)y7`t^^>lRg}R^Do)Ot~ zS2am-`ltu?vqbyPlGR?0^KaP@v?I?uVqn!)mpATtEHr#Sc6}<6nBzS>h}6AeLz7>1C`V}ipy4jrD0=7u;ooH5kceqZ)4-L4=hd^hpVP3OfZ z(=MsgRQ>65;+z%n=&IK#6XmR?h(E*-d~r`s!aXL|KZaUemSaOc?iFBQ%~o=SZat5 zP=3NsFow?Huc})M#caok7@W>wx*$QEVIdtfAs|J@B7qmbCL!q85~)(ylaw-7|H8qM zF997;QFqiut@f3sb#hy&r`R2F{b*T%NBt8ZQ1lJl>tJJ~(}f88NQFG+i_XUK&y~Nwc?Oi}IU| zwY|Y~FGPi#+{~a|O4AJB^y(@3hX=YWsB@zH*ze*5QQhwOySu~WzPRPd%{6lpJE zjV@y5tRQ-@oi?wwcnt=MyWH9v3dw*dTH?mPC5DeVTu>_)fa${0fd&>*Ab%YUS-$;ZgolK+FC0 zgNwb>X;Mc|aNbeLcI>^uOtCxd>b#Vb&EZj$r?BCDj1CaFQLtM}ZDPRlWJ0%}>O@>9 z?9{2nRd12MdU4be@k!Dx>tIgbVowOrHs6P{q*x}o_@ZUZUN1_1yq&9$`Mr&J)5J#Z zi?x;fUtG`azEOD5p7x7J!!mg>his$AdQ_yx5|h6qn#}P2$Cq5}6GN8K{_o7z%k6#| zpYhdTz4X#cujvd2`PC2>T+F}X%jub2(~;OW(vKvtpQf6g@3#Evp>Jea*26?-f{s$S zcL`s+|L~x5Hg~sf)ch{!0{D($zeG9K$)p8Qtzj(o8XE@eDa!LOaL_~N!raDFkKE-! zA2Tz;xmfz!IS3^$sa=ds@5;$}3-IYk#l36zoNU_O`7Cy4eOH^)^DYdw-GNoBq{rr$ zBR*F+dx-=UIy>-xhA-phW(q7C#hF^v$C&@ZQN*-`q=8$yRAS09z-#51jJRupu#S4cz52>$ zEdO~90@VIk4wg6Wst=#uQX$o-{XyL^ygYp7KC_7yWw&=T`rzI`eY`HJgE`!Q&AsO=54K51(`(HOHeN-ROx7oQ`A8+Q? zd|1ksAYIwnT>Cugra8s;{g|&Me5YXwZ@1OuQP8boudzrs5{{h|ak~{lG~IUd_ zdi2B5p1v*5>DNK+vk7Fe01^N7sz*f($^#iAr3p`#7uLnIh9WO7p{cVf zrFI>IO5~rlK2J`zFYpv}l^ThDu$dV+|EN@>#`aQM(ew>+bV?w`R(06Zei_^xx_?F4 zFP$Kj4n4uVrWv4j^|(n;j5?xV2d8gEbC)zFg;Dz5T=B-+tj5I;`YuwFEar2;EsHPw z-#OvG7E}1W>zcnlU6Ht1i48R?;NkW^Vjt?~Pj@r;uzw@Atv8;!RG*M3696$6O0K`K2gb z-J8F*kcL|p7VfqRy%9{+-W6N|OY&FEf%x=Rh1#$C3@PQ~7sKeRjJQeovex&2s^j(T z3IeKH(K`)f97!m@GDqphSPjm>>ajhZo?Y3eb{>=)ty@YpTC>{ba@Sw(RNt5rFAmKu ztvgGM6@q@BZi*YP?r5<`|91!wmYS7apZW1)wa}%77Sh7nk%Sl9Z{v$|K`-bclSYM+ z@)58=BweJ+gcn(?hrN;=FXx*k% zS6h6D9T7ry`ZutiG9J4h&9~sJ>+ZH*90Kdyqq!I2&xOXpkCg5FwzG$UuS{A?#l=_H zoNTIJy!oZ?KJ(1g=02O_bMKB8mmDc>IiQ0RcZDV1YkZ>5F;%^beJyJ6&3T;M{BHkC ztQlGnW>+c--eoOcd3O*!Jg=79Wa=XT%UkKbBF2<*d1|utN#p9!_w97-gE{@;vCj3& zp*jC7Oj@@uBU~2}F8~elD*PE~=^{)_d|E%EQ#y=fq9Uxh4Bw z3cYHfPf@QT6}0xO`_!dzjc*0Dl0yCyE45_POqns;>x*z1aBSQ>T&cbgybpXnL@ zMTa{!_~@GnSqN2(vGjW9T4~IZ+c&jeKIbphN{zkh!&y}rVOl9aSaBBOf8NzmFxl34r>2LHxDdSnxPeI>EWYm z?|E&oWy0J}s8+A^WwqHlT9$Fu0!%+!r}->_7d}u1q(8jMOqTM|+S?iLRX)C)p+T|d zVri(2oYfRa7TuhTg-leILryK2UMGeYS?dBN={qf%@~> zVn$QIQQ-jY$?;w3m8yhs$q+;Afgss47d7Zk9Jz_N`gKl^cX(@GGTM8-0*1z2t2T=U z(Zf}K+xgvC6`?wT0B)@Ref|)C&tFayq(j@D@+QXD4j5P5vIUL@hm`>hIsZPMCgOe<>|k=1f@hutr$z z&cSJ-N$Ua~zP-oKwGQ)Wd(`kty6TOzF7g(hB~H&GeBFnYe#xCX~h?`lwk zt?eq_y1*q)hX&uPBnE7ky1&nq39yMi_v~WgUAE&67)Yr->C4Kc)dbCior~)xIC$2( z#a7F`)Zw`w_+*x85Pe$U+3Iz8&{yjeHS@MK~Cok(GTE&e2YDiHD8?YanDZeLmqWI12F&kG5 zKGz2$;M#h!&_LC68*rh!hEsWy&R?_ z3*RzHl~^ds4k1L=ry{tf!088{EU-Dx9Hp&7mnH^grAQs5YDXEwfGi0XAN;wF$ESoa zQQ_{SXIDOFKk|PsE&%40>lV)SRqPJh*cO;t5>HRo*yDySvZP=sE>?e-zq=$qa#e7? zR#`8neprghc~7@Ju>Af>rA`MtcUo}IJ4(V|p+u*E0{7P7H0ounxhJ6>M!uHE;eq@e zOKD+ODFQxClMu3;L<-Ak{rUAq(oo&GNk9!EVdNZM_9vUGHG~liVb4j4aaA$Z+tuh< ze99l#MH1`>8Db|XPc7Mdp;>mvx!S~6+D3Uci(l^^Xzw142h1J|yF@4FD*i+V>Cy)* z4a-!BGSuhfaB8r z8x~bCI3ijwBU&13IImvCnRuDdVX1~TZQ(3%k+4lVb$#p9e~q*Dx#l%b@hySqV<5R~o` z1nKS`kOqFpXY^ZUDpC#aL&x$-#CuXk(sHn!ntlG=&Yya_?A^M zlujVJ`F6Uwa;PjcfcnX+te z>f>kxm$6z*qs_%6Gi&0Cy2CD+tD@vf23i+lw`dh}=jLZqm%qw~&oX6Kd|oWU9ab@w zi?D+U8>sjj&!X}BE6-%pTLON_0`bsfXxPVyj!Qkf8*d$5W7N#+kMeDf2a|6unmh;S z`;>@{^h1LQU2N{BT@l&vWM&tbXu4|pTzO9GD4i7#J|8LZ=iOWW*GFs)dbYw*YMDS@3KNEkgZ6U3Y6QVg9_U!)5^qw?<&BlRhe8xM>(FVfbI0pI?Zaaj@*-iscJp2_Dh1{ek?}&ATWSisSsuQ!0b=O_Bt!n|;jgfKU<$onJXayz zMW~w$!>pGJr%m_AcPZ1;BbY*JB$4XA%FQLwj`ZUpDw>>oC2wx{`mp11+4#;87VLWJ;D>F-!@V0lZ*6PcL+X> z-tslmk#UB}@uT)*>ap!OYrFx2P>I?ve3Fka5${_ngC;+Yo$y#Hv1+qbE{$5})t$|u zKbzK%o^N+6DiieG)q^?Fwld|ENMqvB?2#(F!+m`nz(a5F_%6J7`@`=GD(@BoJ>G3f zww;Z(O5u|-fu_b;hfRXgf-3e;Z?TUx8)N)MkV zHhFv>H^OJTK`m+=ytwbT{*f;7LA}VnTR$6rZNJCpT+UCW9Wn3e;{c-5H1@-~2ylsx zd8U`VIlXI)E*H_6aw(5j4*3Oq80l-KZoVpMwd4(LoTL1{B4o5*-cgbKNqq>nDETe1Yl13QiKZbMM?4nq*ExLp zBC&iLcNyABAsktD8*$gO%2$MK1)l?NZ)?NC@pNef9nb*AhnI**#8(igRV7L%9{{U9 z43hQyKdZi-D|M4fO&-sFv&SCS;ZD{QaD-uL3V9w$xb)`9AsPZz@!t8iP-DDOhI_~# zc~PJf4#*u2$ijP?UiYw}b)s1AT(WQmck>X#_r4)RyMUfLTct3?8o8(I0%u&kZz7rz zqkV#g!frJ=o3x*o_poXMmP2p~-dt-qtHmvhtE|#1Kfk#vd)Zq;#sR!^fSHN+^S@{L>d*72_2w$;(pusgqp^M~|vH_%9FT>G*|Nm{%K0GICSwsbX+ z*vG}iE&m)z#v(dCI)VfS=jU!YIXO$9#^{8~3b0;6*wp@AsT0!C5ybQc0iU(iVhatV zTvt^ksi>^vwwz#lmHapqM**-oP;kiD+JMj(^05I)-wLn_Lhur@k8c_Oj>~55Bs@Kv zY_LG*fzi9^pB+$4dk3z%>Psxj(V*k9g>s2IIip2egxav_WU-_ z*RlWnW=`_z>;is!{nnkUr2uU!hDWl~s*i83@DJmo>0>Mohhy?^+4M*vzgH~E)AKE2 z;;#CX2!DNBK1I#p&weI-I}JH`M3Ga&kccW*DSDCMx;Q3Q1y+iX87@uO6=NxNxBzJ9 z+<*+t4sg&Qi#jm;O9Bhy$LQ#e>oagO!0b$9A(!h<05F=VwhRG2Diq)g?*OIL@a_Xf zMhxJ7l>(MQ2=@V5kfDEz3z+fzsCgl|)eCFwW)CFR5fXOe=`|fO~X1BGs{&1-slr|r|cZgd01;fE6 zmIRLCc*gZBe2u9vB}`Z49N~KZ6-MpmcuELQ;e6zm!-YX}Pid9dZsS<7BF_e!Y0Fqr zHb;GDAd+&ZvJK=1;#lkw<5MAVHMe)3wzG$FbFDP52E9MJmZy5^*{ImJr`q9%tci{l zn^POgN6cClm3V~+#NyMd`HN@F*Q_Q$KS>df85L)GR! z*4OQi$nLOv7k`xGD{+ffyQ4k>d20270w9*oJ!6{p#()7IX*F-oTpD7BzoDH=AIsl6~NMLz*x=ui07(wl9qE?Xp;rOIEyF4UIO_ zt0}@oc(j-IF(nQL{NtQ6VR6`utC*?X%Y&qRH-Woz)wpfzLYRJ&J|Z30!kbRq-+Y(; zykdrz6B4F>=5$H@_PjN1Nw@NnW=iPJ=M=%Rt1`(`fvanp6?Skuvej$7UUohy;nir~ zj?j&q392nWPWe`;*jc1VoJ;^7J;Fe^Pwk2=53wQ|?>$I(p)&OlH{; zoh`L0XjNFL`Qgd=PcX0Db)H)piz|sen%h0|rd-7~p|-L!Sfy6I}xR zi)wW-&@H@56}Us^b>OdW^BuVOynss(GQeQqQuqN0hT+B0I&hkZlUyHuU;K~M@o8wV z8yKP9q2ln$myN`VV;9y{|1U8#!HJcov%R}}E~Q2bMN^*3ZF=#`EPF2j(D~nTe1E_l zEE=*)_3ecXLPu%2U_3I)r_h}O_X(v@0_kfW@q}a;isyVE&7xn;N&Q*CGD>XoUKndp zbVhheBG6I0GC8+5#x&d;%imM3%FH1mD4qKd!cgMKU2l+gIZPtgGAtgo4)4&X_9U>r z+7=OFg~B?!u7sR9D3( z4S2cfyp|bJzd76PxXhC*45JvtJ^O{r_IbhmTGqG>{u11QzUsFtvn(P<=3U2ibf|!c z%$2w)d4dUkDzrwIz^ z182IuRlv(RQPaHxI$CRdOz?7YWy*{0H4oG6^rlJMFJ&88QGn3}Q*u|xBb!C*w7cN+ z)hJ4yLCsiLq+tv^&N^yIN$#tWkDL)30JT_#TIihR&Ees&K_;>HoQ`WzPEYbc&2Nm6 zIeW13xE+88OhKcoH&t~cypA{z10x+`8jsH|I|wkB_5HGTw;ouk=_Ra31ZSqCJ&)&- zc-?Oe*TZZ%8pLW&Sq|zrTi@%R73P!J{&R%zzBr>;5@JeL#fWdeCm!_Ou(Gj zT*^Rh*?tL0-NLqBltXqZivm~B_205ni?7iVMLO#~a(T02E#yXkI-mR$VL*;Q$VK_v zZpzw@nF=NMQLw$+Jf?by7NNPz4NL31^o1M7P{r2tbI#1?Cr!+1Z{)>Q-37>H#a=s7 zU)4LXu!!nmUb#CJ@e2bL-9VE*il;7(OPe8S`eG~vZv$UwJdF_Jv{<2|FJmC>e2O4% z!`AbVmEY@y@40d4GT7khQL~K1Ij?6-uT~4I4j5Tn-F&aj+DDx+VVk96RqCaIOS-F= zbPasUH==MVurO=)ZkzF}=-Krc^6UwCn=7PItVRN_OMl%+Hx!~ayJ_2PQ8{kWC|eRZ z!(8&iV76RpZjJ>DroZW}sjgK(*m22`U-g161ks+^$0E)a`$U(V;`!({O z+~6@>(>PG4D)QVj{yH56cHl!+hZ9C8?%VZNFT8d8;(SqEtx@N+$@93mMAf?Xt2=22 zkQqW+L{8-Gcd`f&WYG*PJ3Sn+Dw3?c1%xKVbqPLDo}c{%4`b zllqo%GQV5I1^#lRt)}e0Au9Nsxct(jJiIp;pTeVp=A6qnDCVcDoP{~AcfAB=UTahi z?THG0&$u&8_4+t5Gsm~{dT;1grAHa6be#M$T0-G6?9ebibxhumR(uIEZQ0E zi_9I{YML01M_oBpgKK*K*2&(}RlR@aFnGAPm=T`Xajk1Bx9hz00k|iW96H^H@Q;Va zgXwtM>8#(Fpy!l)1|PDlm0J&H73^Ed$R@N?m=sbwFADw6X=~t`u%BhFi((18v|{lg z*eP~t8NL_jFPolzm-Uo?qX^`2cvO+7up<78{enQIp}H#RurWS-SOSaXsXO3*TGe^< z?7ED3m9lnm3asJ{wlcWv&4mJR%`*5PN&xT^gky!Y&JY|5C^hW>dS~?eKWz!#Jm7cN zt;fIl2<(pl?&Yvg0Pu?t!ZX`?XQmp5oI_gzsBG)bc3gyOtfm7XlRMCNJ%z(b0ptr^ zQv(7D0GP*)3xKGG1Mj?JshphLNS*y#2ml0kNn`>tXCObM5OL#*_?9eKa^xe3pDKn8 zgD`|=Hv?9t@4l6lDdE!X2~qbXOnE;63OPiG>p@u+F@h^GN#~gB&O{Nh;e$bDw#qge zPK+f%!ijw2H@LggBpA*36RD2pzs)#cnbO^n6uP2T3UkjSrfdxzz#GR^#?vob3MNrF zVaw$h>$Z(n3uBwlL8&9R1!D71Xit;N4G-ToihUD zhm^-CLyhTluGfFO?eS0bT9zubCCwSiEOB5&9 z!Df0iL(MjR`C2etXAC_E09NzU2wh8->K4o_JvnR{p@lGUZTocn*-AX<={FP^hKh{JyVX`Wo;lO&Ug<0au+u9HnAvm% zX)uA+Bk+SSZp)TyPA&Xk^Q$)MC1TTSp$3-4j)P?cRDJ0K7~6MsMVoj40fVerU~;In z8~s<_&@chuG;=Pq*3e{`OTP`4AfW=rvZS__OKtvBt$OG8!~jYM$m}s3HwGjjhWX>W zhk(#$00fpWKgd)Jx_D&VdTU{S@EpZ9}5@3j{N+M!fjHIUJ<6|Nzo6a->h6Jr`|9d= z81e{0tawnpWSJ@s6LVpP4%&$zlN`0Q9`N!}*puy%W6C~e!thZU4v;AtuT_mc#8<#2U9 zZ&E; z?Bk@<9-Z73srwThEo-}Q&ap{tOLy0H4%J7ZKvojguLI{`0D=RUEq15Q*D8Y>Ek)AS zq56xlm;JD;dw#joYR%9t4%iOv_3a3iJ?G#bsJUztbe0Za`bjZ*c)54*Hv6?mf?eI;jwibRS)s+vV6tf!f!lH z>gQ{R2Y*_yd2!O|sgePorY^WOIo-{9vE#Fmp~$*_IkD(l_dU!6r3eDGgGQQTAK1(9 z0$g{wTH{}{89fm+GXcX$L*QQpYIOtv8y$eN!hTv6K!enq2LY-D9nh16&V+zh2;wk; z*{%{m-~&?2x7{oC_O{XES1{r-lIi6@Y&~4R=t90E?i-(v%i>NfSo%8E6D3cLd|on? zs1__@pt=pbUpo6t&Hnc8m7i3Zh#!z*Ewzgc)z?J?CsXy!+w&?V$e;Z_sDT8rgQX)OXzNoqu$_mIuUPEE?8J;pZeO{gkH|Cs$L>1 zmjca_kD(T2Z+BdELs4)ZlV> zid`htN*jH!yJu0G?9_iq6c&)(Ir-44YXE zv}h+l<2$WKUUFU{BHF(%efxq^!)2Jjrh2ddR^?uX7wkRjzRBVjvKC;FI#~g?sJMq$ zRY3QM;tx}t;G=}NEtM$HRF(19_!2 z(9Mdss4uH&Znj@~)xE6KqeD}o_sI11I_zo_xNmyGjuT@J`ZU~6A@t^Cy7p%<__rC03)|P}+d(Nv{jvmqLas??Zn*ci{L_Lt%{5E@%%Tp#|Y<$Q& zDgtlv{4;wU5EiULaOH6P^{_H@2_2AL?+qvf3Xm(;V8UexN-~%qBvk(n-n{o__IVOF5Cf0ylWOVB7k@~NLe^e+nEb4G-U>!?X_paMG z$=g;i`PPCRu{YXQ*pW($8}GTO=4#|^gtZP%7r^|by-KWP^s)?Gy^5iBU8HIWH{=;M z_Pm8VxIjSoK_qnNp`zAAcqcS5(_}n;9PKLBxqBefwzIQdSWs)}$R+S`zoqX>^o~5= z%){qz0dpqc#(vW+>yINb?qeK%5c>lWKm^*6jFwE?itFegIWv(?UXRlc*4XT@tuui;-KL^%2o6 zqdb1OCirYMt#PR-GbQ``?qfO3NtOeQydocw^KArf&Sn(ho*oTqKP;6M8&e66UJjc9bZ<%UnVequJkRM2T26e55k7GU zvqi;CA4=1w6ALrof|Y2EWBSOJ2<>x!ZL_WHyuBl;Gtf-t%NceF2GQdU@1=6bm*Hi- zG|jppa_c2Y`RR!tFr2K(I4>wYuUW5?)O3v#n$H50Oib#QQ+sMDO z|Ax!lnLU6&#Zm4hr@HGcb+%@+fV4!r&vG!i-c(@+;tw~AJyMT3P^LwI~SlI(8nBvhAE z&BfzQPpi;lBIj=C%2lWFh0QOHB-ffj#+PsykA#>kfH(V&vTQ|Rm@yCgR7;CpE)nqJ z|4hHj+4Cp5gMh@nZ{s!e%RbUUu8`tHlJzOl(!An`Rl5)FJSXeBAv#Q)j^4urT8Dx6 zLa=2SHtnOS$XLXf95$y$>rKVQ?Ry)2igBU`xEZh$_~8@x}u z&kF^9=8lw`&p!utmC}huE#v1haZVBnFEO$;bgpzK*!)gF(AW}4d0Jt_`@2}6zp)2- z5>pH}eOBcfb{hjpuqtLZwAqJy3qzkC_~?=)6l3}!uT_ZiV?A0n_BFqAj&tS|43_VQ z7moL`vwlJSNWJPMftec9GZ|+P1nNbgM~>9C!!x2*C#)0HRHeVTVdu0_Q>FaAtY2rv z`8 zY;55|kJ@Cc@Y&uT`&ZclL#RVKJ`ts6tkX4;TtuJ~Izlf@#E2bFA#MEL~-pBSx(MF6* z7-2WQkwfbO9onFiu=6K%?LR6P6$bDMa$JwSiN~+>)>~FmCz`yOO-u1yyD#OO`JUKr z%zP@`sf8?4moCBnEe%h0o3`6tbB+CHZ>Cp2n@f;0^db4ga%QOpOHyub57h2wF?B2H zB=uJ0!kiRr&Vyy+d|gwH;>C(A3yaZAp3OI9tuTaePLJ2t+&+SqMJPFf2mDsLy(vOX z6?}(1maQ@31r8YEfOB9m!fc4H-ola1oC0MLk>wbp zAzwqPoaW5vEFTuQ?Db)#gKxUE)jZz+1Z+;1!Dayp6Y&FL!FDqe-L*xp;}2?$|16s@ z^~X$ne54@Wj0pgt_6V1N>J&^|#-d)76{#es`Fi%QYi zAlItOVzgWa-k23YIt0u^6W?lemp2&A3if)1z;nuCr>X7dfs9a5aMi!Qs`o$Mu^@1VQ~K3T*UG&Wf9X zpwHE1fV%a;)83$Y2NWY=M1BE`dBc1%z2F&HEK5p^0!t$n%*I@kKzW1ECi3sD3Xk{g zFmjiMD$}*_sYv-Z!B_SWSCX?nY;)3_H#U~t;~sfi!_qq1Peax`mu_iR*Q~h}WKnS# zOXJ#=JNuT*3$u{G|`k)oq39+US#-uGUdDKT<&J7v8IrE*$*F z1$lRLq#cq2W;6h=KY{#!#dCU(N{TrS{Y%h!)=bKegATzm3*9(YYM0Mn4B>{cnmiKs zhtl73h17{efD#)FL`zwWeiclT+s63r?3m_pyd0MA`mr5bE2&*xR>RhG;TuG$u~%r( zw~X1SH5RT!Q@74ZN4jyyWEA|1{|53G9lljiq+#p)YNc6fTim zBRQ!>=Y>kR5lpVkI*^tP`unZ0Lgs~Xwh#bSUh^7h1gD0FB+uc7Z3*E*>r&+VwE=`|1qu61-E!3!dpU3fuVG9`ej8k zDb1D+I$xW+&3b@1*jNsQmug-6EQa--G$Y#2uNsQ~J%Mj;yF@XDV7RrB^NpD~)Gh&D z;R6r%7~d_brvpTI`!J?&L4Jjtt~8vedk2e3>9ne3B$N0GH~;e?>+VL|Ef|PN00Wad zP;v@Li@F7a;Lv@2ThBD%f7O`{KOwv~n6my&~YwC zZ24%7fp^rb3vWK8A-{K+K)g`UrxF#hp6FU*@pKf_B7GZ&mp&JFANqQ(oqb+My?+na zr0aPiA)P_AjvD4>swxCU>vKw9!9>rEi|)QZL`0~luy2)ej09hRn_kAkXC7XL`8HWK zN{Kuz`z@5VvWmxBFr50a`YjNtmh0D|bj`Z_rR?1oY+z*dzfMa<$~Ecc#jw2@ zR?r$KeesRcd7u488XPef=O)9N3C206pJl%IX_I#BI}EuOEp(Ntb*p`GG@VEggavg& z;#<>JVg(-W(<3-&I&q?^8?3=9#@jYOWFJ0I>$GDiXya~QnTZ69zQgs5yn5qrzGZlz z4srAPju+sJkjIb|r}*6=>$R8IOfx0;+!IU@CKO-ZE$9eK3+@sR^UN`9=^ zo8Pt_rA4i#_C55bsqqsG34}tOp7F35P@ z>(VhuKbIOL%bM=fvRbuv>ClBT*DJQyM7M*#w41SBco)>a%Y7`(;AaZgd*6z8?xV(5eErIeTRFOrl*c)L6 zTQKGuCpPXsU`6dCrTgdsg9nIbC|OssI_3W&=D(DF6p}!x!6Z7M{)K^|-LU?x{$>0w zU9P|U>D(|)dN4HR)&8P~Sru2Z0-+>A)b~!^I75CqLsQ%{|%%WLMF3)hyh0OOF8sq;zq@!dnd!CM-j&+YIZ!wn)Hp;)GM~UqeC# z39q1VOn@o{v2$2pX^aX3+Fwk7Q3pqqmz+k0ZsMbRK0}|d^=X9kz6cPuan$Okc|Gz} z9203eKKty{oIbd!|M-Qe*}dbLkG?lXI=;!~^Q$ z%u&tdayYMwain?IUCl&OAg z3r*CXJiauy)2hhczW>9DF!d5L!;jQw4d81pRtQrJ=v^jkV-n3giFo$RBW&j^VQ`NS z?R`%0A<7Ca8>Z`r3KU_-_xMj93I-Yljz-rRKOn`$GNCXfR4&2J$`fqRC^vXEFlhGK zOw*R4aF~5|$S&qsNVTY{8rymI2eecML1|Dl4^S9FBLMUaUfe*CYKRZm=zz7WM@B{lVm|_n$sJH`fC+EI0HPYCy!-|MfgtS`VDY(iJ$^B)V*;pc5Fyc1h({-K z)bjuY{z-%2HgKS#zyL%UN|?E`G;tB19DTCm7&Ryz>_2Or`6agb$!TiC&bSXgS=~^= zeTHU9w);jKwaen#o8)@%Dp42*L4?Jh)b%~e_o8ZFji)i!&+UvIFAr)pl`JGBzj_IG z$rG9ChXxXi7?fQ1iOo?q_q6>uyjAk`y03k1>$C(*R4({Q%p}r2A1Z_9N1&IRH`*Pzmq+Q4&@&JHOc>yU#l70)>REv>s`p?3` zyoHa{yC?j)!Gys-PncUQ;xuL|kDImw41y*V4K(9I_U&noVLAiZ#? zdE%E7Gb<~i$^DqitL|td2E=6j1Y-#(POx`a4?OH95cmtFLO>C(AY%%GZRHmg{kj4P zkt<*{D+Qi=3-ZR(3ShEIwvX+y>2XIfK&`X0-T^jwb96ctX9#RihKS};uRPTp0aUrMs1+Ew5-*nbdvb!lJ;sk@1D*^qA98K* zi)QfX*Gg4Vu>D+u4=vI&8UlP};})1KD(G_oo@uYUa6G28Uq?7Mu46x`FpQ_nVxx^m z%~XHdjkqzz9l;!@E9~M*sloE6u(Q7{>dBNoKzmQC_&Mn-54u(h!}*u5Ow^0}YPPrc zJ*yw5bY73E>vaK(3rLm-27x3H#RzQUBmv_`40+|)HA@MSu@g=?zH#9~X>5NJ27t{7 z9|olXE4BJ~L$OH|Pi&~c{@K>Z#AF3TBR#FP8G5`31)Tv^KsRe?69h`tA1{DIk&^$$ zk5IxjP>kz?5Y_+*a%jBtLgx@fIjw-O9|VZG{gjsW0RX&LK(60&3k#Mr&(Z1^^1s|{ zh+Oe*X)MGSMZKncZ*cax>aHFlk!yO(Vo={8wL@^aW7DD#RIA`FTioL{S^Ts|!c z$!TdA+X>Op*%MZxKKKMWg%T+WE61 zf1spKsAK+WQa`B@?_ezckgQhk$kAl*`L&(0lHyen4I_6s{~Ma9#ZB3iUmPDhpbH*(-S>9w-Wl_QD(0b zO^f3POVV?)=JjnYl{~sRtUy#=Ooz&b$f`|K3+SwQq-i%9wtqTSC$RC{ER?cm@=m`vH3=GlNGEZP$XWw zxXmb^oU_h|4yf!f*vU2yQ*;psVmi~5l=PQtV|(}z4J6A1KsgvXHSIoRzQMM z2(g6@5Z&Yl((Md@@_p_S>^KqNNV?M&f015hB#P>DE}{J+6>sUlH`F$U`U3!Ok;aLe z){58~C9hy|bMqA*o~@L7$Lx{7u3?7cG5U(nR)=pmSICIAuGqM&cDU!SV)>~eDuUHs$Q-zPR187 zcdK>JIu|5*a*pLE6m#`%a`-VM_!|?Wl{L{w<-76qo{pK^UOrk>bZd2B*DQ=`Pm#5i z^dpe<>}f-~1m0G#9eQC2a3`4Z&JT+F30%c~ko7FOI9TNGIHv zavKYmRl*iTefP{>0dtVkp% z6s}vmOf;xUeJ3uUCB359Md$A3*@9=OS|j%R|JQ-V%gS0TXE6QJ+@j@Q#yq1M-`94;rq_ei4>^=u=X5U}p=gEGWib~dh zr>*}~TT18AS3wV;5B@G7_KHVN3R^gc{Rj05PhLNu+kP)-Df>A(!0Dj6aXLnrkq1#1 zL2(#>6+UfDd+kNwir;yBt*ScB4cv==5ody%!`mb_*zNGb&HABp|3`=AN1Qm46LHc$ zG_L2;?M;;UKTR4qvg!HqzGUX8*m<`If5ibar%47SYI2*-0m))6-(3`q0@NgjNr`&1 zc`%8EQd4Xdf9|*>4PtV_@{>Ag^07#cQ18hG(yO$y@&)INLyH>F?oL_=@BOw-dw5$P zu3-fUOePoKcrga17f#e)t{FG&%N$_arNw6GwfPxPfQ^tU@@kedky%U-q^+H>a#f{q z*)vm^kwGodm!;})3sAD516L=YLh@nhGcXB1Xod8Gva*8&pMbv?l0?q&0Er=C5y;mB zky)L^86ford<7@oK(Dg@{osE^6agY;HrRMW5f|B?$8#CA{yV9N>#nzWy14hvvy6Sj zi%=#M<%3<5GWLRfMmI{aI6e+?#Lo09K?A3c$_cYaBb`wy-F!l}V;cIg{o5c3(Ry zWlkbYoFIh3!retm#B5%j$WL?SI(dzDg|5yK9u#iAW3lpj`)^yzPwz0I_7(1M-F1TI zfQw)r&|i46Q*8Yyo+uFHa|GP<{~Heid_~7!92)j|{D?tR_b!KqD-7V{GVbIYgb=sz zweZqjYkSb~>&D7@38BSdx^L=og*Jv|`BmfVABGT4Frv#nkY7RA7cke|d|a~K5$)2= z0CYO$;;Lmm%hRlv+7ve1V}t;&nQ3~Aww9pnj8V3;hpOR_j=b^9UOz{mPg_PJMVCvB z(kFVAD=s~44ao;COj-;2d}ye;mu^yCb03FO?}^&4kKm}YC8L$XOlz2^+Oz=oq+r*@ z_HH;0Q@AKcw@){Cm$Vr=>u-SRfgjM#hYo$nF5^DNj4M7R0F|bS<8#Q@Hkzl{9iu4r zwO0(BpO)tr^un z)3*o}drF*$Tn!H3k8Y|rqUrq<#?7ES3|@c31j$L4Z0;iIaz<*42U;S3mS7G3!fm z4$~JxQKk7fne{D}NiuboOWl^vS&r5fi>NWTsofb>vES(On{7mv;{~Kp_#TMkT?P}X zbnp+UsRe`9+M)D+oO%$GABv;{PBUaC-~|Jta#!WBSU6Oof@D6JANbTklP&@fW4qve zrURt&P|F6DxDdq|24!iJv1#~$ZV$pJ^b8JmQQ0>6PwINgAB+7>n>nn;q;-QC7#N(N zwIV-&Of{&c28hr$==;E#f!^Tm^Wfx4KOvF##d&5sGY4^rjG+AuYOCry&U$R?1=UE$ z#YoTtpjiaxCH}@OP&MhPOtRXshns&i+>lq2{&iec;5a<{rBTqg$R=`{{C z>B^G*BLFTqz#l*E8=X_06gvH5v{^@_et+FGQfoJ&0Qi){2iwzds3yryq;FfYcFM!# ztR-&e_fntyPFJ&dZ6@)Hj%p4r8Dey?< zL!ce89`X-)Uw=P02=D|`bttD^63mjMq%BQ0pwN2=jfx9|+aT;481mXvY+HK0Y5#x2 zL+(;@Lp{KIq&#pk0YoRr)I$e>^^Xg0=_DMy72k2h5kIfkcj5+xBNmILAjP_IM^q}O zG^h;G_6#ML!&W%f>2dkx;)Y<80meZF(-8wvuaV80HN ziod!q9KIZ6lVTKJr(rY$P;4Ro(CniZK$30!tuU&EcNdkK~8 zWHe~L?~U_iJ_UOkTp=1O9%+Ss_i4!$Tut`0W-n3~Ow_N+Lo%dWs2cP{xjOO=>$-eO zDX{n-E|hpBa5&25S>SJ`cF9WE1knGXmr@2x`uK<~_*_~;$*f_uqosP{wRa4_5)Le$ zXhF}_w8H~s@&aMe+<#m9W{v;uG`EtWKpvcdG3Ruivh)pj{abEa=wQz$H;28#GL8TKYSe!Em%L&va14IF3j%MNn_wbvAg05I0SgyAZpT0EmVT$DUj& zYb*1j<#m1$vwN5tgViJEqkO{OIcDMtMzEhdq}SvzH-q-U%)6ZXiQb6I=K;PbjaKT0 zdyUlMvwN#MG3Nr84`G|m_Y?fP2zqS#8zZdU6Y8BiCv(Q?Z}}-!Dnc@Jc-QS6T?}zc z)~BU012B?B;SEA0W|uY{XQ=2cZ~GmQL8MKbs5`hAS(h0YiYM8Zy_&kY-KL*s3VC0 zc`Tvm8C*#vG{MbypbNh5C7(F{*{2yA!Llhk%u|_$Ti)`dI^A4N%ZM8HNU;E5)6Exs zP%a&qD^q5;rytP32EHXpREIl_?YFOLbCGy_mhBxUP*h1gq<+ z4*EE0?#$9KZV_Ri6HHEIt*WMrwCNMIHJNsI`;x44@N3D?G98cR$U+Y-W7mAK5ZMHL z?w@zEC;i3Ws%2TpNG|F=2YB0xnBhXarO-gQ%06Et!E;@M`W5{Q;hj`t*nv{UhDKHU zwbQFBZx%(9xSN(LL5jqZ5LkSmMd4rNG+HMRX>qt&gG@=&VOlUOuuyxI$FYQ2M!{7k zOtI&$Ff@W=4F2o4*%vPd7yA=VpQTQ~A^`%mUQ7yK(bIn8&j-9dV(d5dlY=@Yu7cb*pgwSE6hWe>nBTJ=^*@f@4?jbghy&rF zORp;Vs$LB0%$T}UNluBL;7SLk%Kl}5a_Msh5pmP7O|PR6;JF_})zCr{hw1Mpt!%wY zPIk29`Dsu+TgY41v?!OT997uF{PI=e9k7ekKl^G(;ncS;?Mms0b%(M2;p&2tL(s~r zqC~C-vJV;EOhb&0cyDz%>N7k`JS@#B*5R?0$Dk=FX!W$+{uoewDPrnygj(Tk`$8(_ z-0sS9P%O6ZN<=Oa>)qguMX3wQ-O$6GbPt{9Dg^M>bPvDh=G7m^?l zNo>voSDc2;N%NV;iNZzAZiFL8>8*EhJ!3yC8tJj=QsdG;N4T6oWJlna7U3A)SIFH} z^1z=ut^pha>j_#*9e zu~y?mlu1dinPP9v31E0CB)H85PiIQ2Cf)&9^@Gx^Cz*0FZV{_^^~Y*5ar5hQ$x^?W zODhm7U4&9Cpuzj(-SmZJQ#@qOPdrknyNI%Yw=C9fGWf~fUJ#}j=<;D-)NY$S1wMVebKu+N^A1jKLypc$FeoMtVouy z4EjZ83qvSTCHB=qr<~dZi!?v3|8h{&!$e_osc>e9XVc6cxA{Anc^?7xjRpXbqS4~z zo|&>j?gFIgSp^OH*JkT6PT`ZzXES9ke-65AYR~o9~Yly0Lbx+ z*r{Z@rLO0}DApR8^`&(x6Ce!V#QIK zlucd~Q6Oh{R87f~Wl%=AAAD%90X$fs zD8_(6!dQ$z6yQo5}*_4ewv))iTfEla)q&WGswKd4iL6@f0p${ zD=q$<;DduE>%x$K?iWtfm%jol!P8-StM0j@MPT}tQ$Bas>~3k(`@kR8eWb7hcZ~QB z$1QU~{x(wL61K9OpvKH3)pyE|=rKemU0m`@)WEaA^V6^p3{om3rmg)jX%ncM0<(c0 z&JnIa$O@&ml6CZ=q65ln{@cdb+^~GgZ<|dRshi2Zb6MY##a3)zmoWQNv|`i0(Sd90 zD5X00v}_C$Fty-cAaE#?r0%S=8I+B%`SCfdy#R&HGB^aEfhcqs6mXx&V~p)_w)X)7 zA876VBgG$p`Jm>(bE#khD3PI~L+WbZ7m1_aeo1HYPv@;g!Z6Zpf<72^3XGD`A^~j0i5U&?unQx8}!m5~4Ab zl2%$VP~f%&E-iaWmu%B@Tx_J$!as=?M@()wpFFO5lUKg-F#Ox9=}2A5=!;)o&vy{U zlV9uuE}U{YpHtkSvXRoRyOY2=N6z))Ye|Wjt3b$mU63Wyd7C#A6^Pri^P8{_KbZjO z_I;tEjdEoUM+A8+2CAsBML8uqch<~crepalG0);`*=cXXvF*CIRl*cqXSrD(dyMtD z4+iN2_Qk=@wb)~5%l0g_-JDd@qhyxM9|4XuVg3p?eDd!y39L- z)0`EbzdlHxIoi=$CdlBebN2(kc@TwDKx>QV(Nuz<7+%k#UNvQ+9pyiEX5Y8DfRyZu zXMTQ<*!$yz1WQb0yV6wzdu`;8w)j8;UXjF5?P2HUg1I|{afEwJta_iE(6dOv`g}% zn`{15mvp1Qow5uO?ar_f&NZWR=(Mgnyk(0adhh0svgb8w8$1-)vN)&mg7TKQmzpqf z18^TL+qEXc;*bB-E2$le3fu%*FZr(D<}GtWVOzK?wGk@H-@US8y*ZE(v;Q8C7ppl3 z^iE!^+0>d&UXsL_77Jo;}{XdkSvc$C(A8*MMYhUk~`4ftHiK{Tiol z(oNuOcpfwhN#7}9P#B%eY;%t=p+*ARl0CS*WyJ(jKViC}7^%I~O3uwMFmXKjK{eJpHz<+J#h3nmg>)|c)QWh?0#cu*_o6n9 z_@V&uf&efe#dV2IUKA=>Pv4YAV)Nwt)64EXMjybmT>@kC$fXE5Qw1Pjn8>+YFnkq* zJmdlp$p1gbkN}6X-W?b){%%F^Av}EhDW{{Zg&N-a=;(XO=9@ z;-x5U6dJCgCe54NZLq+LLTFQVcZ_ZLaT?$L4MlO{5o@k9_5;Tw?V9vWe^SnZDz?O4R3f?XG_fhchGUVks8StsfN*a1UnAac+H`jM z2>?1GMS{WIi0cA4UV022M*AlVa_QW#+AQpK!m(DV;LVN$&e||5}Fz8;I zQ$W5i>N{g8XTZQkS}?Wsw76Z#0iXV>KNcj4$l8e+TF!I9fBm+gh`X6EskbipV`MxP zJM*dVIXs+T@F)wzO^spr;-%8UL!Q62kcb638cz}r?pEM#=T|OzxDAk*5fT$*QFMM1 zAS%r_Fm^^+uXHRENJKXS6iRzvLf3&7!S^?!?H_(q1*>@}@k2;R;+!h$?0xyKoXq^E`J2(0nkg_f}W?L6)G`ehusek;Ls)f zUPeMV_tTE1EvL4BCwD~pn&iQ!BXz3q64Krel`gbBIHS{^;07UJ6OzCPR{$%TXx9l0 z+?!wwA#*P9tt7&$C??5qw9W7lPS6mga^>i3R>73;PNfnFmYwhg;nYOvGlh=0oP-=5 z8M=YRN-QuEQK#UfZY2_ZOw% z<<;i*gluL$&V0Kv8oM*iWzca&0xFzq|6n46$bg#zf|Ld|F#eBbK+_8%qidWOj1~_j ziz&Q7ban_a2Ijr@Nft@(r=u?7t#zL_0?`eRi)bm}Yq%{d)0=bah0*2RzRi_qGXQn% zr?R_m#L`i-%f5ps`6iTr+-wTbln=|$L*nxov<3FXH?OreaYTP{1PvmC+As5 zMtcPBW>f9%IpKw{;S9dmSv^AREuoiT-DCEqf*sZ90a|zN)_yLJ|2l*=E0?HFxN`Wd zqYXWnd&A5+BX{SiZn*kuBI$9v^s&Gf`Nld5E1wr?@9^dWI@~3D!7s5@~7&1?o6NrL2+;( z;Bf`murT1o0M{3v+T&o7m!mOZ}C4PN58`HBwc;)0mSMRuzaEo|7czA zP6-nAK_T&(sJl2zW!bnJkPKGFImuHd)5A=SEfi+dZu7l?lCHr=$B$_(~vCk4mt z+NS&i#)i$I>y>?!*ErSb9Vci+30f;)C9j>*n4ty+!xOps^!N1=2Xw}|64||DqU?nW ze|V*44sm-1omghWfkAXXBA4ga{2_o9)|$~G(jO8kfWMFVrlx-)6oY`@r1Q-)_r#ZsI}2Z&g5 zYu38p%K!i+5VZ)$u{c6=zWFfT?P>R*^;Sa94(2+yfmLRoB9eSM<(ssp05xPurRk5q zcDCOTROT245*EO#Jw!5B$OWFjjU0h&u9~JrtoVPpx$UO2SqC4`avlcZYT}2jXu#-# z1q>osji-}_K6_PDs0-pP>f|n0LBRv<*bPztDD_GXI{os>h`B|X3xsvlq3vMs%f6~G zPt68DQ~!rY$sFg0X6%1t4m{cNQ4PJ0E9cpaZdl(Z9_+~W>JmA2^wpZBaA_Z@lmxD{ z+Rd%mB0G+j*700D+UiejSU|){Tz4`h)wb7HHq(?f=C+*&6~NxIph;MUOqQq@aS3%T zQq!0FOqxR1*`mYlwTS;~8+Q=2tU#l)aj@fy25a)L(WlUyv4>2wBp5Om>6gbw>^-8p zXVj*EeYr-%ycXuNklcwJpUW%F@Y_IU0nGim7n3#@&}fd>Np%wNdk|$us_u&$_vYW#P=SBUx39=Qt85XiJg~jATS5LrGQcMzWm8B= z{wC36T_Qvqk1ipZ;+6fAbK`sJXsbnWDYV(=1rFJ7uU(wqNfz7Jr1HrUMX|;Prg%*5 z^ja0QImJW9#b2GIr#$vElWQTanw6xv&wTyS7dD|~?Q#C%H;u`^u3FU#pWYY&nqwW0 zDeHU>=L$Yf!rD2i$Drgz1`3B2;hWlOE(vI|j5@X!dc)RC#C*;pE~o+7hS*MUImRvZ z(ClD58R|orr0i>H#I(P(l41Nc>E(kMObO(lSg$lGnB3XhXr^4K%hYxH~ z5bc1tFg2wkH9e-?MC_h2Ap9IBaayR)xfJZW-$NM&AFW_Tw0xh$9*VUsR7~kuL%5*W z;IsW-wzZKY-*5CXnF6$m(%8K-F!}Y$BFI1fZ$GMarGsoHRkiFD+N zJx!~r;%s&U6jt^KasD(<1)4y&t*iCQs#aEw0PENT!uhnNmOv;kgPAo*HdE~#ty(q4 zqo|OGAC*s;IjAaM$6w#7yEiFw_CN*fd?je`s0EWK(y!+a_fv;9Pn<{5LHcA=%f~;u z`{LdyL?-AQ30(guYuySM>TX6 zG;@E$$f(jTBzvRKknBs(mB99GCIQo}=2P?9!gLiuFKfZ}l1U$j1MI1Rr51B#E3a}G z+N0cjU9zXBuSU&`p}qxog8Ee&l|hk{SX-<+@?X^G^m3*3BW^|O%N^*&>&2-;_CD5o zLVR`g!U#%m^Qbn>X#eehfE~6U+}CSUztJCjI77S7SaC5^U-d(^Q2L;7`!buI$Xfcb z{dQ$+1-?=#OW-HsQ*GR<18k*pRJ+#K`4r1_&#psx@|C|_m-G7<&?!VZzh*NOwyPqa zupC(@hW{{@nF!S0BF;LYt>thc^X^11Lptg}gtFyOnglZ!SGVRHi3or>q2uDh15|^P zN$dCEpF$gmM|}roXz+vYZ-sP<^g@Ac>JO+aUV)R}2>ZuET2$Yu=VK zCuTq6s@zsx#SQ$VbM|F5Hct%}cUo@ZV_q3;nf0{w3HlV@smQZHf^#`MGTq*v{O=ng zV14vO=`ZB^0U&i%xIYp3c<>U*d-z3Qr_aAp$&<6<6vPL$sg#NTbh(I9ul{s)0imDB^o(SN=~fM|3D z#Iql@wWLBz0enICx89Yuf10d2fQj+d^K$?d1xeLpz*Rb3<3iKh%NoqU$;@2)!vLBe zxF7o|I!n{1=e<++;2&G(%z=P2%*ULGm5eO#>?H4VjH9(ni@0tsyAfK{ha+^V;Y>#( zm<_9B`2^++><_Aw{*P@Wkt>QTpL-&y|oZ&g3BxG}-tLea27 zAs6LS)vcpy)AsO1h!@|Rl06M;wb#Q9_59x4D?QJ_QRX;Bv6XT9jj4uaON3%A z8#`0$DnH<#LJ^wjzo?ivL~x7)=S>tg+nv&+Eq_(pHwX42RR%*iS>h6PfF3tqUGo@@u;Kc=Z%nTTBNVH z-0#%B@!zPjf`Xcm8J#+VyUbtKt+ymm`yJyGa=tQ-z@CRO2^5fMUnry&;dRBWA3 zFMI-JUkWU+zZJcN9riPCp6@nV&|@|?Kcu)5rdQPzHA;J4SG!_hhJl5(3da2x^@zYX zK~VSi_h))iZnKbqe;|(?1QqKBhu*xpnqSCq6RO* z)#cTzV$0t7{76@1BThAofG@W5?G>k{g^Xw3^y?mVl7c@}goiX(;YM+PN#ksZK!Ulo zw94y);&O4MODi_MBr=zh)0i0if@9$@@<`Z@-Ive@FY$>N zW~inri^xM3os60$&}$}9>!&K6-!59MYLMZDe;-$EwQ`3tKva4p>+MyO!lG&5)#QkO zUeL0)Aoc5?=)6>hh~(^-57=IVF~vHol#Jf*b*rRAFmils^(W%gl~Cm07#zWs_hp;+ zf9|rB!sr@L2E~w0Tt5dGa^=a^2nY}dYm_x#;Lc=m?RG)ojoP#OPt~mjH0G`HgnoXN z&AbsIp|C?`QA~IbdxmC~ZCte-M}GlKW{R3#-@xj-SB5)9fiQNrkd&sap#;yGDur_vCEfjWsieXiJN~LTWbM^&ZhvWZ1(fGxl-q6 zsttAi^f#4KbLPe^b$47dw=ZUS%T4?05&L@@)jO4`D_g=*#FHP$P-CWMceJ&%mVr&B z{pxfFKz8xoMn?8E2ZQ~hv5Ezxcs%=33lyV6kX*3>ekoiot8Hs67wPB*QUxW_9nkVo z*U5@&(&R5@<~YNMXr8u~&Z)A0g#KY3TkMmaP+vBzJC3q%Z)O?#Or|7r=SH`z$d+Gy zd6uAr8Ra!e)hDVjLi>x>T3S3&_s13Khx{!D%O0O_)xz?vUgkZ)HRhCzQ(^5hE0P2Y zUF$T9Bt?Hqvl)lbb>@(X#voy(@0G&{^s?+?j^v4tt&i+;<#qF zVBfW!EFuGu>BCL_-jG();GXM84WnA|$dbkA=sfM>Im^+htH@7L*dfCgboplb5i`YYH5}5f z?QWB_wW5<3WKucpO$SCLoxTh1r3zv(EX_x^SnTAm$gTo@nvp4o6uw zdm-F}t&O$hp*+Wa0K@MdAG0&9s#e6djL#*btsRfm!Tib3M-{YbSV|maMl3J$CcXw= z(Q?rCh-5P2v#f95Dfg8m!u+)*=nm+*E zD>(p_19%}YEASRDNZv02@2SQ1cz&L4DK&WXxvl$2fo9*;MqZet|3sp|k!blNvEEtu z1IGB7oz+Oama-ZD(6QdGYqtY}me=2p^~6W_^}*^pCOtnEn;zN2{<}MV#2yNDp(4qz z&-uzA(B%1;!&H4PLalei2-Y4xLSG)c;;m#1i`^uqJ1x6OMxe7%V!Zj-$NIfmZET0t z^ixifZ2riudlKE&v3=4+Z~aLfNu}F!)@)WEvl;kg1Wy_3=DGc6EuIvN+7Sr0HHv~* zkSd%Cp(2VoxqiDh(a8Da$IHeAZmq88WHqmICw?0sj2pFLsXxH9lIS{E-^Uy3F=Br$ zpb{H!ANo7dSTg3Dv$j(@dl(x0=xH$i=W0?1Qo?OdDXK&k!P#Y3U;Un^cT2=po3BP& ztKPNQH^^UqoT5--)n-JN6TV9TVIKEC@%DFre+O{ZM}c8g8bHTkMB4iL`&9rnMDz3t znY4~<{P~~ncY;9;*9F+rpDqfQj?9;l5C{_Zgk0IZ;@u>49WKlI}fS z3L|D2r6-R;**;gpl0I|QS2lrUBS{;MP;+V5pk_80UFD$GCeEme*NWht5#gDIjS`Bo zX?JDpca~rBfLv7K=s({rRvvK9a^&G9ZKq8v(<5w#EZ(Xly%oEi=8mWIZxVtGZk%m4 zFdhd45<36=lA(vWGbBIsv{y2?<$!-P%)WNE@MiAN&gPhL;-c1l8FJKaM2?fs-(iO|h z%-jmlHBrbpttn$~D!+e!Ly`GDz_1Hukt5^Ih6U`qTipdOYUy)`zyp#N-2g3BPK6~& z`*SE(nmjPe_nj%+m9eciBIcN+77ZV|LoAr6O0zU8h_SH6|HEKYD3o1r4IkSh3#+uS z_w()=a8F!}A=dl2zZ-jDdtKb_{z!=jx+R&iWpBs@O)K18u&}!&A$K%fvfq~5!l>!D z)!6N2&KZGt|FdTes^-^I^C-~8S>fb}1QqoJ`w7alX zX56P4p0`e4$$B}Q?W|3E?a?FA{;Y-4$LBIA+scZK`u;cmT!}w;ISLse^Wt1!2$C3GguY@9{-muKQgduMciqwS{6+9A*&zBz$>4|*KfWR*9*@0 z;~y;YW7-98)>Yxi8$V#{4>R1_mijggO1%&)_bUOj>A3A9%?cc8J_5kB z7<9`UDnYG>RnGk;@rt1+{PxSyPdcEWi*cjTz5Dbe8%D|O-l4wRg`n}!rRo|!I~ukVKoIM}Pn>+Z z(ZM~=McrT;w`Q?^kejH>YA$kJlvFbw|1T(eI$~HkyjDys?QX-Z(i*V25JTRJzPY)D zp7sE(%l)ljUzCiDj8xQ<8HovXn?>4`LDGoy4J9!#FDl8E(XXRUdIPQ z0!qqgT@&BV&GrB8G|c!O^d=LoAlyffWL~{`E59QSz-eE;d{HwnhGQg`w9G}yAU@ljk*`M0s7C0X#_7+Ns06MVhe_k~n09RunDIsol{R0o z8dTbbhN59bjs5!d3pme8Yi|HQ!4;s)!E7HjfF=B$tzt6?IFdyY#Q?PVv&4fZV7bCz zHLZN>GWHV(Ab-_?R|}lMaN`+YBkX4Oqd@Qq((orZHdSoMbR9ZE(J!O@HanvXzu|lz z!)z|**wI9Co{GTwyxFr8hT57QOjR5pQghNIK`~j}UM>@};!birC@s3({h{TaSjxft z9aPHeU^e20K9Nh4q!;2JcbPl5*0$JuFw;a4A&=3}hx%e92hq3S!#|yxmZ@jW(1paYoe~vquXoEN-M~wWVp>Q7>w2g)*0$d+}(JH%4?J5ba#!2mwcxQ zrjdF#v97(EoGPUYd!6^WUQl*&VQ}KaV``8}_#W#Mi-_|izcnEQ=TTJDpI+a9J3Qak zf{fNPpXrnHo?tU$ykP3V)@={0!d^SUx9!#D8T-%aRl4c)P~5feG`jvEqwi0x^X zq(b*g&7@McZq`i!@)*ILUe{IX?6p$Dds+bjY{)0z@;q%&4uz3xj)O0wJ< z&H2h>`L3w$2241Yd2WHM*ltVUok7MKbwp+ZqO0fj_(O0jt=xb}Mx@yWmrC@l^FsZM zV|Pjm^%d`r{EiIl-Jl|S(#o*imOCxu?g7n-z_ba>BEIvoMWb#}595pp{fvZm5{^Ho zei8=Njt?Oqc?1iYRDwJ*fPv=v7@^3IaD`G^DWo9I{;cxX~Ay& zNu2vf4F3`u0aUy0lfygnInK8@tE-3dclt*jbArWX`%9~k5d1*yUaq)wkJlPBMhiu} za|?Apc>8B^DLwhIA|T9~H=OxzT>jM+a8kcEw5ch|VH{X5d520a=zwCC3cL$1v|b4t zRN01bh%j{?|8%*d2qyZD1^KtTh(j-`lP1q3bRPq|r$&SDzkc6&^vk25ng^IEwNFHj zUG5kf53fOrd_70~vpSD3i$VcAsu)Ukv*_ ze)h+;Yk7T%9L1QV!WmL`{@kxk-o5wBV|JT=tqPocP7Q@2go#|6S6}tMk~7h26ryzP)6DJi* z0#g}=W29C${sb;i<~TP}@*nbw*z4AlJJNfuD<`2Bfr*Llo}xFhiGFG+h|_rpu|x%;I$)*q^Y z2}~WUYw1`=tpni%7KhHO)XJ2d#sZQdr@#dJOiGFdV1ipq{ubx1u1| zSb!iP2oCJ;>G=$X-`}V2351?^mPR(ew`KjdRA?Zm$zig)buU@BcmXRF)t>UzNhuqg zZ};<{+UbXdYS^URh5hB27oNCqz048m=)Z-3ebCmgnC*WaRS zVaMF5L?9^swIQSd zs7}ir47cSjhf-z6b?tjmNhLWB_;BXKx=v!RXsodf$kWG`PD1zc!kcPyylgzpq{Lk+k_xcHGUUEdA>1i2~c< zx{wS!+%Ks^q9lZT^OrN!;FG-HEU7pdv%XF$?JmQ=Zu{7{(wmW+wfj}$VbV^oXj%3| zo)`)8NYWVUL~<$R@v(e4W~pN+hsfIKy30ki)X)K3fUhTGbde_tadn^>`N~$?Y1>mY z#a~THPOy1KlgPC~l2b#ePkD;Zd&2z4BY(t;=Hn#iwi6Dz5eA!oW+i!Uq&>-+o6|L4ZL{3~%9>t-7YD$^Aaje%x}wSQ3~M-n zqH_q&Ngy$ig%;BlYYpu%xj$@y-35c8*-l#5$oa`wQz1Ajf(A>)wT5rC+MU90Q;({f6R?7#z1h^_Yka=g%} zbHX*lnFJzz@oJc{TG`hp?fJQlW6dz^s=VUzJ9kI+GRN$-Y>Kq{1b?qyi6V*zjjN^z z)Dnl=)Vp+ahZZU7nQN>)OL$*M`g{7{c(e)nT=%$CcWdpz9Lx`{k`M{=?)@mVuf9YK zi_WDNo(vkB-XEw@oWJ{*xpWH^TgX3fEDpg zVJM|y$dCol2?>!P=M25P1i{xbQs-fVj4lK{X$%MwATw-VMapOW7>po(0;9ix1+z4i zQ}T?WV}boW*N@4B(aGzN6{KBsh5eRoUZ{F!VbUdsYYdGD2Azq`i@*5MdozHmDePCL zLY{K0RKpZ_`318q3}%4rghY6IwpW%0d+V8w?wXZ=!&|>GOz&u2o8{!I1UN66jifH{ zfO~tU_2ekY&`8{tNIWmE3j)_!y*uJyEqt+Uej2K8r%cetxW1Wt;@%-krUq1Cv5@sx z&~}y_SaI4mSgvzl5UszX2 zcakvs8TT%$?sj?o_+Q8*Ky4%8M}SNr@|{aUf(r8KlbSDrfq~)AdXlM}vooiKC0j*m z_RpWsKo~VRK%Lut`v9bK)Cr)}Y#&~OU?_IL_y(~)ML(a^b=70QX9f+E@8!p}hUz;L z_=o9n(0_+Xb2eHj@R8Nuqh^QdL((WFa8K!REN0Ian2tmGP>N_%bte7T6_{KIp1XuH zxa4C%V83uwP3tSLmCD)p@Dw?=>$I+nzxm?wQALrBKb>^Cl@V&RL`9x-OZvsvh~ZH% zbz`m|4)VA3V)sv!p4P*BHQqgohz?g`hd~>hd_@v0?6431#y+YbEB{Q#jg8tBj2Igj ztsm5I?z?b)pyJ++F`cx5K5hF%eWD4Q4Yu;p?_JB2CGm?q8Rv8OBZIbYYhDTl4*I=$Vc=&t3?L;s+<10(b6C zzf)JRor;5?X3#)|hN;R2ZT|pfh^`2@V4ElhE9a)o`9G|itIwG8(^a1@^si)yvL}9{I#(M%VBjcwUQ8aw zd0^?Bc|xM1yWwF&mUEe4k_R)0Su*(t#NE%P7Oy_2OAf|Eh76|b`Vg;uL$nL0XV0I~kAf zBm^zct@Us@#W<+pD`W)88S;PwwcmX0JmcA95(iS?ET_xNZRe^vsDp3ZkRc<5I>k>m zM*#opax*=1YzwKqgRTZ4STj1Xxf<0L8l;g*zKO*cYM&~}uVfYSzn`0p>gVdaD0a%q z&}rB!5s*aUHiVNMldKe(q>V9fI1l=J?-~fL(D{bt^ge>d_-2 zzW{uV*@^XfWt#>FuMyx(p+xH9EPUTEo+`cj%#+;jjPs=!1^?$%X6^i)+2*3PONcGx zfzV$yBOPsGyNvEd+WnGG%^CGH(FC9Hjc2q~S$`KqBo5H-dv&*d@e(MyX#hqI)r!1M zc{0b|jCU0DcJz*E?ibLe*_}t*_Mc>X@w2PQvS-t36(k0q>QqA- zw4B3w*r%hte`-CoyBw!FW3HNidOd1n!z0|8`vEtW&+;t+L_)#=S}H^F{3O zk_veXDmMc!>HLAFjzk321=G@>AcKuk(9@oI)?M7Q>qL(~K25BL{ElA%RpPrecJ;ES z;zX8HonmWdFt(9F+xH51Uz9Pzh!JcdC@hB$1(KLn6;EBvGprRd|!2+p(>seJ<$U-&Q(*j`pw;! zk!a8u(Ave+p(^UTo-6l2l&BD+qQ@B=edLN4n__&qcb zXC|Q3eM*BDakQOGk6V-Jm7-B%bU(TNc@aBE%uBVABu{@6$M^~N;pyv@f9ZHubMwmM zaE?<~-2H2dxc1x1ekrILcI3&-oLmO_7Fp|mD+qbt7Yp&tAA4NAOM4zpl&N4xWUsFf zGw715)rNmEWY0Ir?VfVE+i9&bS_*6rd%-3*aUuh{+E953zILlC&O3w z=33V2Zk zzvk4f>^mXYOy6%NpJw#JJ5wq5m9A;y{*^0z^)}AJ;-0N7sPY?H0 zqBooIim&ii8Gru}TP}LS_X|E%7#1df%{OOtHH%mIR)_vTGcM+1VKo-BZ&+fXBH4k< z&s-*H6)Uq!yYDN_6zbXys~9l)UuW`5>eQOpXto@A_5O*fiX1fS9Svlz&HkP^dX=`k zEjVFxuVKHB5j*L7AF=_2`kw{7ze9?d|=RX9C>EWEpWaL(S5 zMCMtr9k3=9Y=|8dtnPjVx8xdG)z;92kA6C!k6vLl%jzI^rBss zuirIR4YlgvICicEa9uC zMrn@ugx zMSzyJH`9*gL&&}I(7UD+c_q7kZt#Lc0|gvgZ5r?M2BrDCjyK-F@`j7`MF?I@ECF3V z{C;Du-||h|PadCVb;a$wNlKen$}NfHHl*vxldD`;5Q2OV zBVm>gMpr6&bhC!EPcz2s52wD#XrJ=zvl3drArHY1H<`GZh(KXSJ|G33$A3zJjxWGu zI}73(6udQYrW$VysvYoVL zMcvMRP4RNdJT_yP#FGbh32yQ|tfxiY5?^9`b0%i@WSE^op$m!jy4KY0oCV5k2da!O z{Qvi@Jbr6T-klNH&W!w4-oa!(C+eaa6}+%5^DlMXV(t3v7LmN1_{4wV&+h9f;9#{E zzy-&=Pr8n;0<_*2-4(~l&K{lM4$-jWtmvuA?@Y=owUvP43qa|Tl14MGN9(5(zeOS* zosM)1K2$Fll-}_$_H+4s=fp*5{z>O!bMZDkzh0!WTzsu+YxSap+szNT@`z%s!A@RV z0djp}E$_S@+U@P8R=-rc?x6-4mpW@o1q>x|A-F2JfOC$FwP7;po5Y*lKiIo63dn_7 z;ET|hpE8!BS3+^|&GCgyW}9frfr|Bd=qd*n3QuNrixnHr_kCu|lp^fR!D{SGCfG{R zM|~AN?aTIm)z>bsi5l%lri|o-K+~n)_@bR+6UqhqdH&r@L*= zd27Me8LA%qTFdIa%WQ|o^X%IQ*|EK}IlTX=WEQC`D)}C;zNy(!mFstH zQhl62%GS@^G~b&eo$YVzxAF|fnPbx_@{S`!KT|3z%O|cTw!vXD!ikJS@$eC6BK_Wl z?@?_*&vRS&ceGJxV)*nvoa}+7n-gofGu=b2v>L_;otziiAuPYtU|b3NNn%!t44lES z8q|pXcQvKHZ)z-EBwZHU=k;})9>C7y_>w|Wzxh&Ay)iX|d_;b7`{&A0ZZ0>f?18=> z37&igg$|U}JpOSU$7S@N4u@=OsrGU$r8d2@9D`M+=QnJ>IR!+}sUaPtP3PPj8xoX&zfvYj& z{*G1k-f`}szBQ*!w^4X+TVYe`@k0Ebfeo7`o6#g{AGho^(=DO<7iY`#0S4empFwOb(JVh_34_kHVSh+8MN1by`m56yhpZ=S(mbERt% zP)O3Ab+N-o7Do@%MQFt#uSn;y&Gcu<3XN_p>Pvv84qxCDF_W|B?hb=L; zZ5#1Zvd|0WmsO@GXFh(MekasFHv(cG;=qdw9SFf?Y`-)>N-r(e`r5xB#K=N!LSgjj zYTB3Pm!jKOmJgqiK5f8%l&5A}Ty`{M)ETV}aXk+BFwhq&E|#uMBBSUzz`GwU3tHSi zgHFYq|E`#HgQ5&4Z7v(n;hNhoP-o|Xg@`O`zY&FkBz+;f2biL z+EKhQK&rPW%1K0Mtm4=SUSre^_h?Oq&QJxX*IW*Y{*lIu*!_8y_mGqAv(EihyUq8s z8m2)aOR$S_8({1i5A?D~;7-nod6Yj^jG6wu>iIaOVlFFx6`Rvn^H_nyVqIonMNF*2D_u$)sCN z4YmKqjpqZ8AOxlS<)D7-o>0S^8TQ;U(IGu72#xdI+=kfBPNSW~TsDEms7{i7Sf5h% zc@asFThOAjgqP~X>2|b+x5f_a_RHt+2ybQ@K2wwbcZ+Q722@jD7+>9s3e=$M#^sjs zVAK6~YuJKgv0!*$LvQ_cw1fqTOa!L{V+F0`E|y|fygU4~UvxELaBz78;wpUoqaCKt ztEbo$=&zeVHsG^;jV5>^6#cLhg-Aai9U_9E{jGJp@p&Ot2RQ`3FTAB;%~=I5$3WtL zmqW#LB4T*df<>Y5Glqb?ms0Dbg)T@|0pUmeW~;tXe+KOH27|4EU! z2ip16L!z22#i2i)4x*&qyy8Rsjb`5 zl#sl$<-~~G%^yMs=5QF!*A{~NjlMWwbH54rRMO=9m3r^VkFwKgk;t8MS-7@0PY6i= z1lv=x5aNv@#b;sr^)*L)?>?<2RW>gnt(Wz9qc6f?*hK*mBv2dY-Ps4h=^Pq2s=3_n z8zt7i?0Rn_@C!`Odm5i;pD6AqzV7umRckPQGt}oAK4|^8@{?IA`&WYOi65$8O&*(( zg?UC5v$Dq+Wuu+exRAztPGvQ{OFEEbz$|+#y^Ttn)XUZ&0F-CJ)6e5S(uNSfz>2j~ zNj`r5r}fMrrfW~M%$b9!iAkV@@Ey~axfMObn(;)jEX_LQ>uO3zUwoA#hN$09lC#ZJ zCns6y8a#PEiKD6e&c2s_11AkGU_@gzCc*Vwk4-GZp!fzuKra_Y`hM6hAv|l;GRMpH z>`Na<*)G*)vTIR*zFex#>e&?)F!BX3;qc2vDm`JZok8s*DJGfN4KCAJxMVcerS*hj zzxqs9%|cOJY7;Y2x7PdBFVyul-~YZkgVGHc0Sz={RsB2VSZ^5Wndurkmuj16%(N)u z%`vuRgg$;t66U+_&<}_~VdyP(T|$M5JN&VZ2B=*6OjPNgbJhBGYID?6CaMF+sq$*U z5dv|n^u762{jrQVUH&&y1oqXJTzy`=bk2~|h9+PReL=r7NM1DdBCAYR`cJ84UBn8{ z`0x7Sdg4|D3HqruT+LKHo`6%bH{^o3`(zw@YEEU!p1)v{rf~RC|J5vyV%LW&z6QuT zk@ZYdrUI|rZ2A1N8dUMo>)7N~V)F;by{F{+p5hWH4@WR(>e;29LlV!0Fe_PQna6X0 z9J|E>94-$uN2tU>KDMhGBAq+Likj zyK(}oi^UG|Iv@L+1U#px0zdZJ2g})@_Vta?vmVI#oVxE6fj=~w`!Dz2&Qj-4X~`ua za<2y4oUDLP5v;XZp&qiwM>W7=c64}r zI~{CtnIm`gM6y6LY@i-Tr;RumO7f3Emv2$Ok0Sx^km?EhL4Co*?}i66J2JL{*k2Kz z>8~j|zlUic=NTe$h*tQkxbopVi5-1e39blVp9{gMG?7y z{@_41@u}0KL%zJt<|**&2=*CldoFIbU$`p&9B?C~#d~E~L8+^|t?5TPL0O|=xqcLf z8}DuCap{-%y{sB$)w)nTps@2>?EsC{I=ky#6tyE^HqaLyAf@Zq3#$DA!kCeMNm`Xbr<4Hal>P1}< zU`F3t=YS~edeDLmq#Y5+>)@oL#4|5wkLt2ne>8T`9qRuj? z`sNLEp>jNSABkd$FyN<`7Ul;RhOvL_6eneLcV=g9;I~U|H{w5os_-t8qP;d#!3+aX zm`l%Aomf_b7nk0Fo-qWHMmC{(Hkvk1hYMy5_-&W4HkDbeHm$+HQwmJ!fIfC`C+x}G z)v!H3vL~~;?hhJg($zeHRzYU(HE--Sj_ z(8F~4Iae~|b*prplkiY0cVfA(lJL;VmPvOK-VK^~*M*#~6)$aA6Kbg8=)`=(mI;NNw6#A>kK|Btsf567}y+lOyMC=G~|GNd_E z6Uj_PDT>UqB4w6&rYH?a1Ibirka@^FHb@ehkj#Y4naT9+r+U^}@B4dy@Am!iZJ%vz z+w(lj?Y^$-yw39&_G3Tx<8R39Qmdb&x5cwwZ8iEfGa0ga<<9M4Y)@&O(0TPOS)pf3 zuK9h(HDU?{A?-UJ&hoh#-!F&w>&SQilPOkZqFVHh?N-qybP0#Xxarx|KE8iy*PYj;ly)x!st0FJjciL@JX>NX>t;T}l z%Uv1Q))-`lY-@^GE+UY+Fa5!>)Jw9BHLC7|*G6@pDZV&3klPtJ`c40{>@R)SYR%<` z5+tf7LX{FN8VbL0;zoLk*pHO)-+a$5}5AH^#3$A;_=n~Lmc&9pZ0qwz7Q?Bm@i_9p3u zGvy?Bh>|RQIWKO|$=ooIIpN>=c*b#O%A2#&mA9&E9n~UoKgLzbw{3~FWbz7px+l(* zIq?g%6ZNHuD#jH*1m+4P=|cT8Mo-c3Y|Oi`e2ceT_L5Ll&NwW`zA)w3mwu1WUejM) zb0JgeNkh6`FlhtSyEE77;K-G6-*$fL()}4Pk2|u7?3z{2WfD*Q&9dLZ+vVhHn`-b2 zS9jOy&psB4m|>$c$#OzVTZm^`x^C(3iXHvO0?+E@MTT3P(5Ml6e7+eiZ=Z%T1KXYZ z7T#qZr4sU7=k%51t=o%DQ5u&(em0!1as&qsJn7p_#|>)xUU(GchSzs3X?Bw)@mNDO za-V)FJK0$S9fi!OZTbw^8ziq7+t{#4Yp!fJa1 zz{3s08J%vCF(X&*S$&S~6+0VL#jQD+Euvzte^=vPh+EFcRQwQ!fomDV3o*E?cMA6< z=dOS8M#%a@Qonbp%jATh$n$S^xr)X$^pp6j$KU};TbpurXYV~-(mH0_BPEgJ5L4-s zU%R8#H0h<@@~xz{NnqUPG@9?9-w7%*we*v_Hp5il?#}M;eA}u(E!Dh+hHBS@RV0(! zzCWC;IAuVV|AZl(y^uzfJI4y9o#%bW-}g$J(xfNY!3_ok#*1YohgRR!xENGbjc*P! zog1Y;e{7#-ysRsea~WT%a}=c{L;5VwmQCw3A|+_gbkmp`H!6*7%YPd802 zQNW-))?ewed7QMV{hq>q%ZouB-MhyVJXh{5KEQYV@FfPCT4ipYV|FbGuKM?s*t9&; z&0Wo&4^p*uwCox15^8ednd===n$Ve$2yf(A5qmI1Q!nV=E=dD}IeJ1M?pmEF`_pzBQ1`RKY+?p&+2CUn#ufM4{2Aze_{nyX*tDw+5>X)2uc894Q~tqJWj zs(m-%;-RJM5$;62ZB+55*8b(IZ{3%DRufQnX3m!8!SnuGmbn0@rOn?PpGei%l&_Fe zQInwOHh*O3aOSwz!&-QLFf)uPS(ENPg~H=$zU^aqZFC+pGAx8c{H&D)H>k4zl@DE; ztf;#S{Vnlt)%<-ze?!TnM@SXeSorBu?@-gd)DY@H>TzD|g5j;FVqryB4!G^GAIn3u z`Jl#JZ<)c4yNC0n`dB9^Mk3{5>Zh&*UCv8ao;Fxt-=|Y6xN%usW|D{Tad9t$-7cmB zA4>N)Sh5bNxTZ5IhVY<1c43X&erozq`{!PMvdfK@P!}feT>Ddpk-sjFDLz;EahEudgIxl3_$Bv#ee3 z;S0tKmHAG8%P2YuVxfVb_vV$GN5ToLW_tcAsluq~+QIwJh4@mw8FxvYn0)5tqCSy! z{fWG~Hg(}Y7x(yC9eMpUXF}7$u1m^J$@zS0d!lb8B#dr;w=<{4wbI#yil4n#cE`8Q zxbeq-Zs5zfd#uOB%@$pE?*x8rXgu)D{B+8(zoxR*uJ#u1%p=ER+XC+eHFEbq;mfv8 z+Em$}ZP~r!O8Csz$C}xiq4!daB#KTKi&`x_r^c<+Se{BqYnj{4^d-wZqA*l4<;e!- zJ}pdU5xzhCW0Jm6@cNUYKL5Vb^T|QyGi|>N>+JniwDDcx?$kT+A5_@oGV98hur(c# zY#WrMru6zParcOVS*u7tYjCvwNMU7tnp$3V?Hjw-YyXs+bQFYoG}N`aJT`2PlHYVp zVep2y>_+zrF-0mH&VJj_mnRjK+#H`=SVlpctw_i7xN?@C{56GiC7yE;4Rc%!1uq7g zyUy9#9OHb(Rh8y0s2HX!=^?9iwnMQwdJxH{XtnwJ%D&#v2YHO8oJRVQF9c4dQ_*G0?=nk#ctfEtk?GuhW)Ca11?Lgb- zFNlr!GLUmBCE0eI%h=9wRLt7ulv0)|bfc|)^f!waoVnQVk#O~lQO!GkKTa`+5)gVy zt7T=?^C1lt+y?Qjm)F?%m^e8DG5VmbE5hb2nS4OmdV48Z2lO9j*|Y@p_gfx^IQYw# zFI_tCYQ}pSlI3_e^H^XibtR*9-?ibGel`7Q z5M7pd>ekRx!cIq7bq(UO&w4G0d-4mSXooQz{P^c-hP&L0$`lz?UP2_uvGzopT5{vLbzzmn5^ z4N|hTg%%M%emZuAM^c7rcf-r;ubTnWwZAo8BdW=-UCg+nwWfepSM^hucuZ2kO(fy^`g{=<>4pTG^OU!@c^*}0_fRML z1{#Rah5qi;<9yS^dorDwx_6M-|A~5c^foH~@fm%(YI{oq*RRdG7N^-?ajYv5a~sts) z7TYe=7cz2P(k`SPi2cM6`)N97nQG{?zP|ERS#~35Pww64meeEvv5BOqsvW4X`YQ6@ zsMMGGZx;o`GxPPZY#+#CU&pf9{XC5iPgLJJ#-_^J&i6C^`}bU2qUiMEd!q0A!Dpdj zf`SQR3wi@1u@j<44NWAM8r6)A%B3VM3v+=RzMp(gc)*QuY3SL6u{l?k_2)}mv$N%@ zcKN8UAPTQrj)gwJqmkZ|#$5YP#opc~CMG=Fw$Vc&fA{X)>89=N?Kf}VrlEk71JWyh zi*8Yd8J6gtxN~yl7<%D0^7DU4@;s`fUN=@3GF>QPa5!+}^ofkoaPymB*w1*ZZx*di z-uE9*_*MJp(W}MRWt5NPQ-f)uoX3b!mE?@&Q6h_;jXM?wZef&i#4^5{40!}a7qVT2X2b8eqGb?L-Cljjb-&K zel^L4XPnYQlh%(1SGFhb(}?%;YW~Vt5=Uxv~-dx=;r?o=<#@dbZO`zJ5 z@p#~#5D5-u4vyZ80qFfQ?mhc~N!qZ$g<0wTzL%-SubJ4`IzQ*3Ck692c02q$NlVYS z>eh3OvI7>9Iz>-+om+wqjvL(*=Ty!n`)c0jTxWmFGt1g0+Dvm@}%C%$&I_I;R(6bvc_yU;XVXfFB12mUNnHNGjOtq|@qD z_a%Ms{5&@@js>W_lzvRR&JK`I`j&d0GS32lI^VX}{lfMEw^Lh4E-)5t1^LbzOFBAD$ry2RB1Fl|`g`NUw zhhC03UYKI{uDUub^Ocx=*A3CL8nAg7B)vuV%9djfKj-MILEjtQB`f=u)>flz?#Gha zwU0iijVghuu(7nn~i!$jL~n;%`;HM@V`da*tfD%Ce}CJ=Z*u< z2tw(yM)fOfx~HexO(mM+Ycva1Wf|KPd!!}tg~TSCeil`Gm7-bY6U8%?wqn+>RQ?vx87LBS(!#@m_v!YWwu|sMF zjvlq1d%dHC$QEJK zVhcW-4X=AOI;gcyNDR};qc`=muDU#fJ{GQMBX!j-?GJPX>Cox6|ZIdcZGuPTHU;?!vH9o?5-i7~zwEVNqk-^9rY%iyi1C%3I3`)AzXboycs_VZoKB3 z$dR}eVkf?@orptaK2R$r_4&zkN9@kBB-K$-?jJorOO@k}+&>~5xi9D87)w1eyUmBh zrMdTW9=Hw?*C9puEQQYVYdgF|CVAL(H;XmwU$JvF&zQLZG@5faA$Q%>QqSw z-7x}*J^toJcv1I{B`IN_VqjP78m^pg?|$Yj`tz=R@a&a843b9_CXRlc>$gC3FNs{g zbMpSWJ$h2)UFjOppoz*6S2PvW zd`~aC#rDaKU&74MLRr76aE7K2ikgAfj9#R;-e{c7-J4X#S3}jwB=`N+i(O(Hda~fYnLg&>?`@(M# zgUS!en~O>nt}IfU5eioHIfUK65v=IgckTe=iJ+qoY_q+#|EhVjMoZZGPrl7-_Bj00 z{QgWKu1JmL^}7);%R-hcLvy(?c&^ zU^US(YMPd)YH%u3zNEWAFF`6`BIx4`wR$U4ED%r}75 zZWCRC`|&NA+RRD$wDIMvJt>ygnpxjzZz|vWonvZY&p*rXsV_c{3AMCqLK=!x{4&wC zbJ?-oti_W__a{|llRv$GTXI1n1ziiCY)K4MlY1wZ-kK2p&C}VpW%AKTo@6f9Ukx{*1l>f9+Yvr606 z(^O1P_w>OhjW#yl)A)QrQCBoij85Z$ieWZgLbY#%(x-^zJ97mrHE#s{{>iwrg!(RO zmYJ0c=J>tn=swWJn5*>ry9;vmn)H1bVM`gT z+u&xXA@$a?;B`XZos2KkZ!2^+E)e~ybw`~G7LsQeE1b?AkO<=spLxpPM8Dz()ixWG z!P{9S>D(pp_qm>~dgafu$*1>R$WPtD+N9XdR-@eeZ|l0brcWpxU#^-lBtn+x5R1jC zsF#E*SCpeC($wTIbn()lM@^Jm5nYkR&AV{!q`a{;;frEru1R?#JNuTQ_g#Tx<@C(D z58b9qm9v1bS;<^tK+vAURk<(OUs^3NJWdSxAt{{3xKZ~{;Va2#jgM=>!i$JO{Y&p1 zh7LBAC3y9$xkLAI#5StxYl-tR)t4q~h-(P0s)m%*t~hncf=Q)i$-N)hmhNsdC~w>* zSvg?3^~;g_Qa>Ft&6e{sI%n`IhKXP3;zh}SEoE1nqopHj{&!l%+9M;;_g#MelgPGB z9bN(ax_+)X%3-Mc+Ivo~q3f(8D^H(QyEO3r!$BwCx#L#m)mwl!YJ8%WcTz@EQ|c$ciU-7f=JEv!#pN|n}^ca6IYu2rA%eMIvkrft#@?N zzGlrGW#goZYvC6$DlYJT{Aw{Y;(kG}yOONhfK{#vp~*0(QA(E8>ab zGy+uX*OuOO7@|XeT(i4JoW>%jvbCA+O{dbGau0Hu)KgVZN|5fUNS2E09g^HO z;$mR1HK}YY(W91e$%dW-;Zfet-$up$*{IAEBgD8lzk3sy*R8wy?VDDk!xtsd3qJxZ zqd$LEJsu^-hA}$_4;`XK)6Av4W>r(q-&_!QMEgczT|wxeB(|Zua@T>#vW6W$0M8Cb zY(6JE|0Sxu1*9pI8nvu0y}j)`Zf?N7+jt^2u~{li?_n34#&@kVlUEtrTb#Y}u6J+Q znbNerxoM|Y^zRxe+~6JTp)q%>*r{pnnGItc*OP7&PJv$Ne7Ot|tOjYxfxsRDb))GntPiR6OGX1Mykm$z^(q!d!dMn7K|h~9B0 z_@(ocI>sd{D-M`Tt~68FKG?Lk1KXSy?Kn zxv^6P!*AE;4CeKbxpe#n1#26!ZQ#+xXZ3z7mUFgCC{GS<*Nx2Y8>u(GkDuGL$c z)c^SfE{nGJ;!j&BQ$RwCML$Kzk(tM6-7RlSw8l?N}YOY zVg-a7Y$JZJ{TeS#%10;#zLDqnxHoMj8kL%?6rT+_+!Cm2&s=bj0oT!>epO}zZG3vo z6V8gmHqs9JZ{MmFuYcAx)fKi@o%598*W7Zonn&-O-JH3khio~09SnY7EOc{rvb1n7 zoMIUgYHsU2&|Bd)=@9j2|Anl`sJ{WNtXP|tA~Hvs@*f$QYsX?n7Mm0OpS|2yQd4)O zgoz6at50atw@UbAdT+1PAKzX8Ey3ZT!tQ-xVGfpaS^7D)Z^VnW5}KZVMT2wuEVu9Q z^<2lo+mS%r-tQhi8)X*#@zv)83T^^N1`hPidB$B$>}z5#3;p5ZJ$xg-J5H##@bTj} zv7LY4^Lp&O!}9WUS=LRx9%t##R^Io=Jive$A%lVd!skZ_8F1~|$cuZt*q0b1Npgyp zFMB^TOWn^>o^}86E~LHXZ$qqd7BL$_U7;DD|ub(+~p`h61ZIk_1_VK}<-=YEH zBzU8W+wj;Gx2TnSVT*`$V*r#!DvE~CLXF~Ln(=EoyYJAIxq0`l|KrDxdj*s0w2D<1 z!>A^MVe#vqm+e(u#pfL1aOJ+0V)3YEme_^h*p9xTGxrg--7Q|=^WvHuUP(*`Kc6=8 zMJOAV4~oqeu9|0kR~E_;r{BH(4;PL0L3#s`4Ijqf?Tvf(upBsWfVAN}ITl8teERe$ z2ZQE!oq4;QD54PUA${j2+|TAxsz!@tfo~@sdJ@15boxiH?|2IcZr|-DIi6!0QM-=y zNkRDZ&G@jwj=t)}dqP?Z{j1Fp(Wg%CjBW{a-LQh%^GQsYuZ!i?$L19W-v0?YXenAR z&cO;}zI1vI8A|=5{5BPZs3E=35ge*!NC^k2xC$;rv3+P2A| zS1gr7QB9JS!-$GPDi7U{M!$CC?-{)bdQ;u|*e~V=CF`W6aGyhY6G1=9P2F<~oy}3x0n}IbSL+(k98%-_ z>zDcN7gnuK3z;Z;biqvOkxYB#XlNaUS)KmR?ftxVHigj`bfFL?&eQu#o=~AH=D=kJ z6{Xm&S@f*%pn^?dUPAZJho7d6x*0^M2CvpWW$#tJNLwkf@Cl$kNZ{d!{i`53C5-Wt zq@^yxI&UfZphGJ6p8LpiZXZW|F-Ab26gh#;B`D*9aJcKu+qdoI+hQ& z=x5<8}WU z*-}6ku$}2^4n;#z@ml}rtu4oxaPv^)IbGsI)jmdUv#g9S`3zEDQIDxzwJC{6vznltQec(~oY?rXip?Q*C*DlW6cIsFL!=2vB zMj5tORt{>5LpKgTmrp1#KPDPLbm!iU7%_KEsapMhtE72Pjc zU)Oav;9pBZ{c!mYN%Oahb)bdMzw;@{EVNY6etP}>E?=5mhx|U9=Ej~qJv}`XA3wkM ztSNw8L?P;P!QQ^q6-!T$n2CXgna7R946xo?Ta3NE%tJVNN$pq6T7i9T^In+Y#&Im& zoq#rBfR)!U+OZ=crRWvjuu6)7X|u z7cTt5Oim)#cP%NA?C-dV)3ZQzkn!d~Ic$x99KtlBi{JKO^0XBx`KzHzN$FG=!E zz{A^z%ecz`xulxc?6l+ji?v{U7nF%?yQ7>>x4*gi2W!zK5AkE$VxZ4DWv<7_FUz#S ztL5?0)p%3&J#H+kR}Y-E+Jr}Z#CIihm=FK-(Zs>hymj`(Li-Ref!6e?*1jZb;2@m* zhcg_qKaC#bVU^Z1e<(xA=WZAhGb06lXWqrQo=~@cWrZa#7yIRWg9R2_8Gc@SYP=rh z^G7~qe`q%PpT1Fp>c9QhUwW+OzPBl4vvB`$iw=jsq%H-8U8Ur|U+N#z`IdZ-N-N`t zGgZL$)P3&1+0{p*TpaHNAA?>K`BA(2uS=V*{;!u_TeSFU{{(%X*vcSQQ4D@Zy&3tx zB{tAp4`_UJHjzK*HkiA<+mTnGY_>+aTaW*6ah=F%q_heJ)3^9|0DedakZJ}Cb*X$4F5dVpC0eE=sOqq0?+qh&=0?+3iy*((A4Buqii?Z*Vyre1#16Y!kr#}GA>%0SJ3P2+iGp4E`Vojk%mAIn|N$4*+{KR=!y z@Xx`;-WmSuIsf*hGjj_JZC%UFd67WKK!Ut>uEVzCXb6fGT?BSK9$U}`fzVI z4UzFC1(@t+H%1hZkX$mLt~#eL!8<~wAS-xDxn$Nr2FA|rM`vF`ni{z*Uf(-5&Js81 z>)N(>PPU;2M@{j7VBHjY+JDuX#k4^ndBVOYVEf1C=ZBxH(Y?HQUFLe{Qo2+OMNUH^ z^a08!kxy&PcbmLpdi>-`{Rcx}rU<5n?Q!5KJdnPJe%2GK^?~wt?%ZjeogQUaxiU-K z@Z{mNV|_`L7e7!dDt=(tV{W|1Vpczr!`HD(?0i(FN4st}G|n5$v$E}Ljh>B;MQ6*_ zOngl|CXhL~FCNtcA`t}H35pC8t#sJquC%Z9NVf{}3@Q#>7;Z215miWLO`Pm46PsLB z>pp%aYUYYiU(?8fmvc-^@;6E?e3Q|haLl;d7QuxH_S_QRT){_t zjCxCX0|PD;z3BtrX4VR@3mF`OWR`93*BuCBT=U~HS)kzpp@y`73%Y2SUF3O?n##0d zy~voeig_d~V>=9Vz>OOY)9c=c$cX<>PxYny8J~!cda;-1PX{r08F`Vp58-Z5XYc4_zSE~e6C`_B$tTWJ)?DZa+6I=Yl-m6DB)SP3d2 zA~gB#5igBOFhA2OZ}TnB#YG~zP=BQ@(yHFAi{3Q<(k;a+(SE_GP*b`#*PHf2p#^Q1 z_f~R(@bie`R2t;F*q%VPxiHNii$eaL_2VB?viLEdMPvKt)|c#~OD!;Jd*x4rkP(Ly zA&&moQ`CRbDWn={7JilHP7D<&VE+F0WY^?81#(x6(~E+ONVKmv}oN z^EJZNCjT>6qw+SAMJQjOG`l=4EsY2qtKcUpUo}?L9Tmu#=+7A&`h?!9; z4z_rVu7DnwZ+(W@nU*5YpP!#F-nxA|BqAa~)cfesrOA1{I|~4YVVh3A7qj3n{Hkqd zw>!_F=b}F&`|tFhUY*z78VX$ZqBwMoQ``w^WNe7ru*wIqi-eq?e4lz$^}h($dgSue zyk&Pho8~@g?STOGXJc-L(6zz+Me!K`ka)z!b!W33`!oy(E*effY8KSX@j;Nw3ps6z z+QgR_aFb^Ak{SoEEG%D+>Oq#YxcYvxYW30X>M|nuyh>_{BJMnR$i+nzkEEibv$JY1 z)^mfH0|Nrfe_(+|4ELzXWE2j%Z+J#^PFx($?EV z>W9z^l*5#cA7^d$7*$G1&e;0vaMV#MCXHmh9^)M}!6|)8Otg@J(WLN@_~`Z{x*NT5 zdu5sY#2kAWVmwB!=9eztj)lSe)rXLpl`}Vw-(}k>)AmV$dtCMETs6C+i2H=)Lx64u z{HCqLhYKqq8;k*m%qYbMFED3 zJjlPaC_Memg}RYumG^}&;ziCQh&ShRS2{a)95dL2XzA%0`7{!lx~Fk~Xen|!I`?@P zE~Wx$l1->thSZ{60s$lo*g<{({d${xIX;ZQ9!v_jS6@zaZm}J+)V|#tDUd2bR+1!S zL?3lulE!uHc^&})0i)V=N6csDrxhJ*bcs`X05v)T-DkyW3Q^(5xAGenZ73}*MNM|( zz1UoNn4^eeui6a`Va2S$?|fc>$#YS@C7O;|7zfzjki7~i_2`QL zsxnQ-S{Orq?Q~k$X9A?`*}IoeJ6PAOant$X)0*Hm199oJbDwx$nAa?`s7o%rv*XmS zcbkG+v8g9tykjkyvQ#PLckGQTvcGTvc{AUP)b{NRV0(1#R*~%q=l?f9#5Ji;zb8kl zXp`wgbe~ptQOD2vo8yD)gQ5j2RHNwC8$uB|{Y?lnts^-N&;1{=l&_F}S{!DoXn;}l zSK#(!#j#{qx^&pt&in@RCiwtw=fTEx*e3F)PxBVdP3Sh-S4(>FYa8v2s3c0|$p6_W zGMHs|GbF^99CoA$~mLNeM<^p9Y^ev|? zip#+5@j|+(Dc@P)mRvk_kLCJEGsK(SpL9JMa8$EK!R)awtmUmrDbKY1qEc1 zU;6ZaTl2R5`dxy8LE{E19>eVP=)t1X{LAyNe{&xDX}yT0t-Hhq!^FKezfR1JvKiJy z@G#sHvEqQ;xf-~B|09G`&D*VI;;QT`7uD%LB=n8Z8-A^CeR;|5SF7yfXV0!Lkkd2V zQML(kN@7t}x}}rXd&R2ZjcjM9?4VobVih(2Bf+h&Av;Cs`*iXAZ$`im)+x8CxykXu z-el(H7D^Zbns>UpD(bZ7wk=yWLTe9bB3pNTj@>2z7zl{<2TYTfMoQiu|M`gqNNl>B zG$Lcz5tDH*+=uqBU2raNW|mt9sVg9?*SJ4Ya{WYq{q4U`->a9B)z)tDyt5*Vk?xW# zDi2qQUTWL?%n&=&ao>EJ-gf*RkHp;Am-bo6GAV4JQ9^;*5ZvqR3o;l(e+{mbg>>)VSF8JM?7 z8^WMV;`_Ys*g4mk?Vi9AYO*KW{MXlGxGBg^}nSMX2BFa8(u)SH!xWj49h>nyL|;5_l+Y)LF&QoMWotyD;tC7BL_Fv| z+9HfP8lH~;d8m#&PX$Op;uASl)mxAl+U$j$xDi6vD$r@VcQZO#5J)t`3XXkDz;HT) z_2Zc%B@q}WTp9nbVFhEe=cN8a9H)y0DeOpxwty#iaMrrD#P`+XqqpBwhlht#QzE=+ z=vS&0R(&sNaLhXYWoxPH7m5ac)19RDvP_lDz3eg2B9isOA#@74aJpioL?+#sFNI;$!GN$L8GR$PWC~WYuX3q5f=(cA*aB z5GEfbnKeG4u9xzpv-W$Y1!1YeeHu;uY6I0V)M^3pVt`>eu@`RMyy=5IN<|^MTYBDe zNW}mfZ;(9PD6zZgK$DxYjtf(F}BeTrpc}eI(Ab--V4`-if37Lvn*vbG(vME zDEyeqL2ALUQ^A+$SG7aRPOc(UfQmBN>@K9Ls%k=&65~C;4u8B>+$piWh@gZ^mMno6 zeI{y!e!MB&#fMxj=qh)0edC39m;Dp2TV%y$})15SM<^C;F(^A-T^VM7OpeGv7t z)PW|s68kGCR<{9Jev2$f1*hOmX=xjRLwRHgDDes+t$Jiy5sE>nftI>N4}JG(TI>e0 zgiw5I1@Y9W;w|??z>#afRpN&UjBSxpxCY_pYsWhMD`e_fi`R?*1#omuhY>}9s>TntR zr0^-v(L&F2yyl*irJ_01}UW%Fhm3S|*AL;Bu%* z3%PeMfT$zyi?so;4p1fJ_U#TkPa?a0U=%gRSWwfxWm>Rvc}*D~58tzdZ2aWhE)Ei& z;T~T5EnR(5Rh60oUS%11HhdScv}Cz~(A#2qaeWh=_qR>FI|wTERu_mX84m|@Mv8K) zw;nG68LyOn>lVa=e&r@|u;RG%#(9!{L1Ry_iha$R%WDL50%BIPu-uG@V5GdOtSm(- zdAG|iqx^gUIYFtTsdHTC_87GHh3smRP4 z4vuA%m6PGv-S2cs(q|Uqxdz7c6~GfF7M6=x^^T&M!GmxnBpK=eXe4UeN};qCPBtGz zVD{@hU&;e`w#A5hrhhLfA>x>YwTloVag^X{!r!m1-ex;DUKfizdkXHDKvhJ5k%An- z+Bx^pBVNEI{Z0AoK+W5WrRS$;Nc1IY2&#$Yfk1g0Stg3wlE4k&qISIV^D{O;wv3^C zeXhCS!0*W+8|Qi4W9;L{hcqVMy*ol)1#E*bGHr6du`oq=8|>ZX6%|l&KKHTYJbBar zi5dj^!!}XMSKzuH;#{@AK!J$D@6)~^?mb9TPhxl!ZR~`@)|kZtmJUV4&W{k zaWSspmx+<`{D@tK3{poV*dXOfxydahys-7hx2^`*|0&({SbZ@LlX^qYjT?tBMc71t zSrW=Ds|fx;#1lczZiTP8kW+;Sk(#oSTZ%t|i$4qIS8gY_Gw=C(`}e^K|iE-`4LjVK`eI9f(wp7+R$Adnxm&3TnD( zOV%*gFd$ClL*K&Inf=a#dW&Iw!7!bH`+zVR>;dcfy1;eRq{6_yQkYB;+3nP?g)Krs zL_mM?z=PkI*DyTQ5gd!MQclm)h*TgL`>ejJIp%`?;76PQ;!7zpho3$O5)DF2nJAZ+ zue*qv3ToG}xO?R~*P+76(>P}B-MGJ5EXpD$2Ht8B*M&syCyY3z$ecgF!)ta}p%I=a zzCsCBSS^ZxEyxaTtlz&f-+AaQ0`oMd0i8w|6%m0>fya3KS?q2X6l3sWgAlj2V}ecV zD)&R041q@LKA>;M;}M1h!(qNc`LWcHjx!gAfJ}NqnVk+Wp>nq&Qb&>?An|jJ&B0Y2 z{B=O(fqfS23!5w`j}~_N44fXt2*<=_qTY-MZ{G?2wbxD0RWkXd>%9 zjlHkjJ%^?x;x6iig7GYeGO382WhA)ck4>O?6Kg?GDxA8wm5?hewv2bg+sRWAgRgp2 z!VXjprD1Ap>{G(ts63PCmOJcPz^w0|`VKJ~+aK65IpgDtKg-VjDePc_{(m05{r_-@ zk^3Zw2-UTgMdpo&=VP48Cc@x>T}Upz-nAFN$7}ETQEoWX zLoM8Jk8dz-orolJXE$D8Bw-Xl7kne?1iW}5`c#Bm;4$49Mk0k>r{6H}>*ui|(mHhh z{PXr%ocx2Z$f*`}f*Zu0J`B1Yl#}~~zzR8dV^=k_E%5AVY(ZK)vgVz_bN2XbtM`t(askGET%> ze<*E|zafK=;7{0wOfb04zUKH{#JN^a1@PoVjsD!Z z?O@DZZ?GwDdfL!LPBfx*;&o~0mdl{=4-}30RmfE(2_Rg00WA?%SJ^gy3zfvV;Kh_o z63j;MXafD)`SRA>aTyxeU3+NWB+Jh#O2oi00<4TTc%)7ruM<&Q@#) zv!rhz{8_YdcyGHre>;#u4Ow$9uOiE4_?k0toMhHZvs<5lp8G&1;&*=F1q3j!FCaIG zG}m@!Aluza7kmsw^eNGiLjdNEW~3RiV&J=4ndW!D{60BSLbIxskaK`84x`hl1M$Tx zj0SM(1VRVeej0ND$s7?;L+H?hH*p0E-kMow@EW9pYY6_0 zvA3-U=&}Cl(#KB1HHnF|04`fjye;Muk-xy(`Yv(mD4D8&dtn1^M4_PfhK$P^%;{Je zbBB{c@K}kFcbiDx33=2HQR3|S`A(%cxTUUSpa{X;anp;yKEMhl1RBKgAfo22nj|%r z?-nVg7=^bBa`!}F8iymiJ=osRYkCXW1?XojnD}l%W}gsHXsoa9#O_`4hiZ=V@Qz%B zlUphlrTnqSfxsTWzMeX<6v!wWLVVNFC{a5({Nfc}6@LW5p*C*ceni9*NCq|KPi&-n z@+1$oC`s_clwzd4i=fHqhdu0uH-a%dODL~mgQa?Hi|{CnxYAv#Gx%eXQFN6ZC8&n< z0v?N+VvH@DK8;k(@+l1yPPJ7=6`Z6o8duu8*$q8Z7*?%fN4O+Z?}0wd7Z1Ml_yOOR zWuhhUKN|tuuU%VqWrp;f%tOldG?h=P*PI*R!Hid^LHNONE2Cw`mjED$XUn@LbY0V`0STuk`Wn*pU_<8XCHl!c;WX&S>`?c9w?Uk4 zb}~fvTmh<)0SLflT;yKS37Ku}OtxbmSI!q|AnhoJ}8&~Vvk`+CJU#NA|M zJ6e49nSW(~NxUuEg30U@kYyXJ^H;!itX?2EDWZjMFV5e#EJTAEFoG~k9heC8`S~Jf zTyv2p;7c)z@UScN2;0WLXWc=BKurOkhO>%&-MSrBeMl=cc*MjwfDqihn@_AvKtSq_ z?C*{fI8=_kUqh1YQ4iP^e*9ayDI5dN~(=_79@;SfnpD6NFdBV4C<39mn9;KcFc z%jc)NxvvPkhP5dz20l?0BOMGFkQdj+=&;qr$BrJARaIrla~jyGoPaS7sC@|OlEaF@ zJG-qLMe8$eA(@5EX>yzAW@fJ&-TyLVR8(ss7j;E2fkZ}0F&KH+CNQaOD~0P?(L(nPB@uFL?YL~LD(-Kw?c^6# z*V2j;oe$fKH9RaU>)T}7w2pNFfC))m(8$$l8wKEuiNN|~It7VEVY^5cYz(AE(1wh& zjW2uU&q$JWR#w)|m48dw+^S@Qwnog{3_J;ol+&A;xd{dXeLHbIy%+^rU?a zXJi&ZI*3n2b(69PNW6jiuO@2isLp*v7KV>6Cm)70=Bu*r`Ml)=D31hR0N%qlqmuF9 zfz0d-7^o;ZrPmw4kC?`w4zP?uVs+LEcC>^x2Qi1#?IJPCv${UJ@fytz_!oHuv38jF zXk2=Y?VhB&2mo$4Nmx>vC}pz@OCTrx8IVDL4rpl;O0@*yAW(q^3^{5|Iq;IDt_7I_ z7Ra>$|1yEaXXG3Wt_EpKL?M~w87A1)zrO1~E)QPJUyq>Kvi>t_LpaRY- zHAHeIKw4Tw9tRLZS!VS@7)N2bXT2Ek2I>cUej>7Ydw8XcCvq^W`7-&Kxtm2 zSOY+iiV+0*?-52p;e<{B;!~I3JWd4O`ptmb03hinTKU`c5XNj_Q z%V)_02i5`LC87_kd!>%Wv;@49Cd{;gcEF(W;7rVq#w-xji@YZ=FNg82NQ%_n`V-@m zOO6Q@`r*IYa0m%*z=SR%MCxQuz)4C+yRW65bgB zBwzxrjjq@r%Ct)27lkl@$Hp9p9YoDd6oLpEiCVrmChJM=L}^8WRtg9x0GWyrB6s45 zYm@aYMk{{aJ|T5A#_RV|k`<7SAMlMH@qwrf0n$+P;n&Uj&_yqM zT~I%dv=v$3-2$=>AXIS2GW6TB##xd zTbP@i$v;B=MDqpSXgS?8X>`LE&5j&{!w!DQ_lU#q9~>&Kwin4Fp>IR3p$+`Psj)97 z?0%1(|C?9-avlyivL&nJ4~X9z>O0;uoT zwk+ZKi#+jO@cT~^>;{?&C3r(L8OocOY(^4Xd>#FfhicyKp+1Pe>!TBU6|UOz};8ydpfTQwVZc6HzGWymzP>p zN^1?(1UnLvB>pkTU6kltF$zChqQ2ZHxBT-DNerMgqe?_)2*`HBr<1lOj{cjHitlx8 z9qHW58l3O__v=yd=I(2hj*o3_;*|5bltVyw^7FqGYDMWngTY}!H)2@WUXDPpL*#($ z9^ZO;8$;{F&jN(Hs5x>aAssKgo>X# zjWz|*2=kgXT_Z0+q}jf6C&=owFLWlx5?3bLACP52N`0}hQI8^ndV0*FUIGA9UmgZj zPoW=i5F{Jcmf|U|F7ClvcgF(hJwBZ@TW=p-Zh-Pdb&{jjebvi;e!s{X+Uq`i_>kg* z??M3}U3^jUo7puHOnc=rfNBuT%nPDUqu=_y#u!Z}3 z5Epkuq#E;d2?&hNh6hJ)Z$(nz<=D>!+=w?c?Jmd#UOtRUPHC{gL>fkkt{DfuIv zL5<;s*tH|V@BRaIpBF@{RS55i7*7;9S0M^F0ul)rYa6At$+@Kz!Q^nu!aO_J%5Q-8 z5bhoHJeGqe1nDaojE^R;Hd;WqNO9$dXAm-@UG^$z z?__w8t{v(4MHD?tvY4nGF>qGR7UYHD;=$xiHw(cj&?Z`$Te(&%+CX}_5!H49 zfl@pk$-H4qc2wG<)N*H~Yi^eX-3u|9Fs9GuRTn$6)f z(^20-WV{UL;lzlSA~T0cuRQ-5Bh>$W-t%8XytR9A-0vi|I$Syx+#sPbvsS2M8^W0x zBd3mwi@WLB-2-AicL|07=L}>u@Gwv#J1}uBLa1E6vJu%LL4slLKWzP}j``;Ru{QGZ zQsWz~?;c~K1&qVHXHU9L1gAH^T$kZeb|Pd%09|z35pV;M0m;V+>x@7jqzZxU*yuGg z@D2PkY%P<%9+YRTi>A+#bAGKM99bO2sQlIztvrY4O(hT2kcN}NjPdGx6d9BfhS79E zh*U29X=N0(`S-|&s!vak5Y;3F{CYRu`f`qa3>4e>Syu@pC{qL3Ew*j1mMjt$r04bl z5!zOpi-;Y7TiS(AMGz%OV-+D00yPDo_X|b4(|`|vm-r-lkPQK&5lkk?r_Cm4rhvD< zm-HwQEQ@dhBqtj$0WRJIR0x?t>B9V^G^*Vv^ty1}w}ABn0chw(P9V-EsyT;1c}20{ zGLii`_4GIug^UDUE8&uwqf8JZLe8yk9H)iTPOBFqE zrpCQErD!lh&cdk7htlD#ED{p$?Q%H|VcH)ecf%!aMU*dCa5D(*K9EZ9)dqtY->e~G zlZP!=67VGo1**NDWVNJ2rws@^2_1;O-t+fJGh1hKOX^PXTL#PlfHDJOiYi z1YE1sL1U!joARN2-2iT8gp$HQxm}z&Af_MD)4%U$>VQ(fN7_3?NQRDs-g$qm5gJI2 zjhYO%FRM-O{=hbY=rKqGgLpTPPa^^}fV2h#`|lZPRzw*=5o|^F7P#)yV5<5K5rVsB ze|QiYALNiCv&8gV!n)(+vOYV>x>h6uva_<7Cs>%%+S^;A03{HN5PCZ*N=iudXlrY0 zMhKZU+4=U!G`2PFPPgJj(?8tS4ichc!SKy|o6WCo2FmZW_7@%$F{t#N+*7>jZ2~Vy zMCc~Ov4Vi<`im3MqDyQSwbLK2A)D(PxF%qMr-v~G0kA1deYj?hG~lYVhoDi^JlY0ulRzDl0VA^5zpi;NuIK!yOl16nu&>r5>6nS5)UK{BX`m#K5&~mE+CLY zVPXM;5FzRi#C}AFvWkVG!T{_9H24%4uMnmWget4Smntk#&b?_;&{|j&l-T7Xny^a0*Hx9FwG$)H&v_N z?GQ>Wk~BT$^;oUp%1nkv9OxNZBvs3bbMq;bFJ)y4nA2xoHBSKo2oCHp@4+txz!_Zr zLUbj$jH}>bLA+If5vCD$T`RqN5G;?jh2?>qa5>Qla8w|fT6D#czBSm6Tj2Ynp}=8| zbU;7clc+`AgaF|bnT_%x+;z9m4k5zcq8b|C;{c(LSYt-`_$?-a0EA*>2kq7$&IB$E zD+p1@y#$s3#o8SX`}WpDT4Y#BAP9|Z?N&&*4~{4ey#XMCe~Dk{&dSv{018W# z%cpGLZny%91M-q+kh17T&TBz@oH@@a0&6C?{=u;d4J`N}boKTBa9HM~Y}aQUjJU~2 zN}_%5H%Nw_5MkFVK@R!~^0w({IT2!zgDryNoXfVA)&XpGvj8g^fkplc+r$+7B+8By zUYwE}Y25IK}mISC|w*pP`X&3oe@$|E!^Tw!GDjPK^R!PKGhhCd|+ z#0VD()M!&`0`E5|CcKvK-0b zZ4AaQWJ`f(_*I2DEyBkkD+rPpS@*T``lud5-TjUfLICF))wX!h4K@8PdW(kQ{Px!? zzd1Y$_UqzoSA-v^1eV;j z#s(}tc`UV@&O3>};Vp#Ouoa5wt>%Hgx8=){vOV4l&=2v~fdSpr74gRcM}(lwQj_6J za6`!5nRk4lg#nG_qa2r5d#?i`NGkC@Ed>KrcF!tFCh_)iv#}gB`^boy(F)Ea_j4yi zmY#2qyyUKGHdc8T`x1>G6tQU-3Ig<3c1$xfAKwsTdRPUtmQzqxo5>V}Ji%B%3#NAD z(SnyMgW0aI@)y{<{uvPD7(4a3fn4J(wV0$6(~JHFvlZ9Is$LK-XjEFF0cB4KhhQ#X zf@lf!lSmnacEJkN4+b8d0dv*SG83k{`>znw_cFEDOmdOONbRW7YwlZCd&3e??X9@X17Z(eM*lqkRnHf#B>FOOAm1J>h@?tn)@ zH?;4h_#evnx!D0=Udv?*sf!-aS^iw81y1%aAg$R(9Qsn#Zs?za!FZglcDerk3lof2 zbJd9t9CU!fKnO;J)dxR4;(G(q+NOF9sgpoA1Nk)zPmisjI}{>F@xcTaETFfrRn^K( zm!J3lL~IX;Zvs(95XFrO>ItKKf*%$EMGD|msG@9qroWN+{@a1u5oN zYy?`@6RcEzXpr8=MSPt9Qhs3GLxyhvTzmHI4dSZN8HdNa^Nj$oz7N@6eMP|zbZevb z;5B0EcpAm_-w+Sv)DcL-UNPns5kU?Dku+b!2Doy!AQFV=px=FoWmHwKLd@bl6i6g3 ziZn$C(GNbIDIlm?K(xFaQlod*We0aA*9WI@c9V8Qr@y+Jv!?3d$z1ItLqBp30zBC#Im2oXLF+?w&*a1?qlnY2P_ zKw{KDzbVlCQif4m$`{=ePQEhFPTfyk**(SZ(Zt1xYkfjI$fZblD88ou-V4+`dZQA@ z%&NSmiI(B#DITrwe;R2W#tVYrobu*4DZV zM6nQ^6WV{hw|z{Xfr3REY#?$2!6z~W*rFBw>+a}>*cT!n9>TP0F6{;sq#WC%6L%3_ z9q7y;zz#$ZZa`$quV4?zYtNO>`VL|@Ob!bGj`J;qX_5QnsE3$G5YsnM;mEKZ#NYuS zTZs2L9d%%MowCx~K=D*XW^(-IXXKdt>59x~VkzCx?nm>KvN2qZ(vDapXhU$1ECFlB zo2h+4%)(yEtIlUkkt3t!wnW~r;UOeWetuBa4GdISSs55%#K356CduyusxCY^pojjl z7`S~+FeJ$afWyXk%`EKucI{5<@H`-O4t!OIK0N9Hf6`1rnYmuBOC0y3-oPCP2MFdz zj~y@~BUy^G{7=7+2#H zUYzhvvN=f8?UG&mQP()Q!{K12>5B8W7B^TNPYn8Vq(7URpPz=YYCCo|LVmM6?s%=hVy@?kg7<{j{I81xg3_;9UZ=|e+d8kY=oHiaYLHoXFS|!R&w9JbG#YI zZ}{IchckOEk=_df(^gkq$1Vrd)R_LEUYQ5{^-BW8${IJIq6i7pO6QEMQ_!9?ltXJgtQb|(_x+B%m|92(e z=+v03k@ygcLl%I(ex@NE-0ZkGYJ?$TH4a?m)ezovfn z?f>txL|{umzYMNn4kPL8;Z?*G6-4`Bh+)By+)6`W6QXJiaVmsxRkjdiv;p98SVBTj zO3HOGmi`%Egr2t*5Hga6e0>a%h70Llj^@Hq9w0+aA;1sZ^00Ywfq@?B?hsvG*z(r@ z-V?YaR@h}~!GM$f%=-;_KwJRP7VnC-6REq%=D^2@8J>dsV|j&ztw?ijkmS^o!ADL> ziNvfCiUWlz{I-ps^lpU(X|3)%ZQlZ4o;NrG-hzs72y@$k1Sz<&ye5=PTHdQ4R2%!rvYL=)iCb#T=zd+vQKZX5c@e;?^gO<1-6@uQ}CB zsa2XJf%us6gQ8ueQ) z_1pm5(ipc0XcM_nbdFPKz6zn~`C9dKaH80#{8vTjV7Y63p&+amz6smnhu4Lz&`C;l z+>Mp3JlUur1)>dxrnvw~<_PK*t$8=(=aJ0@Nt87qq9};Ch%pdxNnD8rG;|kS@gU6U zfFBfLo#Xf|LSX*ZPyRRh@8iPsqOB$hc`j#k-5o)G8OxcV!C{=#65XoY$1{e>bA{*a!%UTWas65hfWTm#88OE8=Ok*Cf6hYwt@=r0UTbv z#ef?>z?48RXwF#^a#v@HKYx<6m)_#39~dsW^>)|vMDzysYEILwzYM;ns}yaOguk6n!2)O z)u9){e!C-RJc%Xwzefy9Oy>zC&p)eeZdG?JL}8$Yn6w&$@Pvibh9mo^OD_@a8`6@C zC}9NZ=z*COfo?#VA{xUK61sYfr^S1ZgQH7Y3A_%=q(Pge27eJLan0yi?l0AI1rh6z{uDV$7enF$hSklY6cVF$*%_s!2dSt-n+rT zAYpZNu{#-TBiUs^U@sjQ8rtR=|Azfm{FTI@E(^Kt8hY1l$7we%3`Sw?-P1riq|6Hi z&%RlLt;0u$V6b7E&q6b7B6G$!p3QlMs!3cTRXMQj>PxTEs|62!4;k`+F#H4XKoJaG zZ~@}T5fBB!M**}%zfS#1e53xt?Hl0w`}S*8#>U1U6BC1BaTB8u(=U=I3wd%;p&;Rl9hQwFXk$ds?)GEx^ZBG(2|J-}lEx+wHP99MIO!t`#=OZ*h0ggFk zS-BiN)wL=?K@ALzF+A_mT@Bj*tE1zolB5*h4#fMa!J>j4`2-n~@dm&( zf&!7Q4-g{`fa-{`EHHumLrHMpfq{XkmTMM>%NTVXB*Np#L};x~VQGS=Of=sJ+P7w4 z>HUE$L4%$Xo$~^8Wps!Q)ofHhE&T?Z2QsbB$;k=ya|{&FZywRUq;&HO3u%ZU$B)c` z18nwSkqXE^(gi9RhHjW>f?Z3-&W^V*2=UK=&19$?c01AU{nW2sVkNQDU(Z~kbU?4Q z*m2Q>uh^Gu)g|sBo_fg7nyayFmyLI$xg9u&EhufXz|0{G6Fj7fAS%GQjE+0}&!|bH zG0Qtjp+N@R%gamu$Ce;dKVWlgZ+{|X299v%+`K%*>tyohe1<^$x9 zCNT4OB6|hsNF?kQh!Fy2S0av#g!@+L2&o9fb7x0CAaUEJ9yDN*BtUIK23^93BBB=& z6$}>J7VuXHZ3P4l(&u;kpMdql12Nho3?raPfh?p1OAB%lBo!*gUp$$vSC8B z^|`sjo0qS_W~IfI*@MPNRF;>Q7l}M3xokg%Cd?yR2JAfW32=-`f$b9U zgdrU3HzA~{fTY()7(9VEZNTz^tjs^OTAdb2_d; zyZ-|m3I1?*XZ@Ly#LUdTSnw2kvDI~`*&o1Tg5PXYx^ii^`idc$fhZ?(Ni;lijTEUL zC?!Z*5f6BO)X4yz^7l8VlDU15Se}{#J%#*|nQEvzZ0bo=Fg~U99A*R3B1Vt6O=R*L zto#kd5!6;{8AP^0Vevnq#o&Ut7u4=g(TuwWykPe*9j|^_oCHN(2e`Lyr7$>o;vKmB zkc6+;s<7YCi~^f}ib6cV;;~=7lOF3ko)3x9!|S)~O#TmVs%B$T+@8t?@C5TlGahjV z!O5dv*7Q3QDtI0y6O}QNRETsU)K|NtTQU`yHyW?K3uVpKgogkXc-ayY3+oNsKTrYo z>|RjgNI&)d;Z=g5TzzAQe*>lZnhAtb`@m_I<`-wz@DPNdq*_ApoT=*WJ&Cum9h?FRu%IQi- zv)M6L+J)7L{}M3PWpFV_!(#qBb8hT>;2G$?edxtzD&@h+9-FhxWAiP)( zZH?il9aM~`vasto4Sut`A+816IyT0aYK-d4I&-}LDH?JZjuypY?6|H3faO8g!U&e0 z9dH9jIapOvo5(pIc2{9ObM>&n6N_GT9lwn4Gb4ZL0^Ky8fG`1D_GoDM3*6iYY=XqU z&zW}_Qz~&*mVEzRS9giwA3JtRS3c?K)h(_9E{TxFwu1@yJhDrP>+00`C=*~Fkk+85 z+)O=Ni4}UcOkeB6FE*Yi^u~+UqnenVX^$T;=IckI_xEc)D;3> z6%$_C(V+EpyVbEXDx`wboL4zJo(0Z4__zc_dEj;;<1SK)i$6s#f^PN?mII-Kz;bYe zZSST&V@8vc_$rvCh)%>RX&%G#3QhUt%PU9}6Y_!5wkI&E#T&_=0|zIJ=m=08ke~vr zh&}74EaalTq}rN){`G0+Vv07!N-qdp0xqUQ9FlFNL7l)4Z2EiO;ryJCQUKi&#_zJcaoUI7h)6b|kK_!$F* z3}6KkT^p!4m@b>kAO8gQ#aauDdk5&Qo4a;TnaL-)&qQZ_{pb(rj+a3@V9WHn7a&o2 zykP@z24qaSFEM=!50tG8U+X}AOu0v z9Td{I4jA(y>j;@!3+YoN;sl~!z7vw9g*GYe^Jh$O&VJ1qjo(x(2tkG<*_;apCYi;} zHcr#7Z;GKch;A~H3Ha8g$G?sHC2(q`fL)+GH2Wn!G0<8=<7KGRMUvD*DcTSA#-1vS z_6~*@fj%!|cIQQQP5Wssgt*ZKgYSKhaHS0Rx@~z$Jl>F$Yyy)rXq7ci!GcHi;u;b5 zD$J(NY4MHk|2wzTMKy4vDV1-h-9oq98VZ&Je`cC%V5XyslEFkdDgB1zvzNm1-H9IB zUls|2s7D1Hm>9|KG_!xne^{cer-NH$kqWd`Y<9ccx}U8hk8=cE!8d#=b=0L##>nK3gX%dK7+mIS>t(;dJVtM;Pwe{lvaNGo^!PROCbI;>7!B7pEyVU)# zQo}CzD?%-qVa~4KUykCvHk7+$p52DUYMsh*Uv4|{cb(yV z@zw1YmHSPXpDRBkH0Qqh1w9|a*0yYad>*R0i@UBU~79(~|ts4r6to=t-N#d|v;em!`&2h9$jU9a1 zPENr5o3(3~`{R9e*}62pc4%Lqc! z_C`lfo*^LnW$TUqm!KU|XYd_wc-z7p_>6%y3Iqzeq8j+5T8+iKo z)FCP4T2|!^%X@WslG*y5wD`VNh%H|Y>Q)w(k>A84!Di|Fri z2h8bj_I_c(x^KrqZ$U`Xkwuf)^{c}vW}-v)3vgAnZKf^eob11vT{USQ@Nv{wzeMqH z#d=mft45th)J1fRW+juL9PIifY_k8$3m(3$$!ruI6!^ohcc~5@S&} zY!t~0`yiD%`!~+ngk?RV$%Nh&Diivb3ifwAepuJ4XSX{oz9`Y>)yBhLwAFh4C|ziC z!^@^#&^pny%V~n;x>=pBKyHVOhmu=d-kG@F5K3bzB65_t?E#vNB{OUdsq%uvx>Z>m z2HoM$ZCmqDsD~}ATifh=IIB;Ehq|w_-wbg5c64ce>&S%j4ot=}~E(Q%~qkOuM(wC<8qDWzhb1k8b5Z zpPGZ2tFnt5ew4keR+Pc(2{qw%&8?o7x6`hX_LFXHxstCl*>}Y{f2Ecqp?6R06lroU zRVsYwa(YW8&Vs$j*ob?n{45}^e_2S-LqM~xc|j$;S4;xum9OPeLIthtsRS0ULmj=OE#{LF z$Gtl(ZAI%LOP^gP^J~SLE>u+p-Sezzidw zj9)#JOwoMn4v~$Avr_^C#%1z}CaLb%5{Hh?KR+``n26rxRY!|bZ8m=MHzcgz)M2*> zp50;mr~XMck$ujO=Id57&`Z_I*`^OOlm*;O zHF#)V=m+B*mne6HJQWNpQu(rw2X6x{tWkUYK3JSt2K+z(sgcCIiJFs>0J5_}6Mg(u z&-|7iyQ==ife|;gkY;O`o+!V-efsmDw?|c+7IHL)0h-;!{vo?xW{&2#UZp8V>OH9A z#PVC4S*1{9M zxas`}c#YBln#J7H3)rMy$J>@a zs>ULB9(Y-qm5@fT!6Nghm9*i=tS?;cm~ny1;S60v;1VuvS*ts`1~)CPedhtmZLyx= zk9xIUCl^I>8#ymbtZb?KKCwLrMf*dH!9#Z%kiTbHD$ODo>M3x5X>3bcmoq5?P!Unt z5Q*^+{ItH1I;H~?Es{b(j8xF>qN5OI7}-@FA$jx{IQ&`AM1kAl{0rpd$;?LHfeSNH_e7o)4ipwX4L0;rC|4y>>8roZC_@ZD~lgA4|0m zEM-t63h? zAG5+=V)tJXDSOxfLH?bM+b>6n^%v-^pidv@1HvVtfj4YW(=k7S9Oz4JpzCP|X>p=g!H=ZaTLgU+8;V{E^z?n5J#Jmt6(O;pfIT%Wa#;+?(2~Y*Y0I zZO0Q*y0PW4YMU#741RCXm98dB84~UF%A`78voLyq8KI1| zD4G}{=$qD0@hH*j^4A{c-xZ2z$`TpghezCq`0tmx&&}N_4o4B2gVgh4_f$aed>h z+KGPr`IG(O;}7rPQ-3jGa@GdpY#s}_s1V7_^!r_PQo2sIMLT*_t0Nax zOf;jzy4n{HW(Y-!@3_1E>gaR2`XWu_#o=%vpGv zBw1_4?zi|g*=*!>^wS*2vJqe0jAw6CWT{DnE?UTEVD2L;-ZN^3y0wFeeD(R3cA*)J z4jjAccc^dWvredUBy{^9^|S z*pb`ad1rm?N*$HS+8&pKv0?89+odboyh=LQ=+eTIp&-oO(nlTre8aaDO}Lf(Q4cpb zK_>M+p~}v4LWx9YmuFU~B~SjNf?&4Z`au`4WE1nE=fCD z(U}^UY}j-_JR{!ONvgSRi1 zNauy8)aMlRPt0}sP~SF2Yvx;DT9exFAaQr@xr=N{M>+a5MH+hk2mEyQaM#}z>xN6a zF_KYdS=CwJrn~RgTl7=3@8Bm2B-@C4==Fu`;SFxv1mN=Haj=kQc$ZHXI#gm)9b@*K zQx{LTF{?`3ZkyL6q^^qvL;ga=iOeTf$YF*S3IW z$Buw`pKE30!Z>(mo=ZM;T&||EAwyWK@`t42(zU>w-E$Tm2@GP%qeshRlNiVHXyR(e zpH;~@-)7(LsJ1?F+B_Q_88_Kao(RgxRt9jR@rFbxagCbj~E@b1#h|12p9sQ$1Gzuxn-@Gxq2NaBeg(y6*8p4UH*SM2o zfB5u-ncV%m=D`Qfjl0~xh!!R;DaqYK2+c}yBMQqSTt&B$z2bZJq@6S}J%^rz)u}-< znDL!kmA6_+{_@L!mV>A-U_WhQ39i@YK zyfD2%MC!e4REkJeSXs|q<3Y;5sV=}t8H)XCsBTYW?w9?Ig8WGnu9 zfa%qO+g#B@*VISSG!WWisN~@nSVnYY%ss-_{ z{pgp=M@=b2DYRw+_hUN665Bq@Y7tPaz`OYhu?X!>OOIKtgHhX2S^BBI*sbDHNG7@08GZ|8~k$i0~|6r%sJ?n6xDpo-uyAIGn) zcgFUMp>O$p(md2^N%ye%gPhD$(v*+xD;aR5bv3w)yd1i!eecNrgI3<(_#}qb73M2t z?|OggNqu>39sla}8>c6Ke$Bm%)506v!=?(_SWYh}&B^UTrDwR0+-Xg0?UvfqxhTlt z7w5F*2xjEYU0HLO2v8H=l_pz}dQB92e*1?uPpY&j4xaJesdK#Z#2H%clw-_W<#!fV zVJi&Qt}-h^H37e4@PE@4-g&ggJ zoULhAROk~~?z#|S+yBb7;^~v<5n5By?Bv zw}*Br+<%Ad7Sgx;vGAqAald6IaLTPZdCI6NTHje_J>HyC|Jd2yRT49HvlXR9Xj_o) zQ#99l#rB?_o4_Mm%1-)l&(Ipwoy}-Yby+S(9EKS3eWHyme52l2wn4#Sa%>94_Lk_! zv{!2qM<<`rynDQ#Oz9rr{w$9_ZF7vB>d5n2nt63w$bid_&e4DavNaq0*!vcqiO}5tMoxW@j%Gi+bTimIev}=r8D5&ANT|r~D zQ$ABQ-|Dz5x>@B{>7-5yKYx94^4aui{YIzQ*tajQte6Rmj;{E{S6nHwV7zWVp}h8} zGa9H9d6t<4v*sYt@U4Zo7s!u&?*(WICT*(;AO9Nh@(JLJnL%fd2E;qEI*(4s1206Lv?gd^$`kF`0f~;99S9mwwRe%J2H4 z>sp&qlU3@9N-Sq%ns7Go$+YfoW{!IwDazjMSJkuMp8QiEqQAW;HY+;nGhxGb=W;bw z5F=q+vR~s4*&CkNXF$T%*;Gso748dKeooR`letJeNa)PY;hzaKTSiX3Wa!iR`H*PV zmFS%lPg&%$PKI-A^--EVMb7`X<#s@)2$OYt{$gw+ZGfV5_|^9dOgbOuzu8)xvP|A^mQe~TC-ZCNw6!bU{e`; z&==xR*fWmCnAlE>o@2%dEK)jrn%_QYyLaNTs{aYE5S6@#9da?PCV)~jb(*%5ZgX0~ zDLy^9Tg(;_%gohO-62C$C=(J`qcQ5fvnqK%cK3>?>!?t%&|&Q^ytJf`iEX#*O#SP4 z+DMdpdl{ekyGS`q7^qcv|Lok_%(>6AN7f!rjEW`6h;Ec`K2IsF zrhB<3J+KtaoWmGCWA{_Hcrmx($CU}Sr!8IG70J<^2isb@L8q4CvtH!Rr^V4R8cYf8 zvl;ajVXhMwc1mu9arK^<1x_}dENmn0{uO48(#r?f($_0Ej_{S~7-uh39{jeM4oc3H zp!~V_?bXuf1p!~D)t`Gu3-tu{)_=AqtHev2nvs{b_25R!Wb@L)t>W7?|wSCSwABD*_5aetOjsmLzb^rrszqQ79Hn7Z|2BLac>xP-~!mvI3aWDb{yy13`>QFEe57Nq*0 zqI#ARMmMKI8*pe}J$xjQv4l=)jL#cGeYsO@dwBE`<69M5_u_)B6w#VBjJb3V^)AlE z^;|j8k%TL9LbjY>C#`2dEocVguP78u_bGCIQ3=UQO%mb+1>I9#$)Y%DjrF&7)dQC| zA&dFS&)4j9N4O_k&8$dx*;rF}?`hqwQqXm{Z?%|aVl1j~q-Vv>-x5)XCzCF*{<-I7 zKKqHNU2=DnHuW$%;^w* zksKg8W*`-!T&~qOEIIWvCYJA3sod|2ph6adgc2L9UpLq@cF?%^180~9Mz(ygP!%rN zWBWd{>*x*feMaoFPaoZZ7Ms|z^+2rt!OwSjbn-)Q9-5!(lnw-$57~zuPxbomZmQ7+ z|9EOeNG;H1=Q8j8dpr&!B*I`bMtFI*s%UnVd$quAadp-(pSd@Ld?BnRaomY^dFK%g z^b?iD(s!h@#NM-V``7RC2kkYe28O0|v}WuW#iQ1J(b#no3-iX(x+c!4uW!8O6V^x7 z3+rU_u3g}(J6oZ|%T$-zKYOtJOLY54h$x+X z_~25p>CHFQ&CTPS2}cx>OB6+72Y9DuVMPr+tw)QmaTz2p{D3yzVeKS{Ohf95Hn zL|?3X%*oC1qk2ibLzB=wfX#Wl-I(1t9$seNg4sh_d63HC&EEg|bq1j`I@NZzOVVeH zHtYI^Z??Z=i)nUAdU79dabIz4(V=twi=*xKRD18DO^~6|Y@(%T|L%cueT`{_oTG33 z#-(7n0=zd#-rd2z!w)Z{ISM2R?P^8vn?p&QS&!m>%3PPP7P_Hj{nGG?qe0kBpYNKD z-5W;k&Es#AKdsIkyRIK6t``(N%uf*eSZ3lnjtU5zqhah2a>|Nu!D{ioPikvli=e->WAO?qI0*p`;EFq$2Ft??{2;tf-~BWQlF}E&zP&>8`oz7uv9lT6 z@wkSNUZu--Y)@st-5bwqm_&idh&9_#lmt3BblMiYyR$p((Yvv-H#@QT9n3EX1K+Qr zZ_3^}`_NV(Nutk(u8QM<_9F3)?-thE2(IO8$C#F@2HSdL2M=Oc11`_{Re&hd`VdmYDg;*Eyz~M zH}wMwGXobR(|4G+F+7Sp8blSsijOA=Zgt&Q4l2(n33B|y7i@)FKP#-gmRAtTiSzcD zMR&HNXCYbIad=orh2Lj}kvdLDrYoT|AD{d`dKzZ z2yIsP&(-iw*FcY##H2el_4GLBi8m6Xd$S4lQquQolXr#{&aeg|P|NBxoE_OXD|vIY zx&$uTSAD2Ovd*!i6mAcXUHPTIk3-Vg1h(ntt?B)a-UJUkIxWz%hCe#5)iPhM?Y>$} z{E1$r=1V5|?=6n6CaLOi1Rl8WX@Z}$S-vCsYE5l2 zpPg^>DS2F3l6;jQOThFeh{dnZ)pv5&xFN#mV7n6%*nc^H%YA6B^F55QjH9aO;;_ zt;a0&3mq=T@Peg&WeSpd4H@_FuI~|rb~Z}oXa^(R>E1)NhpQbMXcHC$Y?eI^q|t*4 zD5Ll`UI!nCn{A=JhR4g;+RaK+^~4%?hBXsj6VV(}-2a<+Xzx7i!j|4Ut3l6m=Slz{ z9*%i}0*`uR1Ewm8pntcZ7-rwH|8^sb#tr`1nCH=2<;lb2)qjIBqcP=H=f6w6U=~O3 zb$^jEn{V2vRS;QUDskz;BGnnVxaIE5x92yBZ5Svstr9_@w0%@2OPmUv)Tt8Oj z>AI8RJK<}E*c6L=)i8~*bb#ZpU_6E05#P4Uf~jNe{ps$~{gg#^v5t)iix-hi{zV_3 zI=6l5HQq+Ueo68xPCL*(tWbu~pJ`;u*E5O#>1N9w-rIai`q)8gK5F^~>5#YCEJc&w ze9zI6##)SXoiG-DvugZp)ypqQhA(R~I8x2vc-$$a=(gHUu6Gjb5_0&C`k)+#dj9R0 z-jmiVPe$&hDzorn4XB`v;3V+Vk{6B#>pcUnn)^ehcjrd9>_E&nR$FVVS)p5mFkuvTH)iRKkLAYbW#MN$P05?)L%|sCh+7rj ztou=~*M+&xFy87{hi=s-LEXMj)>It+#3`x&C0w!IDr3?P={((R_F00QkP9@~n2rJ) znQmGFxC+`j+NapH?>r^5Lx(h-uOnWWJpq?=S{-5!kG<5(dexm zU(4=zj};xG?{QNPh&dk?C+m*%2*7RO6*+^#CsVwUi#VCvj-9MrFS>9jmXO_iZh+(Jh zn0;8dnfY43q;h8s3fN@U*H!ChY#Fkt5ly&<5z=}lZ9Ku2X6~-My_WfTmQQV%X;`;C z`egO$=EnRZ8h$;K8;ZM}G86Fj;11c`+n_+V?g+)W$1SoOuNK(GrpU>kFffoXQr0zX zb_E9#rFn5|&V=-{zr?QnYdv93p9!D@%vY{-A@gz8RiS+CUlY&O1x8ge1v`d zBFK!6#rI5y>`&bD^W#CAQ#%=HrGi2Zi)kbFkiVCbSfWk(MqwDz%180h0XMq4AslET z%Xp?S%W7xmhY<_qESu!LxL*plHJydf4yb(42jB@fSQlGO($$=Q*x2K9;j!aiK=1?Y zoM~fdyYU9=dts`_5#n2SgU8$3v~Ei0(wO>lmY$u?${vM?J#aG?&nC1;WHJ}t{c}i% zd`BJZj~QG|*Jc-)Y?2*DF;LU;A3kpiePBD0w^DyWBV|^8SR7^}X~BmfE8<{CX8G)9 z%unHmjPJ#%7JF~d1m87~dtcea#WOIqep1oNT$GW@IbrM>XxmV8giUVoTGrXwN5{DSD#S z-c2#gRyg-*K6EN>(W>vNf&x&2D5gxjy{L3BQ(@FQ`qfv z_CuwWl!pPUz2q*%b0g)>bR08dIKShs|e8U!EOE?&W*y za?g%t`jtS^Oxy($0Ls74lP#baC3jA+>2TYUH`*&cJcIF(P$Bo(M)j~qQDNJpiLcvD zAhNgnTkD>H`f@pVm@))S;nt^8hI%x5Tg)Mmr$h0on8SQ-rE5KA=&F|zS~Bl0&b1t! zev?|Hy`xT8KoaDiz&dvx*;DU=Ry8f5Q5Y(|WwYe%J7pfs)>@hyv6zwRNkrgaH1N!K zeB049#wJaBL)etBMn!C8b@~QL64L;ST*`OZa(r@W@*T=z;*WX@uP4hTE`>MyTSv)K zoy-tk7sXnd`tZ}KSL*r1iyD7=I_Vv}k0A+JME3b1=Ckt^d1Z5y+$dmq?-kWo_7@3$ z*2c6eP*j(WV#J}+vaT33fLR<7XL~2(W@x?JBJmuPZ=?Kf zbCx|u>`8OyJKE_B`K{q(xtn1};!-Z9M_wY~{wbL+`DdQyIPs8>qmw(|=kmaMDOJ!E zbjeLirv*1vS{Hl-ZHu1v@BRM@U+|!=kX(IA(>xqmr0+_}_RMT`j)CP*j}u`}DOOJ! zS$rlQIw9}hwmVD*3|q+bkILCy zGe0g_3NpE_Yy6Rja?0{_bEx{FO4qD=y@|YpK>sd#4TjXRM;(6K?|GLW71?#VKd&fR zCeji+kyox09NnWk_LaT#UP9F-#fBm^P)S!rE2wTh+N@K5{qFut?Y|O|{hdiWXJfhs z>X``=qD6niP+RI1%XTxv8wJVZTFKXQ6Ni{%4qFMe zda#Oou|V28(H%=y%Z;#~UOY)43VPRjRJ`68+|#bNUeZI6@X)bhSXhPsc1l>^kdY9X z;z8POY0ebq3$4v2GW}lp1?31yzjTAKgUWYA8dYX<_I8;X=Vxmp=TavH>;v9hJJV%q<&GJ-Jj{{@EN;zEHnRmnP#xve@<|#;uPm)hOLHwC6(@^BQtQjenbi%D*v{ zseZ+r3|d~&nL2ndzk1;$^!FKCRTNGgM#$MEUHV(2A*ZZ$p%FO|Oh%-uha!))(A-5H zC44G$ru%&wW&2wCr1OfF`u^`DGX zdm$idgQ`lh-y+F|-y;{%Hzm1GKMm_ETew2T^&Ln%rBv=$Dt$qz0up`955Jgt-#EDApQo zFg`ga-X~&9{dkh#>-Sw_oIams8vzZYBjj(~KoCb~BRrF;}- z35ue@4L=SUR#^4>7ML6^*=z`gMs*>k0pgm+Zy9aqzs@OZ4@xwQxR2Pf$TaWKlrT9n z>Yzv&QDWXH^}DtGe3J|O9(&yw3~c9Cm2O2!tjd*S`3;L#QIhsAqZBUb7w6jFP*c-G zvpjW}YT)m4irJPJV{5Qh@jy@gco16Sj~&LXCP{c_0|S6fzH3Wad8ftWKSf`;RWICl zzSjD-pgX88Bw3R7c<9B+ga0Uluh^rH)|Zr3({=;Z9_`l-d2-u zrfmDPO5b9NE@++B`BIh9rf3*Lg6?hq)x|B@#4P2JLe6i(RSYz0 z?uUt%w0I_tjWJbuNf@-mc@lrp6ZLF(7FNjN<|?;xTUOlXw|}ky2AQRpp>>?iK#{c& zRzLAQ`x3ViS!@qdwz6w%_3odf{;FyZsu$8lJ*~U#8?5Jt%GIDudy)a`##Sy49a@uU%j6c%B)s-H$inkVagYPLjZD5gm-_+J7yec z<$nacfBL?YA+G|iloD6gOf&joqBR&< zJ2mJ(AS-L2=su4Jh1364>gS4{19Ea#07PX2@GA5G8fieX`yOXA0U8v53r-w}cKxpb z5GdTfx2orkF6K?*i~zcoX8ZCe&47N_+}Zh(G-Bw~3acM)$0=Xvkcef*e9RdAE7FknyzW#d!#3F!^PVJ~zoE&iIFz|wOR^<|6+I{M@M9+Bvkn+buBuExg@~HfUU|ojU zveSvUvc9OL4KQ4Vvh`)d6ipaUQBPjSjM_Q3xMCS}MZm|_$V}2iGlKq(m<8yOhSa&X z6r=usiZBhR9kJ4KE?D#tHx-Eb%q+}i8ia(En(v5d$sZk^ZY>zcbYV zzR+KwkH-!uV%|w7Kyt1RQ01_@?kj^j0SsUmQ04Ol6zP^r>bYrUaTmPh`Qgx+9>ddk zTv~J=Py?c~`qxjZr4QH<>llfx!t+F`T4O}(zoo`L#k9w;gcRp1~R_g9-u^MQkC+aT2!0y+^11)&+>Dt;jTrFMU@nMo$?61~d z^i0@%ftnumUd2A7=!z{3%1kBI)wIoUAknbj82FAM7LCG-ziJbr|1@*t<@x4YOC)6g zOE0cm0O!AMeyr9LEDO!UBB&bFrS#wUhs;~+Qm-PSx-y}g%P;uyf1+F-^S+&Mjmtu} zMEGNLwBM+iX5jU|8Lqje#v#gEEe10wRY0=1j4<^=e}b`)eG_bk9#DdqYDjoNd6Dc( zOgA>B(M?dA+OGY}a%`xOwDh5R<#p@El!+@XFd&P@q~?p#sgaR^SrKy*30%pyplvg; z4gMt?cu<&CXTqB1U%fv2C6R#~t}e=6Sf4WyAaDAP83Z(qWlsR3!~_6k0d@jN5a2oj zu!3C-t&o8LW=^bJeG5o#N%Ik!z@?6fK%T zDXf8sCEiR5&7o6=-ntAb^>Ohv1i~bbJ7gG&f5Z)DsSWy)KEOlPV_x;svRaBrwTt((hmSe5sA4Hfv-xMg2o< zsh#l{=!eX5dVvD3V3Oy3vP2b~xz&fPuQk(M5u}pq%@=8FKCwHz;AdQ$Xg$Yil*U~? zjf8bEJpW|y*LNAVww+QmFz;W7^A`vNG6*Ek4`f3&4`;DH)0M_L(dF*;;xJ3M9kHfc zBiOVdRD+HbEm$^j2GZ_M-2S5RQQB=!!M;SzU%$sS{5IC(Nc#q6E$WQ^sKplT1_{w$ zBVY9z`m)ZtG`>s8PCZT|{HF*pfM{U*<`ZnetKVMbW|LWe*@0B@ji>L0(Q|2ze)y08 z6pOx@AGkpnF)oJFp zu%72-!&=UtSp1^YGv2M)jyMK(N_`UX@TU*j`W+mk@3{)H2x(*0+%!JKL5&g8GS-oICD2?@pcRF=J7cgPF1|{#I|FPC&tA zJ52jUAK`mt9#EA45E4TGc?}Sc0FHnHSAd=#@!{b-oSYZ`0TmEI_HKJ(6;P%5^Yska zF$)HW=@)$^3Feuc3xv|qq3=^$;epEEnA!FTtAf7#bqUKIfa4#LmubZ-Ytdf8ZT z;C*LX;-@`K5zYmkL;D6;CZ7Ex?84u0;u+*Qj9LwXL}_p*Uwondfx@9W3%}hH4%ZBx zb-5ok&5^u8F~lkl63w8(?xxzv=jiyeg2aGTO^#7sTQTOIxQj2sXDvClo5%?F7o^sb z&rk*8e#ZEq&C;HpA68sJ^u4vd44)~pLTE1RiVzo~>Vd*+f!$TkhBVUi+$@oL<=jU# zujGKMz06>dJw8{SCYa|N_-o+`NSYAt%3L<$!?tXR%yyW9t$@z^dmf$uD;gd1skv?C zl21ki55aZJ%lX1(Zr16GCnhRS&Iu(NGfe5iqA5>9L_(;2a!9##VAWHBPGJsf}6L%a^prZBN@f2~masfXnj<=#}?1GXqS}FJGPqG6CcepeC3Vk^uTN z)VI1#CpMe*xoVuu((YDPe_m2p?{Zpa1FxSEkqPui| z5)|%!uF42_Jd<&}S3%&(9@@!Y5+sEc7W~qD7D1I24+YZKPD2LGyYrA*>?(@I&ptTJ zj6XX;!*R%0ZS-I>`532KW{uYuZ1fBN^tAGsTDaI4Chlo4cWbLvKUj7vbSf?)5It>= z955FEkI?tu{_uT%W;;q!cHjbnG=u#aP!76r2-zn!^!+^#sgG09Ci7|T*lQ=X*o{iB z=GhAAe=WN**DghOzy4dOf2i(_u$uyoCW`KlH_NYj4w69jh3BBo?Z)#Qm*QUdzV9Z| zw(n6Wv+cI_=B+dU^IO=p2kqtI4$IE^SV+@D*xshR9JaaQ{@5qZXiMmfQFEyq|0`1d zx0CJ=r#aMZzEK*=Q~W7?chOyKS9nzE4)^->7U1&Ht9IjQJcur?69XW$8c(+}L4lh? z+CnaRxOm9N>}7nO2zMw}5musCFsEmBRA>JLRgl;!e5iumrXWH9CJgWg?>bhXgTTX; zonSW$HVa|{vF6tv>@rcOFpn48xWUdR2QJ6CopHCRUWyT2x8R?*_r}il&e0|3Lp`UB zH;f!8_3)F1pBvQq619RWneHsS>PQHck}fi=wu*<%X8n0>POO$m`bBUX_mYM)Y!v_6 za%^OgpLia4`2D0>xFr->c|Q)oy+_8;vi@Yv9NjF+I|M=Wl!mmY1Q1sF{mhki=+Swr zQb%*BKyQfj^niMRf4I_b?}EScJVK^9@`4JCDRc(%Pw1>~gJ6ykJr9BaQp(^GrTPM` zhH{aVkePnx37W5PAwk&9>|32}U>6Gxd?`^!JO$|yEgwXi*sHMegEPe*n}E#DUCxJl z;R6f|eLQM!Fml|BJA7F3e_SF_QLcFv+BYE|m9Y(`81=w9>lp^XYJv>Vi)8>J)H{0v z=(xQ1jo)S5wwD0__U2vTYC8ppl%wO((902df&L6UsFCNzptk-uHB}YnEJUCBJ~CPV zKLTP$61PQVTSeJUQ$_sc=UY6lS4wDn2B+UwoJH0Yq<@ud%KkFbWUP~J%4 z&zo9V#OFeO=Q9Ml91xtOL?eKy-*F zFy@CP?Ty5T-yoB|fRfFm28QUx4Pg2w4i4#&v3`@TwZqQMFW`cPaAPDrxu15(t3q>yk2?Y#lcK43Ap%q|uGUUI++{)Nf@m47L&ykj=XeHM?eq=_Bl!pJjn#n|mG| zBH+S$rVV=b&%$Jflwsb}D|w@}(+(p~Tg%fDF8$&{euFiZ@@bBd$S3s%V0J!R?19<6 zzQvU{#Ci-0&aTTNT?UeP`4gvF{kZ`<-m(^C6(u%fhGJl8&cFyqWG-hPX@EGQYaF_pNno;jQeKSAVt1wry(;cX3Sy}0pC zjv;Pf<4}z*6UH!t#+;~Q-5x5Txa_X=XYH7D(zKW0WK zC(0LGYLv{o?jAj)V5TW!r-6nG!`+r{H;sRD=%gvoa)Z7W&17J;c@Vct9JA9jlvybYGoUAeY;lTt;%`Ezjk)feiv)2kTQxnAu*jmZ9s~_YFCxzaATMFXy z*e(Vaw2nTv!l4j}jnNwp)0@3yFWJ+}AI^JYU^Yb?TJXc$z;39>(|9nmpReuJhMgS177ZXwQq0wQMG!A}eo2Ur59G%EXL!2i z?bkNSo`gy@1?lC#=2jW`-ejsV!-=viwiix@YHF{x?}xw}4Lono93Fsm0aFD=pSS_s zEv9-s^`#%#z}J-1|5hr%{VI1&c*}>#DA(eVU%h1~4eLV;+Hv8MalCmco+5!WJ4B)Z?%7k~LuB5@{yGw8cJZMb}03H9|y6-gb2=sq-Ut+F+XOJf3GcZ=r zxw7K1hlvh!w=)UEAfuy;wB4g~b-Y^o*s_mZWR2*!QiR@v-b&<#9k}y=DY$EI$jyG& zcpL87l2E|a5ukL7WHe(R2G9fmRjQzIKfOc82k!g{zu6C4neo zt(okS8JAC%jXcCR!#9AIxocy1A{S)t0V(05hgus2#q-BMA9(o68&(*H{PYR~a&6qj zvBYHZQ+&?jiJMqt+{fm{YNV*F=6Sg9{&f&SvkdiooxkF(t$tx(D;-OO;F#F>qL55H z2)yt6g~y7YwNu4aWiNfqAb|e&)#!NsC{W#0yIka%lS}6Tsy5aAN3k#DKiqn8!DDn_ z1j=K#|t(xL!*@sQJQO(}~=`hc0!W1XZQn@BphwQ^}s!d zpa}GciWk`UTEFzPR~~G2Ki&B%#a7n=OX<)EBTLzj_iHae7_(l@kB(4wnR4OUKBWKG z5!pfY&x508n$f@^!~_hGog?OvNC_8rXLSuHiVx!9NSiWtd}Xu3N6J77CkXX^6yiXN z9H4R>Xf|ePzd)Sl5CHx7B`*@S#UPAAn~bTMGyX3xW+d?){P`YDM(eT(XRT*j($?uDja#g9h}ggPOpQwlBru^-fK9)u3o_);9R5}& z5GPk?014V(YwSvwQb(0hu*1H*B~=q@=R?es!jhf$xr>UW5y1rJFX))v{yjs0kQjhP zLVy6@6CK@pMlj%y_^%3#yE*DXSG_m%NzQcnbh?mrQwHtJbyF)MlhEKCqUCHEKP<{| zF!jMUxd=dv{k%Uq$CI?#KSH(rHNi(`&T27NNM+{ld}bms&%Ze^bX} z27mO*vo(!k1ElUZG=hiyatYZSbIh9&X0;}|3jR8ymy z{I8RCfDA1%j`S}++!NXBq9UCrI7F0nv02#gkRxlPP9Ini0vDo-S#%6t^LL}w=J#?Q z3Xm&SQ@hF*al_clkxC$>aXsO0Bne-kDE+bPE1-{_BfH3zzT|N-vqxvr_x-O7ZGPQA z58$qVy`I{g16a9i>7)0IA)*@qdFOAGv9bJon~#U>Sd--+2LRJp-NM#ga0VD>w{}9J z*tBd>dml%K;V_NR*sn}4Nmf#$SG>yb8);W_b^QV^3IF5gysIML8O|^;Fg%AgxU7r% zLK*;KB3yg)=O*B@%J9Yq98hvHSOA?|=+f9$)gPGCaWQH{$^U9jE!r>1sj-Utcv4CM z6;g3cG2x%%t3M{3r&i4ytXK+jJd-B%HDo5u$Lx<4m$juXf5*)+_pH^w+a)u&Vwd9C z{T%ap{MzSdA_yEV$>@qNr9tX?O;TcNe%OnLkn0!aVt&-Mc8?GUoEw1X_o@K0Ifq8^ zq;SSE$mk6UQ#GTTeGiJLZ zlHX(JC_USnB{9iUQroUv4gAa+L_LzQrkq0 zduj$HdP9`?{3HSKI)#5nZgtAle=)oFS@CnR93NF2mCr18kp5nUJ3i@elXvz~V_5PE zm8NvBoZn6Q*zHyLr8N1hbkdqSPOFTx=%2N|f3m#YU}>FP(np&;ur>3EGnYz^ZyM}a z05g~NUtbB>rdP&Rb?agNO?}L29>fNhevD!dDEo(4;LI&MbNoG7-*0>N>RziP5UjdY zl-Zs;X(^eh>ogvs&Fmk;g>g_Z07`A`@_<$nD%4{hcYxM>N0S3;f-nHI4i6B4Nl=Ns z-#x&8gJJgPt0~|2JV4ES>s>MO4xgL!&Meqt?lE$hb9#2|OLM7^Qk&L8&quzrJ^Imv^Y(f9oX19TJ+;@h!PFPXJG{w;WY zCB^WYI!e`&`9~zq2qNQ{<$0QMUE-3V?|`gLc=NXCcB_O6A%!)5gklyL-Wx@KDEarq z(+|jAlGpt2aSi7&>-~Bt?j;%!I-5o}zfj?arqhcPse*Mxb{sg*VKfCkVuQOT*$d1x zp1klVOoBF%Yy&W+Ofb+P5&OkqX(qbT>TI`rM3RDjxY=g8hYTvAd>dybSvG`qhUTUn zM%l#l(z*uQP}p{##tjIMDO0(S66;8$Sn&6+Y|(7~^IOo1ZTKX6?Dl-)?>k-5> zj4MwwbWorXv@vZr3~yzY0UIg!!y~+dG@^nG27QI_|Vh?yoKECA1=f&P|o|!Ge@DrzB1tN+doA*&EH0)$wvsx96H-JZlXK zCK93V*lAs7eT2a9AF^{yaCac#Y6_i!A*A4g4o5XhQmnDrw@jIniZIDQw|k3=lP_&S z{XEeQCKO*TX`alTKacAWrPm+R=(Nf8K6vLTKOuq~{RJIQkZ!Nou?iCQU6}=-MsFe;%j}eF?_kIKhWUcWureD^gE=}f=qs}NW2eL0nN8Wf~UXr)Pf#- z3+s8VJL0Y#$SZ#*i6D0hxNBg8a_wxdqW}6${{fdqTBi-P#h_82iBz`T5&#fsHo)}) zP&|yU_a^~1BxgF8QJw2gz-00N0Uv4|f=S@{o@UXiAge**gQ26zaceO?0{eEY9+i=L z8k{2#ls(Q!7;rWQo?RV^=BqroOIU{Y*1jGE+0EW|kQeKXEY=qb4ml7S`~C)6vUY%*%re%_h^q;p}dh zB!!e;ccD^>tP>%bV#Mm|tdMf#@RZGIMBKUR3)rIf{TSmv6DbOo8TE%vl1)30h;ZIP zTv3+O_=;?W#ER+RqfMfxIw9Tz+81-feaz1C?7_1oDzN1Rzl(okgcVm!=5^7vNehx==yr!dbo3s$%QJ+%Wco% z82f{`VzZfIw|u{(*TJSs&KE?~*0jY+e2{{(Qs4V+*dFw2dqpN+#Ry<|zq`#%v;LP` zu?)q0O=1j*J_k(}Vw7A_61t3y*wBb1yNKuLhGKgdB_^e^?JR+%wTz+8b`Iy{CX#yp zuKG63kl&f<+g&>`d~%!sy}T@=SUCj89h8qK9LwppLnW3|J)Lb{1K*!;rg8hKYz@B0 z%2v|(XPUIngh$kV@C*52k-PJqR-0Z((?B8~3Zb&v>LfhTtf?2wY|?Pzk0h96P;$=q z(2r%hzFepc_nhrU!rakT@tx@tK3sf?cUZcRF<29rhyUb`!g0PeSpU=Bxu!I4zhy1t zbk@>Avb868g{oCx2RkIib%^o;dS*73U-e7$UBaIh_o2fc_=*kL3wc6bjEccn5M3DI z(xpjg>z6|>;n^m7p!i7r^GDtD4T|#xCIpoq^OPvWhyw)p545Ra=)ch){1Y@2R?K0W zuB!{?&V1nZR^g3D*ccRjI2idIlLqEOpdH@D>EJguXiCnJ z><%kk$l2igSi#_0p~wydAKGhLVdmgc&xLMNWmBN2Xu!H)FXf(CwJZ-j8Tj?@9V8&n z6Ud2X+EVWRn>QE`H3dzM-6OvSZfAOU6hhw*6;=|6*a%J1-Sj~Q@nW2~AG3>LCq36E z6R5TXdF2C^jRRKmFZ2OtJwF(c+vurULtLKda~Cm$<>%w@@N%cEboyUFK++<~Y+2Zr zfU?naeO3JigY+{K%77Q&=I|%jWUvEQ#d%BpXMOku6=^h~eexP2$Brs@YK7Xk)b)Q~ zeshV0nNNJU%wX)*;HqEUj@h#7anWWBazr6WKmTjX^Nl2lZB+FtKnV#)$g2)~f++6+ z?CXCR@q9BtqV^k3YH%S##uniwHzf*I!6M6-bLr(kV8)TOGJVFMNfA(2veeluYpjEu z{#Y>^E-yq7O!Yku$jru9+J^`t7X28s`EXYrc&oJ06BnZWiOaD$mR16GkD$+bQkH@< zn9a@+rlN14xFhfslbCgDg>HSub#~-n9%J1-Rx73Oxkl?3IwYC7mjvfmkCgG8O7o}k z)WDCj*@I%c`kSgz;SI8s5zelD}DEIC5L*ab;f78>8%I)UU5;s7SDt&Zco@3lc6KG503XU07|-!;3!| zkbR6m4ff!wYdwSd<`a-Uc^rH;xvtqqEFaAty;s+Bw4???I1>KERP)PdbX=9th?dken{$I#om6dmG+DA+sKsv zplia8f5H))S`E?jL(V|q*~|$6QH|z0RYRIc;B6p^%AG~L$>h4~w(KC8^L6MDJ2h26 zq9wNnxzbF-c&Mc4OaNg{t3&vo^{+48GhLXNzc^^@+9gZI*WPH+%_I6iga$NL)cTIm zDGGMdas$G_{xR;U8JZgLnc1bOFT%4?-=NR{@E(>o)ILnmLs&1xD;;!vtcW^0-@Sj8h`pu4x;mB~x zfHO-f9Y-UERFctrQs*(`I*Z~DaeJ&r!%x{xJdb&K(EJ;QqOHV}mw>F2k!TbsmqQVG zHmSIfD3B*?!*y1WWnW}dQ7ixCjH$;Zp8kTVl5bfn7Vu53nzCz!13zftVr`J)z{bBB zoLymsVV-tNRKu9Rc>917$XC)~gww)8gxmZ1L(@y18tNrcLS&UDrYY?ubr?mUAi6E+ z?BN5ffM_ASlceF`O~>qfn6SK323y9TrzRu=MEzE+y23gyLW#ROLg1n3(@#UL#dJb| zHB3(1|Dgc?Lvk$6npB$uC}jkFj{Y|@wLTDqFM3s4xjYMk5ZL0l(gw|F&gKOfRtRr4!>>0|J8*BbN zU~?&rE-8_~#NI#9>b@&u7`^-W%!CJ>oI`^Qi+SozIEqqfk!5S3rtM#K@qJ;k&*{m` z^ee&6N&H_XSer$_q}-1xMTcJm>K zVwwCkMAFxgenCT=!~p(NtJ`VjZBV|Ws6||t{sY7mH?~Q*)^)0oFwO#_FdA2_ueAg` z=xDC8;dQOX45_PoVK5)CG2fmnp%a!))E0l)Dj4&BfOj%v-jUQoJl$4|x;hO0^Gr=v z;kPd9%EfLi4?rUZ-sU*?(upd5&{L3YNULtARl`d|6ucHBh-nJG)Qm*$!Euph7iNvm4!ca#=^m-!`YRU)hb+DBSc!V2_^zvw4&xF{_V0 z{66_e@~3ivmfM@rZ3G2Wx6^Z6X2#1?zKx;PhfF0>1Gs`IJB?yffL3Yp+y-Qw0L)z% zDup=2uVYIK>)^;)WJ*)h&-QsImO9Q&L+o=;76K1Zda5!Dk38rUXF8IL-ECRDxZ8Jj zf@pko^4>m0U2$;EkmU3cuOM`3Gh*mVX2r2OjvY2PM;KQid7Ypa*x!KhciVw?;gptU z`Gkjr@4Vbq4>V!Lb#d1>;m*d+T}}_tH=4MLN;W5nQcV{s9b0_8V{(iq`owS~V>{$A zF{e%zU{K@xfE5jTi=LfzR4yi1h31Msuk=58sXwpPhRh)q@UHaig;OU3^Pz5NG@$n0 zK{E9vw8-bbGvm6J3Z@Sxnp`Y=9}fyeEYq^dxvPzU*j-e0DJl%jj25Ms z*F*V%VKOVJTNCxVJrkZ^`_9?cz{eq}oGFM^yJzSTL3J?gyYq`S!dgnBc0}|>Eq@6w zx@}s_6v}2MH>w?Pq~-mLT4Ed-u}oDEN_ri}noNl(mue1sFY$2x^Ev(zL=uAe+ZV3F zdx+(h`4z=w`pZUDPpQgJIeE{B0*ekm9y&4N3}r7I2-498ZEq7$na(s0+?lr81 z86KYmVg+3O)F_(=Gc*6iM%_0W^x9rzkhW{$xQ|t~U3y+u)70mO6B%3}CS0dr@yzGe zl%+d8fwv@tERm#Ifv^a4Y?h!QnKCEkEFQV@V|U^XVZ?H)irkc(NoB1L+_Ghf$~`j3 z+B4B3v-P_L{Nq|8Bo|CAMMIyr(KwUJaGXk5!dXI@mOdnp)56a2W=?<|<|NwJYxi4S z`M)dk+Hq#g9;sspZ8c=%->EWeTYTom$8(vtyJA8Y=dY9@GzWc@dPYQiV)^JpJC=dR zSRkR18Xalx&|D}4fYPEx6&Q*!J)$vw=-T*rJr^xOohLpR<+aNYb!?8I$jJK{dL1Uh zb!qOqK;V3o4#%a?f#C=tr4S_tO3_+CHZ=~dB4q23LPtEDQt}1{aV-ALIf;wf^N6Kv z(=v0wYGPZH!aLaj7MX&89lHsjUQnPVrLPYM3L9L&oD&6>`;ED?Ws(hcxYoh)|G|Ul<`Mj zBUwT9Jk7c1iILKYWwd0^hyvL>vJCV1(D)FIV)ZU+fW~Mc=LFU>DyWiD;Uenl9D*18 zDERMG<~%yT=DhiBE(v@G0i~EX-Ttix-#%PJGh#BxxBb^mZB1c&iiC?$uomN*JB=X} zr@NjAMfMtr@t3FH;OVtz_NoIl_smJM?R3jR2WoK?BI+Yhz{}uCJ;7f9g|nA6DNu`R zRCi}*YKw7cTvHCKZkBb=XN>xZu*>EcKJg_K(8vRR&|l5X1n;wYAbfyMbR4YCB!xwt z)Ed6svqG4p?a*dUe`&X!m!<(4xg&__`(nc5q8j~YFEUH(ZmSHntk0kMSvv3rFdan~ zlzwI4vYLVhREyn!elvG+f^9(vD9S;W;biighl08mp?3IVA2K&Ki{|Hx8nPok?XmZK zXA?jf5bRx3H`vhBl6UIw)+zZOjMYEPu>i{q(AqjZ<`Unw_5{?ka$|4ax^lkS{GKZp zYlD(NW)UZsWJ8}>nyviVGRXshTvy+J0FUh@nS=gMS38iJNwfwDZ55(ugw|X$8f^D% z`QwU%slrwdbgH~jXohZ(@~r>*N{Vf$?1u1h`Oi5e@AxaM88}ZKgnMs1_A7!{F2^g0 z2R|KGnossWF ztuxR%G<4rARccSIM3wsNjRlVA+=4F}-B^RNML`R2LDQuRHZ>D4qo;sCcE|dmQ{oF@ zedMsiYNW{9vr8*rFiT}Ofql1-zGF)N`~1GE1tx#Mj8z8M6DMS5o*WfChF{xt@=^xY zjYm7+N^>waNZQxp66hmJIpBi<0X*Jq2L`DKF%vMFim6#qA3{K7#bF*^+t5eK#evzn z%a;rFGho$~nU$v-G=u>mtA+j2fJMs?Sk2y?(B; zWR1nh>!__SFInzQKHs1&LJUJsDu%rd9p5CZkY2&)BcIh7jh3Z}6!*}ogD&5_?SL5y z@Y;0(8qNqntN8<kt z`OOWhDJFM+oV&BIyO})aB4mDa2}?j`SG0zKlzc)&!~MR{>nw7FWjPcnmF~*5E>=a% z%)F~0HpG7yM%)>-^Bftag+sgay;6`KZWe^ze8IR~UdQY*)ias|DJxw>w<9TPhl#*O zP6UVVy#mx0`TAMD6AcJ|kT{`$Wxo;ydNPR0gK38){PL4C)b)0Ihy*(BKUpjQf;0WD z$tW?KINx$iZc0oIFe;iY!)MWNjRY998@UlA62QrgPC$TIuKum4h;G@j`$MXr2g|#5 z3)nyWzVL6o;&A2I;JXIHzy|%&+WFwi9C^W`qS0P$$<+kquqwiWWT&?*iWZL8fo?bo zvoj5ldN znk2K1mW5hlIHGyRsN<$L#+{v}F2Fvm>ZQ~TFWorS-y|Cof-DbxCPcJymN5EA7mMU{RTo2dNS`^UE3cBpl>dfR<}>?B;7H z=CM^0FEOH_d)QHte1P&h)Xd{edd%kASm&%3RryFPnjE4`R(-j5RXUh=1QJ##$5zxw zqJVG@sznrgZ8m_x(K-LR{WkPOmozjMjfkcKdjNY%d#MvWkifL|Y&nWk9JeP_m7KZf zg)r6=h41`>=%}sv)9=(2u;X`sU&f|ef)1~Ir>MtA?|*Z1d0sBm?YDGUJqf&(V)xc3 zpOy~*!mSh5YAN4Ign!h_KwLYaX`9xcOS;fa+V78@mlW?tY`{Sn23*T^rejG(V*%?V zEbp?I?+sYM4Y9gfe)23n-c(%BgAL+8B4U}eF-YVSo9nqhbM zu7#EoqhBiMPuA-k}iN#XWt@ zL(=Ghz;?=flQsINq= zn;&4+8!%p&?J(#nlvLe{HFm9o=#K_e7>a_mr8}K=QhgVS34hf6{qm2%u=8cR11wjB z#xHJsNowk~F6b{XcdRq;4}0?x?_DO?dftVkS^qt?w;fQ=07fY(ploK}dLfO49R<%pulSL+BIsMcALr!Q#uqU5 zxx5}u@hjP9T+U3crVVY?AnsnX5%Z2?nIJZ-$I-nZ1OEpYRN-s1aAbVQ%vg9RAU@j{ zM;d3~PfnxvE|4tDmiHBQ*mv}~Z*?^6671Z^7u%~&8H~E`L%F0C1;${_$p=iOq6rP_sj3k5=O5L7j62|5L}?spTHwNqm?&5 zgrZ8=)8|QNrj%Rfj#fBsT#qt8d(I0l%vF-c1E`0s1)jLj*z9H^zBX9CYbeKYj2%ov zAK=`Gn_DW#xbF1GgYd(C8#8bcom4MjfEIA($^yKRh*Gt)+U_QAqnvAein@IW1oO>1?_Qdy{>O4|YOqdr;U%@db>BZ*XK;l6kss z6m0%H{NpVmRDO2-kib&4Gq6}pmT_}A{fM_@ohiOOIkn^VJFS&KEKm9uRHlwNy*=wz zQ)1AoKV(s(#OIe#k%&;D$DocZHxRHh;4k>DC#myW4YeIXcLYRs2mLTUlUO2EtM z-J(3b9r91@PQJnE-oaKK+f$?x-=)~KNsxY0(->?_^iysw2VLx>R1@-DGNL2uE%&Zf z%wCG-4IDKl|LIf9Of>t4?1fMfcAQtet8o%q3L<2+s1<$)z^SwT|=69F*(nTl4!5Db@M@}s88irSA8kY*(+aNe@ zGX2Tq%U3f-HpSse$;_aW%8_Z`-4au1tAF?BEVB_NU(ARL-u$svw0UK$_4yTds|a=g zU5^qAfAC2$jHm5a3o47B6otQGy9F9Lc~Oy5Ze+MFLr(6G4iYTaf_;nl6ZE3_j}*7c z?^p3wrP3DYKfZbCRBvC{oG;9}+@DvxrdD&{?_Dxhy*_-|UlV}@o%?rbnd+8z9r51u z3kldYx%IqAItq~NiD zMj)e^@94>q=)!@gk^8-Kzt>Y5RpU!(o8no9W3(Sn+>Q*w6|D?JEP0M z`qVqt2jyv6iI}8A7rIjJ&9glIR1Y1}V_}2Pit>zHvn#S=S>{fMxJ#Jl%(eN*jx3TW zqf9%PXP^w_b##=-x|Q6a7+G%y9Jexlcl@~?>0baP(duF9uM^Nkuzdm08URnQ(Q1-J zG7L7)!j%qj=xBmVHe}n@|AkW{vvWkP{>H<{2ea=kx<<|*@kbQ3T-xl-idESDbDy-U zRj)Mf>zOWj-@?&H^Yu|~+Um{t#y9b#G_Z_JF>fl`Z!^)ZGX9hhQ54h7C%6aFYq*iM z=${UzP;YE*eu8#v0D;zjB_oLSj5Jh{dC)1diNcRGYlObLO_Yk>e#<5xyYt&t%htmV zP&&`QJHHIk;`^x)h&o?@)QeGqRF0G8~7%;ohB+o^lJ`!(XbV2{< zQm{AW6S9xTM@0XHVFm)CY`?ssi4js5E9d(d5F_w>3rLIJb&A>qY4dl-3z)(_HSMW= zF)p3rZaF4Ac^@Z9iW-R51*y#Ed49rI{ctv>PTRiw4!6lC;>FW3HeRTL$;s=-jjj*T zvu*R_yV=wH%yIsNWgOm@KTT(NW^w!&a8?b;^pUs}pUa2^T{22x?Dwy(@^yGpSVbt5 z7x>zJ$x!nyLHn~kQ?Ff8!_lPew>`gs%Q|Ft4xVTH*$9m+VpS0m^8>UCO0)@G$VsbZOV}2qN1fg^gGUu&TLo>u0Kgg?EsXPH1Y)ZHdU>`{|Mx z9=;>mR2))T$mtRZvJJJIflG>}f15Hx${(RMjVX_lx5PGy>dzpbU(;Nm8>=$)NN=f@ zGy-<+$7^U?F+vuyOWRa^6S8T4UTsnfX*_jM1(R04uA|7aT!c{)l?4Anqoi$x?0M36 zB?=IBqeSP^TQp(p+>Aw-tsMvCWAlDJ(3-llBFr6n(FQbK(ol|98JzP$#K(F`>W4jm?jH0?G8|9my`fa3L&CAx6w zR|_Yj{XFX|MX}<1CIz~8`*q*0vKzJRPTShWTmAWw0PiuCEP&%&D!@=3qIALY$YMex znc^+}WH`6uT^9X(In3Jl_WI zG(0lut23GzxA*cJrd7X8M&`5TE{GAuOYY-> z6pMbjv-cW)0L|6xPb#w^#Hv_}^-kgKI~02tS!YRDH?$S& zQJ?(1n5W_r?ruNgQ}};0YgAGHCfH6cZiUEjsI0sJmJ@P`qZjv#ahA8Ha;}jD5VPy& z)U>*mpm|pT+$6Xf(i!}XWw;C#_9V(G$Ur4bJ5g8BmhXOR&!#p6?acvbAj6piq6P1! zxq&P)Yv3c8wJI}-p906Yug@pkUD=oPOm0sn0z5$f2fp&h*0I|KOaO^ffMZIucDo== z#W^CVeLjl>jX?eOoDdk?0o}!kQVrH8d_nJMMqz;zR&r=ewl~mEVU{Tfa)V&A}ECx=_nM%N-be9mIUkNiTlSVMQXo zf684lY+;CzX*Cw%hyVSItD>=&0$1jY{)&W^Qytcj=mYP!BuJjSoSk(VeVg_>4Q--I zg6D_$r8SVRWn)}Y`~fx=>6A3T_Vi@g-?;IUCpIUVPE>JuoO4M}ga;K#DWKIei&aaXbcf1UN2EBF^tV|ZQu&{h5M z7@`-Yz~$#X@9pxCp>1@ zoF!bz#Ucr$-Qr(bMJN~D5U{=5OwK1pS-5Ig3ZbcG zQ{^>jQB=GKN6MZ)UmYq~@^x0OLlEzGEegzz++RDLx*Xv#7432|wn$_%Zp2eT{32AQ zwJ)U}0b;~3E1Cd;8=srRGD)y{uL@kcvkC7;v4w8P=&3BBC|9Ryrz}zY?M^U+v7iH% zcHAk4%y-r^ zGjxk>ttOYu7%|~wKkI)RkkS6x$aXQ8G&%W*0d@=*vrqhSQzuFbe?2ujd%83^W7G>u zT4#5ax<`^F9$J&xxc3D`%H64axvJh5ldfX=?YdknrbnaWyPnv$2)pUCr;ya^7~hmK zxQJ^1K}cdfRcB(nzIKN48F;dR_1_&rMrp>uY!z{JsjretQQt~qpIcVwvRII9$)qEU zw&4ciBJ8N3t8UlREBj($hMddN69f#9D)DsD>DbxQoyM|gExs^()^!$i1+INkyn+P& zB9cJafiHDt00|MXrWp{Zma8M>O?J?FeLz3$nb9gm3_w;|L!)8FlJD+)J5!E(%Eg@B zn^|m)>qtL&uxV)o?r%r=KlQsdd%rmiGdJWIbokf2LJ+_OFS&O@N#;q7yd`4bO*d`t zbjF+w?3v-+=ah&4RFPP!d0XLMC)OFFpM&q;L~~sHqIWF3w-BqW2aTn74wg$R1kT!y z_9v6|=DA1*?)*q8V-t!FGd@cn{qYBeUhEX0{>^sjWh_ARZ{$+rarG}M9+^y`4TN;m z?qfrsBm$`p=&OAI`o@p`8>_Dg7B+o&rWaCwu^Z`gSJ2is+ydpP)J+dx5!0aknZm8MnY+%O9W}@ZV-^}u7BOn^Pczn&VR<) z!{IR4d#}A><~6VRP8mpsxez~pE{S6trne$9OxMR|z5%EY*qbN{VcITd(HkE6RHlLl zSeg}Hn&o%z&X;6CJ8YiunmH>e3kzmumay3C-Knn*Eoyk{r8Ba&%3I$q1O>_q=9NLm zg@sW=X<|Y8S1~KdRqrcw!a$sdN?3S#M)5?MTPwFFR`=*rug&Xx+!Lnm)VrM*xVOxH zZP!2dWZN&;kWp3QsmWzc5NSpwN!%&(nhpy*Tz5ufW&j zGJ`t6A7uAKHtL7Ghi_%b$w(Rvve$?k23Ay;GpxR4y1{~sb$%_bl1Dgv^oPMp?1{0h zvGvEzZo*T>yh2NW|oYzB+R=PSYRy$keIcuND5ZJJocQ zIFI{F8;Ue;;!;D(D`D$f`@b--(ZD|VVaXw%Np@ke;CFM1Arhiagd(PMIkhHN-pr4h z^G!~hr4nLQ(2I{cyWD@5#eTmLLcz=*Ng=fTck~GFLlknI(&($ASGzac^#m+f>FnZAw8)fB&VW+-R!()Dq?I* zXN*;KPww*YxOsXb{{oZjKoJ`>^gVBs{TM)$dYyeOe3=;@Qb#*>+--2L=uG%hKR6ai z0}cy0GxC*S&D@`>QJF=bvW?BtUArG2X)gt5c3qM`hCOPQF8=s3V?f%hu?5qc!nCmc z*Jz#Z?^cX#x2!EHN|J@XJ(G|;HSIv%TWgmXA2^c0vD@yzfiXDW6eUQEjf&pkR|4N> z%5Wl)bYsjxAML64ok(Seu7ZWSV$6{sX4A1IrxZ9^smUIhV>ocW9BeF>#!ntMdjcU= z`6A5uD@&b;wtibLrA9X_x^7AEn>wxaXGdmgNc0P8U_iyOUjzXgX!ZDWtG7_U^>1N^ zOt^BMgLJsa8j7`;Ml*k#2qWGT9X5Q3H%+Je&1T9;4}t!*0^P!qEWW~d^vk%B5q>W$ zRUC&8>#`2($~Q|+iairwBlcgxC8O!H{W>uj7sn~KtH~+FTjaEOc1CYIX6=94nkCgz zsmGD<62jV z@1W3VAJLDA*FQwzjSYxBOg4@tLY_>-E}#177aPC8^XHz){!TVsJYhLrLChZ&IqH2q zTgv{MZUJ}D3ar%u9Z<(Vyq3K&SzSrN`=}1{j7(^mRDZPeErX;;xX=36hIeNA30XX^ zofy>Z#_a5h_z=3(*&ykEKM+5ln5V*bwH3p6a8NC_xUzx1^CDLBbtqnUmzx5d2);a) z)7K>??c&FYY|WkeD_00(FJtoujBGS@Y4wMN#2C$f!GCdPTfIJ7ze9HqWlg%pR&%T{ zi8Y~+F2Jtvc%ODGgPFm{aKgvr7@=7r$0^YuMk0}~y<@@++f7aB9#L+~GD0$i*0;Eq z?H=@{bg0RhwyU7liHKo6F`Y|1q%MAWMpcZtfNZ;jsJwDi4ms^bYCyW!yGqJ?*Lw!h zE|&EL>Xz{0LBnqh!r^!*vo9FKVtbLNu)L*zwZHwkzn^Qz>wHsE91Qt*n1&jqDoWH+^L-FhPC&LV4}X$h%h>2c zUKtvDC_>OQ<;op{amS{ROZt4da9}&c0{7bn@|d~RBzU`ccrC0*V_ksy3!RdfPi@|a z8GqE9any?%dnyCjC5V4rrakZ3vYtyV^%}k?Jck-As}wR_BsU`xjb;Ob0g|sO+q2;> ziQfkXk-CF4aF<~&J?XQ3R=L~jljCq5mglNRDNG~%qEnCMNUSoZ?_5s(sC+}COahSE z=eHMAWPTw%kCOQN>d&D;)67F>I;sk>;G^l%dW@W?5*Galy9ZrWxfiC{Z>U$9)Ae6STpa&=PNvPkZ1H@*zaFsrW{oFrH!&*HYxH zygg(r7+r;L5amV;dZmqCDSg`BSp)F}3$nB-(|u|!!wdZVFSUDxdwdyw#g`EM^Q*{X zx&8Ui{uTuJ+6W;Ff*J(l%>*9=U#ZEVP+QOApn}F#-Vi$@x*ZJ;xTGn^UAFD{;>5?R zI1lB4Kf@Dsb_q9QIatlbq=?eoD_U1-htdPtvGN7Dw03&Y4)Bk#%HJS|*V*^3mwJ_z z@JbbRIczGQL?X=#1&Qe<-%S$F@-L)d|C+Y=DLL@~lOz`ekTn~C8mh;-VF|H(+E%Zh zk+hK9xTfm`mJ&|pixv(AgdNWr4{j$4&E@CWsl%onM;&^u>xcIhcm&9ScM|}V2IKp~ zpcBC7kAGr`I)r!&YHI-)bVHC1#AV_}H#)`{&jrbn?~D6bYzTczxMY4GycSD{;#6J-m&B z$h`!{Hn}q^FF@^(^?DzC$q`v6$=v$3JnEYlAV#)%Lq;d~+tH*2%>z_shDIi>yd>uL zg>xixR6d@_kc``Wkpo+4h66J_b=H}e<2wnzn#4U$AQ)qG#W8s{xSBrIv}@c)&hT`e zb&MM8yq-m|CF;}~@oMhrwau38S0*ZX>HKiP4FWlo%lqa}@Wg_xSP0~9?{KbP4w(yJ zZqYxosE9567&!aQ0++pL`lRQ=$C1pKGNX_(GIN0l>Vy&qvH1EvJ2*HT4{?ncYz`zf zZYFCVgIWg~(BvBq5q-M}J^-aB^`y zBOnL??Z-EowzJnP$%`<_R%374#d!M)JR z%5)rq(SXj}PZFA6FksUIVH9chXDoa6XC;=N`Tz6-z2D#RrhHyQ&0=T~RoCCKev?Bv z;}_5*$!aOg`24ftU#{|>$d}E!0#ZW@kDjrl8KadM?5N9q+xrbG8RzZ8jwXYt%I~>9 zF*GSAXT$mh;c$sk$vtetbk3XMUDv4fZSl>u6O6_A9C_@vZ>bccHSDDfZ7en;H@cQy z^V8+US8WPn)SE%!Idjy>4?d z{kqJ2AEzJJ+?c%QdF`C{3TEKmJ|FD26g_to&{SAbRu(0l*F^vLsBr@ml-ezYyf}MC z|2o*r6K2@w%ukmhEVW&epDJ`n!vTe#b^ZS8lp|ljWQM4^Xa<$R(K*RCFZkZ9-Iwe0 zu+*oC*S>5Y(ZXm4)eP%i29Z7z&7PrDotV6b`}zkbHX9kV{_+4OSN+4= zAr?(%%y+!~rn4d@Y38WEMUWNIm#Fbh!yq?9v0g|K&F|M#nh&dw1bn5mcQuFX+oX?G z33?Up@iu(hoRz(az`RTgA^f%UrRj+0=8{$!m;!iZK>A~eao!qazA6ww^O(JFf2n_! zI8lZ)y7%5Yo&6dPso3LmTHyYI_qm}-W6#+6H*q7>!Q&3H`hx*w`+Aod_MI?0k3Qqh zJ_4b)(&`kK9ioH_?QSCK?Uxx1hQZfduy&mv1Z6({%A{G36Tkofc2YjcR`}2-mN!`s zo_QSX4f~jF@BK_GDcIf5&7naT8D(W@85!hk@7qtHK;*Xh177&Tad5p1r9!Kx9|a@Y z$#KJ_8?KL_ldTStyD}o;<0M5(jK1hR? zp>Z^I|F5+1g~VuDo+3aZ_Ei1UGo%pT{{DT%SG(^`L#CX!k4|u35pW7eeFz|#dIy0W zOjyy~L8YB*`hIsQxQ3#q6xm+~mn1F_yGd6TxajJnKeDdq6Y$Ni^(S=(Hm%2Dj@S~! zjDJ2l5?v7Mwj~w~{1D>pR37yxE+fCr7EZ(&ON2qm=Qeh&;uyP- zk+RLJ*rHe8zb59YZyar-jN%v3)ZA%jTgPO~cKC>RKU`?sU(D$LovUR486^@435o0G z4^cRWmhorGo+FA#ne~+CClc|$jgx-D+u7-VwqXfhr&depLO*)d;9958ziqyJ^IQ6^ z+zgr9Fp1E+z|Vv;O@ij&&!0b(+>aDc=_Y!ZTM17+!=n+G;1-CYk;lK7_^)o7 z;4gigtIKOWvwGCaOjUn_g%wt5&M&aqhmD?tmnH^Xs(O)NL^iBRkka_ zq=HV!$|4WklNKGHCDF|9e`sJ3=u1xLJBo#OU?cmZ=-0)i->3;i$xX3mBY2;=aNDm- zK#Pl-E7VF=K70ska@?i{4x=l^8G)1HwJEM{MasxZ4aoiAqu$c{8ait%yshj|9D!d)%mhIiqvv-*+qqCVC7qN9QuKivQqf$&a)9gmru% zW3ZsJJ$Q^D2FpcOvEi+OeW~$1m8pF8PoQHK>hDv&BojF8WmuP227-e7vX>q7q2@L> zBy&ivg=>&7yyse$8rFBTj4e|{$ODvINVi(6%A((Mo@aHlr7YM2UzUo-gJ$89PswzdduvC z`#WMy3$H7f(gFp&QI`qQob-fTCH!#yc7LG(%j@=B%-Z?|wE6MZo7Ju$G_NJ0l?1O) zo;iqb$V~q>o1k*?CHH4{1^C+~rkWoL-2C0xQo*=5q4x-rjPxRy+ZP{P$d8*aF@! zQ9zzU*>Rg!pk4U~5#?23YwomeFXgv_Rdk=MXW5QnL=d3_i9lSr&pWj2>qM(F8GcdJ zey?ldXP>g9V3rtS@5OyQBA@T(QTz#zwIhpDR$){jKV|fJ7$?tH-C=wevBTe;Z1tQtPJ#kGLQdf~X;{^kjk|*S77{XLx{(dnQ{3M- zI%d0vq9t>57wkzMeGUlBUd7mJi8!Z9FhSWd>Sh78^Hw5}aXem@`tGCsh$wcZobR2J zBnZ$k5y;>DU0_>#N9l!jlk=Sd#4Hwsbbmc_oN##~L;J2aj3>u*)dfSqM{d!Y0582N z9Hl!@3_dZ|G4ryzpDCd+Ze3AzGMA^s^GxF z5h8>H4nxeV>s|+pZ7+ix7v`O)`O;s(1bM~j;wb#EKRh*1fbR_pf@%>+6zEldEtm6E z4E$>?^I9Ph_MXGezAt{Y+C9445#9(c*R<5(+S7|?rxL{w5=Xx^rdN2iu^_|bBeJFG z-I7Yju)Jles`5_O91|f3B9rEaUO|!_*i8E0HlgT&b6!^Q~ zPt2Q&oba@W{vX#90}i#m({IiFKk{Y#<6Cy--40X0Wa#0pJYW8C;zG3RyZA9zHt-aX zw?#Lu**5+Z0~kM7UAY6*{QkC_kcCN{(3y{3`Y;)Hv{t^39|bU zsi5=jM-g0TSDL=opmq31UQXUX*}B>o5?69}gH&u@--xBosu@ezwfLLKK)Z+Ai*TRp z)zi&EH$WaWR%0U1Z9R_%s0{cW{)9^JI*=M(;e6ww_m>N+MQ#BqFDEALxNNdBOoWb; z>F-?9&Av}Ijn<$&V-_}Q*zVw`V3}9qTH!}m_s`mmKTE~Z`+xY|k=oxaMHKOuF>55} z^B$_*mF>s)BPREy^=o0F-lyk;BBJ6*OX$q_WA&h3m++C>46fLgJI0~)1x672=K~5! z;0F-eb)55VWjoSZP!uc`cI&vzKKW)VU5nx2>P4k+AS60YdOKBbT)_FAJYPKuMX7Au z%0h3m*_8G@cdV(AsJr-RXU1&`=sH1K*>P(~OhExXo!2@XFmqDAex0QuWpB^%MKL3| zs)`*b)>Uw1L`{k^vE)|PrkS$4w6!Xf1oH}Je=fc5UUAof^y#*GkGFovs!b37ElK4B zvO(dMbXY^G7vrdxpNR^snT~l*{8QR;;KW8{3~G9}=|t~DF^RVbSf8z1jauNZo4H(&Ru zZ+KYJ$cP#c$dP;Ob138plL0m~*QO}E&zbnXH(EB&kvY-A;YQJR@lLy}D|vo0wJr&Z zh>+n?tiOdx?*H?u_Zu3)ONkInvSSb<_%LB)OxIO$hm1R^@)KUcJ;zz-Md9{~&Zek+ z_cPwkfUnkyaOJa~*R4`z1I=)k*NXM;sAF3*Q)%hh;J$bc3NlRdQmM`tD(InK?E4gK zc6^YyE9c@oNQi#I596R z^nK=jMqJlSYBbHw@5LZwMXAp@ey@+qy2&zNK1xN4^_G1sNkskADy!m{>#V#J0}fI!Cn`q&ViOb`!p4C?zqY@QqnlLU|E7ak0>RhaCJ_t`jth3JcoL~P8y zGC53MK?pYef~&Ns8zxSOTuj>;JMQg7uNlU6lEE0bYzo91p`a7vVbeCbgrub5Xs+1x z4#U%}ns@FV3;W_d)3X|x3;sNs3xl{yK(aaNEc9&l?>>LG$QhR1sd9c#7o8W&O3w6V zfz?OGH!rZM)(2^x&{gb`*%FxrmFt+g>C-L)H6YkiNQ7sob~9}I)rp%B0qM{L>);<) zXIB{nn3IXHZMF=!Ijbr)KISC7`GK3ovoT$NSuM!0rxv(O9McFety0(K1pVLmeckr! zQeUtx(1Tq++@ed^pyTO^WQSUdS-(7t2zTus6pdht$2iY@~gHGWo|z z+w&Gjk?#H9jg3`y@0ZB4q?(FJIVK&_GnLwjK({z#1hf&DZQe7o3xZG`TMoh~72oTh zu!ToY&Li<0vN9)<3zRUIhntF(aBu=!vA4vRPw$=~J!r)Hg?lbIF>sUy_}*GHByHo( zC?MH94e++Lt1WUXhsVoz29fQDzzYP5D{J&A($6~xt>K538k$h4IKebJkTx3fqF+5l zb+HG{r|Nw%8BD(3uN{fa$cU)ycqCqGaqXS@s!{&M9attm#|ot55)=RMuHhRzEius0 zzyZv2D!ZXS&kG?T(w`w%(rP%LZ5aN)gvw%k2qAVb1z{rfVQs?irik!vVg&4}2?6q> z`g_f9-y!O|FEb7%6vM1yVnMCR?(ec-0H1Kda_7^iwk`YGP?AH-1q&4i9Yt@gT;}|h zr{9M7b(uTOE_(KZofrF?E($YW`|2v3?bF4pyp0Y=ghm}L;{+Sdunr_Ep|pq>W~Z^4 zy38NGuyh5z-f_7Qu9NSRzYxVN7@Tpt$&+l$CkxhT7*3kIMd z#@)3qn~MXE=$|R!ac|c*uGA4qhWw~bonJ)~-w&m6*^j)wS_S1rZaYOO#}8L48*$R) z)&2S!8X?Wif_v_tKMM#t{q_B-QAy1@G)#|54~HH^FnVsrS%;K1Q8Y4U>*I&0}*Wy6_U$aJ1iP~e5m@%Ysux& zy-+8MUR%$kj(D|Fc-v43i{CWrMO4h#VLz#0e(5E3>2*V`j!>K@n~CslS+=2Jm}tm) zJ$FFFM5KVi2s6sBO#D{tFG}PLXfW`dD_5JA?VL*}9&&)=0&70a6ChVPdiB=VaF>&O zH)7$nR!Ea9{E%)%h@eUN_2nvi$?hylG6)cjzTCW%;KKCAOE->yfqY5zV;646NME5B z^ODTFj6owLUxplvYrlT)ExOXn%%g6)@=2-%cjG%-o=rD8?cr#G-+X`_rOw383>;O4Y9ct;q>UTp0Jq)A74T zS2`2n;|IAee?}S+I*U|nTlNe|KiNjH5*kL$?r3Zf(bF=y%RHL;BA_NoUrJ-7y()^x zG8=|s>%YkP_|fL#?a!0Fb_FY;EQa~uZlVIajeM`)2Q$VfmvW^EPMh-5I*p|j7BXCMW&hHhlaOFg`tbn) zA@2c_M4Ui3Z?`-861`?Zi4K@!ybezkneUJu(_}ek6Z!h>mZrO_op^dM z0VPZQGH|#pDp?tkKDapSb7X z$c8=lU`GA8q$wn{CtOaVahPvnwb_pnU(1An9 zgCb5I_)vPBeG{pE{?2L{4b`t^f`P@?Qw8Sk;Zp8~)&>oSsv)g8(m%9?mtCo;gy%aG zAt}=>uD0Lw+O)WzGHlz!(zwjDX3{D{a2b@Go>FGw$2bc zg4HObMmXJ3?Ga=o|Gb8qs_hc6wgcB`e{v6{3*+g4+r|5|J+XBht@3$3Bo-Yk%>H>h zt~7?f=^1M0)Av+3|B?zgKVzJ%{s43mUi8Ml7ZyyI*fT{hVuzJ27n(>^y1aWbJazOI zCbGJ*cHoEYN02KaxuxxfUt5ughxbm||3q)U{^Eyk{tq`@G$Q2B_VyWf)#=$8hux~E zWwyURtR4}-)c5rCOg{vHY1=I-EN{JlvPjrBAM}=0jjHIB)=za>%+=714{j>%H9PJ2 z(-(c`*Q2fQ;{k+n)s%B#qC9x0LF>hlWL(cFvU7lZID zvIN7f9bmCZNh4Pc7LeZyX8nF(`=zxom~TmrVi%}En=!O$xkSP!B>%`~Yizt+1QhJN z7l73;FC3p}MIj>FGAt;(bIRP#GVnmo(!!^-_k@E}G$+ZK{5sX_qb6t1macoW@a5)s zd4i5DZUl5!QrXDVCkzj%A^>&$ePw6apOxUqnI;0k z5XdW+ec%3%T|lx*?p^G@N`yqc?^4d_<}Xy6o0)xUIq9qAPCBtee6Yt8B>pLP)V|z) zJ#4$~>*h@o?iH{x4W_?+fCA3S^{;rX=L5OSemAyNJl%CX{RFQ5F_0b`_cv#n?VbYO z_b1XqSBs7|m4k+IT-Fm6q2>*t0%WEJz_i#S)s7Tykhg7lRNS$KzzTPM+HiW>BEt0E z&T!9=kz6Re=CMYCrOCNcTq^GQZdICq-Yq=!`l=lLD;NxYFBST;Z@jLJ0 zk$Ybo)>$t+2fhl7D0jV0^A7#}k9rh|nJWmDL zX-98%fJq}AR1=)tY+Eofn3zAHbS_)*b9Ni zHX@$C=&JiPv8b1#ErWl;m*l7kA`kL>lTE7L9%BeM2Mt~@t*JxGxD{`S5!>C%=EiUe zubG_jMaO5_OEVTUS|ZOBNf@KY7C&Ps-*yd4_qU8#R<;Eb=()j66f5@vPXZc|0}yy^ zvQD_p8k0dNYz*KS$WKmA2w%H%LnpSH84i=q;l;a71hQfkMm*Fa!&SZN)egaiA)U zxhN>{sMKD47Wzi#E|Tokbos@+$CYZSIuu2{HIl=Y#=yym1NCDpTUw*kv2BV5<{aiq z+#y!3=Pj633-f{zs*%K(^g_q}@`sC}Fu{lV3 z!fLmwy>qY<19Q718>m_IT>ry%qU6hS{$|lAT&Xp~lB5}l!fOUOgndY^HEJVE{LXb# z=d$F!`zggCQ;N8~|6XOsvc)fYIt4I3cH*dItLKt1rezD#c`C$2lV_+s`o|==U7?}K zf3~*f3n@grNe||EYAXNy0PXJ}q8%;W6R#q%X-h(ljik**(AlT^x2yT$-|5q7=@gMl zACZ{JZC}w7lZ`$JZ(l|ctuEKAWJ>G9SK8MREmYetE$ zGarK`6Ljj_pR0|_&W;9-b%wq@N0fyubZSt8x}cK-7{=B?cwAafk6fJ@A4DTTPBcVA z?=u3H$bK94p0`--`}+$L(=ZS-l5wJcsYv6;P=7ozkLB2k!Go%o-jg|ugv!h_dglVN zWzk0&9$gOydHlZzImOT!AERi5Z)-3cEA@&fkce3hf^VAM;4o&@mCfGgSq0++yg z4Qy=W7dq+2g$Cgd^Jb6Lm(%`#9 zO-$%OpPqnf`?XiUc3#c?zs zsXJ9H`C7H2pq~!6d@C?YJ$>`=Mho`Gu-`G}p(SolOJKd<;Fs@sE0lP&OKck(C3-(J z3loQJArD9P`kyf{6l1|=bg2lwymZE;ML|XF^11?fFYS6t9v*y)RYR+iDz$|D{7mdOpTj-qSs4`G9!PcUqB za959qi;uxtlw2sYH-6d~n>b_k?KXaA+);Hoy-WK#B}05_4Nta5?HdJ*XCl5nrk2FA z$bRt1*mCCM5!h(V?|S^H-NVCYl_D|tkIv6K9Yi+I)mcNcvyI-cnn|jPAGI~86eh&N z%P7|m-#^aon-1=qChQ+7)Z|?41(}+enzi5U4;^x?cny?{_KLS-JcV3wj=YatsyJDu z#~U(fZ_z`N&w$BW@?qquo-Rt3cF7%&)wv619tB}nC@r3RGOHNq;KgA%&6=2)$Vm2H z!iWWqnwt7TO%Zl54**;mK?flFz48VC5_+>^muUDhAhx4&>tvqKPf5ewcBUrd{;b1i z^yv}q6R&=@{vEFz3kzfbZTIQEZ3TfX*}zVblb844b+0a306rT`5`o3ap`FWLW2%)u zT0!rb_$^IBKgIQ72VyZ#Tw7tSYt*6McrTA`F(01 z{^ zHHCUYXS3apHoBl5qaWF?Jyg`y13@n)7QCcz2|ib4J(%NHkIEKD>CazRm;0hgFU{o4 zTRlAuQ^2k)v3103?K~P=yn^uS$m1xKTRktLG1rPGW+x}&v5v?&(fjg86qRJ_R^K)f zNnyXah}jwuVpc!3SNdW=JhRHm7bwJhuwZWc)xGS%PJ(o%^H{dlx2y$|bdhN#tbhG7 z87sCJ78)u;R3>ZS_0;AnPoav(VKRW{bh!AzFBDJR;g`qUT-);CZ?elateHde$7Z<8 zwAELBNjHpDTNo=No95nss!Z!Sd#8Gt9d#^Hc^~%Snrt5_?|Uz2%J2+M<)ZS_4;4J2 zZK5LB+W$JXQ6g8(Ss6x#20|E+PG%Hir)a1xEUufREb^K;s&qba6N4@<7`Clz3}NH6 z{hs1~SWop_JhP5;;S1zv;!GZA2y#w4y!S0dr|BCX9&cu&gQXv!|GF0(08Zdzr54JqphnB>7OqAdhi`^COwTO{xVKkNRC3R zZ&@6z%0w*jKjL1jO;d|ApnkHN!@z*ON?716$J4yLe>`MY-)HHx%*3aYq`dc2ByZoWj&xAdV_fdE6O5!UU8 z3GpHC!!CJ1Y2Bsu@6W%(XG4);M;`=NSC2X$b9OHm@4fQE!gfvPAA=b_$PzgdP5k{6 zyh_&aGOSi6k+;z_c%D9=wJd6!>iYZVGgHs&wGhoJ0~kTq!$@HL8G&KBf%bZ1wG2M2 zD2Vz?5Bz9U&s10WLtm8!S!e-p(Ue6GXjuofcnj(#vqc3!U=X<2c+sqj7R>LawS^H7 z7Y{rpuDP#z`-v{QlfNdA_+`JGuBPFzeu$W9#PTY*!ONCph<0@1qqJ#H|X1%<3`gN^`_OAd1par)aCleeUg{?mxjx9Z@Hz;Z%GmA#3tW-7l>NJo0Y|lHmkV^AkcX+-S}|(mNs7nPgNq|l-6X+L#BUMtT^%wA$Y(0U{uH9y2QaU zD(5hk(21lm)t;qAj~S}&kVCg1;_4%0X6|MLBc5YrJv3vVTRX#xb9)s`T`k@w^6UPj zm*VeqIms7=H2=CfZsNsm*{3jOT2 z*qU|{5>egGww0=a@YE1yIfHV&HsTTCJ63eWfQ3^)UXUs5rIlBr{&7!;vii;OWl9H@ z+mpk}p7J-e(#F|rs>jYW0mwz5&#}c!USs_D#HVGqx-@48EEwU9F(xVd-o0s3C&zWdb+6eVItFWlg%H0 zhW+eWoH($DlK~Seh0nd}jtaOpRQ(N)qiJzbk>U35Ea*vw@+jBTa4rIuEtTIse{+Z>vTnDYzub$k-vP#ztCHOTTCe6KnqytL%_i_ zIQ`Qn)XPWoRvDIq^4F& zerK#M2%iH*#CQVgsz#ultIS5oL8J!h{a5@~u7`oS>)j+kQpTx4XA5k_C30=n=j!U} zod)cb^z`&KIGQKcttkgjO!xL+s(6e{R5@3QneBHcnb1l3u^~`@k}ygNWG9mP|6`GG zh28-zwfLBnltjhAfRv)^LIkaWE&7SZ^+5)t z(0P|xQlEg8SCW!K1e+%aYzx}KW2l1MvBjJH&QukQJZ5H75rhR#ky5<6 zkmz=ODjqky1{^!I4ZWG&!QkzEB0xTP-}ZY&f`>zuDKuaSP;jNDJT8Uzx}&Q(t<|ws;aO7j!!Nmk2S1c z2>SUO-`b&fDF!j)XaY~SZ(u;&!GTjvO>MOGvt!|xFYCbPkdl-P8ec07=uATav%M>& zCI|s@L5+&j(}JBX;zJJliST>fa?>kihLXQ_hd`j7V8eKG)v&<3z? z`PbR8KYDW<+LKis^&a<%L*EUqLiQe9O}5r!Sg_fnNd^1?8B3*efpp9-UDu@`P>-}x z-mt93IKV#9%SZ+T&S`-eF8Y7J*9~?rgu=TMctS@>Agnn#sor`zzyh`VIUKhXK%)j( zKVY20EmTP4(6bK zXDV7SLxKVn3zGk?1)~g}vH=|f!v;W*3(ruzcE>B%`i}aU6lB-@DUqR_bH%;CY1wzW zfZGtOqo3f5#tsrO-%S146$YXLI<+7;gAIVFAV9hSd~2JLSN7}hzoN+^K&-RQVhR;X zu>S46WoiKfc!ErU8>}U8aoo1j%nW!l+NRSK=|x)he|3TfGZ~eB=#wz|?X+&(uq3&%d1SKm?FonwZGhP655QYwzcoa(=y^8$`+_$E z1E7k6=B$2!;*n#JB{o=Y{S0g!sYZQRFg22d|5*_Lyp08A7EsS##*&7EAJ+ z@(PcLI9YjmBmi!QAmGoB2En;?Kp77m2?#JDLOMYyRW*o>K_&X%nM#U^rY&MB!i?Kr+l=!Z|}|Kq8nrUnbC(qsj{eqan(1nJp)mZf>1Yx)}q72&GzyI#9!nyeFV zYL0S!u0rC#R07FqSgpwp+5l|V94@sK0AB_A_Fzo1@Qb|}s0m|}a0G&Xh#=DUW4X;^ z4Ak{iZUlYDlmz3&cyEQNs9T(Or!M4&03mzj(w#3E0d?k~;5f)=kvswDUmA4Y2%It~ zEWGOT*_Kv=7qnsp1o%8&=(oCYfWFQC#2RO(KM9{tzQzGdlx_M&=RP%yEZ$24cxfLy z^0q1u6H-!;0)F^*cS|&Ef{ZZeldfIQEg13y!P!)X`uzs3X>%dp5g(4*pqq0 zT0Ux14W4IP!}g#yCS+5SK{>k{tVQ(xz7@#cPBlMFD2qga{?GyxDT#@>zygOx`9MFK z0OAZg2O2x}k`{1E!ev0l#$S(Zp`uBQv^aD9~30m;zk;l~CPD zE#1v~0i`o?zu4WZX9Zx27g}}4TI4Rb<|Z-9&_^p#I_KOSwqSuI>>D*T959b3e+y!$ zxwvovE*b$6N&cD`Gyrk`AeNp005x`&#tbnPUZfDqvy7UfKWgWWQ#$3B4#HN zeU;8PO<=cS@58(NBkM-bzTH7n_P;X)phswdJ(*Nt8|5#B#3O##PiioTE&(pwf@DP7IqYsA9B}&H8tSpzo96N$pgl@zX_yt`YR_FwEBeJ@CoQ9DdNF3BA^e$M5lR zHOrjVQvb2wps!YiH-e3THRED|s+@nWI1Bdw-XT%;3w+)j>;HPOjM^s(Fg$hHA~UrA z+`;qdx#|w`pZ|H01O$?_RSCw!AhrYfcQ~Ppu+?Z(2uf!E*b@Iv)jwYq-@^3YS4&bR z@pc-)$|wE1RR8>xg8^*Be;yH9R$8lyfvaiZ^oaG}3C~CF7F%SpOP2fZzfk|bmjKDW zxH;D9e|#XzvYH&iYLU^zYGG8^I*3ZA!KO@%CE&T6V z;`yo12gIVVzQdUXuKd4OpWpwyK#d1HqU1RDf6ezgYakxKBZ#6wl{2_h;nhApGCKg% zpyQqs3Ty#3TplPNCFHXq1$rqF6Z-j#w6LXj>hIoBfzoPl+(dPBNTF0c0LIj8?YQ2J z0%HHqLAMfUmO0z=R93Tm+O8cBj5%ENSw^Q;lLK8%O$}7*d^9urX;f_hnkg`{ne71$ zOl{!~o(zS_h&86c*%!{hX;)AN%uvSWZm1h9q`URVCCW%U%c-+E&c`HhB-AV==-u{ zjN1q#A|bwog|u@Q^a-G_qyMH6j1OW^tqFel6Gs?)KaB#dwNd>Ie56C%JJ$YuxSDHr zW?_Af2KuP&EPerwmibD18<*dA?+5qu!=;5ZV1{uR|1uazWSRx#hPPKoN6wjc(|KT8 zO4gK8LcUZ?jCye@!;0cbLL>N%=i~BY!0ey1*7LqGfhNTC1_{{oB2!aSbAKghJ|a~h z?~;SFOFfaU-!4%^CGhvI9AuSmg@4Lc{BMP4{Z>saHYH_y@fXkMP0b@s28K*$#`o6X zPGTj0-+fRic+`-0!Qedz2W+t}5ZtUX9VX6MfSL}eAmDXo59(4t8~PA{jzQ|!6FpQ~ zHL!D)jhfN<`BBKt1d-cv#aBfy*NI9Ry4qZ*IMn3lWo;qy$@l9%+IwdX7&O^>ZR_)s)XK#4x{P)pp(`^Ic#U* zZ`MbWpo6?>N508x=ZXHA=^ zv%y!4e+tSyj3I8w%ZjgBi#anCISkNnGK7s#FK`^xBxPEaFj16M`v$W;I7}s?#MoX; z(%cc66{HeRD|FgNa}5-BwbdM_)BddLPVAz2O^(T_+_07tru^x^PEvGdI$vt5MPzjO zdqG%KeELe_!-x|((4P&cdZ<$fdfx)zn)A!S{{9~z{1uy)h5`ZFxEm;PU`8A*(!Y8| z0`iZbRKv_o4;cs!$-+=;Kj1C~-JET2^iudp024iPgO`?;mQqkqYwa)O;LBAarr*6l zo8k^Kqna}j0x71q&-t%hiEvd7G*$~z9H3xDdBE$zEvvx)`w3F2u^{IJ)VXLMcHk~H+hKsGGf>+%DjbnLIMfeJ>{WH1sab3f=ow=uv{DX}+Q zp7qpzyUSAa1`d@UlDu2}4ugqK9C&iaP1cFyR4T@W)~&h^{x4#iM}TtogPv>Kvu{`aAG_vR z092zL&g<>Zl#&a*dvRj^JI zY-aWLCg~ky;*JqpaF#5LQh6zPRtbR#mG|ShCUcQ4pY{%RU(P)o_^dc)&92WlKL8vtFU)J|&Z&l>j_gikPb zQ!7c)v^CBhnC98!%@0_^s7vhuRspkbcd!`~oAn9OAKqu84SPckHpXwMo%y4LPL&{S z@@BXLBXx@WIc@yHz@Fg}5%^_5GWuTqp5@q~0K({F1$VUxKEBxkS9MHHkD?sJQLp!<*wpjOCnHm;~R$ zq_xieYF$mdEWNabP)-{>Ek4d%FZY?_hYWJX!=WXLn>s093GVlhCE$fie5hQR$1=XF zdoPI2$5mnJ$tB-lW!lZtrj|Fwn3Jod7^)@+-vjL8r1`FK_FMII^p@KT6e33^6+)}XO45nD%H}+?^K-!?*z=H=S#bu z_hHU>^gA_6_5Jl2-HhcArdAQN_yOEVOVi4nPZ%sc?GRt%7cD>3bpAS%cAN+|E|M>7 zWmI*syC%*FM{92HPQ%rHYq(pyn5qA2H?E9jmXfJDy*6JDQ(-95Z||IERpOpL!J$j>||LyO^|(*T3yx4z&W~iwuZWs#_jsG zKQ|`=I1{ohzuA{`W|!QN)OGl1)34g-@@k<-!caU3A5>n4JUZqqd|W_W(_65!Qc4SQ zBpAY`goW7HT(Hz5r#L+xie9~DVz(b{Mw-Fqf8=D% zUt}T~bSUvjyvC$afcQSuF8W!1&luHroHfhb7#?YP-9B)S2w6>izoq3-LFiUtgF>c1 zlfyPKgtg}U)8lt9T8~0&K!eGZfLIG`+P1%}_FnMwTC$Gk{GZOw0w}JoThombg1bWqu7L#CK!SU) z;2H=T+%*s!5?q4?cXziC+}$C#yU*_Lzqjtaf6Y|QOcw=RO`q;_wyeF@I(t3uEdm4+ z0S8`E!@^_0_0e@~wyDwLq5Bl`(a;qcX^mVoW>N@lMSoly(gwEQc$hdSY+L_m$XYwv zI_^1(TqA0}+ESvFm+DLSoap~VEXrd<$BFXfZblC+bS)|}k36bLQ(}&ITHqYns~j6Q z(TU2KM$!2BVIlk zMIP44VwOlluTmX_9&d*eAwEYnsU20N&Qlg?kT2Waqa%A4y8RZR_LfIe39oHMM278~ zSz%UIgiGH}n-U<9u5)9U7=Ce+YqlIBgL}1wu74TzRd;LVz15nn)E54={)N)4XSIBg zsCBu=)qZZtPQ=I1`?NrXh@Efh-ov(9PDdtWwiz8^wegb^Fparfoi++H-tZRNyyg?1 zzn=|TG+myZ4mPKziPfS@cTQ``!{pTq3D#a+B%W-?&!3zPz1E!xDQ^!E>{w~kbWEcv36HDK0JHy5dN3S81q{X~1JLZ)y zcZYumH}qO14~%th+swhYQa}4m_+e|kAIn6(y4kSdNR0c~<%8q0e*B4$?6fBu;u(_+ zM~H3tC-2lKb*-)v-TsXdDah~G`vFQfV{fxk5mEj#Q>oSa%JE1G;^|RFvTj^DfB5B%~ha|L_|GIZ%3&xYZ7SDMeXfd|d(&4?Dn3-5j zA$im~>ky%F7yb-V#36s7`S(h^KEiTDzk24mPqRfP7Jk?B*h^y^pMph%j3B~ zBEEZT5_rh9+_~VV(e^y4wx{gOy}2ZOlhlCM+qoxag;Dv0m{x5!S=(8*Pmb%vaxB4J z=Ihmkwy91p*8=R)=8-XNnRn4iLmS{;R<&TGp{={wYb$$p?(c>z+|B)IY}zyW_E?#| z-@BTQJ9G1VMhg|Tn(hgnVqROf8rFvJuc5Rf(_7xJoTsg#Ps5vTUW&D^e9Q!mP9t(v z=$6Bl_Dc;8O}Pzzb5Jb8axUr7!BR7q>1N)H9;fbbm5xU7*KlZv_s&{EI z>t1(_FN{FtUu~wKV)>MuNdW~+^QriE)o)P?zJN=6*BaxGyDBPDezQw^RA}YLA{ zj9lm#_nz;P0Ky(^KPT3&E*bT+K|`aYLEb1EX$Aog9rQ<596hNR#qP0$$xTj#s5bT6 zM%i$X8RVx>f2%RHX+1sFAf=;qI+0U%JAEgpECFe=scDB1RPaMo>+@RIVeDSX*iF9Y zua<#8$`KA1E6hW+tc!=Tx+BXob1XzfiVdi-exF#QCu=S?@A}V-)$gZF6w#_hDwN3k zd06B%WJ=>o%5Auk#JyiC8UiPPI?krpT zbn&#;_As?XjH*e4b`=FeFj+1@hOVk7(ITX2{t~jgOV8qlnqLbvPUzP>zI=HY z@~0_z<@rZwrqs(!`K#5_n^uJuP2sEJGn_s8{)G+x`fwfjXLmYJVn0Hz-6%*pFGv|d zAeQoXLVR}9t(~@UAHw0zLDiF?SNxhVPx0WQ}}w(R6X2dI@wO{_3UOzRKQx& zOo3Lyz2f4Up_QWrWA8zv>4I+v-afaJEdqZ^e@;^FZ!bdBk-96St0wjq?aD%3_K6;> z{ulATqAUud6z}b}35(n-Wv43|3MT5Dd-v1(u9kim41FFHl$jb;RrW`m@^?u2VXnz= zF?o-5>_sLe^(0Yf%f|@U_~4LlmB&haWUDVrd_yhamxk}<)t8dnE1)Sb+uMO6KRx`D z_-;mS$bz?q55{A2ykZ`%MXPQyzdtohri!z#&&qJH$V=V4sdt(%XYt^YM=7W2B5&s> z^IH+_)nD^&eVc_^em>;HcegKykJ#zGYS6mfMu$c6T`yf4P;x!2$K=cO#_hJgQQkbV zN*4%xddfsGFN6*PwX`XTp&t^-eBqPvVQ1wPlk2*C3yO zyXyXC1xJhK(K>pp(o&1J<#EE{2Y}S@-Y)YG0c}~54@%!QXI9!4WD`=>%L5r_`EVTU z7-K){(BFB=Z#9Y#RQkm1vs~*&h2x%2xNxAsmE|$ zMd_6Ibf%sM|Fv?Gh`m)%ndY z|Ix*1i5O;@6dn?tftSpimopV12*}2M<-V*j8Jwo~SFjtIR-|INh{WJqF<-6uS45>( zFY#l&(rf~zj?y=EGbWW$)VB5gvvqZ-_ijmhFY%Od&&yuCrN?lamQ~=J!K6v}dMfi> zm%|-xhzz}*K0`XO{Wjc>2HCxYB;5EylU6M)OT68W5#Ae>qS+YbR!HY#MgV^1nIq)V zUI+OU%!VMJ>anHw+$lw|uaM&qQ-jK1_0{A!l3g!-h|&KBv$XYG@oZKX=IBgQ&Qi#W zKUDO%q?!K3eVWuSR_Wygcu_yx7z!f+VKp&MUAc78QM)GgaHGwF@*X+4_yq={-SLTO z$Mmkv7xfRt`xitrCzDS)_|}%blki%I3zy7_8q9DYq3VzW_GN!Qc6PpM3YMcFx0TXc!ob!aA_DD+{P3v1k8CYR< zJTIzGHM!o|Lx3ED8D}k04H1O{t8=POv9)>RnGMpDKh3w+Iu`q?%oxf#v^8?(XH%lH zn-yP=r#q$B-=Jcm8)WqF|Ah6?`PKq+w5~23&A@|rD#V%%NsB~kDQr9oA!J?J&AlhO>?Bq~@12`6Yts z6If3v9PJ^SC6Optm;SdGSbx~dBoR7z5!DjpF|(sZgc$JE9x#}%Wc7}WsP&$pi@^j{ z)@8Wy@6-vL5aCN=OOGa}@S{|XL6K6edvdy3w=l}#ogGe?F#C1Bwn`)I1lzf4h!2)# zZ~ES)%#C!hbG)!ODR;p8D9@3~oasUA#8e9YsEH(q6T>Z`mlBw9UR-=o+mqC0%+ZQrP3HTsEQTxl}(OI``gwPOyH1 z>bu&9Ld)horOzKeZzj?}Y3om%Yl*%buzF)|ek-f^fuKVq zPq^dQ2sYG%zlCc>ZtrzoQ|rTd!O#4D8^6H-d@jNQEwL(0>ErxCp`rNor`W;9>4wO; zM!W{P9a(nHXK2&D$q&1{Ll!??8m#b1)-AZm#7?ds{H`W0D0FyH+I|Pw=$Eabk;rB8 zvuj#&tM!W_V5)PLa|}y!3LTh{VbS+iaGK!wFehIg{hDEQZfz^Q<shB@EpEBCM^@gNP_i|emf`$@B zwKs`7{e&1mH`Y$w^0e;bW4YVk?l}*uM%brHoe0BveECUgv+p3OvZH!dKEm}T{b5S= zjd_oJ6iH}qBIS4m9UD(yl(*&)>K`xCTM&CJ=V`i!KUr&`n{Y@yhiG7N!hRTtT&L+j z5K3#Da{94V!#7(r~S8xMy7V$=syloP^!`i>-b3o2_n*p)Ar-NsyAu zY{jS4lSVabJ@C*Dy-Lizb3r`%{!;1J_J)+ z-^oW*tM&7O?0bIK(SrHU9j5 zj2*aA6-l%K87?v6)Q(+lDCtJ&|5&m+aUUhH@x7 zcAhBy3>l(Zv2bW9r>2+s#46CU$*x8DEEhY`Ddn#wRr6ynBoTiN<#t*NiS&6a# zxkp)h7`WW}LOwWBY);;wItaJ2m?`b&bJX2`^34(UQhI0Tu-Er7eI@4=668y;Q{?>G z2W6RG>YlzJ7p-_`s^}8F@%S+x$9$;pJTv@K7{&M#+c~D$;?(Hk!Z<^uJ=h_z!1;~D zVESEfQbQ_&oLEm=fxRnyi{}Ss^KAH+>b+N;!eGmWyd{6$(C|(v?>-mpWJI2@k@rNi z^*k!QUV!djvg)IvvtvFAy$Eg5KlaQC`fl2H!j^A@!k7;*AP}QIrP>RVZ2h;JIp*jCn2 zzAtG0qH%FxxNm%vIiH4KLXqeC1wlN&G!40=tHRL#ZXd{v%2_N$Ha&`19=KmqGX3Xb z4o$-#Mc2Yv03wOSN=dg%zR$jd1o>@G#5S_ZH|Qoi=@}~2fwhmz4+9xe#jw=NE#%K8 zfaphWFLiUu(YKZ71@qu@j@sbOoZ06rn0y)*PMSxuiBHO%CKgX;=ck=Jj-kc9jd-eD}7Xc*H>L0&NDE$~AxKU&!x=rYP9A7QCySQ(;Ck zlsTy8KiR}yM!N(L8Soc z(&AE%PQRt8U(^nXPrtMt5(t#sp~ssy4JT$P>!~ShMH>dltVbX0i$|cOAlGthD^va=F{S{AWd%Dg|Igp;&ZWC zn=`(-LgPcXc;WOrXe94l2<6QO&7gANV*B1J1 zl{aL^kk?29$>TR^*A&3?V3MJjrl%Y$1 z_L}Z@R6We*{d=jwO0@2R;UO1sQkf9!HOU@1YVD*O81Y1a@M=hHu-#lZkZ+QsuEByz zp(Ht{wUKt3wGXMQ4d;(9U(O!xxu^2_2qEKD)UU(xEMg|kLFS%v?}GdyLaH0jAMTqO ztmt~1i-gg#?YJ7JZ0ELbxcxsku0`9`pZ<6e6CvOI`MKnwV)^a#@np z@}D!6kinKt_2$zxX=N{l(SEqRjfz z;7H~C5MEL$GD5H1mTvs#eGF+%miMA3h27+%LS`4@<%h4=UE@+rxkYE$gJmD-;PN6H z(9_9+hLVy#Zd$Sze`%-jT_ZH5$1FB(aJ}8D`Iv6AF8edUPkTR>_-5n#)_^bCY9hTA z6Yf;~T>)F_o6BDz_D&-+yCtq-6qh$CGM>~)B*deNgI-(9?m7+Pkz+32UhWa`H1XQ! zDWn;p60m*DJ1O2Wm?OEjm3wyKSJ#UDR-PtWDSVsr{awp#ClTeaUkpU$CQXc~H+V-iK9heu;H5O^qtrnG*IHTN!AORv`$#{Fyb1sGG&Uj60qG zrmsJ?)Wc!*;?Q=eZRDoS^+Y!RSXNx` zhBNUzN)SeqMMN$F!?@CX?zz5P#M#l)TnPeXpkm24wD9kW(flOD2hNbcsOF->xu*aA zPzEX4{&?q*`02HarvVAW{6S9T_fRFxJCQ?mb0@>99lZ1W+sI{4S4}e#Ki8>IN4JPh z?i!}!>IhQSn@==V1jt4WWE;F&J-X zxJWLPGvp@4(|Y+d+&HqVa`sq@>zC$lpAh@_LOfxyQJA;n0}OV_xHa-Edw=!mVp$Yc z%Cu|sXMC{E)+sekL30r>f7_x@A9bCj9i1!DJ3i{K)wW$@6kq_kCGG7crd+NE13&l7 zM~QhFLJP0io4Oil*@%R1E{Pxc1+}c}b?u*9iP`q_x_Cr%$!E%7+f{7Z@K9A3(_p99 z_hX>^BsK92aEc$$Y&Ye&$@Fj!{jh30c&Fj>uE{tN8DjRyPJtPL@3{e`4w{a)52m#J zgQe8O8~9>`_v?cXZ#3%k8WzyZQkQyrrb6g_zL3nzgy5Q+PZEBn;#JxVExDAFJfKE? zdvFN{2|5wfcU^&f!jCFwq)bW=M23mm{ZNT5u0mNbRsM-um|Mxt;rmh2dU_yB`V{1+ z|E_bE{BXW?vy*&?giw-Lln+Y0?{~4$fmuYfKiTxAywmXz5!^SrIw!=HC=4jE)dQ$R zmYEx#Ui?ddWHrX(i^bd`^xAJywBTKcFLJoL1(g`tr^qlAeXVD(`ay72tDeL9$BWJE ziUgF)*nRt34b1VGl(*Lcs8j9)0;eZtK=y7|-zySN%2pDO72eAGUB(!$jr{Iu)Wl`} zWDNVW3|Iq!RZq{F-z;jo_L9N&W1czvWfV){!&j0!Z7Qs5TKa>DuaS0kc7j4eIsiwb z4D5o=7AvUyBuWz{nDg;zh7Y78N^%xmRIkVnr%d?cn={?@ymArle4qF3l8v+6*i1GI z;+Gem9W^=to)6phUjv1ShdPBuurpoj45`Pgc7^tU7@Cj>d^!1*cbcnl72KTFU~$mY7M6AA71)v)ov4a_<$xp1r_E?o4NV%^-!iNna^cj!N^JLF%;(29_n+!mqNaG5+RQyT(o``iQeIV~Jo${_f@|%8mc}_rP z>q!FfZvHyP3SH-G>weNLrEKFaFhTsh2H-6+_D?;i5lx=)nmvIN z)S{}VJ+>Jy7IA;EeB`CmJLx9##5ITTs^732ch6o&>7oJL%dOZe=BWGu+t!YM+4t^O zRZ{!1RytvH^(B6X3F1|-z#Piy)~{TV9zlDX;C`(QMMd|A{PKyXucsuj8~2eP>hxMH zYMaYyjSEaX(@l!LeaIvBpuTML*nhE7^wzb=prn@y#X)FB>s> zRnF0W>h$<=9@o?LTI|zLIN0y3*mV+xFniSQCiAzxrn_C?o$;*N7W$;@yC5>_w#?mo zu{rC>L}=cV5tYs)6!9jWWH*Hm^%cu>MUUQI6mGxN7LT|cu^VCvZnNqAn~){AFgTHn zNTQ|P&ex;Llr$6hvEi*&S2CCHs_jv0Ds~Ue`X6`Bc>4u=AgCKWzBANL_KydAzn_$C zeWq&~b$S}$d<@8$)vXo~A~-UuTRsvCKlcf?{33}XSi zRi=J4Rl6!%g?p%h9!D|LlFMIvTn_0|QwlKZb-5isOA#MMk`Gf zpp28C;NW%%3eR5-X1ia0T_&#oLL3mHpI)TVEUPu!))DNS3ZHydJZDD9+lbJUflcx8 zz{qT{a#kx-waUzeYUC_u4EMupRnNAs8CP}f7C*A8yF>%QUvUcns z9(Bf7+7-WSn6lA+rJ$-j=#CkNaY!FY@~M~daNR`np0@{Yj`5RAv3>RXeUuN5DYWq} z7(0zOZXtS|RgH@!v7`)W{9Qv3NTKYs81H)ysi?3&2Nm;(XV1%H6*rt>0k3~V`myn- zAq1}p3GHe^^O(GMAReEbMU~7c^ddRGBznc$GMg$s1!El2wrw z)iYekv6IDAWIE4r1TSYtN&+MbqOV#m*XL;FFH$i4Eu4Roi|XUholFYGI_jWA(CGqxztf2h`m(`~83k zJd-)Otaz#6pe*9`ab>-mCxM#Gdc5RVQ&&^fzEWuM9`o?E!c}A1Vs5DIM%WW8*})qG znC^*U^PkfdTrf@q&)(q<)YUa?it)?A$c|*Ggg8ZO=G~iwHBSmnZZJ zZEa3A>psH!l&Geyqz+8F$Uphp&tjExI$hU4^$q?L29*Ix*Q>RFPY>2JX zZ;y|$Tqg{hLENd4jeA~8HCug90_0o3?bMCxLEk3jBHo2EJLgnRIcr4D;bc(BH8#V%^um?*+?s=Gn>@Na({uo>Q`f$8>S@Z+=mla1kC~Q%1hsMxZQ)VI1wPVX6j&bOa9o? zKu*a$+S;MnPR!w$=BPROI??l|eTI`xtn1RK{;h$`&@N(I8>3ns>GT((jQ}EiH#H+nlAM)@~faKydd< zZ(ej~TlxICQGX?ci8uD?GR@zeQX z*%-MGw&V7dHZz<|2E2;u?F*TKS2HkpVaY|Jth}IA`Rms&O15G5KUM(02FNtE-q4Ne zevfQ)wS+b-!hXy0pMNO-T*s5KS}KpQcRHA-aeDVua5a*(`_j_+Gw&(bcoP=__i(s1 z{~=hCU)_G)R;9?hpQ8Tl3>pVqKELKmtGpJ5Xc@!=>LZv4xsgVi#7C26vSzubZm0pk@sm-lCw~{}T$nDHLakUD%P+E4#~6TAs96F#0W4@X}ac)mdr{YpQde zA4)MGJmCcPIi1<{(Eh2#b!gJNQKmxq;Zr|Fa$L13ly-Nr!COcMDLQ8V`J?sMz(jH1 z^|0;DurC+}t}OhF*=s&3_Hv~0%H?WJzi+PP&&FMbXTeu8$JkoVEfhAr1Hr4c)+Ps0TV-4yp$aEK_OYimuO(JvhVx|Lwz}Z+ z98)}#_=#tF^CcZmACJ1w^Fu355)}o1bSp(34n?RXSH_c`GG=X{xbH{I(vj^&N?MJA zK0YtHMJ9RY&Mj6yysneG*r?g)2=^u)4kDY)S-jyf_~v?F7-^NTE?dP3I+NA?+@|mSroLH06qepz>-`i}ObQziDqv2P=Y0jx|E_(Cak)mgWS7(!k<>^LIclLL+ zGG-(0OXcrT$FL7d*(yIo?R#l9HeC@Fn`{2L<0~n>YH$y^vS-16&T7u`lt@mo`IsnB z=1IlDU+=w)x|6VhClS{2>FL=h=iT-=*ODulv&=KglqGa2$2(nI%KVB)YRQa*wIVDi z(H060aNL`E@%r_6{e7wT0~1t4E}UdhYXwSha{)D?&6lseA3eIdCQ73=`t$Ad7eC&~ zdC=`)otGU*)MJLC*Wl3Otmy}!pGhMb)|KIX9{og}G_=x$8wgy}lVmSya;E0zgGwRK z=3=kMxJbA3OC_~uD`4Z*nS1U-+RY{_IN>1y2)XRim3YKKJYS9P<(|+qS4r_n#8=Pq zf+g{vvzMC-MSPxHKcZPbPD^ke72^w`>A@-!4GiceE0@~!ecJ)kl>P+2*Y)!|C8ZD- zKFPV*iN>tO^#lhj#eB(I8!=X|sTnQL<`)a$&P)<(cQf&${WTQvYR$ppX2B)59%0zi ztM>DfxG&LD{RL#hbR+BWI@x*65xm}@iOhe})Ml~te-GdFhl-Tjsnffk%@=}o^_jq+ za0YKaJIPq5O0C1k_}Pge`?uuy^}#Ww?@Y97UI(RStTFAVER5Oo9>$Hta9L;UBNYhC zpL^54ZX)wNs|P__`(%0G$yaOU8oiMW@8?+TlW7zdh0D1uQdC1K$U!yQZD<<7HddXl zbZhYsz6a_yj3*FWLF}q8ssGe7t~l7@9Zs?Kh}zOu*)m*bsff_6qFPUs1i*0JTatu$ zP8N%@S~G~2!f@dsmj#{9UZUG#j~UWfGGbyDBSpC~z1Lv4eD7N>h*Aho$cZgWeiu0@MPG{&gfCksamF7P`tU`>Jko-bB;D8F=$Y7; z;7=HbZ0;D|Tng`VK2fMWhqFzrLgU_>Uc(T>D0-#s8=d5IEwjT+T3*w37T0(ZyNcj| zeflN&hNA9WB~objTf+R=Z)n@$=u+%;6HVwyjzlgM`>HXN#KOogPl7)a%DbXAJiZ%4 z+@@w~m_=X1J|iBe){dMsw9z)1i7bAmz8-aI$y~e*ucOWJ^VMMYTQPW{rD|9-A`8>VzB50OZ!)b%jPKqwEV%K!&mn=yDn^~Hf#I>XiU8Y)jC9!`4z8f8Ja2?Hvw8DX&Ne<33T=~#3uHE%?8{dtGRryot`L(tl|}-# zuGS#c8}XpYogXgE{@9^DQ={183GpIfp95qK*ycj%zKD+#TcF0TCe&ojyB@tt4+t_N zd$mx7d!_0bwmC*wRPNNfRYx40*LGfK>7nv77}g5qmXqo2)${)H*O%Bu44)AMixP;Q zp8t)%eBUxb+Deqxkvx@*8HsYQ--v7bjODvNgbQyba+XaB9=^@tk-B7LzsqoavTnYN zG`HHSOu-pz%u0eiV^=G|KqQ!!9D$a_ngD-2JfZi*N(r%La=493J7kY@?q{kD-erDY<4tR0`3Uq^JzY%fYyZyNkG z!Ih7BzRf_|nYQMXDLQ84_@2M0SpFTcL62X8_siatu-qaH2<8Yw0cowKx2VD@;ps2x zCX+@Y`*WL&(!aSX$3H>pmoh*C^q~sC+#6abTXH9c9E# zM=EMJ3*%u%qP0k)&|#z$s$ZF)6hS{w8UFT8BV8xuVQ+~UHu?FR?L>ORvddRvEJ!D! zebw91@LfB;M%l3P>JuLLVP+pg4!7bBqhH{#$o7s3&4o2dqYaE?RBck8bJ}#yuA!L0 zV-bv?24*6yxFq_pvxKsbHQ^Sb#;?bB7zai9z_7e?V9*S7$MOxJdy`iN`!$M&loji{)@R`@J#x$LmglhN z#FVwLGoEk1G6-7!F2?+>1@ntL`b(ZhTdWmz(GX5qy$D=ZPm9M65t^YR_T$3hH}pZD zNmp344fF4oF^VQQUy5W!(x|Z>v?O^d^`eDIr_*Ops|th^USsd?wF(w=s}{d^ zkokW6HUg1LN+k1bN3^FUeID$mqtVq66)bM&D!Nkcjpsq*aLq~cSB-~7K7YmC$98(x zH64QE%l4Wc?sl4_e3YJ}%HUzyluZj_;6AIXsP<3YLNG%}*L!~FHI;@}wt~T8y<^t7 znU5V2KPxQ8MSyHZLARRp28*mv&t{J>-802MwjS1vT6#vEI^8tW-^upUIwHb~1DjMQ z+ZX(2ELn=j2K!5cwuk}Vh^$Ry?hL8`_sBOM!7^F}k$$r_L%0^r#E83geA-!PHq;>TxzaOU@@;g1`+XUK?lb9FKF*h)ZEa<+`joJ}1oOL(r>LyA zDc8&x$`}>CUfN=Vk@TL9vyM-$iy|8~?&qk!qzo1x+DHfe>K`ubs>w}d!u4E=f_9e5QLFRIttv{Gn+zNfs1LFBqgn#hd(74DT+oqi<4c24I^iK7<;E zKHQSds=bREZ7HRQv^dsxCQ&x>5!^zE(eyzn6r4&igprUr*tE+LZR@kUbB{BwiuWa* zwqO-E74E?+rrG9fJIaM8Wx~U>fjAJaIMhR;(XO@hNGcSb&$!BeU=+^bF=g(R_;CjGX@9TG}7Sp6~&+fHn!W-uVnc<;r@nYp7g~+y*O<|L| zj(QTnd)R7x4TFD1OY(|Urwbw4htn0dz_QIGAKTFJ(&D8!-HTb|`}|6@Q9gYcUmqD| zYG9%6rS*Gx@0>;AU7n?C3l;Kp%V^k&i%i4cnc_lH@*z&R=8$&XR=JB4JQKWwa%Y8@ z?|(TAf#*}9V4&o8cE_#9-PYP86-;9B{`C4>B`o-?>#VMalx4>y z-OG|KO#{5+Jt;J7w6=sdShOT%LV9f@yJrv8i+t3?)VPTV3sZgHP?$#YZyWPvn*3#y z_tOR$Mlbh{-X%V`A5^G3+Zo(v-!2>;-mE7MQ>Zo2*jvdB0VE9&sm1|CWT17@@^GmY zM#4Q*?=kjE3ScTa0MTc=rn%49uTN!sG82?nAIw#Y85kHyGM33Yb;N!_pg_M$u*<>5!0;B7yLZu)?P_|%c4!5zRp+3_xnGwLbVizxdokOa z_*X2DXnLa*dD`L_zaoUv6Pa}yCO*R8yvG8Cv)wNvT_Up#-VlSI=D59!+wZ!v8B4;h zMu~wG{n|v#SI6L)Ufv%8<>g*rVId~FicM27?RFT#ajyURl9DjR7Uykd2bAZUoRiVj?33wYNVQ%O9bL0O_D@_$eTe`3)4mgES>nVgSl= z@wz+UF7=gyR`&glxPX?~D~rAZP^A?>&_9{oNCmG4HT~-oR%wOx1fd)N=;Md<|70)V z|LbKyh#>wiLc}j~S^fWf{YSxnqb>kg!+#x+B)`?7`Ilz_Ib7&lbZop_&jCajzd3yPle(!(NDsheLjmt^|c}%oryZHcQ4H+rX z;SYETs^zK71vCP|pAgIJ>}*L%$-J{O`23dqQe?UiD!|wH3Qz`bG5ynzTK_c`Izjtk zQBY8vKSXo?)9SJR(f$Dq17wrA*VotIC*YDQ6sIy=iW$Ccf?hv^_8PSRGMJsEq7*eX zLjc%QBrE?eNX^n$Re?Ah5#Vt^DYl1)0Nd27|IydrD9;Y1z_q)Qe;Y;x3wz_Ie|*2z z;rvG{{(B?FNfU*O52Wzoh-U$?85Lr`02rfx^y|TiK%e~xK5G1rcKg@ZiOu+Hw?%mf z9S_jQFLTTP0nqrbKKZv!%pXbNwf_#-!+Cl1s6-s_pcY-3@0Yj*D2}gtyxkkkkt0F& z^P%v%ZntWtmVzQ0HEXTIx3|qemJk~V&DhQV1-Jx2R-*!ll^+QSK~U(5iHV7U2VQu8 zKU-^9`&Xo_kCmUGR0u%V3QS2Mt+gsBDEJO)#sN=(l9lzJqH9o4zF5QizlAjM=t*aB zfVyrd`3%&a2Sr9oeELKSj@{56=D=tMpZyjS9!fVDGGV@2aRX{7l*oSbt)OI`f4Z_M z*fDR#fQ<28BM?P+DlMk>_JhltSUy}F4aT$oQljbB0?d^Q zK->O98wavSLE+)upeYnpRW}ztLAf@7y--nE3035S5_T|zuJ!A5MYAgHHl;y!^s0c1{xC6^IEPhM|C zE4;E<5&*MWEI59G{ujX70r2_^U_#Vb&iVmd?0OH0O&35Q!ITY%0rv2q%hSWvXs!Z9 z?Ivi8#_h~dz(U)*uLbypExtHsVL=m5S1Nq+a^yt22q=cIdSOq(v%^X>o7#X7gHt2jaUQarTTI%ld zAQ~c>%x&XjU1>H-C4~vU1NzD!w3)qscsL#+31A#C)P1@=Zq2&4f0J!e=7I2p9xP?C zUaKxR`WCRQX#j@^=u`04Ch|L%;8IYqCCcU;xA=$`0XWkbK#u+9z$hOZQ)U2U;Xgw| zaV2$YC_4bX7*8F%L2pO$`Rs1 z06oNVu>lY8T^(4*&EEV2=quGL)i;(KhibF{n1$LB0EGalpPqnm3%DoRCFmRsUfT1+)B7$awx2f$*{c#bY#d({{#R8va^p`X${-OyX%qe zNiIS84vC4u1qF;y1U>+~NdVRY6x|f(8pNzo2AQw1>IBf0=BX2HjFuN--=GLHDEJb{ zP(ra;>p%&$7hpa#marnAr%c9p4z7S=Dh-UX++zzyM|x1>Pj3w6zW{_`?c*da9~j-8 z5oG^_95$^F_<(!c0jO!Q=!JcJuBX&c(kH;gykumQ-uXh+!8xtHe&48&CInStf?^V& zLOVb;7e!qB9jYAE;qyNY&tU z5CUL=X9AI5z^M}KDQ0x@sklJrUXgIVm{GA9yKgoXP^o}JLhl;OmPze@rv&{AIwT(q z&kwy3WI!2sS8WNbp)+;1S(Qz%U%yrY9I|4qTE5zkHI_u+{or172f4iwr4%-~>jstw zumT$3AAC;x+cjP*ZN8v@(t7h}bo5sMkE@Hl1KqvI*aCbZs4)dS-FYUO1X02@;7HW? z`+~!;3weL3nFJ_Ae0d~!V}=QEgWLDXo8+3ntOMaZWUv4Xo(Xh-xuy%Q2XRkvx9#?W zS^48H^za&VyqeWD21+pEzXJ>L2H398pt;7rVhGXG(9$-9Un=-Av9QF}*etVJEw|{v zQZ|D{W(;r)vjKWT2ABiD4~fFY!O4aKJpm#n-T`QENdt;o3?ma$>RsLKZejN0!<`HX zw{;A#gfC5ujU@pAu~C^#>H<($sc5LFC7INUzJr08`oze{m@+SLJ|db+8FJYf0s{BzC{xOpZbtYcT+P@wuJnRRLz{XK?3C+0L#a zCM}Ik3cH_w473$=m{RO1uJ+zW^8wrBCYOy4$XF=N50~@M)1&#?PN@To@E8Ch$Drqr zYPNXP!?*1%1A#bdsR{+She+>xF=;8OAJAq6J;Xpq*K0)q7^l(Jtq)ENtgP}Ok&*EL zG0q$t7sq&PPK;E4ib&}Ru%JU$py{%K71c0bYO2S@!FjppFfONTZCx_&1!f?vj{P8~ zvV%iaOiBu~T$+$hg$A>M7iV}cfEzJ6ZjZd>AVgILgw|}Vm*PB3dQn{*7zD#8g#Chb z){O^T`5<2$)vo^?q>h;uo#w5^z?zi0_i?F;HNgfKtQ%C(G(TU;qC*AT!7gut)U)2bHP^c4Wb0@@uOP+Sfajrk8x^w+NyFz2AF4wO0% zrFntyM5D^=$9y?ddfK9-9uXV~)wzQb@W7IiRu1rh9(M<|P_J(>t`)d(zkmN0QBlE# zt}=jzRaXr7bbICc?S9_~(4k=h>Qq`#UOALqMzutj=Ha)oVQe{9^$aSR3*{jL^zBNN z3~M{sKmirYUT~b&$;-Oj9q$;?AsOadEHaHAQAiwtd(?An@b6_4SiajV zxf(f-{t2;&|J#|2=YoAJ9{>6jORh)U?w?0!Wh zC`hK$;9z@4KtjTFm*Vws3j;;bZq;b#jvD~e=du~A4sBslekW95IqXZ8D@`%R#>Rj! z18K#y7?}6C=FssB7QXlIR3tur{K(_|C;+u%mP<`U5)q{BN3BoLIJfgtWuH(kFx-T% z^dZ39uWQ!;7aO|30+J+B1ch(};3wl|(q{r+Y{*KjR5u*>a)I}p(3mO!8}!74A~Z~$ zR02^AlqC)PCMft3TtW|yf`Bh@@yy<|2&;i_^8%)qV5m1ZI2bDb424_+JRKaEjpR@O zvbMwMdx#J4j_v`j+GWKTN%S!ZYK26DL0oN4{}!xUJCp#M_7>=!0JQ42(w18k!0N5G z76x(4KZ|jbi!EX1KVW0v6#;}J3ov^f)O>uzPzFBA^XG7Lx~0?WK#~OARt0Juce_FF z@|Gd|x42E~|03Z2x8M%i4$#NH2bcftQ~zH>`v0qMxP02g%e5J5uekPxIBq&pP>krE7$2I=k)NkNbf3F+>5 z*3tXB_x_*%`=58-d1sz^X1L=ezUS<-_u6ZHV(k-jUqKH4+{JS!6bk?LE$Ig+6hoa1*qT~CWh=zRW%2i4a9Y|Jb7>r!2*Xv*THVsHMWG1wkpIxq#nVhtXeiWeX$cjlgr!7h zO_lz`7I9wmudUV0XL5W$UgG?e^6FFBr6(c9rO|PwadG`6*M=jrk{`L>{ameD{N~Yk zq2&i7W}~uK!e#VkoTcySSh;b)11s;}WrBlAbkmYbO2d&#$osek= zJ&rg1NZV@7DS=O&XMd)e>(GT*0q2d&cv$FTE{hzB@u^h)dXbTlo&!1_qu)NR85$cm zw6tJrXlNwy`_Wg@66fKh#_S($cIk0b?47!~xpk+?;EL=`_z1Y}WTkavk`{da%mepM z5OIE>=Ij_uJJ*@mkRWKA=eRm{abN}?`P0LW|*Ig<&zr6>9iFcd^A|yVbEOh2b2IuTOZzPWB8?wM9<{ ztQPuMva~A59LL>nzzTWNJ>NsCtE+R{$EV^K7;R4WI0-5&?V)G#9%~>=Qr)H@qd{%GcXWQQ4Y7LLai5sf+v1OH? zak4wv@!@XE(vQ!`92vBPPsZvzuY=VO`}xzbx>}CT{Q?UMi@@_EfvKq}O$vN(6KZ7l z*f*|CHuPkwaiMA(2*pD`%E#;1d1I=7euBSJwX03|Sk8%8Oib)Gx1RU>;M3eH|NYH5 zgPo-xudf-MJ2@Ob-IzN%Ix_30_1C+vq=W`jYrWoY&hJ|24lC|Wbm`c&%Kgy6(9p0o z96deX^WmdM=R7=4FZTDm-doJA$+H|6JA#X-imZNh+>VSS>PZmWXl0!5PC*}YT^0SB zC`^v!gJwI|*%Zkjb-_dZYgZS!JFSQlcYS^RS`)d>M8BF&wyE0L)H+G=$0WW1r86;) zQK*&(I&vCuw>@qoD18G08uatus^x0KBZVy;_+S(2Pt*x2vx z#&W6`nw&>fQ0<8Bj-aDTx4%Cgon_Uzf8WzM$r($l+)hGQm)_gQhsSNtYH7G6f@>32 zY`U4s5(9Pb4PTJuAq3@I`_f=OdRto?&e^kGH8tV~yQ{Dh_N4mA$a|fZ26@I7uU@{4 z5yd1gX=?iEYw=8bEF%xk`ID0q99&$fn&-!RTx=v)6{Np?l-DbIWHf+JBXogA$j-|7 zUXsU&Gah`GshV9s?s3{dr}o9G$Z1{QZe=8{Bp;cNGMg*o<4D+`h^VOABd8qdAm@mj z>`klZ>thNzuHb$C@wK8lb5w_%OS`dZcPwOLLRVT^T6gwq95Wl+beF9&udi(bL)Nz! z7I${ngGjDgb&2lMi-=Ie=;ptr5k5cobybOybF~$M*$3i~hU0OuZpXDmV@u>Lm(9qBVgM#WZbF0tA7$p{O)?w2%!uk;2q%Qu{v^(xWC@wC( zwK$;onL1#|(f&&5D%F)MS4yoW&v0s222M@skGO4i1kW%sGRh>oySqE*x_Hy~F%YtQ zuMv%$5n*Q!6?a&hkU;*(q$d>bgY7u^`KuV=~84dvX*#7Z+j4m@-hjOvE|-rD5+ zkIz>hC@bsnU0nZRoU8{MX|TWumzab^#sW5MRbW_HQ>F7}WL#Vj1Tn>n7cbmu(C9fh z@NH+m*2&)(^;OexCw>0>`Cz^QHvhAcz!a%~sguLimI9;pyywR*BM!qBNA}Ln&V!}a zjBuN$e4MZj;{4`=o}r<5njXj7!A3EhTESP7oX#L=nCtTLcnzJf!%}Uj^)$CxAM?@i z?)ct9X6{<2@akLBZy!;fPdeVL+nbM+o*#GH#HaN*vgWfG>eDlsN5Z+-VpxBy(s{7j zU3koWS4*?njj}z4!#2ai#hk?EM|NhhIL)$XlN=Nq&Tq%B=W0$Z);uw=gX!(9q7H-Y9*N}sbNOm88D zmpUw8MCu2Upx0aIDlx2_2o>yOKoLp*XxPEmePY5grYVU4p3S3#5+bGrAu8Gvqtn28h_JXCxAd(-Ro~Zs!h+lGCPxpmSX?q4xsf`bJSGzo_r^AH@I}?SU7H`hRTYg!g zAwXsIm>3e$iljR!IC)qbI0C8)`69YAXuytg7_W9`Zy%adFim>3&{rVuLTB669K-Q= z&p<6lQ_sM_;0MI?#^%vfKe)&K#>`QEaPT>P7M37~Y zjPCAyiDo;>hxJIrtSvVEChK4!EsgQ`{{33I)5!ojSc0LVr~3v_mtci?pM0H&;K6GM zr{MA4-rSt7K^HPe`##9p1J`lbn(rx??sQW#);QF(TN->(1?d%8ubu7`sU_HVb!T+t z!l~P0U1y@z)KTU)Z=!^umhNm1=os%V{di|K4g)b7Up?zhB*oy1p(KY#D?$PBCj~{% zYIoF;k)9s)^m~>BY-_YZsh>#7fh~S}U!QKNFdv7QvTEljp@)oac{tS+LILmt_87nA7#<3cp3LprXRlqmX2yN7 z(||vI-*A*a9zT{-OA;!-klnoJ*RS^i23AKa$mJqvn;=VB{p!6^?E!@ZN!xG@cHC&U ztsXgMBCbFEK7q{pJ}H~(#K-t& zlIG@Fn?4NmfWT4G_IJX^Ir^U*A2N!GX*=%!`j!?V*7ceP-Sc=XTON75 z#zyI_<>6RyG75^oPs(XikXBkdJISJx`AlCj8&k{`Il`WMR1}5K3xTZ@j%)E9ui;no zgXQ*%M5LsCkl;32+}z#Q8%Y!=7Wy*>3r(YxixY$$39t#MYtacsYCT#|OXKL}cE3`c zI^1_huWmf(J$TGIavX722_T}E&hz~y7GbSP$c%5sRKlw>aRmXYA@dEnIt6NudZiPO zY$$~nK>t@a=BcO}jDybI7j;qByiT>2tUginf)nQ*7m z<6S5@UXX+suUx?d)N|T9;deq*fMn+<0Tob2NpPUEfK0oQm z^EiDD$zQPY1O|j!68!Yu{b+AGLP=YjGc(P8@q2352zf|*EEjs-oHX~vFap0sY+5H2 zfRP3$U)Z(Pwqr@6u2wMY#l=c2fMl2`3{1>VF>%+Qk^xY8@%nWjq$GobtzQL|I^kBT zCQ)O_*4EZ=rPL$yqB>Z<3(4r5zT17DlvAg}XI~?0W=2)z5%Q?egkd<{?@)pHm_dGd zHHoow15j*KqOuUye95>8-&FZx4hhY4FJ0fxE;@l~q~+b6lK0D7C)m}wu((?f3#qY9`wIlyI<3%@XfMLIOg97`_2_kFT*) zV%J7&yI5l8s&%DhW%Yr4sn0!-j11x4JtP2hh z0~seL0i+58T#uW3MXVWz5U0@!M>TfFqYvj%_n4ye1+%%t?=-fwyo0z=uXYopb(%n9 z*Qurk9P;dk`!zN;T+f}Vo=?hGsReB?0D3b5tz2I&8J`kA-6uq7<@*mGewn2)?f0Yh zV|j|WjC&6YimeBzNkCWd&741etP)kzRJ89nkmzyu>9&U* z0GshBuVF~}<9X%ga#in5;UbV9D!^R3Rq<^ZZg2Vw2DA`*5h%d*fS#-tvrDD`pELkF z=sLYLv$(jpMyMapZ{ZYii2<_V3mRO2{(5>T^Xf7(m^QYyGA)2~t+p2)YI%enA02Vq z{Ja%PEl3P0B)^5WA%O0AAP_->#$-n8gsbLihXGwAO?KM|ns-93LRj@^7@`Wbq(h&u zU!NkQsYy-YFX7-&oWb0@4)Z?oD=k^}*)vYn9L=EfjI#3z=Q5h$f@eW?V36`RiNVFe zsfB$WaJW)INJ>gdaoy~Kw#Tvk*CbIYvXG`_TS)RsF9yCt;;7}uOFl|mtk@b;IruP0 zIXqNo`fiV!TFmXWxFVwB;QR4g4Cz8e(xs67>38M0B5ik-Q%&1cZtTrUZ#y@hLV^Ip zke&aqOj&Ua9qMLFIL(WwsCSuJy^i*d2!llsTEXg+pr9aZk&O5axF%GENgf1lLEdB6 zEF}UM5EvTT=!u5D29@f|$y>BqKV0%XkF@vibs-}Rmf5Dw9|e=L84f@qUf<6Y5IdM> z{K2Jx$PG|i{kInf+83DF*`eNn1=>sELr~+OMqP`5N#qlI>HzuV0vh!9-XDx*@9$T+IT1=SD`8* zAr&kCsM=3HJ(5$6q$i zyERAoU%uR7*RG`S^75(-P=sL9y%tA(G8z^Xgb*u$7)%G%g{I$_s0FOvHt$r!bR5-a z#56%Q#n#c$!Mn)U$|8(5S5tBM$`uASwvf~61)N`w_Qn98N!`iMZ$K!cN2Z+&el{iq zVi^idKW*qzU^9lZ?s;Eq=bazM)<7L65RK+tgjg_uemeKV9T}*j+(ut6Xadd>@Hi1c z=HKIF9~;&Q9VN0mV!H>4>P13AC?L;EQ0b8eJY`FWgovkz5IbO&ji3#K2-OA91o@=u ztLQ#(mL{k)R>Kx0lR)>R0oN)$c;F4lNOyaoA5qWV@LL2UpU1?+q!6&8M=Ai6B)#>i zrunfd;bhAc*WDHFxO?h(x@f_{!9Xv0tR`+k(lQHg0nml-;o;H4^R6e5T-yn)WYmF5 z+kN{XQ2nzvM(s!ls0BQsbhp~DG&VIc@bO)sb6Z36_Vy+sBJv!oa%JS_CjoreMs43)AY{zeOMvo+v!dhlttl`IJ2GbnAhb(v5~UaacsY6?M{%cnEl8a6gI zRsc{L1qCUGi!B=94m{6B1nd^ShjDEJvott4+IQNU3_y0L`B-J#=@r#L-eS?yqfLaS zaRZhU0U!Y+qXl@qS3&|cq9GPgGa!%Sh zlJbSwSt!sr(9+@pre6B%V|+IduFF@izI&Ld3hAK{LO22`m_S4u@o$XO#+E$FhW$xG z3-Dspf=K#Zqf`YQvGhBy;Wv)3q6N16@nK;hAqLY^Q-iP-V~jL*fK4tTcuH1ACLd

&dM$IlTW8#wXt@oX7SfAxM?vLDcDd2^4cX*tsG{l||5s0*jOarfBU z3(Pe%C=YWzjzhx2!=J?Snbwbi2(kpbcMxzXGHCMtU0{=WpxkCfL`0ak&j6MPp@F(V zb^d(an~o>N0I!yy0=AzVEaqNwE#*l3V9P?S1B4F2gjJLNRO%p2`TP0hBQwBz?HUXa z$P@4mKtc~&B+r#B^X(>smuBPk3)Q{P^)>Y1DDN0}B%~Ur$eO2|}<_yTU=< z&cf7`MHmz+{>ztr@z0&phY-`|7Z=x2O^ZQ9F`y7XDpsrG@$vDEV5Q<;zitJ6Eh6>W z2>&Q>6k-~+p^xzhY|}IXl$SO1vOTUw26-r9$CWJgF3?(k+>T<(hxsr<)&Q6^^9fA_ zkR)N3EtBu#$e|jx zLP7C+k9MG@tymZsc_5S;2N2MFIXFE03|rn~hD| zaNqGbqS&`_t`Ne zh@@%qVSq^Om>(|5O_OIpn6LN!Mzf-gGDX4Xr^k*U$r6I>xE8APO#f(a-DI@9h+Qr1 zs-WFG(etBqIZ&SmzI`O}9gq^tLx6Q$Zq3O>;Os3(q5w+W|AjN`_ehCWCO~vYcp=lh z*PgFmQvjl&K$3fEYHGq4^qDYblbinJg59K6b36sPY^wExZ>x%z zb<0{oeCf`3$fg+o+jsND7POtkgR1z;ly`x2izXNu!NnUn&pj@owaY*;Lk(h!2?(eU zTvyE`rQ$cQg`zUKxcE4J_B_GcvNc*0&Pwz**sET%^{(A-LO?_XjXn5O?B;w+^y+<= zx5h2J-K7Jfe6vYj%~dNYJiB;Bf-BdLPo&SpgjjK|LJd?ntBz>j1Oy+kyBoSSoe25J z$Iv=_c5m8Fiq6O3p7XM$RjZcz<&{L!b#q#KxBIm#*2UfOfaVe2zNXTOgX5r={Qvd~ z{}1_tdrm{BzZNS!VvvGN*!Enc#|OL@5@eT~{TmGV_}=WCMP{87;Q@b^HQ}--8@cJz z&o3UUG}DC;&&^#44C z9WkY$_0zJ0?|d@}) z`}dMWD4`OOM*pbs5J%vSIy)KS%UD*f%W`ZXh8ldC+=6Lj6ly%<^Tio`sRE6u+5blC z?-{LEc1rYo2oUetX!#_F!vpL9r^odGL4x%EB9Th`xd;KR2rvRXgtre?I`e*1Nc@t_ z#mU(Wk=p|W6LvPXW%WK2m>xa=DqEM2|0I%hE^ueDv3w-9bRfCzZvw1(4XWCuOP7d1 zS%H){4I7rWuyloo68{zrB_ZnC`JlrDp=-2E@7^^2tls(1C-c{ARVvh81OTt?x_o^E zN@|7?0{JL;pXfFPldf%VlO_s7LP9txsKxKVe1&wz1+YI9Nk_1o(NS6I`DcK5?SW|A zQ)X+7AT&jhb&Rp+hs%$ass8NSl5g;vpR=Ot#j zz-FF!J+HIz-A`W=H{oTblg+CnuKlKe?U23-EgW(%M(F715Re%>x4E%FL`lgaG&?=* zv$kgSb7p4U2pnP=qc=A!JClJ_NA*9})(+p;usN}{w&p?AnibWX6)hAbvZa-{Nwt{k z)5Ltr&QJYsY0O_l9MnA-K;NL9zkKg`<^XxKe2?+>G=p1rD-@ZjDDJh{m)6XlY_ z)nvcG?puej-b@A&x(CV-VrW7YC|?3N-P+n(i>UKu6&D%L+I|;ikGgKGo?R#pl>nX@ zn~!h|y~A(!?RD}5awRDPFt3hkfFuP2+z^ZcHooz=5T;8MXBVRD_-bw`!1W)>) zfK2M~#~ZbPnV6WQqLyPC_-dHiwWohapy$8VIaor2xOhm8h)yX0z}_E^(i;SOxLI&z zUT3m+?g2Xe#275tTHohsgKPcH6=Gu1-X4ceTh;IX9~S8VGElk8HY>;w%^sa?ZFMk3 z=V@ufA$}MyU6NE88yFymg+W|-)M2g;c-4scFSa*8 zWKv8D)%g4bgaBM1E%m~ymCBAZSAM7JHJcpms^ICCh-vWs5m+sHj7bf36;sYlS05eRF1<EsBE?Irw{hl{rrba==;*`8@llorzEVWPgqhxiexefb`s5VyR<3UQGjR z6&+Oxg3?ih512g^{N@xVo5`n6gJ!F>Jy=q|G|FBVi;(nMmO0B9A^&%mY3rtqWZ{Yp zD(}}SZms^o8$tq7z4iQy-u{HI;C&talK>dAoM@-NI zPf@&X6g@x)EC=(P%#lbZ*Uo&I8tRAUijQLI&jOSQ^!M!fhV>WHl6IGCM|*0l;KfXR z{~YdNxVO$T;ZK<(oe5`_zOvN%WzLj;A%a?2ZW^ho9qkB=qQnY@J(Q4?tiFY z>E0RhJAy3zG5!O6(-~yLxT{*}LvnFMJ)>sOv@Ww$aKKw0Z3uW~fWXUg{`MZ707k7SCVAzlk!Ck1b z?k0ByDB|LDj5-Rzc?oSMo^2+z2Ixb-SnnbaiI4U-e5%K!Nb&v<-9!Vk%olTS-YcER z`j(DLAm(2apPr!N^fCtBvwAt6wfKX|@7pd2zd{eO61GS_ZTrUbXVUtFLT}dePS3we zAPQqxR|<61qd~pxvY%96x1x(vkA|P7Pnaig6kgRmHM>Ix@TdI?&pA$AGo#-)vihGU zw^9`27q1VB+{EYZp7(n4Fy(f-{FNpd0ru&1@Nj`;IWqf3{y|annl}OP|CkKwd7*Q+ z?GJ>z$olUIIUlFl^ie9|(lG-2P44~Ed&fz?C{}1Gt?#4J z+ne(MOL`u$83p1Mq{onGy=$lnmc;3Q5iWS87?5iE>Ax>$^YTHDZ0~2A7sdQkfI>U_ zvm4Ow-mcN7AZwQ8>|+jdwhP4k#5nyTfoNHx9f{vJH~+Qb;UaJ0vpg2gA2XbyAKS^l zdp0m+xumUOW{~tZK3-(_^Et`C;c=c{8$VYht%*f4iyhz~n@WYWhls5aJDab=TN@5(P1X=eC?4u#lQI z9z-|r7^D3pi~bZY2s1u8`tRr5`uXCV+`ih@OyvW%G{xFfB1wkpG`4WX`ig(3faXnR zvfD|S<2f(6yHBAR-T=FeOHEk#TNelb?BplOURRD{}-AQXrs%Lpr{bo z{PL{m8YI1@#fT)Xy05vrXYyRJK7@zLAz5fAdP56erx0^r?aO|b%YuB@7i994&e*9f ztz(t)C~Daf&4pyPFk~d{1R!zc|96I{$COsM!`k*OiX>HL?4}}tS*|)~ZaUt#7~@N# zY-%-V=j6{dv59VfG@j8P+PL>)#hvrV^c4i#9!DMTbt&Rk(>^xFzq}5SoSO9S-IDpD zQ7cg5t*(33VyKPQ!&Ak_@!7&|ii#}RE*5wpu=>H`Amt@VfMnjxlT>@2bEPwcyV(N<(Jl(e5drCuS`qag~-Km z{HLe2)Kiss_f4dSjFt-VlzCLI%Xaa*l7t%!7s%VQ`MW3)x>bt*uS_F-dt{Wth@8@} z=V7Nt&%H;vV-8y}n@qk2%1^F9BNAj`)UxC)r|U>!(Tj`PltMdzTE+5{{);;N2agxN#TaAGfnUl#`Ws%Vz56N<#2zMj+%Y{Xo z@3fYZ%(~I4k=SHPr`?+bpyXryT|Gko(;z5l%S6VhiGxB~T7hF+X5EF3l?fk0u{BS> z9AK!(WTuWN_ArpW4-cJl{Pay3izwuBmV#xvvA;v@=gi&qaNG9Yz8CA|aH2;9$RJk+sv|tl73LrHbo<`Rjesk_@3f7kT6>C1@4ha-i z$2H*fJeS4JF}@|zEobwI z@9mMhY^ z5)m=6H*hjUj|b*ExyTGG8;D|_!}23gr$T8(F9K3Snih1Pfd7UtS!5bPeba*`ASdV- zTPUyi^RU`YKwxMvtVyE)rK?~56k_A>sCI#WqH-f;NLJ4bT?)~x>eTOT?;W{S^{ zk`@?P%OBSbveu;wocq-OG`o-NiAxc|_bj!*`*^mqLUPk9EUc^<%PcIpTSA9s-X-DA zQfZvcT3xPp_6W@8yQ@|x&1^@WK1u^v1Kk$$-?OP`UFI3UEV*NsQ&@N*E-ub#enk_~~Gy$3e1Jnm7{~CM0z>2 z;^u4z0OmJKd;a)Te12SNZLO{MMXKjg(LCEYEX)TB&|?Ym1yu2@bkYdvghK6`0xqbkQQOk}zk36#f>iRo7rw?CWIn+Mu-Ytbmnqy?ksDBWtoD03l4l zbCQyhhCX{>12I6;DT2%)oUG@&8Q!O*8Gs}_-=9g2(gkzu*6rJMNE0%MpZ`)LCg6&@R&+dv*apc4G1b8sDcC$Oh^g*iS5hC{$-5OZHcvwp zP6I!2>(-vzrV+aIK_^RpKdsnuLNwuEn+|nU^w6$aE`o|%L;`dy+hMGeacGMU-hM-n zgdM)5T%^1#bfvm&+=o#nHlez+2WC$>_6|>pS%Oc)n@d+d#0GHK(2WVr;wP3_&@uBkmh$0(Pq$s2}3EX0&T~W(%)DL>j zQ=m^1i1u_l(vFHt#$F5Ez30iun4Y%KtgMDLVfLD54C|n4Qg$_8Bi}}QgS+ZETjz?% zsD-ns44pupTqBc{BWOik)>{5_B!z-6O9(80JFYPa4TvT%Dq)9v4{M=`hdaKbU>att zsDNH6^TsEw%c)ZAt!%8yU%3oW-6Df{wVsoKW1e zSv@DNL)Y=Nzw`E-)T;d*3e0^wJXsRAd!5VMDvvjRu`(qu7%6C6nSNMYhHFW+*(_-h zUhz9e^{Kx_rlz@cps?D7LpM4)S`U0j3SkHKQ(SFrZCdE(mzja12SmU&D=S5+@0n-q zkryD6!`v$jcE|FX8+PQaH;5ODMb$<|1TP+F_Fes#f_(o?$eZ$7S4JN!{CY2RZ0Qyz z`8U2mV)fx3!TN2$V$o1NJ!2)xiD7#AylE%^8AOzZ68h!>59FE+02NT6dZr>DV|A8Q z@uGC$dkuHZIH)&A^-8ZxwO0Lo@ff*G_)3e39;Sccc%^nt0aty@-|89EKm-lN5`SYG zl?%Hquy!HLenegt{WR%i>K0OqWUEN?z#l={=kwS@uH233b8%g<@~~v*j0Bxxz|>X4 z)?d(F-XJdI0M+5=cyn_C5iAHF*(xcMJ6T?4W`P?w;o z2`m64izK-$ut0AzA=J3-$o?Icb6$7Z8 zf45|F*VBrisJlF3>$`-2q5<75Xl?9q-RQhEV<8(~7A)>Yk4a$k45r7PA-k##_QpA? z8_zDBy#;zfD>Umz=VoO|OGu#A%-Dj`1JVQ+YlFM$FxgPz$}0XSX2FPRNexb)Av@K7 zU)pAY8_=P%HxsLqXEiDL>eZ{aV69S!y6|bc{JNqT&!m4`xA}T~TP&_H>JO+#9vbvO zB5STe(NcL?-Nh`gOA-DsTu)3|ExlduJ+nKOmz!l?YYSL#)I)zx-TCO!lQCnO zQX(&^ZqaWMqqZ>kygOtPgNUWxwe|&0B%lU5qT>aJNa`dn5S43NM3aY0=CV~ida082@;f>znm+|Q<^UF$Q|-Kqiwe$()_5LI zR;m+b>nhrH9?wjvE_Z2f@58s&u@6RD-k0Kp*iicE1aAvQcW|*B?&X~v5G&yQG!Kc&PYG+ zmqcFQ9^i}SH72uBx}S*=K7USqW?Q{>C{CIFoM=?)9Icfcjqhf6X^3^&O=$kZ%-yUV zs&c*YtZG~Jg!d||e1gDvq~9DGJy0kZIl0y@v}Wjm(1JqxFD5`nZ-KUCUA~JvV4_w+ z+mhQ4Xh=bNZN8-`BAQeWG}2UVd|^w?PC-}}B9F-AcXlvr=BjYL?2ic)YhD<4W;4fo zb2F(?yR^2iVo-(kDrpfb=9kwo?}A)K^D-K++OxOSYKc3uGiOGWuqQ?MRxl(4>Y=ov zp<|ga)%8Wu^Zq6EuzxFhs%HM9pvm+QXZ79kruZ*bN1KztN5#I#opBV2vv{v-7)Cbf zQF=YULj20NlvpxdC0Zqr_}rsjjMb?fd;Scc;4l6!(C>DQ2(iwE3*pSASd&Z9s$(#; zEK1`1c>tVx(kX8ZY0UT(rhN+C@eXz#{si%lJJabB_d|L+y*w{(DbDFDv-sY3`4rtV z_v3?p%w4`$MD;))r32D&sqgH1KBDOyk(2H~E`2~M(fT(#H6fzFuf5AcL)v8>G8HRl zM?BN5MB?RJAM>yY{Vua?{=?)Fni^laousDX=~%mEfpojCPrhB%{S|bt`)*m$(Bc;* zVn?cmsfc&v>)#I=oaSQR?NxNY9aNLM)smU|(punoIQMS@CD$pu0vq!7QzkS=Ihqye zF86*SqVNhkLs6cUB!mV>PTT(@0kAd*-Dp9GXYZ~?sZ)`+I4!Au-STKE&u*Gjfpia$ zfLjWIWHcl>H2p72ahpCE?5p)S*2yZ3{$V2}0cfhx4>x9C(iU6`T@buZ_4H0zCsF-Y zmZr#Q4LUPBDHAoXUenPykB1%k4*|3OsAB%deA==;r8Ogazp|qk1sN`O5iEM%7@#{( z6Je8D{a4OBeN;qvWu||6@*d5~P1A%_?~YqR*XTbeu%|yRwT|5`3vU^v(j7hUC6R9U zTM7%rk^vz}Rb(Xo^r+`pbbTYx$*oXO&N}wHurw&y}P1Y)+Xa)q@l&&3ynj<=KC~nT8Pw!@f8F&HwZWGM&PJ5=me4FE?vJvE$*uZS1arAR2r5|9COg zpIz@IhF6qy-=tZ_NtOLu;@}hTZR@Hi#H$-gF1UV738H9-FXQA?PX@?2XJfe3-0vx> zr`+fMM!?W#u6=`)*h|5bT#~9mzw?a`!Q#vCcMn8OpBBw|`>;)?D_nWstLQc%UlM6!4{jNZhUMn(#M2kjBeWaY zwyAXt7rZud=SlAQ&iFo+yH3ci_B}S3!S@;=yOAQd#^E!Yo=AT@RzIQz8YwxW#7}8V z1GigLOh>9H)mDD^-!bU7zGzx{W}%zFG(K1` z?{W)k))bLgkrvT5=aL`4rSS9HPozwpKg@4d^ZFIo1m#Z#p5qrbhe>+?y2AB2$>83R zd5KxCnGCWC2K>5pf&4%M9$`_=?H4YyB6Iw=YG61ZfBv2|ZxbsVOgtYnFiayLFdw$3 zg@=+~2`0;-$$n_2`bSk??3^?tI!ew|WT93ny{Xvsr3v@6oj9>(CTyI0ZpY~dr@71b zk~{oz0qT)Lz1lkPA?*Y0kum?J&A~`_ZIw<#KHbjc#P#%MiZdJ5uk^27r0>RttG2 z6df5%o8wR9az~0NJZkL(En_u}JiyWXLR$w_=G6z&OV=e#kgWQf<4OBS%@?V(;JT0`5^0bG~7-VEA z+PN*9nc$C`1_X(W`pi4o3I=XiYVm`@(b$wp8ayyZ7Bnmmcfclbq3>ot#TV%tC#Pc$ zeMf9&%W(WPEICQ&gTT4=EJCa43#69_NJ7u?Os6bT;w_GhNX7JXgsIe+6{bXCq+tF> zn}Ja?>sn1A2_@BgM$qRK2Jz%je!ZC#Xm0Wmfh6R2!0lB$*=!+k)dTcYP~MNhPSuc6 zTt{>FaXbgHJ~fAB(SiXQ`{>Je00Rb}!F9yk^J3?ZwiNiyldspZq_9BdlZY{6SjuE^ zw{lvsI@#RrKqqZc()<|Xw*{`S6tQ(I^>g~#v%He0P>8!gjwYVGPH2emBdwB$$QRG2iqUZ=~e;fxxLgaq+=l8?XTp2;T^ zq-b|nhjh{%FT7$77`$C}nK^BCT{&gSE80UwN1H>htbB`rxR?#UMY)YjA}R61KVGZL1k<#<*-`l7bdb*+lKnGV;nWA00@VO`B>W;SzbD0TIg z9kTH5_Wh4Xl3JHSCTY_9OM+38uLN%sq+!fQY6pjL-D1~n<;(Yk``@8e#|wcn-@y-h zAMI-jD$YD5*B~lV^Y4Wk5ix0fIeqcBQ|?~>I4c=edPZ%LL|c`Pr0xcWNMgWOY)>fQoN#Dm0G^`hf2ldXQDxl9-_@2{5RPrq_N^(IJg@B2zLwrp5h~PeV}l^ z<+$wi5Eq%w>H)UQKvu!#ACwSV#MVEtg`*B-HN$~0@A_M!|&A3Qy zMyu`;Rf>E4&7F7yLQbdxGvVI|7CCYYf0^k7zL}l9rKm?i#_!*hDgJ~_M`!z#Zg(yy zTn_7T<6rr1|DiPAIwN>&}{?eE{VF+0!UNOiN?8?w|`eZY&oJEQ0Hzy^2Q zmEqxVs@q7p`rf1vLqa%JJXICbq2I7iWZ1yU2xb&bjws2}j z52|lct6$%)?R{Ed$8JVqS$O--NwiIFNj`si+o&qtY&5;5*FXDb@*Y9f9n3n}Lff}L zD}TtHkRCkp6YI(#PMm2hX67=Y`NhH?BXdGJhshg|q@}PVnO@@V7|Zr5Fo<(ivXymQ zE@xsztQ;L~^5uGFwQ+M4|Mzp(OGg(PDv5pB{soiFSu2QGXKEi1GpXYfW-&cy(r^xm zIC@R&64e@Fp(M5fQ?5aOtu?iRMm#D%LmQh`oj8__gOI&y`EL8CxVI(M^q-w_S=E}Z zPF5*@)56iB2^ngnvUoX_Mo+;ud7J8~&zlj;Z9VO?^`!q==X&Z};Ualip(B2`N*xOC zT)60=Q>IROem)?QshVK<9N!{IxoC6{uwrsecxBY7kF!{+aC>oL?fosx{#+LvaczTyWE?fE??Qhbd#Mv z;PBA-Ls*f#{0hHiqMCO)%ikH~+H6-cAsj1#KIWI=s_^0lIKBoQ2xs6>0z&*jK3ElG zB+cVNvWTzy>4l(hYv!}+;w!=d7A;&sUwAH|-DS68VS0Fj!pikV%W&`ACT>w2i^+rC zhOy5ATK6-YwPdcKNA-B#zESd!qv6cFhdVE-KZ!HEkk+*IN<&7wGSfS>PmIxy5*K2W z3UG;b9fz$CIU~%rt&5lw9qq{_)iBvVjq>}GhWQn?NDe2i_bQvUXf%%uK2l=0?q_nO zU+|Y0PZ%gdo=qgrY+9QU$FjD?`utyrkSG7?0H+%?!_UJ>ocTRvMNvO^^T1gUHYIP} z!a>d^Bdz=%N9zFr?4+MpU!rZER8cxN&7@9yB(gN7({i9O2M|@SX_28S8eZ#hp#*F1s{WKyqa~pEW zb$`9SRR+Z&_2E8l{r>FTixN(_f7iV=%_U%bLTLN($wPbpN!w7n-8MRmXev%C@#0C0)DViVfd$l zuT)2e7Qm<^ioPUq&cscBS$Rx$RDo-@>02EiTHe&jzpcqSUiSmLPzs(i@B#}mnsGP{ zk)@hB?*t8YNMDutaB+4{#|1qD^~&OvyeDyxd_nbj!pWq1Kj!?;ri{XT*fqeup3Z*I zaJU$+M;m)D9 z_3a$q^5swX(zNPlq}(y4FDKecQchB6xXJT9k*@OpTbV%BBCjZcbFy$~_^tydybb|m zKR8%RN@F=zDF|l}RTkNQdr3uVD*trll{c+`#{V!$Z2|W)&^dGAn27q`a~+)C2YD-tvs-kB!9ub%QeH?!#7fPz42HD`KydXhMmvZz?rO?8KXLn$sz zSNr~)Z2p5UX5zzRvRV;>dTIPERUhqN{^vDD6VO!(?*L$eK0e+2Qp=~?@WucJ4i0$- zH#nudw!7T{pE9VUB?PSl&ZYNmRPqSC*9A3fAG8`j8)jyc2qHZL6q{2XNtM?j^O7VMEPUZgzI zUOf^B(fXPf5!E-ArD+}SdhOJEGIUeSe9k6pV#R0thGlaPYP+CwBmk_biIotK&KdpD z^3Mc08Px&&&xWTBg|8QVUSTOg(@gG4?wXssA)GtpknLK?-%~y?+E!GsuzR!P(2TCV z_vwHL|Fi2UIn4<~%FrtKD5GjWkP$l3hM)--4vfenjkjfGWqa@r3#++A$Bj9S7#Vnz z0rLKb`g%#^y&CEThG&OLa>D~S|390V1(|=DnGOGgiLyA5D+i}5&*9?AXsge4CCjO( zyfUl$pB$;Coxp@M?84>4dSxjkTe7OnN(n44<}zOPGUVVpXcY!1$?%0Wc0V3kFq8Vy z;ckhxqZ*)o@aPR{Mt?Q7c0zX|V|4myEu8wCP8fw(4IS;jPa0i2{=}X(>=3ioeN$6J z$Gf(c{{8!r_m5V7u3q*0*0R^dPeyUg5C;xoleRA=(i!ty40C&}dFM{>{K&qzBHGo6 zwd4wiMgLbTJPIZ2Qgu2v>o8HZ@;7#6<|wvZzsDWsf#3S%*|2U+j>hE&4_r*N8=^5i zy>5%*1I5Li}*V1YRm|9=hcup~_DD51oc)Rd9Un z$!86Rk%55$3!TuYA(>08gQ1mE*V6sY%Yuy1$4RW`kum2Z+20R5zA!x9p{R|GGoVga zQY8-)SiFiYHs%}mC0t8AciHuU<(D>oT6-9RxuHySVy_~6Fo{g~C(X)4j_wnR$=+nx zjtTwf_2kIC8iO70jcvmn2b;qDoqfJHZh8O3p}HrF{u0I^)Hua$-r>2xEeV#KzaDAJ zoA`I$FKymt=sa)@lMRYZtefvWW-=c)+)!F(L{%p{%Y50zF?M`VaZ8EzQgfZt-CraF zcqz}>gIV#)hx2*ZEgiq1J~y}uKB`k7(9`PW>8_7kbi*hSdYVp4N2gpg_qy#T`aA3m z!Lr5C850rd{a>0Uit6GKb!Dy{Bsk0AYrAL-<-4nxDak_=yKlbF*`N6iFONcAZ`5SV z-mVYtk8t|+A=ave#u0^rGo$|Chst|yHB<~QiPkrO+N75fShN$eKfTVj&~; zIp(IVOW%*Rl~VqBf$(ue8o#kvxl!x-`JRm@b&ZSNI*`TLWg2Wte0cXR0IXJrcKCo~ zb#1nRujR5ISn=@4$$KNTU>xpyMnL}o{OAFXegae6+4=dtDbOMWLlOmG=5!gM_*1=x zUUUH!Zve0#-T^{g8Ni)_SP-|@yT0kXSTK%4CnsTNk$|uF>T1Tf^|Q~VGZSO+!Nffd z<3u@UH0dB!N;+rbo0(@Nj`Z~B1LS9#R7-&hlMq{?}BE60WRiE1a0&t zUkLoCaV7bNF?2Q_yQ#5hO>Mo>Lk&axE(!;uHfzy30XfCcU~$QY*cCshIA4UbJ{2pR zl!g79$>Et3Ut*wdC#qUF8RV`Jx4qc^V4J**G=cI48hN`qojUquII^?S3yp5XMZXa$ zHj!??!$c|E;EZ++I?_Cf4k@@u(7A>wE9+zmDy7Tx@3doHUUunjGi(rph10PA^x|jm zY|dJ4pS1%;${%CF?q6epO47sxT$^g9u9Rcnwa3rX^@jy|1LFsU<3rpa!iu*<*BRNO zg9_d`w8A8J5dQ0i>gE)K*m!Fd0Fec5niyaqo##Ro_^68B@qJxU8q`mn=dBuc6`&f|SP%#oxf7-_XJRXWf=RAGZ0w=%suE_5hIFZRO69k0#6xFb>R|8wh{T`($KuZMsTy0s7xs11kzax`T}XW}AlsR@e>fZ4)Td=K}derL?3dKu3_+d)cNdJ)w5 zzflT+9t^@?0AL*w4A25HOH1(}?HX9SBEW!l0J(z$I;9L(0NyWf)be*r?5qD+B>X(x ze(aCw6ZZ1>h*;&ubD^rVG&vZMW6fRYar2r}H=+TFjJO56xosm!PV6I@5Wg;cVzQSi z!n^3ig{;OxFyu3VQvh`=|&5bA37{pK91G1hh&BcEp$}<<}C_X;4_rx+Rm*zUPv0 zZ+czNNqJYL3S8>K=fB>$Z&!_%0(0&k37PO7 z47ewtA{P-R=&}(AaE;HCI8lHFxRV9|-GC325<)=&e-X@Rrq%%{hB^SX#{tmgu1;HS zyMQ4`idysEUgBDk$)bJ&N&Z~WwhT;jfo5}+k$ixE^0p&sEOq}Nj&5t5C=89* z?U7Z#LalEVX$g!uhb2G$O(vX(5M6H}>;1K_b36_xq4L-f|Q44_8+-J@8KjYAgK>lAQmW z6=7+`OCANzshQYXZ#y?w(gqH&m&+H#HD9_f=w7gGCnNsAmtb61(<{BM7+!jZ5*vpX z1O|t>BNO^V-KF6I<$;Ia%0~~+z!)i<+OFNT>$sq%Z?p!8fVAf+!(Pp-g1vV;*cLWZ z%e+X@6e3FC1>OrW19Gw2=@6nrsLFeFuYeb2yX9LWB&bmJ$B9g zW1S$OdJ$DLXze5Q>-Aq{j1bfNh&jHwJ-zV_f9$&MI_W}t)6B@KF(+_**|d7*D=&Hc zNuV1Vxd0VVNpyFn3N)SJY#8J9=CzIY^rj_v)|>v)kG4Sbq4hTaCuFAjP(zxnH8 z@=*_aN(e?TJ=hr-zXdY&$+}ROSpVg>cezpWxiouIxwci7HR*2Rl3Ajs`=3D@RlWPxjSg*NLZXYR`jwPX!UK|I5pts zw|R8Jy|(BS=&`__juK3c2ov7n^q3Oiqbwk^p8M-F0tN9h?dbWl!QO;QHvG~D-9X$0 zN!Yc$|2lZyl_;%U|7>!}EsS{-6WSw-dD=hfNO5ad<(hA!v31vxzWS-Q@1C&14XwOu z>Sjly%Oo@f(`bxy%=@GhuUY}E=vb(C`h5*9o+tsm)Q`n1KJd~{yC^l`hg43Um(fkd z*5uUgbBaKqzh)r!EHo}E+a5DD%1%e~BM0;zHo?lUSETftBhSa|K%<4ocJibw(O5w_Whi=}5sMu0PG-x0X3}?1dD?QT zjp4++D7%lq8lNUx`~mU^Jv|X`{~>FoG`p>X$$r%%dcyi`?gZ?DHPb9N+5}y7hH~w` zKP!mOU#M7e2Zz{0i(hZ82USS-?!Q1f2v0bybKq}4t-@qbRcj@DExT?Fc}HHH-3zh* zj!@>8Qyq~TS7Yiey*@`0G{T!&yy2g+Iz_CS>OsPde01V=n%C!I7XR+Q>jTn4YMqht zLMLiCm|#;6mpH%mmG*wy;c28{n(Wp?u0}1fc7>>EUg6yKh)}=sf}tp8Xm8_y5W6D_ zZm9mT&pfI@nSXc_<@fgwNO$M5nl1K-q&>5R@v?- zPBvI58f=SC+!agw62L?B^BbT1)gTj`Tu-C0!&Dw?ZP^K->YJ4UHw;@_E6?b(zduWj zR!V6-cOTP#7cAK6y>GhY;$ofRwG$2%&OcyRC8kacDVn62`11^=L{4E$3W&cUD8=l1 zLlx(x;^(v!HiHy_MLWWm0s2)0m@j2hXw4W+_m0|osnwu4u$_4G=uy?%e=c%y)-gub z&!Za-fn2{0pRO}rG+s*~+|<8p^={J1AG3jR{7!^_nZi6Saov28e|G}tG%&=rL?S?8 zynoooPf9=!u6$~WABv*}A76ieV~I=ogjEM4#wu*ovbsU1xZ0Sg`>lpM^#;p8G}r0G z_{ru>lG~fRbB?!bIiIhOQN4r#n%$k?|8bVo`m5p;7PCpldKbfg7IbczbO!KMwcXwb zhG1cyi+MeG5geZ;@P0_J-O%-FTEtAF&v2ae37EXR%ypoC>!`a>}?c8EPNQFOiVj85?Bv2iSxBC@PrG+aHGQJ)~4fLq|O z78h-lbD>rB^yn()GGy+a>!4!FCtR`->HK>({OPMniT;=}p$*CfCfKSt9)Btp2t8ze zHcHb>Pb^>aD>NEd-zgdVVv5UiZjaw)EvqHoqO>AYibUUwz%7o~=-pVku$SEA(5AVg zjPvXepH;_Kz?nLNkD5TgXOdvUaQoTs@BY`HUGc+va!hbSB{!tPj>vv5OMpd;sdu!d zxujiP{gb?h?Is4r5#~$1{No8|#2;_0%V$XV;zvMtq{E4P}jv3+U)4m@JFu#;# zI=pH11_d5g9N|)!X{O!&2MQQJG5tZrHdeLcvn``^BU-b49!T$TwTj`bW1{JZrmcUY zu^7o4jL$YqX3&~%n=PBd5xG5^d`oGacS8CaNXYWR>P3J=?qv`7R;77eE$}13{yLmE zBifbr*M`Td+(tV}8u`uw;AFwCD(Lj>K3%XG(&?1%Dsby@COLkyX;M(i;FYwBeE5T| zQpcGvxB=|75}zCOu`qX3{!W_kX`E{4Cqt0`mK05aweD}oHlAQkA`yi7^Pj748`Kht z2?Z>l)V`N5=?f$XR~{{y=T+f}t7Rbu@+pcwUZy!h2DvF`iH3x19 zGvPWQcV@G-Kr!B}ufaUrC>5vuUk|r}_N=z< z(pnvZJY}8dwkkRSQ^gNX;eHfDhc;3ttRfe}HgYXbf9uG~q&Lx;ydziX> z__gzH$`wn6z%r=aHs?tdGkZZZ+Hq(jt1{6m%P*f16D@_9so}hD(GqK$Ax)2Q66@CB z+52h54d&G~ABTs-nQx=56da8(g2HsB_$2WEe9}h0?L4V#@@4gRJ{|!wFMM%tEGBuQ;HAJG!BhO&2*c@jE}J=B z04q3-&PeZYf;%f9?65WeCF%Z-Yor7^ZC^X%5yOz_GoEPc_pV9CogSfOXY=Kp`8XFLmi=hw3oFH5Z_ux;to2lSMR8qoL8HnL4_O8#su)UPS4DYp3(X5+d zHCtnpaT`Y=`yhuHP4@HW>fyqTn#Qn2E|2W2G;+a}4Oud11M10}=$w=qgs zFV;Mmb5AzirFzj;+c{QVZuzvJs*E*~Bh>9-Jh}tfqz9uKM&>VTrN72|&>};gol()x z(UESGPS1*NL6Icg(1?K|Qg@nhR#9=_&p}zqdvLnm_L93+cwoleomuJKSnTL0!}KTH zK3<=0U9MJT$RsA3Jl%j10Ue-oI>7cI960>|5Sav6ZXl1E1AtGv@%+=|p_>CfUi0mZ zCzMYDHiA8X34{PUKR*ZShLchkmk3oHRtv@tEU9cG(Hwg`WOzFzVk1^U@6`(5Zu?A@0p*r(y)Z!xvo+Zxdgf14mtE!@p~$EOQPL-MFGj82+Xw|I z_^uvifNPyphEjs@h*?MY1T_#-IDo(Qu`t+4xb%58`^bh>YG1xk4r4LhNI`D&aMK!E z1z+QL`1yNF4;W*O=BdqcrdL$li;)93Mn;4ou2Avrr15yf3PI`ME|9AJ$dN|(eJ&^i zsUtqym;541Sez$wEYs{~k$C$U%1byQh(dF%Ij;lN}njY!|Ts?RWjY zw(*F>Au%zyGEw9~z{O(>0!AQi34{ZNU{1JT0_NzHV0iKGptFL^7w#)bW>6N((atQz zvuDp>TXS%}8T$a}G>C7{j`!*EUEX0wx1l2u*2{5nj%7qvl8cp2eQ#;*<@A>Hehz~` z>ByP$i$|>FKdB5A)&sOVgn9>9*o=?Ztl(bzMoL!)&b~LHZTE;3dRc6~eibdz?z?QE zDk*+j6+t?TCzGiaU|$^4$=8$qKKR~OR^pWx5}jCPWusGQpXmHYyCL>P>hH1Ww^@V0 zltUHGLZV|~0%yHC&fTdFY=4hOZ>$wzVAK9b|KS8gm!Qv=0`0W5V&JXjW{QsQ=vcqy zi!9}de8Nzj=p&L?ry4bBkY<=c%nQ;KqkW zM|VSN8Yq+mGFO7lDg-kT+NtfBRros>;8Z%+G1XWEH&o)_;?>x3nq#UfTt(WRw#tQDg$vc!K(hM2u(^cC ztuMJli5F!8#N+v|j&fA>n6yq+5q~voKYO<;FNrSgk(S@dM)S`72dRuFp7u}+J)OT4 zwuqYY#t$q7jCGsLFVXisv|unG5>1^6Ql3N_nncN0XXU;mJs-3b;@SbT_t#z{u8-qA zj2!%fC8l3b^|P?|3{ZNQ7nR02<1yblF*3`bK6_{YZ+LQf;$ z6XhV^Cf5d$4WhSKP9QdDO#eS$piYf#6!?~@!25(yaVSG`8OuV%O}x6R4#>EVMB%Au#Io`8P4Sylto`y&qYpBPd!$@(D+D&#T;V$p97jB6} zA^w`o4`>s^LseDeuw;$(w0PQ)t2SMH9NhDmS9O5u5INH^h*DXTL<&nA(UWLMj(=`o z3Nsgri&H%0R3~4wyT4`5HKEtyccvq;**0GF>W)5oki_R7mji0l3KE`2?(fSQ(GtH% zpr?J2FhxR9TKo<^f94OOnUyzHFTdT5q~OB=sPuLSW(tu4#9z6_b%bs+SEII?%(a^hFoMB6>Z=9g`VfIGc~BnOkL*%5p}2Cz%@FM(j|VHMH;* zsqdF7n5Mk(%OToX!vxwPy3D{JxDjVcs-4oxo35wG*v6s{f+(N)IZ32BpL}xB);rQ6 z(9CutWz}$%Ma|pI{}LF7mdMh8Be!dsiTXJ)q*q%PAqr38*=4FoTpAw zMrxJhgMoSv5{b+Ys(GA-E@40JKaYX8yTe-@QL3(-(%X|(%c$42b_hzNsYSw}fE7U< zk(Hl=gSa5Sz*+0v-!myH8L&&2=WlQLpuYl?a3tU?>j7~95Hc6Y)S%rrzr#}Cm;OSv zc*pB_M)zB1JECA{{61rOmZFdxQFJfN&-Ao4zkw2tiXv|f<1YW8&inG}i5e%Zm=;;HpGyZV!#V`$B)_xIaB?X`my(skh8EB>X zTTi8U;VVu+C(hg0`9;r{CK5YfK z%wHA+o5(p`^{TZWOJeZBbK7bp5q|XphZZ9doe7MrWTNbrv{%CyuF5s2Xr47@l?;y^ z^Wpck+yuOMnH|%d>L03ytp`K)9&yorm9N&l%31a5%>wCC zzvb>WS7=UM)`LF9d)gu-L6ZvdeH8lS* zrx}^#PoFJ+a7ViYy@#u~nh`NcxfLh**<%f>5TO=@;khcz%pYnMs|w~JgagH3g6+ll zh~)!uu&H$QvnG#`cICSLyC)camMy{wo4M`Z@FWHl*-A8JbEBfj+aDJfQ5mIG;!)z ztF}Mz6EA@E4{R%I0&GzHfmI&~N{sUZOtY|J50LP(2gug7O}NF5pBIw1J`5jtAI_hX zrc9uk5a=!zq?zei_8Gx~U2LO|3J>{H-K5>nGXc)1O&oo(!*EOUD9(|{_@)3<6pd&4 zno*n9#4lF}B6V%Bk*!{-b4D`KXy-(=x%6*^ZGqm9u?P=~t;Q`%#x5)*GRoAH);i0L%&XHcgLjvnDOcZE8@3$yg1V@`H&7 zbj*MD7Fkpqfpo?fZNgqHr-|OYU#` zEls4JP1|6z^vY^}EA>KLzqGXu0>huStjDvDYtfV8_5O)VK7!A#~RcHXmJ7Ebw zWZ0K1efLrQrTky>k?D9DD~Cc`Hz>$I73cZXBxu$qelnB;BAy$bqt`cwy&;|^U>?T# zR)VoR@mXL`gci#K(=HqP)7(lWK%+Xdcfw(R&nz~dF2~J&ggtU!&Ourae`chc;Xkq! zt$jgVHZX>^eAh6AkK@tDfd!D2p%gk=5&Kb`fgGHicL7NFJ=J`T9SyLH&x~UKag`y{ zF20qeZUaozJ23DtK?VmY5+KSK>QrF@JbvoVYnf=uFi?v?AtYd#E&|0YK=fcBi}oS| ze+ZWB`?n~7kkKSoY-9qz+Wq8YXamF;9Y%P*4!9?$8ch0J{weC?n;ls29h>FT`y}?d zQ?7nbfu=QY7MbN9w^m6c7dXblZjXJT5kj{+DZq}2l9jiUm7bD4!lj`?7 z`k1b-SJF2g88Z(pam+S}atE6y0-G1mZ%1kehx-zwp1o_AJYJ`HNVKZ<`Z+V*DDq;G{FTMx&h!ZdLam zv<~*%oVGIf)QpkL5KDkI1O5jwkBKP(R7)@z@YS~ijqT%C-%0=T0DB50DGq_Y5O#8v zeSLA<0b+K5OWfB8VBf*qDD$Vwlr=B(D}clJshr$WObH;af>;+I3MGVo5-45+5P$NI zK?p>4W8>7joZ1QM`j=HY##Q;Ay8L~Abis==SpW!#{qUe9JbKd7;vti7hUGMv!2^+_ zHSaa8yr_&PH4__qg1XUknOB!PUN*uX0kc*N*DpgR*^iUWx&{_WL_~;}%r>mO%=xP| zS;MGS2_&d}9HUN#rUg~Q!I%XTNS_d zJx?u?%#60H^Ho$ex9^y6PwZY}^37b1^~%BNOn^NST5f8&FEBr za*-au^yzDNu}X>KY-?y`ZjsHg_s4vAu--&M6?NzII}1=KwIaootvA$sV$@e7NJ$mn z^;Xd_-qo$s@K#K%8&Avm>{74LnhdDyis`~(5WKOc$AGPa!+qfm+Me(2sqcD6QUHW5H0X4CycBX)%+qNp7o?gI{yKcrTJLGWt5#$4aG$S@F41PG0HdwY8!L@y{* zarXC5Iy)g~CAcc^2ne7+1QP%c;Rku0AQa;^Z;TJ1TtWQHw`jYGQgO92$3zj5JFs67 zQnD{^y%F0#23}#2EOg&PNte9jYMbm)*D14|75rt0 zX_Q>r9BR(7TX_gTaZgL($&;8c*&ESt7BgDQ(-ASVGTSu%FVkZ5OV#XptbW;^>m^N> zi*B}tQ8vhaKRrmGPw>*few$2Vd18O#@@eEIZ^=0m6*1a-vzIUV3s)EFHkym&4RLe& zIrvsLXh6t8&Apy$6tdmpal2-iw!zufN082ct{W%c46*P6|jPnCoax61H6nr@NM)5F@Hb${Znoh`3aj7Fg zRb>1vjvnR*pcWuSawe}HO63Bx(=0$52E)c~khoF?a!o)!kjchKo>v_}?B5d#R9<3#yvsl4!cFHn1l7Hk_ku2njXnVO!aaCH7!+xd9T%I^QC7Yp!*&AKY zpNX74n5vADei8Ed$q9Ayj?XpPJ+o=1dxPv>E3JG*iW9XER~5f)t$FsbnG?T6b-mtk zG=!o_j}mbdV^lU1+3@BCvH8=B+?#u%n$8_8hC4ymdsAzlL-}ZT@)O+P(Rf#ti5aD8uHeBn=cL~212prLxZZH4pod_;so*BI4tt%a^%oZ0zd>nrm<*UdB2`bNp|f(^O`+SC0_=^PwrJ6O+SKskeuOu};XaA4QjU zp03jk{(SiB+cpJ^7#$M_LHVNh(ICARdImQw z`~MqS=|a;ID7(iC08`z8vV8~ywZK|I@`S@r1wH|d_Zb;9zEF}PWCMdpC=NC2Koo`q z0}`jt%tlH5uezx40Q-0LqN`R(k1Oz^tiA*NPU&vv2raXeb81o0^_S$c^4GX z*^4ZH%t{)tz=b8sRbKL~bFe8RW){hhht!BW{5=EeJB&zs(FZo6z2x3T9KG*(i4C(Y zZSU_;=ThS$iOB!~O7Eh7YzY3vhv&)K88-f+9EI0&eCH!xJwl||9Lb&3B$~kqVp^zS zeCg?o+5re0b!K_yCsp&isM(%Px9}(9LJz*r;|Apr)jP^)l%s~YY@nj(hB7^Dx7TLm2G0CThrl)@`{hkWHz&QS_}=J;o%qm?7N~)%KGg zP8%oHjMtk;@6?}k4AxLooNY2CtzOkrZ45@?Sn1Y;Xen1_Fj6NIt3OlyamGax&aXT7 zX@6^aAX>TodS0wP;jusS+X`NP&W|a_5~~XjCN@^Uo9a|@Oj}NQmK;d)!?#7g&b^8f zk_Ke2mekr;y}o??&LC!U7W4LeySBKT##%6Xy1pB*XYqON5->YIU~}6zFGtCj15=*_7efqA}>H0rV$pV5|tc)l*ihyis)WX?}h_xRu6@g-Q3y~Qi zMGWHBeg}Mb#V%!*f7iC${I#45QY;mLsFE*rL+EsUSEw~%vs=z7hZgYtdPVKinTdK`_9TA3y->xbhI%LpXsVaDv2Dt-YYXpIG#3$*dOtte{T5Bk z+Kg!YE2D38PK!Y@LH1oBu+0G-*HX5^!TA6iyCk4e{8x{ldDO{CezY6=a3*NaumE?# zF^^wh*YL}u!`o_3?A>#dLY;@ud*890DEEL>3=mZFS9W%XOLI_Uvl~s4YN~v&m>x0I zXhm!VihgCUB1CTzYxQGgt0k+>mfiK}9?fu)P%ws7dydaGS2sI4Q~E+U(a_(vs9mbZ zkv(DQ*k!8DlbNTJ7l)#wSE}x-5!V1oMAw#3eUFj51mP>M+VmbnsFE zUB9@LA5HndvD%+0FU(MvAYieL5v2HFseNH>4 z=PNZ50~&I$`~grMotN`vSoHi}bI31gViV+nLawQ&_7H%TTO;O87vm%lZ%32N$^;J! z3q=<ptxX=k2a%`Lk9vqA)FL&L%aoPX@GDD#Zf^%7x$q^Q|(WmKfeHB zNKoceKi_;Ln9h6z(PdsDAV3VbUQox1^|3%67|4S#0qMQy*w}>{mw$J7GyNb>hsdoG zfHHePyg_zD`qh<}FbFz?%um1&Tn||FAZ^a%Yb-54$XxLOF}n~nAG9FmqxnQowi&>C zeoNDL2!qx?z*wp_N1N*WVAlS*JRJRq%Xqz$Lb|1SS9IO0xv(7bQjbi-XK$O3D)869 zP`<$vUSf0dg@_3HCF$O10+bIK#jJo;2Vr`>I5N?|r3v9lp_CFW=Q}9$MCiEO_n9aB zeZ4D4Rv#b^><#qqAGRHaA8P`??k8ZJEu2#G-qp6jhJ#JIQAULO&85HjbPKHc3Pb@9NhbUtA1gJM$NrldfToxqd_#ms^5f-cazS~cPRElPHb03QCTWxT{N zCN_4%OA%bkAZm-{g~>5}7K)#e=(*If9+>HtTB!BMDUPH5L0@m>Kia+^K|J&kjl|bC zd8vY=VlA$_5JZ<9*idJJP>Y7YKCqu+N#;Sh+br9E9 ze2fIf!Gtc#)?wAG`-vkE57lUZyhoy4HbrTH;Z4*Dp2Y8R><(s36j7PeZN@y}&u|M9 zho*;azl<*mJK+Mid%(l~!MgFr~ntC0` z|M9g0JE6)EotHtXI3?$oB@B9gz2b*56A0Vc{_a90iG8c#9r~x~T=7Drp0+WgU_e;Q zq$tuRY<51(=D07XGgu)hv{wBH?DLwFhh^P7*aCTlyK+-b;X=vrB7JD* zbUg$K7_K)BZ`*<39!ka=wLDt@51}xyM?(SuO)wbP2N4^39}~ImRPJuHm$L%;aVUh~ zg=TRuqsekpb6{wO*2z#p3&`D)0DCrwvTM-v8UY3+x`5G6f4}huCK;E-cDih zyfI{}5!iaCTB|7@=ITzUJZne4kEu*dH=tKMS-t8vixi<-n$hHS$D^y)V>D2&QRmGS z%jj=w?1K8UVs(Ml<xwTVbB<8Z!(= zAiahNf-FMeu+BR(+KKu%pdZZ8ovH)zb$h@bu(;cD+YR`;G2j$722CWi)JK@8i5TeX z>wuD2tN_yXM}wOkaLnHUu8Ow*pBD}Z3id9X1wk+>h-$W%vIV1<1*7}#QHl%qZs&q0 z)qQPel3(zaXWfpY&Iu0A1=om?M4|l0$c1H>L}U9i6_{Rtqa8~jWo&zFZSKhp(YV`4 zAK-1@i#XdX9V77&qp9PIDQKBqF=UeL$-UR*^jbt-Pul8xd^obi^c@FF3ssoc z5iZ8sMU?P-Fj*%ZBDe3iRBIFi+K$maR6H!W-eaZUt+i)M> zMP%Ac^PDd2;QJbGNQ+U=65I^ zE$v84QvCJMbTmHs$~(W`^`Im^Y)%`RS8{W!tDHITfj|x6a1g{&W+Dq>Fea>d8$m!H zDacTQ-Fq}xT*+(49<2nK_I)82KS*NEIt1Z9Alz}a?`aaB9W_XpdD+8fJpuFeU7g7X zv3;q`hFXnp*DSC$((9TmcZv(TLC7>E37vc6ahB*_# z#D>=mzV#9UyKm^Nb?2*QcwV6(=-?JNngmkI4mBDkygYA`(t2vm}9_4M>2HH&nN0eTt;PsTJtMlB(CG)R4+ zJ5)YIy}MF)T8ZHjJo)v7?IYAjyS!Pcd1HDJSN(w?*GNQ0DXu+!Vf{g&h)_R7?UNb9-VYNQzFRU@~rZ> zo`o7NDuVF~4f-8&c?u(Phy~IKI2+g&>?nTCK){x5yXkU3-u^VYjkQzKS zr@;5iHLB>~Xa`DK|L>y_%0+k*ph8GYe!7M^UdX$}Pdh(Us+wc7=tAi_$k1&=jf-0Q zkhU>i4JBv79iCe2drW;EjHgKfDVa0dF>oog7Qo#6DuabJK_o^_T@&M}f<7KWJCfH> zg~EqdWV#wpOYNOPFjIgye&=3sp2&l`$}CkEGzm7(RPnq)OD8b){zbBRh=+;0*R@8W zvs83ECDcHE#}yx*_Yf775x9=%@(9RjkM1m~51ds9 ztvioTfbssGhzJ!_?52C4XafXlTL0+cKFdB`5Go($l)(Kf1ThKVVu?;d=GN<>e8m-89#a*ds|HRh0m;stz^6d;V) zIPLd!OT+ixX;|PB7F-alnc)5?$#v!W%U^ALZC_8PL8%!lMYa9R&NZWL)i>Qa-&<=z z;s+R^N2E{IX}ug=9z=6A9sgV`fL>8DM8Ej?V`un{-AyoP!%0WPsk74lW)RRV-V^Mk zI|x?od-HpzQ4$*t3O2zRi?Yw{Nje#I0`}^f5&m~scHD1qM-OLGta{l_^wARrDqy|L zWY)rkw@nFxoCa>%vi7`!ug3)g#`qmg2Cu1{xf>E#_ipT#?ueBS5Z84L)VJD*FG9KV z(2ora@873hO)c=Z< z@=A)L-~&iuAdi~1ss5|t89@QbT~K!bTL9aOPLQA)0di`W>Q>V`iuD^P_4IF_f%bLj z@hslbLs9CD-3Vo0)3Ud^=Fi4SG^sM#XL#3vDvT4qSF6WA2rE-n*Dl01v3O96Q@9n6mTXmSLw-&CJVCNt%)1{l49;IXv-OfFLRkskm(>sKv%52T+Q&{_W z)!Mt(PFLRrNDDTy4C~n%4HD<(-`&=SHJNl=L;nIJ2z7)D&#`%cu%wLMg;{Dwm@bG{Bc%4 zv6dH(c5ttw)us!O&7|VpekyDI^9ieOt)Tdkm7A+fX;&Es_v5^%+=1k!@BE*O`ny5P z*yxxtky2>-0mT@{hjF3!RLY0j%pt|E%CwKT@n~3n?~vfuatO#FQ$;+-^!uUAg=B$nI*@hV0j1{(M((mioN99b)ny*n&N@hyQF^iw6JkS^6CIJCJ0S%jSc zfE^nb=ilsoxs)9v>X?%Dw_$YY%2mnc0Erb)wgNb*+5z4JNPn-7Nx&>@)p&CQCo|Yy z{_+)IGDBGAzx!auU?+Y83C6%_hU*^!4x||w-=J|9kU#a(Y|hiFRwf9VebzzGth2;t z5T0+5)YOGz>^L}7s3bhY-q>z&xWKW3!0HC#| z&jO#=(BajGuSQt6w~5BCv?HSrR_0nK`*Lu0m5P{*RJPe(nP_W&a@Y)gVr~(8vf4!1 z6R}Mqc-S}rH1s?Nb>Fx@GkXT@mafne!%4m_EnFTOVsxUCTK^N8x8+eBFr zGkS)kAivd?$wu%Hbh1H!w2!%>nWa7c3D%^o8~M}S<$zk67REdx6y09-{&n8PhsfH( zj{8v!bJGsGIIO|OguaWHfNX|G_^DC4lm#fdje(F1+BsX20T7;+p*K-U^F_X863D9r zW#X`n>mLTGxO+GVJVt|B!6YuTy>1G-y*gPZCnxA~@R+Et&sHs+{t#!B{ebkD%e^8! z89BW~R&wv>siErn4zVxCMdk>enbLM(+-W~lKwe})MIvnaW*KMGm1Hv!WMHMU7$mWE zUJ!q&pT&h;G@^r15kB!dA1%?o%*+I?=S2IUIL?^x(5@~#=G#X`UNRI!dLtU8YB`+a zck!nsy=^avwqn=5#GbV@+joU2E6W0B9qKoQ-1tj{u%-N-*`!rzg&Fn3z;dS0GC64l z)BsB#Ha5NE@}X%nv+izu-mu&U(jT;QKW~R4vuX+}l28VkIuaT>dC`#FL7g?QA2?yU zl_RsO$%w%xO2B63zI!oVDWbH%i(mz+W60yN+x3!z)c$xw0}SRsU_zIE|G%~1U5J(B z6fJr@qDEcX?PNdyGbh3WhyLM%ydS@}{5kZ>j|ErB=n1=DW^&Y0EOG=5f3u*d#U{*tQ5k^NN^pq~a(jpTYe^-yrP-6C zc0H*NtiYn(kJ!#CZw4MzWdKdLIv!uOhUEgIT0Uy^EaS0ngb z%sCNL8AQ9L9QVJe@D9f=Uzi9gXk;Twh*T5$UGKDGiB)s{_U3Z_wi|*8oSnJHgA@*c z5%4-&@JGS=kMtz76{r}(z6-pX8z_`m{uDUA;^@DzV?f_dO5mREo{r6#%Z z?>8DM-}VGPjHE|gJn_r;ws>v9ojcfsu!JX<7yMI{6OY*NIH&B|gYQ23gb(d$<67N# zWxGK_Utd#oyc{__qGoKDY=#K?N~`0D*-jcDBJ7NunbVH!6ZSmWW6!flY4>>XfEsQ? zcjeMVbKfQYv0!HFn)f5Dp1E#}F%4f?U@YXub!7eFIPNKAOHc}eufxDxVKIorpcUdb zLO=sZcm>psL0`WTBd?ITbh_HzQD!uH|(paTUz}?ADa?Q+C zVKd6}Fk%WtWX~0Cw;9fn2v8c`kXmzb;4guf^OxUF1MWZs8~d9Y6+lYwlk6b^m()(t zub^}j%Q;&)y?Pz?25Q)M^7c2eK%4}UlyGH8T}P!>ZH@ihNkp_nN(*^Y^4~|Xe2A3k zx-6eU>bvpvRQ23RP4+YGNRmHEyCmg%9X86N8SLWjtGGi^@H#rk`w)T0%R6$7lAzE% zIwcICuYYwI1`S4Je__AWd+ameNjx2GsOp9Lw9M1!nIyXQ&@IBH_dV=Is*$ofB>Al^ zA+=odnERD;`0Z|V?>&`w!Pi_F{WkE@7DzAO%d-$}JLM<E>g0tt9*I2;Na&THT-$iM`K)CLUg#s zXk$?7>razeCrpIHw0+15sLETX3?G^ zEAM#FjA^st{R4QKQ?s7LzO{tW*owYMGTiN&$eD)3l%TUg1Z3biEcnSSmPiG-roNhR z7i+@+)|2+|EIzJ&xB!}JC{Vw1UaTT?Z$qSfp4g~QdH3`K6CcWklODKfKZra z^#uMtDy@)JtM<$eGMi z+ML-%#}|U^AIUlCRSmi$?N$mC6D(S` zg46_6l`Pvt5qcoydr|~D>fYd>oOcHEjds;u{K!X$3(^;2bO0v%b5&=cLqvpkJw&FP z(?l2IHEevr;1;`_oTWF7ewUOG9P@uea_05a!hr;GKYMVc#~AYKt0`9|5T204t1ku} zlnv6eValna8ZmkP#il@9c9icr=V+}_AYM+s%DCI3`bP%IK!pOtEkiq}Mi*x1r&d9M zWb~767oUFJfc~CN1diWEW|NR+hSYcd8Ai)r{UMywv0&qIrVQp&W%BSIy@%))W~aB0 zNl5nUlQpAxUGK4i>TNir?2Jk@-IlI@Z3{UEeiuGTcKMtBk$N6=fW@`-@7Lp}sSvF< zhFgOp`*jxnS5e2@pc-5Br?OsISL&+j>SBYWnTzY|xc_W4RTbMiI}vF%??z;Iy}zWV ze^yEpa{paW*R?H)nVD^emwEmwdOQ>KuV3`JIDHp07&;(S0Wfz}DWqO8F5P<3@l~I{JP$7{4QkZPQbHji4At{#0!Z~y z=#v{qUuWXm>MDR|0&=mIGk>@v+s^SO@V72lf8@m_#9(QEis&hv?`Un34$>xAkW6h>j`lMj73}2eJo4lN zjMkF7JcFM#e|p5l3qIB=ZWW_|HM~I+)K?w^kC6Zyr?&C|v7P@*R|a(d=ZH|{va+Wj z{R-?gmw_csYlHjAA)r)xPB#bz=*bC{<78%62C6)XUC(?|pr(w+B&W)pSgdIbC(;)6r?IyN$Lz$Ds-%TCfH}T;h9s+SO55gD zKRa21ablQEp1y1@FhIhAvABr4D(!o``q$joL<6p#888lg!okr2jJF=GaSo2r2VOZE z3u4p%bsk3PH2`3N%1^?x%p~!y2UVE9VOo0kLggpl$zoodN%uC1^#s?mQRzHBIoL5n zRhLFLAv#x(6$C*r_ete1U7x(w)+8y|f&v-8#;JNp!b4n*+rLk1U?QN=N(RO&Tw?0deZu_Mv_{?$M-@fRNJ27ob=eX*5vlONn>95oxN_zd)Y^7zn4*?ULX zE}San4LRVQy`^_l;8SQUlddOFXwP>rgcC*RgQOVh`k3u8(zI{*a)E5tvJCA8;tHc^ zpzr~TD&y6kGAIZ(Jpw@F62K8$w4VLPLqi8lQ(!SBG$*5T|(XS&CEe6NlIn&O&KoaeGq>4rLM``Gh>l|KjQWtx%dIZfJ2> zQaPEiyA#GsS&bLtKX!^K0{ipHCz$U@(rdMH-*f4l)TB43-H0wO8#CMpiGD z$F|!_roOw;*nTwM-iQGHZFD&QOcFf_g zciv1ft0VAj;E@|)$L0szU+cB@Qxkxe09y=N-yeJzZ1DqOwXityo!K3RE5T>Ym=Rj!m>FE-e5QYf zqqGG?NguxN?uiN#BbQ7t`4W>5X3ia%vEL6iROMZ~#sb)Tyz zirUd#Gz$re!2NAV_U537YkPt|ZVnGj_B6b!*$0ZN{U>kiI>O82GkLLBCA^0fim|9K z?Aq8YrDmrTUb^hc|F<>E7RQ*cjAA?+rHYnI%~vAuS!jLvXI&oH*;gLz<7rKj2vh8^ zxpJFF(`b6p`fwT2%xA2fY`7hONij4AS&tgQpF zoTFUUMmPmQ=ZrI3f)e_!3f-kjrrxmVWiz%9?tfWe3^fQ9cKF1C`v&zc@cC@7d@q}dTvXN^qKX_nlc(k%{7y$Uzr6A2{h!Ah6Ft?6@!D&EPQv< zn8x!AhvWK3^>6;R(-O6HmB&UH-gUa>7rUDhLDv7v?t%!w$9pvtZfnSG^S4=xm5 zn&0tQw%x%uo3e0S`b3V)&NUO*C)WG&ddS+?g!iG!$Y3BIA+vr#xrvo7(fBI)hlDf= zb6NSy`itfFVg>Xy1Xu6;&EuldlBHF%%D%2+91MW;?t`Sm=q)Be%o!7Uqg|<$P}Quz2zM=gQ>5c8Sd?M#t7DHMvsG z!#{;YHow|AU^d)xcl~Yfu<}bife;Dwj~iw3Zh@wYmms+8C++e`jDDlSzlx{5A>Caq zZiT=$^~{$rApM2~aeq0u^lQO$He-a5A_C3%hclC{*nRyc7W$q~!xoASX5?1ty|u-z zB0lfPPDL97{{E@9qc=t#2Y9S=uJ`Tf1d0aqpI9riHJ()sX54}d5|6Wf6cQ1M)DrY` zFvH6|gC3(Ne5TuPsQ>0~j`;K^_w`ylMn3g+N-r9YA9mJu>owF#*fVws#u*=NBfom} z`c1{FVN3tDtEoiz(y`bxSmeOb4@vosHCYoBJlOja=`;+*c$wE&PA%myHju zs#KyAML-pNT?Y$-s##?A#r49DZVfOp4|yhYUd#&e<3L4uU=0RX$1Yo<1SVZ!4oe&8 z_!ti^9P^~}u#)^LEeB{2PX2&-2A0{pkj39IjNBBs6hcmUUz83?WBzMed~XhX@1^up z@8AtZY0S#V39)DiA$@)Vc=72Yo9&w1fdwOwI7Wi4wySY!r69W)U@}jGSPF2 zA6t=Wn-=mK1!6H3^2gENpg}P(sNR2$Taj^NDlvJ84!)L#qXB%{{`d*3flvdU*XWuA zYCFmNB^Ci2moo&5!L^@iLM-q%!?8NuNDmE&+6|UST2ot(EvjGai70=a*m9XsS6sKV zdy+rwV|)1AC_)=ZB?@2pa`Zzu46#qtoW%^P)zlEg}Tx1EDNX z7CDms9{x`bOeYP%80lj<$*y@#rZkQ)DbkDO@GjC_GzRuM3MkxxWnZLE=1P)|LaYKigo#Z5Zapsz^xiU zgB&U`YEA&V@x>|RUT>*F=3z|ta6TLbGVSBs4wiW)X&v4ZyywvD=2w+Y!xY**-i(#- zW5Xns9!-ufo;8H;v3xL1PBWbF_+mGUm!D)X_i z?P5Uzn?8X5_pX9)$W;ssiVpwX2&jaZfHgQdtnto%7Y{EnS+uxcLqB+~r51}@;gN1< zo0w{Y&Tm$ztFV$`dam1wASf=~Jenk0#o5lKaaYv9|51sO#G4a=f|jQe4!<-mrdHP_ zpAf@drOU*eS)f=oMv~`fh|?IYhjGwZxkHyKDQIkJV@e6#x1)Nm&hz zulv5b2(5S;wHe&wVFw9;| zYf_cC_*5E{-ahVx&V_>4{dz|>2D6R^RRLhV!hdr z(CgS_bzJ(ZKK39C1Rgt=>GQm{|G|FPz?Hz;eC=91Ga1^EV5}>sbGvC9=TFLaro|+S z_EQpD;j*3;F zJC}awJm@Id6emRu{lTvMv|Yo0+WNe+)3(U#2N*U2kLzM^xGy)@NJok$eTX(h+xu6J zw1)F*tlR$h?zJcVcm$f0UswB!`L+&ph2OOqcEyk1(^&Yxi0>zzsK9UBXZMxFpjm2- zn-^mSgd8FPl5)yKQFFa538Q*k&;b)Sgdu9MS)uGcKVru`Sb z>&i+t`kyPi>g9vs1aN=FuJtCG^~AGY^x66ZfIZcBxoDdI{XH@=lAY}g`Co`iW9r`TiUQzYUd5?HU=Ch#LXq@M0y}>~wqV0u(72K;%=! zeVaP&Rk~@f4WT%0eYDrbOngY`2AFFvV%IL~G9;hedZhhpxfxhxx6_G}M3JwI_Ph!&H3e|y?gSb5 z&({4HR97pjg>&=nx@yMzuNyTE>=$AC-|xix4|!KO(w~onClh`=RsMBAHi3sVMAqRc zON)u$xNRMqxvy+x;Z)jiKS^0L&Ce9*qqmNhqenb11>$}hIb^RKbF=ZG~ruJaIGq= zk}&U^)~?UgA86hb!xU_4%Fcvb+R(&&OFO5 zUPp({7k%R8s+t?SJK~W$0nz2knUWy{=nz#hVzK0B$P-O}17<`Sd*Q#IzVq|VjbOXw z{3wrXlcA@s9+;KI5J@dewl`hrcyh{w7@a@SA@>4CTO<(eQ6s2Rc6;Q_7ib8VCEvS~ zjL8P~@(K6pJ@8XI$n%PdWB{)otj0{rrx0>X`qx1BKM2JAZ!Ikgv9%vOc<}C>-N$4% ze%X{h^pw{NiB7yO+ahP8*V?SIJ*Hwu=E7c>q3r$Dt}I)$A07&*&+s;QKKFaK3x&$r zf31p8vDZLxP||-_>{>B%%gD6<2RgxM zI+Vp2f#Mhjj^$Y9^HfxxwrUnv@UDR05UKj6zGL>JiPdbI}MnGXf zQFrm>e6g){U>j%U{HTLmv2A?uLO+8dvk@9C21dsMziIoybPC z-&wtpKd{4G@tqn_U2I)bC%yM3Ji4oV1==IY8rT2^)$bilG8>g#NO4hJ|( z0V2KpReQTM2|0P;dNr`6f*LkV?p*=t9w8y&lE&QXs^MFR+vlC~yRNh+!tI&G;}9{^ z-^slF&BMayL`~jIhW9H<`lN00=>s#3kDR+If{<-@iln>EB@7S1liY*!TrMmaU5j=r z-{|1U`)fy+eTgahgBfjuAITBg?*PFC?Zb#rz<%E zLuFdzEQ;?D5b@&qbpS<|i3w6un)q7~D=3I#-<~8|@A_gO2{mBEGJ*iU$!l}CbNTLv zdR6D5ig|CW4!(1aF>EQfeQbG!`5a{jE6Y5*6Q3 zAh*I+PH#=-4TAWUZ_IXW=k8MJU+G+lS^X*up7vNsOTjo2pc3+;@TVXzI_HCoj@8aP zr&QmC_9hx+oYM%Q+g>%56=3g_^GR%pR=6s2?!N9n;<~sD)w(QL%Kzw*S2)52WhaF3 z@2^CQNki;M~vs&&3 z-lt=eKqt$_&VB?0D){H~o?KPdQ_GHXWKeCt%aaY9jKYF~!6H3=gj8v0Xg@(_p1?@^ zb9D6nS(450DI?EQCOli3x!_@sjl>NQ`h{#)_eZpeu{Zaa#Xy|Mn~33PcfYT-a%hWD z^e$+6#)I8{{SCF@eEn;OkJF>9KAvJC^_Gmr6Xz3G@)Ob0=h`@A>$Un1<&0dZgI%Ie z>!LD94OQ~`RZ;yyPHlo*>o&# zPf17W<;YjHP`QHfn$xRkxlphj2#KkK=H*od?BtEUJ&a??wClxso0yKPOKn?o#O(C> zW3K1Ni(bD`^;Pv$N%QQHv!?g?Z`R}Lm=zdz*Rmcze zc^-ZhqhwdwMY2}nAGq`OG|}sppEH+{kzMLc35K|f*UdfRUDow-=A*6TjoKW4h9=R`4w~0tE@S)%Zz|5(LHA93L?WLb?0*Y4PjR&gq@plMB@OZj4jOur zb`nGRVpvetBIfbctuarTSUsUtV>Qy0how&U1`RbM;Ug1CnKUJSVRU2dH9p-wW{Q-V z)!eS!;stq+qw~gx+%xd$XBnHb@Sn;cFh|fQrah}uUv$@ZddISE`&Z*s-}m`wPa35)Npw$ zo$yBlQu|7seBMcf07Lh!r&Y9#n~q{PSpHVIUyjBii8>CK0?JOZ0_R#O9x1PILcaXJu~(;|%ZK#$AefK0Cp8dA`fhf7bX zF3a<1LQ{Cv1z0)35X91}KQ0MoN)#{+{dIfp*7b7hr*is1u+)#(>j9s*5_Y4e`D3$% zwM+JxZ$^Q7^Hb|C2DT{`$795)mp^^d0jd&ytdpBeM(9jB{%p+^ zDkOZgbj99WqvTO!I2u??o7^S5@m3JbdTI^>DUH-z60*ASMT8gb1ST$6+OjbMm;(I8 zH$IJrrW|5dTRC6OiqBmaQyPce?andg>+$F9G~~eBCh0EY8Aa)pps+M*e+Eesp;LXD zkiOUfsZ^62n0`tw63+{<3_B){YKt&YeoM0 z`?g1G{BHLM)E+w$@Zr@P2L^hRT$WGQ3>xdYWaxONuP>d}V|Q+g9#1_Nq|$bj5Zb7w zRwMtGLX|3=YGAZjrnCY#d3UZo=UkqwUlz^+{H5!=TjYmJz}%Y>tv_hMnX8&U1jokE ze*XN@haw;yochPcRdtAS-5E_AJy-9VU0O=$d$U4|2xI~VP-dVmra${1;`52lYaJoP z@H}V?0m7ce2(BiC*5?rHIv)YM0g7i9k;Nhkii-9?g7qEv(EwN<5nhQJq<;3o}G1e&Jy48Tm4dnC}XVb4lfF z10P4!^mU>I3y+_l7&_m-1bh0-iaHuBRn2Ozj2qL8nP*;2=}mtvbC}HjAq}J_T9QQ^ zA~Hg~n!Q^1jWYYjV52JH^~m?ukk3I`&`jU^$WF+ky;{z~hmdAm=VvvT2?KoyY?n`U z^X#b(F9Mr3r%FW`UZIOz9Oy$NUI%!1af|ItO`J+h;1N!Gts?uVmkyWl>eYRdW_f() zZsq$}TJP}*fK2eP&fRgKcZ8oEvG|tzswv5>Mmy@om71^(grwnCZ;ynBk|?w_pDIVN zbD3S2MqC)p3r4RwhjQm*r9Ve>+%A*9?2m%fu7l4vA-n^15xh~cl~aXN zJ(h2*kc$-}Tbs(iUL0-8fYp3^>98(j_;QH@ZKLq9<9)1B_4CSe(+vuCA1@CoTxfvr zt@acB10n#fgPcaN6fGe@DjQErhOzg1cT0=)Tc#~)s$5Rv zFb)_=kK6seiFW15^Qt^-3#vOiHChqAqiqelI%sLkn^lV;y{K#Qb zzsHBzzXQi3JawM`I`Bv!BqstFlx)4r-WT9$5RASdTUk~{1YR!N_Y%8UL`fBKCjyfa zf=+=ienS_k1u?GFJ?a-e_zs>Mm6erUosXiwsm}{>MJ}A4qEX ze>#WRr(l?pbI&JB&ffFYXS94w-ddQ_ImeC(5cx17w`FR>*=(8c=n;b?Ul zicpuasa2K(jh#)a-1%N8XKA`J$J$&zZsh2(lCr^?qq~HqD^eShYs>gsCxZ_T0$Vl^Eklc=}e&v+`G3*$n@*9$Y!aUkO4T08x{3}x{r70ex+0a1MQ#oBsazLorn zK|CQ+Qt+oW`VC)uD8?D_u0^z)d}3V3&E_OuOQ1qi`ho$|CA*@61Tpv?0Y6&u597aD zKw$}8T|MOHW&Gc?{I0M8Y^t=IyaeZc@4e;yMuGhVBNvwd8D~*YYOBMTal4--q2fpU zUn~n*Jsto9FZ_8#rfhztTQ%?H-rnj5fbyPTVFi+%FmsArUga+V+9$WL1&niPd)j@$ z?0YBaBS#NZlDLoyeRMR!mtK2bL3j2epGpcvtm9u;Ag%W46Nao05m{8up0`KK=!yvA z+e_j?5A-pSTuWa@UmM2FA=STpRjY0}QZY;x> z{o&C=I3WWKeb@1gsO>x=AgyMHKV&n-^l-BmVH|vgZfF>2h(;9adrK@ zubbnBRp_gnp{9{g9I2B}nq|k+j_X8h&&}|kJ}I!q+&q9u5D*~szI|$Pe|PKuTY(&5 z0{=^=oPd@#8YuBi7UBMrjWf<9tX=kqV7f1W zEk;bY$;ruID*gZA`zlmoUKD0spPlPzfR|i&c=({!lgKAUXSM+)%#xdZ6AQ<;-R#=V zB#%b8aZxlY(A0<-vO0JiC*fxiENooYRbd#Zr_jRFJCdg1Z4Uz*ep7OuAEJ%g1kYKu zjmO@HGR?y+S@FF%X_aj|U(Zr;C^96Ns0W#rk|uhc6r(mLx?*e3vuZmWjhQ}oBWa;b zrXu2zv4!n|?}KFs7~M{$pb*0A77&fG#mYdY;8hAI+E^(>BU{`RZVY)Hh^-fw zXDc%L8ai)KaI!x)JP##??WPv|W(7?0kx15!EnRXb|He{0`t0bK&aIAW~#e@ajmM+!S)SMtt^)I10HDqUtLF&PbT*d`2G7DvvoY113s@8mxl= z=Ve39+xSr3CfkknOBjRJ3;D~kf%(W3f$?b7?DXZ4;nmP7Rl5)}W)$-xwNqzVBki73E}8H!j=L*R(5 z7}$+~G<5!&lYU`)kh1*N!om~`XcS^z0+7YM>V-}q13Rj2zI_0=n0PM@{vBb-7H|SX zyJ$Rd!Ox|q2yOxMc}!Yb6id1rGU!J16}3ua9>x%btWvOtv+s}^@KU@3;dMIpo8A1Z zoev|0RSwNP9F~r&td&2;WIr)JO5iF$PEeG7%8e_V(@xJiO+>&iS;@0{ZK6GZ2V~p# z-Gr9Nh31w8f#fW0Yn&~;td0MHngWXc13XUq4!O4YqTbffDE*%Fu8 zkn!1*8UoqsXUJEg+DuNN-1JS256P_>s_E1v`;Zm6hBO%qwo{ThU|!|l6>RqFtNCj1 zeR4YTwwkum=lv)joXf@e`}g%@A&pj^JZ*hzY*IcWdKOhf+fj-n+QQv0@YXb$3NMe; z@;NM-2UfiIFa%H`q89H`2N#wC7swEaEq-8<0@h-|c+}xQ#7iaUfC>Um3GWbVY>0;Q zF*qfrz>2Eo_G~8R%NIX-so+IWNyzuf$;h&5YAA@AUl9~{w6`0t{*L+G-;WLfdrL+> zK23rWh%qQc#yVuet_sm@OrgfZC*KZ4@BUZvl|@eeJo_KOfp|Rp{D}_APzMUWh@YV2 zIxx(ndAGG)`2uIiY(oE$DNSaLFECb_SWg z=`J1y7#c&hp5bS{T9H=d{fXz)+38|O<#h^Ky;hQkj0in{5w_#uI@&-xvU@hm*p$}Q z0FZxdvXFWu!#9zN=B{?X#SDXGV}uum-rUkhzJdl!%jQd1Ru@M2o8tV6Wjh!5pm=}_ z7TX5pf5ery$Te9Akda{U?U`yWP}5<+ED{2zcAfPHK{hyHVLdGJ7rmfchgnZO{gWY1 z>w7hlfmm18&>-xpupgJfowdbiBNz2aV@6z`RPmc|o7`Eok!rzy!bn3Dd@S60;6) z3Akx5{dS|_VEi0e@wUNzgZH9s!;@*^((BnUvTst1uAW=0H*`j=$#m7@vzu@BV`%`j zElu4!rU_iYyXu2HI02e5;N=VrJoh$4 zY;RoBoW4yo)T|STO&UJwmXe1PO@z3vU3GkayDQ`@|I|gno1uw|%=$v)VXZ(u%zZ4G z-S_&`SmbEI+h)Km-2Vr&*YRohAFkGWhXKrqFF@JGY<3>htFMXXs$2Mbkr6^CshC`zPEp;L5vd|&(MlTk5<9vxV&yR#VAm zqr8)(iDI?lGB8BZ8tVCKmwkSA5#3)_SzOZBZ?f=Bp}X>mxxRqno$^`3UN?d5b5>Q=_=2^Dy#N)c*EM#J|9+vD z`jU|m4e-kqK<#~?TZ@p8ft-Q4V!(i)AtX$Xb|Q`Y`js@#YHN9nke;Jh2F_n(kYs|*ef`pHC)(X+GTkVT*=i=L9$G@b$* zh*IR{n>8*IAT|dOXSEY=+b3{MfU!qX$wW}0a3_Xf%_-{e?}WKBL!e_onbyS(Aapsc z?cgt0k!Tspx_@L`X5e@kK0d)LdU@>aG;u9FJKP357o=nvC_wX{Q)1Ytl4p?TwX+D(S1wTOPjOr=24veiMhFOzEI?gqyR2p@Ig% zC$%>W^`)6*La$dcXx(e8UmkBUfS}iCk9@yK)yI7!xj)Ugp9tP}_sxn7U9bt<4+TRu z)YsA3;rX4<20{0v#u)FiYlc9_RQo%eDluo`E3x|VuNg0?REa%D16hvrFHa^g0`0$v z&|xXVS&hT0!*n(6ls>SYHoZxaG8OoY(#Fk+1C=$pkLbPFscXZ&v=YyKjEObCcfTMw z9)3c4>gHnQ8wRr`-`@U}tJ;FB2z}b*y+N=m=8WZgzZBYac6b?ny(o_VBfFvw383mn z!^u*u&W%esH@D^YEW*ktc2#=vev~7*j8)Y2n=WZAnob0PxdLh)?;PwxxeIZ$@8}G> zAWqF86)GO{78|gYK!=RR#-%6y?^EAgS*;IHj8w+UMk;H)eYmy|=^C#)Z<< zekXkgTmoW}*?1@R7n;SJZjKcp{d7MeDsSF=T75f#la-T$I-&0v_2p+pg?g-?)(16Pr6eI0G_q$PXH>F8|BX5`J+vW z_k^g>Qa{#ta!Qdp0=5NLyKTppugv05$l_j*q4c&%F_4vT4rWZ^P(aN47!vi%mjdgu zF7GXnA{=Xj!enFv{988am3BC1o;YSdf25Oh{#kAUZ|^a(X5RZU$M6@k^)7=hV;_#6 zp(m!w*3W(5S8F`naT}_}K;rg^(9-p)Q*&3k@$6#l+Yp=74BhdlZQkLK-Ea+tcx0fH zG^0Uff9@VneChypm-ZJhb!u_oU+wXC6AAusP?VJw>k*$d0V;rA*brSfurfq~wKo;Sd;{z7wr|4~omN%I#H1o)>6^9p%Tbq1~ z;~!Y(O`v7sMoC>rm=TISiIS;_>;v*k|7h_$isp+BE=2VLcHNoz`B5y+LBnh3St_$DpXF>u}ZBxGU(DEZ1!)`Z$P0Jv*>)t`+=V-?6Gg z!8r``8I+vG>t+o!O%#W?)Ie3^w-=P0TEBI}h32-U_f3~?M(4@XKm8G=b-8`QS3zVu z{hEdY7Jrb&S~9}>Ss166`>X&pOfMbGijCjc=ix2p=9Y1n9!Iq9N1ti&<#C~^T~r+T zXEsW`&>1(R(b?7>>Fl}8cm8Wz?J^-R35tr(7orws0x%nbP>>y72C?*L%$A7ij0*}F zw+;NTnYeUKWqswFhSnZ**mS*5+@1yiOp%+zHk(`mpVKj|J2Etg+s#pz{haf}(psWX zXNm9a2M}Anm~nr@a(6l4i)`2QYrQWe1R-Aq(jOTG1?;=y#OCk7D5wS)!66B7R6TwA z^l&i%-}Lf$4K`)%2J$@+LGi;_|0J*#l>O^D4|92^h8i38_AAWRFX-OSip)u{S! zC%5|V+{BA)Z8%%ec=gnHiV|1T>V^*7p)S|JM$Djp#NrWToATE2HCs_}qV@ET7ZXT! z1W@Pr0xmLGI}63Jd-#c(DB7SRF)6RTT5r)9ykMbZXlq_$8cK558h!Fs${;!zw{`|B z(!--ap(TI@b8@@*xXksW8~!x>gW5qRY71z&d*hx!0c{kbkNJUemqwY~dM9499>?0b zk42F3+u`mbaQ(W^f+w-XWy%j`FgNpk&HWar78H{GjT8$EXASh^3SumcTrS=I_su2(C+aBH>Akkslr@K1l4t+ZjIq zp+kes_@Rt_ZL)6#7Mb?`fLxNko~Rf)Df`owH`vSjI9A9%CmT9eyMt8B)3yZN2_VZ1 zX`LjgFG;ZZ>5cZ!)`fV6F24aG)Es^LJW;f2?vrN?EpP>ci3^@V%80@5UJmK}WZL== z>)b!+nnx9I_OP6HuK4A3RW|;WrXArDqiyUqO_vt4V9qNze;C|yG9VreY$FVLU+e2r ziQWDkF;l!=R@NK zAcslgR;Kn-Klf!fU;F5uYJO_&tDo2`t=gg4n0uitvg{I?%fe+hNu6rfxa?r&cssje z%Ui$wjtB~yJyG*CboG{r4&V9UC}8Yr2e$TIg4vorfIv7QfVWE&u)AX3%K8yEdvAMN z^Yd6pmreEgPB0)(kPleLEQ^3Yx zsC>$Y@gF7d^^SCcDtQfstT$E1?9F&|&CV?~SaRz?;6P6kS4XqS`#9C_)s37*Mt{*iVQEhE`NmwkJ`@D2?YsG@5{;8d zQ^;Iso%qBy8N^!P)EGn+H~5v zbMcK?zFzmOwFJlKaSah)xc-BV){Gc)gi5A)!9GflMgjS|zxm^njSwlOz7rO=aS7c& z8E&Ky%R>*eTWm7?aCv#>02}t&B~c;c+7Q7N_AqQ4SBLhUq>Sd4r(TL%tKO3k#$Mx= zQT0BdhXMI@m;MW!|5+BG4kZI!5>WSi?|l$*v~0Vf1!B7v{<>{v{_DGm^mB=_Qupl@ zQf!JUgj1BsQT;wDN1w1aNANzlIGMPV6l&xQ6meLRKYBPNMLR1@1y;!`B|G{o1dbN=g$T2D;Zp7}o-TsOj`KJ9!t=#ld~*FRoXyM$XGc zlA=6WmKdw4P6_58$*L>oJ(sR_B2oY2DJ+LGfac@e==dR5Q@ar>XbeQZ;n~^54|{fb zD&@r_e63}er(7Pa=JhzPap9G;e$%xq2 zpQ#|8RpP~Lp=gbxJ%n?#MlTA>`~&onJfn(Z`HHp;}RV-GJ=3Q=$N` z4HrtC^46^BtnS!f{GP*7ii^V7d*Su;`xHFO(OMY7$@2&Pl>5;Xpku97@~vhR#_QJ? zE6YXh&k)-0aX_pF3)OP6xN}Ae&d3%v$OrPvbO*v9k-MZ^fSItPw9_c}e=br&^mxsk zh2QSwCCzV8p|+pQFe+vtSBt+_)Z9s6Z_h<*g;_Y}K)2boO1?qbG$v zW#41W7vE*7okgOb!*7<)p6D2t;;u{x|1Im|47Fko^ZYfS!}i9Io%HeL&1J2r)^Ri{ zNmo{8x35W2nNr3VcEjA(79`3KT>sw^g-S?8l=Zhu=BTr>$A~=1PIi{B){THouveU) zpLHHv{`mUJ)VMa0mAqdBOAe0<4O&^-*99j^B!7Yf^<9=mnr_X}y+#ovk0(HdiVFoF zB)%(@*Sh)~Gd!t)p5Slb6;9_Ho0F$x5%VL4O49|~p%LI3GP z?H4!1iKLrq-OBdEd|6C1CcBl^)feoL6ra;|^1@lyDmP0m>eHBAFpQ{Ep}yy9Bz#n+nAn zM=YtPlJ|F0G+AvJqc1;~n%Y%sZ=FPre(K3lAverZt+Rao5{f<&j0k?D(ge2!8!#8_cTH2+C#C^612T8HBSbp@^0W52IhB=F@lf)3^k* z1b-7cKKSr;{|E}oqE=g7!90K2K4;*sythA+)N$M3yK=t#f&!_mB`AwdKh`#y#rI1k z=aTP@1VqO^D*f)D6Ygr+U;N_TfO}tko_bjPrYyK{V#}}~Xx{BJnoRMeK_mte4wYR+ z?9mSOBk1(FtSob^oOl|M z*uv=@UZhSPAwc%U);4HR6onfvnpEi%zNTA34h+aUJPm#N*>s-uQBF~VCv2P z3VZ2uUpBON_H>9H6A7i?n5WD-vj-sBQ}?b_X{k@Vqt@0 z>oq;WxX1r(3b0EXQ}0jA>=vz=5KU42{DOa%*aCY)VLS)yh8*US`s6$n6CP)@>snYo z{kOP$>L?l+#m4Jn;lRP9@rzu7f5w*tT93iUxBGuMdkd(lwzhwC)7>f3jg%-LUD8NP zHwcna(ybs!2$D*QfFO-@HwXwwOSg1)-?^;!{l0tuIU5%5IEXx2wlK9Q-|+joHWg1{ud)!B~pe?G0N4CBnx& zN^cQP-2(EsXW|rh5;b#IHpo7vB%@OVRE?1k*7iDwN#}DQY=HaR53VXELS1FK%F*@w z!ktP2a)rDR<&TKTqale`y|AKL5z>=_sVsNBXCv*6R05JYVTQWzFfp%PFN{Izwt@4A zQozzIR$b5PN^M`&vWC7+5uZ#Q+Jf)UNDA(BU&zg59y{}uwe~8zpoF#&MLO0Xmk!ujdu`EA8td9!xgkYj?iH?0U?Zfz_kU{ro zzG#htihn_|k?8?l$yZaZwXh+&KDB9hg+>gT$N+O(1`N@*F{A!dmUw~>d)&pCV7Fb2 zx2b{TK!&G=G6vlE%;mG&b1M0*cI%}n+0%tOJfk`Ee4eFIgYX@%a+!Ob$E;p&Z`~_a zBavttcjNRnnsYOVx46#t@H=XtwZzVcXQPXtV~%98baRM)XP7#tu4(ve_)+$&@umgv zd#LN(>Yhw@C*&Kbwee1)VXZjNhU10~g@K(apaL zKm`O>5cOLFHW$tnt-d<0NSBN-yUvhZJZ1JMPQis&&JWQ!a_6%M`C()v`RAZmSKXJ5 z#M-%|wfTG8r)nwo3o>_A5?6Gy8M+Nn;bvEYlkstOdP947BZ;+~NMF6J!tFLw9H&S&-F0K< z6C2atLv|yPSXptR`WXt&kR-XcRSY+(!xd#X+{w)ZSCTP2>sYTmI*}2aXy`-kX0P0z z-H>r z3)*L8E}?ha110tPFr`xe_+CTI5O4*+&enL(jgvLE(=1_Um7CIHePB}PZldxEIpxYj ze8m%>5i1NPQp=lqR15V6Nj5QcnM@qF8vxA?a4&MD9IOl0-Pl@$Ej zCj0M@VbLzgYsw*CJYCK$nOEKr|5Yu5LPV#w5S8ihF)4Y8^eL{9a#;}dHuMs?*$AN~ zXlfa*@E(o#sr!(wQi12CN<5X%C9GFdw+r7cv5hq^R-cU4@Ah93$N*$7t~_w=*Wx4gyo%op%-36<=W?T1^- z#(Z?l*8%2)039&cXijspy=!^ZX#RU-9O7RL$oKkQTjhYS3taT!p$P(@JZMM%1PBdc z>)mKSz!h@982KRzI6YF0q;p);MxTzfgbU=z%|2Cq5wV4zJ`eqMtiA(tFARLnpqv;=BBxD2hq&L(-nf`eIL5m=vc;_G1;^j7w%1) z8uP4VJiUzFRq$Sp-N>or&^600`viU|<=&RC=0?MYXN`fNM~O6-9Wa>S4%Kh!wjncd zb7-*&oQH|_w_mBM&mz{oR4==JLfXN;TAg~787$Q(J5nd={KU=8O$W!riCo2CCsfZu z-2tS_>lf6%@%DI4*~ZHgt_yc_Yp=f#XJ4HpZvEpcA>(>{;taUR@Qp<-gTV1Q0Q7}( zv!W+EUHX6r4!`&h_yB8)XV<$6#DbeYN)U8(bO4YCLF(2vHVkW&-n-(2L_}yefKER` zoLh1O4eZYH(-XIEaeDiqzCYWRNqG9VJLq>yX$D9I(NG2By}{@bFi@fYtWBtYd!ex{ zZ-j}ZWBp)n8?*}1{$JC6T1FZuK8)FQo^RKk0$oJ!Atd(dsXS|0`J$T?Ww@D`SBU*MVOw!kgL8P3$7(M-O4k8^+Y@4cOf zj~PN{qyzPI^5|wVTgVWionBpk(S+O=NFi|I^S!ZJ<*tumBv!*y!De)iYNl|(KPe5` zz(<~*;jdLTfY27l!i6sj_vNz{tP7arQYKi&g6*ASHR=sAJYAlbKHjINznU)<{wiod zkJ58v-+pus3KUxeL028xRT~py^p~**>ady_Zq8?|yjT zLyF5<&#{A?bxj6LFs@Gwj7g^y*ur@gJ_uL zt4Vg;fcBP8cfG8*<_;ISV7(BJV&M_c0GipEm+YR^zkgWlF{!-DGe@>5suclj5D3|l z0UdVk6zTJK99WzSZ{_t{=ZoS(ck>QvSW{W0Z(Dz_rt|}YX*41i-c5dWII-Hs5v3IM z`}mLbl(mFwHH&vWujAoX3C*RfT!gRfcRXw_s~@`?ex@`HNA6H0^l{bo6WSlA9C>Pe z`zp+yXlw@Ym5GYlh`-d3x}%$?GO0Fl4=>f2ccGcr{p)+eM1YG5MlyG=kJw>l>)k>>T1anZ?dyr@)+?>4mCt7A9urvtat``(gI=edYmDvUx`g@v~LzuWX6co3EMKM?85auFxqi_L%f}&eZ|$}{W+t` z=(Ofg`HiMKe4>pMi)hxlyxF0{se@j6u%;zl(cAH_AAgf42Lx#b-+$sCc<*G6!7OYK zGbFuNj9KIAkb?f8%nL;_EdPVhQ6;{0Fl=|ZYb?fH@jYg~L!)zkPjq%yvxhAS!pTcy zLw)D3t?JjRnl=QQ&Bc@)j*~-hSa`%4-%(5*bvB-;?Xi1!3)a4jK~)=jzJrTB9@_&a31Qw9Y3``8w;I_$tT57-s_EqUGHy#*khOHiVwXqP zTSzLo(ru%vxiQY(!^*cp2I{SUK1BrjUgDve<|K0&>)<9?+OY+(;z#fDb3L@AUPe6R zqi;BLJz}doeKbO??jdpXE8ox1D@!47EQnPoSb0;E*J*jT=i1wHIede!%#N_mtJq-kmLFV7j#-LCqP^JL9866k5Jmg$WatoG^F zp2GF#(ualOJcIBY&e42Tw-_`OaD~4-)c-zsKuAn%+DrC1ET$6FoYXoYJ|&M-8<`$` z4=R2q?Ng7dnj?ob(L(l*6YidqoI)~v)uNRay<|lPthHYyI24lwT^@a1{PDT;*~yjp z(_>{>%N6fVa<)C+@Upo{4Z{WNvDd9As-6J>MO)gX7Fda!$h&Vx5Azk3VtthjImj?l z%-qgnz5HxSY-XD+-gb`5VDdSL3vV~e`Ir&FkjE!07c5H$wA&f9l47g$wO9`oJrJ7u zZxYw&tvXTQLT=puz)K*_*h>MaFGbUZ_V zPmK?QxHVF6HlTC>VMfDlb#5;Dbd5`Erd$jzMZu=h5(cn00sHzpK1bR|j921b9t#*f zdwZ(Oq{^m@20OMzGi7$|@I4l8b6qK-Fc_3tIM56C#g6xO{H6<1T&jSJb=a^n=S=v) z*Vw8LSu1PPtVrtj3y(j)F@1$|`_=2uXp}=zRIIJtbk#8b;p?lC^FusXQ!LA^V(!kd z_myV#b7a}PsWZnI{nd6sr^jX7eN%w*SKqgj_eJPZ-$T`DXQJ8abh~UwackXh`mL7h zsG0AKL+g>5gXIY?2$sT2z=>TrAV5Kge=u9vDoWluxhB!wN@wJZx{2Yt)I8(TPUpn!v2j8b;QFR0h_Pzu{p-{F`nuJOp%i4UNX zwyv2cMV|AQBj}*{%x`&_-CpZZr(2I>mXUGSW!(jqtobbLpaLGYuxQHVvM$^H^g6i` z536_7kbo&%CYu?f&z8L{@xIJJwT;%{4lxF~a}A}DUn^E$&E^kkA$zW*@7lAOvE_F% zhGdMN^z*H}gI^`5iU_4WQNP6$P8IwlXl^Sm!R~ZuTd}4mjJJ7ZHd}XB^GAaO{GZYW z2b<%=jubg(h9-`-Gj+FsD1$O>{8!c|zYf1~b-QUm`+~3OyRIkbrzB>6`-(d;{(l&e zW-sqLq|(RDbh6;DD&Bs>CF%XbaZ4mJc69zc4?n2lb$ys?TH!u_l_&GAMKTr}U8a`v zteQemyy)C>(FI}maO9Vh-XrQVc>%5FZ*Qk}JsIZNF{9PD*$ZdBdo@$4A-gk;ha5k^ z1MX^uit@{gW9O5#JK?J%a-}o-mzd~GZS56qwb+X7tbY1%nR@&{6n#PIcOis1)L<2YtaT8H!SeCrN67L9B%tUw zY)-9Giu#gs*6qRraku0ClAJe)_NoF|2X{fnJ0=--PLRzG)nASyh2UvFP>P`kygB-0 zhXF=&CYweEe${>+y)=LDG;OzHL=s7_K>#_?Okv2hnK8*&ZNk4#Won^yVo*aREO_dR zwY92JS11L>T)rpv32{T&f(F6F-_EH~pf)#}XVCx1dU0)oOeHkT2QZ%;T8&27A0C2B z(&UWLvoL>qnq8t^+%Q^|m|X9h|IfKoYoGM?DaU#f<6F?E&|u)T2LMs1Po8J(R_jaE zsj)5styGoIaT)K(1T%IZ<+zYv`Gf^88NGATND0TK)YOB8p>rV$6>8$GHo2pQ#m(~Cb%$$^ovPpvCqkprFdwfP`}0;o`OmRQH*9Gf9T!5(X!_knckx!*&!AP< zv2zivR<;xJ(LoR;sjU^-GtWtPQyHw;ju`Qi&{9*nt(x^aDk#@ZTKBgnRgMPc09K;*V@711QQ%j z-VUk?Z<}N?IP{qizx7|13&F2ctfPz|3zKJy-&>#rQOV8e&5Q!n&CPO3lt{4PmodrA zIg1YBl_whYiqlN$R>|$kGL`pP-q0wg1sLlsANajlmOpj`Q)+WES#-t|+GFCQg_R@78fC}IbBrIKDjm0U}@_#_xfggD8IIHkzi~luyINV zCO6RMiQ}hgRBWegqpp}qptnQ%c;dVRC%B~ayA{zB?z_=XPxA$&byeI4ZnX&l&$U%o zX>!&ABv^j34?CGH_HRF+vXPL4vFrRw1^SRqLlI4V;TAQr~V$`)ME3TY%o-}`8FoYY7u(Ngww@9j6d%!-Arjlxe zEodCO#aVv5dL2#|IqJS{fB;;@at3czO(gKsxzd!4^S|bMH_CuKwo&|b@Qzk*mXf#f zXHKE&(B-teeNXRh8#~$13fg)%Az)Lvwyh=R#g?V1)vfvH(%eJursQ>;P|qFIhYQ{U zlJD@Wc;Fq-wHXn@=7ksU*6=%c0}Nx@E}HIHQgjkWYnAEAEeMd)B}h{;4H%&>Z?cZn zGj=4;N7mA3OPVhA_Q=UW2h%^k=XX-}9f{o#=*{yoD-6t7a% z-STT%7F)t&;|OEBC8VPl@}M~t5zT&LGtV(m^*DKuaXR7Ly(O&%$d#hKeAD50k7*Sz%3Y!699zS6W< zs9*u|A4@PCbZi-SdQOAwh93*Pw*3Km0~)^R(2Iv zw`5Yq!dCz)CzqTnMpqGD%1le2d6M4%`U`k-CcLS#sK`=)G<)_~qRBS>@u)*> z!2;30z_|*x-C3X@${PF}49R%d5ULRR6fF!g4EA*}?DbL0&lTSUI};4|7?-uIUKmm_ z!1JVn9lK1tn+XlsG(IGF_qk5Wf}Eq_3QM>7Qopo!0mkX;L7`w?993PU&po>r4N9J~QU$ z;o8tUUOO^cTG}X}?Z{5`L|0Tizd`>a2*ds|DLjxbjL@l3by}(;-}|ZDk7i(f#W<_rS6rY{s?Rg^vdU(sVq~3;k-sB! zHbPPSON%y&wGfKyYmK@>4bJ+I&gXW%T)yR-O!K9jT*Y8xE`AcRL0G3lwcW8GgfL3M z7T}HU9y*rE5VfCuzV@Ee+Kj7C2Bp33NTlEFF`jQ3{EveW15_+bx;1C%pB9}rY?QD|=2afx{Lp9GUJ!M|Qkh9vfqusN-8NUNzj8JDKN?65>poqaX(CJ`O4SVfZ)8*5V0=11(UW~Y=40bTC=TeO-1g&u@Jv;;WqymqLB70tx(QXx{O=`@ zJp^D012J^e(m60Bc?0}LD2=@LkN|ZHin*Grn0(fHyfq02bFHNS7W5B+T+H`;jR^p$ z^Qm6j0YHrgq7A3;6@S%;7t|refuhfZfBQJehB(z^0YC~I*(zdOpUYDOeW_vWs&}CO z3+HJY{iYW^esGdc0))^DzCCxCJAx;bYmoK}tt;fO3w}SpO{>?<lxR0kTED^ymcMJK^0eKBH(v&2DYa(Fk*$sRevbvVRL1oD$btM;REXl8?Lbpt zD9P3%D=ET&!B!d&m)yrx6ko*=@kRZ7oop+|rfhK!&F3wtUHg3_3f%421$i*@`A<3B z!u~!`M|RV1D0h2U-}6jGYD9Dz(q@7-pU)59TU zE|4AuYYHV|{od&32Law0(h)7dtOwEtLK?T%uU}XFOtjf;!Qh-*%TDV6Y0AdDUR2}} zzX4h5i8~NMASTJgqBp z-@AASnlL~#C%iE1*AB^EDra#7Oz*vQ4@ywiOWtLSB`S6ae`gj9`u@|Qa?okMxqzez z%u|i0>q_w96e#T?t68f z?sc*ab9}86npqmp}h#`hhQs4 zDYomOHKZabGlu~!rn>{x4OnI-{9QL%=;^6mo|d0o#AVYRQK>B1T2Kl~KJ3wijLImP zR42u~A;nf=O$F1)O2tO^)|IWFeQ8c3Q78h^CzCKZ7)(x5{ITQ7-rd$Hx;OO%-FK+& zwa@7p3-zxf&DBZ=wGe4ki=zn5X6j)_+h1SGQoDy!mSNzxj)!ao5znGrbknIPf z3r7Bn1C2zN<+0w>`w8@8?2Og^S&gFfjze|&kG&^zIUZE&gs-tDrC~HU3l&9BjI$dZScMFl$4Zo*SN{gXDb@K=*gp#(ACdd2%7Ki9IwzA%^$E&q_CE#=Rh^L zByT|>3)>a9Vq0HdCse~n#OsUIw822rT^r^-Zsq_h>lN`Q%B1ZO1i4@pm)gf;tNg0> zXTlL86D-F>CqMDfFKtT(*hZvjCd;+Vfy}tOpwGgl5LKv{#L|(z8a;w4e4RH=9KY zzXG3LyWkq-VyFiscHQ;6_MUgv&>#X?$*<&M7-<9qbhRk|0Z^v0iupst1sFOy1xOe@ z^Fj02m*x+`kY#MnB6dX2!Wb)`6HWcEbuhFE>}?$dhwNF9yJOz@XmPj05Y18R+$?~hBWHm(#}hsMQ8T_)t9bx} zE6o#gtIRW(@WBTbufH^{?2~FYbl49$#l=<JA+Sjpp(l+Hy(H*4d23bcnIPm8kd1jeNB-Z-#=EIV7BAmeP z^a*FDAsU05aN0gzMASJ;V0V8v4s+CKmoU|efLhTBU?U0v53Xm@-RFH&7;MNK5AXG= zqY^P9&+^8+h3lz02~PcTcG5I3Xl*sqduCqrp(lE+5>1)&GulMM(`ss} z#$)0Py(kawDB_8|1eFwJxE0nH(G&7e*0rI^)_3cyIQ*1`vJ|*i`t#C zrNz%c*G6xC}8*{@Kzu zvfElC58xa~&f1(WIcJx=grQlm_U;i}<%UN#>+=;nYuyz8tYFBds|uKJK_UsrXA#)e zLUta37sxN+W_?a5Fp&|U%L*9sQ$Vc+rBv$`kN!P2A|`tb z8T>u@QxrAU!gi7iywP^bm@7fym5H}e5n?#FRzl}zB9FV_hhs;$!Qig0n52aCeY@gs z?zppa32R~gm~DU1I&%Al=~4%C>V7O;8dILHAUQ_x1RMGW2Q z-z$*%7}6qYk~m((y_k5wTaEE(|HIx)jp;Ts8^VWK7YF%7*5?CDaB|VdyD#F%MRxYC z1X$vid#eu2S&(}Cu7b^eXc4DsYTHRPO#r8+8TUo3`O*>VcEO#xm%tQacyts>IdTfK z8_AHt0frLDE-o%r4)gHW$CZuEmbNZ5&3~u>FLr@t3Sc7%J*)nN0a1>h&zoL`1Tb)( ztY!5Uxs#K%e66D-+CQy>b)guq=KI@+`WXy&KiqA$ndpIo;XE0NY~K z{l3~fDffgjd62(u;qPx+YAVc z&qtVIqqV}56-2m${TtMW}dSLR8fHqd2+XBk|5;x zEKw$|wlc2pl7iN;6Bp+8IP2b}Vm1=1BhzE038b7bx zaLTYZ&3?cU*l<{)jrySYd@_Ti;4*RZoGnk@rE2{Z*_VIk;uqh=>fZC5%^xGlvKLQ% zQ{t8dtRbZ(shW7Psj1WBbL{@;N+#T`1D;6Bm=$jMv#^L5`gkc{RPE+>I8HsZlt!k; za*KNWHzZ+=(($U#??1j1Y@X@Z_6S+it(KO(VSLjPE26HT;Tw}9wZ|(H_=acY`$McP zOp-yfaBlxVFGO)m>KVNYn*bscSG%100nR^KAhMxgIKWJ55BaIBI3H3~k5JojI-Cmf zYC^NWu7TUOPSH!lqU)nx6yNyLSqE-8rGZ{pbz84+;dBIoMAoF6GA6EC9&RxNrxF%2Bjt zg06_`M(49Ia=iGC(pEZR#(rtG&{501rc(6_mN$vI*PsA0*J(3(`|d94r*+5ErQ$SO z=8=xRMA8KH2b-i8egk6I3Z0KrjvavF@$DXsHl=eYk&fkZT2af!MkMNqZ{;1F2bV4c zzFgX8h{}$@mihf@gPNz74`HchThl#vr~Q$0D*v)8aA@fmQZK>u2eKJF-}qSsp-91= zoPLVbNl$^6eS?29Cvn_BWYYwim_|^l8gz`|fPdP(nFi;(roDq3DIeK>??tf>4(DGy zCN%z&+d?a6;So(}He##XDQj+%0HN;vWTDF?E5bzC)jU-b6@HeHTk-Br;i z#>i!_{AO5%;4uS7;5~Dhf(Y~SLei&oeCFSao7C{bPrm>kLUf{pEV!@0;A0Ou0$SRJ zP72^x8W|eFWW$fAjO6?Gm?M5>4oi+4%7ew5Y`(Yn+2VEFlzu;wy80ERTX{7C%&(pu z>*ZqW4x)trizIzZeb#~?336f zdp8Hj(4bwjuPZ1K83@#jj`k~W4nGh^QG6ehh8ZWS102!(NZm6zt3Rh`NyRhU7F=4_#n)B`4E<*!mNXr=|L40-^&R5k0k%L$BfK$Y_y zyZ_D(Dbv|dXymXA4`zLPtIt~!r)MR9@QYI)o{L8~q?wJBRMr2|JZ)+YH#dEs_m04_I)Hmj_AV% zsKFHrw^}Ty+AKhdmuy0R**=F`A9m>ygU$Fq9^jd&vyDU`O3SSr_vvGru*Ua2etJM9 z-^LYRhh|Lm?CT;O%j-lm)pMoTp`=2Fw>7>szN30>hI28g63jRY+t^U2DsC;puG*Pm+_dl)wH` zCW67{D6FTD5*MZS?Hv(fJ}7QL?qJ>hTpD6IR>8(Nc5`%$*R1H~@SWQ}#!Yq0$hE0{ zu_b72y7i;3e!QGGpYgqU0u_@|Zu*=!Gd~X=43Idd30~j5tuNu4gH;?GiZRE^krVZo z$AOEO9$;YAxo%_lF=e4-&^oQX*A$$^VNn4EA~;-XB@-grwY;M^;}n%QQZl7v4WzCm+94GrCg;M7O%4ps23$ zS6-e$15SBUn=S*?awURTx>Om+g3j6yP=hnyq}J`eiG5r>_^O$_I84CnsfouAblrb< z2j&lGBy&J-F9iZf@bU2-fKAf^aAS_(*0B@{r#(UGw1m zN~0kC<YmsaI0Hgz$Ii|vGV85E(as7YiWEvQ?fuL;1e8YM&2yp}s#xH;u z!XiK%ZJKonBzH?t#2Wu-3Z7+G5CP5|V53dLf2(=PaJq{c_GLo4ao-9}Ta>-{RK&JS z!GKfm<5qOjHCf>^F!ua$e8>ltwO_6)o6V{;IVo=L>tkD;9Oz@QWdd2eg`UQN4rwHo zZSiVO1CePs)*FF4I~Ou1ZBKFDv;f~i8c-?ypBr{fV;^Z7pOx|g2a?_0T%pIq<3jNn z9j`HXL_{|@y(jaeOle?`x#1&y8#p&-n56sVe)pdttO4J?J?dJCW7VRip@D-800dpx zzzBG+8HH*NBvrRpIWEFrz;H?oIHZ-Bbz+B;5&7P}{{j{9TGx1-f*iD@Dwx;bnyq}k z0MZcPfc1w) z1IZiMg0>=vODlYZ?PG6Jec20K>sxQ7xcrnfi}?AJROxxIN$^8Lw=Rp)Gog-f*%u~! zYuXOjCysbyv$Gz{`jOYF)87dPd3yS5%#F9 zc{cLhJkA&z&nKw>#&+qM`giwiiGT(vqM}s5>+OIw4GDwT`1%s?l!0Rfzs0gxG z${I%q0gn%IjB9&MU~(@=*?6gn!e(?e6 zP4@E#Z#3gtt$9t?hr6Q7Hkop&IZnNIZ6FDIGLjqudiWA*% zlCpvccU482Md^561Lk9@^RPkv6PN8$%%O!1Y2`*nNj;Up%{!f6kPTdTlMKY0v5<)w zW6(6idX_j^tdUvKRm|_b_og(0Sg30{RZ`cawcpKn%e+p|BjA`+i#&4^|Bo_bB!PNp=I z=$TFE-?a$uKV;`HlB)qtGQh2^04@R&O7jf!2aq@) z47KV-3`Ib(?yg8&Y@&8JzU_UxJ&VGULi-liyct|xM1SJ6 z+Wm@78B)h|V-!XlS=#|m7V-bknx1Ww%WD^C)&WCAcVLzxp+fhESOn@ZpemDH_MH_1#x~L zqrg0vFZ__29@tkfT1f#Z90)2>^_I56y0~8i-cGfCac}A7`12pGvVLZ|88?M!%0phD=jxvi0g zaY%N2oC2uGmSq=AKMk!^{>D)P*2Jx>k@efEMuT{2doOvn3Q%4j#b7HKG%?&+Yfp1| z@)*Pf9g!VZ2&p@N`cS zWB5p$XDq9afee`Vg_UE${1ZKsGDU%NBye%mIT{zsp9g)j#QT}L``~`+A2>5{j3WC` zh8z^t+1ivJy!rbWL*MZ)74RkHK^lpYvfUm*n=Y%?NB_9r^L6wz49-y~D;20itebU_ zP)hvcCiuzxkDFr}^645xD=Di{VPE+@b_W(A$4?{RK54#PfoBS3)`$Ecw4_PYTb{6U%)iws=Pd zA#Nh*AS4|M1Je*#{jonD5>t27)mjh^D2Z>0X1EjMusz(DYR9=l?{nskmR#m4t4riyleZt;M$X}3C9+$yk4aj4r~vR9e;XM?uHBljX2kngAeR| zwVF=@%Kr}mSbaMWe1@V1vH?SltcvQjNM^%Wnc`&68m>B zkNT0w*!UK(!|G%odk$jYPBlx%F`iC@BE_dx12kaU0*>z0uLCcLV}y<7o2!x;oeAtS z@CnTs_=Sd%0v`{uV^_?$nOo_pD0YrBs8EMo*h(eRZIq6{2>vTnbAQcf?q*W)lLk6NKhSbiT|6vCyv`jBn46k zpQAZ~XNUF$=bA2leR|{3>ciwn$F}-4(#yh(pHuJmlfPQ?z$-$CKeW-mJYh( zSRtEF;N%a1?QwB&r@+o>7filQLEeX)^)SHI8EPr@VFQ{A4j0)^qu!Q4<0GBY* zs!nb!dX*@pZLw!9zW#7t(JwUny{Iz>t{LgN$M^W36v}y}P0{K)I%u$vFz55wpZ})M z5{dtrKL0WwHG^abj~)>YK1vn3rJQqabf7%=s4eNtvh zTc-@+!aNeP+&WNtt;ufOn<7YZc6Roo!cOmdk1j|XBjz;RboIG92a2(f-8)73`T1fR z7)5VTwKcWqIWgVJo)Z9YLpGQJ)k}?*`!g1Nkrj zbQ3T=D~)^W%%+?1>&ix5LbUBNC;;R5@CW4A2~lssP(&8qhAGH{3Mw8TLKfs|c=dxI zYmcxo9c4d|-!MOJukXA)gX4C_vjWfc3OpSJE;FA8tda6%C_NCNDNn_-=}?e~hCUV( z9sR!}SOU5E`T3(SPu0=SxSjr=!+Qp5)@@72qvGO%fcI(3lY48P9RyZkqe%2=tXTg& zcHU4;o}~4<7UG!Oc(I#mT$hGA3;9xln^f7x2u^H55Zejdj44{0KSycs1&m3{RWq>r2FA(|MGH0uKn^~ib8ax;f`ft4sry=1f{LzgDA4}F`Wg$Re+^DG zO7z1(3(&scI{oCHM}70|@+}^+%>w(uAObAxSLek+^J5a!V@UIY+}QI75mKigxQV%W z0rYwPr^b?YB)uGp13VHa+82ETt9-h7J})MJb_GYU7YCALd zA}jjT9e0NhK9qkGR4%Kb-UfxVJy#?Cx${dmj~(A$l|!Yz%w#fONQ@e?8_^`v+gq7(a_%~1XM&&Rwbaa z8VZzX{jYJax4tVdcl3fQBs`$`lYCwYjD`6qTwiJC5$)6+V9$Uo?GbKa&%-8QdkU|^ z^T$|&8dXA4B9`X^c$+|GpHzYQ8SHvQrz!aPJF8fB=6!hEWdbA;|Nh^PE|Aq|7nf$v zt;xHvXtQMTtk(Cy)QNiZTlu-`Dnry_2a9wDI_0mQ{4a!091#g3J3e0#*KraLxTymr zL>t8cC3&l=AR9q!<5{qw1lKduom^0SiUr~6o|nh*%Tzu5+n<8FfXDrJ0^KfaQ1PD; zv|f(I3>RN&E1QG@HI#(&wQ;gbHO+M7Nq|$ zgK;Il|Hf>99qi?&g0hF4*A-g8+6T-DLAHbGV>WChl13nuyvxPYwX)x)Z)G+zO7mY= z^#%0{CD4R|h-Qr)=RZl!lr{2r1<3!^7NNdC6##d9A&zq`gcaj|{Rgmt^}nu@mC@Jv z)wJp&0hnjTED?fv#37jH*PriUd^00}5li2xtqSZdNKwK94lrT01M=rYXjK+Zd50-${dQgk@J_B&j^ zSQ2ZQViI`&J{*vo+OZ?!P=>qBc*yW5N=qXHKj=WeG@oM~R2%4wRp$Di+d7R1aXf!B z3&3rata|v*T?u9kl1bm)GY_>O3u}Lonb|~c4{2ZY-~aDYmpw_XV~D5wZ{@989Q^Es zOzc2r>0LmxgSdAgk&#-8v%uXK@{xvUL9iwW(keyDH}p0P_!hH^dE~X4E@FQxXV#~4 z-XZ6Ba(8YpBoySnmXBEMX?|Gzwm@!*QgG&MDw4(Np*UQv32_e5TIvv=smVqjnZy1$72 zYL&D~%;wdTni_$|)W1n`FTS^@xXrL!3OUS)0r?Iph$!g*C>NLSrF;9+|HG~WmzVU< zgBC=45f*!++2zbW#5wZl5xd$Jjx;YqfzdNE0tkl2P*mAx<{o0{tOu*D(J!*l*$|6hQL_EcfgqfZ}fWnaW`repoPT=l^w+KuPo=XK_&(v25MRA|~J z;goL7zm{J}`~pZ-VP<80=yWfI6q0aOf#N^EvOgjHgMu8%lIil5-5NT08TvCXuBeCw z!VJT}H-v|wV_=lH?HEFhG2rMx&fUcTW`zP*fKO`^d*##%5ubD8{iQB;JxB1nXl)_& zI=~Zx`aQBaA(Nor=M_9VIB3Yc5Gqk*PKV^hgt{RA1jN=>t$j)g?DyWx1$KudpcQVt zzPi{OkfBNkcCWzyzXR}OAm$}=4JzcEqeTf&a$tjllf3Eq`-I>63uc$rtPQmPx9niB zXLWnh4$0n=^QJ)dNRy8RzSdtKyE#TfI2ejQ9HZiIStM+n(jfT!7SKzVE?~w2;HT?S?KYDOaepS)}S%A zYeV)5P%Ea=8&UyFfk2dby60+tk6W_;8wgRV6#r63dl>{BK|`oN$}GXluKwX)O<;oo zH8|YF7a|XIQ2&ooiAtMKg8}`-UH>V(-##1QiVgo-uOH*YXi0vpAm~=z(W>)50tq~G zz(kfcG%Sn@wBdCiLx7aaR8m0;fZ;7n%s>AK8^v+$-m>a8o%j1)zXZV!X23ianETR0 zv=yj{2Wo9;VBn#k1w2D(Ex!hFgax$b(fOB2ZG1O&OU2EQS)y$Y|6OINLsT53P#i%V z#n>KXLwmeAE~}{64)8D#z8L`gK8myQ{!JF4&&uuGu4~N0%S-#<0SN{%8*X6M;2R#{H!dqF z7JL_9*hhpFA?5yo8`~%KvS?-H`OhLIPT@`cy8!%utH2vrRwuTwwS!LUZW$rv;=%*- zU#yDH(an3cQ<|Hb>;JPS5~$IM3Q}+-{#K`x?+1*r7;Sl0Ne4)_ zPQqMVc%nC#rF!T8)Yj_2GFwxIw(9az7ONQQckMuw0uyq9hS7>1I$f%fk&%$sudUXs z%kH@E6#?=hyFS6MGNB7^)F^6D0v})b&r(~E92hiir#z#0wLCu_wFO>mg06>0AA~+)TvOKJQ=*8f{r+W&7rTGM8WL*R)U@gAE3S+CkkQCY1;|opgB9ZTq?a5K{;O z?rQ&Ui%1GX+il7bg+sr}A1FMrK?e+x#-rZ9UnBk@tfI|E%%)%Uy_e`MsxZhx08O~N z*dne7xGf+Wp#X!dC_dm^_z>E3{#+W=72l_P0yppfEb3oH3DvCd$NwljxRM+G{{VW)JjI3mJa#1%++^Ajt}jS4?_4ssGQbp51haqU9hX3ZH~ra2H*f%CIJEiwp$gqD*N=OqeG z2NVdTtDF0-p|B7eN(^Q#sskNSrvH*0;!|>9kn^j`0UWnE-!qAh)T{)AuYUt)a1h)r z2At@DzXYRVV&KHYgfVZ{2tjzs|2f3{?mI=RBSbSccM#|l1Ub;ZM8-mw9+@O>CJTc@ zKnC%9vZs}HlNH810V)9vqDaKbvoE29TgXNlO44%Oo_Y-wCuU${&M7J)8H9460100b ze2Tww8yv9YauUC<<+O!vjX)}7VTRZMdZ><=g9dXXgPR=7LVfItzQ_AlTl)@8)6_A#o*6{%(gjCTtrFSdL5MwUC=BLD{Gp98|-GRf22gmpkzj ztzFxJywhd%d%(q5WfMW`9QxL~f6bw^7LKn9%P}ZCC%DUXs*lokV~P&@NA6Rv zKiC^YlFHwh^}HriS4Za@S7_h@oVL61Zhn5$csIE71>ay6)Se*oLgcZ5=@S{eKj-eD zU-#Qn(oT@n10#pw^X8*S?A;qTxI6qL8bj1P6~|x{@kb|6kIc=_|7M4bOh7(W2G3Fn z>vy+v#}?KDR`TV($jW^zznNKF!1nA}6$b~2e-6cNFtR+sg;@fM&d$ysK7DLUkY^T9 z+Cf-0iceu-q0i9AHijyL4;T#&8|&ZE;FlF=&W6%n5FdVfFVyz^WA&MTS{R27$i!+a ztZJ4?spN&>LqKO8y<@9P6np8EG|kNgao=wG&5x;Gm}|@Q`yL81a7+-#jMTPc#5f`) z{%+9ow;3GxreOMTuc?>KeQ9UIc*vO9g>qk->#?ySk8aDkN#jDQH8fl?Gr6;6MN%r{rthdq7ZE!GfA)CxihAJ-~P7QwJQAm@aNCvzINo*_llZG z(Vh`k4d=TG^?v}4U)5vBIKW?pVb81wsfDgyGX)(1D@RKdZMH~A&{L|Gh9}o>b8i$B z+<(5;Mn*_N;)t4Z^21rrCm2&?^^7+sC+9})jF;s=mXkfD$?55pf0pJHNMr5~Pfs&nH4yxS5ajwb zrv|hVU0Q2Lb8FGSZKO$4-w^mD5m;wOn`mHO_ICR7dkzd4gP%=CqRr}EUxt1E|JU$5f{IH;Gp+^xmDU*UHxiJd`UvXvkYZVE_qsa@%3(>I6UUM zT|VU6t}b>SA9L}-dW8pmJgfRZ-cu6FBq<^x0V>Y%#pmV43_E}=hhd#k7e}>tuBqam zvmc+*IhKCs3RB(q)!BVRYR@o3>trZ4hS8-~UE~)AoM(>j zZD|Pr@L9W>E!neIT|+|&q_e1~sPN~Z-W%>t$FKIWv%U}8Z#5{X?4(Vn=bY#-aqN|Vt-7I{Q9pe7E z^#vOTGeiaB-SRj2NpTIvQwe=i6zDQx(!-6h=g{(@Sqj>iM+j4?;34_#-_ zd}gJ={eYdb#v5`Glu>=5-rNf^_CwKyCyl+}cTkw2=-`kUY4zU&Bu>?S=~_EA>uC*8 zAbI=H4KD?cdC4OWAWaFe#Q{mw83p z$Yb3nG`JrT=VC56KctZvAMb+{_DUgER#5s+w@dGveVBHo^a~lU18&_eT(O0pKAoC) zz4^f>;L{5JeV27y?g#9B$#Z3F%ubM%GV#6LbcFoLJ+v|TG=AnV?g0!GsKAu1b8)*I zhnLfMIJN~HP0tANSWY)=e|PR={@H${YDK>n<}SRG`^Hiu$x;AfJhC8b2S->=r1BH? zG2BPfm8*{~zXbVJ47j_1Skx!${IxbJIy&gNr@r*;?=9J`zt+#9a`YU|OV^*@y?>k* z<|aqT_%;c&7%TDk`84t%xP)D&YS|qC3cB*`I}2ZUE}VDizND|YW6RejTqpfk1cr-U zCg0k36<+Twb>9_p|Nh&gCr_B?;_loj%*~Z?K(B@_6p9qV-IICz$&oG;3K=Go zXCKcBIvoD;^1aKtv2TqV{*b%HRnF7YcB|)G+>dn4iU0Nw`xh%xGgkdy$oFqn`Qt|a6XgF6I! z`L4@fGUOG?a9}E{tLf9_Us~Z>Cta78rmiTAYW%?^J%I7kN~cesj{Iu|t&9pT>#bT0 zT*^MkPP=TPRQWKCjWLLSf%G0_&f41Aj$&$^UWVbCPk#}8QyVz5Z@oa5Q^RqN7DIJW zTeTH_Rjl97F1H-%$J~%9N`cYIb?jYFdL&`iu{**Eg+eI#kI$?hK7Fb^bAW}icJ10J zbY)A#ZXhf%xt89-R;VTF2%VioOV}11L z>9&)O{g_%gKl(5t+i6gBaXP}AmSTi+>R?)Z-(yCdQcl`Oef@ftpp6e@-U<$7znxE= zI@O24JW4$XF!PYORFq?*5MYl&(CJ2HwtfJGc`Sa@lcNHZax%UT$N6gC zcZ9qI;A0%3D;6h7%QckS67W%&?>^^12F;a|c_4_Q8@F#?4Q?w+j+|+vAqe^}-}MNS z{W72-gz!Djy?QlGkhyR>G}>+>21oEZa=%6&#_n=lFMDy+2S@KYimb?t70_G6|3bJZ zBpNrK;`WxpQBqM=MI9;!)^(SJ$@65xUCYnjf@DRBt=k=YXl2O>@h{_R&S%Zk%l~8B0EvlFV9bwsn&S8lGi9E6wMaVV1 zeBb>U2;DYtb@TmlQV*GySD<4GBP;@Phmw63-5rHYH!g6Ynh!pF>dk0FHcX`frqjw+;MMp=+4C*b9^eG1CNz{fl972xW2UMMB$2)sv zpWlW`LM^GJjbN~6IWE$sBu#Flb^SP}swYm|o(fbabKlERFr1o}sf438Uj=zZ4=*!GLPHI6s{_BsWz~b7w862-08^*zZ-D@|BhSIJ=z9w-5dE z`T{0(5ALQ&G^vF`b6pfj$A{yD zy?1{_ha-yGlB-A%34;MVB%s=~;&TEs^ =paA<^tFC@O+yXabfO?%vjL+NGMha$k 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

DKE7e>? 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�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 TS4^N33bwm)DzXLAM*jZ?CvQaM diff --git a/tests/conftest.py b/tests/conftest.py index 968d835..893cb83 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -28,7 +28,7 @@ # ============================================================================ # --------------------------------------------------------------------------- -# RNG +# RANDOM VARIABLE GENERATOR # --------------------------------------------------------------------------- From adcb9ebe4458dd7d3db51a74c54c6b5a99866457 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Thu, 14 Aug 2025 19:15:17 +0200 Subject: [PATCH 28/35] Refactor/pypi preparation (#14) * Reafctor for the folder schemas + defined import for public api * Defined public api, improved docs --- docs/api/components.md | 295 +++++++++++++ docs/api/enums.md | 197 +++++++++ docs/api/high-level.md | 299 ++++++++++++++ docs/api/settings.md | 200 +++++++++ docs/api/workload.md | 197 +++++++++ docs/dev-workflow-guide.md | 273 ++++++++++++ docs/dev_workflow_guide.md | 256 ------------ docs/fastsim_vision.md | 41 -- docs/{pybuilder.md => guides/builder.md} | 186 +++------ .../yaml-builder.md} | 63 ++- docs/index.md | 57 +++ .../metrics/overview.md} | 0 .../metrics/time-series-architecture.md} | 0 .../runtime-and-resources.md} | 0 .../simulation-input.md} | 8 +- .../simulation-runner.md} | 0 .../workload-samplers.md} | 2 +- docs/why-asyncflow.md | 93 +++++ examples/single_server_builder.png | Bin 0 -> 166241 bytes examples/single_server_pybuilder.png | Bin 152423 -> 162085 bytes examples/single_server_pybuilder.py | 30 +- examples/single_server_yml.png | Bin 160670 -> 166693 bytes src/asyncflow/__init__.py | 8 +- .../asyncflow_builder.py} | 20 +- src/asyncflow/components/__init__.py | 15 + src/asyncflow/config/__init__.py | 1 - src/asyncflow/enums/__init__.py | 23 ++ src/asyncflow/metrics/analyzer.py | 2 +- src/asyncflow/metrics/collector.py | 2 +- src/asyncflow/resources/__init__.py | 1 - src/asyncflow/resources/registry.py | 2 +- src/asyncflow/resources/server_containers.py | 4 +- src/asyncflow/runtime/__init__.py | 1 - src/asyncflow/runtime/actors/client.py | 2 +- src/asyncflow/runtime/actors/edge.py | 6 +- src/asyncflow/runtime/actors/load_balancer.py | 4 +- .../{helpers => routing}/lb_algorithms.py | 0 src/asyncflow/runtime/actors/rqs_generator.py | 8 +- src/asyncflow/runtime/actors/server.py | 4 +- src/asyncflow/runtime/simulation_runner.py | 10 +- src/asyncflow/samplers/common_helpers.py | 2 +- src/asyncflow/samplers/gaussian_poisson.py | 6 +- src/asyncflow/samplers/poisson_poisson.py | 6 +- src/asyncflow/schemas/common/__init__.py | 1 + .../random_variables.py} | 0 .../schemas/full_simulation_input.py | 15 - src/asyncflow/schemas/payload.py | 15 + .../simulation.py} | 0 .../system_topology/full_system_topology.py | 391 ------------------ src/asyncflow/schemas/topology/edges.py | 99 +++++ .../{system_topology => topology}/endpoint.py | 0 src/asyncflow/schemas/topology/graph.py | 159 +++++++ src/asyncflow/schemas/topology/nodes.py | 164 ++++++++ .../rqs_generator.py} | 4 +- src/asyncflow/settings/__init__.py | 6 + src/asyncflow/workload/__init__.py | 7 + tests/conftest.py | 20 +- tests/integration/minimal/conftest.py | 10 +- tests/integration/minimal/test_minimal.py | 2 +- .../payload/test_payload_invalid.py | 2 +- tests/unit/metrics/test_analyzer.py | 2 +- tests/unit/pybuilder/test_input_builder.py | 19 +- tests/unit/resources/test_registry.py | 6 +- .../unit/resources/test_server_containers.py | 2 +- tests/unit/runtime/actors/test_client.py | 4 +- tests/unit/runtime/actors/test_edge.py | 6 +- .../unit/runtime/actors/test_load_balancer.py | 2 +- .../unit/runtime/actors/test_rqs_generator.py | 12 +- tests/unit/runtime/actors/test_server.py | 6 +- tests/unit/runtime/test_simulation_runner.py | 2 +- tests/unit/samplers/test_gaussian_poisson.py | 18 +- tests/unit/samplers/test_poisson_poisson.py | 22 +- tests/unit/samplers/test_sampler_helper.py | 2 +- ...est_endpoint_input.py => test_endpoint.py} | 2 +- ...s_generator_input.py => test_generator.py} | 26 +- ...ull_topology_input.py => test_topology.py} | 10 +- 76 files changed, 2336 insertions(+), 1024 deletions(-) create mode 100644 docs/api/components.md create mode 100644 docs/api/enums.md create mode 100644 docs/api/high-level.md create mode 100644 docs/api/settings.md create mode 100644 docs/api/workload.md create mode 100644 docs/dev-workflow-guide.md delete mode 100644 docs/dev_workflow_guide.md delete mode 100644 docs/fastsim_vision.md rename docs/{pybuilder.md => guides/builder.md} (52%) rename docs/{yaml_builder.md => guides/yaml-builder.md} (85%) create mode 100644 docs/index.md rename docs/{fastsim-docs/metrics_to_measure.md => internals/metrics/overview.md} (100%) rename docs/{fastsim-docs/time_series_metric_architecture.md => internals/metrics/time-series-architecture.md} (100%) rename docs/{fastsim-docs/runtime_and_resources.md => internals/runtime-and-resources.md} (100%) rename docs/{fastsim-docs/simulation_input.md => internals/simulation-input.md} (98%) rename docs/{fastsim-docs/simulation_runner.md => internals/simulation-runner.md} (100%) rename docs/{fastsim-docs/requests_generator.md => internals/workload-samplers.md} (99%) create mode 100644 docs/why-asyncflow.md create mode 100644 examples/single_server_builder.png rename src/asyncflow/{pybuilder/input_builder.py => builder/asyncflow_builder.py} (87%) create mode 100644 src/asyncflow/components/__init__.py delete mode 100644 src/asyncflow/config/__init__.py create mode 100644 src/asyncflow/enums/__init__.py delete mode 100644 src/asyncflow/resources/__init__.py delete mode 100644 src/asyncflow/runtime/__init__.py rename src/asyncflow/runtime/actors/{helpers => routing}/lb_algorithms.py (100%) create mode 100644 src/asyncflow/schemas/common/__init__.py rename src/asyncflow/schemas/{random_variables_config.py => common/random_variables.py} (100%) delete mode 100644 src/asyncflow/schemas/full_simulation_input.py create mode 100644 src/asyncflow/schemas/payload.py rename src/asyncflow/schemas/{simulation_settings_input.py => settings/simulation.py} (100%) delete mode 100644 src/asyncflow/schemas/system_topology/full_system_topology.py create mode 100644 src/asyncflow/schemas/topology/edges.py rename src/asyncflow/schemas/{system_topology => topology}/endpoint.py (100%) create mode 100644 src/asyncflow/schemas/topology/graph.py create mode 100644 src/asyncflow/schemas/topology/nodes.py rename src/asyncflow/schemas/{rqs_generator_input.py => workload/rqs_generator.py} (95%) create mode 100644 src/asyncflow/settings/__init__.py create mode 100644 src/asyncflow/workload/__init__.py rename tests/unit/schemas/{test_endpoint_input.py => test_endpoint.py} (98%) rename tests/unit/schemas/{test_requests_generator_input.py => test_generator.py} (92%) rename tests/unit/schemas/{test_full_topology_input.py => test_topology.py} (97%) diff --git a/docs/api/components.md b/docs/api/components.md new file mode 100644 index 0000000..15f97c2 --- /dev/null +++ b/docs/api/components.md @@ -0,0 +1,295 @@ +# AsyncFlow — Public API Reference: `components` + +This page documents the **public topology components** you can import from +`asyncflow.components` to construct a simulation scenario in Python. +These classes are Pydantic models with strict validation and are the +**only pieces you need** to define the *structure* of your system: nodes +(client/servers/LB), endpoints (steps), and network edges. + +> The builder (`AsyncFlow`) will assemble these into the internal graph for you. +> You **do not** need to import internal graph classes. + +--- + +## Imports + +```python +from asyncflow.components import ( + Client, + Server, + ServerResources, + LoadBalancer, + Endpoint, + Edge, +) +# Optional enums (strings are also accepted): +from asyncflow.enums import Distribution +``` + +--- + +## Quick example + +```python +from asyncflow.components import ( + Client, Server, ServerResources, LoadBalancer, Endpoint, Edge +) + +# Nodes +client = Client(id="client-1") + +endpoint = Endpoint( + endpoint_name="/predict", + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], +) + +server = Server( + id="srv-1", + server_resources=ServerResources(cpu_cores=2, ram_mb=2048), + endpoints=[endpoint], +) + +lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1"}) + +# Edges (directed) +edges = [ + Edge( + id="gen-to-client", + source="rqs-1", # external sources allowed (e.g., generator id) + target="client-1", # targets must be declared nodes + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-to-lb", + source="client-1", + target="lb-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="lb-to-srv1", + source="lb-1", + target="srv-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="srv1-to-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), +] +``` + +You can then feed these to the `AsyncFlow` builder (not shown here) along with +workload and settings. + +--- + +## Component reference + +### `Client` + +```python +Client(id: str) +``` + +* Represents the client node. +* `type` is fixed internally to `"client"`. +* **Validation:** any non-standard `type` is rejected (guardrail). + +--- + +### `ServerResources` + +```python +ServerResources( + cpu_cores: int = 1, # ≥ 1 NOW MUST BE FIXED TO ONE + ram_mb: int = 1024, # ≥ 256 + db_connection_pool: int | None = None, +) +``` + +* Server capacity knobs used by the runtime (CPU tokens, RAM reservoir, optional DB pool). +* You may pass a **dict** instead of `ServerResources`; Pydantic will coerce it. + +**Bounds & defaults** + +* `cpu_cores ≥ 1` +* `ram_mb ≥ 256` +* `db_connection_pool` optional + +--- + +### `Endpoint` + +```python +Endpoint( + endpoint_name: str, # normalized to lowercase + steps: list[dict], # or Pydantic Step objects (dict is simpler) +) +``` + +Each step is a dict with **exactly one** operation: + +```python +{"kind": , "step_operation": { : }} +``` + +**Valid step kinds and operation keys** + +| Kind (enum string) | Operation dict (exactly 1 key) | Units / constraints | | +| --------------------- | -------------------------------- | ------------------- | ------- | +| `initial_parsing` | `{ "cpu_time": }` | seconds, > 0 | | +| `cpu_bound_operation` | `{ "cpu_time": }` | seconds, > 0 | | +| `ram` | \`{ "necessary\_ram": \ }\` | MB, > 0 | +| `io_task_spawn` | `{ "io_waiting_time": }` | seconds, > 0 | | +| `io_llm` | `{ "io_waiting_time": }` | seconds, > 0 | | +| `io_wait` | `{ "io_waiting_time": }` | seconds, > 0 | | +| `io_db` | `{ "io_waiting_time": }` | seconds, > 0 | | +| `io_cache` | `{ "io_waiting_time": }` | seconds, > 0 | | + +**Validation** + +* `endpoint_name` is lowercased automatically. +* `step_operation` must have **one and only one** entry. +* The operation **must match** the step kind (CPU ↔ `cpu_time`, RAM ↔ `necessary_ram`, IO ↔ `io_waiting_time`). +* All numeric values must be **strictly positive**. + +--- + +### `Server` + +```python +Server( + id: str, + server_resources: ServerResources | dict, + endpoints: list[Endpoint], +) +``` + +* Represents a server node hosting one or more endpoints. +* `type` is fixed internally to `"server"`. +* **Validation:** any non-standard `type` is rejected. + +--- + +### `LoadBalancer` (optional) + +```python +LoadBalancer( + id: str, + algorithms: Literal["round_robin", "least_connection"] = "round_robin", + server_covered: set[str] = set(), +) +``` + +* Declares a logical load balancer and the set of server IDs it can route to. +* **Graph-level rules** (checked when the payload is built): + + * `server_covered` must be a subset of declared server IDs. + * There must be an **edge from the LB to each covered server** (e.g., `lb-1 → srv-1`). + +--- + +### `Edge` + +```python +Edge( + id: str, + source: str, + target: str, + latency: dict | RVConfig, # recommend dict: {"mean": , "distribution": , "variance": } + edge_type: Literal["network_connection"] = "network_connection", + dropout_rate: float = 0.01, # in [0.0, 1.0] +) +``` + +* Directed link between two nodes. +* **Latency** is a random variable; most users pass a dict: + + * `mean: float` (required) + * `distribution: "poisson" | "normal" | "log_normal" | "exponential" | "uniform"` (default: `"poisson"`) + * `variance: float?` (for `normal`/`log_normal`, defaults to `mean` if omitted) + +**Validation** + +* `mean > 0` +* if provided, `variance ≥ 0` +* `dropout_rate ∈ [0.0, 1.0]` +* `source != target` + +**Graph-level rules** (enforced when the full payload is validated) + +* Every **target** must be a **declared node** (`client`, `server`, or `load_balancer`). +* **External IDs** (e.g., `"rqs-1"`) are allowed **only** as **sources**; they cannot appear as targets. +* **Unique edge IDs**. +* **No fan-out except LB**: only the load balancer is allowed to have multiple outgoing edges among declared nodes. + +--- + +## Type coercion & enums + +* You may pass strings for enums (`kind`, `distribution`, etc.); they will be validated against the allowed values. +* For `ServerResources` and `Edge.latency` you can pass dictionaries; Pydantic will coerce them to typed models. +* If you prefer, you can import and use the enums: + + ```python + from asyncflow.enums import Distribution + Edge(..., latency={"mean": 0.003, "distribution": Distribution.EXPONENTIAL}) + ``` + +--- + +## Best practices & pitfalls + +**Do** + +* Keep IDs unique across nodes of the same category and across edges. +* Ensure LB coverage and LB→server edges are in sync. +* Use small, measurable step values first; iterate once you see where queues and delays form. + +**Don’t** + +* Create multiple outgoing edges from non-LB nodes (graph validator will fail). +* Use zero/negative times or RAM (validators will raise). +* Target external IDs (only sources may be external). + +--- + +## Where these components fit + +You will typically combine these **components** with: + +* **workload** (`RqsGenerator`) from `asyncflow.workload` +* **settings** (`SimulationSettings`) from `asyncflow.settings` +* the **builder** (`AsyncFlow`) and **runner** (`SimulationRunner`) from the root package + +Example (wiring, abbreviated): + +```python +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.workload import RqsGenerator +from asyncflow.settings import SimulationSettings + +flow = ( + AsyncFlow() + .add_generator(RqsGenerator(...)) + .add_client(client) + .add_servers(server) + .add_edges(*edges) + .add_load_balancer(lb) # optional + .add_simulation_settings(SimulationSettings(...)) +) +payload = flow.build_payload() # validates graph-level rules +SimulationRunner(..., simulation_input=payload).run() +``` + +--- + +With these `components`, you can model any topology supported by AsyncFlow— +cleanly, type-checked, and with **clear, early** validation errors when something +is inconsistent. diff --git a/docs/api/enums.md b/docs/api/enums.md new file mode 100644 index 0000000..09aaeb6 --- /dev/null +++ b/docs/api/enums.md @@ -0,0 +1,197 @@ +# AsyncFlow — Public Enums API + +This page documents the **public, user-facing** enums exported from `asyncflow.enums`. These enums exist to remove “magic strings” from scenario code, offer IDE autocomplete, and make input validation more robust. Using them is optional — all Pydantic models still accept the corresponding string values — but recommended for Python users. + +```python +from asyncflow.enums import ( + Distribution, + LbAlgorithmsName, + SampledMetricName, + EventMetricName, + # advanced (optional, if you define steps in Python) + EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation, +) +``` + +> **Stability:** Values in these enums form part of the **public input contract**. They are semver-stable: new members may be added in minor releases, existing members won’t be renamed or removed except in a major release. + +--- + +## 1) Distribution + +Enumeration of probability distributions accepted by `RVConfig`. + +* `Distribution.POISSON` → `"poisson"` +* `Distribution.NORMAL` → `"normal"` +* `Distribution.LOG_NORMAL` → `"log_normal"` +* `Distribution.EXPONENTIAL` → `"exponential"` +* `Distribution.UNIFORM` → `"uniform"` + +**Used in:** `RVConfig` (e.g., workload users / rpm, edge latency). + +**Notes & validation:** + +* `mean` is required (coerced to float). +* For `NORMAL` and `LOG_NORMAL`, missing `variance` defaults to `mean`. +* For **edge latency** specifically, `mean > 0` and (if present) `variance ≥ 0`. + +**Example** + +```python +from asyncflow.enums import Distribution +from asyncflow.schemas.common.random_variables import RVConfig + +rv = RVConfig(mean=0.003, distribution=Distribution.EXPONENTIAL) +``` + +--- + +## 2) LbAlgorithmsName + +Load-balancing strategies available to the `LoadBalancer` node. + +* `LbAlgorithmsName.ROUND_ROBIN` → `"round_robin"` +* `LbAlgorithmsName.LEAST_CONNECTIONS` → `"least_connection"` + +**Used in:** `LoadBalancer(algorithms=...)`. + +**Example** + +```python +from asyncflow.enums import LbAlgorithmsName +from asyncflow.schemas.topology.nodes import LoadBalancer + +lb = LoadBalancer(id="lb-1", algorithms=LbAlgorithmsName.ROUND_ROBIN, server_covered={"srv-1", "srv-2"}) +``` + +--- + +## 3) SampledMetricName + +Time-series metrics collected at a fixed cadence (`sample_period_s`). + +* `READY_QUEUE_LEN` → `"ready_queue_len"` +* `EVENT_LOOP_IO_SLEEP` → `"event_loop_io_sleep"` +* `RAM_IN_USE` → `"ram_in_use"` +* `EDGE_CONCURRENT_CONNECTION` → `"edge_concurrent_connection"` + +**Used in:** `SimulationSettings(enabled_sample_metrics=...)`. + +**Example** + +```python +from asyncflow.enums import SampledMetricName +from asyncflow.schemas.settings.simulation import SimulationSettings + +settings = SimulationSettings( + total_simulation_time=300, + sample_period_s=0.01, + enabled_sample_metrics={ + SampledMetricName.READY_QUEUE_LEN, + SampledMetricName.RAM_IN_USE, + }, +) +``` + +--- + +## 4) EventMetricName + +Per-event metrics (not sampled). + +* `RQS_CLOCK` → `"rqs_clock"` +* `LLM_COST` → `"llm_cost"` (reserved for future accounting) + +**Used in:** `SimulationSettings(enabled_event_metrics=...)`. + +**Example** + +```python +from asyncflow.enums import EventMetricName +SimulationSettings(enabled_event_metrics={EventMetricName.RQS_CLOCK}) +``` + +--- + +## 5) (Advanced) Endpoint step enums + +You only need these if you create `Endpoint` steps **programmatically** in Python. In YAML you’ll write strings; both modes are supported. + +### 5.1 EndpointStepCPU + +CPU-bound step kinds: + +* `INITIAL_PARSING` → `"initial_parsing"` +* `CPU_BOUND_OPERATION` → `"cpu_bound_operation"` + +### 5.2 EndpointStepRAM + +RAM step kind: + +* `RAM` → `"ram"` + +### 5.3 EndpointStepIO + +I/O-bound step kinds: + +* `TASK_SPAWN` → `"io_task_spawn"` +* `LLM` → `"io_llm"` +* `WAIT` → `"io_wait"` +* `DB` → `"io_db"` +* `CACHE` → `"io_cache"` + +### 5.4 StepOperation + +Operation keys allowed inside `Step.step_operation`: + +* `CPU_TIME` → `"cpu_time"` (seconds, positive) +* `NECESSARY_RAM` → `"necessary_ram"` (MB, positive) +* `IO_WAITING_TIME` → `"io_waiting_time"` (seconds, positive) + +**Validation rules (enforced by the schema):** + +* Every `Step` must have **exactly one** operation key. +* The operation must **match** the step kind: + + * CPU step → `CPU_TIME` + * RAM step → `NECESSARY_RAM` + * I/O step → `IO_WAITING_TIME` + +**Example** + +```python +from asyncflow.enums import EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation +from asyncflow.schemas.topology.endpoint import Endpoint + +ep = Endpoint( + endpoint_name="/predict", + steps=[ + { "kind": EndpointStepRAM.RAM, "step_operation": { StepOperation.NECESSARY_RAM: 128 } }, + { "kind": EndpointStepCPU.INITIAL_PARSING, "step_operation": { StepOperation.CPU_TIME: 0.002 } }, + { "kind": EndpointStepIO.DB, "step_operation": { StepOperation.IO_WAITING_TIME: 0.012 } }, + ], +) +``` + +--- + +## Usage patterns & tips + +* **Strings vs Enums:** All models accept both. Enums help with IDE hints and prevent typos; strings keep YAML compact. Mix as you like. +* **Keep it public, not internal:** Only the enums above are considered public and stable. Internals like `SystemNodes`, `SystemEdges`, `ServerResourceName`, etc. are intentionally **not exported** (they may change). +* **Forward compatibility:** New enum members may appear in minor releases (e.g., a new `SampledMetricName`). Your existing configs remain valid; just opt in when you need them. + +--- + +## Quick Reference + +| Enum | Where it’s used | Members (strings) | +| ------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | +| `Distribution` | `RVConfig` | `poisson`, `normal`, `log_normal`, `exponential`, `uniform` | +| `LbAlgorithmsName` | `LoadBalancer.algorithms` | `round_robin`, `least_connection` | +| `SampledMetricName` | `SimulationSettings.enabled_sample_metrics` | `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection` | +| `EventMetricName` | `SimulationSettings.enabled_event_metrics` | `rqs_clock`, `llm_cost` | +| `EndpointStep*` | `Endpoint.steps[*].kind` (Python) | CPU: `initial_parsing`, `cpu_bound_operation`; RAM: `ram`; IO: `io_task_spawn`, `io_llm`, `io_wait`, `io_db`, `io_cache` | +| `StepOperation` | `Endpoint.steps[*].step_operation` | `cpu_time`, `necessary_ram`, `io_waiting_time` | + +--- diff --git a/docs/api/high-level.md b/docs/api/high-level.md new file mode 100644 index 0000000..65c3d24 --- /dev/null +++ b/docs/api/high-level.md @@ -0,0 +1,299 @@ +# AsyncFlow — High-Level API (`AsyncFlow`, `SimulationRunner`) + +This page explains how to programmatically **assemble a validated simulation payload** and **run** it, returning metrics and plots through the analyzer. + +* **Builder**: `AsyncFlow` – compose workload, topology, and settings into a single `SimulationPayload`. +* **Runner**: `SimulationRunner` – wire actors, start processes, collect metrics, and return a `ResultsAnalyzer`. + +--- + +## Imports + +```python +# High-level API +from asyncflow import AsyncFlow, SimulationRunner + +# Public leaf schemas (components & workload) +from asyncflow.components import Client, Server, Endpoint, Edge +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.settings import SimulationSettings +``` + +> These are the **only** imports end users need. Internals (actors, registries, etc.) remain private. + +--- + +## Quick start + +A minimal end-to-end example: + +```python +from __future__ import annotations +import simpy + +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.components import Client, Server, Endpoint, Edge +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.settings import SimulationSettings + +# 1) Workload +rqs = RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=50, # Poisson by default + # or Distribution.NORMAL with variance auto=mean + ), + avg_request_per_minute_per_user=RVConfig(mean=30), # MUST be Poisson + user_sampling_window=60, # seconds +) + +# 2) Topology components +client = Client(id="client-1") + +endpoint = Endpoint( + endpoint_name="/hello", + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], +) + +server = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[endpoint], +) + +edges = [ + Edge(id="gen-client", source="rqs-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="client-srv1", source="client-1", target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="srv1-client", source="srv-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), +] + +# 3) Settings (baseline sampled metrics are mandatory) +settings = SimulationSettings( + total_simulation_time=300, # seconds (≥ 5) + sample_period_s=0.01, # 0.001 ≤ value ≤ 0.1 + # enabled_sample_metrics and enabled_event_metrics: safe defaults already set +) + +# 4) Build (validates everything with Pydantic) +payload = ( + AsyncFlow() + .add_generator(rqs) + .add_client(client) + .add_servers(server) + .add_edges(*edges) + .add_simulation_settings(settings) + .build_payload() +) + +# 5) Run +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() + +# 6) Use the analyzer (examples) +print(results.get_latency_stats()) +ts, rps = results.get_throughput_series() +sampled = results.get_sampled_metrics() +``` + +--- + +## `AsyncFlow` — builder (public) + +`AsyncFlow` helps you construct a **self-consistent** `SimulationPayload` with fluent, chainable calls. Every piece you add is type-checked; the final `build_payload()` validates the full graph and settings. + +### API + +```python +class AsyncFlow: + def add_generator(self, rqs_generator: RqsGenerator) -> Self: ... + def add_client(self, client: Client) -> Self: ... + def add_servers(self, *servers: Server) -> Self: ... + def add_edges(self, *edges: Edge) -> Self: ... + def add_simulation_settings(self, sim_settings: SimulationSettings) -> Self: ... + def add_load_balancer(self, load_balancer: LoadBalancer) -> Self: ... + def build_payload(self) -> SimulationPayload: ... +``` + +### Validation performed by `build_payload()` + +On build, the composed payload is validated by the Pydantic schemas: + +1. **Presence** + + * Generator, client, **≥ 1 server**, **≥ 1 edge**, settings are required. + +2. **Unique IDs** + + * Duplicate server IDs or edge IDs are rejected. + +3. **Node types** + + * Fixed enums: `client`, `server`, `load_balancer`; validated on each node. + +4. **Edge integrity** + + * Every edge **target** must be a declared node ID. + * **External IDs** (e.g., the generator id) are allowed **only as sources**. + * **No self-loops** (`source != target`). + +5. **Load balancer sanity** (if present) + + * `server_covered ⊆ declared servers`. + * There must be an **edge from the LB to every covered server**. + +6. **(Engine rule)** “No fan-out except LB” + + * Only the LB may have multiple outgoing edges among declared nodes. + +7. **Latency RV constraints (edges)** + + * `latency.mean > 0`, and if `variance` exists, `variance ≥ 0`. + +If a rule fails, a **descriptive `ValueError`** points at the offending entity/field. + +### Typical errors you might see + +* Missing parts: + `ValueError: The generator input must be instantiated before the simulation` +* Type mis-match: + `TypeError: All the instances must be of the type Server` +* Graph violations: + `ValueError: Edge client-1->srv-X references unknown target node 'srv-X'` +* LB coverage: + `ValueError: Servers ['srv-2'] are covered by LB 'lb-1' but have no outgoing edge from it.` + +--- + +## `SimulationRunner` — orchestrator (public) + +`SimulationRunner` takes a validated `SimulationPayload`, **instantiates all runtimes**, **wires** edges to their target mailboxes, **starts** every actor, **collects** sampled metrics, and advances the SimPy clock. + +### API + +```python +class SimulationRunner: + def __init__(self, *, env: simpy.Environment, simulation_input: SimulationPayload) -> None: ... + def run(self) -> ResultsAnalyzer: ... + @classmethod + def from_yaml(cls, *, env: simpy.Environment, yaml_path: str | Path) -> "SimulationRunner": ... +``` + +* **`env`**: your SimPy environment (you control its lifetime). + +* **`simulation_input`**: the payload returned by `AsyncFlow.build_payload()` (or parsed from YAML). + +* **`run()`**: + + * Builds and wires all runtime actors (`RqsGeneratorRuntime`, `ClientRuntime`, `ServerRuntime`, `LoadBalancerRuntime`, `EdgeRuntime`). + * Starts the **SampledMetricCollector** (baseline sampled metrics are mandatory and collected automatically). + * Runs until `SimulationSettings.total_simulation_time`. + * Returns a **`ResultsAnalyzer`** with helpers like: + + * `get_latency_stats()` + * `get_throughput_series()` + * `get_sampled_metrics()` + * plotting helpers (`plot_latency_distribution`, `plot_throughput`, …). + +* **`from_yaml`**: convenience constructor for loading a full payload from a YAML file and running it immediately. + +### Determinism & RNG + +* The runner uses `numpy.random.default_rng()` internally. + Seeding is not yet exposed as a public parameter; exact reproducibility across runs is **not guaranteed** in this version. + +--- + +## Extended example: with Load Balancer + +```python +from asyncflow.components import Client, Server, Endpoint, Edge +from asyncflow.components import LoadBalancer +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.settings import SimulationSettings +import simpy + +client = Client(id="client-1") + +srv1 = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[Endpoint(endpoint_name="/api", steps=[{"kind":"ram","step_operation":{"necessary_ram":64}}])] +) +srv2 = Server( + id="srv-2", + server_resources={"cpu_cores": 2, "ram_mb": 2048}, + endpoints=[Endpoint(endpoint_name="/api", steps=[{"kind":"io_db","step_operation":{"io_waiting_time":0.012}}])] +) + +lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1","srv-2"}) + +edges = [ + Edge(id="gen-client", source="rqs-1", target="client-1", latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="client-lb", source="client-1", target="lb-1", latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="lb-srv1", source="lb-1", target="srv-1", latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="lb-srv2", source="lb-1", target="srv-2", latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="srv1-client", source="srv-1", target="client-1", latency={"mean":0.003,"distribution":"exponential"}), + Edge(id="srv2-client", source="srv-2", target="client-1", latency={"mean":0.003,"distribution":"exponential"}), +] + +payload = ( + AsyncFlow() + .add_generator(RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=120), + avg_request_per_minute_per_user=RVConfig(mean=20), + user_sampling_window=60, + )) + .add_client(client) + .add_servers(srv1, srv2) + .add_load_balancer(lb) + .add_edges(*edges) + .add_simulation_settings(SimulationSettings(total_simulation_time=600, sample_period_s=0.02)) + .build_payload() +) + +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() +``` + +--- + +## Performance tips + +* **Sampling cost** grows with `total_simulation_time / sample_period_s × (#sampled metrics × entities)`. + For long runs, consider a larger `sample_period_s` (e.g., `0.02–0.05`) to reduce memory while keeping the baseline metrics intact. + +* **Validation first**: prefer failing early by letting `build_payload()` validate everything before the runner starts. + +--- + +## Error handling (what throws) + +* **Type errors** on builder inputs (`TypeError`) when passing the wrong class to `add_*`. +* **Validation errors** (`ValueError`) on `build_payload()` if the graph is inconsistent (unknown targets, duplicates, LB edges missing, self-loops, illegal fan-out, latency rules, etc.). +* **Runtime wiring errors** (`TypeError`) if an unknown runtime target/source type appears while wiring edges (should not occur with a validated payload). + +--- + +## YAML path (alternative) + +You can construct the payload in YAML (see “YAML Input Guide”), then: + +```python +import simpy +from asyncflow import SimulationRunner + +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path="scenario.yml") +results = runner.run() +``` + +--- + diff --git a/docs/api/settings.md b/docs/api/settings.md new file mode 100644 index 0000000..2970596 --- /dev/null +++ b/docs/api/settings.md @@ -0,0 +1,200 @@ + +# AsyncFlow — Public API Reference: `settings` + +This page documents the **public settings schema** you import from: + +```python +from asyncflow.settings import SimulationSettings +``` + +These settings control **simulation duration**, **sampling cadence**, and **which metrics are collected**. The model is validated with Pydantic and ships with safe defaults. + +> **Contract note** +> The four **baseline sampled metrics** are **mandatory** in the current release: +> +> * `ready_queue_len` +> * `event_loop_io_sleep` +> * `ram_in_use` +> * `edge_concurrent_connection` +> Future metrics may be opt-in; these four must remain enabled. + +--- + +## Imports + +```python +from asyncflow.settings import SimulationSettings + +# Optional: use enums instead of strings (recommended for IDE/type-checking) +from asyncflow.enums import SampledMetricName, EventMetricName +``` + +--- + +## Quick start + +```python +from asyncflow.settings import SimulationSettings +from asyncflow.enums import SampledMetricName as S, EventMetricName as E + +settings = SimulationSettings( + total_simulation_time=300, # seconds (≥ 5) + sample_period_s=0.01, # seconds, 0.001 ≤ value ≤ 0.1 + # Baseline sampled metrics are mandatory (may include more in future): + enabled_sample_metrics={S.READY_QUEUE_LEN, + S.EVENT_LOOP_IO_SLEEP, + S.RAM_IN_USE, + S.EDGE_CONCURRENT_CONNECTION}, + # Event metrics (RQS_CLOCK is the default/mandatory one today): + enabled_event_metrics={E.RQS_CLOCK}, +) +``` + +Pass the object to the builder: + +```python +from asyncflow import AsyncFlow + +payload = ( + AsyncFlow() + # … add workload, topology, edges … + .add_simulation_settings(settings) + .build_payload() +) +``` + +--- + +## Schema reference + +### `SimulationSettings` + +```python +SimulationSettings( + total_simulation_time: int = 3600, # ≥ 5 + sample_period_s: float = 0.01, # 0.001 ≤ value ≤ 0.1 + enabled_sample_metrics: set[SampledMetricName] = { + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + }, + enabled_event_metrics: set[EventMetricName] = {"rqs_clock"}, +) +``` + +**Fields** + +* **`total_simulation_time`** *(int, default `3600`)* + Simulation horizon in **seconds**. **Validation:** `≥ 5`. + +* **`sample_period_s`** *(float, default `0.01`)* + Sampling cadence for time-series metrics (seconds). + **Validation:** `0.001 ≤ sample_period_s ≤ 0.1`. + **Trade-off:** lower ⇒ higher temporal resolution but more samples/memory. + +* **`enabled_sample_metrics`** *(set of enums/strings; default = baseline 4)* + **Must include at least the baseline set** shown above. You can pass enum + values or the corresponding strings. + +* **`enabled_event_metrics`** *(set of enums/strings; default `{"rqs_clock"}`)* + Per-event KPIs (not tied to `sample_period_s`). `rqs_clock` is required today; + `llm_cost` is reserved for future use. + +--- + +## Supported metric enums + +You may pass **strings** or import the enums (recommended). + +### Sampled (time-series) + +* `ready_queue_len` — event-loop ready-queue length +* `event_loop_io_sleep` — time spent waiting on I/O in the loop +* `ram_in_use` — MB of RAM in use (per server) +* `edge_concurrent_connection` — concurrent connections per edge + +```python +from asyncflow.enums import SampledMetricName as S +baseline = {S.READY_QUEUE_LEN, S.EVENT_LOOP_IO_SLEEP, S.RAM_IN_USE, S.EDGE_CONCURRENT_CONNECTION} +``` + +### Event (per-event) + +* `rqs_clock` — start/end timestamps for each request (basis for latency) +* `llm_cost` — reserved for future cost accounting + +```python +from asyncflow.enums import EventMetricName as E +SimulationSettings(enabled_event_metrics={E.RQS_CLOCK}) +``` + +--- + +## Practical presets + +* **Lean but compliant (fast inner-loop dev)** + Keep baseline metrics; increase the sampling period to reduce cost: + + ```python + SimulationSettings( + total_simulation_time=10, + sample_period_s=0.05, # fewer samples + # enabled_* use defaults with mandatory baseline & rqs_clock + ) + ``` + +* **High-resolution debugging (short runs)** + + ```python + SimulationSettings( + total_simulation_time=60, + sample_period_s=0.002, # finer resolution + ) + ``` + +* **Long scenarios (memory-friendly)** + + ```python + SimulationSettings( + total_simulation_time=1800, + sample_period_s=0.05, # fewer samples over long runs + ) + ``` + +--- + +## YAML ⇄ Python mapping + +| YAML (`sim_settings`) | Python (`SimulationSettings`) | +| -------------------------- | ------------------------------ | +| `total_simulation_time` | `total_simulation_time` | +| `sample_period_s` | `sample_period_s` | +| `enabled_sample_metrics[]` | `enabled_sample_metrics={...}` | +| `enabled_event_metrics[]` | `enabled_event_metrics={...}` | + +Strings in YAML map to the same enum names used by Python. + +--- + +## Validation & guarantees + +* `total_simulation_time ≥ 5` +* `0.001 ≤ sample_period_s ≤ 0.1` +* `enabled_sample_metrics ⊇ {ready_queue_len, event_loop_io_sleep, ram_in_use, edge_concurrent_connection}` +* `enabled_event_metrics` must include `rqs_clock` (current contract) +* Enum names are part of the public contract (stable; new values may be added in minor versions) + +--- + +## Tips & pitfalls + +* **Memory/CPU budgeting**: total samples per metric ≈ + `total_simulation_time / sample_period_s`. Long runs with very small + sampling periods produce large arrays. +* **Use enums for safety**: strings work, but enums enable IDE completion and mypy checks. +* **Forward compatibility**: additional sampled/event metrics may become available; the four baseline sampled metrics remain mandatory for the engine’s collectors. + +--- + +This reflects your current implementation: baseline sampled metrics are **required**; event metrics currently require `rqs_clock`; and sampling bounds match the `SamplePeriods` constants. diff --git a/docs/api/workload.md b/docs/api/workload.md new file mode 100644 index 0000000..c560a65 --- /dev/null +++ b/docs/api/workload.md @@ -0,0 +1,197 @@ +# AsyncFlow — Public Workload API + +This page documents the **workload models** exported from: + +```python +from asyncflow.workload import RqsGenerator, RVConfig +``` + +Use these to describe **how traffic is generated** (active users, per-user RPM, and the re-sampling window). The workload is independent from your topology and settings and plugs into the builder or payload directly. + +> **Stability:** This is part of the public API. Fields and enum values are semver-stable (new options may be added in minor releases; breaking changes only in a major). + +--- + +## Quick start + +```python +from asyncflow.workload import RqsGenerator, RVConfig + +rqs = RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=100, distribution="poisson"), # or "normal" + avg_request_per_minute_per_user=RVConfig(mean=20, distribution="poisson"), + user_sampling_window=60, # seconds, re-sample active users every 60s +) + +# … then compose with the builder +from asyncflow.builder.asyncflow_builder import AsyncFlow +payload = (AsyncFlow() + .add_generator(rqs) + # .add_client(...).add_servers(...).add_edges(...).add_simulation_settings(...) + .build_payload()) +``` + +--- + +## `RqsGenerator` (workload root) + +```python +class RqsGenerator(BaseModel): + id: str + type: SystemNodes = SystemNodes.GENERATOR # fixed + avg_active_users: RVConfig # Poisson or Normal + avg_request_per_minute_per_user: RVConfig # Poisson (required) + user_sampling_window: int = 60 # seconds, bounds [1, 120] +``` + +### Field reference + +| Field | Type | Allowed / Bounds | Description | +| --------------------------------- | --------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------ | +| `id` | `str` | — | Identifier used by edges (e.g., `source="rqs-1"`). | +| `type` | enum (fixed) | `generator` | Constant; not user-set. | +| `avg_active_users` | `RVConfig` | **Distribution**: `poisson` or `normal` | Random variable for active concurrent users. If `normal`, variance is auto-filled (see `RVConfig`). | +| `avg_request_per_minute_per_user` | `RVConfig` | **Distribution**: **must be** `poisson` | Per-user rate (RPM). Enforced to Poisson by validator. | +| `user_sampling_window` | `int` (seconds) | `1 ≤ value ≤ 120` | How often to re-sample `avg_active_users`. Larger windows → slower drift; smaller windows → more volatility. | + +> Units: RPM = requests per **minute**; times are in **seconds**. + +--- + +## `RVConfig` (random variables) + +```python +class RVConfig(BaseModel): + mean: float + distribution: Distribution = "poisson" + variance: float | None = None +``` + +### Behavior & validation + +* **`mean`** is required and coerced to `float`. (Generic numeric check; positivity is **contextual**. For example, edge latency enforces `mean > 0`, while workloads accept `mean ≥ 0` and rely on samplers to truncate at 0 when needed.) +* **`distribution`** defaults to `"poisson"`. +* **Variance auto-fill:** if `distribution` is `"normal"` or `"log_normal"` **and** `variance` is omitted, it is set to `variance = mean`. + +### Supported distributions + +* `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"`, `"uniform"` + (For **workload**: `avg_active_users` → Poisson/Normal; `avg_request_per_minute_per_user` → **Poisson only**.) + +--- + +## How the workload is sampled (engine semantics) + +AsyncFlow provides **joint samplers** for the two main cases: + +1. **Poisson–Poisson** (`avg_active_users ~ Poisson`, `rpm ~ Poisson`) + +* Every `user_sampling_window` seconds, draw users: + `U ~ Poisson(mean_users)`. +* Aggregate rate: `Λ = U * (rpm_per_user / 60)` (requests/second). +* Within the window, inter-arrival gaps are exponential: + `Δt ~ Exponential(Λ)` (via inverse CDF). +* If `U == 0`, no arrivals until the next window. + +2. **Gaussian–Poisson** (`avg_active_users ~ Normal`, `rpm ~ Poisson`) + +* Draw users with **truncation at 0** (negative draws become 0): + `U ~ max(N(mean, variance), 0)`. +* Then same steps as above: `Λ = U * (rpm_per_user / 60)`, `Δt ~ Exponential(Λ)`. + +**Implications of `user_sampling_window`:** + +* Smaller windows → more frequent changes in `U` (bursty arrivals). +* Larger windows → steadier rate within each window, fewer rate shifts. + +--- + +## Examples + +### A. Steady mid-load (Poisson–Poisson) + +```python +rqs = RqsGenerator( + id="steady", + avg_active_users=RVConfig(mean=80, distribution="poisson"), + avg_request_per_minute_per_user=RVConfig(mean=15, distribution="poisson"), + user_sampling_window=60, +) +``` + +### B. Bursty users (Gaussian–Poisson) + +```python +rqs = RqsGenerator( + id="bursty", + avg_active_users=RVConfig(mean=50, distribution="normal", variance=200), # bigger var → burstier + avg_request_per_minute_per_user=RVConfig(mean=18, distribution="poisson"), + user_sampling_window=15, # faster re-sampling → faster drift +) +``` + +### C. Tiny smoke test + +```python +rqs = RqsGenerator( + id="smoke", + avg_active_users=RVConfig(mean=1, distribution="poisson"), + avg_request_per_minute_per_user=RVConfig(mean=2, distribution="poisson"), + user_sampling_window=30, +) +``` + +--- + +## YAML / JSON equivalence + +If you configure via YAML/JSON, the equivalent block is: + +```yaml +rqs_input: + id: rqs-1 + avg_active_users: + mean: 100 + distribution: poisson # or normal + # variance: 100 # optional; auto=mean if normal/log_normal + avg_request_per_minute_per_user: + mean: 20 + distribution: poisson # must be poisson + user_sampling_window: 60 # [1..120] seconds +``` + +--- + +## Validation & error messages (what you can expect) + +* `avg_request_per_minute_per_user.distribution != poisson` + → `ValueError("At the moment the variable avg request must be Poisson")` +* `avg_active_users.distribution` not in `{poisson, normal}` + → `ValueError("At the moment the variable active user must be Poisson or Gaussian")` +* Non-numeric `mean` in any `RVConfig` + → `ValueError("mean must be a number (int or float)")` +* `user_sampling_window` outside `[1, 120]` + → Pydantic range validation error with clear bounds in the message. + +> Note: Positivity for means is enforced **contextually**. For workload, negative draws are handled by the samplers (e.g., truncated Normal). For edge latency, positivity is enforced at the edge model level. + +--- + +## Common pitfalls & tips + +* **Using Normal without variance:** If you set `distribution="normal"` and omit `variance`, it auto-fills to `variance=mean`. Set it explicitly if you want heavier or lighter variance than the default. +* **Confusing units:** RPM is **per minute**, not per second. The engine converts internally. +* **Over-reactive windows:** Very small `user_sampling_window` (e.g., `1–5s`) makes the rate jumpy; this is fine for “bursty” scenarios but can be noisy. +* **Zero arrivals:** If a window samples `U=0`, you’ll get no arrivals until the next window; this is expected. + +--- + +## Interplay with Settings & Metrics + +* The workload **does not** depend on the sampling cadence of time-series metrics (`SimulationSettings.sample_period_s`). Sampling controls **observability**, not arrivals. +* **Baseline sampled metrics are mandatory** in the current release (ready-queue length, I/O sleep, RAM, edge concurrency). Future metrics can be opt-in. + +--- + +With `RqsGenerator` + `RVConfig` you can describe steady, bursty, or sparse loads with a few lines—then reuse the same topology and settings to compare how architecture choices behave under different traffic profiles. diff --git a/docs/dev-workflow-guide.md b/docs/dev-workflow-guide.md new file mode 100644 index 0000000..ff0e3ce --- /dev/null +++ b/docs/dev-workflow-guide.md @@ -0,0 +1,273 @@ +# **Development Workflow & Architecture Guide** + +This document describes the development workflow, repository architecture, and branching strategy for **AsyncFlow** +--- + +## 1) Repository Layout + +### 1.1 Project tree (backend) + +``` +AsyncFlow-backend/ +├─ examples/ # runnable examples (YAML & Python) +│ └─ data/ +├─ scripts/ # helper bash scripts (lint, quality, etc.) +│ └─ quality-check.sh +├─ docs/ # product & technical docs +├─ tests/ # unit & integration tests +│ ├─ unit/ +│ └─ integration/ +├─ src/ +│ └─ asyncflow/ # Python package (library) +│ ├─ __init__.py # public "high-level" facade (re-exports) +│ ├─ builder/ +│ │ └─ asyncflow_builder.py # internal builder implementation +│ ├─ components/ # PUBLIC FACADE: leaf Pydantic components +│ │ └─ __init__.py # (barrel: re-exports Client, Server, Endpoint, Edge) +│ ├─ config/ +│ │ ├─ constants.py # enums/constants (source of truth) +│ │ └─ plot_constants.py +│ ├─ enums/ # PUBLIC FACADE: selected enums +│ │ └─ __init__.py # (barrel: re-exports Distribution, SampledMetricName, …) +│ ├─ metrics/ +│ │ ├─ analyzer.py # results post-processing +│ │ ├─ collector.py # sampling collectors +│ │ ├─ client.py +│ │ ├─ edge.py +│ │ └─ server.py +│ ├─ resources/ +│ │ ├─ registry.py +│ │ └─ server_containers.py +│ ├─ runtime/ +│ │ ├─ simulation_runner.py # engine entry-point +│ │ ├─ rqs_state.py +│ │ ├─ actors/ # INTERNAL: Client/Server/Edge/Generator actors +│ │ └─ routing/ +│ │ └─ lb_algorithms.py +│ ├─ samplers/ +│ │ ├─ poisson_poisson.py +│ │ ├─ gaussian_poisson.py +│ │ └─ common_helpers.py +│ ├─ schemas/ # INTERNAL: full Pydantic schema impls +│ │ ├─ payload.py +│ │ ├─ common/ +│ │ │ └─ random_variables.py +│ │ ├─ settings/ +│ │ │ └─ simulation.py +│ │ ├─ topology/ +│ │ │ ├─ edges.py +│ │ │ ├─ endpoint.py +│ │ │ ├─ graph.py +│ │ │ └─ nodes.py +│ │ └─ workload/ +│ │ └─ rqs_generator.py +│ ├─ settings/ # PUBLIC FACADE: SimulationSettings +│ │ └─ __init__.py +│ └─ workload/ # PUBLIC FACADE: RqsGenerator +│ └─ __init__.py +├─ poetry.lock +├─ pyproject.toml +└─ README.md +``` + +**Public API surface (what you guarantee as stable):** + +* High-level: + + ```py + from asyncflow import AsyncFlow, SimulationRunner + ``` +* Components: + + ```py + from asyncflow.components import Client, Server, Endpoint, Edge + ``` +* Workload & Settings: + + ```py + from asyncflow.workload import RqsGenerator + from asyncflow.settings import SimulationSettings + ``` +* Enums: + + ```py + from asyncflow.enums import Distribution, SampledMetricName, EventMetricName, LbAlgorithmsName + ``` + +> Everything under `asyncflow.schemas/`, `asyncflow.runtime/actors/`, `asyncflow.builder/` is **internal** (implementation details). The facades re-export only what users should import. + +### 1.2 What each top-level area does + +| Area | Purpose | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| **builder/** | Internal implementation of the pybuilder used by `AsyncFlow`. Users shouldn’t import from here directly. | +| **components/** | **Public facade** for *leaf* Pydantic models used in payloads: `Client`, `Server`, `Endpoint`, `Edge`. | +| **config/** | Constants & enums source-of-truth (kept internal; only *selected* enums are re-exported via `asyncflow.enums`). | +| **enums/** | **Public facade** re-exporting the enums that appear in public payloads (`Distribution`, `SampledMetricName`, `EventMetricName`, …). | +| **metrics/** | Post-processing & visualization support (analyzer & collectors). | +| **resources/** | Runtime SimPy resource wiring (CPU/RAM containers, registries). | +| **runtime/** | The simulation engine entry-point (`SimulationRunner`), request lifecycle, and internal actors. | +| **samplers/** | Random-variable samplers for the generator and steps. | +| **schemas/** | Full Pydantic schema implementation and validation rules (internal). | +| **settings/** | **Public facade** re-exporting `SimulationSettings`. | +| **workload/** | **Public facade** re-exporting `RqsGenerator`. | + +--- + +## 2) Branching Strategy: Git Flow (+ `refactor/*`) + +We use **Git Flow** with an extra branch family for clean refactors. + +### Diagram + +```mermaid +--- +title: Git Flow (with refactor/*) +--- +gitGraph + commit id: "Initial commit" + branch develop + checkout develop + commit id: "Setup Project" + + branch feature/user-authentication + checkout feature/user-authentication + commit id: "feat: Add login form" + commit id: "feat: Add form validation" + checkout develop + merge feature/user-authentication + + branch refactor/performance-cleanup + checkout refactor/performance-cleanup + commit id: "refactor: simplify hot path" + commit id: "refactor: remove dead code" + checkout develop + merge refactor/performance-cleanup + + branch release/v1.0.0 + checkout release/v1.0.0 + commit id: "fix: Pre-release bug fixes" tag: "v1.0.0" + checkout main + merge release/v1.0.0 + checkout develop + merge release/v1.0.0 + + checkout main + branch hotfix/critical-login-bug + checkout hotfix/critical-login-bug + commit id: "fix: Critical production bug" tag: "v1.0.1" + checkout main + merge hotfix/critical-login-bug + checkout develop + merge hotfix/critical-login-bug +``` + +### Branch families + +* **main** – production-ready, tagged releases only (no direct commits). +* **develop** – integration branch; base for `feature/*` and `refactor/*`. +* **feature/**\* – user-visible features (new endpoints/behavior, DB changes). +* **refactor/**\* – **no new features**; internal changes, performance, renames, file moves, debt trimming. Use `refactor:` commit prefix. +* **release/**\* – freeze, harden, docs; merge into `main` (tag) and back into `develop`. +* **hotfix/**\* – urgent production fixes; branch off `main` tag; merge into `main` (tag) and `develop`. + +**When to pick which:** + +* New behavior or external contract → `feature/*` +* Internal cleanup only → `refactor/*` +* Ship a version → `release/*` +* Patch production now → `hotfix/*` + +--- + +## 3) CI/CD Pipeline + +A layered pipeline (GitHub Actions recommended) mirrors the branching model. + +### 3.1 CI on PRs to `develop` (feature/refactor) + +**Quick Suite** (fast, no external services): + +* **Ruff** (or Black/isort/Flake8) → style/lint +* **mypy** → type checking +* **pytest** unit-only: `pytest -m "not integration"` + +### 3.2 CI on push to `develop` + +**Full Suite** (slower; with services): + +* Full tests, including `@pytest.mark.integration` +* Spin up **PostgreSQL**/**Redis** if required by integration tests +* Build multi-stage Docker image & smoke test +* Optionally build docs (mkdocs) to catch docstring regressions + +### 3.3 CI on `release/*` + +* Always run **Full Suite** +* Build and publish versioned images/artifacts +* Generate release notes/changelog + +### 3.4 CI on `hotfix/*` + +* Run **Full Suite** +* Tag patch release on merge to `main` +* Merge back to `develop` + +> Refactors should be **behavior-preserving**. If a refactor touches hot paths, add micro-benchmarks or targeted integration tests and consider running the Full Suite pre-merge. + +--- + +## 4) Quality Gates & Conventions + +* **Style & Lint**: Ruff (or Black + isort + Flake8). No violations. +* **Types**: mypy clean. +* **Tests**: + + * Unit tests for new/refactored code paths + * Integration tests for end-to-end behavior +* **Commits**: Conventional commits (`feat:`, `fix:`, `refactor:`, `docs:`, `test:`, `chore:`). +* **PRs**: Review required; refactors must include rationale and scope. +* **Docs**: Update `docs/` and public API references when you touch public facades. + +--- + +## 5) Public API & Stability Contract + +Only **facade modules** are considered public and stable: + +* High-level: + + ```py + from asyncflow import AsyncFlow, SimulationRunner + ``` +* Components: + + ```py + from asyncflow.components import Client, Server, Endpoint, Edge + ``` +* Workload & Settings: + + ```py + from asyncflow.workload import RqsGenerator + from asyncflow.settings import SimulationSettings + ``` +* Enums: + + ```py + from asyncflow.enums import Distribution, SampledMetricName, EventMetricName, LbAlgorithmsName + ``` + +Everything else—`schemas/`, `runtime/actors/`, `builder/`, `samplers/`, `resources/`—is **internal** and can change without notice. Use **SemVer** for releases; any change to the public facades that breaks compatibility requires a **major** bump. + +--- + +## 6) Developer Commands (Poetry) + +* Install: `poetry install` +* Lint/format: `bash scripts/quality-check.sh` (or your Ruff/Black commands) +* Test (unit only): `pytest -m "not integration"` +* Test (full): `pytest` +* Run example: `python examples/single_server_pybuilder.py` + +--- + diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md deleted file mode 100644 index 8c1974c..0000000 --- a/docs/dev_workflow_guide.md +++ /dev/null @@ -1,256 +0,0 @@ -# **Development Workflow & Architecture Guide** - -This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the AsyncFlow project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. - - -## 1. Repository Layout - -### 1.1 Backend Service (`AsyncFlow-backend`) - -The repository hosts the entire FastAPI backend for AsyncFlow. -Its job is to expose the REST API, run the discrete-event simulation, talk to the database, and provide metrics. - -``` -AsyncFlow-backend/ -├── example/ # examples of working simulations -│ ├── data -├── scripts/ # helper bash scripts (lint, dev-startup, …) -│ └── quality-check.sh -├── docs/ # project vision & low-level docs -│ └── AsyncFlow-documentation/ -├── tests/ # unit & integration tests -│ ├── unit/ -│ └── integration/ -├── src/ # application code lives here -│ └── app/ -│ ├── config/ # Pydantic Settings + constants -│ ├── metrics/ # logic to compute/aggregate simulation KPIs -│ ├── resources/ # SimPy resource registry (CPU/RAM containers, etc.) -│ ├── runtime/ # simulation core -│ │ ├── rqs_state.py # RequestState & Hop -│ │ ├── simulation_runner.py # logic to initialize the whole simulation -│ │ └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator -│ ├── pybuilder/ # Pythonic way to build the simulation payload -│ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) -│ ├── schemas/ # Pydantic input/output models -├── poetry.lock -├── pyproject.toml -└── README.md -``` - -> Note: If your package name under `src/` is `asyncflow/` (instead of `app/`), the structure is identical—only the package folder name changes. - -### What each top-level directory in `src/app` does - -| Directory | Purpose | -| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`config/`** | Centralised configuration layer. Contains Pydantic `BaseSettings` classes for reading environment variables and constants/enums used across the simulation engine. | -| **`metrics/`** | Post-processing and analytics. Aggregates raw simulation traces into KPIs such as latency percentiles, throughput, resource utilisation, and other performance metrics. | -| **`resources/`** | Runtime resource registry for simulated hardware components (e.g., SimPy `Container`s for CPU and RAM). Decouples resource management from actor behaviour. | -| **`runtime/`** | Core simulation engine. Orchestrates SimPy execution, maintains request state, and wires together simulation components. Includes: | -| | - **`rqs_state.py`** — Defines `RequestState` and `Hop` for tracking request lifecycle. | -| | - **`simulation_runner.py`** — Entry point for initialising and running simulations. | -| | - **`actors/`** — SimPy actor classes representing system components (`RqsGenerator`, `Client`, `Server`, `Edge`) and their behaviour. | -| **`pybuilder/`** | Pythonic builder to programmatically construct validated simulation payloads (alternative to YAML). | -| **`samplers/`** | Random-variable samplers for stochastic simulation. Supports Poisson, Normal, and mixed distributions for modelling inter-arrival times and service steps. | -| **`schemas/`** | Pydantic models for input/output validation and serialisation. Includes scenario definitions, topology graphs, simulation settings, and results payloads. | - ---- - -### Other Top-Level Directories - -| Directory | Purpose | -| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`example/`** | Ready-to-run simulation scenarios and example configurations. Includes `data/` with YAML definitions and scripts to demonstrate engine usage. | -| **`scripts/`** | Utility shell scripts for development workflow, linting, formatting, and local startup (`quality-check.sh`, etc.). | -| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`AsyncFlow-documentation/`). | -| **`tests/`** | Automated test suite, split into **unit** and **integration** tests to verify correctness of both individual components and end-to-end scenarios. | - ---- - -## 2. Branching Strategy: Git Flow - -To manage code development and releases in a structured manner, we use the **Git Flow** branching model—with an additional **refactor** branch type for non-feature refactoring work. - -### Git Flow Workflow Diagram - -```mermaid ---- -title: Git Flow (with refactor/*) ---- - -gitGraph - commit id: "Initial commit" - branch develop - checkout develop - commit id: "Setup Project" - - %% feature branch - branch feature/user-authentication - checkout feature/user-authentication - commit id: "feat: Add login form" - commit id: "feat: Add form validation" - checkout develop - merge feature/user-authentication - - %% refactor branch (no new features, code cleanup/improvements) - branch refactor/performance-cleanup - checkout refactor/performance-cleanup - commit id: "refactor: simplify hot path" - commit id: "refactor: remove dead code" - checkout develop - merge refactor/performance-cleanup - - %% release branch - branch release/v1.0.0 - checkout release/v1.0.0 - commit id: "fix: Pre-release bug fixes" tag: "v1.0.0" - checkout main - merge release/v1.0.0 - checkout develop - merge release/v1.0.0 - - %% hotfix branch - checkout main - branch hotfix/critical-login-bug - checkout hotfix/critical-login-bug - commit id: "fix: Critical production bug" tag: "v1.0.1" - checkout main - merge hotfix/critical-login-bug - checkout develop - merge hotfix/critical-login-bug -``` - ---- - -### Git Flow Explained - -This workflow is built upon two long-lived branches and several temporary, supporting branches. - -#### Main Branches - -1. **`main`** - **Purpose**: Production-ready, stable code. Every commit on `main` represents an official release. - **Rules**: Never commit directly to `main`. It only receives merges from `release/*` and `hotfix/*`. Each merge should be **tagged** (e.g., `v1.0.0`). - -1. **`develop`** - **Purpose**: The main integration branch for ongoing development. It contains all completed and tested changes planned for the next release. - **Rules**: Base for `feature/*` and `refactor/*` branches. Reflects the most up-to-date development state. - -#### Supporting Branches - -3. **`feature/*`** (e.g., `feature/user-authentication`) - **Purpose**: Develop a new, specific feature in isolation. - **Lifecycle**: - - 1. Branched off **`develop`**. - 1. When complete, open a **Pull Request (PR)** back into **`develop`**. - 3. Delete the branch after merge. - -3. **`refactor/*`** (e.g., `refactor/performance-cleanup`) **← new** - **Purpose**: Perform **non-functional code changes** (no new features), such as internal restructurings, performance optimisations, reducing technical debt, renaming, file moves, or dependency hygiene. - **Rules**: - - * Must **not** introduce user-visible features or breaking API/DB changes. - * Prefer commit prefix `refactor:`; avoid `feat:`. - * Keep changes scoped and well-described to simplify review. - **Lifecycle**: - - 1. Branched off **`develop`**. - 1. Open a **PR** back into **`develop`** (same review gates as features). - 3. Delete the branch after merge. - -5. **`release/*`** (e.g., `release/v1.1.0`) - **Purpose**: Prepare a production release—final bug fixes, docs, and last-minute tests. The feature set is frozen here. - **Lifecycle**: - - 1. Branched off **`develop`** when feature-complete. - 1. Merge into **`main`** (tag version) and back into **`develop`**. - 3. Delete after merges. - -6. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) - **Purpose**: Quickly patch a critical bug in production. - **Lifecycle**: - - 1. Branched off **`main`** (from a specific tag). - 1. Merge into **`main`** (tag a patch version, e.g., `v1.0.1`) **and** into **`develop`**. - 3. Delete after merges. - -**When to choose which branch?** - -* **New behavior / endpoints / DB migrations** → `feature/*` -* **Internal code improvements only** → `refactor/*` -* **Release prep** → `release/*` -* **Production emergency** → `hotfix/*` - ---- - -## 3. Continuous Integration / Continuous Delivery (CI/CD) Pipeline - -A robust CI/CD pipeline guarantees that every change is automatically validated, packaged, and—when appropriate—promoted to the next environment. Our pipeline is built with **GitHub Actions** and mirrors the branching model. - -We start with the CI part related to pushes and PRs in the backend service. - -### 3.1 CI for project-backend on `develop` - -#### 3.1.1 Goals - -* **Fast feedback** – linting, type-checking, and unit tests finish quickly for every Pull Request. -* **Confidence in integration** – migrations, integration tests, and Docker smoke-tests run on every push to `develop`. -* **Deployment safety** – only artifacts from a green pipeline can be released/deployed. -* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI. - -#### 3.1.1 Pipeline Layers - -* **Quick Suite (PR to `develop`)** - *Runs in seconds; no external services or containers.* - - * Black, isort, Flake8 (or Ruff if adopted) - * mypy static type-checking - * Unit tests only (`pytest -m "not integration"`) - -* **Full Suite (push to `develop`)** - *Runs in a few minutes; includes real services and Docker.* - - * Full test suite, including `@pytest.mark.integration` tests - * Database migrations (PostgreSQL) against a disposable instance - * Redis available for tests if required - * Build multi-stage Docker image and run a quick smoke test - -### 3.1 CI for `feature/*` and `refactor/*` - -* **On PR to `develop`**: run the **Quick Suite** (lint, type-checking, unit tests). -* **Optional (recommended for large changes)**: allow a manual or scheduled **Full Suite** run for the branch to catch integration issues early. -* **On merge to `develop`**: the **Full Suite** runs (as described above). - -> `refactor/*` branches should maintain **zero behavior change**. If a refactor has the potential to alter behavior (e.g., performance-sensitive code), add targeted tests and consider a manual Full Suite run before merge. - -### 3.3 CI for `release/*` - -* Always run the **Full Suite**. -* Build and publish versioned artifacts/images to the registry with the release tag. -* Prepare release notes and changelog generation. - -### 3.3 CI for `hotfix/*` - -* Run the **Full Suite** against the hotfix branch. -* Tag the patch release on merge to `main` and propagate the merge back to `develop`. - ---- - -## 4. Quality Gates & Conventions - -* **Static Analysis**: mypy (no new type errors). -* **Style**: Black/Flake8/isort or Ruff; no lint violations. -* **Tests**: - - * Unit tests for new logic or refactor touch points. - * Integration tests for cross-layer behavior. -* **Commits**: Conventional commits (`feat:`, `fix:`, `refactor:`, `docs:`, `test:`, `chore:` …). -* **Code Review**: PRs must be reviewed and approved; refactors must include rationale in the PR description (what changed, why safe). -* **Documentation**: Update `README`, `docs/`, and API docs when applicable. - ---- - - -By following this workflow—now with the **refactor** branch type—you keep feature development cleanly separated from codebase improvements, reduce merge friction, and maintain a predictable, high-quality delivery pipeline. diff --git a/docs/fastsim_vision.md b/docs/fastsim_vision.md deleted file mode 100644 index bf5b88a..0000000 --- a/docs/fastsim_vision.md +++ /dev/null @@ -1,41 +0,0 @@ -## 1 Why AsyncFlow? - -FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **AsyncFlow** fills that gap by becoming a **digital twin** of your actual service: - -* It **replays** your FastAPI + Uvicorn event-loop behavior in SimPy, generating exactly the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. -* It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. -* It **outputs** the very metrics you’d scrape in production (p50/p95/p99 latency, ready-queue lag, current & max concurrency, throughput, cost per LLM call), but entirely offline, in seconds. - -With AsyncFlow you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. - -**Outcome:** data-driven capacity planning, early performance tuning, and far fewer “surprises” once you hit production. - ---- - -## 2 Project Goals - -| # | Goal | Practical Outcome | -| - | ------------------------- | ------------------------------------------------------------------------ | -| 1 | **Pre-production sizing** | Know core-count, pool-size, replica-count to hit SLA. | -| 2 | **Scenario lab** | Explore traffic models, endpoint mixes, latency distributions, RTT, etc. | -| 3 | **Twin metrics** | Produce the same metrics you’ll scrape in prod (latency, queue, CPU). | -| 4 | **Rapid iteration** | One YAML/JSON config or REST call → full report. | -| 5 | **Educational value** | Visualise how GIL lag, queue length, concurrency react to load. | - ---- - -## 3 Who benefits & why (detailed) - -| Audience | Pain-point solved | AsyncFlow value | -| ------------------------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| **Backend engineers** | Unsure if 4 vCPU container survives a marketing spike | Run *what-if* load, tweak CPU cores / pool size, get p95 & max-concurrency before merging. | -| **DevOps / SRE** | Guesswork in capacity planning; cost of over-provisioning | Simulate 1 → N replicas, autoscaler thresholds, DB-pool size; pick the cheapest config meeting SLA. | -| **ML / LLM product teams** | LLM inference cost & latency hard to predict | Model the LLM step with a price + latency distribution; estimate \$/req and GPU batch gains without real GPU. | -| **Educators / Trainers** | Students struggle to “see” event-loop internals | Visualise GIL ready-queue lag, CPU vs I/O steps, effect of blocking code—perfect for live demos and labs. | -| **Consultants / Architects** | Need a quick PoC of new designs for clients | Drop endpoint definitions in YAML and demo throughput / latency under projected load in minutes. | -| **Open-source community** | Lacks a lightweight Python simulator for ASGI workloads | Extensible codebase; easy to plug in new resources (rate-limit, cache) or traffic models (spike, uniform ramp). | -| **System-design interviewees** | Hard to quantify trade-offs in whiteboard interviews | Prototype real-time metrics—queue lengths, concurrency, latency distributions—to demonstrate in interviews how your design scales and where bottlenecks lie. | - ---- - -**Bottom-line:** AsyncFlow turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. diff --git a/docs/pybuilder.md b/docs/guides/builder.md similarity index 52% rename from docs/pybuilder.md rename to docs/guides/builder.md index 19b7b24..e90fe22 100644 --- a/docs/pybuilder.md +++ b/docs/guides/builder.md @@ -1,17 +1,16 @@ -# AsyncFlow – Programmatic Input Guide (pybuilder) +# AsyncFlow – Programmatic Input Guide (builder) This guide shows how to **build the full simulation input in Python** using the -`AsyncFlow` builder (the “pybuilder”), with the same precision and validation -guarantees as the YAML flow. You’ll see **all components, valid values, units, -constraints, and how validation is enforced**. +`AsyncFlow` builder, with the same precision and validation guarantees as the YAML flow. +You’ll see **all components, valid values, units, constraints, and how validation is enforced**. Under the hood, the builder assembles a single `SimulationPayload`: ```python SimulationPayload( - rqs_input=RqsGeneratorInput(...), # traffic generator (workload) - topology_graph=TopologyGraph(...), # system architecture as a graph - sim_settings=SimulationSettings(...), # global settings and metrics + rqs_input=RqsGenerator(...), # traffic generator (workload) + topology_graph=TopologyGraph(...), # system architecture as a graph + sim_settings=SimulationSettings(...), # global settings and metrics ) ``` @@ -28,18 +27,15 @@ from __future__ import annotations import simpy -from asyncflow.pybuilder.input_builder import AsyncFlow -from asyncflow.runtime.simulation_runner import SimulationRunner -from asyncflow.schemas.full_simulation_input import SimulationPayload -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.endpoint import Endpoint -from asyncflow.schemas.system_topology.full_system_topology import ( - Client, Edge, Server, +# Public, user-facing API +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.components import ( + RqsGenerator, SimulationSettings, Endpoint, Client, Server, Edge ) +from asyncflow.schemas.payload import SimulationPayload # optional, for typing # 1) Workload -generator = RqsGeneratorInput( +generator = RqsGenerator( id="rqs-1", avg_active_users={"mean": 50, "distribution": "poisson"}, avg_request_per_minute_per_user={"mean": 30, "distribution": "poisson"}, @@ -50,11 +46,10 @@ generator = RqsGeneratorInput( client = Client(id="client-1") endpoint = Endpoint( endpoint_name="/hello", - probability=1.0, # per-endpoint weight on this server steps=[ - {"kind": "ram", "step_operation": {"necessary_ram": 32}}, - {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, - {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, ], ) server = Server( @@ -103,8 +98,9 @@ payload: SimulationPayload = ( AsyncFlow() .add_generator(generator) .add_client(client) - .add_servers(server) - .add_edges(*edges) + .add_servers(server) # varargs; supports multiple + .add_edges(*edges) # varargs; supports multiple + # .add_load_balancer(lb) # optional .add_simulation_settings(settings) .build_payload() ) @@ -138,8 +134,7 @@ dictionary that Pydantic converts into an `RVConfig`: * `mean` is **required** and numeric; coerced to `float`. * If `distribution` is `"normal"` or `"log_normal"` and `variance` is absent, it defaults to **`variance = mean`**. -* For **edge latency** (see §3.3): **`mean > 0`** and, if provided, - **`variance ≥ 0`**. +* For **edge latency**: **`mean > 0`** and, if provided, **`variance ≥ 0`**. **Units** @@ -148,30 +143,30 @@ dictionary that Pydantic converts into an `RVConfig`: --- -## 2) Workload: `RqsGeneratorInput` +## 2) Workload: `RqsGenerator` ```python -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.components import RqsGenerator -generator = RqsGeneratorInput( +generator = RqsGenerator( id="rqs-1", avg_active_users={ "mean": 100, - "distribution": "poisson", # or "normal" + "distribution": "poisson", # or "normal" # "variance": , # optional; auto=mean if "normal" }, avg_request_per_minute_per_user={ "mean": 20, - "distribution": "poisson", # must be poisson in current samplers + "distribution": "poisson", # must be poisson in current samplers }, - user_sampling_window=60, # [1 .. 120] seconds + user_sampling_window=60, # [1 .. 120] seconds ) ``` **Semantics** -* `avg_active_users`: active users as a random variable (Poisson or Normal). -* `avg_request_per_minute_per_user`: per-user RPM (Poisson). +* `avg_active_users`: active users as a random variable (**Poisson** or **Normal**). +* `avg_request_per_minute_per_user`: per-user RPM (**Poisson** only). * `user_sampling_window`: re-sample active users every N seconds. --- @@ -184,7 +179,7 @@ LB) and edges (network links). ### 3.1 Client ```python -from asyncflow.schemas.system_topology.full_system_topology import Client +from asyncflow.components import Client client = Client(id="client-1") # type is fixed to 'client' ``` @@ -192,25 +187,23 @@ client = Client(id="client-1") # type is fixed to 'client' ### 3.2 Server & Endpoints ```python -from asyncflow.schemas.system_topology.endpoint import Endpoint -from asyncflow.schemas.system_topology.full_system_topology import Server +from asyncflow.components import Endpoint, Server endpoint = Endpoint( - endpoint_name="/api", # normalized to lowercase internally - probability=1.0, # endpoint selection weight within the server + endpoint_name="/api", # normalized to lowercase internally steps=[ - {"kind": "ram", "step_operation": {"necessary_ram": 64}}, + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, {"kind": "cpu_bound_operation", "step_operation": {"cpu_time": 0.004}}, - {"kind": "io_db", "step_operation": {"io_waiting_time": 0.012}}, + {"kind": "io_db", "step_operation": {"io_waiting_time": 0.012}}, ], ) server = Server( - id="srv-1", # type fixed to 'server' + id="srv-1", # type fixed to 'server' server_resources={ "cpu_cores": 2, # int ≥ 1 "ram_mb": 2048, # int ≥ 256 - "db_connection_pool": None, # optional future-use + "db_connection_pool": None, # optional }, endpoints=[endpoint], ) @@ -237,13 +230,14 @@ server = Server( **Runtime semantics (high level)** * RAM is reserved before CPU, then released at the end. -* CPU tokens acquired lazily for consecutive CPU steps; released on I/O. +* CPU tokens are acquired for CPU-bound segments; released when switching to I/O. * I/O waits **do not** hold a CPU core. ### 3.3 Load Balancer (optional) ```python -from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.schemas.topology.nodes import LoadBalancer # internal type +# (Use only if you build the graph manually. AsyncFlow builder hides the graph.) lb = LoadBalancer( id="lb-1", @@ -260,16 +254,15 @@ lb = LoadBalancer( ### 3.4 Edges ```python -from asyncflow.schemas.system_topology.full_system_topology import Edge +from asyncflow.components import Edge edge = Edge( id="client-to-srv1", source="client-1", # may be external only for sources target="srv-1", # MUST be a declared node latency={"mean": 0.003, "distribution": "exponential"}, - probability=1.0, # optional [0..1] - edge_type="network_connection", # current default/only - dropout_rate=0.01, # optional [0..1] + # edge_type defaults to "network_connection" + # dropout_rate defaults to 0.01 (0.0 .. 1.0) ) ``` @@ -278,17 +271,14 @@ edge = Edge( * `source`: can be an **external** ID for entry points (e.g., `"rqs-1"`). * `target`: **must** be a declared node (`client`, `server`, `load_balancer`). * `latency`: random variable; **`mean > 0`**, `variance ≥ 0` (if provided). -* `probability`: used when a node has multiple outgoing edges (fan-out). - If your code enforces “no fan-out except LB”, do **not** create multiple - outgoing edges from nodes other than the LB. -* `dropout_rate`: per-request/packet drop probability on this link. +* **Fan-out rule**: the model enforces **“no fan-out except LB”**—i.e., only the load balancer may have multiple outgoing edges. --- ## 4) Global Settings: `SimulationSettings` ```python -from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.components import SimulationSettings settings = SimulationSettings( total_simulation_time=600, # seconds, default 3600, min 5 @@ -316,16 +306,16 @@ settings = SimulationSettings( ## 5) Building the Payload with `AsyncFlow` ```python -from asyncflow.pybuilder.input_builder import AsyncFlow -from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow import AsyncFlow +from asyncflow.schemas.payload import SimulationPayload # optional typing flow = ( AsyncFlow() .add_generator(generator) .add_client(client) - .add_servers(server) # varargs; supports multiple - .add_edges(*edges) # varargs; supports multiple - # .add_load_balancer(lb) # optional + .add_servers(server) # varargs + .add_edges(*edges) # varargs + # .add_load_balancer(lb) .add_simulation_settings(settings) ) @@ -337,10 +327,9 @@ payload: SimulationPayload = flow.build_payload() 1. **Presence**: generator, client, ≥1 server, ≥1 edge, settings. 2. **Unique IDs**: servers and edges have unique IDs. 3. **Node types**: fixed enums: `client`, `server`, `load_balancer`. -4. **Edge integrity**: every target is a declared node; external IDs allowed only as sources; no self-loops (`source != target`). -5. **Load balancer sanity**: `server_covered ⊆ declared_servers` and there is an edge from the LB to **each** covered server. -6. **(Optional in your codebase)** “No fan-out except LB” validator: multiple - outgoing edges only allowed for the LB. +4. **Edge integrity**: every target is a declared node; external IDs allowed only as sources; no self-loops. +5. **Load balancer sanity**: `server_covered ⊆ declared_servers` **and** there is an edge from the LB to **each** covered server. +6. **No fan-out except LB**: only the LB may have multiple outgoing edges. If any rule is violated, a **descriptive `ValueError`** pinpoints the problem. @@ -350,7 +339,7 @@ If any rule is violated, a **descriptive `ValueError`** pinpoints the problem. ```python import simpy -from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow import SimulationRunner env = simpy.Environment() runner = SimulationRunner(env=env, simulation_input=payload) @@ -372,64 +361,15 @@ results.plot_throughput(axes[0, 1]) results.plot_server_queues(axes[1, 0]) results.plot_ram_usage(axes[1, 1]) fig.tight_layout() -fig.savefig("single_server_pybuilder.png") +fig.savefig("single_server_builder.png") ``` --- -## 7) Builder vs YAML: Field Mapping - -| YAML path | Builder (Python) | -| --------------------------------------------- | ---------------------------------------------------------------- | -| `rqs_input.id` | `RqsGeneratorInput(id=...)` | -| `rqs_input.avg_active_users.*` | `RqsGeneratorInput(avg_active_users={...})` | -| `rqs_input.avg_request_per_minute_per_user.*` | `RqsGeneratorInput(avg_request_per_minute_per_user={...})` | -| `rqs_input.user_sampling_window` | `RqsGeneratorInput(user_sampling_window=...)` | -| `topology_graph.nodes.client.id` | `Client(id=...)` | -| `topology_graph.nodes.servers[*]` | `Server(id=..., server_resources={...}, endpoints=[...])` | -| `endpoint.endpoint_name` | `Endpoint(endpoint_name=...)` | -| `endpoint.steps[*]` | `Endpoint(steps=[{"kind": "...","step_operation": {...}}, ...])` | -| `topology_graph.nodes.load_balancer.*` | `LoadBalancer(id=..., algorithms=..., server_covered={...})` | -| `topology_graph.edges[*]` | `Edge(id=..., source=..., target=..., latency={...}, ...)` | -| `sim_settings.*` | `SimulationSettings(...)` | +## 7) Enums, Units & Conventions (Cheat Sheet) ---- - -## 8) Common Pitfalls & How to Avoid Them - -* **Mismatched step operations** - A CPU step must use `cpu_time`; an I/O step must use `io_waiting_time`; a RAM - step must use `necessary_ram`. Exactly **one** key per step. - -* **Edge target must be a declared node** - `source` can be external (e.g., `"rqs-1"`), but **no external ID** may ever - appear as a `target`. - -* **Load balancer coverage without edges** - If the LB covers `[srv-1, srv-2]`, you **must** add edges `lb→srv-1` and - `lb→srv-2`. - -* **Latency RV rules on edges** - `mean` must be **> 0**; if `variance` is present, it must be **≥ 0**. - -* **Fan-out rules** - If your codebase enforces “no fan-out except LB”, do not create multiple - outgoing edges from non-LB nodes. If you do allow it, set `probability` - weights so outgoing probabilities per source sum to \~1.0 (or ensure a single - edge per source). - -* **Sampling too coarse** - Large `sample_period_s` may miss short spikes. Lower it to capture bursts - (at the cost of larger time series). - ---- - -## 9) Enums, Units & Conventions (Cheat Sheet) - -* **Distributions**: `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"`, - `"uniform"` -* **Node types**: fixed internally to: `generator`, `server`, `client`, - `load_balancer` +* **Distributions**: `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"`, `"uniform"` +* **Node types**: fixed internally to `generator`, `server`, `client`, `load_balancer` * **Edge type**: `network_connection` * **LB algorithms**: `"round_robin"`, `"least_connection"` * **Step kinds** @@ -437,22 +377,14 @@ fig.savefig("single_server_pybuilder.png") RAM: `"ram"` I/O: `"io_task_spawn"`, `"io_llm"`, `"io_wait"`, `"io_db"`, `"io_cache"` * **Step operation keys**: `cpu_time`, `io_waiting_time`, `necessary_ram` -* **Sampled metrics**: `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, - `edge_concurrent_connection` +* **Sampled metrics**: `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection` * **Event metrics**: `rqs_clock` (and `llm_cost` reserved for future use) **Units & ranges** -* **Time**: seconds (`cpu_time`, `io_waiting_time`, edge latency means/variance, - `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **Time**: seconds (`cpu_time`, `io_waiting_time`, latencies, `total_simulation_time`, `sample_period_s`, `user_sampling_window`) * **RAM**: megabytes (`ram_mb`, `necessary_ram`) * **Rates**: requests/minute (`avg_request_per_minute_per_user.mean`) -* **Probabilities**: `[0.0, 1.0]` (`probability`, `dropout_rate`) -* **Bounds**: `total_simulation_time ≥ 5`, `sample_period_s ∈ [0.001, 0.1]`, - `cpu_cores ≥ 1`, `ram_mb ≥ 256`, numeric step values > 0 - ---- +* **Probabilities**: `[0.0, 1.0]` (`dropout_rate`) +* **Bounds**: `total_simulation_time ≥ 5`, `sample_period_s ∈ [0.001, 0.1]`, `cpu_cores ≥ 1`, `ram_mb ≥ 256`, numeric step values > 0 -With these patterns, you can build any topology that the YAML supports—**fully -programmatically**, with the same strong validation and clear errors on invalid -configurations. diff --git a/docs/yaml_builder.md b/docs/guides/yaml-builder.md similarity index 85% rename from docs/yaml_builder.md rename to docs/guides/yaml-builder.md index f3d22e3..113b879 100644 --- a/docs/yaml_builder.md +++ b/docs/guides/yaml-builder.md @@ -64,14 +64,12 @@ rqs_input: ### Semantics * **`avg_active_users`**: expected concurrent users (a random variable). - - * Allowed distributions: **Poisson** or **Normal**. + Allowed distributions: **Poisson** or **Normal**. * **`avg_request_per_minute_per_user`**: per-user request rate (RPM). - - * Must be **Poisson**.\* + Must be **Poisson**.\* * **`user_sampling_window`**: every N seconds the generator re-samples the active user count. -\* This reflects current sampler support (Poisson–Poisson and Gaussian–Poisson). +\* Current joint-sampler support covers Poisson–Poisson and Gaussian–Poisson. --- @@ -103,7 +101,6 @@ topology_graph: source: target: # must be a declared node latency: { mean: , distribution: , variance: } - probability: <0..1> # default 1.0 edge_type: network_connection # (enum; current default/only) dropout_rate: <0..1> # default 0.01 ``` @@ -137,7 +134,7 @@ client: * `cpu_cores`: number of worker “core tokens” available for CPU-bound step execution. * `ram_mb`: total available RAM (MB) tracked as a reservoir; steps reserve then release. -* `db_connection_pool`: optional capacity bound for DB-like steps (future-use; declared here for forward compatibility). +* `db_connection_pool`: optional capacity bound for DB-like steps (future-use). #### Load Balancer (optional) @@ -171,11 +168,11 @@ Each step must declare **exactly one** operation (`step_operation`) whose key ma **I/O-bound** (all use `io_waiting_time` as the operation key) -* `io_task_spawn` (spawns a background task, returns immediately) -* `io_llm` (LLM inference call) -* `io_wait` (generic wait, non-blocking) -* `io_db` (DB roundtrip) -* `io_cache` (cache access) +* `io_task_spawn` (spawns a background task, returns immediately) +* `io_llm` (LLM inference call) +* `io_wait` (generic wait, non-blocking) +* `io_db` (DB roundtrip) +* `io_cache` (cache access) #### Operation keys (enum `StepOperation`) @@ -223,7 +220,6 @@ endpoints: mean: 0.003 distribution: exponential # variance optional; if normal/log_normal and missing → set to mean - probability: 1.0 # optional [0..1] edge_type: network_connection dropout_rate: 0.01 # optional [0..1] ``` @@ -233,8 +229,7 @@ endpoints: * **`source`** can be an external entry point (e.g., `rqs-1`) for inbound edges. * **`target`** must always reference a declared node: client, server, or LB. * **`latency`** is a random variable; **`mean > 0`**, **`variance ≥ 0`** (if provided). -* **`probability`** is used when multiple outgoing edges exist from a node. -* **`dropout_rate`** models probabilistic packet/request loss on the link. +* **Fan-out rule**: only the **load balancer** may have multiple outgoing edges. --- @@ -270,21 +265,29 @@ AsyncFlow validates the entire payload. Key checks include: * All server IDs are unique. * Edge IDs are unique. + 2. **Node Types** * `type` fields on nodes are fixed to: `client`, `server`, `load_balancer`. + 3. **Edge referential integrity** * Every **target** is a declared node ID. * **External IDs** are allowed **only** as **sources**. If an ID appears as an external source, it must **never** appear as a target anywhere. + 4. **No self-loops** * `source != target` for every edge. + 5. **Load balancer sanity** * `server_covered` is a subset of declared servers. * There is an **edge from the LB to every covered server**. +6. **No fan-out except LB** + + * Only the load balancer may have multiple outgoing edges in the declared node set. + If any rule is violated, the simulator raises a descriptive error. --- @@ -384,9 +387,9 @@ topology_graph: latency: { mean: 0.002, distribution: exponential } } - { id: lb-srv1, source: lb-1, target: srv-1, - latency: { mean: 0.002, distribution: exponential }, probability: 0.5 } + latency: { mean: 0.002, distribution: exponential } } - { id: lb-srv2, source: lb-1, target: srv-2, - latency: { mean: 0.002, distribution: exponential }, probability: 0.5 } + latency: { mean: 0.002, distribution: exponential } } - { id: srv1-client, source: srv-1, target: client-1, latency: { mean: 0.003, distribution: exponential } } @@ -400,26 +403,7 @@ sim_settings: enabled_event_metrics: [ rqs_clock ] ``` -## 7) Common Pitfalls & How to Avoid Them - -* **Mismatched step operations** - A CPU step must use `cpu_time`; an I/O step must use `io_waiting_time`; a RAM step must use `necessary_ram`. The validator enforces **exactly one** key. - -* **Edge targets must be declared nodes** - `source` can be external (e.g., `rqs-1`), but **no external ID** may ever appear as a **target**. - -* **Load balancer coverage without edges** - If the LB declares `server_covered: [srv-1, srv-2]`, you must also add edges `lb→srv-1` and `lb→srv-2`. - -* **Latency RV rules on edges** - For edge latency, `mean` must be **> 0**; if `variance` is present, it must be **≥ 0**. - -* **Sampling too coarse** - If `sample_period_s` is large, short spikes in queues may be missed. Lower it (e.g., `0.005`) to capture fine-grained bursts—at the cost of larger time-series. - ---- - -## 8) Quick Reference (Enums) +## 7) Quick Reference (Enums) * **Distributions**: `poisson`, `normal`, `log_normal`, `exponential`, `uniform` * **Node types**: `generator`, `server`, `client`, `load_balancer` (fixed by model) @@ -435,14 +419,13 @@ sim_settings: --- -## 9) Units & Conventions +## 8) Units & Conventions * **Time**: seconds (`cpu_time`, `io_waiting_time`, latencies, `total_simulation_time`, `sample_period_s`, `user_sampling_window`) * **RAM**: megabytes (`ram_mb`, `necessary_ram`) * **Rates**: requests/minute (`avg_request_per_minute_per_user.mean`) -* **Probabilities**: `[0.0, 1.0]` (`probability`, `dropout_rate`) +* **Probabilities**: `[0.0, 1.0]` (`dropout_rate`) * **IDs**: strings; must be **unique** per category (servers, edges, LB). --- -If you stick to these rules and examples, your YAML will parse cleanly and the simulation will run with a self-consistent, strongly-validated model. diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..651a0ee --- /dev/null +++ b/docs/index.md @@ -0,0 +1,57 @@ +Here’s an updated, list-style `index.md` (in English) **without any Tutorials section** and with a clear pointer to the math details in the workload samplers. + +--- + +# AsyncFlow Documentation + +AsyncFlow is a discrete-event simulator for Python async backends (FastAPI/Uvicorn–style). It builds a **digital twin** of your service—traffic, topology, and resources—so you can measure latency, throughput, queueing, RAM, and more **before** you deploy. + +> ⚠️ The package README with `pip install` & a Quickstart will land after the first PyPI release. + +--- + + +## Public API (stable surface) + +* **[High-Level API](api/high-level.md)** — The two entry points you’ll use most: `AsyncFlow` (builder) and `SimulationRunner` (orchestrator). +* **[Components](api/components.md)** — Public Pydantic models for topology: `Client`, `Server`, `Endpoint`, `Edge`, `LoadBalancer`, `ServerResources`. +* **[Workload](api/workload.md)** — Traffic inputs: `RqsGenerator` and `RVConfig` (random variables). +* **[Settings](api/settings.md)** — Global controls: `SimulationSettings` (duration, sampling cadence, metrics). +* **[Enums](api/enums.md)** — Optional importable enums: distributions, step kinds/ops, metric names, node/edge types, LB algorithms. + +--- + +## How-to Guides + +* **[Builder Guide](guides/builder.md)** — Programmatically assemble a `SimulationPayload` in Python with validation and examples. +* **[YAML Input Guide](guides/yaml-builder.md)** — Author scenarios in YAML: exact schema, units, constraints, runnable samples. + +--- + +## Internals (design & rationale) + +> Prefer formal underpinnings? The **Workload Samplers** section includes mathematical details (compound Poisson–Poisson and Normal–Poisson processes, inverse-CDF gaps, truncated Gaussians). + +* **[Simulation Input (contract)](internals/simulation-input.md)** — The complete `SimulationPayload` schema and all validation guarantees (graph integrity, step coherence, etc.). +* **[Simulation Runner](internals/simulation-runner.md)** — Orchestrator design; build → wire → start → run flow; sequence diagrams; extensibility hooks. +* **[Runtime & Resources](internals/runtime-and-resources.md)** — How CPU/RAM/DB are modeled with SimPy containers; decoupling of runtime logic and resources. +* **Metrics** + + * **[Time-Series Architecture](internals/metrics/time-series-architecture.md)** — Registry → runtime state → collector pipeline; why the `if key in …` guard keeps extensibility with zero hot-path cost. +* **[Workload Samplers (math)](internals/workload-samplers.md)** — Formalization of traffic generators: windowed user resampling, rate construction $\Lambda = U \cdot \text{RPM}/60$, exponential inter-arrival via inverse-CDF, latency RV constraints. + +--- + +## Useful mental model + +Every run boils down to this validated input: + +```python +SimulationPayload( + rqs_input=RqsGenerator(...), # workload + topology_graph=TopologyGraph(...), # nodes & edges + sim_settings=SimulationSettings(...), +) +``` + +Build it (via **Builder** or **YAML**) and hand it to `SimulationRunner` to execute and analyze. diff --git a/docs/fastsim-docs/metrics_to_measure.md b/docs/internals/metrics/overview.md similarity index 100% rename from docs/fastsim-docs/metrics_to_measure.md rename to docs/internals/metrics/overview.md diff --git a/docs/fastsim-docs/time_series_metric_architecture.md b/docs/internals/metrics/time-series-architecture.md similarity index 100% rename from docs/fastsim-docs/time_series_metric_architecture.md rename to docs/internals/metrics/time-series-architecture.md diff --git a/docs/fastsim-docs/runtime_and_resources.md b/docs/internals/runtime-and-resources.md similarity index 100% rename from docs/fastsim-docs/runtime_and_resources.md rename to docs/internals/runtime-and-resources.md diff --git a/docs/fastsim-docs/simulation_input.md b/docs/internals/simulation-input.md similarity index 98% rename from docs/fastsim-docs/simulation_input.md rename to docs/internals/simulation-input.md index d5d860c..f6bbbcd 100644 --- a/docs/fastsim-docs/simulation_input.md +++ b/docs/internals/simulation-input.md @@ -7,7 +7,7 @@ The entry point is: ```python class SimulationPayload(BaseModel): """Full input structure to perform a simulation""" - rqs_input: RqsGeneratorInput + rqs_input: RqsGenerator topology_graph: TopologyGraph sim_settings: SimulationSettings ``` @@ -43,12 +43,12 @@ Everything the engine needs is captured by these three components: --- -## 1) Workload: `RqsGeneratorInput` +## 1) Workload: `RqsGenerator` **Purpose:** Defines the stochastic traffic generator that produces request arrivals. ```python -class RqsGeneratorInput(BaseModel): +class RqsGenerator(BaseModel): id: str type: SystemNodes = SystemNodes.GENERATOR avg_active_users: RVConfig @@ -279,7 +279,7 @@ class SimulationSettings(BaseModel): ## 5) Validation Checklist (What is guaranteed if the payload parses) -### Workload (`RqsGeneratorInput`, `RVConfig`) +### Workload (`RqsGenerator`, `RVConfig`) * `mean` is numeric (`int|float`) and coerced to `float`. * If `distribution ∈ {NORMAL, LOG_NORMAL}` and `variance is None` → `variance := mean`. diff --git a/docs/fastsim-docs/simulation_runner.md b/docs/internals/simulation-runner.md similarity index 100% rename from docs/fastsim-docs/simulation_runner.md rename to docs/internals/simulation-runner.md diff --git a/docs/fastsim-docs/requests_generator.md b/docs/internals/workload-samplers.md similarity index 99% rename from docs/fastsim-docs/requests_generator.md rename to docs/internals/workload-samplers.md index eab8080..eb40121 100644 --- a/docs/fastsim-docs/requests_generator.md +++ b/docs/internals/workload-samplers.md @@ -104,7 +104,7 @@ class RVConfig(BaseModel): return model -class RqsGeneratorInput(BaseModel): +class RqsGenerator(BaseModel): """Define the expected variables for the simulation""" id: str diff --git a/docs/why-asyncflow.md b/docs/why-asyncflow.md new file mode 100644 index 0000000..d50d401 --- /dev/null +++ b/docs/why-asyncflow.md @@ -0,0 +1,93 @@ +# Why AsyncFlow + +> **TL;DR**: AsyncFlow is a *digital twin* of your FastAPI/Uvicorn service. It simulates traffic, async steps, and resource limits in seconds—so you can size CPU/pools/replicas and hit your latency SLOs **before** touching the cloud. + +## What it is + +* **Event-loop faithful**: Replays FastAPI-style async behavior in SimPy (parsing, CPU-bound work, I/O waits, LLM calls). +* **Resource-aware**: Models CPU cores (tokens), RAM, DB pools, and routing so you see queueing, contention, and scheduling delays. +* **Prod-style metrics**: Emits p50/p95/p99 latency, throughput, ready-queue lag, concurrency per edge/server—even estimated LLM cost. + +## What you get + +* **Numbers you can plan with**: p95, max concurrency, queue lengths, RAM usage, RPS over time. +* **Rapid “what-if” loops**: Double traffic, change cores/pools, add a replica—see the impact immediately. +* **Cheap, offline iteration**: Results in seconds, no clusters, no load-test bills. + +## 10-second example + +**Minimal scenario (YAML)** + +```yaml +# examples/data/minimal.yml +rqs_input: + id: rqs-1 + avg_active_users: { mean: 50 } # Poisson by default + avg_request_per_minute_per_user: { mean: 20 } # must be Poisson + user_sampling_window: 60 + +topology_graph: + nodes: + client: { id: client-1 } + servers: + - id: srv-1 + server_resources: { cpu_cores: 2, ram_mb: 2048 } + endpoints: + - endpoint_name: /predict + steps: + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } + - kind: io_wait + step_operation: { io_waiting_time: 0.010 } + edges: + - { id: gen-client, source: rqs-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + - { id: client-srv, source: client-1, target: srv-1, + latency: { mean: 0.003, distribution: exponential } } + - { id: srv-client, source: srv-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + +sim_settings: + total_simulation_time: 300 + sample_period_s: 0.01 + enabled_sample_metrics: [ ready_queue_len, ram_in_use, edge_concurrent_connection ] + enabled_event_metrics: [ rqs_clock ] +``` + +**Run it (Python)** + +```python +from pathlib import Path +import simpy +from asyncflow.runtime.simulation_runner import SimulationRunner + +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path=Path("examples/data/minimal.yml")) +results = runner.run() + +print(results.get_latency_stats()) # p50/p95/p99, etc. +print(results.get_throughput_series()) # (timestamps, rps) +``` + +## The mental model + +```mermaid +flowchart LR + RQS[generator] --> C[client] + C --> S[srv-1] + S --> C +``` + +* Each arrow is a **network edge** with its own latency RV. +* Server endpoints are **linear step chains**: CPU → RAM → I/O, etc. +* CPU/DB/RAM are **capacity-limited resources** → queues form under load. + +## Non-goals (by design) + +* Not a replacement for **production** load tests or packet-level network simulators. +* Not a micro-profiler; it models service times and queues, not byte-level protocol details. +* Not an auto-tuner—**you** iterate quickly with data to choose the best configuration. + +--- + +**Bottom line:** AsyncFlow turns your architecture diagram into hard numbers—p95, concurrency, queue lengths—so you can plan capacity, de-risk launches, and explain trade-offs with evidence, not guesswork. diff --git a/examples/single_server_builder.png b/examples/single_server_builder.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4d21e5fdb8b24e6848567a33eb5517c50b50fd GIT binary patch literal 166241 zcmcG$by!tf7dN^Q2}K&|6eJW02|+d?NQs1^gwlv0-QC@wBA_537zjv+bazT9NOwwi z#~sV_p7Wmf`|k7HzwYyFJ%`QSYt1$1m}C56OhZ(ZWbw~apGTok`0{eM@1sy>b5STv zMqF%ohi^RL4E*P&y|jkCs?}3_Cw*HZl%l@9wYinO`7;AXM8+DH zS?^$zSAN2iIEnM;{8@fTN-&<2mIzH{6sV5C&%x(xz9@aKJT`1zA!NS6(PF-V%N65Z zE^&hd8CjQ#p*PXZcb`y9SduTUZJy-49^kWZa?F=^oY+5DmwGzeF5H>8nK&TYDb{Hx zlr-l;boSPNU;fDkCZ-s;zKs8U)n0s3ed)hH`Z69-U)Ll4_m@2JsdE4Q0o zo`p>bwZ9cnM<9D1tse@C*FxnyJ;i)|eWT;z`g&4{{Kt@aFwrBw_ULTn zRQ;)+udj8(MfGvGc2mnswuDFJ*i7Q$40dxJ4bPcn?O*MF=$`8NtQrqvv9+^X)Q%Ik zK0V%5*!m-o#LnU!zFh2)YN8Q9=L~yx5*&$$GK!& zn0e}TxLov+Twq+Y!1UF$EWfDx{!E;Z=aJAy#RS%*&8@Nnn1IVOX{o8!+r8>jKb6HF zx^uTRH&;h9NfD8f`gL`w*e~>)D;o0@xz5Mea9v(rp7Mqz?bFVrWlbESdLua%RXhoz zI6Ut1wKF6nBr4k45sC?d`rWD0{lzxS8yg#Xf(Z$a(8({7lcTn_>@U#WB%>2?H18=? zetREg(>j&TB|xe zR<=EApwMN!dR4)u(rtI8Ki^o{Fx0Un&$RbS`R=G2Jyo8L+p@s0%iP=G;9wQ4&FM1N zp+XB@uM>Av_3xjb*5S)~8`CZQRbJvcp8H0q>cyO@NaG|IY^lHtHSMqYh^eVV{cs2; z<8(c1z8bYfzj<@z*Deg$aH&5}$bO!Pgp{;m9^bbZ%?P2-Ph!{@eyhs!7==3BYZC9u zczCsZqxGsriS1>}s^cBj*vK_wh#MZ8$=fX@6uR!j+*L={pLQgM;4ruo>3VFxa=ymG z^8VIL-q3RTmoEVW=9aconJrIDf9#w?_L=mFOU1LFtWS)LI65%Xi!d@XGS0ty_ij65 z%61asv=#z-E&23FcDs~qte5%HB^JYjE-AuyW_{VtyCY7#R-pjTJbudIw!xZMcErwM%e{mnazp+aYv&h_7)l6|LypP`-CQs%cwiHUvWU$VZ-$hgBaG}#c=UFGHF z9~hWw)D~NOa`Mu#oYIJPEK~Kn6F$x zR+v)An$h#%H=8^a(`s{{u2)2yj_Wy?Z-|h_wTU{Lweefu#n_N6rfXOHEM5DlGkTpf)t z%c&q&*RsJ%^4QVjw;H9@^*R=?tlWQ!B+TNO*vBZ8w6t{bL?De`!J`IS2G2dFHv(p} z1?YzlA5va_f~%B-4hf=n#a$jMYD)Gx34uzGnwv{xRk2Nuf+T|HG~z%JNXQTgA&TWa zMNuz)vWNNelXBB`pKeqWgBR^;`6fY<+lsLL>L?wm-m78;rhgAI)%tGLDc!kq=h(Tp z8eubgGf4$9Le5`bU!NbX5Ycg-z-mttrBVHOm$=GV%kH}X%Dcd<&!9b?cYdgdd$#>G zreBSBr`X|zxG7#3ahbb!!}o?!(Md^>C3bU@Z_Ki5 zVAFa>M-!QkmQ%q-Z%DtFX5A^eJ08YeS-sGkxn5LttXQ6to{o$BGEvxWp_hAi*pBd5 zmZo1;7N?fW%&QC|v4eSL^vT{7l8|pp{pffrlIODdbl78eq{d6K^sbt8v7TLae*2_a=mg?kk{uU`rzphGgX!Qi)Na&mIj8#8S- zNQh=-U4RAL)ksSAJUHhxY=h&vHSe>(IX4AGH6HD9J-c}FeD4NqUTGtv%k-}EOpqfX z$S)R+x?Uw<5DOn4*UL-%{#44;^a?fsZ7}ky*RNm4^BEIlsbx0l$P$Wf5h=aB`GGp= za|04lfD%IPW~&@#uY}eG5!RXTU%GysuAr$vmx}NJ50ID%a(cuaZfEy5%)do zO30V)4h{v*9hOC#eOh+-V;>YK)`v-z(KVRkH>^fEldf`bOh65AM!Da*<>O3`5;yLk z4bY;yX+OSNwko#nJX-GJzB&7S|M+lMp;h#7DZjkiWIBpYq;V77shlkKmXMHe?u%OH zEFZUSWg<>>&f}sE?cFtW=ce6k`vk_?C*|Z{oT}Q|--pZvTS|O=&x}5~z7Ct;*Vz)r zibkE}cZ$7?DHvLIkK@wb>rRv1bS%?G>ppzgz{bL|#w;88pn0JPAU&qrV?&g zWxE_h5KdyOogU4JH`qbCp9s1@b%}n={->h5t?kz~N2L4*tl*-?@v$+h0F3mSWqF?S zaGHv^ai>*uqnR0v@@$HvLwAZaDp@4AElRA_>{=p1aK8}z8LcTzYF z72Vz4?$4fmc0LJW@Epfj1I#p8a=20!g;OoQ({DH_TsG1XMROyP@Z34#Dooc)pE4^S zra@Ua+FPHxI48QF-LV;&H~;Gkjn~1}vlGa)M@gb?dyvLpJwJW;5HbTu?>pu=Ok+nB z6zyUdZzkPmw96c&m6Rff4(;shkUJoWO2};|YtNm6ORE|Za-Qe0t91Hw9icd!K;J^D}mbZJOvvxG$?G ze^^@ak_`2Q$U53+<)|M>XyF64-i7fPlD9(uV26B z8Z?{_rxPJJ?nr#jk|O53#^{{Xl%<(pPk4L6i>dvt+@AB+{5|{MKcu^5JT^G!gsf4J zDnknaV=_HEd@f60^GaPOgx9b!1;L8rJ~%9oF>a7KmeE;N?z5KK|2_jGLG8<l`b$mE|Y#a0` zP_V?4m6f$tk4J7JU*Igv@x!+`lDLbIxGv9)MDQZ4mY*M%4Jj85GS_OIB=-rQJxX?4 zA!>D68P>E>T&7LY^@Q35wLre(+;2kagF_!w=k(BvDOd>wNHNb}y$XQ5jzx3B^7g%Z z#GXg%vb?=M)!I%Y0r)h6<4}$?@}J_bR32I$0ossLPU3B=mr{tpR?y#K%WE=Dvx40=F{QSsIX2R_^On^4Q44XyrD1q}ws= zI?%Oe8vakI@14spW)gSu*w-A4wv~~UEj#jQ9dUAq1+W<=zOlfBM$tw#<~bh?Ee)LD9S0r2c4s)20sp#`uWSSOXNNt0$K(($X&NVCG2$ z5v0lzx4{s}<{lNAhX7$|K~gmtIr*KA%dD)E@Xb=Oa4AX2=-Al6Z{PU)mmSeiIrhf= z2zktYaoVp8m)!Ccew1f`Wm!Cd?Y_~%_F~h>$mj*3>z6`OQc?_|N(twUfVztzAtAu& zn>#!E_(RVjJK7mOdQU?m_=7^6!Emun=}X_zNw3pG29PM=k+fsYAknTAPZ1!y9SC8= zm!i>71p4zCclZyO@9f9J7L%APZ~*)dW8&Q}TU)Xnd2sllpLF1+{d~$z!kv|ot2ziV z2v!Inpu4Fz*YOrcK*G(rKbJJxsr{~eFtU7mmXXP_qcRaR8W33DJ2|)w}{9j<%kp!jRm1lNSRB|&IW*b0Rdu! zVtW$nKG-OL3FN2rB95Gb7K8rR9v8}Gb8CLRZKG>okQ!fgXB<-WgQFJ?AY(9#h|pxJ z=cx67(1D%Vd%pU)xOamdPYPr+l=quA)F=YO5bNX|9_olt-HljoU9MRy(k|0708w&x z@74op=L#Ij%RSDFOR%b>!uG>Jphzv=U9LsgUs#b-JRS%3v|{d*kjb}-MTHUGjX+?L zm0~G@_YWk*o-#2Zsr^jnX08S&%3b_v?XO>F@W?q)sBkJiZ11}0en7qfmO#l)ANI_I zm>V`lHUKAye*5-XQknI{8L^`^DUdt5)6hDQ-_K60B6$*+$lgL`PQ9I4=0&)c1eE>T zgvqcDuy;z2ha;k*WbfQLU%5Al*RuOz%2ZFnjMt=O#khk+25L5qDcGZRP^loZ5uzc45ydGqEbRH)w-GQodXT74-blvS8#_G- z0wR4kS&Z&`!i^??AnYgSn>M1njxY(uk9ZoR7@|PVGJr2=RJaz@itYpTt!aIA6`>sX zyJKGB2RqAQP{#H8vb8l}Z$#1x`$Be~U^v~wxuc-KYu?ZE&0>fgQf&hirmiw4E8a25 z)zJ!le(Lqst2rs<<+Q*zfelFk>1jK02E;~0O?^e!n1^z0*sgQJ%IlB@Ay#+a@Sj5v zu;cPzz-5J4c3Tb>R#pUbuU4Ik)z;Q_mAlwopyWXTJKKX2!uzzH5;(izkN5J$lc86w zH>TyY9v2Y+8*grIUNbpD1PY`W0yeI5=+h2*Y*ld)#__nwQrg`e4cvx1)?%bo;J&JA z9$=W;GBSU5?oi&NFB;{}yr`7YQflOpU?TGD=9CZ-V-IFsdsN)ChaIW&kVK^u1TAun zJL$^-%YopQ7%!3uag6dtZtFDa!shGe_dGV1)l+yY27vW2Jh_~rqO_x z3fFCtwxcPAQ-m;ud%^$B_vJAB%F*RMA!(ZoF$X5eS$VXffW$7SZbGT4sR+|gOG!aN z_KmnCi;L8=v)6%-)*x&Z;p#(0RjedDtbR~PhTu_Xc_qp=jyVGCPu6Aysy+GMI8FgEoF*G#X2by;hdNq6ebf>6l z9oT5}a2YJ0Cm_D^0rS}$sQR8z5|7xD-D@$&@y?%Tu>kV!XVsf=k%5}J6~wDI;(&(` z*p5(>mpz)Ank}7)!Y@~cOZXT_NNNG*g;veJG1~+A=55ZGFEcJlbLv?dHBr<8p`dw8 zKy}#z$g+vhNnH&M_RotzCniN47V2ptWO|pQH9;h(!&EsQGvVI=64u+>d!(u?+R)U{ zunx>}DyL%Sk(h``0s}A)@h8nh@*d(xYnaI~G4(iDSR92~Cy*icAe3K4MMlmlvXcH8 zD9CMdUdP+&0qEM;j*Yx0hjBoxV3lTaN*Asmd=3)!G|;J9V^AEEHsKPp7;6wS-Aj1F zwS_-xPeGb;hnU%4pK98KIUBbSOqis1Np@eW!9g$#x0s!Q!KKr7zRopZ^DhpeYB%ZH zG+YFh7ma2^At?IcE5bj_bX{Y?IfaTh zkbrk?`(KKdoS2yPNZH1QR~+QSN?jMR%xbskL zYTwJhR8di3oF!pAg8aRQfm{hm6PCP+2oE_+jJvfmLIc}FMolfYX?GMTE2L`a3Usl1 z&FRUmIQn2dO~`SH@)9$1!UOVHq_)yFg@~w;o_$Bqa38_MBn%!~#5Wxl{A>JhZWOR1 z7rjN4p}|ScyZgBs(PzOC(3|gir^p-=g|Mx`BCDL{-hr5vU0}kL za&{K-AY3ClAoz2MI5u==+Sjinpb_#=qIW-C!iuqn{sLH|SbPO)UBGdsZU| zw_Scp9FOj)B;UY~=w2QDNR+~|^4Gfk^|!z7loNK=_F^CNwQKnB$Y8BOwytp=Lrd6H%6VM z4CepGg?&R`wOMT&G-BB#x;yNL_)vi8LKg=H27<%G$s*KIh)x2L4w9%Qr`_>(A5g8^ zoP4fZCQCy_gs^YS_JaOxxH8&LInisZIM2LNCn6*B2kl2|+ZEWSfq?dNWA+4|*P}s`>%yUN25fJ>$(RRn=f%!;x=2qAi@dp2EAXY@&5U zNKJa`*H|x}a`MM`@HNpo)9PK|ap+inyff6?(z5P4ByIIt+)M1o&z~3P`T%T$-KgyV z=GFcq&eSA`Nj8426P$>U(_4l=zCC#OP@n+!uNjZKh+$Mc2(|srojYBX9&YO(zt%yq z3jj$LPd1YFmbp16{EB5)^NU(cZ0sdLL2?uk4NchOq=7uuga$jaG1N+gS~X0;`XUjN zCKDm)>|Cr+a*Z4hbPOKbX}PmFIE!9-sWtz{(-5Ka5b|kZ?nwXm{GEIEH6!AA_zu`^ z*O-`S$)1JXM+Z;o0J?%+eK7G0yENITMr5G?0AZl8@u~d*nIJG66bdX<7U*J-2r#iP z5VfICj}T@t8Fvb*yZ!RuLjiXp6i7gKSzk`NTU+O@VEMBdg*5uWgub&`7dN>J^ZW8+ zz(Epd-U6>(0^~ZIW%XSOoVmDa!-b#8%PEGKNw(nn;yys){^ZDo7VWHp=3-};u(ad? zw1-UFZCP1`R&Y|7VSYd|!$KjR#plnTouN9f1H!5^$kPL@9D!cM3=D**VnCzM!B_yx z8seO)xvi}ZY^n$-8Tsqgiyp~?$Sb%FE8(rIt4w9BGnNE8F6lX8g7y~(7=J;}IUfPA zk=M#k;s$_`kj=paEu{jOnsc#(Tc80}rVVQS97-jGsn z^4%6LWD8R%ttDpfzQa~z6j_eWCT3y!>(;on6fqA>X>!UrWQoo)jXN><|C1VS>yeN? z-FYSq*T?vG|Ag2(FG;e=OYP(Q*>=`TGX3IA8N3aba3@K;|LLJX=|QR)7gE~rDzY4@ zUj#(wywxpBOh*?1jRbn2;ewZBDH(E3Id{P23B%1W23zGzhg}0Q@~IRoxi~3)y03h+^-~$~HZNVe#A7kYKkT~r1@O7}8_5T?nAbPYKTmqj zEuT$Cq2CDidjGLr`?>|m$t}}6wB$-lX_Tk^C`vDZii^P)crO(j@}B%Evmlk5rG8^o zKZAlAoSfD)e;Y~H{$3=Ih5Gw78um9fY!RhIqtu=Q3@>cd9{8(W6>d)EgWt{p)HgT3 zckbjREKAjI@_Q7YIcz9jlZDmKsbQcRcT3LXjQ(oN z5zYCwrIwOK?rc6la2AW|_>R}JO5!*?M5_3+X2G-|N+PZtuwK@?@!r7WF;In8V+6n+ zh?!-AjR3_3LMZ?_qU>}1z6$2J?cB!SXaTy5urE{tgDzp`GdJ9H$AGyMMjJ9N|RSJo{Plk~o?rXW<#Y~I9ty=*Lmk|~<`W!@j2 z?^eFsrFU47H&{M=j#k@=Q<#tz9sIE1FhPUdVr$`xch&sr4A0mZ**@-T)Tv|8n6Tg= z{!jbRLx7JqP=O{vcAyltWid4~1C@t$z4i(hm)iH&mwD`F@1pmoUryQpLP7Z5y)+q+ z_J)nWKH?;Yf`Rla;1Uq*Xjb?r+27)*6w3W>QF5;je{B#`VRRLLWOha=<@dqX61b{L zZ%KF^AH=c7$^c2eI?jFI#?e_M@pD@tAaKd425;!`KmAAPwn*B%X^)H8p@>ug4Dbm2 zX-aWVG)ix*(gVT0kka342DLo#ZFzD(k&uAEG8#)>s+T7H!UC;dF)klOw9gk{Q=&YPg%(hF^ZM!=ErHn@s)}>9q5-TxV_Y(i@s=gwzJCjO(1tSWT zzB zHX=&$;2GPW?VrqLo{*|odz!a-LRZN;|HbT!J=#zFH@C>xbdPc6z!Lf^;oAnn61L|a z^X3w)K2>B%KGBlkuKxw0P~-I>q{v$8gj5YR+wd`LBz;7$uJ;X`g+@H$s$BXDUBu?_MK^f47-_D;M@<}PmuN;f`IcG-J z$1LSdVYNKtba1u#xP9YodRAWOT*X@}sBfVqG!%MvyZ4>3CC~j6H>hgpxY5$Nk?`Fa zFx?tZb%7VR{d1uB)iuA@U=b@ikK%E$mPOwv)US}6wixwNlx;sqICah@!Y4HQcAjiC zt|vywKIB~8+6~XRMBO6^@x+cX|LzuxH*(keAcsw?y~cAEuwy`tx8dNVdP&AKZC?AU zxUts~hy6F>>|&=VOi)T+L8InnoBRFmQZnTkmU&HGsabw?~*>4>dKgE@*fuIC`GUJk!hXp zlrZ^k2VZf!38xihAzfI+1#Y4kGEo3*kZ-0F1kd5B!%teyrD@ z3fG^s*(72X?4Tr92~38Nej+M-8|}Hdql2+~!Jp(G*m2wYKh+Aqk)-2;@wCDPSySgy zN~hjzqWH95Tr`fCcdIvg^NCKv6lHOr87}yY7ILZyV5(IlSXo~P$H=TaZV2qhqQb|Z zvTfRt&2fB=v46pz>|dA9{gCotLb$dTlbtiC5edU>=Qo{ALyni}HNH|_*A>N^sFIVC z>lO8-RwdjjELeQJuJEFB7242y+pjTnBw3=#U(PR zZ5QL1`)x2hd#&;9e?kE&X3)6e!Yjo3A>|#n6>KGlky0}HEgJm7zlzLRA^=JVM1Ojk zOLO^^z~p{EF5m3?%g-!HJF^SQTjrR*9UeKk2)VseLo-mFDR(yG?sXh^I!&)({`NQ3 z{)_2B7?N&t`_%`{^c0L=Z(y7Eq_|VuA-^U{jyo>Bq@&6qe1i<{C&rm|DdB_6tlo(0&%qK7w4mzda-^X!}zuUvPFlP z<-uQhd#hLJtL$Wz+kYF@%})zv%s_Ne3rF8qoy@gq_GRPJa$;j(|*s?xh-OD+o6w&ZeGxF7l3D4Qv z{dzz_7S3o20R!WXK9&GWF2vlbs@xf337v*W~)$zyYJ zm!*Afiiwu|?+%gZKil9+-e>;&U@5(EG&8pE&V98>pAVhh7g0M`V;(H%h@qhZ0XE>OzPK*p zv{DZ)3r_w(IQTacz3RFa;Z4l{sjkV@Twg`E3)7?Quova0Ix<7G`E~BlYe20?jxBqj zzy0GOiIY#`0=Lt0`tKC_3Ukv6lU$Y+jL=Uqo&s->srEFkE(LSWb$cNI2BK{91sZ0B zg@xk<%*btRZP%8I#tZ=H6+>^)yvI*ZC(KM>6|r*}3xch(mp^Dh$E)!NfglP9Hl z>Yv_7*0#FF5+Z^sI&Q!S#=pTNs8zN)GLmDg)nl&`bu0bzcIrDxT;Yx?yC2Uc|Bjej zir2gop>0ABV0=a&5VYu5uPzJku9U5&dYzsiI2BaYD1i5jV6P)a)t?Sza2%`q^9Klgc<4v24h)>n6B5oDAWwKE zhgZJKbBnJZdFXXceReedLK&U&lV_2pR5~+OJD#Fbse+YGv1QQs*M#p~Bpp!IC>Xy-)p8;T$yu zB4nL{5=5AOdd|yRK<;;|&*hT7L&t%D^`B$2@3LBPr&rI6uiXah;1Bf|Ro#eb9DnHT z)JIoewn%X4IzJ`%*q{_A+jBk%^0xn^TLf^(Cm9-fSPR#=E^68bMxXbm6z;h$!~ISd zLvK`hKVvu7Xf|s&VltGvK|pkB(gOFL#BCFv){OVbq|e{g#OJ)*tdx9%d6j4Op44O* zkz}=SAH(4Ww>&%N_w7cu6nqU(3_y&;h6X1t|DYgD6fjBX>SyMl0E(TS&Q5mmVu%s6 zkFpqn%EPRq%BT1J|KNIDE;FNsKFyiO36IXKB4-FDhd=PJ#$EcqbvY)yb3Lk~H^PK} zd0*CjPw`jEh#`h&ERx)wjmfz?w8Hm!+Y=G1iV0owc*mbaMN!4A+|&H z(zhoYjp=?7)LT6%KQgsh3h9M$P|kY?O3thWG+#Hu5D53p^o>AvS-P^iQ@G?9g%<{@ z+^z2+TI)K0~iIG_3DZIq{B4Xp)!b1s}(#kn;@3Bq=)h$8hz)dZQn4w_|ePrW8555oex z4q>L?ywW`C!M<#?vhb0-#%yCYlKiwXrg8edZ({=zAc!!BSwot@_=ZGTGQX5q!p?Z4aHBN+ zRO;-?oxLA5tBy?eL3-skt;bQG`!f``Wfj;?Q*QaGsHp`)uVL66^bzC1;TjA~>|i6r znrhKS8l|$e%Q6B9N&Z4){#6stYM<)P_;HlY52>WTxU($nm2yjm`@Tlb<)q!N^hYIs;{dUo~<>iqfh z(ICNt{!?R+HxBk;9at*4Ak#w=BJ7-Z&@o+5P=NA=eotlrfs4@3!dPfN;QOZ^{G(zW z(t8Zf0;(Fii6TJGLA;7Gr`1Mi4-No(@-fM!{|HV*Cl|_ue&$Q;KE%}zBO1fDsrP^F z@km#7QXwZ!0mH?~`AxI7H%`uDWq(@|%-Eo1mzVV;s{7Qw*g$mpIW?5rpOdyrkY}+r ztxDn+SqufzSQg(xlZW3y4k^rbybS~Q@eIm!cja1%)kvuW-TcpFj;c&o=*3 zaq@UZvuu03e{75W4YDrx&3f2Oegcdfi(&lDJ!GVDOr&7+JaCFDK zKextk|L?IdSYISD$=?K)8~UQvwBBEs{JZ(Ngzu3{QpT720_uO5?tYd3 z(c+-b>ELc86ghvnZ|?nN4DW@Cza$eJRBnj|Wm9XbQW+ERYPQIG_C6>pn^wzA0CgC1 zC^&|ql3vn!eS3#uuwa*XV#1^2$ai8YoQ2?GYXb)K`a`aaYxhO9gz}=^izR5gRO$4D z(?xN9Zy3OnVf3Ov&6MlSxSf=t6Dw4%CdGAz1*X2cAn0Ry_&JJL75_Ywx$8gjfn0y7 z!&R}pam=ly0acr2Xb`D~GX{+GL4lsCOiq2%B5Z$t2R;|-Ap!~Mys z^zuhPA7`YOQ-ePcjD6-B^Y=JHf(OnYwtkQIGk!L-XOB$$at2i{o<|79LFayw`kCpO z3B*rGHs@5SP*XFisSC4Pt8AaIzw}*y=12rsLYmXXI~Q_mT|{>mZz(ot`jMq1Qe@HU zf7H9X_k<5sP5Y#}k*bbbdQ5XWe^8EMS?qiQ>k&?s!ru}bKOH!TP2ef6fsy`srGplZ zb3xu*KV4f}V~u_hZJ56aZ0o)8bS78t$h8qIZHjDQ&LV@|>}d9TROGBeX3~Ly!E*-#6sCQsYQ1r4 z#WB&5*AJX3#4<$l_>(oqz1%Fj8Bd>CSt@h1Gp9c}~~kS+mn!k42Wh_X`F}qtKiR5O*%v zqrHpJp?d?`6TJ}+f4GE{?`eBA(jE$E-1L_)oOOZ2e^)!;Ea1mmwS@U!zq;#us`TBevz3D~y&_3NzLT4zGL>Vp-KbT;AhlxhE`w8HnVmZQC8bqc z55LE>$A#)BIO*m{Cx~| z9D4QR#XN3;EeWS7AGY0neO>yf42pbkSXdo$whOvjpr0*cl<)sVB;V&h>N3bf&MiR~ z>}{|SI~TT%ZKL8a$_i1a18olh$#86U8@snB>j6y>%iyKb{C#KMjXH8r*;L01D~Y4|J(&eSoXRJ6xCIvD}G^duvBNm-Axe3t+fM%TkaIY#y>40vsSx94mwpFK3(#$ z{L#>p>2*^tMxzzep8mwVc3BFs_Un@nDzGrB%~OWp_W>HP&Y65ysA&U@g-3w{f`n zA(lBbXfv@!F9vO<5`7&fwwyb>k#W{4P4=cS&%DCL?;UtMR6?_!B4f@6ob5Mou#*eg z1X6V}A+m6ISLM=bDhP`GMgqEY=aRUe1tWWn`R~2v1KpyAeO%9qTcG!+>&xRCz!|0V z%g=ZN@IgsvY1LWcE2r1BIrd+t7HX%C^Oudi;zT-~B2JuNo|XF~;bkmHRersG(_NC6 zEc|Moe+m|L;;_v)y5!j`8WPWwZy+n+IY6 ze!W&YANg*5b?aHsdl~PRVdMHhON?8iUpQ5EY&+a9>G}(nm9PFQ2?TGYcP98yLKp6Y zH&!dPDpGt~v!{^t@>zD(EqA&QQ(w{Y&p~pZ+*}?wj40P30Ez;fhmn()uX!gGg!sEi ze+9gQ92Gd(@AR4kqAS~(B$^<%&_>fT*-n6Hun5mGGGuOdeqv(We!$deQ9;Z0MMUsF zCb|vf6+$xgjM2E)>g=(^Gb9%@XmO-Q3^{h1O0uOi%}e9^{9`kCa>HIqC4@(LzXNv ze(({vHicR!L^DCT>+~$cGkVxDJphG1xVcNOeCg?hGjzY!X2W&~26EoedsIIE3;EU? zDMGslf}4>x6##gD`XIoFfnK+?&(dY)`V>zdN5vv0>33~h-yJ+s8?+W9gsMg_{Rvp|Z!c;|bf+#kobF zo2SB2ZVVOZ*RVjtJgu)y(uSUyXSl zDjtsp>)mN%N@1=F4G%QfwV8?K+#sv)wx-@ASbn_8_eurKCoBnE{X4r_1Q$J z*(KDoa4fPRN%;>ul5Ya8v1LsOv-)>g?!K~DjJo0Rqlf=vy8-U!noXknh4I7l4K}Xm z-11HzBh~JE%IKIFdW}06?w?5|wUC%g=TlXt++3VZ?6@ z%Fy)2C`exkbD(J{|OncZ}BqP&M0jriH)3IqwIa5d9n9^IgcKS_TW#`|O_R`W*B zpmEc!(Vw;J!!$2>cV+sF`tuADI5;yK`{}ctTw}((J~QDn+0*tIE9GHlNwm)N5v@M| z=nGEAUz{o!<-ffkS9$3S9@|chq3#J*m|}^LJeXRQsdsu^h2$tI^N64FmV86^sepom z?GP%nGm#&i4+P`=M>&diU-m2vX74_wjPN^=4@DVh{xpL~C(mDooQ8M>x5sRVpQ6P- zW~y)JfxoIhQ7`7alc3FBHb0C?sl48nml;{5iqVtQ?ULh2;`9M0_N&F`Tdfs8@e~hU z#-qn>^VG02zGe->K~JUMy)J_OT^~1+wq+L%+fT6nXWJ$_Cn0uqX+vNMdrsx}8=l;X zyubvd{446%w?AF}|q^D}mdM%L;Ul!*J=h`>7x_(Hf($qAx zjOgVfli8Rny^zW3q-K#McllHX`#nY- zsfOr)OX^)aB}MH-Kkz)F76{J5RaS|uk_H%%e{$kKCJ*D%w@<`S_f*mvUAKy zSym$#%Xm8Eb8P9FReFZ}-K1~#V)0cX)cd+=DM#rp-J z+_}`p@nlBOFqeRLN4rQ>Rx*>EKEeT|D0?oeUwk^rR`?T0p%t!0`&V5@nUlow#sB5p zNdN-REp{yE>e;Byc#77(lKCaWNCU08hAaJ{j3^_{sPCuGw~zO=8GlKgAX!#NUee8| zfVPlMbk2i0!k-W4%}?5i%<{{v!{SzGp@X+$rJHE5UPl z5EDl^G~7mQ{(w3eahx-LeZ2oDWLRqHe!z08E$aiddjt}Q*j3Dn`nsy(wae1GN#DH* z5%jMd`+U}^Tfh28abuv=+dlp3jVBXNjnUS_0YudCL|-HZQ%BzxMShBTP%5}2)Ye?_xE?Ey(&XvrB4K>!e=Ve5aqGd#;1z*_sugP70R>9^$ zZK88ybZWq^bWy5sY}#7O`Uv1 zJ*L9K2S(*d0y&C}6(UjV3yGAoGlSj_cWHeLtL|%G>NB>WA^n(ScvrJy+Jo7F-#-1L z-tFs@@8yTL#nSTW`DH@S#&~}BL4sEv5u|&m~Z6Wz2tKSTJ(|{x~rFr30RDSQ+}O! zTkr}i7Q8Jj5AvcvnOr|mE$|Y7#1q^oPr660BZ1WT`t2m5xk8QJ&zw%fy;-isND7t^ zWc+?#mWwW-zw@%VjDRUCuauxyb-ozpuFM!aOYhauL%3EK=WRFR+i@G(skzEjmIM%R z(0DhWOf*v}Mu;Dw7?QLboMgOn1MFC$?kSHyeQ0Ni)BBeqhef1kDDJtwBfod;ZZN)+ zyU(t}#zLdFx@L;m03!h2&#%Wqzx!;@z2h^XxOj#BvAH9XyLt6HJU76|_px&wH)&}O zBsw^pRPoJlirVd^!lwmiRUgn;gTT8W%Vm?@l8%k?p5S@BrEm;YYwEA-_tsc8z1aFeZ*uZjoH|QOMvY z?zY~nPw_228y+hh?#XU<&|zdW92&s z=?w7&Kmd|6jf&uz+UM2Q7b&gK+0N9TbD`8axa|_j^XmmsZK+)?pIDZD{dG!IzrXAB z*HW?AvHX&8&ZMK8>eo*V>pn2Wo10_}?&Y~YHq6hgRIL}De1`juW|bS2%1emye zw27m;#$v&M2Pzx|F zma>AkYIk(Dp)qK(r`>9G@9$z?)$dyMWm#ak`w_!8k7!|Mp~r1yL$nt zrKB540qF+mZUpI0N$CbDf%mt1Ugv$??>x`UGh@xD3%mdN#&LX(5(v|jrFKKv*>;#{ zww1k|Ss4&G^YQF9ZtM0&Co%lDAGG^c0aPesCm;O-J04j`y)o-RU#FTD_3(72Jk67V zRM9Vs&muFLpnh^76xypty7w(IuO1ciHR2oL&F~k&EslgjR*zG>8jgEoraqH*Z+$9y z7a=yqm7w+2RC^Uc^Q%NmqdT5Z-m;HU2T|GDS)Kb(9s48_FZ9Qe_)g=>_6x2FP&J-5 z{f2+Es3`xg@|o4%(l4-BZYwrFkJ=Za>%`&IzP22s_Y?bN({`x4#9af{BBNM3jN53P zo{BZ4F$E2ol=YfKURiDVRO*!WVu-nBn^Eq%&s``Ty(0L)2A02mf@xnQ%5}qZy;UDW z_4smm%bg+eX9C};U_)83s3*CWRmy4gQ2fbHa-BAgpHkTf{}uyw-+(09diYodZO2L9 z#^V}a`psZAO!?R~7X@n`x>P&2+^=I6M7@76tZv*A6`Qdk2_>F-D)z+2A@a?f_qwsl ztFy>gLuoxZlnE@hQ#GT*FP+fSL3;un7(1WLHf$Ze-W?DQg>0Yinrr(&=S=$D93o0l zEl=?O^Q;V#O1wo=2nw-nL0wv!zR3sbuRjOLsibVldUKcq>$R=cy)B$)b`8pv?QU6Z zm87Z&RjtZrtq-1D?ksWeXKni}jT;V2tPBRse)0=Tg069zH4yTY#a3)jwXixw=1_Vg z>SDz+S1trUwbE$9*zuw9;&eISsVhR@XqkV)-@w=L9iK@UVcf>LV13JBs(IEVgzNkw z6jGxb^&cEvtsxtje@IG=o~3%qs=s?pQ=`=Xcp`G=U53f*xEm7e{^KqS^*vq}%C*j6 z{9@8q=4jD~2xp|K&G`*%9iGJCIf+5J_GFrGrd&XWa1x2zd2$SV8!S1_>2C`-6Ux%$ z_Q!2DO>7IaI@I80OY^HawvLM~J0#NDmj`NVWK z;!yoVZDG<}hdbV@+7b~7_2K#dIcQ`Km{lAE2A=6 zH17p$xUTgff3}CHrPeDBE+hnqP~ugwbHjGKhAJa550;P}-%!ZVvDP4(N5wL0b3YGd zom?^Vm(4E~9#x1w2n2KkKyarDHklRzf5L&8D8ItHoIZry$eaUq#p zXzfF*_H1prc2YB@!s}84Bjz5_3Q9k*ISzt7>V5B3fvHkqsjf@TW#jKHRe@_MuZV-1 zQmMR8$S4?2ghI^8pWZT^md6JsldDFl8pIDbYf?N-LRt;R)na9Tu3YoI9P_su-X>3( zZ<0EM2OvgX!@*gAk+3wWVWXt!1t3L7gM0@|0I47@ByN(!;PIL0D5+{mx|7TYHqhfyan76N)i+BqcyNAW6OXqN zV19mAYUBLTt1t|Gu3GuFhB(<72quzw4SJgp`IdmB5drcz0#mHYQbokGd!YM;z1h~m zi9!8#30!MN6{8<@F;5R^^@hc}ZeEG-A6{}o2HA>-9O`CGpMrld9Rpr{mwYdE4Q^D>5ltHeAq=miL(TlR-HhAl35FINsG`Orr$sAZYZql zx1NEe*&`i~BP4(Up@Ew30hc2{p#1Tj>$XBL$oYxjvK%05wgsvvNGm|j$ZKeX$i2G3 z1EX}f73T<;E`TU!(e%4G&EGPgIEo-g_nTdEkTKBRkl}O}f^i-m`t5ND!I6#LoBoo4 zMmI)>GF*W1u70ce%UcBy(ukyGaim4DzxN zXi;}pH$v|(JZihTm#|kbk&9BbUZz`nBI3+($}KgXi#aK)N`cMD^cdE;>MpAkbair8 z{U~YG_NPbjT=j$g!t$1j#+An3Zfa*=Par*v3n(;V49D=nT;k;N)liO_N zYVh?)1lcDv)xUPRPg#4Sl<@MTVyNS!uj%PJbdcETbe4NszldB_t1~}8EF|r>&8QaY zL_g{V4>zY;*)*x%CwsS3B0FLOs(S)g*L%2#w?-SdMen-t`B~0ci_j^HLvGTlic4pVoZxeEu-5$y=HLK%fCu!ET8kFt zszBlA54>zoxu+H9>{g@LU8=5y5>THZM!4PVCRPo26E~Q|aNF!}B1eBjjjglid1LU$ z=8NJ>%ZaPnOGxUo1r;%iB z$eNjVcCN-_YEQ_|+#wWWIxu^Ge4AIg$!^Or%K43b*b;2%JrQ!O7UB}}#xryaW9YJbbb zb?VMXI0GeKeerzQ%J4%%=K?-plLUo@bpf|9eOe)?3xF%0&2;z)r1ig)Qbzv|N-3X+ z`N|A7evIvZH0%q=o+352YtF?s4_%5$RfXs@{z%#FZFk8hUr|2ru8asH9j+G*`W42m z9)O$$rs{JWCUawRDkYKqr6@+uG(8UPPa7EAG!=eus+Ka?Z1|;phyZifxN<%1i37CV z6MA9PY$L7p*5hY#?;IUAut^4dwMZ=1SM|rDq+685u^8KMx)DMV`g3}HvU}!A*t8>{ zr(EnX@fNJK(vfw&tad8*9W%NX6+vV$$k8O8{rdB1VW5w-ra8tx##SKKddkH`=uKtk z4y>(!aElzidf53$?#~k#4q5pJjusRV(KEpH0|Nr*Z2~yU5r8x41B*Z0!}!O~2qyqX zL;$QTpk@KRXd7Swlmi@~2PofMfk=>s()Vw@mGA<CWl=SXa?Ws)~#yhRu$Ly+8lf(neN2+WhhI7MLEjnJ#I@Pxv(ox}X~5 zRi7jdbh}eG)VPiz7rGZEMAslQDkB%u)^V~Cw_&DasNXi)AFyBI#k@Lb&U|1;4t*rl zt4{IK1?_#*qex;lEP`~EMnW)}MUhJ3V=<=*ChX+2C6#tUE>bTXrL!uZS!nk1&|7jj zPjkrTYdoy^9eS0?DSKDq;=!?WfH2DH z{>u`)K=yyk$nA17|0PtizXjxDS~w(^QKy*{7Z(?X! zwv`saEf`=uVK%?+{-3R`HYuT=avT+WH|yCVRh4GkCdPI!7{P~L?s1Lw?M%JUg(t9p zsjsWND+j~DY~kts+#$Y4DkR)JD~B&tLd12@bbA-v^EAS$k`^9!y@5ZMrGtLEav-!Zr2&{Y2 zTWw7LMR&D&v@DyIpvf*L$Z+~}3Tf|G=*3EFHMC~K;`bn;1>l5)6B*6i0d&c|rOiV^ zZC3=q&;nSoZg5TdGL$yHdnXPE)S!L(2#Afb2?=nfIbaYoQ5!*j?FIvk9{i%El}%{{ zHU#1wT)34VknQ77HiqEX$&1ab20JNgRVW1v@Yu49?%2)sl+SeWQ{)2_avr!N)TKVpZxzRiDNNFi7_n??Y^vOMKS8fQqg;b80ATJzfVv~x{K^2FXW9#;qJ;4jSXx(%XIhIK0;b~7sTFqHhF?~j+{34*7Tve##GpOO9H6i1cfu4iu&Z)<$vMyO|Z`|jn z{dEtVqcW$6G>&JPi#uC72HNU7kgK}oF*zMPOH}xheQX9y?cfS`a{cz(e5Ha-knyHuU7>#vr290clMh(esJz z<^nCL@7Ld)yn5wa=K`Vf4z1?BzdXXg4fh|Bv`hyaPahNG_XlibbqQPC%W zI`l?CA<8%vaBK7O?E>tT{>lhL424s#o{ncLZ-9Gv!Xi6AX&M&L5wf=Wtu3Uj1d~GK z-!Csr9$7ED0i2I5vDDWSLJRy2b4Jc`8&NsrWK6z@xNY-_-K`2Ms>b*!f}>{n2bKZ)8S7{BAZ(Hu1Q&G zwcf_uoT*GTbkJm->~40i@2GM*B|x=s;@K93%Za?zhM)lIYH?iF+nt;D&La+~@?&1^ zsS5rzbMiH8&zUFHaXPmoW|<31tCi^$Wvq%z_>G&PKPu937r#GFUcd^OxLhosAw6K7 zEZZ8`@Ndlk1kameK}2tvK-rxSCgbYGz;2Iu^{K0{afkTiMMZP^^}mB%+us*-C?scsqd2CY+^1k-d+6p zAx=E+&g4zNH#is>3x6$BrKwG8ul34toG0zL zB8&s&wA$hHJ?^-#kMsVZi`!kP#njWj`*`?#X=kQy5Fm)=Oaxso2=TbDS4-zLQ}}!G ztG6uRI>-|xI2m$Ea|E3Jnd-=2&io z>!5L^9>7n+(Q@U`GjjmZ$t)_8Uh!Ab)C>he-T^3p(LSHqsso&we;gfv9<=}B@_&(D zq)J2yV^=~D=jJEbfDjTB80o<2?HG3!kQdLy=4|O@d11{}og(-=&4%D14BWb@o%fJQ zd7jkKKBXr%=+VYZ+h7xzD^Dclu)m*)KDboq+lU;c$YQ=)4FDUx4yQkyrm)}SP7WYI z?gp>P@|;|&!+C7$(EHv@ zzZh_{o(SZT@GBAT4f=x0n?1t+0y0v{4In0Myg8s(Ps28xk1lc7s!I5D%x&j zz&JM9G>Q({VusW&LC@Sw5|=4tZSdBJxV#534J4`Ks(*atSpB?nkz-I5S9_| z!I-uwkUaJFL%QY^kKdchBJw(oD%AXQ(#_;0Z3-dbP}4_?(q~Cs`}I~?YziW!V%tZ+Q%B=*UOD#26*QgDvTv|3s8qbO0vlJq8;=7VdDrwqBxn?jHAufz>Y@ z(Lu3~))|AQ-n}LpYd2wZ@tZKvKd1<_P}bgE)%M*T_jYe@)E;JN({itM%98u15cB zWdORPVAA7w*eX~>gGm<=*o`kH?!IsvCpHM9B6Ve3wyO%E-rwCf0?r1+Yw8l{L3OiL z6aLsbM@Gw9ndHVyV~6@>vX&LokUnTaIG80}9=b4HYPN057NgW9x)Q#t8x`n#nsO`eMg4Z!6_HbQtYcyQHBeHt@GuZ~Pr{UC}y!`w&fKERG z_|=;Hu2E4SS-NsE4Ym@Ws3}YbmN6oX6n%Gh8!*=u0Z!!34!9H-yVT>hYRE4kd)iTEn!!Che%lbW9!Hdz} zAw)=nX73j9kpCAUh95lbp&=KO=YEGnoQpszO<-;aYB7Y9HDJoSq z!3cM^_z+t#GMI*T>Mem)BJ!PDrH+!zI=am-;=-vSgqCoq6 zTSyn4;p?jJ(*!**QT3fuK@qu0hu0M^(po`(^!g5F3T`~NakFIK9N0w>-|O%EEU15y zR}+sQTe_hOKIXI=W#V@wM&~1=bI0@{Yx7JhU8`p;=Os0S5e+Vk3@i+lnlAHEpf}qj zc=r3oQ(U(2PGFbKAw%HO)f4QpPUV8yfBIHRt7T&ptHVBj zsZh3;6Lu5I2C$jU8T#*cZY;e1Ge_+|uDM)In{wgl3V#HAc51p~)3fBZ%)3AS>`?LZ+Oyqtrd1u-) z<&qrc(ttBouc>Br#w{WvHyy?RbTjg6Z<3EWC`d-{NnpM=FRM$W)+QoeU*OTLBhhH3 ztbCHI?DCj{cvP{4wtls*_8T-;?Nhii&;lZYGZrO&Vldk(7~M9j93CS0NcBM(c--bBP<1eo0Y&sSX=Pd<>?KMd=HaoOKUz z&1JUTHqeM1e|~cCr`x#=ck1s-NWPAq^CVr>aqMn@qOXI_nRZ@)5)%pDPzPd$x(-s1 zR+m%JH1Y8x<9JuyncYUyCy$&b z?~{_#Bq1|$i5ctto?e(G-H5Aj{rGZxe08qtvb*moHsv@mVbxesfwHm`X01AOK5|*x z+zPxSsLPe3f9`7E+ubmQXit{uy+)Nq`Ta#D<=~C<<9ZhUvT6ExOvHa>kT41y<4M^o zOzvF?Ach9_gX4nRKXMpWi`lH{D}hTEhea17QV&z zj}I`9%tO_hlwmj@8;%}RQ^K^}b%QBk;Re;OW_TvRod2ipUN$pIk8BiUk*u4+F3ye~ z#=|ytgYtN;Fd(J$M^MR1`uHUgN2IABM3GF1G4gmR_ z)srA)2zYVeT^4Hoy$~Z=_Z8%Z#D0;X^l88*Mb^ zYJ)1n8Qr6H`t<`k4nKq9iSSogDQ!E2=lUZQqguFy=0ybu+&USYKh3-GRiF%|9fafp zX5$sZL0*6Lyo(8aMh{7 z<*E=xx#N@R-=QRGChm+~e8=y*B5?(O2V5|I{s*iWth0jRV(kwE9}@dvMtu`-fjC^x zc=y{pu#-d-kR#l6S#60Ho5IA;`Y=_oY#=V@dFeki? zmLl>zW|xn19@bued)s2SaI_-l{{Gnx{~^|l%6kOJ-#Sw8Bg2<~uphq?mTr~N zlFlo|?l&0vYyuO@66qW;-b{#$W<1NPeG6#4b>AGgJ zOyEMkPp+Lp^_=B9CM5B!!#c${RC>4Z8>j}QzF!=$2(sLgS*~>oR)e-+gRnopBBX>o z3JrJ_Dp#L*txW1Y8-U*OWkgWRB|S-KB$Hcm3v3=#tJC0j**ry({PcZ6)YbD$F!&a9 zcq28!Qlg$*jm=o=gcC6p3Ce1$o@ynoEv(4C(-Di2K{Uw`8Pf52+AQ$N^vf@gewH}y zD;H$H^IeqHxJnR7*QffP7&VJ2=dm6+rm`F+m#TGH@|3v^L(D4dc>;Wplp|(* zLqB+A-JgfLNNXk3g-vk5CX%QW^7-FEvi#}Wt?~N0FVcZ|@?gwcwAjty0}k=2IY|ao zCURp#OSU5_ZJxEASEkp;sOp5<@v1R|&-#sEg})*sir zjmo?t{wsiBr@x>$6*5(7PO)`-+eduE_oaAVA?UL37=SawxAm>}`#cPPnvwhfOIZ1v zWKkPOMbKJ+iExe@SmD;xRf9P)EANciyyc_)m+iG0ujXFz7p|3cQ@Ks2cwoVGI(F7@ zPsg`c$U##C^G+bE@^4*gy6;+g78&>yCSO_?M2M*hlsvw_&5b6A;z$eWY{s_Q zazqs_MgIVssw?=<&anIi0Yqd~9ACI1{^;#Y$q5-P|JVds*5N_2`)0hSHt5& z>l=$5!_f|lzLs*c8K|9r^hUx5G8HE2l zhl0GjjW>=~3YrS0U6+UjSM#pctK zMPxLEV(fp%ruUM72E!>$Wt)MT9B!=W+i^aQrd9rxZQ}hTLLHTeK~BN{gwSRPOu#XS za~Uk`GRTps$VWSeCkW0%=*V$|qm%sUT<}h-z{9T|F3SeBol>b8(83bN?6!X=0Z7{X$ zv;Nj=4Xqg=A7MBdN5}!Z z82nFx>{E&43;5g)ZJyjY>b*I9Hi9}tL9nAKC`EzWP@R`Emj60Ok`w3uWGdeycJsAi zf;CFCv12ppxFc`I^~C)07nLs?QJ9YNDPq%gaecIwKwD&u@%5@+*?>@pz*%n#ootDF z@DrkxfkHt)qSUIkoc&g<^a?W?<@@vZV?x{I>vW|mKaf^GhD|N{50hp3MJ@TP>n~}Z zC8VklznEUV+7+6PMXgu-Fj6_MvU~CXS=NoPcH!)OSAux|qfx>Dg71D9ZULuArSXp0?L-w`u&51Cs~doJ3GAuO~x6wLD=;_IGupD9man za$gzA@mI=K`OK9!k@MZ}S<|zGjJObyyXN)@&HEm6Eb0yl1D}gs7CAdN)I9&Aeird| z00F~*CLY`a2jzgo3x7bCewpz;OdKd5Is=kF$H@fv8RR~5(7MnnQ}~5H-NUR3qzBaG zZ_SU(zSRjFwLXlltzku?d`}Z9$3p6TXgsKeki1h=D7ql)Yia$=r$GHia`sGjNi#X_ zugxSIDzkl=@!?fN?XPiiBFp!6J`R%|%wJ}Z3K$|NIqIfI_e1HSF_9V^(M>xKDBq)@ z?fhY5R?d~zSI8vNC1)=A(}dwbSDEni*F3B-rb2#`O$jiQ+TmVd zVi!?@$mnC{!yLIH;^gNq@kU8qM&<7Fu}pYEHm5SOH5TxL9$-3aJj?u45!$d(VuQul z%5$rJAY6@>5ivicL2ifpY=AfULHgq|5No+xSnyX}h>BecQdi&^oe)T0Umq(_DS{-$ zyEYlF1(-iNA!oTGX2eMA@?Ezx;^&vHs6BvI(&=Eo>Q|cj3CJCuAK`+VWlkEYTehq0 zP`$jWH>%`(u`~G%U%j>}s!02TM30`vbkB-@Q$TrGbC*|4@w6JcrTV&E&RG@pUN4!kcfm%t`( zH?acwxj-_K#G27Z27AtLYer$t90Uz3Y9elyZw>s_Z_M-jVUICW3_s+<6|OHy`J!vx zYfN2!n!JPR9yyV7wmTHAQ$6e#GK=KVQYfC)ftr!vZ#PFiIP<(IJK%m}o;7llST@d{ z=2XSW2lk0|JwuXxt_I!}u89W4%@X$7N28Cj3C$zRS7X2M_wZax?osu#T3G|t%VZ!A=01u)Vc6vaZGUb%y-7{r369F zy`Q>>i}hJtpgBHVC+I2hZ9~RtLzdOQP*@!jHbLl(u62O8E@hpScnyb}5)|=q$wm5f z$TfU?S^7$_@x?pE*bq?!0ZLerUVd#RGJGf|X-*2}e(Hr<4~Z}L>-~bp4?AtwTHjTF zBlbL{4oTQVJfYp8{JP2*czLJBGUD{epv+_Gq?p^iS(!iF;HQshG;p((uY{{(MkM`H z`i{llX7|1@#A1H}W=lKU&Q0(8eI^*E^B79!Vstk2fvO@UfH>#X)EeRH*~GOY&AKv( zW?t{*vE*4vtXwRb>G<9T-+rgvF=LysjGM=zMO&spxKE2r<|KYM-+f(ceBS$+fsOw< z+}-J{nfHjKJNq+0PyEPyqntPRx`&i%&{V2886icT9*t*@~kAp zkSWG!hawD~o<6*Fqy-tE$L4ncC}fv2n+UE7(sUBf*%}xFQ2k`Od(^&@cHt>Y{9s04 z*(yp%V*Y!z{{HW;m7t1by;YYGU`pNaH}TqU;E(Ndbe0b#116%{*rw-)pHP%#WwGEA z2arGXu)Mt7bu%Nd%&4D0M@jCl0n}6;q$HKG_O$B*!V^5TSC5s5)pqGMh+6*|oNd7m z6+OAw%irl*%@xxQ4to(0th3uCvT4m96Yd;YXb8 z>Qz|@8yGCdFy5-{Gdfx{-b-;S36J9yR`xg6-1}I2N`c5)IVdHIZBG@HQaI1}jEPq$ zVOmrRs2sX{n~M4}lcoy6uiI9}OXCi@GyJEm(QBCc0<_zMrHfjja_1z}-3+hm(aFIJ zdjpyVC=cNlSMW5Vmz+TwKQ1c2q33D@2wX}|p-+kutj-S>-*NKcHQ+4TIq`LQn!^W& zU?%u}a*wX>*T$I6!EjR+sSS!IPqV9mMfn_AcO;kf0TL+0SPfqLzL#6?W@tTiUfjpa=BK`#W0Fh(<(}z-&@+XrpMpcs7FN_A6WnQgCjeH&R#b z&6Ridi9gtV@tb{uQ_;*GYjo~EaNbKwmFjk&da&hKUGLkzC37+uRSEztjEJ@s=aDn#(zi< zs37;lz<8Jhq{y^`G~|!KLI4+!gG_HYve6dgxt_=UJ@Po@V|5ND@Hi~)55KwLQJ#RF zjsO7x893x6zeO+J1!y_wJSKUjw)7w*M0ciLGeRY_Cy!AbNE$+pU6b4;=mw#>bqzB8 zl_7;OZ{&pRm?rm_aD{h^cqg+Fc|{rce{B0rgqeKo%4yPlbm;WX3@gPPi&2?CKx>fM zx40rj5%m9rDtl+DoEh<;RUBvUeoz=-g8bRq(t*(4wOP#U@Wo_UL)1)$f;A()ec{%+ zbgEBy+(^vGT3g4@Rp~unK{U@<-tRDF-iNvlkZLjos6|1(>pAzQxy77PYlsFn49I2 zcPCMxQ!ZwV$@iRSYHjX=2XgIZ;L#+882I@~U=dkn@(%mQO8xvWzf`wDbSH;totW%v z&63ZbpTMIJ;7JJDZtM5}27?3C`7hyAdJx!1=vX|t z3_`l73L;gN9!X8rN;rJ(wMRw+aAfLzOoJBtCex^&)OI@Q{IKC=pX>v29^W?EwEo3M zKtBXWoB_4i8#$bxVAGWTlXy`6Cm zx5ZC?LM%w>>z4Rw)u!KOD{| zP}5dtIE$Bz9nHY_0sA(4_=)_Fwy^^JY1C*Lb+?=LNL#0k_3i@QtT$Cdr!e|^ST{58 zpYu5X^cunrGHh_$M{ z_F1{VI%Dr!=<}hbfvkX9{)74faKsDHP0%ElZ9SpRXYuPc-oMBJY9-aqG z^GOfX`DwMfZTrv!;5`7y-8{U2A*v^X%`{8G{F*;ZfCERF0@@>ZZH(mQQ! zZND9_$wv{5@+&m4H;Ihvo5QplVBw-iIf%MdLCM+c1oQV2Rd+IV3YnahQXh3|<&{pF zs}NBLDLGe-`_=GTZn(WyZWyXtM+4{ZqBP~30O(_cH8H{0W*!MsETO@}OvgNghHLLP zGPJQ7AxXS>zXa{^?PqaJ-304}_S|3;e5z6YCVBwmDZR+qp!G>bhPyOiSSQW$1LdwN z9e?topwqcu@NC1d4yLN0)XHr)iOmuSF6{uYELMPU@&LRrc#H~$Q_e3K>^@v)39`0M zm16#m9}+kKUa<#g+=Afw>hKsvOUt4)=-us2vP4CWFfl#lN$bNCiEke|tf;Yz)RVR5 zn`EO4MO9EUvO>S*y@JVGSY=h!p2dRv8%s{lkW%owZ2FYR?x_tk?aVP~qE;vCp-Kyz`rGyE_m zxwRH-8^OHy%v?@Z$k8ETO3S|<%{3A#Mo0>@>c#Nm;sqLs4p5O z3ptmcO>C4Gy6UQRk*cQT_3sXTat6w9ViwosCY*_( zKkN4~s%+@5$PObCQpN6HIJ9PikZN;KS}Wu2Ws(Nxc$(40veZl;U9Pr1j@5AtAbOxJ zZSPsuH=nW1kVb_?9uRo~px8=!qxaw|kl+yHw(+zH+Q^vaM z9z~zn8{nhl?wxprhCkV>GEMJ7TI#!s2-TwjrXf%5NXJwwp{R(ag z^sJk`VLa{%Kd})QTE9?1_4+!!%f0{RSO-lAm9p}}Q(uIT@#+K>0E_i>Npttxz5=PV zCBG~3P{h_pT|{{U7Z}$>0ZgE4%8KJ4xQ(&XRGzUQj5HFDB3z4>fqL0%|H=~#vxnPB zVap5IA!^Q)UPj3TbcGcX_E6CPD*8C>lN{?4Eff@J-9Kn9V&(Vm3gHk<4fen4ho6xVdG+0UC`quFl)+9m2@xBS4-m)Ojx@-$bJ zisu7(w`teR*xu}?GT(ia&P$U*8)OUmzxbEUEt`1ZX`oQP%fTU zT>JTmqCi=Fi{*};$5jvRk?QbsNWn?XL5P}@r%@*%N_AVSq*FLY?5ry}vTgJZXPWrb zG;6|f6R>6i!74+V#oprB1y8A}z4ZoA437>F7ch;I>X?fu{35*;jB{7qTKblsmNV-@jppuF6LM7`eijGvdAtn+ef`4&ue&*w zfqyDTYdB*N;9n!7qI^K!r2z;y1?CzVCgrTpv?%fFsQ-`=6c{ss+Yjy%?7IA)GCkqE zQo^}N-wSuD92K{zXPcl*sfyEbavJkHS?(Z@p`ieF$<8S8+?@?|yfnGD85gzwEM{u? z8U@#^oIA&x5ronPxV%v+9(6^6 z^t>&!EgHCIt-pF;o5;Ri$FbPthXD)3hwA3qaF24*l;+XAiyJx3 z&}4^y{T0lXU$KlGWpe(jA$7HVKubWf9|*$9y~2_|X=VQws(*Za-!I;@70iIforCXt zzvD`N3Td4nI}5~m0HnS@%*w%n0Eo)lI*3nHtfdoNqWBvp6$04Cr>i;wk>1iN)C)l;L>>sIpQ1??> zS`-jt{V>AoVi{%L<7B{fzitBuq*!ZM*CBxyF%?21!B*iZTN8VNfQ5w(kt5}SRe)K0 zUe&DA!Vq)f!p&1=aXOoVm>VGhf**Xcv2Dg1G~^07PsHsvEE>MHk7YG1Z;fc#S#2nT z(K?<=9<2`HmlB5nT*4^53fO!OFJk;`rW`tlTnQ*)H6!PC!^sZ#AJ=%5&N5gC6Jz!K zL@<9$yuy0OwsUuA{02_&OW3m#++`gtGf+1e!5Y#(lh}Mk85m7!lo+8{8(u8LAplo@ zONGX%H?XMhT#d!0kYI5O7wkG~PZ6ciHv|FU6h+aiwai$~2010Dla7Hyb2sqC5T4O@ zn!*^7@OSxH-0sFzQz`rG$1zmxBj`hR1xFCkeW#L#;;+lxqFxRvnP#$3jl=3J5}H)b zs^LLvM>+OLC>z#UjLw+YjLQz<*7Fq;1L=*5X>Js6w(2Z0`P?lAJy;<4@4Db|<8dE@YOO8hqUX65JZu$?#@F^dQ({ytd(C(PV#!y4 zSGEnn1R_AXcNUQS5eYzF78It&FZ`dwG6iE|{ygk6{|+C#S~~oe0iX0wd?0}8uJfBwaz#E@3ol1P5v`5XbR8Uc{vfFA~Ehuh3Hvi3X9aM7d!m3A{2E#dSbm)0QiK6To z|A>%@6K<1);RKjk&iwIpVj1y6nyoVoCRlL*2FE-^kZGKtSuFe!CYv%}1Q_nu_k^Ly zzo%rfh@zo35$5-2WpGX@Ft@axYk1=Ni4`%{r9h~Ol}ZCnbQ*UXH=`M!95q=cZwiri z+h_5~GGU>+l3?EOC+5T;sPAsoUp;EsrQ&v2Y)Xg#g!2yIrIE!B=#^ZaJ7V1vU=cJnanl-{YHtGWYj*RGTJDeH&PBxe6=b0wC%B?(i z&ArUS6Y&Fsh1L>!t8Notw%Z%yB61J0#w@rE*70{HNrdwBTJ5>K)(@U}wE~n;14yWa zCv{I2YoH_#AOkdMmBp0))#(=e^Yxs-_!AE1I3@$)!b#!n=A3l{CP=kx2SEoAZo#D= z{}&6oKM2SrhrqMO4ULUgfEBJA1i-Pn9_oU#00P``9r=p69?uy5?kf$-yzV~0^MJjn z?lwVua|FP0>jUfC1rR4DDc6dLRrIR3>hj!TVns6xjyHPpFXs*7L`J{e5PGviXvZstPjw+($bXXPH;fL1pyB( zCld7Fh7&db)j@AOPl1TjGEvS!SIc35;{tp_T{@3lfSx&wgi9Y_Rw3RXtsSuACFj?u zfOZy4(hW^a5Fr(nmGH=u4>woAMq;5v2mr|ruDEMy<$vy&-WzUq;yF4WE|Gw?83_W< zD+QW%JEt9*K>lEs5L-r_`$-(3T+l5X{DMNw7sk09&TOmJg!I)#@wu_N0P;XX2~$7o zhJA9HdQRlJrcJRMZU;5ZsT zbbf7w@VyeW%hrg=$|PyK_ffg8#14oyQ>lDpr4!Z0wW_oL*iO}(iYpCBo$798pPl49 zGRMvNJQ?n@h_m?pRP3}1<9e%g*)xPiD5*h5Zep_1M82~ZRZ zx(047`bVnVHIB@E@LWHo5uEd91^yHr&og}BbqxfKEBw&|bgw9Y482tN3<7~?*wfR~ z!x6SbVPb&F-*`GI1&@#cyYxI%$Z$@WV?q=N_zjx+C-d1%UCUbdG&ex7aZ zJq<w}i3qjj&N zpC!92U^QGE`lBeD2H}DYQ`uh73r3N`MbI0vqL94o&?N2WCg`xwLI!2J7e0EBdtmxM*wiIs)p$8j}q_NgED|aSov6Rws$?l>@F<&*L zszIC+2&k1bjHJ>jsvuV-WZD+P;rJ?qT539j!B!y{-EW4)`H}sY-!aVRd9SxSvQy{v z4)*HTkou~9>=#Iq&Vwf=;Q#B*D2v~kDE@zBeRWjSZPzXh(%m54DM$#2pnx=zLpLJb z-6ErZ(qH4UZNFiFriVjM zMG%`V{L1wR9R>uRBbGO9r!gdz+fV)uj(NxdPT<^j|KsEq{d*l27zK&Hj}e=FScuAa zdsny(+*k77^Oc5_aYzk?IVyOcgHL${liiTlE)MZ53U7|o&2(cM_3xE+2@`fcq5)}* z!Mz+9Jgw(@f8EZB4keD9b+tBjT4|sq2Q&$mVdUUNSjz-0n8yK~K|Vr#(Ow8)Z(?_O(| z&n8ns>{Jrd)IZJ1^zM0W$x!84CcCZfjrb!9Y-cTB#djGf9crZOir`7h&! zeu*yY7PqS&X~Ay8+sQai1=}HQqwLb1c4Q?~ZHE)f4{t^OF<=}W!k3N#O|XZGKjPwW zCnI$YfWGJTr=8S~nOy({W8I$K1E)n4rAYYA`OZfB-O*dCQsdzz5CYxP+Z%R8KtvSL zL=CdxKPW5H6wO-H<~hHxgz+e|Neh*@Q^ke^$>E zLrmu1;iYXbQ?G?dXVJy4KSXdRCds67aG}9knCjy{&?U4+wD@@XXUSL$qLjUd|Nyq)H`*DUy8mf?1!{hfQwUqTz_|MJbG zhg?5n_5uZ9PzdpdUSfB^j&k#n(-?W=AR;RDD=Y5^J`wWgY@qD7y;IycdOUO0VE z9e0ZiTH(l%=GT@MJ~sp5u~3He0m(XTI@C%V%}3;0BLme4#Y^~^3QyUX2^M_Bj|rmW zi}Mu}?Z15%H|)4I1}=3J&ard%98q8V;-U_6P^5^EPlewvs&IWX%2Af2q~Cz7zGPoH zvPv+|hGI(8c5ZfF5Upt|>KFq%J#vlOj0FSe_rHcy=y|(`#kUrx0k8B28b3WS7E&0= zMHIM|r?e1ibmRq=jA%d-6Sc9ksb+YXiK|n#UUV@CTnVjh=X^=A*naO#BGCYX=gByZ z?mOD^ad(Mp!Eqe1g3CuF9b3{kz%l1$t}+sVGwkZTKW$Upx0LY$UMe6P0OUajfshDl zdivg6T}k0=kYa|E%9=N6j*nsXznmjTOTm3v>3(h|_w^M43>WZ^NJvaHy!(5&yU@T1 z6Y4)|(_jorn&QL%M>++vf%p(#@;z0R@)5ptDVNS#$hypCKD`2_BI5rs72#!noVoh? z%J~PVO$mfVH8eDGfqlM!*L7vN$M1UUh-7^q65VDe*zxo0`}1-8DS7@iuxZ5s2nDnH zKj9(ExwCj}RWZln`F|U{J}{C4K76*PjzCE3Uox20D#Nd*J)c=)6ZL}tON;3@OT~ZY zdQj3MV19x5W8i4t#w6#H1G6ze3MTeB5TAgN^Z{qmUkuBE zqDJ$s>au=b7e5r!=MFP>k8_iGuNTbPqH z9|%``T2yW^T{{k)DA5fnyaUXp(?8FpxWLK#2*5L~J0(l6wZS2f`5^fz2$?+O zt$Tobm-c=v*(+K{*X&tIl9x7n6w#awOwM8kKm1&-?YeP#-Gz=*h83{ba%qC>u8JI{ zeUye5DrRIETUM6I$+L+j>D`fIkc1N+lpk<#HI;nrl&w?C+fax zug$h$GRB3$FVH^p;eTi+WT0iStc?sgg0xf+U+Kqx8}Q#%*aVixpL@kxyhfo~?);JL|vi1MrN+n10z6Kg{6KXA8qb3bh{@&yQ@n zcTJvT#a4OXXR1wyPe2_VA^nytytbAXTH=|nw2J`#!|ANP?;2F05051b1MGi(<0%UJ z6X|>5fTbq(ugw|=5P>2L|4&HMvhR~OkSoij^I^CyyEB5~flSrsAIo`t$IStpIjbSg zCm@6tuoquhN3io6H*)`zpIiyX1t54_n%5vWB*em_^bS6boQc#BPYe}{ZQHg_pMmd3 zY$G4w?bWeM`2}y>g7{%6NG2vHvHP>8YPp+#g`=_SgUeFHdU`2bueU{h-DA?zQa!J(L_glm(>S$8}K`FnL3s=`$vr2VbvqK z0oHF>kK-B1S=&}WxOa7K45kRhk}_~;9dO)b^(My3?57cymZMlKvh$%sPunccC)MDE zk3g6&@*D9(N)0(Ov3JVOGdqgENHE(}hbC8iLY&g;99Xj24Gr%O`IZJ;&n|e8lRzy9 z#Z&5Z$unJ^m(5;ngyh;N<|mTQ&AHl@5Hb|mmt~G|9+!y(c_O(a0N`w)uNPHi#c6>(^qX zD8;0upMekKbmA?R;opOKqg3CAef>rd&R8Iq8UQrX(CIdCO5;lZI)4t$!1@0?LB1j- zXZ;6&_@Pm%)1-XwdAT?J`SWM&Xlp()pNC5gfL^(&HH?~dpKT4>1FsQuQr`E%9U#z) zO|O+0P$u5X%66A(*64T`PJg5&SH#{cE_0sIv;+y%mKI+ljF%a7na+ie**@Ca5a_#P zBLN}2PKetH3_w0(y(3u0-R`;~Z%J<)bDYOmKhX#dWmsr0=m0x?{EL?@W%VcW%CUntf*W?Eg{X~Zt5+gSA$C>7P?pd{!>Xc%`*WOvP;5iZYM7+Q?z!o8Bba- ze8d`h_nn`9TSd8MEiUv~B>qk2%DOP9($a0OnHLTmyDC!An=#OFuTp1m75TpM=RC^Q zIc5ISa^<BTx~u3DHV@GLA{+^0OfRqaZPX}rj(IH?=@P9@aFNaY zYES@GeWu4AbL+$31*mG9jLi!h2FOcKfLr2PS;O*Awr+cJJ-0Q)Fwd3@5L3ve+guAv zcOeQykt!+?Z=lfhJ9sL$WT-9E2!ntCG3X6@d>_xBNAE2Hi$svf9<;Y-QENU42buzk zxHximnWOeQ8)!Z!2polmftZb?_yfC$l`vNg9KA(3R%UcE~-uFutV?Sek3 zYEozF*Lb{~tLWFCG>55O(!dNimLhFrJyMrn)=&NPw zgJv&vzP4fprrFNGs!hKPZw^OQ%-KVSAy%@>!S=}dc--CwarVKAQiVHc+&NxCQ|up_ zEuF7yI;yxGv~R5>u2aXfczD_<&gzmJP0HXdP7<;^p+f(T<;E8AjWu-tVsoMkzH)|C zbz#D&Ti)K zaDlvm^R+wPVhr;^PZSh1$@*o#X0)Z8w z-tUSLzQ=+PKeZA}!L9mVzUZ^SKY*AAYt6mH(xU3AQ>=0CX~pM>!gK$1$egRM#I!`P zFr&gB-yPnU2X|yJk4CRGz)C_D5paUs+!$<wF%e&H$h({S(VMwt9wvFyjM_A z-wd(4><#(Peh)Yy=R@8F#m8iEq6eIr;_mM{RtHDN4|;l01gz?-pz`kq{ajRD9vw70 ziES37&w>sBYA7V&w2O_4ho`n*GA=2QNo8fnwVP(?-$5?v-!rDm<*sHdvVdy5o`Q>|38P)0a@6`Rx17umgt{|5o--*` zj?>QL;o@@f)v>}*HGfmp@PwIYl_0iT69##+VO8GcowM`{RUP-GIg2UWMFMAch9+Ns zJ?EeUYve$$=J`HqG!;$pOS>bsk!|cR6rS)fQXL%^$;LGdV+M8y^vCcA88|WSp|!TN znB0a8_YQkpzx(RCGOMSW_x66~v-V*gZodDS*`Ox8Ql&z)+W7eT6N;qn&Ok?r>qs3+ z#Amp%BW`EisI7v)*C#5;PV7zwU`Uo5gPRV>!J-#F@SS$lo(i=B%I zKa?1CaFnT)l35hh)lIA8!!yC<_)~eJ2pMM4#l(D-X5hKH>fap8@Z7PfQT%at1JKIt zWyf*%m72xH^UN!UUI@ya<>~Zbr<-*43!6oP>#6b=D^~}4g23@9@A%G^-}{-HaO3vg z^BlzjezPg>d{*zBtu>#t4$-J+mPFmWEgg?PC~{=QN3S2(moEhltrBa`t#>kD{JxB^ zeXF8`nW(vP2QO84{9B687cuD5SH7E}s`vG2eqWb&ItHz}5Q#4O!#DOU?}wh@aW(QF z&9v_^7-$z=A=tuF)yWJUCBkQLQ*N+iR*u`koE+G}+_iCUyVa0P6-eWSCHiQ=s>*g_ zoRH_laWO5@3E-$0m;z)L#5#Ufb^eFA5hTXK3eW%k^73+EWCXpLgO3e7>)cAN!2W(J^KdqL5d^x$r zOp}sl9~YL2FKe#gVfZ2%6eUWCc*bS>6r9>m-c8g=GJkIAwK`jp8s}{>6RooQdWM?u z>t|0l1d`Ht;%uvqSHaXkC_%IdvDYGgBlWjDje7VnTE+w~wX*;9l`(7w{bJkqxd5&Wi z+XNdeB)trtW*!KilyU6Mr!y6P&vG}tKQ|aKn0pWtj@MjZw(K#xkay#X3h78y=4$PkySX<&yMJ4X9uv_EFnETYDi?_ z80n3(#bT{zglW8~_Gv%1Mp}QUlwoqeW610dAVEy2QJqJXgfZA|P47~v?%c2-bI**= zWPK${R&wM-h-16oSx$yylFek9 z_JMw~mC8_GleA*>s$5D}>iBVDfC#E4RUP)7y5&eB&RaguqE8koYH*eQ^GlSl7%W%J zC_hsq*etxg&P^Xq=A+^Vq-*ZrT!#BU9o%R_YIYK~1+0rp-yS=WMSXq7K}g(hzt;DJ zxmv2g#(#7F@sq3P#Nu|{;{1kr(0vq7JewgsI?9MRQ<*-xmQAhVCW&U(8G*?anr( zK`0@}fqfY#4-Jw7f4;Up-tI#=7?_=8HS5Ei9q&Ma`*>O5y9Vuffia=8#mO0D}ASEml zv+HVXw5v?i)Bc@t`#8qO#Kc#hTx!f*T3L}yH(CPqTx;|`@!|iK?(b;Gh)LkCmL@pf z0zW{inkU`=rhLQ%hX6vqg*n>(3NrP@*ZNg~8wc%tfJdqhd8?y-&vI)0m*mj~G>`oC zg2@Noh0M#plD!*#8irgKtxlz)*t;|R_Iu&lxdZ(W&fV4|ILq6tj?>ZnP|@Wu)pVzp zvVzuiL1WFwO-sd0O%<;s;zK<5Byo0iwO_G#JS z#}zv6okm(P*GU>?@UQeR(nD4w2MR$4gtwuXz0p1wv?E`Ih`uYhKbfS#6F~II))%cHnE06G9g_8U@f|82@VQ%9F#^lzmBt+iJnyn@SPF^YXhxaUal`=A zksweaL0!iywaTu~hB>)`p^FY64qlJi`UIx(d^DP`Hl1uPi&3iSbhu-y#K(tx-H{oh za65_+p{~=OUhT=q*RE9ThWqHYf_}eoG+gzVUGibBKZ{%W57FuR58*6vKMCeQ1Ire& z4xMJi?`hNg{RiH_CKr6G)OQ!q+mD7%zo&Cv4$^Dr!TJ?B#_u20zTq0?n>?dzqmsJq zz62caiHSW_Sugu(TVUhsjJM6Ug!_%y=uTPQ-EP`otI@%T2z@{y zmi+mTFRU-W8|Qg%j3K{AzY(1@ONH$8A!h}zSm<^Z2@5) zBv2hi+P-fTn|19XGiA?5kRQj5Z0Mi=&bvg`-sav}*R)ed zMay{IQDyLgI2bPoraoXf8*;^zmeJVq6i>cj)$}eApsbbE9C)I&N-!?@-^BTzWl9Bi;9vGdZtYCtcVy~4pLe4!hCB=6hGT}Ad zk-@_(IZ8Dz^b<6wIlDVziS7n^90%m8zcq6U5H*jxs2bjKZLO~9C9h7HBDSK!6Mm0E z%U0`#W5u^JqZHpMCZFNQ(~h1g(K_92!S;x4kuJfpWhFapD$09fSk^5}S(IOVAItn2 zOSt+u`;W*n0(44qkzxM`hbg+1B}!ZT*EeO3I;%CBwS>-|K{4yL-pxyE$tr6O4FL}2 z3#^q;0ge~wXu)2J+koEuVR%CYKL3^j*NcFd4;5Z;gL)OXlo^3@AI1-O@!i5zXR#J) z8H8~J$q+&U{Hlju$?xOSqA1nJoDF`%4Si=Vnqw(;_RkC7zyjunF&DM?3+ zzCyt!8~00MARz-oeViBGchkg)pM)MRJTK8m?XT(l<8aK^X4eSm{0Fzlbi}afhLDyXFJJW6rYzYYh^JrZMZqi6O__%4%(W81GdkVzI61tgi4`2l8|CjMq__dGKq~& zyqf>E+Wei%jbXcq=nJ?r5A|mxew(A0az&o!NP<#{GFs}CsC}b9nwFhiehu{>0FDM1 z3h)8T_*DUwPv@f(Q&JmksrZc%w748NIa1k@=|_sWmQ&}H1%(8%A`!I zwu=h>LCDHS|LL_@ud6!h5(QRCC4m$O8e3|P6y-M&_4oJ?op00Pq5ZTNIUEbZ_0Dc| zgm1cR6e8_pByRBJ=OSBsWY{5xpBOD<=%cW-o|E~>7sTKOHb&ToZX)1aFQP<_VXm~U z30endBq0*+lbSh2@(Xp#>R`*ydG6bJ@)`$)h3hwY>hNZjIS2>TgS9TWw1$Hp@598* zF>;Dp*vCw>Qs89pOZIm!QJsnDg1&AcO^8YaJUVsE=qmfB) z<@buEUFW0)E75*#p+XsuR*BZd#h70V(Lw2!S{w*5^xKN|pKhv}MO)`+m!@_MoSa2zDn`jKS2qv zN`Ke$vC!-0o!IlzaP59L*>bwQ6BKh5E*NEx)^PPo3Q95VRgX#ph!4xa*KfBa15Iu1 zCqK}x|1Q{mP*Q^VJ{1Pkm(x418_g$k-oJeN59g5Sq@m*h1FQ?Ftk>Rl0FQ;~1hvzb zr-x%-`y{sdfvLh_QC1{-B0ugM&A3L9>`v;5w7}qpEgh~^abh-?;QB-zl)$Cq2pQ53 z3T;$J4rqxPyxQ;h-kS9VE46?4Rjngal_qW@+H3YxxME+NNyT8W|F(3bx{wxC=%`Du zXkfUq-|B5zs+E{zT<_J_ubfS(T@_U$bP;>MHwA;*rqm;{3hI-#&P8>83*FC1ETc#5 znQmE!TKcQGWqNd8L$Vo|J#9G}zFGTkflq`z&qNcSy$2F*F_8Gqra@{FPL|mxl^AQJ z1RLuJ3kjJ@x1c8}qR3>Lz{aY{9ETfGeWl&I3Pcb?$>u5iwv>Pl;=hyWiK*RSBcY(6 z@ZXyridlkbcmJ;>5qJjMn7+MkaY7 zRx|Zn=-|C|#4%+&TbH)MDEYL;bTKC>*u9%wOA<8J{?oe$Z&bds>fb!uT0NvW`xsE{ z@XH_>a(x|QKZ`rn+l=iYoJI)oB#*pasmGghR{rffS!u4?O^cE?Q|rLL^YBt07S-y_ zJe+LCdJ9G5oPJs6AN5FS#5Q;n(@Eu4dQzOPRc19LAONQic=kp^2d*90y__)#3HXBy z|H@iPpnSJwuXFkPBiD|=!Oaz?NJA=jfXxh7Roqj1AJ;)O>3h%mju?$^_5fldpc z!;fLDK>@Y2@##Tq+Nty+OLftq`(~(TfmUp))ib7KBc8RV^qA-+HGeX)=zuNF6ON#t ztea%ler!S2@}~*FJ2zA0#kcW*tvB*KnKxeiFb0ZhcsA~i@O_+Gk#P>8oSm(>@YTwd zZhznB?LkzSKloICIB)%x&#IJ46YWp`ak-=Z?nsQSLaLJR&DE15ncl5KmQ7R6d5xOx zy6mRQJ#Ck2V)^Nh+~dhfztHJCX6P9rO!?ig$DpfJ;1s{>oZpt@J2p_x6CKMeH9lu%UM`->v5RGMjc z?)t=@?DcflXPnY>-QwqP*6{%p_V*EtV&Ge`5VCe{E~(eSE?^Vt=rITizKS zq-|9CIpysIpdVJaKh`hUM5wC#bCDvvH8rIN`vS*q(X1vrpZ-y^!01_vzM=k5T|i?^ z$ASKDPL--4&R7&h6L6%9(R`sEUjaViFh8sv{oI(tRq!)(|*faq+Y^Dr0CIY?wYOXjBCM8 zbH@bhB1JVO0^HWEwHD8ZFlQ0z;bFX5>A7m$)dKNAwJUMnJT%4bw%#mT`Nxi8Sn4G>lA2?w>c;-fcP0#L;b_&TKZf3z zYJi?ij(nA{l_TuVGHsG}{tHi8UxL(S8OOcDA3{0u^{Wy0)9=YYY`C)v2E#I$`P>j- z$yhC6?cO(}pNRg7zeL-~?^@nGu+ku7W6lOXs1eQP-WWAKy=IIk$&GW2iFV}J;8_BLzgzHX zcPeLWu4vSVCg7>u4ztsqoN3%uR-JvZ(PbvYOIuiKWa7tg)pvhQd2QaZ=@nl?Yv2V* zxXqImyBUi5I%(f*>Gk^YV%lf0%6HLQ5OnQbJ&tad`|xp&XQG0-gK(@ysL(=I@oZ_! zA-k@QK)r+juq5(2Y5uc?KjYrq+(0#7Na(~=f_loz0n~3pdZdf5sp>jWh0AL-U#ySy zYZ=$Jh{SpHz?`5ZtC5|@LDPmIZqdh6EaAI@8mLrfon22Z77%0ED_fr|o3N|5HY+@fDW?q@nl`*pSMVU@i$Y?I`gO~G8W81AzhHs{G5FMo9WKLPwx25x zT10^86i(P9qX+vDLtf-kDM$Kn?spp;t+_m-f>tK>40m_$?@1hUS zfK1=9wKszKAfi?04+3aAn$?z{Xm!JEB5T@;IpX*3&87(zu9(-}iBeFah#HKwOF&xinYOJAztpWNsI3|6yj2BX_*m z9PbNUNjG~?9z?KYV~7dGPleWpGNSQ|JI8$wtk!2|WF7^NafF*@^$34co^w0N!5=)z z@6`Me-QZiY0J8A=-)c2uY9#F?T8-JLxTPg)T6+5UJljNRc{i>7)D-G^d4-%svT015 zFVPapCH8RDD~y+jkvjM;c+X4WSmW*EpSkSQuT&0qATw1G50lbcCK{ku9+)i?t-d06 z_<4X^Qun@V8EqW7kMadBd_-@#VIsb@aKN`$PxH*AMRZ;+1Za$%`+7`2&bvla4gRDS zlMke;8KeqeQjppVSmZHEc()t|V!SWU*XO=14d)x9!iVS){aAeoIdk)JKoINrLXO$R zycQ@y-eS-vJ+7wQUXG|~e`*^uYW2z$ACl#BTeJzvZaV?;>tX%J0Kl=4C?@%*R}l}~ z+%y3!#D48Bja}`9H6*Z_M9&13iNv?$Si2iikrgEWIZ&tPpO!J96{u*Rr%E_);RH;z*0&{4YzV%M%Ca<=fox` zRhsaZs}{Yc{9fuFXoI4q+{Zq96MhlO!0o;>W1(zF%|D0K?(!CQ4h>i4QgKq`Bh%s? z%VShMm%KP$6DlyJrh8pdOqvmraW*p2CKYFZ56RXt$X}?N21UKnXlqf3mR!BkOd#(1 z93ogF8?;X?1%&X!gi?sjAHccN44_Z?6~U;tz;fCS?5)a)(n!)#$UG$74HgM9i8_1IBkPeH_T{7&d!S0O5>lCQ%z2- zeIgsNhhlp=U)+g4l@^NX-R!{#F!itMapiU@Jy;Bs6~ghK7!jY1osGEXM>=t#^3I?# zsD@mQ`i1RG5E{-3WyWh}G51(Fcn0}3(MYu#b$x*=6}5Yn^8%^6sDMvRQ*>$jst~7N zlo?@bT~YF?H+@AF4rWM^Z?%Gr6OSVdIT=kFD%0#iR{OP=DQ})(G z?REe0s5`&1Dq_Rd<9+Zs1#Wml+De7zAIkXA5a17T-W)kJRXXphgRrCw$3Z8$8P%_3 z@t`K8ym4cMS#^8RTs+%G8hklAhWSOmR%vO;0Q8CG6R*b6Pu1YjvZDJA5S>id8LB}fl72i3M>M|;7@O-(UHo$a#tga71g1> zPHMF2f?`hd2O+MSjMu5sFkfs_%FOgM{vf#Z2U6hK5{iR0+|Z6@_z%GRt&t1M@^9t~ zI%D2BCjl`n%T}u1E^}>25Io-o<(Ne`2k=6s4|uJK9B$g#MOv*osj)9@Bsl zMYzl4!s}-EAzb~1Ffu;T_FAi)kixIfa)S>wg|`l_kwzr6gpeHi2&uP$Ic8Py7Ca?L zdm1$Yo_7n~Zs4!n5;?#$VN*Z!b7~##AA^!?JxtLxJ6uySb&$}h5mEYXkdMd5>C^Lj z+w{}QH-ew|e(fSCVR0ZOG18&2wNX8#W6rL5M!Hu7fn7oP_3nd5Ii0q=d7?=2TywAe z?O}(jd0)SZBQ^expV!#^QO6d{s`RSVI;rGSe)<-l! zxhBzoDXj#;fOQ-;lQb>F7JDP_Z$r!bM336Z1wZ-l^V-w0WARa*~R-PJbYT1xC9`n2#IeR|mOr)M&2EsU+5 z2|MDd`D||% zd6F{Ev_RQR?Tx5s)_s%1WpA6^Q%@J{)}|T}(YE29k~QMbwcj&-#_L)?Z(HcbLK(ih z>JH61IUA>&cr(D^)Ig){+SjT%+pmrC(*Dh7R84v1%tGnDi34QgbjvwC=q`9`dnX2K z)#2E275m+faqSy!ZP|Qt@?5On*N7o3gphT~}X z`dSl>onAKBfUR@x%}N(jJEZ54fW5MmVR^@a#~VUfPg!!6Nb!;jZHti%W7;y#l=fW9 zV2}Xvo4XRpTIO^xC7ulO4!?7)Q@KTbL<3%F@Fg>+hl^pEzM^eD^1@h_#4k)vnx?W`=XRim?cE^SD(JS@o>U<`w_5y`Ipki>@u(Y~3PDAtc@-z<8~oREa)U#sCyIplVn`oJ0$MgQ z1;s6V8}-m>9}G8|;mNG?Kqh?K)M0p4Ny1`G$DAgCQj}@`>8+o!8K-k~OK7H9VB zKw4>lAOcLJ7mz;I9GdJVC5T|5=Ksj?gF%2yeLEzE_&GDmKpK z%NF4zY*>4=%!6B242=y^<;fq_Jp^`N^$1e4P{&y_)HZm)?IE{5SUA;;IqJO8A3mNv zBy`%Cs{EY3Xt2n(5u9eEkeOduTCLznfeJ&8p>SVzVW+gOcHo`My}3!~NCQr)eLdFE zALdq82yb3WrkLlOCpjmD&1ys?sLe<(J|;{k?}a_+s%wVkh|P1Q-kc+92`s8L>Zf zXzFCKlB}#Rxo4Z@)!vi-nYj|mhk}wTfy?;rWOq938fXWgvNHRvM2&U+jvM*Bw0~MI zDq_%hQ@dvqBEYJtsX?7M^gIvi1Y`(3=OWXS)~QsLOU(py4?~RT2JK6jD!(A%sJl`p zFel)bmdW9Q3YAYEmJsp^l~RQ0hr#cUHIu1slu~ zTQzqC-1Qw%2_e5Zf*cT&AbdD%6ym*fj@)IRUew28x>yC)b*|(0A;XN-*0Ltdlr!q| zTn@9yvNKem73;;p=ROpLLZX9rsQ&sj_`7a-N6p*>GtqF4E zT{1t8R;Ihx*0xNpow7C@68f^SxlhNE9@|Od3xZ0kJjf<6_qzSnZI; zGb%D5683}l%&2(-(xwx& zIOv-6Waa${4E%fhOapes3%!<6{JASl#1>62s|dAYYdc@qlOvhXleMeYTAaA$&BLfz zJ-)IAkF0f#&C$V<0Mp-laweO?OY2CS&PTEO%+KLEFG%XOD5#S|%F)cMU^~tx3gIB^ z*Deap+&45~jgk;ciPIY85Fx_ zR)l64LkNN82&$$!Iy;lo_L!mbm^0z7^ik)Q$;n>$*lVCN)kutSfjGSGJ6BV-~+zsS`*)-L=TSt)CnbTod*eY zyx6v76}+u_z2$u6oyzLMI($kiqgqaPs7RP^;>42#{hX;U(CB<-YL0O3RE8zK?6jiV zl|53%AGg^?D2%*nkcwd%iKId~L6p*{>HMip#zsL2OLUu!B)Eu}qx?v7{%0_w2@S z{b65exn}(ekq6b_<$3W|0`^XQ8e%SarbhiBZ`^6s$Kq)S?TcRt#;=LQB}v#Qr&PFV z9*X+FnA>wdj^g8;cE(Pr`0tX0M7<51&2chs2$8rNS}9dPV~a=t_0;62w~iRIBrFcI zhPeZYYBteQM*j3P6$?F%*Mqz5Y0g)}GN=N7cX=x=>yq*uLO;-+(=Wf1^S`{^uP_GF zv;Pd!fQS;EmhE9t z2h8g6?~1a6cL{42)-;f`E zAh)6xGcZt9dl}oT-GKl2@Zw7XHm?h~`xX((6}Knbg=fF&YNbu03IB58o2a1GB_ha> z>Dp6lo4sF(ao{i3X2MlhwY z{4`r3h08G}A5Xp?ODZo2`x@YHU2WrZdkM%x+faZ{8X)#`) z>bdHz=WTDh=sIc;He8!wlK!mYzU#&()$}1T-4HDWy2^{MKy%#s_qXNs#`CAofyh{J zFi>7DG`97n81_<>KbCK~_V$V6lrhyaaF9+WYF3*(qx88pT(s|}U}9l`g8?oA>up!d z-9X6|0c-{OG&+fY*qHT3egJSN-*b^b{#mv4P@>BpB6vt^N&NiRLv_uIY4+ieAw>@Y z4cpR^3yQnH2JG#o_zHYH(fYd1uzI?VFb<5FTS62muS=s%rs^x2Nv^ybG5mbtKU82> zrqqqZ^mWFu0?$dRioE%$dc4{7GQP1nnRvI z@fyB!MQS=yVMOPi0_IrKZReT#4O3$DP7@4~^vhO~jl3l5vnuS3dx%_y(M-GdOL^iB zb7w!HxxTl~Ato{LW<1$N@)q+i7(~%b6Mx=*Ve#HPA?FfcB+xfc_z=V{+^UiEOGnOTJi~azl^y2WK0pOzHyh~^WW$pvJG)fmT zOUhe&>I;;B@ie7Txcz?{#7)z}e)VciH>cXB$+bz>$=5F1Y?*gP(VHp6*AGKz9yw** zfz{nVow-VF8E!A%|5(%7c!nUb+u!M7J@Z~*VJYQl(q*NJFBNU=xA%AN{wQabYM4J* z*zLw&10AHZoNDV^sw$c_9hUR4Qry@c~#`Wb@9aU^=)IAFZ4$DfCx} z%%bNM!kl%s=5xu2&kIqn$T0=TG38RYV5Oyj6&N*5D(SzSlPOf=(R#fe0gd$b>Mw6O zdWBB$3Lk1D1|mc8MAwYINQr^b&f(W2uHYS0ggiJbd(H|O?NDS+?5^pE3p{6~ooDAqrN$7*d2IX%c4e5KqkUKO@9jRcM`qHN87d*zcR?hvmF}^5 z36QT_GlpzA^&=-oyVR?9zY^ZCX=$>^3lmj7en}A0A|jsDOXxO77i{Xyc(0c0z{bos zAYhqaYm|JJGMGQ1HN2uRV`%b3iECOp7oz@@lpw_Q@eg6|%Sx-3+;fj7ZrX>@p>KJ1 zf87weEydqq-;?~kD1BDKYvevZ%1{gaR0+|Ub*I@VI|S`WHJB~}sZc@)zR^g|bOPYX z%X77MGsWD0`e)PY1yx-CU(6=G_&Xs|F=l22f0Rygr&aVo7&=nPK4drTGy7VLiiwWOQ+;; z`J#B0J0KQj#)Hr!``a(qb?V$1lU6pfRLZB{P9s;TO9P^9UeU^@-`vjAWg0~SOv-O` zP+kV)p_$*-Inmj>Mx{23Loan%qFd?_+Ni~=D-G_{$;#Sb=z5w zh(M9C^4Y&Yx@%NP6+$7BYklavt19a!x1Q$ci69}X;Lg@&hi!R#&Gp=Ar6&NC;Xvn( z9MKy9Xgf55^Uoot1?e{8U}^sslfM9r9H3A(>pTV59U2I|iwJyo8tA>^B8v}M9u53i zFAQjz9eoBz^f-asaK04jarnM)A0j!A%o}tzckC;_ztaQ|&jUwXtnQe>38W4ymo4S1y z|4qxpDp`jOp9H_w>sZ4*ZmA*Vb`BZ*Iz=0lLp+uBmO*7z2af=9_zJ6_9#he8xT3KD z5H}}(%Vhd<=^(&d9+J0fR4PUC<2X|5G&#_#mqPs8z4LL-kg+Jg&`L$U1Gucf4i_#X z+Bb+MC;@g}aJF6GLS3#vFAnz~;{>SK5xCnyZOHIG{xOPBMrZ3h9wInAu$e3<7;N!R zMAkDi>*mkA<;--?ei)inP7LfM^2XZAq zpI`i84(7xfNA>4Ph6eY}vtGF2HySDMnHX<8L+yLp?gc*?Z8yi&snM}l<~amalt%Ib zV8PFW56G4>1XcUg?0X@)iFj=~cg8 zA1g+TSb*9pG2r%cjEb9ceQu%bV)?_?8Y1+fhZxeOWpI-y-=$?+H8)y{sJ@900kJXE z5Cf7w`t+{T2BmqMp#8hUy}l>#~c zsXwzOV_?t$+>3qy3xN~hvu3!|?A!(|w!73&cu8EBwD2HB}5QitQtCPEo{&hEs)1& z<)_Z*qUlLJ8N9S-I*4Dp%lw*?B~sGx18LNpQ2f|iCNUUP7sdvf_&VV^{_G6gm9@j~ zXlIhu6SW!`)y5FMFBhu zxE@Oa3iUE@viSnSGXX`Y9|S%JV2R#iGb*xt-}(n_dvEeTHrN_E_J|4@0n;8}xUcy7mSIaLkTkDK8{XMSTV z6apBa3q-JwRx{A5^Bw~@Z9s&_cSPNl&yT6?k?3Tqf}L;?YQ>*9f^bU;SARQuA{1%o z9C&?0qb~UsoB8sTyib3EM*#L!)9pI>=(&h;X(cxynas?42g($O*yEZx2^mxv`ZnYW z1Al_T&a<(WnnN2md^ScJ`C4NGYIOcqJ0<0S&#&m&(MZ(=yNj4sejROplz_jt<}T0T zk31?-6=tGjX(wjLjA!cmRgGP(Pc*`GLOE5qFu&H-@O4~-HpO%% zDR*#kYiEi1*^px;gRpH8YsyZP+c>2diibB-BIbLO>{W3lKF20GLHdvH^*lPgh_Z@o z#A5EbXmgy{RC|(a$#;OX&9)^XL^#gFE24~o9`QX4nCt#v}(9#M|w{0iM z&(8bS9a!eZx%?Cr!&?Ev`I$6oY~7E~Ev*WA zhAFXaty-yWI)tz*ZV05;+tfe5F_*)|B8~5%n!J4yeY(N&`CF4^2ui@YYSW10uld>8 zu;aq#=t-RVHienMGrAEZw<0M>U<_4?_g)N^WJ zmQ`eYCK7B(Ur!^?I2^dC6!IUu0~!cH`6% ztFSXOX==7 zb3f1XzTY>_80Y*6BCNgF+-u(Ry07bZE4$_6s=T=Pcz4E`?D*?LdtN&$lBRx=>qvR0 zvB(y|H`=&J4kQ6KrDDozX4|8ElUE-R)Vfl{uS6oT=~NvBoV&g7GD($nM%p+@`*8d# zDf(u2{5fBG>5D5yA=^(JUo0yzpQL7=7R#9^wzJrNtY3oV!Je*)R*9b)Lh`isapu3b z+7+`Qog+T4sd)Y71%1L`Ab^AX6Wdri^1=(IRpAEtKwKu>FepF--1wfKvMI;jPgmZ+ z;9C#Ut6%{mK>jQ>)onH|x47Sp08NyP>ccH^#GIu#82VfmmI{3MxPb71!qo~i#GY9_ zDKP1IK)ylZ>^`yn-2#P+xx=~l^H3adPAVN=ml7Od60lhPd*8NJ*P7>bM6g5I(YoFb zj*CtUU#^e4&^`P5!ij>w2W#GjpUq_GyT?-(>7!3iD4r3(_d+2K%U*Y1JV1=3{&u$r z1_I(p9pA}BzzBOpZLgcHsD>owS>3_498W6P2sL&tPoiSL2;_KPQiPpJ6l4B4m&y>R6v6w;dK!v?zRUoLtL30c}93pqhddRYb8e(fEPM z;>Ge6%*?lU)s64EGG}V9afA#>bE!0Juj0V_EjOSrOGV-o+Ml2kdhj8`F(tYN9qE?{ z^Wf6oSnbJkj$I`4QiB#B6U$19Hd#}}O3 zGJ&5e^<9%345a|vt2=A%woMP|$5yGMWBpS!YN47^1s;n zZuq!jF`YkrQB?Fu0zG~N}p!1pL=`A}0FsD2bjAf?Bm7e^hoO2wE!(z=gR&fHG zPI%C}|T)C+b*17K-IJ0kX|AFEE~kORftUMdN>qpAGH=A08HvZ1UM4ARx#u zD?=~%Sho-!DRBFYfq?;tL7m`W1iCzLRSyB)f#vq9^>omtI4P-WL<9znyG3Yl z-`0-1x2xK`dhT3{#rWpJH#_Rx`&_S%ye6CJE#IbzaGAeq4*cp{-^6NJ)add)`5Jd4 z3>{#AhjO6F3WK()ZxNy%jlzr1JsXPI5+?n>i;WzyhtxwFiG^OiKD@cTl!*V4WqPNu z=t8TZ?^-hb38?bQ1Uog2&xG4QF5mxTUBxeY|6F{g0K4dq%@^roVY6~@K1Y8X6P3iE z9bs=6B$9srl|Rs}+Y#6z1rXwcci8>ALP5={&08F4?b*M>=DrUOy^`~>gH$8D4PjCm zB(i)#XKwJCyVMmn8VHm)n}v=3G{aXmwyZ4W*?;ZK+0XDnn!%^?BI_BFnPAA?BM26K z`_*xFY*ydnrP^f8f@ajEaa6^)WYzJVuT4P6EYafyJvz33Jzdrg;f;T&UHOJ+&JkIB z(x;1ImB^ETU=}Jv#sH{i7Ubf?K~c-7s6rc^kPrl*b^R5U=HNyEKM$s<66T1^c_wE)KwTS^a8l)v+i2+!Re?;)1#k4oV_H%xX& zM|NPt;glQUIP%OeGefV}CGAjSqPjM=Z{q!NAjxsQY{6&s6w$rmw0HT?JHVrYM`2y! zlhYB5iX?|n|FY82{@FeeyiY8WswvsS~eNqttGeQ3m{=jhBDD`1d&r(KLtXV=!K%_xgZ zuWGh-QV&D@$!0HhX5(ZfAsC4kbO8quGSAH@)O?24dVeY%M#%mGOqYm0gZ8#X=LrC3^71e)dG>Ij4jm5B z#eaWmX9r4T1H`^KIfE(ilz>tXM^d>VKA_H?oS88?+aAVeH^+wP12D(23m-t!TZ(SJ z{nyKh18Cu#P{TtrC=*w?(5U3nMS)1b)Mz+3jW#WtLNu5G5}byGd%lnVlaG1N79c1BIib%i5}!eP4D)NVvv+2`vj|HzN^3 zDn@m_eDr9umwT^4q3TtIQPXr0_u?RJ6jD2!HpEj@V5fg`iZ$D_NQVwXLP7#F1JnLI z=*09}e3**Rq){w?Q1e;&fhDqPDYX#%6dESl{sOWxGGyqpnORTk0}|x8{Mn-boR7}d z*5|*FZZH0YdDyPjNyKB?&Xx;To(yvL-MEabyDMdh2;>9PiW~PQ`)=D)_;{v-#z&P5 z1PEK|mxDjdfA}5tuO&Z+@2x#F!6eErY{Iu^)iiMHABdA{i`A3iccx1Qp^r1inexG(@`rCpiS{;GvXb#TD7mEd$mJXB$r z^*!!nh8O95By4W;*6QAsu2@)&)sVdSCDDgEqZ{#ogQjiL^pgop_{E>3v_P{7#+X$1 zQbQ6#qEzZeL*lRL3BEIEoPF+f64`7_g1hI0RB z(q#WjJ^}>LTJ`6v2ce}@A7>d11ciu$ctZSh+nI^l^xDJ2ZbiOmDI;NEi{AA{hdKk4 zc7$*hS9(63^Bd1y^`Ng1OSi585OgF*Y8*ivZ7!klfH2EDgLvPXFB~`lP+FPMxhhHF zZm)X!-Kc)c?^x)?vd>uoHAu~%F6TMZK7HJzF-yu?G);7++b6@JSs@qC$g9V*Go^;Iud9cduLHm?$3z?(c`z zTCf8VuUJq>Rc@Cg?>0Xf3>m|ni0|AV&Xh6zl%bAndyilu>)-PyZ%lzEKkQtvR>dk-YLa7J_ck!^6YW)YR=zhBNpZ z7LC_`*G^o1gCjW@C)8nBv07Bt+6jy!FfK;cB>ZmJVq#*2Gaufd_+v1VP9i6%3eAKw zGe<|UI!UiG?cideHw_bhzmXDEexokq(cW@nxO7Yjuv|ap{k&1@5@lQ6Vk}j+>#Lb$ zWnNRJUkw;u;UQVG{=M`Bs0NVHl7?NavN<*>YV?q2qBn_1abbLq>#9W=(`F5~xk{d( zPervvL@ohAlFM@pn6gCN^X;m&J|wPttEIm}Jxq%=+GTEXIQ7Y|2lKxEQlfS>j9y76 zx-(e;YG)ebCOw#LzYI4SeJ3RzEykAb40djY?e;sxWG$E(mXkDk+^SE9H<9jpJw=o= z25gVG_MZ(r34+_Y3vzEZ#;X;z4bi$vR{_IS-kC3 z)$jM;_5=dgXR~0-%=g?N2E|a?a;Z6W2JUP>RYrG=oIrslB^@0yDY(V&y2=0Dil2Y^ z^2KF6n5x`-iZ-KX3d(t=kd9vk1QMVAPn`h#jxuxg|IIC6Wo3mL84MopZ+;C72)nuQ zcma-A4&XQ)!YslZi68a)zG|+L^JJs6;t8X!h=qmaOm$pac*rwgKl%Lpm*h?)`;Te` zY@-u;2L7dOR(en*%eL}RmHEhUvPW9W?~V(++r4KQHm5?-q>*Sbu96995Q5&5r_hQX$j zs>E2OnW`^zCLfilR~Dzq{z{|y&;_jCi;NDoH$IG8+NDHJ60|OZg)v{yUP(huuJ~p9 zyU_!+?b5Np^}^R#O;;L(ZYu{Tz?~@BcEr{2v18!JqEZsZC&L#c&(-KdwB>a4+WtYd zziP1lsbY^pLr9|_p#I|&vs+om>ryzDoV@!6{qrDr{vp1jCeFwY$NXC32dsGd&!SyE zud{c7t8h!>{sdp^-80GW^_D^4E zKNYUX9y~o(pl;xmh)Xt*XL_D2&kd)H&0GM545Z~S3Hp885>07|;e0O9&_PV@;7%8W z;@)V1-+Pqs>N2fuYZ#SvF85-~WEQTqjl<$c;Tu2x$0;l8@t>4=$c&MKJuS(wgTPD) z9L>Nc0H121T3!!&iUD_z4Z~Lt5<1{|YZNq?Q8x$ZAc+r7No#v^L;g}{s!T*0%+o$| zG^!|jDF*c(Kjanl(~1R)xK!y+=>s$gPG;H1$ESUt?rc&@wP9Z;wIv(l;HGyA7u!ER zkh0~alDtYamNA>Xi2k8ZF)$9m6*H!hfWDD#!i_xf0Z3rVwqKBlF!F~fXv12r`bq}@ z6C=mDQRiNAJ!%ckE9&st3vZs8PjC(kI{E9&NtSZ62y9^!?Z(oUK50%?V! zZ&PSd8o(I-Y>$2XbwGnZZgz)Bh^oE{#)_q8SybNO2-o~I2CvN=8NDo z(9*Yk@mGSJ;OyUlFn;peIgtXLP|W{cX%pJk))rJC=i%Wg2jcGc#7UL!~LfQQK*uw^T}8FunLP}p&}ko3HTgA=^^-M7jmHZoG+-#{sE z);CVDuALEdVEs7_$4iG>o_yQ?%bsp6S{Bla4*isr%2>!z)g@^rw!%mU5>I&iIcZ z!^H*gA-GwD&o$JYH6tdJyUVW}n;(m%XvV%yL{8tw>CptK$Pf$KPyfEhTDa?pyMftp z%hj-*`11&L=?;#La%|3jHrXC!7jfI5%DFS>>d=gR#S`wIr+F;q8do@eH||AHZ?7$o z&NSzbb@5o7yFOo?D25QfvR&w{%KGRuqpp2Ei}&aFnTx}GkBiC8tDaly)?y}s6%YKW zk7#%oAA6R~%@*IY9jQq*^24G{yNqTyO73`cY2ZD!+|(c4`6}(6AO&3ww_k3c7VaDo zb296v&Nbv*5#NAtCR{|tC`RrDg`i0{gL=AHLJv74&v;I5Vd>QhU+Z>u`g~kp)VF#t zG_jAQbruoyLfY=Pm_YlJa=gs`Uo+K`FX*=1vC`t<;&z%;8GxF6=R7i4yak2}Lg!RK zM?6I4VBl{0!Wq0Fm(N_*Cv-FuL{V(DT7Yix;`F}br00Q-mm-YzGf-?m439b5ccA6seV{#^roJGiXEiOieIa#${DbsJHl#|fnwj_x@c`&K5B5U@{+CtRi!L> zT;lIoH*F*baUr`yilO_{95KF&r@qq*X!`}D!c+Z|=cjeZp-?4fG1YD`m>Z@l<@jnd5rgsT1{;Xh99 z@@~|8&hOFM9|;dO38fel_7i7n8aq8A;B^@?luWS73Nm4RoSZ)^g8T$jYa$p2sxv6; z4(e7IZv@;g_ic*)Jqy1^S#@fnfUz4k0mD<3HmDWuSqO_YeP)s+QTdB-D7v{sv*{E; zwyuzH!LO7`x!Zj=CTWwm*HJSxU|m>URU>ci!}8_)_oXg%Pfa880bSLTjp6P~74>HRf_6Z^mcH^p480 zO2?ym6kxDo@trR7C^5`?9SisN6M5`JkS9A}YPmpnF=i|(KI1nP^}tn6bCfm`b$ybn zO#E##9k|VLamR5&ER(8cJoEEq`(mfMegmJd1j`?F`0ETDb81;E)x6xD%Az3rrbvp{ ziGrhKHs`qk<9O?QkB`5SGRwko4Cu<^=`}E)bN_4W`SzMj`ue?}W26#!tn9Z$GO0z& z$#-VfkJ*8P2P;0oDJAmS&%y_eUg*x4=F2h!!n*$~?Q!8_K_2Z`8aBMt#JBH|#|C-V zIww7855)~EM)Cgesb|eYjS{7wqhiC`JEhP5-$qGqXda zcAPhUL4VmiJ1UuWQldFOiG|{V170pI^(Uaa%57pMnrHt|i~ONjC)-g8)+X|cU{Uo> zh3%<#HDsp^G~^<)FX;aRTnK!p@Oa&^OF3y69AMc027nAWiMY*rVR1eXI$_Zr7R`ni zj4`s(wtY<9%G6(YXYLzk!TkE&>e6+f1zFVRa-qdxK5J?LH0h6pvJ;*WH6!cXA15^F zG|wd}cJUN_5@vDpg&kWRH{Ji5+Dhqnth;}``<{~GOK~^~1gp0*q9L7dD!Oe^nTO^YFT;UXP2{?P zAP0`7{NJ0=Nd4(K={JSFH)zXYPI<|xAt|0U^zNDtzx?Wf{Z<%sw@s`9*7+}FF03zc z7~oJY$AIv>X*{biwW_>G=(bQrHc^OstodTpHAS^-km!ewC>?~|UCYf5_I-3i2&rAM9w1Ne$x%(u3F(HBWF2yh=mmwDW?#C);sKW z0Epdb&>+TNJ-rQ8Q)NJi@87IzSFDt&JZ>(tid-Gm%-?~{M?iWFh!GAJ%1&hGq$pS1 zosB+sdkJ2gMDiYALGU-VF9+$oJ!DBp?-kZMhTnhQ=-1hP7=u_RQ{EtAc1-(|O1#p! zA0q{qQyD-RKpPp;fj{eY1J#JPoKy-!&NTPGsD|jwYOMCH>Z8Xb&?wNPfQ}vO3nR1E=iTF2vD|N;?rMEh=ImcRc)CE)wZ*X$AD)oBOqA}1|D}4S1N zxTCwv?LSJKht%ZkRIT z(EQYSt)&3-UUTE=1tQN3IS#IBir2eWzEnwvpI#Y3M^1^wVJrGhpC&X(#cD4?`ew0-PfXfhQR z(0w%bZf_{;UEMg8ta>SRr(vN3)Be2~rDyNsr2Ce-hC+BK=@V@DM{krWZ!4a!P^be+ z{maLeeSD|%lj#!B(qBKmNGDvm@|;>m@jIQ1PWl98ah!RQdJE}idfE~*4M{4+A<63| z^o?HMJ#;5k)td^p8fMHf@TEVUl>2PVVHRmTaD>;V@6wikQUS@e#xpLA*LcGJKC-eG z^t+EYPX3B`F#X-{rRy;lSK2X=GOPN89kV|JMSO*|tx`|#pILpULhl!<91a_Li@eOh zkEy&ADM#vO)^)pD*CQei(ksc7RKPn_DxKXKq+~N=@O+xK8ys*Pruy4?g9ySz@ z#u@bD*Hz&tY25rwV;EcPv*}pp>~g%?=G<<$?uq;QiJJGPYZ+<@>YxyApIU-0oeM zCQlEtq@X>S!)*Q@-BQ2~@!z&2S{;P1itl&Xhjrm!XPALl(rvFK6P14x9eKEO>7yx| zeM&)gAe&s_1I<$w)4%cGzI+owWqGS6ua<75K(7X9Xd6#-SDu2vQ~k)c^P-=RWQ-G) zPO25y>9EQ#Tw)IIacF3qL7J_d8$1WQ$w}`PuuIIVVW&p{iNW7~ocYS1A!MN5`Z5E0 z7Rnb$(9}mrPbe$$oRS4t1phQvX94?ny9uK;@lKpjb_50-Ys(6FhC_ZY-%zXCg)S+( zB8Ey`!V@Q44TGpDrr2D2I*qz_JLy)x)fyBYX0Xn^@ATQUc{1hczzPOb+1*h8cqBGa zx^^vcQ&F=crPgrbyB~Ew?vH+=b^wFR^~oNflZS>FRWQ{QD~XA6eq`U=I0bwIOfV?& zJ8bB`A&@`f`8}MNYY;ww9+aUO@(-5mKy&f-wHlw3ArLaNCS%rW7886G@rp)u@*TIo zs(wW!9_owgH;^AGk`!Wc)FV3Lz*3oNqS4a0xiu-z+coW(*=rHLh5_HjlGXj}11VVb zDNK7iO8OeZe1Iq*;h7`0WiX4?!&gLnA++%z2GA3n?}KnCJJz3I4Y5Hsn>gLfZ& zGQuv)u6!43I&c`HoBJ_TyqSh+_v&Q&R^;n^Je}j#fGu6j@NbDW0^2Ch-Lob2r{7b* z24#SsZio*lX2{Ll1tcs9Rqe-&jTQ(h{-AO^H=sVuJIS<=_;(UYPUl(@5BK7I^ZW*}5cmz@&+xUu5*K8dB>A%v?OznI zBR{;?F_n2m{>^?BZHQWf3Rx&`w{HR+m!C@W?(od#&X9Q<)g^Yh2#Q&WYg%~wqp0#nlw6%L$FcnJ z5&9JC_s7!$^lKo`_9mn9^a#9$`G46JG%1 z51}IFzx!JN%s#GBSsl08GNfsL`^^+?(uz~uB5y3VMHb>uTw^tnLU~0yvaoW*&<6f* zP7oLfL{d~pnM^r16;soSRa_I}Xo>vUs_^VZ`I%62+1n%p+@>95lgG~*`UMwRpWp_y z8EcMLRqhy+@yHs)^vaEjIrYL{7LLcIJ!#OWhDTTKz4;N0y1hJc5LLzS{HM-X;O{>S zgKRjJjsbqU03DH4O(ADO=FK<|*RFZYXIk$KDnwQU)lAq~^X=SG%ec$AjVQ(P$^f>n z6#@Te%O>NU`steP&l$4ELfX?|E_qMLJ;S)8QQc(?%A(Z73OssjKKbNb?OpOme|!MXHx(cypvrFOK(XH^_$mlDBPu6%$KZFxWQ{V}e3ajyKw9E#DXZjtoIi#a_hB5t{k_?;K;l*C?4+noR8} zQBr@^oJ{ePkTf=NX{{n(OOi7oLgIVhjjw!vc5Fg6S@Tl=W9T8XfFt@Ez(} zvL~wv`FsLfvQK3KQ~Qy3Cez=5gO4adPWDwg8!lDwL7zl-jH2{NrkXti7J0wrI*Xe= zy2wRf8NQIrQio<3vq&;< zt1vM8f1AL0A^wO+0Sl-+->f>@g9K+DK0ph*B@)|6P>Cq;WhCtj>M9<7hrfC}%oG&S zs10dS(EUm>gEsMzeZ&eL)KQ?Es(Cvx4KzUo@N<^J<0_kRXOlZk;H%&CU5DOW;)qe+ zmOR@rWSA0QOmBS?bAhs|;^BM87(Fxl!4x9c!#p55Sv=jNLXJ}NEly}(9+5B zOEKsJIvKFf<>9L*Ig(i(9mA_jLk&&9mG*1+yXF~?4Ow0 z)HL;8Y0yYiAH8zXRcd{QLr2&k>@Z>Q09msX{3;EkM?r7rn00P`{s~T`k9PuR#GqoR zG;CNz;nltWYa=-)ku|+T(2v`H_Gj3d_GEGg2U>8gUw?ZjP$h*da$D)kdxCeQ-ScS? z5n|JT&{OmF12}-FdiRg!&JBZ~6#yJsYQ5K8v|6;5jxoq~6(F?Mv!|X=|D|taHCN@% zV?}U*tVK|_CtKlp%b6suF6&iMQs!OX-sn2eI3)(OjB(WqUs!Hm|Lih-XRJSVtHlw~ z|8q_STOGSQ?Y}LX!-dB)d~)3tc(0&ok;Q*iH|20d$DMj#eD>GK|7+AL+ZzENuI9@N z7!Sk?)b!6;&>$4RzQWGuo7)(IX#VxYaKddwMMzX%8HwM9V~P6dQj||)k3~%^9H!U@ zrIep2QSz)3I%RJ@`{tHsjqfShvfT~lYGLm=IJvCuAL}o7ci_*mA@D0%LXc9etVBL0 zPi_UZ;N+?cejz#ZLGc7sUltG~hth$}>~42kY)_oI6c=7Vu60G8J5+WAN85d9uP+aw zVJA$2gaZX^cNnhB3eT zBIvYMIPc`vYS@urAPK1N4tYL*VxS2p<3;zh5bJqmx!jG+vQsEje^O%&0B#r%FsFb! zc~qDCfbeUDrfM={U0YyVY0;#m$lvryd7cMm^So$`+`@S=wU-X%_8)T5%$nZ9RRO&|3rCAh9tVc8~l2Glsd zAZQkHT0xY_A0aMFP`%3%=9f){`D>4LJWtM}aZtYb2RbK77eGBs_dEPT@Gyx4ed8Z< zgRht1@mQu&eU!(pdK*QOPiewK!5H2FyS7R-B#EeR!4@ zBPykg=?HZ2u+l{|jCJ0p;smE2Yw~=1tMSlAcT{FJ-ZDM5svH-&gksinF<#V1ZOKfDfR{BW}4pKYaTeR+`B9d%^kU=@iEv-8Q5lH=dN=f|`5|-Jfjn zB;?!$u3aP0GV@Kxr)*@ToGasM;vyGjb6=bYl;}^eX~PA>Bt>$*IB94lQws1zfjY@q z-R;q|e$6}Km$o{gbgvcs(!)A3YYsJfwBCU$g;Ui352wC_D3@=2^J4P{0-_}1IVTt8 zKi7)g3rokjG+UE3U|RhuN5V)fP$drjrk75ed+X0so@p={`g-Zi0d4TPa@61q-O^7* z#gJr75jo%7!$$1+UXFh+cpg^@lR_AqU0wWW@H2N6$g1-<8UOh7y*G4R_gEDHxmY6F z=vbp5D2m?ajg+Z|8Xp+4cd!AV$4L}TUn-ic7?+&-hz~9)fjT)tDr5z`|W0`qAoa^7oTJOg>IH@8a#4F4JFrOq_dSUT|vexId!J0>1 z8jT1Fp8vt{y>8?KfQbiG;)oe{e;IUMCY=i6nVX|Sx-<5@6pnXl7pdv6gO=<1>(CbM zs)Z6G-0JWo<@oPi=fF9~N|;EwnN}wtkcr^3b&U)@Ye<)eo^ssEaSva5a?kAnNb%d1 z@bkaW*hQdVqi7uo`PDF?Oz>6rz=X>*PV6A9`@vD!RJ?+uKtW)DU6&w%W4as$MH~ME z7--m+H0p1!$iDY7xVss%Z$W}VPTTppm-iQ6lO(+do0nlcv*K)s@lmeCGEWt`w8Y_G zr**kl%lqy}3AZ@n=*xei4zevaNo~!l+kw5O)zp~U@n$!cLjSklk<55Ur{;&?kk_@5 zHNa$^_4+jHkt@?!!k)CplFGryTcLS?22%w+}tP_b-s)6w9lNrx&e(V@Fkti zXn;qL#nku$ovm)=Hl~3fs5dO zlG-QQPaA_0m8*_$S2|!TN2a^HZCwE^6HtkbOe->97A^Dee7O+G34sh%qMGFkEoPW(n;kjuzG`y%X2{)cQG-?Big4Yh zH5@Hwi4IA>)#lw;2tan1j3w0+UBK`8#m6BGYN)!_nz5?~-^f}bUH7bk*A)PM0h+Y> zU1VE6XW6iW12VH&JI4AI1Glj;DF$7WUWzLV+Z^7+Ra(o7&@=!05cc1W(Zl;ZS3&-; zhcSUF5`XzuoQbW!^W{NSnTpV_1*#sDK!BQ5cT&1a;C=l2_gN1>IzyX$w>O;=V1QiA zhzUpcj`!WaBA1^81QeoBpwe3PKG3b!7ZP#sw#nuUg{!3Wcm4$yVU{N$Q^w1K{5kOA zW&;B`fbnhqn6v$vOJXnhJHDZ?BN*_F)~B>SWPS)4c0K?_lL#*C8{#~A|0uVxazizC zjtsPWS?!XeNqM3Vxo%;Lk?JO(QMh;)$-p(S3k&h!enR?_yJ475DeY-WLeDPKE7G#8 z%of%F%=qtkc+2YwpZm;A$v$^7a@S?G>6#U~p4jz=*_vcU*bR4=#oloC#!7JPQdVIV${Gm2Y8|P+eD;J@A{&XNRk6G+3gsvk>F3 z5yfO!R1vY(nnPuJEt2lC@N%yX>ElLT&Yfhjd-om@_H@iIoee}oLm@`-bJ;FE!CP28 z;#{Nw zuIXQIm%m@>c#SH1v|M3BR*~>7JDI$hpVc)t2q}KmSvYOL+h5`0wz!(s-_G|6*|F4N zMkf28w!=5Z;D4)`E~ZOjunbnhX#!naWyM3qRavvnlA-L*g4Z+7;kw`TZd|cOvp&n$ z%59&7s_qTY*FJzF1yls{S9~GiH5{~(CKgMk2w?WS+l0)oAiyhMkd|2dBfo&t!f{Zlc$>*0Hz?wcUJPkR0q={ z>RnSSk@~ymCe3~o?c?@H;hbZ-Y?|exb)bb19=*)13I2LTJC8@BnDdbOoc~nOw-9{Q zkFGceB;!f#wB?;OtwqsGM07!#nDDwiuyo+H$)%65$P3e4dt{6JZ|N(oIDtJM>PbCQ zG4rRVaccfqz(Os?k3(u9PE-6GyT5Uv%KYXMfPLkUXHEq9J^s^b7zy$U2O%nHN13zS zyk3O4|F_~YL5p?50(lhEb(mcgMdHaimv_7(xiMDK=Q09@bL?v=)^e8eWMyrYxKgtTYc5C&PLzuB06m@RKYS7V7zII0Mqo3FyFAU@ z8EdmpNO-nGczRJ_e6BPzYtS2}*9$0OCtth)&&F=zi@bgJJK8qgjDUIcHvq}=RdJM^ z9;^x0*Ss2FO`yPU=WHY^eETxyDhP4!a$f;RijS5LITgxJNv?~X^PGjUe>qsslx zPA&O>-~`Z_23(`$7$vUy#=W^k@U}<)r{F@t8Z`ig1mu=rwfhXHC)XU*r-`DcJh7!P zDC)02??;6X6i?S;sGp$C)Mf*>mic|I4f6@{s}!e-N|dxGqA0y0xz4{x7}Epq%b5I< zlulXQrmc!$L*v#Q?3)UaqX_xX^;U}FMq+7FfD3=ho%4kF_7mmbT8nkp{&NAZpX{{u zgVf^N5zj_#qglR>B3zzTu$gYS>A8V>g}*g#;2OgE?Hem_@&PYEQ?L5mg_V%kd?%fT zzNFdF_r@DXW`O{4>|dG`^sK(FaEt+`LltlKxsb@=LZ|ukOG*diCaKO-@&2B^D24*z zfrAf>p1&fo=SfTCb!M!rs)7b3fQK`?u~E}*X)Nahi|4HabVxcC6_o7znujOsW`hzF zj`UIciu9jnLI6g(=cR_W)0{Dwd@1trBU)+Oquc&clbYgoVNoe;pKY`^)CjWiwt^G& z9#kY_yi1hajNUqWlz0if8)lY?{&432KMhi1F0!lhp)218%-<6 zc_)zYs<;PC&1nbX4!iLSq}*<=r2hEKO|`ukn_HOUh_lKADo;?~1t!yj??bNgi07Io z{FaC-?X5vet9Z$K;A-hJbuwu0sm3ZfByGafCvpfb+XnU@G@cXveL%g$OyvC*=j~gM9)L(`M2rhv23Vbq<7PM zY-=m|~>6}6Sb_3Wy&pqWnPCKQAaDcL~-rR=6%Eb)9X~tde z^l2qBC`&H#6KK{%#cVrfz4Q)b{HJZj0P|IGUH7Tf7LKLjwVEAjXgb1lk}4i(MP)Yx z(}TM8ho3fJ*8RsJ_ksJ!S%>h82xWQL#j*VaaED4|vZ^ok(Cg?3Q`5{G5p*(|p&vK} zfm~aTaXj-%$ai9*=!CD*8QKW%SNOwK^!wRDxplHMe5m_x%8nw}V@jxOrN~55$6Sw> zN0~%G-j3VMsk&jYeq%`%;#1jWDqPBzoF6`O!uB}y9sR-7wB1n!;PwC|y@v;D4cz(j zD}C4KXry2kWHF9Dli{X@e(-~lmY^5^b^UZ;6}jP%^5gD4td zQ{V~LxITxNRNj1VsY>OwD@HQVCiV_N;E z>kWf?+fRDRoKhL&au0tnLD<)5)-@Z$r*SZQx#|QM-sp4_o;d&zu)RH-$#8NYphRPV zv}g5^i--u^|8I&@9l$TZtvm)E?`-FzWoQQLWKv0P4Y)Zw!3boSqN&1ZdLak1F!fCm zFDo~cx6t8Gm{HNunEh8^)!=b+bI&%rvQf$;uJWd*riLvpE~fX7}dinjGuPitc6;S0zg{i63XT%y(pXTgjE_jCBO`S%>cCOC9)Xp3U zme5H5*ip@=4o^te%A5Z7>xfPv_}pIfIr-k-F4;cj8s?e2cEdP!+^R};Y&zbecGgo5 zgNzBOldVn00Jl-EcHU|4RBoA^0JXWdM`uQkUSb9JNNAF{!t7^KaME9EsEGvYsbnhm zb0N&ldX&?oTn9?}G(AS|SmV8~4bi=LMfHBV{08?P`e`};JHcYRE*cDL0dh(<4cY*l zk$p7VgQpkv_;8m~U5yQ$t|28Y&EoJ!{`_!hLCs_!mL`$S6wT>iJ`jUk9KL!68c(m~ zSh?yIKl%ZFgH1!Vw*ltpUK}z)3eCxbG8P6Alf)y{y{J(-;(`;O@#`PI6W_jiM;YAF zF#d#!iVE>5rZ%jSe(mgei+rFACq|^+utp`dYIHg8$%FbbaOXS9OLDM09(w z#d_-SE+s}%=#%=zQma}W8>)P-Ecv4-F|R;pI#9TH)1Hk?f@g8Se#Ch>6Sksx?!Dz#?3LDpKK45|qlOOrD(tBj zBvr{SdU_{*E1mMcHK-u+Zkd$%7keg^FG3vcWm2r_7HraRBHU!>_+Ffz=^x5{Pcz+Q zwiRx#VN8%dCAM{@zLHBBd~)uyI@R5=m7e+8cMxA}gf)sVX>3WqU{lU=JTLLmDosbx z_hK!G)NnAKVYb>#2^b;@Y1K4E}~4k zVZ40q9?&>Y;*h`Y^oceP*oWkayPqSc8PV&t@-4p+H7c{AWLwh7YrQ^fq_HJ1XJq)h5+f6+aEHp58{z}-&Yv&N4W&ChQ!^}xPq~{ zFC!3XQ8+TTA=G_j1{ycR;**D}s$BaeoT@>(|Mwej;S9GPUziP!v7`Hn410Dd`rVV+ zjkT&9oTnas168T0qEi*HBTUrW=>ukT~SH35nEj`N{fsL9yExk7(H+OeC z+S9(jvvA-i;Xd@?y3$N0^f;@(4|}>D*5b%1Q8bIV?larsBtosB8mX&wdRoL;SnU7R zY#>6jyAZzAwVl?)KKNx``D?GI;*A#X{przcE1XlG(@KLU)x&|+jTbrL)y<&Y%W{t! zyK0uvCtz zm5jzz*gf!m)gQIqL9+t02fMyZN#0f}Ej_F?KtGW7+Hj?%47572iDH35)$l<$;Vu%(~i~2GwuBGg&100K)-p zEF_HNN7AI#}!dvag81?eHxspz+R@+7(oC3^p_`)1#8qCckw@d1%n89)@) zbb9QKn-{Q1JMaG+Y&IcIm)=z7kb6`$zv63rp;b|KqTFuFed_MLGb>JPcB!fJF+*V3 z*#ihJ*V1B{Yd%pt8^de!xO^=K3*~!B9$V^R`zcN%j}PpP=_5xoNKLyfh-5A9CLpsk z2!WV^)Alg`vbvEG6Hz#+_AK41rjwOitDU9%-c{7F9*k94;CQv!a>HPp8VGptLLh3` zI9Xlf_=WaE<*>zEt!fwdTSk4Ee>@5Xx96NVU(IcLqG_`_Q2z|y-Q!hzSi-nJ`c~IU z8b%tl=E>%9HE_lU3J<^OOSJpip%hX5^L&MR6N!)Sn~sPVp1qTr*-4sq;=6nx)JrO& zlxZ(z4=OL2=0z;%mjsh<{eHa4F-o#h@a_!|sXvm_`RH5YdS)^?IjO(-E2`DVs*VVJ zR=V^aPw}8hf`fwt5b91)H&9ViyEA0p+}_SEE|yU&OU#vLNcSH$@gK%bH0}n0;a8LT z0|0(6JCI=W`OIcAh!t}U-45W}F`&;#q;N@(zlWaQM=e+DfC<>u=(zX0&RTD{@*lJl z$S1v5@Wlysrp^HcHg1(h#pAzoZ9k~^D=8$jccd&8{P826QWsDSeWa_7a(ff*Vr_m% z78Of_`G7BLNRiQg!$9D&{DVIam5_4l#{z0Gs*odU+Kk9TrNY7T+`ffnOEAw$xIV|- zk-z^M*>`R7<%B<_j*S1@%v+PYo%E$$Z$v5>+GH@%o-PZ@ z;t9H(P;J*7@;yDHd?Li)(zRQ*JQXC5{-WB?jnxO@Q|-O#GRZ2BP8GqgJg%teOlmaW zYP=k#6v$*W^0es6Jdgi#pN3W?;4i6(_0M_-gNnLqzbtq>0ghU@MwQ8pfEGQj2Vm{D zT3jA3g@Po1c7Fadh`h3LKpL-e_Rro7aYqo-2a){`LPA1AN5TIVix@BAVW1%}ftyXN zV%-)(FjA#)#&V$+74kg+?}=Wg7*?7gCM9^MT>tBpr<|_veXIUgH;D6l!QsYl;F0&W zg_B$Sh@ran$3mt=9nOm=d{c6K3H(3)sM=YMNl7y+*=9P{WAy^D?mL@81?2Lk#eZzr zDuOc^o9@}}_%V*?rtx*;_U*4EzR40u<&>Ad1jvDU5PV?ve)RBoxR`;K zMu*L3AF*+8*1$MSB#2Bp9|6doU(bzteLYyHGwKP!aoMlvV+IeS9=-o~b|VPeBWaA8XYAOa82hvo#-JiApa}6}b>aZt6s&XPd*cO#(>J zC>rV2FV&zKG26*J}U#L}%2G6Q(KyW81YTNXM;@Rp@wRUQ$VP41KH= zJ`hL(t+W1O7&Y4Hv=r#k8y9orCvLGjlFsj~`C-}@R+MiefTOLWxQ@eca-yib;56*0 ze(a{?(xYGEg-1LMjqh8HXWR$wFI|C~Y1SrRRf(}dxDFhtfY5f=+IDte0EA~kpg%(t z182U9)I?V@*7<;cGg1+A^eH~&P#>I!in!oA8$Bv_Z@0D|EO_G+?u^`K-qqX;gq%Wd zjkvd>-(TH{W(_vHBwWi)(1jg6OXRkvoS&a(HXgu+f<;@;C}W;ycwQ204<-47fccLf zKUM*$q7P)+2tE}2%NblBT<-~mfvD*?#%*2$&8q1s5}WenBy7JpGw^Lm&2kdX5w z7P1{h8HpecjgzGCpV{?5pP%6_Q%Zdkf?Fu!V=Y` z#cO-OD{wzMYMcREwO`t&kuAdqe8LN!R*ekvylnQwG6@Lkx+ z#~#bL6A~}wIt6I1I4YWJq;YaK_u=86nE!nH>DLC`Q`h?xKdtn2uSB!f8|K^j8?_77 zL<3?AbIZyYVs>3Ap56>wT_U#Q+-y0VFP%enfx{YE@x*P;XJ<U~{JeVK!`#Zrg#IMVCo@{MjsLi!$bHB4n^Zc-c?asEmB0`^ z;Js@nks&k4Ae?L~Rd?BPM)u;-4Kq77o(Q;QU&!&eSYl0Fbh}Lv?Hz?9C)e@16lAn` z{hQGZG~H*pW}oS;RX_UG>T9k}kx=C+cth?j+rOt=$v5a3kmA!xG zX6fLyjX&rgb25^zB1zPpMLg1iJ2DkmkLhUGxST6|W8In{7~v}WSjK57_w}Rpx7D)l z#h%|2{bl{=)&T8=`I4s?J7%~22&b!mITU+rm7`MZ@rk*|6|<&3FW;D8P7j8Z2spJ75(ztZ4XphX4UpB z%?jzT?o(8D>J$%cIy3HV9C>t6T8`Al3@OoxEoZkTOQ%j`)_xvaab>YRSJOSW+&gz4 zxiRl|pxxqjb?QG-sS>C6^v5X8Zo7F$tvebPGWF&=*0K8+^C6=rFJ zYe4dF&5wFP3OvR6Z=ba6i8=a}(gu_MBl+kDv7CNe#+ZzQrd%?OF!s}^0;5ncKF+E5 zew*8_7V7OwjksKdX|a%3VIj&?y~NgEpxF?6+jQso{@uQuzw-A!)D8SEv2?G zU#F|8e&RCyV(*M_L8q*uPPLlbEHER{9gJn?8I!Ns7CO+*C!kJ0c_Vr;_UXwJ?{9t=ML#elX^;_u$3RiR;TK*Lr`mzI`^dSCJj+rU1B6|R|EqkFA3{M~UWYz4fKIkHQk@AL?_0iG%mm$wg zJ2&ohs2FwT(v-S*>X>p)rlm=3m^T`|MzkNa=ehN}H6x*(Kjp2X$cx!8VGB=N;b_{i z^^+ne3$C$7nObURIHU}-Jb7pAA}qJRF}4Ju_vY{E4&y(hxoIN9)MCBmn=YkQs~QD) z9Flktw!I&cO3p_|E6TDhhwi5xvL1Q-ufF^q@~qz(7a2UIuP(9FzULs~6nj*d>Bxy~ zLB)$L8vQd5)jFi7@X|!izMGY=(>fLQK7Zeh5Sfmn$7S|0U;5~tyX~Ex>cj`vMMiFJ z;a>Hce-lVer1iE3&*`@AIz@^HPghb&tmY@KpQeR7Ppt@yPsnWJu`OD)wbNB%IEwdXjHJgMBJJ0yW6Pd zsY<0klQW+3AghQr`kO1aZd%jF_#66s)>-j4VT@JP`W)s$0r)$Y2g3=Wa-Rx)bJZrZ}?$X#|eSXceZ!#j? zL?N*%o3X+#>ZO#Xbnrsm9p4)VPZ7=?ST zCq$w+`9$c;&zL3Au|~XGDC3pYg_p@DXR~w}3$vsp5}vED1@r0*R0=#7`f}|==hTje zjV|I|K8+y#o&R9H+54IgHPeD)y_gIA3bG}nM?POEzQ_S|z& z`Pw@9Eab?LXqe-(ggH-Bx#eZ{oe;;sjxS!FL&=F;x0opL04?`if3?jj)pW~kOLiXa z2UGepx}P?i^uAjmm0Qxi;*a7DvOV6CX zt?AO9_G(DcRMssN2JE}Df8}{j(=q?gf*b1p%*Yf9bKw)ea#ySSB}=QWe!+|kUFj#L z_8L*cv^7@yJXX_kvNAt8FXS}z;rP{;m-gy3ty!DPX6eHla;Zgg-#?fq@Z5!t1H2-w zv4@0r|DeZ#^mEnl2_kqdFRDN?Ni4zIAr$Rn;tz4??$6j`u$sfb`nuqqAKinI9v{L5d9x~D4!#<~)@Cj`e9jgIBOXV;n z%D=+kk|iIHbP&}o{^{7koPu2)8_x|gn4465LABM{BFdk`)!O!>@^cG+ai zm;E9Aw6c3=Ilce8EE9`>|JnLqL#0XLmMaaVu=#UEOL$JzxSzb+7Dh>erda2*dPPrg zx*FBzPgj`Kc=Khwg|d6uZxU*)g@2+Is!6@%r&R3@GG@rd9^PPhLntLgVeY;0Mujot zW%{2oDju3-R(%u@K0uNHwu%?+nI!n5D_YC~`8ICF=1ioPs4iXT8jVxExJXz3SBQZB z$^Lv)dOu)4ZBwV1Bv+ICG(hhG3!Owl>v)BYTvj-}^`YNB-f@dB(8{dk)Zg#?@YA-n z!t!3$Zpky9tbgPQT5wLA6?m`R9auy`-vGdB>s8BHjZ$P6yYKqpQgC>~{u{HqSYm4) z{>nHx(35s@Vnt-=;=~*LlHsVmzS5$}`KO+c*6EAki$nGoYzp{WzlSyOTW-2ueMFD( z*3LZsW+Ras+}HikQ?Yx%cJ(<;^NjE?F*=h?OnqH{J(y4mAc%RTKFf!&Y+bpJl+snp zR?(T{-fLAB?+b7JaplH)=FSyMXARQqHnR5eEWLaSChjjd*Wf-h4`E+!QsVb7V>;O& zk>Vxtl&UbxYPE|xFO9_MdpuI3L4lU6taT56H5D*$zmy13CH{sw5Gy|5Jvx;nOMWFYg{aeEL-9`0=%*%lXjIkiu4euLUQwye0f?D4b1= zGmR)4-|1x!broMKvZM>ORX;vbpsb-qBRWC)u$b~_?~v;|Z}&*}4yL%Syq}q@{*P;< zrsSUfy#L8{B`!XB`zrA3Jl} zC|aZ%c!`Fhv-Dw<=S-|7TU|LHh9(Vjk<=Cbf4XSfwryhF-9A(1@87?-M1Cet#)_IW zfo;{;b9zGs#XnGA! z354{@UDpOBT+ogu)o9DgHhJTm7(?dj1M1<Qn#uD5UL z7x|N2%HF?!3``HE#+-|d4e%N*=i1ceE?O}=d4S^o_HzTWUa<)Yk)ZIGEjvR~)Ongu zl9Lhr%j4a<1peGe&zQR-`mEW!D|T8fDM?E)-m|Crc%jIK4Mv9dk$_CQd)F}YPFB`Z zv<<2ljgF3{P_8sBy3)iU>rr1KvhNP7vcT>qZ+D3GwT*Tzt?r-nnRI`5b(W_^b=1+W zsr`EL0|75@A1Qb5M&&POneY-m3vJ!fEbD()EcwOH!zmfr72%t3=eobb=x($dZ}pIBO`KBN z{UcF)xIJ6rzUOl@^Ay=v2M!#lEvaZ)llz|5?hTspULh$(^z7Fj?efj9LZ56)v`XwK zwBsV9&EF<00BSuU(zDKc^7T>Eq7y5APJSL%x`C(lpPlFM^fF9e{U4GpqAT;8K9FAZ zGRK~anMz&`Ys+Zxxg|kGd9C7wtb>8U$#n+du9a?kpK!F9-aDy8v3%0e=%JKpS&v(0W4$ZOG!;Sbm}IYObJiT++Ib(8mgzs|Xg?2x$eW@wh` zjzwj~Y9&`Tij2dXg0!L)%d#C-jZM*fp!jcP&(S&I`IR@*_Ni+tgOYJc0kwqji%I18 z!WU9{BK#9mwpV*z?|2_Bz#xC{+^^kQXDkPlTJT!VTby(C)@`xYbk*@b@H+pPN z9=RdDRo>2YT*oH+%mIrlCYIWd3p(jzW&C17mvl|oh#dT&SZ|c7@-rmt+>*As%RBPf zNy~B4#W~oHIx&sdQ1sWL`i*{T!ctPrQ?&6a45iGdbf6BAD4$i{{( z=6KOJZNQjLv#4>7#?;47>776TbuqhDHQm9F?2^r#O5MA!DQ=&*9;P@(pYrtSj8XH` z4mn;b5ZneYwUqu2S~}Z4SEfvSy8%RW~rYA1_!O zPU>)Cbt?$Nrvb6QO4`QH+; zvX|w2(fFD4(H-^r@kocn1HfpQ=eq9fc~*0t(}_IklEJa+s@-#?pT*=&+FQL>Sx3~r zw-EAXx_AdHvGVUq^NP`oscR9Q39+cij9u-!|NV>TS zckZMnC8_6i>fxShX>*!8XICDUJVug528X`(O9ZVwxnYUBFOy6ka|TVr2h5ieUBk;N zc1SvLKK=XU%~W90=>C&MZwYVN2d5DopcSqSM27Z60cBS(@E8(cMo=qT6Ff!46xyjJ zG?tsnb%$$dSO;)?xc~B_ikE8afREc=OIO8&dk;ql37Kj9N^d2u1#O?aDeFxY(hi= z?^p*|h4alc8r<4_nsF4bT~|l7M65pAr1rF3oe~LG9qsIV7n0l5*$Q&I_1QE3jO-Ey z4-bzDzqwxnYCeY#dVUf&!&FAXmqX;?j|RJB7R6t_e8)<5bk-$w&v>=@N4AeVkm{o)%owra~2+1Hqq5t{(bLXii}pBqt%BvznZIp|r|#h|$C|xjwGyYKV;ZL( ze6y6o6^Ivzw<{dlg&2=R*DyK6V#I zXFC1fM*ZRTE=|sFDg)s2p28gFc_Dsi+T3`s2uSvv56d-$Xt+ z(V3p}H`HdKWz}Vq3RBXkOSrnyHDt%?4>iKAR}P7M-%}v`k5pBIMT@_ets~@|P@l%G ztIjOn^_xPrq~tu*8p^QULSn~3`GseECNV*PX6wSaiW1GM5@DwaB%`d}-+rs#HW+-K zAv|c4=*PHUnQ={*ZKLLAw6DOj)hn3dk_N~07I4-e z4pSH}B)u1?&f#3EV#-*gyLIPswFS^ksjJLMS-Q_sTt+AJ&)4Ik-sm$)2GSpTEM7h~ z!Kh+-@X|Y;XPw*s&b(eXv>wLuYtd3&@9vWxE;QrT9Tf(D<`kk)l<<;4fu@RxMgMO9 zz%WteJHO(Ep1Ot}Wt{$;xunChY{`5jf`@spwbf4JKgF5v#{acu@%j)o5u2(iU{%LG=JJY zkl)RHYvC*`7B&sTvC66bg6JPAf=elx{_i%U)u>}{e=HghrAXg*?bhwB<{li|6h+qm z=QU{bkgET_UAwNTqto}^hs+ZN$3l9oDq5K zTRtpP+obaN{KCU?ck=qRE4Uly_fn8otO!0ijHIx2s329OUS_z-!s)PdoPqkVT*JBl z*k0ENRo#wRf)(9)hu9IVN29Wo|CR`S3Mi;Q6xmK0NIKDU2LH5f*ZJ$E|M~m;q<#hU zux!K2D1S<03%0HdQy^t1|2@Y~<6c<=^ZYZ_uL{c$e!w$-eppdS?vD}%>Wh2*Uzvx~ zz@?J5@6V6K&tE@@$h)jrgvb?ZJv?`Q{waj%ubJ2Nr+Xfx^w>J0Eaj|x3#@q(_dfx# z28-;SKWmQF{IcwyEDsKd^^QNmF8*Gk^q+f77Ojy`jDKeTDT(=HjHMhw)&B&C_?$SK z`Fbu2g=(AR*bK)&&7_Bm)VG0wjiNugjk z0Jo~Qg75E%#C~*yHkLF(yJvJNovwImf8R7*m!Qvj;$;;l*yX=n?zx(QXG0@F7L*-Ob0xM@5mo!YF-3!rD39Rr}s9O~Ik5jx9a{ zf@$40%-=n{!;Vy*Ik4*Qv)Hnni;LWZmanhsG6)6`Sue+=U2U{L-?8#S-^Lcz8A(oQ zGj2!k505YD?b>y=I4Z*=E5iMHuQBvfmgbf7|!qVF$-<92pXiE*7Yz&l})KVEymkcmkWtn)4Bq4l6tkwITAYIFRg z*FC0?_9|>g4};k0bM;&rr`BCfNO0<@qUxS{{CFEt#_Zd-51nmmpg$ySQ6XpQLvQBk z&nNvN8KsLUxU}%pm-Be)8soKmhD-!&1Ph`)bJ!?1WDJ;T1QjXG@ImW3_??0d-Q|ex<5?~^(<(=fTRoPl`C71HooV0d9 z20lT9)8P@Tl7H_M7TIoOWK^ad#?b9Ir{X(ZEBLb_GB4vqv``^>N=;0Vu&x;&0`~%WYx?hABgv{U%zrkOR(^MV#W zv`w%5d^!~||M`9re&0~>qJErl_}QbDmYAziTBjat?4o9gcvdVXFfbnX&0DyOjYZ4; z!O-0dIg7P>Gfi1f^QDaEKoMy5YCabWYCk=F3G_D_7H&`1<_2ot&}i%*!xV{SuV26J zQE2z2G8iYgL452VL7>5-3s7$y-C80*`n}^_=PqBqJ+q91sX)Gu z=6~G8A`NvTBX&sV*`I$O$fV9V+HylCen(n%_GSK@>};JACr+q)++x}sA0Mw#7=Po& zF2;4$_@W)QX7kgdf*OJc@1jFCCPe9E`R?Z%3;3xrsh`-m_|K6@X&X((WWKMg7gM)e z74DZk{&Mxa5X%M=RWJ>K18}=uld1 zxlTg(Ki|sgM-Bn$_zio|ix^S`;v&aSx2~kzyeTG>>s8!gFE44DE0o5hqID|yzb;zn zVsattKL#hsH%8^d3VsS~m2T#`1oJOj`>t3bsxsh>X8;X$k08c;`1a8_RK3h>giJCW7B{R6S6LOp;I; zA0Iz=@nSFrk6B|FuCYn<5sdCvooADh$$z!Q6C9kf_9k-QE!&c=al8{diVZmcrbxi80)P@TN_h zL|oYnQ)E~Eadf2lu5Cn@LwG~nKNTLKOZkZMw%AOX$kgz@*0M_{wB;IZo$Rh~|MFlU z7qU!maCc-J)L5$EEImdSMtsaV#fMK7NsxD_AJlD>1Wg=BaDEDpyz%&xRvWgwgAED|#yhE2irXQp`1Hg^Z>D*XP^U zX&3Ag*=$ootv>z!!tR=jfER|hR-gga&P{Td`lkLnnUV6l~9bwORJDQAAIc-TKikG|J6f^*Zl-FdK~ z7{9q>Zn{woyFNG~f`Q6E7cH|b;xQIQvqxc<0%{1J92$N6u-gd@_mMmlA*DPO>oL8M zlR}TtcJM(p;~$z9-53Y~{bdo4&CK}e(6aaHjfapqh*R|`xp^XR@a!`$b^G+pOgQgLH!C-+UoV4GYvFh0@?{Xb>`;+T zUix=mBK>4A>^xfl> zf!FS2-xz_JsZrfTRUb!i(KZ;sr{MW*wSRWoz{j}4mpc`Fe#*T&QFN$>k_6wd4um5-Bfvnm*q*=0Le_&2p-r*)r z`!@w^%vhI*^d?XFcNmgMZ4t9lH!|+t)dYNcU-oB28&mSx=SsVPT>cCeI{aZaTTZ%9 zQIn_8EzaTXeS<{ZC0SF;uMW3bjUXe4&EeFl%~jp&XbCpCc>J*h=9P5a`gx5s$2zr@ z$Uw)(ox?}vS=FRV21N*5z<<-kvSFyw3cFX?;^HR!3a3Z7$*da;gJU>ds?ya*Y_5jp zs6w9h=M|x0%f8)U6T}G3p&4cS4jD4*l7^0{s`B^ubzW`RG~jfG9dy~FXE2H}li5f-Vi1Xi!yvRRs)@-VcnCy-GF?n!xO zB%c_b-{0=2h3px4pf1;N2-_+xJ-zy2tf-ZI0{$n=HkpDN`r1D9?dP+>gS4?SWV5i& z7-v+vxVX?z54z0{eLCBqwYbpj8h9q`&eV#EgN6sYMz{5g+z`EJ;B^LQVwvaY8d&e! zzA;qru*F|%7=fn(q&L3W8o(iDlEIOx6J4{{!smn1$1(S>@E;-kqvE`-H@54~i3_yy zvTLw7645t=oz+8a85r{-xWuW2$NB-PU6_HkMfM+c6XUgU#=vRIfv49oA}C?Bd$2WC z)~;QWtpCajYYh9?wKUa7sq)0t)C6&s&;LGQZ(oP8l0LKM&`0A;1EIa%d*t7_L{AQX zVHhm$kHX9&&PeU&qh3>A>QPfEK3m~3uq%AraY0GFDsoVWrQ0g4B{ita>oLAFz1v0| z1ziNemz9-eZ+vCLDP6%ghPoC8z+JL?LSQj^Z+LxS#S|+a)*pTtNVxqV&SqEx&)Fb1lE3v)IR} zR~&E%n7cvB1zB*kMCVOsdwY9ax5Zv@-u`i%2S#i>4out(S)p{Ao_t-E)3sdZ50A-P zuy!J6?y<0Su7IDEgr96tnYwl^K7P$FOj%+-J<=ge=3ugoPfS41-12j1wX`%RaumY$ z?}`mfD}BplFh8dE@_`fKucXA4b-J87Pz%+5@4ndBUlBF;zCz#tYf^!G~Lt*ye# zIXM{sKsg~@Ux`U1^yQx4*${=qy1z5LqCUDJ^ry1?!)~LrZqb&Lz7u>_%~v;S9zJ~Q zE1G08u&>&++;ehd4eAW&1E0B)GbfA#m_tv#EYl=|43tHLv$VoRZMvE{80W2Xs{GzP zLki2+(Zy=h0lk}-_=u>iwD6lPwC1@lpqZc-6aL(TQUhVIwVP3=zg|oenSWwc5U>O%oG96< z;Mn6o>b>`q3!-n~z9Z&;aOMJ#WEEab2hQN%fBTPE_D`P4_Wug)EdarVKf{9m_Viu& zA}!7NLj5q>_ea%cc*scPEr-eQ@-m!%gUf#uW1x_HNn9NkJV59G7%ai@??^^U<9LX! z++Fax!bb_?S_Rb!^Oz;(+W+O{pVX0E}0(- zocQbgD!rXMHyT$!m9aYZ=@*H=gGn4HJ>JUfMXM1u ze=*W6Kx|>jTh5Tl&m=6)@%=6#w`mg%1?MYBX|#+TM*TdOEXCH&u9k*b*`JKI#cVW0 zT9SB2f5zT|cl-0K7m;N2%a_K8?Q44-_1^dmTz7NCEZM3f`N9~^P0B7PJp*cUiexCu z)_oX1dhHs28Rm*cO!b{E9V0`|$dFHdzt4rQ$SLdid>Vy^d}_bPV#EiI0ymS~Cch|2AD@|{nI5L|5~WTFdf%5p2a%iu_dcXXI)cL7RIk2MO8y|VD@9eJIvr>Cc%$xMOT zy!z(W3o?LJ?@C-5366;7-AJL3@z0nO_LBPG;${5ms9win*UTKWwzejDHIz23{b*k9 z$&u*$a}7b;C=cs_YqRaHD1YPGoUo}81J&S4ES{8ar56r9cTY@4Mt`iOsfm#~K;7X+ zX=$krdkyAdT9X=2c?Vu^Z*LYB7JpP>FNH&`N7Y+zZ*Kta#^XI-duxxsE%BL=hrL+j z=H^CAOG~Pt+-H9lw%=xvdP-wvrLTr5WC0*zEQtie%gom{TYUn>QbS z7xkdDR8&})iijDm{vm6b=XVBdr5o)I&;DZ_ zV8)ZSUy)8T%@a{pR+e#ouLoPX_C(w?dA#f6nF^1$1!DdCx+~{?M>fU?N<4p1Qj&tz zji{6`PV;~N{t!jo*?IlJ3h!`f^Ag+6r_*Eo98`IGa}M_6S&(F0!R?mj<`8g0wA2CC z2a8U0vaqoQ9&fvAg-Z>KihAjOQd(M?k~E>hPVO;oyQwKR2~R=lSvN%SIG#Qo3XDNg zXXIZdM_$8>Xz$p;G(WeH+#Z-8gVNIu!Dr6&!wFO&5*+*5yQS+t@3P>|?!*+7liGIV z3ZEYBiiZE~#ZuBymM>p!YrYQgq)041;;1dBP8IZZ103aA*E48uUc7j5;dfeUD(+CK zBqrWZ>j_lz7^j8ifz&141>=We<6}EV2L{f-R21Ixa(D0f`F*&f#8qM~*5-BoQBg@r zCitBQIYiDBf5aKXQtZOPESh>w8|^#v$M%b{C7V5Pwtbd_l~GrxP*w~4>MZkM$K{%M zIbwS`Q1rdr(;@^$ST&6eD3L6NDdwf8mpVV-$0O55xN4ALB30)7!%!+ZHC6P``uI0x zU%xs&JhUFZ3^0!O_#8D2&C)mb&zxC&*El_;{bp_&U`8?oFNoJ^VWWuKqR@9es6C|QXUwRX>4S~WGbpvSxLm{<(?y_tU) z4>)P8dSJH9-^aZJ)qjPH&mi&+i;ixyrGA*a*ejT2kM#jAe-=%qSQvr9LEAzP@TFT| zFoclNL!|ue^INWgmc&L>rnEiZlWw>OR1;2-SWQh$&(KiB{=(x{bz!VzO66r~^9bA; zDJudgN}i+V)E5W+2L$4i(X_vR{~m11;JSD3p5yOd9teB1V~_lr9>Z)w=0odw!0BXd zsKoN8I`ub9k51_Rz??V^J`;ZU!8tfIbZt9o`S?rRMo;L+FCot= zGYh}eQSP+~OGus9k(-!&mwB@ImH&A4L2Mb>qfhzWy}bHgrWbw_v6mTin*m=v3#9~10t3g| zB;6PRdIpB)2?IEWtUNsF({JCtT&n_b8!u;LjKYa(yok>tKUZTpE6(wbYgVCLWHg5z!5PX2^a#Iogv3WBaU#fa_r z(sS#Nqx2hQ{px-fWeWF(BTOKF@&Ml`>Wybtw5Az|qIBFW_V%_*Yss6e<&O9}=oBAq z5%@OREl6SEaFF3)Px=P@s@5(#EujBWY=*Rhf8K183rSPi

HGWa3rVWOTA^xP!EnGsx*#&s4(-r%!M0qKoH@}+ql!IN z_(BAB5YvEAZue}eQX9nojv>;dRa>7;zqoKQxp{gq+0!6Ck54@Wzd>;3iDi&fG& zL0Qe{%0FnwwZ~U>aP0N|*fdWWsOUk0$LXJr~Vf07q*C}vRZVymn>u#yKnB7&%hW>m$?9TOhTmQ~P zO3m-y;n!)Jk{yhEo1-DAm9HC(9@Gn=>ab%Ei~t7J>JVHEh)AYqJ)(T)I@2jRv#~Xf zUh7jP{`8OF4l;HYS#sBbOPNOpP7pQohvqhrC?Bmw7u9`kU!xj4#bpY3l=@ ziCxV=BE{V;#bMS4Q{yN0w)p0=WWjM-Gz}G&Bsy%Ow$f@8kt*+`g70eRp8d>AgvH%=1|#0r&^P6_QZgWMZ1E>2`zKtmegC~FE=Ko?h@)?ets@XgP{1DT z)}HQ;FrKU__qm+k{XDu2pV2w(=d+dx!v>-f-7l1K#3s5dcngn7qfXBzGjR<+Svb4x zIAU%jj*G*hNHd1L`+_WU)b)2&4VKMh+9u8M`Kw~2=QstA=Nxc3eNC=^tow9v@g6Z# zL7gK*rJANOubWRD@eoaQz{?W0=G5^OOAwtj;jG8wo#kiXQW@?X0D}tzGnpLe4SKXZ z=-bnyhV)Aa3ToO+|KDis9yr2jT6fs;-yV`HP5gM*f+4=8yrO%%AphuRPO0~l7dWqj ziH09nu~^la%2-E`#~1Z1VT}D`upjOFY{Wr;?rP&g_#M%-N4Y5+l@~J`H}nX*$dxqZ z8%k$~^IaH8bd5f!tBBf;Z1Lr1`zVjmDSVbuv^Ji<=D_KBA|`#?NRWs&g441;jpk(2 zRx5O(xsD19TR2(F>Jbj=G8|Xrsai+3t(YT2)gecpp_kYc%s|BaKTjtC$7t~2fF>@q zFJPdMR?ZI}J|JhBkpqda`02U1$U$&Q&=Grc?g@iDIhj*7PQ?D{A3Luld=OnZU@780 zhUw4?b}NRr{esQUyX+W}>Thpn1bh06xt?-{jMvJYc9lo=F}Hzn69J;#hcnna1u6k2-u-h`bx9XV&OMA;z zxrxpi@3O3Bi0YlT?rtSGuZZ~UsiEMSLZ<~{7n~(#Vc_7vh3=uM&2uRDE+!nhfVTfh zI58%tsYw=yPaRly)e6fW+)oo|CPtc5)6&wchjVjs6hPM4Bb#wcv79CRLA>4VcKwi7S<#G|rkH}aWkd|Wm+zxZ@A_R!#N3#eHdniV z(ILkj*~L)mNjzX^N{peLeZM&9`s?~lVa)hz8;jU$1mOI}=0N6vmNd@&GNA9`w0 z;Gq(d*Ub2{f~vox59fDJ+q9R6vUP*>)buR)NR!vpnSE;d-!ZK2bSQ%)RZInrV*}I$ z(lvLMcep7Bwmc{X?L0Y`WUq>H7Jxhzf~E=isV0qhZVsMA4|3bc*nK62YIG~g!%1Cj z8(eY%=~KyGZ|ovVLOY_|;C`xak$wN^zu} z3gmLsRp|Vmo|)O-0zYW6FN@speR;XIbLtXAlpTilhW@rN0fRhA++O3B%+t?xNKkb6da`?YD)fED<9csoAPM}KM(+0ew zeWikc?)X7u_*_FwyBBY!{_PWOkWSlYrQBA7j@h!}U2lc|N4cCa%d3=Cv_%8%^6Y>e zWL(NdA_M{Sx~mqih3Q2z#&5GMrvgm8<T627_S3cS90%!fF3$H zgbH?EBUsB_sactsbzqh9TJ$iW>R!wEK`%`p90uMp1K;>epfS?QQ}YEpW%&&b=Tpod`H{B@7=vku#Iw$DtZ`_M@C#Va|)($tqO0f4MyF`e8U&pOt5$)rY>;qU>ZW zBYSO1SNvQyfI4_Sp3gs<7FIf8!z60BqqM6Jvok&A=JSOSEqW$h3>~Gbh_$t3^2n0t zj>!(bAtoe8=pDyUcWRN=9Gp*YE%yG2;KbqruH<^(}Y$Z4Y zQ2;LrfkPBMS{E_$ttY)jK9p1@AGxo&znzG&9=O}Ug8N4Ho@U&V32AP-8Aohr?Dr0=yl zpf;@n%yjNLfvBD0SbZ+nI$PeCNuNVj;X=CXc}7dF{O{Vgz4jIyepyks)4#g&eZ{)R zy#!0!vem>{Bk5WoRl3gh!O?PF?4zaAoz$WuQD$7uf~0B8OV4jFrhMEPa@Gz1=z3l& zdQag!;I@2I=y0` zZYtYfV1k!VoE>l6#HRy2a7N#6pi>O!>hsrK3F)qHv%V9q$n^8f9A$qD=8(mep*X?B zu~bHPCGQVu0aQjqVbAhL66*DJ)M(r1aB`1_#j}R~iFnr= z>yvX2Ov}F8rgeMQzfmQC8)tXJZ0XF_7Yj|{fxg_+Y}4k83diH$eh!#lzneTQNM@on z$>Fk@iqX~9UfrEst<)(V#L<1c5++ge_I=kCVG70lt#<2$m#h6<-aP_ zfY&M@FTsE#0NL6s@CF$U&FuUU705*SE=!sTbC+^ezH7fp*5e(=jX~zwe^&?I3{zNC zRA4p0{mKfgap;7WhhqtgRlL;2G^<}`ts}?C1yRoDJ8T9&VK8GqueC}M%L(B9+;V`Q zh!gE;nk$4hI|ME8(OUZobxVS@=vrB#JLH50}^By;>=klsNhgK+K z`gVwe3c50H1O`5kana;vPYQcif*L5x=uUxm2$?^(+a#=b*KfY>)Ip|qxulETH6r8G zETv>jw=mnRQ&haP!COqrEaxzFS+XaoAbVnlwb{z0lc$zZn?ZI%Vd-F`h&5xJNF|x3 zbxYM`>=QA(hv4|cHTskLJ?DbB1VQr&DSxt+l6xmluReMw>Xc10dBD6j$(Wrb!gfz3 zn18MPqa_zlW0zOZ2+^1wY%(M2`^t-7PRb{ z^P`^hSwz1SBU?U^ootg**O9Zw(YPHX=E-6n{Ex4zmrv*Qn(o5~Q_{Rj4&0ALj@Pf> zx`l~K;?BV;JVi&z3x_ILTGA&hIX|!SYp$E3f#Oy#m%qJvfhLQMw0(&1NN{U8I~%`n zp%ssI^4H+G!yk3~=ZsRBMIM)}N=6N5V4@g2#u#5u3K-h1uTz8Q?d9tA__4U!!-Bo# z-Xc~oTt3cO^nDTp7g~N{_CRt`jju*BdM3Z-L9e>V?Yrkui=!pf8rY?!_f9&T#C<7zySg+E-o(c787C}V`$c4f8c;M`l@}14r4@E z?mk24rdYVi&Df}`v{){|CDgle=@;%%E~2Ab&wjVaS(Vhy>Ho0Mv$TzalmAI5k&+D9 zL(flZpD}aoUGplM?~G*N#F4}gwC%)V#ecb@=}PIM^O9ODC1O_Nn-t2TxZhiVucn>i zavYj2SMk&Rc@=jm<$0Zjg{1OSXR-SDyQcbfUrTgN$tGBDh<)r86KvHM-!d3n8(B{rbc47jDK^FsB~O6B4G1Ko!?wyBjTZjSNLUI#^1&8 z%oHW^+6OoY%EZbVbUFY>G~gW*&ra{<4TKiT&_mZ99A}y@k~t&-Rcd5pm>^=b^6uNl z&Hw?oLOlyyhl9u4E*mbxaj^tcIV@2{MT@_oe@u1DcG&u->K?jPdA5X?E2$ck{|{Sl z0TpHUg?$eoNDD}Zlpx(8p(2eSNHe4~NH-`YlF~?tbV&^`bayvOx3n?{B2psoo%`|m zKkxgk^{(Y|Eyp2d=DyF_XYcF!U8Y&{!_M1J@;iGgLV#C5O=2gp>8(0(4;_rduE%Aw z$8vhGGe@K}%kU>A`($X%Z5DUF5}ft&T))}_Mn>Cy>B8yo-TT#ubw7>$Z>#!RSv6OO z%Vm<@Q|uNNq{HlBYfg7PWvk_G`DZ;nc-nrBu|#|H8MRpYpQ7_IFv+~bNl>=E4IeDb_x~NHtf~0s?>J*2avHRuOyHg8^2@?hf`2__L3Vlnn&gP2<(ANCF z8nd~%&l-$_QL+od&8o>iFM*6vYYHAD=azacDwZ#lGIH-*1Gq+kNTw2~%q4!7eJ|3Z z$5@by%rw28cMUVQ(^0SZ;V--;CV#JY?NB{~$cjk99H+laqut|@maC`(bS0rF?x&n} z{wVAjX0gs)!j)3({5|pQ-2)OQZab&wk9Ygc4}&wqiSCDmn>@TjKOH|#IACf8m%VY* zZ1>nfj@-$0oYh`NRR`8ktk6>QKv(Bp>PIDy3lhys@yb)?aQR8m)%%-&6}2~{iq?U@ za$E4h?97ZAkShY>$Sq%P^6?cCf*Cr|C{7O@idI-z=xWsdBkfS1M=LRZhgO4*qWLr$ zI(??HHguJTCj26IYAlN1&6L)7#bw?XMC|qDE6yNw<8s*2-d&+}pto8uEO4;$m~%BK*VIBSTbh6O`fE0cKG}_+j(B zr0{aRzhc_5hU;aq?KW1R2Y;)QX0n&d4SSvP`JMAYc3sPKgbv1g%l+Ft1Z!uRT*V|w z20s=Vea}yyECETI+>x*&>r>!ry4kjJpwINb#3hs&~)r{{KM%~b@iC|kwmUsj!7Q&fI$aX zRKI{D(7*sUvXPaW=kzjQGRI7hD*w2|gHfm&F|hpP3AvAJbEwCpwtoSkpsvNDJxs4- z)Ipq8@R?XC3(T-YfWwhe4)jI!VYe7uUz)?^WRl+7K?d*gpRUPg>#!gQlp!*E#}QA$cu88ao)RN$u^0LhaH;y~ADrDPE-Bfxld zb91Lw@<080uDZDuyrpVCZujR>-Cb~2h~7$YA7--VuJxW&*FNTGJXX9fuf!8PHt-#{ ziy9h55{&JYi_n346o{38IdAKElI7t|Jg&7LAE^3rFv(9xT%T?3^PdWLDHI{d`VktR zF|d=wtOQGKW7s;6^9*Ul5BW=N4OfO9FfGP76Z*D&&-bNz`}Fe(9iuCwJKyy8hjQ&bn(As+GYxjFw5#&G}^08Oe<&R^bWSW8JBAmW4*Rh*4MYh z!Rx&IT{aUkLDgs^b!M+LgSYQENenfYhtT1O8;KT&H!+h%zlw5dj0`xi(LJobf3Z4= zeX;Ettrb`RbR?IH1IUu?aM~{anztVJZXYR)HjqBydQ>K0fZ{CHIBg@Ut&l!sAf1oT zl~&0jOPu|JLL?Aor4BO;n3}=EW=y0};@0a^mu|ZxLnvC76{HUpxMz6E=n7t4ep*+; zo$W7Y%i(gXBJbz?b0qek%1+2Of-_@vgk#x`24lFkE`rmJ^nQ{nxIj|}4dc7-j9rNz z#E2|UhiZuBpbvi)q>x6flD`xJb{6X2Bhff(iOq(bI>BE_N#O`Z#sQ%Q`px|mj;Im* z#ca=XZCb@ejl2mfI=1M&>587>&$ilI!F&jKAWQvTF!QizP6tPMqArnmB&T`tR6#Uj zDO*ZSHe;$iXH?Aa8Txjv!lx!}O_tj?j)d zRxN+}*u0>|vExM!kD5atzMEHM|5fll>z_!;{UoJem#qlH}od5|6Y*zspFkXaX_wUWnHEXmgIX?cZ5|V0Z z88j-vT+fN!8yU&RCT`MHt)c)uspYAX594Te5UC~c$;+}>E+jnOOp3P0Xlx?J$131! zz%%A_HxYg$sbRIO)Y2%TM2sn{)jzRZ`*wE;H3bW1B(ljS=>U(h>t$}fA~Ab3En5ri zL%iLs1}`;(uyI;wGMP%L^I&Jo5L?a_FL8u$#-?3F9eZ{$K%}g%?a13Ae5If^Z>li5 zBPdQcQKD24vq6k1_+;&h>PF=M=J>LC@`cl1LZ*0NQ*xc_L!g6N_14-fAw(^gbP}xA zr*X32(r+eGLOdM#2`26Fi)6txHDVhHd&wTUX)$0yf1hUcJh@-NLnBd+`gwm6fuRiX z7-J-6^2F~R&-CvPtDF0mX0dk+lT?Vj`f<5#cNcwNR$>EpIgyv}#?QHd7(&a;2gurG z@l6X7eG(28)3qf}q4ALMT%kxvEyDL0^&?fHKLibizH4c9mmKc8A8W=b8~AQMFezWP zwDWA{r=`&G^~YN(q=Waip8FXz)p$~S;B&2@4>z9DpIThg%=S8wdHkm+qlV_p{p}L` zHmsH5*m37|G!&*C7q@+wnM8^H%F9UnCs{7roP??e#EqFayo?OapC4^7;X|!WAi+c% zaC%Ldif_~WEU6@7_HJ2w4)zx1WSQ7M5*B%kBFD**xs#+NF@;l!g(<@Cb6STVru@ED zYJebPonND^ZIMcKW~x`N>RO_=vD}gmFcyTkpP-yTZ4YHB#781Ld!EiYKzjJF&65;i$#oaXC|m%LQ5H%HlG+ z%+^XWeSY>)4PY7~i@@F2Tem>WLhmLhBY+}E)|ug>@v4r_%IUq6?WFIFf#k|u!ct3U zKTz8UhA|!Wm(ks|?@8GMq7$rTcedZZ@-vWShc_L+aFBR5m7N|k@l03(J&I%HgLAh*Zl*Z5kF>8XyN|ymqMVCM z2#@?nZ(A-##6l|8chM}}50$H(rQ$sJKpPlmc3xjApS9ogu;)?k^PMdbORMDGWM&H4 zoy;>w-gYXj^}nO@g|ham$e_mtA`Mb#)Kec2J2L1VC5iV?w@BBfR|zA33kmd)$QB?L zs0rSqtY2jO9kLg`M{}^4h5zwK&M}qJUCxvztlOKP`q$kCXR3e8rZ_sc+95_Us;%8P zeG{DfEhnS|psZ#qLG&(V5yF0qyubL+9&5CDJtn3Z11iL^(;Pmlc|?*JjO)_Ju7Vu& zn+uo@sXJKku@*yD1|B%YSoe8Kg>)OnuJf%Zx*+PKg_~Y|5wgUf_o`pKs{_fhElAzlidzDb#+TDY*-j>A|MM;ZAj zS|k5EpBmmmQSEukMZ79e(B>GMShFhdWb4%dmI@&jM&d{k_F`q8_53{N(d1UCFycET%jdf{e3LcDx&63`-w@#p$XszS9)FN5T|D7gI(Z z$=ZiQA^piufFp++RBuK>=M<$Dt7(8ls~cQpi}KM>4fN=>30PS)h;$ul{A`tZMmpQr%nEG`dE&igF2?dVeRT6_~*l?{b^y0%aN%xn%lO31QZFlJfJk z{$@&!=(lnD3EG|a?B;cz#|kQ1s&{2Zxq4uerLb0ucGO~APHRWD9#-Bz`E1A9r&HPO z&=fLc`)$E(Glw%{r;A@mkjr&EWwD~ecsb7En`VNknjAh?ag=TRuy@nuxVdM)>FT^| z^XzzvQRPst{_^aUnG^TWbk&#oAi}LJXYJK|+Meb1qzAx9RQ!%(-mdE&B&q4TxrT1^ z=6`!nkG4$4UH^A%mJ;0ywLeYQM2nClKP%(xhskgZBYmUOfvD=x=t|53$I@eLxx34Z ztX8m{6soymaKeyLhJEt2$8!mCI0_!hsJJFgoFpAEuKDBZv?ov=6H97(?Q*31yrRSG zJDgiggZc@XVV77P_XTS4(eMhJjUf@qcqR&wm4({gF}H@8ivA(lU1dI z`#Xf2A_KPQoEIcw_gQH0xNdro>Nb_fah7XUOb|8Q7-YxGC?3|+o0=I-O2DGCPDgfp zZuq*tc_8Etw3#$+E9lDopsG2ordF0N*a#gOL&jA9nqOgVdtPj;V7d9@mqdIuzNTxl zdvHy=(LgOjmv-+{^HJ#{&o<*?!AP>wOp<}o|4Nt!Td;x^pR+8`4LBD&9$_Nd-Q zcmxVXCb^w1SjlKg&n38$-yNIULU7rlwudU2EHRmJcFR}LBQ59U;}4$_5YW*R#=ncG z@Aw=M!yTZ^joh2HL%G^KbS&EA+A|0nG}TczMo?;Bm%FfBd=zy4UHO&uryd#|$=V%c=9p;qrqnM?VZU0WH4zH}I@&al&brYPS(`QkkQU|~5QY~3@ygB-` zi{dmm#s=7qrc4sqX>U{8coEo|NRqyK&39pYS$*P2R$$D=Rw37@5J{lvAFI6OqRpS@ zo~1Ro=TtOmxWM&5G2i~QTOmH=|6I{QK-Kt~g|21k)O{c2zxa{S6Q#RAUPQ2dbygJP zi8^Inr-Ub8E1y1$5fKI=-1_?3Uyal(7*E=?qqbnCqXB$X2OjfzUtB5%2duvlXT7py5MW4Y#UNF>(Cd}kmykOapK09E1>zS3~ zX83*?#gA^ssam-m^+>iUromdTxdL{cRCo04Q~b$l-Wt}!>-y3Ns)7QJ^wrEND@|(U z#-q<}Fe0+tdfkVx$mS|%9_ms2=i^|q-L9RT@NdIUmU(9=iPJ=noRN`yYZwsSegHBr z6Tp=Nu-0Lv`-+^c3(LbR8|Ah=zrSX^uAN2Ig)&J2*;oUgdtZ(m3T1b;jIbRJ=oc!f ztYT4b&fDooGH&5cG|@g@(cWB2G<4BJQFWVvMv?b%eRuBT<@n>YqAFYFfEd&cQ0-nB z{vShNL||KpRL$1!-*^8r9~#`jqV{SlbQCQCh^>9qo(LOvef0XSYuVEJH$OQ zP<<=Tz)ua?|3|jwJz=@i)QW$zm- zb=)i?O1A%p50ByoKLIm_$3#7MmrARC)7jn3P6u-MJ=Jt)UG0CxWw)1Hhq=!Ha2N&y z;73Y66WEIHkqY!6yvpKjY{3za2sxa?%!Eaj64FM4;$~&7;y9%wx@!N8Ek+&KpD-4C z!^bXpYdOp9Q0dLl5=6}m)0{{{1TaPX<7SlG@oeX#ZhlTVN-vrAIrYGr9aLT-r+AHK zLPr4-Rc0hVhsp*a+ate(FwT8<$G)s>w5QBzJh+R_L!+(H(`cFh~CfK z=Qd=PWv8H^JvU#w=$f|7ch8#8pG@_Nr%udl&u+n@cNnY}d#>X^%3c8*Zb;Et9OuA+ zS@UW~_I-bImr+5F?#I`mR*|Fr*@jW{QkgJ9Nv?RxLxL+-T%iWA!a^#M5 zc$P!Dxd56sZ5uUv!j1PFh{-f0!+Jav*VgH9%2e|Y&=efzhoy^pfChBnp)QY)ink=* z`D@f)qe)n~r;-wh0#g<8X(3QIQf83$k82lebKLmJuJ#C%0 zN{?MOmCp_4+M@=l#oul*TBFLAV8hOL!u%hvgpnoq#VH-RbY z?|zT;Gd0Bne4`h+kYL6MM4GoCCM=}#06f6gfbG*%`syFm2DWq{fC&VL=$R!#$bP_n zlc>?>#v-H**DO>OYq;3W9lJXpUUDY#+}f%V)Fd#AWIU3<_1-*heyb|>y8=%e$Gu_1$xh4g_??;JQ{ z8nhgmJrgHT_S~gWR*Pc8jYPQIGbiahn#+WxNLHFRYUIj9UMOMJeehgD?r0dp#V?lm zBU{4_I2_>>jOsPU=PSnK3~0T&GnO=)J$o1-^CJEJ{(Q)RP@~sJtvj`sot<4j_mfMN zEe^MHImf^C5WiB2Pxe_TUSMCjt~Utfc)i7$XO3^=6^=}$`lLTYWT{3g9))LeB7 zQo*Iba^s6FEk~`3PW}w;Ys>1bvFJGc9)2X(wb!ZBUY7{-mj_udIyA+3XHH+*|f#SiWmKtnMo7n-1aco)E6xnJ^MgqfDmfRlu%} zf3bwf)ZFDq<~{t zlCcJkjlIh%5c&m_)RRj9Gzk%Zpf9qpu=uf~5JNlI-`Aw$EEh;dnk@&cQLyAMJtq?# z?_NHQa9=I7P-m&tfpMkr_)s-Hz+|4cz}WYyzRhmGq*b44dVc6C+rO={G+BhNL`5T~ zhdsJ}=xL$NQiyG1ujtXSMEW(0a@1PI4J$`lt)aYO(lw&|4mXqbEU%Wpke=VX41i&r zQ8oAg_apP8t}o7dzig z$VO>JTNhL*0cjFQr6C5ZJ0O$z2JY?IdkH`Jr_bV|GTG!|2f@Q2svyMS0;YbM(pvvk z6kvw{F7&z#PHQYDPjE(>0ft|-XWgx(Bz2>-MZ*OBVKxW*rvf~|K;deb*Anui??dm* ztB(q|jC)QBc z)lI?T(Ci*ovRdVrD5e=RPy?k!Hd_j+;>zR*N!RfN6VYKLUjf&oMf_}xZ$#ycR#V=X ziZV$VMI*yL7hdxLLp2>{@*o#|k5QQiiLRT={+Xi1L>kFfwYT6Qusft3Krk1 z(CoT{cLu>nM@DysgOqk+D_qjh?FQemKwt$3O$;p^AJZI3`~uNm&&|Oh?AX5T-&<+@ z!#1j-T^=B#tj5ycg8lIyPB%~!sq5%$+kNs4G` zl3k1^uT|u&&mr+qG?pQtX~|BIq%;@WeDYWoQ~ETUEaB70zvXsUbD$L+Z)be2Qd^Xk z={Lo1pp|BQE~#6AIcZes+ePBrNaSbbJFE zp>64M9ga3o!q-JLhpPHQG2bo{!%YqYH!yW%Ap@T|CVNvV4li=3Dq1z78;sZ(AHe4Y zRGv`rAPU`%Si|F{I$JBir1kA~u=+OL3jx8RhTQayu3c%H#{2M!AXRg1THJogYiY7a z%dgPe>A5rz&-TxONdQ=AK)q5XLoxAD1s!sk*F@k}4i$Zga5$i2FyyT}9b5(QrgwwJ zFPtuMDx4%<5iiCVktV4C%^lEr5^=x00&~(kl*!@VZ-<|Qu5%w#L!(lC$Mzc5r|KI| z5c5nJfxWk1G4%!}CD&Kh26)B;2D~`eZNTvcxh4&zPyUrUegNEgDD1}@M4`C=+75)G zfWY2RMFU8r8{274eWUkRA&}|0zE;Ir1ZFayVpS{s)V24k8~Cs2$gdqQT6K3_^DRby zd|r64=tDJgPihG`7Lu=hK8L6cZjI?p_03e)I9)C-i`)Q}>HAuNn=tR$27xEZt<@*cljCj1D+6{A8P)7fI>2#+WH z{4p2QKov=)W^Unp=t}qK{S*Z_N<(ApfYz}QQOm%sA{F7GCpoU4KK*u^%0${XNX5R* z+JnJb4lC|7lzAxwb;Y0i1)K|#?S!xiMiEjJJ$($u&algo4+w3lSpI~u(bS)Fp-f}H zdjO6qnpm}+w^zS!Wj#CNk`eFuaw?NdubX_?OwY6F&_Cx`H`50y19CVR&58j%xTTx_ zbcyyEAOSB=;eUPU1$foW0K(pW^}Dn}?iX%3+~m8M zW@wb5axSAVxrFPXOMbHO7`$yy%x|!)QfrFISI3cg-w`tzNs}mYF=pl|J-_3Kch@mf zk-b!80Z{)KF5FYuZs*G2adjR`-lEum)UPxvxe@xlp0bh0HxcAK;4%P;o?$zPt|HgC z95RulBp$Mfh?NdPc#=LePyq6fImAP^Rx@*tx-yTbIG|d6yNi{$qrWQhNd%Xmkt>)B zZ~lr@!`e)%k*Eq89atb_43iyVfHgQb>UiSI>B&;Lob&_fCg>ZoEy{ajP-&FxjuaKC z*L74i5$RjpZX!z7nO<`(``H?Ewh{N|LCWX5im}Mw`S?pdO7GqC#zqDzcvBlqDz3}w z+2L(CpKji5r7G?TE{Zkal_C4F>Tbd$x+Qrj$Ar7J2!8P#(R0R&bQMEt-D*bhAkoaY zt?PYYQrCFbSge{rH%#I4{r(jC$OzK=o3#O+xI#KbLzdWW4AiA$%-{)?*FI?CAC^Y~ z>-b)>wqQHW8)r=?lr&phq5p$7=rz7#V7SihKaUI}bn@1cI1DARlRQ0G<*)iNsX_`qw5e+(;w`FGU%_GYPNQCPncijki#i&F zw&%y@+;+TqWrhfW7kyKGuNO(-5Qo{!EO+!ANV~uM`Zl?5iv{o|ylrPpAg6|ymNp9b zx6A=fId{xjj~s+GO8NRe0Qg3J+bK30ihh9G2SO+uKp_TJpdKJAb_PJi`oX{3{Ter< ztPHsJzd8eDQx~xQL;#%T9S}TFzwAi^yfs^3yAK0<8B9&hI0%&Yp4>>$kl1t*Y3h;L z)a*SlG5*7vDMM{I8^0C9`JP3G@pakpQ<<`l`7|%ROp^C?<_5KZm0=zgaXh>Fw(?TW#}$ z@-4sq0W}g3Vr`ULA)VKx0q^Su6rczN4Fp`B-vs9~If$U@v&RqX_@7A)dII?L4ncM% zBpMnR9uDd>!Lbzq?mSXbQU;I|BcDeMzOom(J3vZL{h*TJVvXNeWoh4ks6?0ABal<} zrEw=y2I#$9K>pm*_k3v32M1Qc5O7)q-mrmLrdI^IWT1bT9P{uJyt<`yz zj9>n(szID@E)(9G5`VQS@fr?=^WfaJN!m!iKB-d98psZxwK@_Et@Z zQ;|hR)=m-8I*?>&{}f|Rkl57i%G52?sCxb7Fda>tV*K`|ZD4Sn zcYD^RfL2Luhek7@E$JiWe4VE(+O<_%)LjL(r5exX(T6`%=-$BPQhp%Evc-*2yx1VL zZEW5Fwg3=db_;r=f&QMJFKrb3nFEww$bkbtn|ptNpQ z(fNB!cXHkwAO<0)c&}Nmz5+>Soh;hPjQ(JA%X$F&}UbU2?f7miTet*4_&9@{Ms&AO*7PpiW6 zRC24$0C`Spc#H5niAc|6-i490sf2oWN3@XEr3Q0QXuSh-U^#gSSuimm|TZi|5pOOb%lJ$rM1=%_Mjp z9*&Jq$p-^rFwh1KLP-D-`z=VHIkf!$yZowO)YsLK*VgKMw*|07Sci>Jmrde*-o&mX zO@oz1;N|Pj_qZ>muk$OwX}!X&lm5r)v1^(1#(LI7gExHu$}ZWmb1Fb^xxs}Q$`OG< zG$7~0b-Cve+aAF>l+y0hE^+$oV0;Vo7IjX6y#+qHrh!{gNpfH`u3ft>MwU(Hl+TTe z{*ooSbU@E!&|#i(=5qi~En`IBR_1|z*L%6wmgY1hlnkh!=Hp2tdf<4Mrw5N?vn!xR zuc2;xs8Aj${nA_-LtS6HaKesD(i&~}4>zFtahIYI-D5-HY%Zy9#fVwH(J@zl1Jfx8 z*ZKrn;R>L&TFYsOTxqgOBn`0&t<@I6s{(x(q!7|cXikjhsfe?r2~C#L+)XL*vgN~f zGLHCEPqOgLTaIn1zPZz!VB?f{oo>EqxVcM|U5!QV6#kQ0T!<)zbf=N5tk2e?Cprar z%QiY{@510!IWYH?wBZO2lqv-uO<7odYR}vFT|*s78Rp8 znXHtx&okpUGdOKxVqvX=Y{*^^mjQ*(-ne-aig5+x_2}jgFxUfdZx$65Jx<{<0tq-E zpXw0wea%3sBkVPZ%7HyT+FnnL1sRSz6=Z*TjqVTs@)~`q*rD9ZSFf5z&jBNv;qKj@ zVrzifb}wnE_bzL%VEMs)^!ufx-!WKlTUM;hyPwYv*Ao8q_B{jvBESI{4n-Ix=^A$e zs|LhZgncw&uC}gu6s<0|elcVirjJ)$*Uct^E?^uO;G;$YYPkt5v zJDYa%NjgVkRP6=A_%<~RtF>h-YHB)8a-5wR)4}Z$7q%Fi!hq_LgHZ!+Q&8Y{vuprR zJPJKgz3F=E7UAO;Nphdo6kS-CL{&lScV)@BM?Sub?%K(a!ru^RFV>*)^4KMIWb`1E zY4*7WX6P?ss^qPM;YWUNQzA7@T*~!bQy%~n%bHZ`&N~_VZ!D|h63>#qjLY=qx`Csb z^vl-vay5074W1Luo9}R*6fk_)u#4dqNga1f9INg6*{D+{aP{0RCKRRYZNxZ}*+b z%NO_v{XA)Wu4+FDX?dZnax_eG1;DkODAv5^r8|5CBC$+C;tzxYhc;T^y?Owmd>|TL zBD>~;nf?C<*%AUuYkL4TI^dx~(0L$;k8%1T@Rx4+h*5Fa%vchO_bN}0d&5X`ZYibj zRc&iuaC=3H9ofHG3V=y})dj_$0&Y0uu|5M?Ngy&v90r3zj=*`cwA>o>55VvO2g(bF zL5WNNX&&UV(T4_;kD?3&*LURpOArnuw%W&Brgl9-m%2IHMLlb!T*#u z))T(Y+j`p1FB|%`^2^CS<(%rHIwy+%&RxBarGc2yOUv4%uO)rHPQ zf`iS7C-Kk;)T3o{+h6UqXr{p=YoPbmj71uMqLo)-QxJQt>4cq}+YMyH7h9MXdk9 zlmF8KgzA6{$Dm>IeT28OzIkk5#wl@7nhkfIN6X~A;%dkbm#ca{3Y6>U?blZl5s{HE z1wCT`xv{Yz10>{NL3vH|x}{*H1et@RAYv*OG%%q20+^bXR`8iOiiwwlW8GW^#7E^c zz!5L+|C4gCb&x_rN_scVUmsA>TlJi`?l`I0os|FVTP?B_GCsfvNWXa%+FqVwNB8&A z^*J+;Jl&hu1Q?|akTAC+BT5E zmR=DDP6wOel4x&dJ&{ZxwcFMoPbNNFTSKX<`D4nEUzzI8Tv`u*H>S{=Mv}Ai{KFtw zF{^dLo>-5)7iQ|$=Ol6p3H&!#j?QY08GnQJhGXRvMq+k>pPZJ**pqz`b4wJ*n6%X~&UwItV%`{K2ik6ZOvPtk{FM2~hP zir&$_x#dS1+mDmchqsZo_0vp8lkBrO)}@N6uX=|}P21D%IyfH{`b0WMsoKWW3&gI6 zj*Y5m=|#32k-bky4ra(8f96}SdqTBI+Cw1x83%VFw`mMNFO|5pJ25fT!zwvTaH$%v z-?#D&SxWj(Ts319tr9(Emsd33i2=Cd#P8qgCvdvLfq8$Axzmv61hrDYy>9X?*|+!n zvk2>rc1htkycbvW{gw-4^s_S+v56L?SJL~BVybq<)9ASqxsfdgsrlsfm@Zi$6c3cf znBeLJ77_rh*8DYY1j4apIN#!cE!rE*n#`C0F!%?^?LL|XNwrAxenP;h$A&?!Lo!YbGDQc<}ukbY_J8XCv<8gs^wnOSTv@-Hw9Sjzn#7y0IIE2(ZXtR%R z;(kxQ&CashOU99n?yi4<%iaki1fWEbdZ~iS^|4k?wL78`Ms4GdN=3=JUbkBBabAj+ zvMbE^@5{5>G?3O^NnXL7V^vElUphRge!NeALl?bpdelTh<%h&R9n$+sxj%%eXDXE)i96dVXj@UD!y@GfK{mb2C+sB% zG8Vo#)~`ey8`N=ly&GWWY6l$hXTXCR_u<2CIfvyFW#w+rwvPbF?mWPvovXIK1Xl7XT{| zBR4kzSjlpYIJvy;c2)KRNrv{mb$Uo5Eo(w*O2`G7e&O_Mm(Q{5kq-SCt|4}SwM~-+ zoTHRqq+dI(S$!NE^PZZS?gZ^3WQuH;jZm)Y#DTn&WGP*JsD`@v`b9sR8ona;!jy)F zwzbbYOXydA*0vFhBmHud4|k^W^ZPlJn>^pgeI=1K8wC6@>D-E5i0wJqR_)-l)2%Uq z&-PZBe&+3}Ud{zG12+Zg!#-J%H#=4$Z0z%K(`}zfhl%Gs@#G4@y%}n%e$RXRLz6gV zbX{_nIDwkMb5)EV3-87AsPrp}R?3|9SnW_fM~2a)VYowapUYBhRGMi7yG8d-^#|v) zrs1o%mVRp=m6r1B>ZqrL@G8b!6^i#C;1I3<8OK7u_m?8S!X1+XzY<-}RLmsy@Sy$aR zR(Pgoxzy%H!4d1a#pP!sKy}`hth}VIX41N9H25Z+u2ejac&wbx%ek>6B4E4QGBfMB zgy(npY(ijF0imaq@_6OX$_eVIol(;{+msxokT6X9DL$QhUc?@f< z+djAG`kR{a*nUlXzv9j{@O+E-Ph{Q0`pe`>FaHr_Z|jZC2N z=$ZI=INnp!!-9R4%$CHejqLoasV8cn&CcP~9nDNkV?~2Uj#Odd=d{BJ;1(7p^HEJf zYm`8PL1}D7<;hRK*!GXoIbR;hJP~motV~L*?h$s1nVMQDns>Wnrz%Fc;^frgI!li> zmUROLiW3TE)I}sp7rf?Ac}`kSmnzF2++?eTyEY69_RUv*-gVcxR^TTcRZI z2-)zxs*kBD_Sz`%>yT4!5d?nbckdQp_qaOSE9eDCGd8&Nc|%PDxgwcz9Z<>Pd|v~P z3MYzXB+_|W-}n{CLG}NeU*ccR(5#!XrDWxVI(yeS?y{VAgl}$lcpmdtH+$HIP4Q4jRK;_Mb2<8mP za|)5XI>Ug{pTWImb(DSLpUV7~^pvhZiQx`N5jIdxFp5-v`V=I%g51+Cp!*4mee`?a zBNv6lFMw@{z~%B{?TR=5FC52w_V_NxUA04MJUbKrM_9>tl|lPdapAo6SuSjm%@Z9Y zul>PuQ_Sda9^S28c>VhkvP_|LQjC_f@o)-tOm2yFuVO|&cEQDt%`_C&77(1N4}501 zo30s?4hmQ(b=Eoo!EVmb^~*cjyIZbredaURTw#@-S}wM265VKxADye zAp|q~aASSlGIBA#x~X*HFZLN1U}>Ogp_xP( zu>m&D>V2y@jzPP-jxG_XXKK8|N(;mz8Jy^HEmHKbkDzYFx&gATXLJj0kJ34rOw68U z$fx5NgN@D<-fX_YBl7gnZ;JPJ6=B#b4`MF&W71&!W8KkSp_ z-xa<~5b*F9*(yN%>5|6%ZoXVf9cjQ8hdoX_pI`jzRW6aNs@|&HU}RW|a}H?ECHic` z7}s0v{CQMG*;P!f-f+UMv7vW=NSck7ey!o<=lQ)*)zPyn;ztKjIo}O!FOrSx4qY>f z&29QWdiE=SU>W(yeKV8ir2ewp)CtkB5%Ao}LpwQXQT6ijJN%X{%v~AjRQ%HI+3-dG zUZK=d0ZM^=PQ0Hi4_;hQ^CusNBpCOF`U7SuzgHPEX2+Nej|&5J%#COWMmfH6VLb#G zFk(w@fR3)ObP;%(qsdmr;zBO%k}96yz~Fvpo%nz|?@i96tyWUfyE&~4PH^hesUa#b z=Sf~3PUys0`q=RsjB&qT{d?&?=0oRE#d$$7a$tN&1qo&#e%PIdue{eQwGx1*7Me0k&kqba z)^YFz=>k^dqmIgmxe<|;gqJr=u^z5u&D|vKB)CXw1k>`|jrVGY-EtwjF4tc~M7_S@ zLIZd(Ww*FL1pfY^8S~SF&{31Mp3y1%{(E>aLvra%&lg}}o_Mg7?OgvV{}tUn(g;yY zA41hF{RW-y_;+3SyI*$TI1cdB+#2D=krEd*kCUDXz*KRvttPF71gp$D8TSHoMdA^% zZ%v*4WI%QtAoHwrVTs0`**H|E`&1u2{d?|a)y)y-oJOQ|X;bW#1IMOIU=3}#ZqtXTe~v9-XF zxyHSO{WAIWCd99OGZwo@(@io?VOBdo>S*mu;B-Ea39YU86^Z+a^Q67hIoXs|Fw!+p zo4Fh5{atl&JTV)_{i>#hvX7R#DJsi#Y)vESxId}(3Qg2(=)*V1;(*avuZZKJ+nyYbAAh~~3502! z@-ru^i&7NW&1E^K;W5JAKV|)MzLO;ivSOiv2kfX&LMIr8fm-P82JYXr54-Rj)W=XB z1uQwcl;*x82zJJ5yV#d_a5N$abTC0d)LbB8a05IfBPE3fmgxx~)Ps-=Ky=UtG9i#I z8}iUj4HB=R6qWsk4Z;>MNXYaRnvMeOC`*M=Z`1lM)b|NOmCEDy!XiT_w+kXp$#rK; z2D((3>Z6sX$E=lpyDvWRZTfzfN#>X06UP`Quf}9F5@#3Y{eEnXbcY= zMo{Ws!fVDcAX)q>)9I)sQhy7 zMIJm#y?2%vv5J>BP$XRVKj zmr1$~zX&MXmlnl6PSlz{#Koemz6?uFP6x>}9V=u;T1E8FP>xryC45YH2oHT-!mS=URy^cCQyZe(_AGCny)OFvkG8Jccb?o{OaW1^JGgw19aD#VT6iEB64! zu?Qhw$nk8-UtIn)FwMF$l1`=g{U&*IF|1Rbi~Ev7+d8g~U>%-f5Dt)AK-0YVtC%z| zHBhzGWdVnG=P4EFE?IC7!e8qeHQgq*7W;=s~^9;yp}SKvO8sCn`7r)@k|KPr&N*a!vxJ~K-;7|loCMfII;1- zc0!DY_U2d$=S&`XF_R3iM1D_C1?G$(Bib(sYNnibbiBglb= zg|vnS9GwLm%y*1ZgMtS_4W8`})L**fz&}0*rssIKk0alHZy6H=Ef{RaKMX+{)&tP% zTu%oE!VYCD_1H_SxBYX?1MS@O)bSo>zwUj;ENE*DHCHk^b$=zOyIG+M(FC@8QTY7iB91TLHuQED4qyu$ZO@Msw zHAq!3jC-=DzZLFuUD+~>aGB@2p0({6Boj@UfbsODj`$`sBUhZB-pd0*Y+>x8`mX{4 zQMpxfRGUjTzB6ixq799kjfbd_Vkm!+wz1N?N`)q2x1QohuDarB4G&EFOUZxQWdDh4 zIBZ;KVTuV~4%muoJN*lrt+H%9(^u>hL#qAw1L#DAUaWSMBRuC9{%}5})IeD69kYInScr z%%aO12NpOu`;tG`yf^=q*4gaH%ITo9%Ph58uw84$OwLi#+|_KdU|R9bIv(LB7e$K{ z;I6lgiGOoGg4>xPfztY(GS4D+;Z$gPZA>e9hYz|v=vqJ?Ly1~i#7k+#8IB<0KHonv30=&t#N7bnwN{1hN&IK+a zG!@t|Z>Q*^a4z8BodfFFuAZAN^-V;XJZ187(JfWldOVA#S|+b&STK>)`4JCm=hA$D zblY<~Wnq+X0DT>9EZ{b=Y35v)Auyv;&Opl>s!q5Rpu&cv42{1GIRG;fY`lb9Me={; zI6~<_RZas^rh37a_G7`W;;>Qy4;S|b*c&h4;s>4Io!+3kd){Y_CidacF9&2wW{syV zGqkSd%wuqq7a*sTeB`-^bfHp`k$W&;X*SSK_D}P3l-D>$=&7&HCwmB$eQzA%s4XVf z-ACh!VDZu6i#T<`1-@!!@QvKulnbjz1zyaeml_9p$o17~mVWv{Zp7O6Fqv1omZ18L zHW2#!F`yk+r0iA%4P<1?6iTRQ7D$<*eG-S!^a++OKH7?&B*uZ!q`1WO*2k7oa=%`( z^0J5Q(p$OiW7voC-}fc3Zcd>Nt-_ym%d6`j9KgXCt`+7@aszptXX3hnE7chb~uAG{!2sw_-TV@0H= zE-K@V%n*7{xUd4H`y;L9hAeThJk*3aL^Gs4D1Ex;=nC)~(2r75H( z+>&)osJ2Mq$R?r>MhOPR4|Ub^EKKwiLG}YFT)uLV^7N^AS#oSKImy?|(@4oSkMDYM z3vR+GD_eViQViNzDY$><${6|7D-v@e6OCe)*ThlmOXL_R&<5xM?SQz%#NZDfsGp{b z#(U8Nl~qpjhktXgEzUq_JwM0~h1yV4?8-#5fNZh`gg`$lEmrbWzevx`9qR_Zn>zUZ zA+)4Tw^V&a(bi;8eilH+Yo4qHH4N`nq^svEl7)3$>dPWm?$Im(&E`Jcl+LCYos(&EK}#8Eu7w=d|H$i8n=BC< z(kwk(`Za0W!xOypaz8x}KZaIH+!8Yx$bpQlwZj`roQX&#A8!S@5_we?`so@;*h z_y4@{;1DHd@7dQU);iZny(#+6EaQ0Y-Oows;*%F8ccn;38iR?wHcKXLAE#e&)Cwy z^0|J=D}wjdbz>xui4fXTf7vp)c984}nzq^RGtOz|dE6X9653%A10^lEWQ%J!|6>$H zY-6`9I@_gv0Uo=?a*wpM#8=)1A5>Y%(J^Due?*dD;#UR1NB1sk1A8C9=Pd2qK{bST z@kJ*>Y7vaoI~`r5a$>QXN3`Wq%%Nx(eDkO2;%ZSr=u|UrC91rG>fcr)=ibl{)Axl! z%MrCvkz~-nm?L!@)dXGrM1Je8-e$RV*jQ0@L7}MIa`}OLXWZA>DX+f4+<{mMUyH9q z!YRXL3Uz&;U&m-RMe*{ZqBPZ>Z4CN)tMu~dJJ_LCQu`Y)#*ziRD*224ONJ#Y_dGH2 z0m7VmAWE+=>VSXr0cW0>K6;r34^m=Ju#yim7}v8&C{HK}%0=@0u2*29{3L~;O!X0{ z;=_g|S?V?5jB<>yb=0;wNoI$Y&B`fM%N!y?BwR(LzEfm53=#^eialHa1QMh>?S+C9 zb)AD#??(yxTFycBIszORY#~#pM)L(BJ)>I8IO8ayXIrc9a~OXCB8my+0WTx)B86n5 zZNVqJ#X<)uqXOKU__KPZS`p?+oJO8%`4n{*)`39QoJ^cZ=@5%6A>NioTq{)nF{+1I z%~289PG6v9iWkUR?rK&ppke-53x9WC;%hmmyP85#8{zwg=SR>V)r%+pQoFbWoX^j;65tRNsg_RM9gL=&yp12PGSmuOKOk z$sJ@AteC8ci#>-!o>xPrOd;tzch8BoGan6q94@Bg%;g$ zv+Vi9u5X7OK)^{%MPMQ{Cnld-C&M$N7x7d)>&xhVn{cz0CAA1X?;s$D$#MAWPO7PJ&0UG)C@mX%`G+;?N~m zxyfIG=K4PMaAk|Lc-nL<@PA;QuY2ESL`#-giw{2Bxf~WxUzzywrmVjH7@w>5O!{5cbgZX^Eg{fZeF5MVfvWR~q~TaqCr?N1Mw z?ItCSv|G&=#AZTYb;OX?6Lg!_zr20=H@djgm;GJiU4A=zm2FOB;073P7He0D^#R%B z)YKFzV1!CZq5i)tVF59)$pqsv;6)%EyNQf^?s_mcC8^>?$$~tcyQ{M=q;BETQa!MZ zBTGp@()}6vN98XPKo~JA5rV8F8Zawa(P4PkM9SiYIGS$LPo(Fx{Fe$b+;PC+tL%2c_B;Bpo7c9MM=9*Zf1T!j+)-bR@M`!F>#ujgiTs4D#z~f!U-|Z`= z-G~wXLM#pqG<1&DTK8RulG-&m{uGRxG3!X-9_^KSmX~~Y zJMb07Z7+j30;lU^2J*)Gdcb0I}v8P-gbPBtAfZ zGc&X1g)supbmWu!5M;mUDxL7s9#i+p|3>~ZQ$+~GX&+Y-4JzrVi)Wm12!yOc85@Lt z^X?f=(yj#d?-^^>;QnRFOUJH0PuKmbBFy_y@6h@G!lm3Bx`*gHKICuObH< zzlPyM-%z=fVcN{fU-?Ur`hdpKb&3`@KoVi1T~tBNZ!bI&Rid^7vN_fjY996;;hRQ# zTZH8-t`MCxok=IG4|E%e;Gt+N0F9%qA@DSPD0nn^ZO8A2v-y!Xm{>9Rh@^-swRhtN zWCLP>q^#A(JLWp2O=tx9O)mS^0ga_NU509@^NLTf)q@ms`gPmhOuQi2cT+R6{u~+l zThCuvd_eM+13Khhj6BtdZGZ>ZMzF;&EaVm}d7ZZZP$_bY|Ig<&e46!ikJ8c60gGf* z($|jyd7{){7YKt*)5;~U*qk(fiLLPINE&3>l-?bJwy~{n7s;e)c(ZBlJFNv>B;9>s zEQjdIKC>@-o%hdabH;OZJ!QD~Re9~k5j?+!6-MwG?K=0b&Zy*tUqj@Tj;71lJ!HD9 zvV-(R8^OisKaj7tCSS)-@n%Xc9}1Kd4rkotQZvPYKPkv*Ao+zHrj~vTsfb7`0F-zs9wKXu@(Z&NQx8#+xIg)+Y% zlG{fMkW_o|F>WgF4MmGL%ELQ4^r$ z`{BE)0)_4H(7?sftSA4=5dop_+sCJ}6hW5|#5kx2BI5gcoJh?QXT&#CyEBFOHPh>w zXwyZtbA_Qg%DOSuIJ!kvvdkswI?9nR={*tQKQn!vciam2ykJ{7o3Tupmhv#PKeWG} zU>kRJc5-a&zR8g_YPpp4>7n_`Hyusyzg#rb6yS73s#|bI*U{1WGdVfQR3+k3xg_(& z^EoyamK|f@CpeMU45?JR@MMi$;+5^=PIYYXMc-YR7E-&b;&hJprB*Ei@!Mas;!1@l zqE3!78cqQ%K8n6zbmo+Mok@Yc>#kok!BmvOE7$Hx>+SOPHJ+@Z)O@qAdZ_%rG^(o> z!>XGE8>gWXILv870(7b@$7Fe=rh_(t8{=Vtub;@|eo1nr>iWuv;b@3b>)1}$e%^BT zR_nu1!pdW+zEV})CUTw^Bi~PTX5y48b%!J4DHj&>MC=$9pFY5G-3nZQ zm;K|a7$tTZWQD_qG%ZQ#`|1vg3eU*Mc$_Ev@GMEsS^DSydvLe{dx@lvkB_EDjx6el z4<3#!c}LZJ&cAo`$hy%4Ys88NB6x-T(oKCijxMK<xEH#_ z->{jJx+7nu{b)p{U)#2djWwHjAY*2a+gDNYWRs=p(=rM>HLJq@__WNh7@(0eIK3D%Li`l=g<~JxJIh;#`sW%^3s+|omtE1^*;b@tLL?m z0MmNV{6B}&kC*)Xx-(n{O-HSJ-Ak_ICfHYEX}l&KzoLvd&ZMHMAjjm1)Ccd96L7V2 zgYN5m9*DF$eyUjxeiU%djlR~@a6W(WDh`Q&j#1R-Y7*03yPsRl+6!Y7)Z=z))x zlWRt=|H>uDWzhEMS{s=doun%U_6(@&@yWb)l!zNHS0`B+_VKE1kUv}Ow*7uU5o68% z#R!LaXGj30Hc6l_7#~5FH%nVwK6^NFbK1RYozQ`cifOipXoL8suz^XDWSs8b&8k$z z`gHS;>%EzcMiw_Gf^S(&o=-wfQq?JcCP~r@N-~i&>Tj8f!oHPIG84XYlHX}@X?sPg z;4x%cQ=!f{FA&rQKX`D`zA=3naqdB-#yWF|V>DKrYZIo0?Ge*Qb2ob6o>N(gd(?78 zL56v7Ui`nIs+i}3|I#ScWP%CbcV=(Swyk)P(BaK%Gx z?u*mHF=u{bN*SO-4FyAr(vI86>D)NjzC_R)aIC+hzmy+lJX}r5p&l=tIqlHW-r$MI zA|&`HVsx0vGf&;0+SBb)Z*R2%blLe6g8R=P6j?5TwhE1c@Zp0tY)o&_gJcY8dUCt& zI=fxs)a7@ikM1{DNckbxN71S(zhp{?w6I3Wh}GtWTg>t&6G^W2Sm{P)5Y(gmY(@@nUL^^~T1(*EJ;Xjhh$!1|h{Jd$W2qF4+)--8Aly~Y z(9xZP3JuMSMKOyl3_cn}z!f~o*mI1opPnH!_3Fx>YL{*PVmMS?)iJ`5iAdVa0k7Y$ z*|*61ex_>;0Y~>$M;K=p+QiGnH0V?jlFZ17x{KCIKJrP_P9cfog1G(Y+2WI?M*n&K z$2P#0Mzy8YtRL5Qv9acx_r%SMM2(gHn9J{#9o~+!jw_t|7E7!`q2MN6fa}+)tDAES zccnR(t&~QAJ30QIFrX*vKgBwRRuwjLAN*J)sJ`l<76L#iA{LeU7b0i7x9_j#f8{`$ zcb3G-7~JpOr=|9bSIe(^qWlu&4EOn&`MZAw#s}(#^QeBk=j*FSm9SFN3yt|84OpY3T%t7Y&&CuJbhLeh8ZSyon9}fr&UX zHnejb1QO_CKvdit8eLeLD@T%|4g&pemVTV8k(Xw1{uvE->fMG4+-K<*9z5U03t1=c z=oe=p9mDG4zlRuKo5y4X3Ww=t*Id;H~X`0;s7PM5o+{9$>sx-P%Jo(DF< zUAOd6de)vu*rPIalC)wSMc1a3j!?G~^0 z^X^XkKk*J}w9MCt$pu~jCNl}k-MB2Pc%gPDWZX&Q1VU=vu^tUv5$9uOZWvHKA*{=s6qNDl z?Y#(=&#&IAr6Yz1=3YejtE3~@P+n6!RzG4JJl+Rbr&x`z*!DGVyiR4|DqfTMS-BL3 z#N^(|#N|&|+V`ZnyOl}6LTH{RjfTu6G_M+VuZJQ=6ImIKym*_c4nI)DAZXv}i2c~G zQEwr5RrWWKQl8@HJOL!xlfv-nR_6KLur;K;yTkYRarE@(jSHVhx#jel$>z3PB*h<; zW&aadNPEx`R@cA*om1sVeXy>13*K2`(n{uF)k#v+hTmSOAo>=DY+np3S){k7?OVMz zg5?bR-aSJy4ZEX7hpB}0!B*bzg4vxo@BGk$u1e_xXlA0-8L4bhilkpD0tMFb*_F(F z=7&Q^Wq!TIp9MyZ?mqta9w8NC=GiJ~>&>Ml_SXwDK{dyP`5tSdq=N{F{7O>+D0x{i zJG|QU7bU~jwO!#3rz>i#Yvog0_gFl@;atwEFjdqCH{{Rm zO4sK0?Z^JVE(3LMpM7mIywf(S@xC8g6bO3RpdEhJwn&q&qo_Unhz5;$Y2xwz_+Qpg!n|kE3d22b{z6bq*ne8=b#n4LC*+P%zug*p0zfL8U?I;qkv! z!^-uj|Kq3X>femmCeP{s=||lh4(lC*69L08@5%$a|Cafdv7z~=Ecij&O{d{&xa-~a z4~u-WL@H!kZVqtpP1x29<=yXB!c}3!q8@{kX^Wln9V*>2cUgvxivVjzz;u> z6~9xf?(>rXJQUQAqJB?iVL@$s`5Vxw2y43G4ao%%>Ldfgw*Js{FzP#)&T$k5Omua- zEG3&DztAF!JesvWCZmfO%?+Nro$B2FD6OcbnEvPR648g!Ns;{|{k%&;SezPpOnm-I zJ2v$L51e z&T4w232kzu=bDcR!XyG@)W$OPdD5oFTX1g2zJ=;<_73(|qiM`Cs5qZPSui^;Y9G^? ziUk$OwnVy#)r_9K$uw4H>N3r#(!cUWyuSR|Y`ml5J;0+M;KM?{?q1_9;CJW;zy2=S zh~q~=O$*IQz->CpKhcFik-e|)#eIt=ue7L4(24;O1jlB&I2JIx|KurB!ZZ+IWsLm) zW+~a9*-1G^&$egEC`;?t&>~6jQ(jJ0NV!2gm~cu&`mHnJvV;0}xGA?P z{s{fU=bz#=a(st7n1zk?d^ zB#0lfCFn#rCVn^-LCu~92j!)XY&mjHJ1)mkKfWDVAMuDDG1?k`rOddC-4gO}vmeBZ z<|6#(->Cjhd+y-Z9+_`9-&sw6jr*!@L=f%j$0WXYmIxQ z5o#R&i420id_nGdx_I@=EUzQh1k3aDcFvC>C4TfUl%*lFi)1?L^fiYub!k^}PTcMc zHwX5!^mCy_tbBFS7|S$f$Mpq#g z?|IYQ5nE3%$eJIe(E;23(qC(A2*sY3Gy3!hqN+L{6j zzBQ(vuEOoF+HK!s+K=j5Yn!Xn%#sGe7Q6vq3 zIWX{la08IRSSb2nP0(+3d36JWk`%Mw78HVueXz$N`uq>iS)LNDk#GuHDQoslfWxxf|-Cj9;U9qVFMDC^qBG8fvdW*n41PnxzYZ2PF~C!M?%4E4t!r;r9F!(anAjl z&ZeF0E=t?V>xxWyR2nd`5jeJf9GU*Sn4u_9=;?gib}=$=#QmwsQg^Px;^>1_!SK?u z`@4&e_D^QG+8F)nb=(Wp2YPp>+c00+XTm#^YG!~rZ5K_hB894m|0Jn zFd@qnd^8U&ZH)ExT^bxQRm=xk`Z`G8WoqQ?ssya=gd;e`3nd6Ef>eM=a9*+ zrD6c*EdEP};2pP6g0mp6I#m2^!i)@ox}nEDg4@>ISCTDt>Qqn6ZBIEhfh^TmIe$|9 z>-0H^Xy!2sm-eiwEdte5RX-J#HlhLiijc)h%ZQLhU)XjPEk{htCnlwJkcL4k_- zPCrY)iyhcVo4!kCfcMxNYH^VcEtJzQxpzHDDxWlOXrVgJ}HmMX~ynZ|T)l4y&6U7Hh?V zoTgqZkB$a^op6^Ql&iF19EE&;)NA4-?B<&tw{5YOQ9dD`dM-aCzGsp+PBc!N_?@QHu@5wEq(ePef(>cYFIM-9PoW);hcf>MCS(kfNhHDDkMU^qT<0c63{}B9IKNxu zisVZ?wV>JR%2flb#}=7=powfuRMnwh|7pvkM6M$E<4@tLK|%2JHNyvcJ4xLpln9N4 z;PDa`Q_#ijv=_QNn&Asj^s4NnOx@k1dr&+0sZ*S$JE2nyHx#MorNYZrn^;dP`)pUZ zb{WrFMuc6NzqrWn!-J1xGKMouXUbeR)86xpo^X|~O6J)Y(zeX^OOx@Td7A@OK2v$Y z957i+zR~)dF-lDHL!Bh*$0KE%K@&$igxk_=iN8+G3URIVzakqQGi}fX+TtsfqDy#^ zs!hBq!r$heo~92xmIYh6%~^{S>{)A;X)^7ZK(WCPKb6bo7zp}JS40{p4?=Nh9DzAs ziVFe4<8}IKb0j0;{M;3I4`Dgae;eJ3Tn(`i1x~v09C^rKoKzUm==l4+X7b#e4vZWu zrJx{TZOwSte5Sz3#U);y^}iZ5qXXz)BWDb}F<{SreUHW9ro%>bkk8r!L-HgU`ZW|a z&AcuTc@v@W97<03&b;=GV71=~*5of7CblL8nd@C-I!4Z7b@(3wFS&w^1Ya;(>P|9q zR=-JQ7@~prv-06q$~A_Ef20c^Y$-LdM#JFpDDT1`VSUbEY=ngHyv;;aY9c zm;4p;qB!&FiHdd=)iox=;0I`{rIVK(>Uy5Vfw>-)Tk$U>(e0*t>~(dxRyWtu;lE3Z zjx3%?1(IyFYg!Qm_A+yGHKs-%deqe3D-xIfEL8Tz8gpijM1r+B_V$U|24O%s+-VV^ zcidZLIl2}n%Mu7~WFQ3#2g;`A>$Ql=Vm?^Ryn*k9dNa7K|2BJZ;Ns%GaoLpP$!HaK zA7rjG8qE~cYI0|WrP10h)Z+l&hhq2b{}ila+A!k<3MQEd(9Z*(sj{waL{Jbs8IL0b ze7nQlL$_zvAuLbqj3IBw;F&}kq^@L(Vx0IutWX_p4&t6OzI2fCHC!v?N`gmc9@o~x zBxpBUOUrryd0I-Wc@aAu^UWsqVtSBh^=Gq$cCxK+`mf%ckwMANN)~CXDE{$|q{S+V zjn>Gk>3K4j`pkGmpQ$>BTIp-PFR{yED_3JKe?jPlFYZmxu32S;OtL|DtU{*+-*(z15(k!N~T17EgbYUzghF7RR{k& zQW$&{vh-~C#Pk1HLcpl&_cOHv7&K!5ZPj?T(tNyT-`4OKnkY7m!?{w?N72PKqleH= z`j-=6pI|0XrwRGD#z#vnz&+ayBAkDE;*_;qlE6*{;rmsr?d3NA?pxXaTjP!q!>pa7 zLU*>B9yAt4Se&UWpBa-tYHmt`&n* zKV(#k%Mi+sQXXwV)+hd|H*vTVVe8)vd{2Ajj+PMvzPxq#rIJ}`ZDd1qy^%!i=Xjoo zU+{z0YmOr#ud~-ihUxL6u)}3DPT#_7hNuh-xhUBrsv8BH2I4=bt?@_fxumh!eW6V~ zT|#K!3Fm(^Xb2n5R@c<5YPQ|tJG;140G|a+mKSS{OzC@$L#vn>NorpYM@&o%fI&gf z&G%kjyo^jtY<6>;J32BlXulLP!n3ofAxk28K;Kzulm~Kr5k}9z&Fj*A`@b09F>RlV zDa~Yl4;GfzYm;<=o#CLXtF|X{;FWVDyehU?;ncg(as|}02WKdELO`>QRZq(}pVW2( zc4k%zqU6_tZSnZFZ8}7p2|B$<3Z$Nw-4+JHk`Bd8 zG`P!V5BszLAMvS{eJ0iG=JXK1CZ!uEOsW)2zy> zBPY}CXl;l^&ludxHZ|kJdcM2m@gqj4Z~P6nnXw&rrkd=3MNy#f2TT_=J{q$<3I57*F~t`_OG% zJ1J=fUC5VrT5p1;7e!dt09S)D>iZNH4*DqR$C+Rx-f=y(s_PHtChMMv4k_RXe=2FY zmXU4R;m&We;H%C3SXm+Poow<=nw*x_*H2!ek>BV^%%4N?MyUjsf_8tcEaFn8vVksi zlx3%?r(2pJjhQd72}$%T13eGx+|?qFM8%q}U^S z+YtlINp7^^;Udw0=+J8P`1KX+=h9|=>s91^)Hz#q{f1{Bvr>1YGfZ3EfY6r=rmUL= z#dV6|dIHU?yZr1Sw`L}Cfm4Owa8%H9*OZ3htfxI=PB~gV7Y2M+%ocggoj|#Sk|Zgz z{EDd%zPo?oBXgZ3gzxBW)c4R(_`wZlDj?c(Xg)#qyPIE@$d-{8puhs}L1@ZvMF5`5 z&CT^(k9z9}#P*UUi@@k^I+iW&H#1YLokMab8&hL5BT=aP#nV_Ok9)?>>!b5b%J|+G zDHb_2qs0K#^iO>^EhkHcq^zuM&#c#Gisf-Hsl!U`ynPq2I{(}Qd;MpbUYo>S7f}7i z7qUq#J+U;B5D3hFg{LSG2y%?!An6KpFw}gpRt0=XNeN6a1RD>uQDU0HX=8g}5WcIa z`pO#0uc`@ok182Xo>Pfz47wq>yPp1H;$$K|5*cm~b}{poOv1Vu=}Ip%Dq&vnCf8}^ z{f9uVSAuX6WrICAl!+vzG-{EJtP~|Dr5w}nHYaYT$GeT63gLc!TWg-i2YsJ_lN)B{ zEl;!U=YIF9f7Hk#o4e=t7pBJpTc>{A+H&j-sq$pq*c_m9cCTB>D-W$p{hGCRSJ5W^ zI{DGg0bkaiU*BHuWKBYiI~nphuUW-qaSe`$IAe!5#naUtllJ-HC$REU>jU$jR2ENx zE%H3jJg>!KdE`Vt+b`Qt;dZ#;zCR3UIPDTf0jsR<5;SZ9iR?YGCVibjWOBm_N&1#0 zrq%G^yfJ6>q4M6M&44;(bD@JtG@-KSpIX<7RL|!MF*9mLVJ;K)Yy~g zKfK15!}eg7Rd%|MU(brQRaH+fUiKhK5^AFW`&~1aOm(Fz`Dz*Mb4b~{v8f;CCyeE4 z2FT?0@#NjQ@>a^kF~$$L6;-fR(!vJSmPTp6A|j{_DU`2UjVdN3BqY#b$m%jC+U6=gwE2ALg@p6 z{2my9hX7hdKeVl|un-3KE0A-mxhMQ}dFc-78ktchuk$g<6EM4!$s#2of#FL)F^SOM z-~Z+I(76GIAC=1zA}5gD;w{}0y3x+7nF67#@R^zW9qYPY)gP&e{!zb+7vildYWnlq zb?PJ4`46Wsc`H3W$}wDijlXUF!Ypm~&TV@P3=H{2MI3sg?STj<3ofI^-Jv+xh;TqC zz*5?`FKn$(tvFLUUV8qnd+_4=}Ajpm|LP-ymcSI|_ z80>O+RMwLHZVrP@0+AqY%q;g_ro0A?#$*&e{&}u~eX*gHXa~>d2Uc1rMB6vEETw$C zP9)d=yzTfxII}PL%v9fk!^z4Gz1~NRkDH=6aB-;P!yDby(6N_?q?qXv#vg+B1H7m5 zpWj=ZzI>51lifHLra432y*jbfrT<1o5=U_FN649^iD%m@FuVr}n7)=LXe{Oo*h3xr ze?vAt)J;&QQh)vX&Nr36vaJNYhiRd}AK|K>n`=46xQTI)^OJ4j$mVacHPTTH{(L zt9Kf}R-4XxZ|6cfj%)W@rdHNI1Vf==4OAo*8=-G$erDRgFDRd2Vp>}FYUu2yL3OmD z$1b*@up_yWu%KP*p^WOAD)YsN2%8xm($qduONiQjmrtOj->_Vfm2emDe9sZLPqZP` z`8jXWU#Y0r!vrjj!LUtP#iYXRaW7Ng-l0$WL#rH7e9#(=n~HGtrE}VBo#LZoCqz%M zR(Lv5eeJ*@T53kV`Dht_?4v?KJIN#+CYFLQCDy$+-8pzPATX9I(BsO4?g6RBU++SL ztJz+cRb4Ml&g;$Xr>1*>d#`m5KlADrL-wCK4w`~O8?XWOfe?mO%=A8NkWw!gc%7sd z1VXU~OUXg44Ui&mD;V3E2?@b&d(+ZrMPP1kyVOh!xVs3De;XS=N=q?ekc^+w-yje$ z9S!MQ@0cu5RiCe!wJn@|!Av0gCnQ)Y^I3?7$3BC(NvsAI;kU}&gOITi1J=)MR(d9Q zBuOJQ)Bn=JHvn*X))!H(5hppFg-T&Ug z9eJjBDumZ@yxm974pstlRkCuX>btR&iqABSUr3C0)Ab+8RWiDPW-Y|Q%Ni(VF9zB4Vxi`@ zkF!N4{B^4|*kqqws+g8K?hz%YV z4+E?pV{QKadfo>$kY)m1fZ?tObWqSsI<#*%8+QaD)$jaDqeu83)MPOltaeFZcKjv3 zJ3B|R5WvFyk)Mx>C3udV30yf}cU_wnJwd?C*up|&bF+Z$d@Tk`l58Tqe683}8f!#zC{M=$|Gg9T^SU0l$yH;&K!OGP#jR1!ngPAx>U^-%JvS>kPq`rZ z$8}rZ&^&#VsSN6nZNW7f4cp#xGc_+} z@dKO{Te~i>BUWEL&X%U(utb8hva$KJY6TL_eAEjG^;if!@$@2B zMkwx>jm~~Ql{|;@YPn3PPEWdeqiKSju=Y2#RM;~}S%R#0Q)Aq~km%WlEiLAjPKz(+ z8JW(z^4}b1hJ9piXVo05a5~-`MPd#6H za{lW{+|#P_Ge?SfQB+*g(qftgO7u?wmzV8N8dg0lrcR9ll?_|Ad)IFZ7ioIdcA?Pp zkN)~3XQNYWtl2n691DD18b-e0$`SFo(t~ttHm5Z)h(QEBK~AaC6<0XiSajr-6Ok& zMeSz-rEQNNVHh!-J-Yw%lZaWu&{pm1Co6?TrSD{A(P8KDUt4ZiE=c`eX;V<44PceQ zD9aN&FfRa%+6$18fV_;LQG^fc4Nq;e$+)PAB_~l$p!I^5yrIfgSd@GLQ(Kod0#r|Y zKDD*TAlj&RbzPwQ^CG{yElP9|Iiz`1BcmX80NF%Ux?r;Gw#t%<;wC0O$@Ie7zvzdZ zrOy!#ssZ-OVSd@|Hr3)*YPy}#6vl>R^jgHUGsL2P@j&JI$Sz|R8RYx07bYZR!jcr? zXk}LzGUkDmaNvz8Wmjx?#jCZbx2XN?oI*Yd18{uYl-MV7TxVGRGWjGDDdd%vjLwt> z2BRos91rB#F8irvuD1_#PVL4IG|kN^>Cz=N{4P`!>N%{6-EnzCuRkfI{lGv%;&YVW zxB4EXd~T=h7h=rO&E_v!5UWFyz#QP5k#M*a{F$-LHiq+dIp&p3>s(}N%g038*4i0A z{Ya~*_wV%u^$r5)vnDJ@0vv=8YA((eR}p{`RPAU=O>?ctK@sjv&hTuIMu%pevI3c4 z&{R=d*9ggzSDnk2f|kO;@kP_p+h3M8BZ!fsx_WlDEZ`0-Ey6G?mi&f}-S=-l#k%~? zF`c;3ZDwXlW+R&7q*eDrNi$^#7KMoXH_c!C9*6IIHWaFB2e!OT-y^{M>yB?k|HKwl z)!<8*jf}LkxGg<$)}?ct+rFA@@Fku6r=hD^HkTA0F7uL?uR^^mii+e?fz6~FRZUH8 zC4#jT0$Bh}izgTX$m1ORnVY-XaI)COgOR=&megG zpEMpDP2W>f$+fM6);><| z-*DHRYNts}8At4|bi#NZN{UO) z8|}#F_)HL9zkY3Uxi9NjT#FRp;m6GM)^CAlD0Ah)XV#?zxb5;oxr1+C0v~V#3cvZ8_eGC%oK$TctLOTE_Y27prj@6F z?9YCg{P*gZOi91sfTg(iH%=Fu_nf2FmB#u30>9Z6tpZWZtf_Cs&t={UV#%~-jjt(S z?j-1)ZNJD6GO|J$f?%2SqHiMxrLBWF?``yAYw;J2EJ#6p6EIk|H-!s~ifx{S6yah7}V-@c+-*-sgfM?7nhW$7Gm(Y-IF zdqoR3{OCg0Vu&0tkl(F=@%D?=Uo@zw@!a)JURHL)tY^H>|L8*0oI1L?C;z@FnjFm4 z#Pv+o%os$#DzOmZdn!3vJPOa1!0)@&IwdeL5yS{EoBx6ki^uCe;Wco2i|Oi;?(XiI zX=nlbNvgDC!0%oht{^Q|-MV2D?uEqJ?kSon)hktLbg9|0)=P}M7Nc(#OaP&s%alQCQ>c+i-!r3|OCeTmm%rd6N)z5dy&kEY|W z?Qz&*`Rti{(W;R1u|+zbY5ht1%!GoC*UxURtxsS}@H#e?A86cAa=TI`m5wyir=atc zS_|+m9hbZ{s-8(-t}yqm6)!c|vE3CR#CyluX0e~aU5(31Y?D?xLMm1E$Lq^oM(nGC zGB9a-DEd!YJ-E)&{|#6s9Ly{=n5#FZ_1MNO1+OeEzAuy z`y9GOYFjts7dWv@x@D6Zo1{OHAXe*B^|U}qo)kiK4Z9C~6VRCdyS#j`eTi11E5jE| z^6=AB=LN?u4A?0PBg(;WgkoTB>i4i`7&7&xZ(Y>Jh6&)25F>hmU`@i+<M2{Kz|6ZxLHWA%xM{dPiMP%*~uK2QklWr2Wtrb1V4BI+B9*Q-t zE6F>@e*ZIcebd?der*S=0C^So?@ZF>fvN@QVxo6_+iEcq&?xF8=Re3WpqFs{aGxr~ zZO-&HIB2CXO$nF`e39?cYeuYL0Jn7IW7T^DHyF&0y!7%g9Qv8W(y}OJCf=#34?(j} zk3EeiS$+-;TH+@ox}Yvr1_p1T(5X0l`nxJ1c;R>{K&lxN#bmk0qdhG`IuUJac(7fj z;$yOg)Sg$bY(e#+>4nwk+cSZEIO>L&-%{}{rrsfgrL*1Zx6%l1Sr~~TIoVU12hh(I zMHA2N49TL`?@jc?**Eb;&)vTWore8zmds4U+sK3s@+*1)V>PDj;lSa#1IsS}WOhW7 z^Aj8#9QB$mzNh?QXsa{FTb~bA_Q5cCGhZqBXG&78PTr|w=G*`!@lXJ(sMKv0PRQUMF03S z-BM7`Oq3{)z?Av#*eqMGsdGd!;9zl6h@S>D@H5&YQC%H`wzdn>zs zLkfe1cu6rXY2R`9-ghJa`C=o-H@kf6KXsMLj6ze}YMRoN493a6`0g4&#J|k{=cw**gav?rq!-B7v^4az;V&o@o-hAV;uRGY zInCSE{m9OS2jeLses`$Q-986w+y#NX{bl!ao#q%w#q`ysZn_ zcQDz3t3jh$Oa|}Ip(o2{*3ZpU@g^p{5g9mRN_&FG8>y)}fy~r_C?aHO83{rZPY?rU zT=(wg1+GuEb#?6>WI?kPI8RV$Nqc9^Kx505az z!gW*=#Z&Vg^?w7p_x0 z+5S(Dlf{{N`#6i0N%E{yZh^&_g+aIEN-Q`wl=%5kpuwz8h$pzLz)(& zU&|(b2N5BlnS_y#-PR4=UbCYY1FK@q;`F3Z0zOSu9H<(Qf^!r6LeeMXY{{qD<-GEl zz#RvS8h&ksb?87(ul}3-Ya|%vBnVoXE{H{fd@p8n==81J>bv~v_DV^Oz>80qxyUOu z)~P^J!Zm#AQSiSBAh;mEi`C====$Y9=uZLj2g++Y9LrUp;3fxaIj2wX3_|F#Ou*BX z$9eRY*Ed9&c_Sh8S|K}a?B9cDdpN^CeQZE%ivEgOEYRG2kFc>J13?Z5`X` z1V3QD?Qz|&k9&L0JKEFmgHx*t+Ww^&M?T(aDh6R{)BNTkPEMtj5{wNGzLuj#Za3C0 zk{EcStId9`EgGXyiV;=JEc)osmez=qZ@W5re^3*G&p5srt?}~c+fUskTqrcxK7L(x z%UtKYqRbo2;XC~J4>&}))=^$MXnhp1Y4%>8FC|8??G|LrgUd*m-~RRMt!CUB!fFxr$Qy<|_X` zvfcu!>TY|(-E@h7bc&)#OGuYA5=wVT2vQQ#ASK=1ASDf(?oR3MM!G?|?%JQobfxd4JCNL29eam%0bnY5#Y z;iRm_D?a=egu>*UJTJ+9OR*Ltw8NY+aNlCi%6gvwFUsXD_aff9E%=>Pl#$^ZSam`5FtaQ&Yj?Hs?U28XqU}`FnV9i%C(G!X zTF7ySivEKr=bO~E7Z;+&^;&SP6koOB=7YSRMb~ilI`z;A0#lOj26I7+sRKscsjibO z+4ITBpC7zpYM&+}(-WaV?;Zi^ohPZ(l z?>t582Q-?DyW;eH!SuF!HSB>NY3e~^&$Fw=eCX^dw@KG)Tx*v8@)v?+NVfXRy)u7 zidgjpn3#Z-WjHX=dqVcvzF=u+LTSrr;GH2}=o&noE5ERntvcgm4C`ebs~OdD3c^Ug z4vEYOTYWv9shu$;mh$n5qO=Y2-kJNUU!y&&Nt zXei4^`lDF<6JsHC^~?Ippdoj)Re~3mAS$mXSK^ zsK2Kli>Bb{f|r&H@XU_(Q;0>IEWYDUuFMEzyS&es--Ba>R&0ihu%P3E$2t2`fv^xx zj~%VjeCjd-R8&nJu>hjjTe`rA_)@d9(N;UXMSoH_w^&)D*Dfi6(|jQ}cr$kXqvr&8 zB1ZXSrI}+Lm}bo=N8>M#%4q_RlB@cPxCr@#FImg3)b)<##G8V`p!kIZrL2ot|NH;< zE-#A9m$xX?nO~;&2y@xLr30rfk6w>pytIrUw{KGRi3g`-5MYwXB$QqfEx1PDxdiB| zNV7y00%358$ZOULsgL9XwQ!Buk)nloa1Uu1M@XXQ;cKyX21u=g|3Hz5i2@i0Yz4%E zN8#zc#8pq6`B6=j+cG$?W*ngLw`*t6+<}jAbGTOb<&rE=trdDG7a}2^E&&2PA};96 zf7W2u7~n(x6QJ7I{RD)J+0+HF#0cA{jqB4~L&BqC$VTsR(K0>+gv^a(v6sO&zN1*ORQY zi=Wy+8}u>_eYBw>O%<^h|Pj8J$ZK@9wAO2q!y zTv2YU89Pqs2QrW44QSsQ%bU>Nb2T%fq<+@k7HR(>JDRNE_r{v>Li0D&YV7M4?8m;V zrrKO@2427O$!amRm{M*tU0_ML3_nkklh@eao*;Q2M7>DZaku)>tv&bMQlxZ6qKylp z$jx_(d=_YQ06W7^=o9)p5~f%fKVT3 zk>RKZ>UOD{p;c)Zk%HsI#O7KNHSCYUubaV37cnhk?wo9KjvR4rqNevNM*UtYg+GVn zxhZ>V?+9q#{qDYJ?U5>#W(`N0+vJw5EgkaTuR!uwuDUU7wEVFFx`P{TU*b31CbL=O z$f^qQc<&v@9Jkq$e4sx|l~p(*txMGSynf`7DQXmeuw3q-h&|tRho*8jJY>V&J${GG z@^E--D`YJ=S>`AIgWl|(5HC@jcu>OBUI__EDbFzS?P!d9*Tkh3`n9NW&@DuYU9^Gr z_T7d``55WA8?c(zOh;@bijOA8_c7*K6nIq z?9@JLJ>s;jBQ|7wV|4iP01jk9*u-y!mZbf1){4?(TGw9}cK_npzgu~$9JRqe0>68- z{b~MogL>Q9wfl@-{Jb51^P)YfzxkPlm6k-yWvE^0sVKjFYB)VqRJsMuZB@=W9}W^e zCrAuF_=b)Y4)VeM`Io*9p^59)y!;e??>VXXTfLI}xJsA1`aV`89VSx9{-5Q*P-xy8 z8j78^_NFi##1WXkI0fjAzgn+t29ao|KIz+Ujh|xh%)e6>nFvv*wi|9hOTH40?kXx4 z92b7Ce?MtpE0Op$;Uv__DNLfp*d;$YO#BUetU{iW`eDcIMU}z!d;si})_hW?W*j)J z4KBuAuh}mt412N(X43`Lh3P=xHvchukgts&&o=2PE%7I+*iA>pC(^(!-|p_b*%PZN z{b;<~h$uYYaz&s0lqfag1;`41I=hIiEw#U;4ej*I7k}rOovmhi(X;S!qAP-YbItf} zOmgzgRbir+^|Rjz_g$I;b?AlQn>kwkb82+=2(h369v)@wi|LsWLPdgXJXcoOcx=4Z zk(vcY)3iH}-kj7=dz!BkzCy%;R$6}auR+c~0*k14&pTjK4rqE1zFw`?0lN6OcN3-b z>p{n3qzs4V8beWCEmq+Jg4|?-LZsMks@yKlwB{!?1tX4#7Ta(OI5%i z*QI}g(Ob?bLI6qy#hE4Eo_62U+V2o;A z?fj?;`azL#lR3*pvra$fo`HW9D)c3#Y?lSwG?3-TGPIV*R7vpU6DzPwu|IACQtW=XE=hnbZI`-Q3noF4cY%5Y%Li$=m-U4-PkM|9JY)iL#F){yy(eai zb)=?i@gyUtTMDA1uknl;2M5>eA{DY1_9K3GXnaQU&fSw6tEcUbU2xC%7?GJQGOW%zX9oiKb)N3=HH*>P;BV|kMef0Jy#Y`>3yTfil!QTcuL6@RpKi9S-L zgK~K^#>SPNT=_Hb-&<)Tlq>?4)iyrbG}V6xP`m-g;=b6lJ#DO#cz= zP53y&h#?7o%yI>xjw1gfOOP$Y5zijo|5-++ZB>~4m>MY$h~IUw>d}5oQw+lSZ6R`V zCE5kwme-R^Xqxs%?}kX|PG&l{u^_fSb7a$7Xdn9YU0nVf?*yuPc($Qut^P;^H`QrK zDteu{IDKJy(fPluJ=uEmCg_n@IixD4-l>#n+o)PxpqjA#*cxlkX*p@m!TX{QhG#_+ zY3F!GclSEA*@|nSHeO`jrEcSB?dFl&&YQ;8WBZnI2G}zAo~i!t3RBo%6w2YL-IvAy z^CqzSa*`bfAS_EBe|oRjJVaMsVOGh~>J)=ssCSbkkrw*rSVKit8-GakL#T~|#GSKn zOw4psB7Ob{k(xfg2A9Gf(GMW&uR|!kUbV`(-qV{FLq3RXT6yGi;un%7|^o;P$m$~uDP5f};GAwyoU=iW= z_~!@D%aPwg5IhxGnI*-wibCY)4%6~Y-l=2@6mSzlH48q^>8spgLBP$*1+ks!JFWF6 zRG$6!z)i);L3UpC3yxEpYg!MBN;NT&)Bw1)7j{d;>JRpkfG366wXNGH#CCmRoo4eSzu|2;Zn0@#MGGmE^ zj(6m|XiuaVK0RgN(L#VE?nY~e?eWPavE8#kDZzneuBziHzL&fVJ@JB|`o*_z zma!{t27_u6Ev)#UgzOU022YPysPKs4zgI~#2bObsaLJUszAayWS@Y-WjE12oJf;@> z;@c1f&pzgLq0zfYfW8>5#f`{@hRaj*fWkB&t2{rkt;C{ySajC9zPU&vKibXI5Nzhx zT2p;r@FDM*0F*&((@6mM<=9(+cTr5+Gsc8-ty>ZKil6isg3k$g#c!HkqlHD&?b!$W zl$q+KLlpD`?QYS zGqrXQ1+HT0oq|T(G1;qfeZ>&ZiDOAF0y~k>iK2T^vE_KrJm09`VB+w=Q#M??IhUIx zs()^Q;2488z?aZOg*{;utMmydCn!MtqAHFpD#Q9G;sbmv_sM+n`zmi|hfwx8G5 zNN<0ASEB=j2dKu4t{4N`pK^Wr!#7U4|tujgzRf6X* zG)%LDT(7(|6QhNtU~TTR-kpJxrgq!3gWa0gfFQrKPTYq%1W3<8l83Q77qVj67__QT z!Iq5T4mv*U65zktRv>=XUgy>ott*wNaaLaPnT3uG=O(|R`~=Nwc{78qzT~oy1ItKg z9)C=i;$h&Xnk!ane21W~xmnhoiFRnw)DB5Q6I5BV%y3b1R)KVvQ&?Cozh|>q=FGsY zS&K|35~RT=erNAmmGcBtE=B9AEx*L%8Z1D~KDl5W#AJjd*SK$%+at%3Whfq(>1%;qmVmLa;Ux7(u9|UVRzp-;M z!j*S(#Sb0#kj64i=pGy=?~1?NUL#V}{`!peE4yC>PTL!b`jXkXdfCiKqP3+d_MWOb;iO%=*K z!rA$|qPtf_!QfR3mc)@`p8V*@A9$y5AYDdzK*9ojflMg|f|`LR0R{%oaGc()F63UW58SiPZjRp4c5?kncYUht5twU>&stbq&}K!)Mw%*p?$9q!@>bL7Gj5+Tyyc; z8$;+#*pp0yX61A!+NZ(XT4))VQ4xxyqK#@MlvVX>iL4UD%|db#HVt=0hmfKXUX^d< zf1YHqV+VFAMY|nV!x*E|{PySnd!S5E@A_9HGRKSqp8P^Iml-9>LgEZR632sgUwA8c2tn5yf< zQgGDPb0m}I7$-h+4G2~LNd5dFxfzW_XfOo3WR+uf_8?;ZM6FMi(gTU0d%JGkS4zXn zSzJ9RfdTrrfQp)-NEFKePR>8`EyYhd>1~MY90C6XEzvGdPxxqgSncvTEhmku~};`-8S!OG{UJrA99uCLw2+ho6RK zmkM{Epaci7B)q%AJ%vd8oQlP3>UjshkMN)wu1q~rDvd*Q`XbdrK}`SCo``%Xd>k%# zkcalV%d1~cgS(;xd*m6Z%0RSzG?iE$(10wHvI$sU}g7o~*JcSVZSSro8 z0$Q#kY5^e@=Iz(Fxo< zxG=)U4L%=zCsVfS(2!kjESv{ms%^!Q2qXt9In!X_m_LOxIagF4L^YjhW8ixwc3y1C zDc0%Ak_5tY0%HNhABl zdF|*r>{agMzGNxYhfW?bvU&;Q&E<@}uQ9LOOtz6%;d}Un)~)Kk9*EvrwY{AgDK_^}uT;R; z0zz87W$=LjaqoSmciq~Q^c(PwT`k>GCoK}ozceubHLr0xMbR469Z|&ui2B4zyhOfWTAOls^gU7T zj6~+)6Bx^o_9cJcuR7byE0>oLkHk-eO?+0!5a^~7g5@_`To{E>FZmGr^D5U&YoDYq zyMPpn7WiI|96h@4RRd>3`?cQ3p}-pSd_zclTJ%O`+w~g3&bNx&r_EJl-Cdv{3EVzB z{q)@{=C-7%_o7Tw<6IaAHHI_VW3(J4F%;_!;=Z?Oi zIbP4Q{44B&darFSH-?E_Ywlj~!CMVxAI{sFEn>SK-adj=*b*89W|W_~QA9*|AgPAF z6^|sx5TpYIC2Cl+RaYCMN$?TG5AeEbtV~FNOf2BVIurOcFQ1^<+J6i#K;gW#lszM3 zt5^4?7G+57NZp^=yX#?M_2yGs@)~_np8G!~!pWS@e4%L;oq|DO?~Lrz%#RA5LYlbu z`bJgf=6x#=F+fmprEzsFf4#HuCursSxX@+qt~x7q*aDMBuO!lPMGDaPyf zyise#xOO!98^Z%%EQQ4*wIZ(fDr*5GYxVdcMrvyDHlGZzX!)2e5Pi>OkD|h2;rnFJ z8UEVZytZ6r8ZL${vVyy*B+(ggID`WOB_u_cv1`ISN*zWrz&8m(LAhNnBhnJD7avZ= z(|moVdd72deyrB^)L{pLKE2+(%l)D9UmagZK&HVePca>BSGx9N;@cfJA;8*Fihp|f z%P_`4r*4VJ^p}yGMuQRu2#tdB<&n^@cM~j1?fR?An;0(C9|Fo(6OR#K=R4q!NVHpj zEE(~OWtnfh6fmaoUE}sCPRzO+lu^t2e z34(98$jp?xDR3K<1XnDUmo3uP#~N}{eNoeOt((hX#=*yxGOOb%P*-@bHV~|7)qUfx zq4A6s8hy%|eAkVdK3Q_11I>jQmT!Wr_1+m`9C;I5hDG=51zE2~MS( zT4Z-czJ4sN0+_jc$gvue!V%TY+^Y_<2??dO10hTIQ|?Vl>=mmqLsqvf|$qmChx?)|88DjNy?~(g5iVqr-^yV(E-OrQ4~BImReGoZd3YBoGp>cphw*@jS*vXI)-I4K@GYny3Ao9Ly zBL?4+cAlEisL=K)1P%guCn}^gxq|#S26N}QI5?wvubFqu-0>T=J&oAReL!y>mk(0x zlyg~TaNvpX&-p#{B1J?rOy9vZ}={AApwANl<2SLnQVM6xy-`r(6c zEWPQUPneBvy;*#lQH&I;;JF^v9D5@CB9duLI~^Uv__37`pL@k*{LPOiK>^(flz6%k zZ?E11%t6DKuvbVbc>g$&Z#M-EK$fFy7ZyrVDbnx(*`ueV9Of-~iaAybc2n;z7A!e8 z`V+jXsyJMM7vB-YQ;tCeim>-)1ePKB|0P$2W(tSRvsGZB(|%Tee^yZ%`xj zD70H;i%@}(xV^5lN$>scHfTalYo9g|lWVRw5{a>UZ&bm^;S&E7iNN+`jhl&q+w@tO zZMKQ-Cpd!nWPfqpGd*o1bt9Fs=4aZX?*cHA^WH zn%+uZrzVwcOF+=V-qi=XdRdq*UN%|Rx5XsW^;ObOq}UJ7q|ggd$HvFM!&vWMny#q9 zYqOgdXg{t@E@lgX1V_J*G_R<3BfTJ$eojnqjIpZd$T{MZrhsUUh6 zw_OZvK{sB)of0eSb&lx;I5Obg3oJBD`ovwi2|1ikOeC-UaY_7c_Eg?X8{inE2-I+P zKN@aVsiSTVrG;_ZZs>tg#*QFKp0x`yjotv<3Q#dwW?*_=+j6V7JfJBBG1Z}piHQ-h zeR{;o#+J>>W<1!@;B*Q#9-;u$(AJX1$w`%ps%x1$5|V~I1#Kpf%QERQ=`-~UhUs=45N4ie*L^daZ)w%GkMle> zQYRo_6AHvP*q1!KJt3oTa=oAzN5#}5Gh8$UJSH<2V=k{tvq9Z7-v(2hTEmXm;=w%V z(C@fR5pyfaBx)j)eNW0LdODUurOQ-$zcJ|X)LXrc)ZAehY#?oW+zn9UzRoE>Cp868 zcFIjxE&~d54Hl^5V@LCIn)!NtV@WeQxx;?y#iLtuQ@gAErx|APeT=GtR@lSiE2(M= zTg``}qwqlsYlx`w3v1)db)Uwu5f4w1)~?r{CWT!s7;h#{^sfaJNUUuh5}S2**qU6R zf&;%Ae2q2ToYJ7f`Kbt-I7p-0BULh0ba`*q#80=RHTg50M1^wA*XA#GpN*LWY7RypgBFo5wM7JPne@0|$~d3U|!NVneR)6ftOa>LnW&}krg`t9-=m}u@-Q^Td@ zdfe%Ff3?YC^II~nA753=6O)vqC-uht;qYN4gmZCg??C)JP+00+`2f=v2uzb7RV-t_ zGAdjX8fh+(6}M&&mB6C&p#S}R%-;(*3t|UT{6Pf&7M^tT{6kkjoo%j}ylM}R!d{Kh zj^1rL)!1YL^{b70yYjCOQ&0E0RwrEK-QU-{rLJYHdgYzzr~~iI$+&au=5Ifa#ya>) zEJ%>*VN~(b@gM;g-q~kb>uBQN9aRT+oAx#HJ2_H8!Yc}D8qez8f#)`y;L!F1Zqgvk z4jL{n?X1L~`=>AMX$QasV-Csli%D{^Ks%azc{W-zj6hPHO~Tl;IPa}t_Vn>(GMQ{P z$`Ha8_s(ISlAJl06>?OndQd&nKy0!403S@wOti90Q4OyeM$=lUR zdie+Ug~l(q*ny_LT$5cp1{89`sTeb|qhijSK9|RMF<;h@v-80`O0DmfGr-?Mu;5|zwY3O!!sT*calUQbSGal_yc?F3 z^Qa5BboaP)P+AIFX000*OAhL6uiu4dMEJ;kcPsg)X53KBDqhGxo|^KvbZl0`RCGQS zt4u;-##ox$Nzez*h7C<9(B}Mi>u64L8;$swj;rq7cfI4R1RwWYF!ykC@>&#jt0`;< zg}Hl)w9>H$<53U_TJ#q_on2dl$LZ^?tKKXsLygV%;*;T>H_JsOy$Bk<+XJ0)+CS@U!W0d|5oPCE1JA7AcD58HKCy6w2RVo ze-=~b#9^<8F8=yY${~ysS_k?f!<98!=L0zJMvBtu4{hpF;LX4~o?Bep1vs?XW|q~Y zU{Z5O+WntbuIDqxAU`Xjt)0@3UXY)UuCBiL4wgX&k!1Bo{aE4B;3r7~$VmfB-4pty zh;C}A>j_pSb{FQ^GFc{PR{T0D3&(nMGrK;_$RX0^!fT^Wf0Vch2?%-xnokFLdwP0W zz!*gsT2gvyZEcOcnaz$61jIo6}D zfWOP?s^^jV3`Y4_IA=d;W~Z9NA9OVN5O1m`)vQ#^DkdXxp^!?DB`SBex+RFyEPq;v zH2JEY-aE0~bNvmN#+MDqM%zp%(|3)-zH^an`@-)CQ2jn@*v;c)BFnK{ zX`?#_!jE?5v*WVv+#QDLQEL^hZIu#F?!z1W8|(; zoW`7w=0i7EnN(l${jZuG_}YtDk^l}i0Y>GE4Slo?lnDIJ?&IO$h_b82Nu~>uCox5y zlRk4)uyG2A=H>UvstJUd*98YTEp;H53w5cU|Gf_b2ItCW9_{Krkbrm93t+_R>~^j0 z&ZZC`|BDh~LBiwW{Fd$x9Ka0~7x%q*x(8n5=iJ=H+}zwLH^P4v35%3la&7Br0_z(B(v$aY)IhR}-AH~v5Rdu~r6;H?{1>yVP51hCt42$|+ zee3X3r5lKFTvIzmQOdcM_56!f@s+fW^S-lRY^q4FIgK>0h_zVC($XDrEk2({C1~O- z_469Tmwe2$eOJ+7gE2A_)?QRTM+=RNj0C9<`uf=La1TJs+rCb5SPTGY6ztERKLa3M z7c9OCQu10~N5mi=#B84cKLrIwQqpl;K>{1_Dhxt)dv&T@RQRvyl$0V21s33Es{Q?B z#-RjU{B9Vz`1;~7OuOEGWvcm}9ddvRT38X8&R{G8?=IqGipbFClwhr(fpeo z9=Th%F=V5pfa}G2+OeZja)UFJu#D4yQrnna53RF#1zAQ^6u?U^DgtOfdLHRXZCPdm z?TI!aM%vp{ZQho&qw2cPe8yg}`w9kbDI5Ik@2AG4$^`7ZRQLTzJU2}CiFLJe-lufz zObDoU?bv#7#Z8uI`gIU-7%nL8lXmaVRi&TtF7X!Zvj~+~3%M~=o70N7!|7_a?kT31 zZ4?Y}jqD`_r2%5wu$`z&7{<%4oT>O;-lZM0f>P%*Q%Ad&MKfKudNdETL0d-b?$znz zHMPcT8vCj1MdP{2A`^kEDdR70c9^ovWysA8vw^Yg@WBTKQVFGpNDwnY`ZtEOq?ED-DMA%!qyrlmV1-<}d z(%N^DMyft(aj@?YsG)#yGHu0Q;2_+D!60AT0QbXPvFz~xIe~zaBK1nXyv}PMx0sO2 zyW))SIqBeXgI*u*%RT`EOSzTax&pLMg+YBotL0ICcL&<8BR*j0f^PHf1%A;;;p=i; zT{6>LmieK=Z`<+wH^PvX>IZre`7<<;A*9622ku79o1MlxA}&41ry&Ze1zv@*;HCXb zWC$~$wPn3jQ{MGQnsrbCIod`YK|zA0M#!g0Q0@PZ4 zS)-PLKRhTru*$Gd#`-KvODsnG!z`D28?|l5s&V> zuRQbDBfjo=1=mOBWcmKppYPy40t*#`nn#%6JrQi@0*oNLJ}}4~A7TXtvneB~yjb%m zX*FqdYG+&C>e;~Sp`e`qhHM(-&1s;tcodx5?N_SqcBo%{ZHRBoB8^@sS}$8S7>niO zn8ZzUWp{CD(;95|%lgcljNUyHYVE49#+duXdV6s9+q)(XhK-ghBv95`sP^DWtxxf zl5BomCHNYJ$Le9yuoX>JqU!0EG15x?n%7kV+@Rj(ho5b-jW63!4;KI${a;6(sIv=85vD`jFRi> zGU*-uae?9lM6 zm<`(9*0V#LURcvGLkiw0D4yUtu}N^J z$awGZ0#YgI*jhiGLkJD_w8OiKU-;psCk8RkRmhPDmQy~!c+umI?tL-9zs%4AmY2;O_^0UC;ewlHy z5?UO4+NmUIh}B_C`^%|CHSJXXw*S->QPZ-ejkqsFGI0a>f8X;9^VRVWg# zp$Xg$JQH-Daq6*`_n~8QdZlipiK!kA2l3B$AHI9Oy9Bpmr8CU9yG*-5kth!ph$nq~xZPrTtXl9DTxYxpD~?9~+fTC#b^l z2|wHSiM4b(o40-+sP(2Cz{dD=KQA zQ73<`V z+rJl;p~}s&GbVmxg3Vz*J^Ze5n-5gunNc0F1WuRek8K10@~|SIjA+wUb?^!6e(DPr zatFdR)uM9eOY1hCn?H!-6E^XBpHS;n5=2DWsp6Uxo(*YtIj4kGy6=f^ zOl>Nd6$aGzFaIW(T{h36sL}M^We#{~MYj_nceOKvm|~6V!<7G7eS{!1OeJDs zjf$sDkRQNcv3fE)xU2M?g_a>-bXp|1-zOa7p0c~mIxyG_8D1ZOUu4pgOWuV^FG21P z4>0!U+eE2r|Jo2bvM_0-f84%cCtHgCh>@_(YEd@9hgmJSit&l0(6q=ORo~ywdxaN# zhHu>M`!Oxmh0cU_o63p?)Q!BlD9Km30%pyC{@unen4Epp*7wQ*Kky3>YcC$W+M=QAGiI>@S2W z7@rKc75T;MAyE6y~DaHaE0pTpb z()B2Y7g)MzE?}E7B~M)Ni@Sd9*4Q91wYaxM-U$gI51HwInCDa5;QPq3YCkx{+EFU3 zjuvalUW&Va@;(cL~(M4IwUVLEBs~ z{DmiM_3X{8{g-xstwQoyO%{J%-UiFoC3t$ZPB*AQ`%b{Ef!=mCe!yO6Z*UeK!oMLU z$~rh;w+AII$h{Q8@oAe^^7{{HPZ`fuIiv_s%#nM+PBVIDHCAIw_R2w3F+%%GcqNH* zvBBR#A&hPuy$|(!d}sX*B%X5!kk2V`=GE)t|m*rDPN!!jb zH(}4~+`Et#6}bpC4k;u1!g}n;|0Jv^d0>rYPeeF}{_Q=`1?tW9*#3Wr@65onOc0UW`~8}H5ca@+)^*Xp1{7u z1UJP_eQ90ae)mpxbDDbN6m%Y;vPjfS1{V08oLYzLvm=E6W%M?U3*u4U4sUkxF6|ae ziT&d!n;Fa6ddO%cSmPBHE&qwiG*oBE)4e)>_EKj-_LB2~G3K7292-#Hfa#JpGNyj> zi>6)ov-zh)4R)9J8~^RJ3w?bJ>U5y*?*r1F|K!1c+aUz9(?{rmb^f1p^D}$8os`Sd zE}P~P5cciY)bUcaBzX!wNMR?7#ot$Iboh~vmehP|^ii?gFqe0;4Pi`N&t&O4#WS-^ zsNWC<*}KaD*d^&2>>lc)JD%hO7*^F_Nr{6NB?wvK?CkOTZo8tlR~nYyCZFbWR>MLoI`~6cnZq}~o+B9+QYxlD!XhhMm3IA)~ zS^EAn+@P_b9tY=dorX9B3$tbSS6izY08t)bg&oz|HD679T;Sn?fUyPLQ_W4R8+arm zq6b~wyMvt80vwf9Kw#gytseCyWI`Z^76LytUI)$Z^xn9GxoESjcDvlxk3px?7f>pF zyTnT*3rlDl?Vk6pwo~zaTgUlPQGj;7@aF|_;e3n*sZ$uJ4Oy+{%80B7hq@J}vr|_+ z9_t3lDBoRl6-(eGl!(=q!>R`HME6M&KgmZyqn*5y_-em}C1GR`@Pj`db}Msh4v>UB zrZV1!6-f+b6w5x~DUTIe`m|Ijf@xwP;%ix(>dS!pqt%-kfFS~4 zDIJ+9p3wm-z~>rTdldL0T)4N|q<-LIOk-IBiQa0J6v<6}kGKFNywyW7iAOQJpLa)R zBhKVMJK_85{Z^S74$SXT5jj)gtn}r393k04S)KSt-A*3c;om+yB~Qvu*K&+%*Di;> zB%6xrpKIbEMD(m;Umvv87h#35MH9j>(OcliM{0huYm_~WZUosF&2cvb)gD%62I|V z*Yjj?89IKo_2|7XBIpbc{SM+rmK9nKRV}PcK}VYn6NY<46upVe*ZtuYm$_%pVp-^1 z7=wEUXjDSt?WD%Lp0P50H+M^}_~7_`TC3%MPY^{vD9(cASZJ=@3PJ`~wj@h2ijt=y zRDIBdrXsR0^XolEnco8G`O)WT_`csI-xUN(l;bouT0!|uvZ}yX3c>3sX;sKH-@PfW zNs1Ljp$MKDYa7>I^H?S7;Ld6iTx+05t<4tYMAn^W>+l$%Udm8ps_H^RQdUelo|~5% zA{2g-HQ02FLIYr#_NN8|D_<VigY6y}GY?0ZBhP|4-`QlqD@GLOT$^an!6$5$UU6xigal6%$(&TI$pb;1pT= z{~=l9(oOmAHABsi{@+Th#I3Lg8|HYUu3?lt&8}EYPaMazT$$8$HGv6PL&;t}!MV#C z%Co+o6cC@={tTR7m=vM|B(W-GL~10x%n9&8wF35X`KDKT8*hJb)M04sz5xEGDN7PR z>+J~ciSp|LuAq4mdc0ct5f`i~%glA>C;Gv!Sp4f{ad5%NC9iSED*^n#d9V;V8XSl= z*Fh-R2N~`bw!VG@79?2zMn=r-F4DYi4IAw)<|mTMrLqK)?eg=#7Z{kl9sYkys5BtD ze~WSV+_B5-Crb%XH$eFT4jSvmiAPB>*$|IH!&QL9_oO&?ELlLP|SW1gqSd=*Blps(%*OW|T*M2)i4Zvr)vGgC5C?vP#cImIDq z40@Al27eca2|XbH-=9{w zwOBJ=GZBxdmSg?90|AD0+b53n>;c{x_*!mp9%OEps)o37|bYX6$MpM88G)Dp3|@m2W4KgCb~mxjd_*h=1hxI5}_28|tEyPod;6J`+A<;+c=~A%?#cQe9nau|d)akX@*P&nb*vdq5Jt+?u zEI%|&wn*og+!M|ZjFUnh(`T}^8(M@IE490GN;BaS5`j}rL8=ZKt1@qh;=_Jv3o z?`k&xA?RT5{FJE)+GfEAX=D`*0n5LJ>?j#q1E1bGMSUGuCpbC*NmBj3C8lO#v#AM@GAsVC^G#i4xR)uqO2 zFO|5~e&amn?1K5iu9Ryn6F8gc4kr%2I~%-w(x3QTxP2ezXsV=1v5~NMkpS~I(|1pO zJ)cS6h%1^W^foyEt?LP4KLHl3Zz|6j;5`CilYh)GCnV4r>yF z4t@kf-kN-gOB(vuvL*T@6A(~ZyG*z_^lBUzpU_~XGvI1dN@K7m0$*rvUWlS?QmJiN z1dD*ioPI77*h`;B=qQSseD$+tMv0hzHvSY**sWPDK5c=?|Hc=Slo^=DU>IMMFJHR9 zd^;tDf%J`xj3gx`ArQW!7KBTHkvzJ;Iiz~|5($HVp~Y@W+YdOEkRi+V^(@AN{||BR z9nSUt{f|FM5oKnS5h`RxOZG}TDxqu|T2_f{BFd_S78wm9QOQa+387L%W+Ho!kl*e8 ztk?LwzTeMvegFGi*ZaEO@3(l4`{RDjxt-g&opbn(96d^eNzmOaw8`n;WGKl+CPF}hjo!m zqcLIx)3#?C?vRk z{Q>dy80ofQ!v?aIDXQM}4^j`1LXjB6AZ1pHQd|w+x@4^hotRXrLdtseuq(`;i?!@p z-(6bTWHToC_HAMuI??WNe32hE{#IIl^1J=y(T41!1JHQupUqHpxfIlVoAy<2al)(1 zH3S`PJbS+<*SyR9#kvZ&z`4Qau4?hmmG9@SuW>tanKLWkoFcadS7_Nqh!0niZ5~+X zLqiD<4^KV(Wc!{y;o()4m0CxSKG3^#(Dd?TiR(!+)GIyx;LoO-8VbcO%NYN8TrI{{ zv0TcQ?oQ(5oYl$`WL1nR8?RW|n(Mun7^1BEthA=csu<;ip8~mMO3B(<_n8SHX=!F` z`IL?J{B#V-dayKht9ZX2xo8phAFZY={20j5H z2R|!vw7;@yKR8Fm$*I?8TOjC`*GS07DOz~TFBLLl{Q8c2s?8>TXUcl)t2-N}tdDQ4 z=~z}S>v8Voe;ytC)_mv7<_Na3qtqQa96oEV&+xEq!S0ICh=}OrLGtWr z+Lxm>|I@DcN_us{EMqlID^F+TLu{JFtcf{|OoLB~$j=u8$nmVFe_&m7*ks|eeDU8n z@3F&7MX3V@n9z;wNL{GB_ZpAYHPY`8yF7kqGHw;tcKN_EGdJ2=KYjUXfBfr`dHSnA zxeT7(nK$t}B%AScdCN+)^U8m_u=2zaS(K;LZCMx`2NIsl@6h}iGnMnfaJ24NW#(z| zkxR#meT}uUpU|GdIPj^dj!?1`3X24Ev&mWm2s}U5)s-iwLd<$KJbX>~T50KsI?-cm zmsN=U?>j*H{=Ea_$cw%#9S^Q+E-vdgndW~8Q+9Tf2-Vl=lYG}4;$Xb<-ra^e6JgdU z_aFwS{oZYRQ9N*B+5b%|lBV7AzpXWJ+?sJ&%#zwL$TEF_#(_ILJ2^~Fwat^1)=;Qyz#@mz7j%Itj_XNES1Epe?=KZ8DYoq4M9OxwzqMLTP+6U zEp$&7fA?H%Ze@PibL&}he2EPw5*j4TPX>vN8$v>ZwP8&d4@zdRzn&f0b>w)(+!N8i zhrPDJ4(KU;EqN;uQ#4IY1t@|tGAwyBUk7zfOo9_}m6ZSD++@>2Ul6~xsH!tvj(g>r z*f&-E=RX`?eBEyHrge~&j_BbTg%L=I2;;?AWot^6`xu%dkjL2$9LD`GTl`+mJeDdkaByg2J54$jHcjnS(_8 zwRbPGP42kiRcBJ^_I!MpOMnw9C34ae^lob1WY;t2NCDOy@k0|5bc zA1$O9+m~=Y>&2A3A{~zr4oW_D8!n0NvPU_r!YA;`&D|ny*tT$Uv#kKW)KzFg5ODc* zl*jds=PsgBN?N-)5)I?8F%+58IXviJ@#33@S?vmn8kU}n91kgZdgb%-l(VHr54id* z+zByF;Lc676ltD~jL&5Zs=q~=ng-_aH?2rjS>?b{);WvaFcX~LdbpRg4ai>OD{Izx zF)`i}k?fyTcWSx9g?8sk0bWJ>vh!})D|sbCX(`95-uhQnI{j?A{5|hc+a>dEL^gGX z^3#%Yxvn&28&-l!n0`ARf#j7W7ar@bXcVSOnD@F zcwghkhbt=lE^h8Pn7nXl2-o?fYQGxGO()(pqH+y}W#6H}pqov*m2`SnYvHitWJ7ZO zaM)ZT@AU3gtvGP1;N--i!-u4}3@hCttD>xDU02w+-(dd}Dk-gVv377V#8f^#HG9f? zN>6L~sT+bfQisb2e=rO^QL?;zkDKe;*zF?4I~KbKqxO)<+AN>DI%9w-*s3pokwZp_ zVZ`q9vn8r02Brd@)czUhmK}u4WHmj~NiOGo!+69%d8YwB${WjIkKq#T`j=;T2QoXD z4<+yO(JfTaUENS+IMQ($)2=Gsg5cKNxu7M=qWbpTy<8gkcLqFuG!1?GJ~6eZ-T6#l z-}>4uT9$m5htQn(iRXYhDjD8ixvdABf1H>0{lgxe3(&#~ng|3o zUCwUr7Iuf3Yf^U`pWl7C;9P(0C3mw`w$T_yfRSCx_#c9l^kY%Hz zc^Ogp2LA8NE!6iu-7;0m*e(ycaiV9sB^*+>D zezX+yEwZr3-uF)M1vKw;vKLxCd-?AtgP}L8C}bZ<=Bt-UIq#32yVR(IMZ$1PwUK&2nzar~*I9Xl2X|Yc?*An+{VO~c=lr}%&aM2+AuU4kr z&_mCA*P}kwnf#F39Tih>o0@X-gFLB|H{8IiW$T;n5www8<5~WD(U;nP)pY`Fg5?A= zN9093ObxGoNb1N1&lZ2bQf`BFx@%B6OKQxw>VJ0a6@BqL53%2jwDhKzhK>k z?JHrH3CT{61(>%uKX2YszPGn8#gS>d`&QPdZOK`zd&~F6&wUX5r?9GJNR`MqP^KiT z2(}mV!t^&;wV*84_rFf?{cV6a`9C1{&{~Jhk(iD5z{{YZ>ZZ4wQ}&LDTY>@I1u5yM z`N^hDSkG@*^sgtz_J6RVu0jYM90BRJE@ld zog_C6U0--Ex+B(-PP4f8>d?&P?cA?`B{Y(|6hQU=)2 z9##HJ$PkzD`)2}lhur@31<}=V#0n1lb*5C0wEIJ^R4PKXPs{wTNrI6w?K_6PoO){U z_QqP1uUI<}Aib^XcEvIFp~7W?ljYSlJ>TE#{M#?>jWsYb$GU;}!iy{_0e(!}ap(={ zC=D(`Dz?wWlvFS`!art*XCyD1^3)W7L(;rN+WMp znKUWlJ?s4~ZT|ku%f}8c)W>QHNVhMcfj}?2bW{mj#V%nVY~Bd=Ln8GHSNZ%Is$}dV zZga?5lK#UXtLFWCpWC-r7)nNXbyoFPUFum=Sk%W>^S<4?p`@t4EjwFLi++Q2+Kvrn zN2g@w`O~sDsk$80>baHeZ1U(Ow|K#?84X_@D=RAlr`See23kr?Y^+e+_?2G#xA!M? zQ4NPdx9#6e7L@0X3f*#AT6-gB$~JGxM9|RX32iUFyj{-MH&~l$Qe9bD{MvnH_N@$< zpg=CEk(}tLDE@R6_NcPZoa_a@;^Z?p@kG9sndqBfh*Ml8K2LUumnaL7bBmL(K7Cqi z=gyrq)#EsWRHdKY@yP=5i->#!WU$*?YhPAbIJ`qvPPT8-So=1)~f4#ce?~~Jf@lD`LXZZG~RT|dmhhT&?3`-zRRJ6994)H-v74OD|ruQYUJXknp7UjD$f!eh@Z+6w(VQUbI-Yf!h+ zl9i=6EGG3Dg>Lcf15qsHuTBYOIjO83O%aOde789EyUbs9MYY+0y)mCl{~C<@`*UW~ z|5HMv{*L8}e_S;ctIPhjLc0Pw6tI@XF+ov6CP$xMV|9BE!~c<{n>xW9(v_0EB$InWA&Of zLaSCSz?1?HLPYT% z(9@3=#|6d?>Rek@Gbw<@*2Nq;WJ@QQ7i?TE0zGx~D6GsLTfznLV%WEpiN=cBj~_o? zwyn)wH_^dy#FPZ~6W&&8WG#>&+e*v30vLl`H*BaF-Fv+7>N( z&yAh0to#@6#*;VB<>kD&ivt>Z>N&?m9z2({alrNK?1bn;gP)e8WBSSIhzPE`NCBM( zvbw+$a9&eb>=`F3jdAfjn{D{u*VwC4CJp0cMR?Ie3SB(eRhVp&!zCTbMDoM4XU}dh zd$5fy*nYXZogitdCF|#mGHgl+VR$MfYmw_j-{tQ~V`6wwVKluJ+?$_0j*T9hR+xwe zNMC%dx-~+r#g&Nf$r3ZNH8=Ib=rL%%%^?T3Q;6Dsi}ZKmMGC&8pBhH1gB83ZS=ge` z%bCru{rWQ@S`E`rayEO;yPvL4rGWJao!SErn>H`gC${_^F^5cc-9e|2gp!E%s` zqS4NA5~hhptkh%6wx%ANe{KA>__#QYpM#*1BL*CKZ!u}T*?miHD@f+oV-5Z1nPBwX zTr#G7Lk&Wjml$NQQ%$RP^(!qaV?zpqgh9%Z=aIRA)}faL88mRJ6t((P3r%^G{)6XA zGjUtTeqbdP=>j>q*_FR`MI>AU*@s$)ujDuAKImGA9xv`#0S>Ltnl1O@{6}0v%R1Pe zJ$vR$V#@pU>}-XCW6u}Qqqlb8+m#3dBB;}gBBbm7^DpUqMGJf0>d zC2>e{1rpkM*U^cAuM!ki?EiyV`_?5HFez0tA;;Q(3zAYs++&SXr%rXfR@IY!!xCJ!1H#eQReJ;4`!tOhpmV&aDJ#gIi;t?L# zbDwU0B%uQfSA_MC>pWavTGD^siV%u6Hrl49rdmCHKeWyofB)Tx`ld%DAeu7Q*phW4 zGBWXtVDk*cH3>TZEpJEJ`f_7_xaCOLy^gS z@!A$ctp##fq084Vx^?T;{#&=!ACE&&k&Im$^Y8D`f!0=H=49b!lS74+{P{i}uYomZ z&pt~3SR{Y;`;sP`jMEevFvJ`)6a9g=6kK^%7uCnFFD=IIJRDyc*%#W>)D-Zs;lt(c znSITJzY~yXDur2hX0d zQ}jBenv;@~wb0hn_qyS<_Tj^~^)A(D_q*gS4Vo94hmPlvzJ*&_?eE7?gBYO#6$yOfis@`_uL}F#= zoo*qv2Q&{;o?ps(bEN;&F^-%;8Y>N#s==s3XzcYr&k z>FBsoWba*u=M77+$pY=Dt#t-wehsHDHTH*SeO??_5#u?d$i45O%gDR8Z%3G7TAG_f zzI-{nB8+0~{tlIhFsS#oMRZvUA=yN*th1z_a8oNpB=3(i`Dect}{lP ze1PE-eX<*-_tTTGlnY7%$wnE{-wb7H6aIXcjUqmRWWC}avLm#wuW$RgjL$W2beapXKd*c^-}wtapNqG?8x0~2KGG-2h-5(hZ6BGu+6oTRbs6C0VY zm*=2e^Uh}5h;LEo^@2U)I`0vG?lI@$tR#TjpZ;N{i60;O7#5198cND#4gMw`!^+*U ztWmDB4W8oK-MhQ>Yt#ijY=v%Z^H*!xg?;0@9R}%c-@a`(HDn>r7c#K%v!ax-8_N+` zpHI~>j^+zp{ISW&yNSE>MU(Mbx%np<&Ef|Ow*~HfA)131`WFe!jzs1yduiJu z&8OsCV;7}mj;|OT9K3%yr4Y*}S7TqZi9BjVkMhi%ReD$l|fwuB@(T4p@TU{M?{tVTwtPFXDza_F-~igRf}awR`tu(1WgC|LVf?Au#<+ ztF(hyZC+1*PjPv0v+T{}?R#^5$4MW%ADShY5PCSl^!cK3=!b`^YYyoJLtRd@KF!Ks z*U(UGtoO5yGd5u7w1;Oe^nRUjwNjD3bCUhK>$eNtvHrer?EA%JWVrG2ycTGh*Jyd| z?$^_EQk^wBv~q_xr^wUXiQDU(hs+C3rZWORv28l@W%bvY=E>KhO&&A-@4K*4jK-_Q zvjsm|@_7f(s`niu*eaF~VbLozc6sb(!dH4hNu!s^qo$APS%271|IqOiU$R_I3#A{8 zJdZiwq?GI{Hw=VWgFTH5kEf@$K?KVjIF(+!*AuUA%Bgn zTm6!wS8WSncz&#ky}iBN7Z95f3uUjiI%FwKpUGzVA19NA&9vl>z;Z0|y=V%73&r>p z&TY?bF*))MO)FYW$$up@zoD5hUCIB1cK>fk?tkW0P_g}$-H}%ne)z9qGx<%n4}UKg z_?-j>oS+gQY!{ncdY?F>5q4>KF81gSwFk;*XKnlY#ZBl*Iv8-l1H(UCk*F=5o(BG* z2NGlJ)p^m7byigWscEp;Y&-X*x2hBMR#RUGJ^X+E{3$j`ExiUbZ_jKg0rst5#Xw6< zY_%$f@iJ|fcx}`yE#qQGva+&xHl5}{ho(ShG&KpU{m?4EcQTJ)Gtb$Mm1N$=xgGP} z{>nHz@|m?Vx=4-nrmPiVsMRknYU@&+-vYy?P|#GhhH#*Wu@$caXw*)flJJKf~+t|KzYTcJ4>1U7r;wX zD6?aaR7>Dyr6hVCvPe-K-H*G*O`2>r^h!RNEfAA6b)6F{bI+YleH02 zMk00n4p~FkL1{knt^B6Ey)fyoqb@DHhsD!MV>OzYIDb2gf9NP=k|~~>Y+=byQsUj> zu$mm~uFgm)qlYsR?ZCkna<_0RgiO$J#)H0pJ1m5?LJ{KTIt!nB%iZUH&DDPTbm{He zx2c^w2#BC#3&3CiZd8|%dC3msPMTKU+03%J$!-BziGAb74fE2V<(cE3jB4M%r==t$ zB^8m(U@?b?IU=x_q@)(gMIK}ED^I*sSM6h?E1+^N*~-{pwIwCHM|=s-IttE{yuiK# z2UfXT?6*Qh1Un!6 zWvb2(WcNz%5Yj(*&`(EoZkg)b51ow__Y|F&VHtd7J3c?uxfcRt-}-9wT@ixh6=J6z zgIwI)^pxzu-M_!++R|WN|1tsBC5S-zxNwYEuLZ~1K9Dn53Tq*$Ud+RXixBf@DYNkG zg}#e9hOn2=5{tNTe6)n3!3+*=dAnAxle|sUTgDkge!?JKq zAZgMc-q&~9_uj3jQ6}C&l2RJV+|O~Q zdePqry4`Zc^T}fwD#DzB*?ofAXUk`Q#K zb?3TuZ|#b`j<#*G8r|^a>E#5%5S}aB5eQa*0=0=qj?Jb!vS^egHOcz)Q`{kZTYM1t zcTMiXhHbl6wXy!j&$=zYdnpUm`?sk~+)g+*;;ck@r7FO+Y}p$R`KB~0dS(Ho?k-xf z-=EuZpobZcm?suXigE3)n(WfiDT6lw7e=VO*q9hfi`(eZX6KHjhq7R!afyipKNcZN zB2uH#YSonl{Sgt*tEu)t@~rpXQwfIoSzs0uve1xN59R4^VN(s&9+yx%Ci^P^uBN`< zv9&|xYv)mNImz?Kz0RDQXmsrD{rq$#fN{XnykCd+A9F_ua|*YN3|@%Wxu=5d*Bg}t zSb+D}Do?_dTj23r`uY2o);8?EE6=vlZHNXNP8pv!)XUzOv(TC49hytsj8l^|&SXWX zGtBc)PRSWippaWQrbigy0GonHGY?{!Z+;oQux2Bdos3bcR-IRZLIqpLXBR+A5~1vh zE8KBhb!NHEt6^>6DHfSmL$nlIwed!qoTX$dJ;_6eQj4Vfz-3D(d!ZOABTN%!Yw^c# z3niPSr7A2LD4;|x7PaMr@2k!8ocD5UM&>>>-xuZNthaTtEHCFy^9dn3jr-E<5)ynNL(w(D%lnVc-^`}#G< zHRISR2bJpQ)qOycX9t>|t?!CHDO?xLxV??YL^^wvHPnRVe+ft1JF|{};p8ZdpI8Vq}q**JRpTApv2A zMQu9dQGR_5K<@g9z6L8Md+G&FxSwp8MjIxo!y(o71)WxU4^HB5_}iF3GSr; zUH0BnQ_hrpxP4j29z7t3xXer*D8l0 zqFhpkj~s{kz;4k$YhhH@QFTW`LAAXS`@^_8q zZ|vy1>p!Tp@WFpjY1{k%pi;a4KR?DD`{DMjK|Hdw*REX~8Xi{1PV3sIW~!2hU%Y9E zYY0ZJ--hH%6Pa0Ce}6FU6qy612A1OaR%+cL&gZ#h3FG$F?BiucMGNqlOK}J72b+~I z&di}V`0Do6-Suhl1#)gt9HM)deFeI>msFwTGWI6nF4)0!hf^+$e($bJimX+@BOyrF zcaOZstUR(=e^gXg$S>y z=lc)8u&$*Q-Fw&WWdQY&=+Pdly6vYrKg$6rNC^o1)RT4MV|@)AFyXk)j`nulr>4qx z6&x8i+cs}7d>R_cvdN|?04s%a&%oNfLqkKWLcC#_%LLwWc?kwwDInTWKE5E3-m6xx z)=HIHzy8Cqen^@MtE;PzjUQ_K1P*u|2&!|vpO%u;_J%8ged(tR5Xkr2Rfu>$X*x^Sy+)tcZ z^S#ORkMjdfml0_PW!efI1MBV zY*h4ZgCq zqvIkppzS1Gz&|hST+P1tSmn)FgX8$cbsn?M>ZTA7fu{%x2w-q_b&W@AL#B4b>WMGx z{FGu6h>Dc(x^=AT>goZPFDItzpCgZTAKQ=STt&(zl@DuhE(ag$6%aVgwn`f$`a5%F z+(K=*gH#M9$yKnlw5)k`;cO#gN=e+-z?$Sk>!+rtV|Rv&TYpZ8QVRjM_zK9;x+zoE z&E0+9lfxScYREj>6=G^~`SRuNhUcQ>=a2UCS4J!IRz%A9YYEp%dv36q|JScy z3`>?!!8rb@v0r|%&$^YQBw@iJylR#GMBgFf>~rNu8Zcn56-k(O(WRxspqVXzz)4nt z1NXjrmruO`b9$Dn*ue1QaC#vUothjc+aSIz?8utr-G9D_IlXfycxuN+#{WPrMO1qY7!V?`)YU*nVduJXlkmi$v|_i zYxmcj&C+JCg9t`P{xgrSCi>H102qY&7`(hFZb(jnv1IHz-*UnX_vp!Lv-)0agMT@l zAFb>ve`|MX`4PF4vt93+KuA{hH|O4wkdorOk#n|-Sv0IX6Az1F1jWQR7o43LMo?HN zr)foXM_g>?TRF$O#>P7{truD7rg8f_aGN8qU$=bzvKXm$E5(lRQ^66ZYU36fq@O&f z&Wj?`M~Te<(9&{p`{!ofTwBFQkp{ZZwL!A!GEK?+@!?T#-SXwj%Y%70@12{0H0|5$ z+*}qcnc=PbNV(|U-694|3{P6vdXpx6<>5*Za$g=lQ=`D&%- zPZa`07fblu*vR|z)yNe=&<_k`;2jV{f&EZXJGG^lA>=A_D_MO;{t;kWPak;s+ly^z=1m$Sh-A$h=Zz358+t zVz?k0n8qo4UTS2K_eWwE2SIs2KtMi%PwU`d=o6!iIA9eY2YY+_ghS6CetBywe9ipZ zn`?$S=cSf0`dNP^z6!H!(vDTFpyc<|CDlII#SQNNOTV**hKAkbfJuCW#p~Cvdj=h{ z_zoR9WL*mDN&OpbY->pCfn0ad`vTtVSSET4GsK9npSw#gCPIVj1j(lh`V+GZ` z1uz)q2m2Ra*75;Z*ANN&(a+1uDme9I?);uRAP(}Yt67k=k&`6H0XRb_r6~;cE`@V7qkAn#w!kGm| z*nUi4qj1@&3JKBR;+Ep`ry({;n!V-&Q7wl7K_{M>Pyq*@jz2U1$H4j}yqlK5GKz2* zc5^=+$DO-yA5lv#gR!LnK;mvkmFr3pUS7Z=I`g;|Oh;e5ym!?D+9ojp!RPp=7M0MX&X z^zr6`ylRB2%c-gBa{C1YHaLnf9M^P$z~H>!%H0nhJz8KcF=o%_k7Gy*7x_d?3n_{f zq9@65iF$zqzqYnE>gjO;tiKWMg`-O zE;n-<_G@n3Nj*wqrdzu&k(KMXmWB`os7!z3pzK!XT(RN`eBnOZdwcF|vVff#W}i#! zt}puhnH!(H=<&g%b%1<8dS8WaO{KlZ*|D*)3DxTx8V0<0u|c`>R$iVeNsM82aW7sh zBUv>W!%PAlPJRk?XF|nbw3%714kQfCnPPHs?7*!b!**a-a7uy83pDts_rRu zF+GdGvUKS$;4&yNsH{=Ekg^HL-CBam{zr*wdp^{UD{Vk5UCZ>GSMit|H!#k$qXFl? z>~zLaqihtNIQhyf(6-}Z%K;rbDXp&(7N&)`=(>U`-VY(HsK}qC?gF>8ag9;iAgUO? z8nOAH2ogWr96EH%+?#m_85E6tTlHgQG3YG{c@qksUnF0T%2xrbwELGQ8#G+b^ zM-RHe%uo`vhkI*hryus&cOTk@9C!&@t#~$AUscd?QfkLPzzh0x$d8|_#8@v|w+zhA z&6Tb3qFF!~8sy}TrsvPUjD9dfezI(t@6*>mcb+Rb-apK%&ianpJ(;?g5Y&KQ!%b(a zW6|p*CM8t@xRQno`7y~rho4Uw$MXDmbtw{(D~e77=5PzZhguE}awt>>;V;_oi8mxw z)z=#$6t(03`0f@d0*|z?@k~R6G_gwz5)3U56OG>*$i<`Tp#(qghx^)wQ}xypF9DCs z%FZ6w+y#E51Qte6ojF)UD4~kqKiE|Zc>C@9_s13ENO8anDSUqy6^O3}nbAtPcH*Pq zY5)pV&7m%!cp;N+M?RO2Pe8Ih^8DdNKDn;{i8-+%l%cNK^dq z-C~dn5*8Vh2bsx5a`f#xb`%hd{rI4S*0ya%bq2o!Wpt>@PX@vO=_ea{BeIeBcqo`YnbakbKDkOJ2a&`QI&@51u(JTS+t7|~9K9OF0_fB8ik zVMrbbW{NyfAg*CpSDek)Y}6F>%bFP(84EF@Zs`3knOOWW&&HF>PJT@AMu8MnPJX;! z33AdW3LZd|z8v~0s~O^GpTX-6;GuNh-f*IDAsw9^gbl_(Bbj(ek*-6n-lo%lcn)~N z9eBGfo}Qj5xDHL|HK;Pl^Dr@ac)U7VBvKdTq9nanZ)3*O0umU4V2yT~{>+_^4W7Q+ zv6`Kk!o6a}TR6zT2s0>JCO;m~u_teor2ixn3GrD}KRS?jjK7sOdKrWXuu@&Uy%h@= zEpm{Rm8F8+uX&zkCfc#Ob_kDcrtc?-3G65MQfR#JtLpqRU$fS7A|1!3=7VGNlEU9~96zK}&y;OjON~pXes(n7n z0L;^+5ip9Ild}Y(5POttzPq`(W%~HgUUUpzsTw^xHugw;=C#|wfqg>}W?`qtuj%6{K!nEWC+p+^7^KC; zugoC#$rROzPN-1wn7!$W>?adI>nsfoO%p6T6UKBo#QWVn)oRDV=BUw$iSN)*6jenj zMjB<>3DJ91ym`ZVL)m#qaI<+nMOt3|=IHQnTU=aRCJg;73Ny03JU~?|*+V#nr-_0v zxgDUr7;2Ouq(N3-=H7An|0bDONt!o>pOX4?c0G6x z`Csm&8wnO;_tKe8{pR9-DQ{UhBj9spk%kk_9BB(G*B4Rx3%+4M*LLh*UCP8{+um=F zlA`=WixJ}c;$Nf8s5Z?CnoBk{Su0Vm9YzQj=c^@b|5E<9y|b#&Y9dbwULfgPs!M*f zZ%dmzGg1Hs78ZZKlUd4~Yg3cI;qQQ)?OyWy{-bMnVuE5~ZyGE!IX7G)-5&vO_Z&XF z0uRS(*yDcwv+Mc!YLw)Tep$Qliq87y$5}95l|@HK=gw!HZcX-p#u_{hV z69c17O~(5R4KFK~>7IMKg}%qB?Dwzmvy5k*O+B7B+9B#8X}%UO%ijD=8Eh0NWX0?CtZl{@5SN25A6Si z-dnby;+@zs#y6b~fsr6k@^ zQs$=_&teVffG#2c-!3aIF3xXhSqU^q zrp4OB3hun9Dtje&ZWX()Vu4xNr(y@fRPy;tm8w8&Lkeg16q0fQP#wu)zvwL*`LITu_8dP4oq8tyOP(1h8o9v#m4d<`kePg+Fp)j` zZL6!Qwj!djEnj{a$f5m??dt+eY)=Jb%2~ORe2C$gEbWq_=&l!q*{saSq2QC*zjA?t zMC!sgLR3@C{0f2_H*%twVxqj&*k2yNQL1y>-241^6l5y;P3B#1*JBN`y^h}-}%a&JsGY%+CGNJo=t z>^?SdqQ>EjN%_xiz--louL*(+J?FY($6^SnKjuO5Nwe;`yvYaoEMw-7ju<`hr6~#K zj3FH#6Vn|t<;>j2IU$4c1}<^Fa6w2>vGJP-!vVz zuC9x7-1w$Oq8@HLOyi1)U9?Mg?9Kw|?^}-tuG+b^&&dGhI$WPq zEm4^Dk$5Vm^V_RBN@b+HEYPoR4}b1u_hZk#J4Od7x{D^e|*S6 ze*>DN$(9e``S|4IO6fD*hZkn9HwpV5<5FwoeA=DK^U*?iBffZ^o=JsEhUq^YLiU=ch7a z2c93>Grmc7VZ<6MF(dWK+f<**nOHq(di21D2fXKncDn8S&d$?2>Ug|fw$db*+vKD} z2z$9y+L3pCZ_ipy|fD!@SpVgiTY$43HViaHn(+k`J<*~g-mY<>hd3^mApfxx*?&Pn0U@<0F`(n8 zAiuC5>)tmz=sCY2zj*{mnG?umE6DQOn{7i#@@eqY6tk3)C0{|cNgl0$sz*>lf|wgv zLmp+97unSh_OB&y>U8s~<=)=jQy?u{+uCRV=Md(o-vOz>Rp=wGJ|!3zR|ln%HRAK2 zd8s2Qq@t@B$iTD%_3e+MsFV7fxUz+W%jh}+*(*Aqpa#H&s39^Bi z`$FJi<*dNKz&2F%V4sHW%DfuVkyeAvxr8EAQdT~5IOF+MfxN|hcNZQFlnn?Dc6=!x zceBT7hsGwQ{fw-p$~+rQ#(0{7uQ)%+QJ5Gw>*Nt@F;HKoZzy+3T;>lJIKVbDn>XxA zp_nK*X*X_nKbrYm_EGh;6)Ftsr*jlSmR0w!JN~XOc}tpXll$u>6kudhb;UFAgJ9zH zmlumM1U=D3QB{-=3V2ebz?Arej3*GiqsCDNB@@D@pm=23wAF<&o$$lnB`mG`_wToB z&8Lay_Jf1N-54KHR#qMtFlY3mWxq_fKT$8YZ*`fy*ma4@h&_pVaS3`fELm|)yDt57 zd0Uy?_Tj?^3^+CpOU zU=ieKJ~1(ZB%}9O z$$S1%A|-YhqB&S7pI;yQjZ_9t6G!M&W`3mY~~EM{WTJa+71j2j#!@>n)5 zu7}d2tpy9zm;c&qrp>*pRQILNz{W1MxdCT!%X_ZQ&Y5Gfw?1?Mnmq_D;H-&SA6ON6 zW{c=1?W4D47VKX9`ThG~4e5z9UOG6TLr`=sK{;<5Q~`D{Yh)%oNP#7f zRYyzRJlpg3v^7G&Ox%0%)F~R{{rlNLYzH7!ZAi}*&Z6D(sQ=|D-bH&p9O@PG^K}l!lUQoW<_gW8EABy&*jbfFqq1b&Sb)op@xn&OM2bv^q`E zvW`rO48@_S;X;wpGbz?^@y{bmBn#G*AlagLfxhd2e4eCEvS7TP_uN!;k}eJ54+Jl= zfU;uKX=)oBUKTy@m#dy6i}UXczm@zx*lK@MQ}ugZ#V84Sz}=FM^^f3Y-;|dZG(10E z3%5f7(@76BQk!PA&G8oaH9m(dV`WlFmRYgcMzTkRDnj_KHhQ$t{PgR}Q6%SWs`Jw< z6mxLZ&LiIz6NHlfnLQLL1EPd%g$a-+Iz%oaelhew`12HQ{%UQ=I97p>1q7!U3O*xp zkB1M58w2M;+6q9h#^{O>VP#NIkV9Fr!|}r}PhVDX|0yUUvWO5R9@CxNxFUwSA|fK% z)uCX$(}OuT zmo}dI6a$F|Dof-O5TWKp2eVw4gSw*mA~X@Yy1HISP%U8fJ{@V;8ia2#u!YE2o@iI-db>|xxpNy9G4lnWnQAHN%R%*g z2-;Ud6ZddyqKxQ`!XngQ#HCq*Jek5}q?7icW|eIAlhbk(AOL>ymk1~{>jKL_p0;PS zcyK%!Bn%mea5!ejRd}LC6?_;^c{?KDj17D>n!B^o5QGdfLhWg?Tw#Mi>?0Pu;H88%DkMDTuTc5NDt4Xv%_ zM1V_5f?r;q2?Swc1t1A0echb}jlMn!H37d}UERwqnKN$7%|97{TT)_m(KE-;IuOnNEmJ&jd&BUC%*6d znv3@${Y`B3O_0@PpYOi{ala+rIUp#g7{#36*N2`Qc*IP~)tQ;{%Q!h>&GI~Y4hA7} z9M|9Qj1#2J6cAD%fCwuV*=+-384JsTj26o)Vs3#5veCdWWUzSnM zmVD zdoa1jE$qDDNV$O60!l^*<>M<<{JrAcZ4Ta|sICgY0ngcCdLo$uLBjNw8PysTTnl(@ zU&R_!!y{jT7P~@-Deq=np?E4o#g+>rt4W2NP@xFM$i|8R;o124&p5QemdLU%LQ=y~ z**OO__yP%qIh+kiq=`FzVe@qb%Sx4EygE9I zn3P5<*As+Fs6Rr+l42&|piyT?;55XuaE20i7|e0(;q;RXOP7`a?@Is7zbkJamu*Yb z1A6aBFET0Mp~={nkk7buR9~_CscG)eP@5(}I7B;(Ymf>?Ro&|=@}G8WRHJksUU=UX@y zS^47cQ{ATygS(A2gLh=oAy<=kn_6dSWkt$?gtaDL5n`j=1B!q!eZ&kWPEPUr*H9Qrlec_LJ2t0!m~ zS_gu1tf!6%#c*^#;ouO+%B~7&)}W3>bPxQM`gaJJgYwDx{r$_)yY5K?Rh8hnr=c|v zOglT#L;-cL5#!+J4+f@P3?bbr5{vK-KW>FVbHYXxdPFIF^Cl0GO-bk{>)uIradEK( z*(hRc_laE9nZES}WPgx3 z+JqK0{`iuf)O>N<=QHRR6e%oXIgN}wGCS{&j_$*w?gpp;X;5xpcr{7QS0NVwReWa#$y^r7$ zbu`JO(i+{|efzM~6}tm*{*=jglqbaoSI#l*9QAI>QL}jYd=0e~p8OR>?XTfCf4)-S zZ#kpJ_7RH+)0Q^lEz}nmY+`kICde?OM(w~cau`#L5Gmeb5HfN#?EC4(zkelQC&f=M z(Yb!~?mq+Q$-np`+)*eG9@xAZViVd4F%qimA3l6{Jn+wmZ2TJEC6FDnv$N!soLyWr z#OpGi{N_MO`*!#FLKVZtLB29#Sm>>QJY%24+B1u(V;oNJxMQC`?57s5{w|`}#VtwR zh=f1aEgU%A!4R)%&^@Cu=eWJtE*vQRu1=wv%1H zLhd0NX^MoAG87SYk;XDbzP~wLI*X=A~^IoFf4#ur|^Of$ejbAS<*)JnuXiC|KG4PBy}H zx-rXv`hC?|_j+@ET19>C8u_FU2)8ix^Jg3`Ho-Een^7nv1xD)$GH5=8#(0F?DG;JH zz}&em#J50@xcu~S*ya>^m;G1fZWzs5O|n4R7`J^^Jia=21A85VN$+R%Y z`;o9aw%Gd=%TQ*_NQ#$})GBW7!7meAoK(hTuM2#;Y~y;v%;)0g^|5-_&xfW8>^I+X z`#o*Z$_r_!$**d*Hwb?i=Tf4*BCz0r-?7UP(a|BeQ5^)&qC?vr`>#lv)cV3yh?IK( zC(HhD$|Nx$P#6*A<58lKL*flCxwOYdE)qYpgrtPxg)>IpK!MNBHqAozO@Yz~M8UEr z+Y#c{U{$y{!Dq{^Q4NWTR(($p3WrG(6|pGWe@RqC&@NZh6t7g>)8-SG+r| zU&~q6)}*SgJAd)#@uBK7f@>w%Wq2EwIv>sXKIy{~-08n5jG5+FtXJf{9krMkyAPEJ z!qq_&O^G=!)Cv6wE;}bGtv#>)B-lh?NTERI1$pzT6&tM0pH+>J#u2{6r zz4@2y)zTNK6+I7$3>IX_IiR~=WNM(}M4tHzI(2#fe(v=Y%GyKUbGx5fi@jK~>>1Ne zwmzd@^4m^?F0C{=_-&co)`r(fw|MGeZL%6yiHkz5mv92*55UTcFnuCmqUt%PhON|Z z;RnhKYtcqawgFO3msjDc5j6RG0uA6{PpH%uyH*OoJJBgP3LJk>G>sb#6^u6=Na84@ z#;5I-p(Y_+gmh&}z&F4_7`JlAqzrs38+3aq@i0z=d@jRmHebr1U?V1=Rlh&gc-lY| z@t0R4M4H5{HifGTBjTs~UbmfLZ{vL}`t+WruDRg-{cOtdTB5ek0%mjvl)vwMv$l$T z&;Ody?aT9Ur&QAJiiGWvN(3qNpfZaR+a=_fWHjGxKcpQs$rDmXk#>-7(z-m%)bNE8 z5B!;)PWgG1q9DeIgKSqnqwF62nKieJr8i_%RacimZ4iR?KporpY{!N>i!N)$J+l6g zB8r|&2obj$8{akMM=p_i*rQOL&#d@8Q<8UAM15Xv{$Vv!1>FbH{XK4OW#=8U)?4mW z_vG({7szUG zWctHMfIC3-a^9Fn3s2jRAD0mT13z&CP$K;$#YwS%J%@Gf$_t4VNrV#Hda#p|A{mf_ zw&)iH;SvTx**c#R_AU7F<3~>m+W5pIKi-tdKrFzSYFb+-9Ofzv*44c$m+@$PSN^oB z_XNjS##iN%_p|gN;gC8#Qj@q0we`~b^rDDL(!Rd8p+Rg%o>T}(eHHB^h?{NrL`X(A zWet+M35gqqfT;JYSO-DR0SP3bz>s! z7J}>H5AFKDY$PyWb#`b0N!0=v?6;Z%yi(PGP?Klcwb7EMGhj?(-G?A$h(?s`VZL$0 z7s5d+OmFd#BSZmk;V|e9L6AlG?o)uy3)P#*hD`ztk(JB#Nm)y>+IQq#YWn(I&^M9om|>ldFaU}mco_Se>S~f(*JeAO zLYh@7d1xLrfa229!Xiy;txWR*+F3||44)rcN{SPJ=j08b#|(@<7_kWe1-?)V9fuGe zlcdiQvD`-vawPHxNc1kDW2Y4sQHo@6;Zc%MpxKohs%bU!agw(r^F-R(Znw_85`Kct zMzVrlWp+q&YWjpv-^}zhd9wt}Xdp9-2~+?X1rH$-DCravzSEnxu1vPSGckGk%GuKf zk0Q@>)MfE|9Q1De;>GgSmTuqj*bDsX^4$JS7w;DcF=Y4}Gc4X%TU(2MrpSVRWIO9J zrO*flmHV-bbTqoek6$JMczhBnRbChir_^Lm($jXt=JW&`uacTCXb%7X*m}#LIKpmS zba0mh4X(i@xI=Ia?(XicgA*KrJAvTtF2NmwyGw$*%W1xE?^Cz#y;c077-qVA`h9z? z#}=^J_wB?${9SIK13bMjo~;+<%T4yNfEFCrh6=#i0mKb^cW-wW-Y+a9#BgsU30qRW z8QE`615an=%Lz;jlQE>oG%3vOU)y@#n ze~kD#uu2B1CVZ-PmU?~zqb;9+M_a0ZFAqR+WicRr{p)TSzWh&H68w=X*g7=%3&{6+WIK084 z`!K@a|MAD$RhxDN>re~ zfCK@zeHJ|e8Vw2j(N>l5YwKrO2O|U-rgBGFZyyCm?aG)G*U|Samq_5zvt6t#Z?>iu zc+fCYX#K>ofCdcuVqtubz!?QLuRs8Dh`2a(6Eicw~f;M{1~DIxpykLqu&1d?C%#Vm~{#dG7g9TD;H7g36RzY4QMt19nX7j^uFo0=-6Gn z0>xn%8u7cErrdo^>p5`$iPyZmEdQfnf9;h{ofbCEqKWQQ*#rRG*v_paEXABqWk-MjVjq;`5B+Pl3ffX z)@rF74AI;Xt%^hC7)z#N)HrXPbJTj>ECvavCNu~|Utj_AI$nE|SQ1aU@l9>RB=rB+ z#Jh?xf$Chd(?5wYGCc8$C#A=k!Ar-uCi_( z0J8z+&jy~KJN&nI5UbAG;d4zH#3T?k#}?Bcqc6Y0uA_5|0B|z zoWx0#l9d$&_O&g*7zHrS0NypZ9=5Mgzh-c3SRjNh+8>rp2yIAATMk(U=q&*eYad_} zrEc|IZ}-#y^l9&9Iq-z*0R%4q$pWZ`YJw;!;q!zqB-uZWwVf@xIiD?6GM2!-w<+P( zx>!>xb8ftQ@d1fg+FEQZ zpumC%Q7TATjbcs{kr)5 zGRC)3uOk8|Ott_r2ry?6g5Kkd-nl*i8j1wIBp{9YC$NZsotGDApWmHazc=T@nW)VgWHq*`Xl=*l?3--52{|{)@Bh4FB!2l!}{KET#ce6(qL|m*~r&#?1{zM<{+Eq ze~ru1L`47<2peV?GY9ORT1v`4!;5Wbj$O(i7eLmYyam;M^LD7vpWZd6{Oaa_in+E9 z*Q2#4O4KRO?La-l?I)E+KqLmRl>GB6pQXjgOeDHQG@EEZI)Akeo+^&s{IwXe7@~En z@2>hyCkoP1S#QGumxrX}cP&pC5CCk20IdlCk-saQNd*J|D*oCZP=&UR0TRmhh@Bmv zaw%3Sh|pV!ArQH^!NN>3c+|)F(_!d}Y^y2L!B5_VTi2xDJDPQrC(==x=bAV?%C<2& zLZ5uG!Y_4xo4CEUt{C_neQ>(9n>BcEWufdbL_0q!=Kdxq=t_kT?kh4nWR*k5-X%gJ zZt>2+?@fRD7A1FZw$*oHGxlj7Ih*H>ps3*YmnH@g-_C;(sN?2q(A&|BP*#xw^|7BF zklUBSTbcjuJDT2!)}%p;aZ_#e?X~V0?ke;gWIF`N)G5TvJFSP~rGk2fk2iX5kS58j zfz$pD<=#sY-84@?;%esS$`Bn*Zz2R1XJ#;e4%1#mof2&|fc%3%?AC}WQdNMv$18&o zs14soBHUa8gTtW!0pSW#Nsspo7f9$bpG>FpirDpa>dJ=2g@qFtEhs(mbcKr_K@J3v zfh3NDsF8r_=ZH6W@AIaf8OOw&w@B6o?Vh@*8FA?K;l_R24KX%Rw0E_8Rge+RQYv0c z%GBPxG^o3AOzX3B8}{k)fsrVGbLc(@AUeXFvDe*=>SbS0ZfalIJtk393l13dL>_fV zmuF7zLO;FbT0V+PGTEyfNZB6)V^q0dm67@1SU@CHC$uqa*^FABpD(29yXx?!`{wR> zJJNZ&tf$qBv%x4K?h^)J<(0mzttS=5!fw>8ovL&&)Y@;IhTDukoFWskVVKg?3G$%v zPUkf1jb*Rx0(~iRRT=(^z||ww>_CP^1vzt+CG>SegMyXcgCdw9PiQG zZ+i@718!sFo4rG*`==OWu)bv2LC4kMbAft6b2@qdDP7wAPv^A1onodSLD6;aCaBaa zW5ezn!ub_x9y484oAT9m~0yazR2t4YK=* zv*V&CU}72!8r`e1jW}$7++7o+%JM#Sj6rU%%R2>k(6~HhcKJ2x&yJA;=<#<#GzXLP&GYqkjW8f5mvntAdH|4G!&HvcZzEdP!(p?++uE;v;dg}x>AUj4t zb2tTAb7pfY6mN5+KUPWPtxBfrym#jKL;QKY}T zV<3w#(23SQ7& zHZ1|#WLan}lD33zp1kS-ra}8`ReXn^;c`Om&$*jwRqW2<1qCnMqe%^dF#qmZC#cg8 zQWc>=f*$!^*sNeO1VyBV8KEZ#VY=yOeE3WcZQr6dpg`YkW-)7Y$;K;Z2p#U;oL^TH zyX&pcNK2SwZoAXB+@AsmD}M?- zuWtA)bf#QCA>9N4gA+Q&jxHRf>1xGhyjgc#=qE z4?JE)9Lj$A-2=NsCz2+MnCAAPbsAB5j$Q*7!&Af|QTU0XE#uj4<-jPBPZ8WO{Dqwu zc6A*sxao^lPElCcmN_u}uKr2)^Q-&j&=uL2c|F%8x^D`EhM$sT{AEk8%4yMT2cgW> zg{B_}eLYWWlMpDEn#PYZhAM?dzEEfIA$5mT-YlQ^dz<_Fr&p5364n5!8SSn#*8f$_ z7<2&@oQb)4*&P}ZQZFFuhc><6@cE>h`6cv+G(d1I+geEIGS4=K2_LnEg^96vd0Au^ z9N(LGnf_8LSs0sHm0L|I}}QL0-?*;P4of#0{5&HkE5xy;(BOcjfq zCECgzq%!<3fP%zOn@`35^~AO6N+ps-cR&w1w65Mye)O(E0(1J57_y2OcDbFt_D|2P z6^F6+#a&TZ_n>kl(KbMkgc(l!Kb0qQrlGzT*Zwog`Wsr!IslwUhw8N7E?d7d2=6kKcZC6fEeLyXDYLzY zaK3k!K;q3iBn>c-fP}*jy%}DOfFPIVc z+`yM0wY!1h)D~Bk`Qc*>EG;lrX5CZzIl51RLRY+h6uw1OCw@omrclLK^z|Q4h@wlh zk;<_=Hja8a&`7VUn+naFy}j&vg9pesy^n18YMretRgfSGO-=}69IX>3lEjK-T+zv^ zh+sfa4&Y?(Eb~;6JTaj1eaFZFkFAP58Y=1l03w|OkXSx|=oRaA@Vv)q12s4IsnBRZ zAB>q*B?%PJ#2Ip5Kf4KFxfQMeqV4?8e!$lYh^~9eHR}kdld$-tposKfBAkOCC_U+K zuAzQCUSNSh4J(j$6D(zjdE3g@xLgmc$|lIK6HC+Rjd|%-Qu~K)dZkVG2Wp-u!8fMacR_?^WG1`6O^aFlqjxg;m{%mDZZNKji{=CAw8@LCw>7uAcvd#K{yE z8dmqiFAaeP1_+6GhjQ~z-a|DcVhC!qzNv?m7sKZnk?v1OG_}Bb?Wdu&p!4J)9tmq~ zrQyJgRY37cv*;9}YMVkTcA%tufhInpl{CMJs-yG&^t-!OFL^;~F=bna#F5a!G_sDe zWRP*8GMwK zErt~rEXkYJy82QSV-Kw2K#h$LX}NGE+pcrf@gYDejN9)ig5K%ju!6JYe|vmi(Lp3N z-iZ~LTeAF7)^|~qDw*VtRFVOEmDJK2kLT&WhxT`fGTPA}_Vw3$rk@T@-q(m&ssB@m zCICd#Cj3+~;Q!`k(zgIS+^Ko0l%P%Qj7*<>>zI1P*LU9&A zUl(z`xa9#%Viq!{e-7)c@=3#0cbJytSGSYnujgNv%Wk9Yx0lKlk_X%Jlsz1niLBo_ z4e^)d3@pbY8%xf9QzozT7-T#mlNOdcB|=6@EU0SX3wX5Eu*3-MBisk45FA|5 z5BRZY_8O`Zh-t%iQNiQ%Oa+fk-&3*yndWzca}__!`=@tm-36Ol$;Pm!z=2l)Qqa~- z!>}>fixY>F2zF%wu)#1|c#nea)PImwLv+Jf`v+_0mZ!c?LlokUF$3FwWGOsR6Jtr> zYlF$)drH3duQ|El$HW22{*`)Tu9Rg%0B&+pGZRE@$s}Wc+93Y|oO!YnoWA>v;1->> zrk8J+^WOi0EIpOLi)|gwcWW<5k_F~QYfe4}w>j^-C+q2)rQSZ5*3^sF8!tO!3y^L< zoamWa7BvxkM*ND7MR3Qa1X!JdD(t_yH}KU`-TuXJX3+mP2*4MC6}oO2$Yz!n$}96_k#x|E%%4RXVChkio4N>WRUsDFFs|}iTa8P$U!3vyipXb z?MUslNEX~$;0z^0P2Ey+PMqa2*ubT@ff{<-+syZ?1ZVsYBWR!Y9n%4b3yvP$sjT(} z&rcRS$i;t#1WqW6lj{Uu%9z3D?%m%v0xs0bBP17bO5kKXO+i}(c!Ist=NvJXRm_nE zFll>bRP{6p`3O@k77wPiiE73Hv^V~+zVsV+zpSu2Fa(#rWm_ox8Sx&73+QZ^5VULJ%XlHpDSkEZGX2M#h4On7Su=mob%3TVZjx&Htwxc^bx zQA+|{CSAC+w9tVFwnpVQzt89AvJlX;#K!VD>0f#hix)8kAsB6;D-&FGLdYbs zu7=kmcBUaWf17Upk$Y++AK2lQ{hE|w*c>Ha-P`xOhS;AD423iQ*S=0=OF5wh)rs`R zmLwHrSPF*aV?dA1J1~aYpGiY0rvT{1_vz4X)i#^Ao%`0M*`0e!S{tom9bDgc4lML(|v?)(){c7p{n(V^GR+IPCg-%KeA2%ZZagS#Sf>wmjprl z*UZ0GNeLhC5tjQJwq7QE3Rz8sC*#n9#>j4Z&qZ?*)77U9sc#Wh9Xo z(q#P~g96eaCr>q8>Rl5*_}t!7Bg5PuOdN{Tkk&{r0u(} zdNl-@(PqU)uESW;06l(qQW;F@iF|{TV_&tSK+TProbGOiGOS>*tFr>-ojvn|CFF7W zPoeBj%xetr+8)+uygI#vR2n3uX`^>Qo`TcR2-8=~wEfq;m6?61_r60h6D-@Hgd~%L7D%!55N+=a!_O-oJ8xAtT0HZzyy!BEng-jd!@) z-1szNYG;}&KefI;?{H-07}5M-p7o&}JR?nSlCdGLvLTaQu=Y7ULkn)aQ!9J_qh> zD_6vj&el*}*RVfsAvQQbW?|_?=&KLm9lgSo>%9-}g2IOosn7W4p(sGa6e@ zV`z5S;+i){-Fh}A=J51fWk`BZkF+#HC~nbE(}-Nx>;AntA$85ZO$B!c_BJPzR{qkf zK7%zfJO16+_XP5n0%!Nf_3v-UTP}rI2>5aiym~3wuY}YS^o=bB-7V-dw+V<4$aw{) ze)48EJ~I94xA4a6|5^XIC+ET)oz)o4kK3nh)pjY6TnbHWZ|})^tg6RR=`n$fEvFM- z-nS9z3+wHsO~i@1di2W{eEPSQ=uF`qtCFRwZ@n8i|z@3&B=$mFR|;qDZA+bC-8Nrq;1M-UoQyJ zSjN+A>qC832U>LDsmj5Ny)NYY-?!HYT-Rga>`9BNF-;LEfp-aN)IXh3&U7FML)AYK zx%$_3gQ+6|=8FJ6pPWwr%`~;qX-tivZTNJ_60Fams}ZTLmMIRr%<<``2lCA5T@H!a z08x7r$Je;Ys?_EKr_e_oLg3;QPrBvqs6Sooe4U|FF~>>VF4*|?Z|`d1^_;TD`c2Uf zAzf}G+E9>)Rr78Yi6z0*rhg2~NDjOeL8swzt^QpqK}gA!&%f+@PY$?OynDCU_>k>P zWSZ*LkT}VmmA9Alf)&B3UBc&xf`eC(A2CIzz9F`P8ua-o!*Eyt41@oD|NdxlG2*e` zwfBqda4D`H&U~7F4yBE%oEF-cS=l+wo{gu6`hM%7yqbDIKU{6&uQLYH*TKsL@TK`? z&KsoVBUpjs;EyYaKq1aD=dr14ayp9`>BZR5=^ zvH(XVqI@OHe?aT5lKbHFSbDPwBK>NdoCy+<2%=w}K4CImlH&N4zbk^~V?)WG)B*_h z0PUxxyI`&hFSWAm*aCeJhy3(z2FA?M?#J=F7<-G(9Npj3FLfH}73qJoUd58$3Osxb zWowF~oN7p}eriQ*iM$=$-^v$1K8$PtJ>o$cm_th#8{bBK+$aDpS(79%3S^sX@WK#>1|(I0Dl5Gqkl5oh5M;z5N2`}kTH0u z;RUfx${Fu!SvXqL-Cwoe0>iLg_u$)ZQL@a9&lkEUc_x|F1OHQ=s?pt2<^_2`$b*x; z%E~eBDfb`@qcB>+o2H(R#64@o(_j{v4Qf$j=~HfCJFQ_&S_eR*6r)}xyK|nPd8^;k z{&+plMP7B+hl1Ug8lx*^^HcY3>!p?d6lPo*P6kZCzgXdAmq$NeYBmxRw98mW8F>^?IWm3}E)2qe8$g)KI7aIKl3o2RbQwwXTPH(y( zRrW?TvCO#ZKa4g``j*g0fCUr`D)8Ye%p)-577$OgE2k!UQ@C1TOYt^O6Fynj+}YEL zHcM7j^kpk!Ed19tTf9{fcIYZR|GGMwKU=#y%~@2QkqOy@0Mv+cB}&A_A5c6V5C8+yC)_rO;>SeK8(gKlb2|5n zO7>Pe-qu+Q==vNG+hNr(60*5vkig?!SsA8{ne1tK-uNhe^t4rm`ff9=drURk=s?Y9 zNNWh=c_?zfCc^?AF!6JQeY>T{mV1Ea#b61PFKvs(J~3_tFNa_^Y`22QI#ru z8PCyCJh@bsc!@ExAMQ-ID*WW%N{qa8b(rYQt>)T!PBfO!WHz}~30>P#DcxE;%>>T3 zP;%Gkx_j}rO+8Xpd(R9AV2kg{PNr(Jn zxmD26f&_1f;d=i2xSUwu=96CY0~`DD!+Mz zw%~*~=lCg9m*mYrEHgYqj9XP3b6Ei?%0FId-Bp@idl4A`L3SFoZ*ZuixADFa`yV9N zp2aA^9u(Fs>I`6F>8WW=Ygol|?;xCu$m|EEHGeZ!9Mq3Ic%AKAhw{%|7P=V-Wgr&G zuu7b-3~t1CDDgm7X#0o@%k~Lbg>&oChJkYIqhhJcg&6;L>2OghEC%Ip6weV1-l3)D z%w0yRxFfRqYz$)7mgRZ~!lfM4KJB#{U&ddmx6w-sHK-Sruc1e- zoE6)7xra6t} z{fg4LJ@kc}=V&lq;KD9lyH}RxB*?eJZA6R>+VrHCD91x{61QwWfvPx`J&wWNDi9UZ z)NTknoZj+SCsjE|r{LLVHM9JyvP39+s_L_}&qnG?5hD6E{hza6dmPf@TInnBU`$HY z_J${+0S4dKb||m-!Qpnbw(l__me|d==#@hcb)Cl|?huceO(?;tje+N{rolghivh;m zouk|MestGm%U2QPKc}j0F%JSwkX=eI{%wG!^o4iszQfvruH(16pe#SXE`Mb_ksJ1c z-kf&+RC0lEwktWN40?k#u)n6NzcU@f%4Cwom+1@Jbsl(n z8z>uG`{uDFtnMw(ZevzsPs^PxC=m6vQ*9Z=7TcYP6PGX%@_*sy=hA2A67|FXevDbgaq;jC!v`ye$4Kc ztAUjH?HW;KaE2Znk&em21aA@BL)bnf4ksuM#Og#})pX?DT`BLsPd-LBsqKv=U^K}4 zK;|qzCS$%*YiBv)mSNK>P*T+VaUmT{5fZdkb;-g8v5fN5o1pPE|D`d&;}tn6lEnU} zd8PGsi=ZueidgC&nxf<-ePrVyq<~}XV^0e-KHq>^BL_QXbn;aQ44fa4lao3+d_CD* z7oRk;rRv$+v|7<<)Q*t`9qmp8Bp1Stgt0YF1KBU!e1zFHdXediCaR$KwnnFiDwCUf z$s2h{&H}H`TW@agc1lM+9>=S_RPNIj9kr^|am%ccGS^h{npGsz+w#o5+OBAOUJ79m zyu?p53|G}#SW%nQ3360;IVowTdj%GxscSGh%KW|fAhXg*HdbXO^kv6t){Z=TvJJ&- z4QPTF-3xS#Db0qoj;F=P-JR*HWfir$)%?cPX`-s^&Hv4TkrOBBz!}Ng|Eyc1Ds;Y8 zgn->P_)VLUyAVrT%4iS`g3J)21?d<<3*{=YdqbxNvnJztN9|-}QQ|WT7MSmzaewIB zfYoRJXju1CFOK#=v8t?UQ6?j~(Sa7~n`a967Jkv`O|}Bhu(hqTyuJpYpu4~^JiZAwtS_thVa65Uoq?%_o{wa0&fC5`f- z*vU1T`J;BMem&rd*bJuKY$v_zrE+iZTXdW?3~k$6^0H5-H^vao58yco2!$G>13$&- z_J0@*bpB1}#_*FGAGE2OZ2izF8q$rjkBi!ivQKUYMN>RBxG1_oBn_%fB?SaGE$FQ% zX0L_<(jO-eD*RlwQnZ=qj4Xvv3Y(jMBI@Z7Mbc~cY9}`%y_iQHTtVD5==K60?(71T zN3E{u%rCQL=yqRp-R`RZB$Wyj4GY?WEjO`=h(s1O>N14rK|9Qp7m@xf@b|Hx%l|`H zTII$^q_UZ=F9mTN0>5QFd$b4VtcJ_0$lBmX8$9BDK|-gwT#oarbvJELRfM2+7qx)v zkB&|W8mF*~K@{0b*js7lLV~OQ#UM?t}$HAyDItFSdwi!e>eE))XyWqolK!D9> zbXQ#|7AK6Fh^=)HbIeTP-~N3#$6LRdCd$2|!mt%DU{00W;;z(>=xq6sYpI<_1>zt{ z{-!Znwy`H`8}?&x(4VH=Y9}mVcg5rugqXi_%C=M7uDT=MW`D<8u`9g)BWdh{KgP#UZQm$#+jpElNQaAoqta2a6zEBx-1&0iKx7aF0c{4n*% z-Fn6Jj4O$Y?0sQC5bUEhF-m}xGX}k@@D-%Tx5|a4_khpf1?2t(#mlCI|(XI@GXD7NfVi8*vx?K z&T|VLt)F$GbWORpP*XTGG^_T_o8ClZH1LtdHJ<00NSXH3u<938ldlXbao(;x7{kgY zUS4FM&j}fTOYUoRTDa2x9tESa$?RB`%U;0*Qe;Ac*u;FXBHLy(b z(ZCXV&SQQHprrnln9FM=^kFZ<&-bp(McNZW&O$ z8ofr(j%l-sjqTOCx;lCqP@ga`+JM`y1C4)e_;nd#^VG6;&okxk_ZU3&-#bYCqoGz6 zQC5;$l&$)#xuGy>(q9|our0m79S=82VNsD|S}ddfGA)b^E6eIcU+6u*EmZg1Oed^~ zP!fGjK9fPm7Oru(i7Z%?T02X}ty8O$N2Xu9jW%w>y3BNkm@cpvTzzQSo~X@$`p=ys z?VBrJ{~CPTpVWPCD|8cDij09~cr#+fgUPq6Z4|CI)zzj~j;*A)NTZdte5bj7&>Q02E{Qc9IM)fORsW%Pt*y%Pp7TOBxCgGd- za^dKtI=VBQb8H@;ulg4+X%R7AA_>Jm0JSOFpdZ6$=U#pNAxKYyix_eH^l%6%txfIL zHn%c9KtQmBZeGi=q;^YObwT=B$^zzo^C5YJcoa-Lm>LJrWIrn!WAzyDhCwHH35dZRK`GQNEEMbyq+Fe(fD$m{(mt;H^ z^uBpf&{VIJ;@H<*)a^b_xOrx*w~Dm>X0)8rX!cL_rtGL*AZ);q`UGVKx%OJrl?7Ra zgn)?C#Rz3p9ZM6#1pNpu$;n9=0EmULgq?YaWUIlFvN=c(RZ|pCfr`&$_{R(F#p`*dGrj|G2>75K?Mrzid!b6kvD+ZX=#f1u764R0o z;%UtmlDYtI3w+ZBV#$;lJ>hNsMJpd0qGWi!cwKUgXqAoWynPG>KrBt0?U*jhgD#0R zn!bl4zI}v3N<~jfMl_02`RRDzY@$5cf*3W7s~Pj5_oT*E5Md%RWTE!AhmIPe)Pny_ z;=z|))L3RGQWtfActJROfxd0~r;zOCH`)^+t5cx6f$=KPlGv{*HI=TSzk-^n0cjEe zeXIBOvAUTs?xX!r9W$ppdh|E)xO$xC_Hf@Z$DESy=U-wkiND)74VVt4RmCPsV{b^g zv-4|TP$Nh#7ZDpg13+~4G)DB<#&CDXK-*SY2y6$`Eg616hTPbGOsq!mz^M7la$ zu43lWk35@|1)6~+Ea1sNI52;u)Z0b@7m}fuxq0k_9m{BmrtFd-yb>`-z|jslR*8_Q zYq{iCDSDJbu(6+&-#u;DUATaf!rk_RX0L8s=Ry%5L0JXcQ{IxsW@-12c*m~M+R7DsH8WgU8)|G?UpHerSndK^6mYnK=>;uZ)7npqDYF>c zFdnASvZk)TPR#O8yiDNbiO1bzX8Qir1V>{8=;nYH8Z|rZJ-J_ys-IZRes3{)l&JMj zySCU&Rr%cDDd}7QboDZ%Ga$6kKrRgc)<7I9Pa;fLG02YX+I$c<6*Kf10K!dB-J7 zkW#QP@%Bl>!AP9>$;K_3l@6<53`U+_;1h_VvZ35J!(gDrt+A(qA{Hj&An0}l zZ_c-0^CK{&Pv?8YPbVkj%3nEk4OkI$Mv=xP$PphUGM&{A#YG0SKTWW2Y0#bwefz1f z31rR-0fEx*fmHA5T0k;FBUe%S~Cq%ix2^}zR(tsP3w#~P|w_JE?j5c-aHlf)xT za(WwHa)HkBkkX0J!o>FjBLpA+Q~&gdq+S9O9=(BQD}z6i%U!nKbn^EhC`5nD>pkSL z=vQZ5P0Gwe-1yshNrX66G z@ZqEIlULczJsJi%t0kgf9#{l!Uqw6}!D4qaW0|ZIrS6F9mhLGXN2Sf(5Yq3Raele? zz8cm&T5E5 zB?*SRb{uX+N0kI-C|T=92~GmVwWJ>EJmxcYkmy%=X0Dvd7TOM6JVeoqaDKw<(`>+LK$-eIrlf8ie5nk?tYXn5J?gif`nuAZ@PdBNZxo4X8}x#m^jvnkMC1)fwZG{ zC-VDjHo!IUo>7&Bb*eRiWxhL|WUGeuZ7Axy zdXW0r9;bWaH<#K&`M^9{wX(#*jba#C^wiz5SJfMj{Q8aW?e=T({x8I<2ZME#N65*s zrVhSvTFQexxo)J<=oCUz5(kf?H)gsHW+-gm#y(X&U%n>HVr&?KREDtw1~k`}=753} z4oGr8PF+EJgu>{b#)5Zn=hp{4e82;e0;hN_^aV8veI2e zzfq*e3CISzB_yP*EL_LG*+T$jEu#)Pe;=j#$`~?>fv%ag6&vh2kDZ_AnzL4k=TwG6Kwtz-$z@nRw1x(1r7Y)8)7Ol%bmqz{fF72D z`u37%pY_XDD&fr^W^6x6eHn8P#4BKijmBrL4qqYRO@m=HjhD^_$FXUuSKS=3Yx{#%GYp8sx-tr6VV6s1n5U3&**w@u=~o1A&9jhw2-C zx6ZLO!8g+CJ=@JngaXf?POT@CY7W#FVu!!h7f1QjaFRN31lf~;zf)4mR)Qyk+sys@ zP#*V`h1UaVc)_LpW7Xbhde%$@Taw4QAr>p?)6KxZ#)soC<`Fb*PJdpRRfhP&ek=9Arj0p1cVJA& zdstWBU|qikFdyUt5Phzu2O$JlElHE49WQ^OWOKW1UcOM>yC{=!WYtX&x_WQ>X0{mL zzcp)AvNfZCVm|ZtSc5HAO{>gz4Npo`f-rtgvrxW%Yqn3ep|UqOJP_O2p*rF9>8~;Q zWvYFrLqpHdE7O(Lw|_N%Lq6!J0sf4Va+cA>B{LnwSI(V;STOypxf5WWcK>3*;>YKK zAxP97KE`)6Ko6!`?R}UX4CD(z;I4m57FczF$T~QcxXg#-8)2$xewlHvt>OPOR#Wro zGBxt&l}e$4(ao^RsvmWx48{8R*K3@%^YK$_?E2r+yAm*|*MpyqyR67!0Qp{#(#2uK z4B(2dzB1xj*P(o#ygypi)oCq?*SyoA6r}Cm!pDn6H`cw9@IgeBNh>&CN*olI#@jd4 zLwNn(6|`!^fyw|_>JP#(SAFT*-vGk<-29nvb(E%OS-GV7La5p5et1PQZ?f|J2(NzF zsx9+-@GCRPA4|)Fm4XF#&T^~kk?|)HpH`-v721$vp+DMmkoXJ$pDeUGj5&lQJ+|RY zm}A#o+?3N|)8RmjKk>^DIJ1Pia#B09eR6gg=gQNAYGbD4j2e`u890a~iTn#~xr~qqGY?xdmt3yrE_p`q zr#ux_sD%SRB4w}_Am#as$MY=0k7-Ei+8?CxlCyZ$%7fHT)&y}Ws8ai?k|U`w zBASx?9y&`sof};s#`e9A;@>D$Y!2 zs;r6LknmURS@EQ5nmzkgkXN?&MXoG2ECQEgZp$gZn_u5D_y^+iI`QRX8l;5RKIf2| zd;p6V^{z4ypU*W% zm3G(EY4eYmhaD~x*Js=MmAJtu$XzGNSUYTrcn8kZyWrI8NUNsLtSfspJbi2J_ z#q`Yr3AjOWp;q&l0~WxOyU!^)j30Vi^ z#(UT)hJDi>6uvY*6PC`Lbn;A9DvV)piT9KC!u@)yQf4=cxuFBKY^0P(<2_3<{W+*> z*!-Wrh%*|G-1{c9k=CZ?SbQo-M!JmxR~k&jlr^)6JZqYiS2U?*^~V2_;QDb5AC!Sq z^}%^S;i<}Od#7s=v1{Ow<)YH;dHKwn*_g?@0gWD-;{HI)jdUkKFmbMQI&c~a|j=u+uT-)gN6#stjFX6rCu*26QjRTvu zh-PKW`|Y#Q!**;}Hdxqae!cNYDBV0Zx}(blIC;yGebWr35@yeJnTAIBrzaLzPBbi? zuH`$@?ikO%+r~pBUcuol3l|06EgtsK18raR)Iz@yBGXS92NG=%s1WNPqe;XmQw+9XZjB;K zM8n+bkM>D`5!5BssWJb)y>tQbu<^-Bv9XVwkRa-Y?4({llRI;dI2^47lrPHzabglT zmjrnS)p0-(uGQto59Ca~&%k4|o<|0J1n==V?>+$_QM2Rnzs9vky0sG^_0P|58wyrC zA)^{g6(l(l5l^&=CvZu{1%42?v^x_jqt*S8=8L-!VNGHQhZIAH{jczTn&WuKs|@U& zyhpBf!@uYF>F_8qCF>bsMVi;JH~`@%Bd?0>Q6rd!9nQVJ(USFigu??WZub}b?Sd&a z@qtW#zevU(;gZ=54I(arSR#DtUVK>DoJm^;LqO71aj%*Mw`2=+OpZjm#mup zZNj?@B#A)j))D9P_yY$|`qC)=$QWCzAX3!M#!i%?E<13d&f`I+ke;2ZM*%&S;ni|BgUf?yN|Q5f-W@6U$6pTN2D8!aI#k0U^D~% z;A)X&ik<*xw0=o&-N}K^0-7!Z8&{!elPb1t`N2xgeA~<+s6K?AvE z%E81%OmH>{+q9C={LyeU!vrW9$nTwB>Gmm=5G;vWvM=e+A@YekGcwG`=@JSD;x%JX&=5J%5vkq-vCnb z6#j=aJ^J950{=yH&9^RPWwX&rD6c2L5CfO3bkPdhEKH^xO@0}SQ;L=&a@UDRG~s;B z89#jWo+M?1$7Z^qkhpJ^uiR8|O?QsMLtQ&()|^;;X?&{m(~rz&TDZNBgumSuz3Xz* zSFXa9N`v`4$nTQ@1M>h>A8_9UXOog_1-+?8Ep+9xzjtV18EIkvlm(yh2L46wRioJU zow!w{#l)^3WOm7Jq(Z2Y0dZC9zqP{o*BxM-lgQ+$XPX02|M1tdLkOT1w^OyZ7{GH| zD4r9f6jE58dO3o3iG}-JKmz z&<}6NtC8DAy$ff6NhdCCaO7%)PJkH1;uK+I6k;x4}6E~VkPr3{=!x$#XrK6A~Ocakz+^AqpE zzkiQ+hZ}I)@kCaucqfXTuPwEMxTWvbM*tfDGR)40sd5Zvsj)GDbX!;&8X6$oxAHH^ zDKKiS|LM${-Vzuk{T>PQ9%)HEbPG|j=hU(eqg*sD2m1_Q;7LboBEz7t7b)t<@(F2&yOxF;Oo|TL zk4#>WznOfOf8mELlF&g{rd(MdcHG4T$o~$YFyV@8#vU1}j4NbDxte)_ElpA2REw2Y zQUB`glXC}549d=iJy9glzG404X=*Xkiq%}WKU#)t9S(e)M>hBqXo{m0Hj$A1X>{8U zLUbEta8*0x^9~NKU04wXnyLJQ5ZRTGjk8)6OFq`Ge+cl$*B^fkc0x%n;XCBN(3A0k zMCW56iB6zEqTcHwL5RP~3_YcXx;4?g5Hhp}0H6t+)iIKyi0>*WkIE zbLY-IGyKU9CNoL)-s@Xyz0Wi2(9wtB=@P2@z^AB)sQ__fq$Y3#+x#>VAI6;V1Z00 z1IzQGudh#}c@yF9;OFpi->3Wi>y|&+pX|HOva0S=6{lBUtWBZgq*+%bg4!AKV#}eg zgg#byL=kf!&SqY1k*$$ue;0rc&yjwEDRcu(>)_Aegp*`0Lw0U`%j3KUiqR&HP!a>U zYKx<1+$6ZXgmKye-~&ZsH73G|kG&RnlNe0edxBh9mgMjiwgi9GV90wU>aQ~Wa+dqw z{rSdEi3(^NK^X24$)4@M51EPK_v`!=3Rs9lMOlGeJrrEAp;e{qSGhUOuMIXoz zS{pF}*wbnm;D3u`{6&C?(x*Ea@07r4@*k!4Da2#fGQ8rPk{hhB*IjQs&v~b5Q2P>Ux9=G@d_Jz z(A&TNmyn$8jWwoy_A9V8(WUHeEY$|O6>>`>eH#qsQxLc{U?H{rODUw$|HNHvYYcVh3m0z-Sdx^pYGV+6pAIY-HQbnX&cW4C>_S7S z?E-Ff2Gumg<@DFwoN%&tz%X`RZtm+vNKR)BxC#R2%Ix=zC+wr+Ib3A1dGJX+0A~`W zNeDeLwq0IGe$XG${ns%_9aW$Ns1II~EH3>e7rA;+b@yIbS^4`b>AfG zq$%0o$NVw$ldNlC;2^e7QF%P}2N2}iO-F;Psh%nfJ5nETC=V?0!L6>^IXYTsDA*|| z2I7L66G`L({z64u;J+h3XDr|!1%#ACh^{5u9)o;xJ_IUqtAw+~Jed0@eoAJlRDl=v zs`>Nlr^}>ccdJv+TD#e`v=ouTRVY%+&JfBh+{9bT%hLCuerCfQ45hP3UxqjKB|qSd zx7Xs23sg>HB=;eoW#SZX`;)3{^P8}(U!N%yv|4c!Td-qIbg)QL=uE6a1`IaCWm4jo zt*7&*JSKj=5^|v!$X9yuIxpOb5vJkzPDJ^O0A$ESiCS#USC}Xt%JZstkALUwzvy?@ z$&_h=%)$_BhRXcR?;mKsasfV~6Tw&RLa=^1IE78A_H?%=rcKAbEWuYeC^O zwx``+A##~A^z8SKK*Ac)isjPk7E#nQjgE=`qz}Oc)_u_iKRv1(GeqM5I};p}sM*cF zTD%-kAZ%!5nii5oL22w)+y~#C`jnNU93loS3puM?ruu`*tKLZ;^h2M+ov$fxo_YPB zr`bY0m{{oRN6GF~(Sy#Bysx=l8O0Sg*q6_ODnUqs1>c&0xfk-&|e&C<^gdH!EOEF%w~Yb7Cw<0ceW}89(00u&K-}T^fG(69w3yPwkup z00aAWb!tVQ<^o1Zlf*4aT~?-IrJ-i*lJZt)Wx_a#h`Yhtr?6goD%1axn$!0Dip9I4 zK&jhj{oVW85H;QA+1f5F!?Zg21mL$9j}tWF`c#eWr)vRiYMRZusmsx=oa3O1-J__K zIV5@)>@9Pg#14W_;r{M!u}(iZv8yqM)VT2)W`c-QaJ0N+DGY>K;;sv%@jq(vG0+Z` z*~t?W4C0+t)9*FkTs96E;L{3-^!p?>w3n>B0#+rpqToi#aTA-0je}kgRljaPz^-+h z06U|yr0!E|ZoiNP`>RI`=VBrRK82K&@E$2R5MNW#9rNV9a@#Gz*^x;0ypzzN10XZY zE*XriFPvFyHQzyC(lh9Mgj;P8%Cbn6tAy%EvP`O&Wg=-kds}x$?vd+CDP<>F0*#fPioHy7 zE!k-u9Y|Ks3IA-;g13&ie;t4a|6dzp>OPHv9KewK@nY4pYrDp0V`qN@yzdLxe6lc1 zMpE~UZ-DbDY1$kIDTw;m3}32`<=PHsg}AYDTXb@hDv|RD60fsf*HtZR?as zy~VzXE5vMD0?O;g6|^HipmFtzwJA2tt?Z_lp#(hHrPX?bo7x$3y_I zm%D51`aSRO_#X=lY=xwgI#6-O15hYKq{m4na-u6j3CGkb=aIzCI(I#|zz9wCIEb{& zUm5 z3pX|?KuE93jaVTMm~yp|?!pj(h-7od=WtPFTvYW4`inB7Y=iBd^y*PyKobcF9RZIa zDj;?RxQQeH1Q3aWVt6PA;P$^5TlXf5u=ADZUO4K&0F7t!C&tF!fVszNOY?mkK*-Hl zwc#yiQtuwiSzK)FARMvK`rc;}MOt|CuJ?^0)<`Q%2Qx|0;6>-FTDrhY`-cu7)l~!B zL10YOVQ8~}VN)v3UKX^Nr-z2RExM~m`H0hiWWcisZ{;{GI2T~AVGb2c=q8(et1kJX6pv6F>YOV?L z=~@J>mzR~2fN-@E0+Can!2bgQFcOOala^Ygo(&4BE`qi!t?s;IUxMjdQTTq1t7NOL zHqYT_!e;d)hl=Bah97O)zl1g}d<-yc-RTxW(41{`%}k)%N%}8x1>2^QnC|riH4tMv zF;EOZT=4XopuNzRX3V*(RNr=ejwilMgYpm39_rMrwqz#w7^v15N#olOJ2IUP!rOzt z`R6~eXIG7Vs7l;ttN&qFsmC>KhtjA8?B92Nb%i4@c~7FhV4(QwM@+|y%6sCE{s73bSgE)&+`W1e~8Eus%#gsq^C zsEqrQ$iBvQ=}UgWz$WRP0`^&v%(Mra!;6KfF|BYjgTF?xek%`ZZxEN<(7055JWtCS zy=XhiDnXR;-eT_+TWuh}(S+ksoFptwf(-d@6cSZ>!n{4I^V4j6k#$yZ=de*B)J!=xm~ZP6fLf7yVpew4kGb z(i2Ym^C+r*;@}@zIi~kl=eIG}!B0c8&*P_>#N%)l+~0nkl3~R2jnf9>I#T9R)z&CB zl-J@Y9l}5%yQr7$rpT4xt@W<~^s77|(p2j^*1Zi1D{tP@%(9Rf7hvv57YE#c+=r@a2HBK~;|}I-=v?^A zwv9viQ{>_J5)>^=3!7h{+~y;Fs_{I1Y)Y?h@0KV>o{1iRWFGjW?*lK* ziT-;PK~kWsI-d>k6z8`VssjJ}wsNghUiJQfAUBG#WvoWGKAw4JIyEL`Ej0{#WO$8; z^9%e$E0ovr@?+kW^M6|7xMQ@Kf}mk^;uY{%e(0pPO3C`U;hze8$Ro%REK7RfnC;;8 zG?Ll=vK4#EZ9j86Ug;3y?a1i(Cf%Woo^_Y%)yE zoh|Cf>i!IIF*jX-yMLHE#)#CcJRSLN;SdZY@8IVz2@lOzi2qP0(N)_~u$4~@jpB|r z*c%34{k(}*G?@NA2%mlViMqxPxTjm_aqem9htV#QMm!-ml7Hjz7I&>^ky&<>~jbnqPsSF?Lp*&J&+* z5_Q(=VK-|v*2x5kw568BS@Xy$LSPGr2cKlSQIx$hUYk1a42@3UC(o+-Bbr_Cl6O4M zU{I!VS<*W(ymY=!x zL>bT&&f;M#mQ9hXFQaJLG&Mg*PTlKP`9a( z0sr-s^54M;H?bi=9;Gaw(sZw2`n8aKpmhA}rLN4o0*BLvNPobx z->;hvRGaN}>9Ok|;VH$!M^k5hTlIwCbI8!qtigNy5k6zpP)#?OW6iGFww@#=cYE?D(o`Q#51nYw%R?%s%Jd zMUnDoGG@n=O!tXXc|UQn1meoHY)`IKsw;esJY&`4X0_P|DJLUwm#Jo~0MgenqlEah z@UmU~_sWVJ!mQP=`qxU-@Du#QKeN8=HmzVpN36c)F5cUn!~6Yvltr7NeR*A}Y!4a% z6zc%N93e;qHtY_VKu=ccsz1am=DMJ8?)As3P7_zH+US|>EAy9E>V0=BSmM&aL6S2(m^QD*VVx?B<1T-JDvKz&?o>nBQxcJJd_;PG$?ci#pdmBbzrahQ^p z&zY%(4vODOfM80juQNQhIiXdlNw69orH)6T_fL)sy>?wWRy#_CToKgbXhA8ukCz2# zony9*<%n`sT$mjvF_Y;2!UH-gxPPArH5fZ*O6wd*ei}2LC)#g%D{$&nM$Gurj zcKIlOT;Jh>UiRw`(;8?k3p&^4Jpk^K=A~?>d$hK|uNd=<%@#XUL70tWE#v-#&8(@` z9!)f3Q!nnd-3?~hG`)jyJG}~f{m6Jx(ivUKontJ!&{S&f*{*|rZlLO!`qEHOBIG|`Pbh~il7)=I`5rq4yGRq=u^ z(XV+$8(JP_*>@nKv=sOLbv-5w}ni1hhtNn9Md3nH+ zMABlTokf`0UN}UU=Zl@lIe|**`=B4C{Sowovrg%}^gaS(D%D#88?H;c`t%X)=R&*{ zQoJo!r~S0IcU_5MVfk{2c(sc5yX+x|K8Zdm?ihBJE!{Ti(W(hc?GLMmaKqjN4V^Dx zDtpN0W%6)74a>QtJN0U2lyXW7mgnB&$GcirwS7Zc-`-BwGEpfKMvRa;8#|p3+Str~ zTgI~_lMQTVj5Q@oau1F)ZY0=PhQLnC8PVuLD_Kg}M zfs|WEoOS$27_!85P=P1$#GwX??!riaF>4h_meMWkYXG3EK&|)i^vnh19La)y?Qf}_ z40A*FcF)hlaA`I)IEZNu26&giAnVnA9^hQgyROVOa@%CX|y0)tAWQFl$JWoPM&6f7dS`h&(Zg$M`PW7?j%pj zS(RzL^Y_$nbKpmht}H(ads5q6Ayi7DO9pMCeGSQDZ!KB*S@1Ym49DTJRGq;Rd5vm@ zCZwxwMM70)a*h^Ig|M^mSp{PeWiuZ7N{ViS@cZ;=g|FD6Rl!8K^Qqbo?SIdSRwrRC zgG|AbOjUrk0Qh^+`T`Q^Yde62256jK#BD&s)U`gjq90gc&2{Z~JB?-$cBldD5xnIk zZt|9AnjHOALh~bMyvw_t-{YNfG)N|_029`K_Rl-&I+oDKoW;7_7RIh49yvzC2JP$FdlynryUj;d&FKsc6- zt&mrJdqYoCCV&`$Y5{~x3bw-zmCs(gL(9xKByIla`Yg&DFi^m6bPkl)rR^}qWrjA| z%^r81sOv&`e0wK5v}EoGF9V+28?avaQE302I9&9vw5pya$9$utE?D_R!eXCJ+=6`= zNc}l6Su%)G6j`)e_j7I%2!{G5(xK;tuoSR>rlvd#F`qM$ymtwZUn_^g+h?o?e*Hbx zejl?b7J7i$>VQbttYOSr*urN0Fgw>pme{kmaf*W1DMp8khV!*IH&@%9`(SUd+@!Q) z*B>_&k3yZOppgxiarN%YGJM2G?)e{H= zn)fPpg@imT+WJ__378(YQcE}3bNTfH>>Jw)t!1W91~ijS8mS&pNc`9slZdvyt~nkq zXNg~;H~js5Yw#|N5_c?nMVfPKZU?ZGGG9h2PuVkZ;Q&eU9R3yMA!NOr{Z^CHcXd zC5O5)^VFZlMr(i67)9lVZ_e#qPiOQ&i5}aKm`iyA!2pE_Pc`_rQWih&jrWMJ{=zGa zdo2x`%bFc8O;#sXbQ@%M6nM*zSBJRh;;W9-4_yM*)SHc2FG$VP5B4mSGor;M+FOAS!E zzIf4zIjph)r_I@oYppr+x(a<9UML~n!=8*nbYO${zDdMgQx1n(+Yd99K72buQHu z`VwPMt}6A4qlaV-n9e~Rt*Sw#9fEwop&|Vl>6P8Fjt8U2cCJck0!z!d(39!{qp+J2 zn$QzeF>aL6?IhEz!fA%m>CA+F^L_1SM6l)jOp65(+7~~Mw?Oq-W@l)DUt+DG?XPabUU|(hlbE!RA#{XEDON1mn@LuO8zKgu=hqY zmIf2ikYPy~X|3JyZGATxZn` zaZzR$z~2PMiiWxMXwf%6<|oo5xlVp1Wt}x7d!e>5&5GQq#;%v-0 z8CO|x^lU~Xi~Lz;=mOpFg&n4trX^3Oai96OxV&*1n0g94xv1E`-$s)0FsAoS=H#j~ z3f<0Ul`d>`HfwTr;2)BIR@bM~B~QgdsQ6xOtFK#tDHyk&6|o}BgYN#tFu%KU!xPqO zb}g=ZYpy0-cn5^mQGJ^a2v1&w6M#rSY;vCJEgigxT}I;y;Zk0!>R%)=F!O^ zalw1DbCtlpU0=7+vs_`S-bvOhd$goR&7hm)Q2+%b3poIpTJqaB5kON>Q&aPz)NwwV zd-I~GqdBqxzFEBTS=rd{ck0LH&FI-k7o*p7FatV zFqE=~7!Mb?f3ge=Qr_Ctq3AyexAk1g!#%cd3HfOP@fM9s3a+boo=Wdp#GG;au;736 zlPJ`B8#NL4HMh6>xb@OwGcNGG*EBmcQhXiyVr#24rW;ye%n{ zVcQFN<@n?81FX}S^JGhq5-sXQyu{?5O#}2@&TBNq@!7`2B#3r$Sk3}^2VUfcfK^BX z*!R)%-2d=m3IuH5XJ=4?Q@lXL5A6VkIg zW0iFiJ&ErQ`YNpQPym;bEFd;n^@H&Prrs$JOybWSFaP)gEOt4V>TLD6v>5_zp?l)`OuT%{>Ev%}u^4p?cw-c=}-06Y>Td8Q6qT!gC zG$p+#w*!oV^V=UInuW*j@Wv0EtK^tj-3dOMrr2*wD$C3vw7Tdd7aeQSzMXOhNp_7RWYgAw!S8?qD^(^0xE?`k~c1hnjB#8@64qQtOs?FaM(Z=EpRzg8#g%gEDc$~;48^Iv~8 zYIG9yK3%VQ)e2?pH8!-e|M;Bu8E^r8+t1ieqX)p6M)j#O{TsTQxbue1mK82Ktv9sn ztfBtlmqsg@a%j_+bB&D~Lo7p9pD;+nM@yw+>23ERYrL9yk5JZ7|v%du<7 z%ut8+R)(gn4;kOW?5}^q=Sfo<4w=d-gD1QaKkihsjQsQJ=wgt*&Dab>m50DrU%O2U zwDcCu)iqWNIa^x@1;0&4=k=`ywh15w!;o8>`>Q)|%RLI+kysdrbqQAg+TNRfz*)Bn z@D_ToQoJ|yz;(PdeN+2-6K|E9?jPB#O#C{2pU1{B${`eFmTak7GVD;^7BkkQi_Qpndi$iJwyuvp3y1vam z#pxeM#XNLP%2VGY6ROHAk*o;!HCWeP^BY`C8fM<~2y(1EHmA#G%Go~Pp_AHw?T0_ScU`y3z}p16?dWX>w`O<5Ws}!bnSYb*sw+gdj2hI@1kqmj5iBBYc0&P|l~Z@!ldFBL}`|syos> zRL%sjqq_qV?>7Yf74t8bGjNvxl)d7B;^}8Xf@v;tfP$e(@(w&zBU)hbdKCjkk}i@l zYg$iz8GqDtn}xoa-+m5Vt2hE4wfCUwW-mr z3v*u-t*GjMPco69Sc6f%;O8px6;OR^Cw#9o^?l;!;59s-#}Y$BrsRk5OUNrG_8uKZ zV2|VpDg6o4-S7kNbL3ZpD=p4}dqupjT)#Qdt)5iu46f1t@#OcScj&(bSDeDhhJ+8f zZt)I7>x}2BgQiT?Sc#As-Ed|RnEoU-snh#wmbj}-k|TIQ4BndQjeo#TU-((DG(soS zdHMLMBQ^G@dH)*K-nPJ3(*`No^^rIlVFrQ-FdFf3Guu0UQY3ddY$CeaVBHC~`ru8p zWwEQb62NdF8tC^Dmmv6y3S|9+1|@Kk zSDtOt;DbzR1EI}YAz^px`ex#ejb=-V$-3i`M%4(62DgW7mgl*FEX*XNWCl`Deg;lV zo3rbOvG0V|4QFrcU6H7-=cVEHAx<2#4RjN7@BqHV*UmSCUs}8zAG^v|@9TMA%ks%{ z`f=W2FbO}Rdv5r(6D-{_rOODM!E;RLb!8pqrT;mD*xjX*k=+vRw$(KrKR$I7!gP%I{T(+`Yg|co8GSBRF!c7C$!DdYqI3- zdq&UD_Bh8;m77Q0T3UqU2TLh(Wi1J8!|)kpNL4#=t=!Ty`vYf{!}~E8wy`ZDgJX?C z@DbOq<(S!efGfm~-ZcFQ9`m8rJde2i;qkQLhYNt|#YbP`z5v#OjMrdrE(^5}2luYo z!$TdlJkYpkbQ}MqUkOg)$?WD>fMYW7#U~A@r@sLH$NKN{0YITH447d7M|m=j3wz_FU!_Zu|wb@% zN_o{&IlGxb;)UcAC}?^k$GDh=UMtnnN97@Kxtb2qzHIV4{)Wrnt&E#V-AB};q zW6mDOk1yO3H|~a7awTe=CF6deK$asXKguSvx-cO(*o8*4n5}o(aT$HxmHD@v7$_^@ z!!BiRD-bRJEC6=1Jqn_jA?tOsj?T8N@eGDusfMstK)m7?66GJ^N;Sd5ZKKWA>|^qBG=wDpiW346cChnpt?7M;4bKU?Y|OC42-fV_?++4UJB)#HM)rj^gti1S=MBSTm9@A-a zwmleV@iP@%B<==aQ8+#MP8aJW&IYHK&wIlIZ+#{mygjW2^FK6JK491wVnV%WaDIz8c?^tL@0sj zm=VfcTpSk!jr{xAVJ)?4bJ+y@}cT1O^ z!8hnX&AgOoXGEz4aaX0r(V;M;UM1R%Ai-IjGUwX4BFn|t*{|j^M8wLIAql}3>R~)O z;f;-zeraTPM*@+wU!~6)Mn1wS!%vDvVmH%Mudyrs@`H|^l}}doNl_;Uh`?}L$80X2 z?X^vPYSAh|Vff};b&)go2o1I5=NQgBPri^PU9~rqb&vMwV~6O;i7LGSUlsmp!75}tz_iI~F&Nc}K=eV|iB)k@a+EFpz{;+#~-9eCqAb(G{ z)wZR22Wz|Z*$w05&W@j-<{#d0$<(>dSvtNMW8(&M9KP|mzidwjc|ZmRSej%J_nSP>m{WX@F3^o1w24f?-r@8 z$O%Tf5-Xe*KJ*bjlmWu;Mg}no%vTcQcSxzvirn z1V0bF_siWiP`Pg{aa66PkPZg*h&Iw*Ilm)j^m7EvT)%Y9(&;{RFlCkZbHRA9p&?kHfBlAc0~h4J);bs9+Juh zCIz%T$IKUQYT?@-9nd++##e!sMD?z3tiDw@I(x(B!AfV8q<~>+Yh^U-y9@Y(|051b zyLKsSb8EQJGK$~wYn>{`-see;YJGkDYRKh}Nx$8b8*YJb^rY^2Y=l|bD*kB#st{Nm z_g9%`)n|u?UmqU$;lVN95Y)8jtzzKwzDrigq?+Qp$@7kCI~miQ{p0u4D#i}Jo`L6f zZ!zdcU3yA*BB`R%#&Tp{^1$H^cUl*0*9qxo#^SSINVnlG>16o0`>d?A-r+(~ z-g81AVR$fspy9KIp+@oQ-KL;8#$?b~F|aP*cvLfFKX01kfmrz$JA~=Vljmdoo(5zv zsrmxB)X@CS&wRGg2iAIY*?OW)9w#6A zY*jjK$&4a4^#!VFPR3O9B}$)n`sVl|w*!IrOTreszV5bfS&{bPIc7(n9bZFUqC&IF zeeE_1ERf&iwz#f9_@V-W>~2=&fl`@1hz@Q;2hZ{%tp50tYACXOBWJzATT@okw`>P3 zl~<>C(a-lt{}q3|6-VOfYwOzUcwXFIx0l{JI{hs||J?hCZ}yWP%I)Tx(M}q0i8;2! z7@%x*Sn+VQX=wL(=rXF#wpMrhSq(&k{*K&SiXvLl$E@}1<;0FC7{(m67bdLZNss)) zX&I!XxchK_h>4#V^yRl4UIr5?>31}7;S@|G-0)W!s^1qkC!@ob@k;AO=*rj;v zqS;yy^~8(AJc)DVp~6MazP@mYU){3zEw(G+1ecMv$ZmAi7=D?Y89R3F_zEMdfU|v+1=phZ|e?`r!OA9eip2q;;$^-5Z7kPV{*ebQqmM*U`g=9y*(B%&@&AV z87ON{SB{QeD~NN;`2ALU>W~Sp<6p>B(P`=j*r$UpbZIg|R*8?5t2QV5+wbtXZcb=4 z^v6wwn0{48-&fKw=S;zszRErRRgcgxe4bI^;-udYbbmGVS}DNiKogFTMe%9QiWk=+ zpU^<09KAG-P4xH(Zqy^tg1mXwoH*O<3hlXtpd#Gveo^dpKn zT69wk)rZqusFlt`z#6&OTac^AvH2i#4-s+Qb^I#tATORNRQGg2YtTTWW!;g9$CPru zg|~wE6oX-RmmNyS-PpFF8#C`B%{O@%)niusPGIHfd2?e!=L0UN!>GDr{kJbcA}$Y% zBQTPn_VbJy=+N$u3-v&3urOFc%1&M6HPA86n zD|aEVr*SnLZ=peb|4SeAKy3m_w^d9rE2?8B+U(OW&d6465+cWrL1sx-!=3L^Rn3-M z+n3s8yi<40_bO%kxdu~`SMn;5Ju{)4XIKJR=NRE?$x*sJK>PK0uGNE`({2SrDh?RA z$<1!QtSjrm5e37Yh#D1^= z{p$c8$RXo-PtIh&ZLah%JwBPsPMqAVUv04pIf9hoO;UQ|G8Iv3x$dGDP=u~ut(^0Y z!6-WG47(%L-EE%F!pgglGv1gQwUPkjQiJ>NpFzJ)8{tEa;qw!NksuiSv*&;tkskp~0gn~ImzMBE0{7>$ z*IDl&zB=L0jKZ_i*;%J_e!E>8$_rGhCo_8&#PF;NG**$AWIR)wJ5O=aTjMrJ!eDBt z;9Hl(t6~l=Ne&&==r80IwsAeixy`6o9zjkp{Ku%oH-_R1Oi}iOzoX~df(JUnBO*i> z>)~u`tWqM4j^WeD<>=5@+**5_^7%RXX9l?#t*E4n&v~hR2u88f3%ET4t{ z9OE_`+tR!YQS{Q)5>D@F_7AjKiC0(IwRF~1b+lF1?PQRu*mOQ;IH>iaNACP9_#V6F zb%`GXd}owOO>{!-kI8Cpd0E2p9<9#wvC6n-mV+=if@ zKp=f|f zj^0JqE(t1zXg@#Xmpoj9RSORF#jPn-$ID%oKi|3EU{%p^9};@F3F49g)3MC1GZcIT zr%a62bfv05#`tYGCvx?yBEBuT;|mPe(z)?H`r{Nq1}jV+iH|B1?7zh*wffJ->pF^; zFC;St-|u_vz>5)Ux;3?crzr;V9PrH$R#(v;T`PClo{`@v3^B`0y-K{>%rM-p%V0E$ zj8-NCJmEQq6sr2u=Sjy4KN?75m6dJlN++2&+5|~FV9~BZQcX-&gYBAWM1|<<69v-M z7US<<##Oq_&gZlyXduC-E9FQneBR!3&Cp3@uo`!O#=fS9g#%b`B9+i|iU7o3FJy&U#dWZvVYx+_giC{g|dhQl{LSN zsx1}fu*!fK`1#4ybsWUX(iCNb_7!S^>~ktTf6-Dh+E_U-S3MCxH-il0NkO1+52>%h zDk}|tb+2c9@fYqlluK4<>;?lmZ9;~KtVa|#;(>y{7>(*%0oN~>`U*I0bNfW7-pD8K z=N;$Y%N(^RDxo&cXoCwg)cBSSh(XIJ0zAIz@)^@njr6F!H+u}(#+S&v+=B@wen~3K_I*-Tgp&k z0OQH*=oCpmp|q+X2pr@O8f_{)VZCCf`}<_zo5zWQ=H|0x9|&j$|E%c-9YZv>|80|{xs9Kh^O16as%#)j!;=h;_J zoMRqLx;^Cx@Xsx%1X92yKF+#%R;GCuAsNH;@2zCvgfmUINsy}_Fj;KWOoT}_%b(&O zW)KE2!R3O;=R64;O8#h36^>TvaP+&FZCYm7pnMdf9~Qi%bG-7f3#$~`Frruc|2|sa zs?FRlMOQe$$g=piU|Jav}(mue$iM%qKzQJa^-bKyIVV~BfQ~i=cE&*H3EXrk%QN9WxZu{71JvO z^V;g#vk8WOP&uF}K4!NTnDO;7Mc%}tfD>FTX!}0uaG<*^LMi$F;Go?4x7oaQ2ZyqM z0x%M|53Y}f7vtJM&q6d4q=99`=d{_8>V1e&+Ox4XRl6Fn$xKNf#;coat@XS%xkuW_ z$S`F{K;f{M5L#5{?vxiE=7bT^?~Ulo8NDN3OiU z3?&9z@bPs}&;`;tpjuW`$#+u8UnseXT;ia^H50oLi6QacwYwekqm&r_S>(^#8k}Uu z3EFcj>U;YcOYfAVKT7}bu+Ox<1VtN*`O=#-35_r9ba2gH=bqE|xM0t>m~q0VT)nXO z%6i-AHb(~)k(WNPobdOgPFt{Y(|cZOR^8`SP4&O}JAXq7{8zY8X0c2aFIE~r(29gw z(V=ZSBICuI+XDeEPTPk@)L=}v?MRMNEV-8P%mp8)l1UQiOU zrjGBZcT;J`${OD5M(HZ$XV&Zekfb5qR?guuSgI9T41&2zzyW}?40pS#l<*)wBe&1# z^*D(|%vg4ikd2L*9H-9`?T&8OWqZ=~@jy}75!i;5m%B`@qlv(LD!p7qUBi_THD%OR z@4!0F?V5gT^-Tv48JWWLe~=r`$U$rK^oYmtogAm9SZ$gvT6u5bg_NV#mIV|49t-q4 z<912u;5&!vy%CQ^0R}&7f!c7Y$ zq*@YEHmUMTZKk(Ne3ij<>#=X144TOi4H+xf=F;)K+fM%C@Lnz>u7$1bVvxaoD^|j2 zi6`(E^;3$}%7NRN;A)FnIB>q(hNWed3g~NUkpD!WiSk08{tThgxHFDchR~m%#Nm9W ziJ91M6B4W5Jxnhq-9FjVf{jiOW?vM|%7Q^0+s0XHR;FM zGqh>o$tqx8Z-uJ|U3hNmQ*}j`{<#{F`JJyWU>&SO!bC{6ZMe^0Q|3B)qeBz#(`kb2 zS&Rr*+Zx`^5IE$?ewvQJG-X2yXGv zL#@Gq($l-erqQXJd=b}fZQqy?D|>mt8oYOO&&SI(+Zh_i?v*ns;dTSs}%QNWNea@xtwd-T}2{}?C zurG2g(SCSIt~lm#Io%35tx>(6l@=PXT-|rkZe-`&h}+7Js}+x5*xk9ZVpv0Jx_zRRrH|&lZT^|FC^*Caf$J|U-o+&mf~V7x z(d^k)sKzDU7DoaaEsab~tOfRd*+eZGvfkf)n@`({Y%plvv6L!1)RdMJc8tE?@tMrh zQ1{Utc>~|JKMZ2}g67TB^)%-N0)I(3(QEPo^I!6{#9E<3!Ed$w&IBRC{n=_Cg#z+9 zQ?oBZ0$e8ls8`v&J9DJ~dQJhJx&-DKtyen_G(hT+I*Cp`oo9yla^C)zzJKHrfQ?w zPf>%^*~q2lufpNfA*uT+?22WhVv}_u^9_llK)_x4ZA$aYIUTy{w+T$u#dUPj`>$T| z<#Vi26|5Xf`z9Hhs#*|xYs)ERpZgN%bP;xAKkPpBDh}qh^83*_>0Y)6E{d3cR}HIe z<;fFPnO8Xcx=A`!dA5{ZVs+AksB!15x?0%XZp#?G`uKJAkOp+simE?j=}lT~Sj}S5 z1;f?RyC&;}GKuYe|7QA3tQztdH_-8()#yp!Aak^qOHg{y@ip!QXNrI1%!S~t0KEGO zB1$*!L!q8_uXVBW==ZS!*gX~_Ry(G@c$l*1#%ueALEl-k(EAIQ&*7`qQKWk@S`A~q zZhx0;+v=KyTC|f=b4j7AgSO3}s=W`Z+pGKN-aZ^v2MDVk+d=eHD)-zsWUk!5b7u#! zr=U?9dyWNsT5J1l2X)X57sS)}&K(i4^(m}|IBbMeMtpeu?4#lfyfF~aLA7{llZSrvkG42_QzC9m90OjgiC4|zFJiU zlqlH-+b<~vUkH>cXK;P&My&d(s6uAB3*2HQWmTIj-!~XQ-M2ACDSQEw3Cp5e`NZVn3yHt~()6H1%6z9gN<}h9o zf#N&#`xHFK8i@GPs$hR+VQ4{m=<~ypoFzS)X82RSP>0Yub93{xSPgxNo(Kv+zci@X z*f0j-*gAJ73mrgIN2dw*AcJ=G`+N2t7P*gw5g5;C0n*nfJnfhe(ig{`wo^JmlJ#6u z!{5O;?x#ci$76Di8f+5SN~)@#VGyI)a*+`ZP^%2N%K;=G11x*IgVMU{H=l=@bXu^Q z2EVJFh}&72*DpGW@OYfn?Z{o5*)_OOoBR2!-_RR18~(ac^5RnesiH;t+U541Rbim!WJw3kM3aXT415p-k@lFz>me6T zqABB-dsJ@KHvtUG=k+{%-K#QZ99mY(a|s5+tmL`~p*H{pQH= znvwn8*7jQ+_=$l0f`#U`n)J^2`W)Ur>H!hS&Ohl218O?`FG4(7YdsbS&CS%sU{7AHbcBqS(qdKLr>sfu*+R7e1EP2?DI)TJPex4AKPmV{Hi*R^>vUJ8w zSW39}XN6dh;i|^wLER^(v#GNUQ-*MJmB7*PJm6i+fRH5y=66+&EB45KNdGk!ivCh! zJ07RI+H(dx;)hQ+O)VkXsy{vE76r}|ih5C13$x?h>UK5W4O3S!v{yE!QA0km!>0{J zqkOWr;_nb`$ghr0%|K`Ix1&6u@x^(e^&?n{gE&7x2E~ z)OTM+N^u$%+@35X^1RsFIW7eekL9*z)%c+YLRRGqh7D$j{c)VG{E-D89j4ks(zLJQ z=&~61gstEjEt-oh?8LLv#O^^;-g9Hm8iSrco>hU5HcEDrro{70 zg?sTfSEWrzALqvPK_;7Vah0G!!)We^!5^ZfwbY=SnWiU*H-9S>$n}=6e0&axPCcWZFbxOHv>rVrwZwZK&ZdHGVE? z#b-jx?Iz5JRZK`WDUMSOS_8>{7ob&B^HHND?N%eH`=A!xPl)=A=w@8HU*;veHoriy z7DE;ai;El)RO}^*kq?F zVRL91_go@gfa>7-n>X9$VLso*tR{gc*T#HH!61I%{>^-)3_6*Xoe;Z$K!r#Qua9MF z7JCvjAzZhjx2G9iL8jNvC5WfM;{P+&0spPC4aTMx)&NqPPFgOi;q&1IlH$OphWV!K z=M92+)R6;pjRB^Q2%AV?kEeVJwEWK5OIJs8B5%$JW9L+J%XwrjZ1C0x zY-Ny&omV>RcbHejA($8$I&2ej(#ir88xE9F2}1>sTe3j-39gi8tZ}TG1_AGLLnRD; zziON%|Hj+EzvjOT-Zo-CfLiwrk1`$QAA0P^-|=UH+^JV@-%8ioE|$4|{ETKVr}B!% zb<8cPBB4aTU{=FO2wulv<+^T}A~RfdJ0|D5Pln7$BE80U<;hI$s10&>-@@0^Z{!Fn z;Qp}KxyDpSvK}8aC~MCWv@4PM4EHr|;!@kuSx@rNBW-P)XwRDV`-qHg`!8W?L`3Y^ zsdi^uf6_6}bDoTOs+^zxcZEmGz75pwQ)aifF4s;6+qt$`Y{CArUqb`9#RKJ;0u_YhF&Yu?$%%^pUP7Ex-C`xS z1x$ZsXQav(##(LG=QV;?Cij(jIyfg`n^iEep#+;Ywj#(E1@#I z{15zJJ{4wrGs^h^8`bTB_d;QtahUn)?=fbH!hQ+aP9`9ibw^MXLYE0Nba5`G#k?+9 zkugXS3nxQnE6qOuzm5BT^|TV$jyA;zT)kNh{|9zcg;~;SOV=Uwbjr7zPa!E@={IMT z{D`%bc7i(V=oF%=t-SZ?tX-J;E>U-r>kVFs<{yg;>2pwOn|Oq~Ntjd!Bh*_)&NkbN zYZrr8;w~xc(NPsspD`2{rjmD|#_ivk*Ix;Ejk?W!(C>+BEz$C8CG@_CjXR}6MqYZV zd!P8QrCa*FeC^|-@%hdt$cr7eY2*{440My8!`)>^udV#IXLQY98s}H!W0lV_*$^J4 z5w3o5YcAdrUOy5BzEEenerVqFn=36XYULGr`LQ~UU+rVEhdfKMBvD)JA^gX${eCC~ zPI)qknY?>im&;EqUyjMAcfnbpxbdr+-I&>(q1)C9OyAeKnWY~X)}}kTG`prnvM`G) znqyD>y(X2V_)=!j>U-5A{t&=xT@|=>eSLj(wH7&6ZLM(!{x|Z_6P*?Vpfk)%o=`UL zqjnU{YAb>t(a~Iv>#t&B>jM+ly2CqbKF)L6Er|@K2;#wVT=d))3F7#s)F+J<)0xh#-O#Tk_r!T1IIW#-{sOx7nYg{f&{0&x4Zw6 zy!7D*nS06^ln*4KidroT@6I;UMdhH*Dz`RGv%K6dlg}>~{L+Tp+|n^GLX>A?CmS1! zmd2jDJ?4v+Iw+nWWDZLpT(H4k)TJ9ljjAqN%g%zNi{tdiJCx3^SaOn*@F1B!usfWL zj)n%#d?c+4{I&e!Jm1;DA{jU%Rx`36FrD}5%qZeA5)FO)i>Q6lRkSuh^eG5fp^1W+$@9yFsW(1P9ed@V;w{U+%Pn;C3? zPtgIhr9jQ<^IfL@(8_1JtyM7Z>gN;Oun%aI!i^VHc%{2ZT#etZw?$rJOnp)8<+pg| z20@93>zP8hmJ8s~PvjKT*)WCFx2Q4=?`epWHuDtB>C&eQrkF=oqKswOH+r?S4u+-- zIhuVsap4<^dK52{Zbq%NZuam^E-ko!Lu@=S`w|D^w=nlAI`rR()C-$VG3 zji&Qvj9xTH3s+N+^8Iuj2jL@wBcwCgjcBq&qmRGuT5f~dxYl|dqH|ztvRN3W8s|oA zZ!tk>HH9Tm{buRHL(bng)_C+a1+(29CKGo|&HY||nEIuppZPhS&W3*||KS(}S{++S zrs1{D7&3Z$$t)s(v3rCCt>~5-*WcrB5~bnB1z?a zZLBW-LZ8>InQQDN8zhSSU~T(M%y3`zs#h3(9XQ=frl;_~=UbOXmj8lB`EJYwq^YiG`wIA*gESll@X+<1Ge6E9BW_=bB=hHbY}6t?tv$ zix&JymrF%Iee5~qvb%i}GrN#DCN~mic)g?>qdHT*C5=5DrGN5z0*YuWUh8op9ErwwOt*r`NVN>aL9So--iCm$bbwb@k-g+ zvj6$xj6Z<+!}K*Cst}Yx-tryI_Vsx)X}Q58+vn(cL;bw(_bT!>Zd`A@Hm}~s7xiJ= zq!B4bEa6c{+;9{<<{$d{CL7s@xj*UnR$O-HoO}VTqQHD#ruQ>z@FJ3+%s0>BJ@KF? zd^(D|GA`siA-J$wCf%T>5Q&g)& zM~Mo9>*uWEiwC!)eHb+O*3J^A(=}&t*e94bdfg7kg`6WEZ!d)?w(bx%l|sLhrNoSp zexkKE@v?swrArlec_Sg<)i%Q8BZw>xclzTw1X2zn*<1@zxF~!M{RNJEHJ9TMmTKg% z+HVZ@|E^u=JbpG!T4~cutZv8rv{JWX5T%U~WIES%0yVf{XKht< z9!g(4r_klRVb&}bs%-tFq@?73a}K2w7Z<0UhWn1aJ!cN`XNX@|U`J4iM}Q(E^=WQE zo|42y^uFD%b>I0Je{{W-{sDv#Q9^BJ%4pKO4g?pRA`f5Xk2M9|I9c-@+`GP6L3;iR zG1K$m#Li^roBDb_;>HB};RN=nDtzS9MH46dT5fUIiI4BDjn(#a1^W~^x&i;4Cb4*# zpqPPj7mojj9J^5GBGDKks2Oobe-B5Szs7>NN#st_7yeRcgc{25%CC{E_m4L}%Ttf% zf7uj?7^ZwM9(hVPdayj#>|kpPZHwl|e0s~Ps#cng&WmRB;#*cQ%r5>jULPKEwmbP$ zr`C27-LM&OCijE-E$?3=slr6^^73Nig}W!zAwJVpD+G{~gj3Rxzm+SZL9w+%rs1RS zO&i>f&>(}*Tw1S3S0>?@go~lCJNMUc^B>N@<3-7r6v&^AL?dcPBsg=Q@5KAvynV_5 z0-l98ec&1eahg-0*9u6*&fXDu`lAcrZN6bTVrk|ZWkD*h;7yH8jtx-32sY@LR@7&sH)s1r6 z7#_RY_n|A~?f6WIyn z9G=TWcK7udf3C_#-IB)`>+R;Rby!W?&(ZEDTF1=Vmx;JCpINR;D3F1tBeOy>YU z`FD=|L4)A10hU}CF;1d^zM7}nB%{_M`{yV>e1TQJ`h(4tiq}b-B-vh4^k@51aCv`w zPgNu-e(U@Vphk|a5bAKlo33{v0#0oI&i2TIUq9ufa4bd%Mwg>IW%f9`d5sOKERjn0 z;#;u>N?S-Uwg3E4*_e}4BZiFU-&>w@ls9~1Y@@zBaS=|#DpGrnX@GDpZpW0v*erF^ zVlh?q99uFn3`9V}lOhnpzl7>uV!_|D`8F89*Qq98+voat zwmqhKF~CY@doQmb5BK`stvG^Dw8xFUB(uQtUey{wGY}c$MBZ{hQ{=zZiR+5jdxWL<@Dd4_0?Db{zN$O04u>M43H@ZzQkCy?bJ)OiGx5jd57nyt1n zKYl7O8dmq8?>T-Fet3uSh`GaCJXP2BRM3F#<CjVE~Jv8X#M0h3fSU$S^aChlht|tu4jP+4s;34&6HJEGC%Ote})^ z$eO8LRkV^JI4qC3Cs+RCQKnVUR&-Lk%`t|DX0dug*46b*AqOFgXT;$vZ$%9kpCBRT z%l-MUAjqDSf5AQwI^7IYD(CscyYi&YMy0TfHu_^>M6e80zk=l(Q~8|X0OU^Mt3KH& zkD^A1GqvSA+PN6gor|_b3=DZe?u57r**1#Pd!o|Fst%j`0oQuTWk{e9bb8ABx9K%RLtH<`FogPV##;z3LGsZc&&cQdbHEb5ru#jR zEPJ0~G`Q}E5b3+a*|l6V0>Pi?VmhSY12iB^Js_U!wBZ5rk~M~;%DOwGcG1tR9(UVa zes2yp>;n{@<9!0g-F?!?DTMHW?Y|qW&DTh= z8zw@#zOTo=Ym8aDuUANZ%5oZ>;Hd=|HDHS!|HgAa?jqu{{6nAf>sP}sED`{!)^w^M zt$+IC4SPF7ylOP$v;OthfFU?vt&u%sR(Hz0zuSs9v6WiGs4B?VNoQk3!QXQBTN@s2 z`Ne(g;8w-$iyTi!B}q`>)14sFTn6N@>zU2 zE%u3e1u*iS(-G@P_>}M819rymy$!H&CLx2gg(OwnWm$=d3|ttjHo)pQS792u+ojYQ zgz-JOa4jhAOjsEsDBjiuZY2*g<+qv^_u~ouB+u}W_KsGDrgCr1Z)@>)c5t6Lg*1C{ zp~(7-*nYe})mt>q&rwtyWtVT=fBt+x@5n9$e#A_q(t>0>=EY(eoVx8NhRc$XeepJ! zA9H$x2ZYg85xGKMe#`X01ILa8EE6VST6WBikV-pCc-!G{&>O_8F*`fWeI(j<1w?wNA zf`CNxa2Nl0O}PB28b>Wx%h`Z~*4ei`CM~v7@vL_dN@9U7dw`2Y?eP2)$qde(d(8r|_B5cOWC1pL zb=mqDF6wo$0(|pgkHaae7M{|oqFk$=gK67Aq$ISol`>NNLBP?`ks1|VTKRW{>A+Dh zUF1rfj_o&>Q>HmYxL`#P7Sde6+i^*u&c{4LZ{>D)zx(0Eg;@wT*T9GmQwIu~$U{h*Ct|ua|YO$WQrVDs4uQ9i@9>7R6E=q%jyL?K9vp-4N2X7$Dfj z^jWRgh_EO`a>Oo=g=%SMgp@4nzw7E7>MVP)7B>4oycFi zk!$DD{y~j{LxR`JQ2_IM!cZAtC>1b)URfDO$n78uhy!a2P9t3)S%3n%sa&<6gt7O? zGF6EE-ZqiO`mTqNp!{ZFobUkeXk_vzZZ;-jKm%hsc!9(l!Z0aMp- zN>79gUWp}|>qo;zEZHB9XMJh>GLPrQPbjfu+Bsu!y?=Lgtu{bQIswu82D0w5fcvWM za>;9~NQ*}VfZUbM1DG{h9Od4E)e(7BDH0m8QOLVIE^xR(_;4pM6NG_?ZzGULd$n6w z3Jdp!)xYFS4!?cMEEC-P)*w8)rt_1|A;nXlTn2vhyQYugNS8w8Q3;f3=T!~Vz0+#> zS}rE07Nz^5pEN;5W2iE>mek`n)AaraTnxbA4sZBAM@i%{R=#ncT8qhAo0)HAs&gs1 zeok3r})ol!biTRKjZ+@8`G9Tp52s2!WT-8#P zg&q~5j2`HdT6NDP-Uq}BRxsDO1PS-5zfTp-^V2eIuD`;69I#bGyoJ`BweGbl!W~=Q z%xB7;^{Z&#CiZk5$aUg3g=d_cIKp@(pdV5|Z%}Ua^|?Flq3Z2Lm4c)P2M4Qiz0?vV zVXS?qnYTR^eyki3I~7j1NO4#$Sn!O^CY^dg(4}VZm4W7nd#TBex=_*?GL>^w zj0FLnWDKdIf$;}p!^@PT8oAQaQk8Vyjh;3|u6|~%`|=y-YHG8h7rRD9>@MF`Cs!2d zi`;weFJ+g%e-Rz@`19DC>-h?E1bu*fMA;Q@?;16VhmZ$UUF@F7f6oORVpTS?xOj|j zVPX6|Z3KX(5OXQ0!PuwE#hzAV4_`6{P$gva^(g^VH*U7N^5BbY$ep{_%7!t4E@ze@ zPwqqxFQ(l~X3Y!k45Md01KPOfF3tVof9H9XIdtSLMnZFfQUi4!27NR1=Z~6PwbE|R z=5RT=lP2C?KMvZqePerwKXlm&K&gFs=7Qn^D3nWx~ zuUCQ?qR>wliKLP%809B$^07evKoiwl1p}b~=F8K$=ZMxMs=Fpy@uNZZ>d0KFdocA{ zLM@t9KFk{+Xh-o$alHI|(e!GLS9pr;NRhLzYZiES_paD(N~sPcAXWvHG!cWARkqDQ z@{Zer3uU3wi4G%ipR&I?GHN>Nc$#zyg8e&{zeoTtGfe_D3l7etd)Ut@)}X?GpC;Ui zoPYs09e0zJ+rB>k-u&d%5L(khRIX^~K54kJ-OHGBH6a7cs=^Lbx7E#3C65fC0L7%8 z=Tog^Ue~wRKG*aVzl3{4{F4mTnMy*;F$tPV>)0DjBa#o*pGdp3X*rlQnckrY>dv!| zU?sLXV$Kc`*Cf|guinylHvCZ!S6bqtph83Xu=?y(5!8d-VvgVS!wNfC)nR9p#q2^)5FA)R^x)?wT#X}U5B^|u!lyVcds)}s6EJMDA z8`J}VK+-lh`ZCz#7t=EVG$VnO`+d9sS^TG8JIFJbo*g+7wX(YLOtREd+Rq9H#J@j% zt8X#F6Ea2Arzh21WP5LTHvjkCeuAwaYTe4W?b@G07UKP<4*I6Z#W)DXV}D$Um1@5j zOAht5;K<+r?IFyC2V5?z93_kj@EHLYfbNb$05my%k34Ls{ zRbHCIKp9jwoJ2XWBqfb4m3<><)AmIXf)eNcw#B=XP1#B{>h%b`Lw>pK z7q0z_U9nwqf(i$Ym8+obs&)$vFCAZqkp5p^o2rX1hKEbdS9_HsoFC_2qzJj7@g*w{ zjN$4FcDx13{e#*X)%}4Z)77qCPKC?R47sYUKVl<8Hsol9sA`@Kk zaHQvZXTkb$w>glL5PKNZGTa{d5{4_pq;z39gxmtbaN z>moAn4gh>E8>Dz^ws;FNDyD_OB+Uj(X=&+6(m*-hP$TX#fZC1^WsJ&1ed!%?xGv6k ztq>Yy-HO=KC|I{8-I(BP73`AM#4tHdMgHexTWqD3W`cW{6Rj*Bs>3&mYW~`T22*`B z2aEGGb2QBwU$*24K|DPQ^&QDA+|j_|&Gb&uQ?*phXgD2*l?}9JWWit=HI?Ye$GZl$ zfJ&6?G2Fy#-IDw5iAz_*M}v~DKiV7dOMu}$-TUN;*T zL82R%p9)apA=CeV9O@lRZuxf{YDmKgZ3Z+pAl{l+pzeI>r0}q6Jt!c(_I6}N{~2LN zYyiO?Up3f|fmz%+YyPu-0VN%`GS(-V;%??)XiSHxR7>Z@51b-U%bDjQPzT2;`;)ES zf|aRyTkTixzCHKSvKT4sADNeVhQP5FqpEnE1otT-mEGlW@hoL!4j=8Xoh3xUU1VWl zBBOcHT2W7SIDzTASYJ_!0m~FgpG+p4Xk9o zkCM=-;$xt|tquzx{!SC^W){&0iZ8H^P>YLGSz21I`URMGDn%uG^X{(BF6J;=&X5Sy zi%u1zazrCx7Yd;5m>xoA$pU!OKmU}UR1m1i9B=aqAYjfGtRaEl(;-fqrv5;7M_jh9 z<}<*z2cNR=OH{nN+^)8llO@7BxK6IN(+XqsoC{H{8B@S@j~J+jFy~xWRTVx^juC(^ z_!ZQy`Tz{^yh3>deb#wnk2;_BXTKQfJp-HbahzMGqp3$O=$^EoU>X9>(ar5)>oJIq zq+@3v{@@9Mx*R~IGvewHtCS?tCU`6TBQ#XSm5o|2Ydi3p!4aAgmOh+6+i!H*0^c)` z8vWSLLj4z*&t8?F(vGwCC%v%zl$+*>1|+?%cmv;Wpr{Bs=?hfXMoMfexAoEjBefexM#kwB14*;8Uv zt`tWECB(+rAu2S!l;(X43hNw=_&wl(MEx$HPIK9>v}y8x10=bZ69{RZfNqu9%yK&) zERdL*n$`hUr?-e=;IR>_$in*9T-k1;etkXcvG*fSBKw92YNK7@ZF+fALrjmc5N$k&ZH5Onm&>ta*ADz%;`q zBKq1x>4gp^)&*poD&A>bgvwdqa>E4(gd{;m z@S4E!_htDSm?_@GXu~E@@D@Gq^8g5Pjf54kh}Ux^sj*!Q0lU>{Tl)b_2^*1SYKRW> z%1sVb3QG4CxPQbf1_p*;kmm=GDEH9}k2_+6gTuBvpBgWIB3%Q4mav)&kPNWU!I6XWgHbyf&RPXkFocO=!}aYEn>HhAqC7HJQFs5Xx^f6$wN$Vd=j z+zv{18&4Dv8{I#pEl?n@(X91(A!};L9%RD2vc_hlC<Kp;=%z}?{!Yh>`os40y{of_XYOU1i526krrWmfY1;B_4jG8E<3c*2Y?3N<{ z5+50mZ98GAZzq0liCxBiBRC+E1{CXoGpnUWh#2or3ex3B<9e z#KavQI}rX^2R53^?LfEbd`gGQiUGCV4%pj=QAuzJ;UV4*9z{B^1(n7zn^JEDUn%ET$*6=c-xWGUBCq zY$h_*gn)Lv*C`@go_O4QKTkMINemvx{%4c%N2sM)Xr zW8jwui*z?a4P8Hf|8oMWBliT8m{f-pIlj5zp}&F7Z2@A?aoGA80e&b$i8#7JT8_g; ztVYA8FgYeHTZDjs046JlJ>EIJP3FUhex?|4p+gPGtTy8&T+vp#A7!KKz9jfL0=o2H zu$7&qtq&p3-~Ycd?ra-z~?#wJIgP=+zShJ zK*N!Xt<%9Y+RZABz#f-af`V4k;0Tu+ccGyZb3$0ui(Z15BoX9g5ky2m+a_`4}1&)=OxR3W)wx zsX-*zPek1dQ0b%_SpBznd;lgrI2UNvjSUpn@Wq`CvS3H%ESH)*aJ1}zb4z-P%<`ec z2UwV3JODs3M(%(jZM}Vc4s2_pj#a1SP9%1~(Zk*QlMP1OTz`phPb&ex4EIE>_hN&K z!?56%^hR|Ax!@-hN_PmDnUtiYWZMQ1BIQ9foWAqAf4OoygK_Ah;^GLWY7z-c;2gKU zx}<``Sv_{N+G$iBBwjk3D5IK+_;0V0r(xGZSqY%Uc{L%w|K+YDXbbrTmT`5xFM4~i zvDP}NbG7XU!-G*hnN`U@$s=3v|PJ*wUtw$glOp;tly*x&UIReuAK|s z_T1Kp_@lIp4ARNTiAY5mxH|!W6hU4BR3=bXX1`p2i|Na-X_L%3DeT&I(BdwStLYgG zhSv4;k7i1hn+_1#EYyvim)b42z<4U3?ZP%rQ%FO>UBf>0e0RNE$ z7Lx_`^9YDkAO8OSR-mQ+&+t@$XD7(@Lg`<0t9q2ot_d!>?{i^E1KP&M1~E8(Ffo7H zyK*)xk;nWm@Zh$CK?8;r25$NqFbYQ+6@pus$7cw6vkJSqE_fz=7{-h6;4&2;HI@3{ z;^M**CH?~Fp-FFrP(n6N>!~8tTA0Mr`@Xn1z|`V=?jPa;8;-PeP&*_JhZjoqZ$<+n z#K;JmvL-Cy|6&C&N{Jo_$4bZC_ut>l9ee$o`hs>$h|vv6lwX_u_cxCBfCIuB0iRw@ z;x=x2nkfuGkN){^qa&Av^{V6kZ|BNv^j!^bq~Niv@!Nk*>YoQY4Iu-;xX^#t;y=Sy zeM(ZDhXV#0GsZl{_V4zxw1f3f!fvxg{?EigfPx95x6UqNG#qSbynqXhQH?#iNh_=^< z|GWRInE!lZMH6^IZ2}pH`a{|SV`TsO{Bzc-TR8u#tzM(Z|8v%|r;y9^eXmW=K#|-0 z{CvQZX@Hm%3b<2OgH}aF)4w{gA_lG{AkD#&8$t5P*O(Z5U6)BU0f)bzd$_-1QFR09 zJ1QpTGYB{OJ0?f^=1o-EW|%CyXfoiG+!rJ;G%iB%=Lu z?6Q(1xUES3Y>zwbp90U~DiCmbU~+L+DA5`aK{!-2MYh9M} zt4lcOzdCwI9S&6zaf)o|@Imva{3>=@$w++?`pkC#0k*j?#Rb@0t=Lc3 zqZN(+ieQdhAT0j|tZ=l-^8L^T z&^2(V4!z)PsP6Vk@S=rvztfi+ekKtOz{ub(DIIQ0$h8Gyyz&^9}_8W~v>e4Pp80OjT&Kx?v?qp=eYcM3{M zry?Yo4;{XJ&iU90fsVy1L&fn6Q}{PH*}~*)rSjybziv4JX#HeG#|ri zZCKs9=_+uoRsr{iaWDu>*q^B|eX5WqvZHMVWRq8K-bif?r)HnZf@$Ze7gUpI;yqLN zeYP`x3?x2UUfxNy+DxDpfC&4rk87+?%6)vm$O;^QHyo(1C_uOrW_*|QIV=o4=jYGW zmfM3)z{+5N?T|Jgh>X@dnJ;*s4!Hxh{(E$EAk3`~npYjFfRR$Pcx|#aPhdWWgTVZU zJ!inS@pnqcF5EXTCh6?kKm2$Sg4vGt%D5=mh}g5lXUTmHBjGJ0j0`YwaP$E9_hZ0H z>*IKnhY|#x7-3Q!ItWJqY@Jx#S0v5v;o71Z12*2DfF`{8k)z2U05+GTe0+n`r4{+= z;+H1>Pj${We8K33_1pCq@~>XCH6FHv0)DUIln6|QhEqjat2U(IqLTzGXERjSAgfoK zDLXs7=s|e0!)5(iQ`*qoiI%ogsN#P(RDrA2N94FnQ@a!KW&PcUd1dy;!r?2Z0L~=g zvE@t2RL$BfSEFuT80iRa18liGSQz|9Pp*w-bH_b3^beQ&V=|HcIO8@D{3rPz%8LJF z5IF?S7IXwGDgJP*u%**i`5&fhg##Gut19rM$qTmOP(WsTbxK#{aPdztgIX!dvE$Ju ztnr}gFdb8wp7=#TDsNdBlM;?wfe$9zKkR;iyAi_ZRHTy`sq}769!AD}x%_3MrSU^B z47wVS%AHJ1fnI9h@}vqhf%Dy9Ptrnqv+n=H2$C*fy#w_@G+FQoHbuEDGVFyfa0r^9 zO=ViwCj7dKP)+{qsWPG05IF$5Apz^ms12g-Vp7rYSi^|mqSIaU+~~W~Gr&Hwl7?S> zX~HTE`8VSzpaApS{!RFJDwF&-05L_BxNk~YU&|N9%6L;vqHIl`?7Z|m{kK;7DjF1B zaln_PQ!&#-GG_UvD-38>(PuiAfN+EE29oM9WsY_*)L!L&{lNayz=>mNtcJ^9OtLSeo zLbWvaEvTSo|138m@j1T+Y}7M1WhJ)JGeSksrzW{G=u~q(hLtmD^(v$g!-(wk!%q|( zPwGnef0A`9Hd$@34HQHCjh~CzK#R&6G<)dea7@1j~|CbJGgTEy86eo+HvoC zD2fSJy3x+bMjmHNr3Wf@8s?+eOfw8-8^y+3tFSurLgJ4re8|}gudr_7{QN;P4z>F< z=uBSo&4!*&S8hrJ%um6;u?m}p-Bv{h!G<^=+%i$U0Wk;Bo~h##|A7&gGYQaaoxr_Y zJ%-VX<*@-b;|(v>@d_KEwA#fYA)n@a;Y~r$50x{d26JEAX`WDOQL&Jx>PbjK5|obf zmTUI!x0DB|ZoWbt%434Z2sosgHu%#o2wuq-9IlGjklnX*7ZXI@ct?05Roc{5vnEII z+i2tuLpAvb*am*BJ%o7ajRz&)M_&WBNJS4+3DE7ev@07i%AE>Co!@aK^0~?=?tD}R zk#pn|SV$V`B8R^A$M};UOf$1{t+l^tKpG2r`ox(jVSBf&#P{yfsf6XRwr5Se%jqa} zO>%k-XQR|TB{YVza*?ELNO7L=<(_-uvZ;QpUO3-|!P@c5fPS!paa)a4$t3R7vp0TN zJ?+mAoD4rrKAIjyXA7^c#Bd1+n4X<{tp@bH?*t?xvWaTGe(U~n(oV*zA% z+GxR?+@DXo#Ks>88}nIrpl}0;N21Fs^ew4`}_@I$qSD2 z`At7@=f%6m`UwfQj+M(#rBV>HTt>et-) zZ?V1~Gnfgu=)jp?KYgpC>&HPP>?N|{J-*4@yv{NeIVLZFKjD;C;Y(moB0)EMmp1`{ zyg<-3imxOPDCZR_m6;5=tgXcEKD4Gq!;)AlL*H;Gs8T2VkfnTUruIFja$GCVZaFVK zS9x+`h+tMk9PJ&?eqK}b67{!B$NC?Ss3lt!mU$fbkf=r^OwN7#q1$e*-_MkOZqN*1 zZQIT5Bo2*^`w>P)%Wpj|p+v)1L~GI!x4DPI((!A{|KaJ6zeM&&E8>CJR{aoJn_UZs zV@5a9TxfknXaesVIiJnO9tGjP_?dFv%StK^3A#$*HVsTSGfBJ@b+4rP1S#XVSK9R(BCum%!w#wLiv;7s=Filj1r=mBxGo3)R_P)o09Cu^FbZl=p z*ddP`MVtRb8yElfb5h`wlVe<)&38232t$kS)C${8F#evZt_hXCIKUY6q(8!QevS9~ z_{aJCp=;OeN23*)0rR?pL4!26##V9vLdg1))gA61bdxf1_Jjg8gllXkZ|oqGWoYXmy=YIT#Pg@9 z&X@%z(eU1J1_lT*X-JS5tv`l@`;de$z@VkJ1;=T%`;PvLf?|f;q3!$mPePu7CRPQ| zNW#pPt%3tmS+40Ja^~I9-hw;W2plVGaSp zB$YDaw6-c9OaKyND63z7eqY|rRlG;(R_T%EC5v@V>LSndJ{6NG5^JPpAJ6Cgic~E9 z74lDWA>=&P9TvscvhP=8Ht*6|F8Q~(_VBm8>tDx=&pbMxsipd*UUN7TEu@E6V0>F0 zzJcfb)6{+Fot*BUuFa?x5fd;(y2x~nSnl*wC`m)xoL+FiA(!5bX6~8gAxq)!h?lDl z(`$%caE2@xS2xmXYNB?bVWkaA_RL>yFlq0X!W&FGXW6q`dJ2$D!bvOt+_vO!%H>$= zU~_1PHK>ua6(GmRSf}bm>w-GqbE}Adc+=+#PlB{Kl*``)hb+3*&HBZs;Dz{W3m}ab z_oo&Uq;;~%6+C^Ro^MW&bB?;;wjexum9%dKdFeH__|rDeBXHO07PV2&FI0l^Pebj5 z%tNRvN}`391hKzRoF;eySqdJj;#ENUzX{1x7!lGnr>uxM4*b%+d-# zAdFwV1Wn7j9ZirRD}154odt!mH8VY~%W&vT2(7DzUpmdTrD#UZF9l=u)`xle7K;_E z$a^S|+%64F-6V@y2qG`_dMa(dssB>Q@!NRv%eu5REHkU0dReQlGWby=!bp>&=6uI? ze|>Pt>Ge~4TkEWCU(XVc#%0rHHN<|Uf}HAiuE9gc*-~DHD8jJ~{H3ae_Ra zlc-VDm9W(N4y0ENq+#0#JEhv+2tO#rd`Me6tEogPu=7VQExT+NHW)X;J zsHxxACF2{r7%fa4&BdSF{erA8pW;H=WXm!5LOvd4yu0s~8h>d0q@$0rHIxvOB_`Q* zD8$2=Qt`R6P0z2Mk_wxr++gsJujJ3P5O!^j8QYF$pBkfFQO1=aFLV1n4fQ?;Lc9@B z?1W1uCcAGWTjXSi;JBXpu!(PbvO^M>0~vAQolgZHjTWI3Yc98wb@LZdyG`l8+udhe zu^#Y8juW>iuzye+R_C?W<-|F}29i0eOj#Dr_n(`8p*Ls0!1iujW&pr&Xx+^6qP;k_ z{f4pP!{~_=Do-b`Z>zcW6$(()MJ{rJ(hjS?+si(zWtg*7JN`CmxToF2pv7YuWeRgtU=mk#j*hQ={-XR!hJ2mNCr$tYM5oAUo9Qc&t-BNcGG(jKN)@ya zmP$&W%HIXPiT0AOl6l#O5%JHCX?A4M1Ext)ki_fFSXmcVM%ZzW-Tc28)?BUQcJmz#+1&3-YOP|2vM z)hbkp`DHI5lEzN;;P!8sPJGavz;Ql_S2G!{{VAM4=!sFZ5?8w4qyO$6(+Go=?nFpv z%}7c#6Ji?dgk*{M3VYAge{t_})^~AK!&<$9xP+v<4SAb{sCu=purbKQr2f37_$vu*fupB_)RSTA*I!}@ zRFn%E(h+YJ&~oS}4~*L@P>nZ2S+tc7#E?6*5|(Es#Nm{o_e9sO*5@=9cM5-<(h6T@ zDdChQSN^E*vZa=JC7q=7$!zq161A?e&@!J6pAKiEO#Ws*F&J&eP!^uq+gDWyZO1z| zDnK$pt>WNJ$<>HWioBm;->FK|qs6Taon?+Wu8mU`f6baMn;Qwpwt%ItJzP|56djJtoK)R(% z8YHDdLb^jh8lJ0@96i=d+K$`<{94XWnP#d1v11pEGmL6=&Dl zYwv5V&-c=5>jIavGQ7}0H!2vGOpx7fNe5h=Zb)3((Wn7mX!r;lq^$+_wE{7>ri-3x zWbq41wvM6XlNaCGl$UliP&(+COcHZN6rx9eIU}blNFQp?`?|Dn1iiTrmVXko>t(Jv z^0HY%8sS6!Ym?VY`fg%(J)MMHuI5pfRbtM*K2bXDUHY+t)K;cu5noLcGQ+CB$rr;y zd@qvkqR_XU@r$&Io@bYSi4LnhFL4nfaImlTGenhNe6%~F6;~=^WHnz>d{WNI)@d=V z=@@avmg$bx(qx=Wxk565mAUTEO}&o-=|D9jD8ya#Fquu@ULnzNqqO&}^{>%;r+R=z zWM?HgKNYWms;Z05Uwo2kITa{35yPUs)i_LIaj_{S^y*sydVWJ^%OEEPtDh*f38UFE zrpMRwRj=xYv2Db3>SlB_$6zxaRxbPFufp>+_|+>JKdYxlyfZj??;TI^T&aP_qPNbk zp>40Make_Z$X7|ZY!}WsqM2?VJO6_eA>(F0)$yS5-lyw2`ctwgn*zTvDvLQ6XA?~U70f;Ypwxi*V9tS6VX^HpHo z43f&`gxi-JWBvVyIqGUU5lr$g6nL2)2YM~VXLfF+yjt{qvUjfCDVW>q*(_p{5MXeF z;&zus8);Wu@$J^8Mp%TUi8E|Ngm}{9Y^y?*%fR1Hvy|L4#GU%y`cB5BO*KV%ufQ(B zN0BLP(Rym)gLw}hqx~f*bbl$}Wy#p|x(>v_i$%NZ^m}z`S z#bJ{CUnkW}vHi+Sc%fO0-+8T=X+H{u?oEaNIYR^PVl;-og*!_1LFJ&h z#RR1@2dS#J!D_$l?tC!Q?K?h%jt-ctLR!3v5uwWJ*TkMi$PHQc1V`5Smm z)7kR|!#Y-f62E+CZ6=9O5l$bp7FJ9D^ZmP^XK07XoV(an+-S~oUc#~vMh#}6; zj0{~o-^@0Z0I#vj)M?T2M7TDYokgQM2ekur3Z!v-=e44Zw1FTeYZVB;3hgW7R`b?1h(sM|n)pj@5 zD>jt*Y)?+y^F)P2vzV#wgG>WGdydYE2a+z`*p8^gxZY*N>`1uco@tSExp#}ic(o%yicj2hA1UE5L0B`{q&U~T+a`T3!Bw*7h*l0H{k0VFGRn_@I;$K|Nd{21%ep?S|`r(-VJ zE{y`JX(u&6eWD8Wo3<+T=oBJYn);;lsK2cz058m(LH0n9xZq)HHR`RUX}{~;!ca+b zkIP28Gx@Uzi)MVKnf;E4N*1%N$*tk<(#5YgYnX0BjWVWQ)@k+XE69gzOGpUQ ztCf_^n6npGBYqP^beu|Z=LVCn!J6g0HqXMrORHGq#jO4pRf?m#DvSYb*DgAGLF-C? zk$*=VHrud&$mg0bd-=hPo~(W`h-vrEzsm&a;%624QtFF`&e{G?ti}Dw>VeY)%Sbo* zU$>uc;n4pr+>&E(M_KF9d}WXi6Q;~J4W1!+5yFnKvx&LBgbk@wRAW1=$iu^QLUq5J zD(J@@-f9zsYHjXZZ;O6k@iJfD3X)K}o184I7Cjg!oRwTw;}p?eZLipAvJWCUJmtj} zb?Jd5QU=u};TIyKmn%<(9Mw<5Z0~npxSU*f3#w2H%Gw52aH~oWI$-{IQ`P91Q&^|nMK)C~QvV9^&1^K!&9-rpJL%`M{wMMe8&)Y*+$WE~$|pQ;TgtK!Guhpuf3a+VHv>MQ+X zO?G&@{yzARN1|`|cM9~_-F%HL9qqY73p1mpREG`={sLf)qU_A=cM7Y%F+VCV%6Zhc zNA!_DT_cRNN_;OI>@*&xZZ$`tI%(h;`|DSlB(3dthGp;?>0fsj7MegtqY%7!W z?c7RP2CdE{I9PYAZ}fsKm8@0s?&P5HA8i;QqpG}a3yF&0k?_KMbFi}C&WX!cj_N2rcJ%+drmK2NKT9buNj*8d2{JIbAxkn^* zmkX@}``Jp_ZuAX`0s<_b7qRcDo;{tQMEF&YsSa(4OhHspb3!ai!0U-_8^&c*Q?cgH0{6+@Vyo^j zpKs|69W{hWDViqnMOF)PC?V|ft|P2dscn)6Eh5~~?HE_8A7D1Gtdc*qb-t;=iEMoF zgsZXH)&oYd$EIexPNCB7sMp&90PNNl-I zNvDM))UtfE`MY*KjtpJgJAYiOf~1F%DoDGW2_Tv8uE;i%>z9>+b3C;Uj+!z`F23UXsjaRcw)pctW;mJKq7QCN+ zO2;>9(u2+QecDm+ZKU|LM6O@G{5h(gwKhp*Izb9=qtttAxCMG|{znRBOSSQ}&F44Y zsC|-((93>HYko~y(e0Jw)0-U{H&*=2=`N}LQ-7TB>zM)L>%&2!)BC(9FXkUX#N4RW z2Kx8PIXqGg)LBw|<>ca;TX}Y%VDn_@*n=Az{ZM0GFy+MMi56tZY=Exe{?ssod~(EX zSqefIbgG=XMXB2#ZB4kZ>-PoUz4@M@$-0BVdfc7-X0fMTIUhFs>=^i@{;dYuNpj6U zzink*j%7z_;y+(HyIXO)>Hk}C==94`!s-z;$Y*-l{0Z0b=Bc$`zfB*mHEL-N=_9ud zlBq|_gB=`J-_U-++Bv-MurmpcsP?B=<(}Q1v+o-dw%OX}DXG}&iraB2)u@=|dCPwx z)S4P(i*!PO(BXY5#ETpzlJ{IRf~+I3u3Us^m$wffg~zJrRd1cTZ`eZoV$3CN+0t{d zc|M;%3j32rC}Ohurzvwn9MhNm=OWJ^744s%_4JE;`{ga4=4p%F(g&iCArMjpY4tF@ z17+6% zEURKSPB{?`Qb_#_38Dj?B^wZ^57JSwE*s1!R=!C&*ifI7DU!$~UiFZKO*(E|?GqAl zm)^D#1T$SOUDbZ%Q+`}W@e!7SzXgG*u>wd$}_ zVP>Ws7n_9r4^oN7K;elE5~ zmyx2g6eZVAhWuD3M1wo4R3z@L`>KOpF^Mc|Zf&o_?w@#G2@iVdX4QM4nLMF!N(win zut0%P-__-oUvYtlH27q3I|ye1#BByca?ThH;TQC#2XkyFkea0VAD@@a&u|v6AN^iH zMRK&QhAg5)Vq~IUajU`Tpjs=33#_<)1-4HQlXB6>${Xe^+LVr*^0FvI5uAmv)FUsy zamS`{V(+!!@Xju1%k+CFO?!WE*n9(M%%b)YDzm~L^j0_(t)1J7m5Ki<&z4o$nE6LxST>{y36fYMi>*au*G2<%q~UiC_%=l3*Fr}yY5VqXXJ0CzD^_f!Tg?P zAVbcD>x+ix47G_Bm^$S0H1qb+s9glR=W0@Lesb=3vRmC&5cSylztC`;)4Wi8H|bsR zt*EFM7anf3OBnrix#1C0_nXUKj%0~p`Vh!mK0cq*0M*iGdk(|B+{R+e9}BdvWBt@F z4~EwVsrVT3J;TKdZ;2tS92I`Z2w))2(DHPDoO^oxCv~DN=m!fqG6RRc%e9TP$ket@ z%A*c+}`}ThoKa>$$7>R1{5km~B7PCqsT!N_5 za<_iFD-TK-hCO(g>mWyr^+7~mJ>UeM>>lIYoHay65>?@^Gh*bhLQ zcS$SmoW+mYclovNp*74hq0UF&UcQDU92m=AtAt-igXA3P)CaQeoFoy%zO!`FuQ>XpU2t7kR|Iynm8o0{6M@VP3kr_%IaX1mRz zUH%l7b7`Y*@O^(cypy8k*uHyk!?^E+vNK6iaXTjA@7GSMe^j5#M8a;`WGd5VtAr;< z!9xsjK7G7@zw|u($zIaRd$Wip)t|;;Gpa5^JF`|TsxOL%igyVq#*<%opnvK0_e;st zCm0@?mf=7*mnIC0IgfBK0byG-Bc)$H{G?Qp6U&YdIqoliMx_v4`pb`d%wF@!!Gug! zIekz9w^Jz1!va!St2`TO>j3&thfoG_Q-zcV=igD&J3!X+@x@!RzD(r-5LM|w}BgJb)}psymM z_%7~o<&5ulWbeGKB3m>QD})zJ6NoaSVEi4(P+C>Q(3rxumQbUYALMYN#2KKH2-6kJ zS_cO%>6nW@nL>iR67v*`kH3+WEvhM0q_P?06}(lbJ4pqbsr`p z9i&-bd$b|qSmpk>M|Z>6!OU?FtQRJ4PDzY@Ki9Jvw>z<97&@y*ZX8Gu*-ohS)JgqN zscEy9(xzmyRyEHSDaI})Za-mg%Ja9|+VNo5!Y{Vd-L$Irt&U74G*$# zQ{P!b&^FEQLNv7EKuKuDu)uYU zfyK46)sUC(&&1|a%iA;SeAdUfr*(C^-5v7WS)@{6o#@RL-Zd29Z8p1^J+kZYX|h|G zJL?N=Ur|o6eU0S6mr-Jp@oLsFQ-_AfrrpsnC61prIeo?B#(IiM2tTI%(FN$SbN}LQ zRhK^g^s5;4Nkmgbjw*P2LN=nVLcCZlQY+wh_P2f!9&+_@BiW+T=gtG*PLQajBY%R( zI3yAN(0D=w!h~EdGydk~HB#}{A`5}{Sl>%xv*_ze2BoyATrX}~zI~Fa#86?MeZD*` z!}pj(vqEq^%I#d7_maF-eyF{45dt~K*f;4O;0`@wE7{XPhiLq$--rY)`q-Mt8S3cMxXf{qTD!AGDBJGaQ8PFvEHe5 z=FO2mQ2^3MeJ{xzWp{eS+OFA!?{;PvHk(yWsqR?UU(XwMLfxIPDwpPy&~Kf`ke0^u zwY4P-pZG39<#Y~eDlB=+dDx&HkM9(k)sjB=JW0o7M=v)!^DLf72az!*SxD%LE{#6N z=7YMzIWv!7^>z(m<-tz2+_e;5F20&o=zY(*_6azo9y@EOmth&T-e2!FoD2(c7m*l}}KI))Sh`Xk^P-O?3nqtT46J&_$VOv*!=I z3b+%vLnlLB(LP{4Mr2d_#ov^C6>?u19`J1=kUl~?$Y}Ag zqh>_R@&~4BG4M`8UE0!`n&hHk`CM~!@t3)y#WF*)pq-jIxjPQYx@fx~Qn~KXi-??Q zD}1y^@g8XRJx~L^5-82nY!@B*e`L0!$(UYUfu%@vxwk>VVPPapX-egB>%}9e^=@FMN;5XP zc&%c}MA}ZbB$8v10Nig z0@t8}&wASjLXG8y-_MjI{ikM~`%M4TZgh_}>$cmqqmInk^=M*U)Cr%#f-X9YEwZwXmOugKz1MzS)iOQJNSG<=dD z_HxKNg(sm7t9$Q~6h2lgNPkTe?&cm+bw|41&uQh$Q7>#Bw=We`VJQO z!K}sI`_FpplxhDClEtfydJq}|!gr9`5!e{~?M1EP@<#a~tVJ)BesMB@u7_hQ(%4+qnsxWKIXOE-ucc6nccUCib$Z{0c)1?Hr+ zb&Iggh7A@c=O34$y$F}6F#_?v<=XL0jQ#362xd&etHTMoi~^h$lP{wTDkHiSf(1v{ zNGK;39d*B%D*GR}#;=^kwdzMHAr}ha^$DI=f$coMV5a?^Rh~r~u_(I;1htM(#JnXJ zNukEMy0eag_1AjTKLlE9jh^t340km_c40*NM@JK;hw*o=%mmFQ6(-O6!02kce{+GZ zI`Z@m%>${iXhqg0_V;xw`_;f$*O^;ed?2WU8|GXupX~TRyc`c+3p!tY;wQ4nm;AjC z^c9}8{2{Iq$C=4D2Y9%`Y;I8|9yQA0eQvcw8fW_hQ!14(B~j;!?As4BLWzx8=?@1^ z2QDyKwFj|pVxf3tFHe(RRnFRM&G*$yE&ELql2s(VQxTEsYV|$0jj{Xc-2^y%QN2UE zFF;6lw&}M6mq7j8A*lH;)9c1EPBlZO_=`C%{rmF$aX$5ny7LRuPxz@rpX(k^4iLTn z^5la;DynSula}nsm(*hiJPvlbtP$(p_nqfw`V+r-<3(UEw)d?mKxTOpw9WpTegMrB z?C74^gICFINM4Cu`u3J=@EBk0UbtUjjLc77iI^xK1fNlI5*9%-GRYyjCKJ)UpzfP~sW1gfe?UZBi&4Q+_UaYlul6g_E`sh2%`xUVN~ygr6;V^y=4;+1Xt zkjsfsWp)T2oniy8J7qsh5j);`hgEIX461^QUii5SjTSoA>cY<_M`iAq8u(_*<(G|o zwzlB}=)FcMXLuplm0(bxS-y6xp+ebID-|`*@p~nKq=dL>?Kz%xwuBl!&*3b0=X_1LHx69A{n1+180*-!|;;~<#?x2&S*tpnfrF}PT{s0gaW~92|Plm$8GmzYF45mt$cZ9W_W#yQSG-(@0;;q4`)>Cqle$B^KV69I@@f zK2mNo4DvIfZLcWcGD;vUa7x$+uL>LB4&wHcv>6I8;6v->+Lv&4FD`MDRw`NWGWn!d zhkw%YX~l$^nxK{|&iWIeOLrN#XMCiv6z<0*qIfM3X5)$e4ewksHSguTS$aT_D*3JU zDCQkeNC+oF1WE6a(XWSSngsZX3=Mcgxcx`1?C8WJI??6{?0k1z1}t8f)g+rnF}ZYa zWVWBD)R4=^NsIdhV#sY6X*i;R_*!G}d2x~tlaiT%B&7_tfy13*%+c4`1(j$|em+F@ znD77>Hs-~%RkU6du!->_FcAJ{KNI}r%|_JVQcQHH(GtB8$m!*$#WDN(>_PD5PrXuH z!4(=?w2~lpBgp$me-vOAir>C?_4PXh&yjHE-CqP~$MsX5 zdGm~bMicVAgcK9yZ(gR~mnBf_xJQ1F9FgSZJ_=CKk&nEXtbIYWnzHTfy40p^Tc%yaUn3c2gm*vVFz+Ds{@8-!;+d8O(a zahhi9SE7zHzNWIHgOJY*#HUgz(-a8n@89)znQqvFyG4kQ+#OlWcYg#$8JB-zY<0_` zr4#=Jnkd2{I`i3(g}_v!h@|v`@Pp>jD`y4f&bxCZqaf1Pio{FUgIZREA%bE1fu#6) z88s-jfvYp>I%tSAc~IJqzpfeXE!uJ4Dr)9u?y5^3t4t3Kri>MkWN$XzL}?)FQ(M9)1c~lRMi? zKRW9qCzq0yh1#_oNr9AQYL=l3|E6!~=hx7XeeTI4TqEyt=nF{eZrF^6hUgc4(UWIT zq1|6eEwi*8)76NqeX*7IHGb{i6=kC0jBx$DQ4kd%`#Wo*Ocgin^Dn{0ej5xO*;GcF z8BlFm+;UqM@pwPOC&>=Qm<@FaA>56KZ{i<4kEiWqMZf%501fy~Q==3&T2vl*i*B?o zi=e+FrFbl<)a@5lFa^rd>|gDsD#jXaL`&Tg}_hzfe?D`S6I$PTTH zgN&$gkl&tamgVi*`(wnr8IZQ1ih z6~T5wVnzaiK?AzLNkfx@kou^mg4(!S76FM!t}r)5jD!hQc+pfUjs}{(EBDoH5E-GP z?;Di|EUEHush>EpGB25yx2kA5AH^T$dMD`&C>lD7-bDW=+~(W1mroIbk#Ak}I$}%^ zh~Es%ZAW5ZttBEn#$AV{xkzB0&M*A>^ky4(IwQ7TagGbhX2(uFi=M{#l)Wh#Dc~io zSNmdMgoOeh@7td)Ws=MStVYu~PZ=dHxPMmmP{o$v4qH+z2P3_(;jRqy^5kb=_rCfa6jtxJWYg%!c9C*eL55W-!jc8f!cW-z5|`gGH#hkF zkAy@OY2_D0kEy3BtcboOJgc|N?uHK6ca>1x;YVPW^?kS~rOWXqg$_Nd`n`yiTnYN( z$#;pvy3>KuQiu%_rDD(-OnuM<#PWV33`$0%vc2~icWy02r@uREtX z5mC+MwsZ}JHA&cT9DEXyQy(!8<0zXvb*Mw!dTS_Nj|r6y^?R5z`SH~pEBrm9y@hOS z63UuWUr+>X8a=|F87rxqHxz&cA@p0yN*CcR;pfB{uz7tsru zLgFW<))YDFjLPqk5;L(!U*cV!gh0{4{G5nnp2stgKM^5~H>Cc-oUKm^^*lz=88FWsF_A96L2i-CNdoQlLR5^Y4%N@K}#DGofq`Z@-@o#fzkJfS~b zkv*~#C)P(OXCgna7dW*O(H@-wZv_@X=j`eY59TQ zQ~~nd@YBlea6kFfu;=six7j(x1|n0xAsQgd9=`tr$Pz|?=2N~6q{O5F5YOlCOfzbI zU|>MSV1NG}j_U=?XG&gPUMhle;EBWG9{)iC)Q1rlt@1<(+nvlTxxzoT!cKYE=;=l8 zuFtIXAxty7bQDc6CZW7ydCuP-JVME7EIJ zk?A+1_xeaH?6KX&)_?vE{3Alf<^rDoh*}9T0=tdytiJ2>zhOXt3k^=g1?)($4;HA! z8vzov`l3JH!85d~luMAbVES&PAZ;-S>_<|A>{56#Z5qFm7kV5Vj1v~J`rGY{K^&LCrY|e%!K0ZDRfEzSQxTz|{GX7J$JPix~Dw(Qv zi2Cf#kXYiFD706{#-Ul7yx#rPF%|w{Bk`eGu>B?-hWNt-!XyzC6a;}caCZYO{69>g z{Y%ods_*O+2WgsgTboeT!t4s2H_s$VM0`j<&NaaN?Cru^x!QclVXY4bWN!v}->rrH zr)~eMrP;>k=H0L20Zk%i*Dr-R_W!*X=*QAL!^h77!b0rH{uS@LF-x(N6;M4N@bY3KBedThhxK~N z#kmxDcJytu-9`yMiEn0#f6_QP44~7 zwOJ^|K3~Tj)!a2<-2F zilLTX0aTDGJDplJz{n>P@>l`@3ib2{IAx}+{!b@hW5b!?l>GdJ;8lQxwsx|0GN>iv zxjNggy!K?~!)ae=n@XTyDD+)l{ zx_;MMa{!0r8s|u3o@lqdo)? zy#{|nKT1+19`NMz9_}yN%Pj#AUDeC0<#dR5Q6`o~cCOw&2_gd^9gZxVp652Q*vQ*} z!=qyD>Ee34CJXhe0s9%Uv1_&8B2Km+&Wbs? zzd4WxB0c3q+ zKm*{g(H?SM>OfdqTl;8p0FVV)fbL%Yw-umu@(K!a0g9#E43Gp+!4;tWC0mE4RD67d zAr#cqNRUdq1%VkGo~XZn00o@O{?EK=vm3yk1N2R~nN%dn7eMxbv6McYR;IQEAuw0EPJ-`-#WHq&>p8#;nXr=M%s4D;k zBP0YKu}ms`=trQg#qoZW!ujuSJiivj)s+>vZcSC`g{$U`UfPMw0(k4m4lpxdoWj9S zA`iEma2N~_O!|;2-3Q=I@ONQARH?^;?BeWjcd=arj*Gw|6`%mnsu7_Jl3|etFPnv? zgt_KKFzlRTg+lZG9&XZ1O}!11)wFz*C%Q zaLnB`Tx|1(t9QZ{=l5gOf$l9JTW71}O3ja0^Mk$$nt&<*rrgu9ThIsgvpLk}tP2Yh z!szq?3Y4u-_1W3K@ z&%|~iQ@Sr(Jog)=i{BPRo&w6H>_1}&P=DoS`)xONMSz?#-Wi0EUuzAM0~1R;(0bTP zv9F)YFV}CDqm~Mf24E)op=3^JtI@1arvSpyv%;c|q4eq~5N^=6!9X707)s5j%lIgc zi!7ER=vGc63w*vD5=rUUhJ~)bfF_yG?T;3*hnaqHb|d#wu( zSK!kV5##m8yLXsioV37g6(kX%73htrg2Lv5{d(Ux-Q@$#X>G`iA8)` zXk?GsN8uJZe{fKNL0H&;NWi%eC|I#Zxugku>ohHYCe8y`83q;>#T0g9e>E+w=K*eS zg$ix$A>+Vr(jNf6kKDuUrbs@pigEzrH4ZcnDa|Y_JWDs1egupcs^sPYfyE-9yX$e_ zfHTk9)X}%6?yLfkb{x>Or0nkQmVHdb6%8!FPSa&9jor!nqc+H@>ywJz^5!>IlZ7$Q z2ngu7EypFA_M3L|T0JkCHk>@4R%CYu!<5HB;kQ;n4>`PMIJWBNj;8?9jICa5|Lw8l zELEcZAN$pz*kqX?b@ZIDrSA&L6t)UJo(P594DY);~ zZSn)SAXzv3z_aQC4oN8RE~F~WfIqCJdvyIJq!`1Mk_Oy`iD}@h0xS-IFJ!7CCl{)O zej7w!5CWi)Pk^sP0S707?&1X)>G0_&5c)JaB_$L9a7=(#M^;hmva1nJ#ElM~3~bg< zFvEw>&+84<@snWPf>l_<>A1Ymw|20ocn>Ql1x6Y05WfI8-fz=;Ab%7}$Z4+Ty$Yv8 z6fJ?ZhB^VLd6lvY;6dbqP6U??`6r|SUTHLJq*yxuqKOG84IDaV*LGzNRtpdaFl6k& zvw`apfgGLBOK3Rt$}ajr9l5MuY$*#DZ(0{QP`CA-$lF7x21tsChqz2)b1dyp;e+ z?e`f|{#z3hD#)b*e2EcCYaoK7QUhPQ)n-gtoqc3}7XdDs0hc(9)VkD0qYLeTZMbc0Ky4-X)&CJ00G2L3g!bq zN(CbTzA_zyFAG(oJudbmZ0G8-fmrwZxw^96_O-QlQ=6xIvri$F-Z!pM+rS?Ikpx|E z9wxvdt^zv)fIr#R_tRy%V_?>utS}TYIS7W|b{u|N_3nSSh2ts#plAu$^$sBSR%yQ| zd<%NjS9W7W60G1ICnB!*et@KFx;>s>ZV4wD>Dspj0l#Gh0QUf&l8qviO2Bz*NoNE2 zpFIHGLv^14Ukg!v0ZU~yb+~;%DFV*CR-FwY2^JdMQ@2}aS_T77!ox#A;l>?oOWq$dx}BX3KEZIo?ID09O4b2&5k*Rl!9l0Z%ae(i3jWLTTWwpbiCo za+Mu281c$FI-#K7ECIobZZL-+u|5EwcNO&F9>9~z9Tk9Iw7LvB2|s)-M=yu_^eIq` zF{I$-)r1{ul;8net81VxAlOK}(`x};iq8E1xlaGTTmHeH@$dNGSD^p>{r|pR{O|9n e{{Oq6<^gRf%()G*(mewL4q3@J66NAX{{IUX7Q-1WOC6h;XOb&4Jv z3tr)!eu57F5pj~ya8j`~b#gUyFhMC8I@wv-I$1q1qIWTIaC~5E!+V*B`!YWVy}6T< zouddBm-U~YxNPfS#-({+E(%A%v6ItuM4<=`k-um!C0;y0p`lPWuS?x?OIt~I^&&Mn z?vki`a)Uk?L;9@6nTQ}|jF@a}IeY`s78MNAUVlc`46`Q$7_ zVBCoaVa)2F=O<-gh>KH9=hB-4h@mO;zhA<)g2-~38L*cAOy$axPk8Ts7I*)3(ryWvzQ>eUfoKKl#XqW8FWb+y<4~Nz zs{irH@|a9Ukh+V3pZ^?J<6d@?3~~3sfUL4I(bm@1At$aBh8S`YT-)DXWVRY`W1j>B z1PnHMdm_gca$JaN>e$BJ-{03LF+fvH6Ur*6znDmCHjvQ~fQeV)x~^BXjEk|>cwp1B z_uxbRxuWV>+zF56S9?E~i(Bl|WHYvxi<^w#v{~8Nx8=MuF2tEIA$NsmcEIYDuf)k= zS(A+QR-ty4;ucdXZR6f7UYfW!mE&UnxqjgTU2j-{ge@K(p1ofE20F>)2!3)U68KH!;C6xqJ66w_z)W*zSa5KR-%JCj?_(8x>Hk<958i z82{)|(5FvYR#S~MnLa<+Dy_#u>g&aVf`j+9#bOgOGh^Sry?usGoLaZmY4cmzK*rTb zc){u0J52AN-{FM@8FO=1@xzU4sODVxWV@{|Hw$&^$f_ni*h2{EVr-j^$l~MUrT6jA z3kV%W>H8j?d;Iuu^}$*lF%8YDgGTw}%M7gDb#%;HuW3Y_ux~IOkzIp2!oY%iR`bPe z?6paEe}ARuRD-80wV2yrayGx{$Sdto*Gcy-Hs+Cn;>HLzmFM)AF1=Yx<(>K<>h#qw zSyau~$%N=-k(#XCJHW znHmqb&VMR@ z5GWH#X4sd?U%gs6e#k*X+>L>WY54Q|w**J7`VDkFpM8_JnG$roX8rBH$J=x>T5@t> z>hm)~1UoxB*m!u`bzA&=eD8|~F8;dfTLa6h<5f(eqT_2~sH$@s{QUgbgoLgIF}>ke zJ%1QXHG1!jHXY}>eSW;Ybmz{U1o4KGV_qCT>pW2y9q?K`9TgeW1Gm6R`sbiRlF+O`en zpqSvauALkom74ZZ)gAbr9JxkO@St;Ql}m;a&}_8gaZS&~N`$l+#8t2L7?W-l|ol#rO1I4mmaIuuRm{hqTZHQtq`4s zeOM{@im1zqq?Q&{c6K%qEp3cpTgVLD*?6%?*9T%A-(MQ+keoXg?73ER8kW!HHK%?f z^(m|~l5TE7$U0A~Js=;Tngi@WyM+e69ZxUM%#E+a@e&aTE_;4{{(a|0C?%T@R+Uz=ubEaVjA+kCzn8qG;Zf?$XZNmNh zwdjO|T~DO~H;#6vdQb?Wh+w z%FJQ=%PA;ytbMNIar&x^6f*QEECbb$3D+ra^U)$2c;{f9tF70MF|&k&{ei3dyF3*G zbE*Yu49v`!hK7d7yHAdHC6Hd0pR}{ybRwSc@F6i3RYcR_JlDqx%j7RVKf6vvtG&{i z+1s3>5Ov|usi)RX}|Z@Dv`F0`&bMN3=|?xFHMDME7q58 zZA=N~7ZljTM%1acLpyiwT=iP*GHGvDN5{>Wz`#Jv0*?Ut_Y8O(0UIQTSoO}!Bds-4 zz9%%Jx~?>zs%&FlWO(3mYFDw5=>lU$sIZrRCMHGz&|y>zJ+UvR=NBm^sK;$Xcg zmW)%YnnOuJ0Y3!)dEnZS*%ylG8%TpaKHO*J;Ao%ih(tq;jg3{$#fTy+%Ar+` z?YBeTuJ5ytxxLWWHkfs7bEA!Lu1|2PeOO5%8W#4H-$qjbwS*7#l-D-?@z2pFMm9E_ z#s2g*&-I2-s5}M<3A*s`@UN2%q8Yx&?nrA*;kQiM=$L~xgNd^GRE{&(8GWtE=O`{d z9_`ssn3DKD2GfnGX6Ro$2F<7*UR&tS7nqr6a+CF>ZEP+hJrsI3&N@B{S|l=6iW+`s zA=OSj~*F7t4+CLg8N)4Gsb20)6BbEc^LOXF|=1BY8)4l`%s|v zsuiif*RQXkjhd4t+LrB|KSH6E6w%S?xP-s0~$-&3>C|%rJi&Ye=a|HUK z8Z?cxIiVO`&((?*I4#ott6SYnXHes%#-Vma)zv97GBP})fOk0A3($yVO-p99B-sh=A@pLZqJ?Ua(V$!^JEpSP+SgRre z%|PPl`@?4ohEY68@$oIFlI_KTf~34xuT01yWgLp0KJ^O@338mGHWjT5o%g-Aw zBH=Z4S1EgOeL^&iXp%kk#kAtQJj0teZ(4o-I^?o70Xrl?#HMDRjO_e*c4|6dhak%6 z8!o+^RUdmgCEAQiO9*I0O2%!QbRCXhP0g?Z{b?k8bav7yjjcMPD3MdoAKhIUYeSVZ zogA&V*1&Eng}*pmf>U0+%R|pX7aaAxcU0?2+fMnxk$*rJVAmswS?-LZnWASbWBW`(iwqD<6q><$<3UkQOh+U+FUo3vYreJS z=T8p-w+(}ld{uU}J9ik|lMd@1zgx72k*5h`Q^Uk0*KQ4#&lIHr8)S7YIy%|}#$M|_ zAfqHS1Iy8(bNziOJb`Eigjc`E*~QEW2>?(dJA0PV>$KAi#aET8+1Ek|thT=NxGbjc z7xkx9a1}NFv~YpG`s?q;wA2sS+`K4`t5wT%dh}~p$wek$IBm(Akguin%Zn@ zFdm?4^jo)Xal5Q&PzyU;?+$ux^I7B!6`!0D&-+Si?b}ZT`b_p=Py|E6rG2GcMV8?` z(~22I#g9uCiK$&_g@(E=EBmarmI@lMO?k+6P)G=FOD!iE9vpNKmJLQQeoajc!TMC4 zD_0D)a6q2Qi|m}7>uya;OBPYo!e`+arH+YS)BdL~bdBo!UWNB5-?@X*Owfg)8q)ccVGG(%|vZ@y|JTELF_;hd2ZNk2brnP2z+5l;WFZ1(TVe6$Q z%&&}<3E54fU>07U5ydh%qD8<@ho?=`kxO`D!iZU(&;cD?_S42j+Vg@oPPY`*S=rcz z%AY%Y*VTQCKsDs9LBBx8&ZNgO=j{}3Ge-6{|wM2CBKP*sfqa@(XA$V`;DAc2Z<`|InN{ z6@SuI_jnVHPANky9QOIUHOjSi6%mIo*sou|Udgy>@t(D(jLvIAO2_$wDgxO=0C>Z$ zS5LtGsBK3biVPFzvdq%gt_?j`I1eL*491SEyL(OBK`gZ}dNb9-TgNeUK6?yHOG_(D z-`?jv{E~8FWWPBpgBnS}zVU1*%V@EvZmks<#Rl{MLO*`TNtns@i|MXQp6>Yh`S~am zV9R`y46m)52y_IT*PN)X7cT6$@Ui2_A*d`uV1MtnqGHI9`J;BTZLEt*8TZmo*W)es zJiN%fNVCI(&{?a%;l`>7g)!WJ{y= zl5e26AK#9cFK;|#jZa7j@HzTv2;HrExu~whYu_O#D9G)?!F@eFTGVRk5W>ZPt4(?D z(m*+EKntInIyn|ZHsXC#((ajI211@6={r)d=@5bHoWB&~Inr+RMz5!h&pCk{J z{*NCu`siL#d#jTVL;snP)w_EA#tkDFArx0V_yPh0H^58tSf@meX|Y2(Uxe3uw&F8!lM@Eu9F^ zj1~VW=g?SKcza8#_{R#6LevNsQNP#BAfvD_C8!4y68fraosO{VGefd;GKPi>YDGHX zI3z4z32^f}p!E{~<^W!1nPfTkni<*X2vB)hT-=p&^Wny9Bo_iw5k}~iNdxWGsKWXC z*E@F97cqPnr*y>y5`EZQZdCTCi?a6zN*wQ9t5!sGmcC$k#Tdxiw2-1vF!Ra8@Ig&) zvih6uWt$|um^r({J^P#QD8(aRS2fY0nm?%PM+XF;>zX7s7I;PgotY~e5HCBptf#Du zdN%Yj^-(B2wgbZj>?R(sJ-ag$+^9%$t{c|YoU^mD-0(_0RFDgu`7c&IvktJy7-lOh z^NTM(BhIm}tihU+&8lzK10{87y8qc_+`7A`rvJq3M*REYVg|a+E@!WVu+~Bc; zj(Y#$16s)?`Mm?N;GX-h514H~FIG>tr*3q66Klw@u9apoWzii zYV&Y=U|iF`$D{#vmjMtj+etA5fDOM;a{cM@x`y=Jci5|W zl9Cek{{21B9d2)VKLA<*joxp3s}UG_>r@mE!ql+|2s*ptnbH$T?2hYtr&|K!lanuc z={pA<*46U9fB#;tF*0m_CX^2KG4%LjgQuX!_pkmhU$VZ)kReJYxeqdg&lg0%&_DU9 z?giMz4MyTdzv#L_cN_zPd`wMC9Zz#%PP1jzwDA+L#xkZZKu|{CqIsHW!V^QT9Ohr-4Fs_@6pmV$^|Kr-2J4 z5f&5ES+@?W6NX)GHFoyYX@cu_@18{{6LLd=e>Y#QE z559;hA#t*=#GzA7grEl&h18(ILFJWC6?nkk+`i=|2fc=gDg$eSfS9je&0(lY?K)CX zQ6aq#B?%ir5#}H)g#m21Up)tCf#swG2nOw4U30a|Mc3+FR_y?aA@?|i+c1Dgv_QYf z2jvIKPbR`-pqs^KWL)+Vc1nVMIN>y`0E`2$X3iyoubC zql4WpxKBa)Mjb*-<0?v5gF&N22kOw)Mko;ly&U28tgNifa81_aOhJeon|h_pw67KE zW3X1|0r}m4F;(KRV{y3E%cW88R=Ocf2MP(I!MK6C0UIeUEiDQltzww{rG=B@^%J}8 zK0)My+K}ahE-(um=7xnu{%owD2M+KYH8nCsL4kWS8%pQXygTI^3kaGD*3Vf>@%W$x zIk!^duGafk4BtFr%O7akUwBe#HzRE|Sx;%)88yUQ29>U7VPRnhd)#R7sT8sf(Bto@ zsf8dKf_9Zn2W)x!KK@bc`94!#0o%zafb+_`yx6m^+m*%$ab{opEA`a@6{)i%iwtJI zc(Dvx^2p#|GlelQN#hlO4Mv-rn;b$yDHXO;8K0r75R#SPxw}3!01`nbNFy51zs3OB zj>*z_x1&nnmh|u5Uo>2gfj7#MuZ|M}i%O&ifr0FD0-s10LUI z>2T^cx^m?T1**fBz0|je#Ce(PbX+q#xAgo zB~a@lwa%6TAPpy_r(5r4=zH&+JJoF3mzw*D%wey5_^@eX!)^pba{>3Q`;|~FrllGy zYw=Y*P)J=N1T>fG9UUC5cph$cX##@#(g<+zHS9FrXG5&+N+>J9&JkN^2EdtHd8S-I z5MKeI!35A*A>e4MwTYS);O_~ZmKGKtL2T**MyzrDIz}C+rW*G4rMl@_ui2vKfQXbr zOHGuKl`ShN;T8aac1Msc!M8H}@P7Zr{tn9_?;>Z2%#j!6v4>dsmwESGlUkCF^Q%^5rc5xC^!ybf2 zkx@~-xvQcwmdbDW5q@$E2Br1IMUa&(b~*OV_CamY=uP4rgNpu$+*{;8Ag=Xxcb6Po zex}|J8q|-$YlNi$%C7{rJpI&f4OR30FPfOtGP53lJP#ci9q0>en7SN0dqNT4) zHPL~ZcQuJab2gD9`nS83F%2g}0je~j>wuC71x4ouA`LMe-TFQ1my+$~e2iRN15-wF zz;5c&TjS`lO@7%*GbU@*a|8&?M9LSV~Rp9~dTo26- z#HXDqHw-DAPUSQIo0XMC@qaSA;3qD(+Ee#~(*ffKxBE5%xRNQOcz{+i^6(IYNkRMd z%y*gyWT`GIO&lFx$K@aw_WZ#i;~M%taPsXePxL!EQ-RP8@=ElZTrU|ClV2K9!koD(v~0zeeT; zo~CI)54xdfYrchHL|74NUb+4^FI zgSDazgSZVvnlx%;CY84y#299Z+b5V^Bgs>O-83|xw@#BJyt#!zCnt^66Nc1Y!tAY` zzH;_?>;UD^h4Vu?^dN@+v*KR2bgrk!_7Y=c5&SyDUq9CCjb9GMh3mmBPaQs^EM3ZB zO&Uof>8ar~9byuv#~aMz91C-9wnu00-{2$f4u(zi`=FUdSE%CRGXmgZSBo~EtVDe$ zO^LG5wh7p{dT{HE+c$k}<$HH7rpbrlUc2Fe`|d8uA?ss-*?m*gg_em2jl>E#umAYU zt&2IiEC%1cH@Ym&J!>s-@|f~d!zN0mTlSR*jU_zK{DvJ=`r?k2`I_!G?B5^W|2e&= z?e*xrLL6M>qyJpxVSv~0VaHo3ia641N%Yqx4QD9yG%H@#bq6d~q!*W#mYRbdjG%3p-1~Qo;9%>} z?tX)T8};4dI!PeMzX<{Vr%&ktXE5Zo>r?W*R=i?VW$)RE2hNd3Q?O~oB2yN1{fw-8Jodf?yy#lgVe z16Sc*uQ-^n@C5=`zj!@(zy{t%2=p;f5$75Y)~*44&v^?Z)*jSjCJv4>G@>r;AX3c+ zS26smb#pC{DKX%H)w2=oh{KR3;*5(b@!YjZ=`#gc@)oP-&Ik2pFvozVZYEbl6^IAB zl3@6KRLeSB)$+DtKjO~oJ;%qE+db)V^b_>cI@mC#hrmull?LPODwlj=xbbn z*+7iI5OlHM4mdFBR&WJ3fu=FQKx9`dl=Sw#iXcu5a*;_4y3-MvM5u7)7U6Vz>kRt8ROb?@u^`1JJEO%a@~>e01I&YoK5 z9ez9p4)&TrLpIEXt}*6^@UETOx$A8SuBpFXkw9Pq8>el}1DIF#vuBv|=TL}D4Z;K%%gtaf27mx? zhDHR^I1JK{0reRTWy@5%Z8Cy?Y^`2=(dTNt4qtZ`%K&G0hIv76?&niD7LLfQrhEC> zTj^-ey3nLxilQAI`m|@Ep7eR8@`L&`{MIRuX?Gu)_mNR8A4^TFb?@V#26=dB z=el;$Q0-)ojK<=ps7H7ge){`VHP0^Utm`%K98-D5K9@w6ZNs!~+k;g7fdg(KL>3rW zS+M~zmCWvBXETC^c(WgP1p^Dq4Q^YmOP8eY-c8844Qw{Z@)jEy3Q;r_(?x;- zEf$O*{xZ;!y6u*h7QL}Jw*uq}D@1qFeas6FPCx9a3??ANIs4PVZd3?HT-M8aH6DT_ zw2`Rbz`D+xv*!C$EVr(jUwORJ85e8}O+I4wjaIu%kRdc*{dr6{1fFeqUEK~p8|Daz z#Yp1d%fdpd!N%%^t@h&3rn`#v9G@+iAQAR#Uz zBL?)fIS}i+ySx2*?zhsoP9Q=IVz0Y>ACe^|Aqj+zgzORuF*j~3e5x`<5 zL}cVpp323Uv<{;diQ`Q|4!wGci;8KIUS4AGE#_TFjXW(czsGGG8ynjNjsAkko-sd( z+dsF;nQVabO@`Hrg~>I4?24N8EP-7@0C!ze){{C12M_~kN3J9x;Vh!bUkf?Y0&RN; z$OEeRylp+=QiDGJtf+_p_*e%B@3s>13V`WFFMk*()yR^%(Nj_W9)lx&l3dB#8)cGg zRkW~)mV4SPEbe3x6VvbVI}>SaXc4j*6z9k$OaJiKf089eEP_kDi+E+3E@ zK@u7$ZZORrB_A=#Zpu4!1K;g2t@K8vRVo%$|WJ5V02cd&noB z0?R&kVFx&3{dT{o8yEs!7l@^Zt{d3*yv6ZlcgM`lWqCUCb|(I01rz1Pzg_m10f;dVU)n7E(xrHHy-et!FLK>Kw|zgm!S7{P==C<>w_e3_p& z1UC`n2SKmh?B8b(|GxfE+R8uIwC_GCn>*IUu1iUqRC>XBYV+3b-kLqG4%B^ z&1@x**(%EKQJVz~#%0mS$f(3&{#M@su-afS_C(le{~X8uF{7FRkIV~E6Tt>a7Jy05 z=CNC~DQL)l&){FEQ#!lZ!Xoujw+{CC6S_Fkz@V4hs=Yj?3dgWdU+8et77G}>F#QK< z01lFl`R}&gXBP5swhr8Ig%w#kFSH`=euq(o{#lL_FC~7roKg!?ZKHc5eR4{h7TWAP zoKoHYO(_x&-k(3m=xE(|;iKDMIzU4CBavcbXELyL^SMNX{Z5&LoRJ~(^%&2$8bK;f?n|D&k^g2f z+fA;k=`omc4OFN!k|vHC{n*lhJu8cnR~=AW9-plT?@S%<1`QQ> z%ky#mH=&7fK@{&6bCHPyMPcbnC^rw)kn9K%N&dGrB4{r>aOnNNf4A0bKx;~`|0lD^44B7xf%8xy`z~Co$4x2m14bE%jtyQJO}!R zjHreVwGWmFEjJdrOt)0R5sy zxI9|S)jOx9_Rt>=`9YKIu&keDV!GN<(9)@J<5UKvZ$;5-2R3wTi}0NX8A*L(&N50< zic78T6}I8e|1yN@Bn-e60SYqv$C6|tpg90KVCDxYqQ(pVRLSAV!i{PHdO@0`Rbe@QfY8gw_85qu*G zKcMHply@v>FlLn8n6VdSnG5!M95CZ#q!>uee;S12Wu0Dn<{Z4i{GYRVQGM4t@MTrn zMdY$u>+1RU?y$Gtg zxNYygc{^M8?}>aW$F;8^;Dit1@pLcJRbKpOG8fiMS1nzar2(toWwD467=kH~7P;mqx` zr{rVIJMwX$*HW$Q^1wWr=D*SP>m<_k-&Tgi-{kgb#0^#A ze;v)OkQH!(o3hG5*UpU!p05Bvxb&ketd}GlGbwY{-~pST)#V_#Irxh+^lL`#AMl}W z^RmN6GJ8+`EfW%H>gG?Xf|ml#^?TgS$+dOz8r_|8sinGS#JGQaPLg5@x%V*4pLu^= zPr$W(XYt9qpN{U5f7BRrX}++-mpb^Z9F>t9kC^2_w3(Aue8hw;Jey@vy4Qm)Pu;HT zqR=hP8vbzpR92egEc&+xcpMUq?5`w}Pya0wmLQFpFX4TqF9bfGN-&BeI)}yof&u1a zGt{Hof`7Y7D06c_b%CY@d0 zqb$?#pP$9L$Nn(2ASDXxe$ER6m`N1$6^b*0iBM;tqLuur=$`aYJKX-hQZ8Codt$>P zOv=$P24)Qd`^hqgyRDCRjV}3m&ej~aKi+vEJRM&;f$?X;8g@aLFA4;9q=AnH6Q z1IVO)tamTVnE+=o7I5+?;aR=LFx?kA{7*O3xL5uGjz}v-O9a{IpH>P}`jhTO?5km2 z)`1V_)E-PQhjr%qP+Ix+GEWyj(0t%dWj58TvRQ*}PrJQ5P&RcKv#sjfy6;B*Q#fw( zy@pN1A6<_D;iqov4ZDLtH0vxO33}boFl%ESVj-J>LCJ#nX$L$d^^f~Fq0q)Ns2QkZ z6&{3IE5#7~k|*+QJj%9kuU^6%swaw7HS2u!sha(_hNT!S`aCPmC_-w&S$&nSs6M$p zcu;1Hy3g1*0Scec>^pf(=Ho$K4d2vL8PvTB#D9tlT~$>zMZlU$d~f0}-+}76fmQy?>IZreO)=N5yI5zJX28ea2&atZ*K&&GyHdfZdLj;NXKyS?#y|SR$peIe!U~ZnVX`gF>p98~SsuYafH(wDq5S z^0|AjYv76CoB`hM{kt}gvzHjIM^r2hW3d7kVln&I^k$3t1c)NE;y$ElAuF3VwDXffS2i)&yh# zlr=QMAWjDA8sb(VX*o#1;57g2odRWp8^U4;UHX-JYuMET70-C2P*dDn|JPgzlbnXA zK#HI(EhrzvWY5zSZXI6DgU4v(|q2i|muU@Wh7L&#%u~?V(D+XbIyn z?sR*9G-xFNPfeVECL4Rh&aR|u3IF)PV1~qBaxsxtw@83(h>aP zp+iGAvq7sAE!y~bytCret$yw0nCOmb`=ib7A1j@60u&OB5{lMjJ?@{0aw>Q03n~iM z6J4L97t?$sK*=>SQqFbhu(36<`r=(4(SGIC8B4cbx+oH$&(%KQ>|B_6uyes~g$VW3 zw#kRW-8pT|^Ax52tE@>KV>fmybsQngk!t%nZkq|A4ol#7E?UiC0iH*~ZooDNK_;LU zb0gB!)P%r3`On=dEL%^o^|^fx-H@l7`uOACf2vLBh1(MY1A8Vf@L9b2! z=b0~^BxFZ*baZ?juPV0dH!3v%8_f+I=R4}^ryt(@*}LBCe+mr+{8&}h0HVO~oX7h$ zFIZ}IfvL%S!Kd6Gf3}$O)qHP!PCqWtY~b*UfM?5vyp92Kxu9Vg|5bAMeH4L*VYxrP@yXuNqc0=8vHK21{l@!_=`_n9b_4{K)JMA|+lP(Eh$l6SCth)Z-q(LuPY(%Q zL6id}`F|<(Wg9i$Rcg02Cpccpdj8zZhti__&BUYehP)x_P7js9-+o($$LB_|M_SBNPnG{P~(bmzY*_PO)&L@5nP$sTwKzrBdWWpgRlUj~m zP+3U^4*z9dpqAxcI{qx8sX-fa?4T0>gPGlTlWt`p05-i zzd`xRPm3tje13B2{lXu|(YLCmj)xjO9vsq~=g)8TS3oKUyba{J63|T%*#L=5!7Cq| zd?k*-pD>08TE2cLNY2cuEIra_OW=2CIC^y+caz~Kt((ao-GNh^_tC@(C5&(umx-;!XPA$q@EFl7qSJLZ+QpywD|z< z%w}=zj@8`zs}xjedgqa|`{;c3b4W|(ETMY8d|O^Ya(P2c=Vkuxo@4kzv|FJ_ft!N7 zLNos7e){EIN0c9^1r9w+H}cbr&a$)URdJNQb1;lCoj-?&54x6GS{CR+F*7ZRo+woB z+7VvS@+Y;OhMYH+FJwsM;MjL$ILQioP8(Pch>Cw)^9a72J)$ON!f$%>iSTfx|1Eg; zjTh}q`wuKj4m^vN1I$?XY77+Ig^r;%fAu)B}tM(>PGr8 zm|76p=<=cz&WM^Ce020-nM1+#F5kS1ZT^46*2B*W$@0GNXv;wB6tX@LN;|q31+~rK zXzep++CHh;iK2J37KgJCe8RPB8ZRGJa9%lY{GsO-t09@D0h_9C-sJ3l=-EEnO$}>h zI~C_3p~m6qFB;?~L~L;;UG+vOHHQAoy2CjyUp=^8{^KZDzA&&tQ5)xLRBPW?{~u1L zUsWbNtP!ANDzaI08ppb1v|nUCd}VrmhxA653_6~kyECLQAVW`FTKX>h%3rCnwFY!G z|2ZLs!LN|sD>dmQyLlJ^vkx-t3Paxin622iK~lL?8@=&|mxyN7M~SMj-r9BV2v*L~ zQFhqLXTcftD{;wjOoN^mk!c-W5RxFMG3oT8FFHe;I@{;YC#W_)Ek zjihgTyLEa!V}l0G%pZ_tFpNChF3|1~uLYF4xVSh!l0qKyn$1FDBN$Aoi5f>9lQ*OnSXj_e&jH$i1@lYWhKD;Kk{HS?pEMmUIJwa) zdKyPNV7Q2RsWngEf;9 zE6NWKuW)FTpe#oU(NIW!&|wNJv7ni@&{HTi2=gPZ=9lhxZmQ@MG50HzUfT*;R`>3a zLa@mXV&6|8aA!XJ93P1xzfI-ut>cp2ON0$eQ!AO_<{l86^Gld)B>}_0y2K z`6Tblk1sdd-(afiG+;~P*v4vK<(50AcGe_uTAKCJ`j-pNCJH3WVKfzyqHEFqA!W-R zixl2Hqp8D-GLB3zXxc&vN7KG|koiFzuTZDvZrSZ(y#^%w{bK&Nu}6;{3I@F#cg|A}#li_U0ekV=f7PJ}5`QoM(#99T!J^Ur0>9xx!e!?nJ4l>)ZX!X~RgK%(jlm zMnW%Qwd)m+Np>4oECzOv=RX4K=jz6M-5|S_H`V-Z&11LLfXw=LjCD0TjP$A3K4()I zZ)Ol}l1rJ}nQbSC;V7A|b?76IU{`Fnp8u)}DGZ{s_wQM2%Vv^W7{42Wle^4xq&kfE zuaQk;1WAL9kw=qZ1o0WMvAC9J*@n_(s8yEA(jK~uoc0pggQosLBz;@E+CeIC(YI8oIhv*;gBNBT{cN?}hb_GI%%gA0T5`^4{t-&~+&h1mhekD4 zzI7=JVL=48)buS}yA_cR{XS4OYI}B{V$XHVC3)@yVE=es& zvEEVJ+?>3iiLL9^|MiiZ>L~XB9Sfe}aHcJc@;-5E%y+5Y!3h=2KubBV-EQ3k zEicbU?}S3wsn8_|RBYf{XgYy7{Xeve_)De@P_9P|$;Z{jYtB_jgp}Pp|h`*{tO}wYB)R zj59EM`{cAVk!#G&wx@!8rr3%7T%#G!syHF5b7z#^fx#&ySb5)e{`DtJbi>Ea&(qOM zebk9}%Ptz#@t^yH#_}rEGW!W z*6~=pxC^}(Wf{Uz;j}Spo&UnP>Wo~3lqGo?etxgK4gvCo^u3g#{pASEq>H5E4tOl{ z6dIL|MT*6+bFtsq1(FTem$jqI*Xcbt!*%rLvJB<**?o2|8VS>KWgR?c0!&%scbi(v zG(x}PZ@-wgLb54QzsxzjE{Nh_Os!oFe8~JE)r2ND@bnk|v>gdi5T~yNC-;~)zd8~z zSI@WSvfuw5&dGLD5Wj-X7$%z1em2UL;eLXUW>L?BD^x_}#QAKeCAye3v4x*sHA_6X z*Pewg|DIjA>k)6P$N5)0ZOk`{MoUPh?11xecZ@4w(IR zM2zTXv=5vm!LrC-vZAE;t;J+N_P=9GCY@_`@#{;83hzg=`(HN<-V55j%&TJ6yNHbn z!zDzvox^1jF^ZekT8z8*C{fL`-S6ellsNFTF1sD-ob}wVeP$YojfZs)Jxn&Tka}50 z?eTa_T9fQ9Rn2Gc0;qlC-KV?OkAxIi5-iwYTdlqeOw`@<%kLx}eM5@Bl)TT- z{Ws9{BBNHXr*AX&X5Po6x8`E}YZeM)VZG!&Z+jBeQFf)B9OtXVNpA;oVr~C{aW&0T|E^up?tP)n!Vw-F#4dS zl;MQhqOY>AKuyGrXBPk2JJUPMV}~^${^XBnz}ESm-^u%D!eoPJ_GyLEjarNEILu;OeVKZ^`PKSIk>UU+{S zI+(~Kg`zJG9Tu-DOJB8KE4-5s6`lS{Krz*0f;IAf)czeJxhY|X)m#&&Xbk;zBs zk|x%H!_JNb93|hy>#AQXZq_GYl37mt9DRIbEPM?^z@v*gwuz%e=&{4C#x)J0ff^!# zujOh^EYEdnx~~q$TTx*dC>9dO^!Ci#GRax#kL|v?r~Rt2SKn`l-5{U*5Fhz)(yYMbrphO`?Ezx#AtH>}NuI7bq@To{ zHc!^p;MYiT@~L4ki@P~B;bMvtW@Xqrw-AGwbj;ssFD#0ggojHxsr5=GOx53nZ;MQ$ zPo<_U{?9L5;nPhWcisDqB8Cq?NHFqY&qSXWFe9?9O%!m8$*}h0FVj5fZ0>PbO5`Y^ z%G6ZC<&Z|ZYJ8cmyVBda1HG5T!g|wchN4UbC1{s+uV%Wl%*~RKf6x7;8UA!HOO-Wq znqv;@yIOIu-tKS)s1|PzoR1@&Qx@2#`f_XHl9YdkwgF}NISqv)L4r-s|C|?3>Nw#l z%QH04lTq&lC);W(oO`lwriQ=uF!+;2EGc_RI-scRBjB3`aWfnvj>e{GuZqvS)}Z*u z`ZN2u^p_@>S~?G<4e?IawTIyOdR`H#;^lrkkM}U|rTCQ3S>L2jv+wMqzR_lGIcOEL zW`xEhq3ktFo%0hYW_O2DZ@}jZ{&?5l+*M2*GpSz``9;X`$to*r2jqiRSXn=$4U@&p z#7bM|N{9*|f2)WGM@@W?Qo#x^E^7?>Jn+D+EkZX9fusL%?=4c_AXC(d`A!A_!QKbuEjpm_pA#gfAfc= z)S;dOUg1JL3v89&j{Xn_QGrbALwOmXew9~+r8lXJZ+AD&pP5xyf}R6;4$G>Wh#r2R zjk~cDwANa45US@7;(44^0OF_*CLd7SZ0*Tfu$82#iUAGHeMYwp>$L@pCpBu#nk1+;DE3B-JO zlt0ADnu*$%$1yIa@IB_cMw`y>ng*K1?Bv{3^sL3--zwEO56%_rE~gG_?fClo6>Dp{ z$Uc*OWwYt*%jnEdo^HEl$@mux__uQwJr35qlBZ#07ge($&HAa)T1=y``tjTV=iy|f zlv0eP$)dpC6v+);dmp#pYw01aeUwLuzq>V?=fbB$(>W1GVZ$p_ImTIcHZQ29?De6` ze|H_r^{84x46dJ8iq6ypLyYYg9*54RIFiL&E9t51qf4V^XJdEve_z?`kdmuBUq57E zXW_GSN2hmvNJZjl8u15WE$8h$PisR56-gc1|8d4*)m!tZt{hy32D00;NAjw=ffmA8 zay~uD1w%ff?!+cLKMS??WG`X5RrTaHO+gd2sN-n8bO1>2v-4U1K+T-sg>yw`tJu^z zN+!sA+3=YAJPc?uGZ)kB#%20A?iir4M6U$D+jIRfnvNq`Tsg@tBq*`d$xAXd_tGcB zG4YK_d1pXI?NLLe25INadas!{dM!Zx-1v|8z~c*1<-(Z8xA|G z`wM5JzXox1Tsp6!-b?Hs_~BBQ%iCDX(syr|@i++0OT-!~(?~JBT+cZMvOcFVPAx6V zk@~c%e`7Xv0n!#lj#0w=66qD#mx>BM=$_p6W@oidT@@BNys zIUThu@8}Nr1WxDvL`9;t(Q zT4X`)|COwTweJ3icky04bilg}efS@(W(>}G+ds3o zH3s?RO7L4Fy5Lvcl(=mg{d!>Tcr(^_8Z5%=y1F#*G*zVU$-xx-UYc~@VC$dp5?x=cg3j$(iKlk3G>b{Z7750Yzudn)Fbe(ln zRZ-XO4=9L~NVjxIqcozRfP!=#Iz<8LZYgO{8fg&e?rshtAWC;i#{rRsySDm$?|a9% zcMSbU6x{plz1CcFKF{yTesU5*+6d zMGa34y+zqWW0l5Pwg@#w+kLaO{Z4YZAw6DJ{WO20RKV=hJ^1^YFTbQzT}rX8sShGyUg#nr@rB`vx=o@Wav#xSw3cuC(uMhNGoh<*hvr=qTY(;)ogNE2F%E zV~r4oH_jZCE${FRYy7Wb1P|gRfWgu}@Xe)z(O&!M!GWCz&|SI!$v2NtCkDipO7l3l z?R9yi0l;OtSyJ<~x0mKlTDX3MxG!nCeXp^|a7=^0N0=_v-$N^TdN)m`lBT}^tzO3>H4gOR6YB*`w3EmHM?gQhci(1=t|1Ur;AOn({l3@ zTHM(qw{v-N`jAB~+?g_~b?U%~B5e!=+b%_}MKSxQ8G;leEfziFuT_o`dU_jtiJj$$ zvE4zjNMr1ONBxLV->|W3G7~-p1-7aG998581EH_#N!nNFW*BOTooxze;7 z=cv$}4k&Fi`k3oURMXBCS~fpJpjEr$Q8c2Hm^U_$&cDJc|~gC}(XKS=`g?16Bbac#QFA`l3pM}_qP zMF`*wrc&mCsIt9dcBq+As_=Ku`K5Cq+dv1TKaVJ);(t5q6XmzdDldv;Z*r{dUtG>< z6EP+vOm3}rMA&Y|C<)g541C+k@3yLzgyJ<_YQ3j-Gp#H#u!{9{%?~>Y9Bj&Ht8e2a z^Y4f`_Y?~Sh=JwIaqG&V3P13~?xh(dgs-Z<9H^6h=TdMsy{q#u*&w%&*GFSBSx7s` zacfXeZEw=Pnx{BGeO@=eh{yzj3jC%LN#~=+rM|c^Ix4l8ilbfCe|YifTqM5$M^V{m zR3~3ebdQ}eo1_dtTzZ8fDyon_Ikasnvn{ri$Igy=8gloVXZ)BKUbYC*57pUsIqhM< zj*hC2RqF>U6n+&(MJe|_0?%he%yg>fe&plQ;?49Gw^voo$3NOBEMCfmH@~|y|KInx zb>l}453uS3Ya%`SS9{iKVAG2P1`<`l;=hhI9$=vc&YHFQ094$L!Xh zCM!eBhC8hY1Rh7$d8JRce1Kl-Et~k_6cL)56?Rzq(;Ruy$6{zL9)}_}gZX&tB5yF< z7_`oFKIh|}SU!NIJEw_}&QJe*Z^WMj?qm2}zjMRMk4^Hu-*_KRaKe6rQRv+~eEaUZ zhj#oh7(PA$kCzA6t!!OHys^yf<^eG83|}x9pSu4|NLBUr_Q2hUlDePdVY1dAT(dOuU+17T_|8DNdmDOl{aeY3; zLH-bG6`#bcTerf{E^r6TNi0NperX}*Xje3Jnnz_576vSqJA@Hr#tHGp+R`Nyyf;~I zf8;EZ&60`~H!=(;K6i88@@*2zp^RHT?;>+Gny&0RL0)bTK5n^wt(sVLDG0{Cqvv&( z0pPa5U^KkK#yHG!~uUI8m-1>SGb%(-rt3;Th$Vh(d!4OQN! z3QRH@!O8(a2Qaa)kPvi*fLWff_(3x z?!f5|fjo>a&yK)DEUl@T*og`Jvi3l#qLDi+0}zvdC9^Yl3)mtqLdzyTAq=?bfXx8- z0ybpW#A+>)rxO#wJ1Ff~i^cUca3U@<8Xb(EJLt??WO4A$5O2y)Qvmy<%Znmrh8P)c zC*me{t+zbK!Iq-O&aD46h~%`SGvH=HM4I1yd(a~cxQLY*qTJ2Bgr6;_)Y=IN8D?^R znj&hBYe$}W{CwgQOS4Jx$euf2lDm&Hac546g?>}7$d-`ML?zKC6S=lEMAA?%xg2rb zNI>s2>g1TR-wl*6o+u=pO<;!Dd%vziil>bo9~@ zoe**X2;dj>fi{K*7^fEZ0Ke$sWI3|^5pc4$1I+=X+J7u#^|aAvVR>ZVtSff^nU?K; z8l9jJc5(7OsBk&8+M7q2-+3IGY|I$q<5{)hNPJ2WJg-3+mJ;9bwhYZ_-eo_TCQCAE zN9I%$9O4fVx;u(Y$Q>D!#gqYw^*f!OpGUjppd#*Wq+~1qZm0d1(nfVh>O4d4+~eTd zJ=j7#J<0ym*<B;Ik+M*C>w%LHA=aO0YJ)Ra4^$AuNSMveN?(FV{qLu19n}dXr zM}6#hNj$S#)*pIpip`HuJl1~W2cW{_=8 zqpmAKA86<|Dc)kGwPM{e*HDZE+23$ z|I>h59cqEz_Hhj%4I?coc*4!cl>YX*%Rt9ml2QHGKTGgi0_GLa&)OhvP48?zw<3rz zCV3l@V@=(NdwZAz2Fp@e`gl>v=VJY`-vEfh{r8){zcj}N-@oUP+837P$1S}C5v!b1 z;2?mO+M+v-mV}#vKw^!CTb87thq|_!Kk4Y{&H`Po=Tk0kWkfFA-5!@W9>8#TvDmu{ z?TaPa=w4V*_uh>xo}8z6EX9zu`%JB(CZ`srt))Ph8CvppE$gvqs0nm}uPc zmV4o|+KVmh^ND9A7Ue3gwSj$mNQiye{5`rv;uET^0Wx5_hwSt~&9G}aYbHyZ6Q z0zTJObQB{JR$EV6rsx&8hxQEw&_gumhZ$A!OIDe>uZ~#W5H`F{w4-b>xEG`q{H1yW zzsBtCGZxkoQGZQ-JaTqQ-ij+l_N_P6FZx3ASBpx7yQ({ZDgrL}9?inbnI&nWJj%z% zzO>6AEU%t3r*m)HX_w>Uy1^qglu{*uY`fhH*tq1>UikA2IbFOe-e#T_q z^K|7Z9?99Ztr=9L!ep;gmfv#^?Pt}L&&xO}xMGw z3*{!67pxIKnR3!wmpC+aK8=4xeozbX=`toxq-L#?KEu44-O<4yBIGgZzi01vHXXVZ zRf1#J6i?sv0Y3S;ChY`v;ub4!9<(=JkZ>RgbIe2SzjCt=_aU;;#He~MBO~GA(a3Nv z2Nao3+Y_`VEo8t9+1J+xd95?P0+CRwEhTU^v%~<7cPN9Gq>~draMFEQ7yBnqxG84W zk6{ha4nL!Xk2DP?5t!foYCV1B&T4LIC5hL?q8X^QZzy%L_KuG12aI;D`g-U{`)`~N zw+_z`9xLiDyR0@0#JUc&Qr4TB;b4_T(bflCdyy{Ar}PrZ;_CdU1UP5l{x!0k9Dl`C zK(AF(+1=oz@sU1GZnHW^uY@a%hpKm}c!^UH=q%NNtNcSfSt+^|M4<$ZRWu+Vl%{sQ z3BkO9Ueyn>ZUeTEgpm;)0QO=0w;OPKrj7s*ud#j(ri4N`a-b20L3~|chF$=M^$tK+ zj<~*9dkil(3GS5qClY$2_5Ay^JCbDo-)P4{?T5v<)jK|lMX*{nSS*pkmq19t%G#)& z_Up*Ya&uQ7thsYfh z#iyV9G2W*GIqhh~zRxX7g5i)Qn!s3X1U zc|OxRG~yqkarDi*Z!T965;7hpS&e;;Te^&$Lr#RwAqWy;c+`-HBv~V;uRew#N&CFl zIY8vu_}P4Ai-ovQkcAx-`ZodjnFkmTA%7>J%JlU0Nx%~<#kI?f(4c$tkzN`z(GC*u zEV}*w1w77NGXLxhgh=&13JMG?1T;G$ob zrmgUZ3@zF*wKpGzSp%YKjy;#e!a_0Zg$c61gL_sZP<1|4iH(Nc8jvp>Z}P^9r7EwH zBQmX|yLQB76x$QK^<=~aqJLN@*j}zl?!E>c$E}K&Qa6ZaMmiQnG5E=Do(gtT7V{kx z7`bZQoQ@e`ibgTZL!NBbJm%Xvd`Px2X0RrNkg;jxu_BBtH+r`HK5y6SYl$4_+kWkm z&39y>vUv34pN)v`j1{zuf&7!G&DiQqi4mi*8 z0c@WfM^&3aE5N=*LipaQmoHyp16_9BX|i6Eo8i`25oiC4zc=_MafEMe!&5L*2g5E| z-&==qlCSuxO9_D^0Ww;q{&`A{~ z9&LBz^7R*SzC2m!k_$$o_MJ zPW#7>CouLE1WGw{0R{#QXhNb-avc_R_?0a+`?Mp|Ka*w@X05?mFRrP-F&4~uM%Pld zuwoHt`sEsyG?pu?SSvZuCPUrZ{KCXp4nX1lhBnH+p zIyMDO@!T~p>TJ0J^)z8Na7zp1G#o#=;V^~Dp-1e0ttpg`|+$YiNflGn{`=K{ujBD?$EP32r%2keo46#31R#v2s z>?Th%sIUc{pXLigP4BW@NlowP-3?h`u0~zdkF8>O`9nC=T-ih)S%j$H3yD=<60!nx zNA{8$16~VmA;Qj-e>56Y(lT>Niy!!fzf~Gg|ENBjGac{xJ&fp6+oAK9i=LtX`i6U< zo^2Wf0qWN6ndFhwWo$QNZ&udxO}-hQnZ-A@vHLH_PWpxyY2W7&Bh^y`+iR|p@JdQr5Ij0Q)G7Q}FD3jV zCjzWKF6NCE8PnuS;&*9kzC?G6Ma4OOrZEi5>n@Fsv4^))N7Us!vtw{Kb8MPTh%q4< zLF$Ml(hYfr{ z=<{EWW>zplE_DG{x!=9)gGWmx`v;ePE?GqQpRd_$Y_lzr-qv9)GFC_)$TsVsYoyUj z?@385d3~>SRS8{OVHNz?5Zn9aof0Ub13VMvs@2$Xj=k#Kv)Md1^K9|fZ+>^bKS1Vc zchl^*keO@XuJu>zxE0vhQfHKM;m?8Tb`01ysZN$4=Z9qjyeC(UnEZhllHu_xvbU4Gjex4?6*uS{B!G8t`8=CN zR-L5Hj7HS{!v>lgoo&^xIQ=oT z#5ivMU!WnE!aF#nrp=H51nhmZyfuoi&qh9CyV;IN6<234<2_DVCS9VRy|<@z%*OgL zR?*xSJ$5@)M&;RCwOn;?mmuTSC^pMBp7&=`XmP2pdw9qz)24+*C#+t&nWwy=qW0&I z4ng+ByYF9KReX9SG$`yP7(rVvS!$~3MUA}7ke+*we&m|LFTJgc;c0xgYlz-9ZW_#) zTE3cjVGl0EguBa@c(^+J|h3e-K$@G|t+D z7Ny%Y0jrsXns!+1MQeh7V3}5KB(`?Nb5aQE1pA`F*SNL;6Pv*R?td)8(o5SVLYVIwtS|}>nLupiH`V3nXm0eVq?V>%GzB` zmH2@b%3^gRD3lKeepVsIRh+d}09}%FAG>bMS04wt6c)vGZ|#w-Tehgmh@W*49^jd8x6RNT(PREziimWXu{KKa{DZ~=Gke(|v0 zizp&W+pzGuSZ?H89UVcT3UFO{Ni0!zfcdSax<`S{^U4Lk%9SAyy2nVGU2$=7K##(Q zD6;^>0|A2mq~DYoOV0r4Cky+pxuw4cBU_;Z;G|nDLr^~j09S6Cg(uk5qNMLe$+rME z5?SHU?Dv8nZ;EyN)P6~ISF0x$3(N@pff}dv1K2Uw*vZwOz!cSuD;yLnDqn#6y}oOU zyQ=hbulhw}UiHKJwV-J(J|#`0s~qA@ukD);DE9T*AI^vF*76If+ZD+b;DH7Y#u&3s z78YLmUEp6Xthux0m=FnpRaCZ!0pv5#jYt|4eiOe}FnWcMWjY(Q%?gEp<~jdlaS!N> zL>T?>Bc_5-P7Ex3q<{M4yo%PQM|ysz6`olx&&~M!unKEwFkZ<{fDrgNXf;d=6Gb}F zSYr)KyIL{r+XB9|^FTiHxgIv65;j&NR3SZ=A>85id0(`+e5~}dPqe8d=Di#%mh{xp zb|k9K!=I$>P;1>qeGz}n1k`{^&%nU20I1{$eZwZW2N+Mkpg|O*(=y7=Y_LBBM@;k^Fu2XWB3QE?QrtPDKkW{GTtP0*nSmzQzgUaSZ=pSD_(nliu`kZv$$Jy@0(fkeYrLR zl>@*{NFa2gvqK*JUMwc478?okWT@{s&Unz%9~!x8_4+$vs!x|$*{!=0+exIgCW{}n zayEA+@m9pQAKpeMV#DUL3R$0PquFTK$%)|?2{<^)>NK`r-Nl>8jQL3U~PWL2`qj|vTBD| z&iC$d)p^x*(ZvGS_+Yk%0yE~zTrJy!`z z=k5}LP2{r_^Rc&ct%>aZ;BUU1Mh*3OQTR?Y59FlO5_P6{J2P55ey z2}vLzzW1m^{-KQe))tin@89#9LRd^pWtrdRa7i)||m4R*}9#zSq~;QG?PVVEQr;D`UIN z?VPFlRnSfy`D$a`kyBS+H^D*e1Ft5fNaoELwhxWLz$7TL^+^hgJ)r!e@s3)sF2aNu zP8^YuO<}Kd@Ky<%-FXbhFJv;a9Lo^KR{E^OP$jvbr{IBHwpPQGwt?$Vz_-~tvK|@f z*T@9aE#Rkx;A8msBbPN#B_z0k;YQ(6)SsGssoWIQc~Hn$0GI?V08NiL;L7d;lrJsl zSwXo)AneEXqPCe`VE{$`bNvD-_diw(CeDqwtmC>}bY+EjY^9aP245bBJJCEUYFgp1qOUl347t;IM*4TcOR|{`Ao@ z#;C!f;%lc_)KHCs+@r|vc1sb?$u&jqI=70m*!?3!oljkdIb}3mP43<3|6P+qRO^i07j<+ znSsDFeR6gFGwp>&qmMy2CTW$!(glf!*lK-2(5z2HT1opq5KRglI_zLDW_smEuF61) z^c|1=GcXl{+&&Fk7gay9N89T{v>rH7$9F$AUm$HK)XBVwRoFdH?{cWmrD8CeCQeOg!(@UO~oS`F3oAA^#}%#Ix%%&c5*3@s}UN zf&#DvSI?-;OYFg+8%^b#iGFtdj93Vp;`YPcFmsk(y*(LX38I~swy&u2H^~`RAHDKX z(@_d-Kahoe#W#&uH~Mj2Jr5+^Lti7gV<-)}e-4PHp<8?_qaj<- z+WU3FHLjrLk(%-$bK2+!II*ilV!aV1zOj`J(xLz~@wKxUCnqj|lhgIH{T1%r`w0AM z5GE1y)^dxBy8)RSk9@OkWXC5&nf&k{ECRA?Vk)smJAE{S+o*(SPtL>gvU~bca?0%1 z%wSLaeFM5c5!OC0J*bvHW;U`hmDw5Li!XXMs@L$Y#Sw?{FJEPTSIex5%)VuUUP!~W zH|&$!Ib3HnoWfRbgJy0aPCq|BhNHN!1*+bE5K~9tO3mRvJ?k`#Zj;QzZ^51g zT<7Jk1mWIsk}-Y#YW0=-&m>^!EDyh{SB=ovBO%N(-zk(*4K)b1C}v}+#}ob-@FDF+ zT}~h2775!Ul!c}N#Qs{B>?dByDh#PtMUxp-KlTEu9ZjBI3GK9FjwA^6lE!73q*oNF=a_qpzi^gH)|W0-fT)U^j8Tr@ zx`Teap{NmcTOda?)^RHFrgsmU1i%?B@i88EPzQgkU(swt1}*(;$uCB^!#*@xL@KDS zR&rwTxP@nxqx8f{@A_OQM!(z};@G_9VliXy_doXwLzfJ_S2bV@e#kE6jHbG}rW42N zJ2s>{guT(0o-XSym&x5=AT!QCBKeEv8WmoJ3XJC(+V4Ani?$tfX8=Q!Ye=o?8*2g2 zmRCeU`Il^_g~M}nOvIktUMQ%mN(aT2;@8by^8oc*EpKu5?tu*Wyzaxl!M?xD5e=k> z9kwIU;%gp!w9KtH6>SDU05M;FAXtL)_yVrJ3!(4Oje4^S$poBzdISXb^-3KM(Q$VBH zAYUM3qryV$YYx7M-y4GHJTjRpy`x`Z9aKn{)&@BCIJs&!3hhpX{(x5}b9J zaIg!HwdOBe@}>M4lF9?EaS)?)4spQR-&>b@y5_4eghf|?jx&kHCKZWl25_*5U~L-g3XDF^>RE?@8TNED%@8?lMU7SP!-nNsM4{TrE|ENN!Ub%(AbyE0GR zrpl3o4@*)%tMa8et3(8$hO3EXtbInlo)OP0wfEEU1Z-Vh-fV13Z@mwDSz$D))z$e& zO&67&sG-K-2DP3ZNr&4LIo6MVc!DtIDTP9Sz?*6SOtcu7tLVUO zOPP&Xy*(uM?o~CG5;*~M!e;lMYc)|F{JvpNI3;C)sWxWbAm7jjI!xuJ_F=4jhN?Xh zZ#b;=)e8lSh`Yw3nTZs&A5<24P_QRYA9fA%y+)eoUUeE{76OR{7`I%vfrtl)USIiU z7!{j6#V#2@<{{+BKFW6J|zS+_KdXJ{A z<8SBY=)9$f8z~$I95*Ggta5aa#YG_=c=rjwpIu!+&2Ydul;( zJ*I}PV{A^rUv3SJDukTm_B?Zdv?(XxHUt;z7PSFl8+VFmS#X&ciIE9yU4lA^5mj z=mi)a4cU$mgU5bIT;9khyF`B!gBO*P;hkzsfb?#8e+`@dh(YOnVfHXu(az5aWk0Au zThxeMRDZeWNM2q>g27h~T?8$?;aL?%)YX$V9?5YP+oawKyuQ0F+K!%nORiP!MXR3? zMy}-SUw2MX1zWCi!H98lq@J+HWjlJvsB9rCQmh^1a`6B(4T!jvIEeh)mfpvObXH(f zQ`FOo2n)krynv)qK#j9e{2Fi|fNq-vWGCJQ$ufXuyA1MA@QUw%U}SVZ@q;~|Th#mO z4YhtQ^KA)yLAzYioC{S)-V5W#${I2XH!Jzba1vbPGW(AK-J7L;n6*n5vyv3fA@R1w zj{>{(sQ?38+=HHoPELQBNn$=-3`g@cWqdlmrCUPddw(rf_5BLlS)$acj(5?I&Q9G& zx`XkTY*QeADG*t)dT)GYGxNz>dsBtxJzhajZw#RM&9m<4V6Mb)kkG~HPfoQ{IQPYK z%Z7RHgR+)x;PuYOJ~oY3IQe+=ax8jMSom_8{@R$;BmH0+H7v<_y9T2oE58Te`omLFMT z$|Bo5q*X)l+yomW2D3QEW@M-Ai11b3ZZ>F*@csS{>uMMDo?H)qE&{A+m;Y^o51&5e zpZGlcH~341!i>QCSl)l3qpckZvh0=s^yh?^NTKO+3lZZ5xb8)J0-cW*0F|`O$SS^ zhx=Xc2pMba{a$9wk3(I$(gnJFAk^O~O$Gtn%|O=uFpc@=EC&L)(_8^&Y2sSuzBYP} z)}3#U9v{u$h`Iv2zKR0G-6iLiWxt*Fd7xZc5PXjrKq`4#UNkWNs7&pgVOa$HP=O=) z*7m(SGKEc@j!BZH%3y)jY%zsMprjATx6k>(RItG7oB(E{Ysc;-q`tIIwGyM6ggn09 zj_qNKOsrXUVWqwt(j!z$AYZM~wYWEn`tEEd`T>77Rr#INACx&vDh6-^&*n=8v3aY3 z%D$TLF-l%DmN{%#)O2;{@ZqR@e;bb}$x}I@poXLCznm44!N;Yd8ob1-do)h8F>Hk+ zVr)bTbed2lc zyQROtgEj^ZoWURv1rq{YtH%B*G4cFyLFyt(XqVTrDj<}BOmr3JM;jX(QOh8(_AY2k zK+JhGH1)q!wON7**`Su{wUoSX>iTp4OCSARcqk>^L5#}2BPL#&p}xPFrkWdxFmkWpiQ>!qz1flYCGC|uHXsy zW?-0b-bD>-g&>^(RsADzT_!(fR7VU0m*Mckmh#8dSBA7DB z7t3ExLKAP;mQ95TvDxnsHZE1;Ij3pqWPq~~2u48g4ZY6F919bp$|^l}5Q5S02xFJb zP2B?HaTjpRP#xo6m|EdKFGs=D z&9#eI7xWHKWaFcK?T#R+T3NlGWAnOFOu=0O>M;A*sYKh+G3G}*#27N{k?6K-%N%$< zlJPms$2Ay#o(dNq5X6PyU83JYt)#?nK@-~L3j#3jzId^jgu}s3j0JU9L2f8$n8F2H zK%WL0ssJ+0a|HziSSKjB)!~CK!WZXjSqZk5Bsu)M=mEI{cH?5O+Ak^=+m{tDHBx{^ zi$|DIk1p_gv)XR=;vOj=Un{>tNt5GxIN{&ct1SEE%2TkLL0!!*)^^yr^n70TT06y1~0K+%feEKd!Oe2dbW--^jg9^mArm?$m5N++cKdyb7}0T zUn{L-S#E-4>GSK#DvKflOvebGU^PlaLb)~-MCshKVaIK_FK;Jj?!(wLL_|`bFT6Fe za;_v=1N0*XJ(+U(y!9QY_bpe6uCY(gOcsAtC4K+2X#r+eXCS)D2g1bwPBqi9_`kzF zH^>0x+r~t*Uk)e|-G;GhCM(qR{;R z0DGQ}j*htn6`BF6s&I}h;B@(FI#gSMJQAuHs#R2r{9|2tW}uA}(9!!XT+u`%*))kA z8X?E%H@ftc^OlNYNFv4OILx-IQGMEHzdRyPMytleaCyjf&SJgqg$8sahVtQVshbnD zewvik>5didw6*0N9Tg#x{hEkm+|x!DE&VRDNw%5!W?+|Ek58&kvc7$3#CxnU!`$A$_q(dr9XoTY@xt-QRNRNY+RgSB zdiq$Qew|(K+ms|qW8la!NUl~>()IK+CNYih6VDOuAVB$HK{Uq0NSeO!UPrm8=*i+V zrj0z$h`}NQ@7QS4@Hd0`!N8C{$M7z2=~0KVRs40pWfLVdoNh3?jnPe`=`CnVp&*3& zGgL${%Y>vv0ld-NBM3y6pNV9N!;Q(jL%gccqp`{MEoT3P}JWHvs1<5T4rxa)bTtpz2ye0#ypM(4mIA zkfu=3@qZ^f?ANXm+w(pieqSV_Xs3A16k^P@Zw}>yp@7a9IqZ4SN3WU6+X&3?Z%JG) zI1xyd-^c2sI==7#b#<-G1}|$xn{DosV^f&d>?s9|V3SJ?%d*3M$^XbRf?DML;{udN zc5Fuj8$ZsbRf}*dG)Dp-o6vT$mONMkAZqM5^lAH+Yp)c=@vhKU67H*drQz9o-X|zb zxA;*2r!i`ImSh`|i65U|plHnl<2LB8wiMj(WwvZft8SjCwTv%b+kNbyQ~SDLy^iwr zt1Wf@&UA{3(K6R}9{0}+l{WK> z^wMR;gFmTVeizzr;YPY#*4ebFBf!l|e+@DK^`x3C0xQ60IWi)6b@wS&Bx@;@IRWyu zUGjzhopG7b(0*G{0LumlPIRj0w1o!&COq_U0u9=2kU;XNp&SU>Zo()Zxv8r8@clp7 ziZr~u-_1@(z~gzc@-0$+7D|_pzx;GDG5FRdd<@rPX8eaX=DX;t zoV`dyH~oZ*)KpFzZN`(P0hx4936Tq>VoK>gl3y}%ZBr_NFgOwXk-Pqll|AXC1Qq~^ zd#>!{Jw|(>`sd2QKo?Zr;SZ>RzqlXKkr$;j6@k+of<0A*l#zzaZ|* z=?qsP3WxaE{{64i)AoqZ*(lQjsIbgT%biz~`WTc#Fc_%_zuc(s*Z+k>#*yOuPfkYP z2oEQE0Fh%Y-21j4x_+pIu$0K9UO$#I$}18Sm;m-}WGv#hVB=c;3TF>%b$0>z!xODv zW*)nbolLNb>p*>S3&HcXzwG{6J(FX1#9~4{k;l;@o3|4YkMwIOs&uz0`by8?h zVq$d?%2xcm{ls<_&$0049`#I-RSD~0Ko?>a`3Yp!kxz>2+_5qV zZ*;nkN=mim+M+h?`EYXKw}K(|Lp0je^1o$w-rpO_N3bn_jGXM55KQl^=hXd}9EQv) zAuRUPs3u|Ih|^faL!KR`EzR51HmVAiyiPs)&$F_xK2f{`UVP>>kEOhP47&7T3YG27 zeu75!+fV}uu37o!ZoR{XFNkHQg6)Gb0Fl1;B_GHn1W&Z^uie?{)q0_b=vr9FB#=kK zKz0166vUwZuPbL-bGsq*!AAq5c0WVzPo=xZMzj;PT5s=&rPK-5a(V0fwMPy!so-Iw zBU&aX3yvSp)e4Qsi_V=8INWg>L6yD?=({DU}bM5#4Xfk5W+3 z4XH^bFRd^!B}!RXgdU@Zf&?)N>YEXhL$p_(RCT5Sf#_{-N(arNd+*=Vuc@W#9EwSM ztZ$}GaOMyp2@b&_eHKJ1b0@ZQtku~z@-x4eCQLzQNiI=cVnD#e)cqb4!nycJl-Jy! z{BPa@nl9Vn8=Cw$UkO#^2XH5eV;*WKw+ydyCq98cFWo(X=3WUDf;CIb zLW?}X#BEYK%5@oF-m3F0sDoi}g!JvhbRU)ASB!psD9LY#$>f-x7>3Ke2pgjeh2j0+ zB^`J8*qtDvVMsAV{N!wM#mI#r;(@_huN|NSJ`G?oxLzo>#eMaQ|00>vMpFC2>40uf zBk}GJ-kT%^TYPJ!OZD3fyI#BQzoJVrGEhJ<{UCx$AK@?FaRPc4Gt5i@^7wJN3<7n4cBngwQC5_R`A>h+zXVG9gXU&1^_ol&HAKh8h6M#tLYX{oC(?)POh5|q zpD1z1P5-_=8Guv6hyIgeCHj$IOM%jqAU}{Fi zs@8@HzZY>A;T&qU4~uHU0U;6%R*6}4Ej+;UMPynR_`*#~?NZSvO@${udMC!;y=D7Y z(Y)2!^%m%ua;Yu@$G7ZM^mW7_&w7Y*;Rw^%dE)0V^=i&4;m*i=H70B!k|CrDIiXw) zCf${HoPojSC4P(SMGc%9sjhcXEMv?q-08o-xn^UWhTAR#A_w?6p4t>EYc77RINe9f zu=IMQBKC~C`$ z!PCsDCIL(l6<^t$$pz&TD2{dFKPQq6k_mTLww86jb&cQ_;1t#06%D7!LMd=c8)lzx zS0M^E>ZEVR>#Bbc5q|La7ORR?JT{7c^c_~~)JciOVsjxb8w87bR$do1i zLFsDOZK_@O#Ly8K;IZA0m;;fuo%R#+C^IN`gzHnmP!-e!ozSTq%uN?AT(??vzzRd{ zzRjcX2pw|HfaeAYMRx;?A{=~0&vlguGEGS&g5Y>G5CzLL=XtCP5?ybAfUr(r!BNt- z*h&WZlZzl#RT>D%f$m4-?PR$m{5C+P!I>{OSf+uKvw z7mQlLK$-&SEY`=0D4;?GSbq(H-4M!X0%_5uw#!mbQWr?3;)CD?1_vv>@CK)%8ohqA zzRKer{1ue6Q`JRam1!3eE2YpE3= z=om?C)YTqhEES_4rPUlX9X%iP0G-z5s8ei*Xf@IPX?Z^Ci^h#{WnSIU;@C|`BvUQ? z%eoTzjns6&d??=_X$gcYG5%&*?#~TxD|cIfn4!H>60a4xny{$bvm%ptQaZ~!IgZtn}iXWp>$U-zuHR950%a8Uws31FWRfjf1 zX)cI6FSe&?+|ky>+OY`@e4{6Meoubl5D#XQKYC7YpDn>QX*Gb=ciu$c?w8v(ZfAo%=`iGG%AxmFF`_lBAPfFSX$#oJq_(d90O z*2GIcYv8)NILWd{VpN_0L5D49Xd1Ws-(LTojb+tzqz-*vBF?)v4KB+e@Pz2$*9Wyg z83!#2AcPwm(tH5z-wl|c%RUX1R1d0MqlH!QPa0%Zm{a%R_?7nI7KBg0+Fj=T)xA`h%bh%*t*Sf@(jiY2roOXf- zwhN}KoDo_$+>BAlln2;g(Iqt>HBCCb=R3!=m83{ISON#@(w*MB?SkXRs}Scjo?Q2< zZy0(|V4c!ipI4xwuAV;e8!;{=_0+1N|EcB98m zN#63_ug5{f(@FeFoa8Gmnwr_+clX|Cdj?-j!u|)E481vJt_hQOlS>n;Lu9{L4t&F; z;tAo|qoxjK%N|Y|3QhVz643svY#L<7v`<~C-}p$As2ov~34)i};ggP;s%3f+FNnN} zV<$AxNht>@9tEw%6>$2S2dx!OFqS;svgs{z+3sIc4(bgOCee|;#f+c>$iw2_w|O*m z#cs4&Duy8l;gks0tM+5yOaS#qyGmpmlyDBx5_LdWCU@e?QaHN{vWo;VA;Z)O++Ywp zW~CXh`frbigoNOcF!S-?fa31u%P>W$2xgTh{VH>ANgC)Uzid(Z+pn50pT*~V0DYe$ zI5Y5=p@9@#D61|Bed-5fzJ%5fNVEuc8p)syO+c@|buCTi6po?*43OY3L=oT zmBnn93EPBl`76{RQbnaLp)QN(AC#OMiRUuk8^0{Y<0X4X-1eK3SIg~j=rf;eJ$bp? zUl0cYh*_TW01yZhqCD8nGs_#)@2Wh!glU8pFxmcs9gWR=XVx-yVYUGbF%m~(i?Cbr ziY@SNc?i5HZuk+{n63Bb!);Spzug3r;*mRP!^+uS*d9$;k@Rh@+ z>P-z_;@|qfv+8Q~5GF~Kn$&Q>a3i&F99J{Y;t{`K4@T|D#~f!p7DkraH$jtz9BhQd zTzX;9%koam7!K&cV7x&)P|AF=Sx{06sxqkDdgS&C;+7+O=p!Ku6X@OSPuQ=x(4kdo z^=Vs2*Bdkqr4j}GgngIN9~7h?Wd?-I$P!uF2CC3nbDE)prZ8q78DGe z9vQ;1#UD8e9sO^TF}k~z@yaS11RI40$KI3jYbz34;V6~x3(L*_vDch`%aa(69*h?8 zK(K+|g}iJ=JX7p8FB#!-La>s3_)kHmPT?CPzs~}5v{7KDnZ!segvhEFNlU;2<2+tA2Hqs#`)#EoYZzOeTKoH zatO$`k>6#x47U%zP^a zWNZSx*2kC_e*g=ZoL_QH0idZ46NA#)MJblg#0urzhIV|TLO+1M^9Pzdf*>W_=haO` z+g?{7VViP4Jq$6W4)Eq4#5(~z zga&@g`-%22V{DLJ^AM39RcN$DVk@L?!XFxm`BW8a`gi$KlqQIR%X->N3DmX)Q<_cA z666Td$S5@RqL8Xcz(bqx(%K&rYZOUlHV)lTGDy_HSmOL8o^UOeHYNF9hWB$wYzR}< zU8Z3C?_O7dH(6V%W>EXvdAj&UU>KLX5fm9NR<2X1Y~pKYOE~>pu=+JglLgNKl!Z2$ zT`FORRxmf(|Mf#*dC&V=q!?g4poH*=ir0}T4XGj{BO|RW6x&SEw{@0pi7PAPgMb!B zpJjkdC^bglLbBWcPAZg0{EPnvcJXh<<$tB5C%)OT@k@{-9Yi%Kf~Ze_N6>VEZvQ1) z@||FtWvm)OH9;7#h;;$SSUmrgn~?zzT)+^_=Jt2y9`p#Q)3G@J+SbPG=MrL6@eAk} z3LF$-XPy_URt-`?gWbYnd&u#ubBAo?WVQ*^e6RaCZ;!|Bjyuq*_RhW54+NM=KbX>- z3<+0Bp19EqCOZm3%Wp#62E63{$lPzrA?2UcVjP-JZVS*ql02{i=(pDE-xJ-{)Ut6o z-;0UQ_ywPn-;xp4bCK-17ZBSnWP90I9%uddHOL1VZJf3+PEn(FXqk2T)!4!7F0beR zz+Ad_!jY%7h8e^#3j|kbeR!To#9&YB(2d$}w8((@CW4hM9|zr!+j@rT@M7km5+!cx z%ZJ3#hygsZ!fceR>EZ7lEQSP56X}35Rxl7>-yII@*iVEYoEQuYE8J<9#kCsR+ zEG$y^oc^^8AcbToT>xJtPfqm1hpe98Ae9qP`QT&gmORnOy^rC5cry$Po3wbBL8U1% z-LWMJ6kB*DH>AK!ua0qyDNu>J>Rm)EDo)D;mR61QRrwWDV067n620VkJ@(;a_0S<7 zN;LbQ*);FUvzm>1So>a}jHRhJ3U~WZwSuW&j(yp!lUB#Fmx9i=2Jl*gQSi-L`#U|NZ`$L5 zzZY<a@C?hC}8UgY`lR^?)c@Gf?w(?9f|Z^k zknbvTyuO~+yj5qBX+;dcFQ#mdDAENfN7|pjDb4eK#^ctP?!RQJ`iCNJeyYy{S-EY> z#=C6_1mm?#z<&D~zLAR!;kBR0+zU;5Jk1z)S1~uxhQWq%R+sbnH7uq-mK1eurliv?Uc9==Okl*1wxa zKO$y+F9I$cNg_$Z((&xf0(hNXkKPBdtr?`MEki!_7Q zz4Thhn_r0saY0PEDlmv<{V63N+MfUxHxAW+w2tL2({qjP`o8xs!h6n3eddi_vc-zL z#DdpSh6kz*h~f5Ta7Xc>YK1f<9k7vaqc|sGYZD5Dbvx8VkiUU=>29n6?}_HAC>#Lm zf!iMqA9w0-L1CdNupR5@>=eptiwFyYF|4_US1}L~GW;Gq1VK7RktqmvfMuz~_WehR zSXBhOAIzc$c=>2K3IhynvC-`+UUlie#74J)VU`-D0IHU7EWrb7y>{yCES-eO=I)z< zQSaA<%L=;AsuP$RL4SQK&p63Q7v)`yXO$^_HBh2M@O=HSvz6Dtrm|ePf)bk4$JLZy!ZM-@H+uaV7s&Gq|h5(Rb4|r;E5n5_W!rytMZ^I%quvu7?ZZEMU?C%k>hzI~Mng+~xwd z5&WbDJe+;OGMw+YwGe}>T;K*Ad_c;IcdivP8TxzlZ--%?q;La?w54Uez`g>=MsP>M zd6GQgGY5?-v=_WHoW!c-6D_Au4O#Fc>?+*YFxY>WAjaVQ9aZ{lDN}FsIUAEsHb79`FX(|;1DuKpwW8+`^ z+}!>Kkf(YA3S#L7s>ulv70R1Yf+%}i#=&W3MT&6Z>6F|g1GIaK{`?RrW5a&v=>WqC z@Xj;-d%gq8Tal(4+JAdo*kDrY{ehkNSk}`Fk1aw_RT=J16vD7$00IXO4G+hy$!zn` zdT$9-c61opmooPxlzK8ot$u-uu3{do#so?{96ldJ=HX_ekxkUItNFDjR-mO|hR%rA z8~m_NLd!A{nB5qt8bCF-vFj~z;aO|9##6ke`4-bz-}QyY)T>u=4I!$L&vHV(RYk8` zNBA3R;fcjZp1puDPu1gdyu$)Lfa#5{sC@g1Vt3G(;rrS)_I_RDO+3w!8q!`cx=;Og zBMd~+O2squlm+X$oql()JxNU~Ud9diNkUaDU#TCZ=-no=Tcv6UH`R6su%(O3|7ir6 zt$@=-D1atGU=$)qW+5AfCoO>a$1=aB|wRklWwcQ6l80Qkt@$QA@bB_dEowAAIC(F## zLGp3m@nqjc1L1!>QNk$1>8aNmC~uzz zjnUTPp?-l<%d$%kaMF*|q=%@)aP(;$DTo}e3Fv(Ceh4>C37-!pza5!4Dsy>hxV+@= zytvL(;cn^+!DNAusT!7QRZBV!5r`WZQ7rl1+UUA1y8Pca=ZC1fJ8ws4x&{fS1Yi#S zFFo~dP<^U98sj`)P#k1uA=KO z!%_>Gly2h1o*ME?meBHL^BSnOmIhCM-v%9 z#fHd95bRNOrFEyd&qBN|^MtF1$`M4Hz3AT_;$Nc=g{ZQn0ENvsW3Xfx4i+L|u2NFk zj!sVk?&Mv)Yd-lkG+&C$p-187Gv26FjX>QoCMeKTXPVdkElB}T=mT|y%b*nfex zSI=CM4Tjiv$_QuOxIrH*9t;o0i_xG%nrabJT#i*k-~xLwBpW&SfU)9VFw$ zZ4XRJsu+V2x3}p0%)oqQg}+2%Uj0zV0$N24mAT3FjIB@dc%I$1rmdZ?!pez(qE-m!L^lr$6X@pGo>cqeL-721F+YwozxURW;P4N+GPzr zLLR>6Sd5QH;?0FNE+h>wz2|#70$S6Q_ZQGYmKr`Bcs%&i&U$P`!gy>7Xl zD6OhOVv^XPT0~liW6le0&)?kgTUS#2@n8FgOdPpGj&3hbslEz&Y<)G0*}B={GZA56 zsuuAy>_@D4a+5(@DtZ~tZuWhCTL>|9+0$?qfwPi;A{bi?S&0Y4u8&z2PeuT)D9C$1 zD>9Iyp&X9N4f_H$Khe&_asmfXwq!i`5@DSX+-(h{}nc_qrUx^dudtaTNi zYBfyW6L0n~3;&D_zqQZ&M-R!in{GW3TH|xHhLpruTPItdFeix^FFS zpApUQ#fapO_tXrJoL-HPt8ZIm|I_UgRnKk)E@VjvZkA^7Z6@wzC|uf= zisUz~7jo}$h%G)hFXc=(WH{({;#;M`S*LICy=qPp#4R&Z#W&-1FGJ17vs;agW3fVu zVOmhteC2uX7igu-dqwoJ)zLC^h(0+j#(_Gm*nT4482N`I79%r@-AE8CZA#on$;JYE z-6DtkA8VJQq;a{YB+n6xLay$zGq+A26(ZuWzESsn`~1RqBXcj{8-mqsW#nC}A6;S3 z;-J%YqL#Qr7(I3{Uj;JkvA;7Ey4i@Ynonlb3IssT6DVhUa@@zB8GV%NZTzpuJXh_h zsj&=soA8<)J+a4Lo|4}PHHd87cSUaDAhKqdJtb;4RUUL)bgr57Zabo9Cr7q#B+_x8 zZqrxZ^}afniRch;!w_qIN(=`Xl{<{?wcAB$j%k-ngs20ybHu;|jnp(-TT^(mX|j2% zm!{dwKI21m@3Z&Mxm`KX7*lHL4Ss)4&8I%^*wxEdqSvxHxiW5SESEI|QngKA`~TZW^win3O$R`Kb{ zTKQkPL&f0+8p-U_i29fW&sY@VLdV{h`8ic&u?)JI9ity}zDg8hJ8m!9nmOzTT4Adf z8S4gDTaQE3owPW{hu(dD;v#5jrp3vLLgRox8qmG-4VwV@vBqs%cFDC1odf3 zwmG(iI5f{4u9_YuwE@u>R#Hl$%Ngc@urT}P*Z!MwnQI5Ye&7RYzZiV^`XC??ymAbCn2kB>>g~<$5-LAMx9cFVNf&3n5141&*XoGD zmROeIKmr|1oC%W7#>OR3c$;HH%Qf-zyy~2A+8jA0gPp#-oB!FdN_O8&FmmN#%NFWt z!!YM+9P7&Z$ECoIY>Vn%wAoELDo>wnn|`5=-Z653?U4UQ`i`7%QE$S^U%)vvy}P3} z@s2QxVod~hO-=uVKaexJaV zl%d$z@3qB1{I7o2vv9ciIBw6xukU|-fg!tz+lp8*q2Q;WL`a>(pDF7oR1rK!(8Pl6`ij3txHdMl&djP?TYHP-WyR1UqP_jV!n-GeLws(ME8=ax>V|x_K!;x zt(^rHV;)p-<@gX~4ngzFp32VGj+@+ZHk!1nLH8%2%kY{ob4~z-8`Wz66AHDBWlQ~- z-eUvir^0%&t`@IhCjm6c8zg>)#kz@joJ_uD)_m1fE>`dh0S!`yOhl~CgJV1h)islV znh-q4XI*JQt7c?CeNvINYCPakj6t_H!98c6r`wXOUawDM$?JHLsH1u~#!4(}D)fA= zp4(=F=$B)DPLq0batw+w1KTr3q{|Tm0bws+q$b zXk3-*6lGmOTI-fepc=BGLD3|q-<)at1!KCQ{!G34w|N-`pb*wA$EhU^x%zp|U+l*5 zi2vJr=;0g3fUTJx8A(U7_Q=s}==6>72Qf1;_~Hq`YnE**AI=Ch`{hiBjZ+!dRu)AnaJrw=iP!rm!qO5lAAIJ|6gKV9zDoNrD|VYb4s zxqOE2Ukks32ynA0f|1dQINweDGS6X zYQBfh6*=D#P3Ve8&Bv$XK31_+wC?vaKsRRLOxXZwc$-= z^7L*hatrK@zx>IK;>Fm{qpT%DE^gr>BvPWri?5Uz>M;)auEhE&!C8W{v4hRMbEN9- z7sC#H@S0y_IbALpv)BW=;jHEq)iG1kNNq;-_^zk39e#J~)ZQk7tM(au4Hkt7!4dp< zO99>!+0OG_s@i!iCI23(^__c4p9lIXO~tAGu#YY^Kt1pom0q@4j`KL3*m#+d+_0pakPu=Pj*=QwXu7p}kO%wJ=- zOa@3Z63Z>8#Uy&A3zuz{WMZ_|I`x-rj@(sE_qdDSlaKV;5@SQ^D_JZ#Z+=8Cax43; zd=f1W(tpog*6=)Ap6p1x42~ZE4f^FZ+A8#7tNyP4qnTbHe>AsQrv~TU2(ySuA9?R* z0-H7BwGK7pkY>M$w*+a!lG9|GBYw9;ZB?^czJC%$Su)Obc%R7d-wiFIMlF~%Wu_0- zrj1kLCaLZ5$wqOD&ODPQs5s#~9z0Ol+a_QQ@3sDFm zXoxizY+|gv-`*>0mDBltjNv+Qp?f_|n}|kFU4tU!VUsQL!G*bgNtRmxtub9fHy93A zW8#y{S9E?(&4UOW@m>j{x1E1#s;bL`DiqMDS2cD6sP2&6Y@0|W&11M$fe)8Ne7)0l zp?C?3lBAI33(tLr=f+VLvsxQ?iIh@Rf0vD9slM&IzLre&CKIc#yJmOIbd=MzEo=(R zI7n}fp9saC;^w5def!mX&6RG))xguFvc$?zJf%75R=V7nm63|9SEg8E{;j~6e}M61 zgArW@2EG|V@Ah3k8%KN-tucWo6)LquvIjHrsFX{yT7pLD_bc`IVP=uw_td(FUo1KW;PGL%F-0Bo|Y z4;SSpzr?XtLDFbjg;6I20;E12urzl-LR>Uxq{x~4bGd(I`#a6kMjKlOJi-l24K=k* zVWsMnloUu(&L(s(;KC)t_@cQ~Dovz`jIOjjPPtdc`fC)jaUb?FlcR~Mw~72D^glbq}2vTxl}yhl-kz$X0KX>)9kfH5Vbs39WdSKv;e zW|~KrX`=$S|K{JDWl&5=5c?|G9D5FqQ~@cJ;p&{&aP(9SW@Vp%&up&Xf|Wrif@vn0 zVuRr4vIZ5o;%w!7s~N!uKSlbRRZ!F29_4|32&6r`#$sP}#V z)bX?S#p*PU%6)4|1CPPONjXp+jBV z)79f?9}XE8UE%HS?Nv{FRxfgSb6$ML=!3+Nae^;))x~*sI{g+jDHF)}Wn$*WTIc3R zM981#JhF!J!#A3#nhZjwEyr@TXV0k;FF*}W{`Dzd@>Nc|jRlsNQxpn{O^3vMR`lt; zkTv5TJAR7uA2K%)I=yu^>L6L@xhE<6e}%gWR!03h1aQ%e4Z<}s^tXSuRd}6d?~C#> z-U}>|9b~^9MKWTI6!^HqrC!J?rK6XPaXYHsV4W;*IRqamRs0Q4uLws^M22*gXkj=Y zclAy>lgHmlzbb;^5UI)YxnYB@*`za8>NkA;oe4>&DbdY3GR?TSIQPfcfgN5a`nGMk?GxA)6(Y5M&di=>w8rB(P` z@|!J7GPb6HeSC;u@{Ez22Wfh#+3Dr;tY}_!?P&Z~r}LOUY1nkPTFicQP^YYEz8GWO z<=0V~HM0jr!OGKA3|Ft4#?60E6z{bYH?B4_^}_LbYJm=StX!N?vb6;la@@f*&Bf#0 z+=|#TB2xU1tH4S9jEC%gs(J>j3y0bZ^y7fQbJC(mRPQk=ciRa35 ztu21HAaFdqjOnl6`@Nq z1?_nHwN*-xgm?QdLn}-Dn%b0(L*dj}8!{!qDNmJ#K-B&uCZxhVsJgOnnhjZHC*tET z2A*BG6B5>SWq`b)i^pCnf%0W$AxPG?KF=D9@hiK1dfTaj!6mQz(}FACUvrwcm{^-J zS~Kdk)o-K|?V4k1o@9ZJC2omQl%(xT89#Nrl31#}(y@5q4~(!+qC14!6EFAubMYpett0Ksg?X$xib1huk+ zSF`ux`7jgxmCljy&U){BQ^<7eIJTIZlOZ^E5|=39K8-X!_*ht1fvQ{g!gq^=>EuXv zy;J%5vBx1HWX|jKY3ee(6_8-Sc*~wwhtYs*-SNS}xzX!-^^?U@G1#;C3>g?1=>bG$ zy`Na5{4YRuH`Dv9r1hQgvqRl;dlXl<`cn@9kqBjf1^(EWx#t(2>Grr{)6On|k~XPZ zYP-QFtl6S`{#5up@$%D6!@sEx`DEJR6_JU*-*xo|dh|0-KFLRVqJbpiWC(ZKPG`}n zZ6oHmy6wVm1{t$8Q&Krv)(;Knz$pCfIsERobh$X_i|}H?JK2bW2uZ19 zT-C5v45cHi3Q_955o54BqTtg7g@^fZV!8_%$BH-RP3_$mr+wL_1+&DpcZcwr+IWz- zGWR|o1uN(xlfo*Uz@F|R+uL=G2Q)*WiwPB00(97D70}IF??(iV-hTX;*Xk<%4`zAI z?{*lqIhfpN{RnoaXdnlxdlRl5(~6*J#NN#5-Htmt-yfeyG_i(K=2BFw5)$rd2+hOc z&VoXcS@qnV()%zeCU}wXraxafhkM1;!M&kaB@x&4m*RDBOi=QDlsX>L><%AaeJ4_S@0j71;1r2NUmz!JpU%q7EFu|c2 z8NOrrBj2y|tyeC(as52lNi+Kq>9h1FY{yYryG%I8oKJ`U?t!NmG&NgpkmRGI2hW`5 z@TM(3?xAoT(mvyLMhFG3p8!MzlVYL90*BjnAq@CThyT3VokYu5%)Feo{dW_>xfLF z(h(z0F_xz-EV=UZC9^fK40VpiPlU6-my5TC$llH6J%1CYur`v8Be3@G z0P`tY78WU>SIbk(jDdXu=22jZ`Tg`N`EVWoPM{arKrFQVNHW*`&LY<}*S^{qlQEG@ zGjIvlF`mo-Z%DeEt0EXfQ9K1eilxQas5BM&tU_u((=4~EMv6$Tou(~fbSw^Y45r9W4Z}a0^84TiVXlIR_=})fP;%MPRsi7?wbBw+aHrXeC4IqoS3O= z5MFaN)E~)J)X5763MKyj=59SF%ZpOiv<3E{hMu8*8>HQqk^ z%KFvJzkE8ShQ4VywOAv`6c?;lrz;794RT&>fObFa1v_EIVVj4%(06oO^{5Ng!+u9i z`uj%q+}4|eFjx$dqVP?y-!LoszN>(~-@VHMu$6e2!}te=$BjXq%8ItY;V z5rKresJ9ad$UP%~O${YAH6j}u8%%o({GG0^_V)JJz~~kD^T9~DfMD1bf`)(RLo0l8 zh22pqwV@%Pf`juclw~9n5#Z6-!=XEwfmAg>ikhAzama+8o$WUw*UHwMxG*0;owZ2Fr9 zRPCTfHOYY@V&+ckIza1x=qszml4A;}FW*r=l1MTw1$HLUcUMV!&3IQ|3Hr6tvh|&V zlTWNq&q+6ygU=xjv3uQwGt}~saEj1}s@TJ^-KJLJ<-|g>;HPqg!@rv)0*37ikNfKe zXt6pwDTy(!JHAUTZ_p+mIF1rAUC>Pk)2Eed)OxKuIvvgKdX8>0t@mwax?IC&=vHHC z=iS8LwzuJoZ_iO??zbC7Qik0wT99&+p_aBD`I963=L!fkK5}2#pGHSVU!P?@M%C1C z!qga%_$>c-ql$tFuQ|*{xpzEFXb*7<$Im16q) z7g?Ica<#l#SLjHDfy@R1vL%<98LU`5={Bakwo#P-6J7tVmoIL9dJK&Vv~yvehFsi_ z0$`r9gCJ0_ujG-kGKYZI{lnI>Wmts9OE@@3$p0HBI>km1H9*(E&h|Vj>iQvktjOZQ zLCUZ0#(lTtyzH)(u*ai$LT5Af;>KdSAJGM}5|MiLvNZI|fT#CV)2meAJWt`)O8c}D z?295uNn*b?Z!89yADO*)&j}#He$G#ppjIy*|2AM&GLND#+frTKv4-p%7sKsd!L1Yo z^=fRcJAB>Ks9!6n+13Oj29bMH64<};<*6cuY~BiH8$6$rY(P{^B=hQMYOITYbOm``GMI5k;|&RF1LmN+bhJ|^^C*gxMw<0Z;;jAwPS2*&B-uz$jX zSH_gU#8G!pi_v;KkAC<1aKK3irT+qXj3a8-mv0Z#eaZcU*7TBef2E|-y4DClzRh1e zkqj;#;G%yb2X8val56|va@Kkd%=Qi#Tj#zy%_N-(VW{x5_s}bT9G2cA*b}D2VuiHK z_^8*&A9xx;n(pq6X8qHKN7lZip0RAon+Mzuf!|uSiG9`f{E^&#Nd;{4$*nA^3s~7z zSh-S$p0Q6B_$#ujOBnY~1y{Wc`_IGBv3~#Xqq*9iNv0_DBn<+`CJYMrJ4^0M7b5== zMWlAg419b}hVo~ITa3%j=%>t?!A)eN*8r&jg61xX2ZNp&Q#VVsvUaJuiHV6JNY%LB zGkDyMWki8($6=D?O{b{9{yG$dfRS5Gm8{mqlJGqTA4X_+%vp28^ezRZr4pW={HLd< zhPB#kMjcOt<(FH0#&TuxK}Mf(SJ<m8IL6PHmL8W$SMbVJ)1|2g?>hSF< ziN5hc%)JxCEEgA)vn*}X>2A#iOnBU#?id+#>=^eJ$gS!ST&E4D0FarO> z%rqBF`Qke6lipY9EOftWNG`j-Au8$dXm5I{Oz?1LweKP?{UMNaF4eZ-)=XVED((L$ zuGj1dDOehH=@MHo?p0RWzT~e3p!lsjU8pQI_p+KQS&d}9Hec`+8A7j9JG1-8S?d@p zTMZ@XbT2)|l4H)5sY?9b#oA1(o~lBOes4kWmXKRc4r;bn17^0X+rGc?jQ%F>^xp8t z>W)R@$&HUo1=Q^vB|q5g{S-^oPdEmMFCmZ3Dvcven|sSXtxo{09RZVscO|yuzq;-d zj2_Nr+*5BI8yyXll_63dq=N3)z|jO2c?W_pTJA4(a`N&%fG2{Cg(an{n?~yc7|Aj+ z34TllKqCkIyZ%)9{LYiFLWA5`-u|>XUKgAHc30y=j7bPL=s^l0MFmQj%|U+TTY?hc zj{$k_{uSyv*Jv5H4@N@t}=1Syjd=A>ErUmy#yE zzWQl98@R4EGHU5?p4_QvpcNK@DwK0id%3?9{mpny^6-Iu`p)l~0__vC*G~gQ@GWro zyKslRSY#p?OhJmLs4=HIsHmj9D3I>qZSDl!qJph*1_-aCc1sj7w@FqB9Hhh0uIdBO z-Q8U{ZVhSi@_#ENpYM)LKJH8^ecxF3^YJ=<_qK&!&6`Ynq&<(^?Z+v4uY4vM8>4^#M|b%U4HB6vo6Cv1?mFe9E7 zekV@6jmS}*dJ1%vd<98>Uop--azG5%f=~YVR^nxn%x6Q<5&q^I?P8>#?A++SP}2xo zk|k$D-&w?YJC7ccd;RB+@Yqkfc$(~Ws7&nTUbr+NA+JXz-b^M21kkZkCR(Lf9nO?lo^h&Z^*THp|d7pkP6DUF4#jL9MW( ziR!VJOZVhp6v^yx>y|P){54jot^M_{$*|2jj{SN;OIwR|H)oJ70p^Ph55G6I=YQs& zAu%_SEAv~N+b1u*LXp^nYn&3KliI{($e6Fjg@AxQFS&I7C(-h*g7LQqkd;v4&=1x} zm)`~%>SBkA?q@U(J%yoWzv5?8ArPN(S&3lLSeD2%(Hskve19VX)d{T=?d0Gea@c|gth}?T3EPgex@%G$SDex z@(B6#Dcej@D%%H`x5F|vmpryf7d*Dp&8@A$X&h33KLsl8&uM8TDVbyD!DD~;XUp0R z{o7xPj6qpC5I*M%JfqHDcdv*3aOO`A;9jUC>L4*_)nYxxk%Sr{{~nyuNm;sKXklA` zsJPc#5v5}y23-q*prrGR@c*VCECO%B0*qaFY&ByGZx(h;2FRJ6^gBCry$DjGR&B4) zc(=|@K7LC98EJpc%NS+~*?PbIYWCrLoalq-=7G^~M z#kVWA?2Un3F3vPL2w%~-LpN@IcH}LH?tjg_N^3}jPRR2l58vHyCu;vG7e>XDch3sH{Ur)cpB_F^Ali<*aH~uWz)^9;TJ7? zb~zS>a%1n*wkE%1_gS;AN!wxxZ0Jht0Y%652C+P69UG_m4Lka z&JE5~{T#N|~MMNiLe}WhU zm&#+ewJhMcfeeDhfNJ7!kK#JI>?ySa*0#o`)BZddM=4q22f>c$rzaV&Ej(S*!*6U(UkQoht1+yJbF;Oj_~uP^kT#$7b~I*A?#Q$*q)q zf!nu)4|PW*BYG{bQb&5K?o1|ht%Di`YXE`{E~qF?^8xJAV^dNH1W&qfKvS%d*49kb=QA1;&Dy7M&CqM|%VS}_=hp)5 zraE?Y^_xlDli+DLmeBx!un2r|MO-mA=9cyy;rT!AKJf;}7V|gTo#h8HP&5v~ zqv>BSQ~1ssXKuBVSarbWS76uy%H$XF-_yVc<%lUKr&phDY-E3CwDH_*V^jYA9$)MS zeYJdhq{qs$O-gJ5I7xRm{S0L*vHkH&9HZV;8JSm6V)mcnUl@Zy2w~;{{Z^fiU&WJU za_0qs!#TUf`MUN*$<)D(-|M&3AGX8UbscaP;=Uz(>}jTKSPLJ$qSwbs)F5KBJi)ud zS)ET8r5EZf73-^S%J1ocSLcB%`73#0EC&Xhc}oYCAFl}OZr97CjXnn(5r9Sw_us;Z zi~FcP#KFu?l0R58+KPj3(Pn4&C(6%8r0|C0aDYM=ZsLE_IPLAvP2FFmj-@Xxgs~K3 zxvJX&hg%Z{4s{yJCmTmr=9{-~rn!?gGgbU>pOo+!@u$;5@NtY*yn6d5;ULLXb+PPg zAEJ$wuxh^}yX~|1x*=1kjYzzi3*J+jHy4*_vF4Kd6m1D%vVf#rALQ?v^28%I@DRhVb1 zW`i@G=f!UKwi2+Xgo#l=4;`YA-w9;!#{ftLkP7{GQyN&Wc9IPCi>B+fNRYf12m~qr zW~#Q07!2wqZNP=g>d%FzAV6Zjoq^7;8^i!(0TZ>E8O`&fWpZL3+pex~95@I}3iH@p z2)sgIRvxg9qM-8(mGXC>hl3~m7h}rz+Iq2F<~U^c?mU(+h~_(0)++D+P>ucE`;zTY z|Mnr-G1P&(tNwCk3~iEEW0go1z>B@}sibGBmG&4U=({AJ7F2f67}M)%ABA*eu^5Yo zVWT>|(9HzZDdVXkZ^m>!0$6_wrUEw&4Z8DTvzh&VJ<5gpmqG9ycA2SSn+V}tt z&6aouE-8XxW^;=KAx4rDGU@-ZJCRyG+EM_m#f*?A;md97@Q5WU`rJXuJS0h%g)1ng zUBp)a0?1|niR|5mcKfG7rq&3j*LlSG#mkMaGd%sz<_6wz7=N&=`om9}^!(^&a@cXw z_1)Mrm>wYB>XI(6Ro5&;!C0ik?U1OTkfh^BNwOu;;!*b#McIPWB5T z$%6k~mzkH|;7C}ILWiHnHbRJFS)N{EPxMw?bVjspM$-!sKt)`YlTVwb4IPIuIVhKDBbxn>^yN# ztnJSw?~GGEKxE5Ac^cfjx*C1$Z{C#;hK7L}{*-S% zR##sy4f=qYrYFGN7r}mc?Oo1!^@kXcSo4`DEl~}*W)HHK*jvE)B>b{R58qSNPP8%f zGBw?FY$nGB*{EK>7mJ58cn3yk^Cn^vkCVKz9L>kc!}C?uoYqDOng?tXa7GuwF(S6% z6M06$VUuR7=MP$PEyilcOnx-0w72<@cQdrGddZS&OfcpoaecJ9h+{&dn4EOq)lD?! zb@;~x-LtzYWo{WA6kw%NB+Y~Sfku^U>;v1z)z$7NjpC)OEgXT%aBV|JM|an%mDCOR7tz}pUYI~L$pBf2 zR}_W`V;_KydkrLDb^!bAxUXNsf%53A`6tXv4Aj`TkJr5-V2<_4KQR+_Vs;s{+?~pL zgItB{$#UP2z(9D|<{~dIKLb>kZ(3tR*r5hFx$SAliEotTgRCG7++rT%T1GVRw#!@? zhhE*f7B%f3@p%$z(Dh0z%*AY#pt3>gG&_V8ZV!|Ea~1aIVb8bH0cFnB{aZrKgHz;y zgO-u|_k4K1$DfNMuj&95;6fi0=Zk8ceVD$FlOavV_i4f8p+Z>~vgzjMtKL@LSd0LC zZ$LLqG>+d1$em`((ht`77Ssx8BakG0N1=BHgU?2|UN^<~q%SLIUqB@`Pf=1UAp?85 zpZabhwU79rw@T4GS4Bj#OY%|1&mao*hL{Yc`I0O&YdguW20%L6wf9O};}-HqERsHkUfm)5*)h2H zA_-4!wULvO8m7ukRkxXfc7?9Raz}JLAJeMMMqy!45PyIH6GThGj*e;TW7N-f@1%)a z7VO#hYT4UqCLu{L?G%ferSp)Irk3wzi}i?$I`jrH$R}h{>K1$#;<#m+`?INLG^g^b zWQe^MT#Sshe9hDQgCOcI&5s#u;BW?`3AiV#*kZ#%6((EO@o0vGozCVNTgaaMwFRbJ zecY>SiHCwWB}6+;-??;CwFe1GjFol+a=Geh*KA+{!%ls-`zU- zGvJ$#MCR_FnWM@d?hO|HqrS8>%5xkXiK9;;As`J!-{H$|kl$pq+7ZG$&to$e+}HOm zHim+MVKDo=#nVUgy&Ha&J{ghcqUdzF!Sc8Sa)F`2Uhr;H?)zpW1KDX0z4Xg)e}w*z z)hB})2r)+-(|^4)9NPsf-bj@qCFw#Kn3Z)PgYjgq_(L7OA}~zl*m#_Dna2-u`(3C$ z+hVFCcgukzvO6_L;cm1uO}q?V!E>la3B{HSwZbyAAXF$yG)AV-V79Fqw3RJFi_cQ4Q`OUSqxsWO(qA7opaI5PBmT#tAxix(9M?p<{#QqUnwQ?Pmhh$YRUaom^J6u~8iu-*MPHb2C?W*%s5--Pr`a!hj0YI1T(Rn+eVA5l=Jkjq9d zV0Rp|3PHB-m8ZRrG@sr;M<%x(uB#OjPH+Muk64yldSwS+HBD`@Lgpli-XG>uR45w_ zi?h})#acE&H6~d<`zeIMYX*`d)?^SH4Ou*XMSb0!B8Y0jr{S4ME>>Uy;PNlVQQ!x~ zLQjMWyza8@7Gm1e1cO;;fIq6Tii*TM*sJ-yffo+Me`CW00voj%atkDTH`%YkgHYza zd^#pv7M8h*iQv;y$A>dz$?UjCM_LnB0>KCPgJCo8F+;SmVwOIleYw8L?#ZPUjLTYu zf)O3mNw4Et=k!klH<+%9*YE3EquR50T7xW& zb46WWA-mM5VD3s{y;5KOxp!RZ6Rq8d$(YoK7F;mzj7Z{1R9QC!F2wDhwUL+XpW-zIIuS}nXHcW zO&1156zd{X4Z* z^~#3t>il1!eYp$iN42+!_@&6D>eca~3TZz~L4nWfxDjSP4?u#kS}P4m49a4Bd_2rw z>fyeqh<<;r77akf5Pv|)0u8}S7M57WYSTeHfH0tw3kxDkiNYYFwMM|+GXHy|U2*d3 zskgH#%`Mt(V`?mAbz27u$I+--UOgEXAga{`#BONfJP1OuAW~THfcCMvAYuvL1DHI7 z9W5;yO9_inh|+U39sCrGoHide1WMbTq4sw%Tu|?ihTEFS=Z+YM&lWdnesK4GJHBP3 zW9@AqU*dR01$UO8mt_@brs8JaeId5HFx7aM7)Z%2FgS{V`>d?@1dVGv7I6V!`HZuk z@ctYt1A29g49iwZ13gumlv;5ty5sRmhb=_~)e&V9rEr9YM9Us`&s&F=oeT@ZZOFLy z=O|TL$^@ayykmK+-CnXgzN*>I<&H`HP54weoZFWy-K=X%>8oUb7M#(XJGr)9y-+O| zonLH*Y6^IR)?0>?6su`|z;>g&(;Yz+G#30-7cXELVE@M1V5Fr33*Q73 zxHjMo1Zf*9wLe^dx^E_G`~vP`IXO8iz+YbK6DFxW;9SGmpU({R_5B0qKw3b%W$lNN zG`{-1vPSd&(R|cjn03i&d52mzIk?s2ygl#;RZo2$9TzYe?$47Q z`k3f@5y%ft>v@dAddjs8AbX+2wryaP83}OGbr3}buo_gDf^`8{<#>M+dAu0~^RRAM zOdxQciX!4d{rVLUCeohuO%`hygGUHsZh<-qmTc~}>{CaD8U7Cqx^9EMZ8+69d^7Bm zHEp5O(b6;((eyictmhB1awQ{L>TAtcdZbFs?%hUkn)G{dI;t_}WNTy!NTceO^oovA z{hQS?=lnfXrMmOdfMYK=U1{^gmUKpm?TC`<)Tzo|{3sY&{Inc0y@CsI4v&3ni8Os< z1w|}!&Y&sHks6*951JfFKC8$@ouuF9Bq-zLj~V?<5$u>FRFQyOuA&If!RRl`HF7(3 zCB0Ca%Mr4tq`Wy>g4trymH`0<;=E>2=N>i^ zlNP_NvOfse9R7@JyWG)}Hih!rr<4aOS*+{d5g%TUf$H?uK|I;}AOt6Gx*t=*39+Kd zszj!GWA{hi7-2=xd1vr`i{%F>BIw zT^uTQPz111U;TjlKa9O)TvcED?z?D^?gkM7l~!6pLJ*LYW>F$i(%ndkD5xMH2uMjU zTDnn6QbM{}(p|EEGbZZu{P#Y4pU-*o3qhE3t}#d4_jP@*xidz@&J*ulU)S)7dSO}I z;oX?hvU}RNlSMYM2+OgrJattbGH#SDI>IHd|jS^AhAMakkuQq+>o1q}G{y;)4>(h&AH8if^sJBLVZ09Q zTvxDCezKAmxY~ARiQ+|Ytz-JbOvP#Ua(^#HDXvwMEiLSD1Z8L+HeFk^8Q2)xn))ny zFkXH&7JAy&^&gcpM`f)|?>oODg$3hlpX)zOY31u>TYn$c$>;d+^Ifq2X^hoE3q&#K zy<-Uhl4T9!i5rH-W+{Qk)E;VG;MRoR!r$B*0?Jd_t{f5yaQ{Kk3N-sDl&15d&g|`9 zZl(2YdL#S=KUOXH+Ou$UTqK5sM0Bq*#Jvmri7Oj<*f!5zOhv@9|AphtVD-D(_z1y5 z>FZ5S=i~S3PqYdBR_d`}Vy{z?o2l=VHu|oVQ6I%fd6S$ddGgBn{KVjVxbQM@bM;3I zk`#y~h+Qfp4htP|xw_Nyrkzs1CA6p;%`6_Bko#q6xhuew;Rb3!J)64@)@gKle+HWz zIWSSWJUT^JPoZA?YI4vT*{DR=(NN8{J`7a;w-VdNdCGoI3=Gm~oG>%~FcRYBA&k#v zm9jMc#+UrqYf*BIyV~UU60(VGzsdP-hNlTf@uy#}8!0z-f#;10AI(;tjAJO2Y zagndao_*i@f%xJ2ti|VCDVRHFkJBRc#-pj3v2IT55uhdE)mZ$`-{H`m?c0J0(wecQsKm$bL<|kwSr~T zp7*&Y%Y(Ypkkw{fzr3Mz=*gN}$6X_y)9EmD{9bMNj)+=Q1rC*NFLSgJCJY>k=YY%M z*uL>=KFaTAq_>7l!CXO`C(^inXJsx0pp zbeG9UM#ncwz50%R;F1KCS2z)WpC^2H(Kc|K#_oSzABJ2R_X zBAsrW*_6mmsHD(M?JSu$3rdlUuDZ|UtQxoAoV+DL`+oC1^1=g`BPq2n=?d>vp~0&z z+#==CWEVX%W=Y4OEqh+8hC0tC zCYCiRa~ZyiAT@HRSjb+8*XnNKi`tc^J;<>)CSA+LtLL|btHs}YvmNefEei-gVY>Fp zvX9Hn6QYVFijL1Z1eTY)_3(aF<6nDrwiL8}n21gPw6IGdbcM{UT}RBcv?f_Z0!1>G7@hz=u8RN-33X64bURTVk^YQFN*E1dv%B!-si z!`SbFpVbbG$Y>($WJh0c;v7TorOgm*h7|4g0scDX^I70Zc=iGI2{8}`{Kztu?sjsc zD>tRz2-D<~CIjfxX>ouG_kL^17nLy!NobjMST$7;f z2yT?&d5owv@4PIk-i8Xn$UKg|4AAKqS(nVXS*T+WoJiR-istcJa&HMuKqpS%*%s-1Lr7Cg)tT9qjy8f179>-CVC=?^)CN zz~rbY%F#Xfc_(apa$=pUR1Nc~)W-)Hk+JT(68$Z$u6kv)dIx))Wolqs*|h6UGm*Bp z`+A@B_EBU{?_*HA97ciL4>tVmL1L8M;(hSsoJ-Uoh;kAx4fm=TA&9pJ-xB{@t6O=) zW!kw?imGXs*(g|daMx3*yTq~25=U?Zsb{sO-f1Pm@*0bpcQ?^Dw6S|#m z4Sqs?93G78{Xqve8Sxgyh%H|jiL+Z?R-Go-Vsx{Su@ZRi<4W_Boe^LRVK9gr<|Y<_ zYGWC&d#NB>f1G(ct3*Vps0YXg8<&52&MS-C>PoPhRF@pCMh`3+{B&U*kNyq?nIJiu z$v20S{kI$6k5G=#2shJOXN<)Ni3mTtpHMj1Wm2Fd$ECg}*ZpjKN!Uab(0U1%C;_sviHv zeyzl4ugh8}E>vX+T_fKt>z-rCcXtmY73_OSlwy5oIg!+`Ot)VjR&mv?cc}vQZu=|` zZ&sg|vhtYQtKI6Qu7%R%=M%SopX!Oo*5;Y~U{E_+Q&iXTeAZ$ZW=7LVBC{pS1zN0D zgw1RwG_CuIVFTe-sF#0Tw~MQ+>u#|Dze{uCBjC~G)_0eGhSI4>JX)noI(FR*5^fna z@b+}-PF@q-Z?Y)`vV=}a4R!;eDVws>`gp>tjaSkb%qFD^U4o3;XHTqi^Slleoe?rO z2*a#JzumO%wEy8LEB4SC2B1&R{*&v%VM~Nq%RAb!KqboOzMe66?b2WeW3Yj-4R}Xt&-h_XjLGQ+ zDadRij-<+QlV zbvh~66;skn153UVD0&?ERYeAzb#VCbfu$EL-*5h`#&Aj2GepB|tt`rN=wp>$ceYC< zI`b^*t4TZG1HoDZCfl>q?fQyI%wnME*88$?{o*&+3j8`nVV}FjBoDiCr3_B%42?vx zgI;cYW4wtqmrzR}v_aAD$Cm{oXtPe~V2dI=-hWu_P{MhdIduUT4y z*rWW`aSXQ7tra%{U^)AhNV2kP{G^Hr@Hm$HjNIyf+ax$liK_3^OJs9Csq91X>F(T7 zl9)~TFo^?vZ1EefzMsv$28#{QGl*Xpfall?Z)lm}guZ4=1e?FsNbO$j(B(QL>qh%z{)tYuaHt;lV|^?akgIP18p|yZb;lcEl&d{Ou$s@Y6AJ zo@x)xFQ)k=xFF>~P6)6=Lk7HvfhaSJP45fbz1_vjMX>sacU0){q2(?z!mwJi_Yt|b zS#Omw+Fh#NPdrZkJ!)%$Zq=%FeCYT~OnN@5COY3O<&+E;DQ-5JxR&S)b#Hum&InZ4 zjF1T+zPyAK+xMb<04g?oZXqi;KB0ikzBl|~8WnjDFauPL@>(aP7>0c}@I%2Q;r;J5 z2~Nf`*1w2+w$PoVp*d+eDR@}zI&Osv5$DsqjWGpW2^QQ~ z@4_vdEv)&}=yK?PvJrtMBZ>W+K34X@KtmjNIj|o)w!=c^*WKcv{uy&u%9}Am)DsI9 zIZ}Jrwu9MSn%KM57$APr$LLD_K+^Ghj-wY89z~#b2{u5c-T`;Kzls^VOjMoftO+h{ zAnTUw16q#4v)UGxwj_!;v6~X7cApys>@BD0W>oy9eUX~XBT+2S`ys(c3Hl{>qm0Pj z--H**0$udi{mB!0o`h57B9CXaSphf&V@B)46~rO-#Q&XFS|V;?vuRHg&%9}sG3;Za zy0=7`-|cQq@;rb|?@Z-5vKAg}ln`EwqXT+_pG)z&t#S(#5K2W%YF2i$FTm#O#N@AGH{%IWN`gP0bDn zF07roezp1G>d!kY&}AIo@_To=zze+oD8Hg|?7}oe`Qh(<5C1`Ptt1TP*R?Z5Hgt({ zt=_{aqUk=e%hkU&P8Ro$e#bng%v-v4c`9gQ)kf@OP-P3?#DV7U&}8BOzPI+u{pNyY z(PGS0>RxE$V6@OS(WjUzh>%;E#7r)a%Py~(MvA_*p|>+8zW*qx$>4XK@t|S%khntB zAZ8ET$lFk8F8df3_fW@~JRav=Pp`MDf0plS-DB^<(=}sjLIYW&lUm(3*(XlzHwfjd zKTsHP=3jNGV6s%|li8eUNFh#aOTOI8y@9=SYP{{)uc*7aK!?Q@>ut(kYAxDAi6G0E z;^pLR2Uq3wqv0*SsWrFS<8s9>+0Qx1#zSyGk1tawld$i_GAwQo-P}f+gZm-&=+&G_ zCwbc7yI7^h?VjL*>Zqla!YIZjQ?_cf|5JVD>^{%(moc;cq^xV9H!^7)#V0YJ(K-+skwk`mFl$RLJ zz*Mi^gHyKXZHkA)zCymgP8&y7l>4mZcA_~Wx#(%|vf?Bqx+?>B`+(43AW+&TvWMup zB#VAq^K#YlF;z6s9$YD{VhK@_D6ZP$5&!%XcY}1yO4{@m@=3LM1K$T%#&P*3t}^Ej zWNL$55q!S{lV{qjGS=NzZ0lNn_=GHM`D6)N5xOmPE5+`fSSx3{zXGB=IMt~7M5;j- z%_Exe`=VPu6_)Se{Z||%mFpx@8CIX)M^B$9o2fmEh913KB*TBtPl8o{Z6b z^4qoAJhTeX37``&Sb9mZibI-tqWE57?=;ob<-AmBP$b@75Ao+XS~RLx{c{uuI84ewsu`3$>p1L~?e1#cN>Wg?kN^i;q>lyK z{7I<@wj$YISv0kI0cF4%D1NOi?(d@05$1r)DgL1ZXf zg|~xdRoe&Nxz;If#-~n_6B4i2PK|2g4j&e}(k5Uy7L`-MjlOp6v%e>QfqY4K(f52w zvK7Dr0$zaz&Ub?)x`G<59~~E`apwrP=HVZx++5FRubfFZPoL28Xo(^bnyGC@#}3VR zbhfcQB(r203|-(tRl%R|SeSl{M{W+;{y>M5fpMr?`~CaFfwlLXx)4#@%gYN&&1sal zeVeSav$L5e<>_BjzrBX2QvTXonhl!Y%~*IaiZ59|p=E;{*NF{1$z5RVEt49-JQrDnCyCI@_XA@a_AXp5d-`k)UF35j|rf0PHhZ z$+1$`C8Ai_hCKr&@L;_uxGlyagQopz0krL@qq+^ea{7g91?Skr=z8Dy7+qhTzHfy= z1hJp%1@ov!zA)vq=I?4hc|GrnKMZ&Bi;)|(^|E7q%(^e4UB!HcP0&=(H(WFm=U(#p zc@g!>$=TdCR>9QPuby;~>iX1g{JB%C@cM5Gv~L;66Tn;jAtCVO$ z-;q~PfC+1Bk3^p7)q4vi>{&sI4q1$gn!K)^rAeEL7Mp{a z(&upF7V&WR2s9Fa_nt^Jt(4xMMx?V>nS-_Q(CNhZ(W6tgm%C3x?^->zEe+xvM5H^% z>Ihe5&K1K7ge*B*p4tWt=aFL-53N4*tTVOCYu_T~TB}J<29O7pUhk(HLY2s5&PwBc ztta}ME>0F^HQfp8yru7rpPwDzVplrC-7Y!wgN9NAz^KeJbh_&{A15O2GIf| zxG;8D=&%izZTyTd#-<+TLSoV87m^bb88agPb}{rpo>H=HGSwt z35`r+RvQWGCnKwJb32i{Ia90*Sw8nSXp1b(?$z0pq-AQ`PG^3wb}4OJCSY$V+E;DN%UfD*?46cTMC zjB3+m!-+&3XJL?xa~90t$H3_JWDg3|`;TGgr8KVzfQ4JDCV51l&HA70sYq?2cduSe zrhN*mFzKUMONbLd3TVzedKU1pM+z0#!S|^_x^K&{rZ3KQ{ngq|$NQr3D~>%;C}oz91nK|UcIUNNcoMjz_Ds9RfGO>-IBi{86o8LED^ zx38?-|Fw7%S&d?`B`3I@T+Co+(|+!;(Iq`*mils@Iz`;vfK@Fe(itg8QY9v3jFn>) zog&HXkv!~QK(zUTiSrh=hf#crXz0P3+U}OuZ{gXW117}{%Y2Jb)$_X+=bq8JL26|j z!qo2-+K@|=SjaucJ$41PwMZ)D8O{iHH4=UmaZpnub`+uY@71VEknj<@a^(t?UK;U5 z3aAWGjYW;;-T?a#vLu-}R6jy_rtsYl0Hp^&+wF~rygV6XZ!$jsu(q|eRb?K<4cpuY zIz@nG#SNC8Kyd@x$noM&rpgue*Gy4;YRk<}$%U@~8~H77MyJJVam-_!<8l06WY=0- z#mAW~cQYei2+?k%rn&FA6tS#G8V+_Aa=h_646#arpLE&K?@XrH!2*Fq&P=NhQ{|-c zu6C3~qsXf5P{&)E{+m>HL1|eu3kieCViUG-v=en~`YeqZ0VB^Z=?=mvw7?SK*U|vS z^Sx&*GnXKYPvV)*XbPS)xU$|Of!h>ukG~H1p?rSaW@iDFUu8i;y*G_hOJ$6AU7Ln- z&&+@&IJ=z~9VQ=LM;ctyR-L(oI3UG9$S&)@$Bk!(RC;PpZSy(VTD(ceE9Y=cMG0Y5 z7ONCvX;vyicT=VhFkn~xd{s)kN7NbSkQllGoN;5q5%aDx<5B9($-pp9M7=DAQ=vdt+4fD%R>4<*h*<_7(

FIk{D(xRM|jTJ49zP%|*;B++6I6zIXBn@o37V(!KW^alA>4 zksHA6{eOKfKB5FmFdwSD%l`?(_&cgN3)s5v?C@NCkL0h4aH-U*@c7c{#(6lBP z7#ILjORzDYH%nGG+N5fIZJV_Xovpz5{?-pI`9!S43sKc`4y{l`j zWiUWYBHR(8+~Fe4T+z2m8zyzsg1sowT60yOZ>L0ESh^?@Dn?a3Wxg2iML#M`QG2CiwK$YIH(5#WmWdFM^QrVl9ae=hm@?7{cr!7ui| zuud`A)AAAMWX#vB$K9IXJ^HwGaW+ES4oB!`iNj_Q^kS^{w^_qnv$S_4mx6U#Ho!I& z+}?cwesSFtTxru85-OBwW~CJ_%Vl334aQ|uLjmJ+U)LKrgpgCsILvZ@CGLMbhf@b= z0FYA|nzzlr5kT=9-0B7wfHF*^rm`Lk0E+;1cWluoG50i9%Y|+y>?bZpTn|Ib*4B@Y zKX_6rPO3+xi}|m-=489vD!<>l-S#=N)VMq-e*A>=(3tE{Yu?*57fUVVfSVwM@E1d5 zyo0hVC=}c%X5~HwDtwEX{G77+T;9XZhU}wHI3wR=ska9-7z5?Uj#3l*@m;WC>fHvEpAO{|6iC^s+=8!H%nAw}@)=JUP#jx^f{GZpq(%e6_z&wK;!*n>A zh1lp;=h+MYbe+b+@?4X=VciwdI50DB#%Jz2?wy`#K*Ge&FQ~t-U$2T&uX-X@GNxa5 zJjF8X`@VyaMWBm-v>g0F={faRUmBRLdunq*iA2f8v#e)yI&U_!8(#&3nzxpI;RH;_ zE142T5gpL8`FQwDaV=IGSD~sFdvW*L^ECH*oXBJ>s=|w}Tg{yJ#v>I^OIF`;jrGU-JUVnOxq$B^9c>j-9ID{EaVvaJPWb{F!oMrGyCX=qf2jn$8eur z-&MkyEg(|P%Z?C=2zT}xH_T-l6T}{o+mo)w69KiyNN@dI4SeGeJcH-n0Hh140qp5p zT2)goX2$yMUw+!*(nTaDcS($(P9>C^PJ7hDJwv@ zd{UOO2hBQgx#>zG5a%xd>34khM|?=wHi9sU}mRi>KJj4|ms-zVp#U=bloMp|Sr=}D^tlN}IhQFq7lDgZ3m z$;ST|NTQuz2Xe;W;Noh_)6VB}oV^D*Zoxg@jswi@Z}KN4fADsTt4rZTdWkwqdzm;o zIl?!~iB?D%W0J&_Ud5#nz@xyieKaj0Fav1V{lFa4hQ{^2w5-6=0%wuFuVpUX8L-f& z6h@C9sH{|>9%9?|$Yh=QXl65Hv2;%_-bWbokB`uAzx;Dk+^GY~=$nDQW0}&Nb4Uqp zLp@HqmlHO~CTNX;5+m@)*=OJD8qZZCmzE&SAV@YveF0fz>B{jukf#3yDeD_x?gi8h zCPl?wZBur&lvj``6xb|i1gze4pVQIN_4m)N*MK}fEEp(?09}7*Xtk@s4_mXL%1u$y zpynL&`xlJ{Cwn!!+E)>7=~1h77LW)%XUI!=EA^OpA>8q8oKT>E;=>SU;)484jJPMB zk>2C~VVQ0T-TN$*sV0I_W%%y=-6+F+h=WwPy+(C@-M#@Lo<4};w_(~`6d5hZd8HD> z#?fj))L$L#-63d8E25)T%Ue%B-659uv+Sj^FpwI--q4uGs&G&sERXk{mo)D>44$C{ z8nFZ}sTeP=4zq?qG9~IfI+P@F+_Bf%7{+Lf<@*uaxaXcXSdVb~`CoOPUE?Y;ruhC? zU`iHGW3EbT;a45`=R-b1{=(aV6;FHU7LiEvBm2=Tb7dtZ5}@L*suCGE%*?zF@>#d7 zLz+1^{Wc{;q3q$7P<*2=4&&u`Z{Lpl&&`69nOCfF&sr-gZdiM3DXq|#&_);pPXq0~ z<6NI@vX$%~<#|!oS{*`lVw(Y!Kc_OT>LKz1u%@&J;Mp+$_-2~aVgg6P}f1UuIX*8qKRMsztsL0@GI85_WR0`x_2_7zIMxQc=|^Z z5gyu}5*sx~#srt9-h;2nF%ElmfAS`7P|tNia0pq~Lk+^JFK+_;w&9czI|*2ZPqKPL z7lWt<_YIcS$2=dP%vU^4`^=AWoh4IAqV*#>3a@#9b`9vHp>{w=a(mvR*V`XxnLGp5 zoW6QvGbn%O1r9?f_<;SIYLsAFK(^j9@kPClif*`Rv-PcP!#qomYzv~ck~-p5%7fCP zoT}|bfIaJ^ls8F~rqAC+T|n_Rto*fr>A=S59vaUaIK+!0I)NN%T~o)}NM$oVWai+D zxu0TYPNi;X=ClXrLz-l+&O2bAb+K``2+q>eYmCsXR~YI|+P?!fDZT;yUc3*YhhyqG zh8>(6uaB)Y>nf3_*=D&WU&#eaJhC%fDp@9WfHr+D1>ZUHGk6VL*b>!>PVNnDrkN1( znU8&mL466@L(Ev8>*uuVI;=N=p+l{CWC%W}rKP2`@^Xq`9OC85v1dXM#_0lulqvz< zWC0-|um;Ku;je*r;(@9vHtaeF2dl8KZY*!55=*>%mz6+^mFw9sIJtPDu*Q@6Zdeyr zq&tXm7c}?6_dxaKTZ&YXTRP$2&nph$A~sWK2wK9>wkE{nucRDE$kzvdei?@c3l8pY z(%qZ%AKt|~`%v^T$|&dUR4*gI-fC_)M_ubV;DS7j0Kfm=PTrib!!t4Trk#2tZqpkK zWULY%EoOpZ*m`FjxG2x{Ytu9C=&*hc(eV$_rp_Nw^WDeDxP?*)?k`N$FTl2y*%vD3 zeI&Q&ko3ZXL1-PC0SRde67smlUyr$`XS`)xj0hi??jU{IO}EBuG|qk{1wV5h6-EMp zQ$&!ijWtl}-_6=%7q>4wN{y@QsF3xP5O26e{9f0Wxr=wBdeOETR7D36uSrdT=$0^V zv|!Lro%I)CMP(KG#iTRbz45eHYqyUfD-G#<)W0+?|NZ>oghW7EUh_to*iQo^m@Vpf z2jo+KvYL=3mIwi}|2%KN2|n=3K(4-?Bw;`UpoIm3V7X6KRW$$f|8>7t^KWo--v{w@ zuy*wj;3x;!80@3K%ihU@e$XI+@JMI7y)C4Y2B1g@TBSe*?&~c&xNk#vweVDB?Ngy; zfO6TG{xhjnF>yjiB3=FS4BPFOJ|+fz&ii5tvkDI;Z54qX$$2c)V*Zen>Dx9MmwAG* zJ9EAVWxmkwkoJsGen=NAe`u4PV62B?Z0GTU>pCA~xF@HH7D1}K&YssA73I$5AMaK> zTi;BDPuqCCwI%kDkfUuyku{MWH0{b(mpgl;I_n^Av{1_80{@w=pCRxM3xeDSA)-dpcSt$mhp1McoDZN2%ZUdv%}+T8=&m{&i(3*qutg<%ti|I0UJOeNyu)y34?eR=%{U)HOViJr}sDuM-G>g zm63|S4+rKXw<#|Eug;xCPjMp)P37qn-7_q|{SMyznrk<6cZX0Qa%;oG|MgOl`gW&W!VKWb(| zZtS>H4Gt48>Bv6AyOakF<$oUF?|Lm`En&N4pTe)IbSjj%dq)r_KSVnJhed_2aSM|k z&^v3>SEn#V^9fPeUD;DM@^bd8RnBjla6ww1;A+elr99#m3{hXJ&p!CT>U+49+E8%p z(URmNIkc(xPyS*X1~l@`uI=d(gS)vhWV5SLQV&Td=jk zqzHK5q*;s=p7^Pj%7be(uQU@reY8H`0(K^p?aFCjRZ0aJd*g!1So%?j8|%jxMhIVq zVB>HwjeTy|V{NoMiM|gmeD}=%p+|flzL&Rni%aqVufC9j+8P*thTMf@CcVkoORRDc zjq>LeLl&P8rWaB~mHY*pUKO;EO*Xi4G;R#2?NMB)dV2ST&r2x&t*<$&KpIQP-4nN8 zpcEz8$wLiNP?mjGJF;*BfeXti_nTYG6!?!5ApbS7zH_h2WUjarvS+bRa_1IMFO9wP zE{}c(P2`{p#WY+-)$+Sqk2@vDNKY8Md2wy$?R<6TJ9Cv^1Cz4(15Y7X-;LaNMM%x& zC)*j`74Z^GuqvRrjE+|L$@CDA*D7mv7k}$0*#a`ek+~+^oB6l%X5CF@7H1UYL(+q$ zE6zxrtkZiUC@-y|L(gXqUp{8K7}p2^c)WZ`{EAIoRp$c!#m&zA$3%b1hce=jYUO`f zR9MKA2s8NViL6pg&ys7gcURD=jN;%`m|j4hW7l$!W9|Cz_W7m}27h4yj(;OK>@U$O zbtmG}`{w%#Q&_mE@ErWImZ+V|R#L%Vdpg}VjXDIL{ug}ps^u3xamd-WuLf{LS>DKA z+MYJ*3!lV-vpBH5;J|*7G2e`d6k7?|KQG`^+tpM)MZQ`?xo_5SGqY%()5-jlajDu{ z+zfV!U)#r^@pY(u z+_aPE7B%$$YWD$XD@BZSx*hO;ticcahO5UvKIUr6r*(e)bZ*BHjmrVIuhy8|!Nlub zyrw}w97lpzOnwqy;8(usqZFH55CoBV)O>L$dXYk5kf(LgkmGdZAyYN;!@>=9xF*(S z`sC<~UVyv91MFDqzjYuM`x}0*M{CNfZX|yy0WQ@5#-k?|HR}2!;t4=mA&`}C=Zc-O zNM|-J@Lk;KZ9k)#ySL4I()16ij*Z8+_tnHBe5|AH~KslFwUe{K6^> z`K9r9>WDAr;pTZbdi~ddIc^MgF{*Lv9^TfSX)?M#3FCCh$7W6n}aW zg{E8$DW^I&4DII~JAQBM_$*>T{(bDY)yduF@^nkkT)&)Pb#6_6-z#<5wViA!yWX#}>|kncAQ zDtenLN*3*lQN#&W;(Nc_xOGc6S*^Nw?n<1DcOBca@xl6U`6ynHeFK4>G`xaWfaW&o&G}?hI;mdL9GPITblAjPD zv6msihm-cKB}G+{pFLKqb5y0b^R|EOI)h#h<&@<33n`V&LcKn(Y+mzj-ma7FrNRE= zohc(oX(#~epCGcQr}SKemP|B<78h1={CvR!KC zl|(jg_sDB$zMc2$BrVIXX5R7@DSMHeA5(YI1`4z+Kb~3May*??HAbp+R4m#Mnc~$x za>7?|?90Kr;B3lUW+t*{o_rh7`}? zLFUdEGVyF9hKYYGYxiF5i(rs~gn=E*V1rT`;XMqc`huiHf-~*h;Vyo+AzhU)n=JSm;)Z)48 z`=%AW_%a=6Qbjdw%6ogp$y>pe_0eRNi(hKw{go_IS;}b;4WnxbQ+N7GS1iW5XhXhQ zAL4t>vm;b7UGZCSQ;0)mE0rwmzrnwwVO`-JC}Ueg;&AtPL!>^-4RHgEqzc8!to(aQ zcr)52q3Zg|qqHo#Nw!(p>H8wBtwZ7RKFR_SJ}*YO|NRuF)+y&TKvYpVsZyq%x5H^< z%&uIgW7RXWUv45JV$@m+4>S7nLjnm{2%7mr1}&pJ-Lx+@6poL$hXUmOnOs;T|0snO zonTinni$p+;JPX~#53EYPTt*{_ldd2v~exieLNKGaMKJHMvaou?mY`(F?Eyg7-kk@JAatgQcw7bF=_hy?UQQ+Os9w630_+k_ShpY>hp8puHy4dde3QPXjYr0 z|871=U`>Y`6A(~&adGh~$N~nY`WSW<89O`f)aBgll$P-d+nuF&lgFor8zKSc;`WVa zhg4i{zdHU|c`1ppl!4nBEc~c2Y9sC6BQnA3L~1Q$Q!>)>!}4|2rAVJp}0tK!T|NB$s3vjIAq+-q-Pj0i21?R=Yvj z7gYP9!a9y5-y+MVNEr|z{D`jQ1DL?fqlW~?+vE_$KffK4=ms<1Ph1;IO(v}pI|V04 z&$aLjo~`iJYWC|xIR|7mg-37W8qt=2;`-N0rK%7d{GE~ujVvtKU{@ul`Ri`-@)Cmw z52!Y?KlV2!sEuk|rQO}#BV+j~fbjUQbp#4F;LmAQ5wO2hji`TdA+5BV8*h2TpeiEH z#w0slLW3a5+!L-ieqZbT1dZ!rK+yARJ@K(--?&uSQ;!lGqBKtg9v+*GTH=T&v-KH0 z$!Fq+YB!yT3;KyJ%_}b+R9ZHU#{O5-rhoPwe$2`%l)qiJVQazdqWzyyR=o6j~I{m;CaU0i&zEbUbE8vP}9dH7-btITM{ zEA2)%?lL4wTtU~~(&UJAoyC6ppf7mD+f_lYuRZep5pq@}{_9uEV*fMiO0UyBI8J_V z1P#C&D6ZA*zuRlj%Gmg@QWZ{5M~~Wmb`&*&lyRT-mz;`NXfJ6PaJx||d}!jj8F2c= z?uD?}7o2&6qWt{5mA!vAam{7vLW&*S>~P|2JlRNDp%P^hm93h*`p8)AsRKGpE}@0rZMEmY zja%&;?T1xolbHjpvZXjWSJ#Ye`i>f5Y*8$pgL|JUn5IZa_T~!AkLTcT*Uw?d>h+=O zJD*iIkU|atAJX>L}d()QcMgQ8Ez`dx%FH27ynlYQOpT_mDsA zUXif`zniaGF@FG3M| zGXjk6|7e3V+#q1!L}8h~b9KPVn;u@ji6B#XvxQ(nYp>(y;*>If|4ahEx7IbF<;0Cg zTUaKW*u}>m<%KXz@5LMTQGPSxb!s)*cvA+9NLoH_cjF34YWYK@#mccWJ>%eJTB_S& z^rn2jk}6Lx42}e){>fxvjs*1Z3L8qv)Ac)Y3JMvSnV3)to%7Na*i|7RDlld7fqM!s zG_1S^rUPP$eUiZ+KZ;fudJ0twE0l08mD_!OJGpj-$T_uE@`65bkGRBWyYyd4#Aj+A2H(e`Z=oK`SM z#eX~3d+(8X4CDDV)N}SWq+|BqPM;Hmi@U|i$qyQ=Kpb=42m;N6)b>UU9p>T;?VABK z4oZdr)xL!!hX(6rO&o=*4MX_4u@J-T59lFc@Opcq!Ibm%^CoV7lTj;jJ7in}5?x_) z)#-dlOXcAEM$wmMw}9xPu6BrA#%>fBcONg=R;I3XDqgpstC`+mDV_Y)PXw({k8L2!pT;F+ zF2<^3yrOH0Y>xocZPgyCfJ1jxp@PSjt^S~K6kI>HznZ=6j?EDpN5gBhiPUP^IkUpD z)Tmk{Ix8-Z{&1YuLBbsq#(%pG>kZUJ*7PS2yC;9<=VL#ULVd(Hwq-z(I;nBdjkejU zok*ptF7fIj=wN8}xgw-R1Lhgi2 zK_kB19bJ7~7NY0=L{=-$8I(|>A?gpP=SkB^cvJHKZ<61Gg9Av{L`FtNLP-f_f6Rh% zY`VbLuU`{{?C5~t?`=ZD3(FKQY(UUz7N?LgsIc$zFFH0EkEA!O@dWGXgARPavAPdu zlTVuD*uDCnt7!Ho3K0vyE)FTV3m_MkQ2%dztn6(}OfcXJ>lNyN_&~ghiVEMv>=f@S z{|6@j$&sB9J=ClMGuQfLH8~X1sDpq`GDt$}D5#m-Ag z6x7tL;QfL9+XjF{33jjz2xpNEGyVFK5^7UAJ3GT*pf)B0$a9cT<2eS-W00Kc3E1W( zfENeq*0I+guo=WB9OCr-hLRD{pp)t%J3r@K3N*ybyQ+Y$iK*83pX0_w?uO5@eLcj-YO ziv-B;J{Euwi3R#)j=%a@Kul$ag%l|40fpu)gmy-Q0VH05PX6ao=aur$qb)hvyb_x< zZUw(Cu5VY>93m@Jhp^^PWF|8%`yG36(^7Z{Fa>nkCQCU_1JyMUZGfiGfmJSu{K5xy z-9-~-z`+3G4JM=u_k3J}36N|EfK*&+WHa+A21$7-i3~%~83QicU?VdK3;VsX6<++l zz&zp2X4FU?hMs#ZBVbK`1v}F_2L42$9waR~?$P2RGF)F@U7FDdYwKpyjC zy7Tb2*v4I;n{l?oJDeeA2XknlJ()+G1wT;6`GRi#&r%C~O-)U?E#m)Df-4zCoiV`_ z0;ITLBlcz^fo-sr~F3*R^ZcNa*P!!-)lwCnh6pC8Ndh2J<f-!#2M|aq+F1V10|J+vubA$48w}Wiq9gpz9r>VVNk)?<<{EYG|DvJ> zxKU~jKRjdyxJgXqI4+HcKLCLVNMol{@Bd**=#u`ocT3R58R_ym0-W@wR6nj=UOT2d zzo6?7x2x9M=;-g(Cs9vcOpQo0|=9{b5pf_MRBX)@+rp zp8JC?Cpi2_X8QH6MuTzT8GGjm^ueK320Lx=OK! z1ebl84PDyaW9Q@6%9}9QX#U`=Lq-<&Qu}gQ??RA*wg@O9d9x=RN8-5+-?bLzOpN-6!l&rw}|666_3ELZXoG-@jjtj|D$y#~5r5L5*&=h(2*0I>Up7 z&KAAs*ThWxgmxNin3 z`*ys4yrf`wmaBKZxI2XL2LS+sL1CXaAAQdG%un|kyo*Gd5zr6600J;*LcNQm#1BL( z{==>Uc-$bk*gVnS=lS9(5c9}_n#%YWyGW;nZ*xEcBP}Bn^!PV`7DM49MIgTy1_Nhm zo%~^krTN`m%ak^WyrbC+F$Y?$t!C;MVj#+6b8t`T1(qpfY}nBxP>VR4@HdRPXS~+1 z{I9E#t|%{$4Qd|l5UmR!jV~dOkSJ(uY^;CnpfvS=QRu&T^=jXTw(Rm;=@bo)t^jq1 z4bFlmWxadgJh^ybjA!@TiMor(WFn^K|8>|)oOByC`XfY#IHw>{vk9De`210xV}0NM z&oK`u9ijj2gh%EE?oQz^pVlX*b}v|b7zIoA=Wp#cx~e^EmdXf*&Wh0nG|awP$Hf_s+9*+&mU08bnw5{-Ek z)4)1Q*g;98ZW-BhrLAJq*1!D9A9dzV7qDAt=;&aVeTZWKL!0dPz8E&B@uE9o=7&^` zg8wq!YtC2yr_ct23M?j|dtK}>BMG~wp+O2NQ{g~RH#9Uf3z+HBV1$6IyHL>3UH~VM z`+#!I@3p%a$1MT|O}Yl?x1=(sQrwg2d#9_ITAqR%mCQc6D;iDF+Bl=M@<2C~M zojZD9&p%-5(&&AqFzW9`S*svcU?bod7Xi89pwlPpG8+h}lXnIbnCC#4tKHlnsmy~} zs})*#X`ah@K;}VC)l&>Tp#FnuZ(xIUVkeeN1j<+-?)8iEf8Iq-PEIr!5RiaMP~xF= zg@J~yZg^?wZD6*pTxm_T5nNIp3LVoQ8XhBkI^6u!W9Clian!2#F}em);$ok}KE4f{+15ei0);rZXP$Wp*m?-k)lzlrGWgt9aI*9Gh z_U3YE%Z!4kR#<|t0}~U-r~w3e3P1sGg;>!44{vV*&2`_kkN(UVN&}$`sbok(Q8J4L zO-M47F(ny7rew-Yp)#b&lv0wJWKO7rB$;JM8q8$M@V`Fp;eF0~-v2r4taH|R*1DhW z)y?ns{eFhM_jT=S@7>y}?{Q*jVCi31;NuuMaAZyb#=-UYaTqFL;n7nx5T%6CK^^lI z7CTMLuF{F^U3JhHF)eoS9}ASYM^OEHs|B&+e_J}T)4ujaJ490#5C6vEPj2|JxP(oAg+^qm1X-O2_JN3LN^7YOw3};Vo#7$&JaX!RIkz)feGooI#$A zF(3-CelurC;sE7FwXYpBFm@4t!dSz?h@E$UC$>v2jJ$7;vsw49{ zoYrHA)9TVq7Wd~)4@0M^wzx3AYRwuSBEdoUi3OvQyZTvhW!xG$aES%yL($@X_`6pJh zD7?Z1Bc8OP$#pkx-I~AIpR;A9qoIL82&|Yf7#nZV%PH(|#^_N^(AvFw+yE9t$olc& zLBtr#zs6^acqdQ6?sr3dy%#aewmW~h{!b%%T?`y2{jH^~TaCxQzQqKs{syvK zyD?u7>~K0D0nxdI$xrI0uZVA~AM5!3Kc_^T7TjS_&Nn=Y&&XIM>pb+jiqG>Js$t2o zwg}p5$=>e1D`5}%gbwf59`=r(oKJ52By*@x+NxRH3GXv^;ciW()AtYFr?V|?wAJB} zBHb}VZ|+Wi&W4qaVzgc;Ww3P@?Q0bH;8>d}YM`(Gj@mfS_RG*A%`}m+WI(tUL<*VY z%oT0>c0xeI(eU)?n#rGyAvN#bncBYmv1RhDVC=;4AcGR6Pcs+@(Tvrf&WLy@6*qj$ zd(*tlnY^|Z*o;Y_Gue{VgoLY7>#h%=JwLvzdhOb^nUrSIsQo;iw^Wj)`~d{;7Us4! z55HW8ztr_9EA;?#a^+5W0BaVd86Cu<%=MhW$UHmxn5bx{cjAnjo0*z6`}_NM@hWYt z{O^k))hGigmzJ5?Cd`x*$3QucyBJAg9oX4 z;y*jiW|`F7ks>u7moL9G8nddQ*6W8vt1|n1gR1MT($6y)W>v(SlLI)_>9!pQ+kKlD zqshelh8MxX!JsKNJ{`u$3f%2`X~TbYJ~#RPA^yr8sH&A7H<(}mz4CU43!CR{BBG-i zQW`~`PW>&dPPkmMF#GF9M8xaIG08xs42M5mYQZ5cfa!El)tg_CP( zR0sd8I{jpVxy*_YcqC55AS^;e(V&i7cDS(j_=A%^N}pU|P1Fw^l5iO@_C-^6QBf8`Z59j{ zhhVf+vz4?bTTvs^=Ny>g`WqV zWTD)jyL0XWTi_l(w3uDND;EfIaddGxd@ecd*Z_ti!{M}^JoU1dwHGWcFQWDgBz{TX zK^10q#bwWtOaXHr^0VOSQznG|J-=kZy0EjeBb4iHuxiPq1Ivdi&3ZY;fCfg>pM{Is zr)H-Q-A8Swq6=N z883C=b2_?%pU$@zFwoU~qky7YE4U=Z9gFT$9aZ3lvaXPL(P_A|2u<|e^s-vsFZ?*> zX*xC3QOzssblBlR(@SibqoY(TJ>?Ioqch#6hRkvBcqV$8)x49(QPqIZEMowcP&cIF z)gq!p4*aJR@E+%4-J?3-VGOjjU-Rz1=;c1ya!$|Rr1{8QX}bAo70nGlPX+7nvoWjQ zSDc?{AfM2jkg#zQ2Jo!l;oGIT7n(x1K{Pr$dZR0T_}D_#bz3Y z73pNm#oe1XUm51x`_*mQw8@8Or^U*G3r%8^7_4UMhLJm+c+qW+2l$UwJ14?F+#CFu z#9V;p+fF#3R+y)G_rZhOk}sb=y?&IGlz|+)>C|9b)!DOWGcn%wTz_5cm(>BEL|*){ zQFY|y{zx3jLjTYo%?nQ)n2cw>0}z-MT>A0KKOi6r0fd=@z5Vo*4YB;Vj9o???Ccqo zQws$@9^Kv9e{jyIAJ-)E$fo!G`u)RuqTTo?1*R3jT|C-byM`|>b_{z|5g)Xim6eeF zb)kHU53ZhE?d|f2S(8#7S@LTRlY-9FoZYdWm$%kwp!r78c&%(pZ&et>XyAcEWQBT% z3T|}RoFjaIw6Jgx@g~!wy)8I7fn!2jx0->@vym1N3BDc_WWt9*FS##YzN8C%8q_Pwi&IJ+X=x+!HXm$PX{%cErwfW&c z%?X!&z<1|A5{absR(_%M=ICb(!Nmr`|Cg2 zlTToDB`gdPhNLN$AbEk=8#AeL-npKO9;B$AjFON_@*K+VANiS*mH^CDx)f}`$$8T> zY+9VaH@S?TLag!TuZ6htFM2~|k^4y!cGuTmcX{Hw_lXo8x)*22H|DpBvn0-b3E5s8 z=-lbbu=V6~s~cnWtZu$5mnfCgPJ;YMm5_C7wlaXqXn^7zm6Vhe#S7ceO-AgPn&M`y!1l3dL*<%WA62s4xV7`Iol8mGP%vPsO3k1yvniwY;CyC zvBwSFsIeu1;>c(fpBaoO8AQ!Oc`;hK{&exRd6*b#%KMld3?OuLv(7HZtW_`Bp%*lu zw01iUaK<{HKFzZ*8s^!BRsj{5WQ0ufdrw|U6lRly-001y;w>-pVHm}C#Gk8sK=Ino z>q?6T;0az$NZV@w=fd3_pVTEE`|h1OnaK4e_go$C96s{(q3uP!xDp$7>{tVZ{wjBy z=5&)cH8pB`_xgn85Zz(;g@g9?l8Z*5$~pa4S%(A%+jFVlv2@AoH&TX3*e}3XQKMpR zB;bgI9UlKWCS{w#1|+z%V`?D0ZD4S)3e*}H38Qf8<)woeRukpC{Hkd8hy}6*hJ7*f z?QT6_&b9TsR*>nx3s@lv0q4N9W z>xRe2_NFxf9^Lq&gIqoiRu>Y?$_T(DEIw?Awwd7Bb4dyDAw1}n=f{?~2WP@vW+NZ~ zEOY4z5){AiS(J>sAv=2`HZ}}nLb{9p4DH1RQsNR4sBt*USdppJsCAiM zB+Z1@2p%2zfxIdfg>@mP#R`Z=m=cE~85rv-*gN*A@i&{oMyN6ntdP-c(=e=$Z!f^W ziLbkE%<2C{+O9|S(qJn)g6k?chX8bpFW@#%Ri&jQ^X?!pG_Zt#DU$KP%r-wz3*~1d z;~}9ZV|?l{Lx4a&*wb<(FewyLjzd<93?JAFKt=wYOag6w>9{qNS6-yxKi|{|fWO_o zdfWFeC5puhvlqVh^^pWR#S1ywin_*6pOmm2NTWjb)w?KrWm=pJ0adtPX1vlp)Pyr# zl)02^rm%Ey=R7}u{!}#&gYeD6LqTD2&H<4Jd0I|! zV+ugS^iI%06feXm1>4pvy=mI))NtLR0lt-=pNix}OSTCMGg7Ac7AA+kgh3P$?6Dht z1h!KGJ>=My44(>7$z)rib^|?CTzaqX5;uLlY+|TmJ(iy%iIJ5x03o;adbnYj7Q}h= zS?7+`dm=)+Gs%NnV$<<5$e&GJVDsj#+%}tX%&sEYW4VbBd!M@Ex~`;X=;{i!@~&OG zRAY(GP*qsvi&!>;+uvaBA)d^Hw#jrE}e2b2&2KsGhn={9VFNx#z=3z1>f zBB}Wj&lr!Q99*YLknPYd1tB!*#gCDJdttjeU1)sJ0;D2@gG~4!q%o>j8?>Ku7+qNv zrns;h9l<2b-?3?9lq6!A$~DL2${xFZy|Mpd^|rjyvsolg*QiND)W|94BJP14Ojl(629&&K~-y0sY63Xb9NRv_+;&k%b?L#cs_b!dH!ay66=2*eA=S9spMxvJeY)qMHva_=zop!`+ z+IOFF?ru4FXs(R;hSudm&z5RStn7#n&B7j z9&3OVe}7*#+UPphMV3u-Sa;G9j*3D?@RiKn_?j&NqQfgl4h z1&ahY#z5q|?RtE_iH(yC4Z`(D$6|-12TK;`ZLjgl>rYf~BG>&*qnAhXCf|!oB4fsI zko-unkW9F4zJ1cSF7~cz^W!P-rLRLkIl~kB76%3{BhUEa(vO>uCNRQwxM<4I>yX;A z^Nj!Glm3p{{*hb#e-p$leG2}M@PYroMUMXuzO-i-P}pl*kMZ@yk!-oe2t@&zy-93I z&ZTRFwvKGYb9)4XwB_P+p5OzBPWGwEF<~a z*V~w-lY!S4Vbr_|DE=Zkb3qnYItJ(!=lG4FLez`t5>b z%m{3CVn#-NUlAIeac{Zx*0xG%8UK)P&Lt{jMFUP6xw8W&lG{rJE5ngdQM1;H7|Kqv zcLpAvL%+z9wdXrXSbh>B^5TzpCT7HGuOW9M;+*K&4dlT_A0u^X47%vApbr#$c~32{#^v9ZqPpoy(q9l8UzzG~Mzlv`Q}kQM;}0fTYHDi} zTDc1$_=pwbIm=N&e9XI{pHsdm>W6# zLV`8S5s61h$!TJJAPGQ6dn(|T6E0o&{H!dTe=mtk!Ec}Pod12&dix&S>93YMFHcxd zLWj?3kxhiPAgnVY{SsoD*~fq2D57rF2VHdD3xpA90(xv=+lx{Vv;lZ3esmWEHmN|^ zsn)mKeRk)U_`!FKcBS#M?!Y6?D@-nPcB?2x4 z3-YyT&!4Z@)p2PJQLvHGx&YNnZRP&XKwWtW&W-pfi?-ZtYquL-Ych0Oj-yh6TQSgR zM{LaI=@)T_vGAum4bUNwq`8se0d^m*1ao?-_&8&SL!G>CfzviiOG^p`vcYMj%Ipx1 z(mouZkfFi^#;96aija9okXNt7O20-kyXl>H-AXc_6>qwPzk0(IL&-{kPRD@a-Udty zT><6I4!C1qJZ~?d)v@d5p7;LXrZ1%*)YMFHhFlhA`ZaZR0|7SP(pN6ySFS|1n$M~= zJE-y3?`MW-=NcLsTF4Nl0ciYM5WH%>gcr%UT=c;GcjHO5HdbD_H~xNpLAhTpH5?J8 zIJIP&CuE}s$g_HjGe`@Zub)J$dEcDVAA6JiWm4cA0%uVQq06<8G-1rBG)6UMhuyV# z`BtEVhE=YV@FJe`cpY%!2-ibCnx8%U(u$!}OgFt$pbqbz$tpKOS)4`5#M!p&^X0tq zm$f5?kUTa2eOcZB;1P_v!pzrOR)-I>w0-*Y@Uj)LCFfmnAdRWg73W51+(vuUCIO-b zV5lkpGaeB31bQ*mA5#M@<i0MXpH4TXV)iO>8BMU1=}7w3lotD4_9K)~?|%vL*_3DlX*TRN1r5SIL4=KnWa`(nI0o4T@^Y^=VfVjM!(?IaD>-sMKz3 z`540XBR=l~V|2cf?uU#QHHDg*IvmjR`*(|wFy(j+AvUH82@*@< zr0hR%U>TY|GTPeOl7JOV_P0m_6dG85N{-Kwj6Sg01ydF?ppi`07AboPmwb(=QUO{i zUdz`@#~~(6HpqM4Q7gD%0|iD-%92axiI%|NIX@L|DBlTxjsI}+`KfvvS+tRaA-)E? zaK7op6D>N#^4*ObFu*VfFgAB~>D+vK2A)3gMDKPcKT`vXmCpEMM{AyK7+FFhN_QGu z2V&0~1RfX6k17a=JJQy{AnkojICok#YoxE(wQE=Blzxt7Sw}}lTszEjDDLz|C;}0R zmw`4Wo&uEn0fS1Ns*eFDPQ_>)?fdqPsd7=WV*bw*4#~EcX;R9g!(U3maGhBWp0t9E=2oLwdqmtaRv?4>0YQnr6FcP=I z6;8r2=<0IPvv7J5Xa$_z7$uBeK+rW1=PlOWx#VN)_?hW6|v|| zVq!>-&JWSq3puO#lf zP6_w=gWw0vA~q0Mjh!$9-f}^*aRhcSMo!F61;;ib^D)|ywr-ZjKJG_!MFRUS9QfAJ zS~yE&y?n9KCcv8Xj$kPbwY{Y-eb;btaWRH@7ZMYbeq&|9bnMtMit3Nes&JgSER-d` z(oxWyb&i!#VPLd-0a(b?d2y7UQA!^kyp@h6KKwwA3wz^VQlhwdHRHbP>&(OBD!H58 z7Z(25($dj!Sw&a>_!OgJw{t@5p@xu?AJ1VNR;mqLvz-3QNI2%GuemTXIavv=CIgF1 zpbSzfJ6<{uhjw)tFD)P6_U+qAg;fA6UnQup4^&cdon0or-%xH5JoaFu zIKbb(2a)gh)|`}sN&0>7B9~vSkB*42XuE504vC}L-@nfNoah=F3MImF#AF&NjngCL ztY8^EjRE56ZMO=O0~^1aLo$YCyuWTgD6kBIwBVO0fmcPu#aAMSm{JD3InGKh+ZWHp z(-#LcajS{g;MeC=LRV>|>Pv;3F|AU^xmJS-u{BUurUI^C9&xU-vy<42(Z6-Egt;TS zAG8&G)zGj8ZoRxY!z|-sx5}UbSUmdP1mN@@kd^e3Khl_&FQ-#7{1&srFhN7eob~$B zS$zesPn#M-5=Rt^_7@TuNpRB8`|y@>sQs6}+ri=kLz5LYgYWBw&t9skJ6+&U{AXTA zRMp3Gt=Z@QmPC}by`G+Sxq__lGDgNSP|HtF^Q~JKjLbNiZyYHYLQx?-*8;iQuy$8) zDe0?Dh(s28>seSNOM9?akM&hA7fmPs9b%a-Y$v_rS#xvcC)(6r%6AVWX=Pi~Q&TcT z5{ZTN>zO0*7%p#Vf?9|M;^5Pk1$1^1T~ zW8@$V4GjVH$9Ow_!k5NtixAdqaL@c`ATBO!9+SUGcFS#Z$(XWf8}MWFW^owQjE6$S zj!uEtrcLFgA4!{QT>ELDZMq!_4pp|q>T58I!ltevjYLp{Mp`~ve0<0V`tsuBfSwh6 z4z67T{eITv%PR=faQvw)=P}2L`xcOvw!Npf7hAF7@NID_Sm1oUs%yc)SMm3Rns{?Y z@*1ba)uk1G3^Yf`BBJjiOG3C0%g@h(u+CkG@_e;LDiDONTDdZ=<6Qd-yXhZ~V+n_Z zMCK+bDfW`Z1=%}N7yO~Qu+B%w-UCjl3bt+)B-zjhl-ATNpBnyB1qV1 zXo$kWcV&cX-!)EexWry;BxyWTcDEi_keWn&*sM{kL?S}-H+6MYzkgveWt%j4xyGj_ z%1Lq+@CSSn13VzPfkZ)?ZQ00#RH#l4``_lLA6!UjN?LI+`2ILtOR(Z3&ZnzJ$ioO{ zT7}!U+;CZDwpGh&*vV}5sM1m;(hCJPX)jv$iW7U}>e`Ki+x)_A6S3&Hr54q!U{jTq zm2s!H!tZ(`xn=g_W0K2{BuwNu03dx0YqEY}VZov`TNqOGi_;?}+Nt`H&I2T6j~lrc zkd`z7c5!nv1ACKv{P7A&Ny+StJOmZ#fTx9s_$?Y9Er;duLpV#QOdv2d(AebWr_{!( z#5XTvIHLgL)fW!qy955+?9R^fucoJ`#c>i3!~N{Q=Wh`ZsEC`xMT`LhD1nQ9EiZ3Z z!^4AXz9oh!n8M_zY-<3Uc}qB=>Ka!$#Td&Ws1HZGy64lAfGhZ8wYmV}a@c}< zNtbdOuYAO*Wzv!A6~6xdlJW8J?{T2G;7qnCDjH=!CoGqpgM%63yE1VWytxAMONmvn zG7ej4ybc~ZwBt}G9!dhioM~ZE5f=i3M_?@9;~c~wqidM2xG?SWqdt-0c#h?X%JOm_ z#^uY+i>G^-x4^3#Y}v8n7WfJ0rNvWFP&kb2BRDsnGKmj3b1`s$I}k-42GWm#{o4WA z+F6P?_~gP&5WHqs6fRFs&&q~|TjWy-B>MI->CoBxn-C4~t@d9vGPCraCy2d6nKC`0 z-9gqh)%Pr!F{}bD>Ep97-OCC#o^i_`{CF*cBR>uc+j>d&*-LVs3*4km0&hn|GW$bR z$p$VL`pav|?7IJa-qK$Pu|4*$EX`bcGT`zrLJW4$04P|C-VNzNA{Y)ssHE)g+^*WJ5!YkocE zRB0<5h_@c%v?z#{&#tNFb<1;w*!aXN-5~iYjR`{smTZU+TECgIT90Q2}^48Y-|UcuA!mf$oP2Tt_xhs|Lp@?ztx72k9sLf-#Ya7$GEoaZEKf^ zP%AK4ui`~-_xS&~Zo8$H0?7YdU^~lX>X3i8bLq!>K7HWSb=sGt1+<}C2=n4~N^C!f zCvA~Pp3RBh@dYapsKaOM5BUp^kZpR$kI)l=(^YiadoL03sAEvx^C6R{EN&DudN(2? z&3`YzN}_>j_MTF%3Q3E*%xhMz^oony(7NT{ovb*Ej))r+6nHIj^e@WZkCpNNm|Gy< zABF`H)a^TgTV7aLC|c}-uR?}qWOUS9TU}nhn!5Gd6$EPtVlZBwiURw7DP8s74^5IQ z#WUQzx#8B^m8(~8+`X7EzN5<6x*)n@?uJPEfR}pGN0GFrI;oZ?c%BI-J$@`$q*uMH z^_#!;Q*A~{_?g$+1Y2*lwuKiM1?V!JJA&IIe%H8^-3L1W?X&jv2Afk#4XDhpQ^tP*BBd3CVr z^J{w&d#JaVgk&5;g#dUe8bw7#T3T9?JtP8}$e@srz0j_7|M(FU9=;O9U!3SsTre2^ zWzxAf3knK+1mc_5xz+Mjr&4cKROEvjdyO9Smg%X;ECI)r!AIKly<;bl%nP?EF@Rpn z<6OzHVo7pJeN+Pt2Djkq~Rr=FR;1vuV$sJ9#$nir~R$P)n)-F;(Wu z8$Bu{$O6=Ug&>Q28&i^8nK)&>{*i`|bV9aSEIes%sW;6Fm(h*5aA>)Zd4>^r(h(3P zGfk`OA#vhkx0B$X;1FCF8xo{Wri z@BNf=vQBA**?85*PDO2Rx;Su+#~&Ro`(B?2b10~Lc42M?Rl&Jsvp{rQuV3D*?pp?0 zgec$eKLG<98=EJSd4jM8I)6m_zkM?u=_(@;3_)Cj#-BOWlU5VX5Z+o7d3jK4CJ@Sw zjEs~bznyw>?_ue9Gk~Jo0_R*wZJwW>-)`5j%@OKJr$ggy*)>*iIynMHy!EfUm^Hb6 z#f|ulxdn;w)`pYKDK*SYOaofBdi*;l4<0?b&v=7TyjXO#W|BHPL}?eQKcyMPo_vHj zs?}NrN1{?A_v$|@Sl@c3oJQF2>%ok#NFlLzI0Uk=r(yvG9L}D5ux5REOn)_o9x-e= zeA^4LKsVfW;Wh7>nHkD~wPlKnb8FBSB*v)?4ox%b>=8NlSvJ_GtM*)X6{DQyw7c1L zaliLCST2QFI z#&&)sc~juZ>)=1)5wvhZ-%9G%5O%MBa~cRwJyIkdA&bt`ISDojLDjy<&u_`L zdE76e_sO=6!Le;$Pg=?5n7frPR0th1ON0vJL#tm;mj^PG0+MMh6C6@vVPDCez zxmciX>?lbZb@%pe5{k~4F*{#%j9uTmVnx>jIoGSu%&Z$^gB`-n5!W65_U-Hl<@gir z@B^E})stGYZ?TleX~at!NFyYAwVM4a(}^d?{dMeb#Wz-s9bE=QPiZf7U4xW%bFq8D!IqZ6Zx1$YWiA&d$r0#od~kRy zrxp>C+x_~y4HPq<0tOiBi}SON;PqC*4p>0EL4;U11}2~^NPc;pv{kZW3~`La zWr7#u2YEr1j~C&f2zb+a!iMZy6{M;cLHlLfe&MBD{QdI;)NI`Vu&d;vp*JQ1XFm6d zRpee`U%Qb`N}FtNnQXLWo_BA|dZ^>erB5q>-> zDTa8apTmS~(CyuJ8<$#+8y4x0tOEg7R&29%KrgRhH5=7tqkw1noM%?-nPO@gTH&AT z+G3U_?cDgw!fId*8yo5FY3Q1y6$CH}V(EM}($6FB(!aDw&gx3~XR`kt^F0Xu{H@(C zGqJWHAt%4+L+lRbnrLeoLFs*Jcec~0GByE`5oQZ{^w-GBjN+A!wb2jQ!*%KwUy-SO zARmHQoZQnl@87>B`Y1em=e^@bXUPE>zR#3WYRYhtfNa2h4M36t-ZYJPl?E<`!OJWX zHZ?)M(FH#a-H(W%#gme>73>)uMO9UG}crke`oE}LuE@@|u_@qt!0=1ZWUzw}e{V}P?a@7}%YtB$VEwKkxX!qCL) zq>weRjzKK74xxqYvg^i+@TM%OPnZ)j#C0ElznZ_G{2RpZ|1w#TKju!k577*Xfj~Z&XxPZUoGS z(;#^|s36b@=rUL>(gImVCjXN}%BdJ^QG)FkNEiZ_NDbnIpb;#TgtDF9qY(6b8LlQ} z<)JJ{NlbCuDPB;8Qh-2P7e7j3AzoKj_8=n!$;?Uu8ZZ6$NJk+z7GDD^0?pA^>0giceH=Fr9?kI~IxzJnQ;hHmX1ihy=hH z&_n-sR2zCF+wq^YZ#I{%9vdGYMTCKoNDrJnu-1(aVr5RDe=AbD-HofbxENusV9rC% zBt%@jR3o+3=}4>x=(sBpP6KPuIUV_n9#W@>jV6U`qzMri=#Rymm!Z`n#3?L)FT53@ zXi-4I@gQUaiA;t1R-KI9PE!g|oL%=TI+7iw*vVcY*%9co%4SI~57Hw?MurRYm(-sA zZOrdd={{rSKNL9I4mvv-OF<#|9yxo^QS=m;r{KIVI9Dt?!*b(p-et-Arh4bJVXDri zU4k6N9>vmj{5u(94*Mf#b5GuFEvoKbq3Vlh2zqf0TfI_MByR2t<5Mzo&9Pz4%8^IP* zgR1x(^?Pcnis)dGyNd@qm#mYz?(F;9-l%nHp885~rq=UScec0LAGP|~{H^QfxVe|E zk#MB?V2H5Sdmec?Ibxir|NI&M8G-~m{I@vL_ppA6uH)ZYIm|=j+C@O&|1^(d=`yvt zD-YjxHbx*5A+}J5`G|dV+wZfD`#0W*L*kCmZ{(X{OiaO??ECTzqb1gp3l0lLlD%LS zFJy7j(bKOxvon(&_h9<#tz#n~I(tE?S#-RV(iUL{e5@~Wb1rkQy(i;iQtp5L$d*P+ zDFk}~aLd#i#9R^CLfKHL6LSlZ4_G*&&uzW@)m{dSRS5W;@{SH3oJW-;^+;87NZp%` za_fREt@;Co#1Xd_nXc3?5>wq8iTjq*GBEVQxaeOmQowIAD7`n(JGo+>0h2GRFT$4= z+Q<=uyT~- zWZUKGk{$vm3^3_=9pnO0O*ddW%mV+OJ?ju;NEHkUCv8rq3+HCgX1bWY`Cp=;g7&$B zQB-vw@ykFm%SBTOqm7C^CXsX~r{qa<^j6WS(AP4bZnHfut*c{2PDoW-n{Azxr7!CI z$a)b4<6C!ZM-cKNY>-+*3csbg4lFdxQzh*6jp*nA1ks7`+C;XdCV3LcSlgoCYtPo) zp@Z$jQR*cfNl@5rw9}@Yu>V!ia^`&2CNwtA79r~iUneB=MyZpIc`cFika{6plK=!3 z=Y3l2&o`&@gK52rL<8rGi6010dC1m+%ut0UdlcrP7b>2tJQDtEW}Z=22HgfE7&b}yRbRUFzccWAs^!e!Nmq5G2Z zm;7v;8UBXz>(?`ATr;c7O`N)87B^@(sr^ZM(e#&;RnZ(9Wn{V_`oCZ~%N{`|mLzLu zv!>i^GfGv;2XLR8aqUP0Dai9XT_0OTvPRhNo2A)*Na^1N5IV|w0{o~Bxu+oGO=iaW zT8)4FdjN^28=zVG31j9ugX1j;LhQa?FGHiehztDd$L{g|JU~`7G;SZQo({9aGw%QT z^&V;sy0uI0^54I!coNTqq?3vrt;}Yh73xgfTN(cOfu0Q(2O`G;M;b5B1w%~ z4A`YCB9)!0nbJu5Kxt~;=yD2nPtWbZKK(`Wkp$EUt=82~m#F3a8d>b&Y|Jhv9RIzK zV&1Af7K}oIZXBJ}Mn8kJTTenVq^g)H(-1Zgzej)-(zqy&DI?YlS=6@f!$NFZ4+aZV z-|Jt&?(@%s*s%c%J$UfoYTFq}t_XDjIeGaf)F~`>-<%$YK4eP~K2ll)3r)-mDSJFF z!iD@1iH=y%a*49!;z$;b$SI(Tz(^@7Fg@t>P>zTAsKpbalEJ)vNJgLfzuw&LGDzW9 zX5i?F?hVe2;0O|c5XQp`C}2G?D|qRZ+}zg?JN3fa@S%9eLgN?=1Zn+L-~0Z7{CZL& z4cb#(0GQ9M9z6f2WK9|r0+pjsVw40g;34-TJ%zFmGBtt3=A^+YQqgL^UV1Jn0GSch z0-W#0%fn&^Hm@E)r#A}eCxU-}kfRF;2~zsJiXP8SJI_v>CpEc|A}7%KVi`ej*6XRe z8sDx4%S`M~iQtwkJ*3vb=;Hbza%Rfn)&TP)N99B*3 ztgbiJc*iwUq0U_#d3B@TyZQv(!|F#@9ql|sQ@*=t{<+SM-A=pMf4EkJuB~|9?hsox#k>C2S3+?O2@#3E1_`;_V{W&hYae?j%?~t4 zBit{KZ>B*)yQvoHu-TnJUl+FfBuL=yz7Mnkb`f3XVQ)di`s3&($BBi}-TM}JeWp30t}j|0`I>Ot6})YNM+lP zbK6j%T9`Gvk$&#V$NGfk>xHHQ^xI{wCs#a<(|E$O?P!d$nQ^4l7y1y}3%e&@)P!5@ZOd%lc(m?YnNS@E~8H7Bg)mTfTCDWzz)}kIk2k8crb+(3@(q7=qiX5a| zi!R9^^!Eq2P5E}@tl(3)1_!$Vb-@5^{@EDm=J9(K{rs2BA+KWhi=hZ+Amz*&`G8oLPjSru!{d&Db-uzBr9{j8n($HB0W~m4_~>n2oM<-^yis z=~=J1jMeg{xB)do3F<FCy@Fo$;S4mY9AveRsl5*L8h%0~?URPD! zJza%SLtVdqrKBbTvI>ca^ys~W>r&5;>$AwTQh1eN|F4@|XX$<7^IYA5N(n~Ajx&>g zPImSGVt%5nR3}t#uxsY>6SZ4!&k%JlqDwpIw@H6CQnpeXt4LxDnhk4pX9>zAv^gR` zl>G#Pt|H24iWiw>3d6U{D3JR4t7n_*&eQ{znt|VG9lpL!>eY{i$LPpo8h6HRVNM1V z@rPv1P2=YEK1C}|3B;(xcSXKMTO7n-VMK9lytv2ljlqE+Rns_&-p{uX9D?jLMHYeH zk;vaHXM~ULQ*dpgHZ}^K#c;vbXr%{5P4z#T+x!&CKaf;7Sawy?v>` z^~RVA)3cACF3<+4UWN9Qh?PlZnWTMyC%dxh6xMV+27N;~8O$OJgEu8rLf8$87gA+| z=L}wnvn5B)Sfs2s_k3VH-Y3H)eJ9fH6Q3K&Bk6fr@Tw&8}K zmcrXjk7@!Hsdn;y*VVJ~-j#C7v5abOqIYRzj?%^T`wy8OXcRY%{Mr4>;^07l{+jI1 zF{gL`rKQri#}>3Tv?SG6Bwa|K>>uC*QTHulVR?-_44P5;kBnTr^(PdTcE`C|RpgvJ z7G}=f>RYpVHDPeUet|Pd-6-__7!}{KhK@000no!h3D2DUi)bc~Da_E421;N=#IHL?H zS#%c4;E@AJG7GJyA~+S-e=1=G<3*iC>%@#2CTsa`ty z2!R-ih-e9#$3Fx>kz;+;$Fb}W9B3d=Ac-Gr3rFdRBnnEO^LcKN`+$Qbi9X_dK}?t- z6$`tOuvV{+@pEfc)#TdX70Mf_&e(j7HI@B2Mf-}uL9`tUQ?Z-&%FDT)JD#jHnDiKh+ z{zA(cmoGk7uM#Pyo(nx&Fpcm#`rMNJ3Slihx_Y7le}qT6mUW$o6biW)bW4#EGx~aU zb(3r6pXP`?r@ef$lzOAN;hrJlI7oMA+a50Vw`P%={JkALtV~n(o5E5?S5I?`>5QCPM51pV~sBN~MKr z@=7o5Y2MINd*G~`-j;hy2&TgP;@WDTG3mUg%k*l%SWy?9uHOC$Pk74Z1l>c)($t%Y z0#p?7y62R#RGw}0ekxDCC$r0EmBQqI6w9P!-8?zQjK)19}J#g`@B(+G`Sdz6+(NXsg0>#qZ+buR^n zK-1#nTl^&B>eWkK74jQo>+5f7?EK(y7@$tQ&G}7cMat6m;@+vt#LsPwiD7ywO(Ygw z-@c(;u8`2h^vz-il_V3YI5xh2+FKhme=_d8DH(E)T@CZ$D`kVd&lWR349_v5? z^KdRDmgAlr7}$PqdU4!_>LeAQGPl7EHHGhBUZ_yf&&`cHTGk7>4? zmFmsO*IyyTrL=LogUmfTe-jN24KE}=AXQM>a!W@4;h5UzHJMi~a#}RkWn?x}r#*dH z$I`1`@-W`rtNOyd;|JNA*$x!Zxy;HUs$POyPOl^VkFr%A*SvownY#KYvL{qtIzi^b z$YG_YuS87$RQJ4_gO+1U?pSa2#0P)t=Wl&)pUk!2y&jL;x^Osyrg6QjK6P6c&$7ey zLVc$OV;V1Uif?VJ*IKrQbHy8ZDrY0O0L9vQ^{B_5^s_bg$>feYy=dM}1^G7}yLPmS z9fhb&04Ipp5q?aFE$Xr2Ng+0pdq&#>&5Tod3k!!i7A<>{2JB74t{Zv$rOLxa^RdUZ8g%6B-{Cf7hXf4nVp3$I-x_{&C z869EDzkqIQlw^`P*P8~RbUAsvVWITNZ&b%>scj+y-B$UjNF3E%F*02Bbv*EdYJ8u_ z*UeO6$JWrDDqjeV@~`V|dEJq{Z%66lmx)OktWpM42Q!psTP52 zKSQ`fwodUJvWw@U_tWw}HM72Xf_`MGIyA~x%h2^vhPdbf9Ms%|F1m{j3^UGBwW8Du zt{l3GAM0;wAGXZlufCJYErOeqv5nnAK}~pXvib4~Zi`*QB@qU6pW#U)&<+Qb=H87r zjA5V)2U*IE5wj-iWo^Ok`J%R}8)hqXRa8Qvjx3I$@h8v{TABy)e^@YD`MmPG#Um8L zv(0rUF% zLb}3IZDF}^BGoyKm*^+8WAZ2je#>{y6x}D3QiCNuVDb7OtJ|X;2tw-^K zW;Fqt1kytsf1HR)(0cJ{Sb0G>B3Q+hv1jPxi&EKVW8CccxxVBs2pnKoU(5fg(`mGBqxDbXkJRb*X1_m8?a8q)rh?v+uyNuczaMui!x2Mh>iBdkE z?%0}W^Z3yQpVuGlrs(D@qkhEaTZ^4Y;cqZ7vN_;MY01dfaGYmLZuuCWpxx}TLdj5` z`(}2V2E8?&>d zM>Ho?uJc_p*&sU-`T60=cx}pRDjK6m>dc~B@z2|qkEAl5ANZo7=E3T6GHXoKnr7Ie z?%>uF(rRxTn8P0!(Vr-h@$w9GDr#{*t;f>Rc`Rhno% z?#frHEx%W&-P&MO@Xiu?C$U0b^(U8H_)?PHPp5u9&ER&=&E^JmgL6k^c$D(@w$0&r z*W13ir3v=Fxvzaiwva2rl0LPcSFPYBRr9nB!xiT)F%h@?-g(~NM|ihOOB@>EoV{1L zNZlr;SpL53$jIIa_w3X)UMJf==MHVAnzR2(^@(NVe2I9T zw-(hJ9;O}`vkhThu3#6)f;pPY4(0oty)zuWtJX*Tr#DCO5uS}dPWdZYC=&^!Q|(dI?u_dpE~no#l+v2Rta41(*hJS%4cmU7uwcl1 zaH{Ib{?*#GC9L^RIrR)3S2@maq9`r&R_|_|a7(Nj+j>B0czR9iFlm;cZS40jR^_g5 zO}OEgYjR=hMud-+rCM#5d&X}ip{0|3_<*W>P5!qV+$WxDcSk-kDk)ax8Ib0ui`rDF!9MEj$Me~! z*q$r6DpZ1F zo}9OAB)3RtRPg7fHEWWL6T1eo%55tZ!;*I2*j&-M{_S*9mR9;<2>iBGg%@vld)Z&M zWi>_X)a9FgQf*Tv=AtcYZ#uVq9aRYGK2}vx8??=N!bvi?akW*+7L|VT$_;M zyo_WpmD}W+a~pD28n-Q$mib)F+IvyRP0mPN*5he7ljw!p(0h}X?t@b(An^6|B{&So zFl%P?KP5SlKcDnyy@>{w^67o?wdCZ?BTs6r9l{Q=diS4kf4pDO=gBF)cTL-)p2$tU z8vJR{T4&x-Ijj8%$7jsf)@x&&S-_<6&#CNrs^>S=8ZIkad<^lt-{NH3kx4g#yPu3t z6ne8bzz#M@;3Y8k0I6kMbm~kG(xCxdU&Rs;svT? zWA@9uy?sxT-RIxe-VHn`pcpaveJjH*Bbu99w7)oh_BZZb*JbL&L|J_(-7I=Y$?96m zScZG7niXH}sSJJ7%xA)q%<5htRaBHBOq!75W9^mY^xj$`;o59}zhF|Se4PS)+cCuh z3^u2vldEoe)bf@W=!>^USZ>(V`0&*8_len8-iOH3P&hfc7+H741j)Z&vK^tZA`hvz z3I)Ethf)INnmc=T<)C{UQtRp$`Jl0PapCN2N50i*zCPV~zBXVeejs_=$-%(~Ln}J> z1gUCyJohi39sVcRDsS`py8Dg$Q`zGC1AY+`yJEBp)1v6z^tkVDrQ6x zgWSn(`>%mcry)cqOb0NstcGN8!^&2M+mXvv=MNO0le2#&m-}$OU{0VSLp$fl02R&C zfLrE8LkVh|WsbcKc+BxevX5R*A&5WtC?&b0b0R}dhUr<|(6X&?m|E?0rU`P`U%^*i;<%-8H2?>LK+{9G)bX;MpxRY(4!YP?Gs3UzO=J!u+s zv#%uy(bhe)+W(Z`1L7!U0tdiBN{LWAG>Y6bKLo^}%$<|l*#r~i9zTD) zd##SdSB?SkRh!>7`Rx*7_U<&Ixo$+ghqKadwVL7Exv$LUo!^Yr8jkt0?^e+pnijBL6NE^@+&!cx`cO{BD`ucrCHTVuVes#+}5q26h5W$ z?ncmWddz>GNr=fS?%O^lu9+ZP#RqeDeLgK8NuxOrq#Ic1|^R`;3vrV@2K#rF8=O+HziUAy6raK^)@XW|W5%PDkRN(U9}&W}&* z(lk60Axg=2_7`0%R`s&##B&r*htn23=P!N4{)ejeiiH*5jECy z=z3*uaHz8CvDFT9#)Phi{9tg{S?ql>oo;0f;T?i$=(gWKQ^!QC|kcXyWr*Wec1 zEd+ND1b4s9d+(30>Z{@pGSx%(IX%7C-s@S`lq)}|pyo1}Dw9Gc)@gr3x0qoCE16VQ z{5SZY?EJ0aI8u)cHkD#!dZ{LlK}F@}D`4_)V%F*YDA55gG3n7rxrf8$>Ha7_G%8xh zVjEqSeNZSlXACtQ79abJq|q115RfoMgS{xq1B!u7G*5qFXVn=nrGQvw$k^(|xxfd{ zpM4?l(w4il)6L^ZKvPQ1xcFZkV!XIek&rI5#l+CDc)WVi0Q2BK;Y8BP!KfcT|0)bv zWJ-J9fXd=tD_TlI%w`a)%C)!xN%zwAU>;09%uXuN9IJwmwwHL*-|@J_7&f^p^x<4u zt#xF3kFQH9)o!CMkCCo~A+wUOqjt zW~(4wLjk(x`Xa0s6$si86kq)*mtx3IMr+uM;60N9&3{fAxMZ>uf6EpI} z7)~!zto|Qwh;Q}!;%p?N@NFlQS((F^-SIhl`PZ0VxeG5=`3Gs5gc8L}V>^iPC1aGE z|ImS+#Cr`792Fj@cj5OhkpSBk502J+;$F-Na0SMe3wmNv2$^6)Oni#j>&>7-&+b9m zoFJLVpFrBhq84Z7%A0nok%EfrmXZ;edvi`{+gzthG<7T3jzMd$t*HuFK*_qJ4P9Ac zPE!5#sBL1mo%JJPR(Im+p7g2&YQQJ}xx@|iyGrJH4~Q%9BCBu^o0A5Bu7_}~j|?72 z7fLx^F~qh3J_b6R0cnkHAqLKyg~^tXJvFmxcs3h!`M&}&VI)I;av`=HrdB8*tYMPj zBY`Z;p@IXbH#kOB28Fmp{M-LqQMFoM1L+IQz|B!sXtLGR;#&=4W*Oc|j2M#;r(L@) z$_T%QE_Z1qY4p)Z@aouN%fB6&2=a>SRdP8%IxAha`g>eBFK{K62x5@d+KtfH`v!yF z_ySk^{D)jWS*FGB4PgDBe3q;#W@@A|8X0NkHW2duj!cua@xn92*d%47>#u9<@*cq< zVG_@5EMCM69R-vqhx|lV(+G#>xer6GcQEClnOa;AeBkxvFa9sLl*Lfs$1q$L%Sao7 z;mhaC**|@=#*nOs{P`C0D{}|q+64Exz%?AjweESpl(9kYo~&=QlTfM-DW4hh>q|vh z3RhW&>O;5NfRA5H6;AU0G28~SvwNWjZnzBo5u@}Q=*1^q)xP)5cTMRwSYkM4LI<4;a7Yi zWoXuU9NaR2`v?U?$ZacAldywWWT(tu*JJCc#7YjY2)VgIQOV0)Dy;%ch z*E^KNW4-g`~i(w&ZoJ6I}mC!-mp@G{o9LLAk0mW%a|=gnotV;O0&PqCOsNS z9vX|~2qPowDj#?;I{sA1EaNH~STkU)|2#>wd+-NpN-dd*^9h%2V(~taF8^)T!U|K%mb^|5l0BU<%m`OZ$;!68Ii`t&cc=pc;IQ~~H&Zqf2_n~2_&SoRq z{PRHXHn)9k3X8+mwTPF(QtMS}u!p!MtagTHF&=5;dWv2_dJ8*h-GCFGX)z*sH3uttR25O=8v z!}%B1id7Kg$+cj zZjG7x1M$d7BQk{^lc8#yPZt)GPF?xOw;Cltmr=Ru zR_&ljGwIk8QTIh?2?5vz+EcN2L1$ue+z=XcGDO0m39?InxH+pk-x7qG*B;BH6ov3& znkE#(Bh!pjF|xB{sQcL+@`}*19vORWhLUGQb96D zbys};L`Ts*?_=(-CXMeqXl%!*T-i#Ffo9+Oqai=#d7(N~^BI0mkI zv*i@b?oiY9<7L%#P}B@d`^yM(?@*S>`}wdJ_#Gpwv_W(CYkZB{&YMx%>E#O-xdl-# zO_qt|*z?Bdm6gyHDLMx{bTdtH(#Cg>dA>uK20UPjZ@_z-D{1eqBHrTA?R`qa8pzEiHb|h^t!J&?C+P`P+V|^ciqm8Nf>Y z<7UnT&ec=4uA>|kyA-Vg)$@qHF#RNUzS<6$QiKL(fo4hK&un2k1NnNN&Kep9N`wxo z#w+jtv7cWf>tEoVuz+*ZseUuQCV!ex^ICVR=Wak1 zfiXFhC7fVMMVFb{Y5t*-&O-o^UOo1|XIRWVN6iBW{~w_t-qQ-8|Tj zH@FvX7V>3fWgx)q2=`Swcplc*`}n+?Eev-1tp?BApyqrxHC%tfpNXZ&Xd~IP+#-w; z2U!6d;c$mSHWnYd|0k`4J3PfF(fr1-ul~{V{;yDXKqPG_$p_kGKgf}KYjJ-8MlR2e zq8}?*%TJ`Ql&#$%x$U-)&}_ce$p+X>!gIDI55yp#HEZT9zLzRQY+)wrDmBSWEw3r+ zA&lQr7o*Jtl!0kO8DSF1kx^HCGAg#Bk_g)d3Hk7hG=txH@Dj7XhhoTE78rQc+uqjS zxDB`bDy;IIuC24GM9TDiq#@-;o26(#Y)<*mpTf%?rk#GyXo)K_s1n^eD^Wj2`I=|~ z7mb)SUU$3G+qMoN(hI(D&V4nbOUcr5$j$v@w1Fq_@W;R7q23D?#HpK})*Ama7s_=C zU0S6ANx3HL)W^LrL(|K9fwQva#LUFfSFj5tRS9kF0qUqoatr$WVD9&IxZc@sg=hn< zmW6E5Hf4YrJ1-V^+_q_%M|QPVDB$77A`ADCe1H0k9mv`7HanHj%`4Wf?|7-n;AbVz zMZS#J;-wIBq1YiRlyS3N-#2*nZ zm(S&XaeXCkwnn?w;^twvmHbrl2XTQHVS(;vAJPuUJ!m3Z3K_RwQwnj^DDr{l9A<#r zKQVS9w`Tu*Cb=XMHx=Z8tgWeZ5Et!mKu<71WoYWwf16^r6WARFm63f+aogdf!2#zG zW1j2pLp6}n$@u=!Ul(3a49UO4Lez}pnK!n*sIH=B>{RmiJ5!yisR#fjiKzUy7S;lu z>1Rh9vh<$4>U#R|-aEE&M5yZ8x{AN#F{B^$>2Y=?4jf zVN6K87H2);kG^Kc2|82mztihIKahGR-%$7dr2OQQENi{aEp-z7^p$f8dLz^9FP>2g zlOaa2U{&@&sP!~LOP8d`mX@frMY8HnG{)*>c*W5;1N>lae#u1Jez^S9EqB4a6i|F9^21I!`Q5!7 zT?tKkk*yeXuARhtvgH&OVa5qaU>f2O+)BW8g(O(-dxYp1Xn8e|Ed9p@m$IrgGTvQLGF3)+@uawq9M>f-zX!x&c@Djed#beqMUvE0+|ZR@m#OYBh;n9Y8 zyFv@Dj+iKHT{IMk+u@aK!>GRTQ*LHM4?Va_rAZZdt}NpHI1u6FE*X*(rB&^C+m)~6 zh2qF8`XD?MiTFOC9ak=a5tsu3RG#b0FxRhndpC{^2>8KSY{~|*9fUY)Y^kfAF%BNo z+FE4dOwGVHBG;H&K@Ma?zm!kb{d()$eI`x&*DrHm*dQ?8tJ5@v{ z*i%kim89?uKp#Jr=B4*8-+Rnop3^$IR(t*0Z@s?PyL;Fd9t=K&n%CEDin-qTCQI4& zSl;4U>+ZL$6#t*<87xLep=VdmAmzo2;xf}bPpdRfP*P-z-#hTR+j~?N6YqN-scKS zzc7;hlqI#zwLY1uvT~B%Wut0|INaU7Et;Msp^Y9_>1Uzd&YS>R=O zwuTFw8ObJ95WZPlRLcIXNd&wTJx_f5Jm6?XNbf_k^iW-#<1~v=Z3XXa*It6prA=Zd_U7X-{XIipUlo=+Zvo8tB}pjHsgw4a+;_&@#4} zuPMUn&iA-G65`L|G+Iy!#D`oWICg`1RM@GU=09thxJ`;Mb{%DUVT@~?8o3M!Zs6CE z*P6KM`h#14eNHx3-!%T;bOCsA%zK0|Tfc7W-=&J{w9Q^7Fvo#`fpf{F&cX!Qp~tA3 zEqN%&Tm6MPaDfXK8;hcmd)g%V3%4+~B-w!r#Ps7^U|L$xmrpV+&-If%r88}3#xH@t zgrS&tkKql{Sy%?xJIWJ`PI6zHYO*@*y)<OeRf)}u=DtJ(3oS^)(F1At}ICX%1gXi z7T}o+sQf9{d}satWF=b>$#hCh2@fhFbC;l;nbDX5tW{V*&3pVg8*s{VMr5MD=GaIj*KrLYWf|TYJA8v0@`sD%4%lye?5~&N!`k_&`gP&4<5ry8G0dHK1z( zw|JS<6?BA#U#hgsVqPO++B0PzB6+W9iz?Gf1Y!lx`0KiqsUs(5i3=GeTze=+GO%)! zXMvF^MTG^QD^lGhoMEq1E0up?O#Uxw4iF#N_J2HO%_p@4y(*F%WEDV%LL69%w= z@+AK0)Xi3k8x+0*`8)%~bA!={VJzQ}!JD|QHc~&K4d`23hzf6QI!kfd=D8Fp-t)IP zVbXy}Mg7eU@F-j^IdtsA7u^k!>+}VscYAFlv2oNv8xCh&j0Xe~sekaVpnhnfa4Sjq zpv|h>JzUUj#^p+|RZpdK$1Ln<{JgIB)S?*EIT=^QLL}ocR=i=JhvyJcZhV;IW zFL{xJ-5(a~oYmFKx$7zgvKm34(-Rz)gCZ5|jI10E;h4A14aR(_Z_MFc?@LXLFFoxW zSx^!$dthg;b?F+_SfcOH2%tnU_9n0;jKZJd@v(=uw&J#v@4Z>`BI6w5GmDlH(_!u6s|OBM zlL88M9WhsKTqEXMIDael7^GDs(0RJt7oHz0h^xny39urkz|Hp&Yn#R>cK0c4bZ(sO z(W|be07}$|w2vR^s!vzmF5`?@a`opKS(fg2^t_c|LSHPpzB2BRz4-vQfVXT|K0hOG z!&bPuxltvk*Z@o1g($ZXbNya}RZb;ppI<*)Aj1ob57K&8d_u;eW{khC!*?D8a^g{g zGk{49!+6Pmb4Y=#oZA`qt1SGLyPR^raReETZJhYR+71zy?LzVMyP^KWx@*s~~o2nHx6AEh^N~DcT@40+F&;C9I(Q!|lWvv=^;ZHE}r-s!i zLb&@12~$|UIk={Z+ls-zcq-l^7uG0QIc%n21!fJZUiLa~){ymNrj6GWt$Y_*s~#Nt z0CU0}GViP?QZS`M>!hDK235JIW7;W!?}{w~OpuN4RE@JLvp)xN=c?_6Y$uO z6r8$2FC$lf{7>z1vtwkIbUcxR=;@EzHKd0s4_%V@RI&Lw>X@RppRaiZHO+s_f(-)t zAH>8|@*q#=P(~7Bw`_%ZbX?>)TjS1~Tn6-j-VWzFfgG@}j%DaoTxF z`_44rbI(%;X1%X>Pzy7{ueN|x?g8u&6Q)V-ZYEQDUnu2Kwn?jBhvR+zNj%0rkR|Pt z=o2IZ&UyuFz-2NKtXxS|Zu4>hK*Ae;sNM!zDc2Qcr1^(Tw^!5W1&Bg!ohtg@Zk%1V z^G|K{Smx<}1P!Lt`lAdDtKk#pK@bx{MAj2A$pXo<7THvqq9Zyd+G3+fr1l&jSe}N( z%a>NdOjt}a+-e7Q?YpHOtf@&eAy^ZCD1m3Dl{kV1hXd*2GpCOyV{cu3h;oHK$QK3~|~P8!i!{4_v`u4K15#Wl-CjJPrDeZhuqSZ_1Z72O50ILV6Dl9 zXc(2L)4yA7fF`aq;7WT3K>*0~QZX}?I=p|yjh`|KTQJNAM;X6X!l>LUAMb%c83YGW z32>QKO%jS51uw(yjRexE69(8UNeZao!z*FySMvzYFhVUVgR=_F#F6#%g^DGN-^Vr2;k5Rj=WXd9-2Ap4mu7zyQs>-z|App7C2G*Hmt5+IllO66 zf_WR-UK+=5H+FE-t8l$p@bk(FUmYZHW-I|h^1B_x|Lw)&-FOaQDBp40DhbSF@3!&( zZ^)9?RLjUzJ({gUO(pi=+rG*cLC>ptd@FAWqLW)msbI2GwNVPSMBqq7K0F2w$%1_V#wDqH7YE1_(Ux68g&&2WtiXwRtf}R*oR^spP$3{ zT7ypA9XU*yKqo}v^5igP#J%9ZxjGNyACKX#v%q|cz3uqZ_5zMyN<1?j z1>GS2HsmIsdNvi?b6;30{gc|f?cRP$r7nPpTD0o_&KI9zx52n6_YBmp--t;>O8G(IOh;D8zgOz(~W>AlfLdbKu<5&RXH zEPAJ90#p|F@sU>4J#%scgUR4+9d%3w47tCkYW>Lvr)nw!BlMLpnn0ZByGwtyUD~An z9mw&HO9J?93je@Tmlbxvi^9(%bFYqdA>}ckOjVG94o9f7S$hHY^y=t96j{ zzzD^w>`Z+#4uQMJgJS~Sa?}ZWkuD1DY(fI1N&NN=_Aen=lsxr9U81FXd#cNDgTZ}0 zo#G<)@Qzzb`Lsg-w8S1dcL=hqIcO{(;nsqVj?~RunA0$}J{^Q(f!2Dd8k9`%BgtR2 z+>yM+>so+!A`6-^{^H$6RL&*y*NckiiSEOO|hzNuVlIW|}w z)mT0yXlIQIUU&JR@73NKp>Ip!T84%sPIJJLE^Hm~t#NFh`Wubu_M31#W&HJSO~>y9 z&VjAp3M=UKcT~?>XWP53;?MVS-hcfYe*v5Q31n_IRbIuX>8iNgf~SA>k^)SotBZ<{ zEvR?M@Rn2)vgCfEwDQL2CO-mL<&_YQu5vUE@g zz%$7Jj5ELr-}nR&G>QOtRCoj#+XjG`MSb^18$gHvzaveNb9(KN$)h)gPu`zUp0kD} zV4>Xfmt&rFj;iC@XLF8Zd?NbPMAFBq?RrmKdeRY_oK0RC;}w0~VG^YC%_}}LDh3BV zUp0%^wBvFGZ~YEHNp-CRz#$;7iUNHTie|O*Q$w7Dc>7m}fuw8SXZL4_cflTbb+BKv z0lS0m#ixep!`mW{agt+;{WK%HaZ|JXq>ai-$V)+rZfH0MYKr{=FU<+1*{izKRSclp zvMkiIcbSCv>~qpO!`FhbnxY^IN}UKJ$=Q+n+udO3*{^wmPl?$habir<|H29OR$r;NGg;4; zCok~kAa7H&JS1Zh;vd%x4g@K104SWC{*s|k1JbzJ%i7mx450VaG0ZS{sm2#|Vx#oH z;^ZJW#bzb%GmHR&v!~qZ{Fzq!sL)}Rku~MwNTxwfs{}ZUUt_(ZpG{uVZ#P;1;L`7U z#?=GjlAWFy%3pT>8a(fQ9^Bt8yS)FmAylCS4zpLoXQJ*wTW7z36WN05;AyvLsiPS* z%(MCd2d0{HY+gQs$L}rVj~hP+);#1fKuQ(^#>4=SFl2@TEC9j>3~2Avu&;YjQBf*- zl}}{DBV;H_00%0h_cqCYBv)x>`>*0=+D~PLHspJ}kB}3IX^_pIiz4(4b>qDlx$*3? z)=@WD9{5(9Vs@%jeZ5h1+H3EV3hhW+>##1@k|d5(*O!s(4sYZu?uV3V1A7@|h>0M~ za*Y5lMe|-K2qae{!kSs>RsTJW^mBMn{T@MoWTd>TQ2fOQ`v4T0r^|Ocunu?l3k7^l2{}KpqYk2V!f^i0be#Ew_H<=^Oc{Ryj|lyIU&xn=t8o`q4Uy z!|whc{;qWzF~7kyCm&lO<=?w&(PlbtD?6VM<%Px*Ce;#6UHL7aW@TyIqr-H8F~JAQk_LosW&Rk<2{!F|dO0Vs(y zmSiJd@ETGAXX(x;hBAPk2{D?rg$0%;;5SmENYpn)^=$WBuH*<-kE zmM@$=f%MQDQn;2 zh%cdq8}@~kF^i{-B3%&pjkH|FieXP+K(W##w>HSQ{med$tb~(l7`!`4%(^tS zssGPDZNo}rQ>P6C+?q#5%z6v~!q2)tr}f;lz5F|h(umZd9l+=UR;EVtYq~MEWPiWG zqYdASkEN$AA3;{=yHWfjtvr6hNZqma=C>E?dQQk5s+W%Y{`jd!C(U=>?AS!q7k%?N z6xhit%ru2=GJ#DB{>E&pd%b5#PcN?MpnUam*78oLsD1{*kZ)pTz0E!j+h7T?tz?N|4d zcGEoLopvHthbgqz8Y`2GSu9j0 zdTD%C%4;i|>A>33Wxix;dSVnn4w3u5cRKu z-Vos@6O zqq*O3TJMdB@S>zP*wsxK0B<@bJffjHav);oX=$MrMwdX%vpeimeWW838^V>LeX0Hw zy#lypL8V01rrRaOq$o8H3Pku)Ngzgl)hV=S$(H6b!kf;PPGY~E!-<1>_X$qgzQkxi z*RJt6uNY@j_;{rC$S~_;fMM^zPzH~q;KzW@-^i(~mT{9J#l;f8`14qJMvV&E{$#sv z7OGy=qzDf3l~gtK($~JD`+(}p6!7T(pQY$MCjjt$y{9n2?g8GaIKUB4P$}$sh}zL% zd$xQ%E11Ku^6)~Ca5^@{x2Kj2ozaH-KpX_>6M^SkRfjR!$T(f0*@UP0YG@3($T}K9!8aOYI; zIwS*+8URB1-IzitX=!(NxZ2%vr=2FLT1`LQB>Q+p^8Ds#$7x|yP`oO$@3b%OnBRjQU3KIG9ccn(?u?0%~Ck8Yl>%-TX<3J#Q!fydM7kk@3-wzxCr=Y&`lot$K_@l|ii=pNG3{|>$y z^LY1|t|}U|yDj$5tyqw~QR)Ni+tAC=5{1>&gMY<-#g8N>bfJOJ;K&xY-|_n^m;?3@ zAW-*LnnR@g=_+>QwMl7_UvAgC$=v|hnGffRMo2X#@dIdk&$y+_frK&|-j+VJf*+fr z%o)xuqrBB)8cC$ul9icoHKfa%9eg=%laU_ooqcxqhwR6;+P5RG=jPfA7I>#%wKG&s z)BOBVdHHX7`whjkW1HHK&Q5tOpiPbJ&{t5hDhiOEskEYXO-IYvo3b)BO(c>ljT-BC zL_~WP6h@D7uyb0lyMLxU+^KvxIaP_5?uV2^!t{yGup|-3C`=RX_AErF+{K3|^)odc zRrBp;zHPpHXBIn-O6F7;^1onJi!R8DvEZ?3iH@&)G#LVSlB4gqUivb)W#MHQcR4Ee zwf6PAIBPGDEiH#a(X5rouaIMv#5oZ1Lqbi3l|#y_TUEv+Gj=O3w|v@`(DQ}lkD8H^ zQ%U@E#a)Lhp-(SQ67YVOVJ+Wz&lx9Yt2f%;Kmrm;v`KAu{i}h7nepb4=d7wAgv5KKjt-5`}^&s2+f3{h*KNqIfXj^J>nL;VV!?H*dBR3 z*x{&i*bvJ0lIdy~Wl(!MCVi@lr09DYzSR#?+EKw`r(;wQzu}!Ryr|hLp#d*8JCGpj zB|*enrD%a_-)05pCc1+Uv&>eCa2_&u@NdI%W@u(818wZYM+Ll|q2ow`Y527OBKBKu z7yKU#P6uH&c3w^Pc4T64!I%OU)x>JQaX)NKY|Ow;;-SeQNYu_Um?KW+gGma@n0XJt zuY2Eqb&S?t`ZT#Q7=tJt(i$)D-1Mn(4D*ecC)zqwITb$Wwf<>SrN~Xc)fuLoCc0^S z{kN9#d3Zo)o_T^@ShcXEM;uMzjnmUIK*XzaAgLpsn52G57^@B*n(0xhfei9SF_0JG zr`vF5Jf)-a*cJ*nbraTo2K!vFEgk$TLX7hFx!#Kua{VAXg%sd|cuf7Y+8%)N6p7eL zPb~0f1Rht&&{p&v=nE)312~48!1H$R50zaee}I|xj`syjbO^}XrHVO`Q$oLC6edST zL;u#c zVa>`u=pni+)phJ{Z0{iooY8g#iR3}BKyV8|fIK~)B8Zi|_lX^!^R3nrSL8PT^8NBF zDl7y|B7_mojxA5wc_YE7MOihi?W0j?={7%EVR1$o2AF6BCJB`Jg~fv229h9v%#pAx zOc7DOVjN}=KEop5hJ_GCi{E&IWJNooW@JP}@{ZJll7v{rj)nsv5>Dr}w0{{a`BMQ0 z$twatFHq+v?m3eM+M!pWIy!toG34Lv+hx8rQaz23OhJEQ>1efM@j8U~Bj_+!z6S9N zO(mW<7UGjZ@=x!Mh|SW$I0iu;ta^Tid}MosKQ?*R3uCkXFqc6<*!R~jCdJ4>X)*w7 z=fh5umP%~(=gZ-hkkSFIY1$(#J2bCn#1k)RSEBI!Y+L`tcF=ZE;Al$BI>Mzej+Jn; z>^%mW!z6cngIvmJ;GlR)RaEC2=2_0SYgx5TJXAtGjN#dnNx|ytdrnf~ADICg`GyF; zP8mAyF{dfdO*_g(RgJ9dwsj@=tYj<@zY5I_SSHRfgqD*+oe)UjYxe`r+tpR)*yifb zM24Gnr#^j7V<1rZ;g@**O&T7nr(F-)us4X(jD5o2r(eCg5L2AL!uRy@x^p0esf$!zHNchWqB-44T$N*nbPH3P1=r zQt6f_EgshHvEfX04IqylA#M&keuk`GS6X}4@buAuxn7oT7c9mAkXxi{Z!l(BnouD4 zE`_fI+||bO7@OGd=?Pd^FtWDPq(-u5RF>1NE|!}@K%l_{zu^OsM?UIdVk=SN^^=jW zjo1U*29fS%&)VkFkUDycFnmK`)^4-?W`5fJ5}5O4Ua*BXpnF?S#H9ry*r1;FzU^91 z!0}tZbJE<2?e%LoA2eJQkchG}s;b%po@C1Z8Ly7jQcY=r0=1v;xBtQ!1z??<^{)n4 z9+SoAYnznlV}r`JeyS0e09~%bjvINsFX12#>GqvH%v_vc>0!1D@@z#w8Cq%+7ZXFp z`lI05F7(c7OTf9iC=6FX_x0^a&?(MhtvyI{+(x^l6xgid`0h^z(0`&#f%KDrx7Uu_ z1>sU&H+-9b(^p_Ce!asp{q@1vP!Ea_rs6f*f)LjGn>KK zl>$?^&3W_SlhPxjySv+4sm%S%BjFu|oR$4K`IfXCvX+?kfEVu@RIGu3pvgkzvWq1z z@#c$nvCs1Wb2jRs>zx8At*)-?>-M*nYc*u?<`~FbXbaKcjQ?)m*=B^h=_*&4uK=26 zWkgi*>+^id5C_!1X*p9oFIsM78KwErVStDHLGh5m%L^jY#U4QW-csXxIN==Gn7os@ zZO)>?v;j;JiuJu0{wjgqqMazG4J2MD3w6luR#Sjwv) zh3d8Qof{Xic1REq2^0+R*~Thvp~cBm!p)(Fq0ips?p#D&okeA-#ji@U%1A;I?J7c; zcnI|1n>Go!)QarZMmyZZZW8OXxo4bLxdiWMq2wL(*|i;PNnAEhR|0xK*{go?D;_s9 z0kGWGiyu_{#E?b>`EF5V=33L2O%XMgFOmSZ!aIHVJxmv1r~#mh5S@vIdm(Q#v121L z7#Ns%xd(i?3GS7{jqiwpxHq7nL`ZQJ-5rc`qKWO@bnA z$+OmBjH>r(WG}Od4~ermTS9}}zhk*-gq>Eb*xrfvW=!7UY&+a+kypW z&;B{)gO6S_K^8BbL6v*7$|9QQ^|kDLE?i9a&UW zhx0D@8kb4a7aukPuR?=X%vCAwjPw4+&)dpwA4ia; zjLN=^&9@5RK3mitlxQa2K=h8#Qhp8-H4yVZr@}*lnbJyBY`jTarR+QL3caAEL^Rb_ zEPFboPP@vRVUmVg;1XN*M1AX09pQay$?y+#O!%8CJZsSxy#Yu2-AUwP6(UTNlN_`pAKqi{3=?>Zn3|{B zTMa1bM7Gbg4AB-$opZ1U>k^L5`Lkyzv>QxbR3?le)nrL7$WZ%EOjHFE46kNCg>&1d zeYk`3D^|_$>{Q))NCe`BjN;uQB+AR=J(+(=GUEtUtJ8DhIRlD}j@!$gbE~^>#9U+a zqoWd-n!};mn7Q-_qwRHjLEZBc-Qqes#li;SDvw<`dM$k7Sd8$U89VRUJ$un5Zh(|? zv(rjHwLeK8YGN_Ze8X{MJ1Q;k7j44^zs=4F*-Z?(U@>kG94e-WbSZU~9dH zOP}v&ITQlSD)%YYcPhwu7B`C9(VQqizk3Jxzb7aHoZsxfIXPH%?t-B_rYq%0SDX$y zt;`~NZ;Jw^qL&K8`AxHMn&uX$bBvwMpQaSjyJ|nclupekfF`~yKwogfhjw>mKiZ#? zj{WWi33jpiN4rj}PLk~|-i zNZ0H(sP9s>jotva995R+Z^ExDpsAV<4i%*?V{^F_BABYFj!rP~7pNaj7}Ci&cz#RV z_T`WyZf>vRYkhiAh}pkQG00TNsoYi#Z<**}7<;&riZvjekcjDEIfb+jtz%;>bQa9F z6WrX0i%H{u;|Cl+lkk(gchmjQJN=LBMu#RBc8vcxEzU?#&}@<|(`5263zY@Jzo+8d zeNL;xmZExIs`UFjE(MvDXo)SdJUo#^`wt@Dz~kcOQ@8FP7l-h)vcPowCxDyzPT2&& z>ykhTuhQ-B_ufza_3PJr90rK=|1qq-qf!9UBS3-g|DjT31uMp}B_uczk!1Tt$3>d5 zupGCw=04f2&CA|5%Q;)-Gv-IVqP!G0Y94vy10C5TMzs0o`c*De{LxI^BzaDA-o7uG z+Q5hS&^rk9r;XO{5WDvVCM%FY=6k;t2HcD#0cOd1z?&Z+G51|hnuB(1EI^K@O6fo8 zR^=C8B~AT zVQz$#1SWksc+lu`BO?m*ZwRuExqqs|yIedbUe;=UTZ0m5NSjE~M^uZ92~Cjri;0V@ zQ5DP6;6PGn{plbrp&jb&&wcm=dPZZz>Y8-rga8kC+4chAWzV!eSthU)aKg}4p6}Rm zBQG-L_Z(fasZ`e{OBJLSu)T4nQqAGk9gob;U5TP9E}32hDUyIX--fh|oUnB4HfH_} zdKFb{RLjNAF8@aHyrZoxjDul!8upi~-}lmJ&|@2}KSLn(4R;#YJBsg%`3o8-wq9=9$?fo)%}P(YJRzx}XBsh{>0jf^Q? zF9?u9)cR~=8g=A~m(j+Piw8h(iiE$v5Wubp1Y&z#kLQu#kO>37f3NOb0BAA5&V5f5 z0GKDZY$njyEL`Hox-+P)H%xww9GVI#(YSzF%zYs9)taM{kb7yxu@|d=NtMkhME4hP zZ2`!k6d-OY;54EE$uHWCR%ig^M%`kl@k2)YU-l-ke!E#7i(7jaOtweFhY;<~MX0O} zZ`!?_sy8#EIf(*OHpqisI|nZ+)tc|Ql0#IVHGj%i0K;)t&2&*l9;=-Z8gW!fdZ2R* zuZ92{oM~&sX^SPh65tMrM=LPwRjBnH($kmdty!71(vpw{!2CFg742 zq|dRUA3uOm@x{si0HiYUXF8)Pv$4BlexmSsg=-c@?w4%$W^$gN+Pb4_ZhpZ(Me3n} zB_5ry5sV%KAc|(p5MuohTwnTKc{AVuRNBF-0vif|iUIPyT=vI*0lzrRbJO? z#ih4-?j48YXC6yi;>!p&o2q~%CMJ7J?dfFZ)J>#Xa6X%1Gg=7iDfzR%fG5>FHZBc$3fDbN>~Y%#M-bzv8!3$?KT zM@&dvml!*NLuVyr_;F@8#gu76F#`G%(7se-T_$+(5g%_GBD}6DX}O~jS=~kUHP2A6 z_s;l7nVnZrXuFA1_grETk80W$jVj9II&T7sU|U!WcRuf;ZYiysNqlYkgjO+^2)XFX z1D4$^LDOn2e`Bo16iGex?&j2!r_Bg)LRxlOy)A)!I(<{U%Q%7ZxP#bOfZ^(}Z}b12 zW3G}7(LTi?d310q=VDens1bwqVnRaSTeYunU{ywIellOG#5?m>**099=|&rmkOgu8 zp0K>f8sLiqsj|U9iMaVa&%YPIgIm4w08x9O)_0?KO`~jbsCzPJO{1gEJI5N%fifRS?M&FVd=uT4&AC@>(F^-%_C?_r zwK{i{zrc4rMFrmKz0|P4KiFCsCSRw@FEGDUrpIg|qzCg0f5)I*_$Iof z)MNKY>)+bJH_U3RvOInruoWT=c9l90IkGmdom^TE;EJ>rQH~^2t;PyXLtBtLEtVJ` z7{#;|aj)BKFY&TVER8Tt#$-?xDYhrOYm$O;`_$lXuA9o_#6ADVIPN3q>7vjJ0u}Cj% zRsV#CsApjJgQwy*j0{hOnrGy%LCr{EGJ{Ybdv@+Z0Z!#i{D;3rW0|V1nLF%X#`WbW zqvC1*c{!yx!*@Qm!Vi`91@&M3n|yXQeu-e;tB1jMCsar8yscC7G$RMDL7<(%)!l!4y%v$jD}n7#569zPLf#r!8-s1-Z3Iqr&@z?G znh!ScWZZM*NNwkSs;RVtK zhbjito}XY-?HuPzT{K$*XBlos`FMnQsSh|faiBI4{l+iQThN;x|2l_gdi;R20bmNT z0v#@DCgh|~?b6`{pOq1|`Mxt!Yof5pGYO}bA!`1!ip^q+pGY@{ujY(EHJRrWbA3|( z-ZMMpOMBPYQ>6kz5k9vEo67agk|!j5#DB`z>aSwQ4v=aTid~&D4Vr(m?6i$I2>O7L zDq*)y9yEBf*8eX=PLw^a?o__%8$s=3N#6K|gE!w7j|fap+kW_OC6syBDkL^0IbTrQ zwIGi`;E$zMkT+e1Zu0uiEE4Yf&^wF4T@1A4_~!4t%`t@zx?aKrp|U|#oX>IS2*}G zG6D1Z)A%5wkCRqQCDmP=78a}j&-_Gikqm$iP2GOBhFMWXqmJD3Ds)iFUJ8jfP+Jkr znswp-mJ)jr2efU;hc@_%i zA80-WIzFz(xA1*BTMK6xIaz!D*wl(QJWB%UBmCR1WF$&UnRItcH;mYOdH*Hu*w}ve8|R$Q8nC`j+JZ<=(ieP; zJ$c5CUa9m5!QDQRy>wzlKr!#Wb;A9Y6;LI;oC;XuE?@M+`FY|y*(ZjEhM3GV^CYI7 zcr#cM8BRG}cc?bAOzyf5>INdeI?P$B$E)5fISm;JJIOk!hTbtocpamsaO(+wi&?P@ zd}`YWl~TR%3W^ibiJ{q+(`R4kn1?J>f%$NhDM2mwphqtBg{P>m@lpHCJgxUwWKRiX zk}S7`Jz^F3e76&|Ul=38+SlOcbCPEZ8+mFM=}DzwCfXjNK`6nrnL5NRtv|uqB zSoB~)}5FhGu0Izca7pa5CpO>eSzIZ zJZWoNL?C6op3r8KaP7hN8A7dzvHp z){H*8p5gM5t7XQ*ar!m?>cO<8%MD73g`o9IiNBh?tg43;qlT4A!LZli$Zkle&H6LdzvdY&X4fQn3h@Bd_8s#&T@Se zF&=S;>bi>d0F-LxB6$3e68C!Sz)Sv6lxQ zBO*j>xnP+_4@U;hlV0C{3kFBHe5mf@jcG%XL5`&I_-U;?QJ8jyh`}UURPoddzTaY za|m$<%eiX2%vw!y1beh>@tTdgr1O=h%TzBH<|6h6URZUfc&gzqCA(Y&>jgudb9Djgu(zZjqq0X_0uur2^Z;p7|w z0^@mnFU)2L(giE)WXyIVxLKu~WVu~=Q2FXcTlEK8ok>cwiS_*|vdA`tm0f7>XJu6A z32E+`=Oh1;$F~vvGgUuJy}9eL^g9!r8TS1?x>^>J$X=NaUm;`ZM~P;%QKS`IKaT~e z*F#;A+)hwAgvq;AKE>3Cy8Do5!|~(8)75yZAC4@hZdNhYahWdvtOm*bCbB+bKCikr zjoxvZfD6nVDIDZo{XjLHvNJk6+)cG#m3RLj2#7^lJ0QwE353L;sknKgjHZmn5tPv} zuYA68zNg=e;x=DGAZEfbX1CaCV546zz?Ri7OQK6V`VV{3i+?52 zgyVUM(ABu)WAK?&&2bm94!b2d|Hf}BScgt+HP3s zowcD4>m5Mr&4D6kvei?kGAdV0^&hYFRKy`6q@C%eeToj|+_3B?OU2&UZ`E#GS>^5l_WBdFFEB<9c#1E80!S9T==}>yi0+Ip4<4)ql z(et!k-YY447x`lQgs|}vp;|TbS-oe07i?`WeffNx&zkmfDM{X9c*154Ov|6<6p$|+Q*&NhEEgE0S<~I| zCvwk{qyaxVcX)%5?|T!z*69wO!tNDHW2Fht!mmZIfw{_0A>;qxqWSgQb1wuujM)F2 zqC)D{2kF=Ik#*W*uLRj6Q$hTT= z*!WF_d=plYBl(7B1~QD_D7+T{hijdF5TFYIpZ(#_D0tiennj^h?YcWz`lp7_sn(Dk z0-Jb>W^Qg%fO}N+>~_rNp*3^dj+RwAO=9=i{w5!4CBXe70SKpWaDu(DbQnPDk#%u( z6`quY^#;Bxd=E!1>WxlAV?EI0>PGJpCZ*AN{ncS|B$aqmgcwT+5^@@RD=A4FSn+hX47EhjR7;XvV9NvV>D z5)DpXHdwWLs)cGcW~(rGNUoDpN5fPh@jb5)GystEP1J`|#Pcw8bJI*4piPmGkhHq( zAOZ(@BrxwW1M+e8y8QWxY`k8_aE=ts#m3_La2R*` zU>EkZz;|Gfr zIyY3mk6UEC+$QsJ<#TxR@$WyY_Jp|C@_wDiPFo{iE70-WDGu6+mH0C{PtYjerWw2W zpimVq-UinU9>AR9dvl2Mrg;O#ba-!Eo|+mi05t~-2RBu&PBoD$jQ3`{06;9!12S8B z-f7cYKiEGL60)@5amIRBoPJ)+$FsBPBFfcfS3>xm@>I;10U%?5Y3ZAZ;|*N>S7XhL z7f?t@zCO^sNj(6>g$3Y{5%L)7=eyyI<-2oPBYKG;&jcm%lP+Kk(>66R5+)khJ(*I> zGn{29TzJ-rsxn6l3+muy_PVB2n{23}fqwD*HKcJ5#wGbS?}FlDak4SgB ztJ>+9H@UsidX{D+OJ3-4z&EZL@4;C)hbZ_Umea)Zp8let3GljPKv0wX*G5wu5E$Vd zV(6@!im-}l6*17mzmOeORLVwwjYJ`Go?zg)iOBRw9`Ph((nMReY|}@HyEWJDY6bc= zEsdi*m){DTb92Df2&+^ZJUx|GuP!N(+}Abu9k3`bIzZ}L7hhq&#z#Qlk69KQB^z;f z76!@=Z`*Q2W5V-v2jXEu>z=ZLND6C4X3Lq;MgkondZD$Ej$SyjEey3v!vojPx20MC zA)gx3^*>0k(CXM5{quqY;kSKkmS%q94S5aJuCmX+atE+fzIz16>2vr<=0jh{a{tRL z{m>A5!`MyxU-tOFL(Wg5;LmIZ(ZZVM{ym05r~D*vcJjvq(uEC zCG^bcUs4qTVDhfzHYGj)JzHH}ttb4$Lp<(?0CG8Ju(EH0%SLB>Un%~gXhav6G>Ee7 zz>Y{L$Sq(&uZEgQjz@xeYn&86b*i=5_vtFD0(5af7b{kysiJ*j;n}t_nvFq?iZ%aB zjdri4wC;h|+_h$*L0L+fuG+iIHyFY86K#6XaZ7alEFqq`$5#bKaxSe{9*2?OUr%C( zNSE%Az|y)euJeP0$k3bQ2EwZ_^SkZqx{Ty`J@z6QH>{_lQ9_=Y^=uup)zq z+Y=t=x#PR6S>{*K_RVKY)yEXWzu)iV`{uVcxcgblNyjX_ev$s(3k*@Pt$tP3>3u3Y zd?e6lh*VfX%WcqLXLFLY0LkKP?*CjFV#U1W==F8O=a`UY-kr2dBx_SNy8mMiP;vm? z&E}59@Wyxdc)Up#R(OK?HRF383&Kg;Q_Gs*{jquGyZ-fs9$JZa%*}mv?6v;)X9+;6 zI+bqCKg|x)E`I{(BRJ$Q@HqqZ0(;oEU6p*yq0r|vsoQotSh@xJ*v|$|4_SqdC}f3M zqG1A0dW@9nW%Ve4ADi=oD&jTMgfMwaE0Vl|3Mq}QFccdX-z1>3;)@li@W@rc*}Zm^mP*qN^}Q3sA=*`9 z@L$?ryylLgGzEPWuGTjati@rASt(~2^P~}MFWi4VudL_!6Z;Ta_G2ujeDGuM>OuqV zZhJ%BVTT+lP4eOE?Wd$+gY8EWx4qq=S3Fwo+yU6irG8h#y>_YHKp+L+iVIQK%{DQT zwigU*55&?{pvOsm*Jm=XV@oU5KvxfWo3eZ*i7DOxKiL}q^Y#O}78nqK0*wTYz~`5j zsh*IKlJasemW0r{vl06^+VmxshsPDYKW3%J%7Egmvc;r zhPU_#_1*~C08csw;8gYhNznVvoUU|pxlQp_5TdIhCpkWt$_pEWQ~Cu&ZrP3i{)X(w1q$ zLW8B7WjR1Di-sK(S=bw^FrDpkov*vc^irZy%ckG6q)hbG(kSO{EW4VN52gp(7YM9i z*dWPLkV=B}KOrOZb=+~SsNPcp+nR)_-I_I`{{@yxQtP+?(a6X0uvkg|5Nn!a8F+8CvEoYMw^_8S$T8#S)sR1shuD>5-AWAqEtLsjIPjzil z3Ht*G=SQ;J`Ac_B^;Onv)GQfBIj1{e-aBD^k}zZDBLbbV5WD*auOpj6M?uWi?zO*z zIMnwG#XB#@2IWPTwoWC?oHHM$9X#BPpccqwlHoASVS3Eg&|+o{rB387Up~V=K}EBS&KDMNBHtOXfH}dlr z4s)>zVG>5tY99RlQ2}ILV7*hmU;u=+S3C2|a|Q1Ap|K0OB3+x}XlOe;*up{g{s5ZU z&T|I~N{gZD9K?5lJy1-s-FM`zc7En*O93uBuNExLWyXZ7CV)-Ndf}FuAL~M zUq^^>|G1O=cK}&_JSooO00r!HpS3UhNWs-_DNF{udHdJ{J;jlC#yX*3u{2(*|8cx*xd2+16y73czSsOnLqO)`3FO zUU!}pbw=X25LG2u5-Sy`B`&dH|BPUfd7emGiPy1#xvs)vpi6roMo7_}w4p90lic4= zq(z$25O*>|%`NI@p_^ix)YU}C2t>mIX;8j-Q-L>*xNRF+xd+Jsk5WPMItrAK~ zc5<-zvo!2mTD!(RltyG5##NFWa@{2y{G?*W*$RZ z(g_PJs*2{6`E(@fEjGRqNT)hGEZz(2pXJLinwfkIUG%av-ZcvDB=x990y%EBqWFJA zs27fyk$i&Hx=mv=T%Tr{{lyR89|apj^q`}{?kG3FRPKdZd2Bc;^El;Jl_l(Cv%Tbp4HAt=}*|7Ezx0C`?X6O0>7CWuOWaNI%4t;SR&tTmJc z@1Ue``?v3%pMQi%PO;Q3CnC5brGRcgu67LnnXN5i+C8H@{98!%&V+WAgx=6q(`H2m zgzWv(kEVPXs(ohRH4$@M(3+;oSF9(hugxMOh-?=iis+JH9|D-xSrm6Uvg|Rhl+}h% zYSPx0jfd_bGm9-*@aL5*Sz<&foLg9-hHuPFhES@%-%`crzFndIHCE^NxY9Noz9&RJyxb6ywhK`y6TIZNEtzgb=r*RMWOnHxXd6gjV` z(Pc?Qz9To89|#+dKQKgS2RY1F_5t`s9{(HLH&!};eH;L=o!sW|bbpeldyXp7j$tcH_c`Jk459pr?ESs z0Y+<*O7%G{WcGMQk8*K0FveJYG)oOAcw-OunwbL3AG^MgS@64G*KqqLf=K8^su#id zgL|UeVC^fBBA1_wrx$?ndELrGG|Y9_QkcwNE`?d5liSFETGP7s%@ zQ2Za4VXE!%Fx87m`>XgDv%FeOO3-UVz9XCV4{jSU$GX5-5N(+ThbHlt@evM9a|rN) z-wK$LP+W6U44-6Z`MO6Fkn|`v{XSD~tH&cO@peoA90_ z*Pvi_4u>fpCX1zegpKrZY3XV8%e7CAit~8pFgh`*`fB>LmAe*gO>uf`e222(!wvX{ zZ6R~cH97Ed@$}<=C8UNv{1!rqP(~|lifgZ>$)1oRpo<%O+N`ZGU z98u~NGlNat-h)xaUA;SwK2EQaEohu5D6Vq)tN*wsNzgl)^^!eCn2ZQ=JgPBUN1Y@wKU zO zyZz@)1MQHuVh*qlqhOcL0}SBf%gGGo(Hp`4G$B6v#ZuTQ;=}#HFvNEVTKJioOW!wq zZoyp&b{!9Clk-t%N+WF_Ef=^QAU}v9N;=9o?dYpEZg%Gm-w%Fa51sW@!d{<&ae0#l zQw%NjTw=x&>pls$N<)3JiS=01QQvBJGMCOUfadmHy+EQ9iW;Rs$YRA)w~y0c{)tK1 zo&Wp;488|!xHWbF%NFc1O3%s&rJv+ zpi+9i<&Zy;I5vE&b&aSLBzZffa~%N?zdDx4>8$p)|iAH z=7PYX#Ky9nQJ8OZYS+iZHr<}6Es=~Hq>?V_0S?1P+qC zma$Pmz`yc4YcUMlV4ItXyxzg!6iL5|)dTCXa8c9g)>zgUd+Bzr-O^^I+d6yKeeRxE zt}LcaFVF)^JnrJXAw9UdZg8^&UCwZqB|G{tn2p6(JA?4ad9~BSTMcV7lvXQ)AR}xr zN;8a=gniwQMBxd^v|e<0xDF%nL?$i?rSkfHtZuROLTvo%bUkK8p1X+UNYSNVupuOm zt*0Z1D_Hh0txvHXhWf{}qe0>S*b)acklAXr&&dbEfR_Jb1xHNP?G5dJ8H)71@kI2& z#K++%$k2acT?(+e4Q`$8`8ZZJO(m=F|Gc+qp005Id#*Zh3F@-KAmjSU7k%4v^_J=( zWqb_2d_FH52f})X9Qlnxf^y`(z|B*vki$wB26g{Pf7bI8n|Q983lVVR8KzZd=Get12cofYiki||jqW(iQ7uu|_se)-AN;;`%)x61hFiOr=dHaw5C%f+ z{$ySpFtQ`J7)B(w?0k=%nlmeIm&(;scwo?-Dj+H+(0{4gTgcK&8e>_TjA~+hn_Ns* z9DteoZ`oNvbJT|{cHCMx1)b=Hg`&1$es*tc38HWN^uv7|tL_octp8ZbpxRROQZt#45g?C(_yVpHf@4g52RDSH>`>&rExCkr% z<_k2!|FA42QhBe+m!usV)Ler5qH*ZNU^z35wrx4skYQ#1+fDLwWBul%iZ5G0@X#E^ zG%eWny_4$FznEeiR9jf*s@U0WgP-f`TTnVijJ20Y@CUwDg%NKVa0mMKAxbm5cGMkt zx7DYsoK=02se!^6Jy&{yj=P8TH6@iD!N1TE9CA;uyy{Fn*`y+Wf6L|EuBC8Sl>nJVhO5?YAgv`DOGMv8YO9p-|S<^d- zVwM@m-ar7c!}rV?RsSr~7Eb=9>Ed6^^UUDO9-rPRXCKeDr)RmAAiqRZT8AAZZpUYk zILu;mGe{)f9e&xp9Yis#kmUU1X8CWh%$h>dS#C|SYe6wVy!L{@&rZj)HR7GTYhph7 z%d6KQuZqBh^?$g-hZUhV%A#%aRRlI-l3bAirJ2gNlp;$`c~oa8xolk8bAyRE*m>`H z%6Hi%tA5(EjC%dx1$nb6rCfg{@U{C0V8rE4X=jz~*Z5?;dOGpw(|vV!NIYq)kogrT zJTWW(dgBp(k$#?00XaNg?djE9q5wGQD8S3;NB<5Xw5A6$$g<71WJRFmY;=_36>mkP zjVaqZ_?O|0Ph%^0DU9SgQ`dU8DFt+8BJs9Ul3z*gCv0dIZq?6RKi@R(h5zDcP>PyJ z!>7k*gH}pRYtnQfLRXsn=?c+#-)J_%rCHvC)Y>ruPA0G#POsbTRHc#4+LFjwW-(0* zzM(XVgQukFfAVP54hnKFieHzXtayGj*;n?nf~CyS9z7hhFrRerDyOgHbe+^<74Ja;$!jQ z0lmY-z+NWX3F`uOYYV#m3nI5~>~npH;lAx-+WdrIc~S$vN_kvKM-nK%7=PI*R06g< zl9wq}+l2PMqIlxaGq$CsZ1pTZj81rxO#6U2`HKv7Q!_$VA(~|9Ue%>=_YCcA0zI<9`1|Dgio1Q^g(Q&4eO`fABDBDew8iV0Yp!e7?*wKz;U#%Fd9*|>7hPz& z2qadE6pBo5gQO=ggx?grQ&aw)r}Q&bZ~MOwdcVebLi%c2kwFkuM1f8$^gP7pJ5S#g zZ$z!GbOI1dQy-ZYsVi$IjseUp1yYic!zZCuqxL}yYc?nhJIh&>W?1Ww$QGxS`P;=T zpP?>*Ia}`N`-l_8gw$^H#~Fa}I{JgPJ>D z3j4jWQ{6j-kdi#m{L^_)jW+@7nQkSx(jTI9wvx>K+$t zSJ%~grC-HaT?+NGbIa7^7jb0v0Er8cvo+6L!BHD5*eXP!*UlC+P!+feZL&?-Wh(@q zx6m2?y%ePLC+97?%;Qdw7S+Uolwt+zPtMAz&AcBX*bFrdMxT7lV#&L3xJ&!1ug4IW zk)@)hde;$>H_A(4UC+gIZ_01nl|p0`{-lHX7w+XY<_+B2O}A_@P=wm~{gWsk4sfBz zJ|tMOPDHrV)MYK9gI{rd_0y5VLxI+GyDZ1KAK<8c;!Ao4+& z%ICwSUu`+e1{|X9>`rrOylj6#3BIiaNYE(KPDO!m7uS;HAz{vx@{_Ke2Y8(Z^ldc<6t2l**H#{6N6OB8k|C>x zh4>V%Cp#0t54q)0y8g|F9{+rkcfeF_*%7=207G$M>6QOt_}&W)H)pxm9w3~~JP|Zs z5_jI%d7V}ju;IO#3~Q$MwJm40Bbxu5tt;M03c_{%pr*APBs9NlycrT)-28eFKqfqc z6L?$3%L?`)`t={G`@LVPy%qDI<_cuSNQdliiiSSD_?krsM+w}FTEwaxN8rPcoooi1 za6=+lApN!Wxh;r=d!NK=JYO97`wg*-(?<_6a&dortumFq)iw_v=T)J=n<;tjES1B# zip*iEL8^lVpjqcQU#(f+(CoBAQ!6o45sHwuZybpBy5I=zH^s-m*n05^E^Az!R`^pt z_yOC9m%rmf6y|pTu-kf4KhEv-PdiuQ^icYK)dReB9+H#_-&waEqywICeRlf!C#O_! z4xu*J7^h4A2VAJy4y_ht2ptNd68rhu>4%?;6s6@YqEv?-9~5%%?G5jdqjWy&lu1oz z3(L`;h+*nINe-Jbe;5h4R{LzqJcSE3wsw#Y{-#mohxTA5R{OxRckG!1Lhs~gd=c)5 zJA2j%&YE3qFS#w17e7F-f80|Y6+U{N$op^69DKBSK9(`=xHqDztwp$cw|3jPoD5ZF zId_nW;_1EN?wAyAJJ8ZnItv70N`A20*c{Z4plUj>1|!gyL{u^ra1 z&4*Z3^Bau>hvh~VO8-NeljSC~Hx%GxzIfdG2*ghpn|;1dr!Aja;y z+I<5s3`*wClnoAMBDrIqVx!2crmHm!Erhu+l(=y0jTGq(U9YnDi?TrTUH9v80JM7t zh*nfk`lZYo@VJ+0F-4m-b^VX$sqJ1_r4c6Q03_OzYH~E7vtj4t5G5mN^ZC4UO)}C% zsx%j6u)zvejVASR`sp%wbK_Kc-Ck`pquod;Stl4*51MatFP|eDjL!pl*pc6i3OH_G z9kJv8apu;OLk=BhcqNjRuLhL=`?(&BDeE-6wc$RQ)Sw6RcNdogFaqS8{YJH_{{B5V zp*nEKus_#hmcU)ZIE@}C8lPB2w?euDDoTEtKkkJeK@LvSC3-Uj$FVx8%jY)RhkpuB z7l?jHIp+f{?yMzngqx-*$t7Gf@=Mci9%{ZosE_>AI)c%iO?xKc*C~zy5=m1_kW4kk zOmaGY2-u`Ke2pHHmiO5kqXm~7DJkwbr>5vU>0d0QOqLYJtxX@0@12+g1o|5v2#4eu z9(SFeBkoJG_f&nveLPL`4``)x<(#u0-}R!X!g&2R_<-z)K_P;F-u=XRceWM>(12In zhA9AnpH7D!KI3|Rl>9gceSg_S6G9MjQQ*YC+W_h81IimqvGT2H70@xTEFCURl0Z!z zy=YvxCA36~g-HD?>oe$s(#88@=xPMW+lzL8Gc~7SOocE;POA22ZglH+@>fnt@KV>*H}u>kqUF0i*pI_>e4PP&+Ld1yjpBOE^|~;V ztq_k*aw3IrxeG3p%1HT-%&O9l?&6)Y6{7OurIQm$Fj^2ato5xs15;tHvQ+&XK^TMC zJb~HUa~C{x>755h7%5gd=$}+GzPelG3%S99#qY^Qe9qzl>md2j(UD%AIl_Fkah&K` zE1XE4^)K7YQp(j&!+kFwRAkPo;&Z{E38`-@T9E#ID7J4L?{mXRMbsbR_X^(v_F- zT?FUcx$X|5$SNfsc-R!#0?e?kJ`Xe4wt4@ao=w}2I`kfRU8l;uOTVgr+seb9#O1?5 zR5MIWs&9*~iRF2J`Y304$o!~sdYE06*3eXXpZ7ubRN<>U zTx0l6#@za4h(k+;n@?4yiB5S98oOT$G;*1-yb+_j#P9%gF#m3UWB@FgRb2{hI zJE`g`iLusiL8mIimZ7&{8W8+KDhYk&b#6amTs-x5Tx*}(N!m_gJ8B8HlCA5T{j#mY zEZBKT%6-Mz;&a>s3A_epBm!mO?<4liX%GF1nqr!n32ZH{&I{O~c#?=}CcG3l7 zABwj#<>bWiO#>Dtr~yW964nBNx~l(cPEjo4kAEt6UPa4qQ_4Lv+8JRfR(FNRke=JA zkvc+=MoF^)92r;+O3z(X8nKZ?i+}~6HjRuBzG>*$TL}DRm_?OM9yg>#x9qs zuPr&brwSsKGIRR!wF4Up&Sz_r(iCCJ_VmA``q-%5``9dEpKEW{S>wpxBM)5HMs0V-Wy#K8&h7UE8Fncji{UWd0mX zh~6@1!d>CO;akoK%r!v0X55>Q;}0i^+TcU)V8i>}UChEiZDG18W8Y^hGwFmIcn}`W z)Q)ap6BezM{v+(o&e{_F<2U1}!01~>fO0g}J|Xr)nT6P!D-*K3h2>OGv+6f{{|f!$+N{5lZEU;9d-1W#g8p|bZ{qHL2&pd! z+^-a6-fIguNq6dKu4+ICrm(Lj2Q-63a{Ic|d_^+1fBe9Zqu;>gLH#au@4+}*b=`T* zMTwd8OSrZh`Wi48GUa-*$YT`payv3MCatN7>wj|?c6(fW4D4gM%iR&zwbJ{XlkLnGEm{Ywt$K$@5R)A)5P|!M5z>U%!6sQ;dKQwQny4wtt?a>_I_e%*28h( zjm%N~cHf|SXp=u}>U41u>_wx@FqLO%tM;@ShWX%hy!RPh^07Po2dv0-Z(9opZFs6F zk-D`d<0X6}!>7VDVL=0n3X?O_gkIhPQ~MrA7H6hhT^@+G_?njXIhju0{M-b5UH;<- zG7y{~j+fVMoTH_%Q|uM@$RRvDi8{m=E0J05U|;yhI|Wq>JX9^m(6}Ou7Ni>N{J%g$yx^yko%3=>CWC7(jIFs zzk2-|xip$Z-l<_P(}NtS1lNR$Y!mRkdBUBs{C@tjX!Cj!B(-pf4K+gT+fXn(Ba|d~ z9x;S0XJ9Vng?6kOVC%g!o{jXN>D^|#yt_-FniZF*6Taxa=c*0}T;B-Wu)1<<6Yc6a ztK+rvm0Qd%>`kCZ-k=G4piKPJ8GXvWA)# zOE~1EEWUY@VFU_U3bUT^F;Yr+dg!=oT3`~G6I1+GiO#t+VOU+Ya?AELMK8&Wlw5|8 zvzs0gpgpKR^(4W1zKqzpJX-5kT)pRlmFakfNXWXdME*X_IMk0w!Yl0xB(^1=PpwQuY!Yu5Xzd)D^!VxO}IuNwk1jY zj`;1CnJ4N)%QH1)?z}w^BjmOXPsnM695)y~n##0ux8gDk82tM=Em|8rJ#hWeV4RT5 znkGek3BXajnpV1^h4Ll*$q$Zm!wz0zo%A2!^t?L?lQfzH)-?iay&NDrr<_ewKQ zJIhC@uaKfCvd}Ds#DPv|vhB;xdiF5MiTl2mFdf0FX3W!{7)v5fg!s|Wwh149VDkRQ zA5OUd!#N;F0`Ugrp&A@TY|`9ugY4PNSrSm|zwpyTnv zth&kDm)JJ5PdpD~IU8MPTW$ZEL5?t{Ht#%qEGFKm2|4?I%1vF>W)WQLIkYK1=6TN8 zaxC8~&P{SSb|P{0Jxw!`gQf)c_#p4VwhQ;i%HeEN;;P3J5sc|ZnPW((O}KX(4BBqH zweekhpr8dmvi~CtQuaMUqDz|TLRU^XE|CQ631n1|xRO`SdqA9}xBz|~`CVu!Us4wD zxk*9+VTF<$jEep4h$;h7??2I>oT0Z#FR$13s=f`Jp$xH2#v5y}lds{rg3xVSyHfh{ zrK~P&rKG<6(w{0QoPd61py&0L>n-p;CMM=^p@s_Bk|hod$mEI#5WamkkwWxui;Jlk z^!XZxEJ0XfO&(vi^JZGv7no4EEm>v4fFzzTKJ4!AZ?CxY4Dv4+MF84sI3VJ0xZUgc zFCc0J^#TQ1EKr(mOF|#9-mZ?wwJ5g+v+uydOmyCFhd^M|oejAxlfAaGJ(X+A@3hLs z@lO0Tf=}mYz!H_AR3z}R1N+wzFrbr%zP`BarR&l%F(Cy(Zu)=+tn#kg)&G(M#&22G&uKDJ(-{%jy@YEYhB@G9iN?~nVKL&v#y8@{dNv`@ED zLVw4xwY12E#%BXlMjM14wW0zebHt^Kg zn4%5H8;s-~jFr2JQqqCIu31mf_uGQ(xH>Gue)#rymJ@8`l^)r*ci^x(>DE=5(Q3Wy zlz2YcAC%Z9(3rCZdpjLW0#5lo5C6hMMn+aw`@iMme8C{AwV(SHjZhQX z>s0`UgjrZv2%?jpHx_;O?j5)7U+PMOy+e_9`#DxiYwPxKT@bhXuEL?GNTojAe+wE* z$wf+O+K5nn2~W8#DUK$`yLN};WjNVI-v{BQp+Il!QgG+wk?(yrKi0dN;ga-7gMu8zJ9^FYFt@pa# zH&d{^ZyNm4<$S($7T!J_LZ}4wt?ej87fs4E-}w1%R?kVulkq~>vTiO9t>O-8V{G|l zwJBf@=dR$6{h(XxHRR^PL?ZtgGOUQ7rd{0nE3&d21!_)=3BZK{z>ToJ#5)NLV z>Vrhc)~`sI7)8dCvH{O}JBnkt4j3HZ2LvTmEtb26@*~VsvG)T%^@Gn4E_kR(3j26m z9sa$$KtzFn6KQqll~Sc)3+DZL0M~lpwW>-s->A)Fb~fqk?5x)s6>`QL)-%}_-5e?3KRH8KW)%NhYNi+K0_@B5!(@WDsZzKiW8XAY| zv;N+Q8d*!jJI>6$yG)-?&zXUk6ys|vW`Q65)@hFksH9HBCT()ei<_}m+xeC`{VApU zbPiWjBvx|n!h;qgxC144qIGdZ&7HB3nOa7{f~CFwP)g#0YmDxtFX~aiU%}liK5-d1 z;qe!GrJ=A_Yx0DEUSL8p-EQ#d@c`v;z8mFbdsw{8km(rdK9zWjh0XGfXe-$Cgqy*XbNA_ zIdud@iSqTEFs`w+64h_WW-cSkVu(mNJo%U*gEiFMOENG2tV=Jnlrq?PsL%-7(X9&Jd6%Z1c&)w0r{&i@t z+Wj^h)#iVBy_h3P*|k=-r2ZN<)6 zy`$ND;?=WqWwY~dgNJ*-t7-diW#Rj27K6l$LvS!W%l-^&8nXbY^aUyiUYSAW{Mm!m z9ZYeEZUPhPyaD^IzyYhcsnvOj8NMcT+2M$1Pqz0chU~wRZlWX z?8h4X0@SPjPAjQ&=ydY%OMv5v)DyUwUP3%i%yW6J zop#Z0Jj;B%rnzr3yHLtH4^EN%atjloOK-K+k9@1*j_3UH^EDV1?kyv{-TU+(PnB{e z=fl5>8v4u-AnuFDX_;@qpdw}~;T@Y5g+BDAY z54DVaNxKlA_lcfa>hm+uX~T)8xo}Mx#H0C0{^MOUyLUXxHRqJMzvhCIs2=wya+sr1 zg{Z-HV^qaiHI^RS!oCVIi*5k@VNo0>Z1ck;?-Hx4Nfdfv^Lr`(V#h+(#xZCwT+M?@ zgIYGyZzQ6qMsa=xgc=a_Perm#y%!8KetHoZZ?jZeMNc#n*_n%L#8DIF;>%;2%^yeu zIZ|E)WvUc@Eb94UM^muJyQ8UxYaJ~PSz6^{9r}hOr+i*MJG7K8~IDB^4fpep5g1SmX;+uwvjgZbC{rywoesnRVaol2Kqd)l_$%zi9$_`d+RfafwF6><%H%FD-+Zfor>d@ z#h-bSs2R$vzlG-)PWVE3ejv9(<)BeIeD=cWSq+Je|Bk2)v_=YG<0~viXf@jkfBe7) zVA2oHn7@aHUVZq$&1*gF2hd}15JFCUjK=v$5T}qm;7f334t)7Cy&dAzaB1^i)nE$~ zd13*jAg0U7qxom-aVK`y^*f0yzMqTFGnjQpF4G^odVanBywK_^M(KU3tn0a7U21Rv z3)fQ!1z2Qf4}*?bQJ@6s>h`ycZji&o1yK99hrSP;;{~d8EoDlmK?y;%aLS00rC|z2 z9a;27&ff9R`D5Svv^J?X{cQMM_)gFkd$0{4%jv2PrPruQmu8pH?R(9o2UF=@1V2%} z%gAnKrqOn2pt7J##U!_nc8rvoipkQbrhiO}UJ|pP@|*8^@CG%cQA_diP@@V?`BXGu zD%dbqoouCXDrZ90~IX173&$EW~VvZ!z#ks?~If!cP0JirR$u19mu zQ+jn9U#f3Gq~hPfYk_kl6-6mh{%(NO>+WodnbXy@ZL!h}{oQXRE>o9iU;+7o zmT1TsKG#ngTn{6eGQ4nMSTe@fl!N33*E95`{k;wj&pQ39~r|#R@l8Su48vX{&3D6= zRVyo4jBAq>VxXb5oPIWzewy)c%LF5(LJBV?NNO(K?hL}}u_}||sHka_=cq?a)OC3&@Bcmq$+Rt|nG+H$ZZ`1RQ zI%%PmY`{9fMif5&iRZS0b~Wh=5=^^O1>gcwSd8|+i7q$FN=l{!yacG1n__Cl46F#C zaFfA5k? zD2(ft>?+Ly)yP~@j~k3Et#BZ%F7ZrdOp~c=7ivLc4)GSBO9~BIQm@iqMzWHqV32G7 z{H~dzgsC~6(($%SP7ZG=EX5B&-lTSjOV7R?sZ>`e`**b>HsZAPaZGteaBwj5>@yHd zse?!&l2|DEt>vA9uj*gD5^Xygo@syJ0lXLN@ zNBd1U!c4&;+95w)^1u~?GIOM0TT8=~P<{PK;G#F4E;r%_K7!+|oTx&*rpqM^Es{7m z)yf95thO4jM@jt%oQYe`2xHl;mHYA&HKC80bu=+aO74ahPr@Fqwr$y;vvzE`kSi?J z0!!jXIj~-QAJ;;MOV6Wo;xcu3N?nlDJlE+4+?qeD@j75IChS+n3xR5Jf*{vK#yB)h z1MlZPSL;Nuh%pc!KlNPaKWUU`FUP#1^q-jZdv&b-mOj8xt@S9CnsyZVAB5h5&yCIA zVk;FaRax}@(ggNhD(_RAQ;+7^t}p?pUn^3pN`R(j2pvmp4cGhH-Os5!Pbf?pB?@BT zo7o-YbD=)?_9>Dorm9~zPk!^h==V<_dt3&1Fjh-=MQqZ6?|qhf^xYLJH$tza!NuG= zv}SSyJJlBJhyX$-%S-6fSBc7Y3BRTj8Pcaa`RxMKe~6trilNoQo}z1QYG2 zPq9MkmW+lrM+8w!ycKARop&dbM7;%l?#?uw_NH-$L~q#SpM+67=#sP-< z8Wx9{t}yv9p{|()FbI}JuS5#!+sjsO-FsEgrfpt?`NXiRmVf!dF`85yDq>00-kNefsF$M{a2Dtuu{6` zLJzP=yt3>w+Aj;(2c7X&>&Q$cBuX18sTrXD6=U<(nOOA z0f=EQnP^VbgkhI_Y3+P?l3i>&nOG>*aDJ2T@^#}C(NZ&amL1QeMk|MiNOS$_9Cc`X z757dJc~A-Z6o~M_GI3#LV)gYY8Q-Lb1L$k2KPzT%CuPCe7ncRpbUaDP*-QWu0PS8x z(skGftruG;K&dTIN48EbPbDg8UUr{W5;;(_tv9)CMxyQWg-PS$9Oa99y|%)so&5Lp z1PS#W%AzA2B4SE27n}v2so0r9#^tolBGpMM;~a3xm#2(9QFI6G(<}V_uTTsDn85-R zZak<5@$cPD3+`sGD~F7Aj^@)*Eh6wLgJt3X2e<~*^2(ptcL7ES(q<~2bS0FZVK1@Q z5g!9cdz)YdBj#s=xoZ-KuD6^dZK1}RK?50X$Yqc3AD>2a1gC2bx*#TsVmU%ZO5sZ% z9wj~D+0kf~{e@s3b6@bo-qp1BTS93f+>MWVBR&f@xxZ-&iPj&^YIHmU4ljJIKVN3^ zj!b#vYw3Rr4Sh%pqYJ{K>W+IO`b5Y8#wlxv6PWL%XlHowT<~J}V&>yQp1tfG;D)5V z4thV9zufw8S2io9JY^F`!H0uyaIm;>X@F1R8GgPBp!_eDL!}2qt8PxK*43Ny;A5>wJJl$xsh(MyFEg4V>386jO#Q@Trn=|rV zE-$7{v!2*>#$vIn1vCOMc|R8-HwBhA7{|^%e)G0impw}aI8yL|m6B=(7J`0A5Kyt# zE?Po%_Z;|wRmv&&t9g3ak5c4#^!FYKr=x+;by{LbeN#E?0!8;uL0=rJf4U#$nvM@$7vA*_PYP8C z{J7d?_je)sTr;G!b=vkR3Zm)W^01CJi)n~tTnjy3je>&@#wYmgD!G7&xxPy4%!MkG zi}`h1oF7;dQJdM!zC#=_sQ6Sxa{xKgBt_d6h6pAdPCNy{}IO|FOa zh2T3-bv#;1W*Jb6-*OJUL@_pUjE1w%)83RffXYP)-WxLrpeK1!9Bsw|$iW;?JC7DT z4~;;b4}S0KXKaLFvr?g~O+ED47E9HiWXPV4!CL_}nbKFM))ooUbkuWJwM#d`HF!{5|7 zc)*7?&z|$>#&?_psY}p}KvAWgH3It#t$a&$g5xu-y1M%1Q70C+^)#2$&Nvz@k>hlG z?8B)AMxdXhB)z;T9viLVumXB9gZ#>arm7-0J%INiJuXvgq>sV-&MMz@wNGL=j_04a z>&sJq-+XlOt!z_oPr;V2@S0k?<~cp-V_qc@ZV+;9;TB-OM(CM*Wxl9iQiiC5`5W0L zs;S;~Ua;w8PzY8NWl&&~Tp^Vo2R4V@vR0ThEYuUG1s}x`1#~t@xpv9r*_6TYq>f!y zaWMwO{`T?%h>I5KR`QSJR;~J~vP4Jc+rDKk$E@-%tnyEkw>r2I{-(2a6RzH$tCYKO zozcqK)|;AKvP-F%4y1^pCyPPNsTNF1R%`F$Mysy!lj_y>#NTfUA#@8OM347ARKDDF zRFerdvYJHQo~dGjd6P`d%#1*hoawp`bTHgBszMt+A#W@-czb!Uw};mTO1ogg;$Qt7 zjTj&;z6W*=?-a4>p z<7ci*iO}O)WBM?dU!XY(lwTUWaQW6t$fC9J)cJxcAhmKoW`5~6#>0si+Hhq%bOC7; zdOC>dd`>-Fmv-oI00c| z6TZdmt{`K5{Lp}3;??rhWj~AJH$xLmsumw)Hgl|8JziR$Qw0EU1YVk;bH|q_s>79L z^0#+~zCEBK(lk7)0+U>a-TQ`Z`wy2$S>*~oz7(Q*MX!sF_j}~L^Y1REL|DGiJKSG? z{_NWpj)!ocw=DQf83BfD13i=@Ur~AEGsc;xr~iYTGM{&%ec@`X>PDt@F0521^z>8K zmOvHfQ)q?kkK&j|=hG!IGa008@om2}*EgxO0U)Z7`Sk8q7fajg{yt!qfqL}gm#=Y_ zL@zZ!_SR7^U6di{Q+5f|J0&G0KM=xev#d4-%wW2Tsl_g7!eM)NdGULhSZ=1Lm@@f{ zdj}u$E6KGXxQH65e_%(Q@2aj8#5_)!M@Lu6SV@8TSHRj;ygX@X`x%QW5>%WahAE>~ zWzCcVBL~$Z@sF+U<2fm0AxZlU`a5v4{+av?(A6Vy3RY79t467 zo;ut0_v<0Ry$VZ&U-Z66o0XygBaUJO&LY`c&QvnMO6Jr%ZW`}SmcRg4?6q?Npt`sR zy)zT+!LHArKTi^HWQ4`p;`%6a_DzuF{APCQ5H~eY))ikXtgv;yF9wy~>@L^C|z;y!g17_ID zgr-4P$0zg(ph5z)6+w|^SvQE+<~W3`{;a=%uo?gh^q+}HN*bw(_?`X4d(&q6)Ch$0 zdItv1lKDVd^qhSsrdGKjoWA=fIFhcyFkmwNJ4z)&MY^Z zx=1^0Z~Xlry;N$1JXOOoG&46}U1|@kJi#L8_e)Jp{hqiwW1jJe8nq4pO0!!y!H}UX zmJ*+5rG}psG`w+kehw=!1tM9w`S~lMtfg%rz%4Q<n_lPr&W~sk?>s)aUiznX3qEF4!j(yBXAlGw@35%eQx>h|0K57Z9uJg!^!v_zpEmF zDFT28_<>POzw z@^1Xx0GQR_9j^eNk~HWkmR*yP8JrE6a<*H|4O6xJi(EAI?ry-G}vA#bbR$=(wKr;H^2lR~Bs zc7V?TqxqB2VG|yf*e%!3*`)|-RO08Bpw7_#^B;gVmNyw-tHOv2fFS@LmL98DnxBsh zxL@gJUS1vq64nJD)`dGGuAbONJj0HQgY%qUHi1^{s}(#aaX_%|MNhQuJjiUsEZ1TK zmSV1z_U2&PNQ1Lgv3B*NKoqR*LiM8IoL5*;?XEBw!xPnf!=6Zrt+8)WL-)qoL4UWD zjS#Ekx{%Mv{01aQ7no@UNOEh$#*CiZN3d~;3)rZ$=O=dk)sb&Bh(yHjqcDem>N3b2=+;v=j%R1R} z%a5RMeYdH>t4Q*8n4$X#orsp3n|tXGjH*D;Z+PfyYli|-8vzWd%$qk+7Bfyo=WsoA z4YJ_SAa8>lflpcQ6NBxhW~o#s#3y$0#naY20okhCoBW5CZVW^3EUZ0`r_j7fQx$7m^>q;yU!Q@=3)61JjtUy zI)UQq@I5sPG`t4*{sGn=32a}$ktj>bU#AO)fVsj$zVh0HR$EPZSWgMaWjT`AahFJd zW2-DFx#}r6xBq-vrVltb%Wa^%)(cHDXHx)i08@rj`0UP6^}BRWTKp4%D9vtj!ieTa zD!hTksibpofJ)&|QUy)|xu_TM)zuZm4+v{(XbtAK*J%#yRrbr`zz3CMHC4*(s|Y(h z_RppXwSZT2Yhj*eOifPiQDtSNSALJK_L`$Ja4jfz=I0(b0$7qEXoLWq4&0!A;0JId z=)}aRz`jC;gj0%;>NUD_Ve-xS!B8`xI~EK;!42{<`ZP4a6C`6s4H2}yPUhx-Lqg*sD=>vFm25L8oWLCzwaE){;^@1=m#Wkx*?JH-|zXsv9bT!FZ_3URuTU> z$fFAw`vilxtNb(nzmFTuj_v$A$Ul;e2P`F9q6qj%zyd^Q3iTjhT-s0wa`}&5TlIfd zh|sDEG@jrcB;@jEA+3af#D713*GG$>1=fc{gZl57v|vVx#*i=|iJ$&m8*L#Lj9Pyw z7aG3S{U7(STRN8h`@%6~|MR+>RsO##+W2pRXKytBm5a)Eh8&uICnkvxhhg|$d08K@ zWJyUiF}1XRCj9U95xBqC|B^qK1l&22wf^@h-+h*PTVR*Z;1RU6O{;)U4Yp|5X8=b1 zODk?bjE_e`@nF^8MPZjD8~>p!?4D7K|Ah{F;$X|*lk~m)&vjUOrvJM>g@XUQE@uVy z;$QlMKb{4GcWC+i#Xc^~O^3DN@b9c~z%C|CTPXR55<#J3|2YE7T+#m+LGTA~+WsAZ zd?pb#Z++Oj+2a5G7PunAL;7!A+7AvPIw9e6YAQJl>(=OMMSp?s%gzYiJGRd^!6yYb zYMPoRJL3f~V5X%dOKIK8qf}w{QIlj46)~Bs`vAh((jY*8e;nlt43X|Xc`z=3Fb>Wz z(2BZ1T&%+5%#uyF4x2Cx2?S-OrKCR1N+Ga90m<>-%k78)gkdWYIj87jCD82vN&!>p@Nk*1zy(%Qcl1OSK>>3{fiykb-)xQMp=*@sM}S)K zu(Fub^^Qz1UoJpzWxF0Oxc%v4ItKoJBhbtOB%fI}Jp-@W5&}rpuLDMdWPVufjyl8mKiXd7Ux>7~BAC=Gi+7esr8lr@Uw{a7uOgk; z$3T-yAjnC9-@XHAS``4n11mpVUteEp_CF=AkMY~T61O+F+tsNKY6?LI9V#sI#0P^6c#e*>&I zGqbHa-1F#{z@oq#SlGUJ7AOo--9V8A64-wC&20h-EN>3xhwV?~Ow`)|YF9Vlmbycr zYxM|dkO^bzAcX^mJ<6UR?{aG(*cOCNvgH+I0+mz=>-QPV+j;-UqILyk8l3C?tbs-c zV{=)KGZRO22irk`WYq_|>@Qy6qEs7uWFNe@=V~M0B|ho+S{}g_Hy$*g!$Jcf8S^vv z{fi?J6rlb15iw(1I*0oY!K&k6Q1gJ&)?=ww6`(=I&}`AA+`RfOj38lao_Q$g2Ui@8 zifx2%W%x|GAs#Cm7e9=kzTpjUkQwo&DC_F(jXZ*d*DYp$6j&wym99hoyL45P2Y$fP z#)A$}ur&~78G~@NB~iiP_B@6@4o+9fFP@mi4QQu-GD*y$t%QmTENmhTc3-Q{o#8W5 zSkQXv2Pm+-dbHdL1QiNoZFAEET4TfSyz|8>8K#(sh)@8*7%_kjlhViq?KN#*fsO}u zU?5PsAHxEXO_(GkBrX8kBC z-&-7zyZI8BMk*>QFmEX=1X%aW| zuaNsbj|Ah8q%1lx+3AY#fE<1oHJcZ#Gw~UNx*%q@iyF-4AE7*&Qltm}C;yES5I(ui z?we9Bo&fUPuIlGsE9KG%lP8iNf&niV+!UYI!PIEPUyCeJ31*I7k%*bsU$)K6e^v># zHpDGq@B{HRW7wpX5sAk+AhP_;C=GNVPKbnqgOqb=zg7$CsZtBD{(;)a$VEb)Bm-j_ z@Rs0?pM+Z4YUS!MHXoy*mahDd5R@!50gV1}32a(Gq#?XI2b%FeI!bn-@&6EkxG**! z|AQ206<_*V(anrwXY(@a+78uVtGouX8+?;z<9)S!=I_F(XhyXHy+`1GfMCD@3PJFd zV6Y6kY{Xw>0Zcyz3nmD`cU1aNR)K6*HqBf6zi7J;qj)fB;iw7tIj1G07f|T1US;LWV<_Wrntcx@T#N zS3-L>v^8Z~Z!LEVTyR!?p(nITn+g@}>(N$H`0`E*eXMR#FTSyywzDG~Z(yAlt$Mv~ zY^(&m93i}x3HAlWB^`@$2&}S_BE`8y)@(|uT-BQP`X^hLMmq|U%*n9rX9mt4@ogL} zuB!N{1tT9cYfkVJr3!-BYNfnVv`uh};Ne-oR=%_J3265v`BNEdqK2!|KTWAf zS5xvqB(NyX;$@C$PWHOP7+$t+?9#1?!nf!t@1yMDsfdrD;6mx%6t4T*KDQH(tD9G$ zZ+3jEVsZnGd4w&K_jtUsN~r!6Zc>+dMD{qPbkvU0?%WL~&enWcw3#LlWFuV-;z)>CPx)!Dnhy7}t% zyJvT$rU(i`q4|}9kdY;VX|<-t0_0DjSUY{c*htm2 z@3hB^`0r}{rLVP<3utMD=8frgl{W_`#Yrr!#|OU7NZ32)-)_B7*A#adUb1r%D53p2 zrPYlQ!djdSs$=xFpg_{SWG<{)*O{yH^_d^)xB4B`=OYd8<05DP|C{YtU@B;`X|G}$ zMSoLkYUjeV7Fu?Vxu!nUu0F8Qm_KixyyM~Z$^G5FsJ??@5n&#y$+s>iU2}JQlczpM z%mx=s|(gWGgT`0@u-zPUS**--%;NA2lr`&CZCrZia3Y=`EDf4)IJ=KJU z6R>D=JK#m7G2P&U#ny znI8Q9yQ2i~&jepeR}tSf2b9u6cebTn#|uBRN0fUl3NH6-yLqBxgTe1hdnP_R0rY&& z?T|GQ%j|{o#shktLUPiY$6U@e1#D?nll}NM2EWXnzxmiy8kH?ZSIa)y)chv0yZ=gK z>crnY;=|F*2TEW0d!LuXP`&%;%Aqh^lne@#mn);szT24muq_tOj7zpYb+)^F|y)aJpV1_^nQ13 zmx_WUg7(SN?>4KM2^k(n^H?037j^{W4I$DLk41$Zm%TZ~q;|4ld{~XWIo=+j?Obh2 zb=EWZ5rgW%;kzYH?&U%*TL1hA%kZIIrKN>qeW_~Ieo6 zdE-G^&WG@jfAQp18NyKbncMwg>$zl^M)EIxg_4XzfuYT>BSq?rjE^n%Jw(qs+Ahc) z;C6&Kk94ONH>GxF*KL=*C4|!r#OkVl$2uq6-ofAA{L;VNry^R(K2Wq8>TH3Vid*&3 zT|0fBMl#MD7e0Ei1}GKOfAevHOr8mnmXeR8&lL%bHlsY_&=s?@a#n2)CG${uXI3uR zhp+&UZS(|#6{mR+(ysl?W~JrghL{wEgEUt%@yV+Qg1z{15v6^8KF`e!>Z3 zJ)|4yPI1HaBA=;Bl)9$J6E^5A%+K>)jAZmmqm@o^{xr{LI?8*`_>NfgNNW%NjxZH_ zm!+WHhxFC%)Qv);bnDMEe&uq+da3u#PNV*xjvLgIY_45VqPX+Bkwynr24T& z4v*aKU#$#W7WpLiU?IFC78WJ)#AP%xSc&MBF0j(3wX{#XC+qXx(r8*c_Da|`>s#N^ zII>aS8IruC&3JDx^SPdqZ14Gt`!vdvMl=+Bo14dXSg~XCIw^T*>Y^tpXy&kO?us@h zp`X|*;bySNAy^QsiXTi$(aR*w+4|CgIYLbv;e0dnyr=R(8!C4! z!nR550*Bv;`Ijq@koPK4?w^aJTVmgqb*ubZx(PFo?P=}h@YOwiVBPG=H#gnvt05IC z$8gKTnq+$YQhxav^0rG>t1XuFHlGLEInkZNxXh1O2RpQ_H%|-oq7YDuc5mP9vI`BJ zH2rBEcqgvh=Iw1p23T5!EhcQ2G4TocoLGRx81JGk{n10yYqqi9p?C8U1@yb`PbDhVRdU1HA?JMUdIZ_j}oflXV z)YUL@C)d?56m;Ub^XSe&3K}K2(VmSO+%+JbJ2c*#e%%Bu#MuYd0{4K=J6v5#GTDY&hHj+EaZ{H6yVQ9%6NiS_)* zo7$8J5n?DykB0_?1lbO>G{N$HrrS`c!RfO!l(==V=uYw?`woG z#IDl}J~nK0wj*Ximf+LuxHNWjk6o0$3^{)IRkFTpcdkF&$=GP^IsakC{dJe^{HjW` z_QUDqKFSjFNg3~hVmG?fHXNz+7B7%)2tA(l&;?w<_79?_=nSP-B~IVWE^-VWB6llB zITlq?{TmG(r%5DvvfX!A?vpQw@aabblv+k4Y!qpOE|~D`Xh~#3Cb!FSgOBe=P986P zA{#D(zLw<8L9=X1xOTez5edhJIX0nhjEBV2QiIurR#EW^Vj0rxssz=sIwYTzf-+A+ z(z*d+ZJJ*0BJ93vQtTtUr}s+H;OFv)w$f*8fr{aK6AVgx+)ogk8xc6-;1(zG<*aez znGOjdPS}yx3bo=`LWpctXKhbYoZ5I~xmL+(?4xOP2N5R^N+&qG9d!7})sk{sgRtM- zlW9WaLvNXW34O=yz1w*5lATJ%ptdx_0j^kVUr{-{Ve*q>3DFWO)P0&}qds4~4JUY) zV`TofP(|J7Za>FJ)mb{vkhWB%6S{K2i+s-)BTRK#@+d-)C>GBdT&=ZHKT$%RvFhsI z@X=fzd|9`>%3eb!^dV?$y{LY7*il})ZTnpzbG~`~E3HTwoWqVbMM7}Q>mBmLT2}n` zS*bWNEdnFg1CbZpqwkxV#_d1OXFs9M8&0C$#c&8i@w6G=aaM?+LcPq9+ykn>1S zQ|xK~`y$rp)Ryj2YLdM(gGS1R+8-a}1nWo4zs6OWWyT(4EY1#g@trpq4x={P?Pl2X z>)h6D8YB2I74vx@lHI>=roht5cXNub5*H;JLm(W=gbFm^RrWW)TiOiu5b+MtKVWH* zPgP6=zB95O7~|iLXX3zlm$4r)RTev+*obs~UpM9TZLNuAWbJ~~L|l({OEO9C@cpY~ z+qMJ$5}@7m*Ug_r-Dj_@vGM;|Wq8!m^HV2r_7FQ!Rfr)G-C1(fwn2h&h^l5T zAc(ydu{Eo;32Do!vB`xr%=fc^pfMM_a>0Gr_+7m8;n;2H+CZL$otkXpZ5oeUql|2g z7siQhxLO!P9yGlBo-|gb+Gk=Gnpv^(lK@x&Y{MZo0qP@);c<^$H2Em=LWaDj*|4oQ zGEZJJASn+T_Eon)ymVwfjT%4lvlcf?V_w9R!$fWmmDGx6_(F^G?#uQ2Z5mgfPowMX zu^0h5!!OD|&eIMpUg1PncRzS3-#cQzwylxbbdEz8Pd3Y!r{G~|H;qb_ul!Vy;O*_9 zLx5{^K9i^)Eyr89=Ux4hDaA=tmMe!g_`r4$v;lfLjy&;Ytx(lt1LZ_y#Z`!l4(FXF zNuY6|4Vp#mr;B8%qY|o+og#Z}M7J`sZH_Owv0Q^8*SNtUwYTCQH0FZGcG?I>@DEr^ z4>vIov`A|f7H}Z;D!+f;bZ?dmEc1pB+t?4Z_8+m|n|Zylb*ADYCT!5w!I-jp+#uY8 zHwY)%KrUkL+QvU`*=HuodoS=3oA zGqqZDCJ$*eKYIDmk4o_&XaY@@z~&Gu+4RJrenI$m^W<5%TsE1GVuC`YGi0LLKL!sj zwjQAk@lH;6o%h$GW#g?&=dy^yntb00wtvg`T*`Sbs>A5wHcjsi3rz`D%V^o}! z$&V(BIp__m>JLr|%=-BE!bO~LM$ftY2v8(Z>y%oNlEsmvcXk@sB8K~24PqTyK=twU zw)RCh$d%ysfyqJ+BC-lg{O(VipJGJ;s^bRz*cT}WSS2~ptoSJEEiZ5-uMqz@@VYIk z$wga{;Pq0^Q-vlHK=yESt`**V%=t9$e!X9L)v%ZS_+}n=?UlUwa{17YGV9J^Jy)d< zN={XJf(AO}0sDibd!Cm~I?)VsrB!~L)L0JlQjQ;ub2CfhXZY{5!^iFZ^hRv#wbbhG ztyQ(SYQDZfOE?_s zW--ulLc@P{XaD@viu1}C!uq&w@i#BwFWo2|RP%t@*RJy~!zaqn>QZ%WGYOwN%Vq`6 zyDEKbNEN1a(y}>RaXrS(?H$}@AqSQyRXjU!fw;P4tKu8?^^2Iwj+<`PEPR?5iF|xP zUF5~_Ze=&y=ZK)%?mbNrak9L80JgYhF7vS{!p~E};R*bHjzep+F$LyF9tLs&9A(-} zmuVS$E*!*n;g?M7d?9eOU)E%In8{<(rc}O@WgWuLziWlgAvq=RTiG>tmIZK&PSV)}nDt>oY;%0!=Vu25wpWExVU4ZHhdpmd-GT>zy%j^yw~!Eqi|y>0?_O8=IsX zJQthHSyNa?icTS?xIkRzdnEj@sMqC* zk4un$g?s_7qfXNL>Y7KA@3EPN2evrR;Vy@H8Ta--N_`8mkddsm`1sgm&iD#NaMJ6e zdCAnWUBZnBVRQQ*-%?!(|0Ho)HgXzP>v`QM9{9D^t65QuSCT`@KRBK}5HTs(_!aj$ z1$j<-uuEH-JQ3eKma3as7&O1b$P)L#@1WGYMqK)W{4Cyr4)HN# zgQ}pm9yM}SDZyCdWEjnP3Wl%xXUj`4t}I5@P5cuQ8N1K8xht$UTnd%9c$z8SOg^76 zMs;aG8{H7`1MZsSs%x$n^!Wl+-Hrf@}VL&2QHZt~=hTRhHUR-9Zx{#&(2cJ3Jii0-tEmJX+jQ(lT9>rPqMT2v)=p zHOa3(N>Yt^31SEB>Ehg-hn0!DJ{Maok0A027dgpS*!J%-ervZU8(l)+_v+MIahqGH zBCO^c=-f36J$LU<-#!#4eRi%6#JB{Q$2YYlfgw|$bW9VyAK5je5z5R>2X*Wb{;2Qb z!s^(0Yh+VahFw>bk0no_%GqEu6J|sTxg!SwlDC;*Z1YbpWBW+u+>wgOPhm8yml^eG)bEq- z6oqSnH~}sqx-IwbP6m&mO3X34K$_lL(RM)&-p}mqzQbq`j&W9baj(e12gOxiMY|=3 zJBO(EHqJ~0HaZ1;pAC+hmVIMSBE#OoP4RX5m7F`$YUf)#d9~%A`U3hy$h>LqkH15j zcN&+fOS<*r@7}HOoK8O{e?o^}^ZTQp>e#3IG_rEWjyZp3V3yK@%w4%V1IxK{UxIz& zPASCfT)#TyPqTQclMtnUDV2kJ!Cbv7Q;SwDG74TDPmyZrT0L;oBc zV(YB{(H!?SiEfAnxxHBHyki47L6tYrxk+s^17YKxF-K41^MJ9Ck2TIw1Z&^XlA90m zmHdL?;9^6+iHo*|c(#>te{t<|(qv?$i`67y$k|LIS_zK%7AS);ufqJ(FzwK@xy$Eu z+l%cXxIej1`fTz)#zM@CQS}WJ#V6is;jN3IEDdHqY@b4lZ!Du&o)ngMP8 zb=u(&SMABrRpC%PiTik3s{<8|qi&RM?S9GQ$NlrJb7p*WrS8W&CSV-&CJFq0%1SE#cTblvN#QJ;cud{|DRY z75S^n!Rb4m}vF!1_*^meC}+nS)QUTrVd9>iN+*nR|L5l7192*%z)>H_4i)KrQ_;`%F!J3G#-S zk(BV$T#4L4-HdphGFkBr-O|%O)cp;Yh~}adGo+W2<{`?fd)0i+yZaPojcBBZjj!N0 zEoK;M{v^AU_;A-uL!Xci;6OYcjn0n;Fr8V&-!jR)pVIjDij5CNkJfiC@Pz|hUzKs; zEBO+n8lTI7Np#P-$VQ$-O{(_Vn?lz=Zh7pIweIUJ4vf@g3f6@d-gy}1%h5VZY{WJn zRVfe4Jo#**+9D(!9$w(<1;LL?$CK|a2$o&!wW(|)NsJq8^nA)}w5p{-GyN2e_xj0X z8QHUflmjK(pYEi}5=7PqSr%Q5xAB1jRpLaPaB?LrJ?#l{DP^>xFl|A^N(X0c`}K-l z!uu`tlgB=J}(_@rho_VyczWXt=c0|?{pG%%e-(dFgmr^J}bnE1kdoN=$f4GS<*o#fF zBZD+<9m?xB2p;fnz~5V@hp-OtFeD1lnSVQVJ(2EkQj_|u+&_}^ZOwQHFRH` zdqtfbiuS8P+GhPZS3|#&h?Y#|4z7+|pOyC9!-up&Jy$Xkbj&ty8oTKmBE*v*RYenO zLV8O}`xF~DrkiQ%v2$MQMX_5*)x&e zBnaKNw{U7>G8XtxRZJTJrh7a81uim`jlej2(M&jzuc0Q1@O|m3)eWdCK|Tpm_L!$@q{6(QRA2yKV^x*9_<=0U8*!Jz_gSMys;|7 zReaI#&}8G^n?|J~`^}s9uC+Bl(T7Y9MFRrC6OPMf`ZNvyCUVY`blWm0d&-*2o&Kk* z`503+ZiuMfuv5UHXHstYx+-RP$Y?f1wQmI}TngAfgRvB3E3${1aQf)}(b z(ZsXLl~a+I76p%Qm@^2*I_BVGJZRmkNc&hdntlvsUSiwnkyMkOYUn5|pdVVJ(xi(t zeV(Ag6!m)!LceS4>onZlIDyER9kbP=eU>JDR~2(ADfBl#k|L+VIZezu^oUELTiOTu zol|Zjr}-=U3znCC6BJvu#wz@l0g?(uyYqb|iw@$+Pa-A-ekwV#nJ9Yo<&?s$zOeI6Ftn zd8I)rIRP5$rwMx1@R6BqvPgOqJ-eE#Dz!u7b}m=@pG~Tp!+K6$VN%hxvtyrrS=PIS z9x;AxWFY2i!_kTsq|dne3oE?r)zm?g`tHF*dHcL4Ue)M!1Wc{B4FA_ifZvUCOJ`lIYMS z)It6sPT!gtsK;vy+W9V>Z3zCteR=J<+kNV>jj*|w&?RB+;_DL6CQxlh=r<1ONfUB2 zwyMOgwA}ssihDIG$v@Hp#ft7Fzdc*8X;McRb`>GiEbYwBSg*@prpZtQBq5%Y8Xj@Y zCF(9Blwu0{odLwK5eVofaho8+asc$3J&XWI8HRTN_#dSy%WQ3hHiqlx799A?;`8sO zZcm)s=bbPn?{G9;^m1(Z--Xcx^Pa}_c|X;sazm7GjcvVU8o%=>&3zuNlJS=F1s=^0 zqj{;u(+@nM?VGJJ6h?y)p0%Zhr~hvHD5hP{So-Ni#&0X(=m2V&`8EXk>!FEv;B zd@;z&c4JeiwQkwS1Huzx<|*H|+^=z{2$a(*hS9~nr-;%@T_z*Mi)r}sQ{J`B?TI<{ z?PFBEz{iHopn_1{ehrk%{g0{B{wx7V)Mt#1i#rB+Vg=e9n`Lw=e1S8zS59Bnj6O`s zUoZ`7ay87qD?{vmJz%+GYpL_-PmT?e#GlWan=TT;Z6V8PInA=$)Z^=7EPkgJCjP{R z5f=KPtB<7ZPi>#%sBytH;2E2+)m|JWFDSZlEj1)=Yql9A<;h`ifL7>=*+o{vXxVf> zZze+fW`>j3U)3lSU}CI4>Uw!tWagKN4*6ZFzvJ4X7A^VS&#a*2+t4!xx}+L{*S&*Q z0mf6SF%1zuV#+$Er7sVj&P!9C9?0!0JZc?ZKquP0t9|sIWo%ZykRbKs8Y<^Xx-pCM zG;FS+h~TE4aOQep&BOX5=BJn8#5)JEvs7ptWAe2D5eyg9ru9%yY|F=Dp;X!>Vp6K! z4^q$+*XAHToihn7y$f26PnvAmW<26RBy!;+drJSg zr$W`_0<({;$Rblxb^8L%4#>l4h`V&j^HSMI5+XkwGuE+_flhC)!U?Uy~Y2@GWQV-A->j`ojsgT)pA8JtZ>jR!96Kz+AtOr3&+$ z-JrJ^Y3p9zj`N+H)|#A|M50VWn5p*QAvY|G zFCT5#B|eN8x6ao-Hw&Gz(rLM=>p77JO_X(zzezo9?|&z*7gn#9Wot0#xIqTR29c*4 zJSl$^73%dLy1ub020kU4WKpz8Wc;BEphoA$v81}>Q$MYtsI*Ca%Atv2fGg4fDIM0l zWDbswBKeyzL|fYhV-|o311vnHFT}7yi}v1iEqryO45Nk506OpRwayjCqhIhbh-F-Q z4?y?aEA>PnnMw*hwdYxGJ-ma5E)c^;Nmp9eWv4q&_idae+h+W-sT!{O!9UCZVX^db zchSE3ihByx41hwGADygz|5%B5{QPN1PW+`|ju%&UQ+EuVMGEtx<U{?n3)E!U^894kbg^ zIzJtwIn?BAZ+uShGn5y>vzb{Eaodq||IjzkAg|^bP}Elz&TGft4S0zi6gOdpv8;)q zcuGCYCuqzxE`Lwj_h{)~_;semVJL9nL`i9&95H6`QJ@B=?w2qEOck3?XcS4f`6&ob z^7JsO)-vRv@KB4>MZ|?s;9;D1?zv4xN$rq~KcrmRsK1@y`~W+v(|XsU@5)Z6XC?cq zdBwuQi21^=S;I6n+X^0n$jo_!geOUcKDcCEk#PNL)V$p}34L0dHD#p}hs)^DD^WdE ztWZV0p~i`(sK*mjE4e!TgS5G;Z;K8$kszf|gDLMa1%+; z7tQ-T*@XY6Vc|8E7;*feWf((;9>uC;`56;+jWhG%MV{x$vy3aW_6P|C>N3a3rg&>#O^PW9j#Om)Y@<3L zOuk>-4bN?OsWND@>4s@TdX?^ZU`DFt`S=?XDSe`{_(9dyoj{EiTd$p_Yvg)9$;h`n zr&9g@Q`&h)MYSz?xB(?dkSGW=Nf1z?L23J6G6kt{8# z0TCoMO3pboN)B=fO46yreRtlxHEY(InRotS(dq27t9I?$`<&lbXXmLD(%x@6q=rVF z^+@Zx@a>AkoJ2|WhR`}Zh&uLCvAuMqtw*3d?q%xangT_$B?Y60$EULR$Y-4&H7B_R zH;Z;T3CV`vegvEhYM)MCPPb00Hh+C$==ENU-L2Wmz2sSGx6zTa?_Q=n*#F%;-%&Ap zYkS}Ouy(|z;6<9Zw6{4GL6l=&;t&vb+Jx_XO<`kK(9v_)H`*_3+LC0rS~{T0J?IVb z9T?;($FEXQ;8 zbwkGojfi-C&ScvsA7%OW)p7or?1bk!&#^Ye{vXXSy@v5N!FG~c_H^|h>YUtLi)>xO z{AF`$Ki%(e-P(-woVHvvXO8&nmEpwSWXE-h>qt>a{_#i0qxsZsU%V5EwzpMabYd}e zUJh(A@XQRm`jq>NVn)SPtnL<_#+N(MvbRk#slr`roW?R4fN#{ko^!+&HVrzm(N*`AGzNb~C z*cW!v;0(6OV94hys+MLb2r+OFiM`2fPR!;#`dhm7qRAq+*Xeo8*I_*y`_GMYZ+4l` zAtwfJt@=AkmDyHhD2nB5GstKJbIBS~3Y$7|Vzc6^zF+H8V@vX)6vzHvFqN)YyVf9FqI%gWT575m563F}-j4-oCENU-_IweCLq$}IEvx-RRdQ*8Qo4$G#j z(J-FxobxOxUaHT{jsH0)dn6^e-s{Aa%m&0v*?JqI+GQ-RTIoN9C)9}7#(SKeqyb*P{X=*OXI3!*z?++0} z+wfl$AMRFhu9}Nq622x`6b6r09cDJ{tL}HMySOL%kSaga&^xrt)ZkgbEyL-P``)bp z@=LRMFdAP|o_A7k*BZrla&gx7iSp4Znv|FqCv6<{$9`4X58q@B_}cBmc6XGv zShwN+V^703fFHZXV3pfHOQ(FL zQli^fBHi-4-Do=6aAc&eOTEIQf0VFO>z?Q;Sn^DM;f`80qHA2;;z~&S^AO#lIq_9E ziGx6L(`?!L8m3NLs912a__8P8@i;c4_0!iH?|U1Lv*s<0b&BFBS%WsV%@0hHEjoC=uA-T>J2thI`+G|Iy=%$vAu=Z~6Flek@!K&NjNo{w)l*!h zOm+Z6%^;d;>+s-OM{Js8&3mTd#i)$pHEBjBCR_#|hxo#c#v}DSdr1=HDfv}J{qpqN z@qO70I;Li+5orZvu5NX*8&aGX%C;r$sxl=}-Ima)q5aKN*f3(mI(e@r0yc&GL$-X` zURgv7Y>od^n$mPC@~GwVd2D%7tj;m#$E$mbWzFGrJ}!240`Nq=LTqd-kFs)!SjL*r z;0_c0h(c^nn3naf8Of|13$KSB?pKMwluT`h`o`RNbChfjUn_>hqMcISX!+-;)lh$^ z(OY-_jO~$VC77f47ket?Aa81{#RTEv7 zHzv6yNIE?-h+7JV(91XchRmMhdvvLXT$M8WkednxLFU$)8~PaM151ncmeOfMnWC!K zE9MU#rqbGTNR;GYZ@nYYjBxaqd3%`Vvq$Uha z#~wdgch@uD;wH-QN6`iKIUar>qjPb~>%7 za0@$Vv?TvziSPS25@qLACl&a`QzB98uWs8iaCFRFH6+VdT=x21c;~i?Zy{DUB#NJ1 zmfcUaRLiO`oHr*I|ShF@$mo$|_$|)PO0DtF5)jhEHnih#){Mm(( z?X#Fz3;$0QeBrqP_MdCd&hw2A6{uu#;WMhy+{--~4K(gw=y5Y8bSKeZ3mcyd{|Jk- z3)6}b=(Mn!uR}3J3|;G>ga37UH+^lzP#F)--#>oLUA@O7kr7Focv78}@NtOmit&Nt z)g;a_xfbF`wDl%$NFcu+UEdo#@5V;S1i-0$)G zXgj|f^SoK=FP6ynNcxz*Gl~6bSB5UT#K+RH>4fA0x8xTUVSG_WN1Cs=kD6TXY>nEQ z=Q~vp)$z{YqCio>mU+$qNe!B{Q&L4W&u}ujnDj_4DgrHkjn~>Sh7LA-tyu%knMHN1 z_PpE_DyGDzC!!-6Ri*XF73{G>l8WOIdz=jOS(T1|`a3Z=>QT>4sH)nQFY4WtDVm9; zGw$lDvv1TS>De8&9KdGLKAw^PRh;9*K3&aS{Q05|i>`Uj0@1C$ICB zgwx$f|8Qo+Z3NThTqb;cM#DFQ?wT53kzG4}|Cj*j zGukLei_A}M*OLp$-AN_#bFj87wR-9s5+j_1e3!CU&gS>X;#uc9U*XW|U(mCft0D{? zPW`W3%Fx?q`TCQOxjGlxju~WOYer%)zxJiT8bW{2D$}S|JCJB4m8!@=!FTkT#uDz7AD=ImATdjBeo>P0ZNR) zV1lTv4_o+=+E_dx-quAct>FIpAp9wea^U&_x~|aLh+aJqg6;2Y)@Q0kSh7d}H&ZR* z*i>Pa_Y-kF4UG$z0#`c>L1vZ9o#o(?=Dn6c;EJwL@EWy^CMa!XdbDyZ?6NuSQ(b*a z*VvKt_v>D*@U|toOMYd_`Q0b-A{3$pPLRICxbtH*8U)$IH!rSVQd2t&IE{Qv7ouj7 z4%gX0eSfjAZUtm^AK{}krNWF4r84qjJHYWknP zKwe5s|4tRyPO}fyt~8Dd%NBr&r?&| zk2*g6S9^Q4mI@y85c;_Kx35i0g3CSdP+i17>HhOenC2)V%R~;1p1kkf+f{ggDLplPB;TZlml?c`}cn&B?0{cPb#RFx?ws4NJqw3*;t%+MZ~I-839r)^yT3I3}7m93=w{^u&@-`t_dwexzAtY zJnzftx7~8Xa{Znx2hblViie)UCIAuE|Fr<0&D{1)%xn*SfvL7;pr^CtrtBH-7!#LA(t%gR<~IWgp~m$uGP>;kL+gXl&ynK zN$YLgF>vaOP>9t?Is?Ui+(5TnI4k>77l;TIKU<|bvQ2Y$Nc?}ob>mY8x-1&dri|yDl1#%=j4PfQ)6wR z#0ulY!&x-fx)4Avm=xXTc*HF6SCPUJjgMEWO_2pFI={ujSd$rl5TL4wFQdD0m35*M48PoClDzyi?;E3w7e?{PR~V9JaK{y zZmiu$uL4|@7f`DEyFWZdrT#7yP<(R6E=nE9B`ANe6B!CP%0Lexx{U&;>#ANkuppt|F&jQv-CuC$;CcM{a5$IIgOS$y~_0LFUEVt>)K=*II z&DF8l%mMMjz9TgfhRhU<0t8dyHvVw-=I++A(l{+A(q;w24Y&lw{PT@mi+VVd8w*!q zCeiQJNl{=KDR=oXcSEY!5o4&x&oJkAShaXxH)bqo9oZq_mHY%Nmk_ zi$y<kiZlQa%C8E$0cnJA$|c~Q1uH*Nr3KC$+eDGH-X}TTdNb%Fe9ufxlA5h zM@A;h$oF8xRhs&BhvExV8bz#>gwJ@cSR&CPS^04p{=w{(HGnd)N=Zp6zu$j;ABz4G zf!ERi-5rK%00ZlfmfU&nHP^|j&#blvcSTv?lZ~M1zA{?rk>>^BE)1mPEP1)PmLvGN z%!r0_K08=In=`x+zafU1>%913YuK^xk!F&d-4|xb6DL&m07cXQxGemyQ>RZ`wIGE( z5gb}0h|(hc;C5K}(9jSOhP|r(*EQ!k=q?dtRst`u-PhzW^$Y*FbL|N{Ocr$AXVVBu(Di42 zzQssE$0<~Jz1n=4udx6e6N~cx1-usi@Jw5_Ilw>Zw6?Xe0B5X$;lyR^LGg#CM5)^i z0HZV3(bZ+?>FH?%v{VFi@u?3fUs6%g!h14+LKWCZ(iD-VZ=8QCY`+9qB|J8$jhWKm{N3(Q=nG$8*tgFgnjdFyn&2K-hUMTl9vin?gFJ1|c0UYTa)DkA;5GCBPT-*ooYOfcyoF0O3waO;+?>uLdLWt9OXo@|NGKw0K12GJonZqFA|9@yXVkAo zg2KR!%a_RyUHqO9pOm!FbLbbK32MhYCn9%Os*b`OdI^FMf{r#cG_?Nn>t_vZZ54>r zk}l&)(LVP8RRJSU@|uAG0(0YV#v?^_-rE%qIUNLLNCl(k0b8H|tWAHY@q|=udgr&F zN7w^)o$bnK#S}LuVh<`oo279o7I12Shz~fD;Frq6TcbyRsFaiZ^SN>t?G>T^c zwn-BLHTv>J3w6QGO%mxe7|GVKxJo$hcMhRAL4gx33^!m|)c_&_k!Llj%y<70K&F(v z{(&PyDs@2IT{m@^tPMcUbocJv%ylASuS>N%Obm_4DyDaGbD@tq`rM8X(s~%oY>@0W zx3@RlD<2D`Ln~MV>P-H@3{9Ey*b$W1a_K2{f(Zv(F!SeF9MKTlwSMiEy z7^<)g@Z#4(1JDd1K46xIr$RZLYoVe5aVM@D8bF2e&O*pSImo&&Tn1A7>`zh<3gQH}Y}u2sFbFj6j#SsDxgbZ3dn#Q3zhfPmWl6j&LM zp)f0>^O9rM64qavV-V~fQdSe93q4Fym^MIiDw>x$g)J>DWmj{7>ts40;Kq{*p|iC{0zBMY&TCt$YwHq;_~nQWR`T6N%} zSjg_wS~wyvf7n^b(-%XCgE1H!1dS{Igkr(+`xpX{Iyn9xYxMu~qW<6d!v1-6it?22 SVxlD|I5gF+s1{zb4*U;N>cpo2 diff --git a/src/asyncflow/__init__.py b/src/asyncflow/__init__.py index 0f69098..5bdbdea 100644 --- a/src/asyncflow/__init__.py +++ b/src/asyncflow/__init__.py @@ -1 +1,7 @@ -"""Main application package for the project backend.""" +"""Public facade for high-level API.""" +from __future__ import annotations + +from asyncflow.builder.asyncflow_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner + +__all__ = ["AsyncFlow", "SimulationRunner"] diff --git a/src/asyncflow/pybuilder/input_builder.py b/src/asyncflow/builder/asyncflow_builder.py similarity index 87% rename from src/asyncflow/pybuilder/input_builder.py rename to src/asyncflow/builder/asyncflow_builder.py index 7d3c26f..f6d2cea 100644 --- a/src/asyncflow/pybuilder/input_builder.py +++ b/src/asyncflow/builder/asyncflow_builder.py @@ -4,17 +4,17 @@ from typing import Self -from asyncflow.schemas.full_simulation_input import SimulationPayload -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.payload import SimulationPayload +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.graph import TopologyGraph +from asyncflow.schemas.topology.nodes import ( Client, - Edge, LoadBalancer, Server, - TopologyGraph, TopologyNodes, ) +from asyncflow.schemas.workload.rqs_generator import RqsGenerator class AsyncFlow: @@ -22,17 +22,17 @@ class AsyncFlow: def __init__(self) -> None: """Instance attributes necessary to define the simulation payload""" - self._generator: RqsGeneratorInput | None = None + self._generator: RqsGenerator | None = None self._client: Client | None = None self._servers: list[Server] | None = None self._edges: list[Edge] | None = None self._sim_settings: SimulationSettings | None = None self._load_balancer: LoadBalancer | None = None - def add_generator(self, rqs_generator: RqsGeneratorInput) -> Self: + def add_generator(self, rqs_generator: RqsGenerator) -> Self: """Method to instantiate the generator""" - if not isinstance(rqs_generator, RqsGeneratorInput): - msg = "You must add a RqsGeneratorInput instance" + if not isinstance(rqs_generator, RqsGenerator): + msg = "You must add a RqsGenerator instance" raise TypeError(msg) self._generator = rqs_generator return self diff --git a/src/asyncflow/components/__init__.py b/src/asyncflow/components/__init__.py new file mode 100644 index 0000000..774a77f --- /dev/null +++ b/src/asyncflow/components/__init__.py @@ -0,0 +1,15 @@ +"""Public components: re-exports Pydantic leaf schemas (topology).""" +from __future__ import annotations + +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.endpoint import Endpoint +from asyncflow.schemas.topology.nodes import ( + Client, + LoadBalancer, + Server, + ServerResources, +) + +__all__ = ["Client", "Edge", "Endpoint", "LoadBalancer", "Server", "ServerResources"] + + diff --git a/src/asyncflow/config/__init__.py b/src/asyncflow/config/__init__.py deleted file mode 100644 index 255bf0d..0000000 --- a/src/asyncflow/config/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Configuration modules and settings.""" diff --git a/src/asyncflow/enums/__init__.py b/src/asyncflow/enums/__init__.py new file mode 100644 index 0000000..a07a18f --- /dev/null +++ b/src/asyncflow/enums/__init__.py @@ -0,0 +1,23 @@ +"""Public enums used in scenario definitions.""" + +from asyncflow.config.constants import ( + Distribution, + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + EventMetricName, + LbAlgorithmsName, + SampledMetricName, + StepOperation, +) + +__all__ = [ + "Distribution", + "EndpointStepCPU", + "EndpointStepIO", + "EndpointStepRAM", + "EventMetricName", + "LbAlgorithmsName", + "SampledMetricName", + "StepOperation", +] diff --git a/src/asyncflow/metrics/analyzer.py b/src/asyncflow/metrics/analyzer.py index 4db2ee1..35b43bb 100644 --- a/src/asyncflow/metrics/analyzer.py +++ b/src/asyncflow/metrics/analyzer.py @@ -26,7 +26,7 @@ from asyncflow.runtime.actors.client import ClientRuntime from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.actors.server import ServerRuntime - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings class ResultsAnalyzer: diff --git a/src/asyncflow/metrics/collector.py b/src/asyncflow/metrics/collector.py index 97421b7..38c2f0d 100644 --- a/src/asyncflow/metrics/collector.py +++ b/src/asyncflow/metrics/collector.py @@ -7,7 +7,7 @@ from asyncflow.config.constants import SampledMetricName from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.actors.server import ServerRuntime -from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.settings.simulation import SimulationSettings # The idea for this class is to gather list of runtime objects that # are defined in the central class to build the simulation, in this diff --git a/src/asyncflow/resources/__init__.py b/src/asyncflow/resources/__init__.py deleted file mode 100644 index 69884c1..0000000 --- a/src/asyncflow/resources/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""python package for resource registry""" diff --git a/src/asyncflow/resources/registry.py b/src/asyncflow/resources/registry.py index 6e1e3be..26576ba 100644 --- a/src/asyncflow/resources/registry.py +++ b/src/asyncflow/resources/registry.py @@ -10,7 +10,7 @@ import simpy from asyncflow.resources.server_containers import ServerContainers, build_containers -from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph +from asyncflow.schemas.topology.graph import TopologyGraph class ResourcesRuntime: diff --git a/src/asyncflow/resources/server_containers.py b/src/asyncflow/resources/server_containers.py index ca054c2..1401247 100644 --- a/src/asyncflow/resources/server_containers.py +++ b/src/asyncflow/resources/server_containers.py @@ -12,9 +12,7 @@ import simpy from asyncflow.config.constants import ServerResourceName -from asyncflow.schemas.system_topology.full_system_topology import ( - ServerResources, -) +from asyncflow.schemas.topology.nodes import ServerResources # ============================================================== # DICT FOR THE REGISTRY TO INITIALIZE RESOURCES FOR EACH SERVER diff --git a/src/asyncflow/runtime/__init__.py b/src/asyncflow/runtime/__init__.py deleted file mode 100644 index fdc562a..0000000 --- a/src/asyncflow/runtime/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""module for the runtime folder""" diff --git a/src/asyncflow/runtime/actors/client.py b/src/asyncflow/runtime/actors/client.py index 58ba7e9..6c752f1 100644 --- a/src/asyncflow/runtime/actors/client.py +++ b/src/asyncflow/runtime/actors/client.py @@ -8,7 +8,7 @@ from asyncflow.config.constants import SystemNodes from asyncflow.metrics.client import RqsClock from asyncflow.runtime.actors.edge import EdgeRuntime -from asyncflow.schemas.system_topology.full_system_topology import Client +from asyncflow.schemas.topology.nodes import Client if TYPE_CHECKING: from asyncflow.runtime.rqs_state import RequestState diff --git a/src/asyncflow/runtime/actors/edge.py b/src/asyncflow/runtime/actors/edge.py index c2c5328..ee2131d 100644 --- a/src/asyncflow/runtime/actors/edge.py +++ b/src/asyncflow/runtime/actors/edge.py @@ -16,11 +16,11 @@ from asyncflow.metrics.edge import build_edge_metrics from asyncflow.runtime.rqs_state import RequestState from asyncflow.samplers.common_helpers import general_sampler -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.full_system_topology import Edge +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.edges import Edge if TYPE_CHECKING: - from asyncflow.schemas.random_variables_config import RVConfig + from asyncflow.schemas.common.random_variables import RVConfig diff --git a/src/asyncflow/runtime/actors/load_balancer.py b/src/asyncflow/runtime/actors/load_balancer.py index fac3f66..498fb18 100644 --- a/src/asyncflow/runtime/actors/load_balancer.py +++ b/src/asyncflow/runtime/actors/load_balancer.py @@ -7,11 +7,11 @@ from asyncflow.config.constants import LbAlgorithmsName, SystemNodes from asyncflow.runtime.actors.edge import EdgeRuntime -from asyncflow.runtime.actors.helpers.lb_algorithms import ( +from asyncflow.runtime.actors.routing.lb_algorithms import ( least_connections, round_robin, ) -from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.schemas.topology.nodes import LoadBalancer if TYPE_CHECKING: from asyncflow.runtime.rqs_state import RequestState diff --git a/src/asyncflow/runtime/actors/helpers/lb_algorithms.py b/src/asyncflow/runtime/actors/routing/lb_algorithms.py similarity index 100% rename from src/asyncflow/runtime/actors/helpers/lb_algorithms.py rename to src/asyncflow/runtime/actors/routing/lb_algorithms.py diff --git a/src/asyncflow/runtime/actors/rqs_generator.py b/src/asyncflow/runtime/actors/rqs_generator.py index 6c983df..1b67213 100644 --- a/src/asyncflow/runtime/actors/rqs_generator.py +++ b/src/asyncflow/runtime/actors/rqs_generator.py @@ -21,8 +21,8 @@ import simpy from asyncflow.runtime.actors.edge import EdgeRuntime - from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings + from asyncflow.schemas.workload.rqs_generator import RqsGenerator class RqsGeneratorRuntime: @@ -36,7 +36,7 @@ def __init__( *, env: simpy.Environment, out_edge: EdgeRuntime | None, - rqs_generator_data: RqsGeneratorInput, + rqs_generator_data: RqsGenerator, sim_settings: SimulationSettings, rng: np.random.Generator | None = None, ) -> None: @@ -46,7 +46,7 @@ def __init__( Args: env (simpy.Environment): environment for the simulation out_edge (EdgeRuntime): edge connecting this node with the next one - rqs_generator_data (RqsGeneratorInput): data do define the sampler + rqs_generator_data (RqsGenerator): data do define the sampler sim_settings (SimulationSettings): settings to start the simulation rng (np.random.Generator | None, optional): random variable generator. diff --git a/src/asyncflow/runtime/actors/server.py b/src/asyncflow/runtime/actors/server.py index 7d72de1..0572956 100644 --- a/src/asyncflow/runtime/actors/server.py +++ b/src/asyncflow/runtime/actors/server.py @@ -22,8 +22,8 @@ from asyncflow.resources.server_containers import ServerContainers from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.rqs_state import RequestState -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.full_system_topology import Server +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.nodes import Server class ServerRuntime: diff --git a/src/asyncflow/runtime/simulation_runner.py b/src/asyncflow/runtime/simulation_runner.py index f82fb72..5d112ae 100644 --- a/src/asyncflow/runtime/simulation_runner.py +++ b/src/asyncflow/runtime/simulation_runner.py @@ -16,18 +16,18 @@ from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime from asyncflow.runtime.actors.server import ServerRuntime -from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.payload import SimulationPayload if TYPE_CHECKING: from collections.abc import Iterable - from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput - from asyncflow.schemas.system_topology.full_system_topology import ( + from asyncflow.schemas.topology.edges import Edge + from asyncflow.schemas.topology.nodes import ( Client, - Edge, LoadBalancer, Server, ) + from asyncflow.schemas.workload.rqs_generator import RqsGenerator # --- PROTOCOL DEFINITION --- # This is the contract that all runtime actors must follow. @@ -63,7 +63,7 @@ def __init__( # instantiation of object needed to build nodes for the runtime phase self.servers: list[Server] = simulation_input.topology_graph.nodes.servers self.client: Client = simulation_input.topology_graph.nodes.client - self.rqs_generator: RqsGeneratorInput = simulation_input.rqs_input + self.rqs_generator: RqsGenerator = simulation_input.rqs_input self.lb: LoadBalancer | None = None self.simulation_settings = simulation_input.sim_settings self.edges: list[Edge] = simulation_input.topology_graph.edges diff --git a/src/asyncflow/samplers/common_helpers.py b/src/asyncflow/samplers/common_helpers.py index 123ae4a..4f2f675 100644 --- a/src/asyncflow/samplers/common_helpers.py +++ b/src/asyncflow/samplers/common_helpers.py @@ -4,7 +4,7 @@ import numpy as np from asyncflow.config.constants import Distribution -from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.common.random_variables import RVConfig def uniform_variable_generator(rng: np.random.Generator) -> float: diff --git a/src/asyncflow/samplers/gaussian_poisson.py b/src/asyncflow/samplers/gaussian_poisson.py index 5caa9ed..b96eca5 100644 --- a/src/asyncflow/samplers/gaussian_poisson.py +++ b/src/asyncflow/samplers/gaussian_poisson.py @@ -16,12 +16,12 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.workload.rqs_generator import RqsGenerator def gaussian_poisson_sampling( - input_data: RqsGeneratorInput, + input_data: RqsGenerator, sim_settings: SimulationSettings, *, rng: np.random.Generator, diff --git a/src/asyncflow/samplers/poisson_poisson.py b/src/asyncflow/samplers/poisson_poisson.py index 5e1b4cc..ea7a4fb 100644 --- a/src/asyncflow/samplers/poisson_poisson.py +++ b/src/asyncflow/samplers/poisson_poisson.py @@ -13,12 +13,12 @@ poisson_variable_generator, uniform_variable_generator, ) -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.workload.rqs_generator import RqsGenerator def poisson_poisson_sampling( - input_data: RqsGeneratorInput, + input_data: RqsGenerator, sim_settings: SimulationSettings, *, rng: np.random.Generator, diff --git a/src/asyncflow/schemas/common/__init__.py b/src/asyncflow/schemas/common/__init__.py new file mode 100644 index 0000000..206bfb9 --- /dev/null +++ b/src/asyncflow/schemas/common/__init__.py @@ -0,0 +1 @@ +"""Shared, reusable primitives for schema modules (e.g., RVConfig).""" diff --git a/src/asyncflow/schemas/random_variables_config.py b/src/asyncflow/schemas/common/random_variables.py similarity index 100% rename from src/asyncflow/schemas/random_variables_config.py rename to src/asyncflow/schemas/common/random_variables.py diff --git a/src/asyncflow/schemas/full_simulation_input.py b/src/asyncflow/schemas/full_simulation_input.py deleted file mode 100644 index 504396a..0000000 --- a/src/asyncflow/schemas/full_simulation_input.py +++ /dev/null @@ -1,15 +0,0 @@ -"""Definition of the full input for the simulation""" - -from pydantic import BaseModel - -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph - - -class SimulationPayload(BaseModel): - """Full input structure to perform a simulation""" - - rqs_input: RqsGeneratorInput - topology_graph: TopologyGraph - sim_settings: SimulationSettings diff --git a/src/asyncflow/schemas/payload.py b/src/asyncflow/schemas/payload.py new file mode 100644 index 0000000..3c889e4 --- /dev/null +++ b/src/asyncflow/schemas/payload.py @@ -0,0 +1,15 @@ +"""Definition of the full input for the simulation""" + +from pydantic import BaseModel + +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.graph import TopologyGraph +from asyncflow.schemas.workload.rqs_generator import RqsGenerator + + +class SimulationPayload(BaseModel): + """Full input structure to perform a simulation""" + + rqs_input: RqsGenerator + topology_graph: TopologyGraph + sim_settings: SimulationSettings diff --git a/src/asyncflow/schemas/simulation_settings_input.py b/src/asyncflow/schemas/settings/simulation.py similarity index 100% rename from src/asyncflow/schemas/simulation_settings_input.py rename to src/asyncflow/schemas/settings/simulation.py diff --git a/src/asyncflow/schemas/system_topology/full_system_topology.py b/src/asyncflow/schemas/system_topology/full_system_topology.py deleted file mode 100644 index 7ab91bc..0000000 --- a/src/asyncflow/schemas/system_topology/full_system_topology.py +++ /dev/null @@ -1,391 +0,0 @@ -""" -Define the topology of the system as a directed graph -where nodes represents macro structure (server, client ecc ecc) -and edges how these strcutures are connected and the network -latency necessary for the requests generated to move from -one structure to another -""" - -from collections import Counter - -from pydantic import ( - BaseModel, - ConfigDict, - Field, - PositiveInt, - field_validator, - model_validator, -) -from pydantic_core.core_schema import ValidationInfo - -from asyncflow.config.constants import ( - LbAlgorithmsName, - NetworkParameters, - ServerResourcesDefaults, - SystemEdges, - SystemNodes, -) -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.system_topology.endpoint import Endpoint - -#------------------------------------------------------------- -# Definition of the nodes structure for the graph representing -# the topoogy of the system defined for the simulation -#------------------------------------------------------------- - -# ------------------------------------------------------------- -# CLIENT -# ------------------------------------------------------------- - -class Client(BaseModel): - """Definition of the client class""" - - id: str - type: SystemNodes = SystemNodes.CLIENT - - @field_validator("type", mode="after") - def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 - """Ensure the type of the client is standard""" - if v != SystemNodes.CLIENT: - msg = f"The type should have a standard value: {SystemNodes.CLIENT}" - raise ValueError(msg) - return v - -# ------------------------------------------------------------- -# SERVER RESOURCES -# ------------------------------------------------------------- - -class ServerResources(BaseModel): - """ - Defines the quantifiable resources available on a server node. - Each attribute maps directly to a SimPy resource primitive. - """ - - cpu_cores: PositiveInt = Field( - ServerResourcesDefaults.CPU_CORES, - ge = ServerResourcesDefaults.MINIMUM_CPU_CORES, - description="Number of CPU cores available for processing.", - ) - db_connection_pool: PositiveInt | None = Field( - ServerResourcesDefaults.DB_CONNECTION_POOL, - description="Size of the database connection pool, if applicable.", - ) - - # Risorse modellate come simpy.Container (livello) - ram_mb: PositiveInt = Field( - ServerResourcesDefaults.RAM_MB, - ge = ServerResourcesDefaults.MINIMUM_RAM_MB, - description="Total available RAM in Megabytes.") - - # for the future - # disk_iops_limit: PositiveInt | None = None - # network_throughput_mbps: PositiveInt | None = None - -# ------------------------------------------------------------- -# SERVER -# ------------------------------------------------------------- - -class Server(BaseModel): - """ - definition of the server class: - - id: is the server identifier - - type: is the type of node in the structure - - server resources: is a dictionary to define the resources - of the machine where the server is living - - endpoints: is the list of all endpoints in a server - """ - - id: str - type: SystemNodes = SystemNodes.SERVER - #Later define a valide structure for the keys of server resources - server_resources : ServerResources - endpoints : list[Endpoint] - - @field_validator("type", mode="after") - def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 - """Ensure the type of the server is standard""" - if v != SystemNodes.SERVER: - msg = f"The type should have a standard value: {SystemNodes.SERVER}" - raise ValueError(msg) - return v - -class LoadBalancer(BaseModel): - """ - basemodel for the load balancer - - id: unique name associated to the lb - - type: type of the node in the structure - - server_covered: list of server id connected to the lb - """ - - id: str - type: SystemNodes = SystemNodes.LOAD_BALANCER - algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN - server_covered: set[str] = Field(default_factory=set) - - - - @field_validator("type", mode="after") - def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 - """Ensure the type of the server is standard""" - if v != SystemNodes.LOAD_BALANCER: - msg = f"The type should have a standard value: {SystemNodes.LOAD_BALANCER}" - raise ValueError(msg) - return v - -# ------------------------------------------------------------- -# NODES CLASS WITH ALL POSSIBLE OBJECTS REPRESENTED BY A NODE -# ------------------------------------------------------------- - -class TopologyNodes(BaseModel): - """ - Definition of the nodes class: - - server: represent all servers implemented in the system - - client: is a simple object with just a name representing - the origin of the graph - """ - - servers: list[Server] - client: Client - load_balancer: LoadBalancer | None = None - - @model_validator(mode="after") # type: ignore[arg-type] - def unique_ids( - cls, # noqa: N805 - model: "TopologyNodes", - ) -> "TopologyNodes": - """Check that all id are unique""" - ids = [server.id for server in model.servers] + [model.client.id] - - if model.load_balancer is not None: - ids.append(model.load_balancer.id) - - counter = Counter(ids) - duplicate = [node_id for node_id, value in counter.items() if value > 1] - if duplicate: - msg = f"The following node ids are duplicate {duplicate}" - raise ValueError(msg) - return model - - model_config = ConfigDict(extra="forbid") - -#------------------------------------------------------------- -# Definition of the edges structure for the graph representing -# the topoogy of the system defined for the simulation -#------------------------------------------------------------- - -class Edge(BaseModel): - """ - A directed connection in the topology graph. - - Attributes - ---------- - source : str - Identifier of the source node (where the request comes from). - target : str - Identifier of the destination node (where the request goes to). - latency : RVConfig - Random-variable configuration for network latency on this link. - probability : float - Probability of taking this edge when there are multiple outgoing links. - Must be in [0.0, 1.0]. Defaults to 1.0 (always taken). - edge_type : SystemEdges - Category of the link (e.g. network, queue, stream). - - """ - - id: str - source: str - target: str - latency: RVConfig - edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION - dropout_rate: float = Field( - NetworkParameters.DROPOUT_RATE, - ge = NetworkParameters.MIN_DROPOUT_RATE, - le = NetworkParameters.MAX_DROPOUT_RATE, - description=( - "for each nodes representing a network we define" - "a probability to drop the request" - ), - ) - - # The idea to put here the control about variance and mean about the edges - # latencies and not in RVConfig is to provide a better error handling - # providing a direct indication of the edge with the error - # The idea to put here the control about variance and mean about the edges - # latencies and not in RVConfig is to provide a better error handling - # providing a direct indication of the edge with the error - @field_validator("latency", mode="after") - def ensure_latency_is_non_negative( - cls, # noqa: N805 - v: RVConfig, - info: ValidationInfo, - ) -> RVConfig: - """Ensures that the latency's mean and variance are positive.""" - mean = v.mean - variance = v.variance - - # We can get the edge ID from the validation context for a better error message - edge_id = info.data.get("id", "unknown") - - if mean <= 0: - msg = f"The mean latency of the edge '{edge_id}' must be positive" - raise ValueError(msg) - if variance is not None and variance < 0: # Variance can be zero - msg = ( - f"The variance of the latency of the edge {edge_id}" - "must be non negative" - ) - raise ValueError(msg) - return v - - - @model_validator(mode="after") # type: ignore[arg-type] - def check_src_trgt_different(cls, model: "Edge") -> "Edge": # noqa: N805 - """Ensure source is different from target""" - if model.source == model.target: - msg = "source and target must be different nodes" - raise ValueError(msg) - return model - - -#------------------------------------------------------------- -# Definition of the Graph structure representing -# the topogy of the system defined for the simulation -#------------------------------------------------------------- - -class TopologyGraph(BaseModel): - """ - data collection for the whole graph representing - the full system - """ - - nodes: TopologyNodes - edges: list[Edge] - - @model_validator(mode="after") # type: ignore[arg-type] - def unique_ids( - cls, # noqa: N805 - model: "TopologyGraph", - ) -> "TopologyGraph": - """Check that all id are unique""" - counter = Counter(edge.id for edge in model.edges) - duplicate = [edge_id for edge_id, value in counter.items() if value > 1] - if duplicate: - msg = f"There are multiple edges with the following ids {duplicate}" - raise ValueError(msg) - return model - - - @model_validator(mode="after") # type: ignore[arg-type] - def edge_refs_valid( - cls, # noqa: N805 - model: "TopologyGraph", - ) -> "TopologyGraph": - """ - Validate that the graph is self-consistent. - - * All targets must be nodes declared in ``m.nodes``. - * External IDs are allowed as sources (entry points, generator) but - they must never appear as a target anywhere else. - """ - # ------------------------------------------------------------------ - # 1. Collect declared node IDs (servers, client, optional LB) - # ------------------------------------------------------------------ - node_ids: set[str] = {srv.id for srv in model.nodes.servers} - node_ids.add(model.nodes.client.id) - if model.nodes.load_balancer is not None: - node_ids.add(model.nodes.load_balancer.id) - - # ------------------------------------------------------------------ - # 2. Scan every edge once - # ------------------------------------------------------------------ - external_sources: set[str] = set() - - for edge in model.edges: - # ── Rule 1: target must be a declared node - if edge.target not in node_ids: - msg = ( - f"Edge {edge.source}->{edge.target} references " - f"unknown target node '{edge.target}'." - ) - raise ValueError(msg) - - # Collect any source that is not a declared node - if edge.source not in node_ids: - external_sources.add(edge.source) - - # ------------------------------------------------------------------ - # 3. Ensure external sources never appear as targets elsewhere - # ------------------------------------------------------------------ - forbidden_targets = external_sources & {e.target for e in model.edges} - if forbidden_targets: - msg = ( - "External IDs cannot be used as targets as well:" - f"{sorted(forbidden_targets)}" - ) - raise ValueError(msg) - - return model - - @model_validator(mode="after") # type: ignore[arg-type] - def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 - """ - Check the validity of the load balancer: first we check - if is present in the simulation, second we check if the LB list - is a proper subset of the server sets of ids, then we check if - edge from LB to the servers are well defined - """ - lb = model.nodes.load_balancer - if lb is None: - return model - - server_ids = {s.id for s in model.nodes.servers} - - # 1) LB list ⊆ server_ids - missing = lb.server_covered - server_ids - if missing: - - msg = (f"Load balancer '{lb.id}'" - f"references unknown servers: {sorted(missing)}") - raise ValueError(msg) - - # edge are well defined - targets_from_lb = {e.target for e in model.edges if e.source == lb.id} - not_linked = lb.server_covered - targets_from_lb - if not_linked: - msg = ( - f"Servers {sorted(not_linked)} are covered by LB '{lb.id}' " - "but have no outgoing edge from it." - ) - - raise ValueError(msg) - - return model - - - @model_validator(mode="after") # type: ignore[arg-type] - def no_fanout_except_lb(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 - """Ensure only the LB (declared node) can have multiple outgoing edges.""" - lb_id = model.nodes.load_balancer.id if model.nodes.load_balancer else None - - # let us consider only nodes declared in the topology - node_ids: set[str] = {server.id for server in model.nodes.servers} - node_ids.add(model.nodes.client.id) - if lb_id: - node_ids.add(lb_id) - - counts: dict[str, int] = {} - for edge in model.edges: - if edge.source not in node_ids: - continue - counts[edge.source] = counts.get(edge.source, 0) + 1 - - offenders = [src for src, c in counts.items() if c > 1 and src != lb_id] - if offenders: - msg = ( - "Only the load balancer can have multiple outgoing edges. " - f"Offending sources: {offenders}" - ) - raise ValueError(msg) - - return model diff --git a/src/asyncflow/schemas/topology/edges.py b/src/asyncflow/schemas/topology/edges.py new file mode 100644 index 0000000..6e3d03b --- /dev/null +++ b/src/asyncflow/schemas/topology/edges.py @@ -0,0 +1,99 @@ +""" +Define the property of the edges of the system representing +links between different nodes +""" + +from pydantic import ( + BaseModel, + Field, + field_validator, + model_validator, +) +from pydantic_core.core_schema import ValidationInfo + +from asyncflow.config.constants import ( + NetworkParameters, + SystemEdges, +) +from asyncflow.schemas.common.random_variables import RVConfig + +#------------------------------------------------------------- +# Definition of the edges structure for the graph representing +# the topoogy of the system defined for the simulation +#------------------------------------------------------------- + +class Edge(BaseModel): + """ + A directed connection in the topology graph. + + Attributes + ---------- + source : str + Identifier of the source node (where the request comes from). + target : str + Identifier of the destination node (where the request goes to). + latency : RVConfig + Random-variable configuration for network latency on this link. + probability : float + Probability of taking this edge when there are multiple outgoing links. + Must be in [0.0, 1.0]. Defaults to 1.0 (always taken). + edge_type : SystemEdges + Category of the link (e.g. network, queue, stream). + + """ + + id: str + source: str + target: str + latency: RVConfig + edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION + dropout_rate: float = Field( + NetworkParameters.DROPOUT_RATE, + ge = NetworkParameters.MIN_DROPOUT_RATE, + le = NetworkParameters.MAX_DROPOUT_RATE, + description=( + "for each nodes representing a network we define" + "a probability to drop the request" + ), + ) + + # The idea to put here the control about variance and mean about the edges + # latencies and not in RVConfig is to provide a better error handling + # providing a direct indication of the edge with the error + # The idea to put here the control about variance and mean about the edges + # latencies and not in RVConfig is to provide a better error handling + # providing a direct indication of the edge with the error + @field_validator("latency", mode="after") + def ensure_latency_is_non_negative( + cls, # noqa: N805 + v: RVConfig, + info: ValidationInfo, + ) -> RVConfig: + """Ensures that the latency's mean and variance are positive.""" + mean = v.mean + variance = v.variance + + # We can get the edge ID from the validation context for a better error message + edge_id = info.data.get("id", "unknown") + + if mean <= 0: + msg = f"The mean latency of the edge '{edge_id}' must be positive" + raise ValueError(msg) + if variance is not None and variance < 0: # Variance can be zero + msg = ( + f"The variance of the latency of the edge {edge_id}" + "must be non negative" + ) + raise ValueError(msg) + return v + + + @model_validator(mode="after") # type: ignore[arg-type] + def check_src_trgt_different(cls, model: "Edge") -> "Edge": # noqa: N805 + """Ensure source is different from target""" + if model.source == model.target: + msg = "source and target must be different nodes" + raise ValueError(msg) + return model + + diff --git a/src/asyncflow/schemas/system_topology/endpoint.py b/src/asyncflow/schemas/topology/endpoint.py similarity index 100% rename from src/asyncflow/schemas/system_topology/endpoint.py rename to src/asyncflow/schemas/topology/endpoint.py diff --git a/src/asyncflow/schemas/topology/graph.py b/src/asyncflow/schemas/topology/graph.py new file mode 100644 index 0000000..91cf857 --- /dev/null +++ b/src/asyncflow/schemas/topology/graph.py @@ -0,0 +1,159 @@ +""" +Define the topology of the system as a directed graph +where nodes represents macro structure (server, client ecc ecc) +and edges how these strcutures are connected and the network +latency necessary for the requests generated to move from +one structure to another +""" + +from collections import Counter + +from pydantic import ( + BaseModel, + model_validator, +) + +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.nodes import TopologyNodes + +#------------------------------------------------------------- +# Definition of the Graph structure representing +# the topogy of the system defined for the simulation +#------------------------------------------------------------- + +class TopologyGraph(BaseModel): + """ + data collection for the whole graph representing + the full system + """ + + nodes: TopologyNodes + edges: list[Edge] + + @model_validator(mode="after") # type: ignore[arg-type] + def unique_ids( + cls, # noqa: N805 + model: "TopologyGraph", + ) -> "TopologyGraph": + """Check that all id are unique""" + counter = Counter(edge.id for edge in model.edges) + duplicate = [edge_id for edge_id, value in counter.items() if value > 1] + if duplicate: + msg = f"There are multiple edges with the following ids {duplicate}" + raise ValueError(msg) + return model + + + @model_validator(mode="after") # type: ignore[arg-type] + def edge_refs_valid( + cls, # noqa: N805 + model: "TopologyGraph", + ) -> "TopologyGraph": + """ + Validate that the graph is self-consistent. + + * All targets must be nodes declared in ``m.nodes``. + * External IDs are allowed as sources (entry points, generator) but + they must never appear as a target anywhere else. + """ + # ------------------------------------------------------------------ + # 1. Collect declared node IDs (servers, client, optional LB) + # ------------------------------------------------------------------ + node_ids: set[str] = {srv.id for srv in model.nodes.servers} + node_ids.add(model.nodes.client.id) + if model.nodes.load_balancer is not None: + node_ids.add(model.nodes.load_balancer.id) + + # ------------------------------------------------------------------ + # 2. Scan every edge once + # ------------------------------------------------------------------ + external_sources: set[str] = set() + + for edge in model.edges: + # ── Rule 1: target must be a declared node + if edge.target not in node_ids: + msg = ( + f"Edge {edge.source}->{edge.target} references " + f"unknown target node '{edge.target}'." + ) + raise ValueError(msg) + + # Collect any source that is not a declared node + if edge.source not in node_ids: + external_sources.add(edge.source) + + # ------------------------------------------------------------------ + # 3. Ensure external sources never appear as targets elsewhere + # ------------------------------------------------------------------ + forbidden_targets = external_sources & {e.target for e in model.edges} + if forbidden_targets: + msg = ( + "External IDs cannot be used as targets as well:" + f"{sorted(forbidden_targets)}" + ) + raise ValueError(msg) + + return model + + @model_validator(mode="after") # type: ignore[arg-type] + def valid_load_balancer(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + """ + Check the validity of the load balancer: first we check + if is present in the simulation, second we check if the LB list + is a proper subset of the server sets of ids, then we check if + edge from LB to the servers are well defined + """ + lb = model.nodes.load_balancer + if lb is None: + return model + + server_ids = {s.id for s in model.nodes.servers} + + # 1) LB list ⊆ server_ids + missing = lb.server_covered - server_ids + if missing: + + msg = (f"Load balancer '{lb.id}'" + f"references unknown servers: {sorted(missing)}") + raise ValueError(msg) + + # edge are well defined + targets_from_lb = {e.target for e in model.edges if e.source == lb.id} + not_linked = lb.server_covered - targets_from_lb + if not_linked: + msg = ( + f"Servers {sorted(not_linked)} are covered by LB '{lb.id}' " + "but have no outgoing edge from it." + ) + + raise ValueError(msg) + + return model + + + @model_validator(mode="after") # type: ignore[arg-type] + def no_fanout_except_lb(cls, model: "TopologyGraph") -> "TopologyGraph": # noqa: N805 + """Ensure only the LB (declared node) can have multiple outgoing edges.""" + lb_id = model.nodes.load_balancer.id if model.nodes.load_balancer else None + + # let us consider only nodes declared in the topology + node_ids: set[str] = {server.id for server in model.nodes.servers} + node_ids.add(model.nodes.client.id) + if lb_id: + node_ids.add(lb_id) + + counts: dict[str, int] = {} + for edge in model.edges: + if edge.source not in node_ids: + continue + counts[edge.source] = counts.get(edge.source, 0) + 1 + + offenders = [src for src, c in counts.items() if c > 1 and src != lb_id] + if offenders: + msg = ( + "Only the load balancer can have multiple outgoing edges. " + f"Offending sources: {offenders}" + ) + raise ValueError(msg) + + return model diff --git a/src/asyncflow/schemas/topology/nodes.py b/src/asyncflow/schemas/topology/nodes.py new file mode 100644 index 0000000..d742421 --- /dev/null +++ b/src/asyncflow/schemas/topology/nodes.py @@ -0,0 +1,164 @@ +""" +Define the pydantic schemas of the nodes you are allowed +to define in the topology of the system you would like to +simulate +""" + +from collections import Counter + +from pydantic import ( + BaseModel, + ConfigDict, + Field, + PositiveInt, + field_validator, + model_validator, +) + +from asyncflow.config.constants import ( + LbAlgorithmsName, + ServerResourcesDefaults, + SystemNodes, +) +from asyncflow.schemas.topology.endpoint import Endpoint + +#------------------------------------------------------------- +# Definition of the nodes structure for the graph representing +# the topoogy of the system defined for the simulation +#------------------------------------------------------------- + +# ------------------------------------------------------------- +# CLIENT +# ------------------------------------------------------------- + +class Client(BaseModel): + """Definition of the client class""" + + id: str + type: SystemNodes = SystemNodes.CLIENT + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the client is standard""" + if v != SystemNodes.CLIENT: + msg = f"The type should have a standard value: {SystemNodes.CLIENT}" + raise ValueError(msg) + return v + +# ------------------------------------------------------------- +# SERVER RESOURCES +# ------------------------------------------------------------- + +class ServerResources(BaseModel): + """ + Defines the quantifiable resources available on a server node. + Each attribute maps directly to a SimPy resource primitive. + """ + + cpu_cores: PositiveInt = Field( + ServerResourcesDefaults.CPU_CORES, + ge = ServerResourcesDefaults.MINIMUM_CPU_CORES, + description="Number of CPU cores available for processing.", + ) + db_connection_pool: PositiveInt | None = Field( + ServerResourcesDefaults.DB_CONNECTION_POOL, + description="Size of the database connection pool, if applicable.", + ) + + # Risorse modellate come simpy.Container (livello) + ram_mb: PositiveInt = Field( + ServerResourcesDefaults.RAM_MB, + ge = ServerResourcesDefaults.MINIMUM_RAM_MB, + description="Total available RAM in Megabytes.") + + # for the future + # disk_iops_limit: PositiveInt | None = None + # network_throughput_mbps: PositiveInt | None = None + +# ------------------------------------------------------------- +# SERVER +# ------------------------------------------------------------- + +class Server(BaseModel): + """ + definition of the server class: + - id: is the server identifier + - type: is the type of node in the structure + - server resources: is a dictionary to define the resources + of the machine where the server is living + - endpoints: is the list of all endpoints in a server + """ + + id: str + type: SystemNodes = SystemNodes.SERVER + #Later define a valide structure for the keys of server resources + server_resources : ServerResources + endpoints : list[Endpoint] + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the server is standard""" + if v != SystemNodes.SERVER: + msg = f"The type should have a standard value: {SystemNodes.SERVER}" + raise ValueError(msg) + return v + +class LoadBalancer(BaseModel): + """ + basemodel for the load balancer + - id: unique name associated to the lb + - type: type of the node in the structure + - server_covered: list of server id connected to the lb + """ + + id: str + type: SystemNodes = SystemNodes.LOAD_BALANCER + algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN + server_covered: set[str] = Field(default_factory=set) + + + + @field_validator("type", mode="after") + def ensure_type_is_standard(cls, v: SystemNodes) -> SystemNodes: # noqa: N805 + """Ensure the type of the server is standard""" + if v != SystemNodes.LOAD_BALANCER: + msg = f"The type should have a standard value: {SystemNodes.LOAD_BALANCER}" + raise ValueError(msg) + return v + + +# ------------------------------------------------------------- +# NODES CLASS WITH ALL POSSIBLE OBJECTS REPRESENTED BY A NODE +# ------------------------------------------------------------- + +class TopologyNodes(BaseModel): + """ + Definition of the nodes class: + - server: represent all servers implemented in the system + - client: is a simple object with just a name representing + the origin of the graph + """ + + servers: list[Server] + client: Client + load_balancer: LoadBalancer | None = None + + @model_validator(mode="after") # type: ignore[arg-type] + def unique_ids( + cls, # noqa: N805 + model: "TopologyNodes", + ) -> "TopologyNodes": + """Check that all id are unique""" + ids = [server.id for server in model.servers] + [model.client.id] + + if model.load_balancer is not None: + ids.append(model.load_balancer.id) + + counter = Counter(ids) + duplicate = [node_id for node_id, value in counter.items() if value > 1] + if duplicate: + msg = f"The following node ids are duplicate {duplicate}" + raise ValueError(msg) + return model + + model_config = ConfigDict(extra="forbid") diff --git a/src/asyncflow/schemas/rqs_generator_input.py b/src/asyncflow/schemas/workload/rqs_generator.py similarity index 95% rename from src/asyncflow/schemas/rqs_generator_input.py rename to src/asyncflow/schemas/workload/rqs_generator.py index f0f63a3..a6fbf3b 100644 --- a/src/asyncflow/schemas/rqs_generator_input.py +++ b/src/asyncflow/schemas/workload/rqs_generator.py @@ -4,10 +4,10 @@ from pydantic import BaseModel, Field, field_validator from asyncflow.config.constants import Distribution, SystemNodes, TimeDefaults -from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.common.random_variables import RVConfig -class RqsGeneratorInput(BaseModel): +class RqsGenerator(BaseModel): """Define the expected variables for the simulation""" id: str diff --git a/src/asyncflow/settings/__init__.py b/src/asyncflow/settings/__init__.py new file mode 100644 index 0000000..4f4031c --- /dev/null +++ b/src/asyncflow/settings/__init__.py @@ -0,0 +1,6 @@ +"""Public settings API.""" +from __future__ import annotations + +from asyncflow.schemas.settings.simulation import SimulationSettings + +__all__ = ["SimulationSettings"] diff --git a/src/asyncflow/workload/__init__.py b/src/asyncflow/workload/__init__.py new file mode 100644 index 0000000..c4b8735 --- /dev/null +++ b/src/asyncflow/workload/__init__.py @@ -0,0 +1,7 @@ +"""Public workload API.""" +from __future__ import annotations + +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.workload.rqs_generator import RqsGenerator + +__all__ = ["RVConfig", "RqsGenerator"] diff --git a/tests/conftest.py b/tests/conftest.py index 893cb83..80955f0 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -12,16 +12,16 @@ SamplePeriods, TimeDefaults, ) -from asyncflow.schemas.full_simulation_input import SimulationPayload -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.payload import SimulationPayload +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.graph import TopologyGraph +from asyncflow.schemas.topology.nodes import ( Client, - Edge, - TopologyGraph, TopologyNodes, ) +from asyncflow.schemas.workload.rqs_generator import RqsGenerator # ============================================================================ # STANDARD CONFIGURATION FOR INPUT VARIABLES @@ -90,12 +90,12 @@ def sim_settings( @pytest.fixture -def rqs_input() -> RqsGeneratorInput: +def rqs_input() -> RqsGenerator: """ One active user issuing two requests per minute—sufficient to exercise the entire request-generator pipeline with minimal overhead. """ - return RqsGeneratorInput( + return RqsGenerator( id="rqs-1", avg_active_users=RVConfig(mean=1.0), avg_request_per_minute_per_user=RVConfig(mean=2.0), @@ -136,7 +136,7 @@ def topology_minimal() -> TopologyGraph: @pytest.fixture def payload_base( - rqs_input: RqsGeneratorInput, + rqs_input: RqsGenerator, sim_settings: SimulationSettings, topology_minimal: TopologyGraph, ) -> SimulationPayload: diff --git a/tests/integration/minimal/conftest.py b/tests/integration/minimal/conftest.py index 812ba5e..f29bf49 100644 --- a/tests/integration/minimal/conftest.py +++ b/tests/integration/minimal/conftest.py @@ -16,20 +16,20 @@ from asyncflow.config.constants import TimeDefaults from asyncflow.runtime.simulation_runner import SimulationRunner -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.workload.rqs_generator import RqsGenerator if TYPE_CHECKING: - from asyncflow.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.payload import SimulationPayload # ────────────────────────────────────────────────────────────────────────────── # 0-traffic generator (shadows the project-wide fixture) # ────────────────────────────────────────────────────────────────────────────── @pytest.fixture(scope="session") -def rqs_input() -> RqsGeneratorInput: +def rqs_input() -> RqsGenerator: """A generator that never emits any request.""" - return RqsGeneratorInput( + return RqsGenerator( id="rqs-zero", avg_active_users=RVConfig(mean=0.0), avg_request_per_minute_per_user=RVConfig(mean=0.0), diff --git a/tests/integration/minimal/test_minimal.py b/tests/integration/minimal/test_minimal.py index 2a82601..7ae9507 100644 --- a/tests/integration/minimal/test_minimal.py +++ b/tests/integration/minimal/test_minimal.py @@ -22,7 +22,7 @@ from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: - from asyncflow.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.payload import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/integration/payload/test_payload_invalid.py b/tests/integration/payload/test_payload_invalid.py index fb700b4..8cd5226 100644 --- a/tests/integration/payload/test_payload_invalid.py +++ b/tests/integration/payload/test_payload_invalid.py @@ -6,7 +6,7 @@ import yaml from pydantic import ValidationError -from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.payload import SimulationPayload DATA_DIR = Path(__file__).parent / "data" / "invalid" YMLS = sorted(DATA_DIR.glob("*.yml")) diff --git a/tests/unit/metrics/test_analyzer.py b/tests/unit/metrics/test_analyzer.py index eaae45d..365cb1c 100644 --- a/tests/unit/metrics/test_analyzer.py +++ b/tests/unit/metrics/test_analyzer.py @@ -14,7 +14,7 @@ from asyncflow.runtime.actors.client import ClientRuntime from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.actors.server import ServerRuntime - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings # ---------------------------------------------------------------------- # diff --git a/tests/unit/pybuilder/test_input_builder.py b/tests/unit/pybuilder/test_input_builder.py index 3ee710c..fa49fda 100644 --- a/tests/unit/pybuilder/test_input_builder.py +++ b/tests/unit/pybuilder/test_input_builder.py @@ -13,20 +13,21 @@ import pytest -from asyncflow.pybuilder.input_builder import AsyncFlow -from asyncflow.schemas.full_simulation_input import SimulationPayload -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.endpoint import Endpoint -from asyncflow.schemas.system_topology.full_system_topology import Client, Edge, Server +from asyncflow.builder.asyncflow_builder import AsyncFlow +from asyncflow.schemas.payload import SimulationPayload +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.endpoint import Endpoint +from asyncflow.schemas.topology.nodes import Client, Server +from asyncflow.schemas.workload.rqs_generator import RqsGenerator # --------------------------------------------------------------------------- # # Helpers: build minimal, valid components # # --------------------------------------------------------------------------- # -def make_generator() -> RqsGeneratorInput: +def make_generator() -> RqsGenerator: """Return a minimal valid request generator.""" - return RqsGeneratorInput( + return RqsGenerator( id="rqs-1", avg_active_users={"mean": 10}, avg_request_per_minute_per_user={"mean": 30}, @@ -244,7 +245,7 @@ def test_build_without_settings_raises() -> None: # Negative cases: type enforcement in add_* methods # # --------------------------------------------------------------------------- # def test_add_generator_rejects_wrong_type() -> None: - """`add_generator` rejects non-RqsGeneratorInput instances.""" + """`add_generator` rejects non-RqsGenerator instances.""" flow = AsyncFlow() with pytest.raises(TypeError): flow.add_generator("not-a-generator") # type: ignore[arg-type] diff --git a/tests/unit/resources/test_registry.py b/tests/unit/resources/test_registry.py index 34154db..6581ae0 100644 --- a/tests/unit/resources/test_registry.py +++ b/tests/unit/resources/test_registry.py @@ -7,12 +7,12 @@ from asyncflow.config.constants import ServerResourceName from asyncflow.resources.registry import ResourcesRuntime -from asyncflow.schemas.system_topology.endpoint import Endpoint -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.topology.endpoint import Endpoint +from asyncflow.schemas.topology.graph import TopologyGraph +from asyncflow.schemas.topology.nodes import ( Client, Server, ServerResources, - TopologyGraph, TopologyNodes, ) diff --git a/tests/unit/resources/test_server_containers.py b/tests/unit/resources/test_server_containers.py index 3772528..b7a8243 100644 --- a/tests/unit/resources/test_server_containers.py +++ b/tests/unit/resources/test_server_containers.py @@ -4,7 +4,7 @@ from asyncflow.config.constants import ServerResourceName from asyncflow.resources.server_containers import build_containers -from asyncflow.schemas.system_topology.full_system_topology import ServerResources +from asyncflow.schemas.topology.nodes import ServerResources def test_containers_start_full() -> None: diff --git a/tests/unit/runtime/actors/test_client.py b/tests/unit/runtime/actors/test_client.py index 9188d64..d78c848 100644 --- a/tests/unit/runtime/actors/test_client.py +++ b/tests/unit/runtime/actors/test_client.py @@ -7,9 +7,7 @@ from asyncflow.config.constants import SystemEdges, SystemNodes from asyncflow.runtime.actors.client import ClientRuntime from asyncflow.runtime.rqs_state import RequestState -from asyncflow.schemas.system_topology.full_system_topology import ( - Client, -) +from asyncflow.schemas.topology.nodes import Client # --------------------------------------------------------------------------- # # Dummy edge (no real network) # diff --git a/tests/unit/runtime/actors/test_edge.py b/tests/unit/runtime/actors/test_edge.py index e180bec..1800a12 100644 --- a/tests/unit/runtime/actors/test_edge.py +++ b/tests/unit/runtime/actors/test_edge.py @@ -14,13 +14,13 @@ from asyncflow.config.constants import SampledMetricName, SystemEdges, SystemNodes from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.rqs_state import RequestState -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.system_topology.full_system_topology import Edge +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.topology.edges import Edge if TYPE_CHECKING: import numpy as np - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings # --------------------------------------------------------------------------- # diff --git a/tests/unit/runtime/actors/test_load_balancer.py b/tests/unit/runtime/actors/test_load_balancer.py index 41902e0..1905543 100644 --- a/tests/unit/runtime/actors/test_load_balancer.py +++ b/tests/unit/runtime/actors/test_load_balancer.py @@ -9,7 +9,7 @@ from asyncflow.config.constants import LbAlgorithmsName, SystemNodes from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime -from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.schemas.topology.nodes import LoadBalancer if TYPE_CHECKING: from asyncflow.runtime.actors.edge import EdgeRuntime diff --git a/tests/unit/runtime/actors/test_rqs_generator.py b/tests/unit/runtime/actors/test_rqs_generator.py index 7130306..fef5987 100644 --- a/tests/unit/runtime/actors/test_rqs_generator.py +++ b/tests/unit/runtime/actors/test_rqs_generator.py @@ -17,8 +17,8 @@ from asyncflow.runtime.actors.edge import EdgeRuntime from asyncflow.runtime.rqs_state import RequestState - from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings + from asyncflow.schemas.workload.rqs_generator import RqsGenerator import importlib @@ -42,7 +42,7 @@ def transport(self, state: RequestState) -> None: def _make_runtime( env: simpy.Environment, edge: DummyEdgeRuntime, - rqs_input: RqsGeneratorInput, + rqs_input: RqsGenerator, sim_settings: SimulationSettings, *, seed: int = 0, @@ -67,7 +67,7 @@ def _make_runtime( def test_dispatcher_selects_poisson_poisson( monkeypatch: pytest.MonkeyPatch, - rqs_input: RqsGeneratorInput, + rqs_input: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Default (Poisson) distribution must invoke *poisson_poisson_sampling*.""" @@ -93,7 +93,7 @@ def _fake_pp(*args: object, **kwargs: object) -> Iterator[float]: def test_dispatcher_selects_gaussian_poisson( monkeypatch: pytest.MonkeyPatch, - rqs_input: RqsGeneratorInput, + rqs_input: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Normal distribution must invoke *gaussian_poisson_sampling*.""" @@ -124,7 +124,7 @@ def _fake_gp(*args: object, **kwargs: object) -> Iterator[float]: def test_event_arrival_generates_expected_number_of_requests( monkeypatch: pytest.MonkeyPatch, - rqs_input: RqsGeneratorInput, + rqs_input: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Given a deterministic gap list, exactly that many requests are sent.""" diff --git a/tests/unit/runtime/actors/test_server.py b/tests/unit/runtime/actors/test_server.py index 7085e12..4c915ac 100644 --- a/tests/unit/runtime/actors/test_server.py +++ b/tests/unit/runtime/actors/test_server.py @@ -32,9 +32,9 @@ from asyncflow.resources.server_containers import build_containers from asyncflow.runtime.actors.server import ServerRuntime from asyncflow.runtime.rqs_state import RequestState -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.endpoint import Endpoint, Step -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.endpoint import Endpoint, Step +from asyncflow.schemas.topology.nodes import ( Server, ServerResources, ) diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py index c0f6b2e..e3b4da7 100644 --- a/tests/unit/runtime/test_simulation_runner.py +++ b/tests/unit/runtime/test_simulation_runner.py @@ -23,7 +23,7 @@ from asyncflow.runtime.actors.client import ClientRuntime from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime - from asyncflow.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.payload import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/unit/samplers/test_gaussian_poisson.py b/tests/unit/samplers/test_gaussian_poisson.py index 4b3ed80..657fae9 100644 --- a/tests/unit/samplers/test_gaussian_poisson.py +++ b/tests/unit/samplers/test_gaussian_poisson.py @@ -13,12 +13,12 @@ from asyncflow.samplers.gaussian_poisson import ( gaussian_poisson_sampling, ) -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.workload.rqs_generator import RqsGenerator if TYPE_CHECKING: - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings # --------------------------------------------------------------------------- # FIXTURES @@ -26,9 +26,9 @@ @pytest.fixture -def rqs_cfg() -> RqsGeneratorInput: - """Minimal, valid RqsGeneratorInput for Gaussian-Poisson tests.""" - return RqsGeneratorInput( +def rqs_cfg() -> RqsGenerator: + """Minimal, valid RqsGenerator for Gaussian-Poisson tests.""" + return RqsGenerator( id= "gen-1", avg_active_users=RVConfig( mean=10.0, @@ -47,7 +47,7 @@ def rqs_cfg() -> RqsGeneratorInput: def test_returns_generator_type( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, rng: Generator, ) -> None: @@ -57,7 +57,7 @@ def test_returns_generator_type( def test_generates_positive_gaps( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """ @@ -83,7 +83,7 @@ def test_generates_positive_gaps( def test_zero_users_produces_no_events( monkeypatch: pytest.MonkeyPatch, - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """ diff --git a/tests/unit/samplers/test_poisson_poisson.py b/tests/unit/samplers/test_poisson_poisson.py index fde7d04..c5d4a18 100644 --- a/tests/unit/samplers/test_poisson_poisson.py +++ b/tests/unit/samplers/test_poisson_poisson.py @@ -12,18 +12,18 @@ from asyncflow.config.constants import TimeDefaults from asyncflow.samplers.poisson_poisson import poisson_poisson_sampling -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.workload.rqs_generator import RqsGenerator if TYPE_CHECKING: - from asyncflow.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.settings.simulation import SimulationSettings @pytest.fixture -def rqs_cfg() -> RqsGeneratorInput: - """Return a minimal, valid RqsGeneratorInput for the sampler tests.""" - return RqsGeneratorInput( +def rqs_cfg() -> RqsGenerator: + """Return a minimal, valid RqsGenerator for the sampler tests.""" + return RqsGenerator( id="gen-1", avg_active_users={"mean": 1.0, "distribution": "poisson"}, avg_request_per_minute_per_user={"mean": 60.0, "distribution": "poisson"}, @@ -36,7 +36,7 @@ def rqs_cfg() -> RqsGeneratorInput: def test_sampler_returns_generator( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, rng: Generator, ) -> None: @@ -46,7 +46,7 @@ def test_sampler_returns_generator( def test_all_gaps_are_positive( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Every yielded gap must be strictly positive.""" @@ -65,7 +65,7 @@ def test_all_gaps_are_positive( def test_sampler_is_reproducible_with_fixed_seed( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Same RNG seed must produce identical first N gaps.""" @@ -96,7 +96,7 @@ def test_zero_users_produces_no_events( sim_settings: SimulationSettings, ) -> None: """If the mean user count is zero the generator must yield no events.""" - cfg_zero = RqsGeneratorInput( + cfg_zero = RqsGenerator( id="gen-1", avg_active_users=RVConfig(mean=0.0, distribution="poisson"), avg_request_per_minute_per_user=RVConfig(mean=60.0, distribution="poisson"), @@ -115,7 +115,7 @@ def test_zero_users_produces_no_events( def test_cumulative_time_never_exceeds_horizon( - rqs_cfg: RqsGeneratorInput, + rqs_cfg: RqsGenerator, sim_settings: SimulationSettings, ) -> None: """Sum of gaps must stay below the simulation horizon.""" diff --git a/tests/unit/samplers/test_sampler_helper.py b/tests/unit/samplers/test_sampler_helper.py index f6b4241..349a5fd 100644 --- a/tests/unit/samplers/test_sampler_helper.py +++ b/tests/unit/samplers/test_sampler_helper.py @@ -17,7 +17,7 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.common.random_variables import RVConfig # --------------------------------------------------------------------------- # # Dummy RNG # diff --git a/tests/unit/schemas/test_endpoint_input.py b/tests/unit/schemas/test_endpoint.py similarity index 98% rename from tests/unit/schemas/test_endpoint_input.py rename to tests/unit/schemas/test_endpoint.py index 3813dd6..080f55a 100644 --- a/tests/unit/schemas/test_endpoint_input.py +++ b/tests/unit/schemas/test_endpoint.py @@ -11,7 +11,7 @@ EndpointStepRAM, StepOperation, ) -from asyncflow.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.topology.endpoint import Endpoint, Step # --------------------------------------------------------------------------- # diff --git a/tests/unit/schemas/test_requests_generator_input.py b/tests/unit/schemas/test_generator.py similarity index 92% rename from tests/unit/schemas/test_requests_generator_input.py rename to tests/unit/schemas/test_generator.py index 66ad037..608adc4 100644 --- a/tests/unit/schemas/test_requests_generator_input.py +++ b/tests/unit/schemas/test_generator.py @@ -1,13 +1,13 @@ -"""Validation tests for RVConfig, RqsGeneratorInput and SimulationSettings.""" +"""Validation tests for RVConfig, RqsGenerator and SimulationSettings.""" from __future__ import annotations import pytest from pydantic import ValidationError from asyncflow.config.constants import Distribution, TimeDefaults -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.workload.rqs_generator import RqsGenerator # --------------------------------------------------------------------------- # # RVCONFIG # @@ -82,7 +82,7 @@ def test_invalid_distribution_literal_raises() -> None: # --------------------------------------------------------------------------- # -# RQSGENERATORINPUT - USER_SAMPLING_WINDOW & DISTRIBUTION CONSTRAINTS # +# RqsGenerator - USER_SAMPLING_WINDOW & DISTRIBUTION CONSTRAINTS # # --------------------------------------------------------------------------- # @@ -98,7 +98,7 @@ def _valid_normal_cfg(mean: float = 1.0) -> dict[str, float | str]: def test_default_user_sampling_window() -> None: """If user_sampling_window is missing it defaults to the constant.""" - inp = RqsGeneratorInput( + inp = RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -108,7 +108,7 @@ def test_default_user_sampling_window() -> None: def test_explicit_user_sampling_window_kept() -> None: """An explicit user_sampling_window is preserved.""" - inp = RqsGeneratorInput( + inp = RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -120,7 +120,7 @@ def test_explicit_user_sampling_window_kept() -> None: def test_user_sampling_window_not_int_raises() -> None: """A non-integer user_sampling_window raises ValidationError.""" with pytest.raises(ValidationError): - RqsGeneratorInput( + RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -132,7 +132,7 @@ def test_user_sampling_window_above_max_raises() -> None: """user_sampling_window above the max constant raises ValidationError.""" too_large = TimeDefaults.MAX_USER_SAMPLING_WINDOW + 1 with pytest.raises(ValidationError): - RqsGeneratorInput( + RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -143,7 +143,7 @@ def test_user_sampling_window_above_max_raises() -> None: def test_avg_request_must_be_poisson() -> None: """avg_request_per_minute_per_user must be Poisson; Normal raises.""" with pytest.raises(ValidationError): - RqsGeneratorInput( + RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_normal_cfg(), @@ -154,7 +154,7 @@ def test_avg_active_users_invalid_distribution_raises() -> None: """avg_active_users cannot be Exponential; only Poisson or Normal allowed.""" bad_cfg = {"mean": 1.0, "distribution": Distribution.EXPONENTIAL} with pytest.raises(ValidationError): - RqsGeneratorInput( + RqsGenerator( id="rqs-1", avg_active_users=bad_cfg, avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -163,7 +163,7 @@ def test_avg_active_users_invalid_distribution_raises() -> None: def test_valid_poisson_poisson_configuration() -> None: """Poisson-Poisson combo is accepted.""" - cfg = RqsGeneratorInput( + cfg = RqsGenerator( id="rqs-1", avg_active_users=_valid_poisson_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), @@ -177,7 +177,7 @@ def test_valid_poisson_poisson_configuration() -> None: def test_valid_normal_poisson_configuration() -> None: """Normal-Poisson combo is accepted.""" - cfg = RqsGeneratorInput( + cfg = RqsGenerator( id="rqs-1", avg_active_users=_valid_normal_cfg(), avg_request_per_minute_per_user=_valid_poisson_cfg(), diff --git a/tests/unit/schemas/test_full_topology_input.py b/tests/unit/schemas/test_topology.py similarity index 97% rename from tests/unit/schemas/test_full_topology_input.py rename to tests/unit/schemas/test_topology.py index 4e27562..0ef53e0 100644 --- a/tests/unit/schemas/test_full_topology_input.py +++ b/tests/unit/schemas/test_topology.py @@ -13,15 +13,15 @@ SystemEdges, SystemNodes, ) -from asyncflow.schemas.random_variables_config import RVConfig -from asyncflow.schemas.system_topology.endpoint import Endpoint, Step -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.common.random_variables import RVConfig +from asyncflow.schemas.topology.edges import Edge +from asyncflow.schemas.topology.endpoint import Endpoint, Step +from asyncflow.schemas.topology.graph import TopologyGraph +from asyncflow.schemas.topology.nodes import ( Client, - Edge, LoadBalancer, Server, ServerResources, - TopologyGraph, TopologyNodes, ) From 111cf7bef0db70262608970e0e745b88e5c351d7 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 14 Aug 2025 19:19:16 +0200 Subject: [PATCH 29/35] minor changes --- tests/unit/runtime/test_simulation_runner.py | 31 -------------------- 1 file changed, 31 deletions(-) diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py index e3b4da7..e4b8c83 100644 --- a/tests/unit/runtime/test_simulation_runner.py +++ b/tests/unit/runtime/test_simulation_runner.py @@ -99,37 +99,6 @@ def test_build_edges_with_stub_edge(runner: SimulationRunner) -> None: assert len(runner._edges_runtime) == 1 # noqa: SLF001 -# --------------------------------------------------------------------------- # -# End-to-end “mini” run # -# --------------------------------------------------------------------------- # -def test_run_returns_results_analyzer(runner: SimulationRunner) -> None: - """ - `.run()` must complete even though the client is a sink node. We patch - `_build_client` to assign a no-op edge to avoid assertions. - """ - - class _NoOpEdge: - """Edge stub that silently discards transported states.""" - - def transport(self) -> None: - return - - def patched_build_client(self: SimulationRunner) -> None: - # Call the original builder - SimulationRunner._build_client(self) # noqa: SLF001 - cli_rt = next(iter(self._client_runtime.values())) - cli_rt.out_edge = _NoOpEdge() # type: ignore[assignment] - - with patch.object(runner, "_build_client", patched_build_client.__get__(runner)): - results: ResultsAnalyzer = runner.run() - - assert isinstance(results, ResultsAnalyzer) - assert ( - pytest.approx(runner.env.now) - == runner.simulation_settings.total_simulation_time - ) - - # --------------------------------------------------------------------------- # # from_yaml utility # # --------------------------------------------------------------------------- # From 59b54b69c545bab54a1ced4d3db6af2a70d43049 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Thu, 14 Aug 2025 19:21:58 +0200 Subject: [PATCH 30/35] minor changes --- tests/unit/runtime/test_simulation_runner.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py index e4b8c83..3a352f5 100644 --- a/tests/unit/runtime/test_simulation_runner.py +++ b/tests/unit/runtime/test_simulation_runner.py @@ -9,13 +9,11 @@ from __future__ import annotations from typing import TYPE_CHECKING -from unittest.mock import patch import pytest import simpy import yaml -from asyncflow.metrics.analyzer import ResultsAnalyzer from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: From 02951e680aee52d178d80ea1a89a17f84ddab7c2 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Fri, 15 Aug 2025 17:13:38 +0200 Subject: [PATCH 31/35] Features/lb example and docs tutorial (#15) * minor docs changes * improved pytoml * improved docs + LB examples --- docs/api/high-level.md | 299 ----------------- docs/api/high-level/analyzer.md | 211 ++++++++++++ docs/api/high-level/builder.md | 288 ++++++++++++++++ docs/api/high-level/runner.md | 230 +++++++++++++ .../dev-workflow.md} | 2 +- docs/index.md | 1 + .../load_balancer/two_servers.png | Bin 0 -> 142265 bytes .../load_balancer/two_servers.py | 317 ++++++++++++++++++ .../single_server/single_server.png | Bin 0 -> 157658 bytes .../single_server/single_server.py} | 2 +- examples/single_server_builder.png | Bin 166241 -> 0 bytes examples/single_server_pybuilder.png | Bin 162085 -> 0 bytes examples/single_server_yml.png | Bin 166693 -> 0 bytes .../{ => yaml_input}/data/single_server.yml | 0 examples/yaml_input/data/two_servers_lb.yml | 96 ++++++ .../yaml_input/load_balancer/two_servers.png | Bin 0 -> 153719 bytes .../yaml_input/load_balancer/two_servers.py | 283 ++++++++++++++++ .../single_server/single_server.png | Bin 0 -> 155288 bytes .../single_server/single_server.py} | 4 +- examples/{ => yaml_input}/your_example.py | 0 pyproject.toml | 35 +- src/asyncflow/__init__.py | 2 +- src/asyncflow/analysis/__init__.py | 5 + src/asyncflow/metrics/analyzer.py | 6 +- src/asyncflow/py.typed | 0 25 files changed, 1470 insertions(+), 311 deletions(-) delete mode 100644 docs/api/high-level.md create mode 100644 docs/api/high-level/analyzer.md create mode 100644 docs/api/high-level/builder.md create mode 100644 docs/api/high-level/runner.md rename docs/{dev-workflow-guide.md => guides/dev-workflow.md} (99%) create mode 100644 examples/builder_input/load_balancer/two_servers.png create mode 100644 examples/builder_input/load_balancer/two_servers.py create mode 100644 examples/builder_input/single_server/single_server.png rename examples/{single_server_pybuilder.py => builder_input/single_server/single_server.py} (99%) delete mode 100644 examples/single_server_builder.png delete mode 100644 examples/single_server_pybuilder.png delete mode 100644 examples/single_server_yml.png rename examples/{ => yaml_input}/data/single_server.yml (100%) create mode 100644 examples/yaml_input/data/two_servers_lb.yml create mode 100644 examples/yaml_input/load_balancer/two_servers.png create mode 100644 examples/yaml_input/load_balancer/two_servers.py create mode 100644 examples/yaml_input/single_server/single_server.png rename examples/{single_server_yaml.py => yaml_input/single_server/single_server.py} (98%) rename examples/{ => yaml_input}/your_example.py (100%) create mode 100644 src/asyncflow/analysis/__init__.py create mode 100644 src/asyncflow/py.typed diff --git a/docs/api/high-level.md b/docs/api/high-level.md deleted file mode 100644 index 65c3d24..0000000 --- a/docs/api/high-level.md +++ /dev/null @@ -1,299 +0,0 @@ -# AsyncFlow — High-Level API (`AsyncFlow`, `SimulationRunner`) - -This page explains how to programmatically **assemble a validated simulation payload** and **run** it, returning metrics and plots through the analyzer. - -* **Builder**: `AsyncFlow` – compose workload, topology, and settings into a single `SimulationPayload`. -* **Runner**: `SimulationRunner` – wire actors, start processes, collect metrics, and return a `ResultsAnalyzer`. - ---- - -## Imports - -```python -# High-level API -from asyncflow import AsyncFlow, SimulationRunner - -# Public leaf schemas (components & workload) -from asyncflow.components import Client, Server, Endpoint, Edge -from asyncflow.workload import RqsGenerator, RVConfig -from asyncflow.settings import SimulationSettings -``` - -> These are the **only** imports end users need. Internals (actors, registries, etc.) remain private. - ---- - -## Quick start - -A minimal end-to-end example: - -```python -from __future__ import annotations -import simpy - -from asyncflow import AsyncFlow, SimulationRunner -from asyncflow.components import Client, Server, Endpoint, Edge -from asyncflow.workload import RqsGenerator, RVConfig -from asyncflow.settings import SimulationSettings - -# 1) Workload -rqs = RqsGenerator( - id="rqs-1", - avg_active_users=RVConfig(mean=50, # Poisson by default - # or Distribution.NORMAL with variance auto=mean - ), - avg_request_per_minute_per_user=RVConfig(mean=30), # MUST be Poisson - user_sampling_window=60, # seconds -) - -# 2) Topology components -client = Client(id="client-1") - -endpoint = Endpoint( - endpoint_name="/hello", - steps=[ - {"kind": "ram", "step_operation": {"necessary_ram": 32}}, - {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, - {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, - ], -) - -server = Server( - id="srv-1", - server_resources={"cpu_cores": 1, "ram_mb": 1024}, - endpoints=[endpoint], -) - -edges = [ - Edge(id="gen-client", source="rqs-1", target="client-1", - latency={"mean": 0.003, "distribution": "exponential"}), - Edge(id="client-srv1", source="client-1", target="srv-1", - latency={"mean": 0.003, "distribution": "exponential"}), - Edge(id="srv1-client", source="srv-1", target="client-1", - latency={"mean": 0.003, "distribution": "exponential"}), -] - -# 3) Settings (baseline sampled metrics are mandatory) -settings = SimulationSettings( - total_simulation_time=300, # seconds (≥ 5) - sample_period_s=0.01, # 0.001 ≤ value ≤ 0.1 - # enabled_sample_metrics and enabled_event_metrics: safe defaults already set -) - -# 4) Build (validates everything with Pydantic) -payload = ( - AsyncFlow() - .add_generator(rqs) - .add_client(client) - .add_servers(server) - .add_edges(*edges) - .add_simulation_settings(settings) - .build_payload() -) - -# 5) Run -env = simpy.Environment() -results = SimulationRunner(env=env, simulation_input=payload).run() - -# 6) Use the analyzer (examples) -print(results.get_latency_stats()) -ts, rps = results.get_throughput_series() -sampled = results.get_sampled_metrics() -``` - ---- - -## `AsyncFlow` — builder (public) - -`AsyncFlow` helps you construct a **self-consistent** `SimulationPayload` with fluent, chainable calls. Every piece you add is type-checked; the final `build_payload()` validates the full graph and settings. - -### API - -```python -class AsyncFlow: - def add_generator(self, rqs_generator: RqsGenerator) -> Self: ... - def add_client(self, client: Client) -> Self: ... - def add_servers(self, *servers: Server) -> Self: ... - def add_edges(self, *edges: Edge) -> Self: ... - def add_simulation_settings(self, sim_settings: SimulationSettings) -> Self: ... - def add_load_balancer(self, load_balancer: LoadBalancer) -> Self: ... - def build_payload(self) -> SimulationPayload: ... -``` - -### Validation performed by `build_payload()` - -On build, the composed payload is validated by the Pydantic schemas: - -1. **Presence** - - * Generator, client, **≥ 1 server**, **≥ 1 edge**, settings are required. - -2. **Unique IDs** - - * Duplicate server IDs or edge IDs are rejected. - -3. **Node types** - - * Fixed enums: `client`, `server`, `load_balancer`; validated on each node. - -4. **Edge integrity** - - * Every edge **target** must be a declared node ID. - * **External IDs** (e.g., the generator id) are allowed **only as sources**. - * **No self-loops** (`source != target`). - -5. **Load balancer sanity** (if present) - - * `server_covered ⊆ declared servers`. - * There must be an **edge from the LB to every covered server**. - -6. **(Engine rule)** “No fan-out except LB” - - * Only the LB may have multiple outgoing edges among declared nodes. - -7. **Latency RV constraints (edges)** - - * `latency.mean > 0`, and if `variance` exists, `variance ≥ 0`. - -If a rule fails, a **descriptive `ValueError`** points at the offending entity/field. - -### Typical errors you might see - -* Missing parts: - `ValueError: The generator input must be instantiated before the simulation` -* Type mis-match: - `TypeError: All the instances must be of the type Server` -* Graph violations: - `ValueError: Edge client-1->srv-X references unknown target node 'srv-X'` -* LB coverage: - `ValueError: Servers ['srv-2'] are covered by LB 'lb-1' but have no outgoing edge from it.` - ---- - -## `SimulationRunner` — orchestrator (public) - -`SimulationRunner` takes a validated `SimulationPayload`, **instantiates all runtimes**, **wires** edges to their target mailboxes, **starts** every actor, **collects** sampled metrics, and advances the SimPy clock. - -### API - -```python -class SimulationRunner: - def __init__(self, *, env: simpy.Environment, simulation_input: SimulationPayload) -> None: ... - def run(self) -> ResultsAnalyzer: ... - @classmethod - def from_yaml(cls, *, env: simpy.Environment, yaml_path: str | Path) -> "SimulationRunner": ... -``` - -* **`env`**: your SimPy environment (you control its lifetime). - -* **`simulation_input`**: the payload returned by `AsyncFlow.build_payload()` (or parsed from YAML). - -* **`run()`**: - - * Builds and wires all runtime actors (`RqsGeneratorRuntime`, `ClientRuntime`, `ServerRuntime`, `LoadBalancerRuntime`, `EdgeRuntime`). - * Starts the **SampledMetricCollector** (baseline sampled metrics are mandatory and collected automatically). - * Runs until `SimulationSettings.total_simulation_time`. - * Returns a **`ResultsAnalyzer`** with helpers like: - - * `get_latency_stats()` - * `get_throughput_series()` - * `get_sampled_metrics()` - * plotting helpers (`plot_latency_distribution`, `plot_throughput`, …). - -* **`from_yaml`**: convenience constructor for loading a full payload from a YAML file and running it immediately. - -### Determinism & RNG - -* The runner uses `numpy.random.default_rng()` internally. - Seeding is not yet exposed as a public parameter; exact reproducibility across runs is **not guaranteed** in this version. - ---- - -## Extended example: with Load Balancer - -```python -from asyncflow.components import Client, Server, Endpoint, Edge -from asyncflow.components import LoadBalancer -from asyncflow import AsyncFlow, SimulationRunner -from asyncflow.workload import RqsGenerator, RVConfig -from asyncflow.settings import SimulationSettings -import simpy - -client = Client(id="client-1") - -srv1 = Server( - id="srv-1", - server_resources={"cpu_cores": 1, "ram_mb": 1024}, - endpoints=[Endpoint(endpoint_name="/api", steps=[{"kind":"ram","step_operation":{"necessary_ram":64}}])] -) -srv2 = Server( - id="srv-2", - server_resources={"cpu_cores": 2, "ram_mb": 2048}, - endpoints=[Endpoint(endpoint_name="/api", steps=[{"kind":"io_db","step_operation":{"io_waiting_time":0.012}}])] -) - -lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1","srv-2"}) - -edges = [ - Edge(id="gen-client", source="rqs-1", target="client-1", latency={"mean":0.002,"distribution":"exponential"}), - Edge(id="client-lb", source="client-1", target="lb-1", latency={"mean":0.002,"distribution":"exponential"}), - Edge(id="lb-srv1", source="lb-1", target="srv-1", latency={"mean":0.002,"distribution":"exponential"}), - Edge(id="lb-srv2", source="lb-1", target="srv-2", latency={"mean":0.002,"distribution":"exponential"}), - Edge(id="srv1-client", source="srv-1", target="client-1", latency={"mean":0.003,"distribution":"exponential"}), - Edge(id="srv2-client", source="srv-2", target="client-1", latency={"mean":0.003,"distribution":"exponential"}), -] - -payload = ( - AsyncFlow() - .add_generator(RqsGenerator( - id="rqs-1", - avg_active_users=RVConfig(mean=120), - avg_request_per_minute_per_user=RVConfig(mean=20), - user_sampling_window=60, - )) - .add_client(client) - .add_servers(srv1, srv2) - .add_load_balancer(lb) - .add_edges(*edges) - .add_simulation_settings(SimulationSettings(total_simulation_time=600, sample_period_s=0.02)) - .build_payload() -) - -env = simpy.Environment() -results = SimulationRunner(env=env, simulation_input=payload).run() -``` - ---- - -## Performance tips - -* **Sampling cost** grows with `total_simulation_time / sample_period_s × (#sampled metrics × entities)`. - For long runs, consider a larger `sample_period_s` (e.g., `0.02–0.05`) to reduce memory while keeping the baseline metrics intact. - -* **Validation first**: prefer failing early by letting `build_payload()` validate everything before the runner starts. - ---- - -## Error handling (what throws) - -* **Type errors** on builder inputs (`TypeError`) when passing the wrong class to `add_*`. -* **Validation errors** (`ValueError`) on `build_payload()` if the graph is inconsistent (unknown targets, duplicates, LB edges missing, self-loops, illegal fan-out, latency rules, etc.). -* **Runtime wiring errors** (`TypeError`) if an unknown runtime target/source type appears while wiring edges (should not occur with a validated payload). - ---- - -## YAML path (alternative) - -You can construct the payload in YAML (see “YAML Input Guide”), then: - -```python -import simpy -from asyncflow import SimulationRunner - -env = simpy.Environment() -runner = SimulationRunner.from_yaml(env=env, yaml_path="scenario.yml") -results = runner.run() -``` - ---- - diff --git a/docs/api/high-level/analyzer.md b/docs/api/high-level/analyzer.md new file mode 100644 index 0000000..8804449 --- /dev/null +++ b/docs/api/high-level/analyzer.md @@ -0,0 +1,211 @@ +# AsyncFlow — Public API Reference: `ResultsAnalyzer` + +`ResultsAnalyzer` is the public object you use **after** a run to compute +latency statistics, derive throughput time-series, and visualize sampled +metrics collected from servers and edges. + +* **Input:** created and returned by `SimulationRunner.run()` +* **Output:** dictionaries and time-series you can print, log, chart, or export + +> **Import (public):** +> +> ```python +> from asyncflow.analysis import ResultsAnalyzer +> ``` + + +--- + +## TL;DR (minimal usage) + +```python +results = SimulationRunner(env=env, simulation_input=payload).run() + +# Aggregates +lat = results.get_latency_stats() # dict of p50, p95, p99, ... +ts, rps = results.get_throughput_series() # per-second timestamps & RPS +series = results.get_sampled_metrics() # nested dict of time-series + +# Plotting (matplotlib) +import matplotlib.pyplot as plt +fig, axes = plt.subplots(2, 2, figsize=(12, 8)) +results.plot_latency_distribution(axes[0, 0]) +results.plot_throughput(axes[0, 1]) +results.plot_server_queues(axes[1, 0]) +results.plot_ram_usage(axes[1, 1]) +fig.tight_layout() +``` + +--- + +## What the analyzer computes + +### Event-level aggregates (from `RQS_CLOCK`) + +* **Latency stats** from per-request `(start_time, finish_time)` tuples: + + * keys: `total_requests, mean, median, std_dev, p95, p99, min, max` +* **Throughput (RPS)** as a time-series: + + * 1-second windows by default (see “Advanced: throughput window”) + +### Sampled time-series (from runtime collectors) + +* Per-entity (server/edge) series for the **baseline mandatory** metrics: + + * `ready_queue_len` (server) + * `event_loop_io_sleep` (server) + * `ram_in_use` (server) + * `edge_concurrent_connection` (edge) + +> These are sampled every `sample_period_s` defined in `SimulationSettings`. + +--- + +## Public API + +### Aggregates + +```python +get_latency_stats() -> dict[LatencyKey, float] +``` + +Returns latency summary statistics. If no requests completed, returns `{}`. + +```python +get_throughput_series() -> tuple[list[float], list[float]] +``` + +Returns `(timestamps_in_seconds, rps_values)`. If no traffic, returns `([], [])`. + +### Sampled metrics + +```python +get_sampled_metrics() -> dict[str, dict[str, list[float]]] +``` + +Returns a nested dictionary: + +```python +{ + "": { "": [v0, v1, ...] } +} +``` + +* Metric names are strings matching the public enums (e.g. `"ready_queue_len"`). +* `entity_id` is a **server id** (for server metrics) or an **edge id** (for edge metrics). + +### Plotting helpers + +All plotting helpers draw on a provided `matplotlib.axes.Axes`: + +```python +plot_latency_distribution(ax: Axes) -> None +plot_throughput(ax: Axes) -> None +plot_server_queues(ax: Axes) -> None +plot_ram_usage(ax: Axes) -> None +``` + +Behavior: + +* If data is missing/empty, the plot shows a “no data” message. +* With a load balancer (multiple servers), per-server lines are labeled by server id automatically. + +--- + +## Return contracts (shapes & keys) + +### `get_latency_stats()` + +Example: + +```python +{ + 'total_requests': 1200.0, + 'mean': 0.0123, + 'median': 0.0108, + 'std_dev': 0.0041, + 'p95': 0.0217, + 'p99': 0.0302, + 'min': 0.0048, + 'max': 0.0625 +} +``` + +### `get_throughput_series()` + +Example: + +```python +timestamps = [1.0, 2.0, 3.0, ...] # seconds from t=0 +rps = [ 36, 41, 38, ...] # requests per second +``` + +### `get_sampled_metrics()` + +Example subset: + +```python +{ + "ready_queue_len": { + "srv-1": [0, 1, 2, 1, ...], + "srv-2": [0, 0, 1, 0, ...], + }, + "event_loop_io_sleep": { + "srv-1": [3, 5, 4, 6, ...], + }, + "ram_in_use": { + "srv-1": [128.0, 160.0, 192.0, ...], + }, + "edge_concurrent_connection": { + "lb-1->srv-1": [0, 1, 1, 2, ...], # your edge ids + } +} +``` + +Time base for these lists is implicit: index `i` corresponds to time `i * sample_period_s`. + +--- + +## Plotting recipes + +### Multi-panel overview + +```python +import matplotlib.pyplot as plt + +fig, axes = plt.subplots(2, 2, figsize=(12, 8)) +results.plot_latency_distribution(axes[0, 0]) +results.plot_throughput(axes[0, 1]) +results.plot_server_queues(axes[1, 0]) +results.plot_ram_usage(axes[1, 1]) + +fig.suptitle("AsyncFlow – Simulation Overview", y=1.02) +fig.tight_layout() +``` + +## Edge cases & guarantees + +* **No traffic:** all getters are safe: + + * `get_latency_stats()` → `{}` + * `get_throughput_series()` → `([], [])` + * Plots show “no data”. +* **Multiple servers / LB:** queue and RAM plots include **one line per server id**. +* **Metric availability:** the analyzer only exposes the **baseline mandatory** sampled metrics; if a metric wasn’t enabled/recorded, it won’t appear in the nested dict. +* **Units:** times are in **seconds**; RAM is in **MB**; RPS is **requests/second**. + +--- + +## Performance characteristics + +* Aggregations (percentiles, std) are **vectorized** via NumPy. +* Memory footprint of sampled series ≈ + `total_simulation_time / sample_period_s × (#metrics × #entities)`. +* Prefer a coarser `sample_period_s` for very long runs. + +--- + + + + diff --git a/docs/api/high-level/builder.md b/docs/api/high-level/builder.md new file mode 100644 index 0000000..4a8ff6c --- /dev/null +++ b/docs/api/high-level/builder.md @@ -0,0 +1,288 @@ +# AsyncFlow — Public API Reference: `AsyncFlow` Builder + +`AsyncFlow` is the **fluent builder** that assembles a complete, validated +`SimulationPayload`. It lets you compose workload, topology, edges, and global +settings with clear types and fail-fast validation. The resulting payload can be +run with `SimulationRunner`. + +* **You write:** small, typed building blocks (workload + components + settings) +* **Builder does:** composition & Pydantic validation (graph integrity, rules) +* **Runner does:** execution & metrics collection + +--- + +## Imports + +```python +# Builder + Runner +from asyncflow import AsyncFlow, SimulationRunner + +# Public leaf schemas +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.components import Client, Server, Endpoint, Edge, LoadBalancer +from asyncflow.settings import SimulationSettings +``` + +--- + +## Quick start + +```python +import simpy +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.components import Client, Server, Endpoint, Edge +from asyncflow.settings import SimulationSettings + +# 1) Workload +rqs = RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=50), # Poisson by default + avg_request_per_minute_per_user=RVConfig(mean=30), # MUST be Poisson +) + +# 2) Components +client = Client(id="client-1") +server = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[ + Endpoint( + endpoint_name="/hello", + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], + ) + ], +) + +edges = [ + Edge(id="gen-client", source="rqs-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="client-srv1", source="client-1", target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="srv1-client", source="srv-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), +] + +# 3) Settings (baseline sampled metrics are mandatory by design) +settings = SimulationSettings(total_simulation_time=300, sample_period_s=0.01) + +# 4) Build (validates everything) +payload = ( + AsyncFlow() + .add_generator(rqs) + .add_client(client) + .add_servers(server) + .add_edges(*edges) + .add_simulation_settings(settings) + .build_payload() +) + +# 5) Run +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() +``` + +--- + +## API + +```python +class AsyncFlow: + def add_generator(self, rqs_generator: RqsGenerator) -> Self: ... + def add_client(self, client: Client) -> Self: ... + def add_servers(self, *servers: Server) -> Self: ... + def add_edges(self, *edges: Edge) -> Self: ... + def add_simulation_settings(self, sim_settings: SimulationSettings) -> Self: ... + def add_load_balancer(self, load_balancer: LoadBalancer) -> Self: ... + def build_payload(self) -> SimulationPayload: ... +``` + +### Method details + +* **`add_generator(rqs_generator)`** + Adds the stochastic workload model. + Errors: `TypeError` if not a `RqsGenerator`. + +* **`add_client(client)`** + Adds the single client node. + Errors: `TypeError` if not a `Client`. + +* **`add_servers(*servers)`** + Adds one or more servers (varargs). + Errors: `TypeError` if any arg is not a `Server`. + +* **`add_edges(*edges)`** + Adds one or more directed edges (varargs). + Errors: `TypeError` if any arg is not an `Edge`. + Notes: *Targets must be declared nodes; sources may be external (e.g. `"rqs-1"`).* + +* **`add_load_balancer(load_balancer)`** *(optional)* + Adds a load balancer node. + Errors: `TypeError` if not a `LoadBalancer`. + +* **`add_simulation_settings(sim_settings)`** + Adds global settings (duration, sampling period, metric selection). + Errors: `TypeError` if not a `SimulationSettings`. + +* **`build_payload()` → `SimulationPayload`** + Finalize composition and run full validation. + Errors: `ValueError` on missing parts or invalid graph. + +--- + +## Validation performed by `build_payload()` + +(Implemented via Pydantic model validation across the payload’s schemas.) + +1. **Presence** + + * Requires: generator, client, **≥ 1 server**, **≥ 1 edge**, settings. + +2. **Unique IDs** + + * Duplicate server IDs or edge IDs are rejected. + +3. **Node types** + + * `client`, `server`, and `load_balancer` are fixed enums; enforced per node. + +4. **Edge integrity** + + * Every **target** must be a declared node ID. + * **External IDs** (e.g. the generator id) are allowed **only** as **sources**. + * **No self-loops** (`source != target`). + +5. **Load balancer sanity** (if present) + + * `server_covered ⊆ declared servers`. + * There is an **outgoing edge from the LB to every covered server**. + +6. **Engine rule: no fan-out except LB** + + * Among declared nodes, only the LB may have multiple outgoing edges. + +7. **Latency RV constraints (edges)** + + * `latency.mean > 0`; if `variance` provided, `variance ≥ 0`. + +If any rule fails, a **descriptive `ValueError`** points to the offending field/entity. + +--- + +## Typical errors & how to fix + +* **Missing parts** + `ValueError: The generator input must be instantiated before the simulation` + → Call the missing `add_*` method before `build_payload()`. + +* **Wrong type passed** + `TypeError: All the instances must be of the type Server` + → Ensure you pass `Server` objects to `add_servers(...)` (not dicts). + +* **Unknown edge target** + `ValueError: Edge client-1->srv-X references unknown target node 'srv-X'` + → Add a `Server(id="srv-X", ...)` or fix the edge target. + +* **LB coverage without edges** + `ValueError: Servers ['srv-2'] are covered by LB 'lb-1' but have no outgoing edge from it.` + → Add `Edge(source="lb-1", target="srv-2", ...)`. + +* **Illegal fan-out** + `ValueError: Only the load balancer can have multiple outgoing edges. Offending sources: ['client-1']` + → Route fan-out through a `LoadBalancer`. + +--- + +## Extended example — with Load Balancer + +```python +from asyncflow import AsyncFlow, SimulationRunner +from asyncflow.workload import RqsGenerator, RVConfig +from asyncflow.components import Client, Server, Endpoint, Edge, LoadBalancer +from asyncflow.settings import SimulationSettings +import simpy + +client = Client(id="client-1") + +srv1 = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[Endpoint(endpoint_name="/api", + steps=[{"kind":"ram","step_operation":{"necessary_ram":64}}])], +) +srv2 = Server( + id="srv-2", + server_resources={"cpu_cores": 2, "ram_mb": 2048}, + endpoints=[Endpoint(endpoint_name="/api", + steps=[{"kind":"io_db","step_operation":{"io_waiting_time":0.012}}])], +) + +lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1","srv-2"}) + +edges = [ + Edge(id="gen-client", source="rqs-1", target="client-1", + latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="client-lb", source="client-1", target="lb-1", + latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="lb-srv1", source="lb-1", target="srv-1", + latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="lb-srv2", source="lb-1", target="srv-2", + latency={"mean":0.002,"distribution":"exponential"}), + Edge(id="srv1-client", source="srv-1", target="client-1", + latency={"mean":0.003,"distribution":"exponential"}), + Edge(id="srv2-client", source="srv-2", target="client-1", + latency={"mean":0.003,"distribution":"exponential"}), +] + +payload = ( + AsyncFlow() + .add_generator(RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=120), + avg_request_per_minute_per_user=RVConfig(mean=20), + user_sampling_window=60, + )) + .add_client(client) + .add_servers(srv1, srv2) + .add_load_balancer(lb) + .add_edges(*edges) + .add_simulation_settings(SimulationSettings(total_simulation_time=600, sample_period_s=0.02)) + .build_payload() +) + +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() +``` + +--- + +## Tips & pitfalls + +* **IDs are case-sensitive** and must be unique per category (servers, edges, LB). +* **Edge targets must be declared nodes.** External IDs (like the generator) can only appear as **sources**. +* **LB fan-out only.** If you need branching, introduce a `LoadBalancer`. +* **RqsGenerator constraints:** + `avg_request_per_minute_per_user` **must** be Poisson; + `avg_active_users` must be **Poisson** or **Normal** (variance auto-filled if missing). +* **Step coherence:** + CPU step → `cpu_time`; RAM step → `necessary_ram`; I/O step → `io_waiting_time`. Exactly **one** per step. + +--- + +## Interop: YAML ↔ Python + +You can build the same payload from YAML and then use `SimulationRunner.from_yaml(...)`. Field names mirror the Python model names and the enum values (strings) are identical. + +--- + +## Versioning & stability + +* Exceptions: `TypeError` for wrong types passed to builder; `ValueError` for invalid or incomplete payloads. +* Validation rules and enum names are part of the public contract (semantic versioning applies). +* The builder does not mutate your objects; it assembles and validates them into a `SimulationPayload`. + + diff --git a/docs/api/high-level/runner.md b/docs/api/high-level/runner.md new file mode 100644 index 0000000..27a0c87 --- /dev/null +++ b/docs/api/high-level/runner.md @@ -0,0 +1,230 @@ +# AsyncFlow — Public API Reference: `SimulationRunner` + +`SimulationRunner` is the **orchestrator** of a simulation run. It takes a fully +validated `SimulationPayload`, instantiates the runtime actors, wires their +connections, starts the processes inside a `simpy.Environment`, collects sampled +metrics, advances the virtual clock, and returns a `ResultsAnalyzer` for +post-run querying and plotting. + +Use it together with the `AsyncFlow` builder (Python) or a YAML payload. + +--- + +## Imports + +```python +from asyncflow import SimulationRunner, AsyncFlow # high-level API +from asyncflow.settings import SimulationSettings +from asyncflow.components import Client, Server, Endpoint, Edge, LoadBalancer +from asyncflow.workload import RqsGenerator, RVConfig +import simpy +``` + +--- + +## Quick start + +```python +# 1) Build a validated payload (see the builder docs for details) +payload = ( + AsyncFlow() + .add_generator(RqsGenerator( + id="rqs-1", + avg_active_users=RVConfig(mean=50), + avg_request_per_minute_per_user=RVConfig(mean=30), + )) + .add_client(Client(id="client-1")) + .add_servers( + Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[Endpoint(endpoint_name="/hello", steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ])], + ) + ) + .add_edges( + Edge(id="gen-client", source="rqs-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="client-srv1", source="client-1", target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}), + Edge(id="srv1-client", source="srv-1", target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}), + ) + .add_simulation_settings(SimulationSettings(total_simulation_time=300, sample_period_s=0.01)) + .build_payload() +) + +# 2) Run +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() + +# 3) Analyze +print(results.get_latency_stats()) +ts, rps = results.get_throughput_series() +sampled = results.get_sampled_metrics() +``` + +--- + +## Class reference + +```python +class SimulationRunner: + def __init__(self, *, env: simpy.Environment, simulation_input: SimulationPayload) -> None: ... + def run(self) -> ResultsAnalyzer: ... + @classmethod + def from_yaml(cls, *, env: simpy.Environment, yaml_path: str | Path) -> "SimulationRunner": ... +``` + +### Parameters + +* **`env: simpy.Environment`** + The SimPy environment that controls virtual time. You own its lifetime. + +* **`simulation_input: SimulationPayload`** + A fully validated payload (typically created with `AsyncFlow.build_payload()` or + parsed from YAML). It contains workload, topology graph, and settings. + +### Returns + +* **`run() -> ResultsAnalyzer`** + A results façade exposing: + + * `get_latency_stats() -> dict` (mean, median, p95, p99, …) + * `get_throughput_series() -> (timestamps, rps)` + * `get_sampled_metrics() -> dict[str, dict[str, list[float]]]` + * plotting helpers: `plot_latency_distribution(ax)`, `plot_throughput(ax)`, + `plot_server_queues(ax)`, `plot_ram_usage(ax)` + +### Convenience: YAML entry point + +```python +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path="scenario.yml") +results = runner.run() +``` + +`from_yaml` uses `yaml.safe_load` and validates with the same Pydantic schemas, +so it enforces the exact same contract as the builder. + +--- + +## Lifecycle & internal phases + +`run()` performs the following steps: + +1. **Build runtimes** + + * `RqsGeneratorRuntime` (workload) + * `ClientRuntime` + * `ServerRuntime` for each server (CPU/RAM resources bound) + * `LoadBalancerRuntime` (optional) + +2. **Wire edges** + Creates an `EdgeRuntime` for each edge and assigns the appropriate *inbox* + (`simpy.Store`) of the target actor. Sets the `out_edge` (or `out_edges` for + the load balancer) on the source actor. + +3. **Start processes** + Registers every actor’s `.start()` coroutine in the environment and starts the + **SampledMetricCollector** that snapshots: + + * server **ready queue length**, **I/O queue length**, **RAM in use** + * edge **concurrent connections** + at the configured `sample_period_s`. These sampled metrics are **mandatory** + in this version. + +4. **Advance the clock** + `env.run(until=SimulationSettings.total_simulation_time)` + +5. **Return analyzer** + Wraps the collected state into `ResultsAnalyzer` for stats & plots. + +--- + +## Input contract (what the runner expects) + +The runner assumes `simulation_input` has already passed full validation: + +* All edge targets are declared nodes; external IDs appear only as sources. +* Load balancer coverage and edges are coherent. +* No self-loops; only the LB fans out among declared nodes. +* Edge latency RVs have `mean > 0` (and `variance ≥ 0` if provided). +* Server resources meet minimums (≥ 1 core, ≥ 256 MB RAM), etc. + +> Build with `AsyncFlow` or load from YAML — both paths enforce the same rules. + +--- + +## Error handling + +* **Type errors (builder misuse)** should not reach the runner; they’re raised by the builder (`TypeError`) before `build_payload()`. +* **Validation errors** (`ValueError`) are raised during payload construction/validation, not by the runner. +* **Wiring errors** (`TypeError`) are guarded by validation and indicate an unexpected mismatch between payload and runtime types. With a validated payload, you shouldn’t see them. + +--- + +## Determinism & RNG + +The runner uses `numpy.random.default_rng()` internally. Seeding is not yet a +public parameter; exact reproducibility across runs is **not guaranteed** in +this version. If you need strict reproducibility, pin your environment and keep +payloads identical; a dedicated seeding hook may be added in a future release. + +--- + +## Performance characteristics + +* **Runtime cost** scales with the number of requests and the complexity of + endpoint steps (CPU vs I/O waits). +* **Sampling memory** roughly scales as + `(#entities × #enabled sampled metrics) × (total_simulation_time / sample_period_s)`. + For long runs, consider a larger `sample_period_s` (e.g., `0.02–0.05`) to + reduce the size of time series. +* The collector is a single coroutine that performs `O(entities)` appends on + each tick; the hot path inside actors remains `O(1)` per event. + +--- + +## Usage with Load Balancers + +Topologies **with a LB** are first-class: + +* Only the LB may have multiple outgoing edges (fan-out). +* The analyzer operates on **lists** of servers and edges; plots will naturally + show one line per server/edge where appropriate. +* Validation ensures every `server_covered` by the LB has a corresponding LB→server edge. + +--- + +## One-shot runner (recommended) + +A `SimulationRunner` instance is designed to **run once**. For a new scenario +(or new settings), create a **new** `simpy.Environment` and a **new** +`SimulationRunner`. Reusing a runner after `run()` is not supported. + +--- + +## Best practices + +* **Let the builder fail fast.** Always construct payloads via `AsyncFlow` (or YAML + validation) before running. +* **Keep steps coherent.** CPU step → `cpu_time`, RAM step → `necessary_ram`, I/O step → `io_waiting_time`. Exactly one key per step. +* **Model the network realistically.** Put latency RVs on **every** hop that matters (client↔LB, LB↔server, server↔client). +* **Tune sampling.** High-frequency sampling is useful for short diagnostic runs; increase `sample_period_s` for long capacity sweeps. + +--- + +## See also + +* **Builder:** `AsyncFlow` — compose and validate the payload (workload, topology, settings). +* **Analyzer:** `ResultsAnalyzer` — query KPIs and plot latency/throughput/queues/RAM. +* **Workload:** `RqsGenerator`, `RVConfig` — define traffic models (Poisson or Gaussian–Poisson). +* **Components:** `Client`, `Server`, `Endpoint`, `Edge`, `LoadBalancer`. + +This API keeps **assembly** and **execution** separate: you design and validate +your system with `AsyncFlow`, then hand it to `SimulationRunner` to execute and +measure — a clean workflow that scales from minimal examples to complex, +load-balanced topologies. diff --git a/docs/dev-workflow-guide.md b/docs/guides/dev-workflow.md similarity index 99% rename from docs/dev-workflow-guide.md rename to docs/guides/dev-workflow.md index ff0e3ce..c5d06ef 100644 --- a/docs/dev-workflow-guide.md +++ b/docs/guides/dev-workflow.md @@ -1,6 +1,6 @@ # **Development Workflow & Architecture Guide** -This document describes the development workflow, repository architecture, and branching strategy for **AsyncFlow** +This document describes the development workflow, repository architecture, branching strategy and CI/CD for **AsyncFlow** --- ## 1) Repository Layout diff --git a/docs/index.md b/docs/index.md index 651a0ee..a4affc2 100644 --- a/docs/index.md +++ b/docs/index.md @@ -25,6 +25,7 @@ AsyncFlow is a discrete-event simulator for Python async backends (FastAPI/Uvico * **[Builder Guide](guides/builder.md)** — Programmatically assemble a `SimulationPayload` in Python with validation and examples. * **[YAML Input Guide](guides/yaml-builder.md)** — Author scenarios in YAML: exact schema, units, constraints, runnable samples. +* **[Dev workflow Guide](guides/dev-workflow.md)** — Describes the development workflow, repository architecture, branching strategy and CI/CD for **AsyncFlow** --- diff --git a/examples/builder_input/load_balancer/two_servers.png b/examples/builder_input/load_balancer/two_servers.png new file mode 100644 index 0000000000000000000000000000000000000000..11ceaf3b2120d027084b649dd09565b1d0c79ab9 GIT binary patch literal 142265 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 client ──> LB ──> srv-1 + └─> srv-2 + srv-1 ──> client + srv-2 ──> client + +Load: + ~120 active users, 20 req/min each (Poisson by default). + +Servers: + srv-1: 1 CPU core, 1GB RAM, endpoint with CPU→RAM→IO + srv-2: 2 CPU cores, 2GB RAM, endpoint with RAM→IO(DB-like) + +Network: + 2–3ms mean (exponential) latency on each edge. + +What this script does: + 1) Build Pydantic models (generator, client, LB, servers, edges, settings). + 2) Compose the SimulationPayload via AsyncFlow (builder pattern). + 3) Run the simulation with SimulationRunner. + 4) Print latency stats, throughput timeline, and a sampled-metrics preview. + 5) Save a 2×2 plot figure (latency, throughput, server queues, RAM). +""" + +from __future__ import annotations + +from pathlib import Path +from typing import Iterable, List, Mapping, TYPE_CHECKING + +import numpy as np +import simpy + +# ── AsyncFlow domain imports (match your working paths) ──────────────────────── +from asyncflow.builder.asyncflow_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.schemas.payload import SimulationPayload +from asyncflow.schemas.workload.rqs_generator import RqsGenerator +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.endpoint import Endpoint +from asyncflow.schemas.topology.nodes import Client, Server, LoadBalancer +from asyncflow.schemas.topology.edges import Edge +from asyncflow.config.constants import LatencyKey, SampledMetricName + + + + +# ───────────────────────────────────────────────────────────── +# Pretty printers (compact, readable output) +# ───────────────────────────────────────────────────────────── +def print_latency_stats(res: ResultsAnalyzer) -> None: + stats: Mapping[LatencyKey, float] = res.get_latency_stats() + print("\n════════ LATENCY STATS ════════") + if not stats: + print("(empty)") + return + + order: List[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + + +def print_throughput(res: ResultsAnalyzer) -> None: + timestamps, rps = res.get_throughput_series() + print("\n════════ THROUGHPUT (req/sec) ════════") + if not timestamps: + print("(empty)") + return + for t, rate in zip(timestamps, rps): + print(f"t={t:4.1f}s → {rate:6.2f} rps") + + +def print_sampled_preview(res: ResultsAnalyzer) -> None: + sampled = res.get_sampled_metrics() + print("\n════════ SAMPLED METRICS (preview) ════════") + if not sampled: + print("(empty)") + return + + # Keys may be enums or strings depending on your analyzer; handle both. + def _name(m): # pragma: no cover + return m.name if hasattr(m, "name") else str(m) + + for metric, series in sampled.items(): + print(f"\n📈 {_name(metric)}:") + for entity, vals in series.items(): + head = list(vals[:5]) if vals else [] + print(f" - {entity}: len={len(vals)}, first={head}") + + +# ───────────────────────────────────────────────────────────── +# Tiny helpers for sanity checks (optional) +# ───────────────────────────────────────────────────────────── +def _mean(series: Iterable[float]) -> float: + arr = np.asarray(list(series), dtype=float) + return float(np.mean(arr)) if arr.size else 0.0 + + +def run_sanity_checks( + runner: SimulationRunner, + res: ResultsAnalyzer, +) -> None: + print("\n════════ SANITY CHECKS (rough) ════════") + w = runner.simulation_input.rqs_input + lam_rps = ( + float(w.avg_active_users.mean) + * float(w.avg_request_per_minute_per_user.mean) + / 60.0 + ) + + # Observed throughput + _, rps_series = res.get_throughput_series() + rps_observed = _mean(rps_series) + print( + f"• Mean throughput (rps) expected≈{lam_rps:.3f} " + f"observed={rps_observed:.3f}" + ) + + sampled = res.get_sampled_metrics() + ram_series = sampled.get(SampledMetricName.RAM_IN_USE, {}) + ioq_series = sampled.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) + ready_series = sampled.get(SampledMetricName.READY_QUEUE_LEN, {}) + + ram_mean = _mean([_mean(v) for v in ram_series.values()]) if ram_series else 0.0 + ioq_mean = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 + ready_mean = _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 + + print(f"• Mean RAM in use (MB) observed={ram_mean:.3f}") + print(f"• Mean I/O queue length observed={ioq_mean:.3f}") + print(f"• Mean ready queue length observed={ready_mean:.3f}") + + +# ───────────────────────────────────────────────────────────── +# Build the LB + 2 servers scenario via AsyncFlow (builder) +# ───────────────────────────────────────────────────────────── +def build_payload_with_lb() -> SimulationPayload: + """ + Construct the SimulationPayload programmatically using the builder: + - Generator (120 users, 20 rpm each) + - Client + - Load balancer (round_robin) covering two servers + - Two servers with distinct endpoints + - Edges for all hops (gen→client, client→lb, lb→srv1/2, srv1/2→client) + - Simulation settings: 600s total, sample period 20ms + """ + # 1) Request generator + generator = RqsGenerator( + id="rqs-1", + avg_active_users={"mean": 120}, # Poisson default + avg_request_per_minute_per_user={"mean": 20}, # MUST be Poisson + user_sampling_window=60, + ) + + # 2) Client + client = Client(id="client-1") + + # 3) Servers with distinct endpoints + ep_srv1 = Endpoint( + endpoint_name="/api", + # include 'probability' if your Endpoint schema supports it + probability=1.0, # remove if your Endpoint doesn't have this field + steps=[ + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.012}}, + ], + ) + srv1 = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[ep_srv1], + ) + + ep_srv2 = Endpoint( + endpoint_name="/api", + probability=1.0, # remove if not supported in your schema + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 96}}, + {"kind": "io_db", "step_operation": {"io_waiting_time": 0.020}}, + ], + ) + srv2 = Server( + id="srv-2", + server_resources={"cpu_cores": 2, "ram_mb": 2048}, + endpoints=[ep_srv2], + ) + + # 4) Load balancer (round_robin) + lb = LoadBalancer( + id="lb-1", + algorithms="round_robin", + server_covered={"srv-1", "srv-2"}, + ) + + # 5) Edges with exponential latency (2–3 ms) + edges = [ + Edge( + id="gen-client", + source="rqs-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-lb", + source="client-1", + target="lb-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="lb-srv1", + source="lb-1", + target="srv-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="lb-srv2", + source="lb-1", + target="srv-2", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="srv1-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="srv2-client", + source="srv-2", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + ] + + # 6) Simulation settings + settings = SimulationSettings( + total_simulation_time=600, + sample_period_s=0.02, + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], + ) + + # 7) Assemble the payload via the builder + flow = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(srv1, srv2) + .add_load_balancer(lb) + .add_edges(*edges) + .add_simulation_settings(settings) + ) + + return flow.build_payload() + + +# ───────────────────────────────────────────────────────────── +# Main entry-point +# ───────────────────────────────────────────────────────────── +def main() -> None: + """ + Build → wire → run the simulation, then print diagnostics and save plots. + """ + env = simpy.Environment() + payload = build_payload_with_lb() + + runner = SimulationRunner(env=env, simulation_input=payload) + results: ResultsAnalyzer = runner.run() + + # Human-friendly diagnostics + print_latency_stats(results) + print_throughput(results) + print_sampled_preview(results) + + # Optional sanity checks (very rough) + run_sanity_checks(runner, results) + + # Save plots (2×2 figure) + try: + from matplotlib import pyplot as plt # noqa: PLC0415 + + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + results.plot_latency_distribution(axes[0, 0]) + results.plot_throughput(axes[0, 1]) + results.plot_server_queues(axes[1, 0]) + results.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + + out_path = Path(__file__).parent / "two_servers.png" + fig.savefig(out_path) + print(f"\n🖼️ Plots saved to: {out_path}") + except Exception as exc: # Matplotlib not installed or plotting failed + print(f"\n[plotting skipped] {exc!r}") + + +if __name__ == "__main__": + main() diff --git a/examples/builder_input/single_server/single_server.png b/examples/builder_input/single_server/single_server.png new file mode 100644 index 0000000000000000000000000000000000000000..f723f7cc694b965502ac94565c7c58c718a6f0f3 GIT binary patch literal 157658 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 z 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

sSSS}vbhzQU@L+8{3Jfuu|2DGfE3)%mL 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 literal 0 HcmV?d00001 diff --git a/examples/single_server_pybuilder.py b/examples/builder_input/single_server/single_server.py similarity index 99% rename from examples/single_server_pybuilder.py rename to examples/builder_input/single_server/single_server.py index cd92121..6088a12 100644 --- a/examples/single_server_pybuilder.py +++ b/examples/builder_input/single_server/single_server.py @@ -283,7 +283,7 @@ def main() -> None: results.plot_ram_usage(axes[1, 1]) fig.tight_layout() - out_path = Path(__file__).parent / "single_server_builder.png" + out_path = Path(__file__).parent / "single_server.png" fig.savefig(out_path) print(f"\n🖼️ Plots saved to: {out_path}") except Exception as exc: # Matplotlib not installed or plotting failed diff --git a/examples/single_server_builder.png b/examples/single_server_builder.png deleted file mode 100644 index 2a4d21e5fdb8b24e6848567a33eb5517c50b50fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166241 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�y0{00 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 PorY}?< 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 E0K43E82|tP diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png deleted file mode 100644 index 20166b05a07e2bae6753b92bcf0d9a7b9c07e8a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162085 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 z 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⪙rlx**k8{$)R%BnRH$2*3jjb*VV^>TUE>&dpCfu zVg6Aly7x^aOWIF`(u3)fV(wE`g8c}#+yPa@SW``X&)l(^CT*Pz+c~SY@)tx94Q93I zg1q?l>{^!-dn*)*ujxE%@oQd}spL}hol`yAhYe3Kki)RMUsqMBsVzaDT7yU7b zTJuAvZqe)3V-55~^-^`w^M=1#FNUQKB+5Ol3J&qrH|ehxaqPFG1{kke1nE+e49&c- z1touHzVzj;e>nr2u=BFCMZm@sy&}CYxY%J6S9U4a(941pz5{=MmTd-Gi@jpXQbl0c zfl{H2tdZoMT}4iy2|-DY;5GxvWpim=S7p`!VUZCH(qz?+_MUiD-{rW?sv~Er_-*VOHezZbItje=NC(Q z)H)p0Eyx+~4d|jB4F?rFP5xSXN6Dih#=%M)tyce>HDN&#D{|WaOH6UYRGhSXD95DO zR|7sap)FX|{i*VK>GZZu^XmS1>{E$e3$vIC0YH)xHx?Cqk6s=*-oH4d*)?)bC+)?Z zPWK0EUU&c$-!iN8P~22|p%4=1!_Jbt#yr>)bz@RwlcZzwnkL?Xi}5ZbG^N7HX@H9W zHqs))fmy>XZ`CP9y6nT}Wf^5;X;`5uy(lK>V5bygi0iVBs_FPbhPr!1>a^NAKW4o6 zm}uOF%g2X0uz-PVrZpZ_^j>94PdXSSeQkmQVSh7r;d zgxwOU{SfG#W_bOH9d!!UIM@1qWDPDZEnTpI?8W(7wn}}vX zK@ovh+Gy(5%Q_)fvCv&jKVQf{?I^XrHN8a8p;OxTwQT>;?4rtcg8W?w?70R}Vb>*r zKUVJXyVi9Fuq49Le$-dfB8;}`Tl%G~q|q-_ko=<+{I0 z^ew*)IC8!=iiMN4Ca|Q@yc6GJ-DngU?KmrP2EG#hiPO5Zi_SnvTWIJ~IYW49D~X$2 z30!_o;)#QRbtBF=YyG;`y7KjsJEa$%6_2DfYekVvOPy1mGdd(IWd{;7M=1ZTPqK7j z^>$+Iz2zZq&O8W!k1k!K;BP*XL!x8PAqf^QAWv`Lb?yn5YISx9f3!8OJRy4c){_5G zqZeVn;>lT4ChMEnwdB6?x^zrCHFa9ueJ#w}owiw^$xOq$tXl7Ux=}8kp0A)~IFnpc z|FLRWp`QPy+Bk*VNK(M04M8~kp+a>WOIY)6EkL%ulLYsR)fK|o(DvTTupD}SS)U4j zI&zSqkgUsA+uwYlOXGApD#%STM-gvxl$82KF5GpHXw=*O7V)wpudf5Kj5kl_W0M%4 zR&rCr?0LYl=c2I}r2K37Su@)2LthdoS+i8H7y3eOoKwFAImNGZztG4`YB3Focv%df z&>1#foc?*7AI*Qo;e0OQ_V#L8d1fbbO9poGXT#&kO0z{znkQ45i%M6#AqWuDQpOJT zr0|n(GlQ|r&nqIQ%#MTzv8`6reu;6f7GKD4@JL^j&WCSt#(uwbhR+G^t2``Vg~898 zKWKcd@rk*sUwO~0AEL%;bo7Br@)=g5k^ocQH8FkqGO9El`{;r4H?8WezfAXf%lBYKjx41xmqAAQtH$EDEz8E+x9;##Lh*&q zydJ@5PpWesHMAL-I8 zKcS}VxmW0D$06QnmcJE8A+QG5z612JTx*@v=kG zTDJJug$iODE_24(jWN`#F-3A%eWx?k*@-*I6iB8U1^WR(`IuaA20l3Br*%yH^w$Mq z*FM&FY>MpCzi;Nuqu%*%J5mnd4sfV7V>eDNrgH^*^}#*}pBOFNxk_IN;S-Vd9N2~1 z);c>mrKEj_Khi%U2ycZz`p!#zszl#UKkzVZmW8(OwK)qcF>^b8)``^??uGgD>f}t!CgPvlnI_Y3EL(G->CX?(EZ8bJ+e* zZ+970RoC_leAANBAZ1X3v>@Cx2+|?lBHbY^APA^5f(S@U7<7X)3L*_6or08vAl>I$ z-p}*i<9W|HW4!0f*&k#K*xR-CTyxENt@{0k9NOG!V_^LRj=~LH;bI*>ML6Adi~?ap z)qa5!(XG~*dAEQfsZ_Y8`li*NyUxgU;|(@ zk^a(`t9n@qpJIm5&Z<}Es7|v-Z4YQ`KSXNS=JiH-cg}n7P#TeyO^B0OGtc182!=Th z7zwSoJ-VW6Gx8UM?;11jB?kd#5ydc_a96>(yHw`FL?7JKUVR4nwP`VdP1r_nL3bK1W^}t@pWE z>#_P2NYE^Bem6ULS)^R-x4s|x>q zAF)j{HYQcaLY35}n;cmb@2(qb;Cb`}&R_k}{QmXHHv=L)l*gzC!1oG+5F!tP@j9xP+!g zDC!n==ti?Kb$z{K$XKqS9A_^X?|Z<8S16}nuOW+PyJQd7m``t?bZwuH6FR0-7H1OL zwI6ik5C|w7KRWcw&-pB0c{LwLDzxpF+JnQc`XBD@zR7bWqP`mYm!8^G>)>pq6|a{t zN*HDb*4Y&Q6>jkwuP`Jiu#0HK>49j~y%Fh-+f)S_aK*do6w}H%_od#cv01h1n+R66 z>{~+_W-Z$+oo5k`cm#FR1-naYE^klDar{DSs3q=H&d1LhO6HtPu|#E>+;4vNGw30G z^TUOgx-Ls;US{w_5%Qo8LQ}$%m2*JoY1G;fDHTqkp=R`O>QwgYKX|OO$C1m-wiu+@ z9ArhC|Z`~lLiV>JF#2H{zcmHay&-`)Y0v;+|knhZ%`#8@~qQUtR zAUxKV+DSUQcZQr4b3xJjTc6;B5Nk8ni;jz)&5Y`1m)i!!h3}V{`c4&P zT=w1cDDlKO3ZFos%qz|?0v|6M^3P(9M;eda zvJS`hLC=H*caxC`hpx84OkqI1&2C_+vS&g=N`e0sT!Eo)Ia=0TN+VZZtX7JVXn)D; z)y++ejLy`!{`mF?33Ykiwt*$?#^LWcWAXDwrMD69Fs~L&YRdBYln439trg0p z*s4CMS33*}i4}}E$s^o-tCtsrMx9$rthl*RMrM~^VBlTDrp$gs!wPDbJnrtTKuf+? zCANbs1hluhc~!CpOp)ho%dMh0Ig}`e!Ya?O9!uxQwY4cLzmDsbSkE4nn1lwT6kj|N z7G2v}&<02Q=7P4f+jduJwBp875t#<8$@| zH-+WK==8<#76V4;KDU%>m*5#_DV)u;GingABr&vk51OL_W$S`}%~>4TSI)a;hPyBd z&9uWEcb17ObFmy^cU>Oca(^VAe`uJ9j{0hhZBx^7z~sau9_A*$*JKeBu*bAIpWtPQI zt7rFc`sq)rL9&DTV{50u#iG9UdMmYgYx{fk-v^9`N1}?|7m0=OpCR`hrBfaY?cXFm zs2LBocz|YKH%;@a&xL1)Z-$;T*yie@;?9MSL|=ssZ&HFYbk_Z0?)jd=+4~P?n4^td z@jBTl8^j}pj)KqgE2Wn&`c(fm4|(7<-|1WbBHqvA^-VcC>=Qw`!m4 zDzCv)z5jYdvq3KGCQa0JPEL8wcf^YBJ0O-otzh=E{AhVWVAzyTQv_ z!}>-KHokaVEEi!CkftCg$r$QtbMo%+!$^pja={}kkzRZ1Rj7NvbeYadOx5LL=$M-j z=XF~wl+ZP+`N;UWN^X4qnxP#bCjqhO{b7+{ltft7!1`K7zIW2*w9YTn9-2}z-D%?MGUIsG9K|4%jX*!#waPG0jMNcDZ%djo1g9%rl}&hdHI~ z7LVbS{k^wvx=fI@!^zs*BjTASjiHN8;wU=Q*G^q0+EaW*S`VD&UJ& z;?f$&#|P}kT@&k7xs#kfGk;Fx-B!ne{`KfbUF7qs(4vonPyYv;Xj zO^$m+SidIv_6S{B_{&Lh9j)V6b$W9@*^7arlYp&w%b<~m$89V^gofgm8F%!!JU?B| zDnA~ByM3eE`%;`e-D7^o2TZ@peDrek5^C}e!z5Sb15xp3#0EIpZvHa{xU7?RG~6o7 zz6_UHg^dpKIyQVmTg@dZk&cLclQ@}hKC*JA$LjHp!BK14XjQ#^o{ZtJZum@>tJ_|yM6+8_VKwb1S4>JL1N}M<8@4MJZlxAE z@mAe&U-S~@vIO0rvRTw*jX<2NcBMlgV}@_QYky0f+7i8&<`o*`W2M&R@-a#a zCwLu}GIyEhv|d`o9c4diVp)jL7jjY!@ARr1<2avJHKwvV#SL|&?9@w+BVT~;!&SfFW;e|#0`BM|J3uJ^mR`C=#9@@AaF!paCA27JAahx>I?*kQu3I_`EqjGGecusyq!UZ!Ov5F2#)_w9Gj zS{t$78~Ki3_QJAjs#^A8^J#UD>hBLzE@Ls4nwOWN^LM-nyRFJ6j#C{%jeb4rjnYKN zcA&|{a&pXgY2mAqM(cZdN#4z$du_z7?iSa`Awy5r@8) zocbJY)vfFHwmCMqtvqF96{z56STCC@Uh1I@Nq@?uK$Z4uCHYY!rozgaAKqWCbC@7F z1r6ovnm41YvnB&Tq0|Gb3;ge;suN8$u_wSajN6MKS&wFBoA;i#2>#vYGPaU_)y%6D^)KIe7N(4DMi7Z~*&i+Cplt=J0a-3b%svw#Cv4SWnEV$z&yWCTK0K&)yKL^^j>&X)4hW)V>6&G8l`xZWa$ZJ>X3zL zLlL)XIu2319nY<8YGED6)}|X=w__Z{eygRm^c}UA%CALf533%itUb|ncg|MtYb{jBJp zk}`>OqEHKWNKQK`%?bg@;umo(clzt8RznEodzxkb<_$B$R|GV;t~8mxZyZzLM6jHW z0sFMLJwBdgyApN5OvJbFPX~kjmvn#L`cCypp5sQDHq+O;PhH2E52l5QPx;sfrs}c! zUPc8CSdxFHt>{u`5@AU$XD1 zW1`*)^h*X^n5CE!p{A*(m!Q4#y{+>G4}txC3M}__6Xj6D$kkRV7uh)ziwN0K+m26d z2@)>yc0mWNOp&~2p>Qgxbg&;If1dmEn?V|P+bh!S;*l43xaYM`Em8~luW9Esx8$VP z$d*$(#}l>kveBx%V4^D|?&nr&t^GOj!klORwk@`>J<+`3>J@kLXj5||H3!97>bY0J z^5l^=EaX=Oi|ERu5*bPE_&FyLamq~Ie?)y-Gx~dA72)1zkLH(4O>)(FyLz0SAB|Rt z>Ee@3O`}7#Ssjlb7PS0&M;uooP$VLpVI1l)yl0ck);yG~T_aydrb}yWmhuf7)z53( z`kfEW$CWvWRWzEaNAQZSCc3=_W2ohmKrROQf@2r{BCJl8YkPQwTX!e%g$it+X5`|R zwtpjzp?=gHzkU9UUgHKqH_1RxJt0Q7{bphn1?9>!jG(~aT=ZToG%MU1t-ZtITVl`kj55D*zqaU;&4acb+zO`N6axhzk?&MWG4 zLs15!_fqoQs1N-aw-Xwr;^|hx3VY;mQ5$xtnEU&`4#p1xMmcY_YrnDP;ae9fdVhi^ z@&un}!jJiDuExpWCPfj+qxPGNhW7(;wT}oYcrMF)5XZ@nlQXj+!+mvE{<5yVewd-t z2P_cxK|CR>m!>EAdm6VJ;GH;>s3;B5X2s%Hjqhh6ynYLPRTZ~}M=r>k){%W>wP@ZL|0UnOhp-el@HRH=g>TNz|F#}|DY7n z^;>4Ar^>&0;|8Tm9v*f4jql%lOuzFI_R?Tg$S0VRphaLVS4uWc}yRLCB4m;#q40{x*y_?Keh=eDTvw-Y8azp&7SbCj-EUpQE=2{a*Oj!$_^v=TSJ zOG*0}+T^Ysy1`q;Q6JUdNlaWZ+Hf8NtO5z<%x(_TJ8JlRM$>~5cv$2qn3CuO2DsLd z=zEm-%ZZ%#C96W`U!pgP$|>Fmh?pL7ghMUHf3P(S;;1j>Ap+R4+=khlPj}z zpA0P8l&Ht`LhfQJ>lnWBqQbX%!T!CN4~=R`v0u0NhGO&EV*z63**$z2J?07fJ{44> zL{`feQ4;@hrgop2EOp5jGPpR3SV(90Pb)~O;wAckOS)m_>|uo8r-hcHicg)y_*yvO z$-QX2QE!9bUP2~hqu*rU(Y?H?x>DshE}`Zr(ueo10_9)E#KBG8ípV;+%g?+*| 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 KnIdV^p#KF+T<~-N diff --git a/examples/single_server_yml.png b/examples/single_server_yml.png deleted file mode 100644 index 76c21154dc9eed6dfb7d453c1e103dc40e659502..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166693 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 QLcv2%%SiL_Hk*L|1;`QnZU6uP literal 0 HcmV?d00001 diff --git a/examples/yaml_input/load_balancer/two_servers.py b/examples/yaml_input/load_balancer/two_servers.py new file mode 100644 index 0000000..afc4408 --- /dev/null +++ b/examples/yaml_input/load_balancer/two_servers.py @@ -0,0 +1,283 @@ +#!/usr/bin/env python3 +""" +Run an AsyncFlow scenario with a Load Balancer (2 servers) from YAML and print diagnostics. + +What it does: +- Loads the simulation payload from YAML via `SimulationRunner.from_yaml`. +- Runs the simulation. +- Prints latency stats, 1s-bucket throughput, and a preview of sampled metrics. +- Saves four plots (latency histogram, throughput, server queues, RAM). +- Performs sanity checks (expected vs observed) with simple LB-aware heuristics. + +Usage: + python src/app/example/run_lb_from_yaml.py \ + --yaml src/app/example/data/two_servers_lb.yml +""" + +from __future__ import annotations + +from argparse import ArgumentParser +from pathlib import Path +from typing import Dict, Iterable, List, Mapping, Tuple + +import matplotlib.pyplot as plt +import numpy as np +import simpy + +from asyncflow.config.constants import ( # only for basic step-kind/ops inspection + EndpointStepCPU, + EndpointStepIO, + EndpointStepRAM, + LatencyKey, + StepOperation, +) +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner + + +# ───────────────────────────────────────────────────────────── +# Pretty printers (same style as your single-server script) +# ───────────────────────────────────────────────────────────── +def print_latency_stats(res: ResultsAnalyzer) -> None: + """Print latency statistics returned by the analyzer.""" + stats: Mapping[LatencyKey, float] = res.get_latency_stats() + print("\n════════ LATENCY STATS ════════") + if not stats: + print("(empty)") + return + + order: List[LatencyKey] = [ + LatencyKey.TOTAL_REQUESTS, + LatencyKey.MEAN, + LatencyKey.MEDIAN, + LatencyKey.STD_DEV, + LatencyKey.P95, + LatencyKey.P99, + LatencyKey.MIN, + LatencyKey.MAX, + ] + for key in order: + if key in stats: + print(f"{key.name:<20} = {stats[key]:.6f}") + + +def print_throughput(res: ResultsAnalyzer) -> None: + """Print 1-second throughput buckets.""" + timestamps, rps = res.get_throughput_series() + print("\n════════ THROUGHPUT (req/sec) ════════") + if not timestamps: + print("(empty)") + return + + for t, rate in zip(timestamps, rps): + print(f"t={t:4.1f}s → {rate:6.2f} rps") + + +def print_sampled_preview(res: ResultsAnalyzer) -> None: + """Print first 5 samples of each sampled metric series.""" + sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() + print("\n════════ SAMPLED METRICS ════════") + if not sampled: + print("(empty)") + return + + for metric, series in sampled.items(): + print(f"\n📈 {metric}:") + for entity, vals in series.items(): + head = list(vals[:5]) if vals else [] + print(f" - {entity}: len={len(vals)}, first={head}") + + +# ───────────────────────────────────────────────────────────── +# Plotting +# ───────────────────────────────────────────────────────────── +def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: + """Generate the 2x2 plot figure and save it to `out_path`.""" + fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + res.plot_latency_distribution(axes[0, 0]) + res.plot_throughput(axes[0, 1]) + res.plot_server_queues(axes[1, 0]) + res.plot_ram_usage(axes[1, 1]) + fig.tight_layout() + fig.savefig(out_path) + print(f"\n🖼️ Plots saved to: {out_path}") + + +# ───────────────────────────────────────────────────────────── +# Sanity checks (LB-aware, still rough) +# ───────────────────────────────────────────────────────────── + +def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: + """ + Sanity checks LB-aware (round-robin): observed vs expected + """ + from asyncflow.config.constants import ( + EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation, LatencyKey + ) + import numpy as np + + def _mean(arr): + a = np.asarray(list(arr), dtype=float) + return float(a.mean()) if a.size else 0.0 + + # 1) λ + w = runner.simulation_input.rqs_input + lam = float(w.avg_active_users.mean) * float(w.avg_request_per_minute_per_user.mean) / 60.0 + + topo = runner.simulation_input.topology_graph + servers = {s.id: s for s in topo.nodes.servers} + client_id = topo.nodes.client.id + lb = topo.nodes.load_balancer + lb_id = lb.id if lb else None + gen_id = runner.simulation_input.rqs_input.id + + # 2) LB (round_robin -> 1/N) + if lb and lb.server_covered: + covered = [sid for sid in lb.server_covered if sid in servers] + N = max(1, len(covered)) + shares = {sid: 1.0 / N for sid in covered} + else: + only = next(iter(servers.keys())) + shares = {only: 1.0} + + # 3) endpoint totals per server + def endpoint_totals(server): + cpu_s = io_s = ram_mb = 0.0 + for ep in getattr(server, "endpoints", []) or []: + prob = getattr(ep, "probability", 1.0) + for step in ep.steps: + k = step.kind + op = step.step_operation + if isinstance(k, EndpointStepCPU): + cpu_s += prob * float(op[StepOperation.CPU_TIME]) + elif isinstance(k, EndpointStepIO): + io_s += prob * float(op[StepOperation.IO_WAITING_TIME]) + elif isinstance(k, EndpointStepRAM): + ram_mb += prob * float(op[StepOperation.NECESSARY_RAM]) + return cpu_s, io_s, ram_mb + + per_srv = {sid: endpoint_totals(srv) for sid, srv in servers.items()} + + # 4) mappa latencies of edges per role (source,target) + mean_gen_client = 0.0; id_gen_client = None + mean_client_lb = 0.0; id_client_lb = None + mean_lb_srv = {} # sid -> mean + mean_srv_client = {} # sid -> mean + id_lb_srv = {} # sid -> edge_id + id_srv_client = {} # sid -> edge_id + + for e in topo.edges: + s, t, mu = e.source, e.target, float(e.latency.mean) + if s == gen_id and t == client_id: + mean_gen_client = mu; id_gen_client = e.id + elif s == client_id and lb_id and t == lb_id: + mean_client_lb = mu; id_client_lb = e.id + elif lb_id and s == lb_id and t in servers: + mean_lb_srv[t] = mu; id_lb_srv[t] = e.id + elif s in servers and t == client_id: + mean_srv_client[s] = mu; id_srv_client[s] = e.id + + # 5) expected: average latencies + cpu_exp = sum(shares[sid] * per_srv[sid][0] for sid in shares) + io_exp = sum(shares[sid] * per_srv[sid][1] for sid in shares) + net_exp = ( + mean_gen_client + mean_client_lb + + sum(shares[sid] * (mean_lb_srv.get(sid, 0.0) + mean_srv_client.get(sid, 0.0)) for sid in shares) + ) + latency_expected = cpu_exp + io_exp + net_exp + + # 6) observed: throughput & latencies + stats = res.get_latency_stats() + latency_observed = float(stats.get(LatencyKey.MEAN, 0.0)) + _, rps_series = res.get_throughput_series() + rps_observed = _mean(rps_series) + + # 7) expected: RAM e I/O queue as a sum over server + ram_expected = sum((shares[sid] * lam) * (per_srv[sid][0] + per_srv[sid][1]) * per_srv[sid][2] for sid in shares) + ioq_expected = sum((shares[sid] * lam) * per_srv[sid][1] for sid in shares) + + # 8) observed: RAM (sum) and I/O queue sum + sampled = res.get_sampled_metrics() + ram_series = sampled.get("ram_in_use", {}) + ioq_series = sampled.get("event_loop_io_sleep", {}) + ram_observed = sum(_mean(vals) for vals in ram_series.values()) if ram_series else 0.0 + ioq_observed = sum(_mean(vals) for vals in ioq_series.values()) if ioq_series else 0.0 + + # 9) print + REL_TOL = 0.30 + def tick(label, exp, obs): + delta = (abs(obs - exp) / abs(exp)) if exp else 0.0 + icon = "✓" if delta <= REL_TOL else "⚠" + print(f"{icon} {label:<28} expected≈{exp:.3f} observed={obs:.3f} Δ={delta*100:.1f}%") + + print("\n════════ SANITY CHECKS (LB-aware) ════════") + tick("Mean throughput (rps)", lam, rps_observed) + tick("Mean latency (s)", latency_expected, latency_observed) + tick("Mean RAM (MB)", ram_expected, ram_observed) + tick("Mean I/O queue", ioq_expected, ioq_observed) + + # 10) Edge concurrency estimation + edge_conc = sampled.get("edge_concurrent_connection", {}) + if edge_conc: + print("\n— Edge concurrency (LB-aware) —") + means_obs = {eid: _mean(vals) for eid, vals in edge_conc.items()} + + if id_gen_client: + tick(f"edge {id_gen_client}", lam * mean_gen_client, means_obs.get(id_gen_client, 0.0)) + if id_client_lb: + tick(f"edge {id_client_lb}", lam * mean_client_lb, means_obs.get(id_client_lb, 0.0)) + + for sid, p in shares.items(): + lam_i = p * lam + eid = id_lb_srv.get(sid) + if eid: + tick(f"edge {eid}", lam_i * mean_lb_srv.get(sid, 0.0), means_obs.get(eid, 0.0)) + eid = id_srv_client.get(sid) + if eid: + tick(f"edge {eid}", lam_i * mean_srv_client.get(sid, 0.0), means_obs.get(eid, 0.0)) + + # Extra + print("\n— Diagnostics —") + print("λ={:.3f} rps | E[cpu]={:.3f}s E[io]={:.3f}s E[net]≈{:.3f}s | E[RAM/req]={:.1f} MB" + .format(lam, cpu_exp, io_exp, net_exp, sum(shares[sid]*per_srv[sid][2] for sid in shares))) + + + +# ───────────────────────────────────────────────────────────── +# Main +# ───────────────────────────────────────────────────────────── +def main() -> None: + """Parse args, run simulation, print/plot, sanity-check (LB topology).""" + parser = ArgumentParser(description="Run AsyncFlow LB scenario from YAML and print outputs + sanity checks.") + parser.add_argument( + "--yaml", + type=Path, + default=Path(__file__).parent.parent / "data" / "two_servers_lb.yml", + help="Path to the simulation YAML file.", + ) + parser.add_argument( + "--out", + type=Path, + default=Path(__file__).parent / "two_servers.png", + help="Path to the output image (plots).", + ) + args = parser.parse_args() + + yaml_path: Path = args.yaml + if not yaml_path.exists(): + raise FileNotFoundError(f"YAML not found: {yaml_path}") + + env = simpy.Environment() + runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) + results: ResultsAnalyzer = runner.run() + + print_latency_stats(results) + print_throughput(results) + print_sampled_preview(results) + + run_sanity_checks(runner, results) + save_all_plots(results, args.out) + + +if __name__ == "__main__": + main() diff --git a/examples/yaml_input/single_server/single_server.png b/examples/yaml_input/single_server/single_server.png new file mode 100644 index 0000000000000000000000000000000000000000..c03f9b2de87af82624bf5ec9c58f3fc78c31e44d GIT binary patch literal 155288 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

kgc-zopSQ9HS$p` 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 None: parser.add_argument( "--yaml", type=Path, - default=Path(__file__).parent / "data" /"single_server.yml", + default=Path(__file__).parent.parent / "data" /"single_server.yml", help="Path to the simulation YAML file.", ) parser.add_argument( "--out", type=Path, - default=Path(__file__).parent / "single_server_yml.png", + default=Path(__file__).parent / "single_server.png", help="Path to the output image (plots).", ) args = parser.parse_args() diff --git a/examples/your_example.py b/examples/yaml_input/your_example.py similarity index 100% rename from examples/your_example.py rename to examples/yaml_input/your_example.py diff --git a/pyproject.toml b/pyproject.toml index 1348af6..6566c84 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,14 +1,41 @@ [tool.poetry] -name = "AsyncFlow" +name = "asyncflow-simulator" version = "0.1.0" -description = "Simulate distributed system for what if analysis for the capacity planning" +description = "Digital-twin simulator for distributed async systems. Build what-if scenarios and quantify capacity, latency and throughput offline—before you deploy." authors = ["Gioele Botta"] readme = "README.md" - +license = "MIT" packages = [ { include = "asyncflow", from = "src" } ] +include = ["LICENSE", "src/asyncflow/py.typed"] +exclude = ["tests", "docs", "scripts", ".github", "alembic"] + +# Better pypi discovery +keywords = [ + "simulation", "simpy", "asyncio", "capacity-planning", "performance", + "fastapi", "uvicorn", "distributed-systems", "queuing-theory" +] + +homepage = "https://github.com//AsyncFlow-Simulator" # TO COMPLETE +repository = "https://github.com//AsyncFlow-Simulator" # TO COMPLETE +documentation = "https://github.com//AsyncFlow-Simulator/tree/main/docs" # TO COMPLETE + +classifiers = [ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Intended Audience :: Science/Research", + "Topic :: Scientific/Engineering :: Simulation", + "Topic :: System :: Distributed Computing", + "Topic :: Software Development :: Testing", + "Topic :: System :: Benchmark", + "License :: OSI Approved :: MIT License", + "Programming Language :: Python :: 3.12", + "Typing :: Typed", + "Operating System :: OS Independent", +] + [tool.poetry.dependencies] python = "^3.12" pydantic-settings = "^2.10.1" @@ -96,4 +123,4 @@ ignore_missing_imports = true warn_unused_ignores = true show_error_codes = true pretty = true -exclude = ["^alembic/", "^.venv/"] +exclude = ["^.venv/"] diff --git a/src/asyncflow/__init__.py b/src/asyncflow/__init__.py index 5bdbdea..0f38c83 100644 --- a/src/asyncflow/__init__.py +++ b/src/asyncflow/__init__.py @@ -4,4 +4,4 @@ from asyncflow.builder.asyncflow_builder import AsyncFlow from asyncflow.runtime.simulation_runner import SimulationRunner -__all__ = ["AsyncFlow", "SimulationRunner"] +__all__ = ["AsyncFlow", "SimulationRunner"] diff --git a/src/asyncflow/analysis/__init__.py b/src/asyncflow/analysis/__init__.py new file mode 100644 index 0000000..825de6e --- /dev/null +++ b/src/asyncflow/analysis/__init__.py @@ -0,0 +1,5 @@ +"""Public module exposing the results analyzer""" + +from asyncflow.metrics.analyzer import ResultsAnalyzer + +__all__ = ["ResultsAnalyzer"] diff --git a/src/asyncflow/metrics/analyzer.py b/src/asyncflow/metrics/analyzer.py index 35b43bb..16448bc 100644 --- a/src/asyncflow/metrics/analyzer.py +++ b/src/asyncflow/metrics/analyzer.py @@ -193,8 +193,8 @@ def plot_throughput(self, ax: Axes) -> None: def plot_server_queues(self, ax: Axes) -> None: """Plot the server queues""" metrics = self.get_sampled_metrics() - ready = metrics.get(SampledMetricName.READY_QUEUE_LEN, {}) - io_q = metrics.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) + ready = metrics.get(SampledMetricName.READY_QUEUE_LEN.value, {}) + io_q = metrics.get(SampledMetricName.EVENT_LOOP_IO_SLEEP.value, {}) if not (ready or io_q): ax.text(0.5, 0.5, SERVER_QUEUES_PLOT.no_data, ha="center", va="center") @@ -219,7 +219,7 @@ def plot_server_queues(self, ax: Axes) -> None: def plot_ram_usage(self, ax: Axes) -> None: """Plot the ram usage""" metrics = self.get_sampled_metrics() - ram = metrics.get(SampledMetricName.RAM_IN_USE, {}) + ram = metrics.get(SampledMetricName.RAM_IN_USE.value, {}) if not ram: ax.text(0.5, 0.5, RAM_PLOT.no_data, ha="center", va="center") diff --git a/src/asyncflow/py.typed b/src/asyncflow/py.typed new file mode 100644 index 0000000..e69de29 From d77415ef346e381f78f830f3d6ce22f56e357d07 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Fri, 15 Aug 2025 18:36:16 +0200 Subject: [PATCH 32/35] sanity ci check --- docs/guides/builder.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/builder.md b/docs/guides/builder.md index e90fe22..2a99daf 100644 --- a/docs/guides/builder.md +++ b/docs/guides/builder.md @@ -9,7 +9,7 @@ Under the hood, the builder assembles a single `SimulationPayload`: ```python SimulationPayload( rqs_input=RqsGenerator(...), # traffic generator (workload) - topology_graph=TopologyGraph(...), # system architecture as a graph + topology_graph=TopologyGraph(...), # system as a graph sim_settings=SimulationSettings(...), # global settings and metrics ) ``` From de52d0479e7ee877e7deae315b3d162d68faab66 Mon Sep 17 00:00:00 2001 From: Gioele Botta <157820569+GioeleB00@users.noreply.github.com> Date: Sun, 17 Aug 2025 17:43:25 +0200 Subject: [PATCH 33/35] Ci for main (#16) * Readme final, docs improved * Docs improvement, refactor analyzer, example added * Added scripts for setup, added pytest, improved readme * Example LB improvements * CI for main + system tests --- .github/workflows/ci-develop.yml | 91 +--- .github/workflows/ci-main.yml | 0 README.md | 495 +++++++++-------- docs/api/analyzer.md | 208 ++++++++ docs/guides/{builder.md => python-builder.md} | 0 ...load-samplers.md => requests-generator.md} | 0 .../load_balancer/lb_dashboard.png | Bin 0 -> 256871 bytes .../load_balancer/lb_server_srv-1_metrics.png | Bin 0 -> 129889 bytes .../load_balancer/lb_server_srv-2_metrics.png | Bin 0 -> 131498 bytes .../load_balancer/two_servers.png | Bin 142265 -> 0 bytes .../load_balancer/two_servers.py | 310 ++++------- .../single_server/builder_service_plots.png | Bin 0 -> 313774 bytes .../single_server/single_server.png | Bin 157658 -> 0 bytes .../single_server/single_server.py | 307 +++-------- examples/yaml_input/data/two_servers_lb.yml | 127 ++--- examples/yaml_input/lb_dashboard.png | Bin 0 -> 272830 bytes .../yaml_input/lb_server_srv-1_metrics.png | Bin 0 -> 112721 bytes .../yaml_input/lb_server_srv-2_metrics.png | Bin 0 -> 115895 bytes .../yaml_input/load_balancer/two_servers.png | Bin 153719 -> 0 bytes .../yaml_input/load_balancer/two_servers.py | 309 ++--------- .../single_server/single_server.png | Bin 155288 -> 0 bytes .../yaml_input/single_server/single_server.py | 340 +++--------- .../single_server_results_dashboard.png | Bin 0 -> 161480 bytes .../single_server_results_io_queue_srv-1.png | Bin 0 -> 52755 bytes .../single_server_results_ram_srv-1.png | Bin 0 -> 56702 bytes ...ingle_server_results_ready_queue_srv-1.png | Bin 0 -> 61628 bytes examples/yaml_input/your_example.py | 54 -- poetry.lock | 319 +++++------ pyproject.toml | 10 +- pytest.ini | 5 +- readme_img/topology.png | Bin 0 -> 2285328 bytes scripts/dev_setup.ps1 | 176 ++++++ scripts/dev_setup.sh | 135 +++++ scripts/quality_check.ps1 | 14 + .../{quality-check.sh => quality_check.sh} | 1 - scripts/run_sys_tests.ps1 | 55 ++ scripts/run_sys_tests.sh | 42 ++ scripts/run_tests.ps1 | 39 ++ scripts/run_tests.sh | 34 ++ simulation_base.png | Bin 0 -> 123625 bytes src/asyncflow/components/__init__.py | 2 +- src/asyncflow/metrics/analyzer.py | 503 +++++++++++++++--- ...le_server.py => test_int_single_server.py} | 0 tests/system/test_sys_lb_two_servers.py | 180 +++++++ tests/system/test_sys_single_server.py | 136 +++++ tests/unit/metrics/test_analyzer.py | 260 ++++++--- tests/unit/public_api/test_import.py | 86 +++ 47 files changed, 2552 insertions(+), 1686 deletions(-) create mode 100644 .github/workflows/ci-main.yml create mode 100644 docs/api/analyzer.md rename docs/guides/{builder.md => python-builder.md} (100%) rename docs/internals/{workload-samplers.md => requests-generator.md} (100%) create mode 100644 examples/builder_input/load_balancer/lb_dashboard.png create mode 100644 examples/builder_input/load_balancer/lb_server_srv-1_metrics.png create mode 100644 examples/builder_input/load_balancer/lb_server_srv-2_metrics.png delete mode 100644 examples/builder_input/load_balancer/two_servers.png create mode 100644 examples/builder_input/single_server/builder_service_plots.png delete mode 100644 examples/builder_input/single_server/single_server.png create mode 100644 examples/yaml_input/lb_dashboard.png create mode 100644 examples/yaml_input/lb_server_srv-1_metrics.png create mode 100644 examples/yaml_input/lb_server_srv-2_metrics.png delete mode 100644 examples/yaml_input/load_balancer/two_servers.png delete mode 100644 examples/yaml_input/single_server/single_server.png create mode 100644 examples/yaml_input/single_server/single_server_results_dashboard.png create mode 100644 examples/yaml_input/single_server/single_server_results_io_queue_srv-1.png create mode 100644 examples/yaml_input/single_server/single_server_results_ram_srv-1.png create mode 100644 examples/yaml_input/single_server/single_server_results_ready_queue_srv-1.png delete mode 100644 examples/yaml_input/your_example.py create mode 100644 readme_img/topology.png create mode 100644 scripts/dev_setup.ps1 create mode 100644 scripts/dev_setup.sh create mode 100644 scripts/quality_check.ps1 rename scripts/{quality-check.sh => quality_check.sh} (92%) create mode 100644 scripts/run_sys_tests.ps1 create mode 100644 scripts/run_sys_tests.sh create mode 100644 scripts/run_tests.ps1 create mode 100644 scripts/run_tests.sh create mode 100644 simulation_base.png rename tests/integration/single_server/{test_single_server.py => test_int_single_server.py} (100%) create mode 100644 tests/system/test_sys_lb_two_servers.py create mode 100644 tests/system/test_sys_single_server.py create mode 100644 tests/unit/public_api/test_import.py diff --git a/.github/workflows/ci-develop.yml b/.github/workflows/ci-develop.yml index 9727868..0f82cfd 100644 --- a/.github/workflows/ci-develop.yml +++ b/.github/workflows/ci-develop.yml @@ -1,100 +1,51 @@ -name: CI – Develop Branch - - -# Triggers -# -------- -# • pull_request → quick job (lint + type-check + unit tests) -# • push → full job (quick job + DB migrations + integration tests + -# Docker build & smoke test) +name: CI – Main Branch (Single Job, System Required) on: pull_request: - branches: [develop] - push: - branches: [develop] + branches: [main] + workflow_dispatch: +concurrency: + group: ci-main-${{ github.ref }} + cancel-in-progress: true -# Job 1 ─ Quick validation (executed only on pull_request events) -# --------------------------------------------------------------------------- # -# Runs fast checks that give reviewers immediate feedback. No external -# services or Docker are used to keep runtime under one minute. +env: + PYTHON_VERSION: "3.12" + MPLBACKEND: Agg + ASYNCFLOW_RUN_SYSTEM_TESTS: "1" jobs: - quick: - if: github.event_name == 'pull_request' + all-checks: runs-on: ubuntu-latest + timeout-minutes: 25 steps: - # Checkout repository - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - # Install Python 3.12 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: ${{ env.PYTHON_VERSION }} + cache: 'pip' - # Restore Poetry cache for faster installs - uses: actions/cache@v3 with: path: ~/.cache/pypoetry key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} - # Install project + development dependencies - - name: Install dependencies + - name: Install Poetry & deps run: | curl -sSL https://install.python-poetry.org | python3 - + export PATH="$HOME/.local/bin:$PATH" poetry config virtualenvs.create false poetry install --with dev --no-interaction - # Code quality gates - - name: Run Ruff (lint & formatting check) + - name: Ruff (lint) run: poetry run ruff check src tests - - name: Run MyPy (type-check) + - name: MyPy (type-check) run: poetry run mypy src tests - - # Unit-tests only (exclude integration markers) - - name: Run unit tests - env: - ENVIRONMENT: test - run: poetry run pytest -m "not integration" --disable-warnings - - - -# Job 2 ─ Full validation (executed only on push events) - full: - if: | - github.event_name == 'push' && - github.ref == 'refs/heads/develop' - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-python@v4 - with: { python-version: '3.12' } - - uses: actions/cache@v3 - with: - path: ~/.cache/pypoetry - key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} - - name: Install dependencies - run: | - curl -sSL https://install.python-poetry.org | python3 - - poetry config virtualenvs.create false - poetry install --with dev --no-interaction - - - name: Run Ruff - run: poetry run ruff check src tests - - - name: Run mypy - run: poetry run mypy src - - - name: Run all tests + - name: All tests (unit + integration + system) run: | poetry run pytest \ - --cov=src --cov-report=term \ --disable-warnings - - - - \ No newline at end of file diff --git a/.github/workflows/ci-main.yml b/.github/workflows/ci-main.yml new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md index 2005eea..fca1fce 100644 --- a/README.md +++ b/README.md @@ -1,149 +1,98 @@ -# **AsyncFlow – Event-Loop Aware Simulation for Backend Systems** -## **1. Overview** +# AsyncFlow — Event-Loop Aware Simulator for Async Distributed Systems -Modern asynchronous Python stacks such as **FastAPI + Uvicorn** deliver impressive performance, yet capacity planning for production workloads often relies on guesswork, costly cloud-based load tests, or late-stage troubleshooting. +Created and maintained by @GioeleB00. -**AsyncFlow** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. +[![PyPI](https://img.shields.io/pypi/v/asyncflow-sim)](https://pypi.org/project/asyncflow-sim/) +[![Python](https://img.shields.io/pypi/pyversions/asyncflow-sim)](https://pypi.org/project/asyncflow-sim/) +[![License](https://img.shields.io/github/license/AsyncFlow-Sim/AsyncFlow)](LICENSE) +[![Status](https://img.shields.io/badge/status-v0.1.0alpha-orange)](#) +[![Ruff](https://img.shields.io/badge/lint-ruff-informational)](https://github.com/astral-sh/ruff) +[![Typing](https://img.shields.io/badge/typing-mypy-blueviolet)](https://mypy-lang.org/) +[![Tests](https://img.shields.io/badge/tests-pytest-6DA55F)](https://docs.pytest.org/) +[![SimPy](https://img.shields.io/badge/built%20with-SimPy-1f425f)](https://simpy.readthedocs.io/) -AsyncFlow allows you to answer questions such as: +----- -* *What happens to p95 latency if traffic doubles during a peak event?* -* *How many cores are required to maintain SLAs at scale?* -* *What is the cost-per-request of adding a large language model (LLM) inference step?* +AsyncFlow is a discrete-event simulator for modeling and analyzing the performance of asynchronous, distributed backend systems built with SimPy. You describe your system's topology—its servers, network links, and load balancers—and AsyncFlow simulates the entire lifecycle of requests as they move through it. -The simulation outputs metrics identical in form to those collected in production—such as p50/p95/p99 latency, concurrency, resource utilisation, and throughput—making results directly actionable. +It provides a **digital twin** of your service, modeling not just the high-level architecture but also the low-level behavior of each server's **event loop**, including explicit **CPU work**, **RAM residency**, and **I/O waits**. This allows you to run realistic "what-if" scenarios that behave like production systems rather than toy benchmarks. -**Outcome:** Data-driven capacity planning, early performance tuning, and reduced operational surprises. +### What Problem Does It Solve? ---- - -## **2. Key Features** - -* **Event-loop accuracy** – Models a single-threaded asynchronous runtime, including CPU-bound work, I/O waits, and parsing. -* **Resource modelling** – Simulates CPU cores, memory, connection pools, and rate limiters as discrete resources. -* **Network simulation** – Models transport latency per edge in the system topology. -* **Workload flexibility** – Supports stochastic arrival processes (e.g., Poisson, Normal) for user traffic generation. -* **Metrics parity with production** – Produces time-series and event-level metrics aligned with observability tools. -* **Offline and repeatable** – No need for costly cloud infrastructure to conduct performance tests. - ---- - -## **3. Installation** +Modern async stacks like FastAPI are incredibly performant, but predicting their behavior under real-world load is difficult. Capacity planning often relies on guesswork, expensive cloud-based load tests, or discovering bottlenecks only after a production failure. AsyncFlow is designed to replace that uncertainty with **data-driven forecasting**, allowing you to understand how your system will perform before you deploy a single line of code. -Until published, clone the repository and install in editable mode: - -### Requirements -- Python 3.11+ (recommended 3.12) -- Poetry ≥ 1.6 +### How Does It Work? An Example Topology -AsyncFlow uses [Poetry](https://python-poetry.org/) for dependency management. -If you do not have Poetry installed, follow these steps. +AsyncFlow models your system as a directed graph of interconnected components. A typical setup might look like this: -### 3.1 Install Poetry (official method) +![Topology at a glance](readme_img/topology.png) -**Linux / macOS** +### What Questions Can It Answer? -```bash -curl -sSL https://install.python-poetry.org | python3 - -``` - -**Windows (PowerShell)** - -```powershell -(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python - -``` - -> **Note:** Ensure that Poetry’s binary directory is in your `PATH`. -> On Linux/macOS this is typically `~/.local/bin`; -> on Windows it is `%APPDATA%\Python\Scripts` or the path printed at the end of installation. +By running simulations on your defined topology, you can get quantitative answers to critical engineering questions, such as: + * How does **p95 latency** change if active users increase from 100 to 200? + * What is the impact on the system if the **client-to-server network latency** increases by 3ms? + * Will a specific API endpoint—with a pipeline of parsing, RAM allocation, and database I/O—hold its **SLA at a load of 40 requests per second**? --- -### 3.2 Clone the repository and set up a local virtual environment - -```bash -# Clone the repository -git clone https://github.com/GioeleB00/AsyncFlow-Backend.git -cd AsyncFlow-Backend - -# Configure Poetry to always create a local `.venv` inside the project -poetry config virtualenvs.in-project true - -# Install all dependencies (main + dev) inside the local venv -poetry install --with dev -``` - -After this step, you will see a `.venv/` directory inside the project root. -To activate the environment manually: +## Installation -```bash -source .venv/bin/activate # Linux / macOS -.venv\Scripts\activate # Windows -``` +Install from PyPI: `pip install asyncflow-sim` -Or simply run commands via Poetry without manual activation, for example: -```bash -poetry run pytest -poetry run python examples/single_server.py -``` +## Requirements +* **Python 3.12+** (tested on 3.12, 3.13) +* **OS:** Linux, macOS, or Windows +* **Installed automatically (runtime deps):** + **SimPy** (DES engine), **NumPy**, **Matplotlib**, **Pydantic** + **pydantic-settings**, **PyYAML**. --- -## **4. Quick Start** +## Quick Start -### 1. Define your simulation payload +### 1) Define a realistic YAML -Go to the folder `/examples` open the file `single_server.py` -and run it from the terminal, you will see the output of the system -described in `/examples/data/single_server.yml` and you will see a -`.png` file with different plots. +Save as `my_service.yml`. -If you want to build your own configuration, read the guide in the `/docs` folder on how to craft a `.yml` input correctly. +The full YAML schema is explained in `docs/guides/yaml-input-builder.md` and validated by Pydantic models (see `docs/internals/simulation-input.md`). ```yaml rqs_input: id: generator-1 - avg_active_users: - mean: 100 - distribution: poisson - avg_request_per_minute_per_user: - mean: 20 - distribution: poisson + avg_active_users: { mean: 100, distribution: poisson } + avg_request_per_minute_per_user: { mean: 20, distribution: poisson } user_sampling_window: 60 topology_graph: nodes: - client: - id: client-1 - type: client + client: { id: client-1 } + servers: - - id: app-server-1 - type: server - server_resources: - cpu_cores: 2 - ram_mb: 2048 + - id: app-1 + server_resources: { cpu_cores: 1, ram_mb: 2048 } endpoints: - - endpoint_name: /predict + - endpoint_name: /api + # Realistic pipeline on one async server: + # - 2 ms CPU parsing (blocks the event loop) + # - 120 MB RAM working set (held until the request leaves the server) + # - 12 ms DB-like I/O (non-blocking wait) steps: + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } - kind: ram - step_operation: { necessary_ram: 100 } - - kind: cpu - step_operation: { cpu_time: 0.005 } + step_operation: { necessary_ram: 120 } + - kind: io_db + step_operation: { io_waiting_time: 0.012 } + edges: - - id: gen-to-client - source: generator-1 - target: client-1 - latency: { mean: 0.003, distribution: exponential } - - id: client-to-server - source: client-1 - target: app-server-1 - latency: { mean: 0.003, distribution: exponential } - - id: server-to-client - source: app-server-1 - target: client-1 - latency: { mean: 0.003, distribution: exponential } + - { id: gen-client, source: generator-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } + - { id: client-app, source: client-1, target: app-1, + latency: { mean: 0.003, distribution: exponential } } + - { id: app-client, source: app-1, target: client-1, + latency: { mean: 0.003, distribution: exponential } } sim_settings: total_simulation_time: 300 @@ -151,183 +100,275 @@ sim_settings: enabled_sample_metrics: - ready_queue_len - ram_in_use + - edge_concurrent_connection enabled_event_metrics: - rqs_clock ``` -and add it to the `/examples/data` folder - -### 2. Run the simulation +Prefer building scenarios in Python? There’s a Python builder with the same semantics (create nodes, edges, endpoints programmatically). See **`docs/guides/python-builder.md`**. -build a python file in the `/examples` folder and copy the -following script replacing `` with the -real name +### 2) Run and export charts +Save as `run_my_service.py`. ```python +from __future__ import annotations from pathlib import Path - import simpy import matplotlib.pyplot as plt -from asyncflow.config.constants import LatencyKey from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.metrics.analyzer import ResultsAnalyzer -def print_latency_stats(res: ResultsAnalyzer) -> None: - """Print latency statistics returned by the analyzer.""" - stats = res.get_latency_stats() - print("\n=== LATENCY STATS ===") - if not stats: - print("(empty)") - return - - order: list[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") - -def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: - """Generate the 2x2 plot figure and save it to `out_path`.""" - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) + +def main() -> None: + script_dir = Path(__file__).parent + yaml_path = script_dir / "my_service.yml" + out_path = script_dir / "my_service_plots.png" + + env = simpy.Environment() + runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) + res: ResultsAnalyzer = runner.run() + + # Print a concise latency summary + print(res.format_latency_stats()) + + # 2x2: Latency | Throughput | Ready (first server) | RAM (first server) + fig, axes = plt.subplots(2, 2, figsize=(12, 8), dpi=160) + res.plot_latency_distribution(axes[0, 0]) res.plot_throughput(axes[0, 1]) - res.plot_server_queues(axes[1, 0]) - res.plot_ram_usage(axes[1, 1]) + + sids = res.list_server_ids() + if sids: + sid = sids[0] + res.plot_single_server_ready_queue(axes[1, 0], sid) + res.plot_single_server_ram(axes[1, 1], sid) + else: + for ax in (axes[1, 0], axes[1, 1]): + ax.text(0.5, 0.5, "No servers", ha="center", va="center") + ax.axis("off") + fig.tight_layout() fig.savefig(out_path) print(f"Plots saved to: {out_path}") -# Paths -yaml_path = Path(__file__).parent / "data" /".yml" -out_path = Path(__file__).parent / "_plots.png" -# Simulation -env = simpy.Environment() -runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) -results: ResultsAnalyzer = runner.run() - -# Output -print_latency_stats(results) -save_all_plots(results, out_path) +if __name__ == "__main__": + main() ``` -run the script and you will see the different plots and on your terminal -you will see the latency stats ---- +Run the python script + +You’ll get latency stats in the terminal and a PNG with four charts (latency distribution, throughput, server queues, RAM usage). + +**Want more?** -## **5. Target Users and Use Cases** +For ready-to-run scenarios—including examples using the Pythonic builder and multi-server topologies—check out the `examples/` directory in the repository. -| Audience | Challenge | AsyncFlow Value | -| ------------------------ | ------------------------------------------------- | -------------------------------------------------------------------------------- | -| Backend Engineers | Sizing services for variable workloads | Model endpoint workflows and resource bottlenecks before deployment | -| DevOps / SRE | Balancing cost and SLA | Simulate scaling scenarios to choose optimal capacity | -| ML / LLM Teams | Unclear latency/cost impact of inference steps | Integrate stochastic inference times and cost models into the service simulation | -| Educators | Explaining async runtime internals | Demonstrate queueing, blocking effects, and CPU vs. I/O trade-offs | -| System Design Candidates | Quantifying architecture trade-offs in interviews | Prototype a simulated design to visualise scalability and bottlenecks | +## Development + +If you want to contribute or run the full test suite locally, follow these steps. + +### Requirements + +* **Python 3.12+** (tested on 3.12, 3.13) +* **OS:** Linux, macOS, or Windows +* **Runtime deps installed by the package:** SimPy, NumPy, Matplotlib, Pydantic, PyYAML, pydantic-settings + +**Prerequisites:** Git, Python 3.12+ in `PATH`, `curl` (Linux/macOS/WSL), PowerShell 7+ (Windows) --- -## **6. Project Structure** +## Project setup -The project follows a standard Python package layout, managed with Poetry. +```bash +git clone https://github.com/AsyncFlow-Sim/AsyncFlow.git +cd AsyncFlow +``` +From the repo root, run the **one-shot post-clone setup**: + +**Linux / macOS / WSL** + +```bash +bash scripts/dev_setup.sh ``` -AsyncFlow-Backend/ -├── examples/ # Examples payloads and datasets -├── scripts/ # Utility scripts (linting, startup) -├── docs/ # Project vision and technical documentation -├── tests/ # Unit and integration tests -├── src/ -│ └── app/ -│ ├── config/ # Settings and constants -│ ├── metrics/ # KPI computation and aggregation -│ ├── resources/ # SimPy resource registry -│ ├── runtime/ # Simulation core and actors -│ ├── samplers/ # Random variable generators -│ └── schemas/ # Pydantic models for validation -├── pyproject.toml -└── README.md + +**Windows (PowerShell)** + +```powershell +# If scripts are blocked by policy, run this in the same PowerShell session: +# Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass +.\scripts\dev_setup.ps1 ``` ---- +**What this does (concise):** -## **7. Development Workflow** +* Ensures **Poetry** is available (installs if missing). +* Uses a **project-local `.venv`**. +* Removes `poetry.lock` for a **clean dependency resolve** (dev policy). +* Installs the project **with dev extras**. +* Runs **ruff**, **mypy**, and **pytest (with coverage)**. -AsyncFlow uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. +**Quick sanity check after setup:** -| Task | Command | Description | -| ------------- | --------------------------------- | -------------------------------------- | -| Install deps | `poetry install --with dev` | Main and development dependencies | -| Lint & format | `poetry run ruff check src tests` | Style and best-practice checks | -| Type checking | `poetry run mypy src tests` | Static type enforcement | -| Run tests | `poetry run pytest` | Execute all unit and integration tests | +```bash +poetry --version +poetry run python -V +``` + +> **Note (lock policy):** `dev_setup` intentionally removes `poetry.lock` to avoid cross-platform conflicts during development. + +**Scripts (for quick access):** + +* [`scripts/dev_setup.sh`](scripts/dev_setup.sh) / [`scripts/dev_setup.ps1`](scripts/dev_setup.ps1) +* [`scripts/quality_check.sh`](scripts/quality_check.sh) / [`scripts/quality_check.ps1`](scripts/quality_check.ps1) +* [`scripts/run_tests.sh`](scripts/run_tests.sh) / [`scripts/run_tests.ps1`](scripts/run_tests.ps1) --- -## **8. Continuous Integration** +### Handy scripts (after setup) -The GitHub Actions pipeline enforces: +#### 1) Lint + type check -* **Pull Requests:** Ruff, MyPy, and unit tests for rapid feedback. -* **Develop branch:** Full suite including integration tests and coverage reporting. +**Linux / macOS / WSL** -No code is merged without passing all checks, ensuring maintainability and reliability. +```bash +bash scripts/quality_check.sh +``` ---- +**Windows (PowerShell)** -## **9. Current Limitations (v0.1)** +```powershell +.\scripts\quality_check.ps1 +``` -1. **Network delay model** – Bandwidth effects and payload size are not yet considered. -2. **Concurrency model** – Single-threaded async event-loop; no native multi-thread or multi-process simulation. -3. **CPU allocation** – One process per server instance; multi-core within a process is not yet modelled. +Runs **ruff** (lint/format check) and **mypy** on `src` and `tests`. -In addition to the items already listed (simplified network delay, single-threaded async model, and one process per server), keep in mind: +#### 2) Run tests with coverage (unit + integration) -* **Stationary, independent workload.** Traffic is sampled from stationary distributions; there is no diurnal seasonality, burst shaping, or feedback coupling (e.g., servers slowing down arrivals). Average users and per-user RPM are sampled independently. -* **Simplified request flow.** Endpoints execute a linear sequence of steps; there is no conditional branching/fan-out within an endpoint (e.g., cache hit/miss paths, error paths) and no per-request control flow. -* **Network realism is limited.** Beyond base latency and optional drops, the model does not account for payload size, bandwidth constraints, TCP behavior (slow start, congestion), retries/timeouts, or jitter. -* **No backpressure or autoscaling.** The generator does not adapt to server state (queues, errors), and there is no policy loop for rate limiting or scaling during the run. -* **Telemetry granularity.** Sampled metrics are collected at a fixed `sample_period_s` and may miss very short-lived spikes unless you lower the period (at a runtime cost). Event resolution itself is not affected by the sampling period. -* **Reproducibility.** Unless you fix a random seed (not yet exposed in all entry points), repeated runs will vary within the chosen distributions. +**Linux / macOS / WSL** ---- +```bash +bash scripts/run_tests.sh +``` -## Mini Roadmap +**Windows (PowerShell)** -Short, high-impact items we plan to add next: +```powershell +.\scripts\run_tests.ps1 +``` -1. **Cache modeling.** First-class cache layers (per-endpoint hit/miss with TTL and warm-up), configurable hit-ratio profiles, and their effect on latency, CPU, and RAM. -2. **LLM inference as a step + cost accounting.** Treat inference as a dedicated endpoint step with its own latency distribution, concurrency limits/batching, and per-request cost model (tokens, provider pricing). -3. **Fault and event injection.** Time-based events (node down/up, degraded edge, error-rate spikes) with deterministic timelines to test resilience and recovery. -4. **Network bandwidth & payload size.** Throughput-aware links, request/response sizes, retries/timeouts, and simple congestion effects. -5. **Branching/control-flow within endpoints.** Conditional steps (e.g., cache hit vs. miss), probabilistic routing, and fan-out/fan-in to external services. -6. **Backpressure and autoscaling loops.** Rate limiting tied to queue depth/latency SLOs and simple scale-up/down policies during a run. +#### 3) Run system tests +**Linux / macOS / WSL** -Future milestones will extend these capabilities. +```bash +bash scripts/run_sys_tests.sh +``` ---- +**Windows (PowerShell)** -## **10. Documentation** +```powershell +.\scripts\run_sys_tests.ps1 +``` -Comprehensive documentation is available in the `/docs` directory, covering: +Executes **pytest** with a terminal coverage summary (no XML, no slowest list). -* Simulation model and architecture -* Schema definitions -* Example scenarios -* Extension guidelines -* Guide to build valid .yaml as valid simulation input ---- + +## What AsyncFlow Models (v0.1) + +AsyncFlow provides a detailed simulation of your backend system. Here is a high-level overview of the core components it models. For a deeper technical dive into the implementation and design rationale, follow the links to the internal documentation. + +* **Async Event Loop:** Simulates a single-threaded, non-blocking event loop per server. **CPU steps** block the loop, while **I/O steps** are non-blocking, accurately modeling `asyncio` behavior. + * *(Deep Dive: `docs/internals/runtime-and-resources.md`)* + +* **System Resources:** Models finite server resources, including **CPU cores** and **RAM (MB)**. Requests must acquire these resources, creating natural back-pressure and contention when the system is under load. + * *(Deep Dive: `docs/internals/runtime-and-resources.md`)* + +* **Endpoints & Request Lifecycles:** Models server endpoints as a linear sequence of **steps**. Each step is a distinct operation, such as `cpu_bound_operation`, `io_wait`, or `ram` allocation. + * *(Schema Definition: `docs/internals/simulation-input.md`)* + +* **Network Edges:** Simulates the connections between system components. Each edge has a configurable **latency** (drawn from a probability distribution) and an optional **dropout rate** to model packet loss. + * *(Schema Definition: `docs/internals/simulation-input.md` | Runtime Behavior: `docs/internals/runtime-and-resources.md`)* + +* **Stochastic Workload:** Generates user traffic based on a two-stage sampling model, combining the number of active users and their request rate per minute to produce a realistic, fluctuating load (RPS) on the system. + * *(Modeling Details with mathematical explanation and clear assumptions: `docs/internals/requests-generator.md`)* + +* **Metrics & Outputs:** Collects two types of data: **time-series metrics** (e.g., `ready_queue_len`, `ram_in_use`) and **event-based data** (`RqsClock`). This raw data is used to calculate final KPIs like **p95/p99 latency** and **throughput**. + * *(Metric Reference: `docs/internals/metrics`)* + +## Current Limitations (v0.1) + +* Network realism: base latency + optional drops (no bandwidth/payload/TCP yet). +* Single event loop per server: no multi-process/multi-node servers yet. +* Linear endpoint flows: no branching/fan-out within an endpoint. +* No thread-level concurrency; modeling OS threads and scheduler/context switching is out of scope.” +* Stationary workload: no diurnal patterns or feedback/backpressure. +* Sampling cadence: very short spikes can be missed if `sample_period_s` is large. + + +## Roadmap (Order is not indicative of priority) + +This roadmap outlines the key development areas to transform AsyncFlow into a comprehensive framework for statistical analysis and resilience modeling of distributed systems. + +### 1. Monte Carlo Simulation Engine + +**Why:** To overcome the limitations of a single simulation run and obtain statistically robust results. This transforms the simulator from an "intuition" tool into an engineering tool for data-driven decisions with confidence intervals. + +* **Independent Replications:** Run the same simulation N times with different random seeds to sample the space of possible outcomes. +* **Warm-up Period Management:** Introduce a "warm-up" period to be discarded from the analysis, ensuring that metrics are calculated only on the steady-state portion of the simulation. +* **Ensemble Aggregation:** Calculate means, standard deviations, and confidence intervals for aggregated metrics (latency, throughput) across all replications. +* **Confidence Bands:** Visualize time-series data (e.g., queue lengths) with confidence bands to show variability over time. + +### 2. Realistic Service Times (Stochastic Service Times) + +**Why:** Constant service times underestimate tail latencies (p95/p99), which are almost always driven by "slow" requests. Modeling this variability is crucial for a realistic analysis of bottlenecks. + +* **Distributions for Steps:** Allow parameters like `cpu_time` and `io_waiting_time` in an `EndpointStep` to be sampled from statistical distributions (e.g., Lognormal, Gamma, Weibull) instead of being fixed values. +* **Per-Request Sampling:** Each request will sample its own service times independently, simulating the natural variability of a real-world system. + +### 3. Component Library Expansion + +**Why:** To increase the variety and realism of the architectures that can be modeled. + +* **New System Nodes:** + * `CacheRuntime`: To model caching layers (e.g., Redis) with hit/miss logic, TTL, and warm-up behavior. + * `APIGatewayRuntime`: To simulate API Gateways with features like rate-limiting and authentication caching. + * `DBRuntime`: A more advanced model for databases featuring connection pool contention and row-level locking. +* **New Load Balancer Algorithms:** Add more advanced routing strategies (e.g., Weighted Round Robin, Least Response Time). + +### 4. Fault and Event Injection + +**Why:** To test the resilience and behavior of the system under non-ideal conditions, a fundamental use case for Site Reliability Engineering (SRE). + +* **API for Scheduled Events:** Introduce a system to schedule events at specific simulation times, such as: + * **Node Down/Up:** Turn a server off and on to test the load balancer's failover logic. + * **Degraded Edge:** Drastically increase the latency or drop rate of a network link. + * **Error Bursts:** Simulate a temporary increase in the rate of application errors. + +### 5. Advanced Network Modeling + +**Why:** To more faithfully model network-related bottlenecks that are not solely dependent on latency. + +* **Bandwidth and Payload Size:** Introduce the concepts of link bandwidth and request/response size to simulate delays caused by data transfer. +* **Retries and Timeouts:** Model retry and timeout logic at the client or internal service level. + +### 6. Complex Endpoint Flows + +**Why:** To model more realistic business logic that does not follow a linear path. + +* **Conditional Branching:** Introduce the ability to have conditional steps within an endpoint (e.g., a different path for a cache hit vs. a cache miss). +* **Fan-out / Fan-in:** Model scenarios where a service calls multiple downstream services in parallel and waits for their responses. + +### 7. Backpressure and Autoscaling + +**Why:** To simulate the behavior of modern, adaptive systems that react to load. + +* **Dynamic Rate Limiting:** Introduce backpressure mechanisms where services slow down the acceptance of new requests if their internal queues exceed a certain threshold. +* **Autoscaling Policies:** Model simple Horizontal Pod Autoscaler (HPA) policies where the number of server replicas increases or decreases based on metrics like CPU utilization or queue length. + diff --git a/docs/api/analyzer.md b/docs/api/analyzer.md new file mode 100644 index 0000000..eb86e6b --- /dev/null +++ b/docs/api/analyzer.md @@ -0,0 +1,208 @@ +# ResultsAnalyzer — Public API Documentation + +Analyze and visualize the outcome of an AsyncFlow simulation. +`ResultsAnalyzer` consumes raw runtime objects (client, servers, edges, settings), +computes latency and throughput aggregates, exposes sampled series, and offers +compact plotting helpers built on Matplotlib. + +--- + +## Quick start + +```python +import simpy +from matplotlib import pyplot as plt +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer, SampledMetricName + +# 1) Run a simulation and get an analyzer +env = simpy.Environment() +runner = SimulationRunner.from_yaml(env=env, yaml_path="data/single_server.yml") +res: ResultsAnalyzer = runner.run() + +# 2) Text summary +print(res.format_latency_stats()) + +# 3) Plot the dashboard (latency histogram + throughput) +fig, (ax_lat, ax_rps) = plt.subplots(1, 2, figsize=(12, 4), dpi=160) +res.plot_base_dashboard(ax_lat, ax_rps) +fig.tight_layout() +fig.savefig("dashboard.png") + +# 4) Single-server plots +server_id = res.list_server_ids()[0] +fig_rdy, ax_rdy = plt.subplots(figsize=(8, 4), dpi=160) +res.plot_single_server_ready_queue(ax_rdy, server_id) +fig_rdy.tight_layout() +fig_rdy.savefig(f"ready_{server_id}.png") +``` + +--- + +## Data model & units + +* **Latency**: seconds (s). +* **Throughput**: requests per second (RPS). +* **Sampled metrics** (per server/edge): series captured at a fixed sampling + period `settings.sample_period_s` (e.g., queue length, RAM usage). + Units depend on the metric (RAM is typically MB). + +--- + +## Computed metrics + +* **Latency statistics** (global): + `TOTAL_REQUESTS, MEAN, MEDIAN, STD_DEV, P95, P99, MIN, MAX`. +* **Throughput time series**: per-window RPS (default cached at 1 s buckets). +* **Sampled metrics**: raw, per-entity series keyed by + `SampledMetricName` (or its string value). + +--- + +## Class reference + +### Constructor + +```python +ResultsAnalyzer( + *, + client: ClientRuntime, + servers: list[ServerRuntime], + edges: list[EdgeRuntime], + settings: SimulationSettings, +) +``` + +The analyzer is **lazy**: metrics are computed on first access. + +### Core methods + +* `process_all_metrics() -> None` + Forces computation of latency stats, throughput cache (1 s), and sampled metrics. + +* `get_latency_stats() -> dict[LatencyKey, float]` + Returns the global latency stats. Computes them if needed. + +* `format_latency_stats() -> str` + Returns a ready-to-print block with latency statistics. + +* `get_throughput_series(window_s: float | None = None) -> tuple[list[float], list[float]]` + Returns `(timestamps, rps)`. If `window_s` is `None` or `1.0`, the cached + 1-second series is returned; otherwise a fresh series is computed. + +* `get_sampled_metrics() -> dict[str, dict[str, list[float]]]` + Returns sampled metrics as `{metric_key: {entity_id: [values...]}}`. + +* `get_metric_map(key: SampledMetricName | str) -> dict[str, list[float]]` + Gets the per-entity series map for a metric. Accepts either the enum value or + the raw string key. + +* `get_series(key: SampledMetricName | str, entity_id: str) -> tuple[list[float], list[float]]` + Returns time/value series for a given metric and entity. + Time coordinates are `i * settings.sample_period_s`. + +* `list_server_ids() -> list[str]` + Returns server IDs in a stable, topology order. + +--- + +## Plotting helpers + +All plotting methods draw on a **Matplotlib `Axes`** provided by the caller and +do **not** manage figure lifecycles. + +> When there is no data for the requested plot, the axis is annotated with the +> corresponding `no_data` message from `plot_constants`. + +### Dashboard + +* `plot_base_dashboard(ax_latency: Axes, ax_throughput: Axes) -> None` + Convenience: calls the two methods below. + +* `plot_latency_distribution(ax: Axes) -> None` + Latency histogram with **vertical overlays** (mean, P50, P95, P99) and a + **single legend box** (top-right) that shows each statistic with its matching + colored handle. + +* `plot_throughput(ax: Axes, *, window_s: float | None = None) -> None` + Throughput line with **horizontal overlays** (mean, P95, max) and a + **single legend box** (top-right) that shows values and colors for each line. + +### Single-server plots + +Each single-server plot: + +* draws the main series, + +* overlays **mean / min / max** as horizontal lines (distinct styles/colors), + +* shows a **single legend box** with values for mean/min/max, + +* **does not** include a legend entry for the main series (title suffices). + +* `plot_single_server_ready_queue(ax: Axes, server_id: str) -> None` + Ready queue length over time (per server). + +* `plot_single_server_io_queue(ax: Axes, server_id: str) -> None` + I/O queue/sleep metric over time (per server). + +* `plot_single_server_ram(ax: Axes, server_id: str) -> None` + RAM usage over time (per server). + +## Behavior & design notes + +* **Laziness & caching** + + * Latency stats and the 1 s throughput series are cached on first use. + * Calling `get_throughput_series(window_s=...)` with a custom window computes + a fresh series (not cached). + +* **Stability** + + * `list_server_ids()` follows the topology order for readability across runs. + +* **Error handling** + + * Multi-server plotting methods validate the number of axes and raise + `ValueError` with a descriptive message. + +* **Matplotlib integration** + + * The analyzer **does not** close figures or call `plt.show()`. + * Titles, axes labels, and “no data” messages are taken from + `asyncflow.config.plot_constants`. + +* **Thread-safety** + + * The analyzer is not designed for concurrent mutation. Use from a single + thread after the simulation completes. + +--- + +## Examples + +### Custom throughput window + +```python +fig, ax = plt.subplots(figsize=(8, 3), dpi=160) +res.plot_throughput(ax, window_s=2.0) # 2-second buckets +fig.tight_layout() +fig.savefig("throughput_2s.png") +``` + +### Access a sampled metric series + +```python +from asyncflow.metrics.analyzer import SampledMetricName + +server_id = res.list_server_ids()[0] +t, qlen = res.get_series(SampledMetricName.READY_QUEUE_LEN, server_id) +# t: [0.0, 0.1, 0.2, ...] (scaled by sample_period_s) +# qlen: [.. values ..] +``` + +--- + +If you need additional KPIs (e.g., tail latency over time, backlog, or +utilization), the current structure makes it straightforward to add new helpers +alongside the existing plotting methods. diff --git a/docs/guides/builder.md b/docs/guides/python-builder.md similarity index 100% rename from docs/guides/builder.md rename to docs/guides/python-builder.md diff --git a/docs/internals/workload-samplers.md b/docs/internals/requests-generator.md similarity index 100% rename from docs/internals/workload-samplers.md rename to docs/internals/requests-generator.md diff --git a/examples/builder_input/load_balancer/lb_dashboard.png b/examples/builder_input/load_balancer/lb_dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..4d94cfeb9c98b89a84da1a7c99e90e2bee43c6aa GIT binary patch literal 256871 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�ZsLk1Vi}?WHJ&)=4}`Nym9blQNfH!?VU}`1#A8xTmxt+Dwo$ z>zlV9?W4(I@IXXcj0t>}x?h=3hX`I!p(XqfIjji;hRrv#5A0e=f$*Z}cWl^Um{2ea zkQl2BUu3p#uq5is6jS_;Y-g!!GB026)vY$s$XQEol?K$^)Ph|Q_#tMdA%Ob*IUkR zG5U{?`=<_SJjV9uP%Maac$*7H0P!TnEiPWS;>z;WMcBKcCwEKwUg4XGOK0;ReYb#( zaWz82`g6)~qqHia0t1SYLpfu{iOPXMCCdn`7rAzA!ZT&N*0WLz)qtNW+YM8GlDDt< zgjA-Vm~AY!Zgt2;LQF;foR|Y%@>c{5q*@LAjR${IS!!A-bh0G)CP~J)@LGx}}GN&nrqo=c8RLNcP&5hxv{X z;#C%#>zH0K-Zqt?Wrrtk*|RzH!~~QfDsCLjzte6>n=BV|)>r2TYCZy}R72UimS2%* zrfxFwlRWXq0g{NQyXdHX+X5PIP zrd5(QEoXEny^>jjE-AuZ9X@Tgx0^H7PoTzoi*+UEmk^_NF%V=B})SIe>7pQN$> zr!l4bx7Y+_2L#CZn^*~Gm>G~s+%H6z_0%+OzY&-NU^uqf|CwULM+|0q%$?@Oe~gUq z(tLyXik#|SmF2wB{!)t(h#s~d?@kCaB;D`VvzO$(wR`U`ayu)&)O)Q?A!$5+Jz8{Q zyr9e0)b@h-jWUub?~EIJo&|o~LBy`7wFKjVqBKyMru$K9(51vgW=h;#>FmqSGmr{a z$9M{GUbLtXuxpZs>sNuo;J@A`uzfKCbYr$Z&sxB80Rv3H|ae-O#G7k3#1 zw$Zj1r|*>ix+#r@RII1f#I11+-^OYonPSL@O%88Sw2L<$e!XWXih{quNp6v{jtm&* z7_ZVE5QQOKAZckd&O7Dr7JIwyNizQNhG=IgCsy-mj7n`jMoRjZ#&5>Cc4kU1_h&_h zRWx%0QheXik^GtTCl$7IiTG>Q1p?8q2wd$lG%ct}H}r8f96Thl@gQHT`m;S?D!PHa z4(b|q91nGinPp~hbaraL<~w#djJM(rKF{9i8^D4k5ypniTA}GQ zMsB+*{fmuprgLg&Fw)8IeW9pZ?;zgL^g}7oS)!>b9T9(vJ|lCL-Olt2Z|yVD4vPP_ z;}8nas1?!_*aLvN%0>0Sn*CL_>bQ$gfarpwmsX;w8gfa-msI1BWtZq}QC~d2DR4kAk(8F*jI!Xo_-OOQ8uujBM ziKx?frXR41E#=%6kl?>%(siMItSco~8m#iFfLxT9%8J5pU_F*a%6m!E9iX?SZIgCp z1;?GxLB{`l=)^!-3dw|w$w_by3;-F^hZcv?2LFyCtq>l5Tyeh-3JF2V4Z(#~eLSxQ z8p_9IF#;W3Q;GMm)#Fn}G$3a7Qx$l8&@xg9 zrJh?lUo$G#{Bc2(7U*y#UCFOBUhfl2`#p@^t}B{nka0vR#=595c4jU^57R^-=M-9l z{qrdl0UDyHh&0E=)Y6jyY^|m~shC3l4y%T2e+M8$jbJFSS9GK6j*z57F_%b28Zmo5 z_kz1miW1eJf27p~=?l$p7<=uKb}Y-8h1(uq7DnXQK;WvQmO~3k)m<8W?DK2VJUTjM zS-J~}ZaO=Ou5uXI& z`(EA&w0Qxxv&KE0h=KQoN0<0&(0S5v#{aQ(qR6zDH29QEA1bm`Wxc&lYVMji_lO@b z{>SJUv5|fJt&Gn8lRDgLA5WtLrXB?{VqbS_0-EZ^XqFYuN=IG7lB}s`@zmfp2OXp{ zha7k1K&qFvmuBh+`S^~cX=GnKxK)xs!H{cME!59T`U7*e$}g2?u=3GyBi;f$L&Fxx z0nq3DJsk`QWgTa+Gy>&SC`WaVLf8)5W5esPj!{xkWNl(PUmaAAZO(eMyT?;mYNE0L z3{JehU;HaU11E$vG@>C%y;g0MvCV+YOKv?)Xpr%9U+La@{$f z)fGeIKq4#)yIgA(OhaGr)3;#+=3{*d(Zd{UgE_PjUD&w11;?A$^^LPjiZOc^G~Tiy zSM(;8W55j_4R)lqbP-FBs#i3OqqG5G>~Y>!MJngJ1;bfs{Yd|NVDWc- z(^B5>cyGQZd2M2+$@uIMti-mJJSd=#UyDZjaK_;}>qTk4zHXAyXmk?L?GPVZ4kX_5 z1I+M+F7R3+a|(!ZY>I00!oQwS-9DOs$2S*wq@D*BGy3 zq${+Z)$+|8IH$-)iSjBY8e6#g4@xP&{g3kooI=k4A291reZRY&vvN{c0ek`0)Y`*a zia$nk`i~qq31Fg~nExv+Bp%2kf@)aeF$&M$C$d?g0EzGm2A|p*1XPenz#MP67>Vvo zD&a9I)r!#&KYVZefZG@AAdzfoveLWR*tvBW?^VjofcdqJ?T%1=j$E_AVKaJlcey%Y z$;!0(E_tS?$0o&EgJnu7Lo%S)89{iR0%Y*)RG-L+@@}kE%wD*(PpUJHwzOd{qSr4-UF{>`T@94h9A&C&og57Y%k7>T=dLLA(G@dt^ z1P0+L#g0177Ie32>IS2L!$2|(*5?=(1E;0U9~9MY6wT0k@C|i8wxn}Y0eVuH>mg&h zM)OgIH=QVwN-2j*#;_XO_=K{Ys23aUSDPpQwrD4`&=$XI>G~%MBZvpRqe8@{!Bqv_ zUG0p~HiTx0N5j9Oku<$1`NJ>`tuY;|cJkq6KJt`yrm0ow1Z+o)*lrnR za|Rh_UZKLXBOLQgA<5=V_}>IFG#`j>Fw2-Jf0dn9YL8A7=O(kxbsEBLCb! z-txoh-(%;1XC?VBE((+s?kXd(lBz%-UWk-At-~!hakZQ;`YdiZ?tj@_SPTq>%;hT^ z`HtV-H3w?3R8a3{3v$e%Z9@L?@L*GnrnU{y-ksS}Eb1%Ui z&E<_%W2syslaQg>ReAP`-%TQUdMPa;@=G{vf(3FOwY6CR13)4Cb#9kw*}as%py1in!GP0C!nB<|{844=w+QCUlJ@9(CUcNr+*& z&~^st3&z`94mRS66&#wlauoiV#t0r0Lb`T%A;hh_G{+9C1eybS5GEW88iiSgf-7SX z`adgDR9Tnfo;WU*YULAVv@#4Y9?LXU+;&4mNoJjr1=sh!gvRC5)21`tZ zkI=b(GANBGb{`GZfZkSuH1x$>q__OGU5T|uVqG(fjWNCP&Yo@;PQ+O(O)|UY+a#1n z@z$nkDOs2E_8#{V4s!yH)iNDR7jCm(i*h~avEXBJqg5&Ks+>ri`uUWD zr(+!>mBDHG`gz_mSLiYZr_19vzZ!|7-pQEvS9gd9jAp z&1?-VgTsxfb&u~X49oca_&M2p&0bk-o9-+6onQGsFV}*6!oa2uJMfd*^)ZZqct|rp zJtVP%lsTC(+(YVD(F4X}`eBfFRCD^nM6G+XT|LjK%tQX@gP(r;io;rCUdFqNN9QUG zkFJTL%!!t}YRb>-=UW{D)BR;4TAttg3oyYfj$YhtFI<%^Ube0(tLgP;(%Ox;U2I;A z>N`Hy78tC46z{_h-#CM;!|>jxh@|40AD3YGS#uK(o!j2o$Dpv z``jEr7^t9nl8RV78N#Wtv2isN9&C*`-+!|7-R>^pQ&PSrkF_hmcT-G*Lx0+~+5(fw zY}urC{nmnql15~4;pN#(TSQ8${h{=&+kS?!##H;PU;RE?UAL@mz09`_k_bZ1g~;XTeS3OMRexTSP|?N#ITge@QOp_fx6t*V zvyNhm5P;Jqx%pYY)24G};pwU8e|ifqLh>mYqcDPTaz$Qr7a!rj;W&jyZnkrCbt_Wj zwR|D7kDo!j9^8H>`5W?H3U1^oLF>86DrH67Kk+gHM#L!6%U+<(h(;=WKiC zG3aC)j`ZRFrWDh!P?C$k)t~AaKbE zDwo_7JJiV>8My2V{dN&G#~0*#@4k(<5@eQ6z&R4VAoF{>xWR7!@a2s~#ZFCQ{S}O! zYvfA()kMl#{>Ty+S^2&z!_ngzPxs{lyPx$XtNCrS*YDT82TMOm=zKg0%)sNkdm-cV zA^$u-c9O&5mOgdb)?ofr<-r*i>Ec3}0+j=`-td@&Wt?6HQe)xUcyN>BrGpBLOqQKa z;fI{0Q*Y|2t*^0n)7zUo7G;aHqKS>lD*uJv&mh?Qfqj3@gK)t{AWD$fd#e{IWnUtTOehi&zG%i(Vx$vDet zB1jGU)94k_yFGTx?SO>z^0@k&FmIf3ng7(x+Z~fd?j-w2XGviC(Kq`vK>rC%K73n2 z6P)Z(wMgmg&odcMq0V$UbTqQ<~SMs@h#@j;(5#KDcn)f zGrb2tg{^%S{*966&eeOiUkdWof_`Dzo#D*B19fUKqHE2;h{}TwVrj_<>-(fLgbVIg z{<-Wrse%Fr(*EHcU(DWFZyU5%1V0?l5=0OWxvlJ>*XurH>S7%$MxWs+NISpj81|3YjkY3! z2)V8m!1!(XJ>8Oh>}hz$v^a z!CHj7T>ov-0})Gl4M+XDz=ppH7ih|&yf+=`ovJ&qe2tOJLVaJ%58pToE7I>cRf})? z3f`y2)cDObPrd)4xjLDbaiW zEkCWz8c4j#9k1iGacLyYpF5$ zFzuW!lr||dCX6r1&n4G2=&04F1c;f>I8p#zDq=jkPbqm_Uk+%092oRpZOFTRz zyYdZ!Sali{XlL9%_`4Rc!c`$V8wHfaDGaeA~P&-iRQO+?#aINRLUN#kcH6LOj>7S z*A(;4vD}RW>x_PN=4}X(H1*4pkQMglN&;Lc-*HYfN2{0Z%(fO{o0of-;i*(6s&NeJ z^R=Y2XtR)17%#9_N-G{()|?ZIkEfCC{|9ro@0hmIo9DVpX_oWU@O=CD`CHd(n_cgrf02WA(1NaqIwuR#qp(wdFS+=<1VJG#9X(Kl>HP;VJzVM9W;p^hjubLUu3wEB^q^yYoZR@ z`Pqi@1DqZ$2gG1^Co$`8S#g7;@=WKdf?y{#sLEmX@Tj1fQC%D2OWI0GTRvdkMyBeZ z(!WcnCHPLD#oD$XCR|*5d?Y^V6t*92S zZk`mTSN{^N9X2o6-&OwEW2X&{Jz_pbntM3y)+PPZZ{P)}D5vtJ3^HW9b@d|rezs3k zC-sngKc9>cNC8 z7_~rdGF!ibim%0qZ_>1$xb4MKT!8me;6jv_M3u5!v*(oWv1HeU0MXmtp7+oLOq=4*j2Q){h1kG8NOg>U&Wwp)F+ zcgi~puKN$wI|ISfkRyA?%e-Or#!*g&twGAOeisqMlITr-_o5b~iHS?eN<*uKx8rI? zr`oD6E;J_*HUG}J0uL+sq9xL^?F{2o=mO+IY<>x9Lx|X6c^qW9ZUa)vFN;6ed6ATLX{S~pp%xRx#@WLRJIUoYrIm$TdAu0>MT{tpDxzutXO()t2;=*{ zl+Zb#ermSnz1o-?mZDfg0K(h)4u4UfZD30K+D=vU<`Z7f_ZMkAPVfC>q6Po8q-A&< zYMff5Q#q*5g%7UK zTLQlOFObB)K-&p;Vd}+`w_o8i@^$LX_j=(F-qflhezRqVHdi`aHGgsI{KSN zn_WD_QQ{ZWPB>aO9Ld?{LjB%zLBAG*zCiJcMU-9|LTd^+_K5;Hr zQq39UFYpQL>6I!~v`GqFe44V$tl{M{G7=@xxsC9wj}vnyecw~9+k(qxwI3-ucRJ-# zx0dcx7OAuQWm@c>oS#IiwdSrQf6$8Rr>)PSh0zJov z37$K)vx9iJ%gwdJ?l+nzIVZWI#^QB`%4D~k&LjtD+bzo<{VuN(O_H#%tYSDLt$bF7=SI?RZ=1%iID#pIMw* zw@00ifORWJc+gReU@H;ZzC{K>C|T-55sFMIsel@7Sgo(0{L-DqAbWYf-cOP(+(NM( zyT;90_^?DvHgDYD?xOp4MYk<6J4?UixLN)PB%ozqq1ew$KCT*Jzx?c%+vFWhj#g#0BXLL>A-8;y)_S|Gp=Avsl^aoQ(n7NI)364a5Z0%8QJJnC_D3CYMsd|&x-?*RQ$`0lX zxW(g&Rvnr6z5M94RKSa(oV{>ZEyspFHQ_ktrq0hoQk#R(Rni-}YJwkIzoz}60Szl7 z@}RB&BgLAESBx=8BZj07i!V0znL1H%O7?mn*MJGHw)Ov_z=6Z~xgxuvY>4>7=;Hh1 zEofb9&woAp?EH2v-#F*1)Z~+7i$8weB!b1rb0tK~*~k@ojz7xQb@Msec*_R~+F$ZC&uZ>yzy7mO%XgKCAl4#+~mmkJEO9FsplJ(Z3%h~v1UF6Rr~>n6w*(( z4Ik!T@091qk_Wiaesm?v?pS1({TBuE>Fz^jNfVtG*s!I<@Ttghp-S)#JjL_5_3|%2 zON3}Ms+-RIBLw!*ZNO$olNcn*B2^WRe9y$ly<-L-_2+pAZ6Ki!0XQTOKk|IUfxJN3 z2>{edqYh{H!BVDqH)~&UWmqfd zby_%1pjFbtEL4FEEQfSWIB`Yr9K^^5fE2_?1uNKQ%lJ&p`4(~^T$@x;Hy((KbgKgS zSe*7@fK)qFNNvmERDc8v2mc)r(mnmBF!qo@Oc{L-Buq%ko&f8u-KiVv9s0m(#EzZ6 zyVPXb-LaCLL!&Ie(OKRNMr%9BVj{hhosdf)g32M|l3H!jK#qkt&=E@qTe_g_U^(2U1LkHZxZ$NwD+-rQ;QSMDeFS_{ zw^#e6ENNUI)sM^667K1j#r?z(YI=PMLcHFK5b~LX^k6a*7zPDR$C+xo zcft?!14*Sg(0mg}JG(6SLu?Qw^c*@Bsu|dM73gj|1p#iql=156Njyj*6d@r&!fC#0 zVYAER2u={3j&URj;qh1p>SAcDey29xGr2AvXvhJGLX14u^CYzA?ZPrcCj1ljEmic@ z7D%e!eLZ0|kik{jP^7f^xtkw1dHoWaJ+9?3Nz>eH;-bZ0dgLV7AMZ2~XYim}zZe+w z<>-HM7N1NOp!6k&VSS-f+HszE{q@x7SzIUh=g{bKKC7nTLL`c*Wk;5oYq7&l zPOg{qwAJH7s0Aaw+V<)Ou16#=TYb#C(trPxx#s=5X?cY9>q?DpG(v5UVcT0&#OG|f$igZXz zcXxM7OLt2s-QC|h`n=Ek{^xT%&ghIYdiLIHuXW$Q`?_|_O2YIroaVN;5#+Jzmr)K> zXnd^v{Huc)E%LP+eJs%TqFptVWAZ#eccyH|MsmSn))m`o5+nqX#nwj@VtTgT8AyHN zl#RfjR4A08d0jRJ4It(H*u9;reSiNq!V^;n%&~9~aNh^j4R3F6+l-1ohk-yvB^%XR zUH$o;9eal_R)&bVgxM+rXE*h}@|SsmHm}3D%vG~7sR+?1SW6lb1aJ8vKO@jSMf`FBIBI(gbB3?bKW1Nfz^GJ1WLmcxL@sL0kDw6OL*u8ZVSuK1qX)vh9qH z>lA6O4=MofZN1V4(<7D1qdz_HSykv!^zJx^U z01w`TLWZ~V4p!nvQ}zroCAtK|etI%?%-z;ajmE@l-jjD`}_njjYoL2{i^N&80+(LjLMG^qM5=*nQ5rDVzAKH=Qm)z2K z)pX7XOr#1J?%F0<(q+V4?HpSUFK0fZ?k+F>Wjt;rp7;6kRsS>ex6-t7Fe*<^WiIvO zI-~!Ym-+18b$()^7Y*p-?Z#26V^30#W2bX1Xrxw%%<15y5!QeGAeoF$tRs!D6`k4~ zDJ^L~V(Y$$aYi+7@&zMH`nK`rtoJ#XC4T!r;%XcZUe}9oPcxcr`L2xx;LMWd%w&<^ z9oX~_jpLQO zKtTM|oN-&gwl|;0rA_~hA_i{2eF4rvv2RQB&0?G7Anf4YzQ037CH%+&aa$CsPFI=R zMoQD+#amb(BWXSzdD*srCA}4|yX=0Qo(g^I#-BLeDACeGd)ET z=EX?0hVYZTAmYFp*zG8}97l^zQdB?25v#N9$q^^-pJifOZyU+I=CQFpm@4oKe1FL3k+ z;!1@Ea&~_|w)v3D7q!d;1L6IYeuv`AN|BGE_cr}5kHFY)vwzY3T<>T#rzn=h&H9Px;S4UHmUfTqS zd?0D{^*p&oFL4yC`x`t--_G1C^0r!bpR$g9zqdMIMgK;2GF^`_vNb|VaYNk0wP9Hp z@MGis-2~$zznTm=9rq-)yPTMVB+-tFo1uGwR>h;N>kjuiHmL?hR>lz7_@rEg`5m`9 zVSmS`ytYCM)vO?mcf1AjoWOLrBy#7xyG3FeI(YF>4rNVfN+DNSeYHl(_Ob|mKGPSD z&!{Z?xZP}qi|ZmPumTe~dObZ0jibzyw{JVW3VO%oBGY$rJ$Ww>2ng z4j^JaJ=gWXf*Ql#lTS#9>~g z?DrIlAhoe;7q_a;?!1NK#lM)G@v)5W?&yxY;HFfUJD!KI4YiH5aA?p=GR^L&xC9`H zav8Xhs;PaEMExSDD&iU0R~0sCwSY0)bI>Elr{Ccsm&^<>mN;`grCzYZOwM@IkhTLg zfDG9fJ-%0PsquJv;aW3fFpRxXJ4x;7h7AVz_=?X;z}Q*}MqH0vBCjLe)Si{!#^-F? zWj0&W+lyC?CJ3Chgdy=crgQ}b6Q8t}zhE9RxKbJ?3?H;lN}d z1F2VvSRQLIW)>ya$kAt)2X|b+`;8_$LT3osO|@yw@UJfbS(nz;k9Ohd2Au3S^(7ST+KUgu@F^iRC-fgyFQU z-D`fWdWA$rX?sKTR`YY;kFj{7yw2Edu>WPw%qvQ3hSupbyz#Q0H&&Vx-v>Il|My2; z0Bz7GD0vp*!(l#^1{9M*G$T|+#l`XsfPF;|Ndwp`9wsBRGD4jvoZ2}iNH3W@Z?A-Ew?fiF3LR^);(=u>Z*f{>Y!3aac= zFw1ktC?$dK|MD@(fddT^(YRfolf*vHq;sa6%9!eVoPX&P07Fo%=(()|z+M^#K=}47 zzQ&*jeamhoEpesOf1|{P@_T+}pXCdA7tUEx16PykyNd~u)`A)-{2R`Rzmw6Iukr zPZZV1#r=py=Ce}L6jtjn;i~SP76fY&cV0dxPt!Gsh}hQ6Nc|1)!gO+tKQ$-uv21^sxq?ADI!3?ol#VV{7_IQWq_ zK?I8R$M)P$6=Mq8vrk|DMH0$FWXo^)(J4sNRjV| zB|;~L5)$m*;EN+We$WQr(*UD;_O`so}vJG3nto*ZK zRvLv8x_n+A0_~sy+4#$PiqqpZs0*@I4m>qLh(Za0f@Bl?m7fXb4yn{)h<6f6m9UM~ zeWS*6m%!J64E!^@#33-~$Q+sh`M2nGy^bp8saUOUPuMT>4`xzXNAOEsKDCwqb9&>^ zvp#GxW$TRiSUt~vOtvuxR9(0v-uvTnUDhj<-1Oum*7Dws7=*E>>R+U|XvAvXx{SN2 zx<4_tLN!V6Q+JQrCw3l^ib^yvwa!%`QebRSB!!edf(jdmInEWbdka$eG-N<>uPsV! znFkzvAD^j(rAnq!>jUIX_0G39?`y(jHYTWI21XRlTMPRQ3YGt69{-HZ(B(ndo4_2- zj7DzUV5D&goFBeG9g738S#+Fk-#L>IXa!tcB^8y=;J}UZaMSug5O0-01+es?o&FeW z6Do>bt{cg5sgG&x!ocQQ;0j}yl0s1l!3WF`fTmA(lYyg_SQdBp%;j~*5 z7`QX)+{<=1B;7{>CgwqH8H|YR__BSW>A$9!k9|*xQ9-lcu==I|$Xh*Es;(Ge_&0hu zqC5{AiX##28d{fdDq2;Dza=a+7{Umz>~S!{fcgDL|A9e zYsV|hy~$QQx5s^CCGx(pxYlJAWls}R0=h-awPpaLqEqQejCNm>UXGNK-uBOs5L3SZ_AvdB5 z^?{l88K2WG1nRLQf~q0k#}WVuA5`xL{S#=ZPP#>`N{^O^-zq?rjWY4t(5dC46Rk{m zyo>d*(zxspwN58DeYR&CgMf}qnl=3_cOZcQx3Wx>uP-M%F+!rk(sn*DO_x+<3fAw?p3d|DxT~B1FdW_>%a5xLS%3o(TAAAAUHHhwx%=722Nr=Vnd=doB7x4& zVkBuJ%^*s9^cM$tjOV-JR@n&=R35*@QVmu(2_c{jYwxASHhWglMmmm7i;&qnwZi;f zRmaeNlSQK$9r2r(?t_}zN8QPv<03Z-LVCZWSL*hY3{ITxWNPubjVb#@+55pFn{<-@ zsA$m<9&jV~SNU39uURgq;>pWhYz+((JoA+;!m(p`#s{%P*4ZITmPdvgeU#Khp(HxY z=wRwW=U&fwffeNXU7r;%em>7jZ|V5t_XV!_V@5NVj5_5T+j})hfDnBu3x<~Sbo_b# z_O$v3ps;5|5)bCRU!a(12t_$-Fetg&xwWNQNhEBdza7U0X?Q4;6T4qv{MoKo86i6Z zq1p7BdV()Md8i8WYeMmlIdmgw;#80KwWI7X2LU%KGjj)~UVUe&MPV^u%Y%dAV~tPW zi-cDZU^Ye1q)sm5n%viClp{LmAF&`{aW(p(BTu^Lu23E`CR@_RqLXVxDKQZVn_=ut zoVhy?p!>qYHYX&E+R8tB`c>nF{Oviu_AF#qxqb9LVkgr9&xZ3md zd>9}poCERsl&xREZ%eUIT~Pl^OpDf?pX z{qMlRnX2sy$K+)|2mJ^%9{Yij<-hyY{t)|~i~*d0{j;~R0b4$29~Ozqg!0zfmoV(g z_yfQ~LmM-@6u)}P>87Q`_CusRKOX^F!9!p4EuaB|6}Iyx(-ULy$LC6~xcu{HmVY{{ zc!Q|}0L4;M0@H%f%3qa34zWe7`IePzc@k-6$T=KKUAiVnh7CZe4z^%Zmg{^9UUQs;NXhE4m@H>ZlWPeU)+ToBpT_j#eNSK6q7%kE_Kp@# zXI&?hit292igy)xpl%%6cwm>lLw$lUu)gyOob|YW83C2cynDkim%CChKeH;8QlLt` z6%N@5%k1?NqOeWAF$?qoiEL^Q>vfmjMgf{B_e=-1_eB4*M^{3y+4i*q|NP4pGxs)M z(k)jsTq@8h^v(%5kimldt+I7G#_w6@Hx8zd@BFlxAD#M-Yy~GOT^Q+OSjk?L(I+XB z8=92FOw}J4$I08_lw#|*NVtogDPP#U|FBzmg9=n8%``KH9o_X_yJ!ae()zkL_#WwX zzu$zv6N;s?P+aW_k=y1sC-}iSJ^b1pj;k`-tpoSj^Mu$}vVkfl^$dmaN+Uw}xm)?q zWomq99h0JrENls0Co&#^pt+)SR9?tcFZ>wzmsu&=%M7?wjf^l2T%f?qxu)4-aa@&9 z7Nq7|C{kT~*pjKa79){dj_S8c4&J(!uYclcomG$fsTB7hbWAOfqX`%(pbj;tH0>K` zCj!(y20&kmE7<_fzw|~e11j)1v=ccme1tlU0oC}+^o}?X*B@RDdlP%#?dTE_Gyq2c zLv$o(d#iZxGoDySprWV)RytcCR%tu9$n<`=uiLE{D6{+3U$lz~?VaT2wo+fKU5K`B zdu?tVXl$;&hPgCv&f8iMmB%2ttzP>3gwj|ir5p_Ks%8&3-?g3z6`l%z;I0#cAZ;I` zFa6CAmb75>z5rwQ3G-n!^76%iY+VNbGtf<_B=MM3EF-(Y^Xag>q$(XA&GBIVJ$%SM zSDYgoXRse&bOgSp_I4nmKc(uc5f}QNv;#BGOuYgYHv9A>|K$;t5D4-?P)@ARtF}Dz z49e9~RI70FW1$398A4gkswjO8TF35z5@*_OawD}2G?V;D3{4|S0Jq>d_E4T_9b6ny z7)t$>dAB?3-(yWGS~LC67{o9!ar`&k$p?Rx zxpX;!r_`?ATjopd2tx07U<~4WbvhzivawuYgbHP$LWH0I4pwTiW-$PNlpgtl5yb4g8;!Dph*_j4MdZ?PE2_S!6 zfGgd$k20=q37srM?E2Q-_QwIDAYV0rCDSPg^4*z$eFe@;JzEdXU)3MN$}3;r#@vjR zt9Nk53nu3r+|4{pkg7)ut$}9VqinO9XAuW|X`eHpT9xPy!G`hgg9JDERwP}r7o?u$ zr@A~-sqh3jG>ccbVuo8CQC7j0Y`gO~OR?{Ho@Z@%maE31_4%2|NFZT7zojr(wuXN5 z78uY+V?-f`62ry;r8mkbix!OTDZfYvUR%EbUkE7TAO z%DZ^f$qv}SX%^6U&_V#j-M(wLK^Z@HD~G!;S}yoKfTqwt$1GwPs^;(jwv6w9_ZtH3 zxYq&0b=D5|-Rbxd!2j1XWn#htbvF-G)-tK4z5?`Dvg_^-hyH?pbc7*zY-P4<5@@*0 zZD($Q0ZC~0I|l~;Wm&=uB|ouR?#6hjvlc^9?{uZ72J?Eu`9Vs#oWI?XM2bA|x793Q z#~qhxB4Mffi777%MB3UW1zi^3J8Xvs;G;0Q1w@HhD^Wq$;7<%wSz5e&DnxV0NY$Y_ z&r3(<{pb3oY~{(%sYMbZx}T!MP@pfrjIaHQXO@&uY=JQ53+EqcY0xr1TnBmey!~^< zi@Y+Ar17l@cYVj|J(SnKl-5Q0aGJ6ewKHz=RsFakP2yw=rS@CdG^UEsrc@X%NTW5+ z-O1}`w*K7GusTerIa&Tr|G!@(kjrGfH^ODFdYTy+WxhepAqyJ<{!mQ>gxPt2p(w@{ zaGimI4hP8Wzep0hQv7xY3ZoB6_Cq|t86rXz|X~9)LCsraT$6eCYm%fEV+f$e9&-PukljWm%t@G*fKZYI|o0urk1?A!py$ zPG5;cTFO@35&pR?*DZz1Ct`nO@m4*-oFnlxzmuM~asLrLzn0)&N*(trIsySbKK3gj zHMd6uJ8mv6AZLtf(rQu>mPHl~ZSa9TF}KyK+7qMXKFKRdj*0f%?5S*g0qa|Q<}?W} zk~d(=Hn2d2E|Gkhq<)c9dOG#z+NK-buy2e`d|s8I=^Kj+iLHX~ygFka*=L=` zq^V&b_yh!%HA8o;jW&}#zJD`OyGgtW%7e$N7X^nitoU`F znb&^^FtUQ=q4RCAa=e8fJpO<-z}VYjmGZWOq9gRhwiYejovtNYeUJ1H(YL+1P^I4| z+C1I@x|gXSi+kTwEypX$rvZED7G1~rDnb=(XFL<7sq2}x%Gnu6F<#grrGcU0!7|VK z$iWcyian%*M8o-S2cBPx_XZ3-^9zn#nVs~)qhnbZV1Tzl*&D%2K4O_ZM$a7@BC=!1 z+OrQM*fbn8&ae*e!&Uzte?(K8aS*z2`&cdH&)0#k(;!KY2s|N35L|AXw6#~Dv(~X! zyBwC2Lj}H%6{v7Z{JFNT*WI-==n8$nf&7eCQHTJ7q89MrRaIA~*VH(Wj|Sv%6LPPe z{O9z9g+rRFU~|zU;%4(1Np1N7LJ*D!d?@ls0!;~i?=Uik!XZ| z)I1%ie=#Vf;$yci@=labSZdy;=gQKNeb!c<*y2}9k&^X6inI8P@YO*j3mCpgvC+V0 zY;`&6F)L1_Sa7^AA`A`iD*`DAHDa2Rr%}|1=+EdbdBr0ewkmjVfb%*m>=7LbH zuS`INN4i=75f@mFGHF@?3c&WXm-u)31&8(Gr}}{@NaPK(e<3ATu-^}pL`wn#wkQ>!&U~*j6(eu#3_^g=h&DG@{;y*x?=k@92n)PrTqIPFPAn; zyge8!F)~Wig^m^p>W!=u=*#`szUB-7yHYuD`2yh=QtgtP`N9U=BeXWl+C{%$rUoP+ zyzyB+=mB-^L*PVw1YVQyR`tK0eapeCwE)5y2)A)UAn|@aXtxDxg7IYcJq@(pf+I5x z&F4yFvV5`c<62N5HdPmIaA?gKc>;F)!%Rlt2+&-W9vT3gr+pe^k%IDeS3p$+D@b7EHLAxbd%AJ;6Y*P#5&gk25sfAU9KKc~+4spps zhFhisTAQZ>@V!mn27}tucSjVeL8&z-a!NGmvS5G%@UO9`qo%J~Y%pqPZZww=LbTE~ zeji$`&>&wQ4P7RUYDi3bI;tPq-RCj7(L#+%>95eUq^Z;Bl<-a_?@_-m-B6q?R!Zsv zw$s}t?x#}Z^dFZo` z=0IVqRS%aLpJ zqW)0RKfCN9)y-KlJy?iyD$FfF!Ftm~m!B6u?4_w|N4)8=T9~W=x4`pnV1_}}Q2P(zlymkH><$~#GKJIv%R{mHhANDCl;O6xS6gD-nwZtKy zWj8ij_eyv}kHvBf+-Buq@L{>RT;sYP78qzjVq%zi`&K#F0WJDgz z>}4m>{U`%znOzTQm23sYEHdPoNOBKga#{K1{FnX|vP1ae7p91?nFPLTZQU-eV7*17 zLnDIE)C^P1wqPyi- zaVK$q{S4FH+GdtkG;5$oZa~9K6noKtk~i*&w5qOhfvon)BYAr4Zw`6<-(pyKV<^oC zVtxkDC~>GcDQX0DIw%`>1XvErreS&xN{^f9njnlU*PkB| zZNT~u&UpsFea5|4HLk4F^Kj$+fB}3480QDe;UF=EpswwxwqALC?MC>@1rwM!$BZ;J zHOU1pHb=?N9{-&!f}RW8^H17r@L;g_zm^S`6rf0)7K*CazhG7Mv)DwM?VJV?M{&Op z7)WVOM)INJc&tM^0UCZ+Kq5sw{NP8zo4n4+QS$zf~j7$-S5RUwth5gRpORPa8) zfQVzskw0#r6XL08U(%t%-jA+990$}x^rn`UzB6YO7}EkkLB}_XdtB(=i*i%00P5Ix z%`XY&Xrm(}boNc5AOO))O9!pmf;QVkyS}Z4=%HT}4F-aQ-!K*A3^5c!pRqF(S-ncS zes0{>;>jf8L>H8voRMDu+gi|`i`)Y)VZ=D{Zm(E{dy&|N9a&&dk}~1r_n$#7&6ut9 zcS*CfL``cHNNxQ***upe&e|$?t13}cvSPJo*t3PLH-iR*--y+|Oie01IpME400-VrfTa)MBqC~0Ro$zlHjpvh zbc_$QG#6cPL82@&R;@-lUf@;@hhnw`tgD+blk zge)kOKtm9R;m!ATGBMBhY(D)^<;|=0ym3Og}hiwm*QuW0_L)RHJf#Hr7 zjwWLY{eFN`7~xQtbl9>Zhv~Dfr1bTAhh0mF3hY#41CZrF-A)=#4X~uXPM>fj@5x3- z4DDgY#78bZP&8bWBgRV0#%ESE*7wNNE)KnsNNASiUGwWbHp~z4@tCHf*Ubnw@XMeZ zVb)gF$_RIL&>Sfp(sdGM7c#mpRw@6;4i(JVg8r2FC)1Y8u9wDDEpUkF5G13tKu+6L zF-Y4#jm|r8J`~s1PIe&vrvXEjA;-i2(>XDMs;RE%<-ihFr0G=|6ePfkcFF%iOD`zI z3>iqdHdh-Btw}e|w_ftSuIQBS4ze&Nq>ENAU>e;hP!APU>~z#sdV1Li>kB%?jwQbn z*z-z!&pqGr?ok4y<>MMFjgq+!TW%J#f=OYHV~>0@0q|6 zv*!N5<$aiF$#2<OnM}_1zz#I;c}XAXM@RPyg{2y)D!G=-`r@o8pE7vDwOwGgbvIq_RKA zuz!e-WNq~)ZCj*e70Kk*Ti7uSQr<)T7^G37f3N_bq=>AN|u&fO9`tF#`2d^SuFgJQk>*ij^D>UPf zIfRA|Ev#|=?5_~h8CJjX^iNc#YEZXzCyB~eZSC^H&A#B^sdM64G|>2m@NXN>UZHld z_+}9_DXSaTI~|?2L2>d?NZw|?L;tsd^s4nviJ1E{KjpQF^XNJL{3kb*S&+<49IY;d zvD<@(`Gp!GI)*e8e`v{Wcb-iW#ksU~K1Qd9;Cb+lfX}p!`(t1iy7YcHcrdCn5)&f@s^9Kg^1pW}Y|`>?r+NM7DTklqJ^M@j?`kc3ruoKsydv<9dUhp8Aht8{ zrxmYPaJoX@kQ(2|83pq2f;Q~^p-HU)Cy7rYHuh*qNWMd%7D*(2l&gN~6(l=ZojHah z^`=r|dK3dvPnr+d<8GKz&!$<(<#|O(kYQwJKJjanbnjJjXpZHF2cAo}_&Lc`E7eRp zZ#7G!yX7R$g`@!=fyjlrttegg>w_mmsI?oHKqYAA#{ishZ_^tV%--T@YZ_AaQJBAR zXsfa)u|rzOn&2inu`5RT)u0_1eG1VAT3e`Ul)Tk?sR<8qxS1Kg`YTR1OfFT>Ti_8o zVF2hr-lY` z|Efi#d7AlmoJ?~MEh_x;gf*kX3h2rx@-Y}l(?o>LUqsgn311MLoQE;zl1jn*ObM-W zMf@TvtoOX8$DB*GVuO55O3aK_*mzqW5nGE?sBl}qU6$I(<~aB~g>AMz!My&5)Yq34 z=d3aEy}uKWgfr>cl%C&|?`v+z)_G6~!wL6sP%f+xKk%mqR(QtA3G9>thScd)OkerX z#?^;qD=vR3r9=ItRa52U<&+2sCz4n%TSA`6o6Q^kn`T|QGl9{2CwB%BqmWdM+T;xp zhv{(D;X#MF2T-nlNw4ipnX{8;qwtazdZTOps#gmHH9C2Fd$uLu@2%V7bKd_xl*~uo z3XXq}HjuC(k8uVHd7$@fUTesNGyCx2!=I6t|MWn^1+I~Zh=?{98@Yz~FSN9rW{sfb zZV!Pg`Bjj+0IF1ypCyg^9nfkXD63=wfo9$5n5^x*WvxEQrEFOU{AsR&Un0ya()~NE zsT#3TWT#y9hNUuTQ4BwO_~t^vazkHLKPyI;{CW~$X`VA&wTRC1ojc)&6d%5&qnLoA zLU4?u6)VkCQOS@yEk~Tq369i6dyZ+tK~1dPsc6G79ax{pE+obq_4#l|KnU83dc3!u z6hXy4*mAHCO`m$kH4kVt;nih#sZs*N)0cy?I+9PSDD8GPLdql~aw0Q%zoV zdI*qs9Y>{RHEC5rHM`Kcluiu6q*1qkfXG>wotOV5%!?eepB`CL@*xW{#PYMF&+u|5 zUt4qxg#AfyeFiNuAcW$$AZq>#O{PksevaV=(6zp7`>(H){49e?$iR|KdG4Zn{@aZc zj<}-BtE6Fe5K38uE(cM@t90cJk<#w@ZLWFE7G)$maK-JuCnnhJX|g(ZTnwbzCYKe@ z)V;NPP3|1&lzEAc->BDTrz1{B~13HVS?E0dfMgR-v=lf1OmPZC5&NgX8+)+md$obU3mkNmw#xW zsxrKOp&|bSyv5*q{l&|CZSJU?>&AsRYxQNj4o=VQFJUbHl9)fKtE4B!R*8yC;pNe_ zfh}`-ciiQjkQuWCu?_~~G}r4BX{TK@&56L<%inoIJU}a6k6RE0ZiIwCQ;7FHgZ1x_ zvYk?L+|V*y*(uoxgEHC*X*C`fL=f#{B~Re(x@)`$G1EY<^bkAX2^fn=wzKNIIw8Y21WUC4E>~A>I=TF z1B3aX4rir@;mnq+)_v-CC3k9jS}{iYi;kr~t%C>QC}z&nPZN5l{4YZhmb*C~y6o8W zq$Gy%40bWYg1N(w>ZtrFXt)(aE0>NmL7xVwA4}Ki^n~@HrQSDek?2#){9b4lPH}^- zHZiqt{Skr%)I-HY-H@>Q6n;%kWNmy9kb>KkDJp?j&B^kV7Ife4UKmbMK1Gjo;GOF8 zcarg5Mx+$w!^=_e5xV$(*dpuXhLds6s~tBstGI%`xM{E-UEZVMXlpr0<<4(Aeok4S zX?0-08sjFBus*O+uzt?j85v?v@nWptBJf<4Zr;A*r_SFU3t}V16;s?!lnGy^%-Xkz z967qr&1Ot-dotojUp_wplXs&05}hNr5TDpNeFUb*N>})c?(DbP8*^pE0C}&poVkY>c|5q6E6&UKAwMDffy!L5R1j>1Ca;7EPr-? zULpys-BsBa&&gWoZN*yOfdHi9+bIk57~v~wKACgggyErHtv>Z0YfiD$!aejgo6Q`Y zK3p&<$!s$B4f>5`jYqr-+1)d0lWM^Nu_}%NmN#k$>fTNiUT53XW(S{b-UJ*n%bpt~ z7bVAdTK}ujb(z@LHwHNN5ljy4cxppYzW7+1Uf$6=dzaoS*o)BCSr*>!;E<{R zk~^!y!i0jWrx-Aq5t`h?D4MfeG=;16BX<02T!nv+Jc+Bo4(k=NL7vE>~e zFFs$C(B(ZcZE8G&EX_K!O*$6@@uR|#fvMmy#|nM|Pi`n|7|fbL0l4q@95;=f^>TCQ z0L^f_Ktyx`RGh`;S`tK3Y`eS`Oyr2e7;oMk%|z~v*~NpcW}ow&BU+YpCV%jfU`vS{ z#R@rz6lNaKm~iJj=!jx5=@22N&__WWM;WSKW323kjAKG4vnaQqp{DDV{-XRKx_3g${1&c>Rm1$cAH(3D8%C*9s++9 zZEvM~=J_V^d-dDOn@5-u!k8Fuj((15Bec>7_n1#NJMhO&s$Db^)6?&JX=`8DT=>Ig z{A{O1p-CZRLqkGeWp0Dmv%n2%$)&2r;2qtN(^rs@lOGop>?izoz3JF0=?^&xq|P{T zJ$7wzf0*k1NbQs?&h;(9c8cX?`^En9GamnfxF1E3=Pj#WrQ>wxZDM9+9qLOO(3kG| zMVXh7Y$lr%-``CpD~+iZ@v4Wu2+<=mGHx18NF`H1chhuS)>KKx{+MNfsO6BI%Y|Em;%Ht~wX2Xfg0-NT zbbfVyZ8ouuR;4j2?q@ZLZ2`$Hn-YZ86YDUi8WL-!@sPd|L?M%8Qg^Jot^l*KVv(=p zkA*S6vuAprM3pc1V5Ik=!V6>m{pq`yW?`p1l5FZTQf`#C-Hrh(M`I?w?pQF|ey=yX zP=oWi@~9>%R&P+Hu}$36g8!P*zRbMJk3TbXv*8t%u7#tb#M7X=S)pb6Z+^^J5#2VU z_nfCx8v9-q;pbbWb(<$zs@hn^YLEN~?r+%%?eyGKgY(;}s4kpEM}pdCUHX!4&4Sd3 z1{1Ng2>tc_*4p*kaJ=nMh`p_FQ?FLsxEVqooy=vTckG1oAYE82eCbIg3j2LMDar7? zRomqg2ctwR`cpD?n|=p25ktw^ycO??ulOKfx7H9&aV zr5P@7?eTmw3v0?@_%>cm>omyd@*YmpU`I_c+|WMc^#%%rt^{saUoS*BU<6AYzo6A+ z{t=|tD0<3~SEVYoct|Kf>;n_+e7GRjCldaq%(cCVz9(05{DN0aTen?2xNzUr^t84_ z7dK}3bY3omF`TkE5E(lrD2Qr%Z`Wl%{(P++dn?E8LV+48l(x--o5#zdahK|x8lr-p zs9U$^rn%n4>>H-ZiHF6UY7WEC8@DCboC+?euhkag6Ia69+$WS3==&G{T+X$CmmUn~ zH=Vkzwn6Vi{<)s;!l&3ZwI+_ApKXw>h{08bSgo|qX|@RX_q>fZZjZi3kXp#`q-?_# zy;NrHgt^1nB@QL{HYc6TjyK$JQF|(KgW8bZvHrBW^|5D30DII(SjI%c=;MiM6o@B| z^EQ6WCzk5*dnyKe0)M}wQ1=ujhwzC}t?$!8Ys^V@Gak^-?a3ZN#=$yn=mb7;vxR*I zOvSJ3de0}9zxflv^U?Non1&j{J@^*(TIY!kI(J_$7L{k|KFNnvk0B)%*EKoV_yUSW)88HaP`J<^uN}{mbh?oHbmCsWqWqn+yC@RN1QPb(1%UiV%d#Wd}5Ku>|bIzh*nHFHGtQR|pDe(W5z^VAaolBuJ{-5g!<&?VY5W z(!h&C|+;^Oo9QBIG_ zlT$lXS<@@OGFAx3*L)l4!4#s+OF zVnrsHgEis#CL=loL3UvQ$se19IWjQa9|Tee@w*0M3H6GHDX7nR#Z^u46~-Cmg!Gz- zeOaGC;3n&$#3G!wv*d&KZrN8(MwDbBKPtTXtGavz{4`7&nvi_g2EMeJ4*E;+>>%r> z4oI{qneUToeM?q9tu*8_S3$aI%CpNJs3>OCaC7!voX$n%tS7LBUs*tC3z1of&mr=J z%>1(V=8O7mpd&_?JgOZS4gg6 z3t+j9aSAVfX*Bmr3==>asN^1d%4GJSC&=GW^Mx@I7c2lQ zeKx;^m@z)N{tTI5`_Fa;epEy5(TkzA)XG;=gVFwZ@fW!Zg#>)KvI1p;zoZO2I|Was zRF84LUZ`&b=#Z&@pw5Ibf55*u}_=}~>z=I3=2vr&hfp@{BtS3m~MIGng6bdPhYjAr{- z$M){cHj~-+l*zbz^w#~K-Cv~g*_PjmP2(jw^w+3R%eF*?_N!a{d77E05Z$J14spCyxiR%A;)bt<9GxbCyzL=FF}e6n9B*e<|ob%<=DS!nNHy_c=Hg%%u)1 z8l?xYg9nelL;K~!wkp@he{Y>{-7`rTss=utnEbvq`gS%j9XCm6iSl!we;LO2O^~>T z1fO%=&bwbGJ{uIONWHQ@o z;=q$<92+WfD*QIAc=fwnPE&5vV3WsH@+Fa%_jq0NU;vwyNB&*oz447e~%|dP#qI?O>*F?akj%y7ccr+mMBpSc`GYg^f zA)%@kqQLVn*J)O=+h7x<2@cHuO*78pWMrZB!}ZF1W{)H6-q;ec!&X*C24U*+<4m`^ z(m&TvO91!L(wm4kCg?2sNEfE|d~2hYK~-#{`%m#$lT(j}-v9Gv_#MxLQSv0ry36q} zb`3*;em{b{$}=?@7E2H&3~D&A2YT$8JfSq)3`W zDu=5bI)t@ordZ1ys6st%;}E=s8DT7VrXN&iI;reJdFs$*`$Ehkw2N$vM*NYMo(mbC zBiVokvn*PeF7NXgWAuEoZpSkj$5LeSv2}CFck{V2R7F@5GGe_fXQaJ}bA2OW!EYEt ze;53o4;>Rhnn-X9Z9k~@7G?`ECNhEjCyWC#|p0MGqjTaH3Ww@^k7&%W_ zPGz_kw*r1IsoD}X-TewyDUC5ubz(YWvFH)jsG-bZ^VPoCOx>~Uli8cdoc|e&qP=f1 zWSu;M=%X!=YmSly?w=^=IqKh|6TEN}QrVaEX%bjIbkWI5K~8o&zk(DvYX5SoL8R>G z1QL<~-ZKhf2~LmiT*(4X3)tH4ef!#C`Zij?me&!cru{W8Fb>#u<%)DdltVCvGt-8#W7;!0{Pp|2j;O!6y0<|*_I36?E z@yTZAIBj!CCZL0tW34rnpe749UjqG7$m^^%#HM&-xwO{R)v?O(4shI}oTDppH11QK zw6~f0$d>88J!go5C810=K4jQ9-a0+3=%y)$rn;zXS)LxQKe!QZ#x;(VoS?bpH1n}i zxioG(M$+rlK4yzyHY_U9Le@eDUfGDJnel@|rlF_9qa-)%<5KbUNF`I=bPR}nm10^F zo1tPx>j*PP@i*nUa2yHn)tx>KF1;F_IT*e@(v?$^{dbQXpwqFA^q#FkEz#OOAwzL9 zRh6H*K_K`vfc+>EFIe}bZ<`B$TeIT+_aXrd`bQ>son`ae-$DY|lbJI@COs_(@!O>a z756qAx^Sh*dg}JAl_caUA|vpMsq=26;V4ELw<6{2MlT!uvU&kkuFT1;a)%zEHRZ_KawVgW5SAdJ_&4o-?UGC{UkdeK`j3DhW$wi z3lb@IzFp8Jo5qrTe^dXlhv*0D@r9Wr%ZlIq8~P2YK|4Re6$&aDCS%l2)yb9b#zQ5S zR@FvCBpC@8&bB%}c}~Hk z4nh(6(jUAaf|!>R^5Jb5@E*ie=K4ipp`x8{!9z0kD+#q|zTvr`w*$?y^p7wu#=|ZS z&4I;@JsAyhd$T-RaG3bKikdBu>Egwp!Z+4Ic)X6cznw*{G-7K_io(8B-uyqd-a0DE zZ|@rhQNSN9BHc(xHw-D=NJ)2hcT2Z)4&5o;pdj50jWjYalyt*$;koZ~&htL+S~GtD zi&?X-z4tdh@!k1uBeg9L@#ZIIXrczlXy;Koms@2}N$iIc9YkvCf%txo97EW9k})+7 zB;I#PdaJ<`SR7Eb6x=^4*dZXn+g~=z>}Ftf*Xrt)yS;@@XQXnE<%lRp!ygaQ`axd) zv!I$*dv912DC~?wFTG{S)jm4 z%U)yD0mkegB(B5SYWV>}-6*5{*bR5m1*>S5y^fcj_Z|OV%q4tHS4xCj6WK$Y-^j|lf?IL3L82^FRv|HfHnX6vWv*`JlWX07Fd?9@Zc zML2hYo2i2dCf4EuuZ-jN`)h2l1YsB(Ha{G3B zUw3+nvF8PfYPJohcn?%n*}Xj+v~&+y)oJ}K8!ydTisxhAftp<4K6K8NWEcv_c+JKS zH5@IwmhW?Ux_pUd%ZF`DdMvYfrJvuRP6SS9d+C$O?f>ap<_eDG9@}q4Ui+n3==!M| zNvln&sntyS;XUgfD|(>ta@6UjbD%fZk=!m?Dtz_+_Ugo(0JFmdOkQ`Y%JNL}3SkCk zpkVHLd7$UB-k2hYLf~{1<$A3>dz1)ixdX=1Z{+m(;`I3GgZOj^sw%w$F``;iAj=26 z{m0Mn@VK>Z<9~jQX?}||(gJU!0UD3t|67!(+B#{13PxEr|=jjO?i?hFJ(8{{; zP->W*x!B}WZE~bj>a&73u`CbfTX=7qg;1H&Q{T;trQM+`~$C= zq-x%|TygX<_PJ|-MB6?=5mZ)Q{(C|4kyv@ZywnlPIWvolV392CpEz`2tv^F^mLs^psfxL3xckE$7vEf3KmHuRfvg3Tz7BYzInbZ0 zs*3yOH6c^S)NNZqLzV?L9Jxc^XSh^?X$1(ynw9;Miry`Nsk|!7u^aQ*eG%%m zp{ccu%xHam{b5AyMq~6VXN%|4faa_X( zaa`X~@b6p0r(cyjEbRrl=iUn}!83&%cp?GE)Wd=KkmBdJjV9^F!S7pR;Bq~U zR#1EgvLV`|D&A!;o;Y{G?R*E|Z$@vAW@(x45+TX*G;%WtFJCy|P3pV;K(!QA704#E6)9Ji4XT_iD=a_h&42_mqOq&aGogE7u)ZM>$kl(D^c!N+bma(Yfb@) z152991KfA}rh^|ED{+mzK#ajq2LC!$Hj883ueEVmN%G#{b9g&0QAp?Zpdp~$ zL?cS-D$Gw&=hAtooyZ<1r-a+CKd&E&J?7Er$z_E4FndrRZ;8=(SkYFWAHiP+_Oe-K z5+_;VEZCH|tw^0H!Pb(IStD~kG>DOcOlg6FE~2N9*PY?}1K{7^Cf>S(Ns)OJTHiL^ z@x6Uc{QnLnU&!=crbQzG@F@9r@td%&7dNDp#k#mfX;w||tEBesDNl$HnF4Av;^f== zM-Od!+v2a#<|q)`V?-(ODsI*(Y`P1v!Y#69X0(Mnaum^HcB-wrdssqmuQNkiQ%R39 z^SQPi@Ao)^vW9l)p3}VzdT?jBG|hFEq=W<0fl{EVfR1Vot|s59a#@rFwNEtOdD?>? z7R0#Q&&FJl=LhTaQ!U>54SMtKn2|GwX36k_qOi-)2nl7EI6A^TG5sJ*>uG9ID=V5= zPYHV!^Lg(d;T*imeDEvo83)@0Be6?H5p2c_LIj8df|-wz;Fw_HT=6Q_p(@@t1%2@n zCX$6p$17_T@o&lFj;2+pFJL#SaZ(UNA%Y6@gFsuxKuf*fC^*6`O}0?}z=Q6wV*399 zQUBd!GQW_UkPtN%yVP!Bjm9Eba_5N0C^$=WF0DN2^4c1<+;#$DK*6j=1=AxRQ@kH%yE4 zlTRGou~dOtj&gL>KeOL!vh5RMImETiODy~coIukq+ViO~L?-!_1>tlADXfQi)p3PE z2E!do+f7nd-TaorGay@ME@C3f(_N;{r%o?HuoTa<%UohV*IMU0CCtI*uw83quy5;H z_X64fTP(2CzSO}}34t^G5FcoEea~TYl?kgSCtclPl4Wf|CeIJ+Wy48O;Oj>df(Bht zxQ@ck-io?(-Oc!o!}epo-GKYIX>;Q$hW@NYNuWdwX{1f?mNwrOb_Z5ZSM>Kj&{4>f zgAJ~=VB;Mi)oy0y7Zk-&c=gS#Rt`&_j=@5o4qwyZj?vPO{g*QOWn^ z!tc4tr!muQM=oXP5J^0BeOk6T2&{O)na15?qG!{0vB_F6)A2!w9WRaqLh|3O7I4M@ zV5T^%_%yJt*ML)(2j70We&?Ze>1(e>%3O+uri_vxZXQH2Ck*Hv*lU<&^o*6Uj2Hfe z;H`hV$GDvJV*)_8_Ueb%5UJfQdx9N34lSuu9whiYQIY!$yT($YvNAArEwMOD)sUWT zg%ZuSO=Yi^7f%hk+A(9~jCj47M_O|JfKKmY9;{ZK)Yag1y(bh)c)+#7Qt%8kaM7xe zPuzbh^G|(mn&WEJ5vwV&a6%dQR39bS5GxI5dI!9WSH8@tBO0U$0A(W^KO1N*v3`%>KEW z=Lq-x*AKsr)BE2lzbO6&uJEBB=S@`{MlAj7t)mvZlT$T+bW-?i#jV6Lc2esY;c?3l z2{ltNU&I6yY=U^~e^Z=$u7pb^9!A{AH7OdnHIW%3-+Y)eN^8})aOK2vRh~PL{u5brsfJ!1y%WcJ@q60( zfh2kSB#l%{a|Bs20<{^{heVg@Jrl7EBhwft5Wh_eydyD8K5WInJ!q-+Fi2u$`f>99 zPRoDTyQQz_;%Mbuv7{fHh~H5K`&&nrlC0=QvVg}+ZVAr$I_4Lq880{EOLqaEoxp^t zfxsTgj4v(4zi=_;4!2?(Pg0o}f#R0k#(FOyF-nCmpoeLMEgFxZ) zH$fOpvk2_l(#|DEsvId9#^0S5x+R#J@j@N2igDxn9{^CKM@?3x=P=d(KJyCg^D=@f zA#RmcWF%p%{us2(o@f8L&flS9eY{gj!Xh)z`FgIs`V3-&KJap`+;+> zto8igUwZ3xGKgu!F?m}Wt6udU7cwa?XZ^;c>`uAj;$iN*Y6u$gTR>YWpDvRM1Q9vsteBi)nT+f6)ybcx z&X%hou!qO8Ui9ok+Q)H6Jai!z0gjG|R{*~9f@xCU(Q$84(y(vcW?yu*A*{Rja@X~D zUa7nz@EaYkOC_MFT^BLvz@j4QLh86^U79EpCM{W_5|5WEgt6#AEDOX_jA4J4af|Uy7*MIv4G~)V&(yeo{klnRRBVXC{FUV9iaSd=V*3n}eW+ zi(>YBc zs-|>HD-jY%^vuFWHRF4e1;&x3iB0qWkgp^4w7erg)U>t8a|*^ZXO`clret3hCBi3i;_J2UGVG_1UsNt&cs}4)mR{^O+EC`wIaYd3p zELQ#Rr(1b!Z@%o9b8Xq5)&uZWi`(I6WAA6a0XPu^1m4b|=%m+Pe*XndW=rK@BL|l6 z=K|4TC5l(4jx=C<36*Y)Z&qBfs4u%e z7Wl?#mZUuI6}J>^;MATmy#3O1M`rf*Rty=nkRS$_P&e!c^o82Q$643Oc^9z_o!lS1 z_hkCa_&qLv5o*7-N8Vpo=XNu`==}$wn~#xE-QJKXR$VIp$DTOS7+#EB3AqW=TJIvq z&LtmFLHV^z2fS}idph@icU>Y^FkNjfln__zC7rI@a0Ga`Za*WMek(t-a*>Fvi3V%6 zn>34;WuY5E7`p?OBN#tpaht@qu#eb>tc!@=;)ms9X=$18Ny^Bn@t{ZXekwbZ5^LYf z6>rx@4+1-NeH$ti<~c5Q)+F$xoZj_(|tz>0()TX5k6ws>01#>{-I$98(4act&k9ap>KHXmsO_P_ZT zxh0gIX`KZvtbK{Ews>4o!tiJiLg-wnvHRa%JFMGp>%SSg-H+4Ce6tAI%gCCJ_+$s< zH@#usUc``vM}Mh{mG%F_;=!K(0+$hC!h`aAbv!|f1^ycZ63|zVXu}?i%24tC03`0? zA2&~q%uE7zv{??IYbOTJo+!taC5>0w$g z#iNum;mOqbo{R$eaY#5PDoQ~!#fyurIQUJEhW__@Fve^bRKC5ro6>cx(Ykq)&|Qd_ zupqEJEQ2&4(6I6-73819+xxav(j5^(`MEJlzFV%S*N$Yn!|$d!Y1|Z;2TCFc-0#@mw zH6R9c|7F(PO1!KX#m)E9X zTn|+wVhA!U^dAW4A!z<>@@q1G{WH+?ZjK4QQQM-K$_^y5umv5 zZlDYq`gF+lj*wk#0CwAyIL^G{lwi^Pi{XK73Yh{w)r%sIJ%;Xm5-7XrY-?1IId8sN zw;e~M!u`skY4yz*dx^{SDG?%KC`N}D@8j)-WZ|l{Q^xi$qMHwL>SAL)@f6`*U^?F7lYjf6P8G2`2%2aS<2(ZJT*$iqkhp8Titi_xTh9m^iZE&B7;+ z8fM;HQlZE7J-kw{l(!ZtlaqACKAY12wFQCJ<&scN;+y%ULLmVw5#qV$N!X;g3h&HA zN?u4{UiW5xJ{~&0acK*>&bw~&hMgeiv&`N%fqzyXBT>Rwqq$$`G@8}d)|?t%0YW}n z)5zX~L#2`XegQ@8-sXxVMdvAzF3V$Hbe*vG{r+`>>EVjE`U(baBI>*`(kNY z!bA_!KbaaILE+1ZuO(NP&xcS1?70e z4^_2OgOmq%q0YSWQ|5iHCCBG1ETZ4$Od=08u>2Hf39mMRMVfg-jaCzqavA-L+SD@e zOqU7%oB-#W*8!5*p5(=pGbc{Op@CM{g00MA=QllzzPl9-qsE>9!Ml^-jOCmkKa+`Q zzQ~kpLBeqgs|R$$yER7!`4SH&8CxfH?~x1^zXUE^XvS+3Al3xeP3Zxu6y<8pJ((Po z7Av7-H>#^BfCk=6z-a|5pY7u6y3hM&S1@~7aWyt-TC2@l#}q?iDpQ>UJB?#Txmw29 z5pg%X94C{mh+>5$O0>hpA}Mm|%r#>6Kg(z$vk z>t$H7*&pLm3u>4MyPS;<<-@_({K6V4$m}zN|FXv;=imtlgA#OAw;d)_aE$_Wa%;+F z`2xfqJ(akImU{C;LJHyiWmpbC60_F6AfTk#3!Tck`dt()_ja#h56z+=P=uSQ?Vs^Lm8xOIA&87!qb5QqpZ%6di6f%BfBvipJ^x2LUmdYWnP&>_pD z^@CU2HwFP~0ua;bp84#qzAHFQMRs-YgQau&9HM8OC0hDbh0htU@|j9ER3ta=a@jil zC9y3_J<&&bI;CNPBJ9(QX?=*gYmRjpSPOUWwy7S=5~Q9IX+gQ7qxX=XXg-#v!e_cx zBk_>nC2w)X$unV@WWOhV@#wRMHFm2%&u2PZKh(ou zc5*khF)EbEP}_VgDpXUP`Hz(AEuJfG(X)`4cJU!>!`y>OZPOQw=@u`g(`l#GjlCj> ze7{``&6(+gNtOKkY<`z)@K#!%t)Z*fp4Y~he(!B1m`I}+XpD?zAh*X7`Hpe0cRc+E z0ZUukDj0()m{UeJqc?74(Z`6aKAz~N;}>086&vi3TPM{MRv4h)so8#)NmS|>3jEe+wthgzd+UGDR> zGP_g2vLfpCb`EaE#cuoNp7^c%0mu?1zV-6}?4wO**;JZHXD|DF+dsw(PPZcvyNJU| z1BJsR0Swsr@)8R%5v|;=H+sO&o7|l+b86qC3!p`CPKC0(q)4(=bR4cBe9R6%a@1y{ zfmT4Q7j_i6 z8W|m&W`rXr5rUj8DnrQ&=O;uh6AO*via zMWv`O$He<$?^g3tlo(nL6_fZ(mO~k1$<&H`VU*3w0$8CA=a;j&r$?k11vq2Ze%Ze- zM}@_5XnM`z^%Yc7#(Y-Iuw!kk*g5mCqA4Q2y#RA$xsOQa+hE(?n&x9QoJUQJ(H%L> z@EJN3Vo`WkMef`v6EiRJ!|ydHqZa>~5Eoozm-J&VDf}mxcPzutzQX2i(G_I0j}-|F)p}$7Is?XyjVA%_Mi;6s@T*95t_;#f(0Dk?%h5(GN=8e3HuB-mt9V=c#ohJC{gtm zK{Z3{t(na=oFIvzVd0KsPWe0xQ3M`K{EIZbN(r_ES7&e;pok-&(e;DDOXe7Pm`95n zB_!KXp(Q%XajPywe=+?w6inh9h$6hS5_LIiVlkAsG(@df%(b67=Nnu8#y4Lo)7Cga zLZi#V`;jkZ3X>z^0*XH(K{i>UVKvh_y;kR*xym#xrOuTQBK8w?JLVgQWzffbC| z-6UsK!mkiZoq%< ze@7}&{rDQ-Ra7RF<;|ntc*%C^lj*-@f_#&KM*W2Hx2u=iEZ(ygTZ<7yki>k-=PP{~ z7*H|V>Gg;ix!pIunGuwT8JQhfL~bLIF%_JPh1>#beGAJ#wmxtXBgjPmrC&%U599Nk zTg~}P8i!lb~3oBe??z;j1ZJ%sv6kQm&kdFL5f(*P&%Hl8|I zneQ1M{rBr<6r9R1+Qp#@_8|e+8Rl$WGlnNg;=oC(1%X|ng0K!8ptLf~oe1h>BPpiW zFG?3RY341Nx>Lr&~4r$_s!mYWlDOaD4{RkkDOSm{`AugC(y*0CBncooO@vs;EX@Kntb*(mF_X%Cbl!eb zGYV)bVi^gUdKuU@`RF6+uO-P0?Gx!T6!6|&)7&8uKiK>`Tt zpuS^!UZ-GS*iF@9e1FywouU{)BmZ)ee5!M9ED^Em(MWds@L(0_(vy-vS~qvtYm!_y zcRsJan%%2Uv<6`eA?=K?! zW4Z-TYEC32r?tFUoqpj*oeZC$571BW5egHdvTJ9pg0(z1$QmM`oh-FA* zM;RYWZxD3HKEQ$i6~J7aH8;`J$zT4D()4d8UbH7QPfG6)ba!@6WyP^?+`*@DrP}6E z(?J46LBWAmH{nzgz3PClbg#?lB02fF+%0h%cKh?Kv2fY8DLLn}{C9E5oo>j2vbWs3 z!*Mm`xR56aEK7~j%;CbS6P+hQq% zndi`;L2*+1h@>H_!>MUIb)~fF)!dB&io=Bx-&v=m>^*WXbmgy#CHX#J#}`*p%ExnB zSf?H#Q;l#)6iP?rs|Ht>#Y!)AQ=#rzOBl%<{>;P@i_D(bz7M_~9`fyWfh9sdEUzeR zEm{b+3CRmtuqypb$Zh_^pV*V1-wt^Z$Ktb z^m31mR`^99s)JC}8Eq@{R2XjwM*ypjEwUy4b1}87eNuc{UtQa{*i=2-#Cx13rSapG zCQ6URs)<)ul%I_uJUv6C8*D$aNvq}p)~U7tf65{tdPdfe{cVmc2OGo@QzV_2eVDy>F@`*zTX2)BhONucSIewOZ~-+l#6M*(7cl#0e2uSgYy zYgFLdZ)R#!i6k-Srm+Q{C<5)3}B6HFZK+d#WK5r5tQ|QKq z*S>`Bl_6y(Rsag1*Yv+WeUDdx)N0bpL2Y@e>j)kn z^$%ku{BnviqOmg2yL`F1O5?t{Ve2hhRlx?5j4iS|PJU3jTjxPFC#q#pGRq*Zf$=&J zy>rf1QX|53TVc;&qrP1-VR#H}7rboy$Sw;-Az!x+a{BYDOZA~r(iA?R9NOcYaHl-y zv+rD%xm6E&>bs+dlJA4CCotwQ9pH1$CSMCX)+OZJ1qzSZ4`mXBNY-#$S4@F1f-wQP zqefX{-iVo11HEYXi)@$Sn0!uGvc^Pt^vGTG#!j8Wt6E~oN&Z`LTW;g;U((g~GnAG) zw?ZO*c1T$MCJMC*MbiJS?Hx9+vs|}Y*|=KHTnTaBx+>un9lY_rUyNT^g6r8;X_`^c zgkZ`tCvEEJ1S=e{CI&7s^SYOh?wJ#~9?6?iZ?(!+s0g|H-j7LcZP|lBZIb%)Y_~BT zCDYN=L*zzIlhvYGS@qu83$KONH~e1<{Q8WOD6yo0N8HuEm_}0MZp82`v-!_!igN~< zmxaQ?GoVOH94V5MiD&jivRgc$KDe09f~ z#WiNQNWZM;qao7x&kGDe-|hao`gbU)9W^E1x>ih=qq~4_Kw}=BrmCwdZUHG{(Y&TdGfE!3rrpdtP#SH8uV> z?M#F)X zPBX(iFvhb3dD;07JPax7SGv9KJ+p3#^!sh$mD_uucf5_3GgWi!sV^$)5;kdP?;D>=i8{+h;OiW4A@pUg z;=1~LIp_XYXOeyhL}TVrisbcA=KuwK9x zve8pKwV@s-WPcF$`0aXA1)~oTuv2=y2EXbGW7R`0{^nQ>E^IEcb|#Fc=SJye}2nSq|<&G`ew#wg#tGtjFtd^lPh8(#sadN26hKsmyll+ILmw&?-AC%AZn@pWgQR!2hcb> zqc@0J5^Ed^8eVXKp10?s+mjk=YE0VkHhw`&HC3Ki`vW=&GRGG6R$|w0BG=&?ruNOh7^KH4voIkcT}B+RW;!2r?gPUxUI8|+iJCqFtjxexL~Vv&z$|>yt3^VE8wI-@MU5GnQHE&OEYc}UhxxWHY429 zd)!G6Ij43&vAOTjF>IEwhoYe@fIb|s9N=k)9Lw^0%s;u4KJQ1Am@1IDYmWAOWu@`{ z5i7s~s7#FJ#5A0Jox*C(jM-EAe?dQoc#bc>O*^o@I}@v7akpLaGL=^&L*5AokaN6Y zGvmVS+79p|YPLXkJ0OlbYTZ@~+X$-B4s3p!x3aN~7N1AV$Qw{y14Jv=t2w}xfL8mg zB?7`7eztogQ6bAv$`-qpXoj+|^!Lp0 z=!hY9{1qy<*$lESc6h&a7pfg;ne)DQZ)$AyC8*)jfoO- zDoI~x&`*oe(pUoG-$e4e9!#;eSWY4J0r40(%H=W;okP6KLRlO72Xs+^^*(`Y` zM1trQINee5z1h-m#Jl}qx6v3+LlJXOBj3yyEpA(VM+C?+Q3M@!oVNUwt{`_Q?kgy1 zrl^B%`4P=DdJ@@hV?Cd#0#dx)9Rl1_KX?>Ts%J|@L;5~;Rgm?^ZjF4pWifp_G~hA;miS}JjsSFLFnfW0qC zAdEH-3D6+i{(T^tnHRL)eXmH}s?qlstFAM}Z+`GYa*N~0XM4QbOmsZWJFB|t*eU%8 z;H1n6>AmP#5o7KB8D~`MY=~=acdP^ltvpu)1HrhWoy{C}}Wu^2E`{ND;m_M05N|mA!yn-AK7Z9Ow@M&n-p8@YU$V z=}rXO8!~F}qnPVD9lUK0|CbEL39ss=D9fU7s_w|yBl`VnzIimcPp#036iP6LjW3hY z6+Kwx>Q+?p|+Xs3H9lsbB%sW})DO<3LgU918FhX#L&3bD+Y)kk?vF?|p07F7hUvS@I7f9&qMC zYuIReqm=6)RCbe>Z{;z(6&A?o2t~-6%&46tPA6SMrMVE8)^TUN;c??fVcwpfL1m=; zEsQ6v^5}JQ5+eE*-Q^FB8*Qk8n`CFlLjEtziPRS)xX zY6DslvwHD#N{S?vm&deXNvb%%=6G`-^#JuAz;l8fELcCA^C%AA%s^-DK|6&LIiAN4 zzl|q)oi~kZN_JVX;+$0OD|t1&<+uk4h$mc)+Nxpc1zbfNY$bnMWrtCrz!(ZFKxc2f ze`W%E@2R+2s|JmRr>z_IwtTcHEOuk-lRg+L&{L;l8UpHDG4tC`oKaL$f_XbKaDEj9jcn~mGk_%WWnwp zk2xg8t_S%Vf5FueArV_jqM3srg_nVin3)yJp&KDpFzX8_$xHF4-WA391Xj9Q7h8-YkLa)2}Tl%T1H;FbWy3WdG7YAaN zMxMYomS~-wS6*$5PqOy*KRe>^BLnpDRT3rX4UWupN5-ZfE|LTYhweb0ZY&r2EA~2J z;&<-x7hs&J;g`4+34#2v9MmSut|y5(P_WR09uVi1`O1d-xm+~&E!Zy8?7qG)xSa>{ zP`m>nIFgJ>r^Hrr5i6cW+sff4@2b`SS&#!sCQ=Gpz^fT1e2P{j6awX(9%=7H zqyr%`?QbQBCsnM2?YqM)`Rw$X1ys1EiG~3a44u7I3BU;fEkoS&T`6LHfb+~fSus*% ztZt?JtAn8?3puaua}IVZKFFtTwfP1)EHfEdYD|fs(wmQ!#BveUaVOkw;sD~LKwGtm`Z@kHB`QEXI$9K-6HbWS zwGx|S1#Smv-gLAlQO5jWQJHDMY9fC;*W+fo;YAY$OED+O9nRc(ZcQRfP!9`5la~Eu zZ)Q4g?_EX!!=S&k`3s1zuBCz`VEo+}cX1Fwx+|%Nos&s3HJG?s|-MO8J;4@*yGWn@{6wuX%`zHA!z%<;b}vy_e#2 z{0=a^C!&!I6NDni0rl?SUGw7W@nu+v7yrAeodZmneIu@T6zMCxZ``XJFC^#eA?-23 zRLU%-z`8Q|=CEI=OFl`=aqGxRkTmf|Z);t}d@o(w{(X)0=Jh?J(?hy<#D#DOLIk4RjxS$k1BNS z11>=fzL3{gbMr29Yp+BS6$7sqiovp{(LkxH5J78z?q&XH^LAF?u>h! z&A6|2aocM#T+QzLhyV6I8D+33TOZ3y^=n~N_98)kXVC^r5qNIbm=amaAyQ_NQym)C zW*18-#(ZtIU2)g}Vj?AHH>3M2^5K!5Lh(Y@uK?e}VddubhYx?FpGt`ODXScQRe0N-t(3m5riL7jN@^N`t1VX~AeV9jcdp>KI!!+NhxczfC-yOk4#2T`Xpv z&Y&;3we7CjNz!8mth#0AgyRC`n`B{aOcm@8{qOH@&&w#s>xox8<;E>x8LnU!M$K$3 z@pJo|cQW{cnR9ZIFyRNHN#tPH$LVRQ#qs)&u`>$gSxa-WbD-(v@>p3)%w3hrOVg_~ zI~M%$x;7PWGf>&C{@Ef;MRg^R^eRVl1UfnVxu*Mh?8UnG(8Zqzq5Q`~5^gzO*>$;E zqC%QwhHnO04?TxF{aAI>k${x=qjFcfM|hf!3M-zvWTPE>9M=mA<}n64Tasb@so|+P z39XV_c;v?`AUQb3vUCDDH)JkJ>t=eIDut)eu>y-w5ZPr0!dJ>m+)l=6ZF;$BT%uq8 zsAqDpd4cOt_seQB(1fz2`m ztJ(jS#-96+DBdd(An*^D(;w5;?>sF92D;8TLbku%<0@TN->hc79x zq(GxmTT-ed`RP85@QovP1Eyn*U;jTx;wm zk3S0&Krmska>ZD%%iagK;?LZ0p}+BoEE}?M99v3}h|q)HU{H|?;yU25d==$VMXZe|<(FVi0Cpy8$HdM)nPfI`Gc(0gxa82W`9vxulr zGfWBM5g?)uKeKkC|4d6SNn0CuK~_xW$EM`zU2}q1-;G7dwI+sQ<^_H1b9Go97EiCs z8#YplLY}I?vK+Nnr4b@3_2O~=O`)noBbPY4QL93?=}^KKFzD7t*`21c!jeMFEAzm$ z_esMBj6zPq`_((7ce9qkg;!ekDu1|MCfh;-ribGYs6{Cl3$&jedz%QGhl-YAATB#C z4h*c+m^$y`4-{OB3@Uct#bwRzfVmJm-X;&4d-o=ZXO(CIaNrNPLyu-|D8hKjdmYJ9 z(QAtoq>KGripfrPwoVxpV`FSU**6J34lvim0(R4+le}F7>}AHe@Jyvbo3R5 zl>coN(ZoLix|oj+5icNB*dc+S)rE2~>T26@C=LIkN(WvoV&FsH-(4to-k~qsKix#i zH{Y2E9h%ZkpmExag8zTrInHKy%9`84w2Dpiq37h{>mpRqsM8hn9@nJ{D7=o!`(gF}H;d$ut)Y zd-XX|lz8wqHMJM1sAvDpBLut2K&M_quQqn&G(0o(FWA*9xFDzP4b9Wz8PCmC&cKwS zE-zq9`QHo!2Y0a2j*B65&vJRNh<$h83eE2IUOgkp^4N@M0d8LS^QRX>Q3)lY!-I*v z_(>{=+{fVnw9(ntE3FhPC8(1c&pu7EFf7F-2u1c7$)z-KsG~LfHHj81h>KTo_iWDi zb+@fxv&NUb5AQ{j??hFQ@Kfk72I7A(wjRS1jDD9W7U4M5dShX#K$4u>#ds0R06_ zhf!r(M1G5bx#DQdhRWm#mFa89maz8Aj|PhUTCadJ1>`kBsE9!&ufzv<+@gM_&k~Ug zd%l%-CpU?QN(0M=JA0lRe+%Gs@ zWM^=RtySC$Q)Mw#WCsCK{J3Od0{zA=$Jkmgz#7{ig2U~SkIy}bh*_)%aLEd} znm|)DIE1uQ@M>^0lm2Uxja@_aNa34G9)<)>fi{sPlICYwtghhNtpMgxrssU!jM@^6;VQZ@Th*T#M>y(Us*Ia;L{7yOZW1(zANx~5c$ zHbr+YwB@ziQNyanY-`^$2VWF8wbUQQIC2nZVsOO;A?V4WbzU*wBKP0m@7}#Zc!9)#r@T1Gkz*IZ)@!AE4 z>-Q?lWdE*j;8Jzn@E?EcKfbzJ^B39~%S3{+;2`*WMdpl(B5;?k>;BxveD@=#-&OmX z;S`0lhOZF}D?b?^55u?fdo?_K`&_@7=n4HFuHG^#%CCL@MnOR(Md=Vw5Jb9Dq+3!N zVd$=*Lj>uNZukO2HwZ|VbPPQL(nxnV&mQmi-T!ATmkVFO8oBnh_dd__I6gtJv+!P$qwkha)$@!7s33sgp}p@2 zpbW}aND)<{OMP@qEhljnswnsjW&eUwFqt>OE8S1A`A_0{dgZ!=>}=vBy_{%1JgxU1 z6{mG%*Jm0G8v5&ZMg-VVP`wOZ-)Xh`W`26`I5&*IghoXuj|IPw3=Br!V5fftj$Sh~ z0Rnoocd?`YcBMG<2TZSqm_|Gs#c~dNjGQV>*42Yy`7=MSvGs!WX!!<-gWDns6j8GQ zJr3@1+iXtZqqmpuf~1%Uh#NGB1Nf{CdDL+X-6h2&bUHuxM0Z)g2&?}jFY-)x>~g9G zR&|QilEjn`EPBAB@WW?pSL4E>&K)j4!fthPC0|!^^}BwK{GqEm?D<=*2*xo-qQX*C z3cGV^C+snrgnVrOO3L^C6526Q@lC@l37U=_mdSk;999bc+lYG25$-F6mg`DMZEq zZtt#z`%Z`?;T;MMXI0zz6^@m7>jMeP@O(js-*+ty>0NPWHkF%Ln#kFc37K}?uBDLV zgyYkKozI4AZ<;V?hD~==XlG4FnJrS@)Ae8PV1IX;Er$@zYc{;P^lo?12bia&(K;nc z=SZ&NwI3XG)*D2yJyr|hlZ!D#!%)?gMKGLV?({y_4vBn|VrQ}hhiHy*_1|S*IrQ!l zVLXJEn{Q^mzBWpOlN?@4=3|$OB$stFr-hc?UDA7AimW zt;hg&S8mU+KGI=hW{xJn1qc1me_K84O5ALisl(|XXo8F0gTirgA8dUd{JTTR?q%&F zZX~M)Vp#o2UH^McXioqGYMhwrmuu^{?aVdyzmJ~6qUNIJ>8)0wxRa{FEtC`2LuSQu&9VEqTM;iR@u{*bCyq zMK){sydBd2u!NAmA;58Al}yg}m8v1_0an^cpPvhi09F5GLUE^3uloVZWYCrw)zS&e zLsxlGP83({1&oD~ZpyF}gtcOB{X0u|l!RQ0;H; zeyn;@d}_xrZd&4Vg%@FWx(Z(Fx)|DN)VDS49+?eZkMt+}Z0?7ASBUY`d@w1|&O54n z0*2}#J~zF~;DFpmy%#^)LfAzbwQCaAd8vZK1Fq|H-#j*3qDfD)@CWj`0kPIUj*B zC%O7XwB;w041_&hawQ*CI7gGMfMtTk#jX5DGV^#w%`YxZTe|1{E!VQCcI}U5^O3uM z`Ebic@2|b(K*m}f>HjDgq6Q~RwC%4Cy1RuMPA0Y6h&s5N53tDGR-$-7Se!k`99@zW zz64XyW0nexhX8K9oV6J+M1BAM5qLU%;&kme?>l-A+meX#10r$wf)50g`4T=38)#1=q*zOC5{gR^lx@7 zv#NE`Cf*h0J?)db`tYUbqiuV*qWw7PXI7iEB8k=m0OUb=*Y3)p_2g;2KUG-13T;+5 zC7C0x(8(mE-}w>B(}%Z61Jl-okV6}*x@~pEuA@Lbg!1zbE0!+Cf;5fXUG!Iv&i%QieW%ZD+T!skEEH59~#CE?0@jbrdM+n7txW$>9}*F-TJ_R|A`DaB*qWeq=eL`mz{JjMXz+!*Ojz~5P4j&jLhJ8Ao#YZ0RIt)Ix>0JU~-D{zSK=^p=0xw>|>rLg0!J@7H1 zf$=CA-(E#Lk@IBYpzV~$*Qrau6#7JO%zYS^Ltd$qWAq+qyN z>E=^wYZsqgE^(Ssqa0(lOj%7uuIByvpa16|TL_>LE_nW~w@+gU=D`$cVyBBD#| z2q%(wHIV3UQ}+9>CJ$}`CLN+HtCP(Mp6mS%`;{n3iHtO-QR(xEGH=eQL7K;(LVDVX zM9pN461l5z^2q92U2XHSBK`5q#g^D7hTGUNefjYJj=P8y00j;_ftik-yx2_sT~!@| z(EV1}AN8j0wSA({aCy4XnZzzSEGGYvZ$jClQ&pul-yIrOq#>Ku0HV&@H^;*f)^F>B z2@VTv$of&Lh8T7i5rd5x3UNuG4||WBLa15nS95H6Tdl3bF+hy$Iqwm-N<)2Z4GYb2 z9t{gild{aEUMs}&4>-OJu}muh-1E|ndzxMOudsk2F_2QQ64mE+`ZP3ncMZt-;$=*?kpi7A12I+)62eUR&s8 z5b{YCn4-h&7kKY4hZ{*I8ZHctlD^}~+x&HZYJ^n|+IPSzKC7Y>%2cTc{3s4&N@c7-->MjLdUni6}Gg}l5^_$-AYCo9IOqS;IzzZh@3OqDJS z@w1^LSD2o7WDe_nBMy7ii?RJN;;nYg!dS*F2R7gOi{Bu<%oWiv_tm&Revv)n0yEv~ zbjn8cUt4%oX!aUqcmn0IL*w;73Crsjl8R8rAo@>>qf;7AKXn-S44DX+cG6f1kgIg0 z==kKsU~jHzWDhQM#mHql7dECSEaJ(WVcx4_zm=+?{@pX!x`U8ax zw~Q+z01*L8UU(ln!g}v6eZ>75wWOs+`=rLXJ?R}~2IF$>Y~q-=wknC1FL|gk%z(sl zR>LsFJG$Ey3Z`UHB1+t1`78w7kGOek*{fqRn*!iZZJh}7D@%Ew_jpuc{tyq!ao&8- zLHnHdiD3h)tkYVyaY4n_IMs7e}!5&?}t;Dp6oz{TaMeo3hhLlo1cC z*oGE*@5Jkj6?$%My$q9rxNr@mOc%7dIoW2cwXz-~ob~?^|5nf!#Gys(-CAKQkiJ?J z6oK+tVl1d|Gg+ZM`TYn6Px>4u!4=cq96cf|^^u#t`pP$nfS3r1=Wno@7-rJmV_+C) zz6mI(;8j@nkVu|G!Ij;5S+*gyDe=T&O8k^wg;Eak4`1}3ktYoG>{&vX5t)s0vnFjX zI}FC#VffDRjS0N6t9AODR7GQ_99UCPP>PZ6?6AwR&X@evDveKdB>-=cjs+_8hUpD7 zm!(?iRShDirjcl8)1TwG%Ix>Sgwy2E)VjGCIM=a-&OdpsvS+l#zt!GP+w(-vOLHax zi$T-#v?`+$dAmiXK)cL)xo{WK{-@o5Y-{uNL`hNvd+gSsLm-)Ls{y1oC=kX)sVc84 zXH0Bt1#$e~R3rY;UzE>DDg$CAxDUaOv_hIn?c#qw7$LW22MAT*<}~R&O>qm9tlPw6 zWai0;hdQu`6w08)5g2{|*R0()wcNq;Df8?M`tbMMEX0|IM7fnr#Q(-vePIDC_pqx= zoV)58Ow(d3`j5&P^Q;ke|rxwGwq|ED(F1Zc!JcS?wockM|)~74L*1tAfei zP~n!$HU_*E#swdoRr3A@T5jajzJFv?vRhipsu%+Ay+0m~>ctMnJ)D_YumYyoDK@&Y zJo1v=#cBjC;XNU{nUYM>G{jL|OnVj}K~;p$9MbAmi5)ZdEex^jRdCU$TA19}6K#DJ z`%Y!=&${TO-VU4k>#W~B{;N{iUX&8+ADX!bKF&pr!Bw9!MVn@GxG_7%56lqMu@j~?)mWj=lF=v-YpE0$apJ%ZqSU*Eo}?5W&1QIru&UJ;#t7ql+IMA$jMggN#M1;R-Q*jTyEQ#OXn!$Bic|E!{e z?m1Bz`Xu_`efw-_I!xJA{{q7o<6e!RQTx3OENgxTiU33-crH&4x*355wwn#cQLwg; z9e-xb9>d6qsPqruuPU`fBZHivKu%uZJ$Q_hkluBMO&9b0`X;M-F12PT zF9uERulZ3pO@>1;nwI6qNDPQ5%CBaZ`%q)+GtM*#DDhmq2VUfjf{W)S@bN@5bjp5>T5%JNS4YjE*hJ}ObXj(Y6F(xb>ah1P?72HhN z!=W+zzNWuMQJ$mS=`AGuMFsP^SC5v8du%>q0H>fuG(O!bMxt%A+`1`4aG4k^`WN+! z;Ac0}!8PB7swU=5It69oy@%JbN%2TxpwqzqW~q^Ye&IN~Mr6C`+{Bb(BPE+iBx^fK z#aq7NfA03Wv~1g2F?vz~0$@9X83axfQ4)WQnLUV`Z%@h~Gd0%dzq*AUQlU|JpBr3n zWZcpdFzbaW`dp6v0vX~)oB)htIDPn&?oNMO_&*(@Am{VpKp}rb(=POU(AL|p%=6D1 zB1+2cgy!Q{j5R0oGZ|F~VW&+uVcp#6pWsG8ORco0CqjF)s6XRdRk|{>q&vls! z#mzoEN0G2-o(M9y^89IN6**@lU&npjd}2&Tk-CM=q8Wge(jk`@?p<$Rs=e_)Sj8hMGY4+p$XtVd$8ol7PZ7kjVmEY zl(e3{eJ=z*$}C)du1STwO2Y{CWttAOQicBydj&x-UzfON3D1Dd=m5z*Un5dz6BRLn z>}2!ap4oVb*i5o`%4xyp+Es}lm}tygU~!K~M2B*=#rjL?QL|3a6(E|ljM{1A7<&H_ z&QTLY7v5T`A8KeLd!8gnJ$QT!>kX4q+26K!KVMd<%)bH6FGwHHSLSm2fEe{(6)+vc zGQWx-`BSW7O1(8TVVf4{`Bp2gWQX>tk0=agh$;ML@^<4hcTyY(LDoH=Ml=T?b5Bt| zl&IUcKcYh>o}RZ8Hh;DSIn+OvBlzup+jq;GRQ)|aT=A5iSS(NryyhPe$(Z2=Vl!IO z7CbR@pDq;U&QD^O1}w(zd@-=QG>H}Ru=)BAb9dG_ZjAPm)Jl4ODY^?qClybqM#PXIn`pz5+QHum)@-1OuXWfTFcf4=puf<>Mo z!lm*pL$k^E&G?EQGGM7itZ@I7F*$LIG7!NSVN<3}b@ErjF4DVjQ9eTYNY*GJ+7@|? z*%o?Eys~1j4XL+O2Xz)x&|~{&4vRDe={OX^R+GOzLM^oc+ zEt4y=oMxj;JUz+gFDGmFDen#_T|rIq!oL;l@L|GtN5b71H&Yn~i|t>*=z(s3L(zw1 z{%Y=QeHM=gk80Z;g6Xl&%|VYWt#r69@z$YEKsEW4WqV!}kL-SZ4dmhZ+y zC@ep$xaJNM-sJrd|9j8W7T9k^<+)gifn>0DDQ6Eho>rH2TIyd-+i-`Q#T27wdC^DQ zH&*d}IsJ(xz-}ZYeUU{BCk$Fx>KD@A9@rcb{s#BIAq~OvHnWi8nMtIQc7Zq9QDNwo zyZftM?SMaXEqmiA#FhtX8^MCE$x)ISmx91c0ysxDDqzMC3SDEGSP*KRW7{ zK`OO${aZ0HtB&+=NB6?ndl$sbN;)A!&q(dwNjpAGM$^F|b zb5$oW3g}xF`&G|1S36F-N`yN5s2|4t*$AyN0Ny|nEJC1bk}-N!?mV_TzNOpM`s6%p zBZ8y%*jidJi|_sY2h_A}#erYmym~ z#4SK(L}jOdEemiuX>hn^ztvDr+|;NTej0mZep69BD`u!m-;y!}jh!y=v-SoF`MJjoeBtXsbLQ+%J@zH3~Rz!|nld!ABNUS{!)ohsnJ4>H>}o~atmHv$SQxgFJ?z3dCrlia0Z z)ngthrkLZl^6sK+nY^Rpe!CK|s4I~JFNP^}?LL~|WtJZgCf%v4V{&&+#uYXN{4cdv z=3b0LVNWp}H(6DV)9T?*$^xmaqYkw>E*EbVoPRP1HW^(lf8&g=_p7bX$hZ9UeLk1h zC1)dm<5(~U-v{66J!q!e&3y#dbL{ysl}43~5Sqc1xno)~uj7&PzK_jcMn;r$To=D; zG`Vw57Hj$;`;7YnM?c9uwkwDzD0U@c{tTe0VEb*`|J4!0^6H}i)t80$2RvHPyq9@d*9C++D%Xxb03{gnhg$UjUz0L_ML`PWwZEw!G zG3OJK8;emObR5;j%06?PmB`+eY zRkMaia|T}O#M%ptofXMRlE@RO(Xnx+QQ~F*ay-V?{A1@?6xfyj##W(9<+rWvknNh3 z;Xo0=&6Hb*)ZC>s8Bl@l{#eFl)F?;ExL%>FFdw7!1cCNlZ}bjA2CjyL?>w(Ngs(-p z|KFE?WudUBw0(FO*QVvhxpB{H4|R>~?nM9YD|h1}77-cQPjKQ0U4t4#B6}opGxzC( zo+Fmp77G{H2B-$fsl*19zzno7fJ5c5tzs_WU%?f~Xb}T)uH}c@5+lUV5gMi>YH;7> z^2CEWe4N3U2#$@f3hH9X{z@=e#j$V&HeTw{m5n{{J^!_6O2PI}-qW1B4y;pvb}{qE zlvGW*5lW|Q@hIN$Y!Rutbuss^<*BY0_4x1e!Ur5m8JJM;a{ZL)aU#K^$btH!x1Fkk*k>wSEWC z`2s0ew8pxpqJ}g4YS;f%n_LQTPo6TWMR9%%=ThdM+C(5^I-yw?2xv51JeNH(Z1P(! zw-c%W?rBp>1c$}crI4B;OigZ2G#*vd)uy*)vU^KJz$@jnsaI2RC}E2Q_%-C%GRtV< zKGUi2-&;M=#QCB@8uG#tZXuhzn^XgmsG1RQ5>32PxpkWKSN-Ng{P|V8F^TaGn@P+$MZeazHUmnMbi26hjS;TE}2?y(|~tt!*K$&Hc#HbyayW|UKKHUG8J3n zy&S}UHgp@V#j&kuO2){K1aTOHdQ1DmoySlUG5!N z+zZo|Wu3@7*6po#D(L^Z&dkgO)Ha`#B(j?hsdA?b_dvcWD(;LYq36=lRDd%<89BMm z1f0xwKj&;pIe7#UGMD@VIOB@BzmkjcVKB7^_PULI^$!?DdEPDZ0_|U^H3u~Oc54A^ zttdbZiB#7CZJ2o`2EnC{F$pv6Tk7yBrR=drmbsuV74?JPPdJe#Sczp#F6!`=|Gy73 zjQr?f;g5x%o#z|ba07%CxK(-vLPZ~}-S_C;^~reEE9Nm+<{Jflg;yJPM%el)l}jE(g6R11rokd zFJ`?lP#B7IRn6PZn+APH;rV2jI+?l>z8^DL8z+m6vPK=^`THEvWl(PZV1>>0B0(gX1jhb;zrkyX-(0(8&sxGQByhSUV{6x#cAo+U>|+ z;y^koNw6sRdR58L^*TFc69$lgO6i_}R7EKBH)tR9H-=c@_VdiLB{6!h=Cf9H&pY3e zM_yFYMUJ-v3`4>OtU%!QjQy%HktTd_|E;mx@)1o1U`UaoOj^&R44dbA4U>ou?kAPH z=(+v!^xVdhTtb?1Z~SJ;O^ctC+pA{;)~0<&1KC1f-eDvz@v}Z0NLOkbb-Vd>+m6hc zA)eQ&;+>pCkP9aMDBDd@c>;Yr_N~Wj^NH}>XMHQ8kgo3k0w1$?Eseg9K~bo-W!k>4 z&b$0UP2{8@%Rs$cHu*FBj}6n_w+HM8WqTUIIJ#%r#R#Wj^CsYjHHcM=5t^iVT(AZ7 zh(nFOkDKk<`uA&vU3m`3*Y2OZ_zd@Lx!A2AukpS?C@$7t)yDJR+53X1AR(xt6*sk( zW@U}*P4P%@wq(?}Lh2JM(6-jDea={ey0sNbw-(NO_rQ@GJE?X%NL%_{OmA< z)vxkEM4FsDGPed;^7QMaZH?$NS=sMy(BbY0IskHr8| zyXA0hP+%^Aa+hT8?)FR(s`BWo0Ni1W+?;O=drZ46H;6;2>0gud$JaYklFRviCJ=-a zmXFI#$H>gL;M!3YKFh1sIzn2Oc$$(BEd?47o+`2}1mb;8SXM3pnU&L$Yq{af_U);2 z{;-c?hCs?e)fgVc$xn@&dK9Tb*>yKG&0@NTH20FgmkC~_orKhw0tmC`W=Z!F5KtK^ zF*o1&s@R{mYo4Fr!!7?1?nYEtLtjNp5Cya(Rf^X&sCVRVH(#TF-#qFQ*vyc%TuRrbhcB@L#*|jfMt+Lji zLYwbS!zGuaKaz*2-5sl7DxxiXL6uMV`jJWhGr0%d{=nQpKG|$$vE01($@x)c%-5%1 z+h`-*$8qQb51PN;Z4SvFauIX(`}2j?cNhu2+6*m3MGk&bq1z(8&f<9Xu~%ZAo^sd> z264To*oqv6d?(i6R1e3ou8oMZy1Pkn?w$l=MI`1`f#}fv^-ZBW_K<)BZp&;Xcf6h? z3M(Dui94|-hFK2ZsBszIz7Dpg-dJYO+Wk~iAw>i*xIIW|ygL^){bYBFiPAdU9IWA$ z>!p$Q=Eg(qA<8FUNJc3yHLk-6xvw;SOk0N?I@veH?Dc5Qt8+Tv_U`OAqynTX$xS`2 z*7P4r&gP_SB(@i~-2$M&ms!!{SVJLcKh;mcwbXS+I@Eq%r6J2r;Bm~ z%My;5yKNfrK3Dvh`*0FF9)pzgYyrw??_NfD?+Vf)%u9Xu>nbitYAkn1ieEP0m8l~R zc%Zup!xGV9cY{hVvF4p}s~){ixxQ+-saaU3`oqA%r)}=ajA~>FQ0p7SB zt%7bdN;gw7K6^8V=gy*+j8d-s5BC#Vt6BE=kwZ^cY?dl`$3P)z4mwHE)%lV&DKaIg zu5UQ}6QC+E>bqR-xXl_AjKN3#tse24Xf2Ld11w%?p2%2h90+D<#{#dx&upQ7J~QTO zmEXT;3VvXlsLx87jH{`i@up8;&T$op`*qb`@ z=g+#CYpThf9uBB!r5s(k*_`mCTt%FV{AFYHu4j7eD_#9WvP~zq zEw(>-jVa3t(9}00a#wLwQY?t zY;|qe+Sv*l(KW6>U&%1@!CrSDWhzko=wVjPzR5IOQ*l}AFy)2IH& zCrRs<9l`e)StF=|@G!RW#W?ad!Kxn{7t!a!XdDT{7G!fG3WBKShBeo?0z0T6}=tB?E zr}!zt;h27z>{#&Nt#Od&#}$z_=Pme04UY>uoK`4wbPM;JAz}?*22Sa*Gppk*~+&c5JJ68b36Zj$b<7W&~l8lpV-4tqF}l-2D30TSW~S zaHlS~A`|VX_Al+Za#7HVK?bG3HQ(Fr#+_L)yuuHbdjJ0BqVo?6B>PPShjy(^XUOw6 zY-QRNh7W3NW~akxLGQBBZ0cr{yX%(bKW!~DFfuE*ofkUyzNR`qKj#rTN`eE`K2vL; z@U?-}e6!$XsdB-3C$5Sd1;4cxh~1p&H)a6{w6k(`E~-VT?6{=lY3Zv?a0)+>6n}jm z!sz~{2FaD>y3x$o|vd=JlZDR5lz5ME$(0n|6C)3AjXGuo9 z@b$z~6)(!h#Z1$%v*e%pi0(~IF-|RR*JdY8%^l;gHkF9?4gy<3dlq~#$J-PK^HtaF zmDIjKon_Q#QiT;(kqFW9bL3GNEqGHe@6;7VyU-pz-HRJVTT2s;Kjs63auqhFOm|&CLxFMY>KI?|l%4$0& zP^{O)cPWSAi)dWsJl{4I4o$IbCf2{%{Aj;fkY@-_7gYJBOdT$OhcgQPCr$U#2&-u1 zoh|6zL1819?}%;nx1iEpn?fLZL6F0Bg^7wh;|U1S(C}HA`5FFsc@;Xts$NSPD;LmO zTv6dQ4|EhZ<(uPvPEZPl(wL2nHlk3>VDA^y*%Eo_TiV@K;rB`|d|72a!#h;5z<$D$ z{vIp_6i0?9yiD#s$K1I`SqYFxZ$rrpOLH;{G_q_cC4Tq|f~f%3hY4S8YvvnmJPbN? zfKm)!NP>0%WXeksO}ejnDm8$ivlB!h&WvOX+}cKBd;(u zT^>z5W{)(WH7E1jZ#&;}AC1{#s(-5ymK*gxMGCcgqhBHa zxesg^Idj|s0%0w8S1sL2lH^}O6M)Qh!Pm84d+rNTt^V~=?q8#pzkjnPU4sSMA**-z zG}XR~c*IordJ)I|?&fS6IjCv5nQ2+XvUNqRv7QOIyP3aBYma|wzQX!CPaI}W!!CiT zvVut^mdV}wW?DP@vg7bO`ralF60fiEHshckL+8bT-TYrixP?$U2kbFxwc=amqUJ{9 zYCoIp4b_cJfoGgw0wnM+90RFGo!VH<=YLGC3yol8lcD{#F@i@Ew?kCBlwO?vf^4!19x8dw2OOtuOR|5ciSzDnNbyz76-l zV-z4fF_DNyiFH#8spKW@gO9E1-1He_rnA+saTa1x-_$6wCbIw0um0_<{8n0k&grKT z6y>}7%QSB{p|C8IJ8uvn*_%1?%Tv3X(>87Jn7IZ@J<=`OX<$!>p>08z!nkH*>F9ZU zLbBs`()z1Q2hV(bT$Sy)rlZx@*K4nd?C^vogU%y${IR*yA`Ww-xtcFEj0^S|11WW} z!zv3V4BjZA{HpXAFQkAaPNzP%Uaucm`^|Hk3;pJjVOQNFU?4`ak*@)(mPXT3x*8qw zi4^9JCemhl@Agc-PIkBHVkm~34kCBlR1v$JR2ri^`5Q1hvWLvje!EhRl}^=oP@gv4 z)_x7=;2Z`+PfgQD^A7Q^-{4&phSK=M&t`!XQ3KrEk>5O!#!pD7V|QoUv)ZGEIXL+=4aNbWHR=3s%G_CNIOAM3U0WX}b!!uZFSy zoh+aWpNm}Y2MYge|N7(reCSUhTGB>QYlFk8Abs3zG;vhOE((qTPmXLmsg(%jam}9( zAAi60FyL^*rugI~roO?}gHaW-M8LZ5?&5Mz^BzjWoS9E@SU&ocfpJq}b#tVUlN{Ye z+2pfBgnigJW#i$&Cu@S@0i$bOk&2mmM&nK?FgToK>Llk_5^BpfAyagn<@l{Tf?Mm1 z)dC7*g*jIa#3)5nUyjXv16YMR%*fnvg-RjNhK&X)Fz+=!XFu=cU-_5vX)WqvWG1>T zZU%C)qQ=AbF5xP@Qu3ivG1}P7g+;i>b z-~R=Pd^M_dgVa4y_*~mJ0!>u++uGk>e0}esv_|?|Ly)4k^OTkg(p0zAB%a&zW!cCF zBDhz=mJxSkL^#}hi%#N#_-OYQ9Lp}ru2;2=%u1SGyUk{hq0U`*^wHx*q$2x5dRE)h z)lZn+dSwkW{=OlNuB>{uhY6@C0`QJE`WG@=vJyYXW7Z68e89kaC^bdS_VH0F&{!Us z--N@d=>x|DTY&zhhiJrlrpS!MOruJVl(s_@NZl>hPllXjY$fyNhCZ%Q*(R~l-Iods z8~Wa@uE5_}yBrw*iv9DHh^WHHQPv!lf;1qo;e9BTVX311RAPG-9aCB`)_8k>MzI6G znR7>qDD&ObfU-$?a}Jnk^yi@e;ptZ42R#-gvcq-jlaS$e+B!n2H@PHFjZea;)NPUu zHpa3ZBszV*JyK;Wf`^tg>Fk7X!K_A^swQ%_sAkvS827#GPa7_MZ?DQyJ)#;|`f;2~ zwuM!<#t^}-&d?ba!Z^QD{)=9j{4=!s_rSQq#tx_=lMs>BSoHIQ#r5i@E1$s~$glly zOdkrtzITs14~3Igew^fDwHJBO*U7(o#&$k}CQ^Vcif{8M<4zz#;84nH zw*L7?eJ|*C!^sw6c{Rm0V5|PeQpg)>IuaDuqm=nDQ+;2K;R!7cARz5yW-7%XWO|` zz>iq?rXS-snZhXqz)R&iQKa|0!3J22!LXi?w!uwI;ZWds94n5&c=S~w3o(z8MGE6e zhf&kpU{Ilp7c7_m)yyJfW8O5xfvxFidR0FLuY(4LDF{k|g*Xw_x-a3m zt`l`$5BO&mc`aVgYrktUfxYu+rgxOcQ09r!!&w7)7g#U5K;0_e;*X~!tU!-5kpGO` zbfscBeB9G=8ZTz?cW#kGf5p9rpDq^U(0Hi{d$T4s>=^5nZsSe3l&qbYAO_Qf%TVXK z#rsj-DFsB_e*`1cOUW`CWo2B3ql{Sy5ckY(i))=K<-LJt^p77qM8bRKMVxfdo>@(umWPLD%nQpwdHpzhRMM z)IJ5S*r7R(pOA|rGtXALF&UW+s!U((fdCx>A<`8=MdxG=ueX>-Dysvq`51zd!{G<0 zb=?XrLyklyC!OT>4*a7qC)vn3O%u$%&G||&gw1p<{Mlq+Sns zyncDn3NCHs)-zmaBA=Hdg(qQG zLu%W|dYX29)Bc26j%OQez%I>4X(;WnYPnZ>CxssuzlmZ?kJHcmH9&?-&>RQ?MW0f{ zUDXrAyZ@rwzjrJKQburEPJZStajuFd(CTF zR7sFe(BOM`!2w}336h36_nChq`46liuP8vB3XSBRv$A0RFg3m)ySuE zGC5q~LN)z|6~)6sEwN;>9R}r=pj+k$A&QDUr-pdvr19qxnoI?ED_)yIu7F*-YNi?> zGkTnGtr=0$pU7IGG_o%Fo?et39&954>s=Fl{Gvfvq${({K9PX8@K>_ZTCXFq$>|ii zcpdJe8$Op8S6{gVC-Mh*dt$qK<4+~Jp&C|-!Q!xyp(ODrzBgOf2>pY{kzUAxMw(wG zJ~-EmN%BfCXDDRt*>ur(bo>CN)OM|nf?(9-o2D=}3-+@l4a?H4a%HwmcoCm%P2o)V zVRg$0rz8mq(&~2rj$MQ92=X6$%~y8wUT4U!UDq=M?QSpDT&gT+B86{xz>$lB0kSvffTkB0bh^e_58?z{M$x!CCv zuBAFEIECZh#}Pcn#pd5Gr?;Yyl9<*`ixz_KN{tl+apYp)=p>4sZso)C)ch)Jq@+EX zi#|Gz6y^l?kfe!W;PLVTS1@6zRYX{>prOzE`ZNM( zbGX{Ed7q39aS<81GWEhzQSMDy3QRgqdes33Wr1ra#c~v#xquU*Fw6n2Qq{yU4Gk3n(&IPB_$@Jd@c?5@gc;q{K@hD=O38Q zdX#b}%beNPZNX9mKSkOmEv}$c?FqYx9M{XSpH5#^k`fi3#jR z{J2<6IY3@1LyoTwB7Fo-iCTSZhk$sh4&|~7}he%a4lL< z_Ow95d=_!oV!IWl^e6)$A`?lXP@$y*>g}0O9e&lN05BZJT`p+(5H$ge1TqovdS2Um zK2B9?^xL$){Q+b;=$@;^8AU(32{GV0Vl2E(3a)ns*qUPL-ILm5xLqu?CI2lnEddP*@o z3;}f4txU`}4+r5#V+%SO(CEvH4)`|Km^;hQ(h)4{clA+xBizDn)-($h6~*ofFT3lh z;Nz#j6btfSL0cr^pQI&GzGoP|iDXh8K67A}$w2E@oLh4Cf6^@0CYsQAP9E$Iz;F+n zK;8Pir8>)k1>SfeLe{j))0p^$fWUO=-`TaoWlw?%LfHlKKD>+u@|L;ceXG2(BsubL z1P5&^Muz$PZ!KbasV1Qs;|kU8y78!0Wtz0m3>w@_AWy))g};ekY@J%IDl0g@)ERlrtqH3hjon=ZRQwW; z2zr^&kV5t>_%UZTDI&#Ek(`p=7Mq>_OJB_%S!w6-XmPVu)pv@huJ}^(?{iXN;&bB) z&*?Tk!1%)02=pK!4zc1i7`Xf8VYeZq8Q|}_1X|jj&>*4Bp+|t^zt7ajc-EZIW zg+x%=RVi@(&XN(Ea2(b@cv>)hSi}8xGL=aYQjLPMS6w!-&euV#Khc6et@&Q;4zaXD z_qL+XzrYg(xny){suT58PWl1iAyY-SeQ~?@pi~{Xf#m0phnu~w zo}T5*zS)a8>)Seo+Knn**AbcE1)o5E{ADR}uHG_hgT?Nn{ zf17^v&35(SKB{kqEm8X{smqspMC(U(`>DhWIz(6@xmrv@Cm%ddOcg(^NeNbAiGN!> z)9tbYxwPk(Wf|=WK9@XbxYcTuwq9h&csvg>Q}2xgqN0l~59@#c1&J`c_e9EO&{EGA zspu%@12_oMs}=6CZg6Z!0_ZmA?*(%?-%nu_64vQhv(ZIjDFMk|a+nOC361Pkb&$DU zj&BzPQ-~cN-ut21@_WRY-o?A)2EeG^C|me~Pq>`5n$nF#;Dg}W=gT2VLHArwzuJQy znSxj}JpjJByeM!z;BE^gQeV;0_r8MU(<`t?*B>_Ewkp>ArH(x6_(%eVHV48j?vH_S zsbZJh8r%DH{lm6LL9HBpM&)R3zE{zefWf#mnt+qu0y6qm?ErH>1u=b0k8-`6M7Tdx zRwgot)0%?)m^6JhFw%Rk_6Ovqik0rm(H%euxwJ2-cGNRq7xu;OR1#0B4GCBnjN9Tl z!lDXXv=9_5A3F70ZgIDMcTWd=ARrORzak5eLPv%K@EF?Fj6_M;3X3)eNz-=6-WEQ= zc67=TOB=kf(!gADZ*V&9FG?Rpk1utEYO)zP!3;3HtJdmwRgB%T@K$90Kd$~VEb2E} z14f5NK|(^hK|s1Yq+3e5Te`cEZjdf%knZkAy1ToDq2v7KzxRIMbIup8xnPK4p0%D8 zckmaIKT)LZ>D8LDb^vnAfO@ABLu`tZBw20}nQV*l=DX4T?N~UN`;Asj#^IHW`nG*M zm69jE26!)q&FiG`X29q6UYlZ^J(GmJK0)?ieilh^g(*mn|FsQF7l*YpVvj@6OId1l z%)^4_XP#vdg^J@&WfaHhLvDc6P_no!sZl zd3CysIWvBkQn!i(bqv5#{gIQ=!QB(37ogkIY0B`hOeXN$R#2rMFUqW$K`u%0km`)3 z@Z62~+eUvny@e8sdY&?OlpTVdsGAn+eDQn>@u4^tr*7Z%z%X%roj?Bpg_g^wnw2`w z+lz>UZP#mu-IBhQKoAEksk%!lKE(=}4vZ5Yg-)!Tw%*F1&?-V&Cdj>$&5#Spb)55? zA%z!2ZvjHgTOXM=h};4i%|lbxLPB7kQtR_MZ?5es$~L2HAMO3W@?M*$H`nu(>0b_E z>-uvrZ&B_~^Dv;>zuefJJP(!yBkuRUHb;`4#uRB+-N`QbZNu9EYANJ?=!`ZhFVAX% zPhZM5uqx_}J`qGzws)**lHcn2+z_8I)loXR5NUJZ+dhx}QeMs7c6$0NjF#|jn3Xw` zns(wzgbhy$;0mw5oV#ju3cfvG7g0oU#t~bnmmsW~cVU2BqGs*J(#G!3U$ih#k7pt; z8dyx4ql9uGa1w*r^gebnJ!uS!#CBj`f4azt&OZch7Mf&B0wkVJi9V3Cryxgg7`RKfVc-osdHBVxQMa`yA`Jkz<~hg zgz=iA>ch^;fR0-{#F%AL+M|r!yLQ~w!7_Z zT^nuuVt-zqMlW&3-uge}o8Gw_f$Q_D#>qIV6|{q5+}zUR}DZxZ@TO%DPD4uVgJ zWqA@$iOL~f28y2HDW(ubtq5u|#Qc+{Huk%Wzf^7qPZ`|&;~QX_JTP34L9+P^B-L9rs=KM9$*}G1TwmV29;^w-wb1RU>r4%-@_WZR*NEoE{HXB~XWu-Y_P8bK z1(Dpx)cHfXbELfws+puoAX6)#i~pqKgl^MvLN3}Xe{ z$6-&?zyf>eoL=+u{}OBDiP2B)%HgT<{@83pu6HP_j^D z5do3=!cMQvM~J|Qd3&5q?G%>x3sXfY9!4=S2q-qe&@^e8Pxs-pAP2mTt$0AU=T7rGQ>uC?AG}h zdKsnUtSwfH+TiJXwTOme1Yh*~>zZW$F5hH1!qJQBC-1C?QhWu=>rUT)fOJ9ZBu$@+ zW059#)Nu_T_a|ifKm*MU!hw(1Jax9Y)}QgPvLnm`LLX)G9>=u} zG(eu+F@xGm7{iC3u#@e3BMZRhSc%q{Gnx(t5VDVoGl18kRGo4|il#7ZD6O``h3p+2 z(do1H{&^)+0cYm6WI%q7ROr~F9w3qbAA)OQAamZyFPr;<3or-gm6oXXvNNTl7bil1 zFR}=#V9(@)g=O&GQ3SFO3&1mK1OIW|x-z>H2Bom)O-H^O5+mp^rcOT()yHGM8&X;4 z25Kj>lO0Q8U0%RZ<;nx?PwRvcH5mhy8NM^3^%OD05#kG~9>nFhd-2W#o|_;G7!hK; zINpG`^;Z{3{EnxrWvm&bNGKSr1&<`IoX&Vn2syxD1CbzPt4Rz2&>ef9MS$n;*L4+f zusw2@6#zI=zuor_+=Dem@m`*{S+LV3Bp%i{e7rULSdR$uv$=H!Ce`c>jTB|Lfs5CM zkKdSo^Zpg)mIPkx9r>u;J$N@&Gxs7ry7%(Y2;Ru@EK%fO=j6htnH_v=9A|p4K)wNW zG-Z71Y;KZI7a9D$XhZg=d5<+u-e@H!N)*L%#vO732MSODeM(Sxxby4yej+d!<8w!c zWBKx8!n@cMlCJ z0yukpe>1o-E&#fl{a@z6o1lcD-ywi4(_*VDBhc9zp|Hf4Yc&p3zx;tN6tT93QUZHK#egS}pA`9$!ZYD*pHUm)&N3k6#(Af(T{{LfjRPU8#fi(iM zEbat2vaRbxxdaLqcyjEMEb|_*T9zGRUVwY_7N8LZ3}zdcDPh$zzW-zSj>`1SzTOGt zfk@wWg+Cfd@pKj>G1DPTD%!z**F#O}ciepQEJ=&UTVE58W6E^t=MSK>$S>>ltoq!@ z{d#d8`97Ok{j#1L^c-$`73JL(aan0M5QRZM`5gNi?5X%SnvL+wI-(IW15EzX+!*4Q zjS@gtSy{-6LEU^6-!^|VbOH|0oW=9+0w7L;Z*DLHAL3GYehTq9M~C;Se-)4}a+%J6 z=1cB3>D;}vUE)t-I#*fy&IUaIih-&)5l2_tZJA%V1}wBCCAh|%+(4EAWdH0{=?gkyIxt-9f5c<=Cw4W zCCd@E%X~~>R!0TFGig>n90a}YLY~|%flv}9eVN^ z;HYDLJ}etX_5Hh9%Dk$g)zbpRfa|&Xz$p7?^p`8g7>^`C{2*nkdH$9QB`|$k5+e!e zMlHj9>`oQ(JbqPVt2+M)F~3JD>58|cOz~7X3ml$P|PC|@HwX%_jVwjpAh!W zf+6**4)AE%zb?ekY#ZzVWi4~ZhaR$K9*rEg-Y#1*Gcox+owuR_2h@tQl)4{+Ismq2 zkx@}w{s=@}5H4>YJ1QUAeg;24_%_VW26T>^fJxtfAUa^x8mRs)~d zTLOorij`kfqiBw`o9Og3iAmbz$1TTDTV8J~hCzL4(Sj{r`P?%32H}!<6?HY};Sikl zHY@JcS4y@Zni6;}g;|IzL|g`7VIm=>60N6egs<UcP*$Y*wBFKrpCxx&3Rc z_L#=4EGCb#I2+8+RDMs8bs3eNyv8ZFmogxTUL9B>_&Luo^(OJ$PSv(BGyyCP#CjYR zBjaNWZMfVm#27;@oB&KmD(c}0NE;nl$`Erpe>fU@cR)%v;p8)QXQ@2q;rT>69Lm;g zB6n@m5cSjP`?r;~qjpXH|BmCZf2rEcKG60spX!L+N=r@0QR!i3&@G|G`X2P%l`d`| zxZ_(iGw~%DZ&aL6XCtKqP?cEnnDdB^Hn50Lu$6qiar}nEUY5byXpLg4(+Fcm#I0WX z_a&}^Z*8%`8XvNZ04D+qHkCiBZF}^#P#~`Z-VG_QPWNlmRnLodkRK956A5IK(Q;A& zvmhd19}UURAiu`;GwbRLW1mZ4lRJp>OS}PsHxMp}Cvu1)2|XH{3{b8*qck&Eks0p+ z9z&LD|5r5qykEQU34uexmUU)D1YC@hf8RtT9#n6w#2Ta(0b+!M>intEQoBw*%v%U# zw?ewRl4le_U6sVXL{Wa6z4?tDNNJ>#*68Z9k5;IAFF9VmvaZ8U=vaH!DhvRfCYGrJ zIC8ZT*)nw^By6H{FH8h&%L)UU=;Al_XZg$nyF$~$p`6tY*5dD-R~>M)N6DUkI9!f= zA@?BxVdD+7ZsNyvHF$k}Ft3+FROBIx>JaBIYDYvCDo!U_tmAzUb9@0DG&tsd%)AKc zf3;@-W{XWGYqxzZCzuY;;Q$m6H|sKihB2s%{-gna#;8sV6TJ`|SMhmPQ92>YU!XNX zs7-Nz_yl9ZZ(qoFMgbOr3Cl^+_DME_*|dx4ydlTQU{wO6_-_fmdz}9obr>L z@+}Ssa&{1)jljl)k7%W5>;=iJ1p(80`THUAZiTn5$J)x6Gd{G=X##iu=zjAyjnoDW znaA`_FL=0p5XmNsV3zn^zR0xqTZ~Bb*+Z+`!xQYxq;wtSNIo-vWR_P~Ls_xYWv^bg zWig0J?^n+Sqk060so?d8mNaLFwD0|*BnzZb$!1=ej4i8!vu!#txq9fx7c z`y$`R&wK!0;QppaFv|C_$Tz&>3GxtF(-8op?C$gof-l90I8Ayng-SGzj3CBIlm}=b#2a zk26pWrfj_vG_b-Dn!UBjJ9#&klVz%%of@wxI=68J=sN-Q1m29j9VO=W0b8LMNsO8H zVE#NEO@M_dSA4*9qc$qRKHRgLf+=&RG8s4EfkN#Msv_ z)-k&hCWUIN*z!ytp4k=&0(sG^^S5Ei%uQtz$c<#uPe?GLi2sHlSX11SAcRzA#5nDX z6g{B*zob5(-f?AQYKGU|?(w7O;8reWLcChid8}4(I(d)_I}4*wK?z8d~xt z8fMEe3FDZV*2)@xY1n&jac6v8NXX>Uf3c|nZc4ss~zV-0#<6MK||v-ODL!U z_av{|jIU&mFTl_u(F!#m7kppTymrZny8*haDFoyK zpg-Ok3NoPaT(Vs}7^|ZV;4?1d%&z4BtOQ z)A5Y33*Wb=xP-`&x95pB{g+2Da4oFTcK2wy`{>G6zTDa~cA`$C5ib%{uDaZS*PL$l2!} z1;sfh5^{DyboU<9$cYmUk~IH$D7FupxV8x#GA30;PsI0wbCib~h zKkAo;R-0AFJafsh8kt1P89Do%VnX({G0B`API7h;Q9P&hNh~TY zW~3aTHg!%j9l@2fzuW}WZs#W)R=!0A{8)&h*}>%bwJb%f<(xir5~&YguHZu{Od8t5egpbtN^P5k953C{x)9CD4mX%%po;lf0z|kp8P(&NL&VqYVKF z&VP_C1+Q(46n@W!>JGK`V^s)|PT;P2Vr!iDq7S^F7xNS8)An`*`IZ*SlU z9s%LM0<&h6p%?NDNL~f_uYCZ!T-@u_h`9Ge@9mL89N0sXjmO&#W`N4RCHhMMy)%dHK(r@r|bY38SFvMduQ%=AQNH%8DGeC4d-#VFua zb1LPJqcg?9bDV;?WzrECseoFe>2gkCpO(}$1@EycEJ}YTq=9G|{jSksyl1KUIv|_? zvkWvRkys)J-W9Yo@>Hc+-%jLYEORA7zbS_FvGEr)d@(2`qnn zZhy(-TfpqE)04?e^2u%|(DEce&?f`zyylw z%h5ijY8pCVrk*CFXQ9wA zR=ST_N`Gm9WIO;d`hDx^dzrdF05UDT^mg3;+ijAp6AWPd$}Zdgzb;L*gyHPx;cQXC zw;jP(a$Nv$Fd#sF%Ls8Ci82v50Y?B2Y!1~0xG?auiKD$Qs-CCJoN%@Wcn#bl zvZtw4v|nx{94Rs#iN&VKWC# zB@-a(;F_|$2OvUt{iQblz5@X3l_uL1PA*3hM2dy^F`Df|c3_0@6R&#(O}G@jOs1*K zgLzL(2GZ%7JX}<;Po>}KqJ4gbGIcfjo$D~kHkhZTbwi;b59BU zj?VL_NT`Y1o3ypeTZXTK+W z!#f;6Ja+T->0%HDl`q!ATSEe%6^0)59ijTbUf=QqBO2BNoK^4XxAbl7{|CMVO6Ran z18@S?EZ@MFrF#h55}hjs?c%=Vjp#uZ@#DZu97Yw$>;s$4bga34?y+|$Fg;$)7Nk29;rBsjKjT-Bp$P4_N9x+|SLr4OuSod7>;h$iS!d znQ)MUMS;O!80Weh3q%Int46W@lOv);*1`^A>340IgHgvx z5!mHCYk{22&Kjt@uUS4rlFvqpo}wsgbN!C~Zk-$~Mv)_=)5XY4)h_H~RKJoAksL@c z7tph-L*?C&%}4MgMWnbmC|ABVVodB$N~+j?W`%7TyofoGXy2hiXvLzA>e$jbh$Y~5 zvHL;tA$wt)@_pjK`R=sEj@_M%<))j!h>cO8h1=VnJxb}RoZ3=EeYZNvQ?{P=Tx<^P z6ja4AC;C*~XSnHaBQS*9P*}M;YHeogS&J3aQQ8c2;)2a7eVgd5f-KW22R_FyQn1|= zQK+X|#q(E^BvGax?|7!zUG;~>&6ePDbU9B*QzmH5+9)cWP;+fcSf&>f`(${zeatIG zA4V%sSD=rX7yh-4M2wed^H>wuWUmCX#ZBMBkYSTvD)$voEZYia!*xs4lo>vx&^_j) z+1Io=SbQD?%B1r5h4Wys?%XZBxLFrH?X_)Pp;cwaL|lu!>^Zk#|7P$u$ z^`sTQz{|hse2M!MiPds2b%T-9IRIO}Fezl;isJ3wR`sSmynnr zZt0$^FCQfxPs$r_C2AoDW2mb|LASn03^*YFdrmG$h&&ESS3OS3oA%QznXH%VF0Ucf zp!#Qp^(998r=z0bZnXr{@|M=STLad}mlM!sfAK(Pr=trmtXh#el?w_IMexw zBI0}tr5&pDW@Z4=G3h)!LJZ%f8~ie~xGUQbi<`OlPwSjT`>y2+LsGqKZtba|{xFKt z+UIueFAwBRJM(6AJlJ%a>t92}&`i(F8NO*>`-|B38bwU19%ZADPfqY=SEu-}(UN~C zP|`@@!6#Z)lAUt}2FaUi``4NsySs7azoQQA`4aIH-%Hk!S6rCQGq0QRv7*8Bj?ibC zGl*yQmC-(h6h?QiF;*U>mtjMde@C+O#(uXSdq#>jCSFMU()*hti!y*5UL(w-Yfgl1 zFBh)>E{y{2_7Lq!voT2&+5!*Lic;5AOAU7o>yyc#g3f}dmGq=`6`6GyyJUdf&m8t< zxrYw=0CiZuV_jSk>YefP_bp$9{UVDu#3IDc^Xf~mB}HhYw8>S6aB-S+OXulSaqA?t z;v#vDmA+L^%V!ZEmzeK(4}5EX(JtOs)g6hB;haAYUBm<(R=B0Gd68h-9#3X{IY&r) z|NYy0Dq*7df;x<_BzdFaU!{?Wwn!^wSw%|{b3UfAa^7fv2R0wrUrZv!oII2z7!idZ z*CihrhPZMC<{Ko71+{IMu%}E0Zv5F=WbFv-8Nb!g2-t7CMG{RDaEoJMW)yjCo{QEW z>};RZL_E;66!QrD^X%#PnsL(N&3d6%h*(ogy&35LaAbsQt^C4W0Bc6rB1n|gsq0yB z@?hYu87$PeYZ42XHlO_TT#uK#>b@iJ(?H^!s}S49UAcb&VnMg4`q3Ce|L^4f4a|mc zo2SFY|DJphwWe5NnbLjj)>?>(^5PtVU(%YdttT!dE-vM_Amt%|7PJQjCO@<3b=ziVnlBV!D)2{nGS+BaRST`L4UM!4n{}?~C-p;A%MM0tlAp+POmblx*0E$Fu9n;dU*|cOwmJuV54dJT=+6@V^8_leUBd~%TgBBPOs@Ukt)DUi zuo#bWJoAzS%aSh!)wsMxjSmc_3Jvhhh*|_u@R-p!$F&2(Px8q4=?_X?`(J%rj!X*( zShkxbB8h?;=P$wuXBLvvlIvYJ$K5S2C!fKGht6L^(1_ECicn&V;GLoqLT7aBCHt?g zUL>%$e?Oc|>A1jrhVx5OiamY>QgTlh6Z%8DZq_eM4O zCczt%8J6ye$DG@6_Lx?xW46Bs)mb0C7yP3}uWhluoG5S5QOw&%VZ^`VL$dcq9- zX#l6U`w8{$-edwPMU_k0emWlGQ2b_(?FC>Lo;4;>l1Fo z+_2~9%JjLEcbI-u)V|wmIO95hQpjDnQZhkbT2&lq`?WHubLBAh`PVqw$HlNAZ=@-V z)eZ#Vcser95dUs44j=Z|zo`cHs?XS@!tlWvjBa%B$S5{~o1=LGZ z6K<2T)FR+Vv54I5hcJIUmfUA>7xY#jO8(Kzd)Xo0*y zuCtF5!#qjgO2V0t7$?4-P<%Uv74v($LFXo7Y_q#>u#GI;-UDN#4OKaP27!uAsFuln*jC`3T& z8Tej-ejsv!OO%Up>+5gzuO@t7SwWi+$1q6uZg92T4-wJ1Y~6UNFz{!C^lNgQYnUAt zp0Su_j^Q$_of=(F{HdoY#Yr#;c*{4~7m< z$oT5v;Kspi2S7G!`!O!$Zo9d0LZ<*Z|7bMueC42F3po8foNHp)AmVgYt=6j>&G5S@ zYb(1Jd8?@@Dqg5BSuxJMo_2#sf4;iA>r2P%Y(;$&niV-K#wyo@s%45lPIPiusCZL6Zi4*gz7 zLv-IW-1HDuFeQ}6113v~3qFLQsBw5&Gb znogt_o{GdVK%i&QOgrXTkWYru)r4BV+zc1YfhmZ2%-X!@iGs+MUF~&Gc9XVv&SudC zB;HLfs|dOFN0p~aOSIqoF3a1#5HMm+*Vlj*69qS%4vdOmmv`yD-lk&RuY9p&U5lVq z=S0nYZR*f+z5LTejKf?-BSP|Fv(~u1C@3d~I&4lUvVznrdQ@3wRl;3h)Oumpn_{DP zenzYXh(NrVq7tJJ{qvggEuv->?{}38SG~^NWUymmNDX2@`s~$b;od|pE=P|Z{C3s0 zsL6cR^6#!mX3^z2uFm@(G*x}A6V+IzQ<)FtI;{*PmV z+lqq7UF40!lwW1F3;p`ZOfBcsqd7xvRq9t_H*~0=-~Qe89|eL4VY#1Gt3CN~Fd)$A zN^8%AjgKLX?vE90%LLxA&oNg0gGF*(g4p#TFZ@;TMgau2d^RJCX~=fgDBaDf3JzH&fgNEY_om2bT#S;BRF0B{JXE!MHk#3@D~=$ z!W0d(U<0LH)B~h4vIVZYb*O^SR_`7X>?cDt3(Fzjwan{r)z@?{?e|0?i_A2}GJbldd{ zVkS8kVlupQpAe@O z8lU^?!x|}5bA!7pO_V>@UbwRu%tgrg2blQ#8~h9PzmKU!8BlxW5p>Z`iew8b$i&>! zqJ}Ca5e9xuoZj1!up$gdGMKc3q?H_2Cr|aE~s8?ytY2 z4=qD73TfCp_w}^xTTikIM}2*6UiQw_JZ3d0{|0AuT42w1%%U7N030I&L$( zwIi_!MUq3|NuuW3uX>JAJEU^u#rL=$JZtGD&?l0|)n9UxNhE^Gu zg*V?X0D>~T<+@GVkBie91CvRHWjd+D|E4HKti+I`AZ2jU6Vg(k^{u*QLG1Hh}5@?G(06< zBP=HQb7GA1OI{D3=(Zyh_b4gs*f>7Xefv7OB@ zXu~J}YW%!HWn&c25+0^U*`ElDYcY!u+VN&?QFPDV$1H=CD;Dn3{$wr%591?!giv>fA*W@&!qh{}IwLFJkd(oO_6?vjoi}x+OFaS^h@S1)blFLT!Cl-Ky+_6y?g4P{}~`=csqafJe1W{ z3eQ7%CSjAlf<2SH*wT!LKK@S4hSBBLapN;gPVekGM^>XrR_yITJuQzJk>Qsqe$ zeNGSAOa4!QnOK??-b#ec`W$}h6QaZ)>_ToY>_Y4V+tSq7ohY^~%9S;u=CjBly0XrwxjJG#)+eIwC8W*#VnLq*fa49K3sy{unP6K=XBWjXL4YZ<3Bz-7l~kjXao~8TZ5e z9Vzt^CVw=-;5GTb5i_?IP~vgrsy(9~Zz8L8jm2T9n>lU1V8w;=_Sqk=A|3>_cH55; z@(dN%hVTh|k5tF0Vj#}mlIQ~?88ga%8p}?@C!61O)tIxM<*d;wjM`KPjr?ob|2Xnp zT&)%Y^;K_tVKtXo{Art5U>6cr?lpJ(3*Br2-u7C-FP9pn(}~RMc?zG(oh{D!oqVZY z5Q)-0%@^>vJuqYY^%1OXgK2BMhy|S2QQ{G>YVrs8Z-eN=%lg(SOg?F<+ za?d9gCN4nM?&{iF3}OB5M;%2|^*{T@N~wSH zbC?AfaY{MJc3y-0l67wCpEOmKxAety6$5rjPIx`N{!TXp^D_ zar2=o@OmMy^`o!49%{?8P@E7R_F?*=B)aFU8QnbNv$fseHOAiDFPH7kR)GkeR;o{< zDy5QQOINJi!k+n!u`o-ssgWtUvr_G^s8=0sm%@b1h?@K|0kQhejjpO>^7m}5^J;oA zHW?4~2^D&yog|H^c3uO1VmYQW0W;IJGKVC%F|~+O@Yo*co)mS29b39jvQD=JaMKiP z*b8|cZqMaWThD6TeF>7&VIF8te*^=~L9lzyLGHQ&rdgei2*I(MP*qmtHSEec+dr*QR(KS=#2tA}L@i zKlo8ds=KNMEHc}yACva^i+pSWokccvBX+ZHuv}czC+|(Lvzz;z%btCQ;oJ9Cs;YM0 z7UF5Ja|l^%VU}O_5ZHBPq}p|o5!V9Zg#@XGMM6;I_-rmWyUlHFFHq5e=66d+=KA;- z(E0`%RPGlSun}tIQI}G4OO*jG#c}Iv<42n6ed9r$V#o({?{{K+8jWX z&WYSMp@7|XHVBQ6i4PFXw|hJ)3K=ZZsD+RC#5iCEXvPWXoIo5{svY*ESAE}JN+y1N zuRwmi#bq%@)YQ`YH5iG{$>3mxXEYc+=hFzt_nZQTEGg`k-wPXV;XOP(p+L2!V?BS; zy_?dMFtMRb1;NIKT1bsY69@NYZ-o9}jtLM~MaU;zH*_uR!O_wt8$K>5(7wPOGCXzy zais0?ZntXwY|7id7EX;dI%sq5*8I)c*@fEqXio0v1sPPE<@ON<$zR)YzNGSPAl)|C zc~q;!+J4!E`Skb}Iwb3&*TkOy3-z0HA4nQk8~*f|VJA8yt1oE2gV)RD+-Zx}P&=ty zJxrrEAen`;-qUXNFwYCV%UQ<_c~eU3J=>)16^UN_g0pt0PKWW)N{WUq_Dop)$-KdQ zS=8dvR*(H$%VP2mMr0v11@8JN-*Im!Eo_NQH++s_XZ`&$4fBm{iH?(Vmy;T!KMS)J ziZlq;POb|B;dcsnHCY8uO*n`!e6Z2JgWw)e769+lznuTM%&I3-<*9L*>X9)T{V6)3 z*yvxo+lUp%BZ!2NvP#q@khhZ1`P8bR8}x6B*2qXI`0mAwbF@s z;B4u0)PIX+2yTMmf^17V$e5vdx%}AaQ6h!!wf2G^R!xNI7`r_1d3nipx zCbuzfyNcNAsJwf>q#*b+{%5Ezqq`@rrfWqgVE?C|d@windE3;-nh^vA0!fJqt7y*> zW3Zhz>570upyKLXMUs6`9CcH85d=iG?XACj@3Q_J*Wq>kz^%?2nq#eMz0O0YjM1B1>&H@&mP2KJih($lyJ91mKXCPoG& zn)}4Ld1OW3@0B{A;tXCMtt|gE9bBMdmqk<-DZK0uo6~=6Yfx;T7kHQzWNJ#Z)>FUT z=Be`@ls|i+(=O;JEOz`mVOEI?+OJ*|P&DqSQ;0cq(`=TSfVoDGei=WP{=3fvpGe3F z5EEfX=-9J}*HG!TI-qM!%fkupN^`T<-LA`9ZpBxl$I|aU@+5&}vXXp$Ycu4j(9U`L zbiz)%WhF}$f57Lsk#hUr8tK)%GV#-sQh zwFWY6e74$&F8suCAI8hsGV&*Gg#6RFHYia~O97n86Bgr{L}Mqz(N~u>d&52Q zK?FJjj)~V3s~OR$e8#w}Vqfvf*O{0K{U+$B6kP*aUb0+Qb1i@mDIIPht$XqwNN$+OT|L<6xO?+Jld~xfno)mB13E#DUTe`pe5f~^wg^oV9XJGT1r2N7~SSjI2VMjCyd9?pgBW_>Dybr@{j)^7;sp^ zy-jn+rERmOnSStH#hN0sa>n^;$75vg=TlVV)ACSSvY7&THXVr>?aT{J51U}bjWnVD zOh@NU73ajsYmOeY1(j@yAFxj)zrq=`uhQ>^hN$qpkOur;srf$@z;EFU=Xs4VVHN0N$)>w3N#HUZF~aF`8YeXb((X4mBPG+MvEi3?7AXEhp#T%(lF-miI@f4$X9GE19VKy3|sdnVi z)j;wT^T1A3RuCl23t@u+y>^_jFY<0L2%cW{GVSzT0cjUSy%nZY=N@_l3pL5aAMIoQ zuRDx&8#CdJ#fG1EnI0d329E0*?DXt3RlB%#)3=B34Kn@9^&WKD7{%DT-V7H_f)Ay? z0$7&UN-w&cp>r7_U$%v|ZFn5LV~~9uA+P|JvzZQNmy#4nb7lX=NbUz||^>(DRo2VDs+FLC^UavY_P;TK$1YR>#rX z#oGmaThtq?Z< z8E(5)cIU6NtU%VsT)IXfM8$R10t!<>ns*~&#nQo79e`Zo74R-Fm3z6CXNRcjto+&_ zw7gwUMC5uNd1ti8I(qeYV6Xb(7M}x?)l?P+^lW(KxTyJVgduv_ zmkap6pj7fV;5c&3ttTFw9G+R~`mNO~f4M6u%8C@ZRWr+g1jF{T-plEGzJ?!);As-U zDu}*s;F^Q#@{fy+Tjaq8+lRtc3zf*7z)osHe7NBy{gJp5eHGjX-EdW$6-d5}OPB}> zsmPw-X}UFZ|CMT^7+xYX0v58n2hZ>hDyO4lp)^3T@DosIy#;Onq~-h71A!vG{ZF0u za1irj0D@Zc--IUEmEP9(y7R6M@xLL>f1AnJ2#94BMEn3^ZHP=Pz&FF)mZ7YsmVBEs zKHk;LVm_JEfz%w6u-j-p9P9G)SeG-J04C82DLPq~C{LHArIXGP2yk-Q_$o3APm6f59&;6`A7mw;q`OFtRfi0!G42D#1oG zXipmz<49!GlJhPm{G-q!OujUvamdgXJPaG2*nRdxyyMJ{ztaWNI>@Hy(vYyJ;b_A@ zA_KkVqZJx^^G6i44jGbtwD4bI+6v;@D=(eH3Q-wGEV_UIliv$hb+2yr424tXFQh_1%V4NXFRfJT ztigsz_HoOFIxRD@67JY#_i0b{$L-BCDQEx{AFaZKz`ar&Q4wAeE5Ac=DX-3R_X(ZK zWFXFDQR^Fn*4%{C( z>GdxmyDt)#72+8Yyg{!~0}H7yfcpOA#}j~Z3$b3g2Uq$=9nBO;yry$IQh_#;v~0R> zj%MtKDU(4UD)|gV5FnQ?p}sF=I+n&BXS6X!0cXx;nUO~(Wvl6kNXk_Tg)8+)8}fdI zOm)!kxwS(8jS3Gn{yugij!5%_U|s_Tsqgki7&A5Py#>v3lm4+eCf)nN>uwwwWR`7t zm1ahM%EvM}balRx^FHrQSfQkRYdOc4>4` zBEmxP-mZ5X_F-|Y;&V&=j?)3c+wuJSDGl0N?qnUCWa9Jt;rH1ToC|r2=oIaO3|uW7 zZ`RG?GVggZi#e&q_$n2t#ENQr5wOW`bzJ&xKWppNj=M*nh9(bwU&U|}h*a19- ztYZJNs7)TU8Bmh9;~DwGC6q!3^S}@AV(@Y(+cjr^mA z+#_$L)#X;&pG{!&xiL7}1E%Iq^^r1m-wy@_pp^3Yk%|Ow9tgg1%k!SGp?$TR;J@1p z!jSKZ;#?2)he6n0_q-T;PKx{gt$_?CF7J0@c5(tydVrKC2JlRMyAu=y!ulgVg={eD zv|s{q6GQ;&=yyxyRtrNGzz$gS1;CQfpt}0{EkK3>7-PfIoD|8X1|%h6gSvoaQJGbO zug_`q;5_{T@6Y^@DH!P^C^U_1K%?G5{ZZKYV_UP0C<=*C)Z}NaVlau_t1gSR_POQJq>j?LNDfCuy(8FLv7$px zugY9hxB1CSFCk96rOoTCBfg$rRU9uhS>!nE7&Y3H^PXqF%^9-92c#%Q0XEE`CEix9nyCnL0I#?BNy) z__SeM3+fU$x6l{uE3X3NWO;lwwf_%QXBAb~vUTf)LvVr<++Blvf(M7-&cX@qF2P+B zJOl~u?ry=|-Q6ATWbfO~IsXH1G+;4nR@E5&>wWla=^)}aIQLr@NVg9tq!0;{ZI`8((?CHt97_+|ww$OP!c|O18!$Js|nzPlkH{{CYA!o`=6OHP0ck=AKAk zylR&U4@E|KPoZCke_AOun@aL_@-mUV?aNBj(MG;D{)=oph57_4Dc*x1lMC>PXoY# zo|T&m19(yNb!Oi-qK}VaPi^vE2g?8QH~JC3N=lGH3JgG?6RI~F=q$PIiE?HKn4Z(g zFaYEnDC*d^#7nx%R4V4CgY=)g8CiE_$jb}CVz?K4SYgvj#J+je%EaJFr^vgk#yD1T z*%@JcHP^5b52B2kFA4ns0#^U9L~F*ReunpnXWPJ|1Coh9#PFhjW@&cfSG*JSE0nQdOfG0Z@(|Bun#YKyU2KLH&l(+4IaMg`N4h^-VPke9q40($1vhl}ml6 z=%Fg_jFu=j#aCidTB_&|xD}@YQOP_pvN_C_<%j!y`56;( z8;*(W6Cv|KTYx~Z$l_*9AC+0Jx5ds>CWm!7cariqQiD%rb|elxAbCKBFOLH5AJJYT zA7c^YB>5M1OjZ8cvx(OEUw(ilBM~b-y5&QWE;wKW z?($MHlsU+$p`X8bQJU`~)oNbQTYGg@&qn~5l=Se@9Pxkmsb86Qz|7%5KpA@i!qmIo zCMf{ze!-iHe%2mCbRZU*0|;+z(*idEVB|kLA27iDJyYwQ;ahw!$oJ&r+uQV*@4IgG zcN^h$KxpB~*M=MM!6?*G(+;i3r+aFIH0U0rsP1Av4w&#D8}Hj|5ypHoIBV~9ulTc~ z{N%3lr!0<7Q4Ty$JPttf(cg)$!ciH{osMY9BFxJh2?`2A#HB};Q6uM&;C$G2p69oN zx~Xgcv6Jv&0FCkg;*Gsqu~0_0F7s0FAwd6PUVZ+)+|cb}aEi?~R;wTUE5GmtN8qB7 z@oIneqF3j@HdC_mnoDS}rD?SvA$`Lv&wCdL*RLV-RjZ5r8@q)|s=psBT$3G|VMMSN zFD!iL8LIo-E1%Cb7{Sq5)_hv$m{ieHgG@;;kYiDf8FyR|-Flc2w)y7SO_1z0OVj><{ zw|p3-6==aKpoc;!G+$R%<4$9sibW^*t&?x@Zz%<&vVft2&hAk&sWDpY$xieH|Q z*r!R5F@|cW(xE+us(5*YFe-AF-O=sbmzQL(2_jAx2Xm8gCAHLMyCIXyOy+~cOPMSJ zekFy3Cytd-cRy!fpG@v8}{V%17|P1=6QFaNW0m^2QH-Qd>x z-R@#)O^4`(rrp??U;S>PQyh|qX^g+c$mK_MYKIID#gitAkLb7Iht7_0k6co1JhGfU zJ|jOc78)6NXSK`EA}>*pk8|GXkgTokkd1hZvOL}QOfNWCODj~C*k*#DZy6V%?lBBk zF|EVw9&56!Ws+}j<$%>U6UC+tpm2(MyO{_%tpCA-|1C@k-|`j#_R#|O^KTy)eV$C!9YVye=vdeZrH}VN(;QOI5*aF z_QnpDF_$Qs9D;oNu&p}BAQ0{LtL+xJSgMjr&?w5qqdUfQr#;riR`t3}5qg8h3XS>NwnYS+p z6&cPqdKTU5yc&=3M`dxG+$;h_5C;xRc1>VzDlhpi#r~gntEL8zw=In*(aja4Y~DKf z^30d2Q4H8O&t7GvViIKp^otyS8hpc}@ZOIjvbGnL;hA$Mr*oj+HaBC3bDo6FBdkaS zvQ}fqv#0L;k;wBGBY$SB6P9{v?1D`?`&IDUE_6)q?faSQtow`*IlC8rsqPkw!SnY5 z_@dotk)@Hl8r_t1vusm%C zj=5M5c=id&i}OztgJTrK$faGtkB)}rt`H8!gIuH;1vuo?2@*sss6pMQmAIV(?%PyE zZ0BnWGA6cawQ8D|RqE&-b{Wp#L#>`m_C)I6&}Os?B2;Y$PD>V{yyu!vdf!%0-*B^* zYW(!=6rC#C&^ag#Vg_lJKX2SU^0gY5i_>#bQFS~`I9Yk<;g3`HYU|_9ry9PoL+JFc z&Yo%Z&q6HjlI++vOISDC6S6w>b~AD1k)oV5w%XR=St{jYI?jp!1f{E;`5-zW zSYQ^b&JyHl{ViXv;e~i^dQ&oY>&KPN@ssLeBkMOanQW`istX19l5|m-Oos_!*<$CX zrgFW#=`Hova;X!w*hP4WuADXE6sF^mKV@kd@DoLy1g5=*zeYR*gydh{r3|y#t(pyh ztTE~{UWPmQro!hY2)@=hw>QpFtR8(7U1GjyX=|>F?Q1Zb3@K@P%>B4Gc9eM6(AIS1 zn#Shl8kS~312H1#>9h2Dz`LDB1sdTthA!nf9qac_T_vxB`}UE%=#K;pAG{%!llqC4 zqD}Y9!h|CBYNoF>dbP_H)rt|mM?u&P0aZ*d(2!g);3(51x^FS<%n_gn{m<#=N?i^x z$zQe`bY{iW)YJ~_B6k2E;=8x>@FmAd*&kdsM2(G&EZ$G9+8)O>^*}Di_`*Vc9Qz}_ zeA)GR`#a)@VrkFE^1kyo?C{NtL1rTrX8c9+y zQG8b>JjpqZ=+1Iv;6NBXdh*`tj{OE8BEQ>gUHDR-e2~R|1kR<69<0S0wgesG**1&> z=ag8f1AHkq2w%AN^XC4=%_#K+DZ9}G(5m38?UG;}EHqOh5w-ow_H7 z+^>1nR%lY&YFno&^WyGByvoj-9l=O`>CI12h!Lb9ltftZ}LXeNopg$0VJ3o$M$7-;|P6ZcmW+-L2R{n;1MPZkwLHuZAlr3_qGGS3WHSlc2K|1C5XpN-PGZ$XNz! z0E^G?$k|fCCah6Mqs~Wk%tw_KpNkhw{)pRgBb#qXrK+alB`zAGDK7{)JizFBc48U$ z4xm7qCN_M-pqt_Xe6BKMS6AXv?BF(w1PV8qOI)i`AtCll57dd?`sP`Kb!fqv*o5%` z2IRZDA6Sg<`esdY5FQ{ZNK)38?oyxA{Kd#nvH&b-Hy0XU#srND z9E5|VZ5Sar)T-pq&M!5p%eV!@VbRWSR5T=vfqrJuMvyxxZ0;Yn35wnHiLL$_ZZg=BDazGYH z|2Zl{k_R&d<8MMYax`PFI;paZa>u(q!h(EU|ATg#j@)YQ*Hq))HZi_ z9_>tXr&!Y~wDn8XBVC;tT0#Sm;n51bII>0W;xXafD$ZAPb{e3->hgDL@;{v6Ikl2D zBBpIc93AX$8** zgwd5o>q-S{hJ8I)#nX7utedTX4~0%B*s)P!Q7RS?`Fej!klFL7U9($P;Qo4u(6N0D zJ$b~)+t9QJw9kPNF8M@VuPheES9$+Aw*Ki3{HpjzG`*QOt#H4#h#(fyb^GfNgUI6Z z;;HR8F4m;M8xRIQCY-KA4_K|@KQV^?Kqe3sOkm2?0oY~4R#N@~Wdpioe9-6wVIfEu zBjua*gwW2F*Vnqqfoy2b8U<%B>s8|cN%Gaqk^PwK`RX6vMP_GqqI8#@Cp3XxISqhe zaoohTDL7e#-g22p#{A0aJI`XeA`=Gn1yt&(*e-vGlNvctuzMz1ZutQgA6Lv6eS;S( zMx8`Bd>1)p=pAygeZhx|E zBHt#5*rq-$EozZ%7V>h1=0tqFXuu}5MW4khDzp&@^A#iOUpRI(t1Tf>Mr>=PaG9Bq ztDK{IRCIneD~F+^QN+Ju4If3wkS(Z{GaZh^w0WB>Ei>Yjh(LuKYV8rl^vktb{k6Re0oP;#v`8opwz-!Wh^dPx-@>wuqL z8n9yTmz5KhgM7Mi6|!D0pA)24!F-+ITH0}wQYf@Vi9)v8`ibCczX}FcLP+2B`;TvyngSe zM-jxl}vj9qZJ z=e%gPEKY2!HN0oB{?>n+*yGI-@)NXi+fkJga%fD{UE7@*?(A%u^Nj(V-%1A+j&eW8;KvIh z>mUeQq!h(yPhr0~Q@KW$G`n|4oxNwU7pf6ft zv1b|mVh#hR@Dekv44)L+5v3i6^xe}W%-^l~xPe>RC^Z2D9^6mHdMT7KR5E(h;25c) zl>!uTY1Ev3rat!Vfy&Z_nRN3})V~La>h9vr!+;tI^jV5jGe6~_0#;>iP2cd&e`#p2ziQf6z4xh z_gQSTC-mz>*=yKa^3o3ua|}72ZA?)6<)~0JkVOW1b5@v|QVX7k$^+6jo`<^Tr#Eoz za<=Q-Qvo!;{L%q+>MskJqlwbmi1fT(Nr8EO#VDQbY!k-A7qM3g>P#Oy3?gz(1SC7J zal<%^OkT4NTF3iU?S78Q@iR7sJxKHQw3$X2oCoRH@)N@p-3X`q{W`ik^9=GA>pI`K z1z==`rE)~!>2)#xDn~R7V+Mum@Q6RD*W41A@fehZc248xMII-s$1k^#Th0O^hB ztFSuoOPeP|F`)Xv%a8Kp?Rf00rk!9#?}!wt;i(<{%M7N{Bcj7};5c{CU*EINh0m;z z*R(T&qk{Z0UTinrU4{>QPmVX_u4un|B?p! znoNCABtn;Yr`^BFpOoHRNb*4@3SXFC*jPfI1E>!+#ZIaU^sjlyBbi7P)6I)-s-%gx zYE<+%=?K3*3keF!in=lIto>tLGrfgtbL1lvprvZ-Emw`vg#Jx%+51AX(=@vUh zCkS>o$j}}mF`ZG%-(8%({jD4_`i6QBDHw5$*hLSYoCYcrrX>?&#S;>NL?b?r^@oWJ zy<`EngKJiLk8rsYCP2!eLezVhNInbKdxD(RaUncudwmh03<7qmqmRw*cU<@rBa5qz z4W!4oNT({TtR<`t!{w*;3lgaFlVtxa$nw#1pnVP#Pc7dIKrHP1_gnEm{N1WI0YJra zhV_uO-qe(>KOB~=b}8Y5^nqQzafrzi+Zb`+@`$Hj|9yhk9#fP0%F1{0J`~s(W@{ha zN?2+Nfvj)S&=Xf!u@tHNQ9XF zh&773(q9@?B8xEiN5Hj?b^tR(AHDs0^O=nNAdf~_A%*g;q3=BL^pXuEAgYN$#RGKI zKTL+0J|fj*!H$<5vt!fR#Ra|RCA=JJKc(J(tURO*;8MT#2%q}!Y<>)m4fg$hY`^>a z&*Qaej#TC=(a_fyMrYmLdx{(R6=8f>vunW6xr6;i8S|#ah#VC#A@4gUeCbHp3O|pR!c2s8pf?JHXa8uP~|!WG)JqzDtxLZf{33-d{>VBKJf(0;vw_X5Zit;v(Q9SBHL%tY?3P4_Rdy zq4M-}yyOAr*W-PbANlCdT^7eda-V38N|IvAqmh~hNxVp+c<8c;)!;X~+<uu@EzjAV_;-zqZ@8VZVzwy{9W+ugrq+W; zKF1+7PRMyNijc?X?W63bH9AESW;E>d+KO%DWB_yk=>u+_|rnogkbR$-o?LhKcN-)Rwo-d zEoZ}@m7}XP^KUEINSz`AxKW*U^G$N39^@1!#9EWMS5w|$Mvbo3d-KPL#3ddETLlHw z?OuX&#^+H*;Zwq~`7>b-qj$dD@79VLT5so~UrJ2}9qm!_7;dKzpI6!o`0~4!2$~}9yNOM|%VtgW znd0xw3|YlxjRG=0rAL7@Y!i|m>|Ww2^@Iri#&MKMx3OAHgB33UU#5IsH(EJ{R-u4W$_1K|;@XB%)#uL*tvP30#h>Elwu5E8-5N$Oym+tJ zWdd>9v!klfjkm!mIa2XA3IBr^{qy9y_`(Lr;j(j$1LB?v>JUK0NC_ZDN`iQC6!^9w z{1{Q%eTVsA_c0z|ll(|2s^Eax(AsF@h(aM@i#cR-ctA8`%6N>4kfWIPN$PBei}Hc% zJ6K!DH8l~#Y*d-j;|w?9ZC5t=`jZN9yi>{Lzhk(h@mF0CjwPRn8n-R8I7AKY z(T@-2vNk^Ko|gd+0_d@Wmg3#(h=9W?mcw|tw#h5O zfqbe=dRVCfIr6|PGsRq#v&WKo^b@3Lq9NQNOkqmihWMjk)kG=N@SfHxn$YS*E~5l9 z^22oH!U~GdiW#)Q>?*A;sx!E%ul;!D#?DfB=0Lt~)Vg4YvU+%)soFK*B)0Skh<-V1NLOX5s8+sm7a5bY^5(MTD`-@6%jlNo zGhe8rEwPj*KP6YqAJAC1Nn+y#Xn~GkUcMA3dBo4RPT8f85z{5Gz=I559;`MUTPmvG z+2&E5mN5VMfU9oIPlIs6oEM&A;^@&^Jf&#vkeLTKP&|PI&q?pu@o_(~aBKio*EsVc zR@1f<^9lLyTlkM}-V8J<_-IwSDKGSV!#Py&;DmZu z#p~4bs8}Ng-?4=bRqkp8_hGcm{AZV}Du z>uLu2DtHY9RV(oUmQjxF?_^&7S9MDb#lo_1_v7aia^n#?n)88|7YnH4wDcngsd4IB zZXwl_5#S64kRidkDV_}LewNbTKXmYYNvNXkz9HI%ISu;T@6HA$s3bn#@(*bIT{pVR z-&G6R{b(`U(I}+jS)fUQev@w)J&G7;Fz`kExPdHGSAA1{H=%l>De#AI0q+%b4XU_4Q zNo}TSr90&`ih4z91LC9%Ig)wgBS$XaBbR+Szt&JuLm-{A5k}{0Ot(7xZ8G{Ju{T+H zx#Wv9)(i+;UBeVej;@=u9skZH8h7(A}Mf&|*5jTBz|;WOWbfroVZ zg-G{>h4U8L!TR$h{L>Hx`|OG}gPR?BqcilrG8_`E!C>g`oAS^9Xn{w|Uor&+E}=L@ z;k9RFg=~qp{UD$!w(2*#R`Z)LDlh5@Z&!k4g&q{|9@oN|I{(=C$hcW8QVWJ&Z1k+3 zzCXFs;~;caKdN653ok#2f2DqEaoqd$<8GHP!P?vLWcjW=05z!Xb*CS7JrrRwp>O3; zQl-@AIhpt^8U-MBwj6e2gKZaEgiw4kz1BFM_UFQljx_?;7NcL0Hfu`|g&s$K>U~}u ztEe!d{-zgx`m%|$ep(b1(czPRO_`gP>3ywR%zv)+OBwuXD|_Mp`gv4bfw+mlwkVR;_J!xoAT{8QH?D2Uplh&Bi5VbpFhBzXrqG6+@{1& za~8NmQ7FzcXh_XG*5SWAT@wC+3flzk;zD<%&MQ7Xck?f+PgMMmXxq=>x6mL5xmT^b zsyj6AhcKM;{n-;JG-z}Io)_1r0|8>u`D?|>-*Qu#{I~QUR9dJ(cfICn2All|cY{2^ zYeFaPgi*U)=eQ^f6(~aYyJcOQUy+C+%QA0ZK)ziTe%Q%h2=be$?b4XiIZ<5Ns$rvc zH*X$GL;D@h?}b!Wnz-d;i0-k2v>nmsLfDP^uxNTvGhTS8j{Yo9&dRsEqYsJ*B}{dc z2W)B{-G5kOb|%YK!uRQS{k{_NO-47PRiW}K(iZW{-JKxi#((}mEi91v78%w&$31Y{ zo!K#TTW!&g%bnRMFhc~=zVC(NHocZvcah@UAQ}+&JlG%*4Q{Sy`*7dupl-i})45u; z&?1zy{Dm|7;>Y(<6uf{}{t{>8@z<<0c_J!tv=TmA8swg!i;`KsN7KpdrqrGhFr9_-&3ut`JGvfy z!g&Av{z~ukk?iX+4skvd<+3FK8~!TKp%B@2GWXkJu;SU&(nqQ<*|0c804=O|7=G?! z@;cfd^R`VDhYuai51l+KA{WAZ(FLpqf{(L@6uPF*^&yW{?dW%lLkw5L)>-#}~T2F7aia{OM}_T~P&zOHS-E|-xf zvZY^e5(`a^3*7v-bC-AL>}~IaCWom>mQT*Vc*98BEw-!*pNoW1PPa#|kMd`_%BSVn zJ**$;8D#4Z#UHJ-d0uL!X(3-=+=^GGAB3Oic)p;LKQOFJ<_xukQYNhNMFsnO;fCiZk3#CU=0Ak~)%HgshAZAYL5SXtepB!()x2@PsfCxg6Kn%T|J`9&P36 zjI{(G+s#2H-H!9ucyAw>)j*;=*omli{Bid+vPP|(#vO;TQ{v^2%`*$*?|5Q>#3rAq zSHV|ZRbit1nE^E@Zf!hYveA4!?_-xikGR(vT=%7lIqwS1Tm197pytH;tD;-TU7z=W z9I_n+XL=yUsx=ZI5I2*5rrv9KxgUB?z2>6KtkR30a~w%ST5r5if0hw+hg8R-yRnKt zQ}(Slj+z+JC;7JAP^f?NYE|zclC4~~Ie#JmlR(Jc&e(>c(D#pr?}~WDQuVvl<~kEo zHDtU1As@pz(PWs@&PlU^YhU4r+ z*ET8&ID+21`QzSd4A`tDe{uiGKjz~s1pyoA**9=!kOpp}B`HY%F{|qkB?r%;uZ+B{ z>~TxgD`{BYm72B48XNl?^3K9~7Ydgj$Ej#iOEbc85g!Od-dC3*jQ@||qx3cjH_?xy z_0(v(P*uIk1R1oJ6E7$FOCf~NbnY4H8&hY6`H!FEqaH#3&1e%BOkUJSvh^Z{&e6P~ zr~Dwumff4~YcH$A!mOr^AQ7D6loCLKiC_u@Y4Hx>s@RdwYyL|@LAIb+_1Y(j zoIT%_A3A12s8_WR6b&t(73OkG^oHI>?^gZ2EH|6%wql{XucX35sBDK8T1=oy5|y@L zrzMYE!bWcm_ttW5IkUdqDvFiVI_UcC^_xzDCX;F*nyBwn^rkAi_GkGmclhqUkX2oU z#^7vy(@_qka><+$1_us$FUDkw_?qhY5BfjFl{+AFDYR`42fk$SNqjuco|n(QkSCfC z`*ah1qWT~@PG+l7auh4+FdnwVUiYeD@FjgfbT+S4?a{CgJaL4B_E)5Jby2hCapNJ8 ziw9ju7aT27o%E*mmft5{iK}+dNzvS*uSwll7@--N^nb0D;twkOl@7)!S!_}i{#2xw+y4tE$&@kvR@^PF|Idt0I4o!W?74mPJ?Uee z;Z=-@zU6fQ5+UWPVbA3mz=Hv*JW$WE0ycr;7se0?srgA7!6IgI*{8H@F{4AH1tR)z zWQEFPW2pt5qnm%%0*dgza7L61ll)A(0rnU z3Gcl0su$EZ{{Th{1OK5NQ|uH$m* zB*x-Sq@@f!Ru(O{u;c<_5(0V8eoNp`4k}jqBBEwXr;no(dFX8zfc%4>3SXvq3?-_u zA2B7At7!rGE$1jd%Mtlg&t+m`nS=OQ#f=wi-|hO>#gGr10I^r6SZ$WAmA3&4Ci^fd zA+nB!Q?~gy59z8BlKa`6kT{xg&bNWSRvgl7#_BXGf!yt27`gs1DBo_J)yVcD$KXem zCq3X^CRzsLtS(OZg<>%~<_%uP-6qcI&R>tIIx9N2l(!k}R_K>D0Er@*8c{ztZ-Aoc z%O*7Rv%tNtpR3n!)RZ9Y0*905MN&4}FNzo*ct;Y+i`0Ccp^G_V)!VZJC}-8#!IW+X z!}i3vBsw(Zlb_kvV7m0)lPav`( zxuFZtX<}+5&*fwhsKWkiWyqy#Du`pZ(eF(f(Ou%O{B7TIOmBW8g=OV976O6XBuI)` zdieck4qYi~um9l-knvREK_zVHOQ28%jv_-VpFJO=Ol%;7KXO*mvrRvdVUaDcXmh-a z_;my;^4+to&b5mv?L2bX{w?|fmw))wxreg0i;>2#a?kbJ%#`>-`!<+ z5&5R3^I*Rc&rq$TI@d=AH8J>i*s=`Fw5Q}%NB5q+<;5*fE+bm+OMfA?|D;deWXD3~ zq#SH9|E&n;4*?zx-YvQnKXkq_{-%cqFAv}9x?}uwu)qDM-rMRlp?gA>kb9H5>f9$N z*-lQ}s3$n!l(N*v3c-ZY4Ca%q{69rAk^*d(avXDgsWX7WtK=FA8dY4g7PN)Ya*~9) z`}^F0fhO!5jPq}}*}qNxlYc_+y>6F-$)mU-h3*IBZHGV3=42YrG0s7kGpua|1Q{f~ z_mY%VaF9k9?SwmT^bJW~s5NTd;YITMy?oBU#AEYOob!T8sov`w!5fod>uMe)HB?BZ zT<+hxhB_?7;lzQWxA3mgGydX^0d)i%oIG-y^znUAQNN_JB0qC5PLExr!yJi)kZxs_GpdG#`L2t@vX`&t8b;FHEfLPn0lq zZ~YU4KY02g*7T?hNs2Cql3=6`v+tSSkUJJBZwOhDS6T#){hTDyP)=%YoR0N5En~s+w zrbsw17IGAuBxtiDI#~(DtH7ImHePZkbeirfG;AIoK`b&XJ_Nz6;ZHMTeTo2f;wKhF zTwrMO#$7vf6`XNq<6tUgh-yYXEAp$Rt1oH3Kc_UKQ}`2pE46F(u(7e(yOGv)+czxF z&;yVwf18ILyn;&7!TgN|P;v$JKm8+d)hW2Es*bXXl!k&PHvte#RS|YTNt7*F6ng-j z0CR)>D(*0?UU234B4y4Fn{wT|PIm=t$3arO!s6Jai@=;*<81wes{QGe-ExKj)DC!- z9&(@Cn(G_&7Cs&kDwH8XzGV4!)=4|nI83$aVBSARuCC~*@eLm%ff4(0`03lABB___5<{OGzL=+%KM!1AO$Ulj+=Jz zg*HDt$vqNyKV0nt@eF;P-w|)CX`VY<0g#Xy2!^@c+ye;tu%Y&L+nt2iyQ>1gpw`|V z7YXF%d>$<82Us)YS)p3o z|I)!dS$UAH&+Y!@R~@XI!D}_se4W+LLTSBY#_@tBn-Wj6e&1dePb5<@vK`_fgU}D{ee$~nX9tn1t6Oby2@EgN->nL*{X z!Z%i5$CLBt%Ckh)m3%J8fWF~Yn2FGN8?dgm)Y7-`foIVu0RwkjpZt#r4Z{TO#$ ztGNbEfz^y9@F?2}W(%%gn_t~fENgT59#m&}%qMK0)|LC9Kqp>c#@5R*t%b|iLp_u} ziD=^d=a+@YmG-VnE}FKc``^mvFXR^6Q9@@zqXsn;fMFwOEs7pe%?uD$FK(Eg&hN2) zH0UeOQI|c>@&JE?gbo+|RAh7}H__@-yTRQmz)~6P#Fe-7wb}E|SRMA7+Ia9hS#4!u zEVv|gts?kxwWWSjtLJaNf~}hePNGQS7l91L!xp&XU?I{o0?HGlg`mA_qFmKMeODWz-G=kl-p z6AT7T^72S z&wu4WWv;P?1AVA`6<%_grd@Zb8@2AbCDQ#f{G?J2uO00dL!!P{8Be_dBuaJ^z$Uv3 z29T#&Dq}DPCr^%q-Y(6qiK(XYqVQ#5A802iUa>Q5|786s1X1vvYeg7e3ZoAX7Zfrt0p4<6$T_jJHopEsjZ=YGW* z{U!U(|6$<~wIg4ihvj1a;aGtCaL3f}GPDi~bm(%mmX?}1z;UW_`-7twsBdPy*A$j$ z=9ocumsr$>2lb?b4kN8@oWPEzI!JbEtqWN)J|$ zsEhNxnk$4w-^vfz9sqZ0{3wi2pxqg|os%JJI_`L^k#UKhpJ6eBH1FPl0UTv}rJe1!dd?FAIGs zaq}{>aZc+W#-fG!o=S4TS!1?YEL| zERmO?q_zw@!#Oc9v!*oua3GkUnRL3twG<`>B+!B7{a5LA_5>N4)wG6)u32&zg{>PQ zl+MP>DzOxm$x1hr`@FRzsZ_C&$Bzk*vKXJR^;88Vj`D#Ih3w zV@l#DLOQQhqgWWWwv#I(`*pxg>KHjfmJ0r0(I;lGX^ z_ME(y&O0sUuwl^VZgtHK)s;wOb@}>Ef4(lk$34VuJ|JOJmg^fx${-{ocF>S(rj}Rb zCl$zWF@w5ins-FYThBg5gA8azR=5spZvpik4h3J3W%4-$9Am5!2e_q>ZcE8F_-hOO zP&9VZU86l)Bqz2j368#RDSefimwlI%o1h^!kt7eiAEMj+kDPr*uKM4BI2Jy@-(`7F zbJ=-KVu)JUG1?M^s#?JX8TdF5PmL^-Aj6e>@6<&1%{a{~lQQY+rU%lBkRQ`0zD&=| z^)lu%v3b=~N>`u9X$E0oM{mu9&(d%vEq(5T6a@>4UM3n8RZKhU%SjozK&ZwyAQKc+ zgB+K3C4S5EIs!cb+>bv!Tk$P74_p7|%IwUXC=J8ha)qI(sd-aP0}GQ5=DP5(q`IuB`&r^XMdKH#lw+3qD`W3K>Y8O zxM!A$NFYX%F>JPA`m8JVUlVvY@s zx;ew;B(@=9y;(5|VT}8HKXXXlB^J}wN4co+yE5QL197CTCU_Uw6YrPtyQ=tkGBW9s zOOacnoTWXMry8iB?d=KLN0o>3`JWjrzLW@HXdN1>c+9#(nydW0Q8_lgPt7Mfh;`G; z1J(tQIVrTBo2>hfUp)f<<2&N#Jqf!tKM_o0EiHl zPnk7GuzzsSnJpH6wtVW1V>wgY0l53t1sLN*{GQI-gnNZkfUyC=J7vL}_vMWKVW}@` z)%q~zuQ~vURFFP&O~Nbvx#8W{V*?j#7o#MJHo*2G@n*%_SBaN>)rnaT>Q3v;U_ztV z>@t6u@dV;fxyQFGp>)^!$6P~oqB|}H<`ROUXkW0)Ht$`nhodB8geMk{B1Jt<^vdDs z{2%Q53QCiCJ(j=B6R6mxUwabkY`gLyfdIo3+QEagE*OcP6X zUH51604PcXb|VswhU_5zzhY`6Om&{0?8lXVlM-(8w!v<6O7kk%G zkd+*81e;o%KP|W#FL#;rnBG6enA+L#3#l?K^Y&P`Gp*a;X`pP^Q1bZOM}OhTboB`A z_dpQ(dzZ6VH8tbwI`$`m?uL1{>D{!0N-f)>U1XNfZHNc?+lY)MyT0`|hjD4+0o|Ji zh9)t4Tl!o5I_z60F_7YVC-Jn{_Dld+Wcpvwy8dr9KPJIIFHi)`Fa8vS1o(~50+vZ) zNtr7mIArIE5ST1aKfBB$EB#XTmxg7If8&=DgA2N-OFnyYGY+Zp!6VxR0>>ucdPvw7 zRiWUK*IAW7=g?h{+60YxF?B&X0F5dt)8#+B$d18hB&dCtELq0iQBFy)yvK09{*V?r zDL*((R)UgHY`%&e)1 z0?)M5!^JQFcKM>XKzopLWQml=q%TaQ7ak|bNT3}JKaea&ttX!1xOF)Vp_mfE0rM<4 zYC3KwORqzgoodvQ!WPk}&x6v|2Z+jE*-O@*vgGhqo-H>5h>>RBrG%)D^Sj$~sv|gf z2^0HxP=Qt$@Gnt{jvw0T8QXJLuIWy2{o(4ZltdWoellJNt9N#Jk4phgA9znuh$uNW zu&{Y1Acl5DsyjsHJ7lpL>x7z$)q8OGN$_@JYXZ!(&Y2~1r$ml|s zY>cnZ2vy7To`mHL;M}Cg0)i^aTUxa@kQ3kM zZwAUzXV~z0+4W(un4-~kS$6t21nS5EX}$)Rytc(3eNnd~MkoBXn)|=^F%XGsd;a5S zt@W25ED(Tv5A&A7`{gGaSU%iRfh73_?+0s4Ueyt-26xQyu#RNk^kIS$4^6kcqy0xV zV1lk^!e^yf?r$t=KzB3C+co1OIr8XE`y*Ls@o$ng@RvgB@J$-NUyo%V1>Ym>GGl;0 z!NJ7^qFA-!x2fg%o_wT?kr&1Yb1gD`lC~c_;+7~kl}^4dLQ)5BN=}=seBtq3(U``e zPWo|1(o(IQa>=w0Q1}NEa_6YvWhXDa#iS)FWoWl^d%Z|euDUJIdr`^EbYmn2+w7f? zmss{Ov+ZGgNpjP#gDfU#d4a4=l1w={jp(6d9>v zC~lZ>FM^>rE>6s($BS;li3bx%NC|n#&eB7TiC9i}`FD02uX+740v$q+Y;V_VVESs$ z+XU8>^8K8IjqdmI-9T=|Jnh)H%Ibhqn1A~naz z1?=>D3H9t>69+!W#)>l?cdP$xP@`|6hFN39rj>xANX99I)3FU6^jn<`bAqO@Qezm1 z5A>APflV(4TN`tQ@d2SuDU z{CidQ9$3sr4sJvT{5a;VHImN94w61t_1rZ)S8*9fOxKj*?CQp8H$HB$CL3lsV)Ja( zFzlbkoB5~>8TFbryl9e4>kk_LtV}YN{)81$Y_XW&Y=QKAkt{DE0at6Yn&G|#L}ic9 z&;R>0|Kpna=lOxs!PFNXGjK=o5-6W#24E@Y2|J&-{U6ff3)$XpbnUxu4SrJYc#Df? zBhGZpEImD}QU$C<#?8bpXkHinem|G+-GV!>@n{eRqeE`%nq>HZv|GWI#-S*@32he> zveK&7QQP*lJi$5un4)SqQm>#9aTpg>?ift$$Eo2j!kZ2{YgVScx5DdCoe2GNOQFI9# z^vgt(h?C}CE%HkE7!cu^CKw>c$z!O&n*iXnejEtQ-S4j-3>5u$M5m+nAu(fYh_jTG zf#hgA)U4E-$}gU>zXRK|4?G6h^bn@}BtBm{Oqgm6Oh%gnw0)&Zqg|4a%C&;bz(}jSY>a{pgK#uQ_Xs7s$BpocEmX{o@{kp+iOX z+Iz1x=Wkxu=2yBcndLbD>21AK9n1Z{%oJc=Uvt=Fjrzg6dy&$6PF6Fo{lMY!;FW4& z(dJRbC@a8kz$Od0vzbj~M&!#TSw(48n;>WU+*y7|CN zYt0xBe=FBIcKx2D)#Pv{z#TXjm0m3?<5u~gw5#}|j(Vhz41330Mg8+dDB@9YqR~}@ zdmI}A4>QUL=1@_rpsBatL=A5(_TdKtj%qVbC`Bgmty}{oVqP;v6XGq`JAVCyG898g z8aZwp#?;cX0Hj&1DAstJ(uqS*CI%DyDJzM1Lt9?Bd}8UJzhDrzK6ft7F6(l1qZwlc z^q}Ko*T8H2oG$`_{J#Z1(rUaCLU?AUw(XnGndvCyF8EEMg4kB2s^P<|6-DvH@r_TY zV2kSSFLTp6O4_T7??}P$g#-*-bp{?v-XvVxG*NOKOY|EGkTHsBx9KGw2`tiRWpYH1 z?)%PAZuvuwi&m}Tm5~ZxaiFKNPVSw3*XvXphGHWta9Pjr8@O;@cU)TxqI9+t#I zfmj&duT1ID^_(g3KTQ3y{GxY)+AF_vN6IIfRZ&5?^ke5st zw{-5OpmeIw?QrNjx84e&QYEmgZr`F4B5q*6_%xG^(XXlb1_YBnkl_7c8K{19ao*#i zh3BTfM=Vo*Jp04*L0|%1=J(*CNt@bfEBi}=7>1BgO7qys#EcUHdb>ket!=R@`!Vms zKN7Gm!OE))JH%KG@B}}1Lz&s7uu48Cf2$JWO*I|n;=@vL*rQ753*R_WMZSB$TE2*v*mj%g#G7aSd%A z%RWB8Cb0bCIoiw}Gh5rm^z}pa?zZXzCrUj1;*l(mQl?M*H7sm?=WgDa-})!wC`(&Q zs?`t-Nbc&*d~dtT*ehMKA*~ntOownqpLm(1iVgY(IHb{I+nuQc(`qGpO{R%QKc$mb z8belu*OGV>J+cSP@2e*G@Pgs|k-@>156miQ94tu1@U!7uk3pe#i|_j`vl$Q0bNRHEo{P-c5SltpBi%cRI>GvD$@5)|;TA7YgusSUth$h)_23 z)$k%eC-HO~pxZCe?Kaz-cj-$U`ZU za0fn* zoN1aF?Ee15?4TqE$P4z%;18mM^lSHwv^&`rG-IC?Yb~k%8oakg-XU%mCUrL!yGhaZ z=1;@Ov8l9BnZp&wtQ!>*rAu!#F4TyYYv+OjRVR3vRgSq7qnPY(@AXdz!g+C+WNODb z`Zdd1B8l1Y%}MHgdvQ%pkBjc;<3%^%(5j103}OtJ&pN-r@4Nb81o(rPuq1+(AFlmh zzy13d_cX**N*>BX&nksY-e3D3RmOdnuW7YnG7TvKQ{4O^)3n3%b6?Nd7)enhDaMt; zI@4x<4wY*~S90F~H|>!Bl5608%$#t_$fy)a5s_F%=J22>+ukVuUVSQxdX7)cUXu_? z`>|syxhx`esOyJ#UE*+uwW4xoFQ20A@{POiLarBlf6E&IS7MEH6)}oY*~}Y-&9Ha2 zwxbmv&aLprt1nPo6v{v8C(Cn1-?T3X0z;2=K%7m&3tkIXgQ2i7*yZ4o+paA$q<*a# zN`ThC7IyE2`aqh(WS}y7mCshw%&SOGmE@X(ypc1-pN6n8{E64nLPo8vX|1XcvqjTY z(AG5}uhW#*ftAiJb-!ri_Jkm?Y+GOvW%e`xUdIh%On}sVjgN66BTvW#)q)PeJNZo# zGf$5(Dlq$jK3)tbr{&96zpHS4<;hzZCxYJmT%A=Ec3A(#;Ff(6;PxNvIw3wCgvw|-#$=NzCYs&`v@RWXx3S&-OK~vAT$*J z=Oa|%w6})cc1dH=qe09;J2UsmHI|$n>8Ujr2WeS-@W77+o}+An4jrI#4ES3B;b67e z%RSDI%~HOk{+V2Es9<;$iXIUq2_kY^b!$J9vzEDd$;gY5ZJ~nAl**e66-;(?j~aR0 zb7^&}T;9HeR*P*LuZs>(_$j2Vtr!-hCqh7}M$)_jcEGsUat;}WMo!WmBfCH2tw3Pt zINjenRPnSo?GZ<;K{?_|m9*tTpI_hPCv{GVI%CcG0ksPt6j% z<$AjDB7)2(50vuNTRjZuRs?%T5X(Ex8bbw~>vZ5&Qe0b4Jvu#N7B>nNkTjB!>NnEa z^js3qXBN6VgxZG8zJXIS|9Ii1=hS_wxw)W&ckFIz+Y@NvXK<7UZ{~PI9KZ8g>;lcj z=NM-~BQotlX|f=h<2BMpOk2Q>pdP231~t4c1fNf>IkQpq&-06V2-JCdNSj@VsBQ8N zSXm9#Xj1RuDaWYtsmlx$7ipjxpQ`#atC~AgF?d=a(VSVv)MDAZ zKS>s1hn_&~yg$qB$Y7YuSxtY=AUa?TQ*ZBt#(`vKlJGPnZ4f(>+-eYn1y=;ztdjr*ZG(l%w?%sqvw1KYwHx0yl*l$kJD#tMVTRjg%*ew+XFWg-LMtUd z{!|HJUn(w3(wKf9A(~SJ1!K;6z=N4v*uFuHuTmVCAUodhHonhClEX1sGyvz&G7kd%(jy%Aj0T0_u4AQy3?P@y%0 zwg;kMOg?36M?FY55W4A=6VHORH4oE zE8HuxgC0J8wk(nhM+b-ZBa9_Y7oGe2te(4xI=-?;BNy6@7!+{&H{E#PF7<-mpRE{J zsI!KK0xaXMWLD$5{c1>%uzUyfx;y?`Z+) z$LFg2VtSadwnLp}r05JS9&YrjT+ej%1@v1N5lk{6GgSFh4%FxSZhCLKzJQw58g`Kem!qLl%9)KN7`6uhWY zjxGUb5gnEk>~9;biv2CX^4Ql@zrjCu&tA~CId-kojm0U7fQ9n9DS`!tzD~i4vcAa7 zg(~nP#AXU8uf{V87^>1OX{e2}K~Z(?#)Yvw`I&k&lZgQTti?X|j zLfGoKvWK~YGxTTgBOb4fOzzXYy@dt!N+h5-6eH1pT1fw0e-~g=ACB9{E$l#>Xt&pE z>%0(eeIyx4l(uV+O0KsM8npqm*Zu7%v%lm2up4&*#Lc=V86V8Xm9;cl-YEgfHP-CX z{TrZb6Rbug;L8p<71OS?=qYzoXO%JHW8BZ#XLp;|e_3zy-Z`30)N} zgv7HzN(ItZC#Cr#dsWo*x4e;f4SiYz?)oMTn|}xdJve}ntBs%8^uOB~7UaT@y9%c# zJ?I-?&b;4q`8;#*b08vme^UDeH6&il1F?PllH*08<4 zF?iVB_-;Tt7Zoan)DPD-EY|$HMc=QeaCw2I2L;lASnkt_xb!$6a$a8qGPE%gQ-O8| z722eodrZXWZ5))5H$ID{lRo_eczKni2&a*EJT#C?==hcrx~l{-~ShMAw7Kje-wQo_rD+^}8@6vd`w?EvcAa1Y&bK>-MtN%P;mC-$WZwKy>5wz%|kltOZbpL+l zZzciiUF|uEINP;*uncCGJ4D3t z&H%N;>C&|Cax(6Fd^W27eXLBxjZpXs3UW1CBV*dPbr0zGB==fzyMuR{KNEs30uaPpMEC00|ff4UYR* zAESz)+0m)AUWv0JHu@7IL%sOx^K3mxa1{hF-U0wCY52s_os)%Z$Mtv0li(e7qpd_{ zsCo7`(32vBYL%ho=xO;=^1~)vc|t8rN31q7ij}mq$klDC0%Vy5=y6w*uHDH)9vRd@ z0aXUJ{C4Y#jLVwZi$ZRj7GBTYlsZ!_{yfl!=c8etF26DCve`sO5*f6@{5Ik`-S=kerbfZo^~upk_}8M8@~u3r5P+!%7YUBJp_g$AXIb;Ah}!OaYjz8+b8)^=j`qZ4HJ$v7vG&j zwT)4B-X{s=AIEGjfiLeo`C{ue6g}y$_QR2T(Y*D$6YoTZXfrKO#Y|}wWKyp15cH0F ztdOYcZ zD2EkmYvae^l>@mc@076pfdD}SuKE8+`wAjSV(B^qu>wG30^lRxmmk)A3?gnizHz@? z^+3gj11xM1+AzNMS*?Ty2bJ#!4=n+vY9n$=bMf!f=Q4i>?Xzpr^#`bqaB0HfFDZvy zCm3nEyG9CZP#LL|9E?bG+sa|BFCJNT5i}p)dSp8_I&M~|N-khmUA~)P%IagE!oV5? za_Ub*+}YWs>!u%*c-9vrkwv9*wG-F%1jroV=WF14LX2sz#MO1flZ=!{(x{o$#_e9! z;t5AC4uHUL&cJRl-Ih~4~Brpb?SwIr6bwO`A*8_ z`K&kR%7M7o-FNeER~0#7w)!xQTzjnT_k8?6G(T1*10kW2s#ih%2Vqv}z5BmwRL!bh zu?ga^u%V}7?|a}5mq$UkL*;thMza1Eono1s1qPvy`GZoqmL<|Jz$kx+`2Me!weE)Yo_ zPK7{IOuK;1G~I!Gb5l0Al;V*|%t*C7`x9E!ci(OZi;ZK~CFUB%_^%3v99B-o=5WSr zV%`{a0@L_i!)Ciw2mF+aiwgu)13`rWF9_;CSa?uu3qH9A&2n^n@HW!(I_-PH`kzxG zML*f{18jMkGYRDLbh1r0rSP_O!_Cx;D6`#|74p$bnXfPG`v)ItSYdv9wgvGj?>Y7a zq4k8}Ft`T352AtqUA(kgMM?|so&rex!`*{IOtXs9> zki#)sCfTt@))qSP3mJZK;a3^UTA%#*-)=o24e!FeE568P+1R-8;ZZOl*>R#li#niE z9(#40oaZFeK4J8jH6WdYlNS5Ixuhabml6v*kx(jENJIzyF2JfSI&jZRnAA-YxeJKv zI>!hqyN0Tn9eX{Q=2eM)zC(`qGr~;gs5N7NFBG&MoAl{6?p|SsMjd`=uxL~5N6(TE z2yLSc+j-B+q+3OY&jq8mw+nfE$T+9@NcaY+RRwWmy1b%#T0}rG(KyED98_`s&=hZ{ z(Z9-a%ka>sZuM?5)Bfy2dSQqLQo0IEOW3z%h3n!64w;9UJa6dRW{N$WSqTSooKDP1 zW;uvgqH0xYFZ`4F9;IH~g(T1pR|cJaDla{d5I!yxK_w|EWld}y7{+P+zBux`O6yI? z#7YZ@v=CC!4Ks|456EcH#>ajnmrG?niWEekpu+l=xs$3D_2b{?A9CLA?k>a!a0=vz zm_TFJ=f0DH$Bwj<NGDX6g}zzVjnN78d7@oic*Q?vfkpxrkIhZofve<1TE9(-Lg5 zL(XZf2{_81_ZZ1PEPi(1!f_PDMKI_)@<-gHPG>=MpappeZO|= zLh0>$h6Vdn`zp0Miq#h-6@8c4n4+F%9u!d(`}b9+AXJB_udgvn4CjZar=Qf!3|&&k z@}tA*`V5={$yHHM+9znq$i!G_$*nt!iLnbOq~ew{hwUp~s8-TJYKwst6|!ST`8}7K zitXZmdn8wuG@aSFyCW$z$v(Zb&gKdt4PUf^qP1YFx*^yM@2xalq8Zwtx)y5_j5YPf zt7vldR4^gkL`KD}qC)=S+Ad@7h@` zW8t79tj8xcT`*3-V6HM%)l?JfqX;YYi-y%x%!)i>Jrk@JXh#mHoc+G-NT*GHeayeL zKT5xiFW+TYWf06zlN%n&`mM;CS7IJbH6Nn(J2SB{LH0~(&1D!jbo82P{(!B)>^*R=Jqri4ENL9qf?3~ZZPUw# zFZhH!NG{z>>ZmX0$^}5xBm6=Zx~}E8od|Nxfo3?Mpy17+V=%E3()L)|?7uDemc+-* z44hl<#a;HRXsZ7WSFB}pUbkNhj;8azf*g|^A(9H<+@yUea3TUF0*Q-(1!8o$H;w<+ z0IL1|&+(C=<;ov$wtfqT?$j4ND2@I;kUKHZc(Xy*w3-hIg@9y+K8#DP-8P+pGQt6% zN!?x)$|_r%(r8N%F0V*ml%`Q)G4w^dXq4{^4F4Vcn@;uGn{F{7Xt+-C*SKKdQic17 zo7$2a7lu+2G5{<{+a~c3ClFW~*^|%yEzOD;!C_G7n z2|WqoERIh&1At45cSOd~tthj;<#G+xx>;ytXI4dhIhggI*NGOm2z{`FvHaggub4j1L1oVgV2`f>_#TgXgLIxmg=EOcX zYo1avuu!Os^J{^l0{Kuk#?$`!o04C(WIk;2%8O4H3?m+EecX&>XXOtpCyOO5;Kr*F zWZQadE5tZv`q3J&QCMiDk-wT0{O(GQ>+Gw=AHjnmMMABDC4Y|0r~nQ!lO2fykyI-p zr_T2nt(~>rNopTue%sUIl~Qw>+`8l!yf>kV-y{9(A_;4WCCh*N;gqYRTixRQa4cOo zMmDu*kVG7Z{SPSziRyzAZ4hpe64PP%NX1XULWlXyT;GO@Vs{@4qhpp)6mGq(2#9}8 zXAz+l=@k#PpWvvbo-Y$!r%W-1rZQz3)ByZ|!{raweWd|rqffiCaPgsR$B6CzjL5r- zb3xex+@_J5gSbsIqIqxjt{GtX1ajI4_Gf{a4PVOY5Mya=S8C!yBF%or>2H&U?U56=+qXp$^l7<{ho#@^= zdfCXV(N>o_#mexXLNRC1et|pVb~>63XO4aoZle_$Ge9}95_|vp(MdAVw97I5_r^@Q zuCl z6&=~vVRR|oEPt%*d=ulT!Oa~PEi$z0{5+AN9NJfXVz;PrXWV!09+#ad@yB;?osHke zQX;n={~Wq4?7yAyJ(h0Kd+YiwKMBc6hfH231GNb*=7GTfHKmN1STqXY6pO%rEABVg>90R z;ew|YB?uAV1C=^pp?}|w0=BPFWV}VluxU0IGg{2n20@>YLn^$rs&h^~3Fb_C4of<5 z0%1iID=lo9esK&8yp1)bzZ`}>OWuP~tbs!+x)4jr55oFD%3G;m{7#X9hgDk91iuRa_(}nYP(`uY`YHY@@`&;u1@Amuzb9J#)T6A2Dsi=uF~lj|&!j3WBYV~< zNYcz!Sc~qLic76iyhlMsCC?OnMI!(HNS5a)Z^HiR6vaqj^jz(5@VNJ~|`_@y0 zm;48nPZ5h==ehis~(UyLm4jiH-O1tksp zq5IV()q{_z+%=N(m&T?sChpa6nWs&K^knNAfod-KhEqQ?@Roc}YRZUoc76p(pb9AS z{;rqx=NLl<&z|D};$V8o9GNKSNAEDr`0Qef%VGgt^{MS2MR=Cdb1#tlV%TGG~SfA-C|Nm>!-nM!+x&U;<5B=cXm2~W1 zRd|eHvIP;cw%R^WrJk~lK;Rt4C5QS!`kmKeQ#4&NjZX$leiIBg0I!tW4Omj@y{V@g za;b=%05>)*`xFwHQVzX)jP&T};B|MW6YrjC9C9aGpmCB;2A?<9AR{eRyfn$mvaDJNdWq^F7xfD}K_%g$pbx{C~*zxkplys`x z5XB?SEY4*md|yaK@ee{}W!QKRySB~Z31mrXbB zT0fIbhm$v_V;?*u;$>7Ld}G`7`D}@0T)nAB13Jsx$ikXcj~_6p&B&`bL$80hdCMA> z#<>7N*tV-&gMxBIRY^zR{_hsm?ZXjD3G}e>z>=J4_BRii;w?I^xdb<7@l}`u)C$Ny z83`;^JrvR5Whf6-OH!s)|6Wj99`(UmPI2}aGbTp7Y4q7Eju20Pe#w}aFGXcHlhW zK@yc-w@y0Vm(x6#zg1XGhp{1FuYG1|zj^I*-Lhf`>V2My?_fbTU_J~2y4VhYe=FkC zK8DfCJGTL6kHd|}sN;Qv4SqXyq5k1PD@ibCxf6>V$wN`FV{9t#AdhZA+MbrZQMoub zM^2P(2&a)17?j2ZjpDC7J3e|yQXP;@HB>85FLv+9^V7zO4Lf@C&{ZIm!eD^JPRP3L z%C~B>uTew;mzo9KF}!DjaC{<^wq|R!Lp=$PB`>&Sx=$YldEH5tiH{l+&@VORIyT!! z0>ojtiw+Lfox4gAx(8Q+37nLfH85S6Wy$570a*BW0G3mgu!tzvCdIeJLr+qF+yB}g z%aw|UvPn>v98Dj6bG7$lL6}=d5e&f}t9k;*w&)3!2y_a6R5C&44rg1D$>Ca1{ivHT zM{OhADc>kQg0Gamz-P@39{w3>OzSE>v!&pQisu3xz_m$*A6{ZyOmmX)VE3g%%X6V^ zS6Mxi?>YZD4~8Q!4x2W}a62*gdUgUp1S4lUI=5JppgANj*6Q zTz(4noI30jM8QZz5b8s!z1C6oTBcg6!5;*bPRu`JlzMr!aqomb$(asGiCKEPYPY^Q zwyz?oLcjGc+zrmi_C4cErXKITCg2-66(Q8Us(X5egT28{b;NX@=nAub)iYFyzPT0R zw|Od!@*A&0CFUr6kurleex`f4`mYh$ld8 z9!+Un4L~{hDTcnb7EFdf0mp7W-aDGY-i6=u1^Lwp=-n81`hC`GWBg~gbN{f_H;rb! zzd;jeuc`f?qfAfcYW<>J46n5JEgke- zk)UoSDeb#1p*7t0_T5n9;ppyBa3M4n8VmK3h z0zK?CX7nEH*#*~@%bj@mI_O@XfVP9tz!i_rCWY%{!S{0}``esX=!8K)&?6!qbJ}Md z;wA$~941OULV@B)UTe1FtvYWnp<16qlx}*2H3~@g-3VYTv6rD)Y5k-B(!TAlY>)ds zYszDA_!6@9prHG6%L8OfxYSMQ;_Khnlf!Ha^i~SoCX%~AgT3DEKEs$48?tocEPGf9tX7bnz{6oatw5e~!tgUH|>t>1?*xIlQhm z31Jo9Sr@H9T8bF!;CgY!5izN`S@(N32BYV&!Rk=&B(vw(4>P7Ta*#$}rI)kDjaHwr zg8&|?zukO1T>d((5}zy`a{BxV&+$)(w&)C}ax#{~UUc63lgHE9q*+?qys#X(S0i4# ztJQx%X`XmOV?jMU_N|m3+40S^54otYX1wY|MPh*RpvG^L*`Ghiq&FBEFmDA^EDIl? zJsy^QPp-vNJ}q5BXWb4z271+bY%5IW+{_@N!$N^lKWj6?t3v22tPX6ZMdG&vn+FKd2K^6|$6$ywTvhBTMGn?}?ZaCVxD z#9y7;zi}vq?nXsjY^MJ=5`{^!!%gr&3`c9f`xh-rZQetdtFRydCr!9DW5FA7Cv1Zd zLEYjgEqc|h)atqSXfDl2S(_95Ngzj}m3vcVABGE$ zFV<(AO|>W#eQX-rPcz0GHX9?$pP<4%^*(T{W=^F2Y9>%TluL2woFI$~ZMMe4CX`Xw zSR_S%{2XhilRv_TLH*OsTCj0f0DR-+jP~i@+$bYZ_W>ZpjsA!pP1MQ<4EYMuMD0Nrwt=y{!h(c`9?-&1 zdkM*$xqgS~07X{U7`&Ioo&_WUS>AwXN+Vgb-Q_j&jiY^H^+rgi;?0V8#gA~_0c5|c zNIlRclZw|+8(%A`3Ism23~&)*_Q6bayiM46HBr2C$@%n8(1CE*jfYL_hDzanXN^D!xuJF^LJ$Re*SV`8UUs443J$7$nwVwHa@yrMxQ-2 zpy-Rp4)y;Nyh``T&#_RN`?9+Fh-d^li}_+YTdT~P*r*@o$y(*KcHFe<#kTEP0S{a)Mc2vs%^ff(F4#|s<$3`vWQN75_cQwU!(`Q4Ta9*n? zL)(}R=LuE{ShLgfd1Rnu+}<7Y&Cc@ri=2&0@}_^Bj(?8ks2d!`gd|Pm<)d<2_mDv#@c~UMsiz-;l?rH z?mNL$f0d6p%kVVoaXA8o14+l`mj&7H0+ip5*%_A`QNXoWYxOYOHT#eJs+oTBv;>pb zYjH`<&EW|_$7K}X)S#jSB?+Xdt|xwcn?C|RH2&(95I6~qfx0FOf90G*d%Jsiem9=> zlcZUrS>}(}zE98cy*(8bQJ03{W~5MH0>kO&`;X*k4P+WiS8N{X7SBTU2Cp(dw({00 z8IWEvK=2V#^zRop`MYFM`U)7Hy z3a7!f?Y<)s4CRWYJf?Qpmvx@(9w>|$fOrxO9?Rp^FGJ2$-a+BMhgqmk;Q8lOOg>gK zA%rqg?J!JNxH`;G!LgP0UquG|DRAu>m%Qf$88VM;g~Z^e-avAVTDWa_c@I+ zz3FdK0Y3sGd&hHB5;#$)Z@GVy0cULfvZVO3t(SX_-84_hi;3?ou%UTc@;Aeqzl;i` z)ery*k|Q@moFgAgIk9E=PXs;d5hM!@zPAJQI6NvyNRfp6`1aI1XtdO{lSRx$Y;k$; zBtw5M=FbT{yes&&GpBe{)vcf~WccX>;>{#u zP=fwlt@5zAi?|l{>m>{n@JPLi_ZR(b2gpF6uQPgVJb)fiyHnE$8I?e3zaD%SuiF;E zs2DIJpXt~0693CSsnsYcaIdO+-9Pl4Uc|bVtxOW7?2v&R7x0TlTto?cDIb8^>&d}} zWFmyTMm4?G(OE1;!b2We7Gm;Fx5mxOJ^2vr6aDb>b%z?G<-i6%O~`|z-S>NV!^~kf zAV2{R0${oD#D^{pcj!32en~K0vLyT$Mp~6iLvN??QMU>lD4(n%UE5y6(ejh_qgx}B zG|=CtsD6|@Vo2~x$`ZiT=i4_p6q3eSipRZSt9^g+bc!wPyW+xVfBX)3?yh9MbY1#^ zWOawvovlEJjkOWKWynV7P8SfRNx6+dBG(cxMPw%>KKG#sKac)k5uXt~^^vL1ugfi; z04l9e_?6-lg32GI0gKzU@J_K71k6o{eZ2GvZ9g)$LIh(kqm%J?U&I3 zNyf@FQ^3f;h^$2F#b)g6RGw{$g|O>o|NU%fVg}Z(6I3=#HZBLl@tB`QeU4iJH!ea< z$WA250&$#wQn=j0uMxK4!?Q=D%FKdeL!R=9fLm+r#GCa6= zw1)m4Ic0+C^{UnH));VNfHe4sE@Ubx9$s(}l(2p~a-N<3s+IL{9c*x6{n(_$m=EDj z5XY$=Qm%WdHm-Ye(DwYo8S^0U+wo67a?*pMI&-R1gYod z5n*+(Dsb{4)r0w*Ji~2>6zf*Qmqa+7!ESjqZ?Db4_Db`?_7F_Z8fE3_wyod&rEgjA zv|?W1S?hds==Q%i+zvo%ysrC{B8vn6cqqATw%|5tZ>(QW*Jh?ZuAae;Q3qj#hpKxw4T?uE67jMW~`RC%y z4wRPG!xmCE{18(cqLuZ_lnT#YDc{-XAk!zb>?k%^v!HX6p<;5DPaXT=CX}f;M`{LJ z1LpJ=GS!pQ1ga|7oDEh zWfogF>0asK)5dt_s4E9bdA#noMNXyQscnm{986CRCqJVtU+3xz&qP-q>HNOU zZI=EA-ZUJ~5qoDPYw8 z%;z+}9uQr)RtL;UvTEJw5!Q#R<4c>1_E~^C9CIGQiKs{IojGOPK|#4KX;Cr5qbj<1 zn$bJ!%1pBilw)jAsWSWf^EC`-?lp6u8NZN z)+%-B5KS6wFSNvn6-0C=({;gSLkG%wYW~Xwz4CEAnDal~7$_v2{q-wQCcm19ifvQ$ z>YiF~RYA;0WGN3hPufHA@SgEH(CH;L-2bVu=%#i{*`|6&-kvl(*V+FpbeRMxa7Yx% zgBU#?10z*95V>#`nQeIP3$1KB)ur0WYC4qO*rckXx2d-1OvI+oH4gfc`&Y^pbFlVU zNme`JthUM0u;NSYf9&^5zu$U~b(|L6IW$dztoefNGQ|As{)o9H^g21AOq8tn?n6!_ zJwoptwF<VB-7)Ij>9%fQ~mr8ll*|6ff zFI zN%d1V9L7}R&pn*KuCK)tpJLH*gjyFYPTH%J<${M*6t%UjVGIi}@>W8u zqXIA8BpSM0sh>esFRyg%f0d_wl^CR`uK|g%aBkQ4?IT9AHLn-MnVW}$hD>u!JZn9) zxn-2K8q2(u=>OgenhOy6wF3*+e3Zu~ZHrJ@4$hTY#fDm-uofqIQ1*ayy$V2U>SQ~B ziJFL=nnAu=Lv!>@y=q>1hS;dwEY zSf-Ph9(1+CwtE?K`${}J6LPssPfzfO_UC}uvX_1C51%X+Kn8BPs*KQEPi%qrCRjh> z0nj?^?4(){dicMdzqA?EVLxag_Ue8D16uz)%CG1^fi_63R6U=x!DgNfz&@QE8)dfGEyzwhe=rC5>7?;nC(=b>1K9V!pQ6 ze!2yp2lmr;Tf)|+52BsAf0`ToNmkHhVJ{QP2rTy|&71VAdF~tKhf8)@5hf~p^_Yqh zyQUJ}t-U1mwk$N6Cv!LUo=dvq(-*|$DFW^N1v)UzY4e2fX;lsm0c2@&&lsx0pKe{f zw=`~+M%naGCvT}TStug|ZL*Lkh9mJ7nOpRVbg0vE)^AU~ND-3OzscP2Kt*MYA2{E* zf?;$}M$9VZ@343k|EE)QANi0IMy+z^e5AhrUee!YL?_FFWHTo)Ci-qWcZWT{4YJ&v z^vGZ!lZ|s6)!XQd)Gb)|>n1q&;ZdOnIt7XqEIY)czU{dSC|?du{^F^*wn!0`po-8P zn(b!f#j0va#|bic2^@o@mJ#=TPr~>ip$0`hnhN&0czJvUHWC$KYSR(E@*h! zLwex^FEg>bgQ5TdJl4t9gJ}-)7 z=e8g3#70DagbKE@8>#L)PzkDUvwB{bjwPx_`^Ga>dcOE$88K;~0)a2o+g=TJZOQ}? z>@p{6uQgbz1JhZ909ABrkIZg_zPvC&4t4xQtNxq%878T*jAx4JkUIS0CQyCw>o=eH zDLeV8v?aZ|{QBbV_4OxPrjT-$lI#HwU@6LjCoWyuvfPNz_l?~g51UR>eGl{H_d%$I z`92Dfe9(j^jB*kh(9WlS&RI4=J9_;kTRJYGp!^#L@&^8d)T>9m2G?mK^fgsjQUc?c z>=&~WneG#p_##%`UH2)hL9??5MGUzw(0j3Gv)hxOc9QI+m#m$ps+}Zc_}x#doL@1P$1Kg?G$;Kzg&ripVe{;f5nkKwo)|icT$5P8y0&(P) z?|*8p|86IP+TvKe)=*9a(DC%WSoM4#FXyhqahbZ!h0Y1USogG=#-R^1TIk?J!~I!( z^+DxSg6kCg{!N+vOZ*k|fR|nfE=jszJ0Ip%;pC$vj$EkB87*65(mmmlEQ+3Ilio}tn18Tm2vTPDLLXSSH-98(M`JBg0u5IvUl$67I?ivIhI`l%iVwxlZb}!d;l`9_II^Hk_2d-}$aV!z zeZ=OI^|&UP)pgo(Igtyhk}i{6_ZHI`WVj3s=$dL(+B9BWieqclcb2g3GPlfS)9%K` zV^W3F$)Ewgc+AX-)?FcMe#YGroL?uigXfeRw=cHPG4kYMC6&v4k%0e(Tqb8L)9U6y*O?sZeA9sIBz*$`I>8|ERp<{@;sl$1yfs;fPo1nQ-K@<9HWja!M@5PqIT6g3zGCQ@mc`QOy`KN;?y zn&W)?j9!EE8jLE`CrDpk%OUtgDf8`2c^fDi6}iQyXu|%0F z`|6SC?MTMa5imp%-o#reU*b^v{cSh@@cdKH1_ep^v=Bb{FO21TtpLwRvK=>6qphes zN11npl&a3Um$%-&OIb|0?}IRtdcRK(zcA`BalCTOhz~4=_}<4ce#iXu&M?(rfISY@ zv@9$kmd-)6@6xdEh!Vqs%ck|vaa71WW*F$tfh$6ohnk$SI(@U@(K|pMB~&`N?n(v4 zNWmvY{5c^qyn5&g87l0Z*2{NP8LxcHGL4l2tUg1BEUG66i2lqN*2{}?^}T#;o?`HB zf1T5o&}0^7U2C+FNj6qaKrabeEto-agO{N zvRhb7!njFhOLPKs(nJ{RyW#<&y60^rGDFV@j0RCmLamwY+EqqY$_SkWLJy|nSP z)3~TM9l}yfmkYk>dZO9w79I+@XSgY#A}c@o`U`UTy*Cc+pRO};|1Uw%+H(UQ9`=CI z0}t`$fk+Yp)Lf+@ESJrk-&#-b2LHdtYfjN)XrCF%NKdNT;+ED0>JdWkiw#Slr2%l3X!S}=c18KxO}+g1GfDypPn zlN>jz>Ps2l>Quzv47BCWEYB4HXz4%4s2!iAk?@^7HeFsFhA zm&T_j03~nA!VYgh8@X#OLC7mR-5D>E>cN6HiI)Z4+)JJ_Tu{a$?f+J*T7Pift-3a5 z`~Ad}pylk?yBS7iOU0?r+DV9Z2`*e^s@avT3lEsUuqKcqPpGv(C;hy>g`B^CsS?F) z^-N-40Ubk#_Toxv0lXXza(GBf9=+x-YY9w{D4H(5>X!=3@PA4Yym=P(v?sNfR$6}c zEoq+MyaPmkVA+PJ;)449U@{Hya)raZxkugrAqqB|u z27{HjS5SW9G%wf0HOev#Ly-c=k&Nt4S~~7q+-6&rzuq5rkVOgI(dN*0pKXmecERHT z8y_)`0~DZ}4V(f~pId=AHMWbdpWW-JzvJ+MiNEE!#9o@G__I2#3AiGyq2ia^YVxwN zoVKyny)veQ&EhEkNI7L9V4=^+_U(IW)R0*SIhJi8vN@_+6eUv6yS4vE)q6lS*#%vr zQBXjUB1$hx5Cj3~y+}vtU3%}m*MJ4-1VisgCsgSjq&ESnp(8{H5HM0gFZbd7?sxzH zuJweqLRchu&YYP!d-m)(*r1sud@EA`uM&#S(P!8MJ5M`>!DJj*KF2V!Mx%Mp=0L9W zEKl3TGN4VAAC>nwqm_h$^dPgHh>N~Hq38K@TN=cScQTvIz8$rdo)f-O*fj4shV)|! zgLhn&8?{8O2gj(?v6gtXE|260ZSs@tQ@fM@Qeh*ik2CA#=%~vBN@z3%hp-kigIxF7 z=!-ly69~eDun!*YA$72m&{w(ESziay&gg{1RoMQHVF%Og!7~m79&7%a8jQ>x zD;C_SD*hzI!y_+_%sWX@;qsJ)=i#+=hxkwCYi2314gU2}){jP1&$`*s*02a2wq+6R zt;X>YZp{?_8lToqc2mC8bBVG&RkX9}YFfvbcY*s>wn>4{PQSjv7w%aTHRg05)W_`U zFRBK#i`4yJ+v(vOiczxo)xv<>{F~~+ces-m&<;VLKvjV*e$~mlOjPB5X|^hFP5!)`+3)?Mp0!~$O7*JXwX?#;x* zOF*14H8u6e&6(s4-t9Dc1GUE3vJ`BaUMer@nuOCKak$lQ5#?D6Yap)Ixi4s4T-4xp1DBIdgzCv3N^VYYr``dp9HSW&_DuLj^ z?%aMON?wvp>iF7XCIKemf!or++mwCOgvMR#)+Vx)=>p$Ia^t`5w#LNK1_|q=z3RCw z+R*N8df`qT|8Cs{_IixW1l#NU<{GiM+UzlNP{}r_J!Q{BJvzOT5G%uQ#||9<@7Hj@ zjbq^)Ze+mr`l-2t+yoz3qy=eUQWsv+Q?#SRByw)6l(SybX(e1BROmCT_~?bTYEnkZ z0&C;!icptV#-x&5B}+T|RA}Z&X0@i{d)^oWsM`=W|Gg}AG*~6F$aZi0JWavXL=a^~ zL+IXF(tq7j#{=E4GkVC5i@!=ilKlK%;)4Ew-&b4QlQ_yHUi+0RBZMxmwNW(amLG-{ zg{w)2KaelD^Whx@srya^KFQNK$Fwb@J!O>a!t@}!b#p=1u!nYu8_}lO7K!v9XhLv1lr4mW;KdhRf#t1aC~#xu zMXNG3YTbdg;@Jo3PH!frct++PjFWu}Vo*sfJ&Uy^(pXSt?6V-P12E^Jx2 zu;y-K^x8P{j&^FS)QLi$R94^NOTW0cB7 zfbrJs$9JeG?~%a2bGiAI6g6Xcp3{7oC@;CuM!5o3Ro#&7iDhNaMg;oVuXo`^(;PoC zvv7jO$}fI-stF6Y6Ok~AGOD!_#uXobbMZQv8Ry02Qc0nG(P=EveVaSAntK+faWLY75+|7#5EFE`b0j?}7M zmPLX9N?vd0^elco4M#Tp0|DgCLa>p!LhNG;qJ&Qwj zVa>AZgDc-wAC#|8OY|)bF^Z6dgZ3wFs|}@j4b>(z0Uq>JM*;WO-&OWf3AK7dgbIbi zgGi1&wd8UEZ7_kYA~t$t@p^As)quwO$yXy`!cq7+Eeks>$V`y)3x|>#+m)C zJ7zxi^RSxg#f6sOH`DW7vRHIswEMhO1eTKb?|7wh{p6>?z{5<|JkD9eF{)A%T5j;; zyJVwWPw$O1bfzA=8-{ZH5O2{Z-;B^%Mpt@qs$XzBT$P=aIfuMLA6ZN#>3|RSX;2*K z7H1L7;og?n^WvY>KF5<^;Mn}ZRBbVv-Ekh$8Yh&~bKHhl=vqr_BNBL6_E-kS!aogX zCpZsw#G^gx3vD^)3B<`oCuF7TCi$69a*<(<@2mYvu3A52OgT{YA*to>>ck;ODcA?n z6UY|sxv?5;kx1a)^#J@YYXq8;OLx^EUs&D{o0g%NrH|jK}V5Tjsm7b0$4By2 zF3^{>&Z!g-B9__;_X;$98#NjtL*I}*2sKZQ`1dO&PiQpCqk`m3$#RuXNT20m=aoS?pEb{2kX;R@QvE_{)^fSrj zoWtQalp-2@2ZYC?ch~+M9_c%;*I43dUB#z3fW9jf5XiASP)w#hXVJ;Y-`Q_~{c7M; zwCv-mQP~icA(C z_g4wt?Dg5?vS3wgO#;Tdg?yB&PFP|a>H!568Cp|1>4iJ6Fp7W zwxU{r$G0n!Qehll3iif?84GbuC@)t14SLHjQ9xQnjR}Ge<;woQz+mYCDLNtx@~z z<;0xmC#ycRl{TRf9l|kfw$+0-4A;h#O=+)q=W^xvGr7xB2Ral>liDxzd0{dwL{6?T zuHq!c;>h_B!xF{z6H1x6^9xy%i_fOwUvf_GQp9kTi=DVt=3l~ag(rb6Lu*d>cP{x9 z0-R!anFyqAb4K9ugoRuoLhgYsyBIF-R5ou?Pdo5~fB~Qq5rQ52v3?hetI%io|Kd~H za0OTVz);b@O=(Y32Bl82UZyW>FSIr^KB7ARthXF_A9M_z+5bGMmPZwJjN?M46W3$Q zj#WpX_6@sQaC##j-v7tYS<89Y<=pr0epQfq72_0SE{45wZKTSm^DafDQ4Ed1Zg->L zUVm4lyr@d#tI6Nb3?v0*T61R#%OhLPuA6q9=9N_mc5LY_{buG_*3WbH_#|RX#f*9! z5u9BcRPsQ70F``Z>A?O9MOCjFz5jh*@fJZD7qdL7hSlEu`9AvJ7FbR4O&*YJ+ipP)t7pRhxY6v)V_3jsPa3K z0uP90E{}smg0J5cfn)7QClM_3F87&+by1}w;-7VhZ?32I`o*Q>Ky$}Olx&&E-NJ|N ztI#X?frhG1lytd-yTsr5j&XQMlv$J_IIDlUA=tXdvLyTi%76BHh-a8ZOVnFJ4~tCg zVk1&rIEm=Nf)LBVTnU$@B)2E-^EEnI;|sMX(3x28rX^8rlT}lrSwl$s-~%i3 zMN?%W_AAvrEB40dY1JBr;`B3Bz7N9j8M~O9i{(+fFjxZEF}pHoe{An`NsWHQTY|FG zPiXJde-7gIAR!hss!mDA7c}>y`NkJ_Y zG?+>X4qgZK*#7nMA#`cfnqV*0+032Q5C`)gW-3|W-yAP*iUvuuuic}0P|T0MR7 zcYZ}bMTMwnfJkTm+%shzNICbfT`wnpE0Q&83>#pDiByZSnpK?fEX_#lLP^ujt39RV zL`RN>Ve+LFtePYwIggyti3kab=6bn5LVHaXQ{3B>ay$m9)hI!D=T6w%_jZf@HX{_FmUv9HHdFGQ&Zn>o@IwG-t6{KmXZf9W!g&4iHL-$#4$vm$>;kc8C`i%+cqYqX zbFt%}LZDjnDs=}IaYmIydcg!*R89^431%rLz|cUXdoI&|0cv6}5SR`oG85R;77I(q z^x0?EMc_%;{u7oV@s6pCu^y*`EGeH`^8EG~`!`uD{|`!0{-a^SJ!S^SiH@#E!8L$u zg2f&8)nd!9Ghx_p@ysfrxw(P}S!cs0?&V4}AXqZk2J9EHB3P6r{c))c<(j3SIPNnaCb!7a z=L3wcD7i$Y86h_8#vS&tHycgGiD8u0bNuMPY(n3FJ6m0!nADFY0nq2 zi|E_C0|~^CpW4v0szWEmV3>6weJH$ovhy+jqsnWfK zQIbsV=^&^(UN~_a@AQvFS80Jy_#MYT48ytaS8WvR?^-|n9#S*G6IIf`6O^VB#y<9e zbyS`2Yr+D&MBE9;+AfzX;_9Sl1|azQg;~YnN-gdL(0dQmAT`fxw*q zJ=}v*(yQG;kya3S90@s}HD9QZvYJ zURVb-)uwRZlAs$_STg4Ud`?)Y7cLr*pCK7w_v8k>QOvTbmF>weqR%kn)0(%M|CfMp z+sm98*J8fd0B!ySCp)i~-gb}s<#zbjp*Q?=u>QKg2(d7&O&kE}Xh=@tSDRr}LCC>= zNM4^b^wM+B#5{Ja9H$Z+1E4x(0U0CDLvo`gkLmq>| zI^woeF35Zq)&1kKrK86ipNXWlM9Ifv>w^?E5(w{pJ|g`wFMr2W`|P>?-sx+3%IAFL zYndA-#n7Bwr2pL5i=AMXMOUHdELyMWeT|JAhpFB*PQubwSz9Y|$> z773l;W_5Q(8|cfE0zC@;*PGuS7*gr@s2{N# z*#*CE2b?$P$Nm6=WELZ-@i)nbK9ISft1x5df#~${to(a?Juj1(i>TyE_UojkLI=`> zYhqr!3k`PNk?7YXPA_zynJvhJkq#g0P!dq`#69UgzBI-h+9ayBo5!=DdE=_3CjyKH zYZ&iY%{aY1RtkfEF~aqcy{N{WqiMJ%@m6GY%ytx7H(`mm3ryc6J~t+!*SMY zXKXvgWL$}CM`XZAh6q$Kcc1$_NDEuT;QV!BK-=i#O&0s|5sw#6#Nw#j^8_-et&lkezA!0TdX)vt_jO3Ri~2l!nv(WfQ`g%BWYb<YVE?ODokY(WJR2R`_snws+=t?93*Qq zA0IWZPfDyJjrR!rZ8uFu8J35Z{y0@+)2O`a_zF)m;30T6#XZE7@{o|w%sug`Kc~h8 z+!vlz0FHf8uSMClnVEM+fqEP{m)lrgrc_CPG?bRZ{cZDU4uxl0w$Nl|(7_Odpk09k z*PXB0VIY>WRPr7uwIu69Me(H#+=E$7qCUlf^nViG+nks3O4z6GdEJOC_=m5+o;+`i z`o0DDGwZ?U$Y)P}?FCD{RL4$EFeqz_yTqg;54I*~-9H!7D&9A^yPzeyfq21<)iF%Y zl!&HX>E?*yySEKlAq3+J%Rfrc`gBf(Y8UibTKvUPqs~VRPW!{`a%0T}OK=t^56l$wifLzaeh?yul{od3E&Z z?0637!)4$jhKD04flun+y7vM#z%f5k=V5Zk;Ucd=huPYrlFXl#sKES`k{r4Z zewAL)m68D=^JDCVXe8m&{&MX6KSJ9H7uo6xl*sI{t&pxQwm4Frgxmn^T{HGm|3ZbA z=Yo3i4`M1HjWz zM$iv{h#K2@meD!Xc73Z|oo1VDf9ZmrtvLM^E)jYw4|W@&ppw^qZ2%xYaC5zSLsOiU zJcdyu>7D4CEXMq(4i~@y9lw6BwE)|Mb)H+j?qmFaA=UMlOs`dZXHTB^`}yQbp89Yz zx&Zl&toR!y5mFo@aNNU!DQv{-6=wrn2pc-|V^S1c_8&w*0Uw#x`_SqTZRvH`M|WQ&p& zgeeHdca9s}=@PoqEXTuRPKRSGaclJc7KiJe<=MQtGOy24?DZmF`-9H zt6Gma$t^ZQFrl?e%>UU+>}XXtl55x$LEEeXU5@n3eNjK9&FeJ6)LMtKmFp47KTber z@>fulT3WC$#y0b!)1Z9&os}wap&8)1vz1Fv1$`Dez2To1&BHJ>V`A68e_Sg76V9-6 zwauSbz-1}o>=1nBxyeXqEpbd!`gfW_5yUW{~JDqZfaUUU3cSQ|;^probs;!OEJ)fN0a zg!%&v_~G)`4GUS?%Co)jeCdeU9!=jYE_fXJ>gial{P&vsgN+J#x4 zg12%7?!3KonxY$W1$QiD($haFJFR0`}>R*M<^bNPGR-^K-UKx2Oc}~BWV0)KC@j>6UhSvOGGYV6!d7%Or`my)U z?ynwiSvte^PAA*s(t+o)p^B+moAY0{ubi;+T(L5OC>CUZ%W3(~v&tNdEBqg}Duj+$@{+5v{n+608gmn@w!?HA1-gHV=3J@LI?&z)v6pbBn%hUD{a#X1 zm4YxHCs#e1a8JE85U)*x2d<1X%f8(k=7+!`n{Xxw$kK6PZ~81b@_jm%qn|rJisS|Uej1Nj&5ksTw{z#K%sVpt3_!8}g~UjnQ{q#- zX>ZQQdFp{wA{vTEXGOz%>*~6RQl9~Q?6E$5C8XSx8T*-PmM7!0AxUHdJ$tsE5~OMz zl|B%A@pXXezJCkxv`84!V{XXxwNle`cTpKCZGmw zjtwm!G@-2$WaMsiB}I?eMjwBjX1KKta^V$ed}Y3FX=H*<&LgeB*6lmvTrNe;F3utH z^FY*au$t3%A=5|2^IXKLT(bhe-H^SG_YZ-y64iU=(#+2TI-$I&TWh4UX($* z;N!wX#S$nXc75-k%F#0ap|2BqUJCdW;fcAWaU-*wQhi8w%EMX1R(*|EOdTn~YLnPU zuJ*sSoE?gfvP#{59jUh~df@>U5fz1+MX}WcXyu^g$+8Bw6!Ya7hoBOgMSBf`tA!nB znH$HBg2yK{6L`ZGlN>Ax>9hPTwNg(AinoLXdTOFc*<#}1S@EoPzuN>-!?<8P{azmn z-wV4igA+%&k~Tok_Wky!RrU9L2MbcVPlQZbeF(xzvr;4uyy{lR%yvX5Wb?ivp#!30 zD(68{Q&iY=gBRi;YdUhHlY3V@{gkB=zANBR61y-`HV$zv;o1UPH_8WlG7fZAqPDCi zfn$@Jfs{B8^c^8_A3ayHUspCh__oZj(+2v9jNed90L1R&$G-b-?3khf?Upu|(yjCS z6TOwRK5uc~it(_ap~8$8Klm3i>aUVpM(SKkc6>Lqv%EQ3MI=6W{Z<;O64lE9Prf8o zB(z3kXh<_}FD;I2h+VgSDh&O4#Wen0)jCa6lr`tA?eh$=VPP&YSCt zJ0L)Cv132*tho)q$^SEg|M?m4kvjAFNK=6)P#E7sBk=|pc^$qOguA4=H>)L$GuaBl zAzs=&1@NW326kXg*U!BBkYkXP7KGcXEEF6IM1!5gANoG4bDICGU|0c{FNY20(#MYa zPDqW0kP!=yH*Vb7?>>JE4tXidwv$MZp`k_{QX3PzJ*{dV9$#}+QWQhL*tjL)04Wmu z;~d7i?B?j@;6SyZ>=)*PKG;f(bkSHNOsO(7*~;E_yRU_4X7tqfMz$}7VVNPBi({T9 zBsCo_>hfqGO;!EAQ+SL|CXGLB2#Bl>xSzFb$m88K%DR=f4M(;F6xx4IB!WmV4Q zf)d{B4R*`*Qp`c%H@}M(VZ%SmhDA;Zms+Di3e+>Xz0+#gWL_wnRwIg^&U+R9if33P zTIgGv7bEH0GCCMDxIUrpp88Ie<9UVRT-MMFdO?NzI7K&?3&+-vHvnLFW6+0;ZE&w~ z6gG5Yw;K|(x&zOw& z9b&q5fb1bP5{XO|d@V{iSz|p?zPdMGiw9H?9g2$?i&EflR?wE=4e_Sfzh|2QZSIup z4h&~R1 zorA`TIMjO$27lUmQR*rKdwI7^eiK=$q=y86$xwjR1zb@B8rb)X>iJsO^(P`bpM7&` zb(?%)j=M?3BO^t+Ad8;t^UG{rK=gv~4n98D_g*-DPk!n`mPrCq}H-Js8d?(}(h9^4?N}IxY^E_k#J2v#cY& z2H5iKXhU3fS>P;{q?u7>la1f8x*odi9`Cjq6`*4*{;FQV{U=hCFM$1;^3L5)O8nmX z^@%u?t-$@ko_9Zr!+3;BP;1c{%I5;l+J*9!R&F8Y7RC(@fc`vR)3(RJ4YD=KNAJjj zw=QVb&P4`(lWWN0f9#41{}`3R_37?goR=~+#-k+0jnP!IHvuFDj}r8)_Hs(;(`N~D zJlik`-NIunI7%8HcX&nk{l42wVOh0iAajvfubDx4PG--dsx#Z>KBT($$A^gZorwd_6yiLS$Et@d zCeyXynrEggj=^&OG<8zEXh$X(!W@tVtyJ`q(z zI2hSH!Zm?U=D4HH>)$y;>Y$=BwAU_^Zyq8zv{w9QFl(%O(8SO4?*h9ZS_;G-=x_Mn^_;*oeO`LDKoH z>wU97x88FF>Mys*Ea<}sXDi_Vov+c(Mbaz1buhyjzRB6J-g=^z>K%~NN*mSf^xyq< z420M<m+FX4B)5 zGDdF*QSC+tiB7L zx$(v8N8d@$<)Z%mKQ%2x4$a9Gz+jmrIg3xJr0)W_3w0Mdg1sp2iHIL0g+J+aavJk< z2ZJAU{|W5p6ft~KpIMO~?he3*P3AqS%51J-89Pb$rIzuTvfK_73qQdQ>Y_#h@j{d7BHrruxJz^NlTe@N!OGCJdqbPJ$vUTlWw4p8%lP00Il5zQC^B12^ zcf@(o;hwASq8D~OZZ!-@80^Q(f^(}pIS(h0gqWZ;c+>Vrmi<3n@M+&SViXdA7x|I( z0i{&lGn~SmN7$Q&v7w>~<<0)x)Q-AABzQ3MN_? zDug;$(?;%vgW326Cykf21Ts_RH^g6l=>47lQngb1P=>#={aQstwtyhkSc{X1k3Rp|th}w*(Q>ivhq7go0;i;v)l6ojhk3aJp4=jcn*@lzB;EBZK&vu9B zs5Edq>6Ahz!uC_Di(+vkm|)U&T`{jjLW_^uLPR~M`hsek$jPWV_#UTGGbKQ+_~Poi z5E~ir3(A$B-bEP=*5gC!J=LnJe9%j5o?)KKL$0`B&kzI8TKa=EfbzvA^Ny%BN+j?! zU>IC~x3v2H?vHJafoKXmh+NP!Jx`k#?zSY%B}r4I0l9T|--(&|>=QCFNUjt|)eFwI zBb$82E5{c`;EYTUEOd;1R=p9Sx~H^aOK z^GeH+5bV;p{*Lx_8HlCvUAqlrnHvLE!vmB`N9fMgX7LT7cnT_@+0if4vXrWbR=ehW zNX|Bz(V4UKjzQI`b`{@sfu^XO&j9ID!v`QZTHjITC6Kh%FxF~|6Ol$5Ax(Inn6bYT zn!21R8}DwIsO}XZlf4`J?9;%9bWCB)Z)UKz9rwz1zksC!%UF3%SxHLMSpB%6?CJ!QdS&dr5?;%NF$TEd291@ho##uxqt#p^RxWN@I>bnkQpbeTnC?Ha%Qx?G^n6TIDL;4Lo)HSOi6+t{_Wiy?{ zP7YOd3*UVXFjK+}t1BLt&$#rj*P|2VWRhQvUU=&U6txXv0dyhwEFy( z{JQ|#NtuIxX+%-mZYw%@(49@TW`}zwGoYDjNBpWxn<;&r7o%UV)QiLZ%Fmuu>1D@J zl)uA!G1$YWW~8;A`n_;xMB4cVD3sFTF=s@vzp3cnuefnH*Bgt}dF{jK82a34F?8H= zK+`1^&HRVz4j1~9DhUB@g)&9L==b(({+^e)7-n0>nUC+T6B9Y~{lPKoiiyUjzXl^- z;YbKpO1fS(=9ssw=&MBub*5FS6!#B9S}{10@y#Zao!yqht5n_}Tq>3=?H zUng{;p&NKF{=;o_U>GJ;dH~d`gOD8q?pOU;W<+qCKRxEl+_~$GjFXfxW|jBJ<7#_x zwtkptpNP)}((}{9 zD(7yX+`yf($8FmatigCknZKv^a|nMxC;Ic*vnVZC&~8!qzgbjHynltZ{(O~W@TvXo zf@Gu(rEp=ES;QkJSBVg+4j&9MQi5|*O(2US%8T|Z>x*CU#l zzaBL6W)@HmFRh?ak9&`f z)2b+J3rDYJcDqe{m~@N>N9L%~Jqm)4j+g}~#$~~| zL()aHb#zBqo_w!#0LCSXQ+!VO7v)IC^XLg^x(RW8AtRzHSK$@tZ#(o*%`j9jvx$K} zj!s9F4nEh1{xRIWFp>=S7WP<>w2KIGG4le+})nN6c9q z!)tKR|8NJsi|eJs-cZinZ~`AFTZC`^I_nUc%N7+sVc|5F$1YUtqe*9Exx#Tmt}fxV#Ri-hIo+4_d3u7CD&*-;@tGJK&t_398Tk<;`_$@=ZYSu zcdA>`xDTZ7!~=ytRq-zZ;nNP0%QCECblQl`H=WeyQ4=>ZP{%f{IsN!PbB) zdSGP~MQ_r5RQcbjw5R#}o5&JdAB=7@?ifm=vlITTza&E~wfog^N@3Z(XizBQNcC#b zE{`;4!U;B8z*`$IW_Mz)M1<%BD+7fqWL5Ur@V6XeDoZm))vjTZak`Yw#lOK`3?@N@ zJ#Q6qAL0m4g64p7OYm`R&PVPr-!>#&;V^y=2_7*$?$;PV&J!5lL+{d#)m`!&7eB?C z-e9NOPnJB@E=1M`Lp6Cwr-nKxH2yE1FC+7sqSk>5TC8&Qd)d|Z_DxUJwBqPX=~&-M zh*gn~M~osbTpS;2{Z{gW4F|Z4(D$|VcDDkf6b$cz*?|hqT0=kSN;4|pQhyXyJk$w^$2Y~8p}kyktJ84M*E)T)61G7A5D}}BgA3ytc`!<53eP!P$5tR zqcqWSoj*MCR^79%CPD;337jjcbE69@tI~ApXX}6yKEOi)!pAMwYbd3f3E?_t?QOs_ zR9IC%`qDvEdd7fNtmdz;eG1y7AmuDU{I07(l6X}u?UU)50ZLfWLk3-!U;JaK)tF*K zyqe!XomIFhJ|MB69vr%&uAVNw_LynL{_L0blwT~7CA&rk z!5x_Y(Y)Zw_uyi5(@^Aa*xT5$VAM4PIqFATJ;KP3Gu$L-%j{!a@IWOpCL84B$K+hgldi3yZrk+?gTQXOS3_n{xzC z#FT>Ef^0+{{w)s`^!t&kpA5W(;QvD0@VjLb-3qp^@_$6if512`#M)5it~ZNLfZPZD z`153K99Y6FSg7wXA9>MJoeT*o>F7rd=E&Weg%jKl)C!IzVHA{>6_o8JugIspTRru; z5|1swTRL^hn+hYxUZw2Mh$f|SeT#yFCTnzAqDF zpS^hW_SiLfO*lff`?*?$X+tgr#37y=GwPDS`w`&p9`VT4J z)b>}0OC5wBg*N2oxME&x?wRG*=+ z%me(!$bb)uPXtTwx3+246_ScPjOdSm%DiXP*RL;>s#;16!xPvC?l0=W90MGKEZKNIH7Jbr^r4mKi7j3a9GhFP$ zlXdv+>AfEf*{!RtP(|MMY`)v|#Rr{pb33X%FbI+DMLBxfl&eCP>g|K0x9X} z`nU&Z6R1dSRy!c46|3hQZ76X}S2HR*x=<;_!o%ZnhM;RdI8N;DGpOBR+ISGNH|Ezb zl8%Fz z+dN_@pCyN7Y0R~GccOzlW8$0bU|?qp>MN&eD%5pa(t%6Zlp4Kq7Fb_lqhBzptg3Kr zEoucDt`@UB9ygn}}&mL^4-F!!`*{K7LXRX)z!mI3XvOxO~XlL`FwV(ES zO8`y|N@yJkeo9iJ^Ako{^D8UD$vz7NSO79(dnjbl!;YbV(Ny?b(f;t{^ZL=9^PPpB z(vHR1UKc7)kG!`#!dm2pGjwC*X>SGnHtRim@Q+0RZSMboT|ChEHaoFTZH_Sel6dv zf3_94$<6UPB>8jb)Rnl;F6-wJ2?MLwgXK!EdK*}V@LgxU3*rV;4YLAD8yW2#RqWRb zh(^4$_S0(o)YR%HDOz^2vKNN=>ovn`adKJ+V&Fp z<6uhtFvsA5w^DE=>d%xlS<=&j!G%HewygPu(G~K;dA#cT3pvDg{pYewcM8xPN{#w; zZ1?k%dTrD*k{gRJw7;nMEI(VbJ&JzxT*L-v_S{r3u|4NwAJp)B=ZsUQ;H>Mjc@~Yt zpnNJW(VuCPg?-lb!{gtld*N9>p?u|6t|t%&o?w*l&GxdL5*oLu&}Zk!`9NuTOSID_ zSh9KDJ3v}6qRcXT#?(P)=iH%3JB}}s$neiD`JzGDx@Yn)o%$=^>^9kdFFb z!Fn~i?I$;B#6!A4eZwU!^wI1yNo^HO&hqh$m-^wPM_^_>9l4OF;0FrsM4UH$iGn3^ z*|63ihvMA}BPISKpUF*4eX5o&FX+fSskCr=iCd3dt@vVtwka@jNtwO6Es?Ac#|c4ePB$3+U)~h?S z-VOMfeF1dxL(S{mZ~A(MVg8`H2tIh7(k6G!PQqt=sh9D<-`X+I<@*6i7tipfT;A9F zuZ34@oJ<4sixeLiaUWzzq?A)r2{feehUHQVR`PqK9(XD4nR-KJAffkPnJi%p#5GsL z9fA#Q17Z^$^GK-&g1&VF2<1Q;he^--Ihfwqmvl_-4gsu<=o`VF*9u^L-~N{x?Zyxex%qTHc`+HHQ~Lqare{f{9Ad{0f1!44)G)>=N(1h< zM49!Y#Fm{NX+v3$v1Gp8=a7Lvh)@UVYoUYumQDTR$>`f* z=WaQ*&oAFmE;~W*%H_+K)NuF5j7e~Ysn^qdewn2zpQO?Egj8y*!i&1(kN2TNhaB;q zV{FV$La~g4@y>a=i&~3HX-B8eUVOvY5jAUybI{Q>(A7RL1oV)n9FnSDgekT1oG^~0 z4)P$feyER3tUBrNiKaI%XN;Qll{>yU>qsXm?eMR-e=vT3fKc~w{~tzDmJd$FYi)zl z)`;phy1sht1esj=j2`I@n4~x*TILmuBgZA!t0ipq-tsVx zs?Q9V^*3u5E6Y+O!Or-BY%5NOG@NzHU=j*wW!*2M2U-CY6&(9dC^zdFC!4Z4zmP-* z)bvY2Q|)tH{ZS8AE%!QKO$U5Zq&$A-Nkwm~3OI56|JuI(&-U#ljdHQV-~r8aD*`3c zID&Y0!o1G!%}gi={%Vp)l`s$H@orTie=f_o9-COG=laYyV*#GN|4n2>=x8Y+Zm)8k zkn)54oQwiBIoe8>ng}un>A~`}e1wwN#kuz(BQMyNo`<%7RMw{x3Y_Quf_eaIyDWzt zkMI0bU`$&WO1#VTiX$T0T_9=~t;m?CJ=6g^N%AhxSY#kq+_Q>_FpE}9@F*XeFud11 zJNWqE@6?7iLN6uY!~50Orj1K)J8F!oU7GXr6Pf`s)#6n;KSfmCi1+Ksk)XA=XIJPQ z+Ii=ww4-+WtZg|{EX@?HyD^4*w2V=`?E?@^^;LTSk|ofSveysmxAZ|aypzl$dItdH zE$#)|?hp7ZWz$`>L`Oe#zG<|LSvnA3@o3PR?68@Jixls`HJrClXr9bEw_oR364QOO z_JkX(C&d2`TVEX&)%N#|pooehCEXp;-AZ?NNe*2@rwWn-NJxitgLH#R=SVk5Gc$z5 zfDGY#xc5Hy_r&{$3zo{7VfHy^@9!t|I`;X$)`gW_rB|%V&<5Em)}*`GY*!f*jwfkK zZm)^CNyeb!?sn3N1&9BBig_>eSOG|%NP1^CGZ<*%1#`gG6O(!UrjCS>7Cnvf2S*aF zinELy_cTtM40+ssMCMcumWu?y%Cg`1X0{~a1`QMmzan5j=~tOoDN_*HSBWC;!8lhiVkw!g zrkkYi?uJj!%<`z(=UP+wJIj*_`q9#Su6c|4{iLvqq z^LP8*o-AWMYhpm%y=W+wR&#e`wHA|+^xd(@5~w=Ob8K_rYS9z^_UVGHu8Ye@W7+CQD1vci<+2)65B59xUUAJDU{YCB?AuGz9{l$Gr^1wMT^Y|VhT<%VTKuWj zw4YKnJ|XPu@JE(hcowTnlhcWR>$8`{l?~8nS*VfWMA+G&vMl+53Rvc#M+57QYRl=I z&SBI&U`3MC$$FFE(%e5M&-xDap;SP2FPih*tozdSTJts#&Y5W=KPN_PGDqSPj2>$`mI2Ut$mK-S4~; z8D6K7?e#1YDq9dR%=__ldYy3rnAejFr?vR-M7;OBpEvvtc!=Kuu|IRwrte4QUJk4U z`tasRn5dhqJu!(T)1?0ap}lW$(m7qxT~7k69M+wWI-2!s+D%t?I}&#~^vkx&{Vl+6 zom)}=`&Dqi7k2H$)t|0&L*J!tXN6_x18QRB!pC1~?aT;Wg?v~zTpJNP4|7I4%mn?* z{qaRlxGD|n(7FRR-q3zR!*CnbcwioM;g9z9&asUj%QeyeH2xs;IXZ@fJhMzWCy8Z2 z`LtnF)sgdDg~9;7S9Rd_s;LkkiFHZ==_gM^yaY00W!M*JEApxRxCmJOh>B%kJP2P= zp0o(PQK!+|X&yCbYdykKJcKek9uno6h@2y(d0S>{SJ|`u@?6bvQhT@BRSot-l9#7%v1hI3j# zxfLqpE|DX|mHsiHj-*NZTJdHsThaNd%=sYE%3@LSv_D^^Egx{4HH%Uw9{`VmlSAT2?cqjW zZs!G(^_sYuw9VBfO3eu5!QX zup#pn|J213J<|nzviL}}yys~S-qlFrnC!9wp~vZHKd>wZUTzAH{G|8YMiI7b88R`R z4=eN{>NvC|wFkxkGY61nWSQay&A8}^*@*C=sTupici(;MGdgU|zYZ08XQ4h+UukV6C^v@Iq z`A(1wY_1UHrhL5WH18t18pw=tL^7Ke*T=LSAskc5pG@7R?>cEs3(LTJRdK}ZO{Fs} zB6ANde79L(jp_qUt}S~S=5&+9P^WDKZ`7jdn%5Y>h*UYYwbN?dKqyZiFw=%1`|5da=>N)ig?Dl37@3?rEg_61_% zTZB4iKX606ZTVvg#pEG0+4Z?UkXH)m$OD$L>gj%9_!0^Ia;+B->cBwtr+&w^Lg zp4tn$!-6KTWv?n-;34BAz!N8I5pk=(?Bqp&g&xmI zK26!pUQY6e^G)}PCN{lO`ZNwMwrDXuT9m_ zQ`qn0QtJSkoxknpA9vemdabZu(La}=>8f)lQWJN{VN5j^mmLb&6oR%;Yro+G9t!O+ z8nolgg1g(P+0}2+-#kYY;76Q$6z+5uuV-TDQhH4}wrBsu#u74y%09pMZcs283oRG5 z-cyR|aGoEnH-t4Vta4FR`d8KN2X=?#C;W)jS%|I%7(+X<_+<#S;UL1(DqZn5FC#b6 zRK78!)J6uq%#OS5Uf)HF`!aBA0=#I>QnCN@_2ZkQU*hQ=d8ZUseJI%(VZuz!3C3n4 zbEXXpX=2$&5#nCtlW}}76oA!vGNFwa@8{Wi&CH1trXuHN4uQh*`c#hIjrH^(VFfC| z);N;}xNk}6Jrqz)7-9p{O*hUFbD9Ci_nlUf$UV=mulCXk_S|&)*p+&Ed#20D-I&hX zv+&g|`*8F#BC+cTG04Y&x+NL;^wK8*oY?k)zhIyLSMdQlhFO@h$1q>9wMPCg9F7V{;SJ3;aeWH5T4t=m9VfRo8&T(z2RLp49b)RH4Y zbH~Det}E)?Z;(D!@jzvlK6e0@*DHGh`qE?UOo(^*2s~@1{pU0_pb}+~)06FJBMzt- zx#p&JON;B%3!1n88`uVzCBu>cwhSDPZaP_BidorE2}3l;QTFo-x_-0fy$`|;CFDf@ zTG_1pWE%zqE^TCFHormGF6BWs5=$7K5PyhDwSF&XkaT+!+E6O+REWEbi6=(E)fT{iT<0(bwOT(ab9$S&( z6P0jrBCA|hN7}|Dg<@SUS&m;u6WTh~0i>_252zkVi;dTb!-*l3)fa{4D)!RW0V*C9 zI?2v(FJQ`QrC+ak3&b9 zug#RPc)K|G#f=}qf+camIme^mp!2j;)i@$qEzx`1&`=JMGVQJXBFiN<-D^Du>Zs}p z;KN&6XlF40ELS*Gre6gHZ0cfGk&7EzOdqo;74_R`{auaJanuB+Zj!vhiBe9pJLDyq zjK|{*Q4Ayca}vh9^;!nyY2<5lp?|y{~jIhzR539@o``xLt(s0VuoiX z5SoWf@dn)>$-Eo0l^i6XzRIbMu{dK~-=C6s8;%_4;@Eh3t!5&e4f$Fnkv$Q-*>)xq zS3|m#=_skbbGiCjGs9dSOp7=g#Tw|I0!B(S?GK1Z8DX8L^uR1pbx^WTF3bG8m|D(+ zMa4_u>_rx5>@)EcC4TB{yul+XuN6Bv&5gx&s+CN(_D7xOPG#9=$A`A$CMd(Em)nr7 zy-^K%iVsn=;cNL5FHo-%m&5-02r52`2_3p7hK347FzWd85uRUcGxK zaL|Jzp6=2$=}*Ix^m%V7h;)UHl@K}OQ5j~9!f>t-a(&f8ct z&k24>BzOqE$I84Qf6WVN6G(yiJj{FR_QiM48Sga#xX?l&_LW&d8Bm z6|NvBcuc-kimsWVRW5)#576MzCYUj+b${xZyYS7gatH{NW@V=67uiv56vvN6yEvH7 zy6fVfd* z0@n!_UuA-=P4OwO>0oC+zkgUckruRlLC>V1WmG_=-+3yFyHO^0U{Z6^YfT?9b&=K4 z1)dm+lGE^2|7DQnpe-JfR(c7uW26Lw3t=FX8UU_P%72B)RmBE4e&gqv33=8`G^0p3 zSD!lkR=NRjL^_MB9b`V(&eWQGwynsDNDk84nWn#@S6)Nba?}xJjMo~=4@?q?V7ZE} zmGNWIEW&iWGV%sh9=r%ccNl$T%sT_EZ=?MbJ>ikfPdi3FUvu?Aati%!wYV{mpsxi& zTc*7gY2_69sBw8Rcp*vaDOZz=_KH=rHa< z<%6xQA8)rZw;ZU5yac$A9}sD+$-53Fvx>#u@IXqrjCyiq(SDrr;#)5lG*J;}*=pIp8%Uf^Fb9`7?e;kC&CydbjJ-Sywn^WjCYZPgPW z-Y!gpi*1=D6-_nS4qmRQ4oew}w6{hox)_TH5H37y3X*&h1RZK0D_X89uwn@sB*P!y z;ERM`_JrBrrsaQA73|;BUZIl1J6lXBwsT;*f$V!Ut1=0XNYb_Dbn2Lp+l#G6^%ovx zzP=Jv?+V2q8$W6-lin1u$xZ%Nq;8_s*S1O)<=IR8t`H-pqB1+udr`P`>mHAUs~5Sm z(^ce4WJ%m1y7mN2zoHE5!**{@9LNLgc+uYcdC%W+a~;C0J6^{bBycPW z;F~gu6-OPUnHT+F=dlg`-w~;wG97!Dx0?`@-}lCaJa-3&PLJV#YQ6u}{^6jWOx*+; z3*+3ZSHr&f=mEb5yf(!miRRL+74ClDV*XamxgJtUV|0OGFYU5MHz_2hxy!yFiRwB1 zeX*gw^N`iMAl2@|pv!3}AUZGpRZgDbk({wewu}s^EJx#!gM_PSaM~n@{s^>qWN(6P z)%+mB!V8~bvv%GK#~Qm5)@A~3?2Fk-gemz?ClSNb&QUu$Jm8M)ZR#r5 z5porsEIc23&q{mYkvb^sAr3X>J&l}G3CJy^Q*2AES~K1u&+N)&7*>-(V>jpuZquK` z2ZH{JR1E{lZ+$);7#WL$83?T;ssA^Ah7MR;)4zRLMs4a(fsJ$}fM+ThAHW4(y#r^7 zgf`ZYRr+Jm-HWdevyh7%r#o6Vx;D^h#z3;##gFZM0x_5SvfD6o7m>0mjqRq}6PsWg z`%Y(BAtLYG}gnx zQoV5uW7rtQ{@t*reyR3lq+E%xxI}vm&k~Z)Q!YtjuOrW`EB!m1vGlIwy1ZVNH8RF# zg^B=<$tvMJaCnq$8qX?sN^*~Fi=s>>{QKZzv{TFzRT`~lsR|1Hk$exdMW5;>#qq6l z7)s)&K@hXkYT-zbKm!dOq64jMT+Q6dKruA%cq$tES5_b z6%z3mE(vOq`A5Qjrn??$iMtQ80mln99v0oi!o}kI-an>9 zxTPb1Oq;B&UIBHr&(BY|UiX#~4pOj9kaKoT=@_6?qo`f}U~C#3fsQ)@^``ZdPlrx@%oACFtoy>~Hq zlrO~dRpU;6>v!B(CTJWmCEpaWkY&>yKrSj?xNTb%U|R6Gl*?M4F41O}2B9C)thv4{ z)Q=+GD)Ls6EvzjRF0<>$yv(d7lh}2q8aRqC8F?>E8dX)+mAd=65NSAcCIAl_@|35Y zh{&ON5Gir)5b#?2k2N+s29REcPMs4fQ1VFlp$#7vMW)5PXSU*DJ{MXEN6xN>c}aEe zO`P0fCI9TcOc4q4F`t{j@6W_^lLnsOi4$xw3kq9lFGx+bNFK2{-g?g-oE&6Tu+*B+ zO{PgG*C-$J8(wumTPJW|uYpfc9FF3D(U8@$m5qn#{pmD zJ!0I2y9&uM5fJ?&)+}>2@jEc(JamZ&sPmlMWS_eHirg>KI;GGO<({3T3tD5}h#33f z-Zdy%aW6ZPsZJeICw#7`*S#0unlNZvY$w3TR4e1iOKy+|vYfqq&C>l*nn?MU8ESld z)YQ$E4AugW=q;b7&czqPP8>pA=TH8M$w^}n^Ek=;6~lXrb{DewYjDVw)pUF{Civws z)xW18ch5wn1HMq4SK7Fg*fPg19JUVa^ zngCMJdkg@Cp(0*by4WR6i3cfrm}V1LlnRPr{TSgNwfHdad6Wc%Lf?~4dvd;}i78U% zc3G44m-wu})>9z8`irGz^**EA&fKzRT;?_hU_T#ae(pd4@5W17Z54UYF!Dv{UF&LY zm(NbD5hF(7m=GwM^yfwc*A#F7njtP9XA=GsKxJPL=r{GDY|O?>Z#>&<|H>~&-^=Y8 zNjd7nT)swcoImg&H3>12N*7>dkXQ97gjvauS~-+Z$``^mR?P~flx5l6Te?ft7~x>C zfU;>5+R0yP*3!TdvgURyZ&#P6W|hp|`Uvsb9DG0tdEpPma);Ne8GYq>Y0M} z9(OwsLb%!8BEv!D#^SDJ+lbO!5OC$}e0iClTn1_VdA6v&^ECxf@Va|`3D~j}YuiWq zdM+Sp1GY9Mx5bW|E*NkBGeE?td1el)gm2I0&SgLzmTT&!&YWdk198Pmb2Aw2_oT7j z`LpS&_HDKVu6PtJpGhOlKHA)OQ;qmMax>8FEw{W1X|{?*!pb=K*xpr$bsSj#xEwuq z60abd;r?Nxn409um7s}+=LP(Zx$G+nL$6U2>Xahf1?FZsfHWr*qSIN z@WBUH-~%3!01P!*Z0WSs2F=U%PGJhgZV9MGQ-=}{$9|Pf`25eh-SX3#r65U8r6`23 zqIrzTIdMFV`z@D6^tGijm4J?_$mIPXUh8_b^*Eem|Y9kqsRT3pPFH@|{Z zHvVc^&!`V{81uK5Un1$>CZ!fPcg8JJ8GD&1fl%1ma}oddPP+SsJg<;;a`Y$JhqmM4 zv&!atvEM#^yuSaNAzZ~uaV=06kOug|zqvfCnZfHg@^G%B&adZh%t^WG@-Y^+{t~+b zL?4J$3lgqWwJi7J_)9s;}8IeD>ivx&;6l;eJ^BQ&AGiMmfZ@ugY-BYB1Nd$S1yo^8oBz_nx@3kv`@`uNgt!>;`pxEi`}hphGdhD zue7ct%^!o6j<|F5sn&uy&1a?*`YLG@$mmb{0yAbgY8m-hFN6aW1LK8P@a2_W8FSLo zEZ)$esqpnI6R2xRw9Z{`9EWBHjd;}ihXXAOR2AyPYNknEwg5nkF7;e?9#Fr+Jp_R_ z9pr1)r#`w}CS{C)&7&Wbv$x5GS1KrNmED683;4X%p~k zJMu!uA7lOdG`7+5X|-oKUHHHh&CHqtI?}H;zlYYcv-1)dCo?R<{GXHEKG=8& zC5$iFa0fVK_&Jh7m`^z1MFQhx01!P}fb}ZvhVhpSozt3Y;uXNg{Tdm-*{HaX$Z6C6 zdR=_vOQ&)c0Tm{#^3>#T6;$3zb02@sM+f|vYRp(I?qj|l>X}&uG$4YOsLLP90pwLw ziUbpD(pUD=q)w|r(zScDI_xM{&#$#B+wxNAuf7YYVb{8se<#U!Szti$2oho26IJD^ z>Tk~1m{eY1k<2&A{Uv$5^ZQtt4RGBZb?xa~BjTx)k?I@4@p*d3i(rlTIJzYkiU#ZM z!Ce+8jhxq;N43^mnkcKHN+@L{*TnAf#%8r277~ zJy-8V5{T0-c76GJGz(|5u{T`J2AaFZ}m3z4vW1UfAM_=o?aAyHTa4n08j9PMNpx&3}w_IvD# zOCSdOClHtHewRcC2$<7KA3DoN{TDC!QjXy!4_vdKRPLUaC;M*5@(UiBQr%YYP&(c3 zTh8-B$lI)Yrw>^HZ{{x}oNu8T0CLWN+GMDRAGi=WV7V4(2u$k6l}Yl>cp?g>2`7S20-#A%qZq=IG}K{$R-2FBYr{cflb0}a*8k(Ol} zEw?aOK-TCT`!@N*YJdKz-pml0z~T3_z9dFGsc8>VmW>}KNP`_en#i|OXo615HsT{K zlh_Y3o~Jz~{h6^@E`|d;L5#nU07dchVp$E)OHVL6gyrL;7;`;wwjQUyfVYPQ^b zDm8owogF}RnF&1v3N}~(M))f|t=^1&LV0RIFtuM$7bFkzA z`VF*PUt>^UgsBQ1uGCWfIeKWkfqDYb=7ms%NL*$*x?lf7qYU!L4mplBe_tPX!;-zI z=!K<8H;Hx6%fVMHyML%zM&zC)T}oL<@Wo;Pbr_lz_7lt-8If>nnT$dRK-(Ryd2qy$ zR5o2*=DI9Ji&FYAP7JiU3{r6Z_>6`IuThkFrGtfcqIw&@a`qhUr`N7`B~-Sb8BdD( zemU1g=F^2H9e?%#_bCeL|00HF2hk>RF(P-r-X4da-fg~*KpD{kK!zYmMOSOCD%giZ zwlG0KJY?iFWpggKp09BZAc#F1zPL0ICe>@!oR&Ok#AT_;hh$Wy&Qx4D-7?7`wnl8nqt@>j7;L zLopH0AK}X9+(S$7oYkPvb^=l16RuGv6ywTaHSh#H0AXVghDXV@ndk@oyLIPm(eWQH z``5MkHDR3aH5S^>uh&!V7hnl7z-9U`A`B*38RW?X9*Kee(`Qdn(#ALUzQq2`%z37; z5hnCsjynliMH0y4>bv;=RP4CwW8=*ZG5DVFt`U`JaVzxzV=)NGd=4Sca(a=dcrv=q zay>#3FKjyUCXRNRo0SJhT2_cWU+M%L&QOEz_Vk|?hwO9&$f&%SSWE>0DZ+EKWYQA3 z=N4-Q_?+UW_sK8?1&}oU=k7kS{y699|jA<7}D-U)$~Q--VAUj8+s4 zV86(S&wKtHS7W;`yHw>F8zdb{(A5+N_c-$~<*GtMUsf0+5$@KSE6)$DIRcWNw8u0Y^=^T6bDD&Gv#Rr?jlkSDplgn=)B; zm1?5w=|U|`W2zGJx&X1cT~c`;1i9(hrZW z?~-s2F11b%tUlACEq}2{J?-=l*{-6vkrKQ{^xH+T&@QUTDI$o9^WebAJVo%KnElC4 zL~jv8=VTH>a9@cy(RuF_t}PkZG9T!qt7+@XU8Ed+aqj8I+sTo3zT)DhcxqEX6vx+A z@0V_msPoPo_L?B<{-jhh+PRWQL|8{6TjmER*{K>J#$;VK+;QAVH=KnoQfsYl! z(AYvE`{DL{@i)Qo=h5(~s|O_*kAeRFq2j`adoM^6b5H+RS%g zksnm_yG7oUREuqLg)GsxZ`$-pcu8OB3|}%~(FF!fxv21=Blw#lPA2D5Ji zA>P*0#U9l8^S&0x!XKw%eN`$NPTwska<4IeX>Y5n9cs){tmJQh?YYDYoMt{iylke_ z>9v?yBqLta@3bmDWR1hM*O|T~k{J@2Zgo^~wRX#3n;bZK2?LCOSKafW%&bQW1@I(g z$q`4-&?K16ekGqNz~rngG?0yPz3u~p^Y2*}EHnq--tW3OWy(6zy<&4c*n5aFa`Cv2 z<}{HOCw7|r(m{`NB=d=Y>eMwC%tNp&JDPgeTH`CV+3|*_DnK`}@=#m>uL^F4u-E-O z1!M|$cJ2VR#;CB_oXwnYW&A_5Fb0%Tv7<+7^C|dw^y@qhc?-zu1{LtjTIDpxVQGp?JWTy5_;T zk)_xB`B2NOhPDKWKQ}1G5i}LkkPOcnmBAg@t?UdZNRL0^36cbV;|mc20X+}CmtGC( zh}VE((JOR8vC)78_4`G(ZL!x{m_4W41fjMA6B3&@35)vE;i&hjUwQAP!OZpzz6(qd zdCa_|zj9V1wJ&uTT|MBi(xedYAgO%A)y&_{;6R1A7rJv|w(?|u$op?&WSo=)GEsf3 z0jn1q3~Ptx{FnBy_`yxzh*`I|$^A};q*to^DKMO$r{9ND8IV8PUHDH|Se}e>dtq1YD6w=Qi$Pz#sKEkUZ#SRv!=QD8Vv4=s{jzPro^kSt z0AN6!Q>7r$Q$W5m#errnjxI)0nME0kox|kjS28fSepf+%WA`7U^|(s#$F^l+BwP z?b_vCmms0dm9pG?*1&aRM&wUXlz)+s8BJI!>PAF3&~&ID6jzqQ`yi=~G%nJw%~I)r zzHOBzAc9g8u-JyzYsDRxbF|CJO%F&%ZiL8t+Ik2WD(fVa>Y%bFwS6)WYNAG&XS8ub z1zGJpvro8!*g^4A%PLZT5n1xY@z>jbGJz$q)YD%7l>Xvfnnj1<*(~>nZGSlboi{FX@f!6w21nOAEw&GrwbluIx`Y81eJQuU(SE z&tFBrfeaXcfEYvJM(v!oE3>-pFgL-B2G)MJu_NG&Wwu35z3`$Dq7ezORPo$={8kCj zDHt`qz%E{6F2V>vv^qJ|Fp68h5_A0o^U>XdT9Xq{B;^kPX2NJ2b_od}OcFbe4~X9b zY+1Mpk=~MXfjF^T=%CtL{-^yqvv=!KKCl!nwSrds&$?)d>S80tRf@^>iEO5b7Pv&* z$L`6K>OcG(EF1zK6i(NbXJ}-yE7N>DDz7+kCe;+FcKY(vU&>h9QyA6CaRykNCc3n^ zs|RF(Tcixs}H`=6%3kn#BA(bO>Tp3lE;LXx7xrErR4x<1!C0N z)C4B3I7&*;Y!D6_ChLx{Gn=w(P{h~b9H5-xn6tQv=Y{CfgM_!Pk#EY*-LHLKmz?}N z=#pEgesnQ`*HLgnV2)o7mFL@R)YH)sm9F)=id z;#jz(Ys1_B^m9VZTDJX~V9qw12Mj=V3*(xtm-3O$AdPH0CkZa~WoK0o8wV=5#07)_^B z)A3(m6SvP?2(b%T-A}NCeyIIHzB2T{H237=931g!A^n?MNW}r*7UI@9ffzpZa0s!frkHw5NhobOeIuOA@twb1s)lYbZ8k#qr~KwV z-=^jA;fI`3u$DQUqlBQy2jI12>-Vk?d8lkIW#_2A9!7ej9`*El@j0r(F4}&80el*Ha+IpTK*C~JNG!+v)V1ciH zu$cjMH)uby+xh<>sam3A0Fqi9@ka!1T--LLUauaRI`nYxwm+C>LIoj@t6aMHWYP6Kr088B(NZ60Qj+*q2(IsLqI7 z-YI$!{B74=Cxd4TmK4{a*WFX<6RtPd1yBbqPJjdH)DV{mGM8OXP$Ld1yE|doR8dU5 zdujC6K8`X9MmsEL%A&Pu5~*P2nZX?}xiuM6A0xtK`th_J4z3iof0cL1Oc4Tvu)poB zI(6t9Czz_`I76u{APDR}0EEkYiAu8Rh0Tgz+eW~0nw*n>%#&mBaKD+ti13NlC|+zF zowmupcJYYhdMxx>uyNH}x+szTt^qCs_uK%R@m+XFf+W#Q%yg@=xuz5Uo^C+uVy;j-d2DZkjm^_ey{fu!>1mh{gQQ@xIC+En|SvvAW}O<;6< zmhol$WzRry{>*KM<;qD@+zf_b0jt&VwNK~Vv^lS8mE|Eg3A~VCmo+jKlanm?u+rc5 zA@!8kr43R^ecJES2Z@^7-*e;40#wEuFHA##lmJrREEZdTQ#aMxO(nqsC$%y?KHAtF z1Jl=WJbxdS0E_Tkz?JHU(`iyyk$^$yiFL{tAIu{`b7r6bQlJFr&L;8?=0Cy`7B4)^ z2J>VkPZ?>SiO9UrsZm7M$`YEQek-W-7=)$gTKqj-P7MMH8-$0eV8OdT!N}1XTO)Ey zOyU)Htai%92veMcp1nBfyQbHj{Y2A z^4b8%1W^)h+Iu>k`#Rcy(z=kU0wq?&R5nN*ezFnC*B5&htUMrt*rm2 z#5l(OadlJ1ycfef=}Drtof8`VHHDh1H;>wV*|_FmUx0Clz zRi9^<#+;HVXLJ_b8UKX>gi=2&J@)kPDTaG2&~^&+#qY=#?Q2G#<1ZY}s|b>m$TSy$ z;3ICxA*8-DE=!E6=9bD4WI+2D5g)l)_m6kPe2w)-Bw7Qx-RkiX+3{Vk7QpzGto$sO zxQ?fN*G{z*6D60%WzhZm&q^GSF!=4RjSB(r2ET8=iAT5{54iT&IHsQI+y;|)*aU2o zE%B5CIp6(cdB-{B(Bs+N>_p=xRonO_3PyS@!Lu$ zYxr`RFow$n`K#xleC(QF4^{`^t0FjfbLqeztb+L*vp$cug6$5;Ckk#8pTVidq5(p6 z?&oxR=G9UzEzNc+T;<2bqv7G&`Ho;!?5>LTop{`G((A!E~X^hc+)%KLo@}>ARs(o~!D*4GmAG z_Z#$HZ8<&;OE`=1IgkQ^x4h3q2$LMGQy0P=UofRs!?q=Y0JFsJy)k1vgaRFbUHGe= z4pts2^PqD@00zGxNEvIA9BE{Wma(Kb6Bl@ic&}Rh$E)YYx5sbfaqf`Q_7LxznsHy* zY#pzGxVpI4va>;GSg+qvV}COgNi6gisPJ8elj|Ub^0{6!Z*&&o%7{nTq{aGsS2!SA zVIAIY>Y{LhUBQP7j;xVdZGk|7(eIxZ0-NEn?RbvIAbXXzZaW6+yIxa zV*_0g9XTeV85Z}~5N9zJ_(}wiu00)3TnnfqPgDYK|Lk1u3~IqA43AFhb~#pPJURAf zZh-tmU_XfC!t`-czLxMC9wtc)`**8Ia{-{ofGdmI!y5ND`S1SmU}SjrR0Lu!VbK9f zahyZpEdR(Zz*oSz+DegoHDu-9OS;{z(7SeF6uhDUBmU5>(Rx=bh&{#(7{R3p`ds@k z6BLBMv=Ey(_vZ;w#wY1|NDXgqP@@3jh-3%q2M65{ZrizO5Iy`P31I10;Kp)SO zwbcgEi5h6zjRO>Cd&DwNwONTZx)Zy=}Fe ztzTGiecMVkT)YOe;kyrH)QRAQp%VfTrHM9UY;%{t2eqv}P}tYqJ=11FOFJd6AQm^k zb8FY7*?M6|)D#}dGXEe1BTewPri52CHQ3lzHO$iU~epSTy z%CMXB-WAB8tSw{Au<+iZCOL2}U$CzbOZBh9@&0qY9DMnuFT>Y4lo z$6R7RCbmVJ5BdG^1(w!O02O(GIcWiZZhkQ5 zh?uyhuHz-h-8!F*Fg;^LF+yZ4&G^1E-<2LNd&*V&lZO)GxcVRR?1IB?nWVb&eZ~p@ zf^0XiHqYX(?KdvWuTKR*3V8o2k}O490W|;jyedxP+O#!0jCcb)8%%b3R{)1LwWHEQ z>?p~MIZAUXY<2MP*55y4o+k9dBzQ$?wL;Jr=^+d%b;k+0$*6amje2stu++TKP3cdX z#Sk0A0WEi)^IfL&lbMTU-y$xeoNZq0MZ5ocKHKgG3EMk^hk%h);}ad;+qY;KJqID@ zmVxjHoXuKLe^uSy0k`-l2-8s4Pj@=UJ8i6@}-lij=fZ!H^s_Dr-ZJI<2@7u|4`J5TX{Pc!r*E-xM<^jG&7{~C6% z5-eJbq|?<8U{ACm8&Fl3?jMaqm&!8R_$LPuB9ke3b~E;S=1{H8LR-8Ec;?NxYF%L` zc5WM<5I$*itWByr#QK(g&Avw-+DKU+fBIcaw+wNdaFqacm9go~ghV$IY^jql;%J z>4wtJ&uL5BPGH7V--r$uS2^lcCNjM#?s}TWJBoMcigG1DX!tE)gxU3!^U~MnPz=A@ zz>B_;b*euB##c_oIm$t3y6W`fE~r-B{JZQohV4tqYSHd0z@F-1f*c0qJg8@m+*xOG zx$SE$NAA}HE25P!EZs1Laq(8~tWGDI+qsc(h0#ucX35-t*mJ4FfN-UY@4FZ|AF7!F ze`=$eA5S8TClZn03s5m5i}U>JYWw%%dz9BPQFKqQk)cOoZ{gzn7IOsZcEo z=;kdl58T}!1M^Ij03v*V{o$jV)%33oDF8h%W|36jFb`5Q5lUlqZ4#MGTLhw^!Yn+h zb;WZWN`@S(GHuUAbf-PnS({_(UrW*vare8O+9Y_N!y)>fK@${BZC-^5`x0DHh~OstSZWW6&~!lP4!zmpmYRn?_4vaN zdw|i?y?Si0QJ(?j4*8rYlnLYNH_~LNztWbx7`)ZLaO&T%OU<+AK`{v+qpine7`a}9gY!e(_Op9;D&dr&xM?irLtgaSp z;)RGgv{Vzd6(lR`WYeV=EX79tyZ7CF6NmO!VqL$-*zT<0Pea5jzUQJcz|(QAVX#>` zM&!Fe?Lgv5tw+uFTZ8y_ST`o891glR>1@M1Dve%dsj=ED{vVprad>! z0o)JAx|={Zh-RbhtO?=FCp<}DU&GO+7;ged_8e}$z*?$Pc1o!)=eF|Jw5H1(+F-W1 z+$8v*3OZH6gZ;+M7)2)kG+3!?OL2>byWU>&rbf-o7X^1&Pt_t4*`R||vs@O?2E@oy zb#{(foX65o#hFvo@s){PRxquGGoYBs+h3e3!$frT~7Cg z{7b_1CXD@C=*APfgLfHj#S8fbbe#d}BNWG4^-Yo@NgH!b>Ini`dG%>gkyf%%eA=5E zvVhHy1=N3F(L9EQD?N|y&1{79S^3$qF08T01G9XQM5ox-tPM8Jro+lNQDRm+DrIwU z@cqHKw_ESaBm9?C%8K7&)5+gcu68ldZ%^h;0c5!%d2`eQr=pqOsnNe^(e7)u9kc~9 z%4g8}m%d;Mllr_{?Lm(vo0UOpwR}SUGm&1BEvZYs86LLaqo-2ze7o4Kx}l? zfsN7*HWv0(ijv;XkCzyX@}#Tv)AlGaq>%E#!g$=WMc7@Sdf?Tr`k9F$|79{nIjLt{o2i3qnGs%R8WE3rMd#oFE%)0`&Z^TE>3toK!B6PUiCN zK@oKK1XsAIjV?xZceA*GpHL=oBMwc{Rp3+~PW`}9TXs;#CLYfK!2=L(aG^X2*`hxd z{gNKixgQ%WObN0RA=RmaG-PoDjdv+@PnAVi27_6aDC$@n58CQA#(pYj-$x!QB>Q;d zqvbQlEn1NY3WuDDs039*8+ka92)I}#1%1{9$pf$KRX{R?>=b+w3tnjgL%$78UvyH= z8dfqotMH_#9!wt%%67)x-xiUu@l>Tn6Z5kxZ*dDsWJ9RTB2G+zK5^~l@g^xBtI8fj zri1w4ltk+T=~Kr~(;)segyCXNbkp1wC9nV-{M@|Lv1IT z8z@%he(|YFidCB~<~HM!k)F=Q8Gq&4IHW#%VfW;_Zck2PP)w7U$ZI>t5&<1f4GuvJ(>nYuB{&KCTrk=6| z;R@f8rBmo6bW}MY2r0gZ@vo7P_Y@w^m;0_c($M+NDON}4jZ+=A4JD{7<+6%QWkTHv zT+iH=Q#zl2+L9QlFtzKBDD+mEwIUTX6;uW=dls;O#S-W&8OH&C+RMKq2S}eIiv>4% z!$m%qH!hBsF#?5EqdXbmqR@nXenJ(&GqJ`bD?b5KFky)qZDQIJfmY9mC&=bX-gHEk zQu0bDuh|5@p=+*kL!nq3g%u$(c*!hH_prlAWP9sPqYogC>s;MjW(A$k7l@y~ZmH~3 z>K55kU7!k$8nE%JsTYyE`cI)3L3aB80sDy-chjgQ~lyrkgch|rSph$;w z4Bb5-Ff^zj2nYy658W^{%+T=NJkPt|{r~nH-ZF>7A$s+-*13M?qCvoC9i=l59M&u( zvXuQQuwC~MMY!Te^0oW?uK^_EnLY!d{e~A1@xiegjlR>v{Hkow#cIz!tv$5Hf|c4> z<7#JiCXCPE4r6EPrGg;5j5U9V2w~V|`So@HTe(x!6g_55-1-gSu-^30PfBjzXmIVW z0NU6Ni3TYHsk@vqzmA^D9fkb<1z;F=Pr_1o9$megp2Va9c@VcA$(B9d+TmAS=$wFztj#+B+`jEd_7`F3u7{8zx>?eAf(2UDTT3LJ0qW^~UoUAb z2sP4v$c9tPsfF9ewhVK zUb3&%(w{e^oy}XGu{82d?SZqNX#Vg@F$!dgPhpnr%u`y4YfcL1HI-EZVBQTo`{e)!11>JG74?!t3Q9a zSTRGfC}O8?hXzGphmXY-1;){$3Xer~%wH z0bIxhtg}qu9p(fGBPD|khP>S20^b}TFnB*Iqq2k4fUN}N3To<~V&Sm4isG_iyf{ty z5?N~}h_tQD8Vb34ZMH&am`kLy` zWhGC#24~mcW#-Oq*Ngb1RQo(LzYH7@P;I(SQYz-X;376w3Vie`+BAm;r~RTU{m~LnV{j!Og)xG_x0ZCw1$ldg~gc zI6r5nvuX(0&N&dp!5M7iKW^G18+nF)f2{?me}Iw=@w(*Y51^`DJFYsiZE;N*^6seS zJ1ZUhuoJMu>3+@kkAY#*Tg5$nIwntKn_`rd{XmX(E$o^%symOsF$%uTZ^oqC9N}Sn zm{HYTw3P^ef_bgn04Ni;EOsC)%iBMnbdXgwv`v&|5x^(xjr;{w=Z8W`>jsk{bly(JF3<^TrijSpoXQ=O@Lv*9!LIWfy+|rFGe`Zq z8z32G;8x}bcikpf-;d}yXa*Pw_3P|An+Et@=7#_=VGWZ+P=6CGYZGA}t&rfF#Urwz zH;CZe9EsSiZbpK|u#|WhXwG8y^4D1v1er8If~KHoCL)EE1O-d2CqN$fA~d(E@1}U^fs0EQONuh!LYh* zUla=d1H8#uimYPZPfIZ?X>;VFFcap6%-_a?r5o)ac#12u-0E^nS4y&(8-op%SHvt+PN z=-=KEH~T-TecCV))yIb_0|4Jy0S|zE-QLeD$kQY_4mn6m=<&Azc;T?S-uZxgw)dRo zZpvkI(9G(c4$Y=$ z=R@~L>={v07dxk|B$FbqyGz35DJ**MgXS$B06tYo-MlS3Lc2koHimac8@7IKq$hg*%(HXU zOMEHx(JdLNZTt9->yT#nqQMAJ^V(4spuHLTaOmwh^jr$GjpmK)nKqy2YSRZI{s9MN zyy_eqVujh3D&8n-6uUgbl~}@rgw@v{wU-qWn!$<7bLv^swxEyycse&Z2wgaXGzOP| z!pqaE@P@Vqrd8suxS#Vzlh7u)KgK5KhSq=t;-BszJsnAD4>ojax(^j_{Fx>0R~>Kz z!6zUvLvM}wT%k;3B~L#~e&64(KA5{T2hP4+VX86f#EFWHT?TxReo)Mx%C+8H?KRA~ z)4KuDT&zHV5B~|^Oq0pr-TPaD`y`CIT30Lva7hE)q>vM8FGiYjh-3gSM_^4PT*4jJ zkjUn}7Z*6R{F{6^n)?6@Tjg5%{=US>{$cj1J7S`0n9SidZ})e-ODwT}<3uua3Mjeq zJr%%6%i~_0lgit$EqJJ?@` zi9H3127+$!^{1-jz+I{Y_tjc{JZt~T-@@2jWz8J#LeLJv-1DAU7&q~bA5?v&yKY&2 z-MZcs5YBwUUxovctMZzfEkMD!H|w*LAhW&7Lc31 zck@qQI|O*)6TeL#E`JJy^4xndf(GZ=i3M`}Nc1M0>=Dp?(!pYBKwtC?#C z4X3H#1#!n)^Wh9GUH1ZPzI8EA6HgC;Ia73vu5WKz4^wx$DToes@%MzEQocvbm2F*+T@%g#rA3`o(m zEaZu6j}rfXN~M?D{%gG1KQg`N!fOXb9^FFgZ+#Yuvp^5MXFXrsnhD?9Xfn{_LDZkC>|q^VOgQY;HNHtz1G65u~z#v8n(WoRU`8#{Kt;)T_Y88CWqgBO@9eCbU%fk;26X9wl!z8j z_9MH=nYZK*%k?hv+^uR7{)l_&>WR&2l+vZ5MfT1!jcjAZd#5MSK37djM6!y~adW12 z9Y9S)kE;(Wx5#L#!vJ1YGd*P454Dk6a~1y|i>)+~G{F?dqqkKIBkIg`8wo>Xz~;9v zWqpMec$?{XS0(7bR_wDQti&^{07^?+lK}vxf9~AiVXX-#)~lYpCA9jKw{y>7xI0Ed zo?H{Ek}WHIeecT6OM4T2n#eLBJJEhwn;BkjBXYUh_a|tRop59Jd;~VCN<4)bnt>C{ z->gz8^Ur43`UB=_LMC2o51QO1m6&eRRxmH>cgKhTiE3O)$cimMS)+_ACh8{Q5cL3Q z_kEmx%4T3eAx^9`w%oWCKQ`Iqd>07zQBsy(b zJNah$_8+MZI?N|!BLizd;;y?bXMjOiZ4YMgTfNf$2(NsUb!TX{h>?xNhIJ`qD0=Gg z|Iys@4l+p`Jjj5YZ|c?As4pD>#)wOvFh5GjVM6wT+VzT>%N2T}p`!)x!8~9JIAq!v zBb>k5^*-p+Z70UM_0GPvl#@Ikj@<`P(G<6)T1E97yaPa5?)1C;_=2!MQ&tAnpv1{t zfb9i{_66DIuGcdbN365M0{nJg{~N?s=sf{4vfly2`w;YnNiLE;e)rL8O_7%!8MU%$ z3%R_CT!$R#BH)^IC+HYi?box_xVuZ)=(@~#yU+SB@Y_#=TfAFiPK>;>(F4;3{s$dp zae=%Gt;@pKC(dn?LOMXS*03Mdx|1+ zp~s%hx*%@NM!4n@d3Yhk+Nbo!KV&qj2PwY*z~E+6t!nSmp~uc`wr@gh0;KNoSlQaQ z&B(M_5xvouiNq`=n~H1ywiOM#C-kD^oZWjDnND+ItKq(36LJ@q2^w~fSd~`)+dXxg zD5KPOI~FeOdhIrNx+aZxnK)m5X9_swCROt8@)75bF@&Mt|HE!OSaaY1F>(KN>}lx! zzGmnTtPIE!x4@1_*uUUG?n2YM-}BXCmpyNMtlz2%!w)ksow(Vr=a4|HiCHn1uyxu_ z3y`LnbhlwG6n#TK-F!{$?I_>rf{Bu;Im^i&V5xt4dj^&{I5nIXN6`NFDo?ToIQ3>7 z9Q}%XvHXvP;c?!JMO?|#H%l!YSI7>arg6`wM|2u+(c$Lf3myXRx(n^pA^tUZ7C(M6 zD0cLxy-$*&)EB?_5AHb3NDPrj3dFSmqV3O-`IAo&;MzjARRT9CkaI{GD)Dq7U7Wif=w?_D3 z-iP-f6O>&U1=JA5+!lH;LajP8Dyjb*BGo1w+q|rwyqp~UT0|82+o0I56qh#|1+j2b5EIc9ZIU(SElg5RdyMS_yU>g+ z&>_(^hVE*)v`Hj*8k)c+QX(eikNJHMt%mVvZ~x}jjpJor7_Z8UdXuZ)tL~e>4Y%2g zvKZ)Xd(!Iw^R(NFnbT21>h8osYKtvhWFs2o{23^Sc%*6^{75z0bmOZVfId>?i&ww` z!uGFMUUoVsm;dh>M_>Qa@g}X*C%(doPGNZHBK_z`dEB!iS)pR zi#-qcI3HY}bOeBc8P-Ue&E;Y*Z7Sr@6{D(Ea53#QX5yXD{ir+G55?Rv=zhgGX>BLDj#`n7MXE*J z|I=(i9tlWjJ|6$oD#AZ(FSXM99gY)5nT*5sGJ&Jb2Cz`-&N#QuSt^v!yqMCuEuT1m z?hQQo*JVj=a{NfGw^h#hlL=RwbL$F{>m=sXBV& z?UE5=qXO{9{z-{^d|tC%3iQ$-?8EIdr74+i>x#D&wkj_g5DarTd)WSMmF;v`HQipG zF82D;R&0NnY5#j{_V;|r01)7(eOoL`8wxluFK?B@aIlQLrYv`cs3E6j%F4=ESc8%` z{>yELM;Ch?9UX6p-IH5Ai&ZjJ7yf8?_&XQ0>Di%>1)sZ z&F}dgrRmziDT~H`qw+3CRnyBu&dl0{`_y0~o|FDT9#h9P)w!|1iXo@fn)LMD+sn|< zU4KN>wz|8Patz-Vm@%^r(#gr!*~n!l!BvqU0HQcPH`twX#dJ+Y;;uJDUli>qD59ZCDF73y9eZ|R{pEU);y~?9TDM{v2 zZyrAP47@p+V= zlaC{7wTvAe?{L!m+y1R2^a30+&WHRr?8y_U*Mx%lV8(}*rVJ$`lUmw^5lc_Hi24Po z&ln|IHfv9}i-wk_+qf-AtY=CR^9SVC*5=G+18XB@v)`%{>z81OPZ?21i( z74)jkTd3YF>To)X)`bP%q2DtTH?N?azCuF1%=3syKu=Ado6^&&jC-5WyX6x#%4}E5 z7HlR}PFdCIl(UIGkEZ##CLWqW`|80fH$=`P-rG3t?~UYxIIOluL0dTmf|__i|KkEQ z6|I(efeZ*A#6P;XL)DEpjo@-^ZOj4g86$B=)9=fV2OwF5!65iX`>0~n4->J z%g3j~sS|dcT~JEkj%z3{N$H^-Gw#54Wng-q)Gn9uf_c4_Snl@lCVG@nw)L$kd&GL~ zwW@eL4T+<#hdljkt{z^HDD|u;>g2v=hh-+0mT(99i0NJ7?%k#KQDkZ|12`K()z?{Q zN+(V`z*jH{9r$;Z`)@M&<9N02k(K{Jq^Yt$Cb^;Y{y+Co7c(a7%f-&nJ6K0+1GUNg zVq*AMLLM7mHD~*iIcgyd)^=!1ehxlb!*%V? z<=|yj{{#PgH|QfhH3cDP+|-OWkZRy+w`K3=(@uQCU4ZFss;b&JMj5WRra(_{pic58 zR%{6CUeMuJqppyC>8GAXCz*z>eg4Up5}&hY4$RrfKcr^h)3hi{(KrZHx=~j!UFfd% zNS?7|kw+7Qa*sNxuW8Ikrv;NZ_tsD53B?9o_ocAvS)c)EET^fKsZvM%?fDnvmaRMR zn{F3|UsdV0xoL`W{wJQ_>GanzD0 z^94btU5aKYd$}o7QT+O*%E@eGx0giubrt*DHWRgiP|iN}ty+cu9+ZGLf8?$=Vz2Q4 zMhiKC!))`j?9(nL7lewS*+4q~=|OCO7-ES?p0qSHzwMENxr{`afJCBa9pUeO<-FIG z4&pg@noe1LE+2Z!bQ@X#Q|M{xvEVNQHCj>yO&E+0Uv6(%xE0UODJmkm@umoy94rsSZpdGJ~$}LD}9@HmY%q2 zdScu41;qRZlymH@E}qJk8nUlIHbHybw=YB)^aN!5%Om<^*lwo2l4}c8g^KP6ZfFbg z&8^0jPQs7t?OIf>R%!~`PiXOC1AVi$u1fnHDFmx}1)pAgQt9~iewA;rIcC$*Bd$;x zwt_C-#rG(X>1TT+TL5e^sSGn$8HAr?Ys!lk>cpP@8`}fGDw?HQ)o!crS^)>7&POKu zcPmUgsGR+f$ZE^}=lG8w!x6&Kv9X5zq!bj`0Q;)?d+A^gb->JdW|WS5FGEVBfLV8( zGyWh>nzQh}yO_&DDQ3@p94JUf>Hf)(;(#2S-ns0ALB_AaE+r94oW6=`eb*>Ir!O}2 z^D=E4UtTOlJzZN~=r%rG!&uZMo^@h3uEa-X_EpVzKGFkV-y*B-gNuGIv#3LT*8xm} z?w42o^PNg2ja1fLhIlus4T4Ihhw+iFKR?~M9P6g0wex*`?@gdV{l~GI&rek@v;D67 zPiOBB`B6dKHq0ET=bbB$MwCqA@NRC77eypI_8i0Q2Sra_w)zh|X!M$xofP-2zB-$( zw_c8~SIU@9{)KK4{80R+JEd*AP)|tj4%Vq;lQ7Tote)Y~yb+h~g$t7lZ{gI#|3Ac^tz|yntUK_|_+D zf=ZNH>hBhzI5J~A!;8%1Eoh6pDA@h-pl2ywX*?Hi9_cMfB_=d|eHDdJ>tx^(ZF^5v8<#*O85l6< z@2!T;$v$?2jjrFr%BVm0FgnabuzRoM!-i|k)P|N9iytp1bTslFOv!S!J}J)rs{AXh z;U>f9CoN$9d|y0C1$J~cWEu*TlR6Cbb$ItcPCKT*o;rM>0T|n4qQ<+CoS-|ZqL4-p zU-zU6^e@y$u&)(6xP9Z7ky0<)dl1(Nm@tmJSnSa!tg&~%qJU!B{bfrlK1kF2wU8rW z-OQ)t6EHCJmyT{*sNsZZ2>0&Y0p@qVu~SdXK3HLZo#sm%7XDS2!MX@b@wzKty-h;< zUhdC8ZjusQ^`hl|B@-XByl58vJnq%Ne(?}yruu}POIwsKI)e}kl^t-0Q?JHG=gL?= z*eP!qYvtC>oyWdJ*U$Y!z~Eko#K8sE^%+#0kZ~u!7n)ns(cd31(6bBPcPmkL#DpEJtjOYi4`0fUi-e_ zcS~v3JCxy}8Iv=9{`BRqp%CAzGTkv)6OXQtL4Lsh)|&(Ck$af$(Go5=KmP!EQLYQ? z2CUVv7P9%Vk%V<2*~7>g~RI!*5+FXf}p>Dg5)%tG~CD z(wJN4fLyy8Z}!69%|}Yfllp}7pT{YF3n+VAk(Ht)>L-D{mG`=AxiI$2E)9|C=dKf= z5_N1{&wb=>?XW)Tj#U`<3V_oJ2AxuUhOLkDd~gFCT`E!R=J)_<* z5YE(v1Ry_1RsB-jD-W`3ruJxKHXl_L{z3UFCE73|t z1J{4v$vWGoSPN0SgIHKv<=U<1W56ZD|E%9sb+*>L=kbiMb%xFY8WsTF^817}B6sdI zKd8;qM#@3p#n@>~goN_F*Ghbs9#>7y7#t?uhkby305~&v!<5T4VXshUU>#_lf>b{w z(GOOthK%8xCNR@kyk9-VijEzt!NX4@79j%1n;!s(t&oI8ZM=)qwOmm?Z6WX1R8ai4 zTcoM)0Q+XZow|@}GTO3A#1_bnUr|~eM_0)A_35=6Z3#Y83dWwT((3c7Dz*{&^pX=) ziR*qJ0dnO#7qt+MfBvKPPlw5feQ4q)`7WJJ6SK19cnU;r_U|f(X3Ad83|gIQyfE9r zFXPdnNkaaYUY${Qu<_9SY#_B?ZDG38_(&4|C1T! z$#YxW1EicHCTaEU!VG zodP6)fZ_aE=KLGd5T9j=`7qugF?WOMHX)aN)%{|wvbG_8Qgg8Umpx_u40sJ|3 zhU)0Z^Cpk>edM4Vj(eyjyNTEM13gcFk-BzU{4o)u17Uj#RjiyXcbCD83~wBQI6bX4 zfutG$PEytE!H>g6Mf>XAWgi%N%#45+K^3hzR?rK$Rvw5wOprlNgVZHt5gY5=yb#3>7sBAS88{^ z4E@*m1m2vyIxuUP8{Piz+7QKgEq!IYF7wnv71;~^sQ4qAjX3jjBg@_H-vBdC=qD-F z`~%61dsz48Xu8)jjmk1^Wz~Kx&;Lh{Br{J2_(3A)Fanp?dp8n;;wMJzhH!i!3M1;h z+XX(E4P}mS8P~U7?51#5p7EaZU0-~feR^;1r2S-38wPsD*?#&lDk^FLNQivDP0NAM zcK(22aAvL!5mxnoidPyOAgl*8=X*}zdw!2q7lFzZ>pw2dz=zl97<5g#RC0p zq#m$$;C(=OfrL{11Pp>(sN|8*#;B=_zll0!R1dlFfJL?}`(Br@ms|Utg^5@BPJC%DT8$XOXUpiLI zG)|AFnCz%u(Q|F3_g`aUd5aw?&m+r=hf&F!ZZ5(RS2kG3Uf?Ma5b4B?gSF{;y5bzI z|Ki}zq~Nd=$%AtDtWEP2NW5grPqHTftDf6S47{Copk+FxkvfOw5=cEwuOVD*^`r?9XhVI%rwX!L@Eycuy8tPlMo2w~V-rC=S3(yR9)b zsuD}p?P2Wqp~d1e?2e}p*uHfO;o$HNA&Te08T}7nwFLbs5I8mvKK+`Agx4a|=f%bDB zLyOZ{j9<%Uutw}AjuWnDq!m$!r$%y{zw209wWu6!o6bKE7v?v;%tc*ecj2r-8obHB z$)mrRRJ?J|G^yZ12u~;m>;#;F)nuXd6$|0d4#*`I=szi zR&vhP7_njvKdJ`s;kPzix6w_pnyAjzfNQ4MMWEgqE;dpV z;T}SM^8V<4)y*t=hv#z2-0z^2x*KgtK!(k|z}tFtzj$ehSB`l3CZTf3W~VR3H|Hbw zXep7c+wLv(klJS;-6&H_v68a7gM|xicb50+awvt3)!3qrhOF*oq7sKcH%0IeEBy##Le$HnpPG;IC(jE|hFmu^Ob}TV^>?f)c(k%f z3!?g!|L{Xwy&Wij0eS!WorTIhLXGD+wI`cEiTnjfN3w0R*4wOS?g7?!tP|HQ*Q5Oo z(^?!tNl#K>FIbx2^}&yOViUYJn@TsUTcjmdb~Ir$_2L#Sb>qLed0SvdLtMklC%sJ% z`4J&|>&T-_Sq5VF8j%GldmbJ;mTcv&`IUh3IQr%1_g}Uy=`+<`IOHtll0|g!JA>zX zPZM-2yd=CgPb+z!+}j_Jr>khPzoVYsN}~!t5ePLMDUJNbprYG1Mdcjk#YTOUS+bE34xP=hJ^Ql z!OsL)Zt5p?9P=Ff)hPL%C1qNXNr_22%3hvV=4&o95N_o)N54gvxDn_Gw}bYUIf^S9 zRcCwutm9{;j1~%Jcd)DLkR`zXS_N_#_r$#&K1hp9rDUGn6CAh$25*j0jj1WycVes= z-H=6eefb4#+D+Z7Ihy>mJ)bho#xNhLJ6tCajxJZJF0NplgJ#SMrzt{;MPA z$-MQIxTu^;9|G8ywd2@^G^$7L01#0=(LoMS;O7IJ?+armU8L!nBj#2y#1PHm+bt%I z2@(RUCwm8f0X><3^}Rnxt>L)aMke28Q@_hjIbs_Ur%feJ9BxolK6v*4Is}@Ee@&!i z*Zw0;t_e0lL=;h{y}Ik@cVSX2;nm@D`C(JU@mS}AVx*Pn?(vzYli zYR3mn{-Qh`nu~ZUU(E7A*9?gCwT_QcH(OWV%8CY;#F?{Fsg0RS@3CD;1jK*>rZSAE zA$EU!XN)G&*ulJoxd=^{^lOQ~l!aOm8zx_RkJD?Nhc=o1*{T8CSoL3iL%v)Rpkeug z;Yf*yldPk;wCACzcgC;IZBOgHB_4HP2CdCzVc7!z$soLWsSYrA{H+mAw~T16`S;zV z_MxwDZuyZm_vE7-^ao$h%5iWTqgLzW9Xp1|ewL)tMdI&J1=A9JljNd|hKZlOc$-5O z@pjmS-i&0Pf*FR!fL|sZe%To1@cf(3ax^nia+L>vcE1ef~+c_+> z(Qc+(JB_l)vTtS=*BbWng7!Z@t5Lm+0&{7I#+hCI?()>LKDyQ?G4=qkPy6M?#Ez(6 z(^HSu?Cgr^#6M|Erm47BLfh0NW0SNWTxAqpvkrmvOUBB;Ng`Z>>Y4oE9KqkshoVHI zp-=MurXh=*i|Xy9l$z|emeZZR?z2b`F7e(t%($QbD?5B?#(sXl@&EYk;(ctM{Ev-& zV~6jSdkBytMPni5dSXeZzGWCI6Lv-xeC8J4#<+_ajAGoo9~NrgUGk$P>WD6z#y)hA zC>>S!g*{xrY#<}JTmn~vn-s#Why&(?Om^+e9|~yF&&X;Vq+8(_G?Jbad^uY}!Ocp3PpDY6TOThtQ{PD|T1qD7`{?k)l3WAE#%DvY&_VaZQ3Ha!oVt z8^gJfuxvqT5#311)v!{6UK;#eUlk=>#J)YW*Q!DZ-vG*S6i7SrB#@&p8`&lRuJFMh z(2>Cdi)U6{)iQ%5@$jUoW&UZQPbNbxn}^SG(0O9;rZtw~^J5SBt91Ku_u8Ieo5Go1 zHz^i3s#2Qa~7V9J^BN3m4r@d&}?SPIDcA*%ecc*qXaJ zEiP**PK(YYiqn2VvP%5SMR0eC*vREho)l~G#7n5`J+`T-U937WdNzJy zF&8>jCs+)kw}QGFFpiC?mcoLzH(VPkPo?rEJD@YinTRyJf;(9MyuQBRhwN2B*Slq$ z|4b({bWG@QJFL`JHd4U5x0?q{miJnbNvfW;7NyXk{PFjCRQ>NBpKnObW_&WHg?ZB3 z2d%s;NZ3@IpWJa)V^^{;RX7kF;}yS?$+wSGR6}{|P(*St!FOvMnRUa_is{p~>m8+o z#YTNGQ(sSqe&dU$8Zu?pRb`BdO$=U89i=$P{#ScGyXoBwVKTeE&f$r3m590D5qQp1yF#kQ>cr)< z)_VH9eK|jAvZd@`i?ImGNJ;xec29iVs?S_cgm~<>7lesHb%(^ycp~3$&CxTxZ(tL| zGZ7`~wCEvD{J>qY8M3ce#tr}3ErYH18trL<>?>-Q-Pu*oqse4eFqO8?P62e5vJ`4=^@&eY)Dl{s<9M|#!KJf}361XcZDe4tJ?b4j z9U4lFW6U)+5=D727n zxvVfo#nB%>k5U)RW-86zE880~VsNT;RMdW!)#wPEwbBUBB=>~kW;w^2tPCB0j6q;b zr3BvNP2*Wd63tOdNau(yIbQFikSiQU3Rm9PZ%VUUh%bK!?lij1PowXyG z38je%-yOI>ii)37MF@i5fD@<#aPXTR!w~mBB5OJnE#@Usz{X;*IwI=nxxxw)T$gk| z?*G*>%Jt$#!~L4K`0v=8JFQ1QMXpf8N#_&!Z0Ny9sE5XsSXhDa8rq9v1vS_!N0SeO zf4&ZPPod}TW`6Rpf4##9rm*9PuQvkPv8`WRD zkm;-{G-#=|&4QJY1sP$v^XD*5G}dv)|E~AMG}&YG&{%W->aMDxn7Z7_iIIcdKMqS; z*(=+!jvedMR!LTdnUb%>i;Gi5?P=J@;8sVr^08(1y7R+v5{n%;7=^S-X2Wo5-GW*Z zn$HeuWP$+!Ypg7E(UzMlJS{zrh7#w4{=dDgN~=U-BR$h!3c4Vgl8;XOql{oZ8m{R& z%z5&bvTH|tYde$RB)tx!Vn>fh#aDLv$#SD(7M?Tgp;0ND1y0TfmRchBMuaS{6#sZV zjl1yu`&?nUdoN>9hK2wuF;#7_g?<-Ts#SNQqwI`&VB#`%4S-6+o;Qmy2c8oOpgLu< zw}7YY`t!h-s>fJZQoU&+X7Bl)`6zLtqxH?B3_h7DItp4AE0bzzcq$2k6A<5xIkE9o zv2CVi3Swukjd1K~{izJwgYhZToVZ12M^C1_bg)apFX!Mxv6a#^79waNMx499AYKIo z47*R6Bw{naN%a1ZYq`#zv_i-}t`AYxm}==${_`Zx_eNC3_hSzMKsBRfn##%!S3QHx zieB+PjhzjW_WQ;4HAPwJm+=!N2Yr z$9UpGAed?2G|Hf}bcTrOXYFzO2t$g&lMck9*)tnq--J6N-;|+_z+SL{^F~WQ@r0^2 zhO8siG^>m%a@3lHhG?D*Z6n6=Nv9#Z75Nipv# z_WVvr9tisSv%6$uefUp!K3`rHykIMt^_hRs$+zLG(#(R>9l<`w?GEU~IPkHBz6P@c z34Z7^fwbb6ZZkT_kvO`G)%{IJwNVrIk-2Y;LZ;v_0!@!fJ zU$*zIV;E0tOD{$-8x;tlnmLXi@7I#P#zP0|jkbu@7wZ$MdhSjs-`V`WuF^iJcqu-1 zEG5de(Fps9nixiXe*4Z7JXhXKi(0nQNK8=jQ`**LV|!WT<+kDXG}gHyV>&C&pX#4E zpCmsAOyPfC##ZOAq!|=zpR?=Ikmvxvl&T#AS=@N1)@xRe>h4?1By$xu3*Tpz`Sfm@ z0xv;NwP+%P-YLMIJA*H0@6Sl5^LTj;KV*M*t)bIk=R!)83E!=?CacWkre0pH4Sn!p zdYa_-X)gp;NuBjAwut(*7Vwi&>e#f~dcKj&`Q~@<#^h_F+1LP6j>)#A>G#bC<>O!D z9Mclfieks%9ZXcU$s|Ack|bgwE+cdLj`l@saJOYI@wyTdmCD>k08tN3J$$m>?Tn>@d?d6?O?27&W@OWJDt{KNljo1yRakbS-oUy2-t>`o zrv21-Ap>dh5aM~)^eB12mDfaznPb&EFyQ+~Pp25H$t|~%-oGi@#IQ)dP7z8l)&qqe zLcs5tORI)B^o8qlA9R9HNlDNpjM;C6XpSEh(}o{EWjj4ivvM0yptGFEusL>?}7nN1PR{e6&e|D;*6(2*nV9@1*x4o=;T#{`r6Z|)JfnAgE$dt1tEZ4=%-85iu;@B^%r3$=O#EA=1Ttn<(3z?z_IJG+ z_XEQ$`)V0OvV&<&oEez7=6>VZ1uuoFittE^h@;^oGbd6m7&wpk6~a1^&?>cyyqfw> zuug@)>P})Q*PwM9JUU>m)n!z37eMlTQyQCF&v!pXk&SN=}DgWMuHdm41eeR z`Sx0^HnMU@tg>Q%qdlOKrBnd=`m5D?{}ep;{vNnYw!EQhM|x<`L2|0Dq02tlfp?@} zfU#h^!R!OdV8_H5GQslSF54gh7A?=K(tOX=2Xysz=K16XpUMvW_*<(Cw4Z%xM3yJ?98XN)J{}3pc1&Tggr6XP3e#mT~t?c~QJ z?->c-H#rmYn#O#s{N0XrGS2stA)99!$Tx+VpBdAYg?_j8L7G0E|Q-!(2aK#(0-96L||PcV4xP1%&C0^i>%mw*8vvy+OZR%Hes!;TIzbz!13=43e3|54lJob z;t!1p8AThc+ljkTy)F?TAKb-xn&1-~2wbaM4 zcln@%fmFwxra=EuGV1RlI8O~x^r+y$FBv*5AIE6wal_?M^kC_Aoa>iCkr=8_aHdd6 z{8nvkrP`9j!{YFf{mEp9{%QTtQ}l=>!@G)Fgw#o2G?L%`hZ{fcTNdP-<_cL2q*U4j zTmv3zqz&SjN>+q=GP*vg&TlU3cqjIUzJNuAQYCd|ZEr{`1KT#c~2uP05(8svGy5eC&eBKAwlc4|1@t`v&^)N2$kVsantR17v-DfR|vM$A3pN9 z`O#Jfv3KuVvw5T&9C#;Gc~xi=7CY z`ihJTrm2lf#rYM|r^7S&7)oEpmTT%J?rN!`O$0RK3lg-mtyUX``g%wlr!c?HDgS(VF|{&nwrCVTO5m- zC&^wHIQibb0;^I;N1yoJAUCu8Ie(C;-g&x1AY*GsuoYg2dWQF9^=O4kjEKy+hMg@P zesfTW8XF}~OcYUiXR|)48lm4IE+QHkYW`OOdZOdrZ-#O=tm4s@FCrg6v58hi4xT;;ZIOT$P&QvwM2OK@OTt7~8Y0T9GFR z)>0RAh~F=GxWmdcBQXr|tykgcjc*a~|0+YFj4m)n*!a90hMP|mmOTd2_bR}vMGhx( zQDnRp`a09ul%ifjRTtxi&YRn{L*q^@J4H^j&9;-(X3c;Qwcd5PyDs|-$T@Ge%wJW7 z5Ku67%)@2@jInh#7(NHN*cqIZ`KMX1u*@kz zX!srj)m97~n@M%&mF`s3&B~#Sw{@>PK_AaT-pduy&)O{S_}|aQ-C3x(sKcK(Gp-Z| z*HCOl4?aaQeoIn^(JK= z)G3n~us3|zjj?r|S`wMF_Vi$dVUB;Dl?cwT!Bs3S1`?E@`@sD>QMyYNxM2d<-O5o- z?dO`%=t}#a6v8P9%qcV}%nBH|g_Xh*k49CeQbvfQB)L_CLc#<5=rPZJQ~Gh^ z-VUj;(b0nC7*S4g8M=DQsyECWrog9|N(TPW&d0dEVAK{RZT3`Fu9CXtgNhB6OOB-q5Xx))>ODY)X3MEJosxY4QT>5`@5xh z;$N-<5t0WVI$BKW_K_!CGGdeO?8YG4Lka)hKGii>|AaEI5=(9;ui)QI9DMf& z!J8ZBHD#==z$GFOxLyan*R!$?4z$!~DSi?$PPg{J#ysk7ZZ+^paWrL4Sp=LZO4G9M zLGW@X-n8LOjB0+IqI@l`1p`zXltDm3 z=?)7RT85BT0m&f;kj6kn$)TiC8l;(_1Vm}1V}K#0V?aqM`PK&Yob$fl_h0{9ATrF% z-h1t}p17a;epVG2N-wqxStE9N{X*j@$;i)9-|xnPy=9P3v8khv8J=f3O5oyox*g!< zz2{HY0f8Y|3Os`ibOw*x(KBOnANReq28ipHI~#=g?)2cRN^g_GRHbyhs-24K zspbfD3h)A=k%BfuB71YH-d$)`#czhey9qXuaNUAOzO;07ng)blv*JWsC6*nNx3rJ2 zp9+(6$c?Dz^gF|jx&YR(8p(Ov@&=0Y&H|Mc-C+eP&qD@c#2$u#%)$_i9CuCruAyF} zX_FbA?8Pk(+?#+(YUB4DGoFlkh^wcY@8`*U4#N;~yl(P!O>Xf!NILsJHyj8LEoD%_ zM`SVFkruw|E>E8U#{tLL$IBe%$NqNm%863;yT`js8s^0FS!gU$zIy83k=ps-LBDjX zhi>Vj1*L!Y4$M+DR(>)0mZ(SN-89o{>p}}2!wGscDmyGuR{Pd`U9exC9i38C$Gglo z76;&YgsPpT^34%S6=yu~4D+s}b3ooa}M<4zCkob$bRViUaJGDJIno`c4vCiMYo;Y@L<$0!d3t(uCN`Z5*xx^(5CWScy92isZJrFnFqxl{fhloc%JwR zQZ+`g?e}~f-`p^H_rNlJr6aVeEKbCe6eSRQD@`hgfBS>Sag_`2N9;=EV}E)FS2Jyv z^U4--(R5!V3R`mHib$Dbb!?I^;txq%!&^5z&k`5owt93{vxJMU>jnnV5J6xB1N6bB zde6BMjP@WF87sB3$S(<~g<@+Rw=tlffO3og{5oJfp|-#TmD^9eW~^i~n1;k->na&_ zguC5T7LFeJTXv~AJ|B@`;dawSZr8z#p#)1OzP*rl+cj|a?5xjp%I%~5vzFIYPG8NCbA+*;>+aUlbp_2wiBu&kdcmgre6W5pZU3k4e1oK>whRun)ZUsrYMG+}pO0K3P#&M_qvn;0O_ls9#rv!DJ% z-8yH}<;td~14@J*d(+s^Y4_0`!=Ysi1|#`>Qjgs zfxaBQsFg~2Yz(EUL_v1ebL!A^3d+s>IN`pF@5R^=5lnfncPd>Qzi&ho@lz^04tp`= zQVvZ8Jdfi~i73?A<5&A&-p$ThY!;5z$MX-E`*cN8_n+O#Ms(cfQBA!%!oJ*CtWp5s zJAM?)$z^Zm*MD}cgBTISKo9aiTUiAsMCk5MQDBbW;zQqh7qZJZ7kBcufaz!E2DUc{ z@)uVhmsu<$b_q?#(WlZqW0zIGu74LbO>7bviz{{SCM=@}NzKc>7RIErA>*EFgITQ{ zqpH1(4j059Q&Z3pgJp30N11-rA@t*uHa*ABuTy4Uk>ItD5X8KEzy4(IOM6jn1IW47 zJKnqPRd{6|v&`Gm%0NHX({?Xvd!GCH zd}HOdg1WkU(0Y%1Vy5;wY3Fi|I~wYF1tzF6riT4ZVtm6dP-6jbKJebRW{( zJOt*nJR-TYJ~*h094NdS7#J9oNTbtkVL;T_Ybd?%HMG1uB$+28cur^c1AOmbLNtcACkB`F%UC{>Z_Da~|c-J0B&A)PubrIno9?fZK0`uEuN7*TtT zbg3z+9gJWM=0TbB@o%ITpFa%Kl)SP)dTTu8NGC!3r~#H?R_t)?FhwpakqxX_Fr0I@ zVIyG>C|0W1S7DtAx`8zOS1l^Hx82}f9q(>W7&3{WGO*SI?=e>KMd&+yMO>Uqjzr;6 z1ufpGOMy&^XsqU$&aQi-E%_uq8$WyXs=FHSgKe10!+x{wq`+^+;-+(Y`r2by;gT-d zJ(tY_*zE!#C;GaJxJyJjBF1x|X~1ShT21c&sc1SwSzlF!G@Wi&7W{ek1glAk#SHUZ zv*3H;$`#?u?O&bn@g#5g$yZ?5Q0rqQ>X_%&qs#0qg;YYwrvjOG(n3zW_*}k~X^QUQ zxXE5*q?Zgpq_k-n`Ku3QT8!Z%r`KN@7!8UND=E=nkxos{Nml3N!{TeJ`bI$?W9 z)&#siD6G9qRkO+;o^dwY#Mq@PAwhL#@Mu`z+9YlAz8g|m3(2{(^L2br|0;_WxtO4tdK{DVb}oCVG)E$1b<(=Ie6` z+q7FrYS|3s0_-On_+X?CdtR=W-+Z=w;Jh?D>|QM!UTb|9g0s2OK3x(8bsxZk9ia zdD}Xu5;q=Wj1TH7H5KDzE{Mw~W%wE|uC1>3{cFa(8hex(=D z>Q5s(SV3M!VKUjw%c2Z`3mkG&6l9IRw7eadl~tH@Zd}i6KYO<*3?N2Fl4aOG0K>kj z8|-(nSFVU1pkvJsvNYCbXSdl6ZI%*;VFjw!BEfo1#D5!-RdLuF`L2V+=?xU;ShuwL zVpc8lH1ODNL4*`vS4y+|+g9GfaF5pS<9_{Ykd`$%<9n-o60KP5w4fEp zByGqRXLn1#j4d98-Wc`vMh=&20uiqNt#<|%Z-0IFlb+q0Nz?|p1W)zuN?X4^(cMSx zz096E6;V|mh86MIB$$f03(_CC|E5|f#GJ@zNc*oKk4JWLY1S}bDwVinX6Y%Q4Iw*= zGT=tVO~u@6Tu?h=`;zZGUYj?7AdDedpRQkId;7}7_vDMuZXR=Pz>@Okg_}wy+%JdX zVky<>n+>&Y)|UO9@77l_4D11qL~ujQKg5fu`8ZI;wqrxG*UCzAupA`(m>m6HCaid37PdgO{!n4c)&{#SEH`8%PqV4h)L`8u}>nzpR<8wbyUNfZT(ck0uLk@l{d{u<4aCoI}F3*l^Z zwjbYt#QtCufx$~xV^3N3m=V`4M`g+eP>=tNPL>Vq5?}t93_VNcdn-oRHbE=TFb8^% z?Z+RosO>-WhPvy+W0~EagrPL&*G3|mmQRFFy~GP+5Z@lfOUe#+T9g)sIx+{|Cgw9u zfk$0#$^qqt%o!4VrrxbSvX;X4HCp7{Tdr5C-m$VL8+5bFBWsjG4a_-Q%X9kOtSu~+ zb&V`z%df7)BI`;pZT%Efvge%Ji9`Ew7r*qVsCYg%)v?Ea+jRTZH$EgQ1Z0dbr#BX= z{-ZmQsR78AO#NWwRBGb2DJ($(qi!SKx-}@hRj1J~l4!SREG=EQ%-U3|FCwZ;{CX(d zR5s?}mzQ%u2B%qplm7nc*!pa8@bpK+{a<@dpk35_oA|QzrrEK>z}~JJRdY_IhNi4m z5SF_%{d7Gvw7wopxzYZq};^zyRGGB$?H}l#kn-Ko=}m+ zg0SP@`gxD%l-&eXsst*^|*mJl$NK+YKKBCs6xu?zI{ki~^ zhZJXwebC>CO}SRB{beC*RVx_$2ivRV1@Qb8SL+5xVJxFu(ELJaRZm|6kP>k8zvssu z^SyWarj<=dTxk8CIFIQlv!bCYZv7s+WaeOGk8|!5NoRH0@Q{1;*oe8E50z%|tQ;S@ zkoc_=^7hwiGKV(kcjT+PoR!a4ONgZv-}($3tE}V5{n(PiGzI|?TT>{el;LPvA93Q* zIfVw5<{zF8VHP$C@rA>`YLSFRP$rpQoJsCaDLt3Na+EDC$scpIqy0Ja3RqXg7{+(08~{4lE2D5tnASYUNOVngjySl7gR#Bpfvwjg+3LO7F}~1UX|;%#)&9^=Kw21^sG8FRa-eD zg8@@rw*G|qqn%B)ev`$~uyp5Z;EJu=2oLUCl0(r^)0F#d*%jAtO}v73E>bV6@rT>z zL7gad8@vi`wrqn?cD%D>Gv-}vJ0))U<>z8vIrHFCiiW%C9NL>TzS1Jmv@G zEv?Bh?%G>yAY5$7pU)9=D>bDj1yK_TZjyx6kJvbp| zb4M@46~&o&D~=ElfRc(-UaR+p{k;5H-qM}J>s6W{b>H;Mi;_RL8{B>ZO3sn!{+07g zxx<4)^Q9_PB4<1%*I67A2AgKWL$4y3l|L`n31F9pMb&07T*RM|gv`&za-=(1yN2;X z&OT|V8ktUjYRrQIsesG9N=Bn{LuKxoxcSb`^?M$#=kymc`m4kW+Tp#`axgE_i;A)_ zuTV2sxy#D^tzCj%ClhN6kI*erjksbj_R|Q9C=UBOCMOKUSQrQ3|Q&`vHbL3 zy^w)6UY0s|jboOl#G3Nw&?#iWtiZFX4v*~i6wbOAOtG%?H!Vy$CNYC>hTmTPMwpkY zpT#AIc*bkEBT2VjFEZh=lO>XaW}CWu)rd{a+lp#}UU@HZn%P64|sy-a7UD?sq!AKJt;@j7{uCB2Q)u@Kq(2~B?%4w|l7Ht`QxYq)S4`0z# zBPA%neCnkbo%jy$Tw)=UQK`d#tyv})F*8}{@$J10O_~8fPabpM&jsls*0gCE0{~{u zxVx}GQ;g*BB8D4t{EH>U3skpsBs{X1CGBIH47*LpCo6o`clPqO55z4_fR5uzmyZ(T z*-E&`fm`vQuyBY=bAKIXcj7gBknG5d@@)xh{prPfU=O^Etnbbl2S(!E+cwOG!~71N z-o!D>^E;chRbppfx2KF<|11;ps@BncZ^yLbLrnTK|2qkLE}pTo~*@)8sS z`i|~MMML~jvDKu5+Q-p9mCG^pvd4i}RF_9YEj_q-XzdPU}nv~!=JgXmc7 ziQgx(!i6j7){k744^c4FDJ!_C%ze{Wd1>GtjKh8-y}!mx{Bh|OgC;|~dcQpQQ_f)j zTStaC5h>p|voeZeabgS8!I`;@JiI7u?8s|b-gqlQXF}CzW*&v_gg6HijRjHZ9jQV} zF#}cX=E7y8Js!S^e;+wOpzJjED#^vthi|b^9EvTkCD|?(&zAWrTNgPK%+apyQBU1s zNtbp*d?DvP8kBZxw ze{hRA5Wu2D`k&{-xN$O8>C4YH3{}%UPOFqYcuih77XW6$7&i(kHkNk@UN=fUQ~gs7 zEl`M)A4b(G6X%{QA1vCe%4+AXs|r> zz4RwIsD&nK<4o>(`9>C4`*Hqiscx$JSLUcx{COywBU z*2um}VrUR zAG2`aVX43shAze60i$r?J-92M{yddz!o0PFCuL1{B6E5Qg15UxCyI|x*e>qynJD=$@<8NVB#qoIsFfMctURjAomlOU z;d`j&hh>R$3{mtVt#?!=EIXMKMK{Y2IoW)*3@3Xk!2URuQJy7rdB-?)A^Z8s?)|Od z?YpE&iy~$zO*ytM*ODs{;_$6Gmr$C&<}1XkY=pkuG+z))>du}{%v7)Ow*CmoBQozq49#Yq z&`g1X@lIadO6T$weuqsW8GqNACD%WxzUg(G-b7jL%~E^I^j9DZihx1L8MsYQ4Nxb5 zMVRz+VGcIk6x99r*@9k2PH7~tHpyGynn-8TLsmI)r0Dp<9g~DX4#RVGoiNh}WG|>6 z`0W6dwgJQ_LRhgcd5HhezHZf}O#(%2tdc&_fHB{rEw_Q6A#`Ze zJx*zM5xO)pm)ym*Y`4o#+y!%RrF;z%XuFDmyc~ZDldIUa*1*5;H>-3=w3QJ<$>@3K zp{UlUg#)%kL#=Z$960L`l{aQ@*9ACzKg#lu{$&u#BuvrLhj#a$H z+NpSZb2d#cQHMv|+C<6Warg;EbrJf$F)7U;;T@JK1J}>;z=~(Qj7+lJH6+i=*3!H? zGd%75RUR>x8SeoMD{C4O9wH)7h@AUW7+P9ZV^@0P!jV7GPBef$8#Y1u7{f6JsDN;F zIH|7*UfXQY))0R!dynK(1~{?#;HUT*9~q} z!H91?Y&Fmr)ztjj_@k6cf<<`+x#s|4sgOE>hceoY<-vFwt}A7E!JIFwH)2`ApZxAwTi&7&4$ zN6Xgi&)FCN0-{}S*LAg&{{nGE9 z33dhQI3M1bJ13g*wT3RT7yDwMtcp$qs#{bhF8o*<1k*58RVp!auT1CBkXq?mVG`Ca znZaR$&!p6e-OCDs7c4V3V%v>Vb9^KN43JVGS61X`Ita(QBvL+yv0#s+FK;6dJol4d+HTuIH;HzKT&BRj zT%l!My<^U;>ozQKA;K8@(^mW>&TbZM5KSko1=vF6VVcfc}GT~C+dVJO+KH-PR= z|0GLnz{ENXG|Oci6(Lf4Bqh3xKD=HcqDl5B_qjTBh%vC+Aj5P6s|;ihS>Mz8<&AsJ zTgT=$%oGTkeoo@~VCok1oXz!Dfd2Cg4~hY^^XbypSVikk95J|B5WMP+Y*-yAEe+;8 z4(8#bZ{cg#aXzl;Nzoppk6HFXrq}g$wSF)zG7n_sR=*8W_$9?3M|jJIlvF)@q;auZ z2ByG#LV5b{I+*y;w#zb?SqAukKNSGd62P_~e2Yn&4tK8Zm|z4W&Zm4Pf@9%%Z0hUk zqh#C#!B!M6fY@neFp{eU%`01Drzd*>p1U|f_7sf4TM^>zDL3v}RCN8HN%}&#pS`7c z&;9|I-p%W)l}F>>@pfc zJDt^bTb34pVA4k|4h$s`5wq&!YOE|Ie^I<4b>oWlzpK>;DVy_M6O*^mZ0Uu=Ki7T% zfXl#p-n_DM-nY?>vyOdLvIujH)dOOZ*1Rg}%CaMb0frBNi*mKWP-AJ_1 zRiR=Wz4iM%LrDKA;j&wdjjH1XE`)M$eHMRy?3y!4w~5;|!Q90cp9wDtZM`g`VP$-! zNph*SGoNa52|x%)m3xaugxq1$c!*`=i5T2PVwIPAV#6 zbxl6vI^J5s9{l9%3=E@1aj5_6+p`bAFs-DPwF`dMZ#SfI%$& zD&T4|gL9AnG<}^~d5p;C+cfp@Fh?4drvrDoN)7Dye2)^bE>0X_v)Ia?)0MI=mtwS2 zuK-nx3b8+Ry(+(p7-bv`4sxouf_E%Wx&3H39(4Tk`0N6K2d}^*et-vTJ0lg%vVO3c zC2~{&6HoWkTve|LB~e-SIK}?Qq)Nd~gIOwt{D8M*G4*;<8%rVEz$vprrm6W&uy1)>9x^r{E>6Xh^zO*&yznj(gCtxInifF*Sf4+K^ zU;cCD4~?2jvg-XJ>4B=6&X2y|{Z{_(M1Nr#m8I*K8NX{NOxiVBBGG_F-xO--o@pXz zRqHW5YkRy8tD2uayf{RMV=nHV(u77F`U^-a?;`7*N-ma@9o+r!2oP)r43hk05yneK zvf?dIp$lM|PY|SH)TwRq6Zf$UM$V7U`kG>thm4(bm#_BT1&m*3BUzNmjoP^<3V_wd zan^Dt+-77b*bK1c>#p?v`Y{;!Y#h5cv3Wt&9S9EUTIbGlZpy^$_7EGq0Rzj<+j{%u zrN4)VDm@{#0sbUJ8c;>2gt#f?R8_u7>c`88h1Q93mnZbGyjN)h#snhNFZYV|G$dYa zY$WGWd>v1d$#UjGx>$l&o*bh%m!g)snvzfhKcMpx@*K4lhNRDVC34&L7rXC+>n!#I z&zBjTMu(<}*lV67;^AG|qwB4-$G|M~)^Bi+Z2AFE;b1%(>tB`A0%aCh3{7Dbbz3OCEXi+IUB9Qc#eDX52g& zA)GS>d-L>@>6p;^oG+sOJ8bIhs2OxDUL06mo1iEro63+|hGpVCOhnD{POBtNwm;>E z>7>-1R$l@h?7=yiWM+NN2BS^Mp@68L z9tl`{4tGt@k@NM`z|(h*dWsi?^jjRgJcz)y8(THMxLIZ^&z9}{)~$g6rZ%aXm>6{z zO+)tr+&f$P2g{H|0%e8w(W~pl8g(5bM~GzX9h--Nja>fQF-m_iFSIqx$p^xCFf|zb$#wvWE1)4f z71Un9SL6eHt8+4z?uS$`H$Xes=_4CP*5i!R*z_DZ+(F9TIW=qovCn2AdI7jwrz{|_ zwV5|xoVWN6KoMnp)K~1kvoJlsOpr|YUFith827Js(+R8MW42(Djr4XWTq1knobw~O zx-#9R&vS0jlW|}qaevR#H{f;QfxVm&!61U7p4E0zvB?G#CDksjuP!(2{c0OtCDWk% z6ko25x{kV__Tbkwqj%Zh5`4}J0eYnv>IoA_k@6a%a!P_<1!`a;NlAn{sgQT*|2cgx*pn~(PtqUj36@cP-@JOQ6 z(0l^16h1_@3W~5qflv+HJ1ENqQ*q#+>4UMA$BkD9)LqMyF9G;w0URYXmN*kyxW{V| zd{Vl8ig-fV(wDTpkm>53Ol!r?sn}zequG3&5Ck*mrS%wUVmg`{8YVPZ)vp9??CQr!){Zjc9JoVnL? z?&q_IX=p6eo1B>H`PA#5GL`_=91)Rlj&6mV z`z8&B^{ziqD$We7@7Iovcz=%hWT5$qKAL33O*GxTh%f?7R?#w%k za2?Bnj0^N2`#@#e7@U!P4Rkul0pZWTWDsO75~R9~ z%+OeKDXPDYPIy05-VW~6&?gSO(Mdz>mm}JBATiu{@;$e7R2rm*M|+PSoVrOi6>xW5 zJtv>90eUFJq&WF^Z>*o z2Og-Z5o%$P*51-yzjyGVM8bTa#mTer{96x`r~B02arSV4Qrmx^Q~k#g^0MJzupSy~ z%&nRq;-q?GG3kB1&)L9A%pwa`q3Nzp*$@SF!OJ3~YBOHE=1RL5Z-iC;M8xg%D=feW zv6uc&P%)|KH)x5AO!IkUHYd8AAdIU2<$i!#Uh233j3^q?kODAh`Rj-G=F?Po%a&K) z0D26Fu_#xZJT)grt$;pZzz-Nt#K(h6B#!%L?r<_INPh>a9zP!11?*xdZ)bHS7+w3v zAM%`~>px3(hXt+|tGhn7z_c(fyr9UJ{}AMjP&qE9BEt|`k!isBtldWcDcP2ynBR3E z#P3d)pLyeYID@;LjIi3z>~X(NE+cKsIp(bP)ghA`{?^H8U+cgdfI&Y0yEqEq!Zw76 zE0Qxtbn*Z$Y#LT$0*-k>l_BSUB{*4GcFQ@I*)mW0RUC%>>VD4_7XSj@%}*p2Z9wpb?cz!sa@6O2C4Kgu|qGDJjMD}Wmg;0ZWba_Jtg zdk0;U4bWhYPxE9g7m8iM)Fw|o6M;ZJ)R6|6nA5mt`a4l1AdmdS`fNmj_+u~Glk5v? zTA;m$OjFjHR@R_)j-?UinkcRrja$BVS2*ulx$D%r`)|cj>3>oJy18>eAc&}xhIIY9 z&kZyXDd;DSLm{CMb`{?aSby_YH*@zCNfF{ld=z&VI7@((L`J7{DjQ_uOSQI3+OyZd zE0Y5LME|lYg9F45ic?*qVsxMBVhTbzT*;&mt`Fqx#BoYQN{HL$YCoCiuA(!3FFa$N#wFxBGrFc63A;_A$5|HL8S11DQIeb=YoMFtDPuQA=F~L=f>oTd=%G4*Rrl1#lzq^RZH8&%kO~yQ;RV) z*w4aZisP+@_lBKji2&Az*sr-rFej5omuqebn4^||mlSRO1AncsDNRv51QzZF7aYKE z%F#D6va`uZ{pA2{08&*^u{8t;(Bu-AZCob@BkZFXpvx~;iS=ZLZ@=F$KWgEl!Ur|# zshP$)B2kH*$GgJcxfo{rg=9`bqac$`cNiegfprPAL+XyqumkMeL?<$Um+U1zK{g^q zAyEz#WV&9J4<5zQtFJsb2__g3Q8;OOOO;a8p9!8+`_Xap;~zi|_SUOW4c-N+{2-5T zk$N{6NvO@>Zt(|e3Ltro-!f)b*gvM!od0%kx1S-1oP=)n>hE0o2XaX|r6g^V0crqp zj+c5D4su_putL5L_-v4Y5>0Pv+_XvPM00Wea2=7%XHsUm*#;&Bnq~^JZj{}RI zewh%vw;JrtYAU*`Dd4<#-*bx7$eyc0?#xWM(*8EC8uj@kTSjIkd}pa5k3xFa4$@}1 zjXfn@Yh($YEt^T`1|Jqzf;_HP zug1j0pxQ)dpcBCvy61TPT1}K2tyn5wSbJl%dut}nF(~r7QEqc{v$O3bpKpCRreTYA z*)R@kZF9eB+lpqIpEIKkdn&&(1DPFGiU<*M$g+deB5pkxE4~o0-BM5|Zv*|r&k=B4 z*+A#61<{@#w!4G+C6Ef1|NQnw zeAkueb@$EXUw8hlM{ar-v!_X~T`4~lrm9JFW#VJ;3gllt*c^r{qn1s^mzg+(q5Ikrc@ zB!M8VePkf(1p~cmgJe8Y4i1u4I&RK}1_6tq=Dv!v}#3n_<*@hfw0wDu^=& z+aJw$Ci_8bcu#_r5dw+KnOISb>BHy~c&mDWW76Atrl|Kki+v5HJv+wGtAV z<^gz$W8JFKy?dLZ*Wu8Oo#0cI+Db_PEuu?tZfmpez}|5z7S}Q$Q7PDZ37t~&JU;yu zwE&PN&8@aeYa1IUgGnh~c#^1jh;7C|9r&u;K76&`#Qr@gwRol?`hd>5OGfmYzrK%uSzk@u*M}JXFHh54fo}sv zItuL1Gq>!$U%^v4cGOjZ(Q^-MTAW+txwA35k05UB>FELL9v~zPcq#yvm(tbispA zWAJCU>VEnu%a_kGB0h>!o)nUI+nx(1(~aK%L~%cueXAc@#$A@92_sojT-><4X=VsE zpt$zilBw7W)b@pw9<_Mnv7k5F1%@Y2%5!@bbS1cV_wL=HotZ>$uP!k^2Ise6c;NDJrbOvb!1)cW8FJHc#-LG(2PWVyu zZ>1n_wi`<&6y#cL$xjDOm+y%si?Q2-rdE979?1Q?4DKi5?1AOT2 z@G;o6`l^-3!GXR1qJtj0qA^jk`nc!?$QF-LK3=tu)LWYsb-01d!oqJS)JeQ8(^UF@9Ws3z;_SqaOu9j&5C zcRIAI?1HB*@$`T;>FHo!Yt4neoNlnzb0IGN-u8MoWIusCU-OcYM?nBDeBsx;c6HZ} z2BtjXQx^~90Jy3RLC>wJsO_zG?_8jzw&+e%ChosNlnS%Yhn2B`V}MSU%~H2-#jL1p zJQd(KYwJOl45vX20HCu4`>_scs(`)<;I46SNSz9VG1z@Nf=&Uubc*NFxk?s-6bC$H zL<^95VQi{>iq|VsK+B3*XreQMo&73-(T)*!$(3LXK9IJkdT%3!+`!WA)YLX$4Q@!@ zTAi^P|LnWnV)X01X13NGkS_GDOtq}%*m`Em=n*Grz$hX`h}VHN0*2BQtUC4unHa0w zGFfPsG-zo@*l`@TjTqZgQc=eTOyq- z_l|@Mab9L4e+Z@BQ#H=b@?R!ZOy2<^Wp4E^w_%Uf)_L$@S~mr(aJjwD&q!r}?kKRz zO{kj(wCyD;+z2?sUeKtbbkpqX+jmEfk<5NMBi$41wU%7E3I1W4gMI}&_XvWSOJQ?? zNdB;K%&QWQooqMv1&_)~r>aO>Zw%Bi(W7|Mv9jVjCG_oCJh^&si6)o%$X!g_tl^eO zWbf|QDk~gJ7DZjN#*oX9ON7CJ?Ob@Kdz4+XiN=Bq0a3S6+zm3c-^`nzm2_NSe*x*D zgh!qv!z^lFo!chZdM}jfk5+j)E##CapdnQvSlmXVzcxxRVB=w{V95+mpJT^z z?ibubqktn@aH-xgP#4wI)I69Glqw=OrNPc4>$Q}s=GA)}-H=cSxPR5&-rns6qx~%4 zZ&d~#K~oTvST2-p7J~UEX9TrJ0bMO%aE|nOMq!&cL$57UZk@uERnC)10cYVL7*L~# zd-nJQ08342pP1UBJD=J52O zN<{k&;3tV5*)!a)YUT?eAyUv;J-)x*T%-@Qe2SeHv4*}g?C!mBg6;f2bKYISd%N`mBaB*@`1v>VQ`=3 zd$XewJU4U#=|%aL_8L(tK$^_aV*XpPT)BGfpm@X%kG!ow+cI}Ioc>QucI=wAfm6g% z=>)|(xNYqcs{tT%*-tSA`m}5C!Ez@nR80Dv_4Rf8mZLK6z<^OBl3s&@Cn*k4+~j}J z33=DUa~Y%kzZhKlC^|vQ@T{yX7#wu|an`@OvJJFy9ikD$Y8OG88}RBNg(MAnDsZPO zocQlYk>T_m18vHtF0RjZ-i912P{AcS47`3#1_FPMLq%rgKJX0-z1l_*uy`QTj7K~q zGQDga08pq0B0zHin#O3%UW07yseXXrg@&bZLDf~(w3P`>duiyD)lUE0Sk*Jfyn<|T zr0E>!P|^L2_|*G6VL`#U&!?_y0G~106ovtd)#Y*Tk?;%vkSx5c_D&L(8hj5>E%Boe zF0wt!Cfz~qy)VNlET+l{;A4=zi`1Fn-xwI3K}p)a<0K+#%&YYJwfC1q3Z2A&>oRtS z?_zra3ugXLNgyzT#SU2hq;L_Et`PL$1mP+0=-+bXNO%37|1tbnc-F~E)q~=UaWDgz zPtYy1%LI~K&V0vfY=F)ts`iL*y3hjD9#8lR0vQHi45GBPpwKD)>zsPXjhK}~I1i{? zb2>Dkw*#{wrkrzAvH%5@4m=WiZVCWAs_CFo2=#F&UwILll{FR#>K`(hfO3NHd7acU z;G28+UhuCk*1`BWK$^(tnyk!(Z+*jX`v&&(obSmB42;*m4PJm^O;^12CQiWg>EEij z%zzctB8%I=+gd25Hi=gC>vCkTQ1~O~TyXt90GWzex%;=$leE|im|IEI#!72Wc@1cs z&8fFPTtAc^xnQg$@H4Hxy;ubtB=tp7^h#ZXB;bctaV~2qBS5V8&N5_#$=)8MXW?ny z$e8TwN9kbjN{@<#{3-;QJ_`y{w|_t9y0mR1Y<*Tc)1K`N=Yb-hsI=z4C0ry6TO^m$ zsw+JXkddtw0f`#4aV+P|J_XKIn_ly#KhNACqF3VrVNCEuDk%i4wvl-B>+`c5`BMd=Yi?`#CkDs%i?cRxdHVD zK?{IP1rW~S2P|NU=zI9FeP(~{ z3$%*HBpd7~LGbZoN0kT~jElFlf1lRj54&RkRrFCjy}Rh@WHrDA9~@s!cB)`FtW*7d zrHt!ka54Iip6p5dof`)b-S5Bq@Bq%(zdzOIj}iR+B#akBsn7wnY5}P4&Aop^q@UvJ z*F?13Us8m_G~L}UV)@u#-6LJjt=ZWKg=zL_QI!h)`QT5=2cK$cy1e8Em=o;z=ScfN zt?%!jQx7u!Kfe+Yo&BpJJ9y3q1`1_9=vAmf{JVqO!Sn122bt|Z?*q(T;K&|d^l(d; zven^)&(AP@@ZYNjBl0f0^5=}{VBx!a=pOe?ONRCJO29Dt^Ukr0&~)=DER@XG(K`lK z>G0w_AaDA1lw$50d5r*|RNFxmAkc>o=ZAj_R0mJU9Ol<#|5KfM@W=4;z>O!>u6fPP zm5!FsyFLPPiQk_Ce$@FM5K4~i@9vb2{^!0d_W#SqL2no%`LiT`za8pD&n_ApEK>Ey zl0tv*dH=TqcnWxa%mF&9C6P}rX4@z66ew71?+g%ow4NvChgC|=UYB#_zcMjfYkxK8PMdnKu{{F z9*9Z)=+K~(WDxs!rduL{x}pOdbW(e2u=g;cI{cU}_kXJ5raF-m4t;IRbZ}5@1XZ!B zmibq?H~)GX=nd?8|JxhhO?Um>$e|)5ZI%ooUK9B^M+4UB$8ZSW0|CMBQ})@o|667i zIEm>d?YvX0`~wDT7SsV4Xx=)TFn6>M48phUH`UpOc&QMWXQyZJ#h{8JgQ*XtOMM<% zr`SckbM`Z(kUAXj`DLbeMWlPBp9F7d$L`}(2TPqRV3{^{IVxLi{fE^B=)h|7Q2hoT zNfi}XZ>$H(pA%xhg`-WJbA!8}s|$ZSefi6u-iy#1lFT78G~`kR-qwTmQ7mWCp*^iu z4LQbuM>X2>^JFDEEB!zB0UQAfim3l$EL)sPDd1KF1muSoYVt$D)&&R3Mi*13&ZdKD zcfSPRIoM@f49m>K+x+%)(18JB`MbRy6bXW90IG*JuhZ|;Q-l8>vXGcf^T}UR%25KN z*_+h#$C4ksH}e07U%Si3a=uAEkbH=nO+T|788xNeVt|4UmnxuR}R0y_%^_{CR=b;n$=kZD9|D&n&3!QMW zpc^3m>7S}r->eU2h2yjQ%;z$eFB}kb4?jg_E9(!{lcby)SoyK@k|lZSc}OOC^rBt< z@RYzA#>hMun?>N4Wy}di{8lLC5@B13g z^SrLB>B4-x`S%COC#+KY&&%*jLdPQvE-ZAO=9Mp7Orfe5DSf4HYbJ4X3;(xlgH~2$ zZtCRwl&!V?R%KtaYX7;jGE>w)=e@o%ZwAcf}wR z1HNVckIMtK&VQWP+^>v}zyope*&V*2)X*OiXife1lKr;!4(g6Veb!*oZqzRf*{8dZ zMu~4zu-3>WLKp6a^^aGuP-)sK2?qARHGTN#>#ImMctqJ|vNCg6ujnN8oYU;`AhFJT zye8vPWlzYyw5a2>*4`ea64ONpF8{tlhI!A%z;OI>DT_haEHvsnvwdPotfmt5`!$?` zxVIzD%3~uY|8mMWE8aLuC}W900$NOuCs$sk!%LC4VM3|qW~)AWCHNMCnpg?AlOQbiAIk&dmv&u1$D&>k@TE)}bm zc|l_Q-8ze6zWkTz>FH(X=fxZI-_EIm_w8_+s&BRc;}HGgg*1UwkyCG@qD`!qyGT1@ z_F&<@$#M_JaDc4IZw0vn?ZsHJ^fya=KN|=q)c?MVhTBJ;@(dDepJoB#Lh6q099T=b zqFSIGZznp15I~LtDR|h~IRQz=)=IhGJ8{+Hr=Rt+_nn9RE3yX9GW_{N7S+k8l;QwF)*;&-FKD3mVq#&)3d#V~Io; zFrZv_=MtD_tPKaxzpU?;x;)=ufq^0X#5TDt7qe}l2L1W9N;r1e8swZ=U-D4%_vVd%ybn3EqI;jEQEW$}Hg8u2J9}B2S#V$D?mkok zp<65I(pNXyFqLapAY8T^t6-e1K6zoPbi*I<@$8d}dYhuTPkp_AK6<1>qfzxMbDO(3 za|A`BcfzcwFl+r_o|{wd7arY3IvtL05@J9esk9E<5KTP!DGYSc-al4GWb?KNadUIi zD7noVU!OixEYBfCY$Je7<+&=|)XupTlft$^~1`y+M;lY6ZHI zs^g7}4nq^;&HFNw;{z)Lm^T&bX&n9g$`3~>m*~6a)Hazf{@C*-)x={eo3Wn3;h(0N zKL&2J4o%Em)78TlR8kB*rPv>pO0q~^3v&xi{MYrQTs6{U&F(mcwRssE`-CDWB=kb{ zMQG?zS`|0~*S1)dR33@Vl1;~hPqr|I{!tbze^U1|r(lwv_eQz^T6Cr-MP$aeTu7n< z@teOhH=+Bb(tm%^69bmSRcg1)_FHtGrDBUY6l(A2KkoCJq9F@?q;|*S7ps2c&d$)n zO9F&R7isq*F7>R7G>f+jmRTrg&+mr$pRZTlI-qtLokf`?9J45TrGX;U{#+a#wEpvL z?ytqxZm6#Qy-mqmkSKKVgVsTNtQP^s73dYr>fitvnY6>AP@B;bwmR&D$L*@$o0Pog zS;GdI%HyX&y%KgwUstyb1aFMjX;JF6AWI*D_@Ke55@Dc>)4oAIJYP{p-ih}b;=T7s z2T#K2inczM9PW;e??y|h2S8L`1{h~hXMc4_oL5#>?%eyY5Szi9yNFS9r5Zsk|M~N* zY|dHy^LK`a|6l`izdN$=zcY~EVBFttq5fAePMb?`{_}Yh5?21}j|>8A?Y?-Y>1cP+ zZcajw0k&dBOH!SZrx8cCmBkG<+4gV;IgEaxgQTg7RS_ob!NFZc2^lwZrv0KP8(5At zTK9nEsCv9zvUP0gyn;g58_oP~Sg1-ccTJupl1zIo0@PEDgLFy*qtJs>UGl-&^B`P* zIp!{1#}>0k;YH^YCH1aP?V-hgWQZM_0Dx8%t;DPBvopT7KF;>p;msLh@ydz7{352) z+n*YUCOC5n+%v9xF%SWu>c)9JSeFVHXVWDNmf9 zz{P4_%*Xmg*4y7c)xbNrt;n|r-M!s(KyC18=6&iJDNNu3yDd?a)<+<9(ij+A>3MDK zh|wlHlWFuxQm76o=HGQ7n^c$YMS}r^=ITGJj5qCH3F9SE?>ORc4nf(a->?x z;Me#77?wzT@ep(ai>G?+(wq4;p;sH}ww=WZY(8ic3pdt77c4C;2PftM4(+)L)Ab22?VdfEFu05_LQn#e~)=~MVr^bXM z1I=7S@Z^dyKVXZ)^z%nN{NJu0)KkNnTH@I;6(tnIcbA|~p)NYl>66$%L0MUk;*U7R z526B!o*12xj?iP$_l?mZTa*3O*1L>Wf64fIdzCANJpG7YcCV9@1@*E=n@%X_*r!KD zM+?x3gYEkCNYEnS_-nkgc`c}~i`Pu}S3b+hX>w%~!?VQR7K{wGeI)|guq5;Wn?CUW zVgTq~HKFVVlH1l4RzP&&O2IbJgbj%8>X=zbMbG=+ouob^Mabu+7j z7~|@vAZvIhwSC6(zu|T@9Y>-y{1I?qcB^TNw0V{M2_~uzI$83+yZkyx#l`HKkI-~i zWXMyrdG|ZZ>8;ovC}RG6ks7=G&!dM@HnzRz?iDGA5k0|CV2_Qy^YKz;^HX;2iz`+$ z@rQq?zdP9OBV^>t2e98{c-@W2oBsH(&xVZ|g8AH1BBlyB-9R z4+fv~Te($?H-}=jmXD_M>UG zZ6P`CW*b(7r(^3Ts7GcyS>OL~B@z533$-02mIsS<7WP`0lcZtY>(CGNOU88d_4z?l zrg~~Q4tj-9mgvBx@7ihcjJ+N(j(3F2-L}t;qlw{Tgp}kc7@wYrG0D{v zs?TxA?1J_2)cTX_;$utJo}QktGrC#728+mZQ(SFCXVfIylB0kOPZx=OF!()hG)t$1 zSwTg`V6FK0s2ED;A_mZ7Jl;NiB9#a^S$+q-jIHDU`S}^ z4%~d;LB1Z#vrU7Iaq{9j7KwB%)GHOAGQ?631vJarnxLh4UWyS%0sQ8yvt2*zd90@v zQEd!=mE-(_pW}r40a`H#|EXVwt5y5K{ot=yDwZ)(qtz3GSOzBQ3y_$m@s)XH>b`1L z{+?RxpF=`M4|xgQS54ae_ywM6DMV*7{1BoYs82OHb4hsPHdDmcty!$sQRGsz z*pGYijhf*C?RL0=@&J>ZJ=CW{Mwcq4h@@=k8s=~xpFgKt*k?bzD#qeQaK$6c_u3^# zo0BCe*P6pW5bl-|m6IdhGji6^B|`2Lt+wY0Wny|Jutsv?x~82_US}?h5XnlgfJ!MP zZJQEW@%(8-+J)ZXxslKXK;X5{*`UrW0bA*mOKu01 zMN(X(@lLo~Xtuij!13vJ;oNfY$CiTyyCYTIh3?0dHRT@S=phZr1qB7EJ<^3?Zcp4H zT_HgfEj&6tM>N{9Gygl^#=8k1h5suz*pg}}iYHqO9bZdLkBrTR03o9ah(_k6Sc&TE z+9EH~hjGaxSihHO$tn8n?xqC%`lDO#L|kTH1z7kq(`aT|183(oAaHBBa7ssBo^&H* zO`vmgA|U)wB*P?4W8-PNH-{F`)>Se`YvRf^uG-S zg^sIdx5R`q<)fM;VrjNDYt~Hm&(4_irqmlx!bb*KDH9`oZ;N^vWF`?rU`RB3q}ip9 zk571;=%Dqr6eGirE}QiY4Go*`zdes}GDb%9Br42G*~1MSWGq2z|N5~puqV2QS!dYxsVOg*;-TT@1}aD1n~E|Vy`wT#Wr zvPx+Ex0F$?1_@oF}0Pv(S*WZB)%gfna~*01c(8gdU$36O!&3=yB~gdW7{ z=NswU~)X3 z?VLuAf6Rlpn7IiHYC);C9~{J|hZP!~W~XW4P(7W{h{R3}wrOWV6V?;Z*MvBX`r{G> zjhb`RHtjxLg%o$I8usnzIH=aSZmdmNHelS9=-PUky77>@?9NVsX`j@;#uy|vGo+nsZTbRL%bZXU{bTv_q?&Ul+5?D$q{qZ*N+n6H%;O^m$C|=Y zqDI)$yMmcX3a$H9YT6?93HT0Dx`;$HHnnLll@PK8ath&XH9}(7O1Fxk)90Lc5{vyx zBiAtlpV(qdV{mS$3jXlzH3=hYYA(Q`I+Q29J(7aoPCMq#bU4kNAUnIe2ji8h!qK8u zL%8Ak9k}bcxic^ircSa8@EI>SoB}nlb#7Mq4iRuRgrwzdhj30_j8a+liFw*xBcd%VYRoB~ zbg3d=-db`=M0^GNUxl$87KM8vIoB_jdCqBSK@a_`u7HQTO;r=phnq0x(z ziXh(8b}h$IOuqi@7!i{Zy(Ve$dzMqNvwHy(u?;o*;=(v3~*Qmuwl_6(G5g)IYfay63AbiP`s?7Z0F-iIs19h5~y2ET&# zP9NQvT~BN5qT($M+oM+`)k8+SPtz4K{#&n`7#2GK#n~yMik=+q3PYfI_rWsHEd*Qx%2#^ECiG}J6yr7$9#bzz&dm3)#Ox%whD<|agQp@kl6Gf0+vVG@chit{O4|=VaUSnuVatHLeD+Y zobm6gFyhKa-`Lnkibc{Gk7p%roetqDDjc7YAEY2%Ts!#z+w40;JhK z_WW;x(xlZ0wJgexF4M!>kU0$BKR((C0}y~vsGw)08y?&xlb6ws{U?^eIa5gn!N&2v zYHDU*EwQ>}cFf$QfU{Xw``xrNoc>I=mX`Pv4FbG_KC$Zu2%DUqu+VS)K6!J|+D{kN z$NCxtum1HgZN!Y*1U^(09*4|EA?ufcW3N>o82rhdrQTw%CvQFwx%MQs!Uy&AAsiu` z`S)odkO*>2I<_Xmj2_TbJL}j`6I|(B?9Vba%<%Y=oY5pgb#Ds1ae--eU9D!v<)u4d zdp9*ACZmNXeiqNv4X(I-s5Mh<(Hm(u<_J7IYWkSDXY-K5nn&OFo43oNtGE%#--&l3 z0&-IkI^!VsfH=iyb^6Mscc^1aw(zLFghWb~mV~&OTQ%)$eC|vJ1+Us?7Jr&AUfXz*e} z9l}$QX#UR!TU@={1P>gLiliRI02!|)jb!~N?&6cWu^PGR=qeq|cH`@U+q#c8r6zY- zkfeor@?`TWsk8{O6YaHDlg_J8-Z&iGY2ayi>IfHNby+y#upT+T{o6_K3h#o;H>6g; zNcQ>hkAArp@}$a&W83H+o^9{3vua>p$ykn4S1;{ujT4{?u9ugW-yk>LSCu0^Gp?CE z*&R)@8hNn6v$>-*DEj)rtz+s3x7Hx&;@UH2xB7bSe+g`b=qE%%-L{7a8PUU`b3946 zWTzo^Ckb9#_B%3$jb`y-jWD_;3mVkOJa^lk3xl;Uiu;C6)l2#E+WIN$Yg*Y5hrS;W zKN)_QezB{wIX9PNUewGN#x9$eFHV9lz-C-g>9KSF5hl`b+*1p)vxJ{`nP&1HetZPRd`>dcyJKgCvEpL9stsnzGkp(cT{H&6pG~rg^0g)$JW->=`LN(c$wl4_JOA_8$U~B_)$A> z0MjWZ>bL#Tu+C}xLuWG+ZTE6(ZI))dt6I@RguoWPV>5}KR52$8-Z8Uzjlp8c%;m${LtI@_Ij|{smRg_I=MT;d`sOm?X;A#{ ztQGwfh~W!5aO_ApF+5TSr6rz8r&~`I^^XNWY22)O{oN9G3DjnoUHh@nn^8EaD;_wA zG>u8zKFuG~+5Cl!o{FGoCG3tez$$|D1-+Tz^-#@4AMMe46A5#S zuy{(qEb_(U(~em6uF8Ba)wI_FLhL&~ts!YS_Jsj7p!yVl)WUoSbe!yJM|N{y^XAP+ z?lJqQWuYO%ZezXA8?Yw?X~lBFjo$HcQcQ)(YGH@7M`~2spWRvOGBey;FKlamXmn(x zr#3&}AWoJXW@NYR3~fia>DqKAIws}-aD(Q5KrT8=kfHnGL7B>I zJ8Ocw%{_Tk&iIqOOPvp7w80ld*C7nCzH2 za;i4HNAle(8((yM4lyA}hX88JD&sXIT1IT;umiu~^p_BDI?Jnu(Hk`Hg|%q=Nq^AGpev>$4oaA)Gz zdKmTc<$i)FBfrp56*}b|45*AA2t1nrJ$W5N1dQ_sI_XEqmOa3?1@idw7=QDibBu>} zDT>Pe#eJaL!haNXbHD#T^j-fC*p+{O;bWqK`q!Ur&i^;`&dnV{2r-p?B2b-|TXuer z3aMMmZz+%PRi}rVxgY8~NCNs0$4R|l{dvJ)##3!&k=d=5Rr0j(Fn7_DP){Q_wt9W2%st53|{;Z5(T&xbmNl>a7iPl5A<4wk4E7zI`@$mwjE8T$26NQ^eC_iu8J5v~xwDSF*zZpd znqGZSgtDpt%UBEc240yNO~_MfK%6YX$DGC+?eBUmF7fshIk;*-H z>^=<5$=UMH4zGFsFK?}bVWD{frUlfWj2+f7L zn- zp?H#w8Uq~Y3_=^x*JB1W>E{ROUxHm!5kx-x_E zq5yLT5ZF^h!NgFQ2Y@5Ch&NZ2pkbso4}VwNv`e-OO`*Ryh@dc@9JGrf{6=1 zMMJ0&gYb3RWF_jVIum%ahiSy)Op_`)tg8j?st4e0<*W127F`j(-KYbU-?sjGOl|J$ zv`*|!XN_aihln57|Hud$h&0Wf<_QHw!jQ1 zq`pca*Kv9n2uwFDumx8Sg3t>nD#ZZk>c}%8F{5p$ZV;wcAhquppCMsbcc6J`InbhH zxcoVm5#%@*3hBrkDq?NDY6d3kMY~^yC6U0hp=)mYGth={Up+{ysvx_ugrO%O&?O8v zD?Qkffg^;X?Ka3MBM!szj=>&62#}A~?@sxE&v@7{R1(^&l9iTQ)LsC|SeIH;B>QqT4Uswd4aU`P0A#UViEV|s9a=pLjY&@)5qMRC#buXnuE`|-t&;DBWG z1Kc^4=FokcAsvT~L(PQL?@g=9ChqCSm&CTA2@9mOg^XTFGeE6hg0?-%=CON{4w5yJ z)cnzg!O4E)o<-yYT?s08$S$VtH33>d2Zs1OR|9Ag%n?D50Ix8n{vc(Ozy}l`Y&Cnh z7Q^>qQf&%oJ86H6iEIF5sQ`O2+F*VrUoV85bP}Y!X&_+Rxq1bi`5nK39DU1LwcQwp z5$^!)*9E{}$rzsqQ*K&rw`T*v4#QJq-@oy{O}z7*oJ=Waa5E_lQZh0!8WxMMjfNM~ z1Cmy`iZ|;SI8EN@$!u790th1iZz+56(kBZ}`F~nOqI)Q@H zBR=NGEf#ko0Z%exG-Q)a2dkQ8^?6jJ&o(z@=UXVJEZ91`!8t`Dq^)w{aG4?O2a>k_k#rcbHpo7 zEtBTwxBM+^oyw1{+IV(g6aZ81)9Li~j$4;bOG__R%d|3j6OZKCm0g1Eri+V`~f92ZhaEl{K>0c4DjG&h`7V@RjXQx{RN-{$(A(z9CWC5YcBG+Ee^tU zQQ^7nwm2e4iVn)z${5Yx54c#1TS27{O^azRT=Yp5C3j7L{V!NhKnm>%Aw ztxeu=2epMczXnec@OE%;ur5h&6Ksn98{V@Pgv~pYdzLIWMXiMAyoBBvhn;7O(t&XU z=gR2Jy!Ga!@5YzDsy`mrz)zPThUDbtj=+;095g$5@+9Y;J==MCJ+S^8wrr`r8Zxqx zN{i!S(ZgK|B0zI|_Ue_3pC2PEebsk*(`61{`rhr^Z$V0y0O}JZZk1mYdG}t==*A(B zz!Ej4Run%KeDwbPv2*9n)xEy52p_BsKB~7c6cU@^?&?RCk!O&$)pt{)fBw9Vr42C2 z6tNkk@Mis72>572;i{q5t-Q0|nPS4#M)#%CN#|%eoZAGCd&En$Iyn2;^ zhjII6SwllEu)^AX4e4(uo>s#|e#y2I#y*aC`SRsQw)ws4ZiUaNy^G3G)|=zww1c5zIIE_{YTJy@e+vfyz*Kz-;|#7_)w z`x-MuM1w_wAR@M@9{U|6b+_7)pBLsB=z;QNg-1r^} z3aYMd=aMM^%U{yXcZ=B$e?@xKdscmZclaVu+=48k7<4%2-n~2c_&kyE5aWY8ViYl> zV0W2_Kd!p4CE8c<{CQIVE*tP&5Mk50B2&Xzzgo2N*h73`p%W19F5jmX?C|?%nf#^5l(4GcvN4byu%m zWrSqed{b%LAQp=cit#3gF*U2ch63!w(=d!w8JWu{;*AYH>*DNu1x4`K9=_;JVLd+U zu~meIh>IAzwd~@>n6eyDOQX?lfNcNrMswMNwX9dkH3$lt0va6x=$?4_-R);e8%*j` z+z<>VBqln$xO87P{`;|RWM@YLWOp&un3dh>7auwu!0v9`y!p7j{b2}WHK9mHR1{Xi zmzbCcY?|rg$B$V^!MAMPaq`ruu(&vPm@d=dPI;u`k~eM~T(M#Wms*B5E>*bM<(Cr9 z#-dI|))O>J@)?=RHs%>lDlOb83mol!;HNuw>=;K8bSF}h2bvCODsUJy^kE3+apf@87>aNYF6u z4>U^GY*9I}h_#QQRfnosuZ{SfHJ@=$^tsInQ#vMef>gnx)iYYWB<7u|t82{zB z3|I?Uc&12A_Jh}Nf*OD986I^p8xy}|8bMY$r_a!^AC>vtdO`h_i6w9ZX=0M{`G>J|Mh=gCf4RZ oFIZeBGyjzS{^f%IzihRBpD4I+w0l%Y%^m3baZXrMwx zWX_aXgbcms(%wD$d7kg@kKdo~d%TWg*G{?b`?J=yuIs$c^SsuTgX+r5={e{ridw#Z zpTZ%ET8jS`q%B#D@0|R^;E3O(9TjyP58IhJx)?j0qz)K6p0>7gw6-+ibw25E#?sDq zi>QRS=vHA~3rEM(XQai%Z2tTUQ9B27v18K~GI*80PVYN*hN9TR$bU5Zoi5&{XeesG z!fq|s@ct$jSC+D0bi)${2i7lI!MoruuGsA~y@jf*3i3>>nk>QzyW|(K?oN&3HC!0S zf8fy=A5HAVu@$-t&R-fcNbVmB>Ilx)d!_HNc42dJcUzmSi@CG2i|v{FVV_s;W>I8T z_>W&2%*X86y#4;uSC6KtvK8Nd`f~f0!oQXIKYhtM)!(@HpI*!_Qo4WNf&cswxSV4* z{HM2xj%ScLwDLc_P4!`4uEZ<<>3w<Si{mm637UM||aWsCjbmmT5KPW15__sbIx$DbbmcBIEqnvy?# zS{z&9pMCw$8fvWl*Y*gRa9ms5;x#Q&H23q=33Kz~kKes~DX*loc(A!J;M}iSw&GuN zGF0nb^T=nNZ$dO5X(cM_pWySwi#>4Yd|fj=JbXHE#ev((A)@*z=YDx5)=K_)G+DWS zg-*hf&aN(#5^tLNESs>;4vdV9A08iD>E-41^3|)|cu3nXImVx=@uu!CtExOdC?bB? z^1NoHWi;L=Os9o{M}_S@|N>v?9g6L+SDH zYz7GliJ-h3g`h&s7$xHm37Td4%lP7R^YdeNUtCPq@t&mRh0IfRCf#o%%JhZ*3EJp* zj(-Iz>y7D&A=4lIpKGR{>gTr)75}=d5|@@&=<7=-?cDDd$R*QW!E^2fwxe}$aL!Lf zRY5_q4c}47wEB23UY+Y@r-S9xd0IOERINXou<&08PV>g+w3ACSbf1iQy$#>7O-8dj zPD^NH^o+7s8G=KgSsby?zT+_GtVjdozocw%#DJgc(=^thI@PXms;U3@rTE5(ecS+5zn3pg2dCZR2 zSyV?ax^UsbgM)&+OBP@q#GSrrSx(~xq>l{l`ZaS{rLV2+{D%)(`Hjj73ax#~#Y&A? zHkwg;7UksTK703$(dpZVXN`8n*AO#xQL}*@TU8o{5;S8f1AmRz8CImflUs@aUUI?v z$3UZulUiVZcgcBL*UmfI2V<0$ySlkOZ){v6qMK0?zT?b;Y761f{p#xFS66R&UvT!! zw2M(%zP|>r)_?ppNVo-Lw-| zZi}v4_oB_T$bCZ8tm>W*wvBJyx`mOEkq47L3K|yeY{<3?dUZ>nqdwKt`TNV4FH3mN z&7Aj|{TYRz9v&UNuqVnpJ9|5#{leP_nT}f;a?cQ%QMJ9CqK&uuTc2HImvI*6*lM*9 z&m?$91?wB5m+Rmanpo(|9eqD7QXoxZ?^FNrV z#k7znDk@5+z%@0a5O0L@%OyH=gI~Gwhs*3wC++aX|3o66o0`4CpQIhlcQZJ6L*XjL z)R#Zf&we*k3l*oywrk1Kap```^(FTV-SI5zXLW|>uEnW_MB6lGsdpB8OgR+H{%G8% zp^=^EH96ciiMXPnvTd85@y^2E{JnAF($^{Y`$?EXpY*^RKUQ>mgm zcB~E&Gc5l#H?eDMsD&qhP3&?|P|)6!l=s+}<5e!1RhzV*I!YbbjnrW}GdZG@b2_Rl zucIQUV{)WJC*5p09(j?5h6YtqJMcDHI`JQ^ZbU>} z3k_ut-+6Wgo~3-E-{ul%cU`R}{C`DAPzHebs9hcL%B>z*3V%1GHYJRZa6 zk0}p~cD{*Gxg&H?kR|8r_YFvPOH0JlPSritPc<%GJl6lYHfrYA&pxrli%-=yl;X$) zczaV=u(sECHc{T+J|@K|2CS;FDB5)N@#zHq@!9E#RP%S-y|aGI{Euxz@Sto4t~7KE zoY#Y2o!I>0(UGMm-vlcnmE*_=UX#v8M#MAG(lK&hN=~*b>SR)67Au}f`_NWfQ9*}P zbwMR=kE^R|QE$Y^&%R{Uh)gU@5Z;x4`*t=`ikzLdQLV#mrR%2sja))w=vtUc`bFfrl#Io5lTUpX*TL`?fB=bk-#kW>S6a-=T# z`0VFDFCZXr{Og(Cn)PEn)uq-aOp)D?)oJDAwG?&6}qO8n*U^OS=^Xa?ASTAgI(OAy1IZaP!u!xV%F+ z3}XY0Y)RV5i;Z#wcGTRE#v)*+?ld>%3H+&W)weGGx6Kb&B~sZO#4fR5&30Ro{Pk}B z>Z%GGnVTL`9daM*Ip13wA7kH9Zq~>p=fQ4QJiG1f{aryw*H`f)C_sCC=vhabDtfA8 zXsC|zYo*=y&jps0$Xn`bX|c@A%uwusRrNRA1{yLar@HS)X$cK<6OkM!b2> z16EG?+J>G-z9~F8nj~@ZHOtjC+ZpEO=4!U>*s)`BAiHJwmB4*o8JRU~qIxBv5~h{X ziVbOqirBcgwY)zbZMd1Q@z#SyWf!#kJ3Qx?QW7V zEjPkOQr<{0#wY`>9oM#Bzjf=POY>Q}+J^`B_SVG3%{cehpT{}nmzCv`j$q*N9J_I> z;$wl{F~iG@Jb^fpI6@1Mw}XSl^z&HOu3f8se~ohA-7QzSz8;X#bm{xFyf$7#8Lw8A zRrU65d8Dj+itC8U%M+Ue3N~m&3Oh|Mr>B2DGxfbX-CP3&Hhp08=FKTM4#I{-Urd^6 zPv9rboa{%xz6zDHk1lii&^Jzwp$gNVSPxa*z-Ss{JNqk-$gl2#u5Zx!IzE5okEC#L^ zlp6+4Den+Nug}r6t{)#A`Ce7ZjEqHspMgj2DiWaze!8Ttjt%))vhTz$qY_F%S=qE9 z!!mS>dEhYttCIK3Zu4*mDWINn_q686kP8kOkvmMEU076~c`9Vg>-nX>P+ENz1+1vk zXU^=sFXx$p6gPv~W7Y?tb4>0{un76?W9QpH#>Nziy=GIqX5Bo7pV6s@Ozlr~>O0yy zj#M*(I&^$snb@sY?{n-;D?=qp2lrABYieqSk)ceh?rmKa@nd#&HqL!7);X>^Ia5~z z`1p=pGjcT|M%Sb34@~NL_3u7HQ6cV-F;LebI@6N(QFaIxc3C$`WQe~|(H;BinGZiy zdp6jVk0RK2uz4w)sKTB-3#bPGjguo4JOj2vot-`in*(m7zQ#U$*p+`Db-@_nHf5`w z=V(cix$rr6QNyCEzviYj+;*9~Sd!G}IX#eF(+3no|3o)4EzGVWkgH018B%_-bN2S1 z{ps%x<~!T?W{F(o@tULo+|JHZPt;Q3-$E;IYb$D1_w?F3x#>zXuToz|-|Xz{u{o^J z(QJ3E@wf+^Ps{^rdL1VR^M_(505x`c&5S6gzwOI%J$v?UVNgK8UUl`rF}Y%Ci!sTd zeV!A8`n{P+@3f7K9(<-vW3IdFQobvF=v z?YEz|Z?p8b6!UB`tCR<-U}9mp6eRa^$(1WtoWJX5S>GM|Svb*rQ7!nFhNsB!tlLW3 zZ(qN5u*m4DGjOkpDxmou=zBcdR?)#Bt;*(r%vQPS{&c|dD`nfv--bW)S;|IH+}zwi zTaRly>ygWg8aJ`fr!!P4mZ4@{T)aFj|G@XIs;cJVpWl+4-xcdVQNlN4Cs39$^O|BF zi7o0>lRfhS$H4x3*MZ*I4~d7DhM#M$PI(t8dptB+mR0TD-K2MQZ^Vk10i^h5Z7pOA zm-B4s>ZYYWJ=Ndj6gu(!``#hcY3+mm6ns7*=6|;#ep~IDIguHkqfnyWF{U#=`mVBX zUkL#g0EqSd3&U^UUgspf*c(7nMlTpqvOihlzFfr651WPzd#NFVLN@}RDUv^NNRKtC zvnW2+%RS^~cj{~1MLI^6WMI19)7|@PO$z{rqNAhxZ4D77w?*|Eq6(JA?7y|)pwJ!X z?2Xz_!#__4iyZF?OYU7#w}1csRed}sJvR!Pf4j@C))yEQ#F*#Ud#JU*!_!mqiSE|k zS)53;Y;$|=4DGLbd~8ea_=QDF#ZP?_K5^ni&N@5uZz`xkBM3^Bp@C~EHhH$gtOu<5gmLNRV^u?_0yTZeRS(=J1{p%iwDj~i(aBgpb?IVX8e{!AZOXQz ztyZ6=4!j9JRh`l(dYz_FzJx> zE+VH8-0st$Y=Ax?^|N`aX4uwKtG?AG8$QTLE}oMv`ZediPC#HUi=xNqD**zrtK(GJ z9DCl=kh4e{g8u)GyK^U}av-OK>fS%)M1$^M9lF~K z`Oc&4>V>ob8=c|UF&_BjQ`L6O!IL}DkeI5l@2?nMDWKkpjq-UL|6p$D*IaUmB{F_MRoHe@d>j1`9fdG6Lf);jxF7oG=b(0FuPIo$4pJE)k`6T_Ao2+e1(Y3w43{gNEW{r<^QuqAq*GfFJ zh~&_h=3igl@Vjy)H9r}U!W8|D`kkOZIp04-_}76ye@aL=l5D`W#r*9H;IJws(IUs* z6~LhuSvE>amsNix*7bdFD$k(J=GV=%^1^$Y^E#@(I2Sng4W z;}3S#d;ctrfPk{wKv!4S&7J0GH1XI*I038peQ8Ust=T?YwY`NfHldQ1D;%XGRDT>l zlxfqr3Jv=tIxprGD@;=5)~{dG_vy)AWTfgxM>c&a@@$OqhMEjXQnEc3rMHGFgZE-v->qA zT1}RSx$G0KZu0F|TpQ?jRz}43bJ`-{5^5R$8AcAtmu7MgD|T4dr!3%#5%f2U5WKGx ztQaza9{`wM&hK2l68S04U)(&4hD@;993 z*0J8&nrW0y)#T~%J~}%)yRfNH?(PoftLtBN7#RBRnHuektHb(>zB7zF6m=kM8`&BH zRRMGfYjQ{E$jz*~Tg(~o_IgD_Hy?phA*U@7*tpp} zSxcy@8To_<<*sHrMmb3Cro)a$h(wFeX>nuC^_mi*q73)|w}ZR4k0x1i3ur`MQjb4l zzyCgi;xWS$o4?-=Rn&Am*6dRqt+=#z{9}@KK*4wL5;96x+0O%&SkdCV#FClf?A82?+UvVV zG^DYL6cYAr)}do_9YMR4^z`(qStkF|)*3GZPPWR_bvp-u5%Tr84tnk~Rk6Z#g}=JO z?7+f)T+rFsFWA`I+go$$+__&12GV2CbcM@4`u;KVl=kgS+6>h7u&{uwr#^)?-9l(j zeJ~LF6Z!G0{}uVHH)P#^5Q@(gjlu}{jIPF9apeE|9;1J)5;G7MIrSw+;@;L%W~nyQ zKL)Ck4R`g1d}bldRiV38=L1vW93W zE1n$Bj-9}pi0QPc=Ah`BfdAa5uAY^z|GTsZ6pFq6zCPrQ1el}VS>ThDlW$h_7RF4h z`)7^#+|mU7^Qk{)OJg&LhxMw#Mz3zJU&6qkgy0_ja^@W=-^1U(Up$(m=;$b^9=Y=h zX^8Ma4(S5;3G3xBUEtNJa!2Ee^R}MAcC_UMV2({1ID-hlEX}$?yr}yJR2eH^gcn8-**&T;4`Fy;pa=m zG*fg;jQx-PV*t~J->hXpzt-{S{B=ZYyt6aJFj)H4 z5F#CkO}X^)a>CVFhLQCG<)-L$^&u&~*e4UDRIobL)z#!F2+qP2&NEI)9|;HfIo&+f zbJ`gYmjh||1z@jmC%-?R^Wc{&5i%~(pfGzrrwiQMX5-)5Y6RMqa0SRo6`)#EPSuHS zY(fKc5KXJHTV+rHnE$IhySS0C72?$+-lv^Z1-hog8eLY~uosKWz$JYNf8s+!OSN`% zTy$yi%-;8AD;8;HtX6~a2Hl|Y=DXZvn-zGbiZylx#;JNS)%%js;x6C5eS3h7-0aw4 zkDtBqibuEov)j?}T>m~1%(;5DKjzR)>ttE42J{WKYoKQpGD2Ty@g*m<$_6OX2hEZx zmZd)Ti~vO{OQ@WuTO0i#U!mLhh2r8}*vzV6bp6j0J@Q779S5E+EhX1_T~`zl#wXI(p*B;wEa57uU`rcL`d^uA^F?L(r}=~hZ^vXxfSy8eB% zY35ew8iYe9QqWFB>XhwJUta)Dn<+xbqPZZqsyc~Ao@wESByGm~UOzYf7;NhMkjipN zCGI&G?kYkeE?cv$vbUfi%O)TtMO+Q1yYuy(^!z6fKHNZOkz>~W;)?oE-~OX4f9xj2TKo$tly6wj8s)mc4 zZ{@!1{;$)|0AVyWXX&5sj7jcORV~G_0qwRNRO(u=QC688NKy$}i7PlHEe`fDAM5Do zAo-L}TAF|xbW_NGiXcWbi@iK=Z#-PCsC>8p9I788mQPNO8>xI4oCVke&7`9u9}pn> zltVmk?i3j>6GT1+mVXAE%gn>WxSOeUXebCdIoh)J;gmB4X{{vpO!sN>S<1`#Hf>UU z0kvVSTLVW!EH-du~=jt(lkNEIZf6ak=lIP>&&F$H4{lT-5 zCjVyv_W##_|Gz0|f6hGdYQ>TZMk5*4gxZS?$8r4AlRx;BfHwmvj_|c7 zPQ>;xw4O)(CtZ6_Z9F3(@Y~vG{^sdP*+Dho^^bltq54$_Y*T%{ix}x8Aik{y+xgQP z(&3|=07z#F3S&A#kFq+>bicjZ2>{Y{Fb}CdEUq!dcyEzqdq+pqp~T7>))yI;wXtJJ zj8nEe92`G&G8JoU53nerm@R@PT$W?s@gAK^!bhw4Z<5T_w-hwLEaK&hzPX=85xiY{ zds#q^>j>W}Q9VDL(Kd)Kn+BurxaQ{OP68cDoSXBo$ka`DN=;4myLPP%!ul|Hbd&!2 zRKf$|1NbLqC}bT$E1DA^Pd>6%yG?V!YU(|>ssJZE9uW$Ggl$qqkzG)jr939Z$>aW- zF8*~(`Xt+@@@s2G-pUN|qM@-q3uWZc;luW%$44)M?xgJIdR0is5qpMiz5KXAEz}zo zb(M?6d=7|Q;$tK8cDl&}nP?ImVuWY~Ghm_h25;A6FN;yPPmHTjf%H#hQM}5_!_nB4@UX z(vz~Kd1VDRcOa-#`3<+CT!xy>`b+60g?!!l?WQGh<`8uyHA{0=RDMW4K%=BriH`_ zf#5C&@3b^iBRV?vXwnE^U|WPsGfv06-QtemQ!ANIR+&1a#ZNC6 z3r#j5BFD{wFZWn#L*gdNC)m3ApJZJ#&&~M4Ls0tW%~Asc15zzwl&%e9$>&>!Z7rS? z`Vzq@U)?8~TvB0*ph`d_*>_d0MloItq<;yx!|FrAc?h*!#IA8Fxo|O6Uwm#?v*$!p zyYRLfN1!w*0s)(tnx@(`ZY!8<4=B^0hrH1%%A`2Ra^dLlim)j%1KtpXPEq&I&Fvuc zJt(m#;GW@$2_m`&5YS!|r&_c38gScld;ogANRV#?xkU>SO}zWv{fg}^9v4C6@QaHx zu?lI)6E6p7ZR^IY<+irAz~klKG_*`>)*ScSviqx>UBSp=0-zB+1OlJws@ypE8<)(l zXmjqFc$O_3=BEBvuikD@>;)Yc~r`Su@>f@tD6naHS7v$GqsNBD+=$LSAO+icd;hwl z;zLwuoIjm>XAuR>%It7-X%%RWnc3Nw0Cy8+jfjtE2&^CO0MRpVTLOHJZ<^V%WeaIN zmRx9c;)kMAoM(x4ut<{m)LZ}v9) z3KUK5ldo@|2TyejZmAl3sfMI!?& zS+)$obPse+AkVhbT!I@(2BV=}{D2rLl0FXq_@M;u=KWKB8M22t4xRpr9JPH3b$uj< ze|a0f{tAF9qaO)+PetOzrN34lL{;^uy~?>`1z;Z?MN+SyzyIdr z#VFMqyHYBua~z;iuuEDn2_1b*mUwb%Dhf(I5o@mBy=%GkfQ3bZ)@47xC1Gbl6)nHO z`*k|SV)wZTK}*7XVx4(V<}ZeXuz{NZvHc$Pk7N=MI2rqHO-OU&6k^x+V)q{$N@QBG z;sR_spni}BJ?5smr-EZZoH8xk{m7gYD1|ZC(-{L&ct|*Pwo`)rX+hT^?fFDrk6OKONfCh2lSi0Glcd z5Z$t+*2L4M1@w#I61_UCwd*edTywBLT>q`Vkpb$8C$JBFwyvl6-`Dreb0ncvM~tHT;KFb%grq>;h>-bWfHc{hErX@ zKe|58=@hd!zV`wqm~gxC!8ebTW_`gE(e&O^1;`Q7KBSVkXB%G@X8@O2-v zcRhkL|0Gz6RWyDG>CC)2pbrzYR0F|Lkc3P?LpROdUN}_nUA<`B6JCu~y;u9X-rW}i z*Hz6|h4#8EHg=unlcNFD3w+GywmXnCH!NT}B6KJ8`t^f79S&n&d*-)z-I+1>5u9^H z$^>0yWw2qP+YuF_LHbT4)%BI3K3t(*;O}Mh2SW_p_BRY6a=FweriY5d%7h-Oz4MWs zD!cRQ)hiRi+?5{$o0zRTh_+X?@sh7^qi`uc3SRp3>6DM-KC?|R>tH5hm6eqp;7*E< zk5`ng?UTZx(-aK}i<5|KM0@NqyQ6~-AS~cr20X?Y6F~c1s-dI>ji?T5&HV0Z-}JZ+T_yW zW00(j{P^kdv5T-I@^9X}0(k0@o@fOcb{p;%0whYrpQIJWKV%cpT}Zj&_{Uk^;<5)J z1sF@ogAL1m@Oz=9o81|yOJ5QZJ*mylqFAEnfNsE}?qQ;N~E z1s+qKA)+n2s4s=?Y+w+uk5U&dUL1kpuMM2aJ~g!$(6ffYoWQ9^yjJDM?Fx^qJL#$g z#4d16vKeYve?#U{m%%T)4;@+ov*&rF&vsx&-;j`ys+|ut?gs*u6hJE{E)8INVrL!u z_Hk)ZQ4#4PsC^nujV5|6N!ntQ)6@AqOXg|bm&|agEH>J~F%EiVQ=#()FP4Qg0BSVE zuh1>C_kcn9?9qgSG)Eq3*-J%Ou0HT)P)PU5Dm>_ONEaxFR{-eSEAMXE2gMczkI*#> z7cFW-qXUj2yXr>b(xjAP_uDMUf5`=-^styPv9tR@_+JhQ0Z&a}DB-yvC^d4W&Y*dB z?T&CEgrhOEeW223cvW%px11DXd`A)Nx`CWKOt##|TJ2#`1YB9Rdh?4+I+gjn>~qtw zF|`_4jfTQ`Q-+s_qVUrwl-EDIDX&((XOL>*Qzlpm@JCAlIx#^hQ13kcfxcEwr`~xC zhoO}y?SlR!&BB7^iwNn!V-oA}ZI!qtXUEnN3k@$VC>eaSX5VX6#o7=xBx4go6CBZF z-AsBA@IJavvhG%p@P$Xp^7hE&q-(g8{epM06P!RpK1ewW#6OrGhrmlL9Te;nd)J1% z(RaPApr8?DGWZgbLC_B6NFjrK=O-Ce8oOpsq+*5|yuT$ve#OytZ z&PPiBEh0))gDL*uL*2*8+R2fUKWhQVgg+S;xN16{Ig>uMZUDJQG49aD1x)9rI@yxu z%l268AOdYrYl=-+hj+joKukSu7M)962F`@!@osMIQH2{3JGIdvl znV-o=id1a`F0K5w4GHQ_*5?%Ci-$W?d`LfquN^-MrJx0l{rG|G4*anB`1Z4-CjzST zIJcUXFWWePW6z}?5*D^84r*W6;b|5{&3mjBQhP#gY*LDy1Iw(ilbvP?v3Rt$CHIUn z2Wua)@%H)0;3*s84hjHYuG)PHNJ2estAR3Qf|s!gy!^1*;ssoS%-&MY{W@V&SOry% zV^v44c6RvvcFljvjUK3f=~x~IuV0OI6L6>S0;WZ~nP9)N?z-Wk@C{(08b~zSgGdyW z($Ef8Dr$N>R*Dr>n>O+qJ*Av{I6iQR{4#p_6{aR8*p*^0{jt$ep_(6GZ=Qgmn~zEb zxuzbsh3f`~cMjT>u*Nxvn>9nrvfkq3B*hlM|F$dswaHTD*bUL~tMMxzpYO?&CkYpa z_k>RU42Wt3Chq+jKX95@hKi=2D(2yPs(tw`L$+J(Kpv>w-Mokz27c7txiyy*DHLr@&>WP50~9mIeC6GK|epM=|(Pb`{5|lrp&HOx6eht2QvQ1 z1BdzUL-QGyXBT+Mz4G!@bbxhdaa_|(^32zTB_N7NS4sK z-?l*yejzhdK>NU=y-ax|zoO$gd-{TupVR&^#C(vTC6v_1Lci!T0~b9-kUe@Nk*pm~ z-)>7jj~H>;I1g>zGUywetxs^;=rS#|G~?hmMGI&GL6jln72MarNwmYK7g|xI??I+J zm};U3n)O-R3^%KG24jOsGS}?aSGP!WPPNu*>{5hzNbx69!so)kpuO&+F((R+qPG(} z%?(VijGAln^jvRT2n^-u+(*dHHI>%~qt@t4qBkfxiLy`oyOkdA|GW~6EFk>lV z^75g?OR%*U!!SyLbPhcxU7L83ZW+7L_sPW!oE8(4AP}6W%ZXQ@G?`|pC)cSyn1cCOr5Q7C2B=d&HYdI-Nj^!xZv=q!SepTf*^BW?> zQNGc{ef-;^yOmD6+U}JH1>LkSej0ep4)qc3040wiGEg1>^iN9xF}<~__;SIabBKHW zZb%$tCWLYY#Xw4B{C5K4?`^lUby;I7;16Ncx}~Veq%f7=2TSTUF*xA3dY&{&7^bgr zwvMgqiyImTL87#8pWo-7$bt`WhN(&!1)1mde@(+uvghd0;A7li7sRsa>m#3MF|Nws znuXu2rVkoyLuE^IUPYAbl;&oGB&5Vvm?u^g+u7d-%JGKuJIm63&>OK57){DmJgA;7@-2ccx&+q#p8 zb&#cNoRy*l8)hUxc|Ajpy|H)Q{JzVeI|5_7yu@v9TvEI8xpU`yYgx_iKeY50GF!AP zB9tqtuJ1-@s2?myxv|Th{%k6ZgdAzfqxcN01HF&wfkmkO5VE8C8BN4ThxCDZz14^WO2P>FD|4$MPLxF2DtbmG;uR6rJ(+Yp=*FK$f?fdLRO9lEK=GCjO{IzmJ zD`qQpFsGL-i1E1s^;tRa?X?Y z;Kf*I;MThyQN<4q3}&jO>JidDJv|n&v9Y{REG;c94+-=Z#Po4oET551@5(mVaH|a! zYLQXs3b9Lb4fdU)s!m zKUnP1xwnv&mMmXhh779tRBs2+IH#-|3z&mF5aADISsznFOY?ZHvvXfc3uaz=D>ij} z&`>I$Kn2}0t@#ZwdRvf0F&*>#A$}=AXhS3^VvWc70&LRDO&iM-ABnM)o6=0wB8nn? z#yce2{SplwOz8`rUOUdCxVqWndllccW8cd!O-+H_9svQlKSssZ*VhzkIk6{0$j0$= zYXzUQtyZQ%-lo4b1zy~Ah8YxMC5WQb8wNH=_$g<@0dX9<#OGnSAkQL8nQfcjj%~X2 zip=9+0&`@PAQwoZEh-;d@|y> zyMd0!*Lf`3_DyD;T(AGRw^{Z-fBtO8da-Y}<%DUGOm1L*JD^%CATN$oZh6=0%j4y3 zkeq$jm*0M5saSzG+-@`}oOc@7E7nYyqj;?itN09VE&xQh~(=*GyCNA6hGoPmyB!pD>B+|#{`--t1cGD_E z_c0rtEuOA*cPBMj6glC0jCpSCOdfh6wBHTYT;7M*vrd;{zP2Y&9c6Ncw@EVK|gzucL~Nq zo}moHc9t*xir)Xhk))$O4RrHFXzt}0n+ocBaPVbfTNkh7_yB7V=%31VL%@bO{NLkL znU@C*%6&yA`afTUfhA1j3~TMN5YD@WuN;E~YwzB_N?#+_^T>H@M#&?qE^yEvSo9$b zI&fr(lIC&r>wX|SgbZkO3Hx@1f{A8#p9b=c#mhMsmWaO$6ZEIN(V4fww?@?m zt15g|nO9VOegNJ?c}$H`-hiSE=nrc0u3u+*dE)Y}?c42|g%8dFDlRf|jZVW`9?b?r z8CXTVub00U87X>z`Q$bJ7^_8ebTP=n6nEerGNXa%sJ&4Kjo?+B>N36tCXW=zlHphj zAe6nm&!0aZMhGsTFv39(teZYwzA@7JKpQQER%Kh=YUS4qjEvdSA0EpF-rgNk%_}F@ zY`Yr%gUWBgn|5$~U>h^s{nrI=yktAfmnAs6aq$y0t$4+9Xy^1!Ux;5E8}j<~b2PRz z)VbMlHsr#!OBP@f1D4!<`(CbWJR3nWOOL&A|Gp+@S4n+X7m;fZGQo(XU)FJl+y5en zU0QL+3r@k7_n$dc0PERc|K@Afr^vWh!? zId@1VdA`HC!}6mckY?|3EiVU1rS-j?6)wa_n*4|^ivysj!} zWaBr|yrWe=B@MguIIOn$Q_dw-`J{KVPQ5mwOz-||0B&-dr(2u{ z)m2momodQOy}W!g%5#(1Fl^#pVH!8q#HX!NWG35qaCIaLvL2j{H^=6H1AJa516kDc z=$F5{KJp6%`mU1-FDd-d(QM4j=ZQqev=BzhiY{jiBCMrK{WL$BJS%|F2|6(kB`!J2 zdO|CfaPN2-${URu%Kw_FhsRP)7Ga)>zU2L+`BlbiYAuca$8X)bWe*xGsqfpTCjpQ) zs71f3p554tp{4$&{JL+_+B1VA>sG^8_o2EtMPk!%O7$cNg&ath@Cb@I<+Q#$KA**c z1b|7X6tHoWJX~62I5GRyDY&s_W@oEvcD#06IKOmg6Mc3FFU2IO_o2jvl&|#JHQ5`F zX9;7nqj%V=Ka+7)7FUyFFpqnMkzK^5hFkYpi1vg|o3TW^0jHyG=^dEs2M#74T2C=1 z$E5N*!HH63_6lqBeBJ=*a0Qa0D*vu`NH36gYotwShoG@Zoas`_pYn^gs6K7kUwIZo zJ?qx3(}~T6v|KdRwI=K=U>VCijweGb-)b|+$N+{M`-7_zAo46(vIKRkLYc?&5?War z@$ie!i941kQq*Pj20*;b9Zo4=?LZEanLnxoR%xMYH78!zhq{x&Z!`xco|t|sni*9M zJNd09ZYd51Bjt*L6Z@fN+58GHkERkF_fnU^;WCNm6{-1JH*A=0c3^C`R3dnPO zWxE=+V?a(~Hs_6`-62_8szG zyI3;t=`>!q10O7HO5E1WYy*zvy0Sxf9z`f&;i6%nDdC={fsOO=V_`=Oc)>!uExRT2 z6dPPhv?bzJBiSupr&13WK-m4%FJPZUrVt7Et}og=;W7&Jfb}B)j=J2)omruURdP zgtbS<$IDP}mr%sGj+A45rV-gt#U`^{=d;%CM!KbqfpbJ@MrX2!B7@cFfzs={K**84 zq-v*Lb)??SuM_W6HZ?jd+Fb$;jbdNy)0pp)Ja&9pqr(+Hy#O+6^K$)dmGzj0*+Qj+ z7CE8t*09Zh+=xLgsmHK5na)S%BpnYLolt2fA!3x>D$lWe_2z}tb@UGK78;|P!nHt@ zWFn`NW; z2IX7-adrs3yYW}JN@JCfG^Zu zx?zwfyldCeObj-a`m=6&51Vqj<<)tGFhtY`jxu<}tD$UFhVNKOW+5>MN-FtCyCShd zzz(MbxuHy}9A2rLk+(hJfh7fm*r@OnXmXx|F9`xleO^~rXSRckCBO{92O=B1T?J62 zefx{Q2pNx$fHf?GDGL&%pcdF+Uq&A1$?#paK*tB*=3;}7r2+%MOsuRvkXzuDVa5FW zmhwQZrPLC7`m~0#&Bus4Pxr}X99c3tq{$LBKdI8Xr`r=UF{g~P+D~)c?QoG=XAL4b z`!w?q+@rbQyno*;WT^Tkb+j@-_J>TnL0beOHyGhhOBflI@zhWCaxW0k6Oau$(La9pXE+qZ6`r{J3u~>}^yK8e`@R5s9nkz}TJJ6H0Jcug8AHme z$pf8}-udvb`8*KNoU_j45<8xy=EhXduH0FX6LB=DYJx`h@ZjKJ!jYs^;G{Zl(#bxV zf>}i~&(RY7AXdf{V>eQsKP3@W%xl&J02FoLXy0s@Ky9#e@=m;v#h4e(HH#dza9-vh z_7MP7_#Oh#7hFKAjSZe!43MyTrtOgwH7}ZKk zsJ7_u%Eq}0tC&T9<%jJ5dLk!?XP4;FM_R9<`dr{o4j2P75Y*GvW#;4#uqq)bDcRBo zt!`^7oInhBjKNU9jr>tToY$kWMPS7OAQPwV>$8}xI)yxDHbrJl)>mvsp!z-yDeO}x zxp*u#mDOBe!v=qPpFInC4N!`r3J{@4A084dLygGb?a=TQ3Jr#Cnt}tk$j-uYd&sLX z^OQhyp3@s!0{~?cP+1?xHs4i)|AHs3J{ki>N5AhoaDbI=Img$7{bUOJcr47`Y-_e! zo!C+ZZA$=0?8rji#dLJXMfMs)Z{Miamt1)6*TlJB<~Oz#_gTCFNn;b7jhX;!X6>f8G1D}wk6d&&I$-N5U5gCP{ zWcWiLOj~hI_~^*n&yY{VvDYNKfw8&(=Hzdpl}vI2^wtQzd+0Sgt}Tp983=ZYj~9TR zNyY>VfIg+pbS(qV5n(q4nCAR-kd=%K<4~QD|F$BP4_H9cr(OT z1?fI1$LFwzV;B6!YQpz{^TxEwu0|xA3iRL0efAh{F9v^QjF>0$cEEGUrkddXJSN+G zp$0ydyl_{Rs848<#33t_?1uKiS0(O3SlAl0mX`=)frC&6N%8%I-LwH?n0qRLzA0|; zo_FEm#d|R517d)Ei`lZbk+K1}k)ZSVWx(JLw1_|y>v58TU>k>Wxi{_*JcvucXug0H z1YR}QL)p$fTm%E^0L3pb)^Q0ueiT4vO?ND&-iR@X*x+D2&$GUNR(Z5t>)>x>(Tv1P zEOS^v-*!m~qX(s^vZMx)E;PZgSdKiWmXIdk2=Qiy&Vz?&2M7_Dmsswy$B z5E&Hge@5s)0@y~>gruhGSejBn6=K}MJd!3T7x4dh(smy<19>|0A{h~Yi~b2lHXw&D|3Cmt5C zhM#d4toTJI1^Yogmw`1T^VvkJC3nUUPfMomau*jDat{M=!E+=-0*6Be(t#+<`0q`8 z`}k(i!fJkD##~=EI`4G-&ZQMYoUmZAyj-(Y&*n=Sw95Y(jQIX|HW`B-F@I{$d zX@slq_1^~yo9}~xmqide$ORkZP8zZx8xJo=axcR<^v10qc_$>T__I1!Ftf_;X5p#4 zOWfq@y@*XRD1p6h$M9OviTmJpi3S9Mav?Q|p`h4}e)D<3FX1c4PFHav!7|ECQoCk` z_u8|?m&i?hT}en}>OD#x@zx35c@(OuIKM0k3X7cJ50te1!cLJI+Kam zA_~nG8{uUPlEu0X&66;|BfE)J)!W#t6V$<~GnVN8^@8T-yy*#{e_lQQB8G-Rlg26M z4WZL(LtWkt_W@?RAT#+RLU+|{o>#P(Z}cGmVW)+voq>)sC*ZIJ!A#Ar9m}Z_C@wzP z&2CAdxEJa7SJt`>8yfUnAc@Uj;V5rdF6=)+qjKZ>D_YRMOn(X5t(&mNFC`WwgR`Bi zUvVuBX6uQ|H6UN-pO^XjclA@C^I+xo#`tLz{v+mm%%9-qhRevf1OmeG55iOlh1Wkn z2R|iRF+Ul`fG3uR{iZ7T2$Vj6PI#=eCGPkWCgi`q5?V>?3Nq)j-VjV+IEh9mV?ile zc%h)c=$xfMQ(85|YqF>c^90jrStBve>&|gqz*MKrGjI20W|sZm z^9k!~$fZMYkAq;yZ=A&(P!C#Fa;%611rHPvgRz9~Gb|4StRFw%0*ESU@t(r+6CsPZ z)C>&`g^`ev94nCH{o7N1KW`5+978lO&w}WH@fmhO;lF*p%y-z~-Uc&-Yn}uLqYthX z-v9v`Uk-0?aWa~lnVBGQk;^ZTD=wo#9cvmyVIb~r*cyn-5p6H`p`YY#9cbh8ZhO?N zV_$b+DhzIC6TnIw!^;`ATuKB%}+LDz-}1kmE9Y*@WiO0kAi`b0B&MN zA=BwTavRDE#&S%!ct6qn{mX-jTn3hHgPngnBL1WgEfeTJroa<|V2DUZ5D{n93`KUx3YSqDD7@}t#|a{ z@44#eoAYx3|IRPfreYXHPcHnyv0%Xhc$UK3Mb*#4?^V|&-C^+&3az_VnZ2L=i`&qNAMWPpR-g5?-7Y z?3pKwDpfTcD&PDbT^`fIFf=A2(8iF9yl6-HTKoEzQgAn`jI6rke{EBr_ns)ShD1RW zyz_cb_wTtG$yy6ZG7|yY^?bJJzEbKM%Ff7Eh$;23KFkpNfc9($RrfspzL$`QcA{3# z$0Rm_SWvcWqxr|dZQFl+$xO);`t#E`<{yCN%CN{1m`jCq-!cN+2NEVlVYpAQKZ5Xc%Z=Gh1&9{wFf?~WE& zWcuNzuY_1`8pChp7(yF9Vs!lwE$8pMPa`>i^z04c6;c3l%^fq`bqz zj!T4G@()P*=B*yT_xB(#_~`&#GlzG2#;Q0k`n!F5@!|z9ZV|h{`vB4sxnxjJRBX^h zR+F7^Wk*|uHaPSVR7QBu(u*8CiJCv?pzwV9e z#k5({<^KtPdd!3Xn@|T~UxpEq^~{w>z4Ca)9RvNfZ;m*@)1q?T73BjY@mhbARE>f8 z!>(0>Wdj*W$-_&e`B3eyiD>n$D) zBx;dKZE_1m3YwM$-Gx{*+&8t73|2tg#CrK`Jp7PXR<_AD51`Ws#{d<10XjM%tpsn} zgW86JzDV@yWE{r?V*#lN1n@++LUee>ppD=P(}(E^jJ)Nn`OaQPZL%nLrMA6>B zB-i$)I1lI&I073D#)SnI?!IoaRY>aZ&pwuM`pC}k@bIh9;)#=n*wzsha59jK3W!$m zva&McF6O}ViEtE0at+y`hw2gjm?TQFB=hh@gun>_;5^T}1pRN};gf&wU4=F-cUnM8 z3t@TBo;{CkSHj@~lEfIQH(Zh1PHetgm32g!Ts}aqgaM(noOIuJREXmmMBfXv29F;? zY=0(j-{S(JA{wO4X%`pRQ|MrVzo;QM^`h%)1_d`E0giA*GU0AR64~U!NYF`a2{S=S zI5N_^F!Qj$DB)@#t`aUo8%R;)p3AbIL}12D7Des`PIoGwAUEWKi>ej6^-3Jq`%xvJ zd&8v`{Ej``c{DE_fD=GJMCLgWv+am|WpErYgU-GD4*i#h45001!l)A53>b8nXM@q@ zoyyj{rx!3HPHG;r>|c7T8PUp4xWYxB3OfL)jZpn8K0ac#Z7#S1k2DLhmg(t*E9SvL zNzTe-%da`QLW3Z*`s7v=sL?OblV1Vh%nK77UlXi&gk`CJ;l4N)Lg4`@R6jYseJ5%wZgyTnuBFCd zW1H0B-j2J$tVa6D9d|kU_2J_3pdP$A<@CT|OYx$0UsNkn4{VQk zt=#!kKBU?SZ&!5NJ0Qv>;`N(dFIS38Yp3gYO|=MKy8r+1^%hW7Zqd8KZ6xUlNqdPeHJR5s01aOPao zBKg>m`ZsdL&Sm|VX9MaBFSgaU_vK=kB!jyDN#q)Ezw%#vGif(bq{paCO=%fzmpeRv8AYu%sNdFKe`)$G;)}JIdDLgzMC~v z!f5)O*{JZmXUyzPkgcWviBBxUZ1hhLq7KJP2Q=Q?smvPnT2->&AIS|niu!DKy89Sp zkm!iXmVqy?=(se9h@*Y*H5lubN0JW}llC%<*l zqg823Q0!oeTrxCC9OfhDrdPC~4UZgVd8&YJq%Rv0^N_95SsTKur^Sfj9xb$&k?DfV z`)!>Lo21vgV$$ycAs7u+;D*MM9JOMMPqf}ND!#Zhzk{zjuLz&$kbIfsI~wa0qrp$G z;nEcDKUZeF!vAEV` zXa6qy4wXyjyxz=CpkML5>r`4{vq$}{9|WG0*?*EqEJ<&dFs0ypYwgO;%MTd{%Vr-*_Lb{DL(4g_(pchXqQ3a zC5Zh=cJXDLv;JI)6!w17O;23Hdu%p|;kUOxaJfAzDs`bUT70G4i;s42@yOrnW`e2L z)79%I1maR|Pg(KRDtQ%|*RZ2Eme>&dfqn-rc$j(3iQ(1v?9prDDt>Sa3Sge)x4aww zV!WTFLT+D#lxc0UBos)@obx;6L`Op;>J?^?&U{J1|A5onlyq}K=C7CX)1jckjx&S7Zk|)!L$tHN*k0_Ms737#MZ{0oXfBAZmm>WtF+HrAkQSrM1$K>q@1z{ zZ|>TQ<(GHD^#^LMUvb?#WyrKH-xX+#Ou0jHja1d6waSiz^eN8ke-u)Mz71__)psl0 zn8!n|?pNH4#gHSAd)kHxL#spVBhE#3Voh+hn)VGpKZAz2yRY~Yi9eDW)KcPK|2+BD z+xq#fqs_FJ$%Bop!Z)l+ukDcV$o?_tb4T;C6BJOiDcMxI(LJ#5Et)Q7toqPxB7&PF z{bkz>dR9f8vI(~fcFP5=q<$q2>P?Rtr;vYr`Ar%3i>B9> zw+&q7&Prul``|y*3fM3JTD;HVU(s-r;Riha{ypUO7b!0(3@XEgf3#A8vW``rT{&+l zPm>jO(DJc>+s@lE0Z&D7#`*BU>yf@~}3-3xm*o zCoq3jz3MT|Z@d_v2Zbwb+!0q`U6fof4+cva1JD>MC<{w$yq|o97Vv*}7Rl?Ne z=b9w?@8;cUQUWpC{}6E3Z1NV_*uQbNu8qLGR9)VGys7p_;Wp*(kF(|FmqBqKue|G; zZv^?pQz(+b$fDgy6>aqYjUaDnG8t8WZ(;`@d^&$g%`)^6x%76{LxPC@#I;^B*P5Fq z@>1qSh1mTUo=}3gdp-P6G0`DlS6=E@cnHH_VGQ3UB@^p|6(05X3#$mZ*M@mGa52X& zw2u`0x3jaqRQui=jV3ilA_%T2(({zK2wX?de@Q%#Uhz4r{@X4b2FE18-uXhOFO}1~ zk~kb7OZWb+$dBeGdG(iGJ2V-?0e7$eXs&Php~~#vHn^Jj{Z`M~>jlFHyCC4^t-Xoo zrOC1oRn8AbVepr&W=L$uKQiOwg$YnOxbaOsF&f%kN+AM~HbSc4lXVvKs*qA{EhDoN$^2f#m(ZNF|THK*Ed z^EK&aEcy3akw_Z@Df2*`vxBW*d$VCE{s@I-H-6rk->I8kRBOuTtxb%hdw*@;NmV;q z3bkJ;2-_?u-gN}SgRwAXmY8p}q^o^rTb^G*A5nAC zqI$l4@m4l7LN*JDDjT)R#9A-bU2R|Bz5uKd-FLrh3!i4WLOk5hk_|i6jfYZ5A*C zHtN6GmXVDdSASWtDi_)*N7pbz$G{rGG0&YODmc1OU9($KC`0G#>UEeoAM-+M9shWM zo0ncXO&&;o;IJ1d z?c{tciOQ4mG;1)Rn4gVg65ptQYc945J0qw@bc7dl-|&XF91m1M$sZ&dxt0o`?kKi^ zJx{Y+w|tndMbN8V>aj=@6BGLe2Ht^aT79xB42 z)clP?rlB9@@#&z<2n-4tpNI-MgwFclN3W}nhQ~d&$#Hx6_BXX~pZyYs)Y~_H!k;GC ztiSRx3!e%s?Me)`%*p&T5W=^Y`}S+WO&!c4YyujPZ#t@vHnOpnV{3@ba3_2<;ZY9p)aXzLkQ@!Mj;-)@t%(x3nBeq9oh0Lj=57@R57-1 zsl0y^WW7mBW7PbZ_b9Y^_iPE-=5M=6YS^a#L7-(^;N<}E zI_c)sQv!*-k=vD-WiR?&@ZJpbANMgKrf`3!-~JTTZCB!@`ZPbWUE}pinh&q;PorJz zr5F8vCLg{MGkVSh@G%Ixl-N3_uIS^1n4io;8=1{Q8m}XE@udC?p&pXmT^g5h3(UErBE>(xW<0X5pEPAzr+BeN;7Y(6L-p(X->z}o5ius>m2OQjr zdjF<&eu7i#k6&}GIYa!)ZJYPh+>Y4n5v(@@%4&Qq4saYukR|!@;L3KkxkEvd|I!H_-bYP9C7z zyW5&LQf%{n!f}%{?Fmu&J*KUWqh}o>c%cU;M3BI(;l&UALIsLpU zGziEALr6bSziZfS|5KO~m_**g7ZZi}IvN?Ye{{E&yr+>ZM4Mrx=4xes$lI+Sc4&cW5CY5r zAWok^4fA#Etef=JJB*==QX=0=0hHW7QLeG&`Ce}a!o7?LItvX?{9J^+pCf$t&fHd) zDqsf|S_XXo>mD}F8C?FGml!ifcKh7AMf|9GOc;9a1NLq;C986 z%gxgDyjQEM;F)6GuCYXtU(IN*t_M$2D~SjDehekSUwUu)opj5`T#NS{?X_?EW2IXQ z7tk$*8CaK`I`vjKpW zC->hedlH@U@4|G%f8Wh%lIfmnb(Q?#eW^!lH0FK&tchlRAi}q>iV|Tp9M-tz|4%CG z2N$9Q=k3CphwbU{BRN$+rqFk4u#a3YbZZ0Z~Zj(aY^Pw zwws32@zQH$a!H5<6SIFVJzqU?BxcLXr)L$k zuXyWt5PeDgi7Y2lYx|FX^Fle|=N&S3#ckzl4jvs`$=k5D#aes_9&tn5?AnW#QAC*X zAn@M&xe=(s%}9;LhE|a}Fk8LNcbpUbFs|MAhV^rru0ga`%c)k+&B*C_?Ket^B}3m; zu-H;vZzHH^(exjP__SCv-9URY<#_E8UVR?}?>X_&_T$>nyp~#yHEjKzYbmZ#nKi6C z|48yq_~Wxuo#^R?XCT6NeZiW=j^B-v_oZRm_~;LAjoS+rF%p>88Z_^u!)IM5x-eg0 z#|2Bh77lv2VH@6eQdUUy2Th+Z%!H93>TbYMw~mNB&I}EvpaqR@xdg49lpB{; zQ?QX;kDt&H2X(vI0?Tu&G2Y>{oaQE#dk1f-Qa-nOw-mf?`0l$?)$zr5X}ZMnM@y57 zTvMO|FO|WyC!rH5yG{()@h19{RYb8jCVUxrcoe?U+qVsjcwl=z72F zOZB`6el#l6*Ng#d6H%U1?j+MC;lj`Gu^!@I;n||MZa#3}I8`Gd4G(z)^TMrRgEkg^ zb}uRtUGs7Rk;cmQKvp;M$ML0-NNhZxt>#Y|V&7z5t8X@*dB^-?-A_c`#N_g_i7Fdr*9*!&*~)xv3~Hu=n+t5L{IRL6%)DNPR-w@ zfZ3bG?}B&t1|<(Wah!y(!1F#6G&u%U0UY7Ww56WySINVVRR$!6-#kL+Cn(c@S4%tg zcN(g9d1&D-XhoQ3gDd25xB{=~YG5(V7nf^pYT5d74T0P1G({0dT)U|kZKvFh%=*Di zbEtQII+zpxJv#e~M7D_Gvuz|Xd!gk8Z}IVV)Yo8_?TtbHO9=-=&qYR`LI87 zOSlzB&P(R{Yq?+@&uHe2t(io0pMFYz!$K1e*23f+7Tp _n+mPrqn0JRbVfl`xc7 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

x?($B|Bu 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 literal 0 HcmV?d00001 diff --git a/examples/builder_input/load_balancer/lb_server_srv-2_metrics.png b/examples/builder_input/load_balancer/lb_server_srv-2_metrics.png new file mode 100644 index 0000000000000000000000000000000000000000..cdda50ffd1012d707b870cb9e57dded33037fb6a GIT binary patch literal 131498 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≪~_|F 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 literal 0 HcmV?d00001 diff --git a/examples/builder_input/load_balancer/two_servers.png b/examples/builder_input/load_balancer/two_servers.png deleted file mode 100644 index 11ceaf3b2120d027084b649dd09565b1d0c79ab9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142265 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 client ──> LB ──> srv-1 - └─> srv-2 - srv-1 ──> client - srv-2 ──> client - -Load: - ~120 active users, 20 req/min each (Poisson by default). - -Servers: - srv-1: 1 CPU core, 1GB RAM, endpoint with CPU→RAM→IO - srv-2: 2 CPU cores, 2GB RAM, endpoint with RAM→IO(DB-like) - -Network: - 2–3ms mean (exponential) latency on each edge. - -What this script does: - 1) Build Pydantic models (generator, client, LB, servers, edges, settings). - 2) Compose the SimulationPayload via AsyncFlow (builder pattern). - 3) Run the simulation with SimulationRunner. - 4) Print latency stats, throughput timeline, and a sampled-metrics preview. - 5) Save a 2×2 plot figure (latency, throughput, server queues, RAM). +Didactic example: AsyncFlow with a Load Balancer and two **identical** servers. + +Goal +---- +Show a realistic, symmetric backend behind a load balancer, and export plots +that match the public `ResultsAnalyzer` API (no YAML needed). + +Topology +-------- + generator ──edge──> client ──edge──> LB ──edge──> srv-1 + └──edge──> srv-2 + srv-1 ──edge──> client + srv-2 ──edge──> client + +Load model +---------- +~120 active users, 20 requests/min each (Poisson-like aggregate by default). + +Server model (both srv-1 and srv-2) +----------------------------------- +• 1 CPU cores, 2 GB RAM +• Endpoint pipeline: CPU(2 ms) → RAM(128 MB) → I/O wait (15 ms) + - CPU step blocks the event loop + - RAM step holds a working set until the request completes + - I/O step is non-blocking (event-loop friendly) + +Network model +------------- +Every edge uses an exponential latency with mean 3 ms. + +Outputs +------- +• Prints latency statistics to stdout +• Saves, in the same folder as this script: + - `lb_dashboard.png` (Latency histogram + Throughput) + - `lb_server__metrics.png` for each server (Ready / I/O / RAM) """ from __future__ import annotations from pathlib import Path -from typing import Iterable, List, Mapping, TYPE_CHECKING -import numpy as np import simpy +import matplotlib.pyplot as plt + +# Public AsyncFlow API (builder-style) +from asyncflow import AsyncFlow +from asyncflow.components import Client, Server, Edge, Endpoint, LoadBalancer +from asyncflow.settings import SimulationSettings +from asyncflow.workload import RqsGenerator -# ── AsyncFlow domain imports (match your working paths) ──────────────────────── -from asyncflow.builder.asyncflow_builder import AsyncFlow +# Runner + Analyzer from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.metrics.analyzer import ResultsAnalyzer -from asyncflow.schemas.payload import SimulationPayload -from asyncflow.schemas.workload.rqs_generator import RqsGenerator -from asyncflow.schemas.settings.simulation import SimulationSettings -from asyncflow.schemas.topology.endpoint import Endpoint -from asyncflow.schemas.topology.nodes import Client, Server, LoadBalancer -from asyncflow.schemas.topology.edges import Edge -from asyncflow.config.constants import LatencyKey, SampledMetricName - - - - -# ───────────────────────────────────────────────────────────── -# Pretty printers (compact, readable output) -# ───────────────────────────────────────────────────────────── -def print_latency_stats(res: ResultsAnalyzer) -> None: - stats: Mapping[LatencyKey, float] = res.get_latency_stats() - print("\n════════ LATENCY STATS ════════") - if not stats: - print("(empty)") - return - - order: List[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") - - -def print_throughput(res: ResultsAnalyzer) -> None: - timestamps, rps = res.get_throughput_series() - print("\n════════ THROUGHPUT (req/sec) ════════") - if not timestamps: - print("(empty)") - return - for t, rate in zip(timestamps, rps): - print(f"t={t:4.1f}s → {rate:6.2f} rps") - - -def print_sampled_preview(res: ResultsAnalyzer) -> None: - sampled = res.get_sampled_metrics() - print("\n════════ SAMPLED METRICS (preview) ════════") - if not sampled: - print("(empty)") - return - - # Keys may be enums or strings depending on your analyzer; handle both. - def _name(m): # pragma: no cover - return m.name if hasattr(m, "name") else str(m) - - for metric, series in sampled.items(): - print(f"\n📈 {_name(metric)}:") - for entity, vals in series.items(): - head = list(vals[:5]) if vals else [] - print(f" - {entity}: len={len(vals)}, first={head}") - - -# ───────────────────────────────────────────────────────────── -# Tiny helpers for sanity checks (optional) -# ───────────────────────────────────────────────────────────── -def _mean(series: Iterable[float]) -> float: - arr = np.asarray(list(series), dtype=float) - return float(np.mean(arr)) if arr.size else 0.0 - - -def run_sanity_checks( - runner: SimulationRunner, - res: ResultsAnalyzer, -) -> None: - print("\n════════ SANITY CHECKS (rough) ════════") - w = runner.simulation_input.rqs_input - lam_rps = ( - float(w.avg_active_users.mean) - * float(w.avg_request_per_minute_per_user.mean) - / 60.0 - ) - # Observed throughput - _, rps_series = res.get_throughput_series() - rps_observed = _mean(rps_series) - print( - f"• Mean throughput (rps) expected≈{lam_rps:.3f} " - f"observed={rps_observed:.3f}" - ) - - sampled = res.get_sampled_metrics() - ram_series = sampled.get(SampledMetricName.RAM_IN_USE, {}) - ioq_series = sampled.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) - ready_series = sampled.get(SampledMetricName.READY_QUEUE_LEN, {}) - - ram_mean = _mean([_mean(v) for v in ram_series.values()]) if ram_series else 0.0 - ioq_mean = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 - ready_mean = _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 - print(f"• Mean RAM in use (MB) observed={ram_mean:.3f}") - print(f"• Mean I/O queue length observed={ioq_mean:.3f}") - print(f"• Mean ready queue length observed={ready_mean:.3f}") - - -# ───────────────────────────────────────────────────────────── -# Build the LB + 2 servers scenario via AsyncFlow (builder) -# ───────────────────────────────────────────────────────────── -def build_payload_with_lb() -> SimulationPayload: - """ - Construct the SimulationPayload programmatically using the builder: - - Generator (120 users, 20 rpm each) - - Client - - Load balancer (round_robin) covering two servers - - Two servers with distinct endpoints - - Edges for all hops (gen→client, client→lb, lb→srv1/2, srv1/2→client) - - Simulation settings: 600s total, sample period 20ms - """ - # 1) Request generator +def main() -> None: + # ── 1) Build the scenario programmatically (no YAML) ──────────────────── + # Workload (traffic generator) generator = RqsGenerator( id="rqs-1", - avg_active_users={"mean": 120}, # Poisson default - avg_request_per_minute_per_user={"mean": 20}, # MUST be Poisson + avg_active_users={"mean": 120}, + avg_request_per_minute_per_user={"mean": 20}, user_sampling_window=60, ) - # 2) Client + # Client client = Client(id="client-1") - # 3) Servers with distinct endpoints - ep_srv1 = Endpoint( + # Two identical servers: CPU(2ms) → RAM(128MB) → IO(15ms) + endpoint = Endpoint( endpoint_name="/api", - # include 'probability' if your Endpoint schema supports it - probability=1.0, # remove if your Endpoint doesn't have this field + probability=1.0, steps=[ {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, - {"kind": "ram", "step_operation": {"necessary_ram": 64}}, - {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.012}}, + {"kind": "ram", "step_operation": {"necessary_ram": 128}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.015}}, ], ) + srv1 = Server( id="srv-1", - server_resources={"cpu_cores": 1, "ram_mb": 1024}, - endpoints=[ep_srv1], - ) - - ep_srv2 = Endpoint( - endpoint_name="/api", - probability=1.0, # remove if not supported in your schema - steps=[ - {"kind": "ram", "step_operation": {"necessary_ram": 96}}, - {"kind": "io_db", "step_operation": {"io_waiting_time": 0.020}}, - ], + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[endpoint], ) srv2 = Server( id="srv-2", - server_resources={"cpu_cores": 2, "ram_mb": 2048}, - endpoints=[ep_srv2], + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[endpoint], ) - # 4) Load balancer (round_robin) + # Load balancer (round-robin) lb = LoadBalancer( id="lb-1", algorithms="round_robin", server_covered={"srv-1", "srv-2"}, ) - # 5) Edges with exponential latency (2–3 ms) + # Network edges (3 ms mean, exponential) edges = [ Edge( id="gen-client", @@ -219,19 +110,19 @@ def build_payload_with_lb() -> SimulationPayload: id="client-lb", source="client-1", target="lb-1", - latency={"mean": 0.002, "distribution": "exponential"}, + latency={"mean": 0.003, "distribution": "exponential"}, ), Edge( id="lb-srv1", source="lb-1", target="srv-1", - latency={"mean": 0.002, "distribution": "exponential"}, + latency={"mean": 0.003, "distribution": "exponential"}, ), Edge( id="lb-srv2", source="lb-1", target="srv-2", - latency={"mean": 0.002, "distribution": "exponential"}, + latency={"mean": 0.003, "distribution": "exponential"}, ), Edge( id="srv1-client", @@ -247,10 +138,10 @@ def build_payload_with_lb() -> SimulationPayload: ), ] - # 6) Simulation settings + # Simulation settings settings = SimulationSettings( total_simulation_time=600, - sample_period_s=0.02, + sample_period_s=0.05, enabled_sample_metrics=[ "ready_queue_len", "event_loop_io_sleep", @@ -260,8 +151,8 @@ def build_payload_with_lb() -> SimulationPayload: enabled_event_metrics=["rqs_clock"], ) - # 7) Assemble the payload via the builder - flow = ( + # Assemble the payload with the builder + payload = ( AsyncFlow() .add_generator(generator) .add_client(client) @@ -269,48 +160,41 @@ def build_payload_with_lb() -> SimulationPayload: .add_load_balancer(lb) .add_edges(*edges) .add_simulation_settings(settings) - ) - - return flow.build_payload() - + ).build_payload() -# ───────────────────────────────────────────────────────────── -# Main entry-point -# ───────────────────────────────────────────────────────────── -def main() -> None: - """ - Build → wire → run the simulation, then print diagnostics and save plots. - """ + # ── 2) Run the simulation ─────────────────────────────────────────────── env = simpy.Environment() - payload = build_payload_with_lb() - runner = SimulationRunner(env=env, simulation_input=payload) results: ResultsAnalyzer = runner.run() - # Human-friendly diagnostics - print_latency_stats(results) - print_throughput(results) - print_sampled_preview(results) - - # Optional sanity checks (very rough) - run_sanity_checks(runner, results) + # ── 3) Print a concise latency summary ────────────────────────────────── + print(results.format_latency_stats()) - # Save plots (2×2 figure) - try: - from matplotlib import pyplot as plt # noqa: PLC0415 + # ── 4) Save plots (same directory as this script) ─────────────────────── + out_dir = Path(__file__).parent - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) - results.plot_latency_distribution(axes[0, 0]) - results.plot_throughput(axes[0, 1]) - results.plot_server_queues(axes[1, 0]) - results.plot_ram_usage(axes[1, 1]) - fig.tight_layout() - - out_path = Path(__file__).parent / "two_servers.png" - fig.savefig(out_path) - print(f"\n🖼️ Plots saved to: {out_path}") - except Exception as exc: # Matplotlib not installed or plotting failed - print(f"\n[plotting skipped] {exc!r}") + # 4a) Dashboard: latency + throughput (single figure) + fig_dash, axes = plt.subplots( + 1, 2, figsize=(14, 5), dpi=160, constrained_layout=True + ) + results.plot_latency_distribution(axes[0]) + results.plot_throughput(axes[1]) + dash_path = out_dir / "lb_dashboard.png" + fig_dash.savefig(dash_path, bbox_inches="tight") + print(f"🖼️ Dashboard saved to: {dash_path}") + + # 4b) Per-server figures: Ready | I/O | RAM (one row per server) + for sid in results.list_server_ids(): + fig_srv, axs = plt.subplots( + 1, 3, figsize=(18, 4.2), dpi=160, constrained_layout=True + ) + results.plot_single_server_ready_queue(axs[0], sid) + results.plot_single_server_io_queue(axs[1], sid) + results.plot_single_server_ram(axs[2], sid) + fig_srv.suptitle(f"Server metrics — {sid}", fontsize=16) + srv_path = out_dir / f"lb_server_{sid}_metrics.png" + fig_srv.savefig(srv_path, bbox_inches="tight") + print(f"🖼️ Per-server plots saved to: {srv_path}") if __name__ == "__main__": diff --git a/examples/builder_input/single_server/builder_service_plots.png b/examples/builder_input/single_server/builder_service_plots.png new file mode 100644 index 0000000000000000000000000000000000000000..22fc27d645d5ad39dd0ecaa7db3372bd72a515f0 GIT binary patch literal 313774 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%0D3W5_JER}1w|phTl|Q@QEHKFO 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%0ALOul# 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 z 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

fPG>nU=SW&OQ>(HCRKn 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

  • YFw<+75*dt}WoL@xko{WTXBV^FDmo@VqdcHiCSef!6?S^+Tb-5AnN*B>} zoD2URWGXh-E&Q+-$TdpeaD2Sue)A*#oxuWs8hTY-4nOUJePp{w@1<8-`{-SuvApE6_OWS2aBP(;X= z{C5-;jA=Y`Crm0J_~UMCZ3l!p^HAF$)DNrAnjFemJ}U(bM8$v&Hgc&^I|~8b^WkJR z=+WKyuVoIQ`%J3I{9@oA^7eg!huY?@&`VjB!A6HZ)gxl2q|syJ>H+9q%i_VVH9kC3 zP1{OCaGlNf3RevIC=+!zL-klPo{ySDz0H3#tBtytS+NZ7=J?;KtnFIbi+$W5 zi0Fq=Z#6yQ{KW=VqGM5v&wG#=O~{?+sH2Uu9R?-JN+t!xWq<$m_6DhXLLpUx=%xK; zwcjB1kniXRai5G?00RNtn?AZ#0=70&esE5AcoY=Jf3_iMY-5*8)DzaK z!HMqBC&Mx_nE$#G+nucHddKotC=2VwuGmODEsVoKOU8|#u zJz1x0nmIO7cZ*X!ilv3TH&LvV9M^ZXLP;tPNWnLoidQ59t4;OMA4je9@j{Tj3+)kD z5vVu)OjN8}ztW_ZR=h_l{I(+0OwNbLAeltJF3Opq4wolG0R9Y3pZykfby#zkF`THS z7MLX+d;}dNsy2^Iq``haSqVYZUMiUD-;=NOPZZj;vkO%_!J(-~zZW*+$`NgdvGQG( zoto?&mm9?$W6gk@O=J!Fo!Bm_GW^yJ?z9Nu2f-9IaQDk2ZGFSD1Fs7-cZJA;F^(MU!!aLp?DA$bnI;V$!U%f zz#{a7^(efRK};*gWxj=DQ1Mv45)|^t`5TAycgjVHO7|?%zQH=bIY45`p)ZEMl5}WX zE(?XiV=-&HcDX&^LB7&tfsr`8U!6+9#J1!)fN5e07j^osoJi^l|&PV5_O~^>G8m-w{ zDhH`>tq|0$nzE$P{jDLrv)(@eG8phHBwUtHGM$h6q6CuC>-aL=%C~RdU+*{QuAXb4 z4Sw0wfQcZi123Fx4R1ZnagEVHCGip*JLAeVD2=O4tO|yNQD6t2d4D}caSEZw{Gw}k`*cB3)>t!2ooIy<8|BhE;SaU zTDOZgB<-|i-H6cl8@V;!V6nBcvPc)G<6o=}f~BUyo|boW)#=+z!@acFS=?bQA46F~W)>jPEtki<$>8K&>V%Q8PDvE#^8CSeUIk5X#jWbDUt| zROj3n$l5CwqzK(K08pF*hw+eRf`W4{i&g1zO4NFN4 zNDKVWNAjui7<#m_r0V4*2d`jQ`^CXc$2v)071<7>xh=j@Ci_NwPUx+_lLt#IH;n@dlA;)KoXF->)3g)*+2jf|X70V{ls zq*Dl-Hg-|?kM`S|HOp>c(w)1`mHK{Pqfu8yOp-C!{4Y_$Q?!2BWY165s3|$LG28Kv zh+>AkHo9Shq*1sHt0>#?=`&ggAf7p?NGS<#Pd|xd=)Bu|cQ*oO z!+=WivCxkWp_xTg2ksem#ky}K-)KT@=&V2rV(cO6Y9q&A9WS%3Z=0G{mbPLb`YjP| z3uLc_3ybXpmF(O_O`C4o?d6t?CKyBC9U&BKg?Uw^6z{u4B5eCpIdak#X1dviwjsxz zr~T;=AxnBuraYf<`fKd`YWVX^dK&IFKTT)|19#TrK5x1K^1sl8wUewODbRQ)(1UVz z-Zj$*WXbIxyLtUQ%n4r>4L&uijT=DXC2XP7j=(-iKWy{(QS?L`jPj;X^+88{+bB#h z8hqMuS)2LyueJ=uG?L=DU}1m92| zzsNt_QEjvziX~=9EZCT6NFpamt0VudSx_}P(TP0d`~-E}?|<~zxNd{KveZCnt$S7W z!14B=IiNp8F4tCYIF6p@_=iizP*d}^Y1JclMH+3)`>?8z^+sJRhr;}v^Gz&$2B_hN z=cZ6_b=`*jhX+5p^aB@6&2pbP1%Cif)X;z=iIq~6znF$Pr3JJbl8qmp)0uWNJ&t)P zY9R&)2QIowy!vq5<{h-vjX;FQ?XjR1jbL?-^Y=FK1d{ZzBwo6X+!(h za!miWzNdEe7A$yF8nfDAvtSuvaxelD0@-^~as<<|Kh^AfLKN;%!RwDcB{01t=`@rN zmwi4iB`bl^V5%}E{{g1AMX({&<~246D{_8CfBU2)g_ESU$`2fxmDWR?>=L?&L+35| zwerq8+q>^ox8vgw8cV8V-*aj!uNXBME4YL{a{U?a$Ear3eWmDikytufen7RoT( z0N9H)@sEx~=?10c!GxfZ=&anmw)(QamTL3}uN0NgC#K=X0-cxux&>jomhTAcadT$( zO{Ks__!y;4SKYCKL5Z4CgT=oFv>n#p-?;2b)D-bm3ZU^*S(2CXR7#8e*mtwaW1y~& zoHj?N8KTR)A`rg(8kbI@xue%()krjZVjnI09QFla!1{Z7Zg$)<@)OK1L-kQn2{Ma-hMtOnxj( zuhvolY$_@wg$RO}X-+~)glDBP0lt1}R7%NCxy^EjM@5AfOta)A=G48jsZ;DWVemD1 zSHWV7rBzp|^sX?1{Cp7qM!@U)4nOZZYyq|w zznbAx#%{fjZg=uKTaJz2t>g7wEM~OtD^oXF{WYRpDI3Rgyg&#Wn8g z&rrZvF7mf}vSWx%{d4xXL%upnkH&?>snSkjhGWbJxH|l9bl%x39YBK=n`ij`y}4dS&+gq-x~3QtO@kCsQn=mPGQ&^wstvll5d5Fht3w<<+=joz;^s%|M1RAI|)ecsPmYB3_6aUKyJCVS(GtdLXNt@ zYuOYvIPbRn?cgwhTei|JbLOE}ZR?`l$fAFF<^bSs*_1yl7EtHID+*RS zAj)X|>QNbZHa{^0SszJMTWnRESYYYm95ky1-EqUWFC?dTc1zI>(TosFzN|5#5Tib> z@)ON7WhUo5XRid2D1Yx5>CxD<{qTJuP)M|j&*vZGCvHb)yId;WhP`A4z5-?0Eo{XY z*e}!u*S6&}n;NNzDdJkDi<);wlqMOJU9JumGErYPe9SG~$r3EDH1`jkVb+>sx&x4W zL00zv9~S`(4&H(*t3FTD9m*F&oQLQBDV@^yp37J!?SH5sZ#67|6PF zPAYnRs8(yVQg5uIdFRA(v)o4fip=I`*cbgVj@-!%E$$_3uiNDzc(uo}BR94czs>Vu z46h<;t9P8@&?_aM;LPMnd|sc#O8O%O%Z-5}+YjB$Ms31ZKi<4=%H*kC)Odj>U_WDt zp1(h)SWwfubaQxVId0^YELK}*Kjgk-p8z6|L|eOH-sf}cSN(=+|4wGx(^2IG9$c3r zwy$Fsy9_2}foVf`?ASjB+M17YOHZSwUc+=BI#RZ2sY*k8av1+zT-`IKtj+)@HCwJ9 z0c25Awd`tK`pSii%Ir~uSSd+gqawlpmM3p1{o;+qLarHYtYRU!4H+NzSi3H5a|znS z7e;*oRT8b;7to)cGPvLXoypEK5QMD`4d>I%2_hjHOLU0@;hI`)O3v(Z6fxrZ{S~q* zRde)8GViV~PwN?^Q=SA?cm6b}Auyk_YjF6DL$aSe^{MOLa@E(#ORSOijl)IR<`5hZ zu&t#3TVecOiEX=)F`Egi3kyFh8Xfiz)2Dng^CWpPixKhMJQoZ>P_|FQ?xA^EPOpR5 z+!4@p5Qk3X57+_RVzNHKPnB&vX>KxBYgqhL20C9|Hgnr)ex$ z?9!4dw=)z~aCX%o41O)3)?XZ$mS2rKnDjEIHiCdI}Ykg>Yb zfM2<7z7_^R=)QLRlnc1qK9O6G9@i)bi=x!`9ag$315thUFvnV9Zao!0jrnG9G;K`o zETEvzV{dd0^`c-pe6yQMs1;N^ua#k^hj(%~b@QvdaDDJYYxViX>$%;79qpd}mdAz5 z()#BnE-y9NDz|4bVlrf?BmP`@%r@FcaG=%BFj%%*SROZ zOwPNajf{diN5JUp6p=udLQ&uqySxF*=6T2?g_Yy?X0xogNg8qQZ>?uNpy+PzgBoEY-MRi)> zbD_8C>X5@p_UGFg>!u^W>8DtQB}Yp!L>^Zq-R-E37abS}^9Z}v^?T$%m95wxc{4pP zo1VUL!r$>)&G&>~v1_DjY)ZEs)AEjf;jdZ`O)a zwf?gPGcW6xLk%)P&$_1b48TtIxe=6)brr9kK>FPSjxlmSz1BkTYSBugr82B5Jx_8@ z_$IM!KWawl&(~P_!?`vd=xgJg1s=e617jNaLWCTy5;$snw zfyixu%HcQnXwB%;mn)2H17K1gwj3tJ_0mlMArJBkG&rv@ zKQ#wvbyb_|%U96IWbCBdu{*|d$AzT@H{F%sB`?SInMnedMfg*s51qtDE!mGpI1G`h6CFf!C!?9{`@t&IkE2zBSqNqT{I*@j?qUY(c>N< z)BHVYll%KniWU<)g!B6!h`bsCyMYcCU`Xrb4#mX8NHM>}Cd;e&NKzFQ50-8%dCaMP z+gxMgLjc&OUX+fHkYQl+mzM-#^S#xVY-_)7Gp_Wl!azYND^Lj5z}mpB=qt0VP@ z`_TvfGN!>&2I%gw7IQx!JV9xEa(!M=?dIvi6}@id%AzgkbprliUq}6Ni2Kmk#m1Dt zN$NXdIe2el2U7DN(O2Z@-uOG_5@r(FS!{>0SS3aHeE@*# z=Tl6_WuGKQA`*~wVy%Hxcg$P`70-+Ly6r`{|#e z!dl-7J!YwX^($mh2|^cJFE{l%S$IdBIIcc_&j{`Z+;C~06_OzP{kkT|@8kaKV>;@k zC?vsZ7o(EnKL>(#CXZRK{~j|z5KMVa!g-!D=`gyIo8aoFIFdQ_UBejvE@; zF*ni}p_|H3KA58(uDKm10KWa~q0}1mv4Kx{njTMOW=Yg9{pH%%jew1jxEh;B+{;dW z<^_invjW_Y2iM5I6^@yesgY+a9UejUi}Um=&`ibrX&+?IR(e@_+JHv8l%)D7fSEfv zAANw_M)iSFQ7~~b^&QnDlJ<%hWlwW%`Oe94KF&-oG=E-LKC5|opy-OK-pVyMFTW~q zboi=^?P30#x5rJ%SH`sWpr@ygo3XJ=a(nvRc%QipgFvq`^Lp< z{rM33p)$1T5|en=+M4=1o!8YT6GQ&;6+eUlTLH}mV-!0RaoGRHcOai6LY?|=m^ed!`-|cI%d-h8w{aO?Bx9$ zHqG{K+8!5cp_BY%3 zzH2y8UP8I!S+RTnAkhUPq0UVpPjxe^3m5x0__AZIp^d=@!n0bSPCPu?8=dCSrh(aC zqpZ3}7N)5ADmF>%jF7V@uR@o>$w>>iVnC$0OnU7^1*|0*YJwr%yVa*SckNS&e{xGNe3!agB+0m-1?8` zs%!b>^BE)*7VLusd2L4yjO^(VAK_-<`Peu!Qgh8i9=2tLE<86Gvz~Dkjx5 zVjD@%POGWfJ6W39z5Z)7>R~&^Zu=~Cy zYzI1UdMB!%ZWjArWVO!_i$;=sO=`R>I`TUP0Nm1uL2uIkgu(xMsKKK-uYN=1SqLhh zh$C({2Pa`}n7Iys+YQG*b7lX)h@^1cDaeG}C9wb<%~~#Y?HPk#2AF(gaCjfGkJJg^ z@bGNN3qZ_4b0S>(oZWA{+1EZ~Zl+Br?muDn$)=S`Jq356N!Z-$4)7f26{@m2YMLuRs=L372 z<7ENXV}Fo*$we#iiCsoG0Ael7>uU6Tvtk2!|utjxqgidcTJEdJA7LsT~p zrV?F0gu($DUc1dlP$~?S@byHjYC(Kc7>OtpWhKaJab!7&EfxV3?{v2N-W-mjKB3so zul5|09bc!UIQ8Ddw&kTH+7BxqUWbDZ4v%8%$L5DZ!xD}Oz={sfd*A~Y$kPX3V$&uz zF*cWvCFeGh(_6OHa5K%9s}WQ%At`jZzplbjPNI{%9@8t}(Fo5m4o>^$uwEKOGZWPA zoPUWD*;+9b)=jt9u5_&kF-yv~sn4Os>>al;9mY>wAP*aXVnR;BKHFJ1Ym&^=E3e)#qc3uUy=ons8t_z0{xtAE&<|#z>tMkOy zUVw8xb9Un1?Zu{eOGfu{;jPYA9_r*w7=?Lk;=AD%r&)+qdPCy7Qn@WNZqs5RJ_QK@ z2gHYS%@VAc_pUN=`4TgB@AC6_->8S!_Dp9Y^xwC6n)z`kOmPR-Z=Okuozz;I%oXb< z&xYwH6(4kx@Y0;D7r*p)tnGYt;ra1dH>lfG{4;9GCwNGhJQcUrGR&u=@>S&KXcA## zJdYt9f=+iofE+H7trO#YI4{q`3_FuiU$fH7xWeMuu@0cmx1oWfUKOXe&-{y%FZkvtLf zfm)u*qY=-IYz1D>QU0m+nNXh4g$~=K0v1*VR+!hHRs8F;@rFCM z_aOq1XDgE@wM;9`2&Ic0XO~8sZ&9wvN9jiuaJDKT!qk_hW4;BWgK@0gi!RPV#PlAz zxUK1LJgy2JNbcr*lhV|&i8DU5#Tlw;IV<+1HwySnm(ffZugj8?FR=zh91<5*Sn^4Y zt+D;khfeUxK1WkXju~ffTCr%cB+l~BJw?`c@_YjDeq`{fbD%C4K0tM-RyFzq z@Sy))x#+C6{Gn3z15IC37>xl`LY1~IYSjB<=cI)1n;)6(a+~N!-8G@_1yQ^`^zcL- z*b>1f$XyCq+c;0AN(1)r?3{zMi?2}XYY23iSS8IHohi`vy;RcuAY-veM*3Of+~m|| zK~KcK%NQt6gVl1ni(`(zxF7~xtkGyaOhsNQ6&74C(w-`#(PyAlaH$Ouj4GSu>#g?0 zz+@;H;1gxsda2buvghFyR7XnVg2f8tZPMEx)Z%L*>0oc<>NvZ8EdMr+>}KO}(5#~Z z*t%Pv447;|4OMaE>|(Na_i)96+0y$2IMs1OKIvSvXSLAdY)C!wq&8*C@lHRC{y=18 zXen~Bz%V@&fgORh(Gu-%aibe@

    #AGbXGCn%(4DM9~c#@W@(8#m3>T5fBVPLc4UC^lZ)k-oN_K--b-IsI<^ zS@QjAXh^X+E@CVI>LiI_EI#G~6n(;ep_*4J^MW#Mn57lMNU0sZz6L|!L3`=zz5BrZ zH_58s!zLx1m7J8>v}fnJVnB3OL)`jS#`D_bm`s+_9fGiSM}UU*)lwuiySM$KlsNmX z6wOQnK@!A2nx1Orz1hC#O3{?jfXWnv1>TUSqV=uqxEG%l%?Lmou{I$gQm{l#Nif*T zjZ4&3m-ypRCT*;~-1sqCv0+$}LcT8T^Tj>iT)dpAxXR3|{!Uz|uXWTqtP@c(;Wmf& zom@xNlSxYu!ed;QVK~`v#?cgD>VfkTIlo>1;P9*DFRQf=VV&8G0 zsqen=b;5;`KHHl!O6W|+cD0>!?f%H^G~DP8F#Mx_H_=;kTZ|nKrtE(**2M^3K z;Vb?2>&@`y3!p6^FoYOG^zmlgan)m&*2h~y!|42KHE{1)6C!9ehglK*R2V_6iZuvTk-D1f%o>*Fl_WT#?zeK+Y#WHAc79=IH#9ovM3cnjk(m@7_3t^@bZIIXaK zqeZwKj`*CqqH2!$PG;5WT(lI2@Z&rhIn@8OrrYDVFr6r)Nk&IeT*O)--wb zEbGOh!cP#vrh4`*AuzEjTjtS>lXTAO>R=)8X@V87fueUCI5m!2Qp;aPSlo|Vc0Ui% zCa=$E8TCmL8*GRFZD7VE*8hxf3x}VEDtjY7?Wujs4$;$e>8E#ohY4s_8AfUudKAQd zQ~DqBN+6*|KoV-(Ul+-@AZBK66$yY&p%49u93`|do3=%OP7=ti{s|;WJy$cKbJJ@5 z_L6A6s3fwD$*i&}3Jq{KPuM}p4pr(OIrB@UT8UKW(@6~!0R5-bMg?=)P`E~IW<>wP zHfX!1h_UuNBF9!x8z+kb2K~~$iCizwQy0*hf^DUVp0o24KmP0PxEpi>ae75wk};@$ zOXYCzi*-A=%)+pIrLa#{PHv%R<`?^mP_otbySi``?-AW$%@8>W7)ucgTmO8xG_34+ zDLcCLm3A>75i<9$w7`XS(I(}1JN^d!E11juC&Hss5KunO9$0O=RmJC>N57 zFXC(@;nOznI6!pbkHAFrsErMi43}A*>%T>!20jL0u=gW;ZD6`Yy~b*aZrSU&qjG!& za<$@qHbl>1x5(vv?6u}(o^%7eI`XRH7(zlp@x%9Sz?bVl`+ou0r%f5_&ex$uRS+ZO zfz_yVXVRzyMeN2Sd>Ioq2`4~6x>JAdA?$wESIbODk!r|k8lQ{knv~=iPk%#?E%5Ga zD5w~ICE&RFSLWEMcHE|)<9qttsJ6HcDR>=_*dzH?$&slh+-o?AoS9x^slLeYaj%`i zu00ck*VSj>m2zyQDmdt)7Ovk9ksE~Sv=EekEZvdyDGZGgGoVoeW~YIVP@j-d zZy-uWI}0EXh5H@J=d$%oOAmANV22FPyb?@TzSnp5An(6b$k+dN@m- z9Iw!Az=)?;zJ$!KW?eZ+aB&=TUe^IiD}rv60e!!bRUcATFSvR0dJ1Nm0fk(b-kR{U zA|Eq6rTanZ_KOuK;K?UI)G;tg731Thq>M-w2QL)W|ri7uRCoUH63p`&h1V zX888&Ijs)A%du_Jx4M;iwOEA0e%ctq*B`T+zE)X!qGt_(} zX@l)ylPzYXuW|J>%55F`2#1~mBO6-{n|v$(@`K!g5sn;O zTtStrl~QgWVohCM5T^`BG9gQCtQg~o zLwW*Fv%DGyRWka5%kyE5?{(Yj_Gwwn;u{R4C5L3KF8%Q z=W9}9CjFmr)?S^oF}mD*;%c_wkcsDP7kq|m9TJJzZkK((V%CMgc{?{K}|__j45`Tz(T^mTmfcE>VzpyTPh%B>YGPVyyThTf-=bFj;Clk7TXOhLD! zAEyJaUfqNKXHY_VXc7?$v44@NCVxK-O+cVCKnGIGyU28`uny!nw)x`5F94(hDq_tD zP3OJb_^k*b`3c)vLaknpVf8*-roD#F*L{GU z?x?YR@>U+APqj4UkH-WCaAvYXn-cnTkiI#Zpo40bStU)e2(sT;MzB-TSU<|h@7Y6H zbE}+h`9^#r9x#G70L=X3{-~W&Ps zon1aa<24^t(nK#9{ko(pG8bSSb>TjBgSWY*Ars8z7ihL;ndu~LpD+8CvgRZGRaYQc zg#L__r0vHkFYkVrbkx)$@vqUs;K2X~&76{iB8m3NnlXoAAGk-twoRjS>qZ;X>-B;A zgd9WwDBgx_RQK&}dQ#`BP1k~opHdwKzXJK>P0@!f(UZ=r4xIDfqrJei(ni~bfU?R~ zjA)Tt2F(iHuYlbrJ_c?kgapp6`2f!P`4MtTA@_-k*87F(@gb47?<|#0Y7xDzj{1Os zexCss9Ay8E3C1AtI4~$d|8r85NANb=>WeIyGUM}vXd}kw3WEYUpB>?Y!dF6i(VMsh zV}JfIfKDF1GJxP{s^(VvZ*II-lT{m6?hY(Pdxfu-16lMMjgMD5+_xfmCl(e$`@)I0 z+Rw*&cSRpP_RhvZpC9k9wia!w`uZcupKjNi^WCkx^YH<#&a=d>ag{HdO2*nrVBIKG zB4lJK{Oisi?204+ZBfXKBty9RAx@FHB7>Dv3|CFHP=&jw3ryBA}=(`u+By)!;v((qvvOK|AjL0(Os zFB%}d!V!Wq*)KNB*S2d$0HTL+_p6(~M@ZMcz8xBb?sA6`|j$3h}+?-C?V9L z0HJofn$+D-cRG#ZFdvDsv637U^)QJ|~@M&OgEEDCpso-F>`kM7Iuz6teQz(JGbWzm98nZq1Bk-6^~E-nEE zAsrV8@ydrl$p)^eu-&60`}W8C;{hGZ%&+HTf;eu=j?X%;``9*>eQ(vBFl7FV&=NS; z9v`kw|Kvq)&YMQ}$ zLAZQd5%2!VtTw*A>IdS)$R+zWEFj=V!{*~L< zNwV}eh1)-z!V6IKVPfFfj{ZlWDB0KbrLv{w2WidjEy1fdRq0V%HQozG$kfbNaqBmq zXQlIGv`{hm3ri?Twb}qBHA=6ay|({US$4-pG~Z)BzY7e`1J_S4{F-akI{X(_bh(Km zcqwU}eb$BV(ZRLVzR*s)4^RU*ui~ORjs;4cE3O{K?5}#5Q22vrk1^5{lm*mf06yZ# z{mfje#jS(mfXwF3-1$z}|172OE4?daS0$vEA%ewgYDrZ4%0^ds(E7uRjfKj%V(B#= zVY`x9n4XFe0E2WzzgpO{fx~#(g97Yxdxm9kK`*^bL;)ny#E$)4Z6$Bd=;&n6va-J^gyFDe{1iu0m+07Iu=b-dJs159;hed)1{=e;Ly)T79| zqVcd2uPhSE2HBHW0l#otaUm8t@y7vyg1>#Mv7TWPI_W~X2FzNxo?d9rC3U4rG^F~eb=aItB(%C9E`>FI(b3TV3i-lL=R=eYu4;ZbFB$rsfO%K_^ z0Bp`y`nt_*k5AdUvHV(HV z{h!&Q(7VM-gSKk3A^f#nfY1VgFo~EycXS$eBOa_lU$waoAu%0{qrcXNzoyO&WhoJB z4_70Raq8>UT5sXaLIP0;-+%JHkEr5pknWT%) z!;D2TM%nyMbd{aA*6lEZ0h z@;ptIAE0njFc=Yym4xJatORE^|30!KVH{2tm?ZSiHOc*y^7I4r$r;iS#tp82Vxn`blMQT~?Wo z__5QtqSYP5<4a8rf0X2;4@wl z)g=C2GNvCWbHdfs5<=_*tsiGtjCVzDdVj1!`tKncW2R?GMqLnAfH}%GH`Qe+8eQmD zEUPzaW5(EbQ!Jy`fk*&lz0zI9ZppI8-_tmt_`UV)`V%nMsKC<3-?TAgX}eLyH05h0 z91p@D_VCZMxd@gzA@E_}rgu<~->n8Im(H%efiq0&Q< z3!&ri-7bKBDIy1c6{jE(_Cv~h#;#5B{1H@OXd*E%XpHwJP?AuJtgcc32*C@&3lp{i{X9F zo2_x7?+2B|Tj5j>=aY{^IsvQ`E#qrR(7>?c?6fi5yC7^Vh@eO60}w!Y>$ zn=Mv9)c8A1&yX9@HafGkXRn*F-QRWncpKdm`L<_;wbV-4inCwx8VLFT~>WXWS>-1zLae>Lvu{cDZ}hey+5~DRX(*p8e)OB-k1S2?^-=T3QAI zm1$NmK_8Z##!cMaNkAt+t^bEx9ry(RzSVYq%~;R%4)p@6Oo1992|XosM0)=q(=T(wHOG5lU!-s4v2ZQ#^qO8xex<--h=j8Kp13M zuJn0H_A1;n%0L#?PkhLR?c~qi1c*+ zpk)2i>@@O{5Q~76+dHn`XTKfTiKq4j#CJL%SdHSic#AgCej5}t^Rg)3UYmrGhc)oy zawzlEyX@?3g0q$g8juu%R5+@0Z^ssfBMNJ)Np}GF0bk=&_AHz8KKHA}ME3os7G zWm^*jq*jyLMQM#-9bKN%+0JA0XcW~YD{Z)K;<>f<>5?n%Na^xX?|$KIYq-;W?Org- zNbT~LY{VuIuY<{z_tR$4CZBXzSij4pRkSC*xHOdRtWwEz^jFI1nvqZ=#vDL}=P#!e zZCnv1KLLp(-*NjnJLJ|m!+BEn355T=-i07^{`1{@gAH(&dobC4h~7_$wutb0UE1Dl z(~EY0B{mEJLeHt@hg(<;;4*9%>(SZTPY|&M57?K1e4`VaHmD15>p}0v_>h3?wf9Z5 zPypcIN!dEDsd?;|(G;hu?NSOieYAe*WVBK0CA z7AOz9iX83A%*=~s7BBukfzJYyBR;1A+0***<Ao?kNb;x9j z>-&}7^-nbWKHd6If1B8$7`P_q<`nSr~l8?UPxwDy-uud_2%q}(`I8{_u)`3%m zxLujU1W?IRIhR`x-8FQcb6KlQ26DMJ0tUtj-gUOAkv6xj-)rp$g1)Ln0W6@tTvd$R z;!O$%NFOAlv8eG5eK@O#`l!RqOy*l%$)Vt9+-K)UmwTAZ0e2+5!>e9Ys~(YMFHMu( zetO>33{*Guv@Ci|gmokYqjYhWr@=eR6`p;I4BM$K|6@AQn0$X&LpsNM+;Zw^w?@v# zhc9v|Wg2-8Eq1rZ2!@Ud0ysWS&WCVcCG)LThr7!x`2jpa7o>3!IN$}FDM6pBaXX?r zPo=C5*jXOkjZ=?Y9dtA|=jx?Me%)W3PJF=mIOj)88EBWzWB=pf@HC3?)ACtVw#U0v zAEJxZ9I^|tHjr`C_5%p?^5*`S1EO{ZIq+KXtBh`16usY5Rw--GDl`y2-YpUEf4n?t zAD_TVajnB9;l-+}xzZHZt%2;Ed(71iUUWTY$CpoL?IVU>OH%mWoz6Gfk^9_?7;XAL zdkF&F?HE1K`kbe)tpgU9xys=1@2_Yd!f4S4K9RH7=yl*=KDjIGUiK4S-*eviT60Vy z7G0W^UBFbIPOB?#I6VAzFeX8@hu*tBkrvm3(jox^uYB9v74Y#Cg_Q44T<2c>V=Qv( z;hV%zw2@jB2EvJ@rEmubOs^S!)aJPCIIwXAeT3A7OLJ^To~H8b))}nceAtcdIqf?w zKFU6NzF5eMJ#Z1@J;)O{j2MA3>wdWli9U8Ooi~cf*>au%_l*xM+A%vqnJ6b@(M3cP*1G>Fg)<{L2cCs5wbSIPlSA$ zwI#RnDRC&1!PKE0>sfYs_2Jwiz1fzhwy(>>;`_fgVljLbwJ#4_Uz%Nf4?8*6j279@ z12cU;<@&Rlqj@1P;4fL;aA4;S$^9F4drWHC_IzLcCn(l2o7edGou_gecOBVZLfWLEuo%1ae6N9oe`9tahK)o8+>o&W3{BT=MW3pT0l)YZMJhT{3+nYNEO8&-8>ulHo0eHZ z2FbIrIOLTe>L^CGD;9mHcioyLe$;>P_#H9i&LX6qJc3Uy`-uvuaqw&3RN;o3a4n;|8ORN-!ZQ82p_nx711KwkY{DoH*;W z!{=;C`G;53UTE`foP!+%4XOXr&2Gs`JbO;`^u#3xPA70D3VCo;i;~JGI zKMCX~a6msNXy`fH5NV;m*1p?sb6d}Pz=kb1uJB{6}sH)2ip4qqgI)5U7j%1B!mbjawxIIdkOkd^6A8+!@qUufip4 zH^iZenUHk+>!aa^bSt3H^A(TCy60he-DM|=bkA|(RFvh3vC3nqTMj{u)Kfn4 zL|TKN_n(colmlLOEUW>iD2FE@P*ojdB;3ymaz6q;-Xnn8uU0H`Er;{xm+luv$ZKr= zM4pX1=(QrhUF8wHyqqk~x;od$obVk_Ap%-GDFpeB1H~!Owa-;H@KL^jiuum{%zKni znN%kKd3$PWlcJ0-7*T>pe19)4OaPb;eM$!b4P~5nxVE{jkj>|L-cqW& zvA$U`k^)a8PEEu*KHJb}gHnkPlrSLz0@h5O3c@>TK~#_fKi8_y78;W@$#E^%vFS~G zV!od$^5?%M@dY?h(hGGUAh~Nyb1Fy8f2HypksAf6LTCU zx3}S(7Jd9|VkMB2;*R5y;px<={9X1U#vP{vjS>i|1+rY~SVp@YP$X!e)9^7H>t}1w z@Gf2X=$wEAN+fLcfoX;JE>&SOK^hO?Vv8iYV@Yunh!bjC)xVw?=D$)e z=yNLvfVGS-WO7+Cim{HKGO+Nkw56N%*$N?NF!79H9Fq0V0HP-}|4Mz-G|LX=*Xv%2 zQtI;GX=bvva)!X%{imLyYIbmEd;0Q&Lm=1X`L&Wd!)~tDE>gw>pgr7I5S>(@r3$4- zoJcvOadn$)QO3(7;}ul4GS2k0J}om*(WF@OQz3FxFxkS%WDu zaZSonwU!DH7KWefCt`6shH_;MwW^vj4b~f&tdU`9vm|w?ZpY)H_+Iz_ReO}S%^CSp z>NVOTfG8k;e}VjLdBSmgP69!Gu2Pc?J<+2@bmf|S0G^z?IG;d00X-8ld6Y%; zMJmt(kgJioti4=P3j7&RgJZ1}j(RD)pLX+2lvu5@+~>?=2vuy9#B)2Fi0`8R#pzWC zLfG2*>6tazP_CBwb*Nab+=+tg7qLmQ$SS%+LD=QqEd{QwYXugPac+H0^T-!%)7QkZ ze<4-C-;10!%&i~yRJfe`Fh8$XGVYoEqlxjoh7fP$AR+#)Ct}2_s=DWn;ae4gYuZAy zN%5V9+=0}94k7#<(YMnTd76|unqn-;mZ+g=rvr?A^#)XJPu`Jh;?gFIdp$q0@c-Ms zLZhxiuW8d#6iy0AJ|IvpfRR3Va@;rGFOR)<1#8TP;?9mMn>R7gUY{5}UKnXZeIPd% z0Ihmg^>_gV9QK&#qc?@qPYx{ps8FWizkRt`_T@S)B$T8tfNG5VPt93b_1SS008ht) z2|Ncdcm26pN5S@W-U@M`K+mJ9xMDa9NmKzB7wsiJt7Bj0;2G)>jm|;Dwye7soK(?~ z1%PqbnK2hIl*cW>2)*?mGl8Qu#}~g>D-brR)IP<9iM@xx(xw}&vq2X=*HNFoh9+Ss_7|+>_)%_k)X*HU|NX?Z}mB`rz>b8?XyE*eU+2?niu|cQFm9m+I zq7>Jplzj_f*s-{KcsVx?Uu($yUmXX=?AltiJZlSb_RUYr&zqt2AICEI83-|+f_Fe7 zgPu|tY8ov})U^C19Oguy>5Tsm8h19rHehtuXSDwF-MECZGR{k%Ymc~JlnDWBw+H|h>%R?WId+TJC-dmRPsPx$20@ z7Ji|8AfUoZ0NTdFMEOu<{oFeBIlJj2md(CV1Je%d+X*yfiTTSINf=4CmWYp@W9WeW>5yB$kWr~r&Z)I5 zyXcJklYk~8^b;efYnEgJxK44Hm=vRV+yr$-y>4=`Odf+v7WqhyaZ_}z)kj@RqQE?$ z6KolUMgbEdDY$!E_5ub!s%;y|k4EVz2`eszG%A1;el)J6PMuWdVf*8DeHiaBe8^n6 z;s%Rp6A}KJcjQo*h7Ik*csJMoxQj*C>CJv&1xsEp#tT#La-paTaAH}_$zteQFqCJJ zam>!V*^({bG1KWPw%2%mKnPMw5yUbQ^_5*2bDU6}6Ts#Oe9kRj_rM|+`DA=^1#YJ{ z*{Jex5I|wNTJiE9rUg1bPZG0hFkfU=J_qWR-FI6sRevUT)(>w_(im{Kc8xmzL@OA75_)R#o>rY#&lWl$H=dq@`0j zJRseOG)Ol{iKL23gLH#PBPHDpA|)-2Qc8z(eQN{8^ZUQow=WSv4rlKbGqWb{*<9Gz zr+OB#!kmMcM!$EumG|Z~!uYY;OPudUwgBH}y5T35B zwBB3TpjV5$!-T*(Ri=iah~8s^YrFz{7W305>+wk~cJBrk0;&+25qGZ>h>hDlstm)Q zkEz+j?AfOEsjm@jH;qZ3VLI~I-Ji8m*mY+1I_s;LOWfAVFSvqb3H)tKibNH?a-uxT z?4GE=|E~A-jqT*#P1#N#j|Usisf+FQ1`1$^^JOO>aFy#Yqx%FQMSf~GVI*kdIu3Q3 z#u;JC;q2%gP)Nd49b(~(4Q!^87Ox*riaj2SRu7OTHHGZ7iF2x*S9lV(9?V{6V+-FSl7;?_TpD;JYFE`eDBIU z!owH8TkG=_sVwN z49;Xpn)N-4%3ne3;dc`1_&?!CxTtYWWBkwYPCl;I^5MjI%qT) z+Q{8O9lGM6@?~5oTpKQiX|rn^a|z6aiq47Q~xDF0RJ=iC1r zGA-!$wy2XW!Fsy5G=p8_X_z`+sZzQv)#}PPe+75o2e?=ZPn#x~-ZL16=hNg@x{<Ede5=b8?X`f*~h;M-}t4>`kV~EZ!`xKMHO39J7L+C*-LHbF7N+b)yu*DLY63! zQeuTYBQ(9E%gmN#lS}rdrd?h0)be;Q2b;;mnljZfOD~`2_W_48mBz2CMK+F;4@nj* z@8SIE;J2v=;%Ks;_v@KKddvT~<}0RVdtoZmV5nDl__FBj(9?+CqD?8l1@YI}I(HKX zUFC|+KrL$sf5!@TsU)aP;0SIXFXLnXhCo)EaB)aj#$OmhFxQWZIUPTlghZh zg~aAGbIl6N&Lsc&?ktQaamv>k3O^{v@3Op`KdnrOXKhEMs?xMOxRcTZqA)Ubts22S zo#Sl|IeUjH^_wcg^))BjO33WN&kB28YFXZh8rpD;7>sUq!HQG)n6j5Bp=IA4DH>#f^xIPT+2RM zWUEdlTo#SiNq2y;9~WTJviS%yq(5%s(8i<_8)^=g%^PVv9J21LOqO2ZUb&8o&Z7Q) zyv8AdG0ucH;6eJyTY&e}i{_rg?FuMA)NpwDqYj)(?ee+j4I;2dN9bKFU9HC=NI;k;n69L6Qystb{e{<6KKqy7e01BQFXOWbl+C zU$CwOVv0AnkZJAeSFqmtx|SF&_w4Z$=_l+GWaV0gCtv0)YObD3g{eeF~ZG3AjGp@PBTXI%}W2}aZ)=YyC z6g${x5-j(5CWr4Wf^=~Z>T{eQy9=YS`jEFXcBh*8Vc6V0@nAiply`QyYL&seEFMp9 zJjz2s>C)K;xw`SbbYz+wXT)G0sTbPXU8p}M2FS-oe{#Oq=wa9{ez7JNbMCuSxApH8 zfbs>F`c!&EPvQB^dTS&0&dXbXO;d54!n2utdvD4syO2nzCO(XB0 ztK_mPkcz#tjVk|>-p~7O>HDX|`eAf(j`m|wd2wa)lL`$ClEzaofdS;f(5I;jB?ro) za+WK$w|5?SCYxd^Sxk`}9aH6XBkGH_b!bM5NN-g=%1b$&udIneBoP!ZhOLl)ZXdH% z{b-+CH6KFLb}qMw{}$O~tvFqshF6D|2xR|G`$%E(^sWZ6#9oiCyrTvyLV~zR44s(pH zDs=IE4l@vso12-N*jMkI@*7LLeg`kKr!g5Jqi*L0XJs6GLu`<5+hlyx#5*=&02f+> z>7Q$5DAK8665NEXni9E<_cav(rdo+jnG+_}hO5P8-C3Q?Dth9nEFoHFhS-!W{vOC< z=9k4ak%wkq-dXx14zL@<5VGeGk;)v~u2~h&hj?$mqBRTNeOyk(M$}LfZDf6i@r~3W z+(Jeaw2?;U6c1#Ir3U5Huc=~((qt32$s}{i;tsFz3CR(Bk^5%eOP%)=l29|gqF^{! zx=%&A$A5g?d5m~jU{4vRFR;y?w?W|!p8xtf;&~3cgzIB0I+S>1l!PA{DB=-9<%OBK z$5k$=+&@Kbo#9G0?dWOMF0+`W3ifQab;D+{zHgw)GcLs@dMdTUNVkvR*tuUmH16-DBRG7}xduFEA+qv&j)p&up8Fh3z&m%I%ze-F zr5_Zx};hI3&q=BUCi{M474Qy%z)T7BmP|A z?&6w$uX`(#fiP6g6i*2Wn|0b}#3B| zF7ziIUcpqCsQGP6<|&ak7310ES=OCWIH^lz^AjPC*A3fk$_=U+e0+8DCCXh*W7++c z*Qz5wFLz(X=TcFWQ2G*UT~8g_)HX(yF9?*y`#lx~inP?hlT*t#&HS( z7e{GyTkj-e`8uTR!1ZdIiERLpSf4~tul|2hm-A_hS7{3$_@l~pian5M1q~5Ea`Sj8 z8CY%|Q3KV#;7ZW|RG{_cG$#=`!uswK%~b{CPMVf*zH`AZ%ZCI5HB*n7-Vg1wF@3P^ zxaqbZkux6UAgr9kJrS$6*+^YX8J#<7t*eAAw7XmR&O?=OV%8(sMWf_HhKSOO=ty&8 zgA*!w;Vp}WePX9+XFD`j&$?x~vNskk{5bjN@`P9%9`WQ~8W^0Zy;>HI*;3DGEavu) z3&JqmGQEQtGaWrYFo)tj14y5?KRA(}GIkBix3WczNmYtF-j=T$sy=;zs9z()CjM<& zwdA84ZFQ}aq0D!%vhJFCzco?zEk;%jM=h1M?!22z|FrX+4%g~p4*%JTmPwxeBSoKi z%VuEA2CC+>c+JGTE_b!1>ltnDZAxvXd9d`}^p*$Ot!HaaKaUc+0rGai+VG|`v#tJ&iXc~mYwEyFEv@g1;vaqVu={25AqUW`91JQ+gx(YF8Cl2@)VA~>)B>j9HG2hC8ehdR#CP9Heu{5(<>*H1Hx zSRNnldksn^l{wmb3q1-1PFW{*+oN?BtEZZuGk&F(-=O_6_1BzH8u_FvOAPgHpbL-F zCb=+MQ*k>#>T3c|JR)K<3R&VP_fgK58?b?d$Exo&h{?SB`;pZ>f85jd-0cH=LZ8N( zV1O_OL@=>&iAGlan1_{uqcZr^)bAPcxvTdY=m0#nx%e2__=Yc@@5~8&0&Jf#S*ArU zxf;V^vpzH?FL@PZ-eEx7&B6YJUy(@DzV~TtSZ}(JSiJd(T+|3j)sx2NdsWTNu*up|b(V=BPr zzvX%Aq#l2=%HdY@t<^(OoIdvjS&Z`f5++8fKLKp^Kz0zu)a-cnL0o$wGj2PMM$~ZF z-&QzKjTSjX15`clZ{A_ac=90}v_8RuN4`KnS}RM>#&8@MkhEmXm{jw@p0DCREL{5{ z)do)I!5?1eo%~drbK-DXZE!nH-BnsY0_R@XR@Jx9p-3>{=^E0U)RGA&!K~io-JP?> z6>~C>#h$;%&v7&;!_lrVT30Lc4FT&DVDvKirA$7oA>qbu=lVkp;&3=nI~?!mf}+z#2O0WJ#ed>vhcZ`DhR% z`j9gy_=z4w*8H{!1!Ec~-D*4UmxlWr4l8cN7<=W1_7}-lMMwsgjjvo~W&dcH%cc0> zA&&;r@r;T~cW$$?J#?xCp<+`1*TNK!)ATuO^VDve0g36)b(Dnuk}HC8k2oO zX_$_~lE+E-?&@ysF*b_yWa+E4bJF1xGL}`l69INFgK%lF!F%e-_FRrCS72rsw(4Vz z8eUE}yNXzhBDhaqL;+Dimv?z?ef>7|_KAmt8eph`!wLj_hH0M4XssVB=5^X}iecj8 zc-IS}D`CKkvc(1`k`j(KJ{%&cMX<|#ea`c$=xkURN%jjcF3aXmdAD#SlW5OMIVD7? zD6G2rRb5FfUlqv@2Y)y6HeU!c7d4{JDUJC^lQb~spDbm_zabxi%9KqQ=@ICv;~AKv zd~|O@(qNI%|KYu!XW1^tAFPh@LN!9@q|9r|Lbctd$nbDV-@ea3Bgx zEOrY+9_y9+eRRg3KAAUmwxHeq9PSTJR^6mWBoEu3ZQL@kH1d}6A|~xiYT7k;!87G&ZFfvCbu7{_jl_MrD(s+mim^@H^ZFm$G?`ZyY-w@dRLk6K8hZsmoeN3w@S!! zdK8{`CJi3vNq4Ssjms^=FYIQB-NJ2IsY%6j{q6}ns>{lT@5ZB1)=C=$F_o16&poOD z3F~4r`Vz9kUMnz+#&Utk8-LkKwwpxIv#nd^7>oWM{km-uC7Bj`-+p~=?5ir%(1;4I z&~S4n4{%*8<<@%4Z9@u%xNJ@EE3ToA@^c&Wn=C+`4Bca6;qL*oC(WO6H};Ojh1!au z2RwBOjJx)vx9x|uI36p3rH?0mS4S($=iFJt!@e$gnOi}bngtRG*%C$!H2XNjp=uWd zfU)I2e6yt8bhrt~42XDK=3PH#27Py_#vcr7vdQM=TR%*iq_ly_vdcIc5AGiN3)_$u zD}D~1wc&{rp8in8oGmrWDKFG{ct5W-g3Oc~up{s4Y<~|Xn=-r_>_vPg9#^nz-=h)A zNp4y@bad-MouihHi&O+jo}=|U+`Lf~3d+>aNoQ{?0Sy*3C;HZaNyH`rgOOQWnPOjM z0=%Rli?gZQKTwchDaLAD_iA!G&Qr?bh)}or7z0^e>8tp7(G$dDr<-$Fu59N4r~oxf zmY})6_ct@eo~ryZ!H(T;-8HyGbVftv-Jd_!wgd@pQhWQkt_|GcRLe`@&UiK!qcW(^ zW2?hu`9WqWqJtfmEB?ch<#o{Vh7cUh6_4yA+m9RqN|DytG#@s!PTcMu*#WCG2Ru*z z%52Gy+r3Z}{IVtw0wr8Z9W9@|ML&*P={V;|2Rf(xliAY0&6cXyk8D7GZt2)Yr|z$H z5*X}P*K*sHGZXWRq+L!n&}wC#MGp{Iz0Bh~vxu083TKifOBi#Hsn_SUmqE)6@ObHh zF}J}3=6Kt{+P;Pt^~`2L&-e}vK@JC`R{O))MLSP@56d)06CMDST!Z&!lcOQ6x?A{tg#XE{T1lcVeBns#Nii4u9=6j<0TaR_DTbCX|fbC%6oA< zL_jZfJ4kzIc?Hbo_X&3}m!gY|?=kR$HfC;RLPNl=Y5tQ(D^Diq)!QrO>2}zZIWHS5 z12Xhg$*arEepZwzqFW|hnpwVCa!gCHfuIfvxXLC=K8MfeVE^cftjpSwkNYZ$3L-3+ zZkjv}$u5s+f<|#``gL1UcBv>>>2ndI>Zfw86-19fl8Q`t?cLGTFt4oImv*$T>2gDb>?`I3Pb#p&5ug||i7J{96vxZPDE`-B;O7_vt zt!qZ(A@K-7SwkiLrLUy_QSpOq0E2lWwy2}2hB=uLNm_4sp}qen$Xo!2tnotj;g@@z zKOV+pn!jS_P8C!uz7EoM`0uRWxu)?!Y64wkz5RRAp#`n4mgoex^XO5Cjb9OSC2;n+ ztQpIs4pwmn@N~Q-WX~O97^%^ePu?an?nE9Px7lTrAaLwqXJgk+Ke!hjv5EW~+A}QA zRi{00)1`8?FU8d5SXx{CAHXEbm;(L3fJs9o1($FcUDEXySrXcSTFrNXL1qd{d*2fF zx-BrO_}Tq#<*L&o1!;lh@2>S7SJD^=`J-UL571~t<_kgA5Gn{Qo+_q|*1 zWl4hBa#9>KbAGG5E)dkum$Yv2@L*m> zXe2G{A_Ab4tNDLgr8$%q4inDvC)yK?#If96Fr*e+!#vhuYA(WbHhp>E(F_{@b<6Y- zDp3m8m}p+6?J-fg0jq6=r>W*_Cqn6Gr`mqraQZ;wM|Ou>SAwNZ>}gt~5i$^tN{&ME z2-b3a!v--%2pJ3@*Y4+T_kE#}-rtHf_1;4kJ#Up8J&+=`YmX8HnDRo!!~U|rKtk*7 zv{arHilFdTT_(krk3e@7ddMz+nwjU3_^k1WWRtUM3DaB3B-x(lefBB{Z4#CTrF(pk z$w|y$J5Uh(2!BdD%7McZz3Utb-)I2mtc_jQ0sFPRQ`ltT=SFm5HGNIfvY+jb@}w6T zbLsCr*1WP?!|U(f=Z&IYp%1+C_}UUmG=oOPJRI`(*X#kuDbG$%JffsT@4qVuuLYzi zXdk?rwL2JnVEEt+8)yoeMNY<*pJJvUP{vTgh?#-%sIYLaTM0x7Rmn|rnP|WG?y8!T zt4|)70u)@y@sxx>(Awl15{Jwwzve70`!aKc=c!bfV*GyNZT$jZGR!}qeY3pYeQOqi zng~n)|B#ir%@wJjJwW~hM6Krxj4_2UnVIh@3*Xk&nQac)+HjnEfU$J2Q-4?xlztsO z5TzyUh$NW`0W{E3pSEogN+j0*u6yRIsS{Vg^q-?j<0Z~*v^6Up3VVUxQD8VCXf2^m zB2Z%Vc|2~bqYKWJ3KRhjk8c{`l+cD;%D1+qD?0vx2G$nUhM zl$y`9(fCY(yd%>9ILLwAPs=7bV_tW@j=W&1zMf(hNPZGo{|r^jxn5($@P-&HYW_6V z3{htGQVvBtsb)E~`hztaWQR;{D9d3cmgp`K4Ja0}Z#HE47A5BaTnw8&n#}LWTxq9C zJ|c&ilH1c3ofu#DESSs)cwH@r1f|K9{UlVeoVlOA`(=eqo^T}$c!p%-jS{nV=om_0 zHr7m)&5Fg1d)4xWOcEa>!jQ1;E&9W*_V&Wz<`5w!HDdfMpWw0}8l+UoJSsP!g(6h| z*|P4Up(cXH#%*tO4(1XWmkX7n%Av)B-&y!xL#!7D5rC=RE61b4M#FKM_cdG6u1 zSTO1GkW(R5a}sp%5N}3?&2duO@!tG~7EDh<14vUNh3v|J@iHr_ zp&B;Vy^jleV=8DE$NTkXpdgPs27q(6ra@qMWY%zc2YxT(!*S5)gIEyTTpN3phq*-T zs34lI-R9kC`&t06F)9(IG(GckIPmp)-TOug=1WQDuq}3lf7PTlb874&2CGC$`nOJ? zl#|zpcLa5#u(%N%;9RUmUv~BiktAw(s*PE=Bd~%&3m0@Ee**wxYv;+*72tm7$bEnF*;U20tO^F6&s!wT0-gy!IxdTv6 zwf5vC5SFY=A_4dAya$w8l&gzQ0MnV{fS!FzwYPjc2uxCsU>lbAru^e)%sm9Ry#8xp+)5#&XhOTvtC_m(YkG*GIIQpp`8?t+$m^T! zFgsg~JK7_j*(GDdf37h(?XNEEC?9$uXU^@_F~H4phDnYDN|Q_&>t_--0&00-c` zG|(jU*|%F%x9Em9ocJwcBWPoVX7Os)Eppgx^fDsj!eM#O*xRK zW1*D30WMaRSDYLY9Aht6BrR4ms=i(G?ieId3dgl)e}q!{GB771x?So%zvLKP(1v3F zD+)5-M+QdBI=6&pWNykbFkGA=t@xJDxH#zpA4bSqYigI-Y}cQ4Jv-?;kFp9>Eh>HR zvKJh#uecSmW-x7j1$1bgJ?Jj@4n9(CmrpM`?SjTSpr3M1dNHsvz)Fw0W9Uuk!?F*- zNkF-bS|jM}`JSV55n1akk6i=CBN95Pq_n$5#ajCxN1l4>Wy_5d2Pb^Z(0b#NDkOaq z{(~qwY*!I*lKmyzOuYR#oPB~Y&CRb!#b>o+`P}69S-+K;)ZRlK>YJrj0_^}LKBg(x zJMzz*nV=8C^_rsdm?;nF6g+IB8BiKO{JqT-q?$R9Rmrm~y8;Y3QS8&zLb-BUuia!b z>nwsXz~HJG=G{s)sPgP7>G<$)V&?fnvnxBSVE0J&7PX^K-J!I2&0VQRL204)PjLZY zkZ1vzE`%vJv>JW?Huc*x%`s1gXK7{)C5*re0;M*B^rLv~C;pwJl3%=$SwS@WJ8A>` z>Gg3(w=Gm5xV2c`ms`*|yh6?vCR+{U7OB7&jMbD|G)wkKKY5*PE8P!VSLSW9bqdE=r_85R{4mwu-!Gv0Qn4D(6e?6I_qud<|%1|2koCyN4$6w@ONAxUolBkSM1ozV^y&9V+i#d zUwAjziP|2a*H+Yws*{Am+REpYCJyQ=L=p17W_0w9_6EEru1?O(6a1v~?A)lR-RUCv`tQ5Q8lx^jAg^MUW(PA{+A&8fOBun3MOQ<}o? z^`s`H`l#~N?$5=K2OIZ1T6k&rAc!mcLFb@aYmrBmU=Obx#ndwSte!7jI&=f755l(! z?z3USU@9GtIb9@&#$&dN$tyffev=55j{Y&Ee(iyr)jn1wPFZb-J#N?x{3j9EH}?Ur z7KoSwWC1WPgr>sLr321C7p16tHiG>S*Xr`nO5i%Lf>z@gG{4{TwVJZb*FU!c(jkA5 zg=waM2SLx29Xj+O?|PVXDNle6rJVLZ4d2!U!P^6t5G69em_cbepamvP1hI(Tvsa9F1t@LigculFe2G&q?!&DJ?` z<+9e%R1dRB+^zCwFT?a5B){@DyqtjJ^p$VF|GB@e{G#Rhxp9G`wET}&*)86@`C<3aEFuRXI*RGNV{=LB*+po0|H zVw#J}8SyTUC#^)V{eWc7lc`g53*T|D4c{!wez>;y@g1YZb#xLuHPBkQ{iv+?wEvO1 zX!|>~hO0!W{ZDVgb*GleSiIm756@4Xse=dA;b-7JQhXA3qaScxwj|1Cj~Ov|$H}|m z?*A+d@+9f;HA|r(Jn#3Xcvrx8qC-(fEvp(K<#M~}AXWZyk(4Y1K8|RfiED&Dw zs0Hb|fH#DUYVV*;4m2OgxE@uXL9;rN}wqI;LUe<83ySw|n zUxuYMf!86lbDq_-=ce|vpXq>8cw@;a>-Ttpo$#;o>(Om`5ynn2h`&mZQ0&OfSKNg= z1L#es=BhP#-tLG=46#p7w8Ic+9+R72tWAt&5qV1KySh@;x1RmD4bfJvz(9Q}W@fS{ zUsY9Aq0{oi38xXAisk(3jh_l$B*OcR*VB-W`_pCYo6u<`%LSd5RDUje?KhL#f!bt4 zP|yv^3I*haPaL62+I{d6e*mu_*qineo;v7pp>YoUd+XXD;~)TJW>HvuveEi=)X1c3ckkB%!BlL7#&h+*p#AT~CO zLOiZEH#hHpR_9-hUCq=tK)rreKjlsFZzQs_{7hBCO7d{L{`%S+0!(M%$-Ujd zQQ%64E~RazrJrpe6~VrHavZP&z#s6aW`;8F9{~<7qwy7(_eC3*3ol!ee9$M@Y~&y~ zV0N(&3ehMF7l0}Y3TYjL*C_b1NFvXcEhrNm;_lU`pP$emE5L6LpqZY64E(z%lYp9K zKjAX%abB(r>W)E+xl#z5sNb6;c<=DX`^|#0!-D+jljZu;yAXXsU~j_VQMnD7&~|L^ zV2v=P1ru4dt`$f$C9yebc>k1o8WR>1sfB+R_PT%m6|LU=vwQ@YNNqD{D>Y<(R)?=EOpa^l3L1hn1F zDGHTWBf{X+iQ3Qt6?Py(7787Wgp&SMAEhUdR=4ckEu_GlAEyU$Z(a z$TDh`U4^PyHX5&ce%Y&ppju~u0-$X_4izg0^De|ZBS@qp`2REONYo`ZyXv?M(W!(G z6o$<9JZ+kM3^ZAp@CuQAV7s@78tp_24)=|mc7BD&v*zMG+PTp_^b;*?WDPv!HINxo za|+HCn@gJMfPsl3e9)l)gDoa|)%_BL_zr7T%giH|pf9ln;^lEd_; zYFztQyA%0uz%~F`%fQSGO-Dzk^k$Qf3)m)cAhwhva5iN7r|aFjOIeeie%BOK*bXQN zlYyWATIFPUP#p#p*aIQsN#Q}_{({rzRfZrdVIW~k zSbG3iP?B8LBh{CuBdT-Tk5|^;t4#(31_vWH_|$pb&hhc^$@<8-^VVG`M4NeJgqr~LcEL>q4F-X0wVj64uo#$dN|C@A z%K1_%8TP=o8eJ`JK!JbY<6_g~Oo>00H`8o5eTN8P{3kwUUx%v8fZv!zPmwYQoudI; zDOWL0$NS;dXs;*Xb%Bj@Xd)!*N3Di;juhO#3O*2B;=T?A@2Z@8^aOkd8y$pm0cc;@NUu-OLTxK45kQL(B>oU?x!H zZiji!?q*o4DG^z`(? zWyIjC&4LHRz7)8a9kMVCy;G9Z;eJp_0UWl575Z@9rp}MvZ&ROxFK0m?qg>rK$m3bX_T1z{5i43m?SF>HpYF#Qo`SN+!~ ztzT}xxrtkKe6Fb=Wkn(gmJ`go`MR+7;Su1CAgXKIqX+@0!R$J~zuE)7UR6{u4dvFB zd>z*vq`=R#Gv+Ui2o{s$(* zRZz2q0qHUr3@VZQ=?2Lr$WX~2$&gRk62(!VN3GiovejQ2%syW)0AkxdHJs=& zM3FDOJ2S+FdcVt5X!h`==@q6ufPT*+k?+G6dXulifIz%k zce+zBJ5qnjB?N@An3|fl`)2FgT~n4b#$uOsT`-yNYd9Z{1p%ob(isu0`JlQaFH@K2 z9Y4*?-ukrOp5e0{HKZz`TNc0=>(&2Um#1dCSQ$NGyuQ2)ScxlAX@T9t%&P$}Rt3zy z&Di})52=v_@VSI`ESIT}gULSHzR|KQ-LGX$Sl5@o>})2NTTlACO-&5fAeN$)G38`F zw9-3puUqT9?|_~L11f_$zjA>DtTra)jZT2svTMfTi6D&|09Msq_a&8NL>P4YF}nBJr}DF{fpYiIi*XFm=nA+qFmV4*bwlXt%auMgR2aL8-%@S+9YptR7@XfH&= zXy}UNuwTwAr;P8e@;rk$&QKYl9WY1r!RC$;^5BE`P0(V1XzJHt6)PV*0nH*#$(>TV z=%ME>XpSNu!Si8Eg&7psO$FA-!SUaem$M^W#YrdNXpn>;J^N!Lb*QjMC1yB4T=D%p z0yIEucVMI=D?Y25!AsspK0PcrBY_Y+!S}wS1qKG{1KP_xSN`;N(%#I`^jV!Pe_~?d z{z0!-aB;5?DWpmuBvK6k!nJbr3cNH;azzCi51nAtn+&CftR>D-;ULLc^$0B^Vqh54V=CnFYM*X3o}`p zsNCO*t`C%p=YCgSenUZE6B*+b;`u25xKG{$VQ@mcj%V}dgA$;*gkXMWTP$ZUj@IkR z%O{;luL=HA{GeM)a@KpceWw3SjM-Ie&|f#!6$7Fvs46!MT1AJ65`Lj^g`ANU{J4+yY?jKym;2^$P-t5+G@T z*3(-89#g*BxKgVxulK0j)f(g=243stS5G@BE>Q^skxxf`v)GVTfXb0(gGrnp-qNFW zHHS^=0N^;dHjjV31`nK+u*F)grQS~6olkVPl(;H2@l&{mR5`cWZd4mG5KtyR9 z8CvP#UvGiRm0{_|Nd^Di(=dqqm%QIXyD{Q*GIDRT1*jBe6b36QS7R4Bv}32Y1FHxI18tw$&HB7`Z)3=*Akze))PGIB zlR8Wt^EuF0`P{X1aqv|wJ~`TpKC5%xHaSPx)dBu&G?M;8PhtRz*Fopk5_7y~Zf@Wv z6jBuFW$bLIpEzU?T@yFJHKg3ymahdG_v+%AS*jK|bjj=7gQ~iktrb?< z8nV_feEQD8zwUDYRSHlFUB_aBsWk{GvVT3re06(oVgx3xz=&270)$x(WkC|uAj#>* zVfWMb6*pk4f)4lO`R87MByEe*gL0Pd-6J3^3~ZeS{?qTDE>gF{oPVZALyJ6biG#zm zrv)gfokM(I-?3yEh((!4MqvYG3*2Nsx`x*+ZJSHN)NvUry#2hgsQ5976l z=gHEv4QOek*nMQ#up|d}8i^e$1iT%S8!vsA8r%{e?_&Zzab6Pt|42l^!Qq+)_Gb}b z0?s)#@4&0f5spx|FEO1$P<#V)%9OP75^r`ysfRV_>xPsH3*A$I!}D6n5biv^eJ3^I zJkm!NG-pD|^K)ZsdN$@@!y`ZW@9`FI2)x0i|G>SI4Gs1m4{sJdT3e-X3Vy|RcMM$u z%DxjY0;Py*P|is@9(31BX0u^lHh-!|eaFQ9t)MjXZ^#l#dMoa$3=4#Ok9Z&s4lV3# zOw%^aq)*lL3BV=DV{ngBUlmkg)A_B0K$*KWG8Al(2UXhK8R7Rn2cMfJKygiz1C#w^E&CEkacM*Ey$Tt zWPPC-m3CfZ@~usLydvHVmmtHG*c1w0qX5p>H;%v=TLC!AeX&8OP8E(`1OP@;xC&mB z?q@qHs@rzyHjj7$!6W_zM<^|FrcOmcq&S8!B`B|YCeeKxH8LVf4Dt0gpYyNl1|136 zT&vgVm=5$Sc4NCv8Ctf0vfxVmS*gedq)IwLw8)?M2W6@%Y1eWg3@z|V6`fcEPQ0@2 z>rXU3pl3z)PGgPk_9-mlV`Jcn4vu$5;CgY~iTzlpudk*bkD`j&Q|ddZj*o$FJ(VwR zdkHBfVj677?(UYg=Bbf6+=~YX)0fo2n|D+DvBpDQy7W7_O{|P`{u_cpHsEVt<0tu5 z1x+t^GtrdBGR-U5n+L0eJIgDO!O%WqJGW>q=G`PzSC9%J#9xx{S^?TlZdxBsXYf5$W!5Fwq;pQf;$_;1>>|mXO+^#>a zJa~k~zi!BBctW(X1^{QU=ez*aa|zS3DpOI?T49i}z`3o9Qi%uxuLSE&eqfD=P3-UI z!^<4{=(ll4&r4Ww`rwYB(?f-^3OGpk)!0x1)=#=$0&r{U@*sf4-Ut}#88%+pd@sN- z`qLsx7$Acg!N1s%*2%oRfBL;zBv7kNzbPlOy#jO09*EN-l5Y9#ax2)iy%%UsN7MMr z$_xu}5OXX7&Gn!V3CPg|e?ZPy93_R1x3R{TZe$bLk zg@tnVMPUY0X+4xD6h3GfQUSxmh1T-xi4+2-F#r|Mf;X?v}E-wZFf>kJ+p4^>owLH*) zdEa-~E_^aP%?;6auXvSV9qnC1fSKH!dgY?$4ymy7Yw!`|#eh5kAltyW(kl}~La_RWeIidO=*`+|rPwMBnCb@rQ>*;nW4ooEfWqHc^ zZ{{reH+|nb6^3FcfB^tafjJ^7$Xiu@e^29;H^KHzzXo|pG}(lJkoA24`k& z#3y29{3db!0-_6S=D0#jVjQJn)-wSpy>S0TFh6;(-clUYUi=>ZA;9!L?>vT}*>Goj z%C)6mS+c=Sw>|juHq^5eff@{ozl1TQD=zjEfWCOn9L7R{v5PCukhP#0k%INKr6vOd z-?4$jO+mtm*7Am!NXoCHMgj1=I7(G?P{zu+9{VlAaFi0E>}q|&&W~*`w4h{+s{=1` z(5B(3pf)xowu9F*2G#`#&-m@BNgaSirict07acf>gEms)hxoOB zB~5Ji#PjZ_--jnvi~PV zSmWP2nBv95NuRik(*52{B-#~L%r>KgVDcyn;y;=DbE38VPqacB+^%#~ZJ;k5Rt54O z`3+<-*`?dR?=6(|0%D>5uhBahnEZ@PJ&6AY-b51(GPXa3Y_fpO42AYVohb#6P~F|P ztJ;pAYv5%Ur(t+d@!y<=t|BW|Z`1?DLDqTwfM}}? z8%B}o3^E-ee9FD_5w`B|!6-%=wG__>EUw~z47~qjAM8Q9Bg9yPm8szc3c_>uJ~L;~ z0yOO@j~s|^7bpn7gQBBS4t&AD9H28Oo?Kg$usS&=VYogg%>zJUpf)){90+h;X}Se%M- z>mpg#Y2{hb?>jhuyj1kZzuDaAkCr4=P=KoX-9_{z5M2ZpN@4IZ#E_>Puly0=>Sy)m z4CFfo49vgSiaAb{`zS6Hve4vt*VsJ1s04y?Mws8g;c}V(6`|0IaQ_?revU16D8xp1 z6AAXa3P*x6l>%Bhst-(UPPJr(D+pj4Z4t8@U-;{^cDR$ymUzOM36+*kQrD9=rR#va zyIYP%o_M4Hm3u7lj982Qj_bH@*hT?S`{$bD)c#_>7$pcPb_=_W069qVrCdlMsBZB` z*OS9o-?%q-fDrf`)TQ_J51<7ac%^tinYoZYamv6ym;ulQWFT`7s&)kYo8ig`IK1&c z+XlR-519vqqY<#Z?;drgb?rxdWI#r4^P+|Sqy_aRaCmnMPs;25Sz# z1|19jx#nmVOP;U>069ZJB&Wnmj}$`_sx%pE0D{U_x@CLpm%tqdya#towi@H+`6oB_ z{GstJlzNRE7dU}M0C+4I&QM3KGT(nh&+~L@$}Pk5%nRVH`akJ`&@UMjxUh`cAPh~a zftZSqB|Q}j;Hv^be%=HusE08#$uFz&9tPMG+U+v@+QK1V?4ab54srA}VgXjfT74Ky zSBRDJuaUZn1BGpl)q$GznfBJ-y`dQ-g zVy5R)w|~?DxVzQg3I6~X0}4Z)gFhg5uDJ0c9O;ShpKzo+{GZN_7h;j*|B4|5ML7Mk z%x_K_@JR<M2Gt|rTM3eH;Ny{y&%Id3$t zjZoSDc@w1*&?8w>VlcA~GLZkd%pNPn>A)`a(VtJLnylbRqV$=}zIpGWy@ z?@l-0Jpf&>K1@)$JFW?HL3Y@;cHNh!&u+m|$ikZEicLUggnzC<`3RF6-v2zq`9HG= zA^G$-8=dp^Bsc}MltE*KJ5Kn|SR6pMDBb)nuw(waHR0gMah}FPnOYWRv_SaJ16yES z^_Gg&JN|y70z?H0jXMePF;EyaOVDoUxwA1>udo}j$C}(Yx5*w$GSIz|`6mekr-Qzm z85RUFkbOfuRt!O2!>Kpu1ZFV*IT9iZ)`3X#Ea+XwA|W9Wrvv}zUC#%4&;azU+#f3N zdt@sR2=$U z(wHXRQhp#SfdppPN}wJAvck^2K_I>_2y1YuKhmi=ScsRSC;w-(pnsl+yD(~wx6WNj zu$j~V=B<;{Ujqv56O|5qBO`C7Pj|~JHkvR=!R=e5mU}D+jP!yW&0U&EA7FSeWe0M0 zQC%7t&_tGkzE2nefISb}I4gIV{-&h1e5>6nTnv{Y6d4f#S1h~-ovGn1r5gPU$scbr zzGgiU4_y$w{zOeNj_$h>eH0Qm91G1?lGmFKUWJc7q$oxk;bSx@T)}~B8YUa&7yEpD z(RJbZO6f>kX_(8ZQGx5;6b3rF(!tg|*_sNVVUqDX%i7!9Q#HWAbuAQ>TVGr*EV%j; zBJS=rRM}Refj7oLWT<}?c;R3Z^xBaX-)*#cnZur3{w#$9RYS$|&S(~yFbo2Qh;Kr# zFmFUr=~Ow=ckVVdH*+xZ+kf||sj0yyA&KkOU8v_Y+^WX>bi4EH%#G(1S$N4#rBr5u zpKz=4nm9_3 zMwzY}&}p*WJTyDZl^-zx)2AnQrgS~bZ?i1szYBY1Qygk*6~3m z;=v{&qLY%Ami}y)d{;eRGRz;JKFrvyJ%rpvt{rxxNLS;56=E>k1MjZCA9mGU!@3hV zn*rw!^*_&uqZjNt?{bAA@~*mknB&UVqN{sFQ5t(Fm-7vMYG8uqoX=@VGOQ;_Fn53d z>6@ctkRlY8R^_yOYJ7tD&(CfkLqEH*VJH6JflQdt>Aqq078WV@kFQ0BV4ziwc301q z))4-AK?N6Bd@U9Bvs6+b4(VTJJ#I4Yxx1o)bxYt;7^mY8MFJ*GPQAk`|GZ=-U((wi zFOlD6c;j2M)BI-wE{j3Q)v;2Qk$fGsY-Q@ziAt3qQl8;7sqn4p_fmmdqbUnKSToY>c2lAK!VQt@7Eh<7aQ^S_x|6%;EmA9FBLA^DQyrxXHd-w zO-)VZH2#dAo|ZP3RSOa+a)4i*LE~fE@yUr=ox3X-YS~PMWao;rzV{EH))P)Y`^DeB zeG85Kx29JF1O(~!vu!^?)UT5GR;cBH;Dcat;e7D3xgdPRpq`(Ah=er1xS09TxHHGJ zH)*WU;J(f4D|4Ejy*Ll#6Yjm6nbFr^Bs|#PpUWcm&Yj!4$?Lvf$Ve!YQ2>HGb0)qb z`QUq%lOWk^2gKTP+z+<4_V(26>gjzX z)T@f1FX!Cs?45wtR4AI+Sq0)HiDTuq1%SE_W<*3S_uT_UKUzSiostzkZcn z#?$-M^?=+X&GY1to`FG{S~?=MprF8?kSPZhi{!_Av|bOVyf2f{$dA7F){CXFC!SPg zp^@Mnj4GXU?K(baHaCbQEJY$gD6Q|NpA{&bTPAZ)-F$ z#s*Pr7?3DqL!_e)3K$D82&hP}O79?5I(CshQUnz&NR{53XjGas=`b`E!C@$h6am4z z4*u`G`Tl;mzjr=pB+Sh7oU_YXYwz>yJR3KW(?7oqIN1p-@$MZ)0EOvGV{&f zzJ1$F+bJp8=`_~Ut(tiHg}f-9{wltlojW6?so;W<4)3GKkClSAN}*P4qZqpVL;!_z z%NEP`@89c+8~)|dbw22+c5b!2C=4hbdmnGrmKN_gSQoFbl>@1u1j2G(#G#lha;o`zl?i0fJ zJ7b;)LviCvHt!t2WB5bC+^EdongF*QU(vYdo_lA$WwtS0?tbD@;K#R=S(A zb7wrm8yT&s#LbbfigZT}pf*h9-V-7=Dk`TObJzlQplE5Ctaq2!=X>VJm1rrCss3|e zN9qdSaL;6u5GYIMl62a=Lby@`?|8aG7}26|D`%eq{uLlHfPk34Z#z}NsUz1avJi6` z_RIZlTt~JshP-*8!z@;U*J~oQqu4c_$;h{hSRo7_5W|+jZ0-W>b>!{Zu_Fq@EV*dx zo7!*F>56DX3#5p-47WR(7*zyG&_N%5rD?g|Y)R3$i`B_ScV%%FMv8MGKk`)xXlDGS z$Mt2I87h1o_oO^pZ9NPPAHjP3LXF+0hNIE~+K;;Iz*pdb;1w7~SMD_0MSa;D{A%Mp z6D8lM19mY@&JOPE(Gd}*Xg@KcL}3b6{M@h=%I0~FSMkyfUNti|)RGd95G6}@Lr?JV zx+FTCK5V=6dFC581Znw-Xr);c=Q_eu4a$1tMZLYfm4zmPwn)IMuy1*Li#=zu_GsrM zh8jPcpVCQ~yExn~!U*5RYD;%5+S<1=Mi?s@kF}7cM@d+z=M60>{21iekL0yeShzvl zvbpm66vK}4{4WD+%C;rHjaKUoR2Di85@%LCa>REA-I@;jH~+O z`L^8wl&_f4*b&Yn?b!~yg`1(m&aCe7{HnxPrJAPOG5X%WxmopWp@RuuRmuDmBaLfy zS0~0F1yY)l)l!@oenS1NNZ|+=>(-NZn=ktfr)g)Ww>?&n;Vb~!ilCAH@{eu^d%FIvPrX;~g zT|SZsc>MTPAgza30BXwsngT_w)9v5=gWb4IVfqU_voDH8`sLRzDWEU`6O`M2ad>lf z;3frGMxKuNo~6c7xyJP#U-@P!G}B2~fQhQ> zIXNE#ml|7fA5s4JnwyP&`}T%E|J+-3LHC5LY%;y>^v4=9#y+@8oyd{Skt6$*LWCp-JgG^AdFS^qUEU9r;Pm6p@KTz zs$<8*eYd^x<5WYg6zJuwJUMz$4u(2Wy*K?+QbJ5)#`%}xXtfw&NBr!NH@UfB#bNnsJ$a{<+x}63Z&s9^r^AlbmSX_>V?dP+1$PL8t)1* z-r}!4^V-~Bu5}f`xb-i-TSm+B+AXkFr!oex^V3^7UNv-ENf?y}C{FLl3*kg}!Q0AE zzDd;D%>g2{vyA<)=jZbcZ0r8MADI5ja`xR=B(q;G>EHq9ch_-psuej|s3oh?FlV?K zMv#b!Wh(fzGcdJAycQQxdZv2`+bEy3v_4%Gqj6VHgT%|{+nKWSN?XtQ$l91DNTsyt zdnhF(C6NUjEuGd+V8OZ49F4KUMedWyX}X1v5XG&Ke^#zu-CW}K6@F1DFt?=OR&i}; zulJl1hUVUb_YXSlmkNpOvI&yUU*}&D#B}1{uA^1Y~H%Z{IeNVKXaqXJ>2V&0M#BeH^-3Z_FLMl>)ZJ0`8$_Nnekl zI?B>$G=k*b%&wVs81JXm#>yDbVYfyMWzTKJn9Q7nQAC;+78bxOVf$@5)=T}%moH?EFJHML)*ab?R9Qf`puturN#)7J!rU17^*ozG>hjtl-RIi% zn;*Zt!I2^xxTTJR&GvOs&mX`dfNSQ}VS7Z&+p7(b^;=;42HrDI_H8}rV#49-yX2hX z%(w}ydZN#C{*Qi~P*Bc~)VkYYaf<$IZuC$ox@hQem`|a%Y~_0UWQ4d;NjZY`_i1Jv ziS=11bQ$eRYG^o(Ta)R2wEnY(eFBvp5fKjzwVO)SLL*{!w+dI~sZnt``1b@Je{Y2` zp(Jsp>6a!Wk6Sgy(fBnp9!P)xeC+kBS8<1yEFX^sV`43Ri!RHs=;-A1vIXtI`q=y( z8u4*)=KYnSv-Lg;|FZ!qbszW-RW!)7y}thu`EUq{Q&7JoQ9IX?i4!9^;ov}NNQCAu zE-#zyyTXy<@KHhUnWt8%$8_uWnXhU&=4Tk*NFcfRIXba5@T;n@pzN+#M1|ugPFMh) zbRr)L>J`NS_E-Rv7NI9JJS60S@_k9>4PNhzk=VPA4Nnbke=Bm-Z2J>Qcw#6e-4a#_ zOdCtC1%Nim;bZkJe}7^~VRZU-KO+qnaERwd!{9I7Mb2lDwlQ-zUcc1+qiZBvK4RuF zE+Z#!qg1_Ob!S$qnxbL=V9k@}=H~CCTSJ6QYwkP*0WkmP>I#H+b#K?@_J^J*gg2t$ z=rKZv0ix{6-+w zED0DVui`qb@#+fB@oaFZ{z6RUQ9!g%&oq2Jf$V=lWQ&8ztD9>@%gNR*=h)iJN-s-8 zkW0a(Y3JMOdAo9K9RP~oa?t+4(PPIZF?6fn)zyCaZ0wI2-Zi|^x`1@2&z*aq5Vrdv z%-#Iu^)>FF9^Sx;JX*^q+wXed-T9}iH3%N?(nxeUrs9HAie?5h~1Awn+blgHrs{0Y!f+p^y(+`gp`TQ838iAamHMPwCddeW% zU-N7CZW7d$cU?8Xpx#PB2)%aos(khAX6=%TUli>s*z3g|`sE3?0ql5Cv{I>XSrP|9*sY)L$^sFt{md`RqRGQ6v#rx%e95Xw zDn;%cHe*0jmTwFaYBg~)VW2r_;(d!rhdJ$n(q+~p&_fvC|` z>izwToKB%Lqw4mq?BP`ip8MrQjl8yg8PT}K=2m-uKpq^0Li6+UV`p^(P!5{>QuuC& z$|kQ8&abALaqe$ghs;LpGMC9-E_1=R7EP)MS*f~(D%dvH0$!}f%vZ^cnaj+& zOWc}lN6g?LB%4r}NdMZ!E~)$NdIbF1FS9h;l;UJsl^q<}hpauj!5;2iaW4QO>=YcY zx2%0Jn>|3F%&pbWcOE{hi{o4LIOL}GG*9>_F*gM7=4W0W37wwb-rW$h9)oA*F@{{3 zjjz+bW9!etCnpeih#6~VoLf>Q1df4w&32!(q-7OLi6G&c1Zl?Z8U183FI>f7F!E~M zD=2@Z0|r+qsHo6W^{@Q4=3d(J{s=%B&}$kU7e4%X{|ih#r8`-P3{CC*;oDW|Pi0%b z`}A{{RnBr3ock-++H@71Y2>X?+{?!pHJ}lu|S8Aw6kh4i=Nz`*C&Y&r916qBDC`7 zjZmeQ=eEuvxN`#+GWebyHh|O+EpD-$87#-$Ex2RH2|%y#iHaibiZp9cHv79E@8FII z=BDU#&Ktot$0Lk^g;5=hizE#^zg$BWzh%*p^+eBOm-0Pfj2jcD*C2))F}%MHC^hBV z8SqsRhMkj><1~p_WekNofI@zLJ34ykedto^2SG<;@S6c-=v*ryDz&5L{-L&Sv$I=h z0}Q*e+L4e;)(C3!P$+pn>An5cBclaxxT6larcvD|67@Wgl0<hbKp=n(1ce&UPO{8wdrBYa3c|H z%?h4GfET`uWU@cXH12KtrxRy7v`(_^|#-maX_iF`k)In_}9&BF4sADZ7Ey` z-%WWoI-EdqU`p5!XfwrE`T#k>uei9F8KpSK_6n>RmwW!@^>~C_q9Dl9_dvd*+V}bD z@vwy4Wn^T?PBx*{`$jsvdGK{UTV>dxno!J*td|!Bo)^C_=`0GQvLE}C<+b_4$B!oZ zn4MU%Svq6~bQ>;0AfNLL$g8S`5#0l07vnJtGaf;Vd~JDsJw66#OAKaN>;LW-Er%Oa z!vGOnjRatf7#+i*O%wrkl(J206)!Dah8w{oTPHse-xOn4_P)_9oMLT)EXW{PDDMP| zk^cjTlR5OiQjT3u7m=#M_|?FV0r9JZna&6pc^nszU@gGeEy&-LDBS!Los1i1Iz>(} zC`uIBhk}iRyH^B%J8BAmZ8R6P-=gu=#BfIwOyo6KSnndsjfc+;fNQuo`|ayjRbTPw z)y6DCB}EQ)cCsXkO9KjY0CY2V{@E}b91nC!0&VJ6Q9m+5jQ_a z;o{}x{kkaLWPI5K$EA;$p*egy8sM(I^{=H%m)2lbvysLPqew@2-z9wwfHI3~^B;1a zq?H}-2I;s4iu3SPt>uf3%|_k}GiHl&9(1^s>vx~q&c|09vh7%-iBONAsA%Jq+;P)% zx32?*=C6)SK`-?S43t3I{#CzQw?rR4d{|ylQ9*2Mi-hGJNTyM^nPSVtBSHAhDik8@ zH$k<SqO)EnJ-6{eh~5uJ z*$+0dXj|7-ZV&}w5I%qYJWOgoI{B$lJ2!CZRIV@^4Ux6pCPtzTpKO3IL<13w`V?7M zSRnQqwoj+kX{58|Re8CowoJm{16-PEWyrRjSW6Q4uU@}Sb}O#<5M`8muliGAq&qQq zad}%?8>()1Ks)ZhVN5k|7-_UZ%IEuU$({WD{1_>J{QD=qU4Jb>&-4Gjwg$q>|Mj{k z4jA>XSKnJ0#=rjUE64YL^8s6dcpb7d1)^~>#M|{_+J;S=b|LD569{OG4csj=nL>`~>b&*(Or(59C*qOwEaz!PvoqKumN?*32}t z1i}gs5gg`WW2uP5jp1A%Igr)YY_k1{v;_)W^i+=-c-176Qx^M_e zU<+g+u!P+>O4{&lnjI`e%75Dih}RbnS{YU&!it}J?t9pWcip+hx#8^k=2V>nfmxwSQA3~?{5pA0S8f#err})w z@j5$CG93SGW@e^k?=!Eo&LZ#mqUwl!dl4?+CvRYvCrW?Ck-7J4<#9)q;XryP>A$ga zf1*#}&)r4=ux}=PYVmG;tq2syElz&wk6g7$&>ZJr`On4&bV3VZO`$x{QtWDnQlmM_ z1A?En;o}5}i9OdF#6Cd2i6E5_Ky6Y9!5*HOpPifpL)*p$dwHLV*P4Zxc|MCW8V>$ZNy5;JX`mdDD@``2_?N z;qch$M>`eoJoxi~t?|JaQepxG!snKdDh9-?#KhfL-0Idr>}C}#2BLap#{FKOA9~N8 zJp;dN07JPyt6%>5wFQ)O%jU#TfaUl0v8ZLJ;?oFk>}Ro3aP~6^4AK4jmx^4Y3ijgp zLr$L_Ahxn(e#`{d-9I#_DzmtB&kYjrMeJ?IZ4Ex)fOIV4_Cv_;i69TRf`VEhP1wvW zKtUjKBIxCYKmK@7h9@s*gMwWja|28$MXvz43MA$Jv9WXrMdlNq-YTaXbs_1yp^~bC z?L`v(aiIetTpWjkAVi!lxvCSwe^Y#3FwFM%@P{YG3 zvcX$Z!LpN44I1jqO(8W#aC&o?f+Rt)rC?io#l=-IMD@(kqet^*afQ0iVO19kDl6sr zsxURNK52e>xWfp`Zk#`lrj7w%nFI71)Dc8IV@aWVWG97k2eyjpzaePkK0s{Cy(bkF z#Yqi`UIXP4niYy+ffT-~0A87%F8G#up5vhM*~HV^_^PbC3PkiuAxv+fmG}1c3h0-# zr^(=;;eL;);Y=?n@9zNMt9hlnYscAyxO2$usV%QmcxQGKrq$ZYX z4O@_NGTyqR{*&sesdPv9@5a<(R*&~| z7kudxLQuM8TUshuuns~=o+z@0Qk3Wk_-!*b2(?wggxP$LY1dEN~W-U+()CnOI^LM&#W{NJ%XUs)Zk>+t^73Pv6lYzV#{8W|Z$GM4HO zz`0Z`!Vm&55kwoqwPKZ|(0q~5Ne6|Z=xh&sd?FT#F6k0EH3zcm3mvzea# z&y*VTSg+W{#fn>6TAHK_N)p`G#Tm1@rXT6-XS@*rQUI1-`^>6Y*i3c1C);fZoVUK)U5=-W^#cJb5~C@@r|0a3~wb z)A}eu6b(@JA9CWo!NDuY48FRF)|qK^W50F#1C*(f!H|^moxi+4!T7m5WvB9pUTEaz=TmjclnH|$Y44xd4JEFw16AgEL6AZl3&FRHDf1pz~7bb9XtbF?F?f3@Q~J~M<_vLQ;#C5vayBqW@&$@tlM(ax%3Gf zmSD#CIc;8xS;Fi|8Ang*-y2>H zr9TT~&ewPBMANmsA_s#kJRgyDLL6w8TP z47h^v*>dAwzPvqqN-8{68vO*Pk%+O_q?_sPJGHZD1t95TWK`6w?%rD{-4i(BN=jTU zp?q?~Lz;HZx>?3m){`q1Z?a1ZdJBcdAvF;a<29ufnWOdS_zIfBbm9&<(glJ?Ht9kn zD~Qu!DFjQ;CXxycDYn2sU7R%+ck%P@6gD<{4Jv8)N&>ZIkNtBVkHIn3Y;$)F!|`rO z0lT)e`xNHwQ_@v72eQ|1+!&9$c=F^46V>>7_3qK`;uPqQvlzfE;Wlmz?UjkQtAmPV zcLzhgQ=pH$Rj&Je&6*bEF-o_4*zLzUOUIy*(^X+p*3Kxj(Ef}3d` zfKEuyL0r4>5gbzmloU)a9{;=h-PZ@`bP-d^stUqhE6~e>dD9V;yV5-I1f@=N4|Kag zK|z$2KVa9>Y?WTRleR_D$vkMb;n9gzv_^c)a5do>P-WWQja)5Tn6;wi+b$peR3`%C z45Q>)cZkaUrxnfh`i-sb@?a31StkBl-TK$wM+C5qg`&;^u&Vp~=!wiK6hd%?VW>)> zG2(67cfgJ|bUmT$K({Rxk?r;T8c5j#f_a|NDzT0j zrZzMlg`*@z&hsG@L-eo|##(wF!8e(yb7p1?>Y4 zGzr$izkT~r=oc!n(q7G(MslP!x`AJ{0YOtwv0ggL|_j0*TWi5|hF{y!;_4r4BVd@vn{)O2;N@5MEcdFey~* zj-FIWkEy3nV;+#6%8NA!b!Nk3a~y1JeGegU#^F;;G;K>ctMD9$$^5c;CA-qeh&2mG>-jS9igMV`u?8jr?F!C6*>?+jS7OL=saYd}#v8&~9Pj(+D?Pq}-jZYy26$ z`^?c?tF~4+c_Ls-|F?NobJAl-Mj9kY;yFbq&r9fNAv>TtzM2HjVwaIdn3i$C86;-X zOn|Ca*SitlvYCNDkvWD!<+h?rOg?Dtr|K}e8hEi4xLU$z!IOyAB;iKv(;=M%pgSy- z`c+_EATwi5cY_a)-$Yt*^MV3D+xug_*J;xyba9^9B&6Sr8z%_brl&*;A@0`An++(Q zilh3^xPRI106v^n-J*>?-%6_gg_d79vB!NPq!$1Pib&&7`HbON)kq1tMZ+sYgDkw_Lk+%>vyq zD_5?pc4olfk`2n95f}%uI#_TYXu=AGFFatQ42;jATWB%T`_@1tI}1Uo0Z;Ht20R)_ zT$Dl}T!PY)T7-cA>-X>Vk&?|8BcpvJd8FXPdw(H*m<%#pGbzm=QGOrYxcG_q<4D?K z82RsivatmZg!e*G`Pa+g%Ks;N)Bjxa|C!?T|8fNj9ILH1zZVrM9V4GYJE43$?dZA7 F{{@FTQBwc_ literal 0 HcmV?d00001 diff --git a/examples/yaml_input/lb_server_srv-1_metrics.png b/examples/yaml_input/lb_server_srv-1_metrics.png new file mode 100644 index 0000000000000000000000000000000000000000..6d3ac3552a4c2004603a8c07eef86f35ae8dfff4 GIT binary patch literal 112721 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

    kgc-zopSQ9HS$p` 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 None: - """Print latency statistics returned by the analyzer.""" - stats: Mapping[LatencyKey, float] = res.get_latency_stats() - print("\n════════ LATENCY STATS ════════") - if not stats: - print("(empty)") - return - - # Keep deterministic ordering for readability. - order: List[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") - - -def print_throughput(res: ResultsAnalyzer) -> None: - """Print 1-second throughput buckets.""" - timestamps, rps = res.get_throughput_series() - print("\n════════ THROUGHPUT (req/sec) ════════") - if not timestamps: - print("(empty)") - return - - for t, rate in zip(timestamps, rps): - print(f"t={t:4.1f}s → {rate:6.2f} rps") - - -def print_sampled_preview(res: ResultsAnalyzer) -> None: - """Print first 5 samples of each sampled metric series.""" - sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() - print("\n════════ SAMPLED METRICS ════════") - if not sampled: - print("(empty)") - return - - for metric, series in sampled.items(): - print(f"\n📈 {metric}:") - for entity, vals in series.items(): - head = list(vals[:5]) if vals else [] - print(f" - {entity}: len={len(vals)}, first={head}") - - -# ───────────────────────────────────────────────────────────── -# Plotting -# ───────────────────────────────────────────────────────────── -def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: - """Generate the 2x2 plot figure and save it to `out_path`.""" - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) - res.plot_latency_distribution(axes[0, 0]) - res.plot_throughput(axes[0, 1]) - res.plot_server_queues(axes[1, 0]) - res.plot_ram_usage(axes[1, 1]) - fig.tight_layout() - fig.savefig(out_path) - print(f"\n🖼️ Plots saved to: {out_path}") - - -# ───────────────────────────────────────────────────────────── -# Sanity checks (expected vs observed) -# ───────────────────────────────────────────────────────────── -REL_TOL = 0.30 # 30% tolerance for rough sanity checks - - -def _tick(label: str, expected: float, observed: float) -> None: - """Print a ✓ or ⚠ depending on relative error vs `REL_TOL`.""" - if expected == 0.0: - delta_pct = 0.0 - icon = "•" - else: - delta = abs(observed - expected) / abs(expected) - delta_pct = delta * 100.0 - icon = "✓" if delta <= REL_TOL else "⚠" - print(f"{icon} {label:<28} expected≈{expected:.3f} observed={observed:.3f} Δ={delta_pct:.1f}%") - -def _endpoint_totals(runner: SimulationRunner) -> Tuple[float, float, float]: - """ - Return (CPU_seconds, IO_seconds, RAM_MB) of the first endpoint on the first server. +# SimPy environment is required by SimulationRunner.from_yaml +import simpy - This keeps the check simple. If you use multiple endpoints weighted by probability, - extend this function to compute a probability-weighted average. - """ - servers = runner.simulation_input.topology_graph.nodes.servers - if not servers or not servers[0].endpoints: - return (0.0, 0.0, 0.0) +# matplotlib is needed to create figures for plotting +import matplotlib.pyplot as plt - ep = servers[0].endpoints[0] - cpu_s = 0.0 - io_s = 0.0 - ram_mb = 0.0 +# The only imports a user needs to run a simulation +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner - for step in ep.steps: - if isinstance(step.kind, EndpointStepCPU): - cpu_s += float(step.step_operation[StepOperation.CPU_TIME]) - elif isinstance(step.kind, EndpointStepIO): - io_s += float(step.step_operation[StepOperation.IO_WAITING_TIME]) - elif isinstance(step.kind, EndpointStepRAM): - ram_mb += float(step.step_operation[StepOperation.NECESSARY_RAM]) +# --- Basic Logging Setup --- +logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") - return (cpu_s, io_s, ram_mb) - -def _edges_mean_latency(runner: SimulationRunner) -> float: - """Sum of edge mean latencies across the graph (simple additive approximation).""" - return float(sum(e.latency.mean for e in runner.simulation_input.topology_graph.edges)) - - -def _mean(series: Iterable[float]) -> float: - """Numerically stable mean for a generic float iterable.""" - arr = np.asarray(list(series), dtype=float) - return float(np.mean(arr)) if arr.size else 0.0 - - -def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: - """ - Compare expected vs observed metrics using back-of-the-envelope approximations. - - Approximations used: - - Throughput ≈ λ = users * RPM / 60 - - Mean latency ≈ CPU_s + IO_s + NET_s (ignores queueing inside the server) - - Mean RAM ≈ λ * T_srv * RAM_per_request (Little’s law approximation) - - Mean I/O queue length ≈ λ * IO_s - - Edge concurrency ≈ λ * edge_mean_latency - """ - print("\n════════ SANITY CHECKS (expected vs observed) ════════") - - # Arrival rate λ (requests per second) - w = runner.simulation_input.rqs_input - lam_rps = float(w.avg_active_users.mean) * float(w.avg_request_per_minute_per_user.mean) / 60.0 - - # Endpoint sums - cpu_s, io_s, ram_mb = _endpoint_totals(runner) - net_s = _edges_mean_latency(runner) - t_srv = cpu_s + io_s - latency_expected = cpu_s + io_s + net_s - - # Observed latency, throughput - stats = res.get_latency_stats() - latency_observed = float(stats.get(LatencyKey.MEAN, 0.0)) - _, rps_series = res.get_throughput_series() - rps_observed = _mean(rps_series) - - # Observed RAM and queues - sampled = res.get_sampled_metrics() - ram_series = sampled.get("ram_in_use", {}) - ram_means = [_mean(vals) for vals in ram_series.values()] - ram_observed = float(sum(ram_means)) if ram_means else 0.0 - - ready_series = sampled.get("ready_queue_len", {}) - ioq_series = sampled.get("event_loop_io_sleep", {}) - ready_observed = _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 - ioq_observed = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 - - # Expected quantities (very rough) - rps_expected = lam_rps - ram_expected = lam_rps * t_srv * ram_mb - ioq_expected = lam_rps * io_s - - _tick("Mean throughput (rps)", rps_expected, rps_observed) - _tick("Mean latency (s)", latency_expected, latency_observed) - _tick("Mean RAM (MB)", ram_expected, ram_observed) - _tick("Mean I/O queue", ioq_expected, ioq_observed) - - # Edge concurrency - edge_conc = sampled.get("edge_concurrent_connection", {}) - if edge_conc: - print("\n— Edge concurrency —") - edge_means: Dict[str, float] = {eid: _mean(vals) for eid, vals in edge_conc.items()} - for e in runner.simulation_input.topology_graph.edges: - exp = lam_rps * float(e.latency.mean) - obs = edge_means.get(e.id, 0.0) - _tick(f"edge {e.id}", exp, obs) - - # Extra diagnostics - print("\n— Diagnostics —") - print( - "λ={:.3f} rps | CPU_s={:.3f} IO_s={:.3f} NET_s≈{:.3f} | RAM/req={:.1f} MB" - .format(lam_rps, cpu_s, io_s, net_s, ram_mb) - ) - print("T_srv={:.3f}s → RAM_expected≈λ*T_srv*RAM = {:.1f} MB".format(t_srv, ram_expected)) - - -# ───────────────────────────────────────────────────────────── -# Main -# ───────────────────────────────────────────────────────────── def main() -> None: - """Entry-point: parse args, run simulation, print/plot, sanity-check.""" - parser = ArgumentParser(description="Run AsyncFlow from YAML and print outputs + sanity checks.") - parser.add_argument( - "--yaml", - type=Path, - default=Path(__file__).parent.parent / "data" /"single_server.yml", - help="Path to the simulation YAML file.", - ) - parser.add_argument( - "--out", - type=Path, - default=Path(__file__).parent / "single_server.png", - help="Path to the output image (plots).", - ) - args = parser.parse_args() + """Defines paths, runs the simulation, and generates all outputs.""" + # --- 1. Define File Paths --- + script_dir = Path(__file__).parent # <-- same folder as this file + out_dir = script_dir # <-- save outputs here + yaml_path = script_dir.parent / "data" / "single_server.yml" + output_base_name = "single_server_results" # prefix for all output files - yaml_path: Path = args.yaml if not yaml_path.exists(): - raise FileNotFoundError(f"YAML not found: {yaml_path}") + raise FileNotFoundError(f"YAML configuration file not found: {yaml_path}") - # Build runner from YAML and execute - env = simpy.Environment() - runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) + # --- 2. Run the Simulation --- + print(f"🚀 Loading and running simulation from: {yaml_path}") + env = simpy.Environment() # Create the SimPy environment + runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) # pass env results: ResultsAnalyzer = runner.run() - - # Prints - print_latency_stats(results) - print_throughput(results) - print_sampled_preview(results) - - # Sanity checks - run_sanity_checks(runner, results) - - # Plots - save_all_plots(results, args.out) + print("✅ Simulation finished!") + + # Plot 1: The main dashboard (Latency Distribution + Throughput) + fig_base, axes_base = plt.subplots(1, 2, figsize=(14, 5)) + results.plot_base_dashboard(axes_base[0], axes_base[1]) + fig_base.tight_layout() + base_plot_path = out_dir / f"{output_base_name}_dashboard.png" + fig_base.savefig(base_plot_path) + print(f"🖼️ Base dashboard saved to: {base_plot_path}") + + # Plot 2: Individual plots for each server's metrics + server_ids = results.list_server_ids() + for sid in server_ids: + # Ready queue (separate) + fig_rdy, ax_rdy = plt.subplots(figsize=(10, 5)) + results.plot_single_server_ready_queue(ax_rdy, sid) + fig_rdy.tight_layout() + rdy_path = out_dir / f"{output_base_name}_ready_queue_{sid}.png" + fig_rdy.savefig(rdy_path) + print(f"🖼️ Ready queue for '{sid}' saved to: {rdy_path}") + + # I/O queue (separate) + fig_io, ax_io = plt.subplots(figsize=(10, 5)) + results.plot_single_server_io_queue(ax_io, sid) + fig_io.tight_layout() + io_path = out_dir / f"{output_base_name}_io_queue_{sid}.png" + fig_io.savefig(io_path) + print(f"🖼️ I/O queue for '{sid}' saved to: {io_path}") + + # RAM (separate) + fig_r, ax_r = plt.subplots(figsize=(10, 5)) + results.plot_single_server_ram(ax_r, sid) + fig_r.tight_layout() + r_path = out_dir / f"{output_base_name}_ram_{sid}.png" + fig_r.savefig(r_path) + print(f"🖼️ RAM plot for '{sid}' saved to: {r_path}") if __name__ == "__main__": diff --git a/examples/yaml_input/single_server/single_server_results_dashboard.png b/examples/yaml_input/single_server/single_server_results_dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..0a6f99435d04d14523874d39cdd7ac734c008fe7 GIT binary patch literal 161480 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

    2YNA(T11w1IcV*cluINq<7}M=WblPA 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

    tRPQo5-Ery_vE%f^*@~QJ^i54I;fBPE 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 G*Z%?7ce$$o literal 0 HcmV?d00001 diff --git a/examples/yaml_input/single_server/single_server_results_io_queue_srv-1.png b/examples/yaml_input/single_server/single_server_results_io_queue_srv-1.png new file mode 100644 index 0000000000000000000000000000000000000000..f2bb1f05e1a3b6b2a941b34d5fe2ec979278fbba GIT binary patch literal 52755 zcmc$Gby$>Z8|MH5($XNMq(})!rwUS1(%m544FibMA)$bzq>>`tEz;dx(ld0!>@(+l z-|k*}?H~K!&UN&_;LN=5`#kr3|LP@NMM(w^`yn<20>P7$m3j+-plv}QC@1$Zz%!*! zFgd{ggx#dI-P9Z{-8@ZPEFg*|ZccWNZg$qDk31|~T&*1)csaSBaq_W0dgtcmyiHX_2RfeHt&M{ZDmE?@v=jWWD#%VAuYsB`GOMqUr;0;`(Xl zsCIN$-oKalM%hv+esec8RwU((i;K%Fmrw$?Ts&h?*uM{=-n6ZI4+#H#pt;fi`*{3J zlI7p8h#>#-NtFLzPx2I}@LIK-^O$V(eul!+h260=i%2W1hCH|`X6%xM-JklL!=j_2 zaB~X^ay;RS$Y<>M^`x%vwhJX=64z*(mo2P#QPF`6wldOu5fLm}+;1d^4Tdym}E>+$bss?ZQT zs@0F=hOK>EEm7cmv-w)*+Jkl+)wgenCadXuwjM`O3lYi0(snV#ioO?E^g??Tg4DlFSf%WIb!HooXRdpG<@-~V(%yUv9vSmNX7#KbJifv?<-Rz2}du!ha;?QQJb zsIai_*zhc3Lc&WY;q+t?PfpJIEqX|6TQKI~qA%R!V7bk(t*&pn+>9H%+YLMb(E)xG z?BF|^EBB|jw_OC@xJH_WCYdSjfAEJP)_9@b{o-$`<9wf9wH>QSw9j&D5QU&q*3_?v z2<$h>&rs~=s-@-SvA^=!h9GV>CBA?E?o?Lc2{%lB!`z=HH0GGfoPb5lqI9C`u{Hd7 z-e$5oOI+y-o8|bB--|V3nh(1TYpnBgr_7c~VFun89*mY)MH;iE9>X z2d#C-GO(~rkd<%FQsV?dL)ixSB{(Qc_TA z&>#|b7iOK?9>VFh>+uQ)y=-O1>wn^s`RyNaHtg{Lfk9}Pt3wiq z6FpCGPScIvycvE+a-vsTIkj8ak)JX$V5fE{NnFhrsOch}uah_pR-Gxp`9K9dW5UAz zbc0t$k#Xo|xo!?Z0tZqB&>;1maM}aj((`J&86u~2r|Pj^77FH;mi1H7oducD2y`4W zW3V?Uo*4)FdV{xfnlkV-nfYb0HC1LLHHTb$oY0OSJSzSyrF3CPU<0fkXUZr*j9Doy z4D179Yin!50zNVc#0@VGFE6*_qG*fG{pMd473EGVFUw9}$54lZ^}tpuP;%#z@Hu$` z_V%iPZ(vy1lMFA+bmS3pwcM;`EaF3?rKKT(QBhHWna)jG+S(MzV_oxEs&Zg#zBy8G z+nXk&5q4`0CuW&PU=YyaLbNO2sY=ZyFk%@6-133X!IFz_tQNAHenvtEUz66f&9k?>JavpQYZDBX_-sg0ur#UkS^Gu@MZ(bCY6_9+`1!)$?qhX;RrLW0E-6|W_(hd`?;^t~C@VX zR!hzPPuSU|b|*^~`cTC_^{+U2Ezp3yyfs_JX6S#aF>{*AXG`Ydn~|o(0$Kh|<=6?{ z$UE8wu9pzc{IA^R{m&N+;X}#XXf3yARItWl zrRVmu&$q;x-y{c8In<(fF1VA6Uu`jzi7Xdsmb6E5HHT%0`I>fy5yCc*XE&OspsJ&@ zopE+MrYy128iZyTw8l53AB-F?;1Y4(-NFNW_iKuaag_>)`D`bpEG?OLCQBlh0uVIk zO93su={1W!eY?D5k?2~6-b~`RCu(-{wIlHDzumEP1cK?b5YT^%v%CpQz}%^))5e5Y zR?PUbEFEvIzo+CezYl8u5cDwPzAqeGV+FBOZWnjA*KDcpz==Qm2S^C-$4cBunwWf> zLR-~0^xfyPTc{^B`yJIbU+22u*}FNA8VYYg(1NQY4wiu0g$~(gG)wiv!OSL26>$9h zT{Y*^=g%J}inP{l&zEGHd`=H0w2azpN?_TJEw>(iVBIM|{UA$fZ?+02)9(mtw$gg7 zYCqMX9t*&S-v*uwAEhJ7z6BueoCK+->)qLq)#!cv_nTIkAu z@abm%1|uIMuN8E5-OBr5A9c}q&If@u_?U}}ph&Ci_j`1lPf1DSsHB1r^o-CTvv?;z-&q;9$CM@G5$li^nca!5Q>3ze4scrt5S zCTErI{zbjQQt`*@=!c^zRvD~{DLm4J#l=zYmLzTtf}flJdGNzyf0hV>6*vy&>5r@| zNsrr}1QrFwug~Makj(|Fq`;(^T!u$Fm)=^_fOtgLS}HNUt` z>R5r6rFb;!VQu}xZO*<%uF7U2o`;7g*S56ob??ByXNW8@^P7X&zvX7#x!{ldz*oM6 z`1tr-fS=?+FAF*u6oE^*^~+!G6qV(Edlf2wx;vEw`eNSSfm8+0MehQ)^*@B?!p)nS zgEyDQOpy2<^LTt}!3Sq|09@^hTQwuZFP4L~@uS1Sa0kJ~NK95h1DD8jd;AA6XY++= zVJRo+4`&1e~5&v9yLBDm~X`CxbhED2QZ2zB0$5N-uIBMNl#0|jqJ+a;?L=VfDsQK zADHBb@M(lUG&VL$v3w+wjc0srH~ql(Y%lx@YrD2jk< zN62@b3g&)GsKQhjqufgi3ns8zNb$1Mm00BE<(*EpR3VaM`HG}-9?vO|Xci2^Pt^FK zB7$W`El_ZYuo&ft`Yn0E^&)BMGXOOLX&uRt83AqNgOcaw#=nGzD1KLDvlJ2`%Tdbn zWowiAzntfrv#!Vw#Y7(F*H8aB1+eMlH>aQemaspTdjj?d>h-zC)7#CgnY{i%|(U;9jI~oBcLk`yCA?c_$bF!`ad} z`mO_f(A^TlriTEeJmKVg?d;4Aa0KZgzm(NhrVbnH_dw~wPySq0mPG86g}dbV4a6Hv z)md|eI&59Ho)&d9)z~tv?gM1RqoWB6Wqk^EPSfeo-5Gli!CuAh>=g{GtUXPQl|PB% z8PVsV@?S|O*9$W-oP^V!u;FK%Rh}>=b7*wil(}VP_tQEV0Mz|3Wx~3Qy`n>t@JUawSWi_NO#m19k=M^`Y3v`c{v{O8h?)0cjo;2@)rly9_f}Ulk#KouYb-`?z78f()%E; zEOXTNNl!fpHel0`^wBkAexu?iQPqz6rZ4@Fn)gRfaoPBLQwrBT2~O)9D3CWjJ+clX zs1Rd*EyO*ojg<~35>hP=Wo4PSIj;@p1W*k^%74c9naYT)O z$oHO!0S&V3h9Ryrbyb>q51>{6*Iw2*EI1u3Kkm;&uH{owc1pz-d%T_fcXK? z&jWG5HNYm3j1L6RQWSiX%xi@o5g9pBpltLel^+klvXB|O_9P={I2fC>4IcY1ZET)$ z)*9bOZWw@fP$A5UU&D|D36L_c>-`#4Rn;KdvL>>ze5GKaKSSZ(`81HH_V~$)%w;#9 z^;$p~!j9M7gi(?~zXHT3228t#sq=ZI0;P1NGOo7mL_ni{+RyQO-pPw!vI{X?{PpXO zNuS^BJWa5htG0LL!ufryHJ65O^{1La+y5ym?%j+EE=^W|h&SKp+x387E7{x&DlO8? zkmdDnrZ+c}S6OpcQ;}%%0gi}G3eB5FmgV}>RIBCe@`Z&m#FYp6nSvHR)nzpE|ZL7Pj zIrG{q;>@|lu)$b@|JGS>`HG`qvMY;9q}B*=wnDZJ;{vl39;y4S&s%Z6>{XsY*s+`L zCQ9^(mAUP?ZBu5!*`_*z%sO||dXlZk*j2EcsptKPI>It+Q;v35?P7B~HEA-dF&m>< zrz+p(WFvS}E@SI-yC$|~*<5boY&XBa3-7y)IWxmryyeA^md52Fw9LaaqhQRx!Et7M z%zM<<|0#RL%0jVxTEJ_uMxmWI--gBxvkM_6X3>m{>G<^R!pa4Gn`tyu&I`o;3z5X$ z8E{RR5G#c zP3QBG1b63;0}CNXfWUTk2{DuhAfS7TO;kt%?UOlyIc4A)Y*!BtI1ul@+rfc4mhvAdu6Q0}L8(Zgyr@5^@!`J`Yv7}v~=z|)`_n*NQF`at;D6DKRAez>yqCss5 z?H#YbHMHp_NSL~(Pk!Gpv-hd|dniANk~2$oZG})F>`~$js!=ox{gK6SE!t`#<-6O) zJ6X|$R~Tx}SFrQ={chs4_yY}$Iy2>P*O|Pe9LLNGlX7jRg(`tZ0_PO4rcH6=2n40} zr>Cc__cI#`#CEErYYA}^ZLPK_1=u4PVb2bG2@j&n%gaAQL)|O$#DcYO z3VfJINXK>TCHiJFl5>JDSEj!aC!da3QHZl+_Vo0;kZ|qZNBoXMtDCNK7oZI|Y1vvV zxkA+f2=oy28&g0dr&|IfVD-li^Dc7($=AF3GxmEkRRjPCN)Ba+1;f;&m|3Uu?xjCv zXBRbi=MtBa!rBmXU+w-rzX%zpewYaZr_@0I^K%y^#Ukc*Zs&c zRMC0p2U+&b7)%jdx?Ri;#k?vRI%bSLWxY98cPqrjA?NHwC)bDA#v|DAGFZH`rwY(_ zW0rg10w@sirW~$^6QwXJMP_2!JLen`FWuWM^p_bdT1zlJ{!_P%6WvUVrbddq0xLAf zwC8WOj-PLBbU^}lub+3f43*Wh(ZNX0KjM(DzJE-frJ25?lOLYGY8VqNbG91AJ1D8E z`*n)soY=83D8aD_9U|*6hEW2&Aq+ep-ws~;{q3FM1kK6Gw^t+Py(DG(sgS*9^W1BE zpLA|BmGcbWo6+(THJ0Fw=Zb`u7oBx?6I6@4iy zEE1}BZ*04<4v2yfEH6YbLA$)Kbsh~<0o-&-P8qANdD9y;Fp{(WKDm(}HxdA!^9&uY zH$WX6I03N@UT8Saa#*O>AdY#X(VZS2k1E@`?>QecI?B`kl}~}61CT-)u>R#h$1}IO z4zO?YygfQ{0eUBzy>1N(bsNi9%p&EFA3wgEZxqMI#zy`9wT;3j!goNI^?M4dQLCs< zv1M5dZ{oUokyZ|IgjMk09!uVi_@~}{laNN?YL)&ke?}b?t81yQofr#rZb!+ZtYk=I zWJfc;ACrVF4kZj|iaiKB5&i7LC^l~8oq=lRA8%EiteT_A!~TQFW?cTvCnS_QqoDOe zkuqPx{JxBhrOWV8q)&#vzwggqKQ51R$F9_OT(#*lS+sQXo=5I+qYEp;jO?oDlZ*(?5m%QJP~px=9*!s8fZ zRsmsaLrQi)8(js0Wf!TI{>oy8Z%eZ^AG#6($yb%dFFS2hx^X?{z1E_Wxy@b=o1NY~ zj9+l*h@qJa_6u0>^$+cciH|3u7Wcak7*)}1i_ASoo>b#@zOFD6++S#O4VVG{Yu{~%{VrobvCn%qj;&_s{@d4jOx&*R_Yd})?2 zJL?#0-mMsRKRpf9fzy4afy=GvNki(P+vc4zR_<_$Pd*QKT{F_lHui>1ZD9y05_JM z1XVOOL%=^=u33V1gb^~BPe}myyBL7*PZRYff;cU=qC`>hVsPkIN*0Xql7HbehyW@l z&}(yk{US2*J48o9CjEfhQxnHmZ2v{+Sbt2*jqh$QWfc{r0kVpViwgorwFWNuM*tXo ze1sRF*Y={9>j|>T%H4n-JhK`9{vqERbTA5T(|bVI9I3Qc^E(-lxd8l_8%T`j!a#ie z?K&ienY9DE1T!k+Y=15X29{q3OU`?5rvDin zd<}G}(xx-r^^Fbm+kPOq3^)0Dj(=B0vr2Qu0Q$}T=^cO&TxuXPUaUh543=(yhe;&(3IAny2Fpl6VEnuljlg)KP-D8*nE|X}=<2HJ zKQ_SBQiCTKSSO-+&n184%q%KvjsT7kdH~|K#y4Fx=k>SRS_&{@JAfrr?y@0&vxK8c$T9wwb6 zeg3?X6D!^hl)q^3t_*B!I6z~<2BXDlZ>h!TjF;DHP-?2wz!~T^kAa?vZ23rO9u(P} z{~M%y3y$MG*l9=+GJj~U=!S~i zMD$$+wZtFu&wX5e?J+8S&cyb;HCN#IYQ=x9*WBVH@s#GXi6aXeACCLz&WEPvGSJcP zN!*?gBel1~weGe2REPGu&5TIEQY7OUPvA>*Wld)ff$aIfiHa`Zh8uZZbgOJuLZ}>C zfhPrwh4!CgDqwqO!4W58%1Gy8>1aX3Gpn(Y8fb$5ir}DvgMj*BV$;;W zc2O>t3qc42{o0l39C>oHgU|GC&5sF;C4;l{rK4+T13?3}$H%7hhK8kRZn57V47me~ zO6##fFTnp-L_Z#qh{dGydjNJPBrq+Fx>&!CXNw=H>|)?Ogg_jcPBoD|i!cvJ))Ge_ z(4IUktgnDmErTVS+bwM=0Q0@+A$_Rq^(vlGA9}elViDN-pGFn;cU-QBc&uYqf1Q?ECa4MN z=K%|HkHKE7eJ9Z1mbay<5Dwh z$nU6!g#x%fx|Q!xBD>xLsT2dK=N>Hq3+_`ZpfA+kUF|v_t;?P4%@Bi@C=F!88+=iv ze-0+@@4@w!)VGvY`1>%+!__XsGGH%Y^%T7D{hMOdXb4|u5ZJmx!^A()%g?W@eEwhO z$$W{9&xQnShK(w_Kc60J1COTFezHW594O%U^-GwvUJ&GA0z>wV@LdLROE9vNf6ZDu zq=!1%OH2_+Oc=NLZ=)ZGON9-x9!M>EsYc5Be!v+9J<$_s zf&;HLq{qA+bj;1uW=1(LaPmNHW5~_RGXX~eYFEaTNCA8rc;r4McIw&mXNkb#q7zV&Q^O6p%y=!JKO62pSe(o=_V6f@}Y{!6p{MK4z3M z&gmctkBm-Vfz0sYhexMl74V10J@O=4(}#o6R_&%_@ZLDK5~Tv(>|e~Lmz6VipBQ^? zxsv4@h^0wAatpNMOi3NGowTug!4I-LqI0EKx>DDVtx)s1>jqnNTP|Tw&G=LCG;L2z zT#8R+)KIR#g+zhiJ$!zkyO{L??cCQTBjC>a&DZBWj+elaivXbKNvbSqf2IT-i6+}ae!H;VUisvKwqRI$?-+us;xX@qyUJrB#;j4pQ%^Y^bgBB^#>W&9nu%JB zZm-oWEb?sTs^<2!>)lxQJbcIJSUEVNS!upv59gdto5ikx_U4A%gi^pGeCD>L0_=L` zXBKTUcKpaIiOi({U*+H?pXsM?5w?QT;4_VLG55{PpR>JdzqsPhFLpk{TBJoWo5AI? zp_?l+Dh{n$uCd6GEX)caL2NOLE?ixZLio`>ox0F}I7$x>bqSnE|KODJ%%Z ze)s#=>UXuHv-$3>>$vvhXPZ*&nZSgduCO8ivV9z=b-#_?9m33dSif~@lKL?- zF+JAFy1$^aE%`C$DZZSX;tTp!SGjm3J6c~iPgbve2{^4um98_aZj+vagX07f)oEZd z=1V^632>EAAz+CAGxn0`K-L2I@ zF%KZLu7UmE4k(S&TC{-a-~JRsI)hrL#~{)pgmlb-tdG1f0NPQyd9o;HbOL6Fw9mCm zG?7w%GLMD)#GP`|M^?4`W#Dmkf!M<^a0HMB`qpAogD;isWN{l340-J9j)UG#Aa?Qq z26|p=sFzPe`4@!tZj4}(Mf-4}1{>08!6DZ)YGVg>0Wf=`T?d6&f>;^o>9Gki#g!O2 zhu|s1s$KvbhaipCBz>3gy=x?K1EHfRV5mRYvyXYmhuziHHC^LK$L}y7_L)s<6>$eg z%)y0tR=$ogdQP74vbENzFfXK0ej*RZO7$ z*WQl=_zCIZfS^$5n9gbO2ea;&Z_aDKy>?4#=659kyx5wr;{|eKwvrVixc=g}RQ&AA zTA?7FWfw&&_Ap%p6XBE82OJ+{GN$pUmks2nUIOdp5CB&*uq$AhlNsD*7_izk{51cw z89-3GE)LgFAWP6|4#;whFY&)}F1kaZl zEYZ-3`8>BAObbWGtDdm3wzVK`9oIKE%~}Idknyg!YHDcq@!5|Aq9bM5yn@0jV=T03 zk3Ww8K8&rl(|38m23@2&yV8laSq;JRzx{&X@kdjl!2)#CUsd6RlJd5!6NzIkkm)+G z&`4QIV8M-eQ0!d)=4_6B{j<99`fywF)fI`T|JCCu0I0hGjUCCABL+B^2+V0oz%ZP< zX*|KVRdM_umw4u!kI)FD;9~Ys7rdPJDhE zml-x4fOYx3FPP1wA1DswgRIy=fs{AMO?xn|rrgD?0kFtDB|1EK%$G&D4`FzOJxN!G zhL*v`oewNpU@;8os~|&pAl?v^D6jv_jY6|bcf$|?vN3Lmg$7T@C{P?YWbCaV8-M~4 z1gREo>rqC1_X!Q;LIACz@%@|%QZ2c;xyjm1)O?LlKb9pWBg+Q#+^|o-%zzgMwS*XU zO;79)AwsBH43s)RsVbDDHZFhKPAQA~aw;ekt=w_)LEeD)BIt3FAiH8SRT>R2FI8P# zo#7lZj^Yg10kRK(@K$=SOjc=s{~Hj4^5SqckaSYaA*fWUg-5=r6#>b&T%$DcUJQJ{qmIg9zATc450ll(D0&f$z+4g825KyFs-Cd54 za^#@ufHokNDrD{hWVs-aV%;iiAd0=4DoyuIM|PFMqEb|qQ(|jmcLT}BU1-4B-V6w6 z!K`6`R$yQC8D$#>mOegg#O`G)1;#W_9W=t9yeooyxH9jxC6A4{CT3quyUY2KJ5NV| zxW@h!ABkd8JdhuO8m3ZaC<0BDV646bQMdWsMz9+JKo$eptB-);B7-4FQXPUz zNi->r+~0saVH&VZlbnO`4!8`U01!!UZ=pBL3D;Joz=s9~I1sQ-MNR>9e8R;g12UoP zWRXi}NY4I$AtSXwjGZ5%X#fhvGhh!R^HiXnix~QBGs(t(00C2Kh!fBNm*Zq;+d#QT zBI_AROc(vn4S>?dP%J9PsN_8L0ADn$onagvLL?m|E%;o#D?KdAc>1SFEzpOCTLJ=r zn_#vx{)2+gCh__f1l`s^<^D#RgrMQ(_@2X%fmw&z6%1++K;yJV{yjQ6deFm?xeRo; z7l6EhSQQ+K0I47uAaq|lc!lEAeERYw1XSmAlM>L&K(TH>_h*$rta2DIBP4tIU$iEi zC8PDTmLc-P%m&khkPQgLL?G&l&Y9p#K)1+|(jYQpge1T~SJBc?^1 zVNtYP`VXW-cu_kmybevvrhppmCh=$v_Wi3RV)`Qdy9NW6e=E5STr&{id`W3Y{~41bm#Fhjl)2apoNh+ zH7}%s_J;z=)l}yXR^_}dI2gRsu0V9hryEFGZlP^>;ZfYo;5F#&5QA5%l&;TOAJf0Z zgrmyD`V)u0zR-CgY~z@wWR;zeCEga9uo(XK_XV%*L!u#;BG(5}QZ`71O4dBiP|_?l zzZu|~YCFK$Of}Wnx?{gHT9BtOBsug zXb=@kcjk5S%zx7pX-XF7@L3qposIcZ0U*nsuFgRw4%|YglEA5)wAu0JfMBhl*TEw& zis{@IR$Usd;f?D1ABB|UUT$wc66EW_Es{>_8T{9K(?(^TuKa98?ce8RY=Uft2M`aY>Iz9&rr%!iJ&trr|Z7aRy`7dIU5 zw(qXz%5T@=o=ejVa&_fYOhO>EecOTJB|D6Q(i6=_zV~?%^Ei-;nZMb#M zIIiQ?Q&(44G(PW%?T;~kTqT8HD%~oNbr!4@6ct|CprX1JO<*@H!~jCwh2|C)#_RY# zO!jeOD<&|)fYx`Q5XW&Ju2RPdXkytDdf&94@j?IL?pPsf zk3gW*u|59n#cAw?39@PV%Tg1@9bE)g9$@tMGtt`{r@po^nc?BY*m_7bRe<%&Adw$DCL)Z;UM@VwM&bZgX{9z#`VwBcP4*sZHYCa<-Y?bA5s1*lr7>jfG(xL(9^Eba6G46+s-RfjHW7G)s(IW> zZmMC;#gMIl&sTA9y=PE1|F^X}V81KIOd4gXTqrI1^jzFdSU<~+$Lw$FrhE^_30DJR zucsr4jiCrf-f1Ef&3mUxZe(=l(Z05c5b_w6$h11`Gj#`woc8-Ue#->xOY2x1@Ux7p zUkNGOo@KUg^4!{gKNF>0_2x3Sa^N<+b*Ea?ZRFi+_M2!H)#vl4)Z8!H5jf9y(iYlx zmYv&PYWY^9>Qzp9T&?(VuFO05>AiGNI+c$zsxM(n9TWj;dLplK21Eu z-~8#(Knm*ARVSZ_Bx;UrEfCS*!BdpMBATIsrP5 z3z-(Q*8X$qc(b$w34GW?razk#zH}WM(14;)P1k+W)u7_z<23%94X;VpaxFl?)9iQr zg311FHGvi??27#F8GnsfLg{)B1!mi9ot7$meJ#7iruFG#buA&MG z0%oJY$#=1}ICvIZZg|ffZ1e_uc`sIf>UN%(3&^RRkLsnXF`mVfJ2O0K9V<8N+xxQ;Zt7(3)6>yel*J zyM^N&7DN!3*|8gLZ=7sU6LvR67fu!>Ac0?5HKR`6Wp2zKdqti+RAwKVa7tH(X#c#V zXr?5t=kkmuf8El8O2vZL(KU7lf$aU^Xy;9Gj~3<#ck9yA@Zaur@cF_V*b4o#XX)lLLZ!u3Wm`BIudwn*y)D%==t>KE?+LJj3H1&Nr;z zt8S;7-crx7ArLHd>&W~#Dr0NF3`7nJh+iKfHHt;zt1q|U`HS($|A%PiT}_FG)?%;yjse!3*OPjY zINP($K29T-D;w({-RY701tPIa7Nzkazc#`Ur1P?)jr;E=7N!mAzQH~EQfju7mw2W~ zN1PJpijG!l>?gG1&NIGq+S(Wl5V&ple(W~z8X9fjZ@p9>9i?e2%jLo{d)?;p5w65$ ztrjR6J5jn8G?zcXbNWj0n4bn6BB-9`Z1Ozxs1Kq(phR!MF-r#3OP6)IO)GFm>HQsX z-%?|{>&$HAbc6F);QD-9cg?%oJ5(83`#ZXMlJ>serYKQ?d=Y$_R#bz`sR>kZgQ(@> ztHncid*9nO)SL2(9WR5ny2-RBg`FY6m%rfl$0@209Wr4NIH=JwN&Eb-=UO4@Zjl{! zNHsm;!xIU6R#~18^u2YeRA_Fa93#8W=-7$VWm!Bs88W50Z0T2qiV5RzQk6D-(na9; z=07>ank+;{I}5|kjbH4SS$yL0GI{FK&plfBZnxpftZTLP)uUCNaTUHtAGsw3AcRyj z@;B*HVgffA-DI(TldgtHK{e5o;)AQ^2WM`{Dc0XOhfRevicprT!iHJA0Qz9fA+t50 z_Gfp>o_yT$de+YU5M_uy`~yn861O2T>dJ%B6njnNuf|{#bwipr^7a8Y#ukS0cy*8` zU$ELWevR%W*Xjbcl5>IVPiy*|VLKIRMhM4vhGYjFhnUPuDcoVaM_;iAZKOxSWPGXL zwQkn!dY$7mQb^hG^bYlYU{GJMl$6a?K5P`ED<(C;A*MakD+dEu4fp3vSbTMuAaCnO z^7hZ9N*+8z8_xX&T%wtb5$|U8a|Fg39~II9Clq_xxL#fqLysQwmrvIVw;S%EoQ|^~ z+01c#j2vs%jw{(W%Fb3Y#_G7kd>>w9)lP?8nR!R!mPt`z4n0?O3f~j2oXxc5ThQ(J zrsy?(gb|o26!zlqY}QC}J)%esNh z=bxk$0l26q9eQD3ia(MCD4|)#M zawhttf+}%?{m{jb;us$N%^#T zs2QOSQk$kyqWf#%PqYNn{yposiii)w{uvj;mqC%0;Lv6Eht8A)^0lpoMBBiS^1icb_(hL78^w2Rl2l^7P2`O-lUd&&VIw5`s^X zI{aN7d%~PX&vA8;&clxJ(MBfvOR1{%VT>WUT zS}j9q8_km&1Nxz}xkvUwgmDj|cmh2}oV6Z$wnfB*y{H(;T*d!+Q}hvBm8~B{VSZ19 zZ4`)~(yEbHxs;x$d$Qh1Q703rk_H>ZW<5J7q9S3#*z)PB4tk{~lx_S)Yb{IJZ{9j)sr$ynC1;mWrcG*Qw1#LQ!>l))-h;70Ho3q8|uz5_|@|@v5|$_=nh!<>MjcfW--{m%D8* zDp!RjxaUR5ek2y&IVA|vl}tv~{W(?d;qA%)8g?R;$Ujg)K**#hPjtA;hUz(2co1E6 zqCF^O0&HgbQy?3eUY%@TfcrT|z1B%<*s;j= zMY#k`n421CME=dMJ>Q)oK<3gwmH-8U6sUlM9R%+8VidI40iH_nD4`oosM^cA0cRh7 zth~=2E%p$}x&f4i4oa8I4gS!jM<5%YsDZp&03c4Urp?r5msB(*D-GdxnlRxsBBjsj zPlcWEs+pEVkJL4{13M@Uh3OR?tixO><-h-W02M~1Yf;EsXeh4jm8?yaFX9>+d^9ZX zca5VpLmD)&BK1+sYf&nG%H>pe)Ri<$zj=mQX&SYXp{-Zr`}3YAD^EdH2Uo8u=Mn70 z>UYQTB}X(IOD>t%<>-bWr zm2UqvJm2uv8!2Wftc4 z7U*%{i*C$+9S6HQmh4)^(B_uUP&k}_)uNI&9g?TTe~=F));h6!&%(8{Tti2^?9Lv{ zjEGUQ;6Hh%OU3Ibq!4#A=h`^U)dE>QCdE8#Z?sSLa+cAb%qjP+vt2Oar)~SDmUnSr z)YMqb;we48;snmECxgnUjB7re;BIyky6+}jIJCAsBy9eru3E@*j9c_-|8*4AJQ-qV zsvUmoR3f4sIKr#t!*R?G5a5~LmDbJi)+0u}qSCeKYg3xLd3U0vMSuRU78BoT@nk15 zJq7n*L$Q8q1frhSR_ku|TS*vojkxC&;C74aV>H97fu?y@p@li5ROfz{&i;F5h^sZQ z+MRpjtAoitgMO*MY&^;H+l)(}o=OQ7b(8Ki-|NSGJ*%IgQ^KCmMk2(X&_{T8TJ-O# zF;s_|%F!4?wWMzjK0M7go<_+78mCt?M%Al*6QKty98JSb)+OI#?57Ti^p6LZYO`L6 zRoZ@nDb0QAQTP;R)8*-ziC2_&^$=bJRwJk7d~IJ2IuQT06DCvj|9Uwk{zj*km`i^Vy+cIcKAV{2#RfXW(5SY9O^oaw zt@)QZY6|XCWx#A!QX2+;m!-z8l*9Q~?r>&TzqsmtNN?7zn?=M#^BlBoRoon%j5rFc zP7Tyutj37H(~=M?wx6X|(m%4)$UN$phW_*&4@g~TATX-sBQHA7Jeswt-NR?$Ol_vN z;Kzj470|sE-LZUB>T*4KDmGlENCRozrz`s%@(TUJ+D>A;PZmWbor~t7rSV@5EAP(( zD)<>sJ2u9W*7hc6l06JO&&%mJpL77e(An!>@T~TgSpR|>?wI3NkgM+0;nj^n#ia3N zhUoMDH(m4BSE1>2ZFWL$KTs{|1x42LxAG==ocS)T6g$9?{Lqne77LQ>q9}kXnnMd2 z5+B~$=Kgi zCh<0b9Xi)=wr>GD)VKWVr?+{TvN*)~-4HfXDkwJiB5xsxund8}?M5SCj?p4OE_Zq2 z4&U7U>E}t?+;naCe4ucrA%-MzZM5d@Wf_@{*KPscH_J3KsOw$-z*IySE`qf<(GZQWt)XdPRriZ@c0Q3-X?Su9k-!57N zqtb<|#i^H0kdqjxvk6j9Tq2GdIWFE^Lf^D}3!Ty)U`jJP5rh2Y1>kl*Gw@3Wka?Cvq!9qm( zoN9YnW2T z`pK-+FS4G#iI|!Q!l0eP*S{{dMrTf=Tol4=>~o37`k6i$e|O4sld_vmmsI1lnuZbQ zsnfP2|J;Imwtn+Ue{+`Tbtd7B!_Mi#qO5+Fe-d@ou7{a>wB= zxQb~Gh~O$68XLLVDt|A}V|)^{F@7z77%T=qaaQrdNoGQvcKfen`uL9ftE!bYY7TV6 z1?|(zxml5sX3Z^^znnFe%QJ@fWfs8?m)bNM2Wq)5-GSRT2JrffBq)Pk!n+SQB1G>d-cjxoJR_g2MNYdfz$43iaVqJ z)NAOH%Un}Q6ER?{4s_k_9$9h&J5w3%B#_rNuGy|%NDllAC)>lJD6{pFnQ}ZRLuaMJ zuZLWR8}mQhGHH0bYGGpPTJ=Kp2}>(aOW9U-CN;b-1`K(>Y+`V71r2_NAGxs|kc$Tdlph8Uhgb^lOFOmUq*31QUpFK@GIE z!;oGku)bQ?j0XgPDqxJoL{Fa7UYKR(?cYaIQI|7zS#ra zj89Ev)w!xj<~-)&td$JXI*fyf*~p{!Yv%z}uy(>$2i)&|^QCU|0OUIi%g)&sqnYY_ zZzhlVoENeSi*Qh?b3QOF*>&c(n?dJrE4hX?T(%GV=^*uPLTExwsVm23Y|h^sCC^-g z#Fv_1*{-L}_3k$D+ov*E$%@Rlh4|2vdY*I0WHf=a`R;Lwy$CU8CwTm$81tGjAq%HznRL@@ve|d(0B=Q^FWJ z0dZf zAF*@?U_{J?7@Ly?me6NJX@G3NR^Dji;SyS}}_0=*;W%(v~ zOO_QTAQF!JO)e$|w+&NwFZ0;cg~F?0b>dUsRmIlV?`00G)WxoJgnA8BAAD|PBG24k zfIujoZ;3WGTI;B9M@}>|HI!etUDFj0*i8S#cX9FgP&J?!io@-HjSXoP+B}hdk%Cuo zR*VV3rFL_eu*(>G2}*Jg$j9R)0cen`vmeb2v{AMJteW6n7YrW`ko!eAp`Qu{@$GF)yr}o)XYk#M%uVWsN1%cb~PNZ@$MIxa>*(BtN_17t3NtG3cHdxWAOU2!tAsDTwG@1LOGDT8|z3~_pT^Iy# z8IY77&SZ%cYMmsG2K)vfzG$qZp{A1$2X*p1gZvzo@3bmVT|DuJb-^yU9D;tkdSdea0ex;zfBGq*+IXQ zyy-Gy3217UlsYaG2D?XZ({#AUwwF|2f17VB*^;lD+14|u(46;4;-7pB38}deu!vl% zb+@FPX4fF*PoSlyZZ`x28Ht&GYVT?j8Fiwp$-~{rv`sm<+amjss%Dhqyc-M0U2fIC(J*0neiQmG_n`ii*H`$Qci!>w+Bfo$ce%RdT1ev**Ivjs zx|&0kmKQ&18}5#ZIaW~BG&1RFm8Jxy+}OSfvbNqzqGG3Om#CN7r;B?KV+^?y6c3=P zl?u3#B~2g})ie&tRMI@A^PjkVrlB0Y>0NB#Roj@_-ge+tz0rET`mI&*_P7|O)on-S z?Gb!TIFgH5x|OFlgO3K?c}$PASb7~OTJOD>&UrPjW9LfMa+gk-MO(e1C(NI^3;NeM z`3bJgEb<8q`pxJplxi`p#96&)WUJI6|2}ZCv2@ANdV8UJ@NS4-Oj)A2ZgXTw^X`^p z=nR=@2w@g=$j%{}^X_$@6>X}OYyFxL0oa) zy*2&b3GXds*M3P4m{3G!9_#axTSnFPjGh16qLU>4VYAsrfN9(f{C8stZFzc>`;Absi=5s1_f8 zs}~nx5R1DH>7;X`K;!gD&>XsEl`_QWG5$!C5rwAaj-!N(<5Oz-~p zd5|QyenHP9yrCCVgHiF)zkM=2eKYj@C0opThn*N!~)@bv2+n5@*)va7u6D9A2ScWzU14&rAcdiX`fZR!6!&8 z-*^Dtr}<)rYVejZ?Knhq{|qfvAQnQS;`ymlvcHzc>0M#~p&s-XEWILjCTp;3H?#Cg z;MK>^HbI=yjJ*)uwao2DQ1a#c;nAL~WBmJrOk_hzpv5mrImOjKYJzWjLlta5_tFh|sRWJ@11uZhm?XPoW zt=1p{G~}&yv7=gH&5_q)$W{)jS^LYrkYf}|X(iC=rF0^vn(^JfrAAIGF#|S%eNX0C zLvLS^B&KB`-jZBOioC^}38Rb)M5Q)QC+<_@;}TPw?h|93Y*x7|I8qX#k{|idWi@yF zVVn<<1sczs^O3G#{i`V}XhlLL{3A>cPcG{G@RR>U9A@kP%-QGWnaLWP?_~c1N!y`X zL8Ob;Aidt%D0zyiTz5C4KCHnvDw6gyZFvpa<{eGt(#cIt+M{GrU2ZgUp%Af1UNXsY z!;(oi?q83sk+-tx1SXOs!#}Ic(~qp)XCzAxXU)E`uxE$O1EBMCmGB3)!y~okdo)329%gy zi7_pIo1M4i*=QVjdG~F2)$Hxs<6`rS6RlWYENgaH8X4Bdo3|6jhkS{K6duj=aU_}J z2n0&~^@#=2&;ESoBCP5A;A<^xeqprY9BsEP<7TW7{~hTY?C&GxwphugbGOt#eP@xDF_(X;s1qG)Q zR=gjffkd`e8~V07T$Y|!fN227Zg>~^d&slm=t~zb}Yh@AH}3^&6_FU-dy)jqV*k z6_nZz((ziaO=IUjfSvo7d6J)JC?CxQ&kK$d-fZW5Y6utona&1b&QasYq#OQ=iKR?K zpBl?M6-3A3p3-iJtHtM05o^Z@Is@}3eD77)5xwvGPdnZrn&&ESD*r62E08@i;t;t* zQ`PE*=;l2t8~dIhTXz3!uk1BaC~9dmRyGjtzlrRM*a)-44Kq12mMYS%dMw; z$cD%On!@p~2$-M+j1eZ?I%AYwcJ3L6v(M%x(5*XQdb;HbBac|k?qw&z0N2AyDP<*Pa#>-D>6(Xn-S5vo-$gvKMA2jvTWNp_U3=aBjh04&|r3MsJ<%wFo8(#^u9|zhy{% z%yaD3$i9XeE`&%#uX@e9H`QZpnVmVsRviCE6Ij}yu`={6#X=yN^IduqED!ZTg~^Sa zweaqiIfSfbO zN8Z>o)1$9l-J36m+Vyww;59nbuJ{f7BsrDWt9aULk$hv~%$F;pr|C4xT76H41f}~o zw6m*eSA({ofz>|ay91vkAECzcJMhcf!w3*{;@e zXFuu}cBRc!k9uczz~&Z~-R*Vk)m~4C0kOTZ_z%X~o&)-KA=RQ~o4!e5-Z*)3ub2^nnD-bv023oQ@82`hJLPJ*SVUa95Hh!<+2Tz zaR$2GaQ5ZD>jN86_@A8l-E&W-QX~n*_v0yPrAHLbg!z>`Fx8aB-UzwJZ&l{uX<4he z1=om9*ynD%B}G8q(!yG{Pu^U>rvG8zFojF(z!dr8P3K<@Pp!0EJXciXGglOKp;e_; zF&0X#Z-&WcekY>4?V4|YnWTG(AHQ1B{CIb!lt`8DQz~Y?Inf14!G7JeKb-b1`q5~nD^MFT?`>TaNL)~g^T(}akhP=> zlzrSy?y?(@i=SJCx6sOzyZZ>rLM+2~P+cmsM=kD&WSn14nD;Q>Ya5JA>M$+XA!4HQ zA$cgou2%V6tPP%OgL`99w~-`k&^o+(E_^L%0>#d*uE&;#`gLhaut5rm;Yz$t**WmMzTK1m zb#cp*>5^78TGmaqu(jnXWiG08X?}N73lMicTE4CM zYB%vt4(XuN@`BY@!MhD>saP<;4Kw*GP0iTRN@YuB+JoCYmL#?<*cq_ET<ixo z{Mx)KJV5nJ$qdA&-++$Gvh`UNl-!j*-q^1DrsS1t@y?DO!5|K>vK{zH}69bKbIww zMwPMKrN2}(2;Zu| zdvu?+dGg+2^C|q>-^s~a_Cp&I4&miAu6yIMhIP3#7l98-KRi8KZeH{}vkduCqr70% zJ<;-gwbS^vSy0=+VfD7;>(QBlHrNJAS1M5rB^pPTsU_>JHR=W*tI^Bdc#*4YsFlly zk9bPHyQU@SHfMXS?IN>$KD@$zwlTr$V#s?PUwye1?QXZX&H}@*x5AMBb#+Tq>EG(V zueeB=gg0qwjw*XwQ`mm5YWcjP&@bT)-22`)?N~qT!AEX<49bRH?cbyxR3|PA5PDy1 z4qWY}Azf{>I#hh+=TTcq=bvo37V$Bh!+e z7)m|^+pjl?wYDfM2aAL)+9pW(JG;3|(<=!FkCP%A9#X50pOBM{Aiyib7~9k@`PSN& z0{a`eyRsfM;prRK{qN+2vke(bwd(tPpAV<_ zcj)x(73Prc2wopP4*XBQeyNcNp7`|6=djbSnH`jUdbX}YtoN6&0Ydd*X9-&c6dVl? zqARLe_x@^eyK2kWZ_z3Q#dLb#>c}>0i$X-mcD~9k1srl`x)fPn?rt=l&il0S+Z5d% zrcF|`e;cT>l{+-?p1T6y@BH;KLz%I5xay`HL0Uyn|9qGPTfL}P^T{sQrBWw(qf63P zdf7SKd1WQT0-A&j=0>1QULT&z$E&V>C-V8sFPK0*7m=mWZ%Il|*9k8HYZ9-Vx^1)O z#jnPku`4FLRfuoweFHWlzRc$Z6na-@kA@R$s&8%pTuRZ@(=1|^8E?|1JUiy+?+Q@4U3YTp1;oJG%Kq=IXL-oje0Y zEAp>C23b=&mxp`s(JFWO@5fB|nK-=BOh8dz>YaDi?YSE(b1;KfD!kTk=%Er%A$%{u z!u@(G$o38tO}1*<{m>=%_So_qACh!xYg>8mH+7Ttw}pcH?EH|sBjbaluJX!J;aHP= zEM$aQMg>fSlTE4VN}t%+G9tKM6**~E2~mI`v99+Q+_d#BwsSuyo>khUGrY(65HEqW zZ*k{B0-_WsN`w3;XF*@^GY`d*`>ilsh{!Hx4>hlRHrE0r@^<=GVvp8% zujMCm%ICjq`V#<#CG_X8G?t>9M1in?>CyfzVNTY zr~nV-I?>MyL?fFvDGeRFPR)lmkI-f%?hkD)m%xRYA@45z!%67Mq3rI$n2W;9_KoS9 zQrVPHu|VkI%XVvSgN@!IJmD*A)_@irDWWYk?u{N=i@$iJ*l zGgzmZ9t4#Y4+gVR8oIB}!mAdnKI>>-kLY`}oNP;qyy@}L@UrXSNY`)dyhZHr@YzFv z=qy&zN0&^*{E^4iSnh66LpTTfpd&5stiZ1R(cX|Y1OmcEhW=cm-kkk@mCBl|&U^_Q zWO<~lWezc+L2$E+L(-PVKjEBY5!8y@rq10NuVJ}pd4jNq01+M>&v{vQ{&(9Gv2gc~ zijZ~Bs#U|4*X>gfZ6liog)aN??z5rW>vs${5mrwfYU>|b%^M$XB79W5T8Ss6JM&uy7OXP+Z}a+R zK?NxYD3^tp=j_e9C*W3o<*|YAThHx<8O8F+`Htw-tkL|+P8kM|PL! zImedp;N65}wUg7-n>2#FxpHIJjW8}RgW8h$b$9U{M&2hZbCGxF^&15g+-t$9a_?(k zf(Y)vizoETdIz<_SPyqLy}j<6`db!#4icE_t0j!aWuKBVNMpa(ICxXUqT%kbVbY{y^{~)>E4oiTK?Wjy-J5xz+d;%98_Nak zp!_r5i*-DmcDku4A_4M*tU3Tn(9D2W)yv-9@|$vq601-5_TDXH?vehraqTdp7#(*o z*K0-Hlj=>F)a$w%mWTpaXmz=D|XXK2i^YNspl!Uy=hxcwnwNiZuDW+PW z@nzNF?Z#k)&JXI~rMi9;F8hmAI==y|`UU#vZzGkPumTOAx_iy2CEk&v6sgTsZEGVu zIo(fxeR7&N{TTh7Our;SuQfqN;-p=*7fY?$s@ik;ylNe$R;#`gJGQk-omb0oS6W#71NClQ|al; zOhXJFBiXtqOLDlMCB5ul=TVP}h(S?a+Rar7Z>q{vf47P@Xj|A;V7*RHSbHv&>GSeM zl$RCHZG1n4)aXVQ!z!qK6Ynbe6#RM%pN_t8bkUB6r90?=E{p-I(=}=q+7grIg;ie~ z1UuT(k{edm63d8FdahsvFT9FXXQ)?RJyv-xayg_YiB*x>sX6pE zJzXpyFPV`H_LZTsS^aI4Vy2^d&Dt@ut2^svg|i&A+AFAs^i}EA?{L|5xv1gYpJ6uV zi`G3zU~wD8e5f?8Ej8K`$IR)YEE=)ug6_*)R;Ea1#`7k(W(J}84@^9L)1G|4!VTl+ z1O|DvErM{bSim!uc=`ie5;1aY4FCWFO~VMFE(r$cPRW9pe6uZlM`JBgOwjHpsbpN1DwL>%;XKuf4}IA4j$?9W!sv%2ioo$EFWn;VK8NFZUx8-WvuSs2aa!H-o zwD=8n#p=DaQ1JX|0DlOFngB?Me$YTvsIY?ehOhK(^>AbmyJVQtt9*6!-V+WBbM+O? zLG8?toKc~&b(uS@O_7bRUxHLDJ-mn78gVxm?!#V%M;sPGr6}e&#?M|#5>U!yvp;8` zkIsHDJ>9+CI`iM8=L+^j5da(&fb5XA3|$S2(=@41=rQ!%WT-Gb%DRptTWV4G8Op}~Qc z__djDJhL_w@H;IQ061A9?X7e@%t^lD87bk_j{kQf3H+#K>=dCpX@xtOH-c)4V*qwU z$oR_heMH;pGdtXM8QSicpTn6L!>oXA|2Re@qpPSr%oxI?oR^-15bLa5=v9I28oIqE zQO%n?9D>BKr*&b0#z1bUQAEiJEo(t3DKOFsZ!7KLQ%9u1MbeKwA|OJ z+$Y1g+^AenUNi1MygCA&O6U4#;yQIJuCW~`DH|zv^KAuXIJYu3UH{}VsfKR6W5yX# z&2Lc{K@mtDZ{8!vItg23pc?n1_aj z;GD9!>CY?lH$PrWB3LM7mf^Z9yDJv{@txQ7$ECMZ(ZNX^iN?Kmn=~?w3v7z>OWTO7 z_v-bR+^@ub?PLcN{TQZN-TUX=<$1J_`wF;Q9+;(YUu>{ z4oLZ36@zpYA<3h(L)`k<_X}zzX*ssHjye5VQNeY77@SPvyq6jI3*H56CYa8D38?}_ z!`NV%w{xyIr93Eo-nB(hXp?$GCB?Vw7b8WCxl1AsVB2}#XDEpq69AX(+dv73CTJuF z;0nBc7D;9XS-S{lhvH?_peYAbY7`#T5 z*LV7=G>_8c(t8fmRcxE5-@>w+6A>M!{8wdZaKr&*`CJb)Fv5!;0a2;95)IpzP{A(3 zayTdFFx`QlC_rJ6&P^+8Cf->(?m|qNIg^oKw!qcA8Y^S=r{e&~#$!~6qve9Bg72iB9N}=F9?~ug=D&G`XZ4eWp{zr$EczWjot$M>s9)YUY?17|dX>9V?dsNduPe{}L-+If`c1u1>JxnjcKJ z`N>Kkiu9o$2|9tN*Q^);MYsWoeB*>9S(@zJ+)SXW;5lqQ1udho(qCXg*>I` zi)mFu5c`wk9RK3;%*(G`1#Ye5JgUq>_uAPaPv{xr9d<7{ES}P>W!A`ysB8+u1}U6o z-vu-J^(UNEdz8Bel3`0lLGD3UYbSsnfqOm};Fcgi3RLnGv&7MX$%K-dn*cP%^#Hd1 zFn~ByJAahyAaKs1;HB+*AUnS>T!IN_$jkA63UlRLiplcdMK9xTR z+#!a5VYM|^$ExRZ?*#8I1g3{B&>orIbs&iVeN5|ztfocG(-p1EOlC?a?ISVAZHnz3 z#V~S9E2`|_OEZOx!ngyic?ZquelpGw;@Jvw?dZe&Lloq@@ro;WUc_fLi1z4wNeK*CT1h{M4x*(_gra` zuEhJB^@o_HG>ssMP!CBk&5fQ+alt61-lG(AWY#2QTVu#Cr=Jw$t2S_?-*QaA(P&Rb=lA}uYUQIc5@oVVQHU}%nZ$leUG}bn~tiR}H=e z#2$DPBcNEpkF;DaB0<1qV|23KC%qTWFE)c+q*QSBYC#YSMo#!h`uk+w7}CgsmC9Oh zd7+B)j0Xcv24+x*hF8dt^=q-PrW1E)f`B`tM2565zl3BKozerXg7|Xr%J(hy-C2xw|(CDGvP`1eqQ2gCBalHRoYZg&dy;v z?alJ1NLK9?YR$ei)Xm*j=2CmxL0*T@IM%4qw^2$(X>1+i4$5CDeg!xmhHq{3$Y+8f zmyZ+!!18eZGZB){0||-yizMtOJ3hy)=j3kdSa9ZcPEL;5TrD%8%_9NKfXvAKR-F35 z6W3gh(bv7Vgjp%b^zKMB31NlzzvZXV&czCfPH*}d9w@y zT&f`VkDf$-2<0nXc@mEq#A+9{LPR|(2(BY=RT=>P1KjB{oFhY^)>h>NTKM7cGXRF} z05T1DyE>ev3Ao~g`znvrQX~u;pJE}yqM{l7&5`#$_7`>+Z#1>MWJRBw6z12Ox;GeKd+wXL`4 zyk1BZnscuv1-t?;MSsN}s#NPf@9dj>zq^$|j?5R}N})1Cn5zw+dp-C99|& zKi*+@$j4qW&)H|cD&Dt#gS~J#k7DjVNx@|M;B}<>4mQWHr@B&Sd1~;mHtmr4s28>W zKK@p#_7wKxvX+9eBYfVlZNtai(5P#F$y;|-bLic*nY6EA4$O(vI5zr zdB!lnbV{H9bEaK4|0nRH{w~IP)~H^MZk|fVpU%(uM>9k6-#o+PP4VFAK_s`FY5VNq z6l8tIi$4aSp|0`}bT20`J8W>F)RHrIm9G6g{}n?eHSL=J!{$1k@^d*~;h4%t7sGz6 zYj!ArYf~_u@M6+HK*q+dxSSNEy+NPtAMc^<*z#>#1hAI&U0CTFoQM9_vx9&J&^D`H z=~CUN8^U@8OO>ceINf;8cg=sF;9I}>(s>A=?TbfxgL5_AMJ>{W#M zd+rZ0ig_2ffX0He#omHw>EBD9&qy%w(ytszwux0d+b*7?`k!qlVG?B4caR@7AO2>> zm>oLc)%(;O{mT{;1$;#nA8zej-Z=A8-_@QIhU3L&rH_BP7de?VlZ{3cm|gFSsqnb8 zZa(fIDSV)k0-Qw1GGI7$0dh|mnC!d<#xTJ5K?XA{=G$*zk_ZsKn5qAkH6-)c!4(08 zx!m{wttF6lkFFk~c6?orAM+GLKt~#V%(U*j{rvDA=jc8MGbO@7{~dNOuG;qS3#85J z!5$Q!eFxU2+vdso(`NOp?uygCG4sL9yug?VBbw zE|bumpluoFwf&qGbZg4veLlPZ<<$pMS*E33jsEQ@v7&sOKW0iQkH&|zjh859O0ZH}vq7D6>(JE7 zWeV*pYg_H+zjN|s=Lclt$Yc2XZ|B^%r`?*(eJA;gkS{!*X!)aB?vB^Y*$_cp+O*X#j-tOzmg>Mu;EKLd=o@{61uIzS==jyEMm z#pi0p1(Lo1;gMi8k|_p`N;D`kqW=9_wQ+;vW?St%8Azm-m>Iih_t#|UCy2teluWx>q+L&CrkJG6@1cl3gb{ zH;gQu@r3LQFj&?A=TgH^?Z2Gjxf%<-xBu!*TvR&m%CkNPyK1MnPwtJZHmI%{?p zzrmdeytIR`zZksf2NhHKQK6M%V-@b_g^m7t1}>|8H6eGS%h+_x_S^hE%ME5xx?Ur! z$!lh#)d=B-LlROI54dhiXOHIe%q#K2e+|0?bk4w^{!Y0ZpHHUnAiYi~3lE>{v{Yy_ zd92q9#p|{sDs z^*$*?!wpSYQ0iH!!TH(60rK?Go$Noe{yWwhDr)MdUiJ&J=KOCaG=~g1 zlLka0rVT5os3bs6cF!A_mI8!CqqolD#-K)>!Xk4=L5-KGayy1G zP58>K09WjSAkz~DL@;-a=Iq~^e>Ke*25r|P)_9myz4>ro$1vQJ|1#Q{QE}!`;Z8LE ztPi!?y|~<6#FTv_I!97mnZEFrokZr(Fb{z-qGHczLY>XwmDmrxtgTj-&{^CnYS-%s zF1gYZdiQ4p7PGiXv?g_P74O>-;cP27442Xs$dYgg7%vrRA+7-7Q|@_f4>!n7gB%y! zR0fBi67o40XWqVqX8wSE^DzoQ$fk3X1KiLZm354pRCXv3 z+(rmqxMFpV`rZ&CFT5V+&d)0(wfY$yI}Ob5KgfzFeintzW=i_DI&Ld7Y1cjjVO0#t8oQ z$~gF$SjjYY%BAi~(4OC-kNtr$ye-cjF(1cZ1`6C3<(E>B><*?RJimBy%V4ZvbKR0dyQ2 zlz9Lz8?1>03RMey?Tl>~TC3ijt8i`$LlOMmOep}uY&J>6Gv^i<|M;%Cl|IfzobNkzPol{*csJcCeE)ePoaUL zQq0NT8~R!+lFG-7e0G@9%KkX76qJ!^u|3QgJDzX0trH+>`c;%oT9vP;&Rwi0t1hHY z73@%n5S2(fAZvS?v8A2!ORAhYx|(Q1hnlcj$|Ejfjf81)$v>I12oJU`{{|*mV$J;I4cRfXUMPpCmcOo8F5|Z1PWwVVCrxNiPU* zrVKpdki7WnlxSHj^%A*2J=;i}xl^1l8Z6{l-&H<>J7D2FOMnkX26Re@uhZ_N0X&Vo z_eoL>Ie*vg(F=vZZJ-Qz30@Vjw{ z|G2M0CF}zb|Hpv+{f{d^Uf!9Ng5UL3Jga_b7fWEE>PxfVrB50JwF=hosF$b+X?^8z zb9&wH05Tbb9I&Y7ww(3_ZFciEZUB#Gx7ziT+F2x9##55C;2q*sB#*Laan&nCFP+#B z!4J=vth1e%I^h?iUX!yG=^Ohln`@9#8V1Zn@F?6E#V|sYFFiQ&d&Cj;8S^Y1bJ2^z zjaV!qfy06yi&!G#scxD{GSFXoVQ1L9fbS*f13RSadXxlQiUzd009AJfI{#d^GQQdZ zoh@SpT4rK7R+exq6LAo;>EBM-Yx)BQu)onxsnarLGlHQ|^Nq+|D2fUnpL>+PMc(F&|+OiMZ$aCK)2zTnon;U#ucr{;=IP7VbP`vicg*$Y_pNO=D$j#o-+@^mOjJJOEJ#AQ|e>WSDQB_}1lM4D9bwlah=nHS*O^8vhA?|z_Mg=<)V zIa)kO_c@kQ!1}65_a}iUci?s?C&rZtFNj;<55rYpvi^Vz^^}vAf}cB^r)t$N0tj z$*(GLN)INO%6RTvz@)N_Y2hqms-0Z1ggn1$0a=A~$Uo zk&fvLy!y2rQZQvIh-5eJBDP?-iR94-!ROP0wT1%$45sw1{95zJW&A-tDsR@)L4@TS zmjsFGR*tT%vupiY@wjla&p63Q&$)OoX;RzYKy)8%LYhB0K;UVqu&=1NOA6)7q>#m1 zqlnep>_m_f{RZ=ja?NIElpUg=U`|D8bH<&rv%{i=Iq$0LV%&1CnSDu<6E4 zKgNp63})WF57cumnvalnm1P1Fd3GfyMlMb*VleYXqXK;1Tjbu11ll{is zV;T-DWUW#rsRXd;^7jaE&j~Ib9s&e|LNIi7^~!rGf{vKg}Jc8+1a&Pj0-)c z1CRXox~SbDgNzN!de1mD=@ehe-B00L#N)5zs<4 z0b>-vqFdsD0R>+$b!4FAlP4U4a@9{$Ip{q6eBFP z6^++Gm2wE8KX8`>g8^s-s2+N6&UfKq4KDi55)V6ZHv_ij>k!kQ?MGh#XHilIT=*%ldm&$A+oQpw>`Z+J zC8F}`(|DbJ?dk(JBnTN_5Rj0MUfN|peWn#EA){j4-IypG%VSv>6c{@2WWg7#NRk1f zb_JO4kD8j~si2gq&e$6K{uuF2qwH{9Otwqm<1OI{|21$e75@R}G!r_iyRFFfRalA| z@dug!cv*9$b-pdQg?7q9D%uvZg>xm_R1>uhONmQj~PGA?#817|rGk-FG zX!C$A18~Ma0|+@Hgv(|z6u?N~Eu~k$NKx*6@6M#(N_x5Ak_HW;fdlUtKe(>Jt}vJb+e*I0ZGm~o`{_i0h_6$G+|yUVr*F+jIp z@&L;!cz@g%ObYUTmcZ3dm{Kn*=v`_Oso_FcNgc3ns~~WW3%?BE7a4Hf{NvDo`=42x zj}SrH;wzxOz6Z!~RBE+FG}dOwzrf)76ZatM0F}d2)11gj!i=9iXOZi);hO?*fr1FzN9(Eb1fyIGyQ*{mnYdhv|TRT<65;qm|nk6mN zxI#V(JY820ZaR`MKn=rL>~N(OpYt9BQf)Pd56VE;Xju}$ngh;zhP#DR-Tn}%U5deO zvPzKkvg>OY@DHxCMa#i0yiPAW`?kIM7|VtBuPJfqZGYGMc5-+ zHAT()6xS4#BqncB1z24l@ORgqAD?(hDkv3i)B3wxjIitp5IqPMR*zy`di9KDgCev6 zF+O11Wsf|ZG|OY9LVO?Sf&ZN}#|tpnHCx;{)r&Q;CU3xb|GyO$YNPo9{dufqH=>AC zF$mH|hW0L0{H?IlODR^ul0AJn-#47+vPCRM)|Mfkjz`Cc&;>RB9XnCk%esD9frl6E6 zQxX+>yaM(Ncpy$nKsv}$8QnBXjZWkE1CbRUT*6YW$#h^0EbO3?8H{(}bLbr+oVW}p zaaw%Ap_PBZ!NFnuF+w#WkD%kAywkjb_%cYHisdO&8Wjt8Uc7#qpitm8ra|DYDd_Uj zz!U*nrI{)?iU9lr58t0YeabhK8(0u&TmFOwnDoeH#&CKRe0Ix!@{`gV4D#98*)OQ6 zyKUT*m7|Agrxsp)hu~;SVTXF`ko40&4Fpf#T`2`Mx~7Vf$}N0zklAZnkt_GF-poeF z?bVuM(Dk3Mk{7;Y4>i`seQ6vEnjaOl`e&8kmKdSJX`CmV{ z1piha2THm&|D$99$EgsJU|aul964}^=wF^=EUch^>9pYE`~S#@k9YtH`kx<3NHhY} z5gw-h`S~B0a|g!{^#3^y{a+o=|2^2j(E)OSLGr>-vid{84^*^S*L;Vr%tCk5YvpPD ze&09GL{oegR`v8+tw`)?6_6q04{Z;k=C>CIm-61PaHxHl{cGfPUwi+3Q?|eVaM^|c zsSyu{l|)f4^vlFEclLebK!Aj$d0kuF^Nok*jv@Yyf58WL}SQc9eAxG+I zB#M#WSG;Y;8!3jHm!DirnFqXEU|nJRc$YZI%`fWGo85c*Vcn?FWrN^nA=AhN+x9U( z(QzVGUVwr}XxHCaIY$Rs-@k(~SP|O;ty8-PiD#~=2oz{}sh-NSISd{;|?afdUx^^z`w)siAwl_6VWO<=(= z<#BE;Q~6swyrfHEF@k9b%YT2zHMXZw=98oRs;dSaANJ`RjAgP@ zoM?)jb~+MvIi$i!+?eYo3)Z}c)?>oQIR<}BlF^p4X8BFoCv^vxoEM@NZmPY4@F-FC z-=~(P%naByo8X6k7(dn0`yTt}uk1(V?^7NU>^lY)Et7PT$BUSdOH)rq0}=Btw*pDs zO|JW86F+w!{{3mP|FG@*yj|+UEA}voK)9P!<(loho3! zp7ddjcIcrgF*;^}Eddx6%Pymdx$WCF8D|q;)kwI!U(lMd`qByP^;o$l9`s;i1(b{^ zDk}N{%{z>iHhmE1Plt6~r+H1sBe*+$UF=iWiByN-HI-6@ik!GI_}}A?{^$7rkEj!M6(08u zJLS>DzdTSNtgTE`?>vz6{#$DYg(CdJtcJ%sY{>s|aAo^} z*tRWTnM)o+BX^?x7i9S|!35cyhRqxgD?kZeyGz)I_YK@5eTvB7 zkSrqdc-2bH9EENjBXx_1IoYRTcpldUEY1#FF8>kG!o@9xYDF+w zDZETs%U9cbI|WiUC@`2Fv~<-HJCF{d^!3>%8b)g>QU2bfP+13r8?Zt?27ZZEpzVg5c=Bny@WT&MF9c5Qy-9h^f3ebsa zxTofEF9DM#D?J?oe0DIfW}bg&1!@j}(op&|FHBJD5FFnc{w2_}A{-}58D^y*+mRa@ zDjZ8FHUzj#y0HaIppN?nqX~kYGFbXjDcLSv2By{Ntw7;Qo<%7hkj(-ne%z=^rJ`FU z$HQ~S&!e~}?V!ri{Bt;5x;>P?H1$7-4^Sd+ePTCr3q^AF12-zJ7Qes0q_goAS`;Z& z%pjXEL99~liOPqw3t0#>M@&mXGsm#^Z*bsh5Oa71(aIeM_yf8%vKB9)7=OF_6?$p~ zCQMj1u2Nq8si6STXS$*FU~cdN*wn(CW*SWVWU$#DJ5H?bUt0r#BN0nSu%IZ_E{Lw8 zc#9!;?GQ<%_ZVk^V3F#b5ka}$W%#!!0--TIpuxY?PW-Sd)ORzH|J%D4Ad3+;)ba|W zLB%Sd3iMkm%5w<@9}S3?U@j1OJbz5~#(ZEQEiIS4iXr*qP4+ zH9t!(L4AVx<{m*u@wv2NH$C7PG8csjICcLCR9YDmFFB16&i{GLQrXCrn$}X$Z(<=* zd5f5K{+G-vDXh?7yd*5Bmys_Eok)j+kQRwfuziYu;A$tSL0N7Ejhw8dY0zp2Iss84 zRwE#Ad{U+?|KL&Dg7&PnI@KFmV<-L?i=H~w%bIGa^F5zLw#~EQ$2q?a(;0_TPs3kh zDV^~Y(`0HMgY)+t!4L~P{{N}%tb^)kx^=&S;2zvvf_n%a9D)W2?iL&Z!QGu8!QCan z-6dFpgy6w~y9M{#`+dK2s!r9dd;ht2S50=1J@j<?jEPfi%^FX#Zg zHIEduB5yOJwp(vbhpq*D=(08sMv8!TZ`x(A;7`dys`y6L``@V8RxuO0tg4|y()}6X zd(dN4%~@j`2?^pj4Gerd#RYbV@s73<|F(Kyx~#ObuJBYz%wgsAtmiFo24UpOypfR3 zYaj`dHwGW(MJZgo;tvl;V;x)96UO*5--Okl_Lz<>v8H~yLr67Cn2Y*-7$%OXUX*_Z ze158*SX@#b`{Rhw`Me7$bs}(HBuFB*Q&v}7!UM|)q+)*>Q2KX+mv(bNVyhRMXB_;X7ll7S|#UgV!YA=xJ&1O7#YoP~gqwG&5 z?~hpe>z+wXV<1wApDH)#fb`(6u|{)dyjHX?+){obTD4BS2dNys+TvJ%9{GchUd9bR za^s)Cx9gTR>abl@G(TwX^tOOT;15_1hWCDo$0k!@ zW|h0_*sk2!YZ|#i{_=HyMsnYi*Yu4U;a)KVP?>(Ip3U*}iL0IwY|`&wRC}h-!q@Ke zY_jy7^~i!suQqG#&n6AN-!DhRx*9*OHLf7C3DMZ!{i;>9d^xCFFs9(b)oTKKvbnS! ztXHM6G`A3QG-|zCUY9QYa1+XPaeT4wNeyaeWMo{#YI!;JZwH&MUT1jnf}ksP`QVEF z>vZ_gXFZeY@a|ZO%si#()lwKQkf>*m+7v(qek&zucMrEjFPi;i1p%v+?d}HXk-sy{ z$XJx)jn>+HtB zvoV^LN1=k_HZcObHPc1l(BXI!D%czi7Qd=0EO?r^-=&IRLYgieh~8zjbt*dp6+83R zLyL=T681?)2B;kyQLiw$`-QSjRwI3GpBB?aK@|SVdE0nR;Ayhn=@$oo)^oP>OGJ!~ z&#;ggWkQtPz3+QZ$wxi=sBZ2)#ZHGjS1WPRJN|%_+Ghp}*s3S{#ikJdh!hv;D~pEH zyS^YJuC&D;0p(-crw%WNim!&_vm6zxEOxkzvk&g}8PGz8)p@zQ&0s-QW$!fiBdp5D zk0VE)7VjW`?EkQPAG!g#E+WJ>l^++Z9K5`=!^pMP#T+w;g4g{314(glhBHRP5fKVK4u{*is?hzk=e&?B*?9jF@oETAo9Od9ktt6%DmV(z zrH;}AU#1I0RE|AAfNTSoP)w*@#g0wakFBWv$`yFBebd$5b&r!??vuUyLx?}#6B!uD zx`U-2^EmVYJO@_iZ8b^>0p9M=2#K02vlr4zcQn_nWczJr)1Q?fsU3eI**6|hUN@*6 zWJ5%pxWmI51d6Rn_q;o<6yv+$+rIN_N^YLD)B0>mN$N%?%x?mHmp3;nTJsE~H8?&Q zTAz73JOt+*ol&sOp0X~cM*;04DkRnGsipbptN|2V4s|Ts!Rf5dJhD>BIUW~iyQ1HF zA43-JA4LH*Ks5gWR%25@rSsw88h+<)vG>!0V*_G9?1C+9C)ol;O6O_GiWd(1ZghmG z?O)wa-(D5jQWPWog$^Kfbg|d_;e)Xmy|+Lb7gLJD0!y|K8d2F;US8?GRZ?<}%N)sk z;JaIXYpc<6W9dL{|Kw=ieI8sO(Wd|gYHEpXsAzN03$Ys%yBhuA6yo>F@@kn^7hW3s zs5d@79|y+bNYiQ0$lS-i;I;qc)A46AB5rBZ;5l6{3u8!COSsUxKrlnJvTZk{8CKm7WdatHm z%Dj97ZUqr@4&j(+zkLytlXN99=5}d^hKd0GPu2WiiF&_UE|d4jyu2*pKc6ew zykbl#nopuXd3=gz@+(ka)6e$aZ#r{naeUCXaK4W5;8IIG*)9lj+B`R(^JQ^aDFO?9 z@aB9OpAyVofB2LZWKnm;t6n##H|S`Qooc=%oi5B|MLR+@<91llie2hEZo<`bgd_Xo zaAhgN18r_&CQ*=WJVW@n?wk2E^4o+{5lQEZ++mf(~z-aO0 zCdUZch2H41;}6)oE@fhOXfKr|eCSouE?GsVJ+MygmljY{E0Oq!51JL})w=EAZ&Md9 z%fB0k2fJslQ+n*&xaHb~mUGLGRil>Ze`4OJpM4KEJxF(@L453z0ozG1_E&8GhCFEB zVde5A>Eou*b<4SJ%H}d=gJ0e7hFiO_;^gJE-XB+{TaliooS5L_8ZY}7Klw)K6E!`> z8=SL`5e*Tlo)CY#@mrxZkR4x$H@sP{@|h&Ezd2npJh}XN_p$n81)S-M0CSgK<0#78 zI3ZDrQUXl3k>`i*)KiUc(}za;w@2e{WaHi(J-99h8#+hYe!UMEp6(t5o=?jQ=gYp$ zcb{or7Kz%AN@)2uPlhwgs(86 zyo_HyISvIBak&zsNw7^SkKGk)j*-%^m)mZHn8mS}qNN3AiMcp3mWK zd=0YodeJf}tiL%2b-$Q$w~R-5bJFfnN=&GK3ZFt!f4=1QUDa*I-~{d+lW0Az`at?r zY8P9nJ5{vuvdu0j^Jh9=pOVm8F)KjvVyoSatVwav=wu+G)z-POZ^(R4{+!@z_>qDY zzw$ck7qR{G2#ZGIM3Zg(yu;w%3iWLhA5LRmiK);N8BhF56(R-xEIK^nUMiHTI+d6@ z1x+Maw*u)*0yd3csctD(NU%W?6Uiif?~4{w(zYOyinDyvnwsk8B|RWptOBb1#<6N6^ai&DAmByEgr)BRq zg%_R5l9g)SZceyy>wJeR0`5kP&scqKHNK6Y{sfjMsRVuTrZuNF^uc238k0WYOy$`~EEZ zIJAzPH>Yg9qY?o@2}Sjx0R5Yg$C1Pp_1hQ1$n=n1aX?rsa~+#_u6_5sr6~)L{=4I)md#@%g0$Ilw^LCU(SkKfuqE^7n9;MDTI-JQ50d1DIOu?oY(T=2*pzV zKy7h)w87ntXq7w;`;Lo-+!+)>^0KK&rRbKA1gV;=NK4*DU7Q7;hpy7o{Je?20{TQ> z8Ejd{gt?qjnQ!grB`A^?xNafeorVr+t1)EG8_42+69**Z^X5gF+NO~xl3?$7t*zS8 z06^UF8`Qa2t9XZ*P|?b_d}N-W(qXjN$mpvO!cOS({_*(IPbh{p>NZkr0;MiVr*>7i zA_xuSnFJfQGM8Ci<6YCtMV@=kuw;=c0a(a%m2`b2{>aig#4mq9YyRR;8#~OaG zP{dkWI%W{xxA0&l6!YdRg$w!XkeS*h~?u2;kedG1@Po`8>1sDVa*F zo=+6>4T@)E=VE;Ic($a@4@dtMvpo7yaOZYlk;*UNw?fgaQ`Mz*nj%6{bxE^KHF6aX ziX+UM1>tvV5$>z}I{Cnv%FEQe-H=Vv{i_*D?>juzyS zYWEu0q?LsWkSL~jK1j>N^QAUgcV-Zpzw(WB=Q#keizt4#Ji^)x`7?{><94i!NE zzYQvl4WFcGCV?A~#uCU?+{V!l*wJ|+fJ^wEDHzuFz2gB84nGQ0mkCfZQ`;H?t z2-ygmj3WKQfvik74Y{d7FMlqM0uUuYWf;XI>G;YJ5GHs?)$IZ+~%H z=x1;d9)VrUp1D^t2;(FqmF|_F(k5H{N5=brD+lT7Wxna~%ZW2R;Qjgwqo&7>FA9-}^k9m1eS8X!-R4sNuQ*0CcsG(b3P6h8Ei6j&6}2W%(~0Z!=G9*d)k8{Eq*+QZdjW z;;U5;e@{1DnH2_=ohg3ED%|-7x95NNFE0G7gok@gWpPAiaK;iX5QACmpH$4zdC}vK zqyaw*9Pp=N$<|!*9QF_G=|rF1M2)x_C$oF(Wi14OZ_g~+-R-@P#5Np+hlG-vlVT}* zF+i5({JNE@4_+39GSKIBb9R1}MyOay6Lad!0nC&OWJ_h)yqkyL#lVDtFz*s~X7iBC z;EjTC4-Z6k@8@RKJdAN%>&*3sQ^|g97hyVUWf4|%ayrKzPvWV}fkt8_<`MtoN{3h* zWhaj&m};rRD@a~#>=p{Y1ZP_LtXlQTK4LIzDywXBbW}M*&RP(|A0h#E)j?DwQ{gna z;F8nTcK9jZ_0{5l>qq82;r7~>_J&>0cMH~INy@V!=TiNSRaGSV%dh*c3wzvFFR|5> zIXqzGUaw$1nEBSzZLGDa}a#+>ESajE%|dj1^P3`B1Vv}b!Bq@1yjs(yeB7$ zz|cLp0Q~5%W*bEzk^ZfoxnuoiVW~uod5$tzD^KG_P*G~}?asJ>eKp?aZ<8(s=`-?eOC6%eD&JO=UjJpbE`2cHvk95I$rdz< z_Cw>|}B)ET#5yeZSLDuY4C0xLa`7;Y*ireAM&v)yO*u zg-gU+&Qdh#Wx?cd?YF@L491NRi+;xrB||^Qk#K8eiHmrYz_S#8{8wH1!#@?+y1z)p z#*C^l9*a}13Q>QVosB^=45bR~dstT4J%d{dJbYn~HuV|Ei~Cq5cPP7!?RD;2rhzw}xPS|Ygr zBiff7fcvKUfoRK1LY7}7#JxQ`593artp(nb5=+d^j+NZ+-pMCp*sM1Y9<|zXJUe*s z`oZ`5AwG216_MGmzZkE&kd7^I+rgb&?L!F!qI90!y_Y^sFfzMEVL#*dl=}#GKUnib z$aT1pIqbeVKyW@ge&~lGsN?pH0k^09jrOcqGyYyi(b|gX?m!9*q$3T664&d^OF&5# za=O4#nXc)HC~Tp4t9{ZjGouqwYXs-{bt3RdfWq5T?Bk&S(E?`Ef zxU-FUJxNu~l#p^jOlitKGp&7+W2qpftsrr#6uQ%iQ%mZ-!r&?tkT{m8qMoQp_Youp_u{cYr7r5UC<>X+$Q^%+#r|fiv?GLlth-rJv z+<%Kb#Jbjn_!nDA%&H9?uGgcrZ?Jl^_vx>;!5h8w!N-2UoJa9PxaOTvAw4=x2_B42Olf9-o8~`a1qH@M{V<51+h#& zey%dP2iUidPb32D)(B=dd>s$q?3?=)!}*a!P5Et)XSc7&FFup+hWrGOY)9c2V)JKC z+Sd<6QNE+Ap0LlGN)8|B4^HGg_2|n>M%i#&9isO%`#k=p054YlB!X9+!uux5&MW{bcEyicd;tM$l)qomLc6LS6Y1+v_H5mT@Su>9XzGvojosSfT-Z% zg_oD?6v^;Ar2R%iTFiGyL79P0uITM(&p6CIy!XGahZ>TF<7SCj-S4~u!xq28O3dO! zbKb|bec{NU>${$Em`6-{;5ANz{M?sIHfOAb-FU>46^!tEWfpV%64LHlzx4B1xWS=e z`B*9i8NyiZFZ-a|AuJWAd}WVufvCFqeBt;|h@iZrlm}$>cX0mqN#02Jk}CxE$}#lo z{JA71-jSn0>{u+5JD1O%?eB^!xfmL!%Cs-tGO84d!&Z;cP<|#dRpSvY+wSLx3y&Bq zBANBM@Q{=}2Py)H_~DD+>2UD^vGoi_Dj!XD2g2CgzdHCFvkLo8Cke1DUE7|_1&ZC< z?fkr^{qcc=Jx;yZ(+3)v5sE4F&*DM3f z5XNJt_oP6( z8KZXBB|Ph3A)(|sYf13up1*j|vmUavS{{zWNW%h*x)^#ew3BHLk-Lr5JCEmUF=kNw zPJ+T!gkie(Wef*%h#w2P+(?hjhW=uTOVOR5T2cNbD)#LtXQCv13CU(EEjP)Ok<_Pv z@Y5OXN|X4CtP^#R>fS2%XSf^5av8ZrpI5iOAwHa(I^kRqyu~XLV758~a@l>zK#8QutTN->*GBT@+^&ZAQ0a zV@eXY_ztM|e}C@s=DpUS#>=8dez?b%qz_-UYiMYYy}}ez9r0HYPgEC+r$JXzGrtac zx$JaOr>~M^3-PZjg7M`|NSQm!;AKuKZBOMzr$;J{MC(G)q7#cHj^xVR`4A$Zj_zJMwD*~hkUQ%6HslzbGfYaH`Mt5Lql z#QEL*T;oR)E`^>pjO<70heh8m3O*dH@YZ;i;P8qP$9dY@1C>c0vsBz>STQ*!qY3ZO zq}v+m1Ov68?Uh>dsLmA@80!&|RJ!h}^3;P*tG3sq<>kGw0sbpm$rE8x+e?L39D^GI zSSR~GDzn9!vVFfuBPgnJREhnm zQ*NSCJw&Ce-HGg+kvx?9rQWAzvHF1`h3Y3^IfIXlUf(lap$T6#5w9#_JJW4b-T z;*zWN_0B)k)6~yw>9JEv94|u8L^%6nEHn#ONcO0v9fj@Y@3Hqjs}UU3^<6xJkOlR$ zhwKj%N7n3!e5YLuB~<#nc1G4|P=|YPg#x#$lJuuRhl(=)_I;ldy%C4YSNIpF7r117 zwWR*kBzGO&bp%UTo*lHU@1lxxTU&_@=stXnB=w(uHpGe8f9bUxAlrpVcxQ(`Ko~`y zbN^`cCG5{``IkjlV@+&ouV$ds>uVQB2C`~j`&-w_l z?Ujw+g$J9%Lg-)kl4Bncnnf8M=p`@kx6~FPD<69 zZR<07g6VX{X}d6ER~=#Nu3@BL4f(qID)QMglXRnI_R`8q=^`m{A4)<~iH4r!WPJ52 z$;t+BRa&j(egjKg+-b6nz4cRwdc*>@S6{vRc(5|7jneB!E~AC41zuUg&pT@8K<^ik zft|ow`7xa)${mCl!o7sbr@IB1BmT7#T9~Y&Kzv8d+`rQN~ zxI9ACK`|GK7g$!x=wYG~}h^A$Z?PdVsRLqC%Bgh#&9hDztga zv8#m9!iSs_mz#P$F+UYt9hxy?4)+VTv3HN?d9DS~&wL@FwNpIk+Vt>aDp#M#d4Y?o zNyW2kiQP#Brp3rW)m>_kT)sPK7iu-EmukS~hG-)(=J~qlj$+h@SG{CEK0EKJLeJ`K zY{Z9?2~_?TyuC?~@ZK9m?S92JfGy(9LEOELuCD64ccDvdZUyB`ei%v0c z5M1pZC^v+;suM<0`1wde@Pne#eO0+_;qSn#j(n5@p{1a*A|l2iq-D9WY6Oajxuu^$ zU(|5~+B-hc8tGWkE4g8GZ=xHGr4HR~&pE5i9!Yf>_Kc`noeae*!}M+EyiEw`RS=}5 zT9u6wQ!2+>*l#szKyZ|*LD$qUL##4a={X7|FBLcX;Dj)C^<9g{gXPy@&v;;_2m>xQ z+VAzR_ND3F=d}t4);m3^?Jf!|LobEWXZCi#jfIjcu#bxQN>3GpP-)Mw9N6winEMic zueI|OZn(NRk&+R8wD2bPt_>Y0_TqF?z!=y{qWw}5q{zm9fSx?uM+B&h68QQ;aXIPNbELv3j%1+#TP z7-sJLBR<2vuLd9fj3JqF$-ZZ7l8i$e0W@ci^Y^FLMqhVx__`m=)m1eF8lOF`3m-{Q zxB^_8FfrQTG1~e+QAC;boH`RXX6=1r$JY<=ClvE3!P(Xe0`2LS85FE3=p-4`U2@;p zLjDv?CSJFmUem%qee_y2HhS&LP{CA~uAXdz7DvrD7)6{?yYs$H_)4OTs0j~O{)Zl! zY=I@;OxvqJ4g;G#w#m6xu*WmmgJoy19Q6G7GJfY z9aC8MmjWnys$Mwr8=1U38;HZ9O;3XMtGSQG=xrpP)qe+^2sKkNw#6V}I=7!pc=M*q z@_*P#=kfcfW6ZSarFHe~D)E!WU>E&aP*;oRCW6UD1p#I6;LIsKDgCx?8q9T(Ia?&Rg^`*X5m0u~2 z$%Vo)=<)sxy?W`(UxB6;_5J)|q3eB5=N1M_`rB~WFfu_BPshztmW^V>^&yMeRpkb@ zYjZq2535vl>p+@m_ogX=pVfB?m|N-_xwJH>FSgWetM&sSlzrwq1qC5)y3!k-8PG2VHZgn~xh!?NrEKo#5x5Zu4(Pv}E2LtNJ^#mJ9rP6w2 zi2K&nx|Dl5>y-4k`3S5o|AbkB$-t;EE*VLOZf8$%UmH1|KE4*P&+OFd4566)xKxEQ1Vdll)7*}+CA)C z+;TG7r0Qh`Bp#BFkR+n!AJ-t*mX3dGrV9*a}S0On{ zp^0n8yvFSqVWmfIBldJ0O%+$)*g*V2m-|O^8nN0@UW7j7*|t0Pcdq#D@N+~<0gY7P zrmiyLhE7azb#!^{RL`q5_%15gR+mqy(F0qBcZ9_)cXEHqlzH5^&tJKJxvnEsKR!lc z)Tg=f14|^g+Mg5+Z})s6oXD^IGkXKgfi65Q@cUml`eLoj(?Tyd$dgVt26W6y;8t?p zMPFey<#TYui{qq%C^7k+3;l4IMCD|5{i6AU3w~_oejlC`2Ck*lqe5PZs6YE}T$Xe$ zCat3n5I^Aw{|N9SsiG)+APsBuIGK4wSQKWbh%8<;a;8vfY;pQ=Zi0rOe(-8C>aLR; z0dKxP@9OXR)BO$Q_YaEKrwyh?P3b>hG8QxrhrGgjHD@pjkNi$gu$c6#Pf)684TP=h zO-@P}`nAS^-9i7x8d~PAdbQ(UMsM$0R7GKfMUg?6jA>j=8O08R=5`qM7@`nibf0Ed zJ@Q|+*T45m`nCm67nGIOe}5NZX{p6^wK40cdr-#|5fOoeRiWA(b;2~_ZrY6hXb7fI zL=2f#7Be&OrHU9R;fPxZk}IIktE$2Tf&hsu6WNqSSYa$AN>)~MP)|>u%%Yv|U|3@U zug69JV4^|n!eI-C((m5Q__h6H!`H@G_IP}}>cXs;zTHH`(wB@@mbU=gyJ*FK-Yrt( zy?rMew&<={kAT9v&T@QU=4*Tx=QIyGpt15Usxthm`e;qk``{OZ0f`g2Wds_~04P%B zXtBi|$U-?eICA|e1pifiOcZS;=;f|_oYmji+v|nGMwXXjp(I|Ya{X?N|36ZbH~n-i zVu=1474M9v%QXzMKmDt~*?I0b{D3a-pIvQ+qXOy)^p#KB4ga6-sy_b%`yagyBeG)v zkf=jnNza6Xa{m9@-BzQyA%q5D!9xDHwuQZ7 zAfW%j)o#GPX#eudyM0H?up$3bx#4KAMb`ZLe(*M8{Dhdhee1qedINT8{S*R$D&t39 zQT^NGA2EaLufZ_PiYPsQS}J;=Q<&tbZ)~Kdp@B=FMR#)z-EeK=1o>%weLaw!Iycuz zm~~$lnhk)hf9~IR*RpRVSg_=AP*yBQTIZu-QrwW>4yaq(+}!NTim74&a@De+Pttq? z40POJV;-RY=e_O?mB^Ez+gRTAH^v+-OTAt_lToN_f&ckXa*Ep_kF7#_$s0Ny&EO)riBqV?0Nr`xJqzLXzy2d-`I05=nY zB@W1=;t;I6tK->8@9Wht@dR2Ypeu_?c5A)==<13B$uBOJM#7Gks+eX1j9z`=Q2>R9 zhtyb(lT!s_O;1nvnsG&3Ub+g8f*?W-rbfuhaaS{eSV~7`Ch6(j%2RfYoLt}fX*e4k|V+lR_3yD4?VEf{5_dA*YT)h9 zRtIbQ3prLSLy>n>CHVzIl#>RQZUHvAn?d>bGLw7R3@+X+b18$vX zWC|I4=wcj~0M1ieSBGw8y3Vb7A9{uDgCi41E~TM?=Pg1(ih;-nkW#?(_s_{{U$i2z zE3}l*k*T%NPMe4~1cpRs`bRcJ9VmcWVeZ(#+E9*1%GNO2Tc@cG;i<*FI$y~D&O(WnM0} zMms2D(D>t=`}gmG5&7`Yp=j8h?jGYZP=JOk*%N?q z4dr)Q3vPaTypwWuZCqVIj_5=ukCP!4aFK;>5Uj47QHO7N5@C{RYKd6l;g;DR(m>D| z1xgge08&g6O2;z+Q^Ca1QAKp{s`E;i(`JUH#_iak#(7(b)42DU6X26z&eBbouLU5I zV*%9oTB5QDww;~bZQShs^yK}4r6>+KbMV2D;~-*?Vrgh-fIgI8sbY*w<+Do%MihDc z-q+Q0^;U_DjEq=uqL0^(de8NxeQ$mkMuI>%F*nB;OZti$`ZbDN!Z*;VAy^>45t&$7 zV|xZ7+PG<)Fulml1`hN$0SSZ-pGAxE@7bA@rDX}0iP-=>!H(P>po2Vzwt_E1aU@Gn z)BAGXvM-B{7zRuxHpsV!FIqL?NZ9w9Hp(J5g#h*c+_g;~YCw|@u0xKo+1cdKqeKns zqXIFiA53~?A@Xq!J#>Ag=lyh$)7$;3eJcb+#D3BHKGARxy5f_Q>3y&JC?dfL)#ovm zEzE2W^!b2x!35gX4{fiRcIS|$L`nw5)Ae9}e!e)EXn>7NY2Ug_@8bjxD=|U&05*$L zzHhU#?dUlGYl4X#QCrL9G^_6xF@nvg)q3F zZ8oKHL-#Nsvk3Z#jT1zaTV(*~p_SvZ1s`^bYhH0*k8uZpEkK#I-q_g4EiFarx?4Kt z;NbB0I_@AKA|iqkXhiN$B>KF_1YOaZ7C)eZmV+o^ge?X2Y=9mBuqE?*+x~Hcnl)D7!cJRB?9ZBa! z?RvbZ;#Et zIm|v4FReNn{VJ4$_=kpu1|M_s^CPt_*Z7xz9+j~VR0=->Mo`JM8L%3fg00!@;m zDMXh~60@_jPg0?GM-Zssyw5eNAJjPD|CzVU>5r$8alAaxwq0mcT=6@Y<4j6Pp%E2* z(rqIL-C;KP&+QOh{fABY^UKRMKxrBPdECU$pZ?$m4e4sxi(Oqq(Om)X`6^rYnEpxR z8lBdq+kxB}91cf%diqJ2=siq&u`z%jd8UJjYqZ)MvU1A{ZoTNZ{~3A4ykEcG9{g@V zEiX3#KLedE@UF@r=HS3KRY5|T3j9ft_KO+a+kNnz`(0(fUa;!H>G9XB{dTVcn)`8n z+*616k8k&Z%r-9P@x0`}_AZA+6)K1WrkKkOAt~uMkSm-5;A3ui`QDq!uD{=z=cBw$`lnBuVMOK!?m`xb-nehn2t;_@Z8lM1GE9vzw1yuCiDev u6#pA`^FMES{(s*-{vVF$oIa z|K2$%851p+LAak+9P@#dU`vCmZC=w5~zk8mbB4sz0CbiO^qX;OyG2t5l;nOLOiE} z?;togdfcQne0V%+c)?j{BBG@hBWfp_hb`$Q#uF6&e}0a_MkX&)QUB)$Yfx@Z1nQE_e-FH@=^^u$cAwJzGc`qM;}GYvic75cC% z(VV8+_W8cP;@bZnHY$qW@p1LZIv;~_F3Jo0M$?}ZDa&SZ`-JrLmig`Wa7K}akJs~@ z56of&T}RfPL_|ckcDjX6{JkywC-m#r4@NaXF%!*8`tR5GePX=`ho?PqCP-@QC zYhTT_?@4&l(%M?5;eMva>Uy%jCN3k>^!cucX!q4mNeKzHGq#21lN5LE+~IcIrfmwQ zWPbV+9_Z7*2jb~T61#z_jbby%oM(JneC_p5g*y1C#l_hH-?g5Vz8_w30?yh;+jEL5 zaHkw9MaK8c>N`8)1W4g%Q3nU^p9(+Tq>#&sz4e=G|!}_<~&-RF%b{9Q;eQ`veJ=1FW ze3#p4H+^vXP1M+!Y5*x0?sZa5QE_n`BdBrN zWde)UAy%7>iE;hE8&_e%8Rom=gS8qyYE4u+I_&i;;S&;moM{ez%McL~;#uc~oupP_ z7s+FN-|1jIaH_$FhKFa^_##foor2GP{g*F3jZ4&R7=i~`H3Y(Do&(B3rfWCamHcf`}6$ zJbq|MS+&yP_f+gzZZ1o2jg*vB2uuv5lRJ5Nd4vr$gV}2SFbI+Ftx>-I{tfAJNelxe zZf8!qdU{h3eNQ1LEeQoa_kw&iHR*nFo7s!WH!!dW zLV>37sF{!Wt1Q5Qf`*X7HX9d>_&u G(-E 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 Ghx`NR&W5-E literal 0 HcmV?d00001 diff --git a/examples/yaml_input/your_example.py b/examples/yaml_input/your_example.py deleted file mode 100644 index ea2c3fa..0000000 --- a/examples/yaml_input/your_example.py +++ /dev/null @@ -1,54 +0,0 @@ -from pathlib import Path - -import simpy -import matplotlib.pyplot as plt - -from asyncflow.config.constants import LatencyKey -from asyncflow.runtime.simulation_runner import SimulationRunner -from asyncflow.metrics.analyzer import ResultsAnalyzer - -def print_latency_stats(res: ResultsAnalyzer) -> None: - """Print latency statistics returned by the analyzer.""" - stats = res.get_latency_stats() - print("\n=== LATENCY STATS ===") - if not stats: - print("(empty)") - return - - order: list[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") - -def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: - """Generate the 2x2 plot figure and save it to `out_path`.""" - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) - res.plot_latency_distribution(axes[0, 0]) - res.plot_throughput(axes[0, 1]) - res.plot_server_queues(axes[1, 0]) - res.plot_ram_usage(axes[1, 1]) - fig.tight_layout() - fig.savefig(out_path) - print(f"Plots saved to: {out_path}") - -# Paths -yaml_path = Path(__file__).parent / "data" / ".yml" -out_path = Path(__file__).parent / "_plots.png" - -# Simulation -env = simpy.Environment() -runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) -results: ResultsAnalyzer = runner.run() - -# Output -print_latency_stats(results) -save_all_plots(results, out_path) diff --git a/poetry.lock b/poetry.lock index 9147300..493ce80 100644 --- a/poetry.lock +++ b/poetry.lock @@ -115,99 +115,99 @@ test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist" [[package]] name = "coverage" -version = "7.10.3" +version = "7.10.4" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" files = [ - {file = "coverage-7.10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:53808194afdf948c462215e9403cca27a81cf150d2f9b386aee4dab614ae2ffe"}, - {file = "coverage-7.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f4d1b837d1abf72187a61645dbf799e0d7705aa9232924946e1f57eb09a3bf00"}, - {file = "coverage-7.10.3-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:2a90dd4505d3cc68b847ab10c5ee81822a968b5191664e8a0801778fa60459fa"}, - {file = "coverage-7.10.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:d52989685ff5bf909c430e6d7f6550937bc6d6f3e6ecb303c97a86100efd4596"}, - {file = "coverage-7.10.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdb558a1d97345bde3a9f4d3e8d11c9e5611f748646e9bb61d7d612a796671b5"}, - {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c9e6331a8f09cb1fc8bda032752af03c366870b48cce908875ba2620d20d0ad4"}, - {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:992f48bf35b720e174e7fae916d943599f1a66501a2710d06c5f8104e0756ee1"}, - {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c5595fc4ad6a39312c786ec3326d7322d0cf10e3ac6a6df70809910026d67cfb"}, - {file = "coverage-7.10.3-cp310-cp310-win32.whl", hash = "sha256:9e92fa1f2bd5a57df9d00cf9ce1eb4ef6fccca4ceabec1c984837de55329db34"}, - {file = "coverage-7.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:b96524d6e4a3ce6a75c56bb15dbd08023b0ae2289c254e15b9fbdddf0c577416"}, - {file = "coverage-7.10.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f2ff2e2afdf0d51b9b8301e542d9c21a8d084fd23d4c8ea2b3a1b3c96f5f7397"}, - {file = "coverage-7.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:18ecc5d1b9a8c570f6c9b808fa9a2b16836b3dd5414a6d467ae942208b095f85"}, - {file = "coverage-7.10.3-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1af4461b25fe92889590d438905e1fc79a95680ec2a1ff69a591bb3fdb6c7157"}, - {file = "coverage-7.10.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:3966bc9a76b09a40dc6063c8b10375e827ea5dfcaffae402dd65953bef4cba54"}, - {file = "coverage-7.10.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:205a95b87ef4eb303b7bc5118b47b6b6604a644bcbdb33c336a41cfc0a08c06a"}, - {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b3801b79fb2ad61e3c7e2554bab754fc5f105626056980a2b9cf3aef4f13f84"}, - {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:b0dc69c60224cda33d384572da945759756e3f06b9cdac27f302f53961e63160"}, - {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a83d4f134bab2c7ff758e6bb1541dd72b54ba295ced6a63d93efc2e20cb9b124"}, - {file = "coverage-7.10.3-cp311-cp311-win32.whl", hash = "sha256:54e409dd64e5302b2a8fdf44ec1c26f47abd1f45a2dcf67bd161873ee05a59b8"}, - {file = "coverage-7.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:30c601610a9b23807c5e9e2e442054b795953ab85d525c3de1b1b27cebeb2117"}, - {file = "coverage-7.10.3-cp311-cp311-win_arm64.whl", hash = "sha256:dabe662312a97958e932dee056f2659051d822552c0b866823e8ba1c2fe64770"}, - {file = "coverage-7.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:449c1e2d3a84d18bd204258a897a87bc57380072eb2aded6a5b5226046207b42"}, - {file = "coverage-7.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d4f9ce50b9261ad196dc2b2e9f1fbbee21651b54c3097a25ad783679fd18294"}, - {file = "coverage-7.10.3-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4dd4564207b160d0d45c36a10bc0a3d12563028e8b48cd6459ea322302a156d7"}, - {file = "coverage-7.10.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5ca3c9530ee072b7cb6a6ea7b640bcdff0ad3b334ae9687e521e59f79b1d0437"}, - {file = "coverage-7.10.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b6df359e59fa243c9925ae6507e27f29c46698359f45e568fd51b9315dbbe587"}, - {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a181e4c2c896c2ff64c6312db3bda38e9ade2e1aa67f86a5628ae85873786cea"}, - {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a374d4e923814e8b72b205ef6b3d3a647bb50e66f3558582eda074c976923613"}, - {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:daeefff05993e5e8c6e7499a8508e7bd94502b6b9a9159c84fd1fe6bce3151cb"}, - {file = "coverage-7.10.3-cp312-cp312-win32.whl", hash = "sha256:187ecdcac21f9636d570e419773df7bd2fda2e7fa040f812e7f95d0bddf5f79a"}, - {file = "coverage-7.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:4a50ad2524ee7e4c2a95e60d2b0b83283bdfc745fe82359d567e4f15d3823eb5"}, - {file = "coverage-7.10.3-cp312-cp312-win_arm64.whl", hash = "sha256:c112f04e075d3495fa3ed2200f71317da99608cbb2e9345bdb6de8819fc30571"}, - {file = "coverage-7.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b99e87304ffe0eb97c5308447328a584258951853807afdc58b16143a530518a"}, - {file = "coverage-7.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4af09c7574d09afbc1ea7da9dcea23665c01f3bc1b1feb061dac135f98ffc53a"}, - {file = "coverage-7.10.3-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:488e9b50dc5d2aa9521053cfa706209e5acf5289e81edc28291a24f4e4488f46"}, - {file = "coverage-7.10.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:913ceddb4289cbba3a310704a424e3fb7aac2bc0c3a23ea473193cb290cf17d4"}, - {file = "coverage-7.10.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b1f91cbc78c7112ab84ed2a8defbccd90f888fcae40a97ddd6466b0bec6ae8a"}, - {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0bac054d45af7cd938834b43a9878b36ea92781bcb009eab040a5b09e9927e3"}, - {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fe72cbdd12d9e0f4aca873fa6d755e103888a7f9085e4a62d282d9d5b9f7928c"}, - {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c1e2e927ab3eadd7c244023927d646e4c15c65bb2ac7ae3c3e9537c013700d21"}, - {file = "coverage-7.10.3-cp313-cp313-win32.whl", hash = "sha256:24d0c13de473b04920ddd6e5da3c08831b1170b8f3b17461d7429b61cad59ae0"}, - {file = "coverage-7.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:3564aae76bce4b96e2345cf53b4c87e938c4985424a9be6a66ee902626edec4c"}, - {file = "coverage-7.10.3-cp313-cp313-win_arm64.whl", hash = "sha256:f35580f19f297455f44afcd773c9c7a058e52eb6eb170aa31222e635f2e38b87"}, - {file = "coverage-7.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07009152f497a0464ffdf2634586787aea0e69ddd023eafb23fc38267db94b84"}, - {file = "coverage-7.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:8dd2ba5f0c7e7e8cc418be2f0c14c4d9e3f08b8fb8e4c0f83c2fe87d03eb655e"}, - {file = "coverage-7.10.3-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1ae22b97003c74186e034a93e4f946c75fad8c0ce8d92fbbc168b5e15ee2841f"}, - {file = "coverage-7.10.3-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:eb329f1046888a36b1dc35504d3029e1dd5afe2196d94315d18c45ee380f67d5"}, - {file = "coverage-7.10.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ce01048199a91f07f96ca3074b0c14021f4fe7ffd29a3e6a188ac60a5c3a4af8"}, - {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:08b989a06eb9dfacf96d42b7fb4c9a22bafa370d245dc22fa839f2168c6f9fa1"}, - {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:669fe0d4e69c575c52148511029b722ba8d26e8a3129840c2ce0522e1452b256"}, - {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3262d19092771c83f3413831d9904b1ccc5f98da5de4ffa4ad67f5b20c7aaf7b"}, - {file = "coverage-7.10.3-cp313-cp313t-win32.whl", hash = "sha256:cc0ee4b2ccd42cab7ee6be46d8a67d230cb33a0a7cd47a58b587a7063b6c6b0e"}, - {file = "coverage-7.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:03db599f213341e2960430984e04cf35fb179724e052a3ee627a068653cf4a7c"}, - {file = "coverage-7.10.3-cp313-cp313t-win_arm64.whl", hash = "sha256:46eae7893ba65f53c71284585a262f083ef71594f05ec5c85baf79c402369098"}, - {file = "coverage-7.10.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:bce8b8180912914032785850d8f3aacb25ec1810f5f54afc4a8b114e7a9b55de"}, - {file = "coverage-7.10.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:07790b4b37d56608536f7c1079bd1aa511567ac2966d33d5cec9cf520c50a7c8"}, - {file = "coverage-7.10.3-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:e79367ef2cd9166acedcbf136a458dfe9a4a2dd4d1ee95738fb2ee581c56f667"}, - {file = "coverage-7.10.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:419d2a0f769f26cb1d05e9ccbc5eab4cb5d70231604d47150867c07822acbdf4"}, - {file = "coverage-7.10.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee221cf244757cdc2ac882e3062ab414b8464ad9c884c21e878517ea64b3fa26"}, - {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c2079d8cdd6f7373d628e14b3357f24d1db02c9dc22e6a007418ca7a2be0435a"}, - {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:bd8df1f83c0703fa3ca781b02d36f9ec67ad9cb725b18d486405924f5e4270bd"}, - {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6b4e25e0fa335c8aa26e42a52053f3786a61cc7622b4d54ae2dad994aa754fec"}, - {file = "coverage-7.10.3-cp314-cp314-win32.whl", hash = "sha256:d7c3d02c2866deb217dce664c71787f4b25420ea3eaf87056f44fb364a3528f5"}, - {file = "coverage-7.10.3-cp314-cp314-win_amd64.whl", hash = "sha256:9c8916d44d9e0fe6cdb2227dc6b0edd8bc6c8ef13438bbbf69af7482d9bb9833"}, - {file = "coverage-7.10.3-cp314-cp314-win_arm64.whl", hash = "sha256:1007d6a2b3cf197c57105cc1ba390d9ff7f0bee215ced4dea530181e49c65ab4"}, - {file = "coverage-7.10.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:ebc8791d346410d096818788877d675ca55c91db87d60e8f477bd41c6970ffc6"}, - {file = "coverage-7.10.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1f4e4d8e75f6fd3c6940ebeed29e3d9d632e1f18f6fb65d33086d99d4d073241"}, - {file = "coverage-7.10.3-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:24581ed69f132b6225a31b0228ae4885731cddc966f8a33fe5987288bdbbbd5e"}, - {file = "coverage-7.10.3-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ec151569ddfccbf71bac8c422dce15e176167385a00cd86e887f9a80035ce8a5"}, - {file = "coverage-7.10.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2ae8e7c56290b908ee817200c0b65929b8050bc28530b131fe7c6dfee3e7d86b"}, - {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5fb742309766d7e48e9eb4dc34bc95a424707bc6140c0e7d9726e794f11b92a0"}, - {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:c65e2a5b32fbe1e499f1036efa6eb9cb4ea2bf6f7168d0e7a5852f3024f471b1"}, - {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d48d2cb07d50f12f4f18d2bb75d9d19e3506c26d96fffabf56d22936e5ed8f7c"}, - {file = "coverage-7.10.3-cp314-cp314t-win32.whl", hash = "sha256:dec0d9bc15ee305e09fe2cd1911d3f0371262d3cfdae05d79515d8cb712b4869"}, - {file = "coverage-7.10.3-cp314-cp314t-win_amd64.whl", hash = "sha256:424ea93a323aa0f7f01174308ea78bde885c3089ec1bef7143a6d93c3e24ef64"}, - {file = "coverage-7.10.3-cp314-cp314t-win_arm64.whl", hash = "sha256:f5983c132a62d93d71c9ef896a0b9bf6e6828d8d2ea32611f58684fba60bba35"}, - {file = "coverage-7.10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:da749daa7e141985487e1ff90a68315b0845930ed53dc397f4ae8f8bab25b551"}, - {file = "coverage-7.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3126fb6a47d287f461d9b1aa5d1a8c97034d1dffb4f452f2cf211289dae74ef"}, - {file = "coverage-7.10.3-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3da794db13cc27ca40e1ec8127945b97fab78ba548040047d54e7bfa6d442dca"}, - {file = "coverage-7.10.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4e27bebbd184ef8d1c1e092b74a2b7109dcbe2618dce6e96b1776d53b14b3fe8"}, - {file = "coverage-7.10.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8fd4ee2580b9fefbd301b4f8f85b62ac90d1e848bea54f89a5748cf132782118"}, - {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6999920bdd73259ce11cabfc1307484f071ecc6abdb2ca58d98facbcefc70f16"}, - {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c3623f929db885fab100cb88220a5b193321ed37e03af719efdbaf5d10b6e227"}, - {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:25b902c5e15dea056485d782e420bb84621cc08ee75d5131ecb3dbef8bd1365f"}, - {file = "coverage-7.10.3-cp39-cp39-win32.whl", hash = "sha256:f930a4d92b004b643183451fe9c8fe398ccf866ed37d172ebaccfd443a097f61"}, - {file = "coverage-7.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:08e638a93c8acba13c7842953f92a33d52d73e410329acd472280d2a21a6c0e1"}, - {file = "coverage-7.10.3-py3-none-any.whl", hash = "sha256:416a8d74dc0adfd33944ba2f405897bab87b7e9e84a391e09d241956bd953ce1"}, - {file = "coverage-7.10.3.tar.gz", hash = "sha256:812ba9250532e4a823b070b0420a36499859542335af3dca8f47fc6aa1a05619"}, + {file = "coverage-7.10.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d92d6edb0ccafd20c6fbf9891ca720b39c2a6a4b4a6f9cf323ca2c986f33e475"}, + {file = "coverage-7.10.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7202da14dc0236884fcc45665ffb2d79d4991a53fbdf152ab22f69f70923cc22"}, + {file = "coverage-7.10.4-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ada418633ae24ec8d0fcad5efe6fc7aa3c62497c6ed86589e57844ad04365674"}, + {file = "coverage-7.10.4-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b828e33eca6c3322adda3b5884456f98c435182a44917ded05005adfa1415500"}, + {file = "coverage-7.10.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:802793ba397afcfdbe9f91f89d65ae88b958d95edc8caf948e1f47d8b6b2b606"}, + {file = "coverage-7.10.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d0b23512338c54101d3bf7a1ab107d9d75abda1d5f69bc0887fd079253e4c27e"}, + {file = "coverage-7.10.4-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:f36b7dcf72d06a8c5e2dd3aca02be2b1b5db5f86404627dff834396efce958f2"}, + {file = "coverage-7.10.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:fce316c367a1dc2c411821365592eeb335ff1781956d87a0410eae248188ba51"}, + {file = "coverage-7.10.4-cp310-cp310-win32.whl", hash = "sha256:8c5dab29fc8070b3766b5fc85f8d89b19634584429a2da6d42da5edfadaf32ae"}, + {file = "coverage-7.10.4-cp310-cp310-win_amd64.whl", hash = "sha256:4b0d114616f0fccb529a1817457d5fb52a10e106f86c5fb3b0bd0d45d0d69b93"}, + {file = "coverage-7.10.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:05d5f98ec893d4a2abc8bc5f046f2f4367404e7e5d5d18b83de8fde1093ebc4f"}, + {file = "coverage-7.10.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9267efd28f8994b750d171e58e481e3bbd69e44baed540e4c789f8e368b24b88"}, + {file = "coverage-7.10.4-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4456a039fdc1a89ea60823d0330f1ac6f97b0dbe9e2b6fb4873e889584b085fb"}, + {file = "coverage-7.10.4-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:c2bfbd2a9f7e68a21c5bd191be94bfdb2691ac40d325bac9ef3ae45ff5c753d9"}, + {file = "coverage-7.10.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0ab7765f10ae1df7e7fe37de9e64b5a269b812ee22e2da3f84f97b1c7732a0d8"}, + {file = "coverage-7.10.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0a09b13695166236e171ec1627ff8434b9a9bae47528d0ba9d944c912d33b3d2"}, + {file = "coverage-7.10.4-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5c9e75dfdc0167d5675e9804f04a56b2cf47fb83a524654297000b578b8adcb7"}, + {file = "coverage-7.10.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c751261bfe6481caba15ec005a194cb60aad06f29235a74c24f18546d8377df0"}, + {file = "coverage-7.10.4-cp311-cp311-win32.whl", hash = "sha256:051c7c9e765f003c2ff6e8c81ccea28a70fb5b0142671e4e3ede7cebd45c80af"}, + {file = "coverage-7.10.4-cp311-cp311-win_amd64.whl", hash = "sha256:1a647b152f10be08fb771ae4a1421dbff66141e3d8ab27d543b5eb9ea5af8e52"}, + {file = "coverage-7.10.4-cp311-cp311-win_arm64.whl", hash = "sha256:b09b9e4e1de0d406ca9f19a371c2beefe3193b542f64a6dd40cfcf435b7d6aa0"}, + {file = "coverage-7.10.4-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a1f0264abcabd4853d4cb9b3d164adbf1565da7dab1da1669e93f3ea60162d79"}, + {file = "coverage-7.10.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:536cbe6b118a4df231b11af3e0f974a72a095182ff8ec5f4868c931e8043ef3e"}, + {file = "coverage-7.10.4-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:9a4c0d84134797b7bf3f080599d0cd501471f6c98b715405166860d79cfaa97e"}, + {file = "coverage-7.10.4-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7c155fc0f9cee8c9803ea0ad153ab6a3b956baa5d4cd993405dc0b45b2a0b9e0"}, + {file = "coverage-7.10.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a5f2ab6e451d4b07855d8bcf063adf11e199bff421a4ba57f5bb95b7444ca62"}, + {file = "coverage-7.10.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:685b67d99b945b0c221be0780c336b303a7753b3e0ec0d618c795aada25d5e7a"}, + {file = "coverage-7.10.4-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0c079027e50c2ae44da51c2e294596cbc9dbb58f7ca45b30651c7e411060fc23"}, + {file = "coverage-7.10.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3749aa72b93ce516f77cf5034d8e3c0dfd45c6e8a163a602ede2dc5f9a0bb927"}, + {file = "coverage-7.10.4-cp312-cp312-win32.whl", hash = "sha256:fecb97b3a52fa9bcd5a7375e72fae209088faf671d39fae67261f37772d5559a"}, + {file = "coverage-7.10.4-cp312-cp312-win_amd64.whl", hash = "sha256:26de58f355626628a21fe6a70e1e1fad95702dafebfb0685280962ae1449f17b"}, + {file = "coverage-7.10.4-cp312-cp312-win_arm64.whl", hash = "sha256:67e8885408f8325198862bc487038a4980c9277d753cb8812510927f2176437a"}, + {file = "coverage-7.10.4-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2b8e1d2015d5dfdbf964ecef12944c0c8c55b885bb5c0467ae8ef55e0e151233"}, + {file = "coverage-7.10.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:25735c299439018d66eb2dccf54f625aceb78645687a05f9f848f6e6c751e169"}, + {file = "coverage-7.10.4-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:715c06cb5eceac4d9b7cdf783ce04aa495f6aff657543fea75c30215b28ddb74"}, + {file = "coverage-7.10.4-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e017ac69fac9aacd7df6dc464c05833e834dc5b00c914d7af9a5249fcccf07ef"}, + {file = "coverage-7.10.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bad180cc40b3fccb0f0e8c702d781492654ac2580d468e3ffc8065e38c6c2408"}, + {file = "coverage-7.10.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:becbdcd14f685fada010a5f792bf0895675ecf7481304fe159f0cd3f289550bd"}, + {file = "coverage-7.10.4-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0b485ca21e16a76f68060911f97ebbe3e0d891da1dbbce6af7ca1ab3f98b9097"}, + {file = "coverage-7.10.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6c1d098ccfe8e1e0a1ed9a0249138899948afd2978cbf48eb1cc3fcd38469690"}, + {file = "coverage-7.10.4-cp313-cp313-win32.whl", hash = "sha256:8630f8af2ca84b5c367c3df907b1706621abe06d6929f5045fd628968d421e6e"}, + {file = "coverage-7.10.4-cp313-cp313-win_amd64.whl", hash = "sha256:f68835d31c421736be367d32f179e14ca932978293fe1b4c7a6a49b555dff5b2"}, + {file = "coverage-7.10.4-cp313-cp313-win_arm64.whl", hash = "sha256:6eaa61ff6724ca7ebc5326d1fae062d85e19b38dd922d50903702e6078370ae7"}, + {file = "coverage-7.10.4-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:702978108876bfb3d997604930b05fe769462cc3000150b0e607b7b444f2fd84"}, + {file = "coverage-7.10.4-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e8f978e8c5521d9c8f2086ac60d931d583fab0a16f382f6eb89453fe998e2484"}, + {file = "coverage-7.10.4-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:df0ac2ccfd19351411c45e43ab60932b74472e4648b0a9edf6a3b58846e246a9"}, + {file = "coverage-7.10.4-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:73a0d1aaaa3796179f336448e1576a3de6fc95ff4f07c2d7251d4caf5d18cf8d"}, + {file = "coverage-7.10.4-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:873da6d0ed6b3ffc0bc01f2c7e3ad7e2023751c0d8d86c26fe7322c314b031dc"}, + {file = "coverage-7.10.4-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c6446c75b0e7dda5daa876a1c87b480b2b52affb972fedd6c22edf1aaf2e00ec"}, + {file = "coverage-7.10.4-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:6e73933e296634e520390c44758d553d3b573b321608118363e52113790633b9"}, + {file = "coverage-7.10.4-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:52073d4b08d2cb571234c8a71eb32af3c6923149cf644a51d5957ac128cf6aa4"}, + {file = "coverage-7.10.4-cp313-cp313t-win32.whl", hash = "sha256:e24afb178f21f9ceb1aefbc73eb524769aa9b504a42b26857243f881af56880c"}, + {file = "coverage-7.10.4-cp313-cp313t-win_amd64.whl", hash = "sha256:be04507ff1ad206f4be3d156a674e3fb84bbb751ea1b23b142979ac9eebaa15f"}, + {file = "coverage-7.10.4-cp313-cp313t-win_arm64.whl", hash = "sha256:f3e3ff3f69d02b5dad67a6eac68cc9c71ae343b6328aae96e914f9f2f23a22e2"}, + {file = "coverage-7.10.4-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:a59fe0af7dd7211ba595cf7e2867458381f7e5d7b4cffe46274e0b2f5b9f4eb4"}, + {file = "coverage-7.10.4-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3a6c35c5b70f569ee38dc3350cd14fdd0347a8b389a18bb37538cc43e6f730e6"}, + {file = "coverage-7.10.4-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:acb7baf49f513554c4af6ef8e2bd6e8ac74e6ea0c7386df8b3eb586d82ccccc4"}, + {file = "coverage-7.10.4-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:a89afecec1ed12ac13ed203238b560cbfad3522bae37d91c102e690b8b1dc46c"}, + {file = "coverage-7.10.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:480442727f464407d8ade6e677b7f21f3b96a9838ab541b9a28ce9e44123c14e"}, + {file = "coverage-7.10.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a89bf193707f4a17f1ed461504031074d87f035153239f16ce86dfb8f8c7ac76"}, + {file = "coverage-7.10.4-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:3ddd912c2fc440f0fb3229e764feec85669d5d80a988ff1b336a27d73f63c818"}, + {file = "coverage-7.10.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:8a538944ee3a42265e61c7298aeba9ea43f31c01271cf028f437a7b4075592cf"}, + {file = "coverage-7.10.4-cp314-cp314-win32.whl", hash = "sha256:fd2e6002be1c62476eb862b8514b1ba7e7684c50165f2a8d389e77da6c9a2ebd"}, + {file = "coverage-7.10.4-cp314-cp314-win_amd64.whl", hash = "sha256:ec113277f2b5cf188d95fb66a65c7431f2b9192ee7e6ec9b72b30bbfb53c244a"}, + {file = "coverage-7.10.4-cp314-cp314-win_arm64.whl", hash = "sha256:9744954bfd387796c6a091b50d55ca7cac3d08767795b5eec69ad0f7dbf12d38"}, + {file = "coverage-7.10.4-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:5af4829904dda6aabb54a23879f0f4412094ba9ef153aaa464e3c1b1c9bc98e6"}, + {file = "coverage-7.10.4-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7bba5ed85e034831fac761ae506c0644d24fd5594727e174b5a73aff343a7508"}, + {file = "coverage-7.10.4-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:d57d555b0719834b55ad35045de6cc80fc2b28e05adb6b03c98479f9553b387f"}, + {file = "coverage-7.10.4-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ba62c51a72048bb1ea72db265e6bd8beaabf9809cd2125bbb5306c6ce105f214"}, + {file = "coverage-7.10.4-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0acf0c62a6095f07e9db4ec365cc58c0ef5babb757e54745a1aa2ea2a2564af1"}, + {file = "coverage-7.10.4-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e1033bf0f763f5cf49ffe6594314b11027dcc1073ac590b415ea93463466deec"}, + {file = "coverage-7.10.4-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:92c29eff894832b6a40da1789b1f252305af921750b03ee4535919db9179453d"}, + {file = "coverage-7.10.4-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:822c4c830989c2093527e92acd97be4638a44eb042b1bdc0e7a278d84a070bd3"}, + {file = "coverage-7.10.4-cp314-cp314t-win32.whl", hash = "sha256:e694d855dac2e7cf194ba33653e4ba7aad7267a802a7b3fc4347d0517d5d65cd"}, + {file = "coverage-7.10.4-cp314-cp314t-win_amd64.whl", hash = "sha256:efcc54b38ef7d5bfa98050f220b415bc5bb3d432bd6350a861cf6da0ede2cdcd"}, + {file = "coverage-7.10.4-cp314-cp314t-win_arm64.whl", hash = "sha256:6f3a3496c0fa26bfac4ebc458747b778cff201c8ae94fa05e1391bab0dbc473c"}, + {file = "coverage-7.10.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:48fd4d52600c2a9d5622e52dfae674a7845c5e1dceaf68b88c99feb511fbcfd6"}, + {file = "coverage-7.10.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:56217b470d09d69e6b7dcae38200f95e389a77db801cb129101697a4553b18b6"}, + {file = "coverage-7.10.4-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:44ac3f21a6e28c5ff7f7a47bca5f87885f6a1e623e637899125ba47acd87334d"}, + {file = "coverage-7.10.4-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:3387739d72c84d17b4d2f7348749cac2e6700e7152026912b60998ee9a40066b"}, + {file = "coverage-7.10.4-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3f111ff20d9a6348e0125be892608e33408dd268f73b020940dfa8511ad05503"}, + {file = "coverage-7.10.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:01a852f0a9859734b018a3f483cc962d0b381d48d350b1a0c47d618c73a0c398"}, + {file = "coverage-7.10.4-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:225111dd06759ba4e37cee4c0b4f3df2b15c879e9e3c37bf986389300b9917c3"}, + {file = "coverage-7.10.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:2178d4183bd1ba608f0bb12e71e55838ba1b7dbb730264f8b08de9f8ef0c27d0"}, + {file = "coverage-7.10.4-cp39-cp39-win32.whl", hash = "sha256:93d175fe81913aee7a6ea430abbdf2a79f1d9fd451610e12e334e4fe3264f563"}, + {file = "coverage-7.10.4-cp39-cp39-win_amd64.whl", hash = "sha256:2221a823404bb941c7721cf0ef55ac6ee5c25d905beb60c0bba5e5e85415d353"}, + {file = "coverage-7.10.4-py3-none-any.whl", hash = "sha256:065d75447228d05121e5c938ca8f0e91eed60a1eb2d1258d42d5084fecfc3302"}, + {file = "coverage-7.10.4.tar.gz", hash = "sha256:25f5130af6c8e7297fd14634955ba9e1697f47143f289e2a23284177c0061d27"}, ] [package.extras] @@ -265,53 +265,69 @@ idna = ">=2.0.0" [[package]] name = "fonttools" -version = "4.59.0" +version = "4.59.1" description = "Tools to manipulate font files" optional = false python-versions = ">=3.9" files = [ - {file = "fonttools-4.59.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:524133c1be38445c5c0575eacea42dbd44374b310b1ffc4b60ff01d881fabb96"}, - {file = "fonttools-4.59.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:21e606b2d38fed938dde871c5736822dd6bda7a4631b92e509a1f5cd1b90c5df"}, - {file = "fonttools-4.59.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e93df708c69a193fc7987192f94df250f83f3851fda49413f02ba5dded639482"}, - {file = "fonttools-4.59.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:62224a9bb85b4b66d1b46d45cbe43d71cbf8f527d332b177e3b96191ffbc1e64"}, - {file = "fonttools-4.59.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8974b2a266b54c96709bd5e239979cddfd2dbceed331aa567ea1d7c4a2202db"}, - {file = "fonttools-4.59.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:209b75943d158f610b78320eacb5539aa9e920bee2c775445b2846c65d20e19d"}, - {file = "fonttools-4.59.0-cp310-cp310-win32.whl", hash = "sha256:4c908a7036f0f3677f8afa577bcd973e3e20ddd2f7c42a33208d18bee95cdb6f"}, - {file = "fonttools-4.59.0-cp310-cp310-win_amd64.whl", hash = "sha256:8b4309a2775e4feee7356e63b163969a215d663399cce1b3d3b65e7ec2d9680e"}, - {file = "fonttools-4.59.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:841b2186adce48903c0fef235421ae21549020eca942c1da773ac380b056ab3c"}, - {file = "fonttools-4.59.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9bcc1e77fbd1609198966ded6b2a9897bd6c6bcbd2287a2fc7d75f1a254179c5"}, - {file = "fonttools-4.59.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:37c377f7cb2ab2eca8a0b319c68146d34a339792f9420fca6cd49cf28d370705"}, - {file = "fonttools-4.59.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fa39475eaccb98f9199eccfda4298abaf35ae0caec676ffc25b3a5e224044464"}, - {file = "fonttools-4.59.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d3972b13148c1d1fbc092b27678a33b3080d1ac0ca305742b0119b75f9e87e38"}, - {file = "fonttools-4.59.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a408c3c51358c89b29cfa5317cf11518b7ce5de1717abb55c5ae2d2921027de6"}, - {file = "fonttools-4.59.0-cp311-cp311-win32.whl", hash = "sha256:6770d7da00f358183d8fd5c4615436189e4f683bdb6affb02cad3d221d7bb757"}, - {file = "fonttools-4.59.0-cp311-cp311-win_amd64.whl", hash = "sha256:84fc186980231a287b28560d3123bd255d3c6b6659828c642b4cf961e2b923d0"}, - {file = "fonttools-4.59.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:f9b3a78f69dcbd803cf2fb3f972779875b244c1115481dfbdd567b2c22b31f6b"}, - {file = "fonttools-4.59.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:57bb7e26928573ee7c6504f54c05860d867fd35e675769f3ce01b52af38d48e2"}, - {file = "fonttools-4.59.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4536f2695fe5c1ffb528d84a35a7d3967e5558d2af58b4775e7ab1449d65767b"}, - {file = "fonttools-4.59.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:885bde7d26e5b40e15c47bd5def48b38cbd50830a65f98122a8fb90962af7cd1"}, - {file = "fonttools-4.59.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6801aeddb6acb2c42eafa45bc1cb98ba236871ae6f33f31e984670b749a8e58e"}, - {file = "fonttools-4.59.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:31003b6a10f70742a63126b80863ab48175fb8272a18ca0846c0482968f0588e"}, - {file = "fonttools-4.59.0-cp312-cp312-win32.whl", hash = "sha256:fbce6dae41b692a5973d0f2158f782b9ad05babc2c2019a970a1094a23909b1b"}, - {file = "fonttools-4.59.0-cp312-cp312-win_amd64.whl", hash = "sha256:332bfe685d1ac58ca8d62b8d6c71c2e52a6c64bc218dc8f7825c9ea51385aa01"}, - {file = "fonttools-4.59.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:78813b49d749e1bb4db1c57f2d4d7e6db22c253cb0a86ad819f5dc197710d4b2"}, - {file = "fonttools-4.59.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:401b1941ce37e78b8fd119b419b617277c65ae9417742a63282257434fd68ea2"}, - {file = "fonttools-4.59.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:efd7e6660674e234e29937bc1481dceb7e0336bfae75b856b4fb272b5093c5d4"}, - {file = "fonttools-4.59.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:51ab1ff33c19e336c02dee1e9fd1abd974a4ca3d8f7eef2a104d0816a241ce97"}, - {file = "fonttools-4.59.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a9bf8adc9e1f3012edc8f09b08336272aec0c55bc677422273e21280db748f7c"}, - {file = "fonttools-4.59.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:37e01c6ec0c98599778c2e688350d624fa4770fbd6144551bd5e032f1199171c"}, - {file = "fonttools-4.59.0-cp313-cp313-win32.whl", hash = "sha256:70d6b3ceaa9cc5a6ac52884f3b3d9544e8e231e95b23f138bdb78e6d4dc0eae3"}, - {file = "fonttools-4.59.0-cp313-cp313-win_amd64.whl", hash = "sha256:26731739daa23b872643f0e4072d5939960237d540c35c14e6a06d47d71ca8fe"}, - {file = "fonttools-4.59.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8d77f92438daeaddc05682f0f3dac90c5b9829bcac75b57e8ce09cb67786073c"}, - {file = "fonttools-4.59.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:60f6665579e909b618282f3c14fa0b80570fbf1ee0e67678b9a9d43aa5d67a37"}, - {file = "fonttools-4.59.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:169b99a2553a227f7b5fea8d9ecd673aa258617f466b2abc6091fe4512a0dcd0"}, - {file = "fonttools-4.59.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:052444a5d0151878e87e3e512a1aa1a0ab35ee4c28afde0a778e23b0ace4a7de"}, - {file = "fonttools-4.59.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d40dcf533ca481355aa7b682e9e079f766f35715defa4929aeb5597f9604272e"}, - {file = "fonttools-4.59.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:b818db35879d2edf7f46c7e729c700a0bce03b61b9412f5a7118406687cb151d"}, - {file = "fonttools-4.59.0-cp39-cp39-win32.whl", hash = "sha256:2e7cf8044ce2598bb87e44ba1d2c6e45d7a8decf56055b92906dc53f67c76d64"}, - {file = "fonttools-4.59.0-cp39-cp39-win_amd64.whl", hash = "sha256:902425f5afe28572d65d2bf9c33edd5265c612ff82c69e6f83ea13eafc0dcbea"}, - {file = "fonttools-4.59.0-py3-none-any.whl", hash = "sha256:241313683afd3baacb32a6bd124d0bce7404bc5280e12e291bae1b9bba28711d"}, - {file = "fonttools-4.59.0.tar.gz", hash = "sha256:be392ec3529e2f57faa28709d60723a763904f71a2b63aabe14fee6648fe3b14"}, + {file = "fonttools-4.59.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e90a89e52deb56b928e761bb5b5f65f13f669bfd96ed5962975debea09776a23"}, + {file = "fonttools-4.59.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d29ab70658d2ec19422b25e6ace00a0b0ae4181ee31e03335eaef53907d2d83"}, + {file = "fonttools-4.59.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:94f9721a564978a10d5c12927f99170d18e9a32e5a727c61eae56f956a4d118b"}, + {file = "fonttools-4.59.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8c8758a7d97848fc8b514b3d9b4cb95243714b2f838dde5e1e3c007375de6214"}, + {file = "fonttools-4.59.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:2aeb829ad9d41a2ef17cab8bb5d186049ba38a840f10352e654aa9062ec32dc1"}, + {file = "fonttools-4.59.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ac216a2980a2d2b3b88c68a24f8a9bfb203e2490e991b3238502ad8f1e7bfed0"}, + {file = "fonttools-4.59.1-cp310-cp310-win32.whl", hash = "sha256:d31dc137ed8ec71dbc446949eba9035926e6e967b90378805dcf667ff57cabb1"}, + {file = "fonttools-4.59.1-cp310-cp310-win_amd64.whl", hash = "sha256:5265bc52ed447187d39891b5f21d7217722735d0de9fe81326566570d12851a9"}, + {file = "fonttools-4.59.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4909cce2e35706f3d18c54d3dcce0414ba5e0fb436a454dffec459c61653b513"}, + {file = "fonttools-4.59.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:efbec204fa9f877641747f2d9612b2b656071390d7a7ef07a9dbf0ecf9c7195c"}, + {file = "fonttools-4.59.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39dfd42cc2dc647b2c5469bc7a5b234d9a49e72565b96dd14ae6f11c2c59ef15"}, + {file = "fonttools-4.59.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b11bc177a0d428b37890825d7d025040d591aa833f85f8d8878ed183354f47df"}, + {file = "fonttools-4.59.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b9b4c35b3be45e5bc774d3fc9608bbf4f9a8d371103b858c80edbeed31dd5aa"}, + {file = "fonttools-4.59.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:01158376b8a418a0bae9625c476cebfcfcb5e6761e9d243b219cd58341e7afbb"}, + {file = "fonttools-4.59.1-cp311-cp311-win32.whl", hash = "sha256:cf7c5089d37787387123f1cb8f1793a47c5e1e3d1e4e7bfbc1cc96e0f925eabe"}, + {file = "fonttools-4.59.1-cp311-cp311-win_amd64.whl", hash = "sha256:c866eef7a0ba320486ade6c32bfc12813d1a5db8567e6904fb56d3d40acc5116"}, + {file = "fonttools-4.59.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:43ab814bbba5f02a93a152ee61a04182bb5809bd2bc3609f7822e12c53ae2c91"}, + {file = "fonttools-4.59.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4f04c3ffbfa0baafcbc550657cf83657034eb63304d27b05cff1653b448ccff6"}, + {file = "fonttools-4.59.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:d601b153e51a5a6221f0d4ec077b6bfc6ac35bfe6c19aeaa233d8990b2b71726"}, + {file = "fonttools-4.59.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c735e385e30278c54f43a0d056736942023c9043f84ee1021eff9fd616d17693"}, + {file = "fonttools-4.59.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1017413cdc8555dce7ee23720da490282ab7ec1cf022af90a241f33f9a49afc4"}, + {file = "fonttools-4.59.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5c6d8d773470a5107052874341ed3c487c16ecd179976d81afed89dea5cd7406"}, + {file = "fonttools-4.59.1-cp312-cp312-win32.whl", hash = "sha256:2a2d0d33307f6ad3a2086a95dd607c202ea8852fa9fb52af9b48811154d1428a"}, + {file = "fonttools-4.59.1-cp312-cp312-win_amd64.whl", hash = "sha256:0b9e4fa7eaf046ed6ac470f6033d52c052481ff7a6e0a92373d14f556f298dc0"}, + {file = "fonttools-4.59.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:89d9957b54246c6251345297dddf77a84d2c19df96af30d2de24093bbdf0528b"}, + {file = "fonttools-4.59.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8156b11c0d5405810d216f53907bd0f8b982aa5f1e7e3127ab3be1a4062154ff"}, + {file = "fonttools-4.59.1-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:8387876a8011caec52d327d5e5bca705d9399ec4b17afb8b431ec50d47c17d23"}, + {file = "fonttools-4.59.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb13823a74b3a9204a8ed76d3d6d5ec12e64cc5bc44914eb9ff1cdac04facd43"}, + {file = "fonttools-4.59.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e1ca10da138c300f768bb68e40e5b20b6ecfbd95f91aac4cc15010b6b9d65455"}, + {file = "fonttools-4.59.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2beb5bfc4887a3130f8625349605a3a45fe345655ce6031d1bac11017454b943"}, + {file = "fonttools-4.59.1-cp313-cp313-win32.whl", hash = "sha256:419f16d750d78e6d704bfe97b48bba2f73b15c9418f817d0cb8a9ca87a5b94bf"}, + {file = "fonttools-4.59.1-cp313-cp313-win_amd64.whl", hash = "sha256:c536f8a852e8d3fa71dde1ec03892aee50be59f7154b533f0bf3c1174cfd5126"}, + {file = "fonttools-4.59.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:d5c3bfdc9663f3d4b565f9cb3b8c1efb3e178186435b45105bde7328cfddd7fe"}, + {file = "fonttools-4.59.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ea03f1da0d722fe3c2278a05957e6550175571a4894fbf9d178ceef4a3783d2b"}, + {file = "fonttools-4.59.1-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:57a3708ca6bfccb790f585fa6d8f29432ec329618a09ff94c16bcb3c55994643"}, + {file = "fonttools-4.59.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:729367c91eb1ee84e61a733acc485065a00590618ca31c438e7dd4d600c01486"}, + {file = "fonttools-4.59.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8f8ef66ac6db450193ed150e10b3b45dde7aded10c5d279968bc63368027f62b"}, + {file = "fonttools-4.59.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:075f745d539a998cd92cb84c339a82e53e49114ec62aaea8307c80d3ad3aef3a"}, + {file = "fonttools-4.59.1-cp314-cp314-win32.whl", hash = "sha256:c2b0597522d4c5bb18aa5cf258746a2d4a90f25878cbe865e4d35526abd1b9fc"}, + {file = "fonttools-4.59.1-cp314-cp314-win_amd64.whl", hash = "sha256:e9ad4ce044e3236f0814c906ccce8647046cc557539661e35211faadf76f283b"}, + {file = "fonttools-4.59.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:652159e8214eb4856e8387ebcd6b6bd336ee258cbeb639c8be52005b122b9609"}, + {file = "fonttools-4.59.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:43d177cd0e847ea026fedd9f099dc917da136ed8792d142298a252836390c478"}, + {file = "fonttools-4.59.1-cp314-cp314t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e54437651e1440ee53a95e6ceb6ee440b67a3d348c76f45f4f48de1a5ecab019"}, + {file = "fonttools-4.59.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6065fdec8ff44c32a483fd44abe5bcdb40dd5e2571a5034b555348f2b3a52cea"}, + {file = "fonttools-4.59.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:42052b56d176f8b315fbc09259439c013c0cb2109df72447148aeda677599612"}, + {file = "fonttools-4.59.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:bcd52eaa5c4c593ae9f447c1d13e7e4a00ca21d755645efa660b6999425b3c88"}, + {file = "fonttools-4.59.1-cp314-cp314t-win32.whl", hash = "sha256:02e4fdf27c550dded10fe038a5981c29f81cb9bc649ff2eaa48e80dab8998f97"}, + {file = "fonttools-4.59.1-cp314-cp314t-win_amd64.whl", hash = "sha256:412a5fd6345872a7c249dac5bcce380393f40c1c316ac07f447bc17d51900922"}, + {file = "fonttools-4.59.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1ab4c1fb45f2984b8b4a3face7cff0f67f9766e9414cbb6fd061e9d77819de98"}, + {file = "fonttools-4.59.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8ee39da0227950f88626c91e219659e6cd725ede826b1c13edd85fc4cec9bbe6"}, + {file = "fonttools-4.59.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:58a8844f96cff35860647a65345bfca87f47a2494bfb4bef754e58c082511443"}, + {file = "fonttools-4.59.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:5f3f021cea6e36410874763f4a517a5e2d6ac36ca8f95521f3a9fdaad0fe73dc"}, + {file = "fonttools-4.59.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:bf5fb864f80061a40c1747e0dbc4f6e738de58dd6675b07eb80bd06a93b063c4"}, + {file = "fonttools-4.59.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:c29ea087843e27a7cffc78406d32a5abf166d92afde7890394e9e079c9b4dbe9"}, + {file = "fonttools-4.59.1-cp39-cp39-win32.whl", hash = "sha256:a960b09ff50c2e87864e83f352e5a90bcf1ad5233df579b1124660e1643de272"}, + {file = "fonttools-4.59.1-cp39-cp39-win_amd64.whl", hash = "sha256:e3680884189e2b7c3549f6d304376e64711fd15118e4b1ae81940cb6b1eaa267"}, + {file = "fonttools-4.59.1-py3-none-any.whl", hash = "sha256:647db657073672a8330608970a984d51573557f328030566521bc03415535042"}, + {file = "fonttools-4.59.1.tar.gz", hash = "sha256:74995b402ad09822a4c8002438e54940d9f1ecda898d2bb057729d7da983e4cb"}, ] [package.extras] @@ -1188,29 +1204,30 @@ files = [ [[package]] name = "ruff" -version = "0.12.8" +version = "0.12.9" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.12.8-py3-none-linux_armv6l.whl", hash = "sha256:63cb5a5e933fc913e5823a0dfdc3c99add73f52d139d6cd5cc8639d0e0465513"}, - {file = "ruff-0.12.8-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:9a9bbe28f9f551accf84a24c366c1aa8774d6748438b47174f8e8565ab9dedbc"}, - {file = "ruff-0.12.8-py3-none-macosx_11_0_arm64.whl", hash = "sha256:2fae54e752a3150f7ee0e09bce2e133caf10ce9d971510a9b925392dc98d2fec"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c0acbcf01206df963d9331b5838fb31f3b44fa979ee7fa368b9b9057d89f4a53"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ae3e7504666ad4c62f9ac8eedb52a93f9ebdeb34742b8b71cd3cccd24912719f"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cb82efb5d35d07497813a1c5647867390a7d83304562607f3579602fa3d7d46f"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:dbea798fc0065ad0b84a2947b0aff4233f0cb30f226f00a2c5850ca4393de609"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49ebcaccc2bdad86fd51b7864e3d808aad404aab8df33d469b6e65584656263a"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ac9c570634b98c71c88cb17badd90f13fc076a472ba6ef1d113d8ed3df109fb"}, - {file = "ruff-0.12.8-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:560e0cd641e45591a3e42cb50ef61ce07162b9c233786663fdce2d8557d99818"}, - {file = "ruff-0.12.8-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:71c83121512e7743fba5a8848c261dcc454cafb3ef2934a43f1b7a4eb5a447ea"}, - {file = "ruff-0.12.8-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:de4429ef2ba091ecddedd300f4c3f24bca875d3d8b23340728c3cb0da81072c3"}, - {file = "ruff-0.12.8-py3-none-musllinux_1_2_i686.whl", hash = "sha256:a2cab5f60d5b65b50fba39a8950c8746df1627d54ba1197f970763917184b161"}, - {file = "ruff-0.12.8-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:45c32487e14f60b88aad6be9fd5da5093dbefb0e3e1224131cb1d441d7cb7d46"}, - {file = "ruff-0.12.8-py3-none-win32.whl", hash = "sha256:daf3475060a617fd5bc80638aeaf2f5937f10af3ec44464e280a9d2218e720d3"}, - {file = "ruff-0.12.8-py3-none-win_amd64.whl", hash = "sha256:7209531f1a1fcfbe8e46bcd7ab30e2f43604d8ba1c49029bb420b103d0b5f76e"}, - {file = "ruff-0.12.8-py3-none-win_arm64.whl", hash = "sha256:c90e1a334683ce41b0e7a04f41790c429bf5073b62c1ae701c9dc5b3d14f0749"}, - {file = "ruff-0.12.8.tar.gz", hash = "sha256:4cb3a45525176e1009b2b64126acf5f9444ea59066262791febf55e40493a033"}, + {file = "ruff-0.12.9-py3-none-linux_armv6l.whl", hash = "sha256:fcebc6c79fcae3f220d05585229463621f5dbf24d79fdc4936d9302e177cfa3e"}, + {file = "ruff-0.12.9-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:aed9d15f8c5755c0e74467731a007fcad41f19bcce41cd75f768bbd687f8535f"}, + {file = "ruff-0.12.9-py3-none-macosx_11_0_arm64.whl", hash = "sha256:5b15ea354c6ff0d7423814ba6d44be2807644d0c05e9ed60caca87e963e93f70"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d596c2d0393c2502eaabfef723bd74ca35348a8dac4267d18a94910087807c53"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1b15599931a1a7a03c388b9c5df1bfa62be7ede6eb7ef753b272381f39c3d0ff"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3d02faa2977fb6f3f32ddb7828e212b7dd499c59eb896ae6c03ea5c303575756"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:17d5b6b0b3a25259b69ebcba87908496e6830e03acfb929ef9fd4c58675fa2ea"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:72db7521860e246adbb43f6ef464dd2a532ef2ef1f5dd0d470455b8d9f1773e0"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a03242c1522b4e0885af63320ad754d53983c9599157ee33e77d748363c561ce"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fc83e4e9751e6c13b5046d7162f205d0a7bac5840183c5beebf824b08a27340"}, + {file = "ruff-0.12.9-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:881465ed56ba4dd26a691954650de6ad389a2d1fdb130fe51ff18a25639fe4bb"}, + {file = "ruff-0.12.9-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:43f07a3ccfc62cdb4d3a3348bf0588358a66da756aa113e071b8ca8c3b9826af"}, + {file = "ruff-0.12.9-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:07adb221c54b6bba24387911e5734357f042e5669fa5718920ee728aba3cbadc"}, + {file = "ruff-0.12.9-py3-none-musllinux_1_2_i686.whl", hash = "sha256:f5cd34fabfdea3933ab85d72359f118035882a01bff15bd1d2b15261d85d5f66"}, + {file = "ruff-0.12.9-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:f6be1d2ca0686c54564da8e7ee9e25f93bdd6868263805f8c0b8fc6a449db6d7"}, + {file = "ruff-0.12.9-py3-none-win32.whl", hash = "sha256:cc7a37bd2509974379d0115cc5608a1a4a6c4bff1b452ea69db83c8855d53f93"}, + {file = "ruff-0.12.9-py3-none-win_amd64.whl", hash = "sha256:6fb15b1977309741d7d098c8a3cb7a30bc112760a00fb6efb7abc85f00ba5908"}, + {file = "ruff-0.12.9-py3-none-win_arm64.whl", hash = "sha256:63c8c819739d86b96d500cce885956a1a48ab056bbcbc61b747ad494b2485089"}, + {file = "ruff-0.12.9.tar.gz", hash = "sha256:fbd94b2e3c623f659962934e52c2bea6fc6da11f667a427a368adaf3af2c866a"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 6566c84..09c14e1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] -name = "asyncflow-simulator" -version = "0.1.0" +name = "AsyncFlow-Sim" +version = "0.1.0a1" description = "Digital-twin simulator for distributed async systems. Build what-if scenarios and quantify capacity, latency and throughput offline—before you deploy." authors = ["Gioele Botta"] readme = "README.md" @@ -18,9 +18,9 @@ keywords = [ "fastapi", "uvicorn", "distributed-systems", "queuing-theory" ] -homepage = "https://github.com//AsyncFlow-Simulator" # TO COMPLETE -repository = "https://github.com//AsyncFlow-Simulator" # TO COMPLETE -documentation = "https://github.com//AsyncFlow-Simulator/tree/main/docs" # TO COMPLETE +homepage = "https://github.com/AsyncFlow-Sim" +repository = "https://github.com/AsyncFlow-Sim/AsyncFlow" +documentation = "https://github.com/AsyncFlow-Sim/AsyncFlow-Sim/tree/v0.1.0/docs" classifiers = [ "Development Status :: 3 - Alpha", diff --git a/pytest.ini b/pytest.ini index 6d4afe2..c61714b 100644 --- a/pytest.ini +++ b/pytest.ini @@ -2,5 +2,6 @@ addopts = -ra -q testpaths = tests markers = - integration: tests that require external services (database, HTTP calls, etc.) -asyncio_mode = auto \ No newline at end of file + integration: tests that require components interactions + system: end-to-end/system scenarios +asyncio_mode = auto diff --git a/readme_img/topology.png b/readme_img/topology.png new file mode 100644 index 0000000000000000000000000000000000000000..bbb89e736a86c89c197e5ddde327f9ec93418f09 GIT binary patch literal 2285328 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ņADsGf@HV#WOm@pzMxNN_OvP9348R!S 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

    Di5%2g9AN6I+{xZeDr-9T@W#YtFi@J?ND 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∓wJEGi7 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³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 z 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%0D7>mOE zo=R*09@F0Po!;;sCdZ$^AvGrhnEvvy#NJa0MK9YvW&FoiGUs4=$8M{u51>1k*p&}m zUpthRV=9DMFwNu}<4cX^aS?pj?i&eZI>2BhP#l2`x@K^i2qx1PE!*7B%48bfI zAE?eD)PQxv0>lj;1a9AFYYCE{G#u&k-LUTf*EU&v^6H&82J`4kz<_ROE$Ezp-5A>) zkg=ei&ym2pjbQk@OeDAcoO4k~jBDf_SMAxKpFdbsPR0rl8@ms%?#Z(UcJIgYiCEAW zvPFU2uDf+G7<@%UCx8~B&v{j9OO1dG7Q@)_ASKrx0SHi%dDc27^;#?Ki@dPoaj1;k z72FK@NhClOVb5p4Fq2-~ym==S&v&h6i& zjUHdQsG7$6ZsVTcVeo%|5yhSNGrx@#$9Iq7sNpbr&x=k03#%-umBSElUE`2bK}%en zt+3()68Vtqy#Eu@2`(4J>h0-+S2t!G@zrafcMd)PocjtK-h^EjqeT&Y=A88j@N{6! zdt_Om;!juJ_cWK(p(vx+R=0A9CMKY`I`!Fb{g7HoKq++5oZ~cnTeI}rfm+Jt-k1XJ z!7BQ^lmgPJp-hdKF*if*0@14UQ}M1Ic0QA_f(f>+EP-6W>|G!;d2^8vyvR6E3F>{l z^T$*Hq7LxwRg@%FxBI)I{aoxT*-!!J+5U{B6!smz@f0&D@F8ONLvgw*%e-oQ6yc%( zvHWSHvKxN>03Rx#1k{qka9Wk%WMibt3#Z(G?|c^RkQth(7MQr4mwlf8@Akfd1LWK(ja(Cm?r;qEaufO`=eE8=3 zKl1+Fho6J3FSoiO-I94F;Q;sHgP{Z6hgvtw9(0~t`{m{N<^6|uzw+hjn)kjM^tY-D>^W2KRyIF9^P4-Co%Eu3E>3rQ_gTZn8NxKk?nWm*4wizURmO`ghOo z?x~=UJnwg`b)a-ZtBzxp8q_K*rEsmN9f1o5o#xxh5!VNW^0`dG((s+~WSV^)jja_< zfYl8azvSf;1j4q|WV2Yjub4Fo`_D8B=iVS}7+Ms(4{>A`@r~4H9^%Y-1keT+Puvcy z#oxy|e$GDoXLsYfi~8}$)6-9Q`QpRRy1l&o(*%CQTE};8#}gOnnhXt8e^>W;U#usP zPgPayMFKBX0xqjG=Q&TPJ#1+t3k@0ow{SmC++J>~Revpr z_W+)Y{H|0RH>#=VAz$yWzx(W0ty>c1z0s#*4o=~`pZMzQkKc3O`~UuQy!>{m{>lQL zg!WcUsHHvtymjw!(t4+jXYGE5x?6fu_qtWRfA{{~&wu~ryWex3``@^Kx*zxRM02~| zINzXI0LhYyI9NEI4js?yDRX?!Xnj+)zEN5>J3WH369A|xs<57)Zcn;By*w44{)*E2 z?k#;m;I^Re;acAyYDs+;_zhtn*qJ^m)Nz<K~ z@t?i>@c!q5cmc4Xz7u!``We6t!n5NLo(bF_-QfZ18>_xtYyIHU7tjAWZ@1rl-}?u? z_0^BIsO-k@k+wC7>$2@t=HRj_e0PxtU$^dmTEL6eIsm+I;ibSYSoN~^E*{#SKHb0m z>f3(_uW#p%KW^(gUw-qu{?^;^#4C|V%b1al1-t^*HUi=r-Wqz2=dHRe-J z?$-lwxV*pFkZhkae~?@O!RGzs|J1Qk;nlD79x%@;&~q8EFix7fRKVDGIZagFH^AK% zbWEe&7L{r9@Y z8az@fCAKF@_}vT6?d7%`nY?X{?VIbZO4B@_#lLlh@X2S66&7VuL(SBoA+Q!q4&+|| z0+JTiwrGw6`1H2wKlU(Q?ib~CKv#BOph6b_#3Oy+=j@2OP;}*V3ifmcA!MSJ?$5Gh zAmwbQuJ(72xs6rqxnpCA$pUI+Su?$q`nn$xYpDPoQ&&fo-tFI61I||jK=}@%Mio<6 z6Vt%6QxD|#blov;27UPKI}$v^L&{FE0qfhgTa)h(*+;!Y@c9f?)R8g>je&lcpH0m2 zZ9Q&+!L{}~=I+EA;_L#`m*Mn1;5KpOxRYIj@R=~N*x_;HULX@gb3W&{!yDx7VIHDm zB$C=0WsSY(vr%nmVQs7v`> zglgf?0id#!)CM7=vQ>nh-N3fkqc=K)*WfWez%s!R6|u>Hhpm!H2V6j=u_jw<87SR} zTLvhVDHxy*_kJA#n-b$(uSP702HHzd6_DTiUfj!DC{|Z~nI0afoG*XQh4fKny{RX( z1{X_LP_hs-ge^uaRHI^d&EUOrvBc6t1gV_iV&Sv|C7-u#8IxKPEfX=YuR2KRJ`36B zGe*1_d&(odGUYozmNLgY+Z-abE>ZEJxl=;zP#xFj^(9sQIfA>H%r|CD+_~&Xz~B?X z3D9u^z^ISp{GGne|>M1EHKL6N8&S5Nmx3soVC&=5oL@hV6=Bd zC_+xkuiJ#tp$+gvt&Zilzi+8GfiY+tz+*9VO=2_pUYX-IHMdUqb5d7o|QmYh|eZwDx`-{ zRPIL^rSy)TIV-qG31P$DpakGOHUVw1BUSP~FIk+$& zM3F-V_)>bz(14xTIOO-Gc8O&IS-4glBVSZj=`dizc=X#s#Gj+KM;$H}qzd-GlUZpd zO)p=b>IG{AkjooYLa55M7FO>lnqBQ3vo23FdatXHHlya>(We7aC3s%`Y?#OuCOv=O z$~QLy_D^$xXSGcEc__toyD*u;#oz0*ra{+RcZdqeV%!|R&>EI?d~pJ7sZz~u&EOK zDx=Q^g8cUgoE~N07+?Uf?*zX}#TF{~5II*ziPH znzkid&^1z2_Z<-Q`uh5f8|#mL^BZ6Oy+ol~yK22!EXe{n?oWme)U~q#oi3+{#zFgy zoCVyuj>cNQpm_Wt3IDo|^*p11`!v9@ZBMgWj$em610apuYC`w^76kC%6T1l3$r9_V z2DrIdP`yq=!m!!qBuw_0<4aNJnRA%7!35d{`nf#R)sXH+3qX>n1LA?Nhe&NXzifE& z>#~rk#<|bGWKtihsskW1p?6zsF0PN?`s(ZF-FUwa{;Mtibq$@WeS<{wY?#L`c5zcE zK0)}B_E!tRC$tX71`=cS({Y0M)kwsKSZks_F3O8#nCO1YsBN)g*hlxZi|JYdkVX%J){dQOF*P|8> zva2cudjq|-QO>VwK>Ppm`tkgW5X-<|?eu`vTB;1>eR%)=AO7^!>(e!=S>BXNoQ~{G zK<7o4j5UyJI+7yx+x}U{dU_A^3Ck2xO%bygxbHf+^}jzz+*MQ2Vz{WgPH5F%{o%vY zpZwze`=7_^gOn(Ws+DbV%X%-oR8>Pb+^``XL9HTtiBjW0bT{wcz582_+wF(W`|FSQ zYh#}8H1a_8^6mh_)=sSws!+Ti!fB~|Ihdgqoiy)LpUcYF0(FO^B1zy0s7>z?xdu&!v<_zaMdz!WTn8V;=+PH65!2N)a?Vy zrohEjrTXSR@8A0H{=0s{Qyu@_^UJ#;_=Ki+Z@M$xU=Kdl?wxoNYr8C|t&L5rzv|`P zyFc*u>EnA=ulxOucQ3aec=!Ixf0MRy!_+O~97=&9CjrIW!7?Po}vP_gj--Mjz# zjmK~6`-#`PEj4xnm2g88bULOFIp}6H$666XMy}>uoa+ zAWkKNX-GX7)#oUb8_M4=pT1ONXn6S{Twl7QHkkf!9U!n9&5X&Dj~WyfJz4$U_LoJY zv9L3izSVij3aIHl9i5sIuq8)tKs(kk5q6E(uBUiOAXjQnD|;PG4AvOXii#w_*)*R6 zw!8VP3zUjbMIi+eZ(OKt*XWpuMFZpy1*YrY-XRP=D_Jre@3H*=F6xJ>p4|3)rbS-0 zw?!%%h1>bCHqoOm0+1!JnMgt`NHI&x1Na1pZ!}JI@C4^{(VoeGZ7~r6R!4;~dA~6L z%|^9PT*cp~n8WW5{ip*x8xj$<{J$ ze})swDLz1n@^9`DqPVx4W%QOv!Tkxg7ar%CZU8tN`y^&cd;8aeZU1!bo&U~xmqWgE zj;M6)c2I!aM!dlRppSsgXX=Brq@8meu(;ih=ZU&b^3M#WAfHLAfZN1QY!ikwlje0s7yQmJGz|ffGb9bG>!%WI^3eLbABfDjkR(J#{5!gh$D;7 zdPH-dJqMF`6PWV@;YF~uH;xeqMa-!5*JG_@?7%Zkb*% z1fjfdjMGbppe6m8!(KQ=m0zYwMg^pmci+$|{*^*Y5_nd6Szm^gy*5zl?s&~>IZ2tQ zlZnaPf04HLgzPku_pp;E&rGjQEbjvD$zR4Jcye#`j!1Wej7foH#L<=iFZ% z{yaK7g|k}Ny^?30GyIQObd_Iq>y@_2!^Ym0(8m-;Ry}(r)fwQkC_+&5~W9n@T5z`yC)%qEAWVrz# zlm9op;^ld%XSa+etsd6kun>X7!5$#~@%QB&rhWJ)UF2ix zjKKCFgkuP92)!G7r*BNHWe{rtVy4IrTV&;fRFP5EhE-d!5}8ZlYTZQ|42IaUgt>V6 zX9wuu0&!qj>JUcL3IiqitwkJZbiBmH;Q1(O0_S;jCCuI9`Q!;w7Z6Oe{qRvB7ub~x z8df=%LLhF8XB!#T&@7OT?@H0bi^W;P?lGYJVS5S$OITQ##bLs-hr5?v=YTsh3Qgw}Ln5o|YIyTsYeqWA=l)A&L-e)_yvP*TuQ2|B!3_zD1KQyITEkGO`3 z3+XhfjBBjVbgB!Bs7PzY4qEV(K>9L_gm<}-vvSN$^+6ZyMO)KU3MB>5{W9~laoXOwx`%PKgO`F#2Te+XOWm3^|aamtLzWws<>gBoG2(NOThqC z9VyU>i+7?wJ93XUOvvOh*^bD<*eI_?iSN(dAjY@+igl`h*^jeaxaB+OV(g{ks=5h6 z@*=kJ$lEdzH$=Vn0OZdu04x_K`F?}>bPACQVBb+2x9peOY#ED1dE92QQI^&Kfk1x0 zSQK8jML&}Eti&u=_UP_s1!)@j4*3&Tx)gS_B1RtBbImd&k-saJ!JHLZc1S#|vL!*X zT#+`*NkMq2Y!ZJOAw{EJoS4Wo1(kPykRCOI!6T`0jsLHfs!?v>k9C80zL@%%w&bRwddVhQVW5^pv9ljKe!Xqq@NSX3z?E` zK@IJkL15L< zTB-bdbssnYP>XN9bm7a&*t?1HM{}8l1nBCE0CYSPB+(144F{0*Lh{L>GZj?ni{kRq zyPUB_X2cfbumC>YJ^_Ft$)A1`wb0@n1-1HX6o2_z&p#-(3i~cgrnC!7B&Nh`ss){@ zx{Zax_vJt%9@Rpy(}fi+9OIUgI6Xkg~D1E1{}Fp9UC&VTX5Ee>1=pa!zl|{ z%5~P3j`d5)U74zPQB+YtIo986)Ko*F2`Szj0%klK1Wq*;7TE-NWAO%}q*?-&Yn)o% zfglqbi$r&!b^lG^RB<@`2)V1|LW-!Ts6TyR9@75xcN*QGe9)fB86W|MuGPg@Bh7*m!}(`Hvo&4C>tZR?x~w??Wb@;-CL46xPS1i0?$+#r|XAx zeB+zn{QFMzKmYdn3AUVjC~BwXyUWBhd&D0Ktp#Zvz6Y*$3K0V~>vbLcF~?fJ<@x#P zr>8L{GMHzFs6GKa(@G03`C`-=L8V>S;;Y;7^!+dIKm1eYx%cz?cRvNe zn@?+ML;>K&X*9tThWz|LLih$ zov9K1{5CrR8Ut-JP&{H8C1%gT9MGr{8wEx+$m}6&qZ{1;nlc5xNrXa=i;k!DK?S?E z($K2hA#hy3St92tT`f<3Eg6Iw*cRltV!+D>8DP>qP3=eBS%Ce~OT+THzMCob^6x`e zEKD4|uZiygZxrzv@mZMgyYeg$Is6aP%*d$P>Y zRu6ISlTLL2K^Qa&K4O9*U@c-<6%eu%05@dAmd))Riq{|<=Z395Q)bG2{OmXzP#x(j zW|jn(m7;=k089^RtE|dBGpUudX{;o;hOLE67*;cN*G|16+g@bq6>CI}@pSK;T^OV; z>(`)(tl@}K?7D=k8gbR%YYDJywKkxZ|1F9PZ ztYxy;SKWV~CTt+s1_!y%g#Y|9dtU)zy*sMi%OX9LEEyRb!d>ev-_S8(wSzhVV9ooy z0&1qqc#((|#H(z_lD-fTCRTcq!iWNnmft^3gsXSRr|GvX5cG8!Vhzxa?RBsvi!Wje zvRr>3ZDG<%PiD((-$Pplc~TvV*=r-{Bm`Ta0al4yt+>+DG5|8bGjWFQ;n&$$Az&3Y zgFzBm@snv4dKX3`7B&`K3XeF~QKiq>vYnc)X>MC%$0Fr;Oju;}GH~JwXr23=yp2rl zQBN4VDC1KRKUQP}?ek>})Ywi5neGY^>!JcvR(KN4dC@&^c|R5p6bO}t&0W0qkc_*@ zfi`|wj%kBowFI?o#VF&UV%wSvcE1<^y97_*9)xYR;c3$p>{CuDV&|$^KAwrB=})BV zJWZazcB^f_lS4Phubb-+GJ=Pe@kkstL+}wY@5-t!k|Yn{IKYDkaiH1`0$$kLMXYUM z?~FG-FvGe?LBa$FGqtcVmUkwRy|ct4yMnPXOqCZ#Z|VrLFn)@Gn;qwd{0vh^j%`|{ zZpw4+kX!*Q9j807$9ewH;ry9+=N$i-=rBf}cTnyh4isi=sLJ23XY%z*&=J%wpoWk2}cLS#7s&{XQhgkNKiVI`eA@*hH+xB;+VyCa*)gOxwS zWDsHF2~2b2@4m_hsnouqLxv24UmhbI#;MxDd|hM8x(>LN+h&Rj#9p(I3l}5iKe=*I z5~OJ06e$|$uVBKUl=ET9F4;~*;AN-86oU@=N?G9ZyGvOP>{m8pPszvr+)**jc*68283NC(*he9htm5oTG3fl|dr{j8no}xZqnkl%MAZZ7UPV?&Go+~jUQ#IEbm^rhP z%;e_gNK>qkE-3pKl1Shmg+xYWK@iL1P7Zx$DhW>%AWcERo9%n2p)0IztU6Gh4muo2 zQ8A-BxM^a%3e+~|$04o@TuWH~S!Qz+blPN8rI~WT6;ft{m}Vu3EZux+b`x15yf8Z{ zq_&kH>YyJfKGNqQg@dzr8tmE=fx19I80Nlz^xO{s#bBsrUI9R{wRDTc1ECvthK|$)Lx;_1mU~QbcTH+93X17tX zQ~UeoY)LZkT;91t?!?6wN_hS1^(WNR@&Blo=kGm$H_(~~2f}poQ*n0wNp6C&jHAS= z6I{0v&Q{%qtX0hnE4rY49P8)x>OXmQyLUTWM5h53GagvX^oH{?=&`Y+Z=I|~R9A_M zrEN8^M;TDIkSY*;=xU}-;6xdMx(K^zCI!_Zx7W#1aQ}P)EbX)zZP&7;1;zAHxiFHO zhy&yzJ_115P}H9fuK!WIZD4))@a6a47XQ}*tD6vyqMguA@0+sIO5m{@EIxQH_Tgv5 z;2K^!wGow*oFBY&cc!GgkP5L!tEr1=Lazd5)XKw z`{8E%w*%Ug4yzQ(J-Au7$~RfN_dg;vR*6jcoT&}RpMV}S{?H5Axd7dJ-;Ra9wyyRN z5Iv9%V7UZQz3orGiHZM}g1Cs3jQbm>?!W(7>%$gUrGo*2i#*()rlDeV^Fpi9Y!cJRP_H z6Nv-Rn}A!8&6Rp@A$lc`k!8@Ws!BZRO^Vz9yEd%zul)PE?C)Qm|9e&I*WPiG1lFN6 zR^FBHlse$@ny(G9z6FT%W-~u$;4t2ftv>I!+spsp_PqW^pZKh$;;M3FX_N({(?XNkw{-LV%lXGnBH;KwDom>H_PLM|!-Ziy<(tEBi7Hkv5 z_s6^6wDE&}fQ^GCAQpDfc-nELIY8klC z?}uCuUjRG}9&_riH0vyaeHtiE{p*PBztg1c6jN`=o@l;iLSi72r_)0vma&uN^FRfI zNl1V8IdD7nss5am{!&(;2R!R-KFC5V|NMv0MrbX6u4|u_my|PrL{CEx;yTfsXXNAS zJQme|BZ|X{`t~vTWI$5j&A`7WEJF|_cWYq295fGzS=Y>mP34L#3L& zemMcGOga<{j&=41>M9cqW))F0%cOPnc!U9WR20TAT?ELLgeBCEbBFZWfNgf?pK1f7 zwBW|%)Brht?<+PPfTsd*1l-{P_1%Cnlu1qDjta4pePHwg=Yms7kD!7F&}Tqye@Eq6 zmNvAPcM9rCN|?9LD~~w#bnXP(UBC?Z^MS(UwX7(O3GD1U$er{1Tev{3usVJe!4{UY zjBzu1S@@2+xH%0X1d{?3amYf-C}%=C%`mF(!Kl31R7t_+kf8%cb-6)&)#MHhxx3?xaTyi<^vTzd)1{%x# zaB+YX|BS^^H>3ibRbB>%r{)KIF5PGO{MFhh$dhF9(p%w7en|yTfJb;t++CzQ0q?8` zezJwrtsOwY_D2h)?Sn)Pb>T0;bT7El0;d4T zB~*}YZDj+Ldn0D@Z~F(~lKZve_D#5e{npspxF2Z-zmz8g!W>?^JF!CiW82z$`wV(Q z()Mi!Oa@966Achtte~3<;=OeAX1flk0(mD6wci1^aWWS=*I8TTJ&{E8Clof_({}__ z7H;@?bQ2p3L(+5bwpv#m#Y{!aE$oJ-VE2R-0Y66v5Chd`ZS^{4IdgBf-oQCg$q z3kDbOm=_#R&n|kjczeui#>_f_lzFlSex?xiix@v%wgKVp@j#apA_SG{R7~xWPNz=YNd4Quh_l@2u+0PYcE4a5!m?mS_pb94d2`{rkg=~mwt3%izfc5O?1G20oA(A{W-ht6Znn zWPE0CIory(UyCMEbmEAjNP5^$wd%6MutL5sb%~S4ip(MaDGr=1AErJ)>#sG#&!WX4fyp9XsH(4l54H4V=sVb zambq5WB*lA@(u~$&ey`PKnq4HFy;UTGbfH!p1EJeG^Z<22@`x*CqOG#W@nlQ>10k9 zjXO)2+g+AjPUz;ws_aY(#oy5i7vJSG^OhxCUZXsUtJeC)7hnGAAN}@M|C&E}0!)wY zC+7~>x7+i3p8Fq_fPHr?Q*A=P>)Zav7x4`Mn_@7aXzn~ETjxIiG>PA~mTij0`pAnJ zvvUOvF5v60K7JE*{Nd;4=P%0E9@$$&L(t(r0Bl+C^8}aTp~3NVm0Jb5O0cUen@5R7 z)nd|hX`L^}(~qm$?GJtW^tFH4u7DzraDC;vvF89}KWnhDy-Z?;?|DLXTh&-yBBL&& zRdA~f|N7AF!GqD)Nn3<)_E*{qq4gApC*RTJfOi+C!aFiHJ zQKl$Dzr26`W&7<8sU$RZ^7H@~08r&pu370vHqLG=){n1R9{}#uk4MV>4NBBHd!N1P z>9-&|SB3=c0?yrd{nWqz`T6CY`)MtIBQNh3cmg0lYfuwKOj z;&)U_nT?|Gmaa!-Q2qeH*7=<9dN8M}TR#ry4_ol`m(*{$KIF#U8!h}@@4tBe&ntpi zflq%qc8wd7hXFiEII@psYo8m$3y9|yZn$P}ufIF*T=UPDmv{fH-t@QJ&xQ@^Qipnt zx|`osE=Tr(5|+Rd_R5*~*Xd$ds(N~Q`Zaq_j{vbmuAnr0a$z&@8a>cRQe?e7pife)DK-h2orn3$Ql8sDSr=_3?eq z{=zfw-Fa)QmI#4I$T|k_qW#}J0qmZeP4L8ZW{^IH0{TddDPr-wfKZDP28js(nM-SX z6*u5^-Q<;KlpJY@?6=VW(eB z4E0DZO;W*RRiXX&Cr+jK)ruvKyst%v3mWg)OD&8$nD@TY7W?}KoXpG)Tj273IVQe2 zC?qx%fMv0OFJh&&7NkgALZ;v3{@`plrY7%r+TA_Rh2;#WKm*psBRjfR6SyaF;b1<| zj4o&8b>x+9ilM@T=nRTc7k zY>Mt`tRgBqJUT@TQ8@c)JfR6b&xf^kYC_>{7qs ztW&Z98z`K;gk}5S&A})0vvWu77CRZHMz4b^>jn|5Z4SDt!%8ibQaSgZ7;G+NHsSgv ze^+w7qFSTNj*xi3`bNcGdSaVxx9+aCGiC80^76>oCZp!;hSWr!8`FDZ2su4vYSwkw zC^!m;;Xux3#2+ZDWRk0!VR-&|0ag53^=impAf&&Kn0Q~00MJT;IRv#W zENT;72QJ_F4tUXK-6}<#r*#$5!o{g%`yVd7VT1F21srtWId)NI z*Bm@0s~g6;#LJ0y-qb8I^0|Mg8FC&k^-CvdY}`I?q&Oqk6PDXry!NQM>&x+_OXA7j ztxRi(9p%!>c=)zbOPz&LuEwVj_WNbjQ%=yc8T=wp^PGco9$pY*~I(1dy zgu}{$P1%9M<9K`f)h&I(fDQumxUZVG+rJ8#%0)O)SwiKhNHxyY|18>{-{-ZXB($gN zUOu?)51gz2$mhT8?dJi!SV!*V2Ac#Tc?YDmG|`%m$9ezKr|Aa{ZRLFOQmr#hko2& z9{t&8pFY3)?9GrMmo!*mM^tgV=SbJ_pp_uIBi6X}) zw%icNvBES2Th(Z-e-n;A3&25Y&>9YrI8j}qaNOR!ef!DNfBfOY^Itss@nie66_LtR zY3&^|vBL1~7eMja_wqYIdKk z?Mlt3`R2=8{0jSK4imgF3U^*B^lEROlJof}cq;5Re<=*s@7>a?Z09;<75uzE_*aVf zl-dncVrUmcee)-u|Kul@czQ5P>uN2JpY@ImzS^Y^YO{!ynp?N_3}0M z`}0?Q_Wu1>-d`U7)cyYa7qzrXcu405Ca5NT7l0wG9^^m6iJ!SPOUh)Z64t%HU90c+ z$Nll)<>fCuK0N>N=MT?+LY8pv6QM{oF5SerbiRN8?%O~8;urqP`%l00=ihyJ_njZ! zzx(XdFMjE}pPyg;;mf;sfB*4#`3rN7`ykNqMWsM-S|L~Z@lUrm-vYqvjJdNmTnP9- zcQnrK=DYVF{``jz_n-H&){nnG9zXcQ%lYN+-+%TM&o9qE=iP@-|14I&{x zIo{z8@1K0`lRr2Hf1vsF_PeLoh%Etnc&esX1JW(0bJV81LybRWl%o!f}N)rH2owt|! z^2`z54JK-%17qiqwg{q0JcqU;gDk@E1ytPqc({HFTb? z6Hj0bUPPfmi`4f~x!MkaIn%qNKuGWj#eSrqc)72u;f=-*Ssw%YaJvqdEKYI1Phc^2 zB?}djvmd_q&h!3^j}?+Wz@8^K4=1v&SdqbC0c>4B4vQJE|C))2UH{rH5MUP`-LH+b zZ2x&p<-tFfa&*-$oZC4;+eSpN_(^j5YB!l`LGjWqY|D_;u?UE|+5oxwvj5qQwlN;} z6;zul8mWs#FBxtBxtrwunN#1ui+x@9$-RWqE1)5)*Z!#i^#g*zz=9{b9{oCQ+wn0c z%BL1!hf6Ru-0wQook!*8 zA-1ceKZRt%PwL=Q5olcnB?BB7JlYqC0;U*nDA56JvCjasc}Kbex20^`o)bi`@lix= z0}@dhGJQb?AFn#-6~xCjGlBLZfLM3oBeHI$52>B+X`tI5ZTj<7!5|b&!i^}@umilTffGVC>yQBe`JTo%H`J3tBXAAv5%{Q$}^V z!B}3;C;ig`dL3xkhDO*^EPIl7We1;uRE3xULKK1_qD+lzizJiiEoAU}6bAYnu*fk0 zU`Ul!g(|;;Q!tUxz`6Sl2_uG;l|FTg;5vw$`>lMx9yybFP77FT!jtI2GBe}n*RLWj zo~daPz`RGsSivGqy@LG^)&TbYM$N>G^p$AA``o-Mr#IjcY^@24_XOwH z*mkvS{cK@qWm3)0YAicPDAn0Q+#pWJ#99%Za)HA?hbo}6S1o?+;kRC~5{>}%K0hWm z_l}#C6j503vmrIkTIds2Xk&zY*cyzTebKMdTmaW>&qQ^<^^d;FD3&u$I=jII$vD3tfHc;C<_ zL)~BQ9KUyQT4C-+TxAE9{dhJh>U_>99zDYiDtM98J8_aunW7v^ES zjeZaE^!T|>fR%mL-Uc8y1=bc$Hf8lv;|vi`XxZL~0lWR(wpr~qdCVCqxbIu(A}EA8 za{W*i0_@rc5-#gP)kVZ`%l(7DxW3D8vb8ie?SU>^#xs5XG`4im7`N-%%Fl95iQ&4( z)2Ri{l=@120+Ut7LTSy#U~u4ND|z^Ab&ojAWEwEU7*EDLB-$KNRxXq;M_`LBRKy~*4xR?OdfCvs)l{3stQZ((aVyP!N#7-|8_@> zzsjH8_r#-Nn@QT2hoPY>|FsCFfgxx{9nGwId58kHg0+_Yh zBUv96u6a>DxwS$3eGd>nJpWEFY-oJ6T{0K3&|0o-%g^0vFh8p$U1L!k!|FFwJnWJz z8TAuAyzi{+V`FyEWDCoG-W#v(WfF>cWi5~NvC}}q<9YD;DGBqMg{2ozrkG#lhN(tI z`&eLmWZEav`!KvaNVciT8E!;L%p_cACORS!uV9QIdqlz05vIK~1P&izu>)Ur~1h8W1t z6WqwK+^Y0eZ3t%Sp)0iXChEA4PMXbXH()8gcidRgmCO^6e4kpmqr_^18Hxp0%V(v+ zNpjBnr=NZ4S4)tn-J@+;9p_( zxxQnq_1EUCS5*nGXWI3XQ4*&um4tStnN{w&U1b7`Q`b4 ze1HD%qq-kIeH4D})2QF_=IzrjBkCI-_xsnpynOg2FZcU*B?UcfFeI{J2U{Qh0jSyd zaC;iRw1J;0!RuKkjbRjlWtD+2K?zUeXaEx&r~J52KrP`=QzaI$TpMC5zg&EK8i;vl zQcQxe_sDn{J%tkR6eZOIutZHBO`QU_{dMADa-@3~6X-cdYCQv3ixEhQwmhXCsA8Y} z0l*}=v~&#NEy=l7@p(P|zaKt4|K`d#yr8&v=qW z0q3YgU-r3Ae&Ux{XFqa-J4wUOy(_>Mq7V(Z)lp@wy;PpbU$rgC z@|k00=2~R|qi}zD`G1`E$Fs;M38=23`M5=J29~?=sGt9`9#}$&^0R~N%ggrOk?gEl zY@GD+u!;Ibxq~L{L?-n>;L%ttz5L6X17k#?QYjYIIOgql2v}!pqO^z_XsmL`eE{I| z{rRr}{E=$?`WoXqk7J(4?df}O;`h!PAKo0}`Zc#R^o!N{RGd%CY;-yl zOh`?P1y1tBZ-PS7I|x~ff%W^|zkK-0^X2^N$9eznJlH?C`S@RRx8vfI6FBZdA3&D` zES=Af=jU$*>t{&%+1>m}B)@vj`jJF`br`qInG^RGbRr;nrl$N;{*#&~}`&6hW~r!Q5_KR(9sO^>yH*vp6a zzdy*#k#{rz96*=t{BbAoxySkP?^)at6z`kqzvlk@?q{y`{Dba~mmm53{QkE*w7$>x53OzC_K`}z zZJs`XadQss+V#)Ve#qJDtJXSyIL`AYzkmP!>)(BN_phzh_X{K3 zXa;uDa-mZe2Y+(h-u#Nk^0@Sx=2c(qb^M8{1dToJyc3V(+^YQ#4R);L-XfvVI90ZT z$T51&?+kdpHKYyB2F^6a=~KG42*Y5<2?4X+fWh`*0wNZ$$mIgtwSu!4+-|JYjIJT1 zS8GADIvr5NVh_l+fx__A677+15gQ{&z-xac8=LeN6BW=)etrU)E0YVZIZQmIUy{Af zU2|-KjDKdqF%k%HO7{R2vNT(qv5{TPfR+(Tt(Es#Z41EKFK}H1MhUOW71^&MoruxW zzGKDuQi!O9Cu~D0bqEVjiv|$Q91sHf5xCy_Vw9b5FR;+D5E6Pk9Cqa9efP1=sK__} z#wgVh*;{%x_pi);)ez1IfDz!t>vR*fn<&nJZvm4s4WdL+Cd?Z@$mfhe#@sV6Ye~O5 z*9V}9!YFrqzVG9XJ5 z^PCNlFI4sbfdhL#L|eC#0h5(ypLbcd1nC?m!j-^EZ@QmTxH!j-{Vpy`l@$_$n8qff zPVao?^LnRT?&qYLyL~}J{(o}6xQ_BYl~8@cKJ>18H_6B0cY2}&sv693y(6&BoC8}H zGvHmNzf$=*s}^Ee?{T-SC<;+UL^nHH+l;IYyuwK0!ziLs?}U~NTy8w*pk?`N)a(e2_N8+F)R22rczSu2 zvMVE^Kp3A*)n4W z6{E=Fv8Ia@xcTPd?onbN_SsCU0ctORf){6m4-}b;mL4&O55+VBfarh+X0cX+kr$mrQk${9;all5 zaTR6@suYs@JeEDf?1Nu8W!=+|0dx$1rlowOXqiU>``|L0R`F(oBR#_gx&h9tN^Nyc zUFQj{>z`pEF!Q_w}<=AhrRi zEH-eP-}JN$_q(YJBxmel3P_=qrYs{+S{|?Uh_i5ptwqMj{QGl03GnRepW(_&OwqM1 zzl5>I)zEF=lTg5JT*atlP3H=!0pLW|8eFfCv@^M>Sm2b}jk1+UAMf91%zSFR!P|A3Mo7z+W)xf!%BUlZ$RRVrYE+RXG z76hy_z=DJQj$dHNA-KsV$||bmMTnkWTd-Q7!S*!C;%Rnw)9v(KL8eV2+^7L!R{j3_ zT`T^id*4iT9Tm%%`V6iZT2}JSyT{cY-Jla~$0-_vhaWoj-aG{=Q?(FMjUrCz!`m z&EZLmqg12DXAS&ew7z=j`~xB_{%R?TTc=Nlx1rLFRT^{tp~vI&zJ#TcNV2Vv0COl8 z06zI;p^9o-zSxM@n3WnFPXI7#H=zLu;xoCDj6c5Dj)88Ns>URk707NQx?450$4y$9 zdRZ{J#5BuTM4vlwHAFoDIPB>m&nv4Mt0$p1oO6mKv2H9afukSi7hYaI{Oo>y`Ff~- z*V&J6E$Z)0=&$#wzi^xNe|htC`$L4Hc2vkQ$D>SJVyq4u$tafgc{wqoT7vv&n~A|q zD=FBog$@m(9CfT-{d=%ON}&rp$AY9@o>ju5q@roIt}*7*?dhMm9rI7k8ef>*e+_;9 z?;cD4q_pOFf1uX`=;f)IN*!{=U6^zOF$t6oFQ_|{U(?_!>MqI+a^~|u@U#2{NOkT=1bki7mqRi!JrTS zS%OfL)C2ykgTmc*MP0KwpKhN#zj=BB=hV~f_P%PoLml9-0%xi|>jh9&j#ig zn1!EzJLXpb>S98vU)9~89Sh!!{I|}2{5M+b_s<%r7S~>Y+T!XS!a8OZ&h_%e`~C4R zzI^!Xcjj_rn=^LjIRLx?aDMXkb3f;y^M^K1tRA)tTf|WOen*4HK;b+HK8T(vacu#F zxaPKv;13Qy&hz{GTtB4>zxQ@KzWeRlC%paS%kXr2gQwfm_YnGBRR0{EkI&L%FQU)f z;0fU2ScGA(!^cV014J$9vkxDhf9ROw|NQjHo9DN0-t^lyPmkL?zIZ!s-@&Ti(*5$Y z?)Uq9KxK?G$Uv@EhQa)MM*Wg*TO!m|XZA(9E43QB+!BJjc!dzqxDds1;@`QhI=k3F zoe)>R2j^O;ZPAzC=^X7Qu6M^wxruA5;=NcdpfEQ06VO^KjiQA;ZsbCCp8=oS;tPB< zy%1#H_Z>SnHh3<05qbf5IDV4Z3qsd#=+}BR|LxR&-KRhQCP*ZR!@?N|YsF`rZ6KJu zrfyT7yJd?C`oP0l(ilvm*t95;;=@3xsOw0J1w~D%!MMFO4y3VC*dR#p#?R^ZB1s<$mz9XO$SlyvN47gzVY}lLK zMM7OoX}rm!#zil*mZwBdVXX9t4G6;)SBkKJ8N5b>K^P{ZGS$b_#(;%9V*@t9F?R36 zP1dxPrRb0hy?d1vF(j~UV%&q6+}eBGuz!B;6^KlA=Ujy#;I51FnJTeDtFPE(#7zd> zk@MPw)+Pfse&e5SYZ>>ECRG|2F#+XS6ngACU(o3oy6tDxjXK*XA=+_I2C{n<`r-KM z-_s#L1Y!A^$mh^c)HSX5Ic@+pVJK&*qmmS4OiO(UoO;Q9P0p8XVH(=K=Stlf_lQN` z^My>qqS24tKRI@t@^sgTt&%6NV(SQbOH-b;c!ntLOAXK95#EF7c;D9cllQ?5R)p{R2!HvvZwS5BDR+|$#Lk_U878Ba~qwVOoZKIT&wl*l9 zu*ekxI0U@Gbl-h1zW3e9DfN_3X*)EArh-%&0%4A~*HV}B=_?h#5_`8jnA<0X%=1p2 zL`&x;ZVC*kp*G%>x+8eh$VuFmen=hB3zuNM-WyBwG(;jE7)5CCa- z`g}i!T-q%(f#kDZo7M#p zw&#I=*G!?fl`DnAjYj}ytlg#;FwCy|#ZF%;&=fx1ki_QB?o>31a4T31Fkm0ZY|$mH z>htJ`pSOSJyiBr{&#D4y(%)?s#yG&4r5OTh_xLZ6b`(xj@7<_LG*ClojgPV40JNW}&iC{)9dE3d7$o zN&wWd8VSB@N7kR`$ih?;UJC`LHRldsDZJYZD6{kmm7*%+TrF7LL4QAi(1;4e=F2I{ zDtF0X|E#g4#kdqjoJlM`pM_0ug;@^4C!9`TqvE5DSEU(TxQ_Dl%t8a@QKvl`tCUdK zO*lHQs=zs*&Z6pJVBJkFLJR>t7J=hy5}7K_#F5#>v7_2b+1QztU8LNUcdub(%ZxdLK*_5 z&~1#!ZTR{8Xwbz1PF#)cN&z>O1P`Y1_1W8-21tH|T3jNXcG6&WAm6d6OXa5uwH;4k<%utMYxde#4i9<$5j|{*9&@8wPI9?dqC^-cWF0T zTKXL?&o6%?wdd@rx1M0>Qm=0B`WagNAT+6dYCu(m!Fqc;-u&1%PoMm%Pi{|tqU!i| zmi`QizwTU*pY-AR{U?w63trZVb>5wASYt_va{&1W5S7Vv3W#Mn8>wp`ANiH52gI)LVCoh*Dkz#sZ@dfM*f>2tx{o#ZWRSTdGBo_=#@Cxy1(*A*@V zrw{&}`Sb?2Iami4iqJ7;lenMjN37Q9R+HfBhgz+Zs$Shd@zi=|joaJXfmx%=V|u43 zRC_n@6fksP+zz~X`v#ih&%FQa{l5#lwp2?`-RA;otk&E6V|8n+rN`%x`pEfVVU;ir zG*NvUx2kzS$0v&?LFm!VL#mQ`HtOg;53qzATh)&)uG{hSe2jrQ3gbqMF>v4jNEC-l zU;%ibg-1PJ7SQ;&V6cBmT}t)5)FZvpIM2uTKhE{DFvqtaw_DjDX{hFOEl^U;xkimg zp>R8%aC`H%IN$#E`#S%cfgneZTzOX^y#`R9XRrUk<7Hvt#N&Q~MVzc?CYoHtTJ`SK zI?RvtMqCJ>764SSRam{gaB6+!sQRytb|Plo25vfNf!NfqWNGY+nZpg$;zW z0M-PmY%$OSwkJ#-yS%gO6isXdJoI;7o|?pP-K!1q5WtE>5nVfOFt^?NZD7qn7qAk~ zL7+weOBhJsBZIrfv3<-(LX7~b3%2-VCKmQ*+Tdl6LUA~TwhIZtKWj-)E%b7Z2omgn zP7857eQJ=&4tE4-flC2LX5p8f)<54RDXa3lP~ZqiTTEW^zrO)ruUpw*S>vKcipjN} zbl;$W)u$G|bU;PJJ;NWfA|{gGamPyFbxE@SQ?ZrWM4bO&_=za+imspc!rKk~Y~}yH z4KtvJNf!4!g)#s)T>Cdn7;OPmE$aaE+*9G3z}w)DGDV+2gvkbPCK{QZ$f4OC`WB{j zc3Tbkvoz^u1+nKyeBRb(yQl5;mnb6Q!Q?(PdUU|J*j07T7hPv!Sh%+BX}V1+tx~3L z5ZJHn#a(s7Ne;#JzxAV3Y-* z?k$WBd9Pf+Zpcf{U}AuTaj}R8J6H#`m%Y#6ckc5AKotuID{C_~XFFYW$khC@Yrb((YCUpup_9S5A61E}MUYC6?ZAHF?v5>BNS+H1R zU41pii4!$OY)fN?)ysTS_h`cE{~F!hTsYe#jWD4+Ge7@awGg6?F)I_HBQb9iW_uFK zF)=kG`XY9M@H;oEuKVguZ4sIbpQ)-?CXQsYI4=|wjJk35!rsBU1?)L>z9$L!D|Idk z*}Ib*{rVFlz$j27*U$elH^vKIu?0IH%CUIYN7k>9cZhtlMzF3&E%?i4F) z!{I0PY~d!1EHAR1wMJIHH!KI*1?Gd^>(-WvAm!%^uLO^cFW2oK2Uesyd|0HL?@49&%Q9breab21O z=rTC3yx-k7?B*pBZ%A1{m3~AhTOz;{Emo84e=$EOWC^PwtSiB-6z=;>+;#q6-+lJ! z{~N*+q=!E^jv~%d_kivkg=&1G2L4H|{+9>2C^Ti$6bMo;5#ZzHzQFm6op5cO=;w1HXkA__*O$U&YT^L z|01su6{D{wR+inD>hgqktO|JtJ;W4*ZfqY*v}np~W6fiaKr@AyZ5{S_q6(aDT$?DU zIh$2(T1Rz_Inh13W=lgVK3<;x_Vde!Z+d$?y*Q4;ij{T_B|3#0vMheb%cz)GvAt`b zJ8ktALg4#!+7c~|d~zZ3zM*|5w#7nfimjR@AHCMk1@y9js-=bE!Br%yOJ)D|>LFU! zn4!`-xFUt^4`s&hzm_*u>Q5#4ol5+)^aYH&4eeFCfa}SLG7emm&-1 zfFLw(qyF1IE=UyRNN^&GCxCH(x&M}!*m)tOzlWs8#OMKbIe!(}=tCjSo4~2ocWSNg zT_V=w72M$REyaKrs}7;h{4vLm7Eq8@mXI9~C&?Os&ZT>={^e+WM@e9d1E4yz-P(1Q zt(7{B^|Z`r;c@Aax{PCHc}A?JB|j;*-HP>DQQnS@KB zbsttJbP+sX9)Gc#tKvQA!KD1=_IUhK0!r0ieSZG%SB)z51JJCh5^A9a@|#O@763@= ze~MA z)~>z%XZauCa{Z(ZnA}^U6H(JfRQIGS_s*qMcIh7~q5=e%8xU|@4E&{fBw@ob0?``6 zy9FAqLT1#q4*0#?=-JY=-OM>yqcv@X(E(K*9|DvbbkymZ=wuY(Due5(S=bAg7ytIz zh8-@IodKQZSbI`9MMuPGK$NHzoI0!re5xBbJES7>=WZ_8Wdb^g_x?L2plT}!5yGJX zX32R#{LX%Wu|X{Yi**UL5Un3IcWV<-kNZ>yT`Tfd8h4l9nPe5vWeZNy)-z#}+3t6P=oNX{$K*Srnb|W};ed}0l$*IAIO(>xaM!JfM;0T@4GTnKU zhwkN^lUo+wjr2BFt#)!z#A^|%=-eNwug1T3FD%~~2H*w^dXE4(+{YmG>E2nU06D+FV!#xy?pfNTM6UqLsd1g<0;mEJ-}ps$o(BbNqj4&C2-A~|$)h>Go_rPNlXOr#|LSnZnUVvZV&sHx}?*aZuq zcHgTINgJ^DG@xEdFuDBk1mtl2CO>b-V(&U^=5FN^USho9BV+$8F#-yoAEqN(crSk&-l&GPN{hq&IP#Yh_MXd)D?v{vevQTjmw4Lv$ltfwC{$6 zfA;(LJFk`nyI0NaIAp-uKTIu*8n&LnjtRVKH0@IHYDTwe-*?wSoe-JudD{ly4Nq~o zr($AHa+WG0LWNN9U9a6|6ueWg_D5~ZOi~3*^0U&W7yTTow;fHQTLxWg>~opmwh|9R z*xS{EQFj{{2kbAPOwVDLU%|d~#jnB`CM!%~`a52`+353w9zpG#tIm$q9|euh&KU*E zlWT6b4FFEmw$!6zu0OvbYH)u!BBV6_&g9TnykJ|BLDv)99mItrpK-tEt_PdH$U=u|Q@n2TsI*Qus zXa?vt*vZ__K&%>J6_IXQk-(Pxr%8+q8w9JuW>d^xH{T2C2x z1TJ6$UL;$#;CH|s<->9*UCO?BRj&o5x-vN+FsgD7d*p^NRwPP! z17z)FTY*&Q=!Xg0M>*-EY3m;C?Cs>m1RWD3Vfqt%kfM?a01kv^xfgJGlOU@73;8Yg z?X?x@_(*lKb^++X%>8-l_4`iv{$e;GaG%+X#xP@Sn~k@3_v_HnzF)hb^>*~(Q8&&2 z-zjyY`0=aV1-Ba8b8eT5qoMM`3B zGX}l&TSQ}ws>Z-p8tgajy4=m1au7R21t^1*W#x89HGmM6o7D2t%7X&)&)o2j1Ys0C z8p~a{bYiT3CsS=Tk}OoOxZ^ITLb#b%4H+7O6lI`cPfoEA6;+396S#z9-k?$cy>mSt z@mFhc3G7471(9q#=G!-4URB>Ro{n!OD9joR#w_AN4x)R!+@Jrzn_1u6IMFmoSDGoB zDlx6`SSLXKz&FS7qvf7|vc4E;JlL@r-&t02{#Id@0|NJWsayJOrDNG z61yzWLGrbjkNc8iR{ouA{+H3r}MnlYM?A)3Nsuptb-r%am>Jlp=)4eYQ1-MHCVrDoD}<>R~iNjak|A&M{Dn zEc9}k(4-*&j1 zy=Q7$EAITXRb^yh41Vise4Ca|s6U0rHcLV^Yf|i|I{qf zNy>r4K`=a&D-gcvJ|F8m|M{&%%Jd7gCluqWeaO=SRfSRgzgg-7&}z~9Z+i_img(63 zKo#&LwJE(NhyBH9MNu=b)@YTiCsc6>-c{Liz^d2LTO+7knB$4@ler7>U$?13h(# zKrXCdjLSE>5Rd%)VMUdv)S!%7&9q8K6opu@AlErH8i@^|3=P+FkipnAp8ol=NQjw} z9Z{Z!b=mef8(i{U!V&Aqe1{E&GGJ!=*$4oRx|F=61E&FW$H5Me;zm4x$$Fje0+6Mn zyhwY1v01gkEx`Ay(loVIZqs#tA$You{tU&+9EpG50EHSC0YAuCF92hUilY9lG}s=~ zA6LC>ur7*4_#K4lM@;!(iS0_um|h}z4BTiyfXkIyC4JAXTu=sV&s_^fX}GOv1-WJy zcdZMCsIVPHJI)aKGm}ld;=`$K7Y z{}hTi1LSYKfO~0Y$Oo-g0*6>AuFLL7h$=kKEgg5VxURm=5=1GiQ4$ zlva>#I}Pp!bhuFA4*R0PYcc$MK1+bFX3mKK@BXuDlW<(`Aj@#h1~3XS1|nwrM3J$o5SZs z#yG4w;1wG|__G38o}S*c1YvlhqP>@`$}R>Y_e2;UfuSJ|h8N9_v17Wa1jjAMu~}`G zgDy|ugL{xMeaI#ZoG;j$T(o_W?JhR~oHWwCH@q0EoB)<5J%{Qd){4aH0aU#BiEBTE z>NN(LIFl#VQ=P9-o@nE+MN;khV5Cj;4noljlL>!r_Q*3E8BF&%r$+Wm!i0AXpoR?w z=<}+Pv%r`vj7;07&{z6jbGPoVwg~1fYiTC-;&*XC&gzVS-t7p51uiNIv!d)_DfmeIP$?jN}Y> zdSw)WS{5MhTx&LOIq0gK{OL zv-D(`se;Emv4QP^3tIrqBL`sz+Yvx-)1LL(k!|<|IV`>ZEP)`5urto-?^>Jn@q1iO60v!p-`gY?$5K+X;C8O0Sc?@8tM~!i}1p-HB$%+y^cd}631h?eLYJm zq~h|O9SNj6UZ5BD!d?c%ALZrUTcy1lIp$6RKD(&8ivA1J3pmrV_0Ybj05IBli~{gCo?kxvzkDeIy>I-LU=vSSZuI4&S%%KFn&>fb z_vKREALsYY9$cgW8&l6hI@f5GWAq=_2ya_nFERBm3zm9uCuVo+5@(*)1H)R&6iQU}Bjf|r2d}aD;-v%}t~9Lw<0%NMyN5%$+sXwTgTRNE`@h4%e*pE-JlLw4 zo-)LgK%EePMjSjH^AvXt|cg^->*SbpWg_;wceLkI(lDaUsT&9+kd^XA;75z=d zEU*f5&Oi3y{_dZ7+|LgX%Eq{w!&TMc30$>X?5(d-mmt=N=|^s51au>O;Zx5y!w`+qYkfv)_Z!GOJD! z#bTi!rD`0+R~Gn>Ef(k2J=eJVZ(n2K99frmV>sQcsbM{hNeQ4^oN zQ6So-PO(>?Aeyp=;B0|4RDww2xu~C@rJtoVKR8!OoQsOcK)~6wH&uIw#&qR<8}+`5 z-&?nOp0`^cJTMf6-F+oaPFOe10C9=Gz6(t)ROv}WgXA5=O&NP4P^1k39qF)e*3PTH0mO#^7O zmjos`s>D$XC-vMq|LwAU<(C0?KwD7NK;gtuZ1m4s_k|Pv*de&m@Uj<{>htbp`@E6` zH7EtL20pxh`Qxm5Uo2GH8l=;#x;lwEXow!67S!X94e~RfrmGeXU=-~qIl4Hj`sMlY z;n(Q_NK8qXI(1|RQ#tm)77i>=^Zg|hKKL)gou>(_F`PyV8c(%O3j`}QO1Vz#sB^a( z&2X9D>z>H#4XnFBL_wG}Fvqeu;Z*b)d)jj6^^oQ)gFwBkw9p==Nw1aCUTW}kty2RA zk_7an#w*v3-I!zh!!p*St`)XQe*3#ayZ*T-CMf zMb3u*H`kZ77nLQpscm@xGNjp6P2#f87=AW>&bp>Zdjg!6>M#@EMEZ=8i367V1T|y{ zxA(*i_v9R|%cOBlOk2D)Kv}(PYY{75YugwMPZ{oIUO|fh#kME5Jff{zl>7Nggbj-e z;z|HzN-+iOo+eyyk0%`d-Ze1T6vtrpMl1|KM{1CWk-)32_Oz<)zAE6bviXrI51A>X zqNNT7kQzO0D{@4EYipNScc{@l-0Q?%cH5!!P(*{=S`Sq0A520RpDp=+-I9h%sC7g ztl1%fLlAAExzb0$zbk3cF_k%6RIt#vDg@a!S*J`R()hzD6B3=g=%(!A61F%Xj~^^g zS}WkI1=c493Uln~k?WA6xX^KNP<3`8?Ym|Hj3UrA4kbk1?VKcwgsADe#cdtc(Ue`P zZ_^?MOlK1h2GAa}ppy~jMl4e9HTw)mAK=?ir_cc-U#*hsb;?TqY+DvvO>hlkC<C~}0;$aXAd$#KXZXux>%+8JzaPE!W z&`?8TixaZPHM=8x=CiM;{bWo66pBqiuN&9>3mu3~1Q^>Y;$`-d$OvmxHHey2`gjRU z=eZ=H$cm%OdO}R%$Hka$P?yLd;`&EeR{|a@TYWJ%+)CX{6A-ZN1OZ{XsHnOo02m~h zr>naS9RDNW9&8#gfLG942HF_k!I|+@mp2R0^61kJUNB4a3JUuW)MfyxJxSPL0_>w}-a-}fe8x9)i5zB~Nl>Ahmiv&WZGQO6MG+e+{Vue{0 zi%WZhYyMpxvZ$?3iY-(Ct88!IKYwsstniulWUIfB5@|fW%8{3Hev81osa@zA7#Xp5 z!R6qZL2(1&askzChH}b4_Ab@20|qar+baoKv|_c(FqP*7v6HQYYoFs@%v1$(n&4}z zo}5Io4CN}e_b4xLj)AR0FL?=_YGRL(`74HO(Q9$o&e2%t9oVDjikBz+#a1R6wpEwW zH?Ll?LfA2&rGUvMEXpw-f|VL(d;M&SC3bFw5<0t~8qR&JsHPdk6ad4OsPdFi1a@vt zGZ)RZ)kanvcu&YKx_y5K7Rc9*tHa8-kWt0l-{Drwiv+EBs4T$4ZYYHZpI}TmQ%wN) z@ZrOsIO_OFxj_Ip_ZYd*sI}u{8!$#1#c9IH7$LrUo&D{EhI*ZKA}|w1ahxOD+UL{p zJA~R~v_%vpvsA^H?b(%LB*z-iSx6sfD^6=+qs5w!rS%YUkzK{3*t>6R( zAATs~B(?_M4fd%_#YN4P8aE9McZG?xO_!y@Uc#oe^Q8f#trS+eHOFf}0WfwmSc%gr zt9q>vCNPgb^Eh9A#QlE%4sjgPSZF;!J!lzT#A9V4YwxVwKy(ru9+WKU2Ji;xu(cn1 z0FyoLthsK-)4%xU&C}l*HGc2;cuctN5cEo9R8%4WP?N6;Jsw!+`kr_1KYR~?1DV(b zFuEy@Sws9#$5Z2>-;mA|sNVK~wp&>n_yoH9UrLch5+_6F!!EoJQK-q^z*#_558)N$ z1iDyQXMg`%`c$e>z-jC{r;z}lw_qJlPjCMq&;DI&%`cQ^QjRDa*u=LEeiNtSHxPPPj;8vRz%w@0C7y?5?w z^>PjcwtxzIFudre~l2 zk-OMcw$F*)gEK&X0GJhmv3nN+%PMpbS_`EWo2YHcf;4Nc4HgM3?<^~UTk+H3Z0QXDA0~#0+Uv%ts_9UtN@2F>hRHf$A)sNw{A?VeackUS@(OMSx zG>Ea*gnAO#@Q!$8jSWdF@SA#Cf9(1 zReoDUffc}(^f_whJi%w7I`u8R1QK}d-_}4Bg@{lN=yREfke@F_<3b8x36J`33&)AH zXqEpZeHqhh81o^vH$53JYxft|rYD7D$TH9@)-2@QXSc!CdjkQMeRho-xX!!m4Z00b zcx(XI_39HVb+2tXZ0Tf>>dg5tVI)PR%vVtab0i?fZq%Q#sJLlGWD}bui*gc10@5J& zlWn{qNSoWK>a|qpez?CanQWt@YE5QQEP>c_Y(WRvmxsDWnTYT|0O*mwk$r499mmeH zKt^gWZ?WPn-``{u8xdtydaZy-0T}IUO4RATPO|K*g-k4apF8vKio_ZMbFcSKz`cyy z52B$S;H;~hE1d3K(gST$hFZZ-a1m+Ov=!H@54b$Je})VUxxWiL2-!_GXppo5hJ|3? zGZbXos!Kl8IS|;BGonF!v~sr^D%(aY7DKZ<0p)tK1Hv!wpQucBbp!ObwiV-E_#MJ3 z1cy#xtOgeoCwyKjzuzi-<6HyAAF6c4o1VF^hNGNQ633N&1;zIB0id#=p#m-zx1!gv zkGW42BK%4(AcOQ?jx8u)@)b<&z2!Jv#=@eD22*oe(2^QL+pWX7`izy2Rp-HRg7rX( zIMltH$-}6U*&!X;LKnP}$*%w1)9iD)Vz*cof)l!ys8&GrN+iY{iG|L#7g0BcCkte$ zk}iDF6E77!MI%I6*JaDJ5t`fueGMQD`L+L&-ehrxgm5?h!d z#?y}@xt4Xs0x5zXZGrEO5hk<~R7^UUm4f18UZmj#|Eo5w7Br0H1JyVs?41&?YJbO9 z)warUT(&*dKC^l~_xbGFI~~jKS_p}sF%RWCB?3Vwu|}ts2?mR@1#0={aXPkM`()*3 zic7q;h2ZIhlasm0jIIztTZFMt!?mh)+s3Hb%X>&RxL?OEt5b&geQ(RPtJjWjtF-5| zz_8Q>tt_ShJmRs7zc5P>P&368HfUb}J$`4PE*|_eNZF$-Epz^M0E%a#hX|%$-ezG~ zuL_IyXBhD`x{^j3JKydo@C(sm8Gw~GJ8#%en{k;4;Idf}pGZR^eX&Hn>9`cedmPZ< zv=8#wBX{M(7hCn5ksCJ=8L3qI)^f4mVV*#wxBtE>ZD2*` zSg+s-_d)mP+#rnv3>0eiRm3ssq~6RW8D?)JNC5}(v+`Uh7v3CMysYr8Bv>XlG)(kV z1GOqa!jlz@KjcI~G_CBQ>T#%@G*}62Ou;lZ&~0$skKxFnw{gToY^1^>2*aapDV7Q5 zd?k67)g!6`%LTSrzznOY5MzhGV->E^oK0$Nl|i)|N5uZfK+*2`cXBL1C$5DouDGGZ zZ;zznQXp7alCzh8ZqL-6+_L04=Y7yXeOtumUu_K63VcjIOYWkWnMmZN{1_oaz`P$W zH>#WU+>IF$7vN&RtggqbJh<-S)w_!fN(}O~nD;O72xNQg*rq-E9)>_+WA(HZmO)Q| zhZ|Db0awi-3lU9iv|4-S2{?&juk$wCmAE&^h!%hp*RRBxU?7P!W@ziKEMF7(w!xM~6+QPt;L3N@E2@p`#` zH;PY8gi!Gm&eidU@T0K=UG5UG!;j~W0f-N%x?G`w?9SIXS#``e$1l6hr*B()e3f$7 zJ%a8AHLjRh$SJ`1Hj0IL%-=3F;j@0W`Vo7Yl5it6M%6FDc~66t`sA7zb4*?@jZyWB z43un$LwA6Z`WYDG)Ayf!5y0Q-<$Kap*769Kii!My?r(MP#k*U8J}F79T9#TKViC9b z8_DxKNq$R7KlA=Lzu|FTKkWT^=VLWjLoMoHpLG&b4K-_IGO^kdp*TV^=lzmIjWUq7 zksck`X1#mSs3#TmXz)Sk0kRzH$Ki~jqbT8A0j@IMuLvuc|EYYA25K%;z4-|QrurHW zK&f*R6S2kL^Vx?_U(^JbK4{^-RIIy(PS<1I*ZB+-{|glV zCNA_XRj`qjJAem>uVq_l(lF5CWoZ>J$@K#2nYPYRL&31ks`h=Uy8i60Yq`q7tz{4j zg#$wM`bZTm)Ho>cd7;-JC2!LPSPv-MXik2YSYPz=17FBZ26>vT+%&Z?ny=LfYoYKx z0IIw0BF=OoG(ZkD`US#N%PLeMi_bh3-@C?A0c*G(*d8TPlxn~#xj}}1PJ@w5;R5s3 z#6jV_Y9POnp>46^+7c`M2XHAH4V1ufTCQifyKVx#ypSC=%uN-L1Dw-@i>$C6kiqs1 z&@aVT{WP&i4CnI((1mk*J<~vy@iP)|ZSD=uMYtbT>^P2JwBmocC*<^bcRGIv^`pLDTN$ChU{7xAm#{tZ8!ymMp93eUUsa!dA90UmW zb;X32kjUvaEw2pZf^ujOqA7=$gJ0PGl<{!6?5?*>i- z@X$x!LA>@njq;?8THa9@fO=`UooEC3%F^(Xe`am)v$n}1P{Zfj1dlKycDyQM@~tqG7?ugNb+YclM(2Oxg!)BKX>7GCiRLbeTVo^TGz@ zP>!D#>G_^Od%^d{9E>|{yER2|(-XiLSRvbtnG;fWFmd=<(Q!mF&M^11JY6~U69Q}X-@mII(MBFF?%Wd$EX zs=olkBcc&*QBP_s0oe8{(O`6HZO5B&?L260@-B8<{>zR#75hLC9qYf*{(j6SGeSHr zkllag*u%N4%z;Ko*L}AjU?_eR8|QG2GSTSi!p#ZiE4em&44mB4Olh64P-iB8QnUM= zwMEc;C7?Ssh4&NziujkR#9zPL)gCZZ0jHO$iWHVG#hxs__{q7yopQzHqAuZE3uD_& zL4ehA78)>O>$nAM+pqnva*X5^ACrm`Mq}?eHL(Q}RkRJc;QO7dhFUoj4X)`HPYj{N zOfeEHV2)|UzOOz6zT$}3IBllN3!rY$%EEL76E-`X{5Vpl+#xguM-D)Q_WQ+ls*5g= z3)AuqU@!BlJlK_oXu-)y06rbCAV6;T0TWSc1Dml$*$H?AEoB3%8pPN}ydL?X|NRHd z$d9t+M(+{u)7P{~ye{zCi7|>7IJlQ3lNcJY7=Wkr@=0d^v27c(^7f6rMs=>;%=>{A z8W=MTrJ2DD24f`wjp?MEVxNe^kI5HaBYK-oXVelkHXDjqsx+Vp4i`pSO=4yXVX(}a znk)hK$gn@JpU2=p=W=NVh=Bo{5$3!@EP%o+vvs3=Ser8VxVKdZR?9~*waJg>4ku1I z27)Rh{#GpvH8i8dQkIgcGF7sZ^KM4`HOBVUN|H4Qi>T=93c$u}axwcf0fViyG0V-~ zi+W{Cpa4`$+3sGlVk|PGk%G;6s$qZJ2s1i;LhiebF_ZL4*KbFOBE}B_C%0;i&ty%aTw-!nh!s%Fi7>GH!Vv!J_qLJduLk5`CToW%ZFMsf}_wW8!pa0}@U+X-m zI#Kr$-awMnXVowa+3L)xv9X5M{a@kn^#50sc18jT%_K(i6J^#AUKWRPmogDuDo!&n;GDuya!9%ki=VSd*t@X@N zQ@{{8)@qD_mlj8XecX;8@O;oGB zzh*L)smbhrYY%A0l|ZzRv5xKR&`@_4-UR8j4wag|F9PH&{@rK@1-BN zwB8QY2NZ9yUo?#h-Uuw#e43-b{5;q9&BG+xS;B#Ue4`7EHz40Par3n?auUqzGfCg0 zEo7Ju$-Mxcf@A5pa{h;{dDH0S!9imT07GEW`<`C71Aw9q&+C7MQp#GcYD z0BakrCsHW&#j72sZPP{ok=>8EImK090?cT?Qa@V>-sx33_1mlOwq7H4L=8nn-y4N< z({>BZjFmg?v+DxA7Y%S{!0HlBRf_1R+` zYsjA8Tnn$mLc8fbouAY7jJ>k~o|y99J6dcbd;jbyTw_LCdFy-ELclhqX)|cD^OqIW z2AmO_E(R#_w=uYFGA%vt&K2C>JZC=%MFBLzUE!4NCWpp#-?mq|!F*u!vX8cb0N3(k zqI6YQ0(NzOc&DP4hPJw>`+`+9dopCHeBY3WBg2=Wc zyH4Wn_R?#v>*tWn?l|ACS?<;Ck9Z2?zatwm-;Vv}s&WGvL8 z1jS!G=g4Qr?;Dk~(gNlt7bb3K=N|b?k8+Gvh`=%AoQ)0c1#HYX=z)TCM&P!A;52!0 zG_Yjbjr*v!mKECV>PBcg=}Cx*p>!xw5#Qzixqs%BjX~KSc!SS&k7$_yI)rPjAvTtj$;3om z^lW%HrZLBk@MQ#)u&`+NvzFBFduhuZW0c$JR>4cMGdzFac!m-y08eaf_XgXuI9DzN zyHjE#;#`2bdij!L{)hq{JBlc0mnQGc2jt&tV9tTZnMSqB;5Hj47*`D@{u49f1QwAk ztl%{r(rr9;Oz|t@1IB4q-WGw4&)Rz)2_ng*A%&4ip8akYR|x89;*X2~IaWZ-gQlVVbqD0fZUB7`XAiU0InUl{S4C1?4X#0~wrxa#IFOhOD7I!Hs5>=Qa-c)7!QEPp z%_|_h->&Ol1LEE_f#8`nyg!f?5hGwimT9v_YSYBqPVS{9CW55}PjVT%bJ`9diTRlv z)ub1vr@mwP{qKDzuH!7OLkHs{(d~&G$l}hmboJO>cDhyvCuxF1Sj$ox0+0sg#VG71 z69z@myU;`w6CU~83udvI$|_s(6ao{+r`HK zbP^R-KHI1qko~Y+ER}=d>VY{=^f@m7sP-Mm=RuY%k929g5;3UwW%;}AQmA%L0j}a9 zH5(qVBEQPPL45*qVsGVUrW6noVy(7UKWmo;(fV==#KDYA*xNF1pKwvct;hxj7Qh44 z8KNcn*jT$-E0_s5_3<(h8tATJkhp{+7hj$WftX}IUKfsFz1jnTujhX+ z5g~!ICI$>z^l4&Dv$4l3W4dJ)bDaAp_6!y~7=nU$bE z!6FtOAjbu$t~QXt{Delip#jmVsT$|hLt}uSyuI~@=ksT;KL6(6e1OzgxOE9tS_YZq zA(E=@J|BbRhYv6R$(YBV9%ClL4yo7GOcey4CUSh71l9O)31a?n?f`7ZtfJVZ)<0OQ z?^ZqSkwkaMObgMmDrk)~ESoH$hcDz}$1$Y;9>H%1`L!50H_uO$M0KA6=D1DpM?w5P z$08G=y&Nab6Jw{L0aEM<)MCD{Qw~@7-hemh9AanTTt!-*6ISSC{8vM)8@1Ot1o6o=bx)PgqEmmW*sdp^H>IBxTgHtVj%rJp?ybggO>`pn&A>qwy%aJ9u!&p&oIf$qWz+Tkmgp0x1Hc^P>DRseF;2(6xe47;xFvYJ^{#drSb!uA_43Y@??3C>O(XMioE!bS8XN9?4~ z4Lu5+evW+~M}6V`0go{PoyrX^OVH_})(#G_QrVvDcu+&10xI@6Q7XwTyH-t3JS2Un zxlV}$2S!nz+;J{Wi|U$X1=z((zIBA~0nHgpje#9GE{=JFNd~g5WJU4-uHJ*c+23gEDFQiK;f65C7H3V(K|?qzmijZ5iE5LljeDAF@--2H2M(zStg zfAsDwGQU`o5&IigFdi>@ow2pV*UdXFi>in+b}S33wI|n#!djg($pD}JcWjh1fOSG+ z0FCNpn2wfDFV1ysI)?a8CVnPK0rPTQ)T;=VGhb|stKj7WZf#~Yp)0bE|n`t zwtuIiWk`6@-V!d-u`A z3=qXF9PNB(ScK;f;t9%5U$#}~y`MkIcVQE=EZ^hoLO{`_YQVL4aAWOvnVz$O*pV31 z==SZh(%lodP{?Q^Z9(pC*_x^nJH^5&;mG8)_f+i3B^WQ*!klL8Q$nso@WK*57iE&b zHN1tBE9Y*+en*fo;iL=I&bf_vLfAL8(jzZVIeLPd!I%o@fzc~=aSaSlz)EocFaEhdeFv%6C%eS^!SJM?>ZS=Hj{+Ag*DkuccPiOsTQ>1Gf1e#B`e;0 z0aeTU3Crpg!WWXoR|_Bz3Mjn?r_Bka;LiadWHN$;X{h`&_XMaC=BQZRgvF~F8yg=? z*V_TU5{w;)SH_PTpmeIPBA4BmoYpQWb-hgqyP}VXYKZ zn{h4xdgMF$Jz!RfaF5ij4LvBZ^^TuckpmPTz-U`&(2eq5sQbzmFE5fwA!Wsnz2y`l ztx{yLM}DW@_efEBwy-_q1cPzg3s_O2_Z?zCf8PVmX%rMq`u&|;p7lSKo{5()bRfvAX3#>I#DN3FKd+n_eRx% z1wmR}n#Bon6v(w|(CUd^Nvw?#_zxLXCAxsMwyMDuq5HOxIF@ITqM(s^sD3R%)XU&+ z{6B?BFP?!R|xfChf;qyUY;q>3jC|@U5lsfh*xl1cRVgp>u z)(8>?c+Tp(ej2`&JOMyV>L9u-Ew{cqj(>y;S6Jd#r_{ZoiU_ND{`B-#UZ7|IWI&t0qRoV&5#we3 zgP%+9)kG6|_*wN5tflZz9z0%FKmIxZNTgIZ6>p#iSuuDoXgsuj%**2iOT0$cOJX;G zr~1LU%5HVUL67H5Wy?I(hhhQ1030r$9H$4|yfpVHfUwHyD!RJ-pi_UN_uV7pNe}>R zQe!OiX+O>sBZ((U06Wt(gZMIMan8{k-FL z!}{1koNCNjM{%Hz`maCk{r5tgv59*xJcM~BD=$Yeyg;e~wA>ASp3;}0G1R(AJp_Gu z4gT2Az5U!z7{~mdjXD3s()pi0-(P;x%l!p+op`KOkMn-J$W$UZIDkFtBNeeg+`hQZ ztMN@%T*F4`I-Cgc`No*1tjGfWB5lhy^V+tAqOn@&#~n5GbpQ^3EjW+@kZQHJ7l71+ z_&ERvd{zh>D%?c9ZQ!YS-j;f`SNc44Yd|_A%!b<52rbM(fKxWNKLH(R-RXpQ4zK$7 zZxv*KiOp7{c>q}G=I2&ZBG)zwa8RH%6&mYh-M{SYNB#sB5{Q>rWGlwJc)o{3V2;JJ zZ@&NC3q7lFv=+tcX4Uz!el!MW)26e%YhE zVP+9c^&CRAchzq|4VnMR6mT(CIUATxtx34iE(xpKz``yT(>!?@ssFcX=i+PI`EJ^f zoC^e`>({B+u@aBM-l)OlNxv4H-_{uwXNO=xl#`AH+9D3^i9cSStHSsRPOAUrcO5do;@8k9FAhoXtZ{V@^OwV=5hkOzQe=#^NfRmU`Rw=Z%f^8FB z2UKL#N*1ucVfXN z&~{IUGU%(mRNoJJqG-R}0j3A{GoSfgt13NYYGC0~T2^lWN`P#o(PLY)=JUmo0TEA< zTYv^T4d8GLM?o6UMDDmjyEz08%Q;?94VINM9wGJD9n&P7Nfzg?iNYAE_55JtCmv`& z0YqrWp4`cf#Wwf7+}KdWpb(-;HUMb)1QwztEne13Ij@TwXE5f5u?Y+SJuED3U$P2* z0S?T9alj*XW>Q=nT$}GbGh4tnvHQc^dBS#um6`?aF?#ZviWwUpE5=D+=L47ST#f{L zx0>~)n=EMKCc`4J1?T2%@7wgGMRQmR5hjB$VdPTAfl}MKvIYe??Ch(#?3kwe`s9Rw)^?31BT70^Zh**BDsj=yu^16O>Hw7 zwK^H5h0)cgRh>e?!Y6ES9HuvosdTVazi%Zka}y!$&%}1_m{q7TG4hO1wxsIdJw;mv zx_0j5@lD(&_t3S{1Bu1CX&2@#6Mju#((g>Q$wlW&>AW063aJ&8ON#9vVzCVdaHiJC z5Qfipz4Fdzcn=K(3k^(~@4YIE@(>Y2FMA}FN4}vDR|YPPcSc+xT>uCHLwp1x z*|dc*yGe9$xc!$?p=VS+Kzanlw#jh8>SDNy#06B;nx-02NTZuHS1% zrAm>JMKz#{XsoCod={z^Kr2laR+L;0XqGpdQB_R`Uk4Od2W^HGD0B~0<-1f80{62P z*zs@Fs|r|cZ}7@%gA#@`s#?zjc%*0Q$xTlcfD{o1d zn|>xX!W%ZNK1#8%L4{6H(k?!bV(KFD==}gfyQxwlv)sHdB1;Gtcy^|S8jo6+HIY#H z*=E;sjh)0b94ofZe*XSSL%LPBy~(jKQkw)FB&xZjW%i${IS-86{DqJ6@eHtrYPF%6 zvx{jN2(nm&?$3|kDV<-a*D?%BOtOD*X=EIQfSWf?EUq6=7Qs`J1e~7skx0+GV4WX^ z2y_j5fSLj6q_qPsgqqoxf~X$L>J5!zX?jGx#pc3e^^iE?nYc>zD5)G0=@8QWBP6&u zSj0LT5@cW1yaaTyyFooeu)GRN1;-?@z51hRK1jts87%Z!sldi8u%qIT}6A#^Zb}|C|R@03Qmd zr{m2}fAjW}Z)NdMLH&aTb=9~Vp~w0Jc!9tp-S05Cp(kqcwC&=ORsh zs}}}^vE0n5kR2|<$qk52Xt~QbTxQvxdWq0e0i#qa!82%+K+pIaZ;hitty;x;Dhb{3 z)8nq$Qb)^XXSuZn_01gxWVIv?096v!>H4?JD_NHwj_K4Yn*kr(A;ta+c5hHWCTEW{ z4?8!yK4%(~0Eh&NSQ1fZtI3i$tH&{X&qWT=LMK&0>Q=2IV4qc$4O|4Qu2{TM>qV{E zdh7S*BCtbgSJ9%-CYxgoG;|hv`?=Ky7dv1XLh2YEtz9Fw0$4UqW?^9z(pT-a>%9%$ z!ldjuXrj(YFfkKmd8?aPn=o0>~jcwUwcSU~=n#X%NKt+qnX+6|)#dol+Lo@h{K z_uI;Zm@5?^BkTx}ouBWXB(-dWEW37ZohW&^Z`>=e79+Zf3NW9!uGCc)e8qCfLYw^j z&Z1z&LhB4bBfp~sBSx3d$D^mNPdlVT>Z4-kk6h0&IngQA@3o^w7nFwG`BCkQYf_Gx z5!-uY8cWthA`Nx-CMGiV6IHPzycdrGyXN-u-(KJ=L;OpAR3Z(XC?yx<+l?hV!@OzqSlYJYE zwu!~A?O$td?qJ1y&%I*_v0Xi_nn%HE;PP_Ry$8epu92g)e2%wO#~HGs1N1^|(U&t? zfVdSvud{n8EtFhbP07nEm#{QZqhkw<3&2!*Y%Kyh!!0`6X{F!>V>@e*g_+XH>>?_J zyUFRigC=Ti@g6`8Od={--y7^_5kkf!P2E zPLRpp0bnS*zGTM*-zyh;gYHlFZVa6kF=fK0Qm+9a%vYwq5u%vu>T&jx>9|lkz+PQ3|02d+3S43N{~U@eeD7NC0yXYbGUorvF~`d z&y5Qg%qAY?Jped-ug8jwj+DKr?pY}Sr!J9SH85NaqOVCNg@6r?lDpK`zLC>+NWdk` zS#VA>Lwrq`JI><5%vcUC+7CT>hW#q|lNYO`|22`LkA4v8UZ1JMNxKH_{a^*S7HQKgFugWr90;epEXrpP-F%4sSGdFB-UFr0%H1lQZmG?W4DA$1O}= zwF3egjRR>`q_l6`P;$te*I2R-#9s7kk_f&ZL1b(%nb+Gkc*7nM>j9Jon8OSBvZZ_h z=X9WUWq+v-AeRVTUCB0gG!(T%!5 zEm=uv5+H#tf;tDQG?%z}>^+7`g9GmBCsYTLPTWwWR@}ka2W+6m1ZS8_1ZcBl833#` zMhX|oiM}1%7GncMW~7supkSW2fB&q`I|x{pXSqia575O=r@4m}QLG8z)jDN-l+d}E zr# z*YKO0@{%yxY+`GJ#hsO!;Y~*)WYLU)aa1rR~m&Rt|wolv2t#wHA9d)cR7~!VPzh@-= z?M0jeo8)+XXSG#Pd6&vA#!4JCA#3}BkuiSu>AxFr-}xj24Skwiuk2-WwOg$eDkC-q z)g_MOIKKUSoc|{f>@HE4%U%z7<1(uW;Et(pi3gXT8;WBqcD7<_`Rpk7d`am0;|&mU zoB+j1up}0w7Xq`ZznevXao8+BXV-x7%4?z8&1r++8fn@AoTscfCsa$UiQ621mmYKS zPeyYQYf+PIu?Q5OoHzvz7u+0He@v_oDOa6^g`3D0F$l2-S*Ym|#N3ItKH@4`Q=9|4 z`S4P1&_$SBU=>h(vN3=gTSaP-H~}@;k0w2WoBL^^*Q3SUW52}(By8pU6F8}A6(4O6 z1(b+kpsxob2uQ^?;ap%9ih)(qfWEQ>3L$#zeGD3|kNK4hZ<7Iv{AQY$JaH%IpegAo`zg2Vo=cAr}HKcF+ z@ciLxpWnaxH@esNvIwcT#3o6JgZ4f@fj)6qGz8SKX8l^8&+r@>R+S6N;=;)yqLR}X zCG~gR?=Rm$QjBx0lWsbxAh)51)8X$$n45E z#+U@~2F3~QV~}s&y#3~*ZvR!U{$XwoeJ}RFHc7ClQ7icw8}RLwL0qkQ+25}C{G zla&Wc8in&EeOTi1NSy|g`^@CP3eXl712p7J_3GMsGf~ijz~*3)tIG`!Gu}_dw?72^ z=q*|ZsSRRr^=netl>iGe1c!01A|IX*PTnA{$wPv9=@Gu5(Uve7TTaGh^U4LruhKB# zOn!8eADG3K8_BDM!sI|rU|U}JJg3~K{Br=?%G9aEzsIto3efE4qob!?z+S(;i$?>4 zB<2Qt*G??(`7bw_>>P8tu@tOIG;9$CTBpf?CkVwtjY5?d?N$zxLJ4l){jSrYC%vq8 zuG=vmj<1qiHcx2=aCWA$no|M;8oD)NkV6}FDGi#FO-_~eqEQFvPMvSnovxU$b4a;h z%57e#Ok^7G3E-hj+Hq`N&Am*A*a;}s5x04XuP$qifdR^smnKvdGR5B&XjBPK!-}d- z$u$gV;xnpvLVAMQjIyNt0VX4sS&Wlwxhe2^g`f$PvOu;T)$`cvDbH!b6kz` z`|MbqBtCCKVo#An+n_Bf2qy*C{#X%^`MzlhJq672Czm2}3x*)SPY1*FYt1Oqx5y^M zqS_0P1Jq099wD{iKF5`5A>`b%I>bRD^zL)23?8Si@dDl4@6>-)7EP`IT6^iIJCDi& z>a?Ee(cS+Os$uS{+&_3}ao$4(G+o9P7QG-?Mv@%Aix<#bavVhEIYgjgL0jelV|}rQ zZoHgw=bgN})aDAi4TN-|qS*HQbjuUH10he)8WPka-yGPBo3{N_AvGm7o$C--@U+FM zi5|vU9FpfXjdLcR3W~VPah#;3H8f$mURPJR#~%R7!is^h2ee+z5^KD^Ans1oeHNz0 zS+>yZ>rA>I=u8>;VV3#zU^z6g#(YZwVN??{eL&*=f{D6Z+kEF^%3FJqzhckx8mkEc zHQ<5yJ^5vums+W8Q5G)l-#MMDH$s3sGnBC?(V|`=uooCYBEM56UwNIGjVA=>Nq=tK z#(!@mwrThx5-U>^&J$R>w=ljX?w{BASd?oWVfkF|DI~zVB4Gd@saSyNb5$~a7=0(x z+D!xpWr5SBX9X{mWD8#r7)e*T{Nau_~q2}}y(8yCOlX#tTjzv30_`<=KM+4LY zu_4E{0&KH4u7MdQ3c}`ydHV#N0H$z^G;JzR-P>?xRC({_osl# zzuenJ6E@*;0}uugt$~HpKT9Ftf)ODfyLXDhYmISU(?ibDwcP)5~b0|Le?FiM%h za&TF8F0_|Z#fK=rn837oK!8YpSFxcnVIjC%H!E|Z0m4LkudUP6(9*C;OsNLUxn5@aFdO zAkvfNXZXQy@V3i-a=m~EG}?$F#p`@Vrr|210Dy=?pc>5jOEn{uobpnzspcslq|P8Qy~rVr1VOD7 zFgu;Pv8#;Z&NMa-f*XYLvuntOxp(^I$aV^p*FP(clDXFW1@aY^KmK-6Au*VZSi7vYDLgJ`5*Jy;17Q*i5 zZWvW{@}LVKCAmP1Qp6*Go_5J8Zelh(u31i^ok!06exOo=@AH;skbuT{5eXjScO%|x z&}<#l`cJESae(4DgxWLTWRnu+I{UM^=6982L?wu-y&=f?G@vgs-GG3&4+m^iI2NQ0 zBe77Jg1UJ7Bo)QT!fEv)PD)CW-i?l%tkd8{`+OW_&IA&-Iso*>GEkphMgg~6J= zFe{tOd+@Xt2;~Sqo?eMf&vfkGKru)3+21&xT9!@N zb7&ir5!DKv54QT~N|_$5#^M%%x>=o_Js-|FIGIA!MQ#rlhODx~dg=3xo#o_Nz)EIO0)9vkdk9qvhpWl7>CtjXk{#5sR z6gAjB4D`Jm>N-5$i~-G44RtBHg_5oQccLH;|7<7KE zIiL9V2ajKPKHq=LXP>_N&a?ZZ76jZ>Yp|s5mb`@b6mTzA*HRh4u&kzJ_N&%N^Gp_#kB`3$_Uhu0C8w@I&Mh8z z%~w?&5D1`!ERu~iYYUVJK6u#yfv#}ZErI0lovtJQcR2&-4UKQSEl^}te(p>Fo&ats z2`5;${QR^bdV=^C-~`Wevfh;735i~~>>kx%FAv{z??Hxe*KX}u_yA6Frmp#Dc`KL- zOXYhpU8{JMpP=PVr$&adn%S#NiruC2Wl#9j)fA-`DDS0lO`JTlCx9uC^97!r)T`1j zWfWBGIn;VMk-ZXu+9RdD2LT40lMQUAax9an8!#CVxCTa@;PBKe%a(cFQDz0%>182? z%EFKp!B4TWpUcW{^eb>)vI74?Y&-Q$O1Wy;x8ZFU8 z{iQ+JlXXGMI||6MP&dmQ2P|R!sNV@v|^gWxx(rv6my0RvDl{)Y`IO=TZgJAkDxlxTPKjC4&mus$8>)FN-&};zPd6EpK-LsZQCZLwczEW z0sSt(KYdWa!oPx_0n>kJbBlhaqXewF2sRt|@zttgmqm=I0DRqe8avHGp)0@@h?vWy z-*JxF@4%(6k3RM!k}A(KbNn;l&ajxQIzVYe8{0u(VcW*!{CCKdkcvu?_gdL8@mOAR z%!$EfN98|)>Ck>PiJh@ttbj}E3y5yXn_4B;fa#Gm>$*o5808-svh~#=qE=c|_!(RD z6dQ{yklOnIk;#A_0P%nq)qu9c%2~)17^DEEm1f#Nt3ap>h>HQg*96oN2U(n=^WkhB z@OhIm975IHmiNXtmceNDNEj6Oh)~W67f3&==r`P(xwj62=5f&BJ!N*8aNa`H_kM*N z2Qn~OX&AO$*r2UQXMYrnQ!N$T4G5W*K*)UoXXWpV#+f|`ize}gw#$S*vaDIyyG$xT z%~0?T!hbHuGw)-u(mKU9zo?Y(=f@36>mE$;1)j?L)RL`2@`Ue4yk; zgWynB$)-La09KW8fbYYXvc#Wxc3Lpn48J%Wejm)1!Bs&NtWAU%-GkQ+j7e^bX`TtZ?Kt`RFHq>rlPK+iZ&fe}7%zLTJ z_RjcfqnP<{*Ol9^k#;RvwMwQ@#zdv#8R}r99TXG*0RR9=L_t({$zh3)ou&2H`!ARr zZQ#W4S?giKGABp7CT(6k2pXVy<$b#0{b#jfCr{SKw!4$Dj&u-KnX=!aLwcHy(X7brOYG3-~G0K9%Lk5TVn z;DT@vCUuf5WzCvZ6D#CFiW4V97s{zgTr2{yU{U^|@Ms5aoJ93XL95F%b3wMZC^zsG zpYUogLro6w_hJ%M`z&`hziAn`E+tSTm7)grLgHF|krRk|$>ZjF{Vy88bTHid%WXg) z2g-%Y@=IPArrRKkT!}bIYIBSc+!dxnN-?&)&kM&xJXA{ zMs0DHsV`E{87O`NC5*zeHO@SC>sJ+PL>q>B^n26>{g$-DDdoM834O;fzHB!J4J zut8htyf)gS5x+^HrSGvHLxw~>{8DY1mYQ|ez{0>Ii>BM4g|O>&jO2|%$RPi5*`i|^ zEK#B}XA=KVh|GE8kC2x%t_@;Ymh8B^0yyzhV$o*G{d>=Xlkphj!-(rT*N+1To+wur zq{y!2Q!QeshIiG%mNXRAT_M8zDYxvA@@d6Kc&Rx(bi~7@ebkpqVY~~d$V*P zwbs8e=3Hym3A3tj8wM}hvCTjM?H;tx`+ zcw3!ZxelV%@lQW{{~^r)GI@b@Nflw;-sgvxA8hG|QwCZB-}wIXIR9)v(GG!$Z3anC zs4uAhyWZ17W7XWKW$}eP&gO>mb`HwoKlH_Cp;qxYUjLmBA7B6Ey&r%4sX=T~1yHi0kD%Uyl!8{-!=0xMQ7oD^#0} zeHN~8aaCN4B>^vzx}mKk)%SANQ@2p^GKIzX|0e#vcR=~y0J`*tf%}In;-0$Q08W5- zJfB}*dw=TIcO-mg@BPiQ_ovT~PyhbgQ4=Qy`TH>`P17UBJ2N% zBaNJZ<^d0RiN*SY4Y0hm2O$xrM~CXfGLSv>o;3z;nzaOEs!UgGpi@iijaT=6LYe(T zXR-qzaPWlkC?n7TQq@jLo|uOnAKpB2X`cWOQAY+{Tw&>207YF@3$H6vo=$uL+d`?K zD~eAq`crr8K%Meu($OX{FnDUB&SHxOx(+Wz>ySe!UL|;GD3Q9v-$qECo1JBQYL$E{ zMI|>PAPTl|h`mLzXUPCEqlTjUxQz}l;dz7_h?!QVnE`3AY{#i6jSu_Db*i)gBYp;s zweH?`-ihnz#^}Gb3)oZBcdR#fgKOT?OB620^1Jp9)mVab`1x~VWc*k98~^FD_$z#m z?ukykpULGuh1)%fOD%(*!EmD>bq$D)NBHG_X(IqhUmyb7fZ@v=+nsf-68Gy(Ew{>6 zU}~_R?nC$8R;J{eT0_Abw=ER%ygC+3cQd}zenq$;D4*MZ{vz-GG5948L@i!Kw;Gu? zsDSIWY2vE3JjpXA@LPq-(EGd-gAL~-eIAAS>81BOQE zCAb$)|D249%NBGuh=tfjbvLke`xbNi=bQNT`Wmz>NCB|*o~JoK2Z)WPVw(wr%5uG8 z04{qm##>LF6HxG9*y2zK(T zwGFs1Ks9MMNaEHv-Q`LwaFB0qilm|C&s$*5nqskK5Eh5eopn14r46aPVp)S%;J%fL z9fd`50(lwq8dY<8PL!kQ$`s<1Vx2SRedWIA~?F`;2=*~7VU@Hpf zV?6!t8nfZLjy>3x;}BDbP0>~`RK{7c-dm6pj_k4-cW^suW}7& z+yLp7->3a-Uo&PXxsSVy%ON;V;7d+06zPWgxpv{l~@*r&EN4+$Ag;L*iPQyyFr^I3pCA z*Dc&+aK_5iiH{mBVuMgCE-aZYy4v}I-LZGvi6!|w?VR5uthrqrR)i{aq2KOZWv~xh zBWQ6Q?*tN@h_JvwmvPgZypLpXRNGd698NZsFX3(-jlvN{JyEC=*xClVSg1O%;AKax zieeoG4P+%E^Ki^ud0bJDoA71e6AQL*aCDyMmfG4|r7Oi3z70qt3fPqY(7FQ(k~|PZ zM+?x|9*u>;^j*tLPsKAao#d$F7iZLTi+3KXj!Z-Tf zW8n8x_juI!o-pSKhl6Yl*v={53LamJrO@U3)A5zZ^qu8R-*=fut4;QbT7ilhZ4_C= zjQWyOAUU{piitet6t+I!$jG)8SIWlsGNV1jf*PyRpfq4*+Z1VVGaWmxUY;~4TBYhj z!K~$sxI&(K8KSMJ+Y^6O6lyOrY~bAJ3&5rnk)8x?mu&V~eS57F$eQF~Ss}CHZCJd!A`s&yn}=}F#i2aoLrE0o_D9P zG@NklDOP=_C6j?J9zC6OOhQ7M$}9z&#$cx#HQ3v#G&ea?BCB2QRvYb=|8?`TAn?dJ zHl*$z7C>*a|ATWlKDBBUDE)riPq^I~5L?ib0^%TlER9_h3)yDlC^p|k z2E4i&eOZsYpx5=nAK&Qa@{}SY7(?knKmC-|@4+8T{8^XQ^3w z?Dm+*_(sk}B7_;MVboH*>ds$NNEv4+9EDf)A#i&_8+ejMv37xE>BR~ytL}CR&ejTm zVPxV7zByoel|@UXdWQlf9$d}>RZ8uXk=`^iw1n?2+8yYX#Yv4?$F~3|7i8MZGG^U( ztYQTOTJg}0OcbRlOXMtgey#VBm{8z~(y>7Hf$Q4X`x%72z5tlwxKnS0TrK6!s#kd- z^Z}2&*QmKNuBN@AE546XU+Ta9x%F=@vjdw@i}mKW)z#WZ-so$q|G2ecZvjzTuU~aZ`s>W`?|hU z>*Y5eT>f+dx(n(9MJsJ?OE@~eu=Dwt_)#(t;acwBr|{40U4Qvj|M+vi{ha-L{x$u) z{+Ii@etYlz&DFaIyplMpxLm8mkKdXQcNM}DRiNptC#!zu_3S^dFKcF+zT39kV3d1_ zDd36b2yC7{Wk~|FWl&m6bR!R+|J_j{S0(>Mn=`dx3GDSf1Zqu)YBa9fkVN_e6n{>4 z|A4ORhxUH{h+5w-^%v0kiE#o zSM2qbq_3Wj>t{S4&ma5z*gyDqeEw=*Z$DJ$%OBCt=fAnz4WTMPL#=MLq`mVg7w&9; zYT*Gu-C9z89<^HsC7_ph#E*G>t3eC7+^i}-w$RnQz(oB_4L1N<@=lkC@u5 z<+?1YXX4$KurgyW@hXkJ3d1)rzF@1bX@XKuD}Wu+%p{g{x%U7gfSIN|p8>%sz=pO^ z*)63Wn;JQ%LRjTkR@?^J7H?6&HY`-6C>2R#?vVWpt*eBQ`3&&m<3ETU0`5lL@z$Oa7X>Q&0YYm*a2-B&>Neqju=YK zOcxr3_k77h^|HEH!6O7{XF?d>_fzWR*a%5Tpl27J0SJJR~`3Mfp=&zJ%?)%Fp~imzC^r`X#=!HcM`fiE!iY6BF9p!dEL)Z2AvD< zpsf3BpTDsSeP6Vh_sfR3-0c)VS)8>GD@Hrw#qPKfFvhFt+ljb3XvnIF{bt7=h7$EFz z5Bf~%N?*H;r+_nEmA+C2g)39uws*Tgk1#+w0W42!rmt(HzpnQm)KQUpxwNM+m`c~5 z$?0gRLp~Wx1Il2tJcWcZJ_7&N5D5{sCa-g_i?+2JyRdTK?>Yc^mTlZ)O&;+DFwjb$ z0R;Cz2ujHH;FQFz=_`b>Nw&o|LWUx^O5!UT+Oe03z?QjJKGU&;N#0S&gG0{W8V3a8 z#zJj;8_@w3Oe`210Q6~W?nK0y?oXv4S8_cHj<%qn;RPP+UX;Go;2XI{333}>$Nx9&Y$ zdRq9XLSKdA0j-csm}w+L9R7~qtdIt)R%+XEe29f6{Vi4<>7Uk(*H$-fTr;~@wlWPD z{EkOCH{w9m2C!_0U7pa>jomq~tJgi@iaRPhFKfn8Ae@z{CMtpsV|D7n3E*~MVT7Y1 zco8+re}|3oC`QLBC!pb~SctS=tNaD+!@Z0J>>M5toWxp5&ZnC$Ro#I!J$;z7iZTH3 z8oVnnWkE;XOb7rM1Z&v26=hA5rH|$vuoT9N=L-^R*|ZvFAlUQroqO|m=XS5@4EqTgYB$uUn+Qlp%#u}iZGWDM^t8AQL7yQmzBsu z#;}9@HJEYp!t7IU|F+QEDxsnS+s@&?BTfQ##oh_E?*$s(;-2wS;s(_jwUmAu2#;aD z^8TZ=kph4uk(3MEQbQ+k)p%qo?A{=?QFFm#X>q1$@E3E$*X zaRbKy5^mt~;n1MH0ux)B9Lrp@_hpcR_c>p8z_*X{GDCgL-}jkVRY}6k*r}BYqo5gI z!fBBFj$IIl2a0Rr-PdsQqXt$<$9-;6-=X@GdxXpGXPr>C#+)G5Hk|vX+|L4Q{p&tA zdft?uP;4GeoFuWT&WfkxUIsIr8+?>|O)OPNkK_wlKgGmFFIF$?s&n!DvDy{Uq9Ewn z?4z@Q6Tnkk|1P2e>otY%f@~j`)2T|;!d09(IqV!~ zsTIoJH2|YNVTy%Yu*=4D6QeyA%2e8sqC{4W_9B97xfsI~;cy|p(!_L>hvU17#4y<2 zie+nz>v^GDd|ub_c76I`L4RSb4}bGIj(_xcsekC|rWcJlJ_$#b*G1t%`oLld^4N^ObN#eJ z{5aM>&^J1?N5_*6*yZ!fhvRR$_7l&&3tMR5uVSr2DxbL3HM^exK79K8_WxRko1QAG zLR1au!ge;stqv{=3HD*K+MFR#C^2>y=K{EnllDY^0PA-)@xR)_f4-?d^YMK9q32`& ztWTf6`OCik-gp1$>+$%GY|HZ^o+TM_PKY`0m;cUt{f+MLGl7=71`UZGK(5Ct3Y)@f z%6xa)rhvkeH^D^yazl)QmAc8FYg+ZYf$o13z%$v^{fWoX8o-0Vk2L$MwF=u?;W1va z>vWlap4GJ$i)E1^53zuCtmj%Ryp-*3<$BYf>%dy)Tb<|E$GM(W2Y9|*>ITo_1{sLc zyOm;FsbjtPHI5F+`a@W+M^YzR;}DM7MylihpT;Y9n3xIBNbL*WmsRXY8ReZL0FM?f z7EfHZM6AOx;aX#@$+-I%2xF#jHh|v8nfP*=Ve~;P@&d8d#D;dS+?92qtDz&Ao~aYi z_HDg)9}&9(MmW30Iw(1(9c#9ZTXo$7PQbOV7d1rPnz=wP%1)h}od?~%SAy)#Iwcii zVb(+DKW)LqZ^blukJe&hez{i=aZfe8KfjHxfQZDc)K}_vFI6{aB4x4Mw^aP70K(O2 z`T)dIV~7MG^=Kw3eU%iz(%^}00p^LV8w)h0iYbPCK2yKVGCnkIDTAqF3hDqD74=>D z%tSBjDuBS)Fm^U9%`=jw?gK2L%jd=h+dCc#S<#Ke6+XRW8HM6@O~wF9^z-i+;@w~k zrXRQw#`3t^_m|0s1H4b`)9DRr2|9>_uc*ZW+|-;ZSumMt?m)|ZW=1=P1DvLVd4uhO?xz<$K4SQ=5#d(Yo6wjv5^rB`wQ zvN){d*gqIi<@=X+bbxYfD*ud`@b{z^0FEfi6BJl&z|*QNWEr@C#<5HdyT~?Bw@bKK zz%%bQyAs&mPoiAL1(RjF5Y=;l|D1(LbM3Q$lanA`i_xTUX zv5^Oic}c9Y2a=}gKX?;Hc52k+VG+-G0jz1X+{PLn3(NNg@o*A*k$P1uSDx|K-> z#Kx}jq|yXa&Sc18tSY$VX8P0=N)!i*^Q3^@@sLwU-IS0L>%YE?rB2g65Fje|1GwV= z<-4$E$$Z3S^$uE*IjSJ1pV} zpjB1l>ayBr-9SXn+U$WH8Bg#>9qBqV-M8d=&7;$D4oK~jB$IobxEMbmW%@%o!;o+B zN(|EBFXi0&a=K+}vcl6b~%&9TM`Sk_K)a%b+00tN`9TYo9zy**1M5_I4L+D#ma z=UR=eh;GocH{FK@EJqHb`{tdPRv|+-MzOpSDR=d|`YQ+6qrwi3mf;t6FaP+qzNJ>q z(mhj|VkC{;3gb8bp8(uG_zK9Xyqgr+1ISl<1Z=Ik69Ats{G8MxcRmnM+~*9e%utvx zYk4{Z3ufKv;<Bhds@@8Su-U6tYniVVW>r$(x$}PFA}Ku7@7NMGc5k%u)l|4{Mrv-d?${GCe_~;#c2cYri&*XD_U&PGVGG>e!7HFI z{mAv)NB2s4Gq!tqs-dP~8W1`3Pk31VTM%37BLjLOTd1y5x7gL%KZva#hJd=rs%t(v zrHZB4B*wrJy>mZI0%+ON;9%pB{wN;&7)O<^Kq)x|CFumTSL1itBXDKB&vplnpM4~q zRN1_J0eAqdE-aPyQoSs=vG8tIs}fZ21@hQCfTQ@@p#>VP{$q;#il`BBo{+Y}DU_P% zx>_#Y(#jb|k+7qE7y#n2R?c%{d7uMC1!nJ_it(R@7pS1h$j4K)VFo-txB(^qm4duF* zfV#XwcwukHa-?z44d&@->j$7pmg&%yFu5L(eh*py?CXcuzjF8f(Z}QM=RTfq{}y*2 zbO#!$$e9^Jln&a}`g8i(buZ@3W$cDYee@(|i2d}b<`##R9h;$ULA*AWVSHANr+O61 zDWbYGwtu3c^{E0B1m$zr+kV z9xZSF%<7QX!Nf-6timeG_={SZ%B+g_t#=9wy*Cah%{RbH-nqImF5&9J0U2N|JZkZ^ zYZBbE*u8}!v_g!nD>xBp*tYEQW? zVeN-w&uUj2Q;6cl)e|=R>J=s7>hf&Nl*8t&Tzh03zHlXP#SSCfnGn#gt?0Aju(6_< zSNV1|0BD1IYCun(sAHKhIRyc%kJKaq$wv8adzJJXcsNW1pstLcvth`Km-j!0pfhEw17)&YI~G-*zr$+V4BZ~q^uIG_>$ujPe3$RD_}(7_aP4vV!7PPjYWGL8 znAA&+ty(YP-jV0;@O}r-*9|~I+dI(mK8`I|?dhJH4Xm9RN4W>q?KwR?kOHe%z&L9O zI&s2&`W3sW#42AT|199P`m;DIJwo0WQd=GEbMHU1!CtuJm}l9Jtu9P9`CK;%UhYdB zhuapl@cke&{Spen;>jC~co*e~xWaHL6Cd^~FUM1v!pJxYQj|n&*V&;m0yNyVDBZlP z+Y(IXZUg)4{;r|B^3K%8pK5MvyU$wM-jyQSR%Pcfw{ab|33^<@`_7Mk$I$`+-~Bx2 zPMYjHXvHwM&+wKvE|2Anr!;LaGKNP+s3*4G|!yuS~7sj$is#pG*4r)_fP@w&GfQXHQPvF?8?b!4UV_wu_!09_y!P z;>4CgWM$E`LH|$>ni?0)u~^V8FdA#+v)4Cq3gwjy)izmfqg4iz?d z0qep$m>t5564<`YLwXzB@7!HNTM=K~Y)9mj!j$VHm~b!`_Tku6={JRyI?(Qdt=x}B zbTl&|pd0^#5mf{UVIoOP82%$xq56LEI(g=*w@ zH~up<8$*~A@i}GwK1~kI#J>rvnOZPdKq*3Ne-CzWZUVK%EaNj1R^vyM<}cbH_j@Z^ z0l9!Q2p+a`tW#(R$-e9Uc}PMvqiOYtX95PW^aHI4Vi{$;w^#%B@37}&1GMFV22I&f zwe%!VANt|}?8CqzDu7uaM#8Gm)!+u|OaafzpI>)Wr2rhXFxOeblLhhps|}M2_sie! zhXPS^? zl31$%Ewk?OP+e!~i3{8SUhvtEE;)sPfOSN1pU;w*k6W=AMsu%Bc@XcG-kpNEFt$Nn zKINq2;vmdnGnOQ2mL-fc14b@|Tnbrv)o|0<8VjpH{&^NHk1gNz0FXbMz}A4caEoW7 z>Z%E@e!-3%0ckw;-SOOWWK+WnfZI!4kmXszg-Zc28dzMYI;x#PFQK%TNOqNHR8Lj) zh8|kNv-`;eUhV+z?K3z;sJOzWGl~co3MSu#X~*nM>IFDYYbp6Kw7O1xc zT)N1aSS)Ij?6>RfyIAWF)Zx+FW&_WMV;dK)2Y&yQW>91YzzMR-YX{cnx91=4=UV1z zx^V5rzPk3c(c0MCi`u-54|Q>&QP>wzFCTvCQR`*ztt7r|9YF!IySuoBw&Dv>4&CFm zmkT#9kYhln%e4f9Sr{>FsIi}~1wg9Wefd3h+Au|t#wlEYV;ex2TE!zDkxr1%_87B0 zX;Y9S&y{SG(?KR$794cqE2i1OfNc7+Ue1@_@%rKQA6x7AYu2%TPSyIMHnR97$qzvP zQC$4R;zkt@lV6RUvv*w^_x_wq(7voMFtCZ-*5pKM^gwe*Ew! zysq;{VBh_6fl@@_v5NineEi-IU%dVcIu`0!sMpj4Q3KwE1#HF803KI&Kc0MEPk)(i z?B~YSjqAG5P3&vKXTorYHLRRBq? zExiD&7S=k>9~Jf=X~5QnboZQcmnxF5xjuH+(Y^+Up{Q=(w|;R8@=GS�+tC#pF*Mgk{s2v_b-23&)2u>dI&NttKKTNlkK9r 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%0A&RJmn8Pw?0R=tDel`MVs$ zMwyopRX4^oGY@0kLS<~PqM#=3?P7W>iGSPAu6D!e)%Tjk+&6zdCLZ|}Ci%3yKhB;# ze-ngXwlxAGr(?`(>TLtKw|>G^*)J=|Tg5cAr^UkXaw?|q6*6WC_|147@a9bxxqFLM zx~}#A`sRB4q3^!??jQW&`yc*>TwT4fT$;n1L=(qdJ6W@RT z{a^j@^N)Y>-uOG}?eX)1$MXb$TzoYd+k4iO!fjcxp#|&}vZr8$fNDLiwMG1WU%tHm zgS+29OZ?UkTm);A6xf@tgqwwT5Ut_^1{M4H_5Gjz#gE_r1CPh`v$}@d-LCnFpHR{w z$)!ugt?suQ`zLB!=I|=$Nz4jW_i(;9bzQ&Y(g=lG5c-YOV<}2v)+cCX!|lfEfJIG@ z80MZ9O{A*)PCH#LSswLVU->&P}P#xCLB}PPI|9K9B8fnD^%TEj|Kj%0H9TO+ZTgiJ?^JU0Io+}*W2S;KeWQVh24dcmjn9#59z*uWl+Z| zad*v4ctK^rp}QZhzhc^|QS`M((iM>1;I}WAV@9gpo9>6SUW)yl(}oC5lsa$(BUvcx zXVR`gaY3~JT{xcJ0|EhfTMI3tNZk$8H2sVU&0rLC0S(+yWtUR_r{_8}(B3l}GaU#b zlZzTMw|4vgas!)rzTM6#AhHnV^+b?Xo}SeYC}7E9;nAp2tEKGV&x4a+K>@dltMe$hNuMGENcnw-Er;FgJL zG~-oon}JoYItl>;h1^XRR3rBA?gZ~lNFPGy2zSKW^{@-loVO2|XeSX7v0Y-oX9MM) zURxMz9Q2EvI@2q(ircem(-{ZFIkNbi!6MXUC3uGnbq z7(@4K3dH;$kJ#>*-G>xZ@pU#+uWVTv-aTZ2&+RC0PrCxRZ<{@Pm;02C#ntT}8WbjD zbTkmoO)!(v1BOreFn!YOmav<`7OP%9u<^OwV`hfcY!&VGUV}2QrE0X_2;asID72n3Utb`|~LLOF3hO zYggh!p;lvagH> z%{{@0;9{A9vX7g^rowTH7~x^Tud%|2o(13)(jbeOXK63{a;)g&WB6R)GWI6f@4ZHJ zOQCc_n1ad}mj(H82a$aFg8>?g2ysGS78zTaZQQelIEi33)0bHA{iu4l<|qs(Yhh^z zu@3er&g7t?OK|PFkh+4EJ%vm@UhbDxM8D||9Njm_>*d)G-%ADS1qzKfzo(wCl)5CO ziYH?lXW}qB@{SlO7~7yT0F0-k*E1nOs5dffl2*lQj$6z91&MCGtpx}h7rcwk*6@U; z|18IsmHY0Rlm{~*=taix+0xReW?<~x=l+2@Sm%y?UG=N3%(cb%%Q+{T?6hutgEVhz}Rx_hszLJRgx+xBk9n2xdrk9YG9)Su>0pUPdfY}nw->TRCnK

    MDfOHPI<n8n{+) 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%0DL3gB>Ei4ilq8*8zyQzC;eCudS=GtGEX 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

    6P42bvOlu|gr@N;*-B-}mn+iAsebaMBJeOce3 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

    N*)= z)ekitC(H4zHW0Xfh3p$W_#Ts;6H~$(B`=ltCJX@YoL;44*{r zk|ESAUL`Ow3^MH80b6&O)!R!Q)s|v}$p8&}uo|PL>k6=eb-K^3-X&pDLifh9I_blY zKK$#M^>;lzJ^%LO;dXrEo8S10{_KA8Vemp#w#dy5Bq4ejLf1i~2S(|ESzmWQqy6q% zHDTb!JD1v%;36t;b&dG4 zS=US^G_+EN{+zKAH3>3H>D(cTN-C!N`^VR>|AKP;XP=&)KRANF@cgv?zWe#~y}|jr zAbm6*jzd+8gKrq~em>v-qg>Db502aa{b9s!;^DT;067uEy`G<><9@*E(2DB8HX0;s z%!H1=yXKT0e&YuG{_}i(cz)6!j9LE$VEi5wzB?YqiL;)Q_!7Whfb?g_;J-OJehe}* z3nQknAk5xJ;e21sMtKO;s=#=RKXU)-{-4BLe_dH*jCUA#1mib3j^EtQg4d43a*fLF zr_gqYim?M!4e%U;E0+Gh5Wj>b#1o8RD@p(_dzlIsAupQbHEo8Zj=`>X3{+GV=6pb% z`lD-||0yy)TTkaYQLhH-qcKOkdj0SP#iv{YV|XWLb`lxoxbs_xkFW|g8uL&SLwb(c zJ@g)EyC15K8630yxpsEY?5LIKb=(nw9KgsXL9}8}%YgqLEQcmuR0rsO!i1cnYmuHR z1F~;_1Wc+jaEQI1EK_X-s;hqYOwmFkblx$%YZ_3*Xlr2K-=-TFxTZWv3L}UvDt%i4 zD#0;=V+IkNi!97*c)Fj;hHsisw=vf6NMVz7_Iuf6S2ckk{IwAq%iJUw!8n27{*v!o z@EF@%l_p>J5E%iKhOPU!dzr2`+m^Edi;d|61ZF2Fq1DOgT-NmwvB?1)$F6~XS^c~U zGa82oTG?EHV%KZNrX#B%PMMfpzzeWLHsF;w5I7NFWs{(MO&0?*JjFNm;~=^hIshG9 zNkrM}J7(DTnAMXo_@B4rQNv%*ha=km+`jhMuZ{pOiwwEIA8y#R!P2gU$E*grh7&t= zu|=*aYa9kzugNl7t{?jz_|U^LS7XU-li(kYK*FZ5U{Jl6rmN_#FD|d#eu5hG#0~08 zXm2QSx|k;~@Ul8MMBrki#U4ti*)ZK$=CD|GCn}aLWBl6bh6x4*6wA!^X2W8C7P_f0 zdu@HPsL_L%v6(t`fjbwn(gkK~->(38SxZS~#D}ouL24Y0qcBQH4NMxea1%^3 z(K{gQc(jXrMla)rrRF5fLWAF@r;`or2t7*$#%SOV0I(38{ZrUJc4kJg?H%?I%}Jwy zt>_?_{&_+G%Eoj2T)77p)eUh2CZjxnGDEtP(MGY+$(ju+^%kgT;9)3w>g!lABr_?x zu?7VupYNG?@UK0MX$2vvf`0^Z0d^Z4<=>MHok63=+O--}u{Fd{&<3?uP zaJf+R=Q?(b9c;kB;QN434g5O(s1-G4xko0z19J+Qen%57QvDooHCD?AKNy9?i;Yka zy%2TpG;xyJ_!ZHXOl?WEA+hLqS|tXlVhzMdwXVX=Jg+~Z-Mt5_Zo%kg%0)+LZMuk) z@20K$#F7-M+8C|bh!KFY^9R6%&}`6U=b~8}3rsSDJ

      h#*y2w9%8QErpz{H4sb| z!vlsGH7b;oZGF)B&ejk@#UOJ@wag@petrWpR;=>!JDVLA!5E~Z0H#=0!c!^ORw|}! zhuguMSWpd+mW2mxrLigySR*7Pk!-eegtM3%exND`=uKv3!8jWYAk=dP19>WWpIy+) zL_C#81_CEgsP^{-0)vaGP^@B2srFz#0LY)&_Hr2|R)lkF&V6g;6Q02wR4bGkc z&BbuiYY@M>i0fP)y2|HdX|fsc0cM4As|wv)pawaLA~|xQMo7R3GA4wTg)2sfb-~yb zw;FZvf$o78s$-!g$R-aD@jy)oPC(8fJLdYAnn#VYE!gB!WF; z3v5;iC$ZFW()TQD?8({BtQng+{Q2kU`o_IG?2&s{>$u>II7t(;d4TDSZrnsM%$c358HIrbL$!t1ZM4F3ao%pphf~UJ7=3E zR$Fz}>`&WtxmXgYi|vn!Lij^A_yhqnNCi|`3?8bktE9lpKpXwPorICdWK(Ae+DfDfb4II$qvx%ZYH5LbYvv0<{Xiovi%Uj&q6@KDB5d)jNz zvJP-0swT#!Om>4)tr*Qb5e$}whJ7Oyy?@K`IlEEln!CXeX4l6RKo#boRH7VZCdiXq zP%m9SA`fy@5g9$aF^cKCK6^-82f(ExFwW8mRJl0=K-0!l2(lbswLC!&6Ly;3Qd0{G%H)WFQKPaH9FoK!l&bD`GCYPhO+ip>h_0S$``DtaeIbt{8mvIo1u zQd=mfT1id68*G9Gx^RU1R;u%Kt0etPpePSrI14zNMAD#~^-K*F48T)$0Yi}~V8r?A zgU4U5l$omwh#(b|mnC-nq@mbDZ1vBFE*3hf$q6dk(@9;E(`1V=onI9_8!pG;Xhr`S z&VN~;;#H@kY@DvEXOI=F%s51(|8&~+3Qgu&#v#~eWei{~_kuD&=;Yc%5l(nQXOLYL zsA*LY5oWcTWeJcPgUD3@szNKkQLjIEcvFgB57n=~njb+*EV*W51h8swC~dv_As*l} zB4P@)L`F(AwuJ;=NRlAC7jtc77IXvWZE>L{Jvf#J;??b0tNs)ie~KjX{tTT0XUs?} zvBsD)5!n1Q%&p*+@r)9?_vOwcN{XRSApTn2)_;Jw!75pIAln{f-#3#~!oMRufEw)D zjJ$?2>><1{9<~CUuIEG(BdY+$Um36GUy17BPrn;&`rI%R+e8HqaTn6Ii8}l)W0~|R z?>&hFb{OCdK{esa_4|l{6+D6U@1gkbt<@^Kj&BdValMi#E4=FHy*Zp%=pp}doZd@F zS>8WpUV_U|NPp)3{H!&4sd@A+bctb#9RTGlTF!Qb?wYtK@M0V}bphv-XZiLmr zu}QG#v+qkbMo7}Xfm`sXTG%)aU8fd>hcO5(i38POe+(02cif9++83OJ%wq2trf5QM zwSv^Ok0!q?;ZL(p#1UgIBix2X^ zW^t7InfSeDgWBw*x(m9%C=nxS?EMr4#DJ>ZzUF%ke&HfSrG&k=ip2}EazDEXq#4kvMS@;89JF*5I_=006QdS{H8E+_h$K`(&G8 z=}C_-z~FEbMynWHZxhn6|8S$h(N-j&OYo!6jQs|3)dgV}{HOZBGr*kvPcGbO16O@A zhnecNuCRa}1WbC;I~oYQ9vyut0kqtbAZW!CCkl7G{qid=)yHR^e-{*g=+&!Ne;@`w zy~Xh%Z=;SFw^FPao>hPO=Bpo2_(87twWsH&zlf@TEdzh`A?Dk--SCQmwC|w+gCkDF z=yPCsr&;U`&I}h4MyTB6M(%Sy`U`dASK*{|SuI!|SS7Q#7JI_%vsA-Ag`v7sHTL)d zum=KBFUpTz7CN~B-2(_OtF9S6pc1Y+rtd{``YEsrq8DJ_iWHwszvJr0s2Ra+|5RWr zHvsI#t{^t+%W9Km?=-M&fWHSmv4Nd5dp+7~Indye8gS}=AAzm*2O6~LSh?A*?tRi; z{}mWvIo!;aoi!s}aAJ@09stLL<|AosG{~{i5!-(S5g3CI($;f+u>F1ZGSK%M>6z$j z>?EgVN_t=c2Y<4`crzZ<_2CBM+46pHGoHKQkL=jxc(yg)vkDm=#0hQyBWQ+fKQ^-fyJbJNgItR=nP${UWgJyij6f)Cbz=*Wu zlvUfZEdp9q6<*@ZA~Jfx;$WauQ7Xi=bk(3?V*991pTR0%-26<2mK64j6u0#eOQFg} z_kHJvo8E$oM6ecX=Ne&T$JeCnp$bb!V}faQ*t)rpnKGDL8C@nCP*un*#m;{)fRG+; z&JoO1ghE72R;>l7nYlD@8lJb9Su0f)y*y15I9x36NKO?rL)*SZ4U$ubN$}~`VX&Dj zJ*R+@!+2S^R83C6}o&B{V$d%<_E z;Y*c=a$dr<3(8*gquHC|Y%nqk8vup8XJbaT z^fv9e4nkNxNC2$1LQlZ=-lxuA9r_76cT>AY#$4Q!Hs?HeK<=fLlyv&1s1*)TH~^mm zH5f=3nTQ7L8f4TSC@DMEdunnmkB`L4zBkzFv0=p@2n=X5z%Yc!CV@=n$T~<>D9Yw> z95D_tF_0`ceLdVY?V;c z?Z;@cS7BgG$~Iv<4HOt?nFElHlW0{{4OG~&XbmfR0eJDTl?{soV%X!GRj38TB(o%v zqHM`ihX>SlEvfEl_wNn^dQ7wH2hy=jTEk7?xCJ2OG|@tt{^!E5;^Ampk$vXNK#}_q zHJIpJ74~0rb3D`lZ9tO0`@6WuX&@rUI#EGO2>@^uibG=Ih`x_9VJJx8C@Y{Oa0)Y* zhkXGA3xNY;$o;@{FQr}WMemHNU0+mXz7R9ifKGQP*nGny{EcI~I`(&8N zs8Pvt1X0THKn5EG5caNxAwknaoLs;R=jBa)RX3n}Z<1BPfu6Pat29H7a2>qFi!^~+ z2BAQ3xqqrKqg}!kGcIaRE2_c+8WURrP!B`5$|Y(b*+3(94a*VK0+7K~D>#lTr@M?5 zv4A+0NE~RTYI({m*Cm&cz-a5ku8nQah-){5SQyu&+4U*uS`yW@`4oyx1Op8mwq-$g z`oJEtmLN&aAFf}$2d&zg%K53=XV;WYIzCq+pn6YG{|i3L{@sk198gX`kfzl#YxlZs z#}K$cIBjyDs&~KBPME9uQ(M8bs|}>{Vg?Z@A+>AdQiO2{GKq; zgg2`YT-{{YPEWAFFM(FJ>&cHK=6l^lqS>wK}2C1fgc>Ht)sKmsrU%rah@Bp@f6Ph>6O84*Rhj5!<~q zxXs~#k5jL`$$ZNKOtI0SGCD}|%$s}+H9E?cvCjI0;4iAPz)QUl}UJ&wreXm_p5j40Cl+(Y=wXcK#q6O z>_vv}ULi3VNQ@bS>$pw7zgCiL)Pu5umP41qoYnU!s)vTHh7OZHd%`OdONK*#pwomD2G*kMEsGNxJ5wUdi;d-a~1!LqFk8&^Yx7!0t2a}d=6{!tNy z1?P&5={1VHa!taI!E@q0yj^Mrv)3~5%z2D?fx zIlaN361u;0pSa4o)aR`0o7hU#!ju<=uqXCK_v|WR4&tmm%-I9!xSsXKd)V#B##YIW zd!0}A#32R5@UTcb$D<4$1)}ZCy@95fOA(nG&BoG#aBOmQ?VR4ZLUIBNwJm)0@Fy|) z+^ga}qLn{e^>btA!t&tU4m7AMe{F@hz#h^z0T-QLi%sezV)$J73<_9X`)IYbXZKeH zD~`Fbon|LsSxw-J2BveqEm}AE-L)o0L9iU6AYj_M+~|lJI~edr1>>Ew)C{GKoptfZ zX^%}ehyKt8{S5Ya5gswhZJ2tY2O|(Au$kw83k(idH$?{^pV{^mbaw(zntjA$qg>6h zX3HgZ(;zdGJ^~>+6%npj)>I?yj z=|KWEXiyEf^^m0GVMc_dDSLQPXnU4^Sxs>8^Kv1__X9=`2e^TUoNg`}WYEP%^x$Sw zuM&5>{p#&MkUIbSW6t0C@rR#&@bK_39&X1jbIW%fd$b||`sC{m-w)#ZfPRml(#rAq zS6_Yk=FQW;j=cZRdHdkkX7GzOk83{49;PVz^Xml1e2Glu;+Me7=N(3-&6sWr8b+Tz zd*d!zlBi01`Y-z2%0WP}FPa12_M3}Kie;XoEqMTn4WPjiww}(qbf;zXY?fgMXG39d zaNz26kDf~UcYEu12Sc`Wn*epTw`5)43p*jw77G;~ZcMuIWw;<=OW0eRqpG770GI38B6sH&R?%o!)ecSO#_$b;0%R3(QZHOCELomnwLYm$eGXADGD6-JEL z$$Vl3ZHYA3s*I{)sUB{}!*k6LS3LuIAjT}6_Y{LF&iNn?oXDE;T<$olWR+p!#-YL} za6KSnMSzKV1~oEO2XCRF<@e7xf-00GtjszFhp(uUToH(cyhD0a);PxTg$6P*V^JfL zw~8txDby61L=(lR13+YI0eB_hIBvI}+PZ-^LZ?tircOXd67gz0JS&u17+~Ee@vx|+ z)UAp<9%jYB%*8vDA~~wevy;S_3~HXKyiI7?0&J~CJa82_j)A~)AjYZ_qcAG?6_GQO zaoi38IH_XTD0m2&>#Q3XCpkYE18*TM(1sL=I<%Avb<7cp7}Ye{RC*DEq^aW5oQF7c zFYT*H=h`r=!6u6_Kq*^k=ixiqo9qtpSqR z@oF`|X3!kN@dJDK*kBE@8Aj?NvJl63soPo?JCLZ=HeT$(z>bkYTbFd4i0PqSUA$%h ztJye$8_u>M64UJR;rdRaFcFtRZ=)-gG>3PY5Qt1D%yd0y%bDXa0GbJ`^J!A}=v?*5 zx$fUB;FDbIqXG(*w-6B{YN=9HA4;Kz$0NNWYCK5KPr*5}RHeM5aGTTSlZ?ucRH5KG z5?DNeam-^tS_Qp|RnWny6VDknm8pl@Ln7iHm7W+@+)zqdLvobYT-*WaVod_4sv;#F zaR3vQt8Nz6Mr7rRRij2=9@B__RaWW5zzxYKK!(n149*za;v&Rj3HMMvru6*ycoQXM zGN3v&IJ8m-vDUhc@j4jwR#inUDUO?zPgY=Za_}_}Z%7fD!5CRpwW@9sa62X$Or;`X z-BYumEEZp{)R?ze@Rb;$dJD$uMEls5<~2_Ylo*!bF_QL>%P|fzTssQ7qj)S65(gi1@Q1H=(AQ7kd_AmUAURSy)3O4aT0b|a&xGNUCp)>$hC&djP&{HSht z=2@eFJ4d{hdH#2?Vnjp?J}EJvTn%!oGG~=y9ES)lV11O*yJ6)p1)WuhhudM<&M9)@ zE(3LUKCg#0$QZl@nQ1fZCE%5^?oeh5^EPj&!KE`9L?!uv%5p0f4xb9BHgDtYRQxPw)xiS-QyEAt96ZdLYj(94WVZ#T%UN3tHQwxrfC12m z_A%b%s01Ry%LM~KxjD`zl(0)Jo6ZL!o0%KL_Ac%v(dK)JZg#iA`2tIIDU_sY7H}ZB z9B;eCCIp-U23IqmA4`Lwtj2Bv!Yp7-BRJFOKtnNImo=%<1RSU>a=Oun`)ULDt|-mL za(#QLw|dZ6O*FE?$l!}$f>(Q0wRMSWICE13sLeLFon`JIYk(0=tm!ee)xg!nlxD@d zx61BGow(Zdr7K#8Ad(h~d`=UT~_3z=0i9S|NqlZI`klmK5 zvhyY{tA|b2@?MAOmZjgl2|dORs{PhceQx@^jV6Q*PUpeyf!f=*NXy9LrP5yvKA<#^ z0%t4d321|wXwpP~K@an~?lxxYAEgr^+A_3(LN4zBF?i^oA(;pkESwq`Scn)%8Llo3 z&1joTsMfH6y5o6GnZVXi35phH6@>W&QR*<>L z64xDsK{PLV12eGw{@J7iGoiW%>YC6)GWC#Bz}O0iEEk+ys}fVhslud*9OS%aa%XKP zjA|^cz?#TNEBY%NKsCl@eUa55LR$?wHzC9&Y+v;Rmw}TgRnalk;+G~HtiGrXNRKj^ z#Iwl;2iyDN+NTt%N}Fy~jFVd1s=EB$jT?;&TT*KI9u@&DtB`uQ=<{OR-i$CZqZL)=1||3e@!X@BN3Z z&|Mpo?kutg0SNav582p^XAQ&#cGhd?Eu)v2SgUc$Mxwo692 z|Byi$ldT+Ua9MM3QL|6)@bqUbsJ-f^B@+cJ^bFeA!AF#|w8^twvTy{vGhDpg0<* z?OKBV{Q={*+wM-?bK&SSquxu(0c5>csG^@qpBiTx59n+u*Rq24{ogDkVtSA^9QT-k ziskPn`u&>IX(Fuv6fwzc@Xo=398fRkV6gpyd^mkMx`_i3^bS+C^@TC_5A=ymz5 zUA92Wlh-Q@)bj6( z@j9#6Av}c@>RVPtEdcOZp58|IbMp)aVzzoY??1k1% z3FOV+D&zos&Umr30j_hcY5&X3&iC)~-%qMfqI!7Q!xQ;q zRa%u{S++~3fTyljBzQPb)kQ^@SB62xCi-0R=0RYEr?>%_nd&@6`Y4A1oZ0UF3 z(6%0OVUk_YaD#7dE#1TnAu^Efy&uVi0LXs6KGzXIW?|i*U&R=|u*-H zCL_ksI38{{F)(l7z$@M(hD}ZA0XxuCzCpfwdd7@689MTm$4N2CD3Fs`YmGJ|^e0wI zBfKy~LB=5B4WVfQw?cwcEQTmokO}ZmD0nh80EVSHnG(bz6%19Ta3DspMk$t16(f?u zjT+(*E44&$1P`*97@CrL$78Ami9y8Ds!=mBD#$2ifg+0)H6mG@ZUF4iKZEBg+zf}B zR#KoC91LKt;weIbHNab_w-M-ee&R3=kABWeoc+Sq|Bc!DT29_GdRqL5>Hw(;1kJGQ4F~?Cu$Lh;uNtcPhJmT+zaO@ z07ux+KUqOdyKzCOieP0Z0%L@zQ^jLQRTNn+E-Qj;&<_?0(87|n!Mzz!Efk`1O-c6! z@c#7t+2>!p`)Z8&gRK11uWq-0_L#SS|8~1Q^VVt^9v&(-J9IbYq*)`Ii@qDtoku)C z>m~s(qp^f3G+5INpljhbTIC_z0CxSt)A)k=zMJ)DC88Ue?7Dfn`G##&a_`G2*E!J& zJ#?M46Pp@jliD{jk z9oV)`>d81YvF-2c*u`qc#6+tYTwgd1uI&uv0Z9bz@1DoK?%(~%XHS0s;D7!Y^Y6Sp z9N(B@eDLbk!{ci{1Y$<66J#(LS*l@rkwyg)66r-wZ5{TZVu74wRk27(bq}(}n4vR) zU~p*GnRks5rgEbgHG)G~sc;c}YK{?ARSbq!1S2b{I54ncap;ySff1*{ZlzQHYt3~CBIQ#l5N z8Y2ZnuF`ENN(YFnRSJ^}W|~@TqqQ-fAx)MfZ#$c=-O5z_s^Da(B*e&wb7~C>RI^P6 zLs2!-gD7>eMVft>U@lLNk7;U#-OU4X)(#TJ7*w{(ojUn z@*HxARH!+iT$dWUdHW!}Y}WRJZAHYcrRmp}GB~kW@1pCV#$_)+pTickw&!rY-qQv| zyG<3V$rkdIH6{RCb`=2c)dEz36$Ud$qX`#dee69ngbI&AMwZV(z;sHFlmj$F?I7Y* z*SwqM-koO?S*m*~87zqDnUl@>yc$L|S*=;-4f2{$)K~zpi(Tg^7r0`S6>c<4l_5+8Qm%)i8QhW4d(zZ> z0eUBdf&*o3(#~b>e>-Xw-}{_E_sx!O_L(Ldkjy5^806hHWQ~no!xN6cDF1mjuvw+c zp&(UYneHp#9^fOc&I{-XSSZFt0&05xH5iMHbqF5eZxC+OWdUV{n}^}7LiI5I0&{(O zdthN;^Z?Arx2N%*p+R7K57_zxcv0+OGfvg`Op`Zb2*%$N3!%X@=^;DEmobFqmzue{ z6&NL8vrGGa?`6}aQp~)pSp*{b{ZxcTpA9qeiKvQ-Sy|^AO+2e<{6(#1+T_$k24hsl z9n=AW7!P19NM%cnmEuABT0Wv zj<%q=>O0>Y3m+yHOvWwIn;$NWLTCgRP&;=7dQ{LmP^RNd@1{nK0@i2}qRDUB&(ew< zbdTyAMRg8{wiN47u=iw6+Vw&NW(^PvrM;8R=Rd1e^#MR_7YP99y$5Cdt%{z}PGUP0 zh@;BfcYyvmE=5hN@lKe=8aC$O78?v;JL{VX-)rLbV6oK!7Umr8Cm2nF9-S5Tcd>n? zt&I(9kT|=fZn=RUo#)nOc#k3E;!C^+tSCnUOfMD|TXk(@JJ7^Ycz>gXlAA>jyHr?+ zVGFV*2pS)C1aOKm6MZ97+GsqxV5-(2cY2A&R@H>+Kx0rL@`&lI0SX!|DyUK}#uzao zl^SDM6K_R~A5=@{492s!Q}1CwnbZrQT^ZcNq2CQilPepsws~>crfL;N#D!;7HzEV< zeQ?=(t^~}$SjN9oUH!HC!Kyy@mxjtrwzspG;|X@(1EV(^=SADC#Ua$`xFT3#4B`5| z3in&lXVkR@+mWMtL1p9R#&jpaPOkk2QP)FsG4C(QK`*B2>`65{peNbhJ!OE(lNT2W zqaThjM;96%qx(`grKA7eU~+YGS%3qe*#)k)WGQ~7KSR*d|90pC$}iUq@Ger!*b}=@ zEA5Ep%dP^a3;qxL*Kj)|hHhK*( zcJb285$#Cbb^sAxyriC}`yibl4hQL^2O?Sc;_a7zBoP0TZ+-LAPjAPKB|QO}WjIWI z1qgDo^B(s0(clDd4)O%52Y^9g4J*WkUVZQ(9$(cjzI%H6PyFP^Klu}n53hga^#>pP zyNlUA*89-A5SsK>P;ZiUNL9hMW56JdL5VFMnc&kd2|+*`D|Fpe%tyI?D} zJ+vk3<{I?Hmq1!h<{FAk^>twM1MxJM4Ysobc!lM6)qpN{!Yo5Xj5IJWFKxnTxluGJ zr<0;RyH_g^+$^|-G=}R(;b*stJ2qo0cQTin;c{TWg&yF++@6YV52I0NJDSmBu^x}) zW;|GKr43+pBjJjzmu+SjRGZb&h<~V1S|!WKJ3FCr+~T58~Bc%VioTNC18QFZYoOTv#ipmX8vyQl8~@h9Hi zpZ*ZZkH7Khr^jo>IfCA|h7wD&$V73);2!1;0C%`2Ie{1g@X_nn>>HK1;q1zZT_)y3 z&+B_imG;Mm0SMrL2{QG^Ny>%cJt ztT_wb5zqxR6d@pROAjzvGIwA*)ZfZOFShHmIgoX2~(%mQ*WOP<*POgS2;|2)j%!XEb8vKwZ? zmaT^fG*EffF{Qw4FH&Rx!}S9hR&xe{8qJJ#+-5fnn}mUF%TOLhxEZ5uEt*kULx|Ob z6BK6mu!Lg|x;#U9k>zN@gqf!;TorrhZB774ym|BXZ-eqzg7GVw$M5>NpZmr)SJvJ3 zD4M`H`z-mdU^UoLRB;w`}fkl(7 zo;*dl9g4=Uq#{|s>@97Q&@~sjwDx~?v)POg--FYY&hFXOqU#6<&lgIv^~y(M7~Wkz z`?(LAlYas=M4r=hQ65L^#&-GV9<51t`-I!|oZmV7nY`8Ow(jxbV}`uN zy2yeG6A+ILJrbZeH~%>btPpNcl}6xfgS{as=`Q^a^41h0nijzBVn|y_-B8BO?xt$- zgm3_$m}w&=EVsfN!fc{1uz(`~WJw2z6(CbBc2Dug^s*Zf0Sj)#GyL>KcYubKB&S%{&GgH1fZH*~_H5 zgb=`CyMYD?_VPt!K%=}!w*fjoiQ4pu-*Tgc{2bIdB1BardqGVLyGT&dQWUVn9MmYG zg~HulwS@}W3z%k24%o-n?U4UIAh(={?GW zckg7I(R4StS!Dn)(q4im%9axZyyP^T9~HyTp!@G_(W!o3uK(E}r(dAB!T)wvxB~F% zGvl9?G>6+{pJbTq(gPSF&Fld;HWJ>!un3HFahuienQT=}5By1>ce=#>yn0DCqndhD zW?ln{NnpW7k8OzIpptF%G35H7wt8g^VaU6w{Fx=Y((ip}ZkD|mV1(!6gOkM+%Ddfy z)8{}5JdtZq5E^`L08+LvQH3gc*U_j;VYqiS&2-JA?xHezS)G`r+e5SRUWaO|OFh`L zGG}xk?R_=AP0p@e&)MR|z$)U!X`)U5gRcLokYnRJ?~(q-%^j*oefFGm(C?4b_!KozH@{jU5fNdtoHDT4a*mdC-}DCOvd+FxpqEN4f!M z2?V1`vl)M#oitz~1!q=)1FO=x&PcN>5_z9XHDEvCd#$!5t60vpjRjm}V)oBi(X~8Y z_OWravZ`(5w5{Ws_0cgdOWoJ>z#F(?-9j&@P2Uycz6Cg^o&-)1YMN+(IZN>*2$>ZO zW{FLR2C!M~oyV|y2Lf6|Oyggp^KW*)B#d^iah~n%g9g%NGS*PgDX6$y|Fh z0X6`dLxt6qoJk8txZdB9n!8G?-7EILSIvx;zYEjnqY*rIaE(4<49hhL7eHR#W3ZJP7c<_VfLDQG7nbaWLwK38p_fAi3~xI~ z4$RR7Y7kpW7tLPjEV>(pmmtIb_jdK?GCi8lI2%)q;MPv5;i-~YK!KKnc_Zj$BoAk-meQ z#`AAaxo-Se+~`R2=i?&;~>KlI`258uqk zTYDlBV+@~F2r>H{jJB-dXf}fj0s)AFO`s%DzU0z08xsaFQbcI_+_o^(DHrWCXpe9E znQi+6Ud{|KliV(7UF-s8VRtlgYq)!HnxPMNy9o~lhRl!$tC{}v8E$6%fTePK$tAmt ztp?b|4MaIOx)E}XyNQ{rC8y}(6=Lr$3|KLA0H|h?;{yEm+d}$&mMnKfcv!SOSdEOU zJ=y!tUYJ8KhgAEuvIiHQ?0_o~5oCn!iN|A(5- z0X2txW#PiiEVRDM%|;mw-0ul8cF`^0W$tCBE#>u0+f0SQa#m?M*^ay(@@$m~aiU&+ z)`+$qa>KV-QK)95?D=(~cQ^2A`qVykdtVAV1|Ee@ilx+ zl2WQWh#OUd&Tde!xILrX2u-I#d=SDCbP!q;C&&cr=3rL~-~m}&&ZflmA|5I@p#iG9 z5gX>^0B*3wt57(^BpAuzt%D7+b$o9oxvDDsuV$Bm@KOkB`=BA zprVGeoIy5cE>c}Ff(U9XlR|MQtVtG;(bM}v9TJbC804aA6qU_2e839`w*eete;?oR zC!ii6G9qr0x{er;P$|U-yV%qHb7y92a?0KUl7b{2HiJFfU8BGn)NIzHpkOIE8Olo5 z7!l@p%>uiP!=yqZQ<&p02R$rqBo?8`;=w3I^aZk~=E)&KxN*DtG6~=j0FYRU(PpMR zAdeV5-_rnepgjm1ig;x{G;aXxx$0e^=zOnWh-3$*CwuE`SV2E|s+dniaC zd#U4Ai$x%Mp)gox6J=cSE&3D@ywW@Ys6n!*0yr+KhJcIt(I?4doNiv}eD0kS-V3rB zW&Ya47~$niWK6PD zw&!y`%REuJ@b^(pYqHsP2=HB(*=7@kKntP&Km);=C;|_Db-L|$ zP3CC9w+J1k4}%^SsIR%u#qm&th51y-D>-e)ZeT7DcAJf=OvW721H*@@{gwNkbCJ6F z{nEGI^J-rRsftGRA(hA;5U6C}--P+#L8TW4xM6Cfs9oE;!U*A^gkkx4$(uH~LV7fX zX`HRe-KqGLrMDwca!2o_6_Whk+{1`_#W!^Wv;Yhi(=iMc)^EE>xCS@^H69x18YE`d zeH*h|5?{G=(F2JS;sb~^yeaZfaL`-lhOrM#S8cT#W3|jwy@e|LxqK`n6m6pxcm*|V zOr)Wg)|9KET(JN=!uD*M<6(XB=>t&pomJ;QvR3`E&wl*VUwypAf8*8bkN!hM1BXgz zIexOqGewvnBzSxk%kic0{D2#2?W;leA&`MgxopH<3~W-3L32fcMSa_|1|{uz>^_$8-YLE`r$7aYTNXqdC=>nZ-)#$%?t6$LpEk*Dlh1}hRR9pJ zE>7)U#bD=bYgl5R=l0YddulsVa>n8mwEFiqy|tQ@$5zv<5}clvd`^d~^g#Du1Q8V~ z`}+g#FUzq7ZG#0BCMPmoGeK=@m7NuuO}|JCwN<2guMYrKtD4Xq2zu{L56FDi-1BYs zix7M9sPU|d7eG(4w_Cwv6QQjbr>%k7v<6X$n$avWI6m(CZhum2TjCwoqT`77@L6$0 ztOoG+;9#J(CkKITbE^9Ao`CwDCULBE_T_ zpMNVu8{iCK69rv$m_R$)kptR}BqqNZZ|w33y830`R{!`m@<-$z{(1XAH*FqX51-Y_ z0wWa2bba264(vS+=>1}eO`5#+lWv4A0$Q8V|FW39TIIi=4JVss)p=?RXq~hw_##LE ze!~N{f^^5wR9b{_OcVV0awjSbG`BNH^mF%+)&JdR#cHDr<31)0y(kALVJ#r0b6O*1 z#vmG`F1BMtIoC%&i@jrK$e8hE#RmCZ04{`x1JJvT0|K!s^EP6-0+0v!f-RPT=&fzW zo3~efw3V0#h|wg-twwVk=uNw3#CxAKt{pSzvl2wHZM)_7?7?V4IWRbln|2n%2HCMO zaoe3$H$2tv2eNAevjo9^p~F-?BD)X&0E=tb)s1w3~=;>w13X%LkD;PpyvnCm!JW*Mvp|8 zktPDuKpdk72V!aML;w1f-k=&5H3t;7W$?wVF!@*J~XJmCG?|{ zKgsASFYGIR{doYErn$%sy?l0!@ZnwRK?RzHQ1&vWFMKvQFv*u?hI=65Y~v#yVYYVL zsr=}NKmNN3{l)Km_uIek)x+%|a#Wyz1thZ>629_-ZWMOMCkke`62R(4(MfnO8g?__3WiK%d!2f@qziwJff~}1 zfIz53B!<{)czU%uL9|Gbw(d|3bmHW~#wmKB-7%~0M-_TS&I?s8UIuy&AC6HT^z`?P zKH3oCw7{hT&=^1fi-k({suRbxB;82$-9&^>dH3)3tLsPEgNeDP^@5k~LO=~fn8oDk z&!5!;CSgp1(me0yAB%DP@YTbIf8?VNzZL+V(J4P-D4=JAR8rMMmw;q1DCMRGv9v(j zvznPmftcJIKl^w|xviV1i)*6_G#|y=-9yqIIHP`|Ge;&3r|4D`A1SbQD=o8iEH03x|p~ zKr?{l)o4}>KqM{4X=i!tOIWQso;!s5d*dJi3f|@GbchTD?w&VOEEb6tRYioQU)x%K zII5R?v&EnWB1j^JYBC9_stQSH2F4-i7O_Do`tZA=>{VJ4=1AD*z-51-0y>BY*N1eU z?yexsuR@3Z;XH!JV!VAhCYm~b@2-U zfyB#iLj&(!)a_azVaB`cOEC!`ya3gCKCb*^r!ihRYD>@^U{8bhV`mnt0NBl~y=*;L zj4ISR5lW15G01p1bl#KXfgzf~8**KR>KL;>KdMi0b?G=-=BsY-`}6l7WDg8DcgY-O zuUHCc3UD+GK?dd+`0DBW2cMsw{>m@@w!ig%_Kk0S>pQ)EZll7KM{$C91r=p7lpjfd zQFOTEe$eh>k47#0^T`3*AYyR4vkrk?l~))MO&RT~WCKseE)@(9UPn|{Csa~tV?}TK z8`~MzyqoP|hawwIMKrz*AjUHR-#x}bXC5FJL24Us*yL-(0HJ7YE-{s)wv3Lv`J(vj z_@czr8WDh)LppPLLmV^Th;I;1wV)@sj0yxl~a8xxf zC=%czbVOkUBMQAW*hPLDps{7gE`iL&2sh=bXXmG)%BvOOs%8Oo05w2P5bCcoJPeQ1 zXaeP+hie-(i(&PK0=YYiuA{KmkfR7C6|9JKcbCz9oF8YTuOK-(dV1|IdzF*(_`1;Y z?WsdG8NP_jLM{b$#9-bq^YyD&bpRC}m_`&>>8GjctE%0q`2;K>y|mB<9n5Vja}86SV5%A9 zFSZA0@M^txHLpRfI`Az7#(>1grU45g*Ej@FmEO$N{F+wJM!${)C3=NU)iQ#`!Kw!Y9nt zb6q8gvBmzKa%g4jeP90W**#@HS^#Y!3=b)IZX2UQHJFN4!=ddYF11|k9OUJ=#p~C) zhpq-Tv%k}R(h?5rxmUG?o%35eqx!h_=OfKsCuZkCljKGLTx$TBFx#W(&fQ^V<%mK; z*+BkFel}+t21)CsSM+qYXU)xecKagOYv1RT4UnPL3GCtgCSi&&l1wYb&5S*r^7h_B zb$^d$sxyF?8?C{pxR|lky{8&?G~`q6S(=)EwCzifIGOfFkH!Ky zI$F1z1>6*GA|*k@NLU31-^en4;d2>%7CdOG>U-UTnhM*kuxEa;cL8?%+yuAS&#o~> zI1r=xD!wE8{lEY(bNA(S;UvX&0|AWu~Wg8H5N%BJxg7KG6y z7q9LU`x!EN7T)J_;366dmUNnxzMU!j{v5Zm@mO^3SdLF9kQT}onuyqZk6>exN@N)j@M#~$vxf5-(r0nma>MNW@cUU+ww7+ZIk?U7+^c2u zz&3XzR}Xh&^n!~l4dyyJ+h3cPjMS5rZk7WE zNTv6Fz8C74RkZ;=cA+)E7(I~(Ce7Xs(cVt|G|c^ggH{Z)J1{&-Ug?7#fUH@^NaefrIBd^%zbL<}*i z{p9W$Re0M^tBX0gA!pG?6LrnZy#xIg6?RU6`MTjmQffrVF5Qz4U8~wZ(81nf5!@3Rn{r5x+1s5$2 z>OD`Vn;91_6P{>WlIKZWU&!Her0&_HVbK%YZ_GFbV&ih$qpD%RW@}m!b&j~~f&shbC14o%V>hqyK9X$w&ZUTEU z@7(6+Z<7Q|>?seVV8{itiwlJ9m|TQJ?1Mo8#|-4V{Qj3;{OnJ^e*Muu{`mOn<~o&v zndzs$R2@J(FrCdK<7L7*EsGYjhudGF0RYX}I{TL}BUL%!Gknf6-l#;L#NVb@vZ&-$9V7DldX;FdA7ILlqHXEit2t z9DWNvTo+p9w6XCyYf~s!$45G}B(reAy#y+Bm@*yCzsBEVb{PI4Xx*Q?7I`6O~A03n6>rsMa}JSHaS?sZ-)|Fy-0wqGjN#5dc!$(^%+~-+j8mL+t_^&@|yi z1%E+?DGyl&gC%h#Gszr-ZVl2`crZBPvI&B-kZ`}F{IR#6gcg)Tg{MrLvVTBNL0yFZ6y0x|=L)w>Ne{;!9{~KwOIMY$YJmYbL0+jq6NdCempB9@}1_8Vz`M zRf5E-QWZg*Qb}S0I7{ft0IN!2!!ts}6k{kv8THkmSHDoj{wy+=FImDUnP?hLPzlc2 zO@?u1$g*EoN~g$W*Pu#fhExmDPk`lp+7ilgQ!kzkNcKfdjUE{lPA|7AuVM0Ef}{Wr z2R8wrm&hjq2$tol?eu0VbrjHiy%M_#ApvBS3q((MgAhk>jQzll)lCb<_4wh358wa! z@BiVd_1B)>zWb$sos^^nRbfrnt)$VDmVpVpu9ac4J<&#ajcNpf67YugWSnTuKuitoVSZYt^0SKn#P+ zG5pJT1p#(v!}snH;F3pIjD=c(U1yu3qUI1N%>tgP@wjTYv zU%-bb_k7zi*M(Z65`E>^Kd;Kahj9IC{H!PRS3j%E+K0`mXXhSpbWbb;js3p|vuk`H zqGxVuAgNw}5c`ft!(rT~9@YK8t`n;BknQ)P^VkNf*-%JllCgWixD?#B0J+*jB8UpS z12%+(KxsAgiV9^87K1=2ME5I20@=#qp2MMmGJhry4EEAZxhC3pPA9siPAN~-p}az*vHZVwXiLbNE5hOWA`s83}8eP*L)JWL2o*WRTC!AbyMvH zznYCbnNasqK^cr6QCKZR6Q;j=0BC}vijBuamvf2eeT+56j+@gA1CH-&)QiqSr^Rqo@>L-6;m&99Uo9zF`g12xp}ev^Gn zB3|}CP1mpcU3kf(|2Z$=}C|OB(~#nH+W!_ zcXY^v)5eavOTFS{QkXCnYuh8=*V@mgBch4I&Qts6DcM80j>&D^FXLByd=gIjjO?^s}@D&fEh(y@2gb?j9bF zw&ZG>3mVo%bne~OMd32fIjcW~!ioa+4`8e8HbRbg!KF+D^9datEK|ZL4@9T-u(kWT zzDtHM0yA3Pe&toUx+lTfyhdCxGCJ0|J~C1au*)fv52~?mKWD$w*6|_+-Sjbf2p~^= zjDr!3u3^~^&*+AO0%3_6Z?>7~gFFiTQ2co*cnA>DzK$=+Y_lw46O*=7Eqo~aojbtG zUb%j)f#{&_Ks147N|@Q=1D0ww#b)GBCnyho2e!uvcZZ{9@rhRhPXO6XJkSMFya1iM zkzo))+P=IG9|rsxJ6ZT}v?UM21sI1f*07xrC@-mP1~CJOo%qOINbgYGhtYrMshY0u z$I;7wX>i$2PQ1Psu0P3s4lWi99J|4HBIJI(659`%Aq`^PpYfv~|Mb85t#5z(|Mc~* zef(O*yP+U71v7%=;Rng^at90YD{H=e^X2&A4}X9k{^UpZpZxeo_aFZ7$3ObnPd|Tt z`{kSZ>Z>o~?YlRsb3MXMR{^E+0>1}HxnmiO&4-HTC!c=vqcP{N{@`!^;1|Z>Lcb&& z;w3MH>`NEjcnIOahs^E_4HsM{)Hc_wEuz|g>uN5V1pyUaO3cw$$J8rdTJ`k2-`P+n zhqwYyD6YL1ql@#p(tD!l#U%C#F}u^e_C~~ZB{q0Xwl6u<*mdvl^c_36;Jx2(yNeJI z)7WQSXCsZIUZ(VIdC>_vy6CR{Yy}6t)`IojcT%75L^@(PDD8;bAXLD%Q;Y&)wvkJ} zA0{?t6zHTRQ@qoFznUVs%-SFrrNRl48LYlfuunrcz;ROtdN9%*q6@~J5(5Nj-&X&9 zH&{Z;vVc9?a`H3l9|SJxI$P1fE@XFt+6A@HOj=-!aNO-8dBCiPkeik(@AtXh3p9s% zSP6hjSq01yU;tmedHc8g_{Tr`w?F>Q_kREFVJ`R2+TH5uAcX;22P{M!5xpESYk^oW ztEy=fWom;{`dQxgxMC=ST9mSD>4i8Jj#!MDC@msSU~f&506iD6FnCsB6_8=1;$)AN z9HiJ65~nYm0$?I|hhh+b%7l1RXo^53M^m$@XHbe78mee_KC0$D0$JkSr4&w|w0_Zn zJIEw>hbl|4*c1SXiNyqXLXnPBt3V#IV4o@$%#eSFQW1Ra=$e3%o@ga8P5_I+)5P4Y zHg_p9z!A?vrVF(8%Ar&hi-;s6kurBijX2b}Q?a^xyF-<&Lz|udP9g3XOm;^Sdoo5Y zdO}W3A~aH}1p2ymA|+!XxQ508Q1qnK-5mj9oTh|?${hIYz)66E5l=Q{jb}f5L1;Uv z!6dcdBDS;*3=NA|YHfHN85J>^c1XQFLzM)j-bW_)yovpf{Fk(rRy z5n@{lshK$0u{j(Ij@>ANuB8lg_n_4AQ_be0`y=PD9yq#Cyn4Vciu-$Srb`!<5xpe2 zXnbk2ouZj`MI2!yhwPXS`?=bO(+x(fWY5(A06+Y}kACm{`Tqa>`qw}HFMaLnA9k-+ zy?L)mG7R;D1E3(83>7iT9RluHxmXaYMgW08e!sCwessA@M58d~qb8J)Dim)K1J^yY zp5CYiK?a^(lqp%dbJL~#qHB<8+%4PJUJ2H5J^YXb%BJ~k-_uKD9vTY~i4o6GAy5lZ z3f6*ZA#_K~gP6~fo&nvX2cLmF!FqPlT!~!v@UL~$MsNbBdyH_>^xc?16c~#PTc~l` zGd}9RnJNK10pspsC=zAJ5W*OYX+dq=ImQCww6&%Ra>W2tLGc8>(3OZ#v_^o$l9(7n zL7mX9vdR;(2FamnGtw##84!Rb$dkpw3}M8HR0VO;3l$@XXIir!5fUp;0*j?Hq-P=) z!6%S+Fz$3WbtfI8$T)#<57denciQCHHX=r_@BTkNk?}0GXW`OdkmKt)i2*Y{qa@LIAXY7@#Mc9 z6~na(iI-haFgwx6fdROSgFz@vwqRHX<4574f{NH^Wpu1%?yN?-pm-5<+6sk*o49%Tyc6%U^{)-_Dnt^$a* zWhMGu`S)CZMfc?mVzc|#UEsRh?lY(X76YLe4b~?8%Q?t4qv#zj(PcenZ~ZAE21~Cx zdA>&u>~|x*2d=v|sNQGcnMgU$Q;1fjcnZB5V{~0#-DYGAaNh^Qz)<^}Q!VrAftm`? z?0TZX7z@LqJ4$xXpr(5OtC~&Qq=2o&XkDg*Q*}9Ic0zyWZtELtjV(P<_qf_1F2L-b zhjxKrY|O)?vPy7lJOeN(OmM{a$G;|@E?f7o&1uE&E>qNN|RXNse=Lcb4p!0hl*5}pB0WoBJp=mhS!@F3<-S#d+ z@6G6;C+qt65QV+>LA~MJyZCJN60kbIqU~1fiw3^ev$}3AR0&!0W&er~oWm4g(7RuN zt{W9std2Ap%{HTeNx(jn2)>Y%cYKw37g76c8I4M)Kbvtc!peVhU$~J4V_%B4N$DRU zUi1(V_EK*Qb1T8B{J%4Lzld6q6t-2d6e^GWwdgJ0dCg^ z0;XCxeu{qY*f^eqYY(cy9IS<)jsAANddb1*XE|b@+q(LI=sUe3evHO8bD>l? z)QtAxMeKGRQvg?!2>luBvWT;is`ePB&+iTm{%CeY8CpQ>`)j6ziv$`3M{gH?vF!$0 z214{qHPkL2E*gaDr8w2ixS7Is(Co>*EEge$WlxOu?B4~Mu4(ly5FBK?OMN+iR#2CE z16d(BVF}!I6E>pfBiPehJ1Fq-FWYVb4L&*C5zXND31FGQJY33qNe$ql3-n3>2obB9 z4FsCKA<96nT#Qz^Zxv~xXkTQRK8xJ)4ZBnHb9-SX`vA@^hN>S3deXOA$>GA14ejhj zIR0)-n9$DjSKPd@(SO$s<=k2gTR zSm!Rnbrm#%da7%GFniU(g=aGcb^~L}UsLPU1ESRl8W6(nAiyy3Su$8kQbEdpyTmH& z9LV;YzTU5ZfrX;|D7S|Ec zy|aHNn?3dd@}Zx(mz;Un#Mm}dUHr7(J@F+KNDE# zL?9M$hHyhfWfgkr3<010^k@Hx`}6a^^}V0}#jg!7pWNiAy>3W5Qnqf}5v8a>J4AyL z5p(NLdgt$KCjTDu9%yg@d*0}IOLu1|#NN(W31N1yy#+CPlV9(lBMLeMB9y($X*{^# za{-MSQ}zlS1Sx5955s^iT(w^=MOnz!w1jA1g=o6gCQtcoc6{*H=$!x>Vu(>?b$U=h zc!_+NE*KiBV7M{6u?i7!w8Z~|MmP+bT*$?+Fwhie7cs47{E) zHct&w%~hY5(UGuO=5fHtX|Xf_RFlSk7f81AtjDUbn0_@3Yr^I zevC{2%Mgq`8=AS&kP)X)C+)4LBaZs|*FO2?&wlpVzx4SRU;NiT`S@%9tTF^!DT2hL zD!Jh>r1NPv7?kT5%0t?&Nev%Ip{mznNDYEGJ{H3M$Y4uJH-M3tGR=2;dpZa852n9u z6Q$bXVJ`w_OMwlDjb%1h9|wO<(z_qCXplgor{)`0TTv{L&=<+$Z1o)ar10+t6rzqFNf>G*7=}a`g{C zoYkwK7@UT+{CqgYOem&h_-;{UC!lRMM^di=rikOc%JStuxuXgvL%k=&ahT+|a09hp z<9<)uI;VrAVJHoiZ>W89cB=*uI!c1}1IS)^Rhozs5^uq|BV1>l@xUug1u%R4=okv` zZGnqx7|kF6saxdkiH!_8P^y~=Gt$+ekE@08;PwKtv{a1`vXaq~p ztxx7G7#KhdwKK}g=h)A-HQ$o%0D2h|9^efZw?bCfGt$1Lm?Ut36Pwp*Q?(c_qs^$% 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 z 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 OOu( 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 z

      pMON7-}|^0*77v< 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

      9q!gTr*1lo67dKXM$O*mL?$1j~n8h$uW* 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 z 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®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

      Q_6O!=rw7 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

      owi!x_-6zRdh{+pJ%p%>AwOR~ zgDlA8CTWK6AuuNTEdY1IHh2D*(8?r(0FUEdScy_6#KISvD6QqWmYOskB>)FgEpioG zjEcj7P*^e|B;l8Nen@=nSKR}!^fv08D}fH#GA7i&#HuOhmY1iF9Y2c$U8^+NUL3A` zZl74)*eryX;Fo&2KxUgvUON{TX0FxR9-|M-l#4;KS z$Jz=|$xG5xY)F6eEKc1@^y`P*l5IUgR4oy@?^wE4nglQYESL57w9=)}vlCr-8*)F5 z5#s>W&+`!mCkrv9C)nk&bq_bctZ>3bcM19T^9oA@pHT@wRX~13C2Fh}^0Z&r`nS(w z3E*9_imA7m=3P37hr0_FkPyEhejDS;#lAKK$w*vQ0Zdi&Pxk&Jx<5u3#7a^q`uk=lPmdT$RvN1;o za~+!#)N88_wuRF&Is@P_j!`h& zEcfU_5R-hjaX*a+^ubKok|OVus@E6)3br-`jdPCQsWEZmLBE8QU8#kzjn2(q!O5GyzO+_J|B~J>^)9Ce{8;L z`fW>Zh4IAZEYQ5=HA#y!JqynD?`!bTKNEvt|l6m~ZV4I@8}mriho!^$Ua&!B$y3 z5Y#6)HRN`F!iqRDE^9FWLRQWMTCvye;tASZOu>0A6ki*OH!g zFqTv90s-er|4%fOn#LIC6$BQ8BL~94e0`R*#1GoIgC?Q;?0mi}`~jFcK*oLBpt5|= zzUhDoH>I)cuqk}AkK(L|sO5#Dc@O^a&Y{xv!Ivwutd$aEcH2dMbE0@wJtoyIhpNkKe`hJ~Gk5r(T|C3CqOC zOb9B|&xCMz-&)q!-~0-q-0n17yRIkwp{U(`PXqigWfeX$!Bb;W)_hoF=qW+!3ru(o z_tBkebIy>)P~mKN2$qeg0jbNTvMiXv78d>5&XKU?isQ6hd&)vCcJ_n$0BU0*_8lRD zki8GcG*#k2Yj3R2@>(w=0FbWD-1yx_Fv15iH6z_P+e8Q7(N0~cSuQj64q};1Hx-o6 zU^q03q>=~nUV4{kyFS@Tm~HraM~*8~4xk(Bor%r#IN=!jTPXad&4?b&FSX;Q?u*rX zZ0CvNW)dS9xd6Txd}Yqd7DKL$Avf!Yar_{{_k_<)lYT-=LypB>1-iQwiL+Ce+}m3kN8re)U;{#=}V5#0=nUgKq=n zjQz7vzF3gu;V@XiCM5=lRMbp4cx&O)xwNmZ>t6Naab3ehWHh~lviy?1Wb6|>@?`Rx zA^Fk)&1d#Fv=5m>!=$OPie$c>X#$v7_!N!GGbjNDwBXt=67+E&JlMsX1qEpQ1j8P? zv|W%S(S1zzhj@n+GR>o6?-I%0&QZX2I-u)aWuV~1=%o(};x1TO!VLdAThkDz^MWMf zgd5L%H%|O>L#X6=(T4G0xto7z63bq!+Y#%RpgX(Nd4!Hfzb!WyGRaCOJ-`7U}gs(sCOtyB13|f$>sNcdn` zIbQ*PnK-v%5_DHO9mypU)*E+ltzdu)zKQzg3nIcutlwNQwpD4`O~J)M)M~w?n|$Xl zfL&7Q5q?^sv_im~rw`iiEXo~M+k6X$vkgJSmLg;~f>kZ(O9$4O2yrb0QFvVaI^v}m z!qEP|Fj=&Tx{hNi?x2qwoR#d)*mza>es&R<^ZI5gM8gO#5jC(9%_7%puvb1Cwn#w| zQN1Lc{ey+ZW*Gq)K^A{NPkX}>h>iU|XYP}@uY=0XN&ig*|X_o|$db(`Kk(H@Z(aXzpztE1*hEPU12azsj#HjgT4|JwT!fEjS zoNuSL`cYa|@W%S&ug#SY0(Q?&xE&WqQ4_w?Z5bCa1+qnK_JUNb3OYF`aj%c#1~Vml zBbcrwHnslXAya8Q#M$;fq3Vn*8&jBYNpqhk=Q)^j|NA>V;S3*a2rCM{sDr=dWo9)QAB$AjPRypwMLI0vVZP_)o#GVRCY{=X|M zk>)^`aotPoB(8+(2g=RVmP}#_KO&@67S?3nhhrC@SH$FLOC~p^$)w;_?6b8$_>2i- z=N^lYQ1>M`s{H@>Gw=n7IaebI-^EUxSC|H5lFcF3wNgmK4)%f?bsWE@ zl*Uc+W{8+nvp8GCbNv0ed4CC$PAwhL(Z)^!Qel~)RrODf8iOeY6Z@P=o#T3Or&@ge zor@-T-{-;gx`p7u4u#a2tGgT?NxoPp8!V#Hz(q}6ody54c(1W+m z#HykjL0TPwN(<`C2Nl?U+C4A9?eRyw|(^>Oy+Y&PD7=Wi!OZ`|A|u~lO3B>qp` z5K?gOWFfW_!3+@=XydaK%Q)XfPvZOyzlc$2ww;hBPWw@$DwZ@{H7(lv#6X-1mKv_} zk@Kh=_s_-G^Ayad@U5-g44N9O-G`4{8c2yZoknp%nFy%@1f&b97907r#oc1o0W^}UB?{&$ah{`QX$w+>O?nyocloIMQwe}#NcogRj$#9 zfS{tMVqbiS)G$6z6RRQD1o_X@(uIS00P)9S2FEq0f1#(z{0^L#JVm~_%I7&1W!{h# z;l?2r?2LfB!rJ_zDtgaPY_yoW%uE~F8f9Rg{snu$Q9;kVyR&Y9%huevm=OHgCAfAe zbAA=xZRoSob3>Z?*(@?{4tBa~|2zd3NqJ9%fXB`1iJ;6P4mY>oNdWXKRH<3M$C%M| zp8r`fwmehLfm@&AZ_B~%l}UlO_Dn2WQLp)ovWV>OJd?bukKwXhBf5UrY4%Rz7_$U-#7#6- zo^^(i&vm6S>SGnI?CM>BUcDG2^%CPUz_0l(e|Y#Cw9i%>1GzRx?&Zb0S=`wiYu?T3 z`3H)q!T050ik_Tr{D><^tjU9Uv^`H20ba;U))Af(;buTDKhH~Afl{UB!S1y{KI_Jy z8qB?KJz{+2_~Ry6LHN49)AEMS>(jwmat*})@qhRq{RI!eTLJxelR+)ne3Da>loq@V zyr|H{qyfPRVY*9vA-$tl99xgPO9-;GK>*X?*)HJz|68IR}Zf}0rEQ_picQ86+HfO1o7aJ0mqHqN5xmHxP?Z6C!NP6D=#7O zuS5GC@Og3}eV9w$i%>H}Nx%PjJ$6Pn1UR&xovd1|`atJGd@>pd)cM=98Uwi$GeWcQ_^&6x3X4V72a)9wWE^m=Tw?|l8=n#9onE8wS~qW`;FUGBynPgf}5q~@_VGx!#s2e1`V3VuJ{V0X=xO=@e4ef?s7KWo;mQ z*K|xiAphw&;jVEDP9_tt!QAosJMbuBH=8V}wP#g~ZA*yNeJ2Kv?fcplz*;7Q$LHO< z2KNX0J5RvEX}r@k8%Oi4-o*A22Ai*wb=FnQOV0fd{Cv`&OF@V3Jm13ln}Sv)?U*Gr z;IWeN89BkGi(g|xXA8k4JA5_|z%O>m(Uu&5UWEp5(4pn10=uD)iAF6z!o1C?vmhVI z17sFJx@l2<$Y=mZR?Uwt>O6QGdx+{4DXw79w4g+IT>Nc;D!9qcG?%vUb;7f{>Jc;# z3Vyd!E*xqDeu@N-nup0gf)y>kYgWeB&-n|{WwmF#vbC+PfcX=k!z~=Q7>gJ988>|j z0FKo(XF*4Z^FaiIZb;9A9G6V05xb~!$@HC~lhU{$OkT>7fe|Bc{C*#L zq`9)EXa|B&vT9-p4+2QMUWk#pCd!JCRRKqmS5Tj0Tr$T#*3*;Efp>Cmm$mPBKgC$o z)k|hF`TzAa%{cRtLT4MwB7lR;Qo@a~LVe_-D0f-$d&Qmjsr%si`k8 zx!kVEW*q?cCqj-Cjr(l);(@^SRk8)gYUA{ToT8$tOY}~owcta1LSU0}P)VPJSXV*h2lC;qPT zGY)nGZLsRkA7U}DdyC8zyH0}+GKbqvOU??8nXRb~qLlML_h-$Yn|js!mhaF+zGz~# zgk56$E(w0{l18gpSQ|M7J2LU~aCc0l;JhKZU@Jy|spZB5V9@hk3?k=EG|7!)D~kLb zrtx75tU(>)3`7k$5s&z*3U7i)cC4Ms4*na69#+Ize1#E($FW$!W|fAzlCTnwOw_JzPlR!so8CX`TXoW4U;ED8 zmw;6(=k{?1lR8((1T!~R=Du&8guy}f;-tA{a`6H1g`3>Ya0htLh43TF^4^N<^ne8< z9~|4!Hoy>Xigz~=w_xeGmmQ$IMtf`6uN_dS?Rzt|eX@8miD zPTP1(M1X`hrz!OWE_{!-rrPF?%1w!>7qeMN#5AzE$0%{s|966S>}9>rizZQ1AMUh$ zhq$HQh(~brHbnyux9$)e)1bzs<1Ip@7l2)MTgOv4bsG8_FC0D?+Je&4d)t!S^S|$R z3BJS;rKX^QPaaR4qyeyYwDbJnxq0J{$+=U1tN&oG+zumdY#vzf$_j?fgow+T9Kr$k z`1ft2;$)iYRN`yU+M~u-h4Z9=)I^tePnyr!M!*VDEI^zrl06(;JueXq5lXBi6Z6`4 zUXUkhPbQQaz=tnBeD7X(!X>8(=Z8vO+55k{$FL`7YlZL+C1UzF2%y809lAN1Hp?r3 zTb%2<(HN^F?>;QPjt&R1MRL(ge$gPFc-A?lHVJPdHO;SdZMS!m;V5ju(e*Rmpa=*+ zdB4)hRNTf-8LKIyH^s(Hoyv*eXb6>S)zJFE$q}nI!V&qijjT9dQLAm;B7_=GKl(l% z5LsM31cH72?(+0_yuYbZFU)nbkim|@9vEX~(ffY9lv%5QakFU>KR4Ix#8dG-YY&j= zc>oa|_zF5te`6<>D2J;wf;JE&ESAhKzG9@rrgIoKxQ&qp$U>gCEe2}FhitsFuPO+Yn0G7Y&K z?Rfv%lyCr@^Ty7dI{4_=#)3ex@cVuplv2=dodwW@T7a*Uy4CNmfrQQvc!n>!3%GRM zMUU-A6~C<8Yo&n40KUQ*9Qx7*KotR=Kl);yPᨚkrxQBF-Kv_ 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�X|8GY9U81yIsF-^4;<4@o|5^nO+1FOP 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

        OA$QM!WXlZ$(Kk~6`A|@=I{5H2 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

        d?j-CI{J(L#JWOXwl9ybQ!6QuGv_$J$ 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 z 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%0Dr$n+ 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 T?QF271z|h6tP}m!@4$ZnTPS1< literal 0 HcmV?d00001 diff --git a/src/asyncflow/components/__init__.py b/src/asyncflow/components/__init__.py index 774a77f..52d66c7 100644 --- a/src/asyncflow/components/__init__.py +++ b/src/asyncflow/components/__init__.py @@ -1,4 +1,4 @@ -"""Public components: re-exports Pydantic leaf schemas (topology).""" +"""Public components: re-exports Pydantic schemas (topology).""" from __future__ import annotations from asyncflow.schemas.topology.edges import Edge diff --git a/src/asyncflow/metrics/analyzer.py b/src/asyncflow/metrics/analyzer.py index 16448bc..b9a6ea2 100644 --- a/src/asyncflow/metrics/analyzer.py +++ b/src/asyncflow/metrics/analyzer.py @@ -17,7 +17,7 @@ ) if TYPE_CHECKING: - + # Standard library typing imports in type-checking block (TC003). from collections.abc import Iterable from matplotlib.axes import Axes @@ -29,6 +29,10 @@ from asyncflow.schemas.settings.simulation import SimulationSettings +# Short alias to keep signatures within 88 chars (E501). +Series = tuple[list[float], list[float]] + + class ResultsAnalyzer: """Analyze and visualize the results of a completed simulation. @@ -36,9 +40,12 @@ class ResultsAnalyzer: - latency statistics - throughput time series (RPS) - sampled metrics from servers and edges + + It also exposes compact plotting/rendering helpers so that CLI scripts + can be short and consistent. """ - # Class attribute to define the period to calculate the throughput in s + # Default bucket size (seconds) used for cached throughput. _WINDOW_SIZE_S: float = 1.0 def __init__( @@ -49,14 +56,7 @@ def __init__( edges: list[EdgeRuntime], settings: SimulationSettings, ) -> None: - """ - Args: - client: Client runtime object, containing RqsClock entries. - servers: List of server runtime objects. - edges: List of edge runtime objects. - settings: Original simulation settings. - - """ + """Initialize with the runtime objects and original settings.""" self._client = client self._servers = servers self._edges = edges @@ -65,25 +65,13 @@ def __init__( # Lazily computed caches self.latencies: list[float] | None = None self.latency_stats: dict[LatencyKey, float] | None = None - self.throughput_series: tuple[list[float], list[float]] | None = None + self.throughput_series: Series | None = None + # Sampled metrics are stored with string metric keys for simplicity. self.sampled_metrics: dict[str, dict[str, list[float]]] | None = None - @staticmethod - def _apply_plot_cfg( - ax: Axes, - cfg: PlotCfg, - *, - legend_handles: Iterable[Line2D] | None = None, - ) -> None: - """Apply title / axis labels / grid and (optionally) legend to ax.""" - ax.set_title(cfg.title) - ax.set_xlabel(cfg.x_label) - ax.set_ylabel(cfg.y_label) - ax.grid(visible=True) - - if legend_handles: - ax.legend(handles=legend_handles) - + # ───────────────────────────────────────────── + # Core computation + # ───────────────────────────────────────────── def process_all_metrics(self) -> None: """Compute all aggregated and sampled metrics if not already done.""" if self.latency_stats is None and self._client.rqs_clock: @@ -93,15 +81,16 @@ def process_all_metrics(self) -> None: self._extract_sampled_metrics() def _process_event_metrics(self) -> None: - """Calculate latency stats and throughput time series (RPS).""" + """Calculate latency stats and throughput time series (1s RPS).""" # 1) Latencies self.latencies = [ - clock.finish - clock.start for clock in self._client.rqs_clock + clock.finish - clock.start + for clock in self._client.rqs_clock ] # 2) Summary stats if self.latencies: - arr = np.array(self.latencies) + arr = np.array(self.latencies, dtype=float) self.latency_stats = { LatencyKey.TOTAL_REQUESTS: float(arr.size), LatencyKey.MEAN: float(np.mean(arr)), @@ -115,24 +104,23 @@ def _process_event_metrics(self) -> None: else: self.latency_stats = {} - # 3) Throughput per 1s window + # 3) Throughput per 1s window (cached) completion_times = sorted(clock.finish for clock in self._client.rqs_clock) end_time = self._settings.total_simulation_time timestamps: list[float] = [] rps_values: list[float] = [] - count = 0 idx = 0 current_end = ResultsAnalyzer._WINDOW_SIZE_S while current_end <= end_time: + count = 0 while idx < len(completion_times) and completion_times[idx] <= current_end: count += 1 idx += 1 timestamps.append(current_end) rps_values.append(count / ResultsAnalyzer._WINDOW_SIZE_S) current_end += ResultsAnalyzer._WINDOW_SIZE_S - count = 0 self.throughput_series = (timestamps, rps_values) @@ -143,6 +131,7 @@ def _extract_sampled_metrics(self) -> None: for server in self._servers: sid = server.server_config.id for name, values in server.enabled_metrics.items(): + # Store with string key for a consistent external API. metrics[name.value][sid] = values for edge in self._edges: @@ -152,18 +141,79 @@ def _extract_sampled_metrics(self) -> None: self.sampled_metrics = metrics + # ───────────────────────────────────────────── + # Public accessors & formatting + # ───────────────────────────────────────────── + def list_server_ids(self) -> list[str]: + """Return server IDs in a stable order as given in the topology.""" + return [s.server_config.id for s in self._servers] + def get_latency_stats(self) -> dict[LatencyKey, float]: """Return latency statistics, computing them if necessary.""" self.process_all_metrics() return self.latency_stats or {} - def get_throughput_series(self) -> tuple[list[float], list[float]]: - """Return (timestamps, RPS). Empty lists when no traffic.""" + def format_latency_stats(self) -> str: + """Return a human-readable block with latency stats.""" + stats = self.get_latency_stats() + if not stats: + return "Latency stats: (empty)" + + by_name: dict[str, float] = { + getattr(k, "name", str(k)): v + for k, v in stats.items() + } + order = [ + "TOTAL_REQUESTS", + "MEAN", + "MEDIAN", + "STD_DEV", + "P95", + "P99", + "MIN", + "MAX", + ] + + lines = ["════════ LATENCY STATS ════════"] + # PERF401: build then extend instead of append in a loop. + formatted = [ + f"{k:<20} = {by_name[k]:.6f}" + for k in order + if k in by_name + ] + lines.extend(formatted) + return "\n".join(lines) + + def get_throughput_series( + self, + window_s: float | None = None, + ) -> Series: + """Return (timestamps, RPS). If `window_s` is provided, recompute on the fly.""" self.process_all_metrics() - if self.throughput_series is None: - return [], [] - return self.throughput_series + # Use cached (1s) series when suitable. + if window_s is None or window_s == ResultsAnalyzer._WINDOW_SIZE_S: + return self.throughput_series or ([], []) + + # Recompute with a custom window size. + completion_times = sorted(clock.finish for clock in self._client.rqs_clock) + end_time = self._settings.total_simulation_time + + timestamps: list[float] = [] + rps_values: list[float] = [] + idx = 0 + current_end = float(window_s) + + while current_end <= end_time: + count = 0 + while idx < len(completion_times) and completion_times[idx] <= current_end: + count += 1 + idx += 1 + timestamps.append(current_end) + rps_values.append(count / float(window_s)) + current_end += float(window_s) + + return (timestamps, rps_values) def get_sampled_metrics(self) -> dict[str, dict[str, list[float]]]: """Return sampled metrics from servers and edges.""" @@ -171,64 +221,369 @@ def get_sampled_metrics(self) -> dict[str, dict[str, list[float]]]: assert self.sampled_metrics is not None return self.sampled_metrics + def get_metric_map(self, key: SampledMetricName | str) -> dict[str, list[float]]: + """Return a series map for a metric, tolerant to enum/string keys.""" + self.process_all_metrics() + assert self.sampled_metrics is not None + + if isinstance(key, SampledMetricName): + # Prefer the canonical .value key; fall back to .name. + found = ( + self.sampled_metrics.get(key.value) + or self.sampled_metrics.get(key.name, {}) + ) + return found or {} + # If caller used a raw string: + return self.sampled_metrics.get(key, {}) + + def get_series(self, key: SampledMetricName | str, entity_id: str) -> Series: + """Return (times, values) for a given sampled metric and entity id.""" + series_map = self.get_metric_map(key) + vals = series_map.get(entity_id, []) + times = (np.arange(len(vals)) * self._settings.sample_period_s).tolist() + return times, vals + + # ───────────────────────────────────────────── + # Plotting helpers + # ───────────────────────────────────────────── + @staticmethod + def _apply_plot_cfg( + ax: Axes, + cfg: PlotCfg, + *, + legend_handles: Iterable[Line2D] | None = None, + ) -> None: + """Apply title / axis labels / grid and (optionally) legend to ax.""" + ax.set_title(cfg.title) + ax.set_xlabel(cfg.x_label) + ax.set_ylabel(cfg.y_label) + ax.grid(visible=True) + if legend_handles: + ax.legend(handles=legend_handles) + + def plot_base_dashboard(self, ax_latency: Axes, ax_throughput: Axes) -> None: + """Plot a 2x1 header: latency histogram + throughput line.""" + self.plot_latency_distribution(ax_latency) + self.plot_throughput(ax_throughput) + def plot_latency_distribution(self, ax: Axes) -> None: - """Plot the distribution of the latency""" + """Plot latency histogram with mean/P50/P95/P99 lines and a single + legend box with values. + """ + self.process_all_metrics() if not self.latencies: ax.text(0.5, 0.5, LATENCY_PLOT.no_data, ha="center", va="center") return - ax.hist(self.latencies, bins=50) + # Colors that pop on blue/white + col_mean = "#d62728" # red + col_p50 = "#ff7f0e" # orange + col_p95 = "#2ca02c" # green + col_p99 = "#9467bd" # purple + hist_color = "#1f77b4" # soft blue + + arr = np.asarray(self.latencies, dtype=float) + v_mean = float(np.mean(arr)) + v_p50 = float(np.percentile(arr, 50)) + v_p95 = float(np.percentile(arr, 95)) + v_p99 = float(np.percentile(arr, 99)) + + # Histogram (subtle to let overlays stand out) + ax.hist( + arr, bins=50, color=hist_color, alpha=0.40, + edgecolor="none", zorder=1, + ) + + # Vertical overlays + ax.axvline( + v_mean, color=col_mean, linestyle=":", linewidth=1.8, + alpha=0.95, zorder=3, + ) + ax.axvline( + v_p50, color=col_p50, linestyle="-.", linewidth=1.6, + alpha=0.90, zorder=3, + ) + ax.axvline( + v_p95, color=col_p95, linestyle="--", linewidth=1.6, + alpha=0.90, zorder=3, + ) + ax.axvline( + v_p99, color=col_p99, linestyle="--", linewidth=1.6, + alpha=0.90, zorder=3, + ) + + # Build legend handles (dummy lines, no data) + h_mean = ax.plot( + [], [], color=col_mean, linestyle=":", linewidth=2.4, + label=f"mean = {v_mean:.3f}", + )[0] + h_p50 = ax.plot( + [], [], color=col_p50, linestyle="-.", linewidth=2.4, + label=f"P50 = {v_p50:.3f}", + )[0] + h_p95 = ax.plot( + [], [], color=col_p95, linestyle="--", linewidth=2.4, + label=f"P95 = {v_p95:.3f}", + )[0] + h_p99 = ax.plot( + [], [], color=col_p99, linestyle="--", linewidth=2.4, + label=f"P99 = {v_p99:.3f}", + )[0] + + # Titles / labels / grid self._apply_plot_cfg(ax, LATENCY_PLOT) - def plot_throughput(self, ax: Axes) -> None: - """Plot the distribution of the throughput""" - timestamps, values = self.get_throughput_series() + # Legend (top-right) with readable background + leg = ax.legend( + handles=[h_mean, h_p50, h_p95, h_p99], + loc="upper right", + bbox_to_anchor=(0.98, 0.98), + borderaxespad=0.0, + framealpha=0.90, + fancybox=True, + handlelength=2.6, + fontsize=9.5, + ) + leg.get_frame().set_facecolor("white") + + + def plot_throughput(self, ax: Axes, *, window_s: float | None = None) -> None: + """Plot throughput with mean/P95/max lines, EWMA curve, and a single + legend box with values. + """ + timestamps, values = self.get_throughput_series(window_s=window_s) if not timestamps: ax.text(0.5, 0.5, THROUGHPUT_PLOT.no_data, ha="center", va="center") return - ax.plot(timestamps, values, marker="o", linestyle="-") + # Colors (high contrast on blue/white) + col_series = "#1f77b4" # blue main series + col_mean = "#d62728" # red + col_p95 = "#2ca02c" # green + col_max = "#9467bd" # purple + + + vals = np.asarray(values, dtype=float) + v_mean = float(np.mean(vals)) + v_p95 = float(np.percentile(vals, 95)) + v_max = float(np.max(vals)) + + # Main series + ax.plot( + timestamps, vals, marker="o", linewidth=1.6, alpha=0.95, + color=col_series, zorder=2, + ) + + # Horizontal overlays (match legend colors) + ax.axhline( + v_mean, color=col_mean, linestyle=":", linewidth=1.8, + alpha=0.95, zorder=4, + ) + ax.axhline( + v_p95, color=col_p95, linestyle="--", linewidth=1.6, + alpha=0.90, zorder=4, + ) + ax.axhline( + v_max, color=col_max, linestyle="--", linewidth=1.6, + alpha=0.90, zorder=4, + ) + + # Legend handles (dummy, no data) + h_mean = ax.plot( + [], [], color=col_mean, linestyle=":", linewidth=2.4, + label=f"mean = {v_mean:.3f}", + )[0] + h_p95 = ax.plot( + [], [], color=col_p95, linestyle="--", linewidth=2.4, + label=f"P95 = {v_p95:.3f}", + )[0] + h_max = ax.plot( + [], [], color=col_max, linestyle="--", linewidth=2.4, + label=f"max = {v_max:.3f}", + )[0] + + # Apply base cfg (titles/labels/grid) self._apply_plot_cfg(ax, THROUGHPUT_PLOT) - def plot_server_queues(self, ax: Axes) -> None: - """Plot the server queues""" - metrics = self.get_sampled_metrics() - ready = metrics.get(SampledMetricName.READY_QUEUE_LEN.value, {}) - io_q = metrics.get(SampledMetricName.EVENT_LOOP_IO_SLEEP.value, {}) + # Legend: upper-right; single box with values + leg = ax.legend( + handles=[h_mean, h_p95, h_max], + loc="upper right", + bbox_to_anchor=(0.98, 0.98), + borderaxespad=0.0, + framealpha=0.90, + fancybox=True, + handlelength=2.6, + fontsize=9.5, + ) + leg.get_frame().set_facecolor("white") + + - if not (ready or io_q): + def plot_single_server_ready_queue(self, ax: Axes, server_id: str) -> None: + """Plot Ready queue with mean/min/max lines and a single legend box with + values. No trend/ewma, no legend entry for the main series. + """ + times, vals = self.get_series(SampledMetricName.READY_QUEUE_LEN, server_id) + if not vals: ax.text(0.5, 0.5, SERVER_QUEUES_PLOT.no_data, ha="center", va="center") return - samples = len(next(iter(ready.values()), [])) - times = np.arange(samples) * self._settings.sample_period_s - - for sid, vals in ready.items(): - ax.plot(times, vals, label=f"{sid} {SERVER_QUEUES_PLOT.ready_label}") - for sid, vals in io_q.items(): - ax.plot( - times, - vals, - label=f"{sid} {SERVER_QUEUES_PLOT.io_label}", - linestyle="--", - ) + # Colors consistent with other charts + col_mean = "#d62728" # red + col_min = "#2ca02c" # green + col_max = "#9467bd" # purple + + y = np.asarray(vals, dtype=float) + v_mean = float(np.mean(y)) + v_min = float(np.min(y)) + v_max = float(np.max(y)) + + # Main series (no label/legend as requested) + ax.plot(times, y, linewidth=1.6, alpha=0.95) + + # Overlays + ax.axhline(v_mean, color=col_mean, linestyle=":", linewidth=1.8, alpha=0.95) + ax.axhline(v_min, color=col_min, linestyle="--", linewidth=1.6, alpha=0.90) + ax.axhline(v_max, color=col_max, linestyle="--", linewidth=1.6, alpha=0.90) + + # Legend handles (dummy lines with values) + h_mean = ax.plot( + [], [], color=col_mean, linestyle=":", linewidth=2.4, + label=f"mean = {v_mean:.3f}", + )[0] + h_min = ax.plot( + [], [], color=col_min, linestyle="--", linewidth=2.4, + label=f"min = {v_min:.3f}", + )[0] + h_max = ax.plot( + [], [], color=col_max, linestyle="--", linewidth=2.4, + label=f"max = {v_max:.3f}", + )[0] + + ax.set_title(f"Ready Queue — {server_id}") + ax.set_xlabel(SERVER_QUEUES_PLOT.x_label) + ax.set_ylabel(SERVER_QUEUES_PLOT.y_label) + ax.grid(visible=True) + + leg = ax.legend( + handles=[h_mean, h_min, h_max], + loc="upper right", + bbox_to_anchor=(0.98, 0.98), + borderaxespad=0.0, + framealpha=0.90, + fancybox=True, + handlelength=2.6, + fontsize=9.5, + ) + leg.get_frame().set_facecolor("white") + + def plot_single_server_io_queue(self, ax: Axes, server_id: str) -> None: + """Plot I/O queue with mean/min/max lines and a single legend box with + values. No trend/ewma, no legend entry for the main series. + """ + times, vals = self.get_series(SampledMetricName.EVENT_LOOP_IO_SLEEP, server_id) + if not vals: + ax.text(0.5, 0.5, SERVER_QUEUES_PLOT.no_data, ha="center", va="center") + return - self._apply_plot_cfg(ax, SERVER_QUEUES_PLOT, legend_handles=ax.lines) + col_mean = "#d62728" # red + col_min = "#2ca02c" # green + col_max = "#9467bd" # purple + + y = np.asarray(vals, dtype=float) + v_mean = float(np.mean(y)) + v_min = float(np.min(y)) + v_max = float(np.max(y)) + + ax.plot(times, y, linewidth=1.6, alpha=0.95) + + ax.axhline(v_mean, color=col_mean, linestyle=":", linewidth=1.8, alpha=0.95) + ax.axhline(v_min, color=col_min, linestyle="--", linewidth=1.6, alpha=0.90) + ax.axhline(v_max, color=col_max, linestyle="--", linewidth=1.6, alpha=0.90) + + h_mean = ax.plot( + [], [], color=col_mean, linestyle=":", linewidth=2.4, + label=f"mean = {v_mean:.3f}", + )[0] + h_min = ax.plot( + [], [], color=col_min, linestyle="--", linewidth=2.4, + label=f"min = {v_min:.3f}", + )[0] + h_max = ax.plot( + [], [], color=col_max, linestyle="--", linewidth=2.4, + label=f"max = {v_max:.3f}", + )[0] + + ax.set_title(f"I/O Queue — {server_id}") + ax.set_xlabel(SERVER_QUEUES_PLOT.x_label) + ax.set_ylabel(SERVER_QUEUES_PLOT.y_label) + ax.grid(visible=True) + + leg = ax.legend( + handles=[h_mean, h_min, h_max], + loc="upper right", + bbox_to_anchor=(0.98, 0.98), + borderaxespad=0.0, + framealpha=0.90, + fancybox=True, + handlelength=2.6, + fontsize=9.5, + ) + leg.get_frame().set_facecolor("white") - def plot_ram_usage(self, ax: Axes) -> None: - """Plot the ram usage""" - metrics = self.get_sampled_metrics() - ram = metrics.get(SampledMetricName.RAM_IN_USE.value, {}) - if not ram: + def plot_single_server_ram(self, ax: Axes, server_id: str) -> None: + """Plot RAM usage with mean/min/max lines and a single legend box with + values. No trend/ewma, no legend entry for the main series. + """ + times, vals = self.get_series(SampledMetricName.RAM_IN_USE, server_id) + if not vals: ax.text(0.5, 0.5, RAM_PLOT.no_data, ha="center", va="center") return - samples = len(next(iter(ram.values()))) - times = np.arange(samples) * self._settings.sample_period_s - - for sid, vals in ram.items(): - ax.plot(times, vals, label=f"{sid} {RAM_PLOT.legend_label}") + col_mean = "#d62728" # red + col_min = "#2ca02c" # green + col_max = "#9467bd" # purple + + y = np.asarray(vals, dtype=float) + v_mean = float(np.mean(y)) + v_min = float(np.min(y)) + v_max = float(np.max(y)) + + ax.plot(times, y, linewidth=1.6, alpha=0.95) + + ax.axhline(v_mean, color=col_mean, linestyle=":", linewidth=1.8, alpha=0.95) + ax.axhline(v_min, color=col_min, linestyle="--", linewidth=1.6, alpha=0.90) + ax.axhline(v_max, color=col_max, linestyle="--", linewidth=1.6, alpha=0.90) + + h_mean = ax.plot( + [], [], color=col_mean, linestyle=":", linewidth=2.4, + label=f"mean = {v_mean:.3f}", + )[0] + h_min = ax.plot( + [], [], color=col_min, linestyle="--", linewidth=2.4, + label=f"min = {v_min:.3f}", + )[0] + h_max = ax.plot( + [], [], color=col_max, linestyle="--", linewidth=2.4, + label=f"max = {v_max:.3f}", + )[0] + + ax.set_title(f"{RAM_PLOT.title} — {server_id}") + ax.set_xlabel(RAM_PLOT.x_label) + ax.set_ylabel(RAM_PLOT.y_label) + ax.grid(visible=True) - self._apply_plot_cfg(ax, RAM_PLOT, legend_handles=ax.lines) + leg = ax.legend( + handles=[h_mean, h_min, h_max], + loc="upper right", + bbox_to_anchor=(0.98, 0.98), + borderaxespad=0.0, + framealpha=0.90, + fancybox=True, + handlelength=2.6, + fontsize=9.5, + ) + leg.get_frame().set_facecolor("white") diff --git a/tests/integration/single_server/test_single_server.py b/tests/integration/single_server/test_int_single_server.py similarity index 100% rename from tests/integration/single_server/test_single_server.py rename to tests/integration/single_server/test_int_single_server.py diff --git a/tests/system/test_sys_lb_two_servers.py b/tests/system/test_sys_lb_two_servers.py new file mode 100644 index 0000000..0f7f6eb --- /dev/null +++ b/tests/system/test_sys_lb_two_servers.py @@ -0,0 +1,180 @@ +"""System test: load balancer + two identical servers (seeded, reproducible). + +Topology: + + generator → client → LB(round_robin) → srv-1 + └→ srv-2 + srv-1 → client + srv-2 → client + +Each server endpoint: CPU(2 ms) → RAM(128 MB) → IO(12 ms) +Edges: exponential latency ~2–3 ms. +We check: +- latency stats / throughput sanity vs nominal λ (~40 rps); +- balanced traffic across srv-1 / srv-2 via edge concurrency and RAM means. +""" + +from __future__ import annotations + +import os +import random +from typing import Dict, List + +import numpy as np +import pytest +import simpy + +from asyncflow import AsyncFlow +from asyncflow.components import Client, Edge, Endpoint, LoadBalancer, Server +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.settings import SimulationSettings +from asyncflow.workload import RqsGenerator +from asyncflow.config.constants import LatencyKey + +pytestmark = [ + pytest.mark.system, + pytest.mark.skipif( + os.getenv("ASYNCFLOW_RUN_SYSTEM_TESTS") != "1", + reason="System tests disabled (set ASYNCFLOW_RUN_SYSTEM_TESTS=1 to run).", + ), +] + +SEED = 4242 +REL_TOL = 0.30 # 30% for λ/latency +BAL_TOL = 0.25 # 25% imbalance tolerated between the two backends + + +def _seed_all(seed: int = SEED) -> None: + random.seed(seed) + np.random.seed(seed) + os.environ["PYTHONHASHSEED"] = str(seed) + + +def _build_payload(): + gen = RqsGenerator( + id="rqs-1", + avg_active_users={"mean": 120}, + avg_request_per_minute_per_user={"mean": 20}, + user_sampling_window=60, + ) + client = Client(id="client-1") + + endpoint = Endpoint( + endpoint_name="/api", + steps=[ + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "ram", "step_operation": {"necessary_ram": 128}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.012}}, + ], + ) + srv1 = Server(id="srv-1", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[endpoint]) + srv2 = Server(id="srv-2", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[endpoint]) + + lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1", "srv-2"}) + + edges = [ + Edge( + id="gen-client", + source="rqs-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-lb", + source="client-1", + target="lb-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="lb-srv1", + source="lb-1", + target="srv-1", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="lb-srv2", + source="lb-1", + target="srv-2", + latency={"mean": 0.002, "distribution": "exponential"}, + ), + Edge( + id="srv1-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="srv2-client", + source="srv-2", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + ] + + settings = SimulationSettings( + total_simulation_time=600, + sample_period_s=0.05, + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], + ) + + flow = ( + AsyncFlow() + .add_generator(gen) + .add_client(client) + .add_load_balancer(lb) + .add_servers(srv1, srv2) + .add_edges(*edges) + .add_simulation_settings(settings) + ) + return flow.build_payload() + + +def _rel_diff(a: float, b: float) -> float: + denom = max(1e-9, (abs(a) + abs(b)) / 2.0) + return abs(a - b) / denom + + +def test_system_lb_two_servers_balanced_and_sane() -> None: + """End-to-end LB scenario: sanity + balance checks with seeded RNGs.""" + _seed_all() + + env = simpy.Environment() + runner = SimulationRunner(env=env, simulation_input=_build_payload()) + res: ResultsAnalyzer = runner.run() + + # Latency sanity + stats = res.get_latency_stats() + assert stats and LatencyKey.TOTAL_REQUESTS in stats + mean_lat = float(stats.get(LatencyKey.MEAN, 0.0)) + assert 0.020 <= mean_lat <= 0.060 + + # Throughput sanity vs nominal λ ≈ 40 rps + _, rps = res.get_throughput_series() + assert rps, "No throughput series produced." + rps_mean = float(np.mean(rps)) + lam = 120 * 20 / 60.0 + assert abs(rps_mean - lam) / lam <= REL_TOL + + # Load balance check: edge concurrency lb→srv1 vs lb→srv2 close + sampled = res.get_sampled_metrics() + edge_cc: Dict[str, List[float]] = sampled.get("edge_concurrent_connection", {}) + assert "lb-srv1" in edge_cc and "lb-srv2" in edge_cc + m1, m2 = float(np.mean(edge_cc["lb-srv1"])), float(np.mean(edge_cc["lb-srv2"])) + assert _rel_diff(m1, m2) <= BAL_TOL + + # Server metrics present and broadly similar (RAM means close-ish) + ram_map: Dict[str, List[float]] = sampled.get("ram_in_use", {}) + assert "srv-1" in ram_map and "srv-2" in ram_map + ram1, ram2 = float(np.mean(ram_map["srv-1"])), float(np.mean(ram_map["srv-2"])) + assert _rel_diff(ram1, ram2) <= BAL_TOL + + # IDs reported by analyzer + sids = res.list_server_ids() + assert set(sids) == {"srv-1", "srv-2"} diff --git a/tests/system/test_sys_single_server.py b/tests/system/test_sys_single_server.py new file mode 100644 index 0000000..160899c --- /dev/null +++ b/tests/system/test_sys_single_server.py @@ -0,0 +1,136 @@ +"""System test: single-server scenario (deterministic-seeded, reproducible). + +Runs a compact but realistic topology: + + generator → client → srv-1 → client + +Endpoint on srv-1: CPU(1.5 ms) → RAM(96 MB) → IO(10 ms) +Edges: exponential latency ~3 ms each way. + +Assertions (with sensible tolerances): +- non-empty latency stats; mean latency in a plausible band; +- mean throughput close to the nominal λ (±30%); +- sampled metrics exist for srv-1 and are non-empty. +""" + +from __future__ import annotations + +import os +import random +from typing import Dict, List + +import numpy as np +import pytest +import simpy + +from asyncflow import AsyncFlow +from asyncflow.components import Client, Edge, Endpoint, Server +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.settings import SimulationSettings +from asyncflow.workload import RqsGenerator +from asyncflow.config.constants import LatencyKey + +# Mark as system and skip unless explicitly enabled in CI (or locally) +pytestmark = [ + pytest.mark.system, + pytest.mark.skipif( + os.getenv("ASYNCFLOW_RUN_SYSTEM_TESTS") != "1", + reason="System tests disabled (set ASYNCFLOW_RUN_SYSTEM_TESTS=1 to run).", + ), +] + +SEED = 1337 +REL_TOL = 0.30 # 30% tolerance for stochastic expectations + + +def _seed_all(seed: int = SEED) -> None: + random.seed(seed) + np.random.seed(seed) + os.environ["PYTHONHASHSEED"] = str(seed) + + +def _build_payload(): + # Workload: ~26.7 rps (80 users * 20 rpm / 60) + gen = RqsGenerator( + id="rqs-1", + avg_active_users={"mean": 80}, + avg_request_per_minute_per_user={"mean": 20}, + user_sampling_window=60, + ) + client = Client(id="client-1") + + ep = Endpoint( + endpoint_name="/api", + steps=[ + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.0015}}, + {"kind": "ram", "step_operation": {"necessary_ram": 96}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], + ) + srv = Server(id="srv-1", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[ep]) + + edges = [ + Edge( + id="gen-client", + source="rqs-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-srv", + source="client-1", + target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="srv-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + ] + + settings = SimulationSettings( + total_simulation_time=180, # virtual time; keeps wall time fast + sample_period_s=0.05, + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], + ) + + flow = AsyncFlow().add_generator(gen).add_client(client).add_servers(srv).add_edges(*edges) + flow = flow.add_simulation_settings(settings) + return flow.build_payload() + + +def test_system_single_server_end_to_end() -> None: + """End-to-end single-server check with tolerances and seeded RNGs.""" + _seed_all() + + env = simpy.Environment() + runner = SimulationRunner(env=env, simulation_input=_build_payload()) + res: ResultsAnalyzer = runner.run() + + # Latency stats present and plausible + stats = res.get_latency_stats() + assert stats and LatencyKey.TOTAL_REQUESTS in stats + mean_lat = float(stats.get(LatencyKey.MEAN, 0.0)) + assert 0.015 <= mean_lat <= 0.060 + + # Throughput close to nominal lambda + timestamps, rps = res.get_throughput_series() + assert timestamps, "No throughput series produced." + rps_mean = float(np.mean(rps)) + lam = 80 * 20 / 60.0 + assert abs(rps_mean - lam) / lam <= REL_TOL + + # Sampled metrics exist for srv-1 + sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() + for key in ("ready_queue_len", "event_loop_io_sleep", "ram_in_use"): + assert key in sampled and "srv-1" in sampled[key] + assert len(sampled[key]["srv-1"]) > 0 diff --git a/tests/unit/metrics/test_analyzer.py b/tests/unit/metrics/test_analyzer.py index 365cb1c..901b646 100644 --- a/tests/unit/metrics/test_analyzer.py +++ b/tests/unit/metrics/test_analyzer.py @@ -1,4 +1,15 @@ -"""Unit-tests for ``ResultsAnalyzer`` (latency, throughput, plots).""" +"""Extra unit tests for ``ResultsAnalyzer`` helpers and plots. + +This suite complements the basic analyzer tests by exercising: +- formatting helpers (latency stats pretty-printer), +- server-id ordering, +- throughput recomputation with a custom window, +- metric accessors tolerant to enum/string keys, +- per-metric series time bases, +- the compact "base dashboard" plotting helper, +- single-server plots (ready queue, I/O queue, RAM), +- multi-server helpers (axes allocation and error handling). +""" from __future__ import annotations @@ -7,8 +18,8 @@ import pytest from matplotlib.figure import Figure -from asyncflow.config.constants import LatencyKey -from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.analysis import ResultsAnalyzer +from asyncflow.enums import SampledMetricName if TYPE_CHECKING: from asyncflow.runtime.actors.client import ClientRuntime @@ -18,13 +29,13 @@ # ---------------------------------------------------------------------- # -# Dummy objects (test doubles) # +# Test doubles (minimal) # # ---------------------------------------------------------------------- # class DummyClock: - """Clock with *start* / *finish* timestamps to emulate a request.""" + """Clock with *start* and *finish* timestamps to emulate one request.""" def __init__(self, start: float, finish: float) -> None: - """Save *start* and *finish* times.""" + """Initialize a synthetic request completion interval.""" self.start = start self.finish = finish @@ -41,23 +52,23 @@ class DummyName: """Mimic an Enum member that carries a ``.value`` attribute.""" def __init__(self, value: str) -> None: - """Store the dummy string *value*.""" + """Store the underlying string *value* used as a metric key.""" self.value = value class DummyServerConfig: - """Lightweight replacement for the real ``ServerConfig``.""" + """Minimal server config with only the ``id`` attribute.""" def __init__(self, identifier: str) -> None: - """Expose only the *id* field required by the analyzer.""" + """Set the server identifier used by the analyzer.""" self.id = identifier class DummyServer: - """Stub for ``ServerRuntime`` exposing ``enabled_metrics``.""" + """Stub for ``ServerRuntime`` exposing ``enabled_metrics`` and config.""" def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: - """Create a fake server with the given *metrics*.""" + """Create a fake server with the given per-metric time series.""" self.server_config = DummyServerConfig(identifier) self.enabled_metrics = { DummyName(name): values for name, values in metrics.items() @@ -65,18 +76,18 @@ def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: class DummyEdgeConfig: - """Minified replacement for the real ``EdgeConfig``.""" + """Minimal edge config with only the ``id`` attribute.""" def __init__(self, identifier: str) -> None: - """Expose only the *id* property.""" + """Set the edge identifier used by the analyzer.""" self.id = identifier class DummyEdge: - """Stub for ``EdgeRuntime`` exposing ``enabled_metrics``.""" + """Stub for ``EdgeRuntime`` exposing ``enabled_metrics`` and config.""" def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: - """Create a fake edge with the given *metrics*.""" + """Create a fake edge with the given per-metric time series.""" self.edge_config = DummyEdgeConfig(identifier) self.enabled_metrics = { DummyName(name): values for name, values in metrics.items() @@ -84,107 +95,196 @@ def __init__(self, identifier: str, metrics: dict[str, list[float]]) -> None: # ---------------------------------------------------------------------- # -# Fixtures # +# Fixtures # # ---------------------------------------------------------------------- # @pytest.fixture -def simple_analyzer(sim_settings: SimulationSettings) -> ResultsAnalyzer: - """ - Analyzer with two synthetic requests (durations 1 s and 2 s) on a - 3-second horizon and **no** sampled metrics. +def analyzer_with_metrics(sim_settings: SimulationSettings) -> ResultsAnalyzer: + """Provide an analyzer with one server and ready/io/ram signals. + + The fixture sets: + - total_simulation_time = 3 s, + - sample_period_s = 1 s, + - two completed requests at t=1s and t=2s. """ sim_settings.total_simulation_time = 3 - clocks = [DummyClock(0.0, 1.0), DummyClock(0.0, 2.0)] - client = DummyClient(clocks) + sim_settings.sample_period_s = 1.0 + client = DummyClient([DummyClock(0.0, 1.0), DummyClock(0.0, 2.0)]) + server = DummyServer( + "srvX", + { + "ready_queue_len": [0, 1, 2], + "event_loop_io_sleep": [0, 0, 1], + "ram_in_use": [10.0, 20.0, 30.0], + }, + ) + edge = DummyEdge("edgeX", {}) return ResultsAnalyzer( client=cast("ClientRuntime", client), - servers=[], - edges=[], + servers=[cast("ServerRuntime", server)], + edges=[cast("EdgeRuntime", edge)], settings=sim_settings, ) # ---------------------------------------------------------------------- # -# Tests for computed metrics # +# Accessors / formatting # # ---------------------------------------------------------------------- # -def test_latency_stats(simple_analyzer: ResultsAnalyzer) -> None: - stats = simple_analyzer.get_latency_stats() - assert stats[LatencyKey.TOTAL_REQUESTS] == 2.0 - assert stats[LatencyKey.MEAN] == pytest.approx(1.5) - assert stats[LatencyKey.MEDIAN] == pytest.approx(1.5) - assert stats[LatencyKey.MIN] == pytest.approx(1.0) - assert stats[LatencyKey.MAX] == pytest.approx(2.0) - assert stats[LatencyKey.P95] == pytest.approx(1.95, rel=1e-3) +def test_format_latency_stats_contains_header_and_lines( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """Ensure the formatted stats contain a header and canonical keys.""" + text = analyzer_with_metrics.format_latency_stats() + assert "LATENCY STATS" in text + assert "MEAN" in text + assert "MEDIAN" in text + + +def test_list_server_ids_preserves_topology_order( + sim_settings: SimulationSettings, +) -> None: + """Verify that server IDs are returned in topology order.""" + sim_settings.total_simulation_time = 1 + client = DummyClient([]) + s1 = DummyServer("s1", {}) + s2 = DummyServer("s2", {}) + s3 = DummyServer("s3", {}) + an = ResultsAnalyzer( + client=cast("ClientRuntime", client), + servers=[ + cast("ServerRuntime", s1), + cast("ServerRuntime", s2), + cast("ServerRuntime", s3), + ], + edges=[], + settings=sim_settings, + ) + assert an.list_server_ids() == ["s1", "s2", "s3"] -def test_throughput_series(simple_analyzer: ResultsAnalyzer) -> None: - timestamps, rps = simple_analyzer.get_throughput_series() - assert timestamps == [1.0, 2.0, 3.0] - assert rps == [1.0, 1.0, 0.0] +# ---------------------------------------------------------------------- # +# Throughput with custom window # +# ---------------------------------------------------------------------- # +def test_get_throughput_series_custom_window_half_second( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """Check recomputation of throughput with a 0.5 s window.""" + # Completions at 1s and 2s; with 0.5s buckets counts are [0,1,0,1,0,0]. + # Rates are counts / 0.5 => [0, 2, 0, 2, 0, 0]. + ts, rps = analyzer_with_metrics.get_throughput_series(window_s=0.5) + assert ts[:4] == [0.5, 1.0, 1.5, 2.0] + assert rps[:4] == [0.0, 2.0, 0.0, 2.0] -def test_sampled_metrics_empty(simple_analyzer: ResultsAnalyzer) -> None: - assert simple_analyzer.get_sampled_metrics() == {} +# ---------------------------------------------------------------------- # +# Metric map / series helpers # +# ---------------------------------------------------------------------- # +def test_get_metric_map_accepts_enum_and_string( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """Ensure metric retrieval works for enum and raw-string keys.""" + m_enum = analyzer_with_metrics.get_metric_map( + SampledMetricName.READY_QUEUE_LEN, + ) + m_str = analyzer_with_metrics.get_metric_map("ready_queue_len") + + # PT018: split assertions into multiple parts. + assert "srvX" in m_enum + assert "srvX" in m_str + assert m_enum["srvX"] == [0, 1, 2] + assert m_str["srvX"] == [0, 1, 2] + +def test_get_series_respects_sample_period( + sim_settings: SimulationSettings, +) -> None: + """Confirm that series time base honors ``sample_period_s``.""" + sim_settings.total_simulation_time = 5 + sim_settings.sample_period_s = 1.5 + client = DummyClient([]) + server = DummyServer("srv1", {"ready_queue_len": [3, 4, 5]}) + an = ResultsAnalyzer( + client=cast("ClientRuntime", client), + servers=[cast("ServerRuntime", server)], + edges=[], + settings=sim_settings, + ) + times, vals = an.get_series(SampledMetricName.READY_QUEUE_LEN, "srv1") + assert vals == [3, 4, 5] + assert times == [0.0, 1.5, 3.0] # ---------------------------------------------------------------------- # -# Tests for plotting methods # +# Plotting: base dashboard # # ---------------------------------------------------------------------- # -def test_plot_latency_distribution(simple_analyzer: ResultsAnalyzer) -> None: +def test_plot_base_dashboard_sets_titles( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """Validate that the base dashboard sets expected axis titles.""" fig = Figure() - ax = fig.subplots() - simple_analyzer.process_all_metrics() - simple_analyzer.plot_latency_distribution(ax) - assert ax.get_title() == "Request Latency Distribution" + ax_lat, ax_thr = fig.subplots(1, 2) + analyzer_with_metrics.plot_base_dashboard(ax_lat, ax_thr) + assert ax_lat.get_title() == "Request Latency Distribution" + assert ax_thr.get_title() == "Throughput (RPS)" -def test_plot_throughput(simple_analyzer: ResultsAnalyzer) -> None: +# ---------------------------------------------------------------------- # +# Plotting: single-server dedicated plots # +# ---------------------------------------------------------------------- # +def test_plot_single_server_ready_queue( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """Ready-queue plot should have a title and a legend with mean/min/max.""" fig = Figure() ax = fig.subplots() - simple_analyzer.process_all_metrics() - simple_analyzer.plot_throughput(ax) - assert ax.get_title() == "Throughput (RPS)" + analyzer_with_metrics.plot_single_server_ready_queue(ax, "srvX") + assert "Ready Queue" in ax.get_title() + + legend = ax.get_legend() + assert legend is not None + + labels = [t.get_text() for t in legend.get_texts()] + assert any(lbl.lower().startswith("mean") for lbl in labels) + assert any(lbl.lower().startswith("min") for lbl in labels) + assert any(lbl.lower().startswith("max") for lbl in labels) + assert len(labels) == 3 -def test_plot_server_queues_with_data(sim_settings: SimulationSettings) -> None: - sim_settings.total_simulation_time = 3 - client = DummyClient([]) - server = DummyServer("srv1", {"ready_queue_len": [1, 2, 3]}) - edge = DummyEdge("edge1", {}) - analyzer = ResultsAnalyzer( - client=cast("ClientRuntime", client), - servers=[cast("ServerRuntime", server)], - edges=[cast("EdgeRuntime", edge)], - settings=sim_settings, - ) +def test_plot_single_server_io_queue( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """I/O-queue plot should have a title and a legend with mean/min/max.""" fig = Figure() ax = fig.subplots() - analyzer.process_all_metrics() - analyzer.plot_server_queues(ax) - assert ax.get_title() == "Server Queues" + analyzer_with_metrics.plot_single_server_io_queue(ax, "srvX") + + assert "I/O Queue" in ax.get_title() + legend = ax.get_legend() assert legend is not None - texts = [t.get_text() for t in legend.get_texts()] - assert "srv1 Ready queue" in texts + labels = [t.get_text() for t in legend.get_texts()] + assert any(lbl.lower().startswith("mean") for lbl in labels) + assert any(lbl.lower().startswith("min") for lbl in labels) + assert any(lbl.lower().startswith("max") for lbl in labels) + assert len(labels) == 3 -def test_plot_ram_usage_with_data(sim_settings: SimulationSettings) -> None: - sim_settings.total_simulation_time = 3 - client = DummyClient([]) - edge = DummyEdge("edgeA", {"ram_in_use": [10.0, 20.0]}) - analyzer = ResultsAnalyzer( - client=cast("ClientRuntime", client), - servers=[], - edges=[cast("EdgeRuntime", edge)], - settings=sim_settings, - ) +def test_plot_single_server_ram( + analyzer_with_metrics: ResultsAnalyzer, +) -> None: + """RAM plot should have a title and a legend with mean/min/max.""" fig = Figure() ax = fig.subplots() - analyzer.process_all_metrics() - analyzer.plot_ram_usage(ax) - assert ax.get_title() == "RAM Usage" + analyzer_with_metrics.plot_single_server_ram(ax, "srvX") + + assert "RAM" in ax.get_title() + legend = ax.get_legend() assert legend is not None - texts = [t.get_text() for t in legend.get_texts()] - assert "edgeA RAM" in texts + + labels = [t.get_text() for t in legend.get_texts()] + assert any(lbl.lower().startswith("mean") for lbl in labels) + assert any(lbl.lower().startswith("min") for lbl in labels) + assert any(lbl.lower().startswith("max") for lbl in labels) + assert len(labels) == 3 + diff --git a/tests/unit/public_api/test_import.py b/tests/unit/public_api/test_import.py new file mode 100644 index 0000000..cd708bc --- /dev/null +++ b/tests/unit/public_api/test_import.py @@ -0,0 +1,86 @@ +"""Unit tests for the public components import surface. + +Verifies that: +- `asyncflow.components` exposes the expected `__all__`. +- All symbols in `__all__` are importable and are classes. +""" + +from __future__ import annotations + +import importlib +from typing import TYPE_CHECKING + +from asyncflow.components import ( + Client, + Edge, + Endpoint, + LoadBalancer, + Server, + ServerResources, +) +from asyncflow.settings import SimulationSettings +from asyncflow.workload import RqsGenerator, RVConfig + +if TYPE_CHECKING: + from collections.abc import Iterable + + + +def _assert_all_equals(module_name: str, expected: Iterable[str]) -> None: + """Assert that a module's __all__ exactly matches `expected`.""" + mod = importlib.import_module(module_name) + assert hasattr(mod, "__all__"), f"{module_name} is missing __all__" + assert set(mod.__all__) == set(expected), ( + f"{module_name}.__all__ mismatch:\n" + f" expected: {set(expected)}\n" + f" actual: {set(mod.__all__)}" + ) + + +def test_components_public_symbols() -> None: + """`asyncflow.components` exposes the expected names.""" + expected = [ + "Client", + "Edge", + "Endpoint", + "LoadBalancer", + "Server", + "ServerResources", + ] + _assert_all_equals("asyncflow.components", expected) + + +def test_components_symbols_are_importable_classes() -> None: + """All public symbols are importable and are classes.""" + # Basic type sanity (avoid heavy imports/instantiation) + for cls, name in [ + (Client, "Client"), + (Edge, "Edge"), + (Endpoint, "Endpoint"), + (LoadBalancer, "LoadBalancer"), + (Server, "Server"), + (ServerResources, "ServerResources"), + ]: + assert isinstance(cls, type), f"{name} should be a class type" + assert cls.__name__ == name + +def test_workload_public_symbols() -> None: + """`asyncflow.workload` exposes RVConfig and RqsGenerator.""" + _assert_all_equals("asyncflow.workload", ["RVConfig", "RqsGenerator"]) + + +def test_workload_symbols_are_importable_classes() -> None: + """Public symbols are importable and are classes.""" + for cls, name in [(RVConfig, "RVConfig"), (RqsGenerator, "RqsGenerator")]: + assert isinstance(cls, type), f"{name} should be a class" + assert cls.__name__ == name + +def test_settings_public_symbols() -> None: + """`asyncflow.settings` exposes SimulationSettings.""" + _assert_all_equals("asyncflow.settings", ["SimulationSettings"]) + + +def test_settings_symbol_is_importable_class() -> None: + """Public symbol is importable and is a class.""" + assert isinstance(SimulationSettings, type), "SimulationSettings should be a class" + assert SimulationSettings.__name__ == "SimulationSettings" From fb0802711f819d04295d6546278623ca1e769d8a Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Sun, 17 Aug 2025 17:44:47 +0200 Subject: [PATCH 34/35] fixing a bug --- .github/workflows/ci-develop.yml | 91 ++++++++++++++++++++++++-------- .github/workflows/ci-main.yml | 51 ++++++++++++++++++ 2 files changed, 121 insertions(+), 21 deletions(-) diff --git a/.github/workflows/ci-develop.yml b/.github/workflows/ci-develop.yml index 0f82cfd..9727868 100644 --- a/.github/workflows/ci-develop.yml +++ b/.github/workflows/ci-develop.yml @@ -1,51 +1,100 @@ -name: CI – Main Branch (Single Job, System Required) +name: CI – Develop Branch + + +# Triggers +# -------- +# • pull_request → quick job (lint + type-check + unit tests) +# • push → full job (quick job + DB migrations + integration tests + +# Docker build & smoke test) on: pull_request: - branches: [main] - workflow_dispatch: + branches: [develop] + push: + branches: [develop] -concurrency: - group: ci-main-${{ github.ref }} - cancel-in-progress: true -env: - PYTHON_VERSION: "3.12" - MPLBACKEND: Agg - ASYNCFLOW_RUN_SYSTEM_TESTS: "1" +# Job 1 ─ Quick validation (executed only on pull_request events) +# --------------------------------------------------------------------------- # +# Runs fast checks that give reviewers immediate feedback. No external +# services or Docker are used to keep runtime under one minute. jobs: - all-checks: + quick: + if: github.event_name == 'pull_request' runs-on: ubuntu-latest - timeout-minutes: 25 steps: - - uses: actions/checkout@v4 + # Checkout repository + - uses: actions/checkout@v3 - - uses: actions/setup-python@v5 + # Install Python 3.12 + - uses: actions/setup-python@v4 with: - python-version: ${{ env.PYTHON_VERSION }} - cache: 'pip' + python-version: "3.12" + # Restore Poetry cache for faster installs - uses: actions/cache@v3 with: path: ~/.cache/pypoetry key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} - - name: Install Poetry & deps + # Install project + development dependencies + - name: Install dependencies run: | curl -sSL https://install.python-poetry.org | python3 - - export PATH="$HOME/.local/bin:$PATH" poetry config virtualenvs.create false poetry install --with dev --no-interaction - - name: Ruff (lint) + # Code quality gates + - name: Run Ruff (lint & formatting check) run: poetry run ruff check src tests - - name: MyPy (type-check) + - name: Run MyPy (type-check) run: poetry run mypy src tests + + # Unit-tests only (exclude integration markers) + - name: Run unit tests + env: + ENVIRONMENT: test + run: poetry run pytest -m "not integration" --disable-warnings + + + +# Job 2 ─ Full validation (executed only on push events) + full: + if: | + github.event_name == 'push' && + github.ref == 'refs/heads/develop' + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: { python-version: '3.12' } + - uses: actions/cache@v3 + with: + path: ~/.cache/pypoetry + key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} - - name: All tests (unit + integration + system) + - name: Install dependencies + run: | + curl -sSL https://install.python-poetry.org | python3 - + poetry config virtualenvs.create false + poetry install --with dev --no-interaction + + - name: Run Ruff + run: poetry run ruff check src tests + + - name: Run mypy + run: poetry run mypy src + + - name: Run all tests run: | poetry run pytest \ + --cov=src --cov-report=term \ --disable-warnings + + + + \ No newline at end of file diff --git a/.github/workflows/ci-main.yml b/.github/workflows/ci-main.yml index e69de29..dcac0fb 100644 --- a/.github/workflows/ci-main.yml +++ b/.github/workflows/ci-main.yml @@ -0,0 +1,51 @@ +name: CI – Main Branch + +on: + pull_request: + branches: [main] + workflow_dispatch: + +concurrency: + group: ci-main-${{ github.ref }} + cancel-in-progress: true + +env: + PYTHON_VERSION: "3.12" + MPLBACKEND: Agg + ASYNCFLOW_RUN_SYSTEM_TESTS: "1" + +jobs: + all-checks: + runs-on: ubuntu-latest + timeout-minutes: 25 + + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: ${{ env.PYTHON_VERSION }} + cache: 'pip' + + - uses: actions/cache@v3 + with: + path: ~/.cache/pypoetry + key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} + + - name: Install Poetry & deps + run: | + curl -sSL https://install.python-poetry.org | python3 - + export PATH="$HOME/.local/bin:$PATH" + poetry config virtualenvs.create false + poetry install --with dev --no-interaction + + - name: Ruff (lint) + run: poetry run ruff check src tests + + - name: MyPy (type-check) + run: poetry run mypy src tests + + - name: All tests (unit + integration + system) + run: | + poetry run pytest \ + --disable-warnings From 09d99dcba923f16fb628e41091fa8102bf00ad34 Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Sun, 17 Aug 2025 17:57:48 +0200 Subject: [PATCH 35/35] bug fixed --- .gitattributes | 12 ++++ simulation_base.png | Bin 123625 -> 0 bytes tests/system/test_sys_lb_two_servers.py | 60 ++++++++++++------ tests/system/test_sys_single_server.py | 77 ++++++++++++++---------- 4 files changed, 100 insertions(+), 49 deletions(-) create mode 100644 .gitattributes delete mode 100644 simulation_base.png diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..bb973e5 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,12 @@ +# Unix-style line endings (LF) +*.sh text eol=lf +*.py text eol=lf +*.yml text eol=lf +*.yaml text eol=lf +*.toml text eol=lf +*.cfg text eol=lf +*.ini text eol=lf +Makefile text eol=lf + +# PowerShell +*.ps1 text eol=crlf diff --git a/simulation_base.png b/simulation_base.png deleted file mode 100644 index d8c8e16a95d051bdfa46196d8562a93b5dd77f9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123625 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

        d?j-CI{J(L#JWOXwl9ybQ!6QuGv_$J$ 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 z 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%0Dr$n+ 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 T?QF271z|h6tP}m!@4$ZnTPS1< diff --git a/tests/system/test_sys_lb_two_servers.py b/tests/system/test_sys_lb_two_servers.py index 0f7f6eb..b273065 100644 --- a/tests/system/test_sys_lb_two_servers.py +++ b/tests/system/test_sys_lb_two_servers.py @@ -8,7 +8,7 @@ srv-2 → client Each server endpoint: CPU(2 ms) → RAM(128 MB) → IO(12 ms) -Edges: exponential latency ~2–3 ms. +Edges: exponential latency ~2-3 ms. We check: - latency stats / throughput sanity vs nominal λ (~40 rps); - balanced traffic across srv-1 / srv-2 via edge concurrency and RAM means. @@ -18,7 +18,7 @@ import os import random -from typing import Dict, List +from typing import TYPE_CHECKING import numpy as np import pytest @@ -26,11 +26,15 @@ from asyncflow import AsyncFlow from asyncflow.components import Client, Edge, Endpoint, LoadBalancer, Server -from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.settings import SimulationSettings from asyncflow.workload import RqsGenerator -from asyncflow.config.constants import LatencyKey + +if TYPE_CHECKING: + # Imported only for type checking (ruff: TC001) + from asyncflow.metrics.analyzer import ResultsAnalyzer + from asyncflow.schemas.payload import SimulationPayload pytestmark = [ pytest.mark.system, @@ -41,17 +45,17 @@ ] SEED = 4242 -REL_TOL = 0.30 # 30% for λ/latency -BAL_TOL = 0.25 # 25% imbalance tolerated between the two backends +REL_TOL = 0.30 # 30% for λ/latency +BAL_TOL = 0.25 # 25% imbalance tolerated between the two backends def _seed_all(seed: int = SEED) -> None: random.seed(seed) - np.random.seed(seed) + np.random.seed(seed) # noqa: NPY002 os.environ["PYTHONHASHSEED"] = str(seed) -def _build_payload(): +def _build_payload() -> SimulationPayload: gen = RqsGenerator( id="rqs-1", avg_active_users={"mean": 120}, @@ -68,10 +72,22 @@ def _build_payload(): {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.012}}, ], ) - srv1 = Server(id="srv-1", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[endpoint]) - srv2 = Server(id="srv-2", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[endpoint]) + srv1 = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[endpoint], + ) + srv2 = Server( + id="srv-2", + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[endpoint], + ) - lb = LoadBalancer(id="lb-1", algorithms="round_robin", server_covered={"srv-1", "srv-2"}) + lb = LoadBalancer( + id="lb-1", + algorithms="round_robin", + server_covered={"srv-1", "srv-2"}, + ) edges = [ Edge( @@ -151,7 +167,8 @@ def test_system_lb_two_servers_balanced_and_sane() -> None: # Latency sanity stats = res.get_latency_stats() - assert stats and LatencyKey.TOTAL_REQUESTS in stats + assert stats, "Expected non-empty stats." + assert LatencyKey.TOTAL_REQUESTS in stats mean_lat = float(stats.get(LatencyKey.MEAN, 0.0)) assert 0.020 <= mean_lat <= 0.060 @@ -164,15 +181,22 @@ def test_system_lb_two_servers_balanced_and_sane() -> None: # Load balance check: edge concurrency lb→srv1 vs lb→srv2 close sampled = res.get_sampled_metrics() - edge_cc: Dict[str, List[float]] = sampled.get("edge_concurrent_connection", {}) - assert "lb-srv1" in edge_cc and "lb-srv2" in edge_cc - m1, m2 = float(np.mean(edge_cc["lb-srv1"])), float(np.mean(edge_cc["lb-srv2"])) + edge_cc: dict[str, list[float]] = sampled.get( + "edge_concurrent_connection", + {}, + ) + assert "lb-srv1" in edge_cc + assert "lb-srv2" in edge_cc + m1 = float(np.mean(edge_cc["lb-srv1"])) + m2 = float(np.mean(edge_cc["lb-srv2"])) assert _rel_diff(m1, m2) <= BAL_TOL # Server metrics present and broadly similar (RAM means close-ish) - ram_map: Dict[str, List[float]] = sampled.get("ram_in_use", {}) - assert "srv-1" in ram_map and "srv-2" in ram_map - ram1, ram2 = float(np.mean(ram_map["srv-1"])), float(np.mean(ram_map["srv-2"])) + ram_map: dict[str, list[float]] = sampled.get("ram_in_use", {}) + assert "srv-1" in ram_map + assert "srv-2" in ram_map + ram1 = float(np.mean(ram_map["srv-1"])) + ram2 = float(np.mean(ram_map["srv-2"])) assert _rel_diff(ram1, ram2) <= BAL_TOL # IDs reported by analyzer diff --git a/tests/system/test_sys_single_server.py b/tests/system/test_sys_single_server.py index 160899c..ff2cd32 100644 --- a/tests/system/test_sys_single_server.py +++ b/tests/system/test_sys_single_server.py @@ -1,23 +1,23 @@ -"""System test: single-server scenario (deterministic-seeded, reproducible). - -Runs a compact but realistic topology: +"""System test: single server (seeded, reproducible). +Topology: generator → client → srv-1 → client -Endpoint on srv-1: CPU(1.5 ms) → RAM(96 MB) → IO(10 ms) -Edges: exponential latency ~3 ms each way. +Endpoint: + CPU(1 ms) → RAM(64 MB) → IO(10 ms) +Edges: exponential latency ~2-3 ms. -Assertions (with sensible tolerances): -- non-empty latency stats; mean latency in a plausible band; -- mean throughput close to the nominal λ (±30%); -- sampled metrics exist for srv-1 and are non-empty. +Checks: +- latency stats present and plausible (broad bounds); +- throughput roughly consistent with nominal λ; +- basic sampled metrics present for srv-1. """ from __future__ import annotations import os import random -from typing import Dict, List +from typing import TYPE_CHECKING import numpy as np import pytest @@ -25,13 +25,16 @@ from asyncflow import AsyncFlow from asyncflow.components import Client, Edge, Endpoint, Server -from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.settings import SimulationSettings from asyncflow.workload import RqsGenerator -from asyncflow.config.constants import LatencyKey -# Mark as system and skip unless explicitly enabled in CI (or locally) +if TYPE_CHECKING: + # Imported only for type checking (ruff: TC001) + from asyncflow.metrics.analyzer import ResultsAnalyzer + from asyncflow.schemas.payload import SimulationPayload + pytestmark = [ pytest.mark.system, pytest.mark.skipif( @@ -41,16 +44,16 @@ ] SEED = 1337 -REL_TOL = 0.30 # 30% tolerance for stochastic expectations +REL_TOL = 0.35 # generous bound for simple sanity def _seed_all(seed: int = SEED) -> None: random.seed(seed) - np.random.seed(seed) + np.random.seed(seed) # noqa: NPY002 os.environ["PYTHONHASHSEED"] = str(seed) -def _build_payload(): +def _build_payload() -> SimulationPayload: # Workload: ~26.7 rps (80 users * 20 rpm / 60) gen = RqsGenerator( id="rqs-1", @@ -63,12 +66,16 @@ def _build_payload(): ep = Endpoint( endpoint_name="/api", steps=[ - {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.0015}}, - {"kind": "ram", "step_operation": {"necessary_ram": 96}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.001}}, + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, ], ) - srv = Server(id="srv-1", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[ep]) + srv = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 2048}, + endpoints=[ep], + ) edges = [ Edge( @@ -81,7 +88,7 @@ def _build_payload(): id="client-srv", source="client-1", target="srv-1", - latency={"mean": 0.003, "distribution": "exponential"}, + latency={"mean": 0.002, "distribution": "exponential"}, ), Edge( id="srv-client", @@ -92,7 +99,7 @@ def _build_payload(): ] settings = SimulationSettings( - total_simulation_time=180, # virtual time; keeps wall time fast + total_simulation_time=400, sample_period_s=0.05, enabled_sample_metrics=[ "ready_queue_len", @@ -103,13 +110,19 @@ def _build_payload(): enabled_event_metrics=["rqs_clock"], ) - flow = AsyncFlow().add_generator(gen).add_client(client).add_servers(srv).add_edges(*edges) + flow = ( + AsyncFlow() + .add_generator(gen) + .add_client(client) + .add_servers(srv) + .add_edges(*edges) + ) flow = flow.add_simulation_settings(settings) return flow.build_payload() -def test_system_single_server_end_to_end() -> None: - """End-to-end single-server check with tolerances and seeded RNGs.""" +def test_system_single_server_sane() -> None: + """End-to-end single-server scenario: sanity checks with seeded RNGs.""" _seed_all() env = simpy.Environment() @@ -118,19 +131,21 @@ def test_system_single_server_end_to_end() -> None: # Latency stats present and plausible stats = res.get_latency_stats() - assert stats and LatencyKey.TOTAL_REQUESTS in stats + assert stats, "Expected non-empty stats." + assert LatencyKey.TOTAL_REQUESTS in stats mean_lat = float(stats.get(LatencyKey.MEAN, 0.0)) assert 0.015 <= mean_lat <= 0.060 - # Throughput close to nominal lambda - timestamps, rps = res.get_throughput_series() - assert timestamps, "No throughput series produced." + # Throughput sanity vs nominal λ + _, rps = res.get_throughput_series() + assert rps, "No throughput series produced." rps_mean = float(np.mean(rps)) lam = 80 * 20 / 60.0 assert abs(rps_mean - lam) / lam <= REL_TOL - # Sampled metrics exist for srv-1 - sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() + # Sampled metrics present for srv-1 + sampled: dict[str, dict[str, list[float]]] = res.get_sampled_metrics() for key in ("ready_queue_len", "event_loop_io_sleep", "ram_in_use"): - assert key in sampled and "srv-1" in sampled[key] + assert key in sampled + assert "srv-1" in sampled[key] assert len(sampled[key]["srv-1"]) > 0

        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¬ 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 3.12 to be available (via 'py' launcher or python.exe). +# - We do NOT delete an existing .venv; it will be reused if compatible. + +# Strict error handling +$ErrorActionPreference = 'Stop' +Set-StrictMode -Version Latest + +# --- helpers ------------------------------------------------------------------ + +function Write-Info { param([string]$Msg) Write-Host "==> $Msg" } +function Write-Ok { param([string]$Msg) Write-Host "✅ $Msg" -ForegroundColor Green } +function Fail { param([string]$Msg) Write-Error $Msg; exit 1 } + +# Resolve repo root (this script lives in scripts/) +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +$RepoRoot = Resolve-Path (Join-Path $ScriptDir '..') + +function Require-Pyproject { + if (-not (Test-Path (Join-Path $RepoRoot 'pyproject.toml'))) { + Fail "pyproject.toml not found at repo root ($RepoRoot)" + } +} + +function Get-PythonPath-3_12Plus { + <# + Try common Windows launchers/executables and return the *actual* Python + interpreter path (sys.executable) for a version >= 3.12. + #> + $candidates = @( + @('py', '-3.13'), + @('py', '-3.12'), + @('py', '-3'), + @('python3.13'), + @('python3.12'), + @('python') + ) + + foreach ($cand in $candidates) { + $exe = $cand[0] + $args = @() + if ($cand.Count -gt 1) { $args = $cand[1..($cand.Count-1)] } + + if (-not (Get-Command $exe -ErrorAction SilentlyContinue)) { continue } + + # Check version + & $exe @args -c "import sys; import sys as s; raise SystemExit(0 if sys.version_info[:2] >= (3,12) else 1)" 2>$null + if ($LASTEXITCODE -ne 0) { continue } + + # Obtain the real interpreter path + $pyPath = & $exe @args -c "import sys; print(sys.executable)" 2>$null + if ($LASTEXITCODE -eq 0 -and $pyPath) { + return $pyPath.Trim() + } + } + + return $null +} + +function Ensure-Poetry { + if (Get-Command poetry -ErrorAction SilentlyContinue) { + poetry --version | Out-Null + return + } + + Write-Info "Poetry not found; attempting installation…" + + # Official installer (recommended by Poetry) + $installer = (Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content + # Pipe installer to Python (stdin) + $pythonToUse = (Get-Command py -ErrorAction SilentlyContinue) ? 'py' : 'python' + $installer | & $pythonToUse - + + # Common locations (make available for current session) + $poetryCandidates = @( + (Join-Path $env:APPDATA 'pypoetry\venv\Scripts'), + (Join-Path $env:USERPROFILE '.local\bin') + ) + foreach ($p in $poetryCandidates) { + if (Test-Path $p) { $env:Path = "$p;$env:Path" } + } + + if (-not (Get-Command poetry -ErrorAction SilentlyContinue)) { + Fail "Poetry installation failed (not on PATH). Close & reopen PowerShell or add the Poetry path to PATH." + } + + poetry --version | Out-Null +} + +function Run-Tests-WithOptionalCoverage { + <# + Try pytest with coverage first; if the plugin is missing, + fall back to plain pytest. Propagate failure if tests fail. + #> + $cmd = { poetry run pytest --cov=src --cov-report=term-missing:skip-covered --cov-report=xml --disable-warnings -q } + try { + & $cmd + if ($LASTEXITCODE -eq 0) { + Write-Ok "Tests (with coverage) PASSED" + return + } + } catch { + # ignore; retry without coverage below + } + + Write-Info "Coverage run failed (likely pytest-cov not installed). Falling back to plain pytest…" + poetry run pytest --disable-warnings -q + if ($LASTEXITCODE -ne 0) { + Fail "Tests FAILED" + } + Write-Ok "Tests PASSED" +} + +# --- main --------------------------------------------------------------------- + +Set-Location $RepoRoot +Require-Pyproject + +$PythonExe = Get-PythonPath-3_12Plus +if (-not $PythonExe) { + Fail "Python >= 3.12 not found. Install Python 3.12+ and re-run." +} +Write-Info ("Using Python: " + (& $PythonExe -V)) + +Ensure-Poetry + +# Make sure Poetry venv lives inside the repo +Write-Info "Configuring Poetry to use in-project virtualenv (.venv)…" +poetry config virtualenvs.in-project true +Write-Ok "Poetry configured to use .venv" + +# Bind Poetry to the chosen interpreter (creates .venv if needed) +poetry env use "$PythonExe" | Out-Null +Write-Ok "Virtualenv ready (.venv)" + +# Policy: always remove lock to avoid conflicts across environments +$lockPath = Join-Path $RepoRoot 'poetry.lock' +if (Test-Path $lockPath) { + Write-Info "Removing poetry.lock for a clean resolution…" + Remove-Item $lockPath -Force + Write-Ok "poetry.lock removed" +} + +# Faster installs and stable headless plotting +$env:PIP_DISABLE_PIP_VERSION_CHECK = '1' +$env:MPLBACKEND = 'Agg' + +Write-Info "Installing project with dev extras…" +poetry install --with dev --no-interaction --no-ansi +Write-Ok "Dependencies installed (dev)" + +Write-Info "Running Ruff (lint)…" +poetry run ruff check src tests +Write-Ok "Ruff PASSED" + +Write-Info "Running MyPy (type-check)…" +poetry run mypy src tests +Write-Ok "MyPy PASSED" + +Write-Info "Running tests (with coverage if available)…" +Run-Tests-WithOptionalCoverage + +Write-Ok "All checks completed SUCCESSFULLY 🎉" diff --git a/scripts/dev_setup.sh b/scripts/dev_setup.sh new file mode 100644 index 0000000..fe97c0c --- /dev/null +++ b/scripts/dev_setup.sh @@ -0,0 +1,135 @@ +# Post-clone developer setup for AsyncFlow (Linux/macOS/WSL). +# +# What it does: +# 1) Ensures Poetry is available (prefers pipx if present; otherwise uses +# the official installer). +# 2) Configures Poetry to create an in-project virtualenv (.venv). +# 3) Removes poetry.lock (fresh dependency resolution by policy). +# 4) Installs the project with dev extras. +# 5) Runs ruff, mypy, and pytest (with coverage if available). +# +# Usage: +# bash scripts/dev_setup.sh +# +# Notes: +# - Run this from anywhere; it will cd to repo root. +# - Requires Python >= 3.12 to be available (python3.12 or python3). +# - We do NOT delete an existing .venv; it will be reused if compatible. + +set -Eeuo pipefail + +# --- helpers ----------------------------------------------------------------- + +repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" + +err() { echo "ERROR: $*" >&2; exit 1; } +info() { echo "==> $*"; } +ok() { echo "✅ $*"; } + +require_pyproject() { + [[ -f "$repo_root/pyproject.toml" ]] || err "pyproject.toml not found at repo root ($repo_root)" +} + +pick_python() { + # Return a python executable >= 3.12 + for cand in python3.13 python3.12 python3; do + if command -v "$cand" >/dev/null 2>&1; then + if "$cand" -c 'import sys; sys.exit(0 if sys.version_info[:2] >= (3,12) else 1)'; then + echo "$cand" + return 0 + fi + fi + done + err "Python >= 3.12 not found. Install python3.12+ and re-run." +} + +ensure_poetry() { + if command -v poetry >/dev/null 2>&1; then + poetry --version || true + return 0 + fi + + info "Poetry not found; attempting installation…" + + if command -v pipx >/dev/null 2>&1; then + pipx install poetry || pipx upgrade poetry || true + else + # Official installer (recommended by Poetry) — installs to ~/.local/bin + curl -sSL https://install.python-poetry.org | python3 - + export PATH="$HOME/.local/bin:$PATH" + fi + + # Ensure poetry is now available on PATH + export PATH="$HOME/.local/bin:$PATH" + command -v poetry >/dev/null 2>&1 || err "Poetry installation failed (not on PATH)." + poetry --version || true +} + +run_tests_with_optional_coverage() { + # Try pytest with coverage first; if plugin missing, fallback to plain pytest. + set +e + poetry run pytest \ + --cov=src \ + --cov-report=term-missing:skip-covered \ + --cov-report=xml \ + --disable-warnings -q + local status=$? + set -e + + if [[ $status -eq 0 ]]; then + ok "Tests (with coverage) PASSED" + return 0 + fi + + info "Coverage run failed (likely pytest-cov not installed). Falling back to plain pytest…" + + poetry run pytest --disable-warnings -q + ok "Tests PASSED" +} + +# --- main -------------------------------------------------------------------- + +cd "$repo_root" +require_pyproject + +PY_BIN="$(pick_python)" +info "Using Python: $("$PY_BIN" -V)" + +ensure_poetry + +# Make sure Poetry venv lives inside the repo +info "Configuring Poetry to use in-project virtualenv (.venv)…" +poetry config virtualenvs.in-project true +ok "Poetry configured to use .venv" + +# Bind Poetry to the chosen interpreter (creates .venv if needed) +poetry env use "$PY_BIN" >/dev/null 2>&1 || true +ok "Virtualenv ready (.venv)" + +# Policy: always remove lock to avoid conflicts across environments +if [[ -f poetry.lock ]]; then + info "Removing poetry.lock for a clean resolution…" + rm -f poetry.lock + ok "poetry.lock removed" +fi + +# Faster installs and stable headless plotting +export PIP_DISABLE_PIP_VERSION_CHECK=1 +export MPLBACKEND=Agg + +info "Installing project with dev extras…" +poetry install --with dev --no-interaction --no-ansi +ok "Dependencies installed (dev)" + +info "Running Ruff (lint)…" +poetry run ruff check src tests +ok "Ruff PASSED" + +info "Running MyPy (type-check)…" +poetry run mypy src tests +ok "MyPy PASSED" + +info "Running tests (with coverage if available)…" +run_tests_with_optional_coverage + +ok "All checks completed SUCCESSFULLY 🎉" diff --git a/scripts/quality_check.ps1 b/scripts/quality_check.ps1 new file mode 100644 index 0000000..74bbd4c --- /dev/null +++ b/scripts/quality_check.ps1 @@ -0,0 +1,14 @@ +# Lint & format with Ruff (applies --fix) and type-check with MyPy. +# Usage: +# .\scripts\quality_check.ps1 + +$ErrorActionPreference = 'Stop' +Set-StrictMode -Version Latest + +# Ruff (lint + auto-fix) +poetry run ruff check src tests --fix + +# MyPy (type-check) +poetry run mypy src tests + +Write-Host "✅ Linting and type-checking completed SUCCESSFULLY" diff --git a/scripts/quality-check.sh b/scripts/quality_check.sh similarity index 92% rename from scripts/quality-check.sh rename to scripts/quality_check.sh index eb2a66f..85c269e 100644 --- a/scripts/quality-check.sh +++ b/scripts/quality_check.sh @@ -1,4 +1,3 @@ -#!/usr/bin/env bash set -euo pipefail # Lint & format with ruff, automatic corrections applied (--fix) diff --git a/scripts/run_sys_tests.ps1 b/scripts/run_sys_tests.ps1 new file mode 100644 index 0000000..aa3630f --- /dev/null +++ b/scripts/run_sys_tests.ps1 @@ -0,0 +1,55 @@ +# Run only system tests (marked @pytest.mark.system) with the required env var. +# Keeps output concise (no XML, no slowest list), shows the usual pytest summary. +# +# Usage: +# .\scripts\run_system_tests.ps1 +# +# Notes: +# - Uses `poetry run` when Poetry + pyproject.toml are present; otherwise falls back to `pytest`. +# - Forces a headless backend for any plots generated during tests. + +Set-StrictMode -Version Latest +$ErrorActionPreference = 'Stop' + +# Resolve repo root +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +$RepoRoot = Resolve-Path (Join-Path $ScriptDir '..') + +# Collect test paths (default: tests/system) +if ($args.Count -ge 1) { + $TestPaths = $args +} else { + $TestPaths = @('tests/system') +} + +# Decide runner prefix +$UsePoetry = (Get-Command poetry -ErrorAction SilentlyContinue) -ne $null -and + (Test-Path (Join-Path $RepoRoot 'pyproject.toml')) +$Runner = if ($UsePoetry) { 'poetry run pytest' } else { 'pytest' } + +# Set env vars for this process +$env:MPLBACKEND = if ($env:MPLBACKEND) { $env:MPLBACKEND } else { 'Agg' } +$env:ASYNCFLOW_RUN_SYSTEM_TESTS = '1' + +Push-Location $RepoRoot +try { + Write-Host "==> Running system tests…" + # Clear any configured addopts and run only system-marked tests + $pytestArgs = @( + '-o', 'addopts=', + '-m', 'system', + '--disable-warnings', + '-q' + ) + $TestPaths + + if ($UsePoetry) { + poetry run pytest @pytestArgs + } else { + pytest @pytestArgs + } + + Write-Host "✅ System tests PASSED" +} +finally { + Pop-Location +} diff --git a/scripts/run_sys_tests.sh b/scripts/run_sys_tests.sh new file mode 100644 index 0000000..78ee74b --- /dev/null +++ b/scripts/run_sys_tests.sh @@ -0,0 +1,42 @@ +# Run only system tests (marked @pytest.mark.system) with the required env var. +# Keeps output concise (no XML, no slowest list), shows the usual pytest summary. +# +# Usage: +# bash scripts/run_system_tests.sh +# +# Notes: +# - Uses `poetry run` when Poetry + pyproject.toml are present; otherwise falls back to `pytest`. +# - Forces a headless backend for any plots generated during tests. + +set -Eeuo pipefail + +# Pick test paths (default to tests/system) +if [[ $# -ge 1 ]]; then + TEST_PATHS=("$@") +else + TEST_PATHS=(tests/system) +fi + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +RUN_PREFIX="" +if command -v poetry >/dev/null 2>&1 && [[ -f "$REPO_ROOT/pyproject.toml" ]]; then + RUN_PREFIX="poetry run" +fi + +# Headless plotting; enable system tests +export MPLBACKEND="${MPLBACKEND:-Agg}" +export ASYNCFLOW_RUN_SYSTEM_TESTS=1 + +cd "$REPO_ROOT" + +echo "==> Running system tests…" +# Clear any configured addopts and run only system-marked tests +# Keep output short but with the final summary line. +$RUN_PREFIX pytest \ + -o addopts= \ + -m system \ + --disable-warnings \ + -q \ + "${TEST_PATHS[@]}" + +echo "✅ System tests PASSED" diff --git a/scripts/run_tests.ps1 b/scripts/run_tests.ps1 new file mode 100644 index 0000000..86bacfd --- /dev/null +++ b/scripts/run_tests.ps1 @@ -0,0 +1,39 @@ +# Run tests with coverage ONLY (no XML, no durations), showing pytest’s usual summary. +# It also overrides any configured addopts (e.g. durations/xml) via `-o addopts=`. +# +# Usage: +# .\scripts\run_tests.ps1 + +$ErrorActionPreference = 'Stop' +Set-StrictMode -Version Latest + +# Pick test paths +[string[]]$TestPaths = if ($args.Count -ge 1) { $args } else { @('tests') } + +# Resolve repo root (this script lives in scripts/) +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +$RepoRoot = Resolve-Path (Join-Path $ScriptDir '..') + +# Use Poetry if available and pyproject exists +$RunWithPoetry = (Get-Command poetry -ErrorAction SilentlyContinue) -and (Test-Path (Join-Path $RepoRoot 'pyproject.toml')) + +# Headless backend if plots are generated during tests +if (-not $env:MPLBACKEND) { $env:MPLBACKEND = 'Agg' } + +Set-Location $RepoRoot + +# Build command +$cmd = @() +if ($RunWithPoetry) { $cmd += @('poetry', 'run') } +$cmd += 'pytest' +$cmd += @( + '-o', 'addopts=', + '--cov=src', + '--cov-report=term', + '--disable-warnings', + '-q' +) +$cmd += $TestPaths + +# Execute +& $cmd diff --git a/scripts/run_tests.sh b/scripts/run_tests.sh new file mode 100644 index 0000000..089d8e4 --- /dev/null +++ b/scripts/run_tests.sh @@ -0,0 +1,34 @@ +# Run tests with coverage ONLY (no XML, no durations), showing pytest’s usual summary. +# It also overrides any configured addopts (e.g. durations/xml) via `-o addopts=`. +# +# Usage: +# bash scripts/run_tests.sh +set -Eeuo pipefail + +# Pick test paths +if [[ $# -ge 1 ]]; then + TEST_PATHS=("$@") +else + TEST_PATHS=(tests) +fi + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +RUN_PREFIX="" +if command -v poetry >/dev/null 2>&1 && [[ -f "$REPO_ROOT/pyproject.toml" ]]; then + RUN_PREFIX="poetry run" +fi + +# Headless backend if plots are generated during tests +export MPLBACKEND="${MPLBACKEND:-Agg}" + +cd "$REPO_ROOT" + +# Run pytest with coverage summary in terminal, no xml, no durations, +# and wipe any addopts coming from config files. +$RUN_PREFIX pytest \ + -o addopts= \ + --cov=src \ + --cov-report=term \ + --disable-warnings \ + -q \ + "${TEST_PATHS[@]}" diff --git a/simulation_base.png b/simulation_base.png new file mode 100644 index 0000000000000000000000000000000000000000..d8c8e16a95d051bdfa46196d8562a93b5dd77f9f GIT binary patch literal 123625 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

      U(6%To;`j@eUs*;>iN8%54S^P1?|gq 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%0Ah{~$w5~J&OlVMJmnIqt%S3yHS!jarcGfj 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

    >-Ezl4J<+m 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 q1t%!sf4rU3fKjIy6$Y3BtvMzV``oPIm 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 QLcv2%%SiL_Hk*L|1;`QnZU6uP diff --git a/examples/yaml_input/load_balancer/two_servers.py b/examples/yaml_input/load_balancer/two_servers.py index afc4408..1a01277 100644 --- a/examples/yaml_input/load_balancer/two_servers.py +++ b/examples/yaml_input/load_balancer/two_servers.py @@ -1,282 +1,69 @@ #!/usr/bin/env python3 """ -Run an AsyncFlow scenario with a Load Balancer (2 servers) from YAML and print diagnostics. - -What it does: -- Loads the simulation payload from YAML via `SimulationRunner.from_yaml`. -- Runs the simulation. -- Prints latency stats, 1s-bucket throughput, and a preview of sampled metrics. -- Saves four plots (latency histogram, throughput, server queues, RAM). -- Performs sanity checks (expected vs observed) with simple LB-aware heuristics. - -Usage: - python src/app/example/run_lb_from_yaml.py \ - --yaml src/app/example/data/two_servers_lb.yml +Walkthrough: run a Load-Balanced (2 servers) AsyncFlow scenario from YAML. + +What this script does +--------------------- +1) Loads the SimulationPayload from a YAML file (round-robin LB, 2 identical servers). +2) Runs the simulation via `SimulationRunner`. +3) Prints a concise latency summary to stdout. +4) Saves plots **in the same folder as this script**: + • `lb_dashboard.png` (Latency histogram + Throughput) + • One figure per server with 3 panels: Ready Queue, I/O Queue, RAM usage. + +How to use +---------- +- Put this script and `two_servers_lb.yml` in the same directory. +- Run: `python run_lb_from_yaml.py` """ from __future__ import annotations -from argparse import ArgumentParser from pathlib import Path -from typing import Dict, Iterable, List, Mapping, Tuple - -import matplotlib.pyplot as plt -import numpy as np import simpy +import matplotlib.pyplot as plt -from asyncflow.config.constants import ( # only for basic step-kind/ops inspection - EndpointStepCPU, - EndpointStepIO, - EndpointStepRAM, - LatencyKey, - StepOperation, -) -from asyncflow.metrics.analyzer import ResultsAnalyzer from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer -# ───────────────────────────────────────────────────────────── -# Pretty printers (same style as your single-server script) -# ───────────────────────────────────────────────────────────── -def print_latency_stats(res: ResultsAnalyzer) -> None: - """Print latency statistics returned by the analyzer.""" - stats: Mapping[LatencyKey, float] = res.get_latency_stats() - print("\n════════ LATENCY STATS ════════") - if not stats: - print("(empty)") - return - - order: List[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") - - -def print_throughput(res: ResultsAnalyzer) -> None: - """Print 1-second throughput buckets.""" - timestamps, rps = res.get_throughput_series() - print("\n════════ THROUGHPUT (req/sec) ════════") - if not timestamps: - print("(empty)") - return - - for t, rate in zip(timestamps, rps): - print(f"t={t:4.1f}s → {rate:6.2f} rps") - - -def print_sampled_preview(res: ResultsAnalyzer) -> None: - """Print first 5 samples of each sampled metric series.""" - sampled: Dict[str, Dict[str, List[float]]] = res.get_sampled_metrics() - print("\n════════ SAMPLED METRICS ════════") - if not sampled: - print("(empty)") - return - - for metric, series in sampled.items(): - print(f"\n📈 {metric}:") - for entity, vals in series.items(): - head = list(vals[:5]) if vals else [] - print(f" - {entity}: len={len(vals)}, first={head}") - - -# ───────────────────────────────────────────────────────────── -# Plotting -# ───────────────────────────────────────────────────────────── -def save_all_plots(res: ResultsAnalyzer, out_path: Path) -> None: - """Generate the 2x2 plot figure and save it to `out_path`.""" - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) - res.plot_latency_distribution(axes[0, 0]) - res.plot_throughput(axes[0, 1]) - res.plot_server_queues(axes[1, 0]) - res.plot_ram_usage(axes[1, 1]) - fig.tight_layout() - fig.savefig(out_path) - print(f"\n🖼️ Plots saved to: {out_path}") - - -# ───────────────────────────────────────────────────────────── -# Sanity checks (LB-aware, still rough) -# ───────────────────────────────────────────────────────────── - -def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: - """ - Sanity checks LB-aware (round-robin): observed vs expected - """ - from asyncflow.config.constants import ( - EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation, LatencyKey - ) - import numpy as np - - def _mean(arr): - a = np.asarray(list(arr), dtype=float) - return float(a.mean()) if a.size else 0.0 - - # 1) λ - w = runner.simulation_input.rqs_input - lam = float(w.avg_active_users.mean) * float(w.avg_request_per_minute_per_user.mean) / 60.0 - - topo = runner.simulation_input.topology_graph - servers = {s.id: s for s in topo.nodes.servers} - client_id = topo.nodes.client.id - lb = topo.nodes.load_balancer - lb_id = lb.id if lb else None - gen_id = runner.simulation_input.rqs_input.id - - # 2) LB (round_robin -> 1/N) - if lb and lb.server_covered: - covered = [sid for sid in lb.server_covered if sid in servers] - N = max(1, len(covered)) - shares = {sid: 1.0 / N for sid in covered} - else: - only = next(iter(servers.keys())) - shares = {only: 1.0} - - # 3) endpoint totals per server - def endpoint_totals(server): - cpu_s = io_s = ram_mb = 0.0 - for ep in getattr(server, "endpoints", []) or []: - prob = getattr(ep, "probability", 1.0) - for step in ep.steps: - k = step.kind - op = step.step_operation - if isinstance(k, EndpointStepCPU): - cpu_s += prob * float(op[StepOperation.CPU_TIME]) - elif isinstance(k, EndpointStepIO): - io_s += prob * float(op[StepOperation.IO_WAITING_TIME]) - elif isinstance(k, EndpointStepRAM): - ram_mb += prob * float(op[StepOperation.NECESSARY_RAM]) - return cpu_s, io_s, ram_mb - - per_srv = {sid: endpoint_totals(srv) for sid, srv in servers.items()} - - # 4) mappa latencies of edges per role (source,target) - mean_gen_client = 0.0; id_gen_client = None - mean_client_lb = 0.0; id_client_lb = None - mean_lb_srv = {} # sid -> mean - mean_srv_client = {} # sid -> mean - id_lb_srv = {} # sid -> edge_id - id_srv_client = {} # sid -> edge_id - - for e in topo.edges: - s, t, mu = e.source, e.target, float(e.latency.mean) - if s == gen_id and t == client_id: - mean_gen_client = mu; id_gen_client = e.id - elif s == client_id and lb_id and t == lb_id: - mean_client_lb = mu; id_client_lb = e.id - elif lb_id and s == lb_id and t in servers: - mean_lb_srv[t] = mu; id_lb_srv[t] = e.id - elif s in servers and t == client_id: - mean_srv_client[s] = mu; id_srv_client[s] = e.id - - # 5) expected: average latencies - cpu_exp = sum(shares[sid] * per_srv[sid][0] for sid in shares) - io_exp = sum(shares[sid] * per_srv[sid][1] for sid in shares) - net_exp = ( - mean_gen_client + mean_client_lb + - sum(shares[sid] * (mean_lb_srv.get(sid, 0.0) + mean_srv_client.get(sid, 0.0)) for sid in shares) - ) - latency_expected = cpu_exp + io_exp + net_exp - - # 6) observed: throughput & latencies - stats = res.get_latency_stats() - latency_observed = float(stats.get(LatencyKey.MEAN, 0.0)) - _, rps_series = res.get_throughput_series() - rps_observed = _mean(rps_series) - - # 7) expected: RAM e I/O queue as a sum over server - ram_expected = sum((shares[sid] * lam) * (per_srv[sid][0] + per_srv[sid][1]) * per_srv[sid][2] for sid in shares) - ioq_expected = sum((shares[sid] * lam) * per_srv[sid][1] for sid in shares) - - # 8) observed: RAM (sum) and I/O queue sum - sampled = res.get_sampled_metrics() - ram_series = sampled.get("ram_in_use", {}) - ioq_series = sampled.get("event_loop_io_sleep", {}) - ram_observed = sum(_mean(vals) for vals in ram_series.values()) if ram_series else 0.0 - ioq_observed = sum(_mean(vals) for vals in ioq_series.values()) if ioq_series else 0.0 - - # 9) print - REL_TOL = 0.30 - def tick(label, exp, obs): - delta = (abs(obs - exp) / abs(exp)) if exp else 0.0 - icon = "✓" if delta <= REL_TOL else "⚠" - print(f"{icon} {label:<28} expected≈{exp:.3f} observed={obs:.3f} Δ={delta*100:.1f}%") - - print("\n════════ SANITY CHECKS (LB-aware) ════════") - tick("Mean throughput (rps)", lam, rps_observed) - tick("Mean latency (s)", latency_expected, latency_observed) - tick("Mean RAM (MB)", ram_expected, ram_observed) - tick("Mean I/O queue", ioq_expected, ioq_observed) - - # 10) Edge concurrency estimation - edge_conc = sampled.get("edge_concurrent_connection", {}) - if edge_conc: - print("\n— Edge concurrency (LB-aware) —") - means_obs = {eid: _mean(vals) for eid, vals in edge_conc.items()} - - if id_gen_client: - tick(f"edge {id_gen_client}", lam * mean_gen_client, means_obs.get(id_gen_client, 0.0)) - if id_client_lb: - tick(f"edge {id_client_lb}", lam * mean_client_lb, means_obs.get(id_client_lb, 0.0)) - - for sid, p in shares.items(): - lam_i = p * lam - eid = id_lb_srv.get(sid) - if eid: - tick(f"edge {eid}", lam_i * mean_lb_srv.get(sid, 0.0), means_obs.get(eid, 0.0)) - eid = id_srv_client.get(sid) - if eid: - tick(f"edge {eid}", lam_i * mean_srv_client.get(sid, 0.0), means_obs.get(eid, 0.0)) - - # Extra - print("\n— Diagnostics —") - print("λ={:.3f} rps | E[cpu]={:.3f}s E[io]={:.3f}s E[net]≈{:.3f}s | E[RAM/req]={:.1f} MB" - .format(lam, cpu_exp, io_exp, net_exp, sum(shares[sid]*per_srv[sid][2] for sid in shares))) - - - -# ───────────────────────────────────────────────────────────── -# Main -# ───────────────────────────────────────────────────────────── def main() -> None: - """Parse args, run simulation, print/plot, sanity-check (LB topology).""" - parser = ArgumentParser(description="Run AsyncFlow LB scenario from YAML and print outputs + sanity checks.") - parser.add_argument( - "--yaml", - type=Path, - default=Path(__file__).parent.parent / "data" / "two_servers_lb.yml", - help="Path to the simulation YAML file.", - ) - parser.add_argument( - "--out", - type=Path, - default=Path(__file__).parent / "two_servers.png", - help="Path to the output image (plots).", - ) - args = parser.parse_args() - - yaml_path: Path = args.yaml + # Paths (same directory as this script) + script_dir = Path(__file__).parent.parent + yaml_path = script_dir / "data" / "two_servers_lb.yml" if not yaml_path.exists(): - raise FileNotFoundError(f"YAML not found: {yaml_path}") + raise FileNotFoundError(f"YAML configuration not found: {yaml_path}") + # Run the simulation + print(f"🚀 Loading and running simulation from: {yaml_path}") env = simpy.Environment() runner = SimulationRunner.from_yaml(env=env, yaml_path=yaml_path) results: ResultsAnalyzer = runner.run() - - print_latency_stats(results) - print_throughput(results) - print_sampled_preview(results) - - run_sanity_checks(runner, results) - save_all_plots(results, args.out) + print("✅ Simulation finished!") + + # Print concise latency summary + print(results.format_latency_stats()) + + # ---- Plots: dashboard (latency + throughput) ---- + fig_dash, axes_dash = plt.subplots(1, 2, figsize=(14, 5), dpi=160) + results.plot_latency_distribution(axes_dash[0]) + results.plot_throughput(axes_dash[1]) + fig_dash.tight_layout() + out_dashboard = script_dir / "lb_dashboard.png" + fig_dash.savefig(out_dashboard) + print(f"🖼️ Dashboard saved to: {out_dashboard}") + + # ---- Per-server metrics: one figure per server (Ready | I/O | RAM) ---- + for sid in results.list_server_ids(): + fig_row, axes = plt.subplots(1, 3, figsize=(16, 3.8), dpi=160) + results.plot_single_server_ready_queue(axes[0], sid) + results.plot_single_server_io_queue(axes[1], sid) + results.plot_single_server_ram(axes[2], sid) + fig_row.suptitle(f"Server metrics — {sid}", y=1.04, fontsize=14) + fig_row.tight_layout() + out_path = script_dir / f"lb_server_{sid}_metrics.png" + fig_row.savefig(out_path, bbox_inches="tight") + print(f"🖼️ Server metrics for '{sid}' saved to: {out_path}") if __name__ == "__main__": diff --git a/examples/yaml_input/single_server/single_server.png b/examples/yaml_input/single_server/single_server.png deleted file mode 100644 index c03f9b2de87af82624bf5ec9c58f3fc78c31e44d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155288 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

  • sSSS}vbhzQU@L+8{3Jfuu|2DGfE3)%mL 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 diff --git a/examples/builder_input/single_server/single_server.py b/examples/builder_input/single_server/single_server.py index 6088a12..bb54344 100644 --- a/examples/builder_input/single_server/single_server.py +++ b/examples/builder_input/single_server/single_server.py @@ -1,179 +1,53 @@ #!/usr/bin/env python3 """ -Didactic example: build and run a AsyncFlow scenario **without** YAML, -using the 'builder' (AsyncFlow) to assemble the SimulationPayload. +AsyncFlow builder example — build, run, and visualize a single-server async system. -Scenario reproduced (same as the previous YAML): +Topology (single server) generator ──edge──> client ──edge──> server ──edge──> client -Load: - ~100 active users, 20 req/min each. - -Server: - 1 CPU core, 2GB RAM, endpoint with steps: - CPU(1ms) → RAM(100MB) → IO(100ms) - -Network: - 3ms mean (exponential) latency on each edge. - -What this script does: - 1) Build Pydantic models (generator, client, server, edges, settings). - 2) Compose the final SimulationPayload via AsyncFlow (builder pattern). - 3) Run the simulation with SimulationRunner. - 4) Print latency stats, throughput timeline, and a sampled-metrics preview. - 5) (Optional) Visualize the topology with Matplotlib. - -Run: - python run_with_builder.py +Load model + ~100 active users, 20 requests/min each (Poisson-like aggregate). + +Server model + 1 CPU core, 2 GB RAM + Endpoint pipeline: CPU(1 ms) → RAM(100 MB) → I/O wait (100 ms) + Semantics: + - CPU step blocks the event loop + - RAM step holds a working set until request completion + - I/O step is non-blocking (event-loop friendly) + +Network model + Each edge has exponential latency with mean 3 ms. + +Outputs + - Prints latency statistics to stdout + - Saves a 2×2 PNG in the same directory as this script: + [0,0] Latency histogram (with mean/P50/P95/P99) + [0,1] Throughput (with mean/P95/max overlays) + [1,0] Ready queue for the first server + [1,1] RAM usage for the first server """ from __future__ import annotations from pathlib import Path -from typing import Iterable, List, Mapping - -import numpy as np import simpy +import matplotlib.pyplot as plt -# ── AsyncFlow domain imports ─────────────────────────────────────────────────── -from asyncflow.builder.asyncflow_builder import AsyncFlow +# Public AsyncFlow API (builder) +from asyncflow import AsyncFlow +from asyncflow.components import Client, Server, Edge, Endpoint +from asyncflow.settings import SimulationSettings +from asyncflow.workload import RqsGenerator + +# Runner + Analyzer from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.metrics.analyzer import ResultsAnalyzer -from asyncflow.schemas.payload import SimulationPayload -from asyncflow.schemas.workload.rqs_generator import RqsGenerator -from asyncflow.schemas.settings.simulation import SimulationSettings -from asyncflow.schemas.topology.endpoint import Endpoint -from asyncflow.schemas.topology.nodes import ( - Client, - Server, -) -from asyncflow.schemas.topology.edges import Edge - -from asyncflow.config.constants import LatencyKey, SampledMetricName - - -# ───────────────────────────────────────────────────────────── -# Pretty printers (compact, readable output) -# ───────────────────────────────────────────────────────────── -def print_latency_stats(res: ResultsAnalyzer) -> None: - """Print latency statistics calculated by the analyzer.""" - stats: Mapping[LatencyKey, float] = res.get_latency_stats() - print("\n════════ LATENCY STATS ════════") - if not stats: - print("(empty)") - return - - order: List[LatencyKey] = [ - LatencyKey.TOTAL_REQUESTS, - LatencyKey.MEAN, - LatencyKey.MEDIAN, - LatencyKey.STD_DEV, - LatencyKey.P95, - LatencyKey.P99, - LatencyKey.MIN, - LatencyKey.MAX, - ] - for key in order: - if key in stats: - print(f"{key.name:<20} = {stats[key]:.6f}") -def print_throughput(res: ResultsAnalyzer) -> None: - """Print the 1-second throughput buckets.""" - timestamps, rps = res.get_throughput_series() - print("\n════════ THROUGHPUT (req/sec) ════════") - if not timestamps: - print("(empty)") - return - - for t, rate in zip(timestamps, rps): - print(f"t={t:4.1f}s → {rate:6.2f} rps") - - -def print_sampled_preview(res: ResultsAnalyzer) -> None: - """ - Print a small preview for each sampled metric series (first 5 values). - This helps verify that sampler pipelines are running. - """ - sampled = res.get_sampled_metrics() - print("\n════════ SAMPLED METRICS (preview) ════════") - if not sampled: - print("(empty)") - return - - for metric, series in sampled.items(): - metric_name = ( - metric.name if isinstance(metric, SampledMetricName) else str(metric) - ) - print(f"\n📈 {metric_name}:") - for entity, vals in series.items(): - head = list(vals[:5]) if vals else [] - print(f" - {entity}: len={len(vals)}, first={head}") - - -# ───────────────────────────────────────────────────────────── -# Tiny helpers for sanity checks (optional) -# ───────────────────────────────────────────────────────────── -def _mean(series: Iterable[float]) -> float: - """Numerically stable mean for a generic float iterable.""" - arr = np.asarray(list(series), dtype=float) - return float(np.mean(arr)) if arr.size else 0.0 - - -def run_sanity_checks( - runner: SimulationRunner, - res: ResultsAnalyzer, -) -> None: - """ - Back-of-the-envelope checks to compare rough expectations vs observations. - These are intentionally simplistic approximations. - """ - print("\n════════ SANITY CHECKS (rough) ════════") - w = runner.simulation_input.rqs_input - lam_rps = ( - float(w.avg_active_users.mean) - * float(w.avg_request_per_minute_per_user.mean) - / 60.0 - ) - - # Observed throughput - _, rps_series = res.get_throughput_series() - rps_observed = _mean(rps_series) - print(f"• Mean throughput (rps) expected≈{lam_rps:.3f} " - f"observed={rps_observed:.3f}") - - # A few sampled signals (RAM, queues) just to show they are populated. - sampled = res.get_sampled_metrics() - ram_series = sampled.get(SampledMetricName.RAM_IN_USE, {}) - ioq_series = sampled.get(SampledMetricName.EVENT_LOOP_IO_SLEEP, {}) - ready_series = sampled.get(SampledMetricName.READY_QUEUE_LEN, {}) - - ram_mean = _mean([_mean(v) for v in ram_series.values()]) if ram_series else 0.0 - ioq_mean = _mean([_mean(v) for v in ioq_series.values()]) if ioq_series else 0.0 - ready_mean = ( - _mean([_mean(v) for v in ready_series.values()]) if ready_series else 0.0 - ) - - print(f"• Mean RAM in use (MB) observed={ram_mean:.3f}") - print(f"• Mean I/O queue length observed={ioq_mean:.3f}") - print(f"• Mean ready queue length observed={ready_mean:.3f}") - - -# ───────────────────────────────────────────────────────────── -# Build the same scenario via AsyncFlow (builder) -# ───────────────────────────────────────────────────────────── -def build_payload_with_builder() -> SimulationPayload: - """ - Construct the SimulationPayload programmatically using the builder. - - This mirrors the YAML: - - Generator (100 users, 20 rpm each) - - Client - - One server with a single endpoint (CPU → RAM → IO) - - Three edges with exponential latency (3ms mean) - - Simulation settings: 500s total, sample period 50ms - """ - # 1) Request generator +def build_and_run() -> ResultsAnalyzer: + """Build the scenario via the Pythonic builder and run the simulation.""" + # Workload (generator) generator = RqsGenerator( id="rqs-1", avg_active_users={"mean": 100}, @@ -181,50 +55,48 @@ def build_payload_with_builder() -> SimulationPayload: user_sampling_window=60, ) - # 2) Client + # Client client = Client(id="client-1") - # 3) Server (1 CPU core, 2GB RAM) with one endpoint and three steps - # We let Pydantic coerce nested dicts for the endpoint steps. + # Server + endpoint (CPU → RAM → I/O) endpoint = Endpoint( - endpoint_name="ep-1", + endpoint_name="/api", probability=1.0, steps=[ - {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.001}}, - {"kind": "ram", "step_operation": {"necessary_ram": 100}}, - {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.1}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.001}}, # 1 ms + {"kind": "ram", "step_operation": {"necessary_ram": 100}}, # 100 MB + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.100}}, # 100 ms ], ) - server = Server( - id="srv-1", + id="app-1", server_resources={"cpu_cores": 1, "ram_mb": 2048}, endpoints=[endpoint], ) - # 4) Edges: exponential latency with 3ms mean (same as YAML) + # Network edges (3 ms mean, exponential) e_gen_client = Edge( - id="gen-to-client", + id="gen-client", source="rqs-1", target="client-1", latency={"mean": 0.003, "distribution": "exponential"}, ) - e_client_server = Edge( - id="client-to-server", + e_client_app = Edge( + id="client-app", source="client-1", - target="srv-1", + target="app-1", latency={"mean": 0.003, "distribution": "exponential"}, ) - e_server_client = Edge( - id="server-to-client", - source="srv-1", + e_app_client = Edge( + id="app-client", + source="app-1", target="client-1", latency={"mean": 0.003, "distribution": "exponential"}, ) - # 5) Simulation settings + # Simulation settings settings = SimulationSettings( - total_simulation_time=500, + total_simulation_time=300, sample_period_s=0.05, enabled_sample_metrics=[ "ready_queue_len", @@ -235,59 +107,56 @@ def build_payload_with_builder() -> SimulationPayload: enabled_event_metrics=["rqs_clock"], ) - # 6) Assemble the payload via the builder (AsyncFlow). - # The builder will validate the final structure on build. - flow = ( + # Assemble payload with the builder + payload = ( AsyncFlow() .add_generator(generator) .add_client(client) .add_servers(server) - .add_edges(e_gen_client, e_client_server, e_server_client) + .add_edges(e_gen_client, e_client_app, e_app_client) .add_simulation_settings(settings) - ) + ).build_payload() - return flow.build_payload() + # Run + env = simpy.Environment() + runner = SimulationRunner(env=env, simulation_input=payload) + results: ResultsAnalyzer = runner.run() + return results -# ───────────────────────────────────────────────────────────── -# Main entry-point -# ───────────────────────────────────────────────────────────── def main() -> None: - """ - Build → wire → run the simulation, then print diagnostics. - Mirrors run_from_yaml.py but uses the builder to construct the input. - Also saves a 2x2 plot figure (latency, throughput, server queues, RAM). - """ - env = simpy.Environment() - payload = build_payload_with_builder() + # Build & run + res = build_and_run() - runner = SimulationRunner(env=env, simulation_input=payload) - results: ResultsAnalyzer = runner.run() + # Print concise latency summary + print(res.format_latency_stats()) + + # Prepare figure in the same folder as this script + script_dir = Path(__file__).parent + out_path = script_dir / "builder_service_plots.png" + + # 2×2: Latency | Throughput | Ready (first server) | RAM (first server) + fig, axes = plt.subplots(2, 2, figsize=(12, 8), dpi=160) - # Human-friendly diagnostics - print_latency_stats(results) - print_throughput(results) - print_sampled_preview(results) + # Top row + res.plot_latency_distribution(axes[0, 0]) + res.plot_throughput(axes[0, 1]) - # Optional sanity checks (very rough) - run_sanity_checks(runner, results) + # Bottom row — first server, if present + sids = res.list_server_ids() + if sids: + sid = sids[0] + res.plot_single_server_ready_queue(axes[1, 0], sid) + res.plot_single_server_ram(axes[1, 1], sid) + else: + for ax in (axes[1, 0], axes[1, 1]): + ax.text(0.5, 0.5, "No servers", ha="center", va="center") + ax.axis("off") - # Save plots (2x2 figure), same layout as in the YAML-based example - try: - from matplotlib import pyplot as plt # noqa: PLC0415 + fig.tight_layout() + fig.savefig(out_path) + print(f"Plots saved to: {out_path}") - fig, axes = plt.subplots(2, 2, figsize=(12, 8)) - results.plot_latency_distribution(axes[0, 0]) - results.plot_throughput(axes[0, 1]) - results.plot_server_queues(axes[1, 0]) - results.plot_ram_usage(axes[1, 1]) - fig.tight_layout() - out_path = Path(__file__).parent / "single_server.png" - fig.savefig(out_path) - print(f"\n🖼️ Plots saved to: {out_path}") - except Exception as exc: # Matplotlib not installed or plotting failed - print(f"\n[plotting skipped] {exc!r}") - if __name__ == "__main__": - main() \ No newline at end of file + main() diff --git a/examples/yaml_input/data/two_servers_lb.yml b/examples/yaml_input/data/two_servers_lb.yml index 9b71943..100a46b 100644 --- a/examples/yaml_input/data/two_servers_lb.yml +++ b/examples/yaml_input/data/two_servers_lb.yml @@ -1,96 +1,71 @@ -# AsyncFlow SimulationPayload (LB + 2 servers, realistic steps) +# AsyncFlow SimulationPayload — Load Balancer + 2 identical app servers +# +# Topology: +# generator → client → LB → srv-1 +# └→ srv-2 +# srv-1 → client +# srv-2 → client +# +# Each server runs: CPU(2 ms) → RAM(128 MB) → IO wait(12 ms) +# All network links use exponential latency with small means (2–3 ms). +# +# Workload targets ~40 rps (120 users × 20 req/min ÷ 60). rqs_input: - id: "rqs-1" - avg_active_users: - mean: 120 - avg_request_per_minute_per_user: - mean: 20 + id: rqs-1 + avg_active_users: { mean: 120 } + avg_request_per_minute_per_user: { mean: 20 } user_sampling_window: 60 topology_graph: nodes: - client: - id: "client-1" + client: { id: client-1 } + + load_balancer: + id: lb-1 + algorithms: round_robin + server_covered: [srv-1, srv-2] servers: - - id: "srv-1" - server_resources: - cpu_cores: 1 - ram_mb: 1024 + - id: srv-1 + server_resources: { cpu_cores: 1, ram_mb: 2048 } endpoints: - - endpoint_name: "/api" + - endpoint_name: /api steps: - - kind: "initial_parsing" - step_operation: - cpu_time: 0.002 - - kind: "ram" - step_operation: - necessary_ram: 64 - - kind: "io_wait" - step_operation: - io_waiting_time: 0.012 + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } # 2 ms CPU (blocks event loop) + - kind: ram + step_operation: { necessary_ram: 128 } # 128 MB working set + - kind: io_wait + step_operation: { io_waiting_time: 0.012 } # 12 ms non-blocking I/O - - id: "srv-2" - server_resources: - cpu_cores: 2 - ram_mb: 2048 + - id: srv-2 + server_resources: { cpu_cores: 1, ram_mb: 2048 } endpoints: - - endpoint_name: "/api" + - endpoint_name: /api steps: - - kind: "ram" - step_operation: - necessary_ram: 96 - - kind: "io_db" - step_operation: - io_waiting_time: 0.020 - - kind: "cpu_bound_operation" # <-- was 'final_processing' (invalid) - step_operation: - cpu_time: 0.001 - - load_balancer: - id: "lb-1" - algorithms: "round_robin" - server_covered: ["srv-1", "srv-2"] + - kind: initial_parsing + step_operation: { cpu_time: 0.002 } + - kind: ram + step_operation: { necessary_ram: 128 } + - kind: io_wait + step_operation: { io_waiting_time: 0.012 } edges: - - id: "gen-client" - source: "rqs-1" - target: "client-1" - latency: { mean: 0.003, distribution: "exponential" } - - - id: "client-lb" - source: "client-1" - target: "lb-1" - latency: { mean: 0.002, distribution: "exponential" } - - - id: "lb-srv1" - source: "lb-1" - target: "srv-1" - latency: { mean: 0.002, distribution: "exponential" } - - - id: "lb-srv2" - source: "lb-1" - target: "srv-2" - latency: { mean: 0.002, distribution: "exponential" } - - - id: "srv1-client" - source: "srv-1" - target: "client-1" - latency: { mean: 0.003, distribution: "exponential" } - - - id: "srv2-client" - source: "srv-2" - target: "client-1" - latency: { mean: 0.003, distribution: "exponential" } + - { id: gen-client, source: rqs-1, target: client-1, latency: { mean: 0.003, distribution: exponential } } + - { id: client-lb, source: client-1, target: lb-1, latency: { mean: 0.002, distribution: exponential } } + - { id: lb-srv1, source: lb-1, target: srv-1, latency: { mean: 0.002, distribution: exponential } } + - { id: lb-srv2, source: lb-1, target: srv-2, latency: { mean: 0.002, distribution: exponential } } + - { id: srv1-client, source: srv-1, target: client-1, latency: { mean: 0.003, distribution: exponential } } + - { id: srv2-client, source: srv-2, target: client-1, latency: { mean: 0.003, distribution: exponential } } sim_settings: total_simulation_time: 600 - sample_period_s: 0.02 + sample_period_s: 0.05 enabled_sample_metrics: - - "ready_queue_len" - - "event_loop_io_sleep" - - "ram_in_use" - - "edge_concurrent_connection" + - ready_queue_len + - event_loop_io_sleep + - ram_in_use + - edge_concurrent_connection enabled_event_metrics: - - "rqs_clock" + - rqs_clock diff --git a/examples/yaml_input/lb_dashboard.png b/examples/yaml_input/lb_dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..dbe7d42e3d0bab939ddd0fe6cdc2c1ce437d0bc4 GIT binary patch literal 272830 zcmeFZbyQXB+BZBwR76q~kdP3OMnJj+X{EbFq*GD}K_mqP1w^Dnx*L>G5G0faX%vy} z?(dqq_xn8Od}F+0eE)xIoU`3~32V)H$94Vcp25m@W$o7~JDMVQjGY~9?44~a@6))NIyza}+i|mV-eBiprLk~! zc5o8p;IREaKf!MAXwIQ?U?Bvba?U|k#|c5m;?VzN$hka=LNE|SPD(=kQT*bVoBBm9 ziZiR`F%`}cbj�kxI)TEa50ka|d{EM8h9vg|Q# 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 Ha&taeHx(m=YVzH2kd}YT)mN;I;fGsg?0d1 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�y0{00 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 PorY}?< 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 E0K43E82|tP literal 0 HcmV?d00001 diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png index 575c50bd5c172a3a20475678be3327db586ac536..20166b05a07e2bae6753b92bcf0d9a7b9c07e8a5 100644 GIT binary patch literal 162085 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 z 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⪙rlx**k8{$)R%BnRH$2*3jjb*VV^>TUE>&dpCfu zVg6Aly7x^aOWIF`(u3)fV(wE`g8c}#+yPa@SW``X&)l(^CT*Pz+c~SY@)tx94Q93I zg1q?l>{^!-dn*)*ujxE%@oQd}spL}hol`yAhYe3Kki)RMUsqMBsVzaDT7yU7b zTJuAvZqe)3V-55~^-^`w^M=1#FNUQKB+5Ol3J&qrH|ehxaqPFG1{kke1nE+e49&c- z1touHzVzj;e>nr2u=BFCMZm@sy&}CYxY%J6S9U4a(941pz5{=MmTd-Gi@jpXQbl0c zfl{H2tdZoMT}4iy2|-DY;5GxvWpim=S7p`!VUZCH(qz?+_MUiD-{rW?sv~Er_-*VOHezZbItje=NC(Q z)H)p0Eyx+~4d|jB4F?rFP5xSXN6Dih#=%M)tyce>HDN&#D{|WaOH6UYRGhSXD95DO zR|7sap)FX|{i*VK>GZZu^XmS1>{E$e3$vIC0YH)xHx?Cqk6s=*-oH4d*)?)bC+)?Z zPWK0EUU&c$-!iN8P~22|p%4=1!_Jbt#yr>)bz@RwlcZzwnkL?Xi}5ZbG^N7HX@H9W zHqs))fmy>XZ`CP9y6nT}Wf^5;X;`5uy(lK>V5bygi0iVBs_FPbhPr!1>a^NAKW4o6 zm}uOF%g2X0uz-PVrZpZ_^j>94PdXSSeQkmQVSh7r;d zgxwOU{SfG#W_bOH9d!!UIM@1qWDPDZEnTpI?8W(7wn}}vX zK@ovh+Gy(5%Q_)fvCv&jKVQf{?I^XrHN8a8p;OxTwQT>;?4rtcg8W?w?70R}Vb>*r zKUVJXyVi9Fuq49Le$-dfB8;}`Tl%G~q|q-_ko=<+{I0 z^ew*)IC8!=iiMN4Ca|Q@yc6GJ-DngU?KmrP2EG#hiPO5Zi_SnvTWIJ~IYW49D~X$2 z30!_o;)#QRbtBF=YyG;`y7KjsJEa$%6_2DfYekVvOPy1mGdd(IWd{;7M=1ZTPqK7j z^>$+Iz2zZq&O8W!k1k!K;BP*XL!x8PAqf^QAWv`Lb?yn5YISx9f3!8OJRy4c){_5G zqZeVn;>lT4ChMEnwdB6?x^zrCHFa9ueJ#w}owiw^$xOq$tXl7Ux=}8kp0A)~IFnpc z|FLRWp`QPy+Bk*VNK(M04M8~kp+a>WOIY)6EkL%ulLYsR)fK|o(DvTTupD}SS)U4j zI&zSqkgUsA+uwYlOXGApD#%STM-gvxl$82KF5GpHXw=*O7V)wpudf5Kj5kl_W0M%4 zR&rCr?0LYl=c2I}r2K37Su@)2LthdoS+i8H7y3eOoKwFAImNGZztG4`YB3Focv%df z&>1#foc?*7AI*Qo;e0OQ_V#L8d1fbbO9poGXT#&kO0z{znkQ45i%M6#AqWuDQpOJT zr0|n(GlQ|r&nqIQ%#MTzv8`6reu;6f7GKD4@JL^j&WCSt#(uwbhR+G^t2``Vg~898 zKWKcd@rk*sUwO~0AEL%;bo7Br@)=g5k^ocQH8FkqGO9El`{;r4H?8WezfAXf%lBYKjx41xmqAAQtH$EDEz8E+x9;##Lh*&q zydJ@5PpWesHMAL-I8 zKcS}VxmW0D$06QnmcJE8A+QG5z612JTx*@v=kG zTDJJug$iODE_24(jWN`#F-3A%eWx?k*@-*I6iB8U1^WR(`IuaA20l3Br*%yH^w$Mq z*FM&FY>MpCzi;Nuqu%*%J5mnd4sfV7V>eDNrgH^*^}#*}pBOFNxk_IN;S-Vd9N2~1 z);c>mrKEj_Khi%U2ycZz`p!#zszl#UKkzVZmW8(OwK)qcF>^b8)``^??uGgD>f}t!CgPvlnI_Y3EL(G->CX?(EZ8bJ+e* zZ+970RoC_leAANBAZ1X3v>@Cx2+|?lBHbY^APA^5f(S@U7<7X)3L*_6or08vAl>I$ z-p}*i<9W|HW4!0f*&k#K*xR-CTyxENt@{0k9NOG!V_^LRj=~LH;bI*>ML6Adi~?ap z)qa5!(XG~*dAEQfsZ_Y8`li*NyUxgU;|(@ zk^a(`t9n@qpJIm5&Z<}Es7|v-Z4YQ`KSXNS=JiH-cg}n7P#TeyO^B0OGtc182!=Th z7zwSoJ-VW6Gx8UM?;11jB?kd#5ydc_a96>(yHw`FL?7JKUVR4nwP`VdP1r_nL3bK1W^}t@pWE z>#_P2NYE^Bem6ULS)^R-x4s|x>q zAF)j{HYQcaLY35}n;cmb@2(qb;Cb`}&R_k}{QmXHHv=L)l*gzC!1oG+5F!tP@j9xP+!g zDC!n==ti?Kb$z{K$XKqS9A_^X?|Z<8S16}nuOW+PyJQd7m``t?bZwuH6FR0-7H1OL zwI6ik5C|w7KRWcw&-pB0c{LwLDzxpF+JnQc`XBD@zR7bWqP`mYm!8^G>)>pq6|a{t zN*HDb*4Y&Q6>jkwuP`Jiu#0HK>49j~y%Fh-+f)S_aK*do6w}H%_od#cv01h1n+R66 z>{~+_W-Z$+oo5k`cm#FR1-naYE^klDar{DSs3q=H&d1LhO6HtPu|#E>+;4vNGw30G z^TUOgx-Ls;US{w_5%Qo8LQ}$%m2*JoY1G;fDHTqkp=R`O>QwgYKX|OO$C1m-wiu+@ z9ArhC|Z`~lLiV>JF#2H{zcmHay&-`)Y0v;+|knhZ%`#8@~qQUtR zAUxKV+DSUQcZQr4b3xJjTc6;B5Nk8ni;jz)&5Y`1m)i!!h3}V{`c4&P zT=w1cDDlKO3ZFos%qz|?0v|6M^3P(9M;eda zvJS`hLC=H*caxC`hpx84OkqI1&2C_+vS&g=N`e0sT!Eo)Ia=0TN+VZZtX7JVXn)D; z)y++ejLy`!{`mF?33Ykiwt*$?#^LWcWAXDwrMD69Fs~L&YRdBYln439trg0p z*s4CMS33*}i4}}E$s^o-tCtsrMx9$rthl*RMrM~^VBlTDrp$gs!wPDbJnrtTKuf+? zCANbs1hluhc~!CpOp)ho%dMh0Ig}`e!Ya?O9!uxQwY4cLzmDsbSkE4nn1lwT6kj|N z7G2v}&<02Q=7P4f+jduJwBp875t#<8$@| zH-+WK==8<#76V4;KDU%>m*5#_DV)u;GingABr&vk51OL_W$S`}%~>4TSI)a;hPyBd z&9uWEcb17ObFmy^cU>Oca(^VAe`uJ9j{0hhZBx^7z~sau9_A*$*JKeBu*bAIpWtPQI zt7rFc`sq)rL9&DTV{50u#iG9UdMmYgYx{fk-v^9`N1}?|7m0=OpCR`hrBfaY?cXFm zs2LBocz|YKH%;@a&xL1)Z-$;T*yie@;?9MSL|=ssZ&HFYbk_Z0?)jd=+4~P?n4^td z@jBTl8^j}pj)KqgE2Wn&`c(fm4|(7<-|1WbBHqvA^-VcC>=Qw`!m4 zDzCv)z5jYdvq3KGCQa0JPEL8wcf^YBJ0O-otzh=E{AhVWVAzyTQv_ z!}>-KHokaVEEi!CkftCg$r$QtbMo%+!$^pja={}kkzRZ1Rj7NvbeYadOx5LL=$M-j z=XF~wl+ZP+`N;UWN^X4qnxP#bCjqhO{b7+{ltft7!1`K7zIW2*w9YTn9-2}z-D%?MGUIsG9K|4%jX*!#waPG0jMNcDZ%djo1g9%rl}&hdHI~ z7LVbS{k^wvx=fI@!^zs*BjTASjiHN8;wU=Q*G^q0+EaW*S`VD&UJ& z;?f$&#|P}kT@&k7xs#kfGk;Fx-B!ne{`KfbUF7qs(4vonPyYv;Xj zO^$m+SidIv_6S{B_{&Lh9j)V6b$W9@*^7arlYp&w%b<~m$89V^gofgm8F%!!JU?B| zDnA~ByM3eE`%;`e-D7^o2TZ@peDrek5^C}e!z5Sb15xp3#0EIpZvHa{xU7?RG~6o7 zz6_UHg^dpKIyQVmTg@dZk&cLclQ@}hKC*JA$LjHp!BK14XjQ#^o{ZtJZum@>tJ_|yM6+8_VKwb1S4>JL1N}M<8@4MJZlxAE z@mAe&U-S~@vIO0rvRTw*jX<2NcBMlgV}@_QYky0f+7i8&<`o*`W2M&R@-a#a zCwLu}GIyEhv|d`o9c4diVp)jL7jjY!@ARr1<2avJHKwvV#SL|&?9@w+BVT~;!&SfFW;e|#0`BM|J3uJ^mR`C=#9@@AaF!paCA27JAahx>I?*kQu3I_`EqjGGecusyq!UZ!Ov5F2#)_w9Gj zS{t$78~Ki3_QJAjs#^A8^J#UD>hBLzE@Ls4nwOWN^LM-nyRFJ6j#C{%jeb4rjnYKN zcA&|{a&pXgY2mAqM(cZdN#4z$du_z7?iSa`Awy5r@8) zocbJY)vfFHwmCMqtvqF96{z56STCC@Uh1I@Nq@?uK$Z4uCHYY!rozgaAKqWCbC@7F z1r6ovnm41YvnB&Tq0|Gb3;ge;suN8$u_wSajN6MKS&wFBoA;i#2>#vYGPaU_)y%6D^)KIe7N(4DMi7Z~*&i+Cplt=J0a-3b%svw#Cv4SWnEV$z&yWCTK0K&)yKL^^j>&X)4hW)V>6&G8l`xZWa$ZJ>X3zL zLlL)XIu2319nY<8YGED6)}|X=w__Z{eygRm^c}UA%CALf533%itUb|ncg|MtYb{jBJp zk}`>OqEHKWNKQK`%?bg@;umo(clzt8RznEodzxkb<_$B$R|GV;t~8mxZyZzLM6jHW z0sFMLJwBdgyApN5OvJbFPX~kjmvn#L`cCypp5sQDHq+O;PhH2E52l5QPx;sfrs}c! zUPc8CSdxFHt>{u`5@AU$XD1 zW1`*)^h*X^n5CE!p{A*(m!Q4#y{+>G4}txC3M}__6Xj6D$kkRV7uh)ziwN0K+m26d z2@)>yc0mWNOp&~2p>Qgxbg&;If1dmEn?V|P+bh!S;*l43xaYM`Em8~luW9Esx8$VP z$d*$(#}l>kveBx%V4^D|?&nr&t^GOj!klORwk@`>J<+`3>J@kLXj5||H3!97>bY0J z^5l^=EaX=Oi|ERu5*bPE_&FyLamq~Ie?)y-Gx~dA72)1zkLH(4O>)(FyLz0SAB|Rt z>Ee@3O`}7#Ssjlb7PS0&M;uooP$VLpVI1l)yl0ck);yG~T_aydrb}yWmhuf7)z53( z`kfEW$CWvWRWzEaNAQZSCc3=_W2ohmKrROQf@2r{BCJl8YkPQwTX!e%g$it+X5`|R zwtpjzp?=gHzkU9UUgHKqH_1RxJt0Q7{bphn1?9>!jG(~aT=ZToG%MU1t-ZtITVl`kj55D*zqaU;&4acb+zO`N6axhzk?&MWG4 zLs15!_fqoQs1N-aw-Xwr;^|hx3VY;mQ5$xtnEU&`4#p1xMmcY_YrnDP;ae9fdVhi^ z@&un}!jJiDuExpWCPfj+qxPGNhW7(;wT}oYcrMF)5XZ@nlQXj+!+mvE{<5yVewd-t z2P_cxK|CR>m!>EAdm6VJ;GH;>s3;B5X2s%Hjqhh6ynYLPRTZ~}M=r>k){%W>wP@ZL|0UnOhp-el@HRH=g>TNz|F#}|DY7n z^;>4Ar^>&0;|8Tm9v*f4jql%lOuzFI_R?Tg$S0VRphaLVS4uWc}yRLCB4m;#q40{x*y_?Keh=eDTvw-Y8azp&7SbCj-EUpQE=2{a*Oj!$_^v=TSJ zOG*0}+T^Ysy1`q;Q6JUdNlaWZ+Hf8NtO5z<%x(_TJ8JlRM$>~5cv$2qn3CuO2DsLd z=zEm-%ZZ%#C96W`U!pgP$|>Fmh?pL7ghMUHf3P(S;;1j>Ap+R4+=khlPj}z zpA0P8l&Ht`LhfQJ>lnWBqQbX%!T!CN4~=R`v0u0NhGO&EV*z63**$z2J?07fJ{44> zL{`feQ4;@hrgop2EOp5jGPpR3SV(90Pb)~O;wAckOS)m_>|uo8r-hcHicg)y_*yvO z$-QX2QE!9bUP2~hqu*rU(Y?H?x>DshE}`Zr(ueo10_9)E#KBG8ípV;+%g?+*| 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 KnIdV^p#KF+T<~-N literal 152423 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 client ──edge──> server ──edge──> client @@ -24,7 +24,7 @@ 5) (Optional) Visualize the topology with Matplotlib. Run: - python run_with_pybuilder.py + python run_with_builder.py """ from __future__ import annotations @@ -36,18 +36,18 @@ import simpy # ── AsyncFlow domain imports ─────────────────────────────────────────────────── -from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.builder.asyncflow_builder import AsyncFlow from asyncflow.runtime.simulation_runner import SimulationRunner from asyncflow.metrics.analyzer import ResultsAnalyzer -from asyncflow.schemas.full_simulation_input import SimulationPayload -from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput -from asyncflow.schemas.simulation_settings_input import SimulationSettings -from asyncflow.schemas.system_topology.endpoint import Endpoint -from asyncflow.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.payload import SimulationPayload +from asyncflow.schemas.workload.rqs_generator import RqsGenerator +from asyncflow.schemas.settings.simulation import SimulationSettings +from asyncflow.schemas.topology.endpoint import Endpoint +from asyncflow.schemas.topology.nodes import ( Client, - Edge, Server, ) +from asyncflow.schemas.topology.edges import Edge from asyncflow.config.constants import LatencyKey, SampledMetricName @@ -160,9 +160,9 @@ def run_sanity_checks( # ───────────────────────────────────────────────────────────── -# Build the same scenario via AsyncFlow (pybuilder) +# Build the same scenario via AsyncFlow (builder) # ───────────────────────────────────────────────────────────── -def build_payload_with_pybuilder() -> SimulationPayload: +def build_payload_with_builder() -> SimulationPayload: """ Construct the SimulationPayload programmatically using the builder. @@ -174,7 +174,7 @@ def build_payload_with_pybuilder() -> SimulationPayload: - Simulation settings: 500s total, sample period 50ms """ # 1) Request generator - generator = RqsGeneratorInput( + generator = RqsGenerator( id="rqs-1", avg_active_users={"mean": 100}, avg_request_per_minute_per_user={"mean": 20}, @@ -255,11 +255,11 @@ def build_payload_with_pybuilder() -> SimulationPayload: def main() -> None: """ Build → wire → run the simulation, then print diagnostics. - Mirrors run_from_yaml.py but uses the pybuilder to construct the input. + Mirrors run_from_yaml.py but uses the builder to construct the input. Also saves a 2x2 plot figure (latency, throughput, server queues, RAM). """ env = simpy.Environment() - payload = build_payload_with_pybuilder() + payload = build_payload_with_builder() runner = SimulationRunner(env=env, simulation_input=payload) results: ResultsAnalyzer = runner.run() @@ -283,7 +283,7 @@ def main() -> None: results.plot_ram_usage(axes[1, 1]) fig.tight_layout() - out_path = Path(__file__).parent / "single_server_pybuilder.png" + out_path = Path(__file__).parent / "single_server_builder.png" fig.savefig(out_path) print(f"\n🖼️ Plots saved to: {out_path}") except Exception as exc: # Matplotlib not installed or plotting failed diff --git a/examples/single_server_yml.png b/examples/single_server_yml.png index 560a4b3e3eabe2e0b8408c3e322656deb770d7af..76c21154dc9eed6dfb7d453c1e103dc40e659502 100644 GIT binary patch literal 166693 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