From 473351086aa4c41a5f0be802b91b404359600e7f Mon Sep 17 00:00:00 2001 From: Steffen Date: Sat, 7 Nov 2026 16:58:29 +0100 Subject: [PATCH] Initial commit --- .dockerignore | 11 + .env.example | 26 + .gitignore | 24 + Dockerfile | 37 + README.md | 179 ++++ browser_crawler.py | 54 ++ crawler/__init__.py | 44 + crawler/config.py | 432 +++++++++ crawler/cookies.py | 177 ++++ crawler/engine.py | 1023 ++++++++++++++++++++ crawler/tor.py | 185 ++++ crawler/url_utils.py | 69 ++ docker-compose.yml | 16 + entrypoint.sh | 17 + main.py | 35 + requirements.txt | 5 + test_iteration_visits.py | 372 ++++++++ test_tor_fallback.py | 178 ++++ web.py | 18 + web/__init__.py | 26 + web/app.py | 218 +++++ web/auth.py | 121 +++ web/manager.py | 302 ++++++ web/static/app.js | 1019 ++++++++++++++++++++ web/static/clickduck_logo.png | Bin 0 -> 558742 bytes web/static/clickduck_logo_small.jpg | Bin 0 -> 106314 bytes web/static/index.html | 580 ++++++++++++ web/static/login.html | 295 ++++++ web/static/style.css | 1353 +++++++++++++++++++++++++++ 29 files changed, 6816 insertions(+) create mode 100644 .dockerignore create mode 100644 .env.example create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 browser_crawler.py create mode 100644 crawler/__init__.py create mode 100644 crawler/config.py create mode 100644 crawler/cookies.py create mode 100644 crawler/engine.py create mode 100644 crawler/tor.py create mode 100644 crawler/url_utils.py create mode 100644 docker-compose.yml create mode 100644 entrypoint.sh create mode 100644 main.py create mode 100644 requirements.txt create mode 100644 test_iteration_visits.py create mode 100644 test_tor_fallback.py create mode 100644 web.py create mode 100644 web/__init__.py create mode 100644 web/app.py create mode 100644 web/auth.py create mode 100644 web/manager.py create mode 100644 web/static/app.js create mode 100644 web/static/clickduck_logo.png create mode 100644 web/static/clickduck_logo_small.jpg create mode 100644 web/static/index.html create mode 100644 web/static/login.html create mode 100644 web/static/style.css diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..905ec34 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,11 @@ +__pycache__/ +*.pyc +*.pyo +*.pyd +.venv/ +venv/ +.git/ +.gitignore +.vscode/ +.idea/ +*.log diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..50a9014 --- /dev/null +++ b/.env.example @@ -0,0 +1,26 @@ +# Crawler Configuration +CRAWLER_START_URL=https://example.com +CRAWLER_USE_TOR=false +CRAWLER_TOR_CIRCUIT_MODE=iteration +CRAWLER_TOR_CIRCUIT_PAGES=10 +CRAWLER_TOR_MAX_CONSECUTIVE_TIMEOUTS=5 +CRAWLER_TOR_EXIT_NODES=de,nl,fr,ch +CRAWLER_NUM_TABS=5 +CRAWLER_NUM_ITERATIONS=1 +CRAWLER_ITERATION_MODE=all +CRAWLER_MAX_VISITS_PER_ITERATION=10 +CRAWLER_RANDOMIZE_QUEUE=true +CRAWLER_HEADLESS=true +CRAWLER_ACCEPT_COOKIES=true +CRAWLER_SLOW_MO=100 +CRAWLER_TIMEOUT_MS=35000 +CRAWLER_USER_AGENT=random + +# Web Dashboard Port +WEB_PORT=8080 + +# Web Dashboard Authentication (Recommended for Internet-Facing Deployments) +AUTH_ENABLED=true +AUTH_USERNAME=admin +AUTH_PASSWORD=change_this_to_a_secure_password +AUTH_SECRET_KEY=change_this_to_a_random_32_character_secret_key diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..944731b --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Virtual Environments +venv/ +.venv/ +env/ +.env_win/ + +# Python Cache +__pycache__/ +*.py[cod] +*$py.class +*.so + +# Environment Variables & Local Secrets +.env +!.env.example + +# Playwright +test-results/ +playwright-report/ + +# OS / Editor Files +.DS_Store +Thumbs.db +.vscode/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..8b72417 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,37 @@ +# Use official Microsoft Playwright image with Python & browser dependencies +FROM mcr.microsoft.com/playwright/python:v1.49.0-noble + +# Prevent interactive prompts during apt package installation +ENV DEBIAN_FRONTEND=noninteractive +ENV PYTHONUNBUFFERED=1 + +# Install Tor daemon and curl +RUN apt-get update && apt-get install -y --no-install-recommends \ + tor \ + curl \ + && rm -rf /var/lib/apt/lists/* + +# Configure Tor (SOCKS5 proxy on 9050, ControlPort on 9051 with open localhost authentication) +RUN printf "SocksPort 127.0.0.1:9050\nControlPort 127.0.0.1:9051\nCookieAuthentication 0\nHashedControlPassword \"\"\n" > /etc/tor/torrc + +WORKDIR /app + +# Install Python requirements +COPY requirements.txt . +RUN pip install --no-cache-dir -r requirements.txt + +# Ensure Chromium browser is ready +RUN playwright install chromium + +# Copy application source code +COPY . . + +# Prepare entrypoint script (strip potential Windows CRLF endings and mark executable) +COPY entrypoint.sh /entrypoint.sh +RUN sed -i 's/\r$//' /entrypoint.sh && chmod +x /entrypoint.sh + +# Expose Web Dashboard port +EXPOSE 8000 + +ENTRYPOINT ["/entrypoint.sh"] +CMD ["python", "web.py", "--host", "0.0.0.0", "--port", "8000"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..d03fcb5 --- /dev/null +++ b/README.md @@ -0,0 +1,179 @@ +# WebSurfer: Parallel Playwright Crawler + +A highly-concurrent, fully automated website crawler built with Python and [Playwright](https://playwright.dev/python/). + +This crawler rapidly crawls an entire domain using multiple visible or headless browser tabs. It uses a Breadth-First Search (BFS) approach powered by an `asyncio.Queue` to spread the crawling workload across a customizable pool of worker tabs. + +## Key Features + +- **Multi-Tab Concurrency**: Spawns multiple asynchronous browser tabs (default: 5) to dramatically speed up crawl times. +- **Automatic Cookie Consent Acceptance**: Automatically detects and accepts cookie consent banners / CMPs (Complianz, Borlabs Cookie, Cookiebot, OneTrust, Usercentrics, Klaro, CookieYes, Real Cookie Banner, CCM19, and generic accept patterns) across pages and iframes so analytics, marketing tags, and tracking scripts fire properly. +- **Intelligent Scope**: + - Recursively crawls all internal links belonging to the starting domain. + - Visits external links (depth 1) to verify they are alive, but intentionally avoids following their sub-links to prevent crawling the entire internet. +- **Crawler Trap Protection**: Automatically strips query parameters (e.g. `?page=2`) and URL fragments (e.g. `#section`) from internal links to prevent infinite loops from endless pagination or dynamically generated URLs. External links retain their original query parameters to prevent breaking things like YouTube videos. +- **Configurable Iteration Scope & Visit Limits**: + - **All Websites (Default)**: Crawls all reachable internal and external level-1 links until the queue is fully exhausted. + - **Limit Visits Mode**: Caps each iteration to a configurable number of website visits before starting a new iteration. Ideal for multi-iteration testing across fresh Tor circuits and rotating User-Agents on large websites without having to crawl every single page. +- **Randomized Crawl Queue**: Uniformly picks pages at random from the queue of discovered URLs instead of strict FIFO breadth-first order. Ensures broad, diverse coverage across various sections and depths of the website on every iteration. +- **Error & Broken Link Tracking**: Tracks any pages that result in HTTP errors (404, 500, etc.) or connection timeouts. At the end of the crawl, it outputs a clean list of broken URLs alongside the exact source page where the broken link was discovered. +- **Tor Proxy, Flexible Circuit Rotation & European Exit Nodes**: Optionally routes all crawler traffic securely through a headless Tor proxy (SOCKS5 on port `9050`). + - **Circuit Rotation Modes**: Rotate per crawl iteration or dynamically after every *N* crawled pages. + - **European Exit Node Selector**: Select 0 to *N* European countries (Germany, Netherlands, France, Switzerland, Sweden, UK, etc.) to strictly/preferentially route traffic through specific European exit relays. If no country is selected, global Tor exit relays are used worldwide. +- **Live Tor Network & IP Geolocation Inspector**: Shows active Tor exit IP, country, city, ISP/organization, exit node filter, and circuit rotation count in real-time. + +## Web Dashboard & Frontend + +WebSurfer includes a modern, real-time Web Dashboard built with FastAPI and WebSockets. + +### Features in the Web Dashboard: +- **Interactive Configuration**: Configure start URL, concurrency, iterations, Tor routing, headless mode, cookie handling, and timeouts directly in the browser. +- **`.env` Synchronization**: One-click saving to `.env` or loading stored parameters. +- **Live Metrics & All-Iterations Cumulative Statistics**: Real-time KPI tiles for Visited Pages, Internal vs. External links, Cookies Accepted, Queue Backlog, and Timer, paired with a dedicated all-iterations summary bar and subtitle badges tracking total websites visited and total errors encountered across all iterations. +- **Dedicated Error & Broken Link Section**: Structured, searchable, and exportable (CSV / JSON) error registry displaying the failed URL, error reason / HTTP status, and referring source page. +- **Live Streaming Terminal**: Real-time color-coded crawl logs with auto-scrolling, search query filtering, and level filtering. + +### Running the Web Dashboard: +```bash +python web.py +``` +*(or `python main.py --web`)* + +Open your browser at [http://127.0.0.1:8000](http://127.0.0.1:8000). + +## Project Structure + +The project is organized into clean, single-responsibility modules: + +``` +websurfer/ +├── crawler/ +│ ├── __init__.py # Public exports (Crawler, CrawlerConfig, TorManager, etc.) +│ ├── config.py # Configuration dataclass & interactive/env/dict loaders +│ ├── tor.py # Tor daemon lifecycle & circuit rotation (Stem/SOCKS5) +│ ├── cookies.py # CMP selectors, text regexes & auto-consent execution +│ ├── url_utils.py # URL normalization, domain matching & static file filters +│ └── engine.py # Playwright browser lifecycle, worker queue, events & crawl loop +├── web/ +│ ├── __init__.py # Web package entry point & server runner +│ ├── app.py # FastAPI REST API & WebSocket endpoints +│ ├── manager.py # Async crawl session manager & event broadcaster +│ └── static/ +│ ├── index.html # Modern responsive dashboard UI +│ ├── style.css # Dark glassmorphism styling +│ └── app.js # Real-time WebSocket controller & data renderer +├── main.py # Primary entry point (supports CLI and --web) +├── web.py # Standalone Web Dashboard launcher +├── browser_crawler.py # Backwards-compatible launcher +├── .env.example # Example configuration settings +└── requirements.txt # Project dependencies +``` + +## Prerequisites + +You need Python 3.8+ installed. If you intend to use the Tor proxy feature, ensure the `tor` command-line package is installed on your system: +- **macOS**: `brew install tor` +- **Linux (Ubuntu/Debian)**: `sudo apt install tor` +- **Windows**: Install Tor Expert Bundle from [torproject.org](https://www.torproject.org/) and add it to your PATH. +*(No Tor Browser GUI needed!)* + +## Installation + +1. Navigate to the project directory: + ```bash + cd websurfer + ``` +2. Create and activate an OS-specific virtual environment: + - **macOS / Linux**: + ```bash + python3 -m venv venv + source venv/bin/activate + ``` + - **Windows (PowerShell)**: + ```powershell + python -m venv .venv + .\.venv\Scripts\Activate.ps1 + ``` + - **Windows (Command Prompt)**: + ```cmd + python -m venv .venv + .\.venv\Scripts\activate.bat + ``` +3. Install the dependencies: + ```bash + pip install -r requirements.txt + ``` +4. Install the required Playwright Chromium binaries: + ```bash + playwright install chromium + ``` + +## Usage + +### 1. Web Dashboard (Recommended) +```bash +python web.py +``` +Or: +```bash +python main.py --web +``` + +### 2. Running with Docker & Tor (Containerized) +WebSurfer can be run in a Docker container with Playwright headless Chromium and an integrated background Tor proxy: + +```bash +# Build and start container (Web Dashboard on port 8080) +docker compose up --build + +# Run in background +docker compose up -d + +# View logs +docker compose logs -f +``` + +Open your browser at [http://127.0.0.1:8080](http://127.0.0.1:8080) (or customize the port with `WEB_PORT=8000` in `.env`). + +To run a headless crawl via CLI inside the container: +```bash +docker compose run --rm websurfer python main.py +``` + +### 3. Running via CLI +Run the main entry point in interactive/CLI mode: +```bash +python main.py +``` +*(or `python browser_crawler.py`)* + +The script will interactively prompt you (or read from `.env`): +1. **Starting URL**: The base website you want to crawl (e.g., `https://example.com`). +2. **Tor Proxy**: Whether you want to route traffic through Tor (y/n). +3. **Concurrent Tabs**: The number of browser tabs you want running simultaneously (defaults to 5). +4. **Iterations**: Number of times to run the crawl. +5. **Headless Mode**: Run browser with or without UI. +6. **Accept Cookies**: Automatically accept cookies on pages (defaults to yes). + +### 4. Programmatic Usage + +You can also use WebSurfer in your own Python scripts: + +```python +import asyncio +from crawler import Crawler, CrawlerConfig + +async def run_my_crawl(): + config = CrawlerConfig( + start_url="https://example.com", + num_tabs=4, + headless=True, + accept_cookies=True, + ) + crawler = Crawler(config) + await crawler.run() + +if __name__ == "__main__": + asyncio.run(run_my_crawl()) +``` + diff --git a/browser_crawler.py b/browser_crawler.py new file mode 100644 index 0000000..cbea904 --- /dev/null +++ b/browser_crawler.py @@ -0,0 +1,54 @@ +""" +WebSurfer Entry Point (browser_crawler.py) + +Maintained for backwards compatibility with existing CLI commands and scripts. +The crawler has been modularized under the `crawler/` package. +""" + +import asyncio +import sys + +from main import main +from crawler import ( + Crawler, + CrawlerConfig, + TorManager, + start_tor_service, + renew_tor_circuit, + stop_tor_service, + auto_accept_cookies, + normalize_url, + COOKIE_BANNER_SELECTORS, + COOKIE_TEXT_PATTERNS, + IGNORED_EXTENSIONS, + IGNORED_PATHS, + DEFAULT_TOR_SOCKS_PORT as TOR_SOCKS_PORT, + DEFAULT_TOR_CONTROL_PORT as TOR_CONTROL_PORT, +) + +__all__ = [ + "main", + "Crawler", + "CrawlerConfig", + "TorManager", + "start_tor_service", + "renew_tor_circuit", + "stop_tor_service", + "auto_accept_cookies", + "normalize_url", + "COOKIE_BANNER_SELECTORS", + "COOKIE_TEXT_PATTERNS", + "IGNORED_EXTENSIONS", + "IGNORED_PATHS", + "TOR_SOCKS_PORT", + "TOR_CONTROL_PORT", +] + +if __name__ == "__main__": + if sys.platform == "win32": + asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy()) + try: + main() + except KeyboardInterrupt: + print("\nCrawling interrupted by user.") + sys.exit(0) diff --git a/crawler/__init__.py b/crawler/__init__.py new file mode 100644 index 0000000..0c65fc3 --- /dev/null +++ b/crawler/__init__.py @@ -0,0 +1,44 @@ +""" +WebSurfer Crawler Package +""" + +from .config import CrawlerConfig +from .cookies import ( + COOKIE_BANNER_SELECTORS, + COOKIE_TEXT_PATTERNS, + auto_accept_cookies, +) +from .engine import Crawler, crawl_level, worker, RandomQueue +from .tor import ( + DEFAULT_TOR_CONTROL_PORT, + DEFAULT_TOR_SOCKS_PORT, + TorManager, + renew_tor_circuit, + start_tor_service, + stop_tor_service, +) +from .url_utils import ( + IGNORED_EXTENSIONS, + IGNORED_PATHS, + normalize_url, +) + +__all__ = [ + "Crawler", + "CrawlerConfig", + "RandomQueue", + "TorManager", + "start_tor_service", + "renew_tor_circuit", + "stop_tor_service", + "auto_accept_cookies", + "COOKIE_BANNER_SELECTORS", + "COOKIE_TEXT_PATTERNS", + "normalize_url", + "IGNORED_EXTENSIONS", + "IGNORED_PATHS", + "crawl_level", + "worker", + "DEFAULT_TOR_SOCKS_PORT", + "DEFAULT_TOR_CONTROL_PORT", +] diff --git a/crawler/config.py b/crawler/config.py new file mode 100644 index 0000000..23defcc --- /dev/null +++ b/crawler/config.py @@ -0,0 +1,432 @@ +import os +import random +import re +from dataclasses import dataclass, field +from typing import Optional, List, Dict, Any +from urllib.parse import urlparse +from dotenv import load_dotenv + +from .url_utils import normalize_url + + +# Modern realistic user agents for rotation to evade bot-detection and WAF blocks +DEFAULT_USER_AGENTS: List[str] = [ + # Chrome on Windows (v133) + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36", + # Chrome on macOS (v133) + "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36", + # Firefox on Windows (v134) + "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0", + # Firefox on macOS (v134) + "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:134.0) Gecko/20100101 Firefox/134.0", + # Edge on Windows (v133) + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0", + # Safari on macOS (v18.2) + "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.2 Safari/605.1.15", +] + + +# Supported European countries with active Tor exit relays +EUROPEAN_COUNTRIES: Dict[str, Dict[str, str]] = { + "de": {"name": "Germany", "flag": "🇩🇪"}, + "nl": {"name": "Netherlands", "flag": "🇳🇱"}, + "fr": {"name": "France", "flag": "🇫🇷"}, + "ch": {"name": "Switzerland", "flag": "🇨🇭"}, + "at": {"name": "Austria", "flag": "🇦🇹"}, + "se": {"name": "Sweden", "flag": "🇸🇪"}, + "no": {"name": "Norway", "flag": "🇳🇴"}, + "fi": {"name": "Finland", "flag": "🇫🇮"}, + "dk": {"name": "Denmark", "flag": "🇩🇰"}, + "gb": {"name": "United Kingdom", "flag": "🇬🇧"}, + "pl": {"name": "Poland", "flag": "🇵🇱"}, + "it": {"name": "Italy", "flag": "🇮🇹"}, + "es": {"name": "Spain", "flag": "🇪🇸"}, + "be": {"name": "Belgium", "flag": "🇧🇪"}, + "cz": {"name": "Czech Republic", "flag": "🇨🇿"}, + "ro": {"name": "Romania", "flag": "🇷🇴"}, + "ie": {"name": "Ireland", "flag": "🇮🇪"}, + "pt": {"name": "Portugal", "flag": "🇵🇹"}, + "hu": {"name": "Hungary", "flag": "🇭🇺"}, + "is": {"name": "Iceland", "flag": "🇮🇸"}, + "lu": {"name": "Luxembourg", "flag": "🇱🇺"}, + "gr": {"name": "Greece", "flag": "🇬🇷"}, + "bg": {"name": "Bulgaria", "flag": "🇧🇬"}, + "ee": {"name": "Estonia", "flag": "🇪🇪"}, + "lv": {"name": "Latvia", "flag": "🇱🇻"}, + "lt": {"name": "Lithuania", "flag": "🇱🇹"}, + "sk": {"name": "Slovakia", "flag": "🇸🇰"}, + "si": {"name": "Slovenia", "flag": "🇸🇮"}, + "hr": {"name": "Croatia", "flag": "🇭🇷"}, +} + + +@dataclass +class CrawlerConfig: + """Configuration settings for the crawler.""" + start_url: str + use_tor: bool = False + tor_circuit_mode: str = "iteration" # "iteration" (new circuit per run) or "pages" (new circuit per N pages) + tor_circuit_pages: int = 10 # Number of pages to crawl before renewing circuit if mode is "pages" + tor_max_consecutive_timeouts: int = 5 # Number of consecutive ERR_TIMED_OUT failures before fallback circuit renewal + tor_exit_nodes: List[str] = field(default_factory=list) # ISO country codes (empty = any global exit node) + num_tabs: int = 5 + num_iterations: int = 1 + iteration_mode: str = "all" # "all" (crawl all discovered websites) or "visits" (cap visits per iteration) + max_visits_per_iteration: int = 10 # Max website visits before starting a new iteration if mode is "visits" + randomize_queue: bool = True # Randomly pop URLs from queue instead of strict FIFO order + headless: bool = False + accept_cookies: bool = True + slow_mo: int = 100 + timeout_ms: int = 35000 + tor_socks_port: int = 9050 + tor_control_port: int = 9051 + user_agent: str = "random" # "random" (auto-rotate modern desktop UAs), "default" (native browser), or custom string + + @property + def visits_per_iteration(self) -> int: + """Alias for max_visits_per_iteration.""" + return self.max_visits_per_iteration + + @property + def start_domain(self) -> str: + """Extracts the hostname/netloc from the start URL.""" + return urlparse(self.start_url).netloc + + @property + def tor_exit_nodes_formatted(self) -> Optional[str]: + """Formats exit node country codes into Tor syntax (e.g. '{de},{fr}'), or None if empty.""" + if not self.tor_exit_nodes: + return None + valid_codes = [c.strip().lower() for c in self.tor_exit_nodes if c.strip()] + if not valid_codes: + return None + return ",".join(f"{{{c}}}" for c in valid_codes) + + def get_user_agent(self) -> Optional[str]: + """ + Resolves the user agent string based on the configuration setting: + - "random" or empty: randomly selects a modern real-world desktop User-Agent. + - "default": returns None to instruct Playwright to use its native browser User-Agent. + - Custom string: returns the specified string. + """ + if not self.user_agent or self.user_agent.strip().lower() in ["random", "rotate"]: + return random.choice(DEFAULT_USER_AGENTS) + if self.user_agent.strip().lower() == "default": + return None + return self.user_agent.strip() + + @classmethod + def from_env_or_prompt(cls) -> "CrawlerConfig": + """ + Loads configuration values from environment variables / .env file, + falling back to interactive CLI prompts for any unset options. + """ + load_dotenv() + + # 1. Starting URL + start_url = os.getenv("CRAWLER_START_URL") + if not start_url: + start_url = input("Enter the starting URL (e.g., https://example.com): ").strip() + if not start_url.startswith("http://") and not start_url.startswith("https://"): + start_url = "https://" + start_url + + start_domain = urlparse(start_url).netloc + norm_start, _ = normalize_url(start_url, start_domain) + if norm_start: + start_url = norm_start + + # 2. Tor Proxy + use_tor_env = os.getenv("CRAWLER_USE_TOR") + if use_tor_env is not None: + use_tor = use_tor_env.strip().lower() in ["true", "1", "y", "yes"] + else: + use_tor_input = input( + "Use Tor proxy (starts/connects to headless Tor on 127.0.0.1:9050)? (y/n): " + ).strip().lower() + use_tor = (use_tor_input == "y") + + # 2.1 Tor Circuit Rotation Strategy & Exit Nodes (if Tor is enabled) + tor_circuit_mode = "iteration" + tor_circuit_pages = 10 + tor_max_consecutive_timeouts = 5 + tor_exit_nodes = [] + if use_tor: + mode_env = os.getenv("CRAWLER_TOR_CIRCUIT_MODE") + pages_env = os.getenv("CRAWLER_TOR_CIRCUIT_PAGES") + timeouts_env = os.getenv("CRAWLER_TOR_MAX_CONSECUTIVE_TIMEOUTS") + nodes_env = os.getenv("CRAWLER_TOR_EXIT_NODES") + + if mode_env is not None: + tor_circuit_mode = "pages" if mode_env.strip().lower() in ["pages", "page", "per_pages"] else "iteration" + else: + print("\nTor Circuit Renewal Options:") + print(" [1] Renew circuit before every iteration (default)") + print(" [2] Renew circuit after every N crawled pages") + tor_mode_choice = input("Select Tor renewal mode (1/2, default 1): ").strip() + tor_circuit_mode = "pages" if tor_mode_choice == "2" else "iteration" + + if tor_circuit_mode == "pages": + if pages_env and pages_env.isdigit(): + tor_circuit_pages = max(1, int(pages_env)) + else: + pages_input = input("How many crawled pages before renewing Tor circuit? (default 10): ").strip() + tor_circuit_pages = int(pages_input) if pages_input and pages_input.isdigit() else 10 + + if timeouts_env and timeouts_env.isdigit(): + tor_max_consecutive_timeouts = max(1, int(timeouts_env)) + + if nodes_env is not None: + tor_exit_nodes = [c.strip().lower() for c in nodes_env.split(",") if c.strip()] + else: + nodes_input = input( + "Select European Tor Exit Node countries (comma-separated, e.g. de,nl,fr,ch) [Enter for any]: " + ).strip() + if nodes_input: + tor_exit_nodes = [c.strip().lower() for c in nodes_input.split(",") if c.strip()] + + # 3. Concurrent Tabs + num_tabs_str = os.getenv("CRAWLER_NUM_TABS") + if not num_tabs_str: + num_tabs_str = input("How many concurrent tabs would you like to use? (default 5): ").strip() + num_tabs = int(num_tabs_str) if num_tabs_str and num_tabs_str.isdigit() else 5 + + # 4. Iterations + num_iterations_str = os.getenv("CRAWLER_NUM_ITERATIONS") + if not num_iterations_str: + num_iterations_str = input("How many times would you like to run the crawler? (default 1): ").strip() + num_iterations = int(num_iterations_str) if num_iterations_str and num_iterations_str.isdigit() else 1 + + # 4.1 Iteration Scope & Website Visit Cap + iter_mode_env = os.getenv("CRAWLER_ITERATION_MODE") + max_visits_env = os.getenv("CRAWLER_MAX_VISITS_PER_ITERATION") or os.getenv("CRAWLER_VISITS_PER_ITERATION") + + if iter_mode_env is not None: + iteration_mode = "visits" if iter_mode_env.strip().lower() in ["visits", "limit", "pages", "capped"] else "all" + else: + print("\nIteration Scope Options:") + print(" [1] Crawl all reachable websites per iteration (default)") + print(" [2] Limit website visits per iteration before starting a new iteration") + iter_choice = input("Select iteration scope mode (1/2, default 1): ").strip() + iteration_mode = "visits" if iter_choice == "2" else "all" + + max_visits_per_iteration = 10 + if iteration_mode == "visits": + if max_visits_env and max_visits_env.isdigit(): + max_visits_per_iteration = max(1, int(max_visits_env)) + else: + visits_input = input("How many website visits before starting a new iteration? (default 10): ").strip() + max_visits_per_iteration = int(visits_input) if visits_input and visits_input.isdigit() else 10 + + # 5. Headless Mode + use_headless_env = os.getenv("CRAWLER_HEADLESS") + if use_headless_env is not None: + headless = use_headless_env.strip().lower() in ["true", "1", "y", "yes"] + else: + headless = input("Run browser in headless mode? (y/n, default n): ").strip().lower() == "y" + + # 6. Accept Cookies + accept_cookies_env = os.getenv("CRAWLER_ACCEPT_COOKIES") + if accept_cookies_env is not None: + accept_cookies = accept_cookies_env.strip().lower() in ["true", "1", "y", "yes"] + else: + accept_cookies_input = input("Automatically accept cookies on pages? (y/n, default y): ").strip().lower() + accept_cookies = (accept_cookies_input != "n") + + # 7. User Agent + user_agent = os.getenv("CRAWLER_USER_AGENT", "random").strip() + + # 8. Randomize Queue + randomize_queue_env = os.getenv("CRAWLER_RANDOMIZE_QUEUE") + if randomize_queue_env is not None: + randomize_queue = randomize_queue_env.strip().lower() in ["true", "1", "y", "yes"] + else: + randomize_queue = True + + return cls( + start_url=start_url, + use_tor=use_tor, + tor_circuit_mode=tor_circuit_mode, + tor_circuit_pages=tor_circuit_pages, + tor_max_consecutive_timeouts=tor_max_consecutive_timeouts, + tor_exit_nodes=tor_exit_nodes, + num_tabs=num_tabs, + num_iterations=num_iterations, + iteration_mode=iteration_mode, + max_visits_per_iteration=max_visits_per_iteration, + randomize_queue=randomize_queue, + headless=headless, + accept_cookies=accept_cookies, + user_agent=user_agent, + ) + + def to_dict(self) -> dict: + """Serializes the configuration to a dictionary.""" + return { + "start_url": self.start_url, + "use_tor": self.use_tor, + "tor_circuit_mode": self.tor_circuit_mode, + "tor_circuit_pages": self.tor_circuit_pages, + "tor_max_consecutive_timeouts": self.tor_max_consecutive_timeouts, + "tor_exit_nodes": self.tor_exit_nodes, + "num_tabs": self.num_tabs, + "num_iterations": self.num_iterations, + "iteration_mode": self.iteration_mode, + "max_visits_per_iteration": self.max_visits_per_iteration, + "randomize_queue": self.randomize_queue, + "headless": self.headless, + "accept_cookies": self.accept_cookies, + "slow_mo": self.slow_mo, + "timeout_ms": self.timeout_ms, + "tor_socks_port": self.tor_socks_port, + "tor_control_port": self.tor_control_port, + "user_agent": self.user_agent, + } + + @classmethod + def from_dict(cls, data: dict) -> "CrawlerConfig": + """Creates a CrawlerConfig from a dictionary with validation and defaults.""" + start_url = str(data.get("start_url", "")).strip() + if start_url and not start_url.startswith("http://") and not start_url.startswith("https://"): + start_url = "https://" + start_url + + if start_url: + start_domain = urlparse(start_url).netloc + norm_start, _ = normalize_url(start_url, start_domain) + if norm_start: + start_url = norm_start + + circuit_mode = str(data.get("tor_circuit_mode", "iteration")).strip().lower() + if circuit_mode not in ["iteration", "pages"]: + circuit_mode = "iteration" + + try: + circuit_pages = max(1, int(data.get("tor_circuit_pages", 10))) + except (ValueError, TypeError): + circuit_pages = 10 + + try: + max_consecutive_timeouts = max(1, int(data.get("tor_max_consecutive_timeouts", 5))) + except (ValueError, TypeError): + max_consecutive_timeouts = 5 + + raw_exit_nodes = data.get("tor_exit_nodes", []) + if isinstance(raw_exit_nodes, str): + exit_nodes_list = [c.strip().lower() for c in raw_exit_nodes.split(",") if c.strip()] + elif isinstance(raw_exit_nodes, list): + exit_nodes_list = [str(c).strip().lower() for c in raw_exit_nodes if str(c).strip()] + else: + exit_nodes_list = [] + + iter_mode = str(data.get("iteration_mode", "all")).strip().lower() + if iter_mode in ["visits", "limit", "pages", "capped"]: + iteration_mode = "visits" + else: + iteration_mode = "all" + + raw_visits = data.get("max_visits_per_iteration") or data.get("visits_per_iteration") or 10 + try: + val = int(raw_visits) + max_visits_per_iteration = val if val >= 1 else 10 + except (ValueError, TypeError): + max_visits_per_iteration = 10 + + return cls( + start_url=start_url, + use_tor=bool(data.get("use_tor", False)), + tor_circuit_mode=circuit_mode, + tor_circuit_pages=circuit_pages, + tor_max_consecutive_timeouts=max_consecutive_timeouts, + tor_exit_nodes=exit_nodes_list, + num_tabs=int(data.get("num_tabs", 5)), + num_iterations=int(data.get("num_iterations", 1)), + iteration_mode=iteration_mode, + max_visits_per_iteration=max_visits_per_iteration, + randomize_queue=bool(data.get("randomize_queue", True)), + headless=bool(data.get("headless", False)), + accept_cookies=bool(data.get("accept_cookies", True)), + slow_mo=int(data.get("slow_mo", 100)), + timeout_ms=int(data.get("timeout_ms", 35000)), + tor_socks_port=int(data.get("tor_socks_port", 9050)), + tor_control_port=int(data.get("tor_control_port", 9051)), + user_agent=str(data.get("user_agent", "random")).strip(), + ) + + @classmethod + def get_env_dict(cls, env_path: str = ".env") -> dict: + """Reads configuration from .env file or environment variables.""" + load_dotenv(dotenv_path=env_path, override=True) + raw_mode = os.getenv("CRAWLER_TOR_CIRCUIT_MODE", "iteration").strip().lower() + tor_circuit_mode = "pages" if raw_mode in ["pages", "page", "per_pages"] else "iteration" + raw_pages = os.getenv("CRAWLER_TOR_CIRCUIT_PAGES", "10").strip() + tor_circuit_pages = int(raw_pages) if raw_pages.isdigit() else 10 + + raw_timeouts = os.getenv("CRAWLER_TOR_MAX_CONSECUTIVE_TIMEOUTS", "5").strip() + tor_max_consecutive_timeouts = int(raw_timeouts) if raw_timeouts.isdigit() else 5 + + raw_nodes = os.getenv("CRAWLER_TOR_EXIT_NODES", "") + tor_exit_nodes = [c.strip().lower() for c in raw_nodes.split(",") if c.strip()] + + raw_iter_mode = os.getenv("CRAWLER_ITERATION_MODE", "all").strip().lower() + iteration_mode = "visits" if raw_iter_mode in ["visits", "limit", "pages", "capped"] else "all" + + raw_max_visits = ( + os.getenv("CRAWLER_MAX_VISITS_PER_ITERATION") or + os.getenv("CRAWLER_VISITS_PER_ITERATION") or + "10" + ).strip() + max_visits_per_iteration = int(raw_max_visits) if raw_max_visits.isdigit() else 10 + + return { + "start_url": os.getenv("CRAWLER_START_URL", "https://example.com"), + "use_tor": os.getenv("CRAWLER_USE_TOR", "false").strip().lower() in ["true", "1", "y", "yes"], + "tor_circuit_mode": tor_circuit_mode, + "tor_circuit_pages": max(1, tor_circuit_pages), + "tor_max_consecutive_timeouts": max(1, tor_max_consecutive_timeouts), + "tor_exit_nodes": tor_exit_nodes, + "num_tabs": int(os.getenv("CRAWLER_NUM_TABS", "5")) if os.getenv("CRAWLER_NUM_TABS", "").isdigit() else 5, + "num_iterations": int(os.getenv("CRAWLER_NUM_ITERATIONS", "1")) if os.getenv("CRAWLER_NUM_ITERATIONS", "").isdigit() else 1, + "iteration_mode": iteration_mode, + "max_visits_per_iteration": max(1, max_visits_per_iteration), + "randomize_queue": os.getenv("CRAWLER_RANDOMIZE_QUEUE", "true").strip().lower() not in ["false", "0", "n", "no"], + "headless": os.getenv("CRAWLER_HEADLESS", "false").strip().lower() in ["true", "1", "y", "yes"], + "accept_cookies": os.getenv("CRAWLER_ACCEPT_COOKIES", "true").strip().lower() not in ["false", "0", "n", "no"], + "slow_mo": int(os.getenv("CRAWLER_SLOW_MO", "100")) if os.getenv("CRAWLER_SLOW_MO", "").isdigit() else 100, + "timeout_ms": int(os.getenv("CRAWLER_TIMEOUT_MS", "35000")) if os.getenv("CRAWLER_TIMEOUT_MS", "").isdigit() else 35000, + "tor_socks_port": int(os.getenv("CRAWLER_TOR_SOCKS_PORT", "9050")) if os.getenv("CRAWLER_TOR_SOCKS_PORT", "").isdigit() else 9050, + "tor_control_port": int(os.getenv("CRAWLER_TOR_CONTROL_PORT", "9051")) if os.getenv("CRAWLER_TOR_CONTROL_PORT", "").isdigit() else 9051, + "user_agent": os.getenv("CRAWLER_USER_AGENT", "random").strip(), + } + + @classmethod + def save_env_file(cls, data: dict, env_path: str = ".env") -> None: + """Writes configuration key-values to a .env file.""" + raw_exit = data.get("tor_exit_nodes", []) + if isinstance(raw_exit, list): + exit_str = ",".join(raw_exit) + else: + exit_str = str(raw_exit) + + lines = [ + f"CRAWLER_START_URL={data.get('start_url', '')}", + f"CRAWLER_USE_TOR={'true' if data.get('use_tor') else 'false'}", + f"CRAWLER_TOR_CIRCUIT_MODE={data.get('tor_circuit_mode', 'iteration')}", + f"CRAWLER_TOR_CIRCUIT_PAGES={data.get('tor_circuit_pages', 10)}", + f"CRAWLER_TOR_MAX_CONSECUTIVE_TIMEOUTS={data.get('tor_max_consecutive_timeouts', 5)}", + f"CRAWLER_TOR_EXIT_NODES={exit_str}", + f"CRAWLER_NUM_TABS={data.get('num_tabs', 5)}", + f"CRAWLER_NUM_ITERATIONS={data.get('num_iterations', 1)}", + f"CRAWLER_ITERATION_MODE={data.get('iteration_mode', 'all')}", + f"CRAWLER_MAX_VISITS_PER_ITERATION={data.get('max_visits_per_iteration', 10)}", + f"CRAWLER_RANDOMIZE_QUEUE={'true' if data.get('randomize_queue', True) else 'false'}", + f"CRAWLER_HEADLESS={'true' if data.get('headless') else 'false'}", + f"CRAWLER_ACCEPT_COOKIES={'true' if data.get('accept_cookies') else 'false'}", + f"CRAWLER_SLOW_MO={data.get('slow_mo', 100)}", + f"CRAWLER_TIMEOUT_MS={data.get('timeout_ms', 35000)}", + f"CRAWLER_TOR_SOCKS_PORT={data.get('tor_socks_port', 9050)}", + f"CRAWLER_TOR_CONTROL_PORT={data.get('tor_control_port', 9051)}", + f"CRAWLER_USER_AGENT={data.get('user_agent', 'random')}", + "", + ] + with open(env_path, "w", encoding="utf-8") as f: + f.write("\n".join(lines)) + diff --git a/crawler/cookies.py b/crawler/cookies.py new file mode 100644 index 0000000..0a07808 --- /dev/null +++ b/crawler/cookies.py @@ -0,0 +1,177 @@ +import asyncio + +# Selectors for common Consent Management Platforms (CMPs) and cookie banners +COOKIE_BANNER_SELECTORS = [ + # Complianz (WordPress) + "button.cmplz-accept", + "button.cmplz-btn.cmplz-accept", + ".cmplz-btn.cmplz-accept", + "#cmplz-cookiebanner-content .cmplz-accept", + + # Borlabs Cookie (WordPress) + "a._brlbs-accept-all", + "button._brlbs-accept-all", + "._brlbs-btn-accept-all", + "[data-borlabs-cookie-accept-all]", + "#borlabs-cookie-accept-all", + ".borlabs-cookie-preference-accept-all", + + # Cookiebot + "#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll", + "#CybotCookiebotDialogBodyButtonAccept", + "#CybotCookiebotDialogBodyLevelButtonAccept", + "#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection", + + # OneTrust / CookiePro + "#onetrust-accept-btn-handler", + "button#onetrust-accept-btn-handler", + "#accept-recommended-btn-handler", + + # Usercentrics + "button[data-testid='uc-accept-all-button']", + "#uc-btn-accept-banner", + "button#uc-btn-accept-banner", + "div#usercentrics-root button[data-testid='uc-accept-all-button']", + + # Klaro + ".klaro .cm-btn-accept", + ".klaro .cm-btn-success", + "button.cm-btn-accept-all", + + # CookieYes + "button.cky-btn-accept", + "[data-cky-tag='accept-button']", + + # Real Cookie Banner + "button[data-consent-action='accept-all']", + ".rcb-btn-accept-all", + + # CCM19 + ".ccm--btn-accept-all", + "button.ccm--btn-accept-all", + "button[data-ccm-consent='accept-all']", + + # Google Funding Choices + ".fc-cta-consent", + "button.fc-cta-consent", + + # Quantcast / InMobi + ".qc-cmp2-summary-buttons button[mode='primary']", + + # Iubenda + ".iubenda-cs-accept-btn", + "button.iubenda-cs-btn-primary", + + # Didomi + "#didomi-notice-agree-button", + + # Osano + ".osano-cm-accept-all", + "button.osano-cm-button--type_accept", + + # Axeptio + "#axeptio_btn_acceptAll", + + # Generic IDs, classes, and data attributes + "[data-action='accept-all']", + "[data-consent='accept-all']", + "[data-cookie-accept-all]", + "button[id*='cookie-accept']", + "button[id*='accept-cookies']", + "button[id*='cookieAccept']", + "button[class*='cookie-accept']", + "button[class*='accept-all-cookies']", +] + +COOKIE_TEXT_PATTERNS = [ + # German + r"^(alle\s+)?(cookies\s+)?akzeptieren$", + r"^alles\s+akzeptieren$", + r"^alle\s+annehmen$", + r"^alles\s+annehmen$", + r"^alle\s+ausw[aä]hlen\s+und\s+akzeptieren$", + r"^alle\s+zulassen$", + r"^cookies\s+zulassen$", + r"^einverstanden$", + r"^zustimmen$", + r"^allen\s+zustimmen$", + r"^alle\s+best[aä]tigen$", + r"^auswahl\s+best[aä]tigen$", + r"^einwilligen$", + r"^verstanden$", + r"^ok$", + + # English + r"^(accept\s+all(\s+cookies)?)$", + r"^(allow\s+all(\s+cookies)?)$", + r"^i\s+accept$", + r"^i\s+agree$", + r"^agree(\s+to\s+all)?$", + r"^accept$", + r"^allow$", + r"^agree\s+&\s+proceed$", + r"^got\s+it$", +] + +COOKIE_TEXT_REGEX_STR = "|".join(f"(?:{p})" for p in COOKIE_TEXT_PATTERNS) + + +async def auto_accept_cookies(page) -> bool: + """ + Attempts to detect and click cookie consent / banner acceptance buttons + using a fast, single-pass in-browser JavaScript evaluation. + Only targets actual buttons and known CMP selectors, preventing accidental link navigations. + """ + js_code = """ + () => { + const selectors = """ + str(COOKIE_BANNER_SELECTORS) + """; + + // 1. Try known CMP selectors on main page + for (const sel of selectors) { + try { + const el = document.querySelector(sel); + if (el && (el.offsetWidth > 0 || el.offsetHeight > 0 || el.getClientRects().length > 0)) { + el.click(); + return { clicked: true, method: 'selector', text: sel }; + } + } catch(e) {} + } + + // 2. Check Shadow DOM (e.g. Usercentrics / custom web components) + try { + const ucRoot = document.querySelector('#usercentrics-root, div#usercentrics-cmp-ui'); + if (ucRoot && ucRoot.shadowRoot) { + const ucBtn = ucRoot.shadowRoot.querySelector("button[data-testid='uc-accept-all-button'], button#uc-btn-accept-banner, button.uc-btn-accept"); + if (ucBtn) { + ucBtn.click(); + return { clicked: true, method: 'shadow-dom', text: 'usercentrics-shadow' }; + } + } + } catch(e) {} + + // 3. Text-based matching strictly on button / submit / role=button elements (never plain navigation links) + const textRegex = /""" + COOKIE_TEXT_REGEX_STR + """/i; + const candidates = document.querySelectorAll('button, input[type="button"], input[type="submit"], [role="button"], a.cmplz-accept, a._brlbs-accept-all, a.cky-btn-accept'); + for (const btn of candidates) { + try { + const txt = (btn.innerText || btn.value || '').trim(); + if (txt && (btn.offsetWidth > 0 || btn.offsetHeight > 0 || btn.getClientRects().length > 0) && textRegex.test(txt)) { + btn.click(); + return { clicked: true, method: 'button-text', text: txt }; + } + } catch(e) {} + } + + return { clicked: false }; + } + """ + try: + result = await asyncio.wait_for(page.evaluate(js_code), timeout=2.0) + if result and result.get("clicked"): + print(f" [Cookie] Auto-accepted cookies via {result.get('method')}: '{result.get('text')}'") + await page.wait_for_timeout(600) # Give tracking scripts time to transmit beacons + return True + except Exception: + pass + + return False diff --git a/crawler/engine.py b/crawler/engine.py new file mode 100644 index 0000000..1c70edc --- /dev/null +++ b/crawler/engine.py @@ -0,0 +1,1023 @@ +import asyncio +import inspect +import random +import time +from typing import Dict, List, Set, Tuple, Optional, Callable, Any +from playwright.async_api import async_playwright + +from .config import CrawlerConfig +from .cookies import auto_accept_cookies +from .tor import TorManager +from .url_utils import normalize_url + + +async def _dispatch_event(callback: Optional[Callable[[Dict[str, Any]], Any]], event: Dict[str, Any]): + """Safely dispatches an event dictionary to an async or sync callback.""" + if callback is None: + return + try: + if inspect.iscoroutinefunction(callback): + await callback(event) + else: + callback(event) + except Exception: + pass + + +async def crawl_level( + page, + url: str, + source_url: Optional[str], + visited: Set[str], + errors: List[Tuple[str, Optional[str], str]], + start_domain: str, + accept_cookies_default: bool = True, + stats: Optional[Dict[str, int]] = None, + timeout_ms: int = 35000, + event_callback: Optional[Callable[[Dict[str, Any]], Any]] = None, + worker_name: str = "Worker", + page_result_callback: Optional[Callable[[str, Optional[str], bool, Optional[str]], Any]] = None, +) -> Set[str]: + """Navigates to a URL and returns a set of valid HTTP/HTTPS links found on that page.""" + log_msg = f"[{worker_name}] Browsing: {url}" + print(log_msg) + await _dispatch_event(event_callback, { + "type": "log", + "message": log_msg, + "level": "info", + "timestamp": time.time(), + }) + + start_time = time.time() + try: + # Go to the URL and wait for the page to load + response = await page.goto(url, wait_until="domcontentloaded", timeout=timeout_ms) + visited.add(url) + + if response and response.status >= 400: + retry_after = response.headers.get("retry-after") + status_desc = "" + if response.status == 503: + status_desc = " (Service Temporarily Unavailable / Rate Limited)" + elif response.status == 429: + status_desc = " (Too Many Requests / Rate Limited)" + elif response.status == 403: + status_desc = " (Forbidden / Access Denied)" + + retry_info = f" [Retry-After: {retry_after}s]" if retry_after else "" + err_text = f"HTTP {response.status}{status_desc}{retry_info}" + errors.append((url, source_url, err_text)) + err_log = f" [{worker_name}] [!] HTTP {response.status}{status_desc}{retry_info} returned for {url}" + print(err_log) + await _dispatch_event(event_callback, { + "type": "log", + "message": err_log, + "level": "error", + "timestamp": time.time(), + }) + await _dispatch_event(event_callback, { + "type": "error", + "url": url, + "source_url": source_url, + "error": err_text, + "timestamp": time.time(), + }) + if page_result_callback: + try: + res = page_result_callback(url, source_url, False, err_text) + if inspect.iscoroutine(res): + await res + except Exception: + pass + return set() + + except Exception as e: + duration = time.time() - start_time + visited.add(url) + error_msg = str(e).split("\n")[0] + errors.append((url, source_url, error_msg)) + err_log = f" [{worker_name}] [!] Failed to load {url} after {duration:.2f}s: {error_msg}" + print(err_log) + await _dispatch_event(event_callback, { + "type": "log", + "message": err_log, + "level": "error", + "timestamp": time.time(), + }) + await _dispatch_event(event_callback, { + "type": "error", + "url": url, + "source_url": source_url, + "error": error_msg, + "timestamp": time.time(), + }) + if page_result_callback: + try: + res = page_result_callback(url, source_url, False, error_msg) + if inspect.iscoroutine(res): + await res + except Exception: + pass + return set() + + duration = time.time() - start_time + ok_log = f" [{worker_name}] [OK] Loaded in {duration:.2f} seconds" + print(ok_log) + await _dispatch_event(event_callback, { + "type": "log", + "message": ok_log, + "level": "success", + "timestamp": time.time(), + }) + + # Automatically accept cookies to ensure tracking and scripts are activated + if accept_cookies_default: + accepted = await auto_accept_cookies(page) + if accepted and stats is not None: + stats["cookies_accepted"] += 1 + cookie_log = f" [{worker_name}] [COOKIE] Accepted cookie banner on {url}" + print(cookie_log) + await _dispatch_event(event_callback, { + "type": "log", + "message": cookie_log, + "level": "info", + "timestamp": time.time(), + }) + + if page_result_callback: + try: + res = page_result_callback(url, source_url, True, None) + if inspect.iscoroutine(res): + await res + except Exception: + pass + + # Extract all 'href' attributes from 'a' tags + try: + links = await page.eval_on_selector_all("a[href]", "elements => elements.map(el => el.href)") + except Exception as e: + extract_err = f" [{worker_name}] [!] Failed to extract links from {url}: {e}" + print(extract_err) + await _dispatch_event(event_callback, { + "type": "log", + "message": extract_err, + "level": "warn", + "timestamp": time.time(), + }) + return set() + + # Filter and normalize valid HTTP/HTTPS links + valid_links = set() + for link in links: + norm_url, _ = normalize_url(link, start_domain) + if norm_url: + valid_links.add(norm_url) + + return valid_links + + +class RandomQueue(asyncio.Queue): + """An asyncio Queue that pops items uniformly at random instead of strict FIFO order.""" + + def _init(self, maxsize): + self._queue = [] + + def _put(self, item): + self._queue.append(item) + + def _get(self): + idx = random.randrange(len(self._queue)) + self._queue[idx], self._queue[-1] = self._queue[-1], self._queue[idx] + return self._queue.pop() + + +class IterationVisitTracker: + """Coordinates and limits website visits within a single crawl iteration.""" + + def __init__(self, max_visits: Optional[int]): + self.max_visits = max_visits + self.started_visits = 0 + self.completed_visits = 0 + self._lock = asyncio.Lock() + self.limit_reached_event = asyncio.Event() + + async def acquire_visit_slot(self) -> bool: + """ + Attempts to reserve a visit slot. + Returns True if reservation was successful (or visits unlimited), + False if the max visit limit for this iteration has been reached. + """ + if self.max_visits is None or self.max_visits <= 0: + return True + async with self._lock: + if self.started_visits >= self.max_visits: + return False + self.started_visits += 1 + return True + + async def record_visit_completed(self) -> None: + """Records that a visit attempt has finished, signalling limit_reached_event if target reached.""" + if self.max_visits is None or self.max_visits <= 0: + return + async with self._lock: + self.completed_visits += 1 + if self.completed_visits >= self.max_visits: + self.limit_reached_event.set() + + +async def worker( + name: str, + context, + queue: asyncio.Queue, + visited: Set[str], + enqueued: Set[str], + errors: List[Tuple[str, Optional[str], str]], + start_domain: str, + stats: Dict[str, int], + stop_event: asyncio.Event, + iteration_stop_event: Optional[asyncio.Event] = None, + visit_tracker: Optional[IterationVisitTracker] = None, + accept_cookies_default: bool = True, + timeout_ms: int = 35000, + event_callback: Optional[Callable[[Dict[str, Any]], Any]] = None, + page_done_callback: Optional[Callable[[], Any]] = None, + page_result_callback: Optional[Callable[[str, Optional[str], bool, Optional[str]], Any]] = None, + prior_visited: int = 0, + prior_errors: int = 0, +): + """Worker task that pulls URLs from the queue and crawls them in its own dedicated tab.""" + page = None + try: + if stop_event.is_set() or (iteration_stop_event and iteration_stop_event.is_set()): + return + + page = await context.new_page() + + # Automatically close any popups or new tabs spawned by links or scripts + page.on("popup", lambda popup: asyncio.create_task(popup.close())) + + while not stop_event.is_set() and (iteration_stop_event is None or not iteration_stop_event.is_set()): + # Wait for a URL from the queue with a short timeout to check stop conditions periodically + try: + item = await asyncio.wait_for(queue.get(), timeout=1.0) + except asyncio.TimeoutError: + continue + + current_url, source_url, is_external = item + + try: + if stop_event.is_set() or (iteration_stop_event and iteration_stop_event.is_set()): + break + + if current_url in visited: + continue + + if visit_tracker: + can_visit = await visit_tracker.acquire_visit_slot() + if not can_visit: + if iteration_stop_event: + iteration_stop_event.set() + break + + prefix = f"[EXTERNAL|{name}]" if is_external else f"[INTERNAL|{name}]" + queue_log = f"\n{prefix} (Queue approx: {queue.qsize()})" + print(queue_log) + + try: + found_links = await crawl_level( + page=page, + url=current_url, + source_url=source_url, + visited=visited, + errors=errors, + start_domain=start_domain, + accept_cookies_default=accept_cookies_default, + stats=stats, + timeout_ms=timeout_ms, + event_callback=event_callback, + worker_name=name, + page_result_callback=page_result_callback, + ) + finally: + if visit_tracker: + await visit_tracker.record_visit_completed() + + if is_external: + stats["external"] += 1 + else: + stats["internal"] += 1 + + # Emit updated stats + await _dispatch_event(event_callback, { + "type": "stats", + "stats": stats, + "queue_size": queue.qsize(), + "visited_count": len(visited), + "error_count": len(errors), + "total_visited_all": prior_visited + len(visited), + "total_errors_all": prior_errors + len(errors), + }) + + # Trigger legacy page crawled callback if page_result_callback was not supplied + if page_done_callback and not page_result_callback and not stop_event.is_set(): + try: + res = page_done_callback() + if inspect.iscoroutine(res): + await res + except Exception: + pass + + # If it's an internal link, add its discovered links to the queue + if not is_external and not stop_event.is_set() and (iteration_stop_event is None or not iteration_stop_event.is_set()): + new_links = [] + for link in found_links: + norm_link, link_is_internal = normalize_url(link, start_domain) + if norm_link and norm_link not in enqueued and norm_link not in visited: + new_links.append((norm_link, current_url, not link_is_internal)) + enqueued.add(norm_link) + + # Shuffle new links to maintain a degree of randomness in crawling order + if new_links: + random.shuffle(new_links) + for n_item in new_links: + queue.put_nowait(n_item) + elif is_external: + ext_log = f" [{name}] -> Reached external level 1. Not following further links." + print(ext_log) + await _dispatch_event(event_callback, { + "type": "log", + "message": ext_log, + "level": "info", + "timestamp": time.time(), + }) + + except Exception as e: + err_str = f" [!] Unexpected error in worker {name} processing {current_url}: {e}" + print(err_str) + await _dispatch_event(event_callback, { + "type": "log", + "message": err_str, + "level": "error", + "timestamp": time.time(), + }) + finally: + queue.task_done() + except (asyncio.CancelledError, Exception): + pass + finally: + if page: + try: + await page.close() + except Exception: + pass + + +async def fetch_tor_identity(context, timeout_ms: int = 10000) -> Dict[str, Any]: + """Fetches active exit IP and geolocation details using the browser's Tor proxy context.""" + # 1. Try ipapi.co + try: + res = await context.request.get("https://ipapi.co/json/", timeout=timeout_ms) + if res.ok: + data = await res.json() + if "ip" in data: + return { + "ip": data.get("ip", "Unknown"), + "city": data.get("city", "Unknown"), + "region": data.get("region", "Unknown"), + "country": data.get("country_name", "Unknown"), + "country_code": data.get("country_code", ""), + "org": data.get("org", "Unknown"), + "is_tor": True, + } + except Exception: + pass + + # 2. Try ip-api.com fallback + try: + res = await context.request.get("http://ip-api.com/json/", timeout=timeout_ms) + if res.ok: + data = await res.json() + if data.get("status") == "success": + return { + "ip": data.get("query", "Unknown"), + "city": data.get("city", "Unknown"), + "region": data.get("regionName", "Unknown"), + "country": data.get("country", "Unknown"), + "country_code": data.get("countryCode", ""), + "org": data.get("isp", "Unknown"), + "is_tor": True, + } + except Exception: + pass + + # 3. Try official check.torproject.org fallback + try: + res = await context.request.get("https://check.torproject.org/api/ip", timeout=timeout_ms) + if res.ok: + data = await res.json() + return { + "ip": data.get("IP", "Unknown"), + "city": "Unknown", + "region": "Unknown", + "country": "Unknown", + "country_code": "", + "org": "Tor Exit Relay", + "is_tor": bool(data.get("IsTor", True)), + } + except Exception: + pass + + return { + "ip": "Unknown", + "city": "Unknown", + "region": "Unknown", + "country": "Unknown", + "country_code": "", + "org": "Tor Network", + "is_tor": True, + } + + +class Crawler: + """Core crawler engine orchestrating browser instances, tabs, and queue scheduling.""" + + def __init__( + self, + config: CrawlerConfig, + event_callback: Optional[Callable[[Dict[str, Any]], Any]] = None, + ): + self.config = config + self.event_callback = event_callback + self.tor_manager = TorManager( + socks_port=config.tor_socks_port, + control_port=config.tor_control_port, + exit_nodes=config.tor_exit_nodes_formatted, + ) if config.use_tor else None + self._stop_event = asyncio.Event() + self._is_running = False + self._circuit_lock = asyncio.Lock() + self._pages_in_current_circuit = 0 + self._consecutive_timeouts = 0 + self._total_circuit_rotations = 0 + self._total_visited_all_iterations = 0 + self._total_errors_all_iterations = 0 + + def stop(self) -> None: + """Signals the crawler and active workers to stop immediately.""" + self._stop_event.set() + + @property + def is_running(self) -> bool: + return self._is_running + + @property + def total_visited_all_iterations(self) -> int: + return self._total_visited_all_iterations + + @property + def total_errors_all_iterations(self) -> int: + return self._total_errors_all_iterations + + async def _rotate_tor_circuit(self, context=None, reason: str = "") -> None: + """Safely triggers NEWNYM via TorManager and queries fresh exit node identity.""" + if not self.tor_manager or not self.config.use_tor: + return + + rot_msg = f"[Tor] Renewing Tor circuit (NEWNYM)... (Reason: {reason})" + print(f"\n{rot_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": rot_msg, + "level": "info", + "timestamp": time.time(), + }) + + await asyncio.to_thread(self.tor_manager.renew_circuit) + self._total_circuit_rotations += 1 + self._pages_in_current_circuit = 0 + self._consecutive_timeouts = 0 + + if context: + try: + tor_id = await fetch_tor_identity(context) + tor_loc_str = f"{tor_id['city']}, {tor_id['country']}" if tor_id['city'] != "Unknown" else tor_id['country'] + tor_id_msg = f"[Tor] Circuit #{self._total_circuit_rotations} active! Exit Node IP: {tor_id['ip']} | Location: {tor_loc_str} | ISP: {tor_id['org']}" + print(tor_id_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": tor_id_msg, + "level": "success", + "timestamp": time.time(), + }) + await _dispatch_event(self.event_callback, { + "type": "tor_identity", + "data": { + **tor_id, + "rotation_count": self._total_circuit_rotations, + "exit_nodes": self.config.tor_exit_nodes, + }, + }) + except Exception as e: + print(f" [!] Failed to query Tor identity after rotation: {e}") + + async def _on_page_result( + self, + context, + url: str, + source_url: Optional[str], + success: bool, + error_msg: Optional[str] = None, + ) -> None: + """Handles Tor circuit rotation on N crawled pages as well as consecutive timeout fallback.""" + if not self.config.use_tor: + return + + async with self._circuit_lock: + if success: + self._consecutive_timeouts = 0 + if self.config.tor_circuit_mode == "pages": + self._pages_in_current_circuit += 1 + if self._pages_in_current_circuit >= self.config.tor_circuit_pages: + await self._rotate_tor_circuit( + context=context, + reason=f"Reached {self.config.tor_circuit_pages} crawled pages threshold", + ) + else: + # Check if this error is net::ERR_TIMED_OUT, connection timeout, or rate-limit / WAF block (503, 429, 403) + is_timeout = False + is_rate_limited = False + if error_msg: + err_lower = error_msg.lower() + if ( + "err_timed_out" in err_lower + or "timed out" in err_lower + or "timed_out" in err_lower + or "timeout" in err_lower + ): + is_timeout = True + elif ( + "http 503" in err_lower + or "http 429" in err_lower + or "http 403" in err_lower + ): + is_rate_limited = True + + if is_timeout or is_rate_limited: + self._consecutive_timeouts += 1 + err_type = "Rate limit / WAF block" if is_rate_limited else "Timeout" + timeout_log = ( + f" [Tor] Consecutive {err_type.lower()} ({self._consecutive_timeouts}/" + f"{self.config.tor_max_consecutive_timeouts}) on {url}: {error_msg}" + ) + print(timeout_log) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": timeout_log, + "level": "warn", + "timestamp": time.time(), + }) + + if self._consecutive_timeouts >= self.config.tor_max_consecutive_timeouts: + fallback_reason = ( + f"Fallback: {self.config.tor_max_consecutive_timeouts} consecutive pages failed " + f"({err_type.lower()}: {error_msg})" + ) + fallback_log = ( + f" [Tor] Fallback triggered! {self._consecutive_timeouts} consecutive pages failed " + f"with {err_type.lower()}. Acquiring new Tor circuit..." + ) + print(f"\n{fallback_log}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": fallback_log, + "level": "warn", + "timestamp": time.time(), + }) + self._consecutive_timeouts = 0 + await self._rotate_tor_circuit( + context=context, + reason=fallback_reason, + ) + else: + # Other non-transient errors (e.g. 404) reset consecutive failure counter + self._consecutive_timeouts = 0 + + async def _on_page_crawled(self, context) -> None: + """Checks whether Tor circuit renewal is due in 'pages' mode (legacy compatibility).""" + await self._on_page_result(context, "", None, True, None) + + async def run_iteration(self, playwright_instance, iteration: int) -> Dict[str, any]: + """Runs a single crawl iteration.""" + if self._stop_event.is_set(): + return { + "duration": 0, + "stats": {}, + "errors": [], + "visited_count": 0, + "total_visited_all": self._total_visited_all_iterations, + "total_errors_all": self._total_errors_all_iterations, + } + + # Handle Tor circuit rotation at iteration boundary + if self.config.use_tor and self.tor_manager: + if self.config.tor_circuit_mode == "iteration": + await self._rotate_tor_circuit( + context=None, + reason=f"Starting Iteration {iteration}", + ) + elif self.config.tor_circuit_mode == "pages" and self._total_circuit_rotations == 0: + await self._rotate_tor_circuit( + context=None, + reason="Initial Crawl Setup", + ) + + iteration_start_time = time.time() + + launch_args = { + "headless": self.config.headless, + "slow_mo": self.config.slow_mo, + "args": [ + "--disable-blink-features=AutomationControlled", + "--no-sandbox", + "--disable-dev-shm-usage", + ], + } + + if self.config.use_tor: + tor_msg = f"[INFO] Routing traffic through Tor (socks5://127.0.0.1:{self.config.tor_socks_port})..." + print(f"\n{tor_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": tor_msg, + "level": "info", + "timestamp": time.time(), + }) + launch_args["proxy"] = {"server": f"socks5://127.0.0.1:{self.config.tor_socks_port}"} + launch_args["args"].append("--host-resolver-rules=MAP * ~NOTFOUND , EXCLUDE 127.0.0.1") + + chosen_ua = self.config.get_user_agent() + context_kwargs = { + "viewport": {"width": 1920, "height": 1080}, + "locale": "de-DE", + "timezone_id": "Europe/Berlin", + } + if chosen_ua: + context_kwargs["user_agent"] = chosen_ua + + browser = await playwright_instance.chromium.launch(**launch_args) + context = await browser.new_context(**context_kwargs) + + ua_msg = f"[INFO] Active Browser User-Agent: {chosen_ua or 'Native Browser Default'}" + print(ua_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": ua_msg, + "level": "info", + "timestamp": time.time(), + }) + + # If Tor is enabled, discover exit IP and region for the current circuit + if self.config.use_tor: + tor_id = await fetch_tor_identity(context) + tor_loc_str = f"{tor_id['city']}, {tor_id['country']}" if tor_id['city'] != "Unknown" else tor_id['country'] + tor_id_msg = f"[Tor] Exit Node IP: {tor_id['ip']} | Location: {tor_loc_str} | ISP: {tor_id['org']}" + print(tor_id_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": tor_id_msg, + "level": "info", + "timestamp": time.time(), + }) + await _dispatch_event(self.event_callback, { + "type": "tor_identity", + "data": { + **tor_id, + "rotation_count": self._total_circuit_rotations, + "exit_nodes": self.config.tor_exit_nodes, + }, + }) + + visited: Set[str] = set() + enqueued: Set[str] = {self.config.start_url} + errors: List[Tuple[str, Optional[str], str]] = [] + stats: Dict[str, int] = {"internal": 0, "external": 0, "cookies_accepted": 0} + + prior_visited = self._total_visited_all_iterations + prior_errors = self._total_errors_all_iterations + + queue: asyncio.Queue = ( + RandomQueue() if self.config.randomize_queue else asyncio.Queue() + ) + queue.put_nowait((self.config.start_url, None, False)) + + max_visits = ( + self.config.max_visits_per_iteration + if self.config.iteration_mode == "visits" and self.config.max_visits_per_iteration > 0 + else None + ) + visit_tracker = IterationVisitTracker(max_visits=max_visits) if max_visits else None + iteration_stop_event = asyncio.Event() + + start_domain = self.config.start_domain + start_msg = f"=== Starting Crawl on {start_domain} with {self.config.num_tabs} concurrent workers ===" + print(f"\n{start_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": start_msg, + "level": "info", + "timestamp": time.time(), + }) + + if max_visits: + mode_msg = f"[INFO] Iteration visit mode: Limit to {max_visits} website visits before starting next iteration." + else: + mode_msg = "[INFO] Iteration visit mode: Crawling all reachable website links." + print(mode_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": mode_msg, + "level": "info", + "timestamp": time.time(), + }) + + queue_msg = ( + "[INFO] Crawl queue strategy: RANDOM (URLs are picked randomly from discovered links)." + if self.config.randomize_queue + else "[INFO] Crawl queue strategy: FIFO (Standard breadth-first search order)." + ) + print(queue_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": queue_msg, + "level": "info", + "timestamp": time.time(), + }) + + if self.config.accept_cookies: + cookie_enabled_msg = "[INFO] Automatic cookie acceptance is ENABLED." + print(cookie_enabled_msg) + await _dispatch_event(self.event_callback, { + "type": "log", + "message": cookie_enabled_msg, + "level": "info", + "timestamp": time.time(), + }) + + # Emit initial stats + await _dispatch_event(self.event_callback, { + "type": "stats", + "stats": stats, + "queue_size": queue.qsize(), + "visited_count": len(visited), + "error_count": len(errors), + "total_visited_all": prior_visited + len(visited), + "total_errors_all": prior_errors + len(errors), + }) + + # Create worker tasks + workers = [] + for i in range(self.config.num_tabs): + task = asyncio.create_task( + worker( + name=f"Tab-{i+1}", + context=context, + queue=queue, + visited=visited, + enqueued=enqueued, + errors=errors, + start_domain=start_domain, + stats=stats, + stop_event=self._stop_event, + iteration_stop_event=iteration_stop_event, + visit_tracker=visit_tracker, + accept_cookies_default=self.config.accept_cookies, + timeout_ms=self.config.timeout_ms, + event_callback=self.event_callback, + page_result_callback=lambda u, s, ok, err: self._on_page_result(context, u, s, ok, err), + prior_visited=prior_visited, + prior_errors=prior_errors, + ) + ) + workers.append(task) + + # Wait until queue is fully processed or stop signal / limit is reached + join_task = asyncio.create_task(queue.join()) + stop_wait_task = asyncio.create_task(self._stop_event.wait()) + wait_tasks = [join_task, stop_wait_task] + + limit_wait_task = None + if visit_tracker and visit_tracker.max_visits: + limit_wait_task = asyncio.create_task(visit_tracker.limit_reached_event.wait()) + wait_tasks.append(limit_wait_task) + + await asyncio.wait( + wait_tasks, + return_when=asyncio.FIRST_COMPLETED, + ) + + if not join_task.done(): + join_task.cancel() + if not stop_wait_task.done(): + stop_wait_task.cancel() + if limit_wait_task and not limit_wait_task.done(): + limit_wait_task.cancel() + + # Signal workers in this iteration to stop + iteration_stop_event.set() + + # Cancel worker tasks + for task in workers: + task.cancel() + + # Wait for workers to cleanly exit + await asyncio.gather(*workers, return_exceptions=True) + + iteration_duration = time.time() - iteration_start_time + + if visit_tracker and visit_tracker.limit_reached_event.is_set(): + limit_summary = ( + f"[INFO] Reached configured website visit limit " + f"({visit_tracker.completed_visits}/{max_visits} visits) for iteration {iteration}." + ) + print(f"\n{limit_summary}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": limit_summary, + "level": "info", + "timestamp": time.time(), + }) + fin_msg = f"Finished iteration {iteration}! Execution time: {iteration_duration:.2f} seconds." + print(f"\n{fin_msg}") + print(f"Total internal pages visited: {stats['internal']}") + print(f"Total external pages visited: {stats['external']}") + if self.config.accept_cookies: + print(f"Total cookie banners accepted: {stats['cookies_accepted']}") + + await _dispatch_event(self.event_callback, { + "type": "log", + "message": fin_msg, + "level": "success", + "timestamp": time.time(), + }) + + if errors: + err_summary = f"=== Websites with Errors ({len(errors)}) ===" + print(f"\n{err_summary}") + for err_url, src_url, err_msg in errors: + src_display = src_url if src_url else "User Input" + print(f"- {err_url}\n Error: {err_msg}\n Found on: {src_display}") + + self._total_visited_all_iterations = prior_visited + len(visited) + self._total_errors_all_iterations = prior_errors + len(errors) + + await browser.close() + return { + "duration": iteration_duration, + "stats": stats, + "errors": errors, + "visited_count": len(visited), + "total_visited_all": self._total_visited_all_iterations, + "total_errors_all": self._total_errors_all_iterations, + } + + async def run(self) -> None: + """Main execution loop running across all configured iterations.""" + self._is_running = True + self._stop_event.clear() + self._total_visited_all_iterations = 0 + self._total_errors_all_iterations = 0 + + await _dispatch_event(self.event_callback, { + "type": "status", + "status": "running", + "message": "Crawl job started", + "total_visited_all": 0, + "total_errors_all": 0, + }) + + if self.tor_manager: + try: + loop = asyncio.get_running_loop() + def _on_tor_log(msg: str): + if self.event_callback: + asyncio.run_coroutine_threadsafe( + _dispatch_event(self.event_callback, { + "type": "log", + "message": msg, + "level": "info", + "timestamp": time.time(), + }), + loop + ) + self.tor_manager.log_callback = _on_tor_log + + # Launch or connect to Tor in background thread without blocking event loop + await asyncio.to_thread(self.tor_manager.start) + + if self.config.tor_exit_nodes: + countries_display = ", ".join(self.config.tor_exit_nodes).upper() + filter_msg = f"[Tor] Exit node country filter active: {countries_display} ({len(self.config.tor_exit_nodes)} selected)" + else: + filter_msg = "[Tor] Exit node country filter: Global / Any (No restrictions)" + print(f"[INFO] {filter_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": filter_msg, + "level": "info", + "timestamp": time.time(), + }) + except Exception as e: + err_msg = f"[ERROR] Could not initialize Tor: {e}" + print(f"\n{err_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": err_msg, + "level": "error", + "timestamp": time.time(), + }) + await _dispatch_event(self.event_callback, { + "type": "status", + "status": "error", + "message": str(e), + }) + self._is_running = False + return + + try: + global_start_time = time.time() + + for iteration in range(1, self.config.num_iterations + 1): + if self._stop_event.is_set(): + break + + if self.config.num_iterations > 1: + iter_msg = f"=== Starting Iteration {iteration}/{self.config.num_iterations} ===" + print(f"\n{'='*40}\n{iter_msg}\n{'='*40}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": iter_msg, + "level": "info", + "timestamp": time.time(), + }) + + await _dispatch_event(self.event_callback, { + "type": "iteration", + "iteration": iteration, + "total": self.config.num_iterations, + "iteration_mode": self.config.iteration_mode, + "max_visits_per_iteration": self.config.max_visits_per_iteration if self.config.iteration_mode == "visits" else None, + "total_visited_all": self._total_visited_all_iterations, + "total_errors_all": self._total_errors_all_iterations, + }) + + async with async_playwright() as p: + await self.run_iteration(p, iteration) + + total_duration = time.time() - global_start_time + done_msg = ( + f"Finished all {self.config.num_iterations} iterations! " + f"Total execution time: {total_duration:.2f} seconds. " + f"Total websites visited: {self._total_visited_all_iterations}, " + f"total errors: {self._total_errors_all_iterations}." + ) + if self._stop_event.is_set(): + done_msg = ( + f"Crawl stopped by user after {total_duration:.2f} seconds. " + f"Total websites visited: {self._total_visited_all_iterations}, " + f"total errors: {self._total_errors_all_iterations}." + ) + + print(f"\n{done_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": done_msg, + "level": "info", + "timestamp": time.time(), + }) + await _dispatch_event(self.event_callback, { + "type": "status", + "status": "stopped" if self._stop_event.is_set() else "finished", + "message": done_msg, + "total_duration": total_duration, + "total_visited_all": self._total_visited_all_iterations, + "total_errors_all": self._total_errors_all_iterations, + }) + except Exception as e: + err_msg = f"Fatal crawler error: {e}" + print(f"\n[FATAL] {err_msg}") + await _dispatch_event(self.event_callback, { + "type": "log", + "message": err_msg, + "level": "error", + "timestamp": time.time(), + }) + await _dispatch_event(self.event_callback, { + "type": "status", + "status": "error", + "message": str(e), + }) + finally: + self._is_running = False + if self.tor_manager: + self.tor_manager.stop() + diff --git a/crawler/tor.py b/crawler/tor.py new file mode 100644 index 0000000..4beba12 --- /dev/null +++ b/crawler/tor.py @@ -0,0 +1,185 @@ +import atexit +import shutil +import time +from typing import Optional +import stem.process +from stem import Signal +from stem.control import Controller + +DEFAULT_TOR_SOCKS_PORT = 9050 +DEFAULT_TOR_CONTROL_PORT = 9051 + + +class TorManager: + """Manages the standalone headless Tor daemon process and circuit rotation.""" + + def __init__( + self, + socks_port: int = DEFAULT_TOR_SOCKS_PORT, + control_port: int = DEFAULT_TOR_CONTROL_PORT, + exit_nodes: Optional[str] = None, + log_callback: Optional[object] = None, + ): + self.socks_port = socks_port + self.control_port = control_port + self.exit_nodes = exit_nodes + self.log_callback = log_callback + self.process: Optional[object] = None + self._is_external_service = False + + def set_exit_nodes(self, exit_nodes: Optional[str]) -> None: + """Dynamically updates exit node country filter on the active Tor controller.""" + self.exit_nodes = exit_nodes + try: + with Controller.from_port(port=self.control_port) as controller: + controller.authenticate() + if self.exit_nodes: + controller.set_conf("ExitNodes", self.exit_nodes) + print(f"[Tor] Configured ExitNodes on Tor controller: {self.exit_nodes}") + else: + try: + controller.reset_conf("ExitNodes") + except Exception: + pass + print("[Tor] Reset ExitNodes filter (Global / Any)") + except Exception as e: + print(f" [!] Failed to set ExitNodes on ControlPort {self.control_port}: {e}") + + def start(self): + """ + Starts a background Tor process with custom SocksPort and ControlPort using stem, + or attaches to an already running Tor service if available. + """ + # 1. Check if a Tor controller is already running on the control port + try: + with Controller.from_port(port=self.control_port) as controller: + controller.authenticate() + print(f"[Tor] Connected to existing Tor service on ControlPort {self.control_port}.") + if self.exit_nodes: + controller.set_conf("ExitNodes", self.exit_nodes) + print(f"[Tor] Applied ExitNodes: {self.exit_nodes}") + else: + try: + controller.reset_conf("ExitNodes") + except Exception: + pass + self._is_external_service = True + return None + except Exception: + pass + + # 2. Check if 'tor' binary is installed + if not shutil.which("tor"): + raise RuntimeError( + "Tor executable ('tor') was not found on your system PATH.\n" + "Please install Tor:\n" + " - macOS: brew install tor\n" + " - Linux: sudo apt install tor\n" + " - Windows: download Tor expert bundle from torproject.org and add to PATH" + ) + + print( + f"[Tor] Launching headless Tor process " + f"(SocksPort {self.socks_port}, ControlPort {self.control_port})..." + ) + # Always launch Tor with base config so it can bootstrap directory info and GeoIP cleanly without stalling + tor_config = { + "SocksPort": str(self.socks_port), + "ControlPort": str(self.control_port), + } + + def _handle_tor_msg(msg: str): + if "Bootstrapped" in msg: + clean_msg = f"[Tor] {msg.strip()}" + print(f" {clean_msg}") + if self.log_callback and callable(self.log_callback): + try: + self.log_callback(clean_msg) + except Exception: + pass + + self.process = stem.process.launch_tor_with_config( + config=tor_config, + take_ownership=False, # Managed explicitly via atexit/stop to prevent premature shutdowns + init_msg_handler=_handle_tor_msg, + ) + self._is_external_service = False + + # Apply ExitNodes once Tor is successfully bootstrapped + if self.exit_nodes: + try: + with Controller.from_port(port=self.control_port) as controller: + controller.authenticate() + controller.set_conf("ExitNodes", self.exit_nodes) + print(f"[Tor] Applied ExitNodes filter: {self.exit_nodes}") + except Exception as e: + print(f" [!] Failed to apply ExitNodes filter on ControlPort {self.control_port}: {e}") + + # Ensure background process is killed when python script exits + atexit.register(self.stop) + print("[Tor] Standalone Tor process started successfully!") + return self.process + + def renew_circuit(self) -> bool: + """ + Sends NEWNYM signal to Tor ControlPort to switch to a new circuit / IP. + Waits for the necessary cool-off period required by Tor. + Returns True if signal was sent successfully, False otherwise. + """ + try: + with Controller.from_port(port=self.control_port) as controller: + controller.authenticate() + if self.exit_nodes: + controller.set_conf("ExitNodes", self.exit_nodes) + controller.signal(Signal.NEWNYM) + wait_time = controller.get_newnym_wait() + print(f"[Tor] Requested new circuit (NEWNYM). Waiting {wait_time:.1f}s for new circuit to activate...") + if wait_time > 0: + time.sleep(wait_time) + print("[Tor] New circuit is active!") + return True + except Exception as e: + print(f" [!] Failed to renew Tor circuit via ControlPort {self.control_port}: {e}") + return False + + def stop(self) -> None: + """Stops the background Tor process if it was spawned by this manager.""" + if self.process and not self._is_external_service: + try: + if self.process.poll() is None: + print("[Tor] Stopping headless Tor process...") + self.process.kill() + except Exception: + pass + finally: + self.process = None + + def __enter__(self): + self.start() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.stop() + + +# Backward-compatible functional interfaces +def start_tor_service( + socks_port: int = DEFAULT_TOR_SOCKS_PORT, + control_port: int = DEFAULT_TOR_CONTROL_PORT, +): + manager = TorManager(socks_port=socks_port, control_port=control_port) + manager.start() + return manager + + +def renew_tor_circuit(control_port: int = DEFAULT_TOR_CONTROL_PORT) -> None: + TorManager(control_port=control_port).renew_circuit() + + +def stop_tor_service(tor_process) -> None: + if tor_process and hasattr(tor_process, "kill"): + try: + if tor_process.poll() is None: + tor_process.kill() + except Exception: + pass diff --git a/crawler/url_utils.py b/crawler/url_utils.py new file mode 100644 index 0000000..3af992e --- /dev/null +++ b/crawler/url_utils.py @@ -0,0 +1,69 @@ +from typing import Optional, Tuple +from urllib.parse import urlparse + +# Non-HTML static file extensions to ignore +IGNORED_EXTENSIONS = ( + ".jpg", ".jpeg", ".png", ".gif", ".webp", ".svg", ".ico", ".bmp", ".tiff", + ".pdf", ".zip", ".tar", ".gz", ".bz2", ".7z", ".rar", ".exe", ".dmg", ".iso", ".bin", + ".mp3", ".mp4", ".avi", ".mov", ".mkv", ".flv", ".wmv", ".webm", ".wav", ".ogg", + ".css", ".js", ".json", ".xml", ".rss", ".atom", ".woff", ".woff2", ".ttf", ".eot", ".otf", + ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".csv" +) + +# WordPress / CMS feed and API paths that are not HTML web pages +IGNORED_PATHS = ( + "/feed", "/comments/feed", "/wp-json", "/xmlrpc.php", "/wp-admin", "/wp-login.php" +) + + +def normalize_url(url: str, start_domain: str) -> Tuple[Optional[str], Optional[bool]]: + """ + Normalizes a URL, strips fragments, filters out non-HTML files / endpoints, + and determines whether the link is internal or external. + + Returns: + (normalized_url, is_internal) or (None, None) if the link should be ignored. + """ + if not isinstance(url, str): + return None, None + + url = url.split("#")[0].strip() + if not url: + return None, None + + parsed = urlparse(url) + if parsed.scheme not in ["http", "https"]: + return None, None + + path = parsed.path or "/" + path_lower = path.lower() + + # Filter out static file extensions + if any(path_lower.endswith(ext) for ext in IGNORED_EXTENSIONS): + return None, None + + # Filter out non-HTML WordPress / CMS endpoints + if any(path_lower == p or path_lower.rstrip("/") == p or path_lower.startswith(p + "/") for p in IGNORED_PATHS): + return None, None + + netloc = parsed.netloc.lower() + if not netloc: + return None, None + + # Check domain matching (treat apex domain and www. as identical) + clean_start_domain = start_domain.lower().replace("www.", "") + clean_netloc = netloc.replace("www.", "") + + is_internal = (clean_netloc == clean_start_domain) + + # Strip query parameters for internal links to avoid infinite loops and duplicate crawls + if is_internal: + norm_path = path.rstrip("/") if path != "/" else "/" + norm_url = f"{parsed.scheme}://{netloc}{norm_path}" + else: + # Keep query parameters for external links (e.g., video IDs) + norm_path = path.rstrip("/") if path != "/" else "/" + query_part = f"?{parsed.query}" if parsed.query else "" + norm_url = f"{parsed.scheme}://{netloc}{norm_path}{query_part}" + + return norm_url, is_internal diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..bc43db3 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,16 @@ +services: + websurfer: + build: + context: . + dockerfile: Dockerfile + container_name: websurfer + restart: unless-stopped + ports: + - "127.0.0.1:${WEB_PORT:-8080}:8000" + shm_size: "2gb" + environment: + - CRAWLER_HEADLESS=true + - HOST=0.0.0.0 + - PORT=8000 + volumes: + - ./.env:/app/.env diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100644 index 0000000..c480f51 --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -e + +echo "[Docker] Starting Tor background service..." +service tor start + +# Quick check that Tor SOCKS5 & Control ports are active +for i in {1..10}; do + if python3 -c "import socket; s = socket.socket(); s.connect(('127.0.0.1', 9050)); s.close()" 2>/dev/null; then + echo "[Docker] Tor SOCKS proxy is listening on port 9050!" + break + fi + sleep 1 +done + +# Execute main process (e.g. web server or CLI) +exec "$@" diff --git a/main.py b/main.py new file mode 100644 index 0000000..33edb78 --- /dev/null +++ b/main.py @@ -0,0 +1,35 @@ +import argparse +import asyncio +import os +import sys +from crawler import Crawler, CrawlerConfig + + +async def run_cli(): + config = CrawlerConfig.from_env_or_prompt() + crawler = Crawler(config) + await crawler.run() + + +def main(): + parser = argparse.ArgumentParser(description="Clickduck - Web Crawler & Link Explorer") + parser.add_argument("--web", action="store_true", help="Launch the Web Frontend dashboard") + parser.add_argument("--host", type=str, default=os.getenv("HOST", "127.0.0.1"), help="Host IP for web UI (default: 127.0.0.1 or $HOST)") + parser.add_argument("--port", type=int, default=int(os.getenv("PORT", "8000")), help="Port for web UI (default: 8000 or $PORT)") + args = parser.parse_args() + + if args.web: + from web import run_server + run_server(host=args.host, port=args.port) + else: + try: + asyncio.run(run_cli()) + except KeyboardInterrupt: + print("\nCrawling interrupted by user.") + sys.exit(0) + + +if __name__ == "__main__": + if sys.platform == "win32": + asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy()) + main() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6488d31 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +playwright>=1.40.0 +python-dotenv +stem>=1.8.0 +fastapi>=0.110.0 +uvicorn[standard]>=0.28.0 diff --git a/test_iteration_visits.py b/test_iteration_visits.py new file mode 100644 index 0000000..8cef143 --- /dev/null +++ b/test_iteration_visits.py @@ -0,0 +1,372 @@ +import asyncio +import os +import unittest +from unittest.mock import MagicMock, AsyncMock, patch + +from crawler.config import CrawlerConfig +from crawler.engine import Crawler, IterationVisitTracker + + +class TestIterationVisitsConfig(unittest.TestCase): + + def test_default_config(self): + config = CrawlerConfig(start_url="https://example.com") + self.assertEqual(config.iteration_mode, "all") + self.assertEqual(config.max_visits_per_iteration, 10) + self.assertEqual(config.visits_per_iteration, 10) + self.assertTrue(config.randomize_queue) + + def test_dict_serialization(self): + config = CrawlerConfig( + start_url="https://example.com", + num_iterations=3, + iteration_mode="visits", + max_visits_per_iteration=25, + randomize_queue=False, + ) + d = config.to_dict() + self.assertEqual(d["iteration_mode"], "visits") + self.assertEqual(d["max_visits_per_iteration"], 25) + self.assertFalse(d["randomize_queue"]) + + # Restore from dict + restored = CrawlerConfig.from_dict(d) + self.assertEqual(restored.iteration_mode, "visits") + self.assertEqual(restored.max_visits_per_iteration, 25) + self.assertEqual(restored.visits_per_iteration, 25) + self.assertFalse(restored.randomize_queue) + + def test_from_dict_alias_and_normalization(self): + # Using visits_per_iteration alias + cfg1 = CrawlerConfig.from_dict({ + "start_url": "https://example.com", + "iteration_mode": "limit", + "visits_per_iteration": 15, + "randomize_queue": True, + }) + self.assertEqual(cfg1.iteration_mode, "visits") + self.assertEqual(cfg1.max_visits_per_iteration, 15) + self.assertTrue(cfg1.randomize_queue) + + # Non-visits mode defaults to "all" + cfg2 = CrawlerConfig.from_dict({ + "start_url": "https://example.com", + "iteration_mode": "unknown_mode", + "max_visits_per_iteration": -5, + }) + self.assertEqual(cfg2.iteration_mode, "all") + self.assertEqual(cfg2.max_visits_per_iteration, 10) + self.assertTrue(cfg2.randomize_queue) + + def test_env_dict_loading(self): + with patch.dict(os.environ, { + "CRAWLER_START_URL": "https://test.com", + "CRAWLER_ITERATION_MODE": "visits", + "CRAWLER_MAX_VISITS_PER_ITERATION": "42", + "CRAWLER_RANDOMIZE_QUEUE": "false", + }): + env_data = CrawlerConfig.get_env_dict(env_path="nonexistent_test.env") + self.assertEqual(env_data["iteration_mode"], "visits") + self.assertEqual(env_data["max_visits_per_iteration"], 42) + self.assertFalse(env_data["randomize_queue"]) + + +class TestIterationVisitTracker(unittest.IsolatedAsyncioTestCase): + + async def test_unlimited_tracker(self): + tracker = IterationVisitTracker(max_visits=None) + for _ in range(50): + can_visit = await tracker.acquire_visit_slot() + self.assertTrue(can_visit) + await tracker.record_visit_completed() + self.assertFalse(tracker.limit_reached_event.is_set()) + + async def test_limited_tracker_slot_reservation_and_completion(self): + limit = 3 + tracker = IterationVisitTracker(max_visits=limit) + + # Acquire 3 slots + self.assertTrue(await tracker.acquire_visit_slot()) + self.assertTrue(await tracker.acquire_visit_slot()) + self.assertTrue(await tracker.acquire_visit_slot()) + + # 4th acquisition attempt fails + self.assertFalse(await tracker.acquire_visit_slot()) + self.assertEqual(tracker.started_visits, 3) + self.assertFalse(tracker.limit_reached_event.is_set()) + + # Record completions + await tracker.record_visit_completed() + self.assertFalse(tracker.limit_reached_event.is_set()) + await tracker.record_visit_completed() + self.assertFalse(tracker.limit_reached_event.is_set()) + + # 3rd completion triggers limit_reached_event + await tracker.record_visit_completed() + self.assertTrue(tracker.limit_reached_event.is_set()) + self.assertEqual(tracker.completed_visits, 3) + + +class TestCrawlerIterationVisitCap(unittest.IsolatedAsyncioTestCase): + + async def test_iteration_stops_at_configured_visits(self): + config = CrawlerConfig( + start_url="https://example.com", + num_tabs=3, + num_iterations=1, + iteration_mode="visits", + max_visits_per_iteration=3, + ) + + visited_urls = [] + + async def mock_crawl_level( + page, + url, + source_url, + visited, + errors, + start_domain, + accept_cookies_default=True, + stats=None, + timeout_ms=35000, + event_callback=None, + worker_name="Worker", + page_result_callback=None, + ): + visited_urls.append(url) + visited.add(url) + await asyncio.sleep(0.01) + # Return new links to simulate queue populated with many items + return { + f"https://example.com/sub_{i}_{len(visited_urls)}" for i in range(5) + } + + crawler = Crawler(config=config) + + mock_page = MagicMock() + mock_page.close = AsyncMock() + mock_page.on = MagicMock() + + mock_context = MagicMock() + mock_context.new_page = AsyncMock(return_value=mock_page) + + mock_browser = MagicMock() + mock_browser.new_context = AsyncMock(return_value=mock_context) + mock_browser.close = AsyncMock() + + mock_playwright = MagicMock() + mock_playwright.chromium.launch = AsyncMock(return_value=mock_browser) + + with patch("crawler.engine.crawl_level", side_effect=mock_crawl_level): + result = await crawler.run_iteration(mock_playwright, iteration=1) + + # Verified that exactly max_visits_per_iteration (3) were crawled despite many discovered links + self.assertEqual(len(visited_urls), 3) + self.assertEqual(result["stats"]["internal"], 3) + + async def test_multi_iteration_stops_at_configured_visits_each(self): + config = CrawlerConfig( + start_url="https://example.com", + num_tabs=2, + num_iterations=2, + iteration_mode="visits", + max_visits_per_iteration=2, + ) + + visited_urls_per_iteration = [] + + async def mock_crawl_level( + page, + url, + source_url, + visited, + errors, + start_domain, + accept_cookies_default=True, + stats=None, + timeout_ms=35000, + event_callback=None, + worker_name="Worker", + page_result_callback=None, + ): + visited_urls_per_iteration.append(url) + visited.add(url) + await asyncio.sleep(0.01) + return {f"https://example.com/link_{i}" for i in range(5)} + + crawler = Crawler(config=config) + + mock_page = MagicMock() + mock_page.close = AsyncMock() + mock_page.on = MagicMock() + + mock_context = MagicMock() + mock_context.new_page = AsyncMock(return_value=mock_page) + + mock_browser = MagicMock() + mock_browser.new_context = AsyncMock(return_value=mock_context) + mock_browser.close = AsyncMock() + + mock_playwright = MagicMock() + mock_playwright.chromium.launch = AsyncMock(return_value=mock_browser) + + with patch("crawler.engine.crawl_level", side_effect=mock_crawl_level): + # Iteration 1 + res1 = await crawler.run_iteration(mock_playwright, iteration=1) + self.assertEqual(len(visited_urls_per_iteration), 2) + self.assertEqual(res1["stats"]["internal"], 2) + + visited_urls_per_iteration.clear() + + # Iteration 2 + res2 = await crawler.run_iteration(mock_playwright, iteration=2) + self.assertEqual(len(visited_urls_per_iteration), 2) + self.assertEqual(res2["stats"]["internal"], 2) + + +class TestRandomQueue(unittest.IsolatedAsyncioTestCase): + + async def test_random_queue_pops_all_items(self): + from crawler.engine import RandomQueue + + q = RandomQueue() + items = [f"https://example.com/page{i}" for i in range(20)] + for it in items: + q.put_nowait(it) + + self.assertEqual(q.qsize(), 20) + popped = [] + for _ in range(20): + popped.append(await q.get()) + q.task_done() + + await q.join() + self.assertEqual(sorted(popped), sorted(items)) + self.assertEqual(q.qsize(), 0) + + async def test_crawler_uses_random_queue_when_configured(self): + from crawler.engine import RandomQueue + + cfg_random = CrawlerConfig(start_url="https://example.com", randomize_queue=True) + crawler_random = Crawler(config=cfg_random) + + mock_page = MagicMock() + mock_page.close = AsyncMock() + mock_page.on = MagicMock() + mock_context = MagicMock() + mock_context.new_page = AsyncMock(return_value=mock_page) + mock_browser = MagicMock() + mock_browser.new_context = AsyncMock(return_value=mock_context) + mock_browser.close = AsyncMock() + mock_playwright = MagicMock() + mock_playwright.chromium.launch = AsyncMock(return_value=mock_browser) + + # Intercept queue creation by checking instance type + async def dummy_crawl(*args, **kwargs): + return set() + + with patch("crawler.engine.crawl_level", side_effect=dummy_crawl): + with patch("crawler.engine.RandomQueue", wraps=RandomQueue) as mock_rq: + await crawler_random.run_iteration(mock_playwright, iteration=1) + self.assertTrue(mock_rq.called) + + +class TestCumulativeAllIterationsStatistics(unittest.IsolatedAsyncioTestCase): + + async def test_cumulative_visited_and_errors_across_iterations(self): + config = CrawlerConfig( + start_url="https://example.com", + num_tabs=2, + num_iterations=2, + iteration_mode="visits", + max_visits_per_iteration=3, + ) + + events = [] + + async def event_cb(ev): + events.append(ev) + + crawler = Crawler(config=config, event_callback=event_cb) + + visited_per_call = 0 + + async def mock_crawl_level( + page, + url, + source_url, + visited, + errors, + start_domain, + accept_cookies_default=True, + stats=None, + timeout_ms=35000, + event_callback=None, + worker_name="Worker", + page_result_callback=None, + ): + nonlocal visited_per_call + visited_per_call += 1 + visited.add(url) + if visited_per_call == 2: + errors.append((url, source_url, "Simulated 500 error")) + await asyncio.sleep(0.01) + return {f"https://example.com/link_{visited_per_call}_{i}" for i in range(3)} + + mock_page = MagicMock() + mock_page.close = AsyncMock() + mock_page.on = MagicMock() + mock_context = MagicMock() + mock_context.new_page = AsyncMock(return_value=mock_page) + mock_browser = MagicMock() + mock_browser.new_context = AsyncMock(return_value=mock_context) + mock_browser.close = AsyncMock() + mock_playwright = MagicMock() + mock_playwright.chromium.launch = AsyncMock(return_value=mock_browser) + + with patch("crawler.engine.crawl_level", side_effect=mock_crawl_level): + res1 = await crawler.run_iteration(mock_playwright, iteration=1) + self.assertEqual(res1["visited_count"], 3) + self.assertEqual(res1["total_visited_all"], 3) + self.assertEqual(res1["total_errors_all"], 1) + + res2 = await crawler.run_iteration(mock_playwright, iteration=2) + self.assertEqual(res2["visited_count"], 3) + self.assertEqual(res2["total_visited_all"], 6) + self.assertEqual(crawler.total_visited_all_iterations, 6) + + # Check emitted stats events + stats_events = [e for e in events if e.get("type") == "stats"] + self.assertTrue(len(stats_events) > 0) + final_stats_event = stats_events[-1] + self.assertEqual(final_stats_event["total_visited_all"], 6) + + async def test_session_manager_snapshot_and_broadcast(self): + from web.manager import CrawlSessionManager + + manager = CrawlSessionManager() + snapshot = manager.get_snapshot() + self.assertIn("total_visited_all", snapshot) + self.assertIn("total_errors_all", snapshot) + self.assertEqual(snapshot["total_visited_all"], 0) + self.assertEqual(snapshot["total_errors_all"], 0) + + # Simulate receiving crawler stats event + await manager.handle_crawler_event({ + "type": "stats", + "visited_count": 5, + "total_visited_all": 15, + "total_errors_all": 2, + "queue_size": 3, + "stats": {"internal": 5, "external": 0, "cookies_accepted": 0}, + }) + self.assertEqual(manager.total_visited_all, 15) + self.assertEqual(manager.total_errors_all, 2) + snapshot_after = manager.get_snapshot() + self.assertEqual(snapshot_after["total_visited_all"], 15) + self.assertEqual(snapshot_after["total_errors_all"], 2) + + +if __name__ == "__main__": + unittest.main() diff --git a/test_tor_fallback.py b/test_tor_fallback.py new file mode 100644 index 0000000..cb0c6b8 --- /dev/null +++ b/test_tor_fallback.py @@ -0,0 +1,178 @@ +import asyncio +import unittest +from unittest.mock import MagicMock, AsyncMock, patch + +from crawler.config import CrawlerConfig +from crawler.engine import Crawler + + +class TestTorTimeoutFallback(unittest.IsolatedAsyncioTestCase): + + def test_config_defaults_and_env(self): + config = CrawlerConfig(start_url="https://example.com") + self.assertEqual(config.tor_max_consecutive_timeouts, 5) + + dict_data = config.to_dict() + self.assertEqual(dict_data["tor_max_consecutive_timeouts"], 5) + + dict_data["tor_max_consecutive_timeouts"] = 3 + restored = CrawlerConfig.from_dict(dict_data) + self.assertEqual(restored.tor_max_consecutive_timeouts, 3) + + async def test_consecutive_timeout_fallback_trigger(self): + config = CrawlerConfig( + start_url="https://example.com", + use_tor=True, + tor_max_consecutive_timeouts=5, + ) + events = [] + async def on_event(ev): + events.append(ev) + + crawler = Crawler(config=config, event_callback=on_event) + # Mock tor_manager so we don't need real Tor daemon for unit testing + crawler.tor_manager = MagicMock() + crawler.tor_manager.renew_circuit = MagicMock(return_value=True) + + mock_context = MagicMock() + + # 1. First 4 consecutive ERR_TIMED_OUT errors + for i in range(1, 5): + await crawler._on_page_result( + context=mock_context, + url=f"https://example.com/page{i}", + source_url="https://example.com", + success=False, + error_msg="page.goto: net::ERR_TIMED_OUT at https://example.com", + ) + self.assertEqual(crawler._consecutive_timeouts, i) + self.assertEqual(crawler.tor_manager.renew_circuit.call_count, 0) + + # 2. 5th ERR_TIMED_OUT error triggers fallback circuit rotation! + await crawler._on_page_result( + context=mock_context, + url="https://example.com/page5", + source_url="https://example.com", + success=False, + error_msg="page.goto: net::ERR_TIMED_OUT at https://example.com", + ) + # Counter should be reset to 0 after rotation + self.assertEqual(crawler._consecutive_timeouts, 0) + self.assertEqual(crawler.tor_manager.renew_circuit.call_count, 1) + + async def test_success_resets_counter(self): + config = CrawlerConfig( + start_url="https://example.com", + use_tor=True, + tor_max_consecutive_timeouts=5, + ) + crawler = Crawler(config=config) + crawler.tor_manager = MagicMock() + crawler.tor_manager.renew_circuit = MagicMock(return_value=True) + + mock_context = MagicMock() + + # 3 timeouts + for i in range(1, 4): + await crawler._on_page_result( + context=mock_context, + url=f"https://example.com/page{i}", + source_url=None, + success=False, + error_msg="net::ERR_TIMED_OUT", + ) + self.assertEqual(crawler._consecutive_timeouts, 3) + + # 1 success -> should reset counter to 0 + await crawler._on_page_result( + context=mock_context, + url="https://example.com/success_page", + source_url=None, + success=True, + error_msg=None, + ) + self.assertEqual(crawler._consecutive_timeouts, 0) + self.assertEqual(crawler.tor_manager.renew_circuit.call_count, 0) + + async def test_non_timeout_error_resets_counter(self): + config = CrawlerConfig( + start_url="https://example.com", + use_tor=True, + tor_max_consecutive_timeouts=5, + ) + crawler = Crawler(config=config) + crawler.tor_manager = MagicMock() + + mock_context = MagicMock() + + # 2 timeouts + for i in range(2): + await crawler._on_page_result( + context=mock_context, + url=f"https://example.com/page{i}", + source_url=None, + success=False, + error_msg="net::ERR_TIMED_OUT", + ) + self.assertEqual(crawler._consecutive_timeouts, 2) + + # HTTP 404 error -> non-timeout/non-rate-limit resets counter + await crawler._on_page_result( + context=mock_context, + url="https://example.com/missing", + source_url=None, + success=False, + error_msg="HTTP 404", + ) + self.assertEqual(crawler._consecutive_timeouts, 0) + + def test_user_agent_config(self): + config_random = CrawlerConfig(start_url="https://example.com", user_agent="random") + ua1 = config_random.get_user_agent() + self.assertIsNotNone(ua1) + self.assertIn("Mozilla/5.0", ua1) + + config_custom = CrawlerConfig(start_url="https://example.com", user_agent="MyCustomBot/1.0") + self.assertEqual(config_custom.get_user_agent(), "MyCustomBot/1.0") + + config_default = CrawlerConfig(start_url="https://example.com", user_agent="default") + self.assertIsNone(config_default.get_user_agent()) + + async def test_consecutive_rate_limit_fallback_trigger(self): + config = CrawlerConfig( + start_url="https://example.com", + use_tor=True, + tor_max_consecutive_timeouts=3, + ) + crawler = Crawler(config=config) + crawler.tor_manager = MagicMock() + crawler.tor_manager.renew_circuit = MagicMock(return_value=True) + + mock_context = MagicMock() + + # 2 HTTP 503 errors + for i in range(2): + await crawler._on_page_result( + context=mock_context, + url=f"https://example.com/page{i}", + source_url="https://example.com", + success=False, + error_msg="HTTP 503 (Service Temporarily Unavailable / Rate Limited) [Retry-After: 154s]", + ) + self.assertEqual(crawler._consecutive_timeouts, 2) + self.assertEqual(crawler.tor_manager.renew_circuit.call_count, 0) + + # 3rd HTTP 503 error triggers circuit renewal + await crawler._on_page_result( + context=mock_context, + url="https://example.com/page2", + source_url="https://example.com", + success=False, + error_msg="HTTP 503 (Service Temporarily Unavailable / Rate Limited) [Retry-After: 154s]", + ) + self.assertEqual(crawler._consecutive_timeouts, 0) + self.assertEqual(crawler.tor_manager.renew_circuit.call_count, 1) + + +if __name__ == "__main__": + unittest.main() diff --git a/web.py b/web.py new file mode 100644 index 0000000..501596f --- /dev/null +++ b/web.py @@ -0,0 +1,18 @@ +import argparse +import asyncio +import os +import sys +from web import run_server + +if __name__ == "__main__": + if sys.platform == "win32": + asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy()) + + parser = argparse.ArgumentParser(description="Websurfer Web Frontend Server") + parser.add_argument("--host", type=str, default=os.getenv("HOST", "127.0.0.1"), help="Host IP address (default: 127.0.0.1 or $HOST)") + parser.add_argument("--port", type=int, default=int(os.getenv("PORT", "8000")), help="Port number (default: 8000 or $PORT)") + parser.add_argument("--reload", action="store_true", help="Enable auto-reload for development") + args = parser.parse_args() + + run_server(host=args.host, port=args.port, reload=args.reload) + diff --git a/web/__init__.py b/web/__init__.py new file mode 100644 index 0000000..a29ccb1 --- /dev/null +++ b/web/__init__.py @@ -0,0 +1,26 @@ +"""Web application package for Websurfer.""" +from web.app import app +from web.manager import session_manager + + +def run_server(host: str = "127.0.0.1", port: int = 8000, reload: bool = False): + """Starts the Websurfer FastAPI Web Dashboard server.""" + import sys + import uvicorn + print("\n=======================================================") + print(f"[*] Websurfer Web UI running at http://{host}:{port}") + print(" Open this URL in your browser to configure & crawl.") + + # On Windows, Uvicorn defaults to SelectorEventLoop when reload=True or workers > 1. + # Playwright requires ProactorEventLoop on Windows for asyncio subprocess support. + loop_arg = "asyncio:ProactorEventLoop" if sys.platform == "win32" else "auto" + uvicorn.run( + "web.app:app" if reload else app, + host=host, + port=port, + reload=reload, + proxy_headers=True, + forwarded_allow_ips="*", + loop=loop_arg, + ) + diff --git a/web/app.py b/web/app.py new file mode 100644 index 0000000..8456cec --- /dev/null +++ b/web/app.py @@ -0,0 +1,218 @@ +import csv +import io +import os +from pathlib import Path +from typing import Dict, Any, Optional + +from fastapi import FastAPI, WebSocket, WebSocketDisconnect, HTTPException, Depends, Request, Response, status +from fastapi.responses import HTMLResponse, StreamingResponse, JSONResponse, RedirectResponse +from fastapi.staticfiles import StaticFiles + +from crawler.config import CrawlerConfig +from .manager import session_manager +from .auth import ( + is_auth_enabled, + verify_credentials, + create_session_token, + verify_session_token, + get_current_user, + verify_websocket, + SESSION_COOKIE_NAME, + SESSION_MAX_AGE_SECONDS, +) + +BASE_DIR = Path(__file__).resolve().parent +STATIC_DIR = BASE_DIR / "static" + +app = FastAPI(title="WebSurfer Control Center", version="1.0.0") + +# Mount static assets directory +app.mount("/static", StaticFiles(directory=str(STATIC_DIR)), name="static") + + +@app.get("/", response_class=HTMLResponse) +async def root(request: Request): + """Serves the main dashboard user interface, redirecting to login if unauthenticated.""" + if is_auth_enabled(): + token = request.cookies.get(SESSION_COOKIE_NAME) + if not verify_session_token(token): + return RedirectResponse(url="/login", status_code=status.HTTP_307_TEMPORARY_REDIRECT) + + index_path = STATIC_DIR / "index.html" + if not index_path.exists(): + raise HTTPException(status_code=404, detail="Dashboard UI not found") + with open(index_path, "r", encoding="utf-8") as f: + return f.read() + + +@app.get("/login", response_class=HTMLResponse) +async def login_page(request: Request): + """Serves the login page, redirecting to / if already authenticated.""" + if is_auth_enabled(): + token = request.cookies.get(SESSION_COOKIE_NAME) + if verify_session_token(token): + return RedirectResponse(url="/", status_code=status.HTTP_307_TEMPORARY_REDIRECT) + + login_path = STATIC_DIR / "login.html" + if not login_path.exists(): + raise HTTPException(status_code=404, detail="Login UI not found") + with open(login_path, "r", encoding="utf-8") as f: + return f.read() + + +@app.post("/api/login") +async def api_login(payload: Dict[str, str], response: Response, request: Request): + """Authenticates credentials and establishes a signed session cookie.""" + if not is_auth_enabled(): + return {"success": True, "message": "Authentication not enabled"} + + username = payload.get("username", "") + password = payload.get("password", "") + + if not verify_credentials(username, password): + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Invalid username or password", + ) + + token = create_session_token(username) + is_secure = request.headers.get("x-forwarded-proto", "").lower() == "https" or request.url.scheme == "https" + + response.set_cookie( + key=SESSION_COOKIE_NAME, + value=token, + max_age=SESSION_MAX_AGE_SECONDS, + httponly=True, + samesite="lax", + secure=is_secure, + path="/", + ) + return {"success": True, "username": username} + + +@app.post("/api/logout") +async def api_logout(response: Response): + """Clears the session cookie.""" + response.delete_cookie(key=SESSION_COOKIE_NAME, path="/") + return {"success": True, "message": "Logged out successfully"} + + +@app.get("/api/auth/me") +async def auth_me(request: Request): + """Returns current authentication state.""" + enabled = is_auth_enabled() + if not enabled: + return {"authenticated": True, "auth_enabled": False, "username": "anonymous"} + + token = request.cookies.get(SESSION_COOKIE_NAME) + username = verify_session_token(token) + return { + "authenticated": username is not None, + "auth_enabled": True, + "username": username, + } + + +@app.get("/api/config", dependencies=[Depends(get_current_user)]) +async def get_config(): + """Fetches the current crawler configuration stored in .env or defaults.""" + env_config = CrawlerConfig.get_env_dict() + return {"success": True, "config": env_config} + + +@app.get("/api/tor/countries", dependencies=[Depends(get_current_user)]) +async def get_tor_countries(): + """Returns the list of supported European countries for Tor exit node selection.""" + from crawler.config import EUROPEAN_COUNTRIES + countries = [ + {"code": code, "name": info["name"], "flag": info["flag"]} + for code, info in EUROPEAN_COUNTRIES.items() + ] + return {"success": True, "countries": countries} + + +@app.post("/api/config", dependencies=[Depends(get_current_user)]) +async def save_config(payload: Dict[str, Any]): + """Persists updated configuration values to the .env file.""" + try: + CrawlerConfig.save_env_file(payload) + return {"success": True, "message": "Configuration successfully saved to .env"} + except Exception as e: + raise HTTPException(status_code=500, detail=f"Failed to save .env file: {e}") + + +@app.post("/api/crawl/start", dependencies=[Depends(get_current_user)]) +async def start_crawl(payload: Dict[str, Any]): + """Starts a new crawler run with given parameters.""" + result = await session_manager.start_crawl(payload) + if not result.get("success"): + raise HTTPException(status_code=400, detail=result.get("message")) + return result + + +@app.post("/api/crawl/stop", dependencies=[Depends(get_current_user)]) +async def stop_crawl(): + """Stops the currently running crawler job.""" + result = await session_manager.stop_crawl() + if not result.get("success"): + raise HTTPException(status_code=400, detail=result.get("message")) + return result + + +@app.get("/api/crawl/status", dependencies=[Depends(get_current_user)]) +async def get_status(): + """Returns the current state, metrics, errors, and recent logs.""" + return session_manager.get_snapshot() + + +@app.post("/api/crawl/clear-logs", dependencies=[Depends(get_current_user)]) +async def clear_logs(): + """Clears buffered in-memory logs.""" + session_manager.clear_logs() + return {"success": True} + + +@app.get("/api/crawl/export-errors", dependencies=[Depends(get_current_user)]) +async def export_errors(format: str = "csv"): + """Exports all recorded errors from current session as CSV or JSON.""" + errors = session_manager.errors + if format.lower() == "json": + return JSONResponse(content={"total_errors": len(errors), "errors": errors}) + + # Default to CSV export + output = io.StringIO() + writer = csv.writer(output) + writer.writerow(["ID", "Failed URL", "Error Reason", "Found On (Source URL)", "Timestamp"]) + for item in errors: + writer.writerow([ + item.get("id", ""), + item.get("url", ""), + item.get("error", ""), + item.get("source_url", ""), + item.get("timestamp", ""), + ]) + + output.seek(0) + return StreamingResponse( + iter([output.getvalue()]), + media_type="text/csv", + headers={"Content-Disposition": "attachment; filename=websurfer_errors.csv"}, + ) + + +@app.websocket("/ws/stream") +async def websocket_endpoint(websocket: WebSocket): + """WebSocket stream for real-time log, metrics, and error updates.""" + if not verify_websocket(websocket): + await websocket.close(code=status.WS_1008_POLICY_VIOLATION) + return + + await session_manager.connect_ws(websocket) + try: + while True: + # Keep connection open and accept any control pings from client + data = await websocket.receive_text() + except WebSocketDisconnect: + session_manager.disconnect_ws(websocket) + except Exception: + session_manager.disconnect_ws(websocket) diff --git a/web/auth.py b/web/auth.py new file mode 100644 index 0000000..906f173 --- /dev/null +++ b/web/auth.py @@ -0,0 +1,121 @@ +import hashlib +import hmac +import os +import secrets +import time +from typing import Optional + +from fastapi import Depends, HTTPException, Request, WebSocket, status +from fastapi.responses import RedirectResponse + +SESSION_COOKIE_NAME = "websurfer_session" +SESSION_MAX_AGE_SECONDS = 7 * 24 * 3600 # 7 days + + +def is_auth_enabled() -> bool: + """Checks whether authentication is enabled via environment variables.""" + flag = os.getenv("AUTH_ENABLED", "").strip().lower() + has_credentials = bool(os.getenv("AUTH_USERNAME") and os.getenv("AUTH_PASSWORD")) + return flag in ("true", "1", "yes") and has_credentials + + +def get_secret_key() -> str: + """Returns the secret key used to HMAC-sign session cookies.""" + return os.getenv("AUTH_SECRET_KEY") or "websurfer-default-secret-key-please-change-in-prod" + + +def verify_credentials(username: str, password: str) -> bool: + """Verifies user credentials using constant-time string comparison.""" + expected_user = os.getenv("AUTH_USERNAME", "") + expected_pass = os.getenv("AUTH_PASSWORD", "") + + if not expected_user or not expected_pass: + return False + + user_match = secrets.compare_digest(username.strip(), expected_user.strip()) + pass_match = secrets.compare_digest(password, expected_pass) + return user_match and pass_match + + +def create_session_token(username: str) -> str: + """Generates a tamper-proof signed session token (username:timestamp:signature).""" + timestamp = str(int(time.time())) + payload = f"{username}:{timestamp}" + signature = hmac.new( + get_secret_key().encode("utf-8"), + payload.encode("utf-8"), + hashlib.sha256, + ).hexdigest() + return f"{payload}:{signature}" + + +def verify_session_token(token: Optional[str]) -> Optional[str]: + """Validates the signature and timestamp of a session token.""" + if not token or ":" not in token: + return None + + parts = token.split(":") + if len(parts) != 3: + return None + + username, timestamp_str, signature = parts + + try: + token_time = int(timestamp_str) + # Check token expiration + if time.time() - token_time > SESSION_MAX_AGE_SECONDS or token_time > time.time() + 300: + return None + except ValueError: + return None + + payload = f"{username}:{timestamp_str}" + expected_sig = hmac.new( + get_secret_key().encode("utf-8"), + payload.encode("utf-8"), + hashlib.sha256, + ).hexdigest() + + if not secrets.compare_digest(signature, expected_sig): + return None + + return username + + +async def get_current_user(request: Request) -> Optional[str]: + """FastAPI dependency: verifies user session from cookie or Bearer token.""" + if not is_auth_enabled(): + return "anonymous" + + # 1. Check session cookie + token = request.cookies.get(SESSION_COOKIE_NAME) + + # 2. Check Authorization Bearer header as fallback + if not token: + auth_header = request.headers.get("Authorization") + if auth_header and auth_header.startswith("Bearer "): + token = auth_header[7:].strip() + + username = verify_session_token(token) + if not username: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Authentication required", + headers={"WWW-Authenticate": "Bearer"}, + ) + + return username + + +def verify_websocket(websocket: WebSocket) -> bool: + """Validates WebSocket connection session from cookie or query parameter.""" + if not is_auth_enabled(): + return True + + # Check cookie from handshake request + token = websocket.cookies.get(SESSION_COOKIE_NAME) + + # Check query param as alternative (?token=...) + if not token: + token = websocket.query_params.get("token") + + return verify_session_token(token) is not None diff --git a/web/manager.py b/web/manager.py new file mode 100644 index 0000000..ef337d3 --- /dev/null +++ b/web/manager.py @@ -0,0 +1,302 @@ +import asyncio +import sys +import time +from typing import Dict, List, Optional, Set, Any +from fastapi import WebSocket + +from crawler.config import CrawlerConfig +from crawler.engine import Crawler + + +class CrawlSessionManager: + """Manages active crawl sessions, WebSocket broadcasting, metrics, and error aggregation.""" + + def __init__(self): + self.active_connections: Set[WebSocket] = set() + self.crawler: Optional[Crawler] = None + self.task: Optional[asyncio.Task] = None + self.status: str = "idle" # "idle" | "running" | "stopping" | "finished" | "error" + self.status_message: str = "Ready to start" + self.start_time: Optional[float] = None + self.end_time: Optional[float] = None + self.current_iteration: int = 1 + self.total_iterations: int = 1 + self.iteration_mode: str = "all" + self.max_visits_per_iteration: int = 10 + + self.stats: Dict[str, int] = { + "internal": 0, + "external": 0, + "cookies_accepted": 0, + } + self.queue_size: int = 0 + self.visited_count: int = 0 + self.total_visited_all: int = 0 + self.total_errors_all: int = 0 + self.tor_identity: Optional[Dict[str, Any]] = None + + self.errors: List[Dict[str, Any]] = [] + self.logs: List[Dict[str, Any]] = [] + self._log_counter: int = 0 + self._error_counter: int = 0 + + async def connect_ws(self, websocket: WebSocket): + """Registers a new WebSocket connection and transmits initial state snapshot.""" + await websocket.accept() + self.active_connections.add(websocket) + # Send current state snapshot immediately upon connection + snapshot = self.get_snapshot() + await websocket.send_json({ + "type": "init", + "data": snapshot, + }) + + def disconnect_ws(self, websocket: WebSocket): + """Removes a disconnected WebSocket.""" + self.active_connections.discard(websocket) + + async def broadcast(self, message: Dict[str, Any]): + """Dispatches an event payload to all connected WebSockets.""" + disconnected = set() + for ws in self.active_connections: + try: + await ws.send_json(message) + except Exception: + disconnected.add(ws) + + for ws in disconnected: + self.active_connections.discard(ws) + + def get_snapshot(self) -> Dict[str, Any]: + """Generates a complete snapshot of current crawler session.""" + elapsed = 0.0 + if self.start_time: + if self.end_time: + elapsed = self.end_time - self.start_time + else: + elapsed = time.time() - self.start_time + + return { + "status": self.status, + "status_message": self.status_message, + "elapsed_seconds": round(elapsed, 1), + "current_iteration": self.current_iteration, + "total_iterations": self.total_iterations, + "iteration_mode": self.iteration_mode, + "max_visits_per_iteration": self.max_visits_per_iteration, + "stats": self.stats, + "queue_size": self.queue_size, + "visited_count": self.visited_count, + "total_visited_all": self.total_visited_all, + "total_errors_all": max(self.total_errors_all, len(self.errors)), + "tor_identity": self.tor_identity, + "error_count": len(self.errors), + "errors": self.errors[-100:], # last 100 errors for quick load + "logs": self.logs[-500:], # last 500 logs for quick load + } + + async def handle_crawler_event(self, event: Dict[str, Any]): + """Processes events dispatched by the core crawler engine.""" + event_type = event.get("type") + + if event_type == "log": + self._log_counter += 1 + log_entry = { + "id": self._log_counter, + "message": event.get("message", ""), + "level": event.get("level", "info"), + "timestamp": event.get("timestamp", time.time()), + } + self.logs.append(log_entry) + if len(self.logs) > 2000: + self.logs = self.logs[-1500:] + await self.broadcast({"type": "log", "data": log_entry}) + + elif event_type == "stats": + self.stats = event.get("stats", self.stats) + self.queue_size = event.get("queue_size", self.queue_size) + self.visited_count = event.get("visited_count", self.visited_count) + if "total_visited_all" in event: + self.total_visited_all = event["total_visited_all"] + else: + self.total_visited_all = max(self.total_visited_all, self.visited_count) + + if "total_errors_all" in event: + self.total_errors_all = event["total_errors_all"] + else: + self.total_errors_all = len(self.errors) + + await self.broadcast({ + "type": "stats", + "data": { + "stats": self.stats, + "queue_size": self.queue_size, + "visited_count": self.visited_count, + "error_count": event.get("error_count", 0), + "total_visited_all": self.total_visited_all, + "total_errors_all": self.total_errors_all, + }, + }) + + elif event_type == "tor_identity": + self.tor_identity = event.get("data", {}) + await self.broadcast({ + "type": "tor_identity", + "data": self.tor_identity, + }) + + elif event_type == "error": + self._error_counter += 1 + error_entry = { + "id": self._error_counter, + "url": event.get("url", ""), + "source_url": event.get("source_url") or "Root / Direct Input", + "error": event.get("error", "Unknown error"), + "timestamp": event.get("timestamp", time.time()), + } + self.errors.append(error_entry) + self.total_errors_all = len(self.errors) + await self.broadcast({ + "type": "error", + "data": { + **error_entry, + "total_errors_all": self.total_errors_all, + }, + }) + + elif event_type == "iteration": + self.current_iteration = event.get("iteration", 1) + self.total_iterations = event.get("total", 1) + if "iteration_mode" in event: + self.iteration_mode = event["iteration_mode"] + if "max_visits_per_iteration" in event: + self.max_visits_per_iteration = event["max_visits_per_iteration"] + if "total_visited_all" in event: + self.total_visited_all = event["total_visited_all"] + if "total_errors_all" in event: + self.total_errors_all = event["total_errors_all"] + await self.broadcast({ + "type": "iteration", + "data": { + "current": self.current_iteration, + "total": self.total_iterations, + "iteration_mode": self.iteration_mode, + "max_visits_per_iteration": self.max_visits_per_iteration, + "total_visited_all": self.total_visited_all, + "total_errors_all": self.total_errors_all, + }, + }) + + elif event_type == "status": + self.status = event.get("status", self.status) + self.status_message = event.get("message", "") + if "total_visited_all" in event: + self.total_visited_all = event["total_visited_all"] + if "total_errors_all" in event: + self.total_errors_all = event["total_errors_all"] + if self.status in ["finished", "stopped", "error"]: + self.end_time = time.time() + + await self.broadcast({ + "type": "status", + "data": { + "status": self.status, + "message": self.status_message, + "elapsed": round((self.end_time or time.time()) - (self.start_time or time.time()), 1), + "total_visited_all": self.total_visited_all, + "total_errors_all": self.total_errors_all, + }, + }) + + async def start_crawl(self, config_data: Dict[str, Any]) -> Dict[str, Any]: + """Configures and initiates a new crawl in a background task.""" + if self.status == "running": + return {"success": False, "message": "Crawler is already running."} + + # Safeguard: Verify Windows event loop supports subprocesses for Playwright + if sys.platform == "win32": + loop = asyncio.get_running_loop() + if not isinstance(loop, getattr(asyncio, "ProactorEventLoop", ())): + err_msg = ( + "Current asyncio event loop does not support subprocesses on Windows " + "(ProactorEventLoop is required for Playwright). " + "Please launch Websurfer using 'python web.py' or ensure Uvicorn uses '--loop asyncio:ProactorEventLoop'." + ) + return {"success": False, "message": err_msg} + + # Clear session data + self.stats = {"internal": 0, "external": 0, "cookies_accepted": 0} + self.queue_size = 0 + self.visited_count = 0 + self.total_visited_all = 0 + self.total_errors_all = 0 + self.tor_identity = None + + self.errors = [] + self.logs = [] + self._log_counter = 0 + self._error_counter = 0 + self.start_time = time.time() + self.end_time = None + self.status = "running" + self.status_message = "Initializing crawler..." + self.current_iteration = 1 + self.total_iterations = int(config_data.get("num_iterations", 1)) + + # Build configuration object + config = CrawlerConfig.from_dict(config_data) + self.iteration_mode = config.iteration_mode + self.max_visits_per_iteration = config.max_visits_per_iteration + + # Instantiate crawler with event callback + self.crawler = Crawler(config, event_callback=self.handle_crawler_event) + + async def _run_task(): + try: + await self.crawler.run() + except Exception as e: + await self.handle_crawler_event({ + "type": "status", + "status": "error", + "message": f"Execution error: {e}", + }) + finally: + if self.status == "running": + self.status = "finished" + self.end_time = time.time() + await self.broadcast({ + "type": "status", + "data": { + "status": self.status, + "message": "Completed", + "elapsed": round(self.end_time - self.start_time, 1), + }, + }) + + self.task = asyncio.create_task(_run_task()) + await self.broadcast({"type": "init", "data": self.get_snapshot()}) + return {"success": True, "message": "Crawl started"} + + async def stop_crawl(self) -> Dict[str, Any]: + """Stops the active crawler job.""" + if self.status != "running" or not self.crawler: + return {"success": False, "message": "No active crawl to stop."} + + self.status = "stopping" + self.status_message = "Cancelling workers..." + await self.broadcast({ + "type": "status", + "data": {"status": "stopping", "message": "Cancelling workers..."}, + }) + + self.crawler.stop() + return {"success": True, "message": "Stop signal sent."} + + def clear_logs(self): + """Clears in-memory logs.""" + self.logs = [] + self._log_counter = 0 + + +# Global singleton manager instance +session_manager = CrawlSessionManager() diff --git a/web/static/app.js b/web/static/app.js new file mode 100644 index 0000000..54feeac --- /dev/null +++ b/web/static/app.js @@ -0,0 +1,1019 @@ +/** + * Websurfer Web Dashboard - Reactive Client Controller + */ + +class WebsurferDashboard { + constructor() { + this.ws = null; + this.wsReconnectInterval = 2000; + this.status = 'idle'; + this.elapsedSeconds = 0; + this.timerInterval = null; + this.errors = []; + this.logs = []; + + // DOM Elements Cache + this.elements = { + // Status & Header + wsStatus: document.getElementById('wsStatus'), + crawlStatusBadge: document.getElementById('crawlStatusBadge'), + elapsedTimer: document.getElementById('elapsedTimer'), + progressMessage: document.getElementById('progressMessage'), + iterationBadge: document.getElementById('iterationBadge'), + progressBar: document.getElementById('progressBar'), + + // Form Controls + configForm: document.getElementById('configForm'), + startUrl: document.getElementById('startUrl'), + numTabs: document.getElementById('numTabs'), + numTabsVal: document.getElementById('numTabsVal'), + numIterations: document.getElementById('numIterations'), + iterModeAll: document.getElementById('iterModeAll'), + iterModeVisits: document.getElementById('iterModeVisits'), + labelIterModeAll: document.getElementById('labelIterModeAll'), + labelIterModeVisits: document.getElementById('labelIterModeVisits'), + iterVisitsField: document.getElementById('iterVisitsField'), + maxVisitsPerIteration: document.getElementById('maxVisitsPerIteration'), + randomizeQueue: document.getElementById('randomizeQueue'), + headless: document.getElementById('headless'), + acceptCookies: document.getElementById('acceptCookies'), + useTor: document.getElementById('useTor'), + torOptionsGroup: document.getElementById('torOptionsGroup'), + torModeIteration: document.getElementById('torModeIteration'), + torModePages: document.getElementById('torModePages'), + labelTorModeIteration: document.getElementById('labelTorModeIteration'), + labelTorModePages: document.getElementById('labelTorModePages'), + torPagesField: document.getElementById('torPagesField'), + torCircuitPages: document.getElementById('torCircuitPages'), + torMaxConsecutiveTimeouts: document.getElementById('torMaxConsecutiveTimeouts'), + timeoutMs: document.getElementById('timeoutMs'), + slowMo: document.getElementById('slowMo'), + torSocksPort: document.getElementById('torSocksPort'), + torControlPort: document.getElementById('torControlPort'), + userAgentSelect: document.getElementById('userAgentSelect'), + userAgentCustom: document.getElementById('userAgentCustom'), + + // Buttons + btnStart: document.getElementById('btnStart'), + btnStop: document.getElementById('btnStop'), + btnSaveEnv: document.getElementById('btnSaveEnv'), + btnReset: document.getElementById('btnReset'), + + // European Exit Node Selector + countryChipsGrid: document.getElementById('countryChipsGrid'), + exitNodesCountBadge: document.getElementById('exitNodesCountBadge'), + exitNodesSummaryText: document.getElementById('exitNodesSummaryText'), + btnExitMajor: document.getElementById('btnExitMajor'), + btnExitAll: document.getElementById('btnExitAll'), + btnExitClear: document.getElementById('btnExitClear'), + + // Metric Tiles + statVisited: document.getElementById('statVisited'), + statInternal: document.getElementById('statInternal'), + statExternal: document.getElementById('statExternal'), + statCookies: document.getElementById('statCookies'), + statQueue: document.getElementById('statQueue'), + statErrors: document.getElementById('statErrors'), + statTotalVisitedAll: document.getElementById('statTotalVisitedAll'), + statTotalErrorsAll: document.getElementById('statTotalErrorsAll'), + + // Tor Identity Panel + torCard: document.getElementById('torCard'), + torStatusBadge: document.getElementById('torStatusBadge'), + torCircuitHint: document.getElementById('torCircuitHint'), + torIpVal: document.getElementById('torIpVal'), + torCountryVal: document.getElementById('torCountryVal'), + torCityVal: document.getElementById('torCityVal'), + torOrgVal: document.getElementById('torOrgVal'), + torStrategyVal: document.getElementById('torStrategyVal'), + torRotationsVal: document.getElementById('torRotationsVal'), + torFilterVal: document.getElementById('torFilterVal'), + + // Error Table + errorsTableBody: document.getElementById('errorsTableBody'), + errorCountBadge: document.getElementById('errorCountBadge'), + errorSearchInput: document.getElementById('errorSearchInput'), + btnExportCsv: document.getElementById('btnExportCsv'), + btnExportJson: document.getElementById('btnExportJson'), + + // Log Terminal + logOutput: document.getElementById('logOutput'), + terminalContainer: document.getElementById('terminalContainer'), + logCountBadge: document.getElementById('logCountBadge'), + autoScrollCheck: document.getElementById('autoScrollCheck'), + logLevelSelect: document.getElementById('logLevelSelect'), + logSearchInput: document.getElementById('logSearchInput'), + btnClearLogs: document.getElementById('btnClearLogs'), + btnCopyLogs: document.getElementById('btnCopyLogs'), + + // Toasts + toastContainer: document.getElementById('toastContainer'), + }; + + this.selectedExitNodes = new Set(); + this.availableCountries = []; + + this.init(); + } + + async init() { + await this.checkAuth(); + this.bindEvents(); + await this.loadCountries(); + await this.loadConfig(); + this.connectWebSocket(); + } + + async checkAuth() { + try { + const res = await fetch('/api/auth/me'); + if (res.status === 401) { + window.location.href = '/login'; + return; + } + const data = await res.json(); + if (!data.authenticated && data.auth_enabled) { + window.location.href = '/login'; + return; + } + if (data.auth_enabled && data.username) { + const profile = document.getElementById('userProfile'); + const nameSpan = document.getElementById('userName'); + const btnLogout = document.getElementById('btnLogout'); + if (profile && nameSpan) { + nameSpan.textContent = data.username; + profile.style.display = 'flex'; + } + if (btnLogout) { + btnLogout.addEventListener('click', async () => { + await fetch('/api/logout', { method: 'POST' }); + window.location.href = '/login'; + }); + } + } + } catch (e) { + console.warn('Auth check warning:', e); + } + } + + bindEvents() { + // Sync slider value badge + this.elements.numTabs.addEventListener('input', (e) => { + this.elements.numTabsVal.textContent = e.target.value; + }); + + // Form submission (Start Crawling) + this.elements.configForm.addEventListener('submit', (e) => { + e.preventDefault(); + this.startCrawl(); + }); + + // Stop button + this.elements.btnStop.addEventListener('click', () => { + this.stopCrawl(); + }); + + // Save to .env button + this.elements.btnSaveEnv.addEventListener('click', () => { + this.saveConfigToEnv(); + }); + + // Reset button + this.elements.btnReset.addEventListener('click', () => { + this.loadConfig(); + this.showToast('Form reset to saved .env settings', 'info'); + }); + + // Use Tor toggle change + this.elements.useTor.addEventListener('change', () => { + this.updateTorVisibility(); + if (!this.elements.useTor.checked) { + this.updateTorIdentity(null); + } else { + this.elements.torStatusBadge.className = 'tor-pill tor-on'; + this.elements.torStatusBadge.textContent = 'Tor Enabled (Pending Run)'; + } + }); + + // Tor circuit mode radio changes + const onTorModeChange = () => { + this.updateTorModeUI(); + }; + if (this.elements.torModeIteration) { + this.elements.torModeIteration.addEventListener('change', onTorModeChange); + } + if (this.elements.torModePages) { + this.elements.torModePages.addEventListener('change', onTorModeChange); + } + if (this.elements.torCircuitPages) { + this.elements.torCircuitPages.addEventListener('input', () => { + this.updateTorModeUI(); + }); + } + + // Iteration mode radio changes + const onIterModeChange = () => { + this.updateIterationModeUI(); + }; + if (this.elements.iterModeAll) { + this.elements.iterModeAll.addEventListener('change', onIterModeChange); + } + if (this.elements.iterModeVisits) { + this.elements.iterModeVisits.addEventListener('change', onIterModeChange); + } + + // User-Agent Selector Toggle + if (this.elements.userAgentSelect) { + this.elements.userAgentSelect.addEventListener('change', (e) => { + const val = e.target.value; + if (val === 'custom') { + this.elements.userAgentCustom.style.display = 'block'; + this.elements.userAgentCustom.focus(); + } else { + this.elements.userAgentCustom.style.display = 'none'; + this.elements.userAgentCustom.value = val; + } + }); + } + + // Exit Node Action Presets + if (this.elements.btnExitMajor) { + this.elements.btnExitMajor.addEventListener('click', () => { + this.selectedExitNodes = new Set(['de', 'nl', 'fr', 'ch']); + this.updateExitNodesUI(); + }); + } + if (this.elements.btnExitAll) { + this.elements.btnExitAll.addEventListener('click', () => { + this.selectedExitNodes = new Set(this.availableCountries.map(c => c.code)); + this.updateExitNodesUI(); + }); + } + if (this.elements.btnExitClear) { + this.elements.btnExitClear.addEventListener('click', () => { + this.selectedExitNodes.clear(); + this.updateExitNodesUI(); + }); + } + + // Error table search/filter + this.elements.errorSearchInput.addEventListener('input', () => { + this.renderErrorsTable(); + }); + + // Error export buttons + this.elements.btnExportCsv.addEventListener('click', () => { + window.location.href = '/api/crawl/export-errors?format=csv'; + }); + + this.elements.btnExportJson.addEventListener('click', () => { + window.open('/api/crawl/export-errors?format=json', '_blank'); + }); + + // Log terminal controls + this.elements.logLevelSelect.addEventListener('change', () => this.filterLogs()); + this.elements.logSearchInput.addEventListener('input', () => this.filterLogs()); + + this.elements.btnClearLogs.addEventListener('click', async () => { + this.logs = []; + this.elements.logOutput.innerHTML = ''; + this.updateLogCount(); + try { + await fetch('/api/crawl/clear-logs', { method: 'POST' }); + } catch (err) { + console.error('Failed to clear server logs:', err); + } + }); + + this.elements.btnCopyLogs.addEventListener('click', () => { + const allText = this.logs.map(l => `[${this.formatTime(l.timestamp)}] [${l.level.toUpperCase()}] ${l.message}`).join('\n'); + navigator.clipboard.writeText(allText).then(() => { + this.showToast('All logs copied to clipboard!', 'success'); + }); + }); + } + + // --- WebSocket Connection --- + connectWebSocket() { + const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:'; + const wsUrl = `${protocol}//${window.location.host}/ws/stream`; + + this.updateWsStatus('connecting'); + + try { + this.ws = new WebSocket(wsUrl); + + this.ws.onopen = () => { + this.updateWsStatus('connected'); + }; + + this.ws.onmessage = (event) => { + try { + const payload = JSON.parse(event.data); + this.handleEvent(payload); + } catch (err) { + console.error('Error parsing WebSocket message:', err); + } + }; + + this.ws.onclose = () => { + this.updateWsStatus('disconnected'); + setTimeout(() => this.connectWebSocket(), this.wsReconnectInterval); + }; + + this.ws.onerror = (error) => { + console.error('WebSocket Error:', error); + this.ws.close(); + }; + } catch (e) { + this.updateWsStatus('disconnected'); + setTimeout(() => this.connectWebSocket(), this.wsReconnectInterval); + } + } + + updateWsStatus(status) { + const pill = this.elements.wsStatus; + pill.className = `ws-pill ${status}`; + const textSpan = pill.querySelector('.ws-text'); + if (status === 'connected') { + textSpan.textContent = 'Live Connected'; + } else if (status === 'connecting') { + textSpan.textContent = 'Connecting...'; + } else { + textSpan.textContent = 'Disconnected'; + } + } + + // --- Event Handling --- + handleEvent(event) { + const { type, data } = event; + + if (type === 'init') { + this.hydrateSnapshot(data); + } else if (type === 'status') { + this.updateStatus(data.status, data.message, data.elapsed); + } else if (type === 'stats') { + this.updateStats(data); + } else if (type === 'tor_identity') { + this.updateTorIdentity(data); + } else if (type === 'error') { + this.addError(data); + } else if (type === 'log') { + this.addLog(data); + } else if (type === 'iteration') { + const iterText = `Iteration ${data.current} / ${data.total}`; + const modeText = data.iteration_mode === 'visits' && data.max_visits_per_iteration ? ` (${data.max_visits_per_iteration} visits/iter)` : ''; + this.elements.iterationBadge.textContent = `${iterText}${modeText}`; + } + } + + hydrateSnapshot(data) { + this.updateStatus(data.status, data.status_message, data.elapsed_seconds); + this.updateStats({ + stats: data.stats, + queue_size: data.queue_size, + visited_count: data.visited_count, + error_count: data.error_count, + total_visited_all: data.total_visited_all !== undefined ? data.total_visited_all : (data.visited_count || 0), + total_errors_all: data.total_errors_all !== undefined ? data.total_errors_all : (data.error_count || (data.errors ? data.errors.length : 0)), + }); + const iterText = `Iteration ${data.current_iteration || 1} / ${data.total_iterations || 1}`; + const modeText = data.iteration_mode === 'visits' && data.max_visits_per_iteration ? ` (${data.max_visits_per_iteration} visits/iter)` : ''; + this.elements.iterationBadge.textContent = `${iterText}${modeText}`; + + if (data.tor_identity) { + this.updateTorIdentity(data.tor_identity); + } else { + this.updateTorIdentity(null); + } + + if (data.errors) { + this.errors = data.errors; + this.renderErrorsTable(); + } + + if (data.logs) { + this.logs = data.logs; + this.elements.logOutput.innerHTML = ''; + this.logs.forEach(log => this.renderLogLine(log)); + this.updateLogCount(); + } + } + + updateTorVisibility() { + const isTor = this.elements.useTor.checked; + if (this.elements.torOptionsGroup) { + this.elements.torOptionsGroup.style.display = isTor ? 'block' : 'none'; + } + this.updateTorModeUI(); + this.updateIterationModeUI(); + this.updateExitNodesUI(); + } + + updateIterationModeUI() { + const isVisits = this.elements.iterModeVisits && this.elements.iterModeVisits.checked; + if (this.elements.labelIterModeAll) { + this.elements.labelIterModeAll.classList.toggle('active', !isVisits); + } + if (this.elements.labelIterModeVisits) { + this.elements.labelIterModeVisits.classList.toggle('active', isVisits); + } + if (this.elements.iterVisitsField) { + this.elements.iterVisitsField.style.display = isVisits ? 'block' : 'none'; + } + } + + updateTorModeUI() { + const isPages = this.elements.torModePages && this.elements.torModePages.checked; + if (this.elements.labelTorModeIteration) { + this.elements.labelTorModeIteration.classList.toggle('active', !isPages); + } + if (this.elements.labelTorModePages) { + this.elements.labelTorModePages.classList.toggle('active', isPages); + } + if (this.elements.torPagesField) { + this.elements.torPagesField.style.display = isPages ? 'block' : 'none'; + } + if (this.elements.torStrategyVal) { + if (this.elements.useTor.checked) { + const pages = this.elements.torCircuitPages ? this.elements.torCircuitPages.value || 10 : 10; + this.elements.torStrategyVal.textContent = isPages ? `Every ${pages} Pages` : 'Per Iteration'; + } else { + this.elements.torStrategyVal.textContent = 'Disabled'; + } + } + } + + async loadCountries() { + try { + const res = await fetch('/api/tor/countries'); + const data = await res.json(); + if (data.success && data.countries && data.countries.length > 0) { + this.availableCountries = data.countries; + } else { + this.availableCountries = this.getDefaultCountries(); + } + } catch (e) { + this.availableCountries = this.getDefaultCountries(); + } + this.renderCountryChips(); + } + + getDefaultCountries() { + return [ + { code: 'de', name: 'Germany', flag: '🇩🇪' }, + { code: 'nl', name: 'Netherlands', flag: '🇳🇱' }, + { code: 'fr', name: 'France', flag: '🇫🇷' }, + { code: 'ch', name: 'Switzerland', flag: '🇨🇭' }, + { code: 'at', name: 'Austria', flag: '🇦🇹' }, + { code: 'se', name: 'Sweden', flag: '🇸🇪' }, + { code: 'no', name: 'Norway', flag: '🇳🇴' }, + { code: 'fi', name: 'Finland', flag: '🇫🇮' }, + { code: 'dk', name: 'Denmark', flag: '🇩🇰' }, + { code: 'gb', name: 'United Kingdom', flag: '🇬🇧' }, + { code: 'pl', name: 'Poland', flag: '🇵🇱' }, + { code: 'it', name: 'Italy', flag: '🇮🇹' }, + { code: 'es', name: 'Spain', flag: '🇪🇸' }, + { code: 'be', name: 'Belgium', flag: '🇧🇪' }, + { code: 'cz', name: 'Czech Republic', flag: '🇨🇿' }, + { code: 'ro', name: 'Romania', flag: '🇷🇴' }, + { code: 'ie', name: 'Ireland', flag: '🇮🇪' }, + { code: 'pt', name: 'Portugal', flag: '🇵🇹' }, + { code: 'hu', name: 'Hungary', flag: '🇭🇺' }, + { code: 'is', name: 'Iceland', flag: '🇮🇸' }, + { code: 'lu', name: 'Luxembourg', flag: '🇱🇺' }, + ]; + } + + renderCountryChips() { + const grid = this.elements.countryChipsGrid; + if (!grid) return; + grid.innerHTML = ''; + + this.availableCountries.forEach(c => { + const isSelected = this.selectedExitNodes.has(c.code.toLowerCase()); + const btn = document.createElement('button'); + btn.type = 'button'; + btn.className = `country-chip ${isSelected ? 'active' : ''}`; + btn.dataset.code = c.code.toLowerCase(); + btn.innerHTML = ` + ${c.flag} + ${c.name} + ${c.code.toUpperCase()} + `; + + btn.addEventListener('click', () => { + const code = c.code.toLowerCase(); + if (this.selectedExitNodes.has(code)) { + this.selectedExitNodes.delete(code); + } else { + this.selectedExitNodes.add(code); + } + this.updateExitNodesUI(); + }); + + grid.appendChild(btn); + }); + + this.updateExitNodesUI(); + } + + updateExitNodesUI() { + const count = this.selectedExitNodes.size; + const chips = this.elements.countryChipsGrid ? this.elements.countryChipsGrid.querySelectorAll('.country-chip') : []; + + chips.forEach(chip => { + const code = chip.dataset.code; + chip.classList.toggle('active', this.selectedExitNodes.has(code)); + }); + + if (this.elements.exitNodesCountBadge) { + if (count === 0) { + this.elements.exitNodesCountBadge.textContent = 'Any / Global'; + this.elements.exitNodesCountBadge.className = 'count-pill-sm'; + } else { + this.elements.exitNodesCountBadge.textContent = `${count} Selected`; + this.elements.exitNodesCountBadge.className = 'count-pill-sm active'; + } + } + + if (this.elements.exitNodesSummaryText) { + if (count === 0) { + this.elements.exitNodesSummaryText.textContent = 'Active Exit Filter: Worldwide / Any Tor exit node (Global)'; + } else { + const countryObjs = Array.from(this.selectedExitNodes).map(code => { + const found = this.availableCountries.find(c => c.code.toLowerCase() === code); + return found ? `${found.flag} ${found.name}` : code.toUpperCase(); + }); + if (countryObjs.length <= 3) { + this.elements.exitNodesSummaryText.textContent = `Active Exit Filter: ${countryObjs.join(', ')}`; + } else { + this.elements.exitNodesSummaryText.textContent = `Active Exit Filter: ${countryObjs.slice(0, 3).join(', ')} + ${countryObjs.length - 3} more`; + } + } + } + + if (this.elements.torFilterVal) { + if (!this.elements.useTor.checked) { + this.elements.torFilterVal.textContent = 'Disabled'; + } else if (count === 0) { + this.elements.torFilterVal.textContent = 'Global (Any)'; + } else { + const displayCodes = Array.from(this.selectedExitNodes).map(c => c.toUpperCase()); + this.elements.torFilterVal.textContent = displayCodes.length <= 4 ? displayCodes.join(', ') : `${displayCodes.slice(0, 4).join(', ')} (+${displayCodes.length - 4})`; + } + } + } + + updateTorIdentity(torData) { + const isTorEnabled = this.elements.useTor.checked; + this.updateTorModeUI(); + this.updateExitNodesUI(); + if (!torData || !torData.ip || torData.ip === 'Unknown') { + this.elements.torCard.classList.remove('active'); + this.elements.torStatusBadge.className = isTorEnabled ? 'tor-pill tor-on' : 'tor-pill tor-off'; + this.elements.torStatusBadge.textContent = isTorEnabled ? 'Tor Enabled (Awaiting Run)' : 'Tor Inactive'; + this.elements.torIpVal.textContent = '--'; + this.elements.torCountryVal.textContent = '--'; + this.elements.torCityVal.textContent = '--'; + this.elements.torOrgVal.textContent = '--'; + if (this.elements.torRotationsVal) this.elements.torRotationsVal.textContent = '0'; + if (this.elements.torFilterVal) this.elements.torFilterVal.textContent = isTorEnabled ? (this.selectedExitNodes.size > 0 ? Array.from(this.selectedExitNodes).map(c=>c.toUpperCase()).join(', ') : 'Global (Any)') : 'Disabled'; + return; + } + + this.elements.torCard.classList.add('active'); + this.elements.torStatusBadge.className = 'tor-pill tor-on'; + this.elements.torStatusBadge.textContent = 'Tor Routing Active'; + + this.elements.torIpVal.textContent = torData.ip || '--'; + + const countryStr = torData.country_code ? `${torData.country || ''} (${torData.country_code})` : (torData.country || '--'); + this.elements.torCountryVal.textContent = countryStr; + + const cityRegion = [torData.city, torData.region].filter(x => x && x !== 'Unknown').join(', ') || '--'; + this.elements.torCityVal.textContent = cityRegion; + + this.elements.torOrgVal.textContent = torData.org || '--'; + + if (this.elements.torRotationsVal) { + this.elements.torRotationsVal.textContent = torData.rotation_count !== undefined ? torData.rotation_count : '1'; + } + + if (this.elements.torFilterVal) { + if (torData.exit_nodes && torData.exit_nodes.length > 0) { + const codes = torData.exit_nodes.map(c => c.toUpperCase()); + this.elements.torFilterVal.textContent = codes.length <= 4 ? codes.join(', ') : `${codes.slice(0, 4).join(', ')} (+${codes.length - 4})`; + } else if (this.selectedExitNodes.size > 0) { + const codes = Array.from(this.selectedExitNodes).map(c => c.toUpperCase()); + this.elements.torFilterVal.textContent = codes.length <= 4 ? codes.join(', ') : `${codes.slice(0, 4).join(', ')} (+${codes.length - 4})`; + } else { + this.elements.torFilterVal.textContent = 'Global (Any)'; + } + } + } + + + updateStatus(status, message, elapsed) { + this.status = status; + const badge = this.elements.crawlStatusBadge; + const label = badge.querySelector('.status-label'); + + badge.className = `status-badge ${status}`; + label.textContent = status.toUpperCase(); + + if (message) { + this.elements.progressMessage.textContent = message; + } + + if (status === 'running') { + this.elements.btnStart.disabled = true; + this.elements.btnStop.disabled = false; + this.elements.progressBar.className = 'progress-bar-fill running'; + this.startTimer(elapsed || 0); + } else { + this.elements.btnStart.disabled = false; + this.elements.btnStop.disabled = true; + this.elements.progressBar.className = 'progress-bar-fill'; + this.stopTimer(); + if (elapsed !== undefined) { + this.elements.elapsedTimer.textContent = this.formatDuration(elapsed); + } + } + } + + updateStats(data) { + const stats = data.stats || {}; + this.elements.statVisited.textContent = data.visited_count !== undefined ? data.visited_count : 0; + this.elements.statInternal.textContent = stats.internal || 0; + this.elements.statExternal.textContent = stats.external || 0; + this.elements.statCookies.textContent = stats.cookies_accepted || 0; + this.elements.statQueue.textContent = data.queue_size || 0; + + const errorCount = data.error_count !== undefined ? data.error_count : (data.total_errors_all !== undefined ? data.total_errors_all : this.errors.length); + this.elements.statErrors.textContent = errorCount; + + const totalVisitedAll = data.total_visited_all !== undefined ? data.total_visited_all : (data.visited_count || 0); + const totalErrorsAll = data.total_errors_all !== undefined ? data.total_errors_all : this.errors.length; + + this.elements.errorCountBadge.textContent = totalErrorsAll; + + if (this.elements.statTotalVisitedAll) { + this.elements.statTotalVisitedAll.textContent = totalVisitedAll; + } + if (this.elements.statTotalErrorsAll) { + this.elements.statTotalErrorsAll.textContent = totalErrorsAll; + } + } + + // --- Timer Management --- + startTimer(initialElapsed = 0) { + this.stopTimer(); + this.elapsedSeconds = Math.floor(initialElapsed); + this.elements.elapsedTimer.textContent = this.formatDuration(this.elapsedSeconds); + + this.timerInterval = setInterval(() => { + this.elapsedSeconds++; + this.elements.elapsedTimer.textContent = this.formatDuration(this.elapsedSeconds); + }, 1000); + } + + stopTimer() { + if (this.timerInterval) { + clearInterval(this.timerInterval); + this.timerInterval = null; + } + } + + formatDuration(sec) { + const s = Math.floor(sec % 60); + const m = Math.floor((sec / 60) % 60); + const h = Math.floor(sec / 3600); + return `${h.toString().padStart(2, '0')}:${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`; + } + + formatTime(timestamp) { + const date = timestamp ? new Date(timestamp * 1000) : new Date(); + return date.toTimeString().split(' ')[0]; + } + + // --- Dedicated Error Section --- + addError(errorEntry) { + this.errors.push(errorEntry); + this.renderErrorsTable(); + const totalErr = errorEntry.total_errors_all !== undefined ? errorEntry.total_errors_all : this.errors.length; + this.elements.statErrors.textContent = this.elements.statErrors.textContent || totalErr; + this.elements.errorCountBadge.textContent = totalErr; + if (this.elements.statTotalErrorsAll) { + this.elements.statTotalErrorsAll.textContent = totalErr; + } + } + + renderErrorsTable() { + const filterQuery = (this.elements.errorSearchInput.value || '').toLowerCase().trim(); + const filtered = this.errors.filter(e => { + if (!filterQuery) return true; + return ( + (e.url && e.url.toLowerCase().includes(filterQuery)) || + (e.error && e.error.toLowerCase().includes(filterQuery)) || + (e.source_url && e.source_url.toLowerCase().includes(filterQuery)) + ); + }); + + const tbody = this.elements.errorsTableBody; + if (filtered.length === 0) { + tbody.innerHTML = ` + + +
+ ✨ +

${filterQuery ? 'No matching errors found for search filter.' : 'No website errors recorded yet. Happy crawling!'}

+
+ + + `; + return; + } + + tbody.innerHTML = filtered.map((e, index) => ` + + ${index + 1} + + + ${this.escapeHtml(e.url)} + + + + ${this.escapeHtml(e.error)} + + ${this.escapeHtml(e.source_url || 'Direct Input')} + ${this.formatTime(e.timestamp)} + + + + + `).join(''); + } + + // --- Live Log Console --- + addLog(logEntry) { + this.logs.push(logEntry); + if (this.logs.length > 2000) { + this.logs.shift(); + } + this.renderLogLine(logEntry); + this.updateLogCount(); + } + + renderLogLine(logEntry) { + const activeLevel = this.elements.logLevelSelect.value; + const filterQuery = (this.elements.logSearchInput.value || '').toLowerCase(); + + if (activeLevel !== 'all' && logEntry.level !== activeLevel) { + return; + } + if (filterQuery && !logEntry.message.toLowerCase().includes(filterQuery)) { + return; + } + + const lineDiv = document.createElement('div'); + lineDiv.className = `log-line log-${logEntry.level}`; + + let tagClass = 'tag-sys'; + let tagText = '[INFO]'; + if (logEntry.level === 'error') { tagClass = 'tag-err'; tagText = '[ERROR]'; } + else if (logEntry.level === 'warn') { tagClass = 'tag-warn'; tagText = '[WARN]'; } + else if (logEntry.level === 'success') { tagClass = 'tag-ok'; tagText = '[OK]'; } + + lineDiv.innerHTML = ` + [${this.formatTime(logEntry.timestamp)}] + ${this.escapeHtml(logEntry.message)} + `; + + this.elements.logOutput.appendChild(lineDiv); + + if (this.elements.autoScrollCheck.checked) { + this.elements.terminalContainer.scrollTop = this.elements.terminalContainer.scrollHeight; + } + } + + filterLogs() { + this.elements.logOutput.innerHTML = ''; + this.logs.forEach(log => this.renderLogLine(log)); + } + + updateLogCount() { + this.elements.logCountBadge.textContent = `${this.logs.length} lines`; + } + + // --- API Calls --- + async loadConfig() { + try { + const res = await fetch('/api/config'); + const data = await res.json(); + if (data.success && data.config) { + const c = data.config; + this.elements.startUrl.value = c.start_url || ''; + this.elements.numTabs.value = c.num_tabs || 5; + this.elements.numTabsVal.textContent = c.num_tabs || 5; + this.elements.numIterations.value = c.num_iterations || 1; + this.elements.headless.checked = !!c.headless; + this.elements.acceptCookies.checked = c.accept_cookies !== false; + if (this.elements.randomizeQueue) { + this.elements.randomizeQueue.checked = c.randomize_queue !== false; + } + this.elements.useTor.checked = !!c.use_tor; + + const isVisitsMode = (c.iteration_mode === 'visits'); + if (this.elements.iterModeVisits && this.elements.iterModeAll) { + this.elements.iterModeVisits.checked = isVisitsMode; + this.elements.iterModeAll.checked = !isVisitsMode; + } + if (this.elements.maxVisitsPerIteration) { + this.elements.maxVisitsPerIteration.value = c.max_visits_per_iteration || 10; + } + this.updateIterationModeUI(); + + const isPagesMode = (c.tor_circuit_mode === 'pages'); + if (this.elements.torModePages && this.elements.torModeIteration) { + this.elements.torModePages.checked = isPagesMode; + this.elements.torModeIteration.checked = !isPagesMode; + } + if (this.elements.torCircuitPages) { + this.elements.torCircuitPages.value = c.tor_circuit_pages || 10; + } + if (this.elements.torMaxConsecutiveTimeouts) { + this.elements.torMaxConsecutiveTimeouts.value = c.tor_max_consecutive_timeouts || 5; + } + + const exitNodes = Array.isArray(c.tor_exit_nodes) ? c.tor_exit_nodes : []; + this.selectedExitNodes = new Set(exitNodes.map(x => String(x).toLowerCase().trim())); + + this.elements.timeoutMs.value = c.timeout_ms || 35000; + this.elements.slowMo.value = c.slow_mo || 100; + this.elements.torSocksPort.value = c.tor_socks_port || 9050; + this.elements.torControlPort.value = c.tor_control_port || 9051; + + // User-Agent Population + const ua = (c.user_agent || 'random').trim(); + if (this.elements.userAgentSelect) { + if (ua === 'random' || ua === 'default') { + this.elements.userAgentSelect.value = ua; + if (this.elements.userAgentCustom) { + this.elements.userAgentCustom.style.display = 'none'; + this.elements.userAgentCustom.value = ua; + } + } else { + this.elements.userAgentSelect.value = 'custom'; + if (this.elements.userAgentCustom) { + this.elements.userAgentCustom.style.display = 'block'; + this.elements.userAgentCustom.value = ua; + } + } + } + + this.updateTorVisibility(); + } + } catch (err) { + console.error('Failed to load config:', err); + this.showToast('Could not load .env configuration', 'error'); + } + } + + getFormData() { + const isVisitsMode = this.elements.iterModeVisits ? this.elements.iterModeVisits.checked : false; + const maxVisits = this.elements.maxVisitsPerIteration ? parseInt(this.elements.maxVisitsPerIteration.value, 10) : 10; + const isPagesMode = this.elements.torModePages ? this.elements.torModePages.checked : false; + const circuitPages = this.elements.torCircuitPages ? parseInt(this.elements.torCircuitPages.value, 10) : 10; + const maxTimeouts = this.elements.torMaxConsecutiveTimeouts ? parseInt(this.elements.torMaxConsecutiveTimeouts.value, 10) : 5; + + let userAgent = 'random'; + if (this.elements.userAgentSelect) { + const sel = this.elements.userAgentSelect.value; + if (sel === 'custom') { + userAgent = (this.elements.userAgentCustom ? this.elements.userAgentCustom.value.trim() : '') || 'random'; + } else { + userAgent = sel; + } + } + + return { + start_url: this.elements.startUrl.value.trim(), + num_tabs: parseInt(this.elements.numTabs.value, 10), + num_iterations: parseInt(this.elements.numIterations.value, 10), + iteration_mode: isVisitsMode ? 'visits' : 'all', + max_visits_per_iteration: isNaN(maxVisits) || maxVisits < 1 ? 10 : maxVisits, + randomize_queue: this.elements.randomizeQueue ? this.elements.randomizeQueue.checked : true, + headless: this.elements.headless.checked, + accept_cookies: this.elements.acceptCookies.checked, + use_tor: this.elements.useTor.checked, + tor_circuit_mode: isPagesMode ? 'pages' : 'iteration', + tor_circuit_pages: isNaN(circuitPages) || circuitPages < 1 ? 10 : circuitPages, + tor_max_consecutive_timeouts: isNaN(maxTimeouts) || maxTimeouts < 1 ? 5 : maxTimeouts, + tor_exit_nodes: Array.from(this.selectedExitNodes), + timeout_ms: parseInt(this.elements.timeoutMs.value, 10), + slow_mo: parseInt(this.elements.slowMo.value, 10), + tor_socks_port: parseInt(this.elements.torSocksPort.value, 10), + tor_control_port: parseInt(this.elements.torControlPort.value, 10), + user_agent: userAgent, + }; + } + + async saveConfigToEnv() { + const payload = this.getFormData(); + try { + const res = await fetch('/api/config', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(payload), + }); + const data = await res.json(); + if (data.success) { + this.showToast('Configuration saved to .env!', 'success'); + } else { + this.showToast(data.detail || 'Failed to save .env', 'error'); + } + } catch (err) { + this.showToast('Error saving .env file', 'error'); + } + } + + async startCrawl() { + const payload = this.getFormData(); + if (!payload.start_url) { + this.showToast('Please enter a valid starting URL', 'error'); + return; + } + + try { + this.elements.btnStart.disabled = true; + const res = await fetch('/api/crawl/start', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(payload), + }); + const data = await res.json(); + if (!data.success) { + this.showToast(data.detail || 'Could not start crawler', 'error'); + this.elements.btnStart.disabled = false; + } else { + this.showToast('Crawl started!', 'success'); + } + } catch (err) { + this.showToast('Network error starting crawl', 'error'); + this.elements.btnStart.disabled = false; + } + } + + async stopCrawl() { + try { + this.elements.btnStop.disabled = true; + const res = await fetch('/api/crawl/stop', { method: 'POST' }); + const data = await res.json(); + if (data.success) { + this.showToast('Stopping crawler workers...', 'info'); + } else { + this.showToast(data.detail || 'Could not stop crawler', 'error'); + } + } catch (err) { + this.showToast('Error sending stop signal', 'error'); + } + } + + showToast(message, type = 'info') { + const container = this.elements.toastContainer; + const toast = document.createElement('div'); + toast.className = `toast toast-${type}`; + + let icon = 'ℹ️'; + if (type === 'success') icon = '✅'; + if (type === 'error') icon = '❌'; + + toast.innerHTML = `${icon}${this.escapeHtml(message)}`; + container.appendChild(toast); + + setTimeout(() => { + toast.style.opacity = '0'; + toast.style.transform = 'translateX(100%)'; + toast.style.transition = 'all 0.3s ease'; + setTimeout(() => toast.remove(), 300); + }, 3500); + } + + escapeHtml(str) { + if (!str) return ''; + return String(str) + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); + } +} + +// Global initialization +document.addEventListener('DOMContentLoaded', () => { + window.dashboard = new WebsurferDashboard(); +}); diff --git a/web/static/clickduck_logo.png b/web/static/clickduck_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fb79204b96f16e662eef2095953696e10a8d76a5 GIT binary patch literal 558742 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%0A}=N~PQ=GWk;wNjU?3r<*=%EJ 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

+ +
+
+
+ Clickduck +
+
+

Clickduck v1.0

+

Autonomous Playwright Web Crawler & Broken Link Detector

+
+
+
+
+ + Connecting... +
+
+ + IDLE +
+ +
+
+ + +
+ + +
+
+
+ + + + + +

Crawler Configuration (.env)

+
+ Synced with .env +
+ +
+ +
+ +
+ 🌐 + +
+ The root URL where the crawler begins crawling and finding internal/external + links. +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ 🎯 Iteration Scope & Website Visits +
+
+ + + +
+ + +
+ + +
+ + + + + + + +
+ + + + + +
+ + ⚙️ Advanced Crawler Options + ▼ + +
+
+ + + + Rotates real modern Chrome, Firefox, Safari & Edge headers to avoid WAF rate-limiting and bot blocks (HTTP 503/429/403). +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+ + + + + + + +
+
+
+ + +
+
+
+ + + + + +

Live Session Metrics

+
+
+ ⏱ + 00:00:00 +
+
+ +
+
+ Ready to start crawl + Iteration 1 / 1 +
+
+
+
+
+ + +
+
+ 📊 All Iterations Cumulative +
+
+
+
🌐
+
+
0
+
Total Websites Visited
+
+
+ +
+
⚠️
+
+
0
+
Total Errors Seen
+
+
+
+
+ + +
+
+ 🔄 Current Iteration +
+
+
+
📄
+
+
0
+
Pages Visited
+
+
+ +
+
🔗
+
+
0
+
Internal Pages
+
+
+ +
+
🌐
+
+
0
+
External Pages
+
+
+ +
+
🍪
+
+
0
+
Cookies Accepted
+
+
+ +
+
📥
+
+
0
+
Queue Backlog
+
+
+ +
+
⚠️
+
+
0
+
Failed Websites
+
+
+
+
+
+ + +
+
+
+ + + +

Tor Network Identity & Geolocation

+ Tor Inactive +
+ Queried once per circuit on start/rotation +
+ +
+
+ Tor Exit IP +
--
+
+
+ Country & Region +
--
+
+
+ City +
--
+
+
+ ISP / Organization +
--
+
+
+ Rotation Strategy +
Per Iteration
+
+
+ Circuits Rotated +
0
+
+
+ Exit Node Filter +
Global (Any)
+
+
+
+ + +
+ +
+
+ + + + + +

Websites with Errors & Broken Links

+ 0 +
+
+ + + +
+
+ +
+ + + + + + + + + + + + + + + + +
#Failed / Broken URLError ReasonFound On (Source URL)TimeAction
+
+ ✨ +

No website errors recorded yet. Broken links or HTTP error codes will appear here.

+
+
+
+
+ + +
+
+
+ + + + +

Live Crawl Logs

+ 0 lines +
+
+ + + + + +
+
+ +
+
+
+ [00:00:00] + [SYSTEM] + Websurfer dashboard initialized. Configure parameters and click Start + Crawling. +
+
+
+
+ +
+ + +
+
+ + + + + \ No newline at end of file diff --git a/web/static/login.html b/web/static/login.html new file mode 100644 index 0000000..5420c25 --- /dev/null +++ b/web/static/login.html @@ -0,0 +1,295 @@ + + + + + + + Login - Clickduck Control Center + + + + + + + + + + + + + + + diff --git a/web/static/style.css b/web/static/style.css new file mode 100644 index 0000000..a6a87b7 --- /dev/null +++ b/web/static/style.css @@ -0,0 +1,1353 @@ +/* ========================================================================== + Websurfer Modern Dark Theme & Glassmorphism Design System + ========================================================================== */ + +:root { + --bg-main: #090d16; + --bg-card: rgba(17, 24, 39, 0.75); + --bg-card-hover: rgba(26, 36, 56, 0.85); + --bg-input: rgba(15, 23, 42, 0.8); + --bg-terminal: #070b12; + + --border-subtle: rgba(255, 255, 255, 0.08); + --border-focus: #38bdf8; + --border-accent: rgba(56, 189, 248, 0.3); + + --text-main: #f8fafc; + --text-muted: #94a3b8; + --text-dim: #64748b; + + --primary: #38bdf8; + --primary-glow: rgba(56, 189, 248, 0.35); + --primary-gradient: linear-gradient(135deg, #38bdf8 0%, #6366f1 100%); + --secondary-gradient: linear-gradient(135deg, #334155 0%, #1e293b 100%); + + --success: #10b981; + --success-glow: rgba(16, 185, 129, 0.25); + --warning: #f59e0b; + --warning-glow: rgba(245, 158, 11, 0.25); + --danger: #f43f5e; + --danger-glow: rgba(244, 63, 94, 0.3); + --info: #818cf8; + + --radius-sm: 6px; + --radius-md: 10px; + --radius-lg: 14px; + --radius-xl: 20px; + + --shadow-card: 0 10px 30px -10px rgba(0, 0, 0, 0.5), 0 0 0 1px var(--border-subtle); + --shadow-glow: 0 0 25px var(--primary-glow); + --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; + --font-mono: 'JetBrains Mono', 'Fira Code', Menlo, monospace; +} + +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +body { + background-color: var(--bg-main); + background-image: + radial-gradient(circle at 15% 10%, rgba(56, 189, 248, 0.08) 0%, transparent 40%), + radial-gradient(circle at 85% 20%, rgba(99, 102, 241, 0.07) 0%, transparent 45%), + radial-gradient(circle at 50% 80%, rgba(16, 185, 129, 0.04) 0%, transparent 50%); + background-attachment: fixed; + color: var(--text-main); + font-family: var(--font-sans); + font-size: 14px; + line-height: 1.5; + min-height: 100vh; + -webkit-font-smoothing: antialiased; +} + +/* Custom Scrollbars */ +::-webkit-scrollbar { + width: 8px; + height: 8px; +} +::-webkit-scrollbar-track { + background: rgba(0, 0, 0, 0.2); +} +::-webkit-scrollbar-thumb { + background: rgba(255, 255, 255, 0.15); + border-radius: 4px; +} +::-webkit-scrollbar-thumb:hover { + background: rgba(255, 255, 255, 0.25); +} + +.app-container { + max-width: 1440px; + margin: 0 auto; + padding: 24px; + display: flex; + flex-direction: column; + gap: 20px; +} + +/* Header */ +.app-header { + display: flex; + justify-content: space-between; + align-items: center; + padding: 16px 24px; + background: var(--bg-card); + backdrop-filter: blur(16px); + -webkit-backdrop-filter: blur(16px); + border-radius: var(--radius-lg); + box-shadow: var(--shadow-card); + border: 1px solid var(--border-subtle); +} + +.brand { + display: flex; + align-items: center; + gap: 14px; +} + +.logo-icon { + width: 44px; + height: 44px; + border-radius: 12px; + background: var(--primary-gradient); + display: flex; + align-items: center; + justify-content: center; + color: #090d16; + box-shadow: 0 4px 15px var(--primary-glow); +} + +.brand-title { + font-size: 20px; + font-weight: 700; + letter-spacing: -0.5px; + display: flex; + align-items: center; + gap: 8px; +} + +.badge-tag { + font-size: 11px; + font-weight: 600; + padding: 2px 8px; + background: rgba(56, 189, 248, 0.15); + color: var(--primary); + border-radius: 20px; + border: 1px solid var(--border-accent); +} + +.brand-subtitle { + font-size: 12px; + color: var(--text-muted); +} + +.header-status { + display: flex; + align-items: center; + gap: 12px; +} + +/* Status Badges */ +.ws-pill { + display: flex; + align-items: center; + gap: 6px; + padding: 6px 12px; + border-radius: 20px; + font-size: 12px; + font-weight: 500; + background: rgba(15, 23, 42, 0.8); + border: 1px solid var(--border-subtle); + transition: all 0.3s ease; +} + +.ws-pill .status-dot { + width: 7px; + height: 7px; + border-radius: 50%; + background: var(--dim); +} + +.ws-pill.connected .status-dot { + background: var(--success); + box-shadow: 0 0 8px var(--success); +} +.ws-pill.connecting .status-dot { + background: var(--warning); + animation: blink 1s infinite alternate; +} +.ws-pill.disconnected .status-dot { + background: var(--danger); +} + +@keyframes blink { + from { opacity: 0.3; } + to { opacity: 1; } +} + +.status-badge { + position: relative; + display: flex; + align-items: center; + gap: 8px; + padding: 6px 16px; + border-radius: 20px; + font-size: 12px; + font-weight: 700; + letter-spacing: 0.5px; + text-transform: uppercase; + transition: all 0.3s ease; +} + +.status-badge.idle { + background: rgba(100, 116, 139, 0.15); + color: var(--text-muted); + border: 1px solid rgba(100, 116, 139, 0.3); +} + +.status-badge.running { + background: rgba(16, 185, 129, 0.15); + color: var(--success); + border: 1px solid rgba(16, 185, 129, 0.4); + box-shadow: 0 0 15px var(--success-glow); +} + +.status-badge.stopping { + background: rgba(245, 158, 11, 0.15); + color: var(--warning); + border: 1px solid rgba(245, 158, 11, 0.4); +} + +.status-badge.finished { + background: rgba(56, 189, 248, 0.15); + color: var(--primary); + border: 1px solid var(--border-accent); +} + +.status-badge.error { + background: rgba(244, 63, 94, 0.15); + color: var(--danger); + border: 1px solid rgba(244, 63, 94, 0.4); +} + +.pulse-ring { + width: 8px; + height: 8px; + border-radius: 50%; + background: currentColor; +} +.status-badge.running .pulse-ring { + animation: pulse 1.5s infinite; +} + +@keyframes pulse { + 0% { transform: scale(0.95); opacity: 1; box-shadow: 0 0 0 0 currentColor; } + 70% { transform: scale(1); opacity: 0.7; box-shadow: 0 0 0 8px transparent; } + 100% { transform: scale(0.95); opacity: 1; } +} + +/* Dashboard Grid Layout */ +.dashboard-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 20px; +} + +.full-width-card { + grid-column: 1 / -1; +} + +/* Glass Card */ +.card { + background: var(--bg-card); + backdrop-filter: blur(14px); + -webkit-backdrop-filter: blur(14px); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-lg); + box-shadow: var(--shadow-card); + padding: 22px; + display: flex; + flex-direction: column; + gap: 18px; +} + +.card-header { + display: flex; + justify-content: space-between; + align-items: center; + border-bottom: 1px solid var(--border-subtle); + padding-bottom: 14px; +} + +.header-title { + display: flex; + align-items: center; + gap: 10px; +} + +.header-title h2 { + font-size: 16px; + font-weight: 600; + letter-spacing: -0.3px; +} + +.header-hint { + font-size: 11px; + color: var(--text-dim); + text-transform: uppercase; + letter-spacing: 0.5px; +} + +/* Form Styles */ +.config-form { + display: flex; + flex-direction: column; + gap: 16px; +} + +.form-group { + display: flex; + flex-direction: column; + gap: 6px; + flex: 1; +} + +.form-group label { + font-size: 13px; + font-weight: 500; + color: var(--text-main); + display: flex; + justify-content: space-between; +} + +.required { + color: var(--danger); +} + +.val-badge { + background: rgba(56, 189, 248, 0.2); + color: var(--primary); + padding: 1px 6px; + border-radius: 10px; + font-size: 12px; + font-weight: 600; +} + +.input-with-icon { + position: relative; + display: flex; + align-items: center; +} + +.input-icon { + position: absolute; + left: 12px; + font-size: 14px; + pointer-events: none; +} + +.input-with-icon input { + padding-left: 38px !important; +} + +input[type="url"], +input[type="text"], +input[type="number"], +.form-input { + width: 100%; + padding: 10px 14px; + background: var(--bg-input); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + color: var(--text-main); + font-family: var(--font-sans); + font-size: 13px; + transition: all 0.2s ease; +} + +input:focus { + outline: none; + border-color: var(--border-focus); + box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.15); +} + +.field-help { + font-size: 11px; + color: var(--text-dim); +} + +.form-row { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 14px; +} + +/* Range Slider */ +.range-slider { + accent-color: var(--primary); + height: 6px; + background: rgba(255, 255, 255, 0.1); + border-radius: 4px; + cursor: pointer; +} + +/* Toggle Switches */ +.toggles-grid { + display: flex; + flex-direction: column; + gap: 10px; +} + +.toggle-card { + display: flex; + justify-content: space-between; + align-items: center; + padding: 12px 14px; + background: rgba(15, 23, 42, 0.5); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + cursor: pointer; + transition: all 0.2s ease; +} + +.toggle-card:hover { + background: var(--bg-card-hover); + border-color: rgba(255, 255, 255, 0.12); +} + +.toggle-info { + display: flex; + flex-direction: column; + gap: 2px; +} + +.toggle-title { + font-size: 13px; + font-weight: 500; + color: var(--text-main); +} + +.toggle-desc { + font-size: 11px; + color: var(--text-dim); +} + +.toggle-checkbox { + display: none; +} + +.toggle-switch { + width: 44px; + height: 24px; + background: rgba(255, 255, 255, 0.15); + border-radius: 12px; + position: relative; + transition: all 0.3s ease; + flex-shrink: 0; +} + +.toggle-switch::after { + content: ''; + position: absolute; + top: 3px; + left: 3px; + width: 18px; + height: 18px; + background: #ffffff; + border-radius: 50%; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); +} + +.toggle-checkbox:checked + .toggle-switch { + background: var(--primary); + box-shadow: 0 0 10px var(--primary-glow); +} + +.toggle-checkbox:checked + .toggle-switch::after { + transform: translateX(20px); +} + +/* Advanced Collapsible */ +.advanced-section { + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + background: rgba(15, 23, 42, 0.3); + overflow: hidden; +} + +.advanced-summary { + padding: 10px 14px; + font-size: 12px; + font-weight: 600; + color: var(--text-muted); + cursor: pointer; + display: flex; + justify-content: space-between; + align-items: center; + user-select: none; +} + +.advanced-summary:hover { + color: var(--text-main); +} + +.chevron { + font-size: 10px; + transition: transform 0.2s ease; +} + +.advanced-section[open] .chevron { + transform: rotate(180deg); +} + +.advanced-body { + padding: 12px 14px; + border-top: 1px solid var(--border-subtle); + display: grid; + grid-template-columns: 1fr 1fr; + gap: 12px; +} + +/* Form Action Buttons */ +.form-actions { + display: flex; + gap: 10px; + margin-top: 6px; + flex-wrap: wrap; +} + +.btn { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 8px; + padding: 11px 18px; + font-size: 13px; + font-weight: 600; + border-radius: var(--radius-md); + border: none; + cursor: pointer; + transition: all 0.2s ease; +} + +.btn:disabled { + opacity: 0.4; + cursor: not-allowed; + pointer-events: none; +} + +.btn-primary { + background: var(--primary-gradient); + color: #090d16; + box-shadow: 0 4px 14px var(--primary-glow); +} +.btn-primary:hover:not(:disabled) { + transform: translateY(-1px); + box-shadow: 0 6px 20px var(--primary-glow); +} + +.btn-danger { + background: rgba(244, 63, 94, 0.18); + color: var(--danger); + border: 1px solid rgba(244, 63, 94, 0.4); +} +.btn-danger:hover:not(:disabled) { + background: var(--danger); + color: #ffffff; + box-shadow: 0 4px 15px var(--danger-glow); +} + +.btn-secondary { + background: rgba(255, 255, 255, 0.08); + color: var(--text-main); + border: 1px solid var(--border-subtle); +} +.btn-secondary:hover { + background: rgba(255, 255, 255, 0.14); +} + +.btn-ghost { + background: transparent; + color: var(--text-muted); +} +.btn-ghost:hover { + color: var(--text-main); + background: rgba(255, 255, 255, 0.05); +} + +.btn-sm { + padding: 6px 12px; + font-size: 12px; +} +.btn-xs { + padding: 4px 8px; + font-size: 11px; +} + +.btn-outline { + background: rgba(15, 23, 42, 0.6); + border: 1px solid var(--border-subtle); + color: var(--text-muted); +} +.btn-outline:hover { + color: var(--text-main); + border-color: rgba(255, 255, 255, 0.2); +} + +/* Stats Card Components */ +.timer-badge { + display: flex; + align-items: center; + gap: 6px; + padding: 4px 12px; + background: rgba(15, 23, 42, 0.8); + border-radius: 20px; + border: 1px solid var(--border-subtle); + font-family: var(--font-mono); + font-size: 13px; + font-weight: 600; + color: var(--primary); +} + +.session-progress-strip { + display: flex; + flex-direction: column; + gap: 8px; + background: rgba(15, 23, 42, 0.5); + padding: 12px 14px; + border-radius: var(--radius-md); + border: 1px solid var(--border-subtle); +} + +.progress-info { + display: flex; + justify-content: space-between; + align-items: center; + font-size: 12px; + color: var(--text-muted); +} + +.iter-badge { + background: rgba(99, 102, 241, 0.2); + color: #a5b4fc; + padding: 2px 8px; + border-radius: 12px; + font-size: 11px; + font-weight: 600; +} + +.progress-bar-container { + height: 6px; + background: rgba(255, 255, 255, 0.08); + border-radius: 3px; + overflow: hidden; + position: relative; +} + +.progress-bar-fill { + height: 100%; + width: 0%; + background: var(--primary-gradient); + transition: width 0.3s ease; +} + +.progress-bar-fill.running { + width: 100%; + animation: shimmer 2s infinite linear; + background: linear-gradient(90deg, #38bdf8 0%, #6366f1 50%, #38bdf8 100%); + background-size: 200% 100%; +} + +@keyframes shimmer { + 0% { background-position: 100% 0; } + 100% { background-position: -100% 0; } +} + +/* Metrics Grids */ +.metrics-grid { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 12px; +} + +.metrics-grid-2col { + grid-template-columns: repeat(2, 1fr); +} + +.metric-tile { + background: rgba(15, 23, 42, 0.6); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + padding: 14px; + display: flex; + align-items: center; + gap: 12px; + transition: all 0.2s ease; +} + +.metric-tile:hover { + transform: translateY(-2px); + border-color: rgba(255, 255, 255, 0.15); +} + +.metric-icon { + font-size: 22px; + width: 40px; + height: 40px; + border-radius: 10px; + display: flex; + align-items: center; + justify-content: center; + background: rgba(255, 255, 255, 0.05); +} + +.metric-val { + font-size: 20px; + font-weight: 700; + font-family: var(--font-mono); + line-height: 1.2; +} + +.metric-label { + font-size: 11px; + color: var(--text-dim); + text-transform: uppercase; + letter-spacing: 0.5px; +} + +.tile-visited .metric-val { color: #f8fafc; } +.tile-internal .metric-val { color: #38bdf8; } +.tile-external .metric-val { color: #f59e0b; } +.tile-cookies .metric-val { color: #c084fc; } +.tile-queue .metric-val { color: #60a5fa; } +.tile-errors .metric-val { color: #f43f5e; } +.tile-total-visited .metric-val { color: #38bdf8; } +.tile-total-errors .metric-val { color: #f43f5e; } + +/* Dedicated Errors Section */ +.count-pill { + background: rgba(244, 63, 94, 0.2); + color: var(--danger); + padding: 2px 10px; + border-radius: 12px; + font-size: 12px; + font-weight: 700; + border: 1px solid rgba(244, 63, 94, 0.3); +} + +.count-pill.gray { + background: rgba(255, 255, 255, 0.1); + color: var(--text-dim); + border-color: var(--border-subtle); +} + +.table-toolbar, .log-toolbar { + display: flex; + align-items: center; + gap: 10px; +} + +.filter-input, .filter-input-sm { + padding: 6px 12px; + background: var(--bg-input); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-sm); + color: var(--text-main); + font-size: 12px; +} + +.filter-input { + width: 220px; +} +.filter-input-sm { + width: 150px; +} + +.table-container { + overflow-x: auto; + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + background: rgba(10, 15, 26, 0.6); + max-height: 360px; + overflow-y: auto; +} + +.data-table { + width: 100%; + border-collapse: collapse; + text-align: left; + font-size: 12px; +} + +.data-table th { + background: rgba(15, 23, 42, 0.95); + color: var(--text-muted); + font-weight: 600; + padding: 10px 14px; + border-bottom: 1px solid var(--border-subtle); + position: sticky; + top: 0; + z-index: 1; +} + +.data-table td { + padding: 10px 14px; + border-bottom: 1px solid rgba(255, 255, 255, 0.04); + color: var(--text-main); + vertical-align: middle; +} + +.data-table tr:hover td { + background: rgba(255, 255, 255, 0.02); +} + +.url-cell { + font-family: var(--font-mono); + font-size: 11px; + color: #38bdf8; + word-break: break-all; + max-width: 320px; +} + +.source-cell { + font-family: var(--font-mono); + font-size: 11px; + color: var(--text-muted); + word-break: break-all; + max-width: 260px; +} + +.error-badge { + display: inline-block; + padding: 3px 8px; + border-radius: 4px; + font-size: 11px; + font-family: var(--font-mono); + font-weight: 600; + background: rgba(244, 63, 94, 0.15); + color: var(--danger); + border: 1px solid rgba(244, 63, 94, 0.3); +} + +.copy-btn { + background: rgba(255, 255, 255, 0.06); + border: 1px solid var(--border-subtle); + color: var(--text-dim); + padding: 4px 8px; + border-radius: 4px; + cursor: pointer; + font-size: 11px; + transition: all 0.2s; +} +.copy-btn:hover { + color: var(--text-main); + background: rgba(255, 255, 255, 0.15); +} + +.empty-state { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 36px 20px; + color: var(--text-dim); + gap: 8px; +} + +.empty-icon { + font-size: 28px; +} + +/* Terminal Log Console */ +.terminal-window { + background: var(--bg-terminal); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.6); + height: 280px; + overflow-y: auto; + font-family: var(--font-mono); + font-size: 12px; + padding: 12px 16px; +} + +.terminal-body { + display: flex; + flex-direction: column; + gap: 4px; +} + +.log-line { + display: flex; + gap: 8px; + align-items: baseline; + line-height: 1.4; + word-break: break-all; +} + +.log-time { + color: var(--text-dim); + font-size: 11px; + flex-shrink: 0; +} + +.log-tag { + font-weight: 600; + font-size: 11px; + flex-shrink: 0; +} + +.log-msg { + color: #e2e8f0; +} + +.tag-sys { color: #818cf8; } +.log-line.log-info .log-msg { color: #cbd5e1; } +.log-line.log-success .log-msg { color: #34d399; } +.log-line.log-warn .log-msg { color: #fbbf24; } +.log-line.log-error .log-msg { color: #f87171; font-weight: 500; } + +.checkbox-label { + display: flex; + align-items: center; + gap: 6px; + font-size: 12px; + color: var(--text-muted); + cursor: pointer; +} + +.form-select-sm { + background: var(--bg-input); + color: var(--text-main); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-sm); + padding: 4px 8px; + font-size: 12px; +} + +/* Toast Notifications */ +.toast-container { + position: fixed; + bottom: 24px; + right: 24px; + display: flex; + flex-direction: column; + gap: 10px; + z-index: 9999; +} + +.toast { + background: rgba(15, 23, 42, 0.95); + backdrop-filter: blur(10px); + border: 1px solid var(--border-subtle); + color: var(--text-main); + padding: 12px 18px; + border-radius: var(--radius-md); + box-shadow: 0 10px 25px rgba(0,0,0,0.5); + display: flex; + align-items: center; + gap: 10px; + font-size: 13px; + animation: slideIn 0.3s ease forwards; +} + +.toast.toast-success { border-left: 4px solid var(--success); } +.toast.toast-error { border-left: 4px solid var(--danger); } +.toast.toast-info { border-left: 4px solid var(--primary); } + +@keyframes slideIn { + from { transform: translateX(100%); opacity: 0; } + to { transform: translateX(0); opacity: 1; } +} + +/* Tor Identity Card Styling */ +.tor-card { + border-left: 4px solid #a855f7; + background: linear-gradient(180deg, rgba(168, 85, 247, 0.05) 0%, rgba(17, 24, 39, 0.8) 100%); + transition: all 0.3s ease; +} + +.tor-card.active { + border-color: #a855f7; + box-shadow: 0 0 20px rgba(168, 85, 247, 0.15); +} + +.tor-shield-icon { + color: #a855f7; +} + +.tor-pill { + padding: 3px 10px; + border-radius: 12px; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.5px; + transition: all 0.3s ease; +} + +.tor-pill.tor-on { + background: rgba(168, 85, 247, 0.2); + color: #d8b4fe; + border: 1px solid rgba(168, 85, 247, 0.4); +} + +.tor-pill.tor-off { + background: rgba(255, 255, 255, 0.06); + color: var(--text-dim); + border: 1px solid var(--border-subtle); +} + +.tor-identity-grid { + display: grid; + grid-template-columns: repeat(6, 1fr); + gap: 12px; +} + +.tor-info-tile { + background: rgba(15, 23, 42, 0.6); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + padding: 14px 16px; + display: flex; + flex-direction: column; + gap: 4px; + transition: all 0.2s ease; +} + +.tor-info-tile:hover { + background: var(--bg-card-hover); + border-color: rgba(168, 85, 247, 0.3); +} + +.tor-label { + font-size: 11px; + color: var(--text-dim); + text-transform: uppercase; + letter-spacing: 0.5px; + font-weight: 600; +} + +.tor-val { + font-size: 14px; + font-weight: 600; + color: var(--text-main); + word-break: break-word; +} + +.tor-val.monospace { + font-family: var(--font-mono); + color: #38bdf8; +} + +/* Tor Circuit Strategy Sub-Section */ +.tor-options-subgroup { + margin-top: 12px; + padding: 14px 16px; + background: rgba(168, 85, 247, 0.05); + border: 1px solid rgba(168, 85, 247, 0.2); + border-radius: var(--radius-md); + display: flex; + flex-direction: column; + gap: 12px; + animation: fadeIn 0.3s ease; +} + +@keyframes fadeIn { + from { opacity: 0; transform: translateY(-4px); } + to { opacity: 1; transform: translateY(0); } +} + +.subgroup-header { + display: flex; + align-items: center; + justify-content: space-between; +} + +.subgroup-title { + font-size: 12px; + font-weight: 600; + color: #d8b4fe; + letter-spacing: 0.3px; + text-transform: uppercase; +} + +.circuit-mode-selector { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 10px; +} + +.radio-card { + position: relative; + display: flex; + align-items: flex-start; + padding: 12px; + background: rgba(15, 23, 42, 0.6); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); + cursor: pointer; + transition: all 0.2s ease; + user-select: none; +} + +.radio-card input[type="radio"] { + position: absolute; + opacity: 0; + pointer-events: none; +} + +.radio-card:hover { + background: rgba(26, 36, 56, 0.8); + border-color: rgba(168, 85, 247, 0.3); +} + +.radio-card.active { + background: rgba(168, 85, 247, 0.12); + border-color: #a855f7; + box-shadow: 0 0 12px rgba(168, 85, 247, 0.2); +} + +.radio-card-body { + display: flex; + flex-direction: column; + gap: 4px; +} + +.radio-card-header { + display: flex; + align-items: center; + gap: 6px; +} + +.radio-icon { + font-size: 14px; +} + +.radio-card-title { + font-size: 13px; + font-weight: 600; + color: var(--text-main); +} + +.radio-card-desc { + font-size: 11px; + color: var(--text-muted); + line-height: 1.35; +} + +.tor-pages-field { + margin-top: 4px; + animation: fadeIn 0.2s ease; +} + +.input-with-stepper { + position: relative; + display: flex; + align-items: center; +} + +.input-with-stepper .input-icon { + position: absolute; + left: 12px; + font-size: 14px; + pointer-events: none; + z-index: 2; +} + +.input-with-stepper .form-input { + width: 100%; + padding-left: 36px; + padding-right: 60px; +} + +.input-unit { + position: absolute; + right: 12px; + font-size: 12px; + font-weight: 500; + color: var(--text-dim); + pointer-events: none; +} + +/* European Exit Node Country Selector */ +.tor-exit-nodes-section { + display: flex; + flex-direction: column; + gap: 10px; + padding-top: 10px; + border-top: 1px solid rgba(168, 85, 247, 0.15); +} + +.exit-nodes-header { + display: flex; + justify-content: space-between; + align-items: center; + flex-wrap: wrap; + gap: 8px; +} + +.exit-nodes-title-group { + display: flex; + align-items: center; + gap: 8px; +} + +.count-pill-sm { + font-size: 11px; + font-weight: 600; + padding: 2px 8px; + border-radius: 12px; + background: rgba(255, 255, 255, 0.08); + color: var(--text-muted); + border: 1px solid var(--border-subtle); + transition: all 0.2s ease; +} + +.count-pill-sm.active { + background: rgba(168, 85, 247, 0.2); + color: #d8b4fe; + border-color: rgba(168, 85, 247, 0.4); +} + +.country-action-btns { + display: flex; + gap: 6px; +} + +.btn-chip-action { + background: rgba(15, 23, 42, 0.7); + border: 1px solid var(--border-subtle); + color: var(--text-muted); + font-size: 11px; + font-weight: 500; + padding: 3px 8px; + border-radius: var(--radius-sm); + cursor: pointer; + transition: all 0.15s ease; +} + +.btn-chip-action:hover { + background: rgba(168, 85, 247, 0.15); + color: #d8b4fe; + border-color: rgba(168, 85, 247, 0.3); +} + +.btn-chip-action.danger:hover { + background: rgba(244, 63, 94, 0.15); + color: #f43f5e; + border-color: rgba(244, 63, 94, 0.3); +} + +.country-chips-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); + gap: 6px; + max-height: 165px; + overflow-y: auto; + padding: 6px; + background: rgba(7, 11, 18, 0.5); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-md); +} + +.country-chip { + display: flex; + align-items: center; + gap: 6px; + padding: 6px 8px; + background: rgba(15, 23, 42, 0.8); + border: 1px solid var(--border-subtle); + border-radius: var(--radius-sm); + cursor: pointer; + transition: all 0.2s ease; + user-select: none; + font-family: inherit; + text-align: left; +} + +.country-chip:hover { + background: rgba(26, 36, 56, 0.9); + border-color: rgba(168, 85, 247, 0.3); +} + +.country-chip.active { + background: rgba(168, 85, 247, 0.18); + border-color: #a855f7; + box-shadow: 0 0 10px rgba(168, 85, 247, 0.2); +} + +.chip-flag { + font-size: 14px; + line-height: 1; +} + +.chip-name { + font-size: 11px; + font-weight: 500; + color: var(--text-main); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + flex: 1; +} + +.chip-code { + font-size: 10px; + font-weight: 700; + color: var(--text-dim); + font-family: var(--font-mono); +} + +.country-chip.active .chip-code { + color: #d8b4fe; +} + +.exit-nodes-summary { + display: flex; + align-items: center; + gap: 6px; + font-size: 12px; + color: #cbd5e1; + background: rgba(15, 23, 42, 0.4); + padding: 6px 10px; + border-radius: var(--radius-sm); + border: 1px dashed rgba(168, 85, 247, 0.25); +} + +.exit-nodes-summary .summary-icon { + font-size: 13px; +} + +/* Responsive layout for mobile / smaller screens */ +@media (max-width: 1100px) { + .tor-identity-grid { + grid-template-columns: repeat(3, 1fr); + } +} + +@media (max-width: 960px) { + .dashboard-grid { + grid-template-columns: 1fr; + } + .metrics-grid { + grid-template-columns: repeat(2, 1fr); + } + .tor-identity-grid { + grid-template-columns: repeat(2, 1fr); + } + .circuit-mode-selector { + grid-template-columns: 1fr; + } + .country-chips-grid { + grid-template-columns: repeat(2, 1fr); + } + .app-header { + flex-direction: column; + gap: 14px; + align-items: flex-start; + } +} +

@S{is5NyeQ%KO8Lz7|ne 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�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Ξ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 z z>)%^BGeUVa%ydM0hgYU&a8}p{?tjg`E_($i#U}(q(H+kT;GuyHF9NAcTzv;>DkitA`ou^;%fVpu_VOJt|6&=pt%mOciD|z1V#=xA$DCLUi z?$h!IL+9fjK9X3d+{7;1OD&1>fDp5(C<(2Ux(Q^!$7cpc5ltKq9LOH7jOaK@coi0{ zUB)_5Fkbz?N2~u6y4*GuijtLhRC6Jm@4O0jc#QVqz&MxB88P{enj2u{u`f#bzoBty zG)`kgo)SdOcVtFV#BHWpAyyf>LPu@Ed?xcIG(xFzl9b zxRA@XHLq3UwNZn-T^SlPMNK894kljg!e;Yo?2348y&Q12h(%8AlxvIo0cl?YuHZ>9mM% zBA*(sV$UBvyspv~uj}?pXgHbvh$_Hn4siuxiy#iV6DR$KU(m7nTcWqQ1~~`o@2(N} z;_bj>5AD+X(;6*v1x*G1?w{WLlHEe4!YG4y&g0u}<27i_2d&zfMl+e(Cc=yDKWfALJxlHeld9Iuw_AC1TwnueBSW7#Jd3$?a ziftd&{F7~!Gkp}JUUSRI-uaG-RqXRvz~G6_C;1J4^}dd5$!&;w#=(QX>!mO19@#(( z>2*~|`yAX=Gju#Po`c2#Dg58eObqg&OIrdLJvok>D3F3NmAN37MF&v2%<9abVE~Pw z8N2|g7jT)R!H@@-Q9K4Mq(Ii5NFJ4z35Gy04Qtp{(6>baqQz$JhxzvFGUpBo-}91( zskQqNl&w4%&YwH&9K+>DFM!Cv*O&>mvSlrn1P;@&N&bBl-qW32M z?-btf*Z-D(WS$SmZ6k{i5Q_x#8*Cls0{CVaKH>ViBaah`btz*PE@912Pt)$^B@Bk- zI1z4+;`NI(iycpc+l!wI&T`a`TR(YzDE3dePXNcYmR?#nbpg=qcho#c)W#Ydh{)r; z619w_yrg4>ZP?CbenfM4Smz(eP<(I>5?Sw7UkO;~>X=#RTwtVns5_5%?o{~*qy}45 zpGV;ZuE&;}-LSnl?65CYDJ(Ta#BY6RKUVIR6Z}uey-}CLvXLA<&Eprkf4P{cr14Fs zMm0e<&g)yBqq}#oQooR>4(dwAftDb%CvB}w{=cQ1-ISSrP`^hBXI2LBHj8zy%~hpb zFCQ9nlPK)0lE&#`roO?M4r@J^<_$QSVjs^-t zPwt8iaTPn~M-3=_)1nRpgo3wi;<$l4(1tqQ6(NQ6z_8~fkc&`*vW#4UG%5=4*Z*Y4A%#-L|zkd$9lRa2t5cl5?{S$t~$??Bg84{C_dMt)3bY&svc8ZN`n z??5yA0>B`#;pp@(R`J0pfhRNXKASA4HQcFud3b_|Ld?9PsZzrqTalpA8uk!ph$N}**Z^ORRHNtTyY$yLrdj?a`15*a6stn~{<2}}%%pUrqT!T4R z?`b1t;pyf<2~BkY~JUvTjhZFur#^1-(A9T29`e)=mQ zK69jkb&pvHbRGa5Dhen=sQKePs1(?{-VQhIE4oob-Js{{-agG-UA#mWtI z=7U+`a^Y^o@e~}$Q-e8%d-HODt|C34t0+OuO;o4<1(aWaOKC-i*h+6i5uktnzrV={ z7}gej2k1s9?5bz!08o};`+-7;C=g1ex2Q)K_n$qOxcG~LW(3H~mKGAp!fyt1a6;kB z0+0ta_Teb|^rJrOP^m&f){!)3k;)W9Ra=$;pUW%)7lKZ*{yT+F!yBAfl zIqIVKsbVecl&z8Xgym4Os)hgwSx}gneS%AVbB*go0RGxiaO8#*%*aAke%n$p$oBkW z>n%)Ww@a;6!)YE5t>a`aM~^ZSvn(s(&nu*cchwLL2*7H^-^g7t7d=iwIO2jAUIp}i zhVh;9R5qC(GZlOugyA<5TQU+d*v{Ou#=aBWu&fU{sLKu zte@rb%NT4M#RkXW9nHxPl9aMdvfuZLYZGav?zYMp5*INnc+VZXy~kM_WXB(Vc4N`k z+0#LsjxUY2j!n=W6%@)k$fH7uMw7BZCwvD|tQVtUpzq6*XN`smsj6oHG$uO2JatQ> zp;z;gj&d(GHUMx3VaBEEMsx{5{x?&AsDm<09rSOyK|m@_VKgn2LIZryEDBt%dnR}# zp%nEn%|T|#ZF%a>!lIQi^~EE6Fpn7&)l|iXR~RPT^z+#^!%*kn_*kqEYD_q&-YCgW zvzZ1E6&?$>+U0P*i@q@ldu8G?^*m3{Q`DnEGdw^I=1W9NHdG<`QO>W0Hw(v_i4N>w4gvb8ImNrFdkqfwBrqPf=XCZ4Irl7m~p zic&iHY|r?C7kVqBy2j@GS7V4ke%{ny!7ZcTNL|o-8+2<8(t_Uq;3Bwinjl^N4*}*< zjnc&d-kdzbm%Q3ULr>^-oUS|>DHDCCa5CP_ zg+DpizfI_!v}{IPlqbjU)VEhF>+i0ax<1Kde$e(c{%xWH?ab}A8<+|}SiRwVUfC>w! zrVx3mf+hemVNhP-&Wi&s5hDv2-N8_yF%~)~^hG3FmPhdDTBhr!#kDhykntIT&W}7h z6|EKeyM}*J#vz7` zgHKM3Hnhk@PHIJG7LctvX6I$5Q}xnGbY(-Lzx*JH)Iy;^pTu(5-l7}Z)Ny@XoD7xE z^Y7=WtS>Au@Pzt>*MILfPSn52OfWKPOL4iCJ^<&l&kbtiB9cF1_0XOHBR6!%lsc`U zofjA3SiA5-)!|dk>YepFYp|YqeEXYh52v#8G{lQruqZ)O+?$>e#S*{zaZ%kxQ4_yI z-Qk~!lm`)=61~BXN;~HyE2{rQO?}DTrQ@SEulib5{ywSa?YGZy#9^Hb_v5MG7lqYX zx$$%t2JP!_498T6COY6s3X_z`;rA1Z$ENV-4z77urBe6zQDeDjsI{lze;EYs)d(6W zLhdE|v3Q=YwHx3P&Vn5tN@Zn;ch6sUz3C{Q0G^2z}^$=j|w{_O-lg%(913_0WX7Bg7 zuA0w(>nawqbMh}i#FuKZT3YA)!vh)70C)PtxY+$&h3+`|Zij!~EL z!)?}woEf`2UbuKc(k*cfvy>r?6y3*X&x4%NMIQ^dZzk;A%uX%2lRTr|a^;C$s0zE6 zTBD@i6+UWeH>s&Szn@)(FzODweOmiw4?efq&6=2`$}zso5Iff(WbTF_=~JA+lB{%p zNA2I(ye;?4H%@Q-jo8e>u5j~aeOgyhnLW)(RVt4e=+sD z88AGO@sRgQff$P@<$v|ice?VFSwt$-_IaUORW4!ysGp`k)@HT zRetR;sqsHIQ8s}lD)@!-_i!gx?Zx?(o16`!TNczG4pyrM`QOTXxI3gf@Z)$Tl-l!D ze`$zz^DocvPQCM8?5*>MdqRASf)7``Wv{@OzwcXqfYqh%d@T#29?vHHQvd9yw)8#x zD0=OyHDY3Lf8zq^4JH3BiNv~|7uH*bnJj+&STNqo;dQppr@orcy!K3WQC#wN(k+?A zkKNO~i>1~}NAYs!NOsCMrBUhCJ+DHFb$IE%S@4a?IOQ5|ONs3SM1S;YL1jD;mhIZ; zT%mRIpn()RL*7n_{j1S>FbFeZ=DD|Af(EIMgXB@(TLq9J-3B?+C2#tF&i`tj5955m zR13_wv4E^wo*d-t{PcjHby}X!{hqW=*pE;)Rp?B+|M_Qx!?tCF)RPRkc#Jvj+dr9J z^4k^3*9gtp-Fe3{hZV>f8*Ka+9OF{(7a8Ado{mR+e3^O6<)cI+jALbNQZK63Y**K+ zF_2zOnSJ+irclHIYpD1fUiq4M`;Yg4Gn|ppCRNEe)Pk;Vr${I2z9eUdEK` zX5+1H^r;TH@GR8y?{qt%ZB&rYCfO7B`xxI6PA!=E-X&Vcp9?ZKXW4+!^hziLi<^D_ z8g&`=XUB@7e_{T$#+)nl{hl46)WIUZjO1$6H`iITiI;nZ=^WKvNot-%c z>0~bTcV#y66$x&c%;jrGjePkLrLNYAl~%BTw@OcSv|Jl)zj>(|ZKF;6j+b6Zz4a`Z z`6;&hqXf#c)(MLU)dE$67B{a6HH^km-?-O?YJM?J0sZ@D7o7T)sCt=-3s)0zaQtqX z;E#Vb@ukpkdg4&8&SSBI3m{64W(Kc@%U|{y-Y-PAMZa-hF;RW-=MSeEAp8e7@kk;Q zywb-zcIUiGhBDf^x$N3FrLBal_MH}^Ogsd)ywnksVF_ydSC`s4+Qoq`ibkHW_>bql zb_ZfdBkN{^uqz)Y5^`Wce7KyYArdE7IFfx*RH6d5t7}%q{NgpwchU%$mapCB({|>d zhqwQ}CPJK|jus5<9ph6RCe(qdfSx+4A)TP}d*PYOtsos9Z}JIWu1^ z_@dlCO-iNAerKRpAE$q&g46EGp+1zQ)4z$Ft+?y`P7&Zq-kGzFv6j|l^QJtaG(!ai zqSIh87P4sb{?}rXcmszr^Vb5!ZF7;pM(zut+rY~C{t}*dW9T)Ex-N$SFWHKoFN|s{ zu!alwN#tFr{+;`-la*XjFR=90)KE^HQC|mDkQ%xn(>0$T-BH_anlRSM;6vgqaR(`B zyPcT2v4EZ=klKQfzpjfQ%s&+|hs>Eh`kb6n`_g4|4vU=DMoDPo21ehlU=2%E~lJ;qXDSS#}}-6&tI+gq=BO}T~Z%~7{0qdRZYA&>ey z9M9?{n6~3isJzA0uW{$^yD_k;kynrBz8GE9jW;6SxCFv=bBn{oi@IT|IRPR=CYR{e zWzVlDtxHmZo^-c~gY$k}bL5T1la#yHruamj7GmUbuC1+V!JElH>!$o+ZcZ|-eR?UZ zb|RRcQSDwI*sIQXjhk7>oBb7%OHr@p`YE$Y(_0Dz&%EibEVnO!bbVYS{m6157eQA0 z91mO4o*t@(8yC)Pfi%3*$`2)gs!s~OA|@IlR`>isQR_u+AkM!8ftRNSC@5@cfV7`J zra~%(9w6#v=kC`SD;1JwZvGo! z_-jj*%uXfzMOJ}fA)#SWU}rnPj6ShA$w%oZBvt50D2$GiIwBlF$muB4u<`U9gsVd-H$z*(FD#2lQ3fK5DW{=0YS`rZR)PabpE|TD1A^rV>A9RYyDSbfi2T7Y>m)zOx2si1tOfC?o@qdVeJ^7weU|~&(0mF4;Ppf!Yq>)*xJP$ z7g&NkJu4lVqrb_HY@YfflK-;Jwzyac_gDI{0KDU!R)6pNA}D0CLPWNPSCKuxXm0uK z8-oF9wk^=O(P>xjRI~e~PZWV9-Ww8s|7daj-of$uPT<)CWOTEa1wTfteV^ekCyu`W zhFPM6gev2YZf9KpUf0Pahq6O@;I&L|cjegq^2VE^4@8}Krjp_7TZ(cmN?lXzzQ;~` zsk&kPvdDnFUqWdYfL%U1KSH2OvZLH^?x|(EZ0VLD>D~ATJQD}8&rWsn;&?*AXGC-> zT(v5$WAT%Tr~T=1Hw~kx!Y-eHZFF$={RL6I&u@prs|P0Ar~90KARG{p-OI3V=5`8^ zG`ph2``Y}&W}IpfJDoK!%|E;5ekR#J>R$YoF&A)B(pCQOcxjjIQ4MFN&Fvrt*V<3t zWg@aXXIgErPsjN5X8WW#=IdLJZ@PT$KEK28!N`e|Ov(NI(0WE0x*Hoa(#ntCK7;o< z%iP?HTllm4vN|n8CyNSes6+8_n)&gd|KAU&Atv!&^*?waNx((q-%R_y2hWfWxArPdW98>XB6-GTo?3?B|=90c9YyR zUI0W{AMP)%M{}lY*Jl_;{ZtuY7dqem=SdJ-MbNh2z+uNaXVyxqf|OcX6DLPiSH67x zd-uJwB$T>rYD9T77iWxa>A%_EeNJZ#c1`t2w+Tx}+P%?wCm9a^7(EhWyAmFEeZ`|C?!@O+D;2D}BqpvZ`M3so=Lyudg+B_P1073ge7a64+sX44>(yG?VmQ zfutZEPsDpI*fF1Q=|v{EV%K;MwAVKRO7^~>JG1@!+II?}f)RX;TOt-^7)I>7VX>;{ zbX}Z>u~u7&OSLJF4KJT`G;8DUofoA2dOs5nXOayYoBT7B70<|~D?2c7R8Cwj()Nu; z!{n-wW759?E~dk$NWv)tb}J$dEF=7JTB5|?#;F!L_`cnlsG_uVgq$Te!dgy0M_Ou> z%5G2VBMq!fY@Y~gV{+jAeKNg;9E`D+46O}PiEiqb+s5ljU$G|$x)Z?rGU@mP@k zav8}nkSH7Wi_mRYePG=0&NX-eOqFlJwF@6dTC7!ejp6wf>BF{Bq{lNm8tlyO} zvT*|(s022aVHIvM*{$dHo$O4@WA)Y>3OioPjCyi*CCXA7pWaUNe@=2V*tD>8^%g55 zi&lz9?q$*ZXn587+?UAU zI*@(;?QS+GvFEGgsJ0PIKdkMkCP^Q6BhKMcu%a>n^=&0hu(#xYH7kC4kU!Cnf{i4g zu6ZeI6nc1SU6xp_{i?ce+Qp0V&NCX;sn5${;hgqnF9f$FcNCbR)sVK3XCWgUwS9%? zTfL8n?=_?6HwB6o!j7jxtr4g8L|sQDuzjO#?X-#k=I>p{mHH^V?gU0uPGnW9WTolJ zq|xo&w;_08o7K0saL;^X1>HQTc}KczxFS>2za7i8x==`zEbPK4Li!MOe{jB^dlx(C z&7;tRD=|Ap`VST3dk$@8IKQvsRH2`&JMuAHaq=QUxM&&`Qn2LoMF)xnv8$24kZjM%&9McT1^OE?6|bO@JW!YNu-N*yvrk!UTs9)N7gHdgj1 zmMgM}h(}dF^|8xLx8Z;uInL(q1n_)T1=hE|DVLq{a=+pp7MX1F5@$3Ow<6k zO%-j?m&u`wVDY+WBufXf#bav!+mF@3_{TpjXbA5rd=`O?aV5qD`EfmJq1`^MgKv7~ zd)m2lvo?#qzs>f839XhflfZ1vS=zH+Wg!vZQqar>IkP2@KxY@5?cczIgQ` z;h)8CGO8?Z#gp*U)dZdMxA2$Un3!H=(@Ez!oU&Tx^|C|(E|zl1J;rDcY1TF^2$i(KZ(Zs6uIsZJ9s#7LspP8nOL*739(gN z0{Zj{GM3-m#Z@%#^G~0jqt7P7*q--MCGHWjM6If24lJHy^s!E8Xdju#_9+Wu#?-AjA!pCU zj|up))Vae#D{WLA^-DHcx2$>z^>1S`T}E8)3CL?&oG|)}G;t=68rpAv9bGYgfQABSKr0t<{}#jojlLoOxGwE~ zBRAYv9wAJ84pqh$Lf)29jpDW+*US0QN_fo_d(LQlV#+2V=infKwwecVGV5y=b25;Uy&S$u?`*19ez$JPK5h>j zP03K>b&j`80?|sP)@&50=Ij|%ebH6C^XevPZk?Vhy$iIBUkX}Mrx*2V*@5ds@BMUq z$-O|#xn$lZectp8_p2%rt92+BEL$0t$RiFJjyPl@6qQPs#m)SA1N!X89`KS>VBNPM ziS&WHiVAVkSNeq{hjI5;L|_|3<_qGi}a_k@YyopH;(Ph{VWu^$mT62ycvuE162 znZ7Agnc%Bf*c|2-E8CtPn`oo@CX4>lM7@d2z@CoMij`jS!&@p@DnJGY$=>wcif%Zcq)+60N*V zz0JFrW#{l)d$^-|eYZLobKhoh;l^i&zfyIEmiM3h8`Hfa=Ukd>^TDlmc}V^lHIqP? zHiKI0iPcb9_KnJ$EC;^ofnG;)tG^vQpUo)8I(vH&-6I!bo?Z!wX*{m5n%>fKDpKwJ zlZ8pnSW7JNrnie9nJn7Ky;R=JM%)uYr)3s>*XefI8u4FLiwEU7P+kKCHAV^I%xcp$ zEAr!Fw(umcTpITC{C3FZ0!u5MSQxoeo3%a>%X=Ynh}zG%7NwN_4AOS7HYowz z`^VQ0yj`HDzkKaGhe~x8=84;OYMFOdcO3D2Xb~Bh6n4D*UI22Z14E!mAdo6I^3cS3 zEq>WDY=W%y(>;Jkp|z{2WJPwlRpqt+^@hjqH&o3`(tC&7vTEl!x+s|Ej3?-dWq1e8r20mLUyh-!XNl^>r@ger<3A}W^Iu_V$4{AbpbEWW z^t9B%%JfG}#O)@9s)m`RoWY9s-3v*t9NviIE)k<}*ar34|F$U*fkkzmf>3u*yrt&( z7&y94A9_U+6(0~MuII8|nm>NiCJr(l;*}}Ce&SoeKZoZ1I4PrZXZ~tFG$h*M=V4jA zbOQ%FvVY#eRzZ?ttN3G)wA+<2?d^tFn z{u#Kv;5}@#_00IZLXKvGDr5pfsg%xY*r)G@_;qOM8HAmv!p!(96qGX@U>=^pN)V@?G`* zoN_pSmylQM_vfdILale|BRH$UzwxsJGt5G?jMxQm2YG$tRDxBL@QEIlpX3xViEyHc zyh(m{8%2h^!>Smc;Dg|fFzQc(*QR$?aHj+>BN?6ILyoaZ9~nM>J;%=}ubT|xVAz1+ zsbdQW=0-asu0Gf{SO181Q4c%)72P?uC82^hxOKv|UV-RRkfU`lZ67RgoT;Ur40!P- z=j?oSD#r7{&Tn4?dr)S~zrm)cbOLwP5SKZ%Z_QEGc){c`K|p>sq+&76mmvFn@g`DUHmj1emsM?|IgGl&hpiX=pd!x zxaV*e5&J)2vWM+1W_8ZL9!;G~mn-6e%*nrfF7l{bNi%R1!D%_kD*K7ynDxP@B>^@( zfBY7lh9J7&lq^pb{q3=*;|uJwVt#s1ckn|hq*$sGzAx09b+9@Mw8Bv;>|?DCh5c)4 zU;0-ISLAmc7-;5RSVJPVt^hYrpz^rb2Nh-7`CH9i%@3=onJbD6N#9wmfKUKiK@)L` z#NV;3KMr%P7)oKQ7Ocy<-HDJjA*QJ`{b9407x|GUL^yEf*N?i8dh$nkW|Pg;r=jKA zW>g1Z!-4w!YSxRP%I;dwxMQ~U@6yKiF8NA$Qo~h#q3CBLUc_oWcW%E}L`z{TVIjjg z4K#6w$T%c=Xvr{&trjJbr64=jdCb2~%Tyr516eiO^I4?z5EQYr_?b!-U>B;|ClntN z6o=o$VaS@!ctWNhTGHix37n^S+Lodd10Y3JqNN)}kZB4{KeBU#1E*3yjF+j!i1813 za^`E*8-C{9@TJ7iUr9||Mf!SQN#Otq@!<1BmLyms9YaJ6Y5 zc9Zn`nZ!(^8}6QEG!jCID=u`ZzW>MRhSZz{to=(H) zri#BZ8~6zqhhT7^@Ohts*fn(k2&~AnkwXoe$@T~wDBF`74A(oA9CpMuleE(}Lv6Ow zZWYxV4#~ZE;u=ql6G+5W&PYbXXxj$ZGq0th1Q)K$o#s`y@}hRx`!d8Dsy=P`WVEMy zwB)tcey~mGFR{HBXmybBhhZcCdw>fFV0B3UBk+rt{e(o9%+!sU-kF~IT^%qsnU_iu zTH19rl!%#uXIoPSvajy^Xlf)Uy`w>(^9D|O8L`X%V8J!YyV$Ow^ThdOp9N$?C{0KD z2INy^8I~SoR~Nt)*SLkwfZj<_&6nmgK{c>6%G$8nX_YJ31>`=RrALqj&bBbf9L-j| zl%Ojgy$7Gy$`^3uK1=4xhn&9f;_SHFYPxuCy0rhMo}bb%e#Y_i#hN75i%@2Nsz@L9 zH9hHTmgbRVEWyx6l^Z8i<~&wTXO4le`YRrvwe_UO%DTah5^(ni`?7fVGm}$W*Xs_q zoW1E;EhB1P1xO_>^e`DU=AQU(Tk?Y~IddG%a-UNb4XAQwBicBX*WYrzd+#EmeNwH$Bg zoS&1#tR{jGtj(QPk&!m279 zfsXOJZ+Xk{i{J$QQSMAE<67J=meO@x0bB@tX8gfc1*t6SG8m%|sO-DN_d=LH*uJ;4 z(f+vCUjhkJ6m{2P?Socuv*_ECfSr$EZ6oP&2NGZsJ4=Gx*0akv z8N>cOFLOq`?10V|eI$`8P7t#iD028$%^l|6?Eln5R}~=o$p%%r%fZ3m^VE862N^u> z?Zkg`RK0Aw@l}NlN$W8+yW%mQ8}CmU#WQpKO>~RY0$vrpU%ZfBiLlv(!N5^ntnazM8GxA2)^jpS6EC0U7h4+`2QeXc?0s zR?**+S$1yJL)XV~0d`xfyi-a$S$~!6rrIYGZQ&VzB(qhhRyjU0f1ln#Iiq|hxUdS* zrO{4ie->5wwRAhNqr2EaA0hdOX0mnL3}ov~e$)$YqcV&rUMv)tA8>Un{^w7#X#t4A zqciSM<_Fy!E|@*Gopj;s;977(!=+kWF+=(zej{Eql(<*a5Qk<_p=%cau_QxnzU8he zJLT}1kcTYvQU^#4Qp7C&3t~mb>60&32fjfq=w9c9Oa0Q0N7Q%3H;&@3xqf0lg#UR% z2A$k`j4vBHa-GrdODR1wN?32u#S0FyfB?N6s1(u1El$mL)U}!ime`df?-_Ryyd6`Y z)R(Y~?|ZB7%ckq0i+9y4it$fj*Xu3-ik^joS;Mb2o%@3|ECjM9S#@kk>%;)~tj4f0 zwXOXNaevpg_2DT}guK>vSnN&PU(+=WE$#1*O#QT$PZkN*bxY%|nx)QXG~q}73TG9f znoQ?UX(mgb=ZlxUV&fQ_5kk&+zYY1_0r48W3c9L{dZp_4RRQg|X`$2aH!G{cLx?we zn1ZgM_=BnpCyri5((T=ak2XD%;l*(2aQ#G|7iG~HHa9&&(8Az_7BP$a$bB*w?|IHH zZCw(LUvT30=T4s`y$aE~ZwLAMgm7ibr-xGSWy}{@=_vDpZlbfOntwfiA9Sz$ z=H9;H_$^%I)csrnMJSn$e!yL+(Es=IR;B|2# zJ2+2nc!j%3NB_N+p;^3caEP{DW7;c1Bm84PYH_DFvBRoH2rN;rZO<0mq5SwETy5i( z4CT@;Uv%wo-K-(&O0$!U@8Dx4%tfh;<9)W{siWv6_12!CMuQf5PH9l#JsM z_^^26FC#9$lv*@cL`xTMW`K1HQYPPb&E;h zx91>tii4!&P{2l_V$Al#-$pq`0grgt6liwV-Q9C`;kO*qCAYqCrNLzf@nw2L*ca#* zT35%m0>bvVS^!vOXHlE%vyNYqY{j4quHWYYm1M)QpG>L!aC7_17-A<{8}y=~Wa?9o z{Q^l4-*NiG8JbYCCb8twj~VhdkGk)F$j}gt^sMtD^-xms^`fD%KaKjGYP(bc)o2(O z;~A{GHsF{>P%rUG|3&0cNaA4|kZ#^;$NmXTsIA0l>rB8NC;m8&OQb=qzfYCn^8tO(OVQx_(C75?)|dH#63$Z6d?iEFqy2kvaE^=Q`6l?a@o;V@%1?7F)t862tgMC=AwPkqLs2@jn>eWsPBb;ux7JWq|N8u+ zvbl zJ@!bbbX%2Ub^R^&ss9Yq4Q|!BA8#vxIe9+qdtuYSy)WnKmFsQdp25+?wg>ScUNuUV zl5^Iu7XBn^|Ml$pHVXfU&XL3it-<9XybnGiKXoquYvts+zV&==S($n-aSs=)#gsozOf-nN08 zuLwqR7H`=3=lF}kE z1QZYuRJx`j9V4V;q;!MQNK1D}N(o3zx|uXccX#(j4mRd}zrTC$fBXp>d-pu&oX>eC z2{)j)p2Qmg7;26_E9k7_>U#ul@==5c-r@pR-$_M0lBe;{Yi0tkJ|f@pPp?c<3d$tQ z37|Z3ryPZJ8yi&2E*>(UazhHO86CVi1_+(ef*x$I;LniHpi zz;>S@#e<6QZf8L?ZR(jcr-vm@%sADrR9|Ul56B}I9TC7}W99n>rLzW|KkNbqS{=pM zfjL~k4u(p{MfAkL)SU>9GY+G6SV85|f!^v<-BC=nCLnDa!-a?6>}mL8nu_K@4q;se z%3|9_x4BRM;dGJOu0HTpyoGmyBk2}CMhlJFmHnyd5sO<(iN{ND%X#u9cIn*s8gY#A zOoh?K{6JvRUi_%I3Y9=*-k}QL>PY?S_8|+dS^}I;74#hY{dfKSdw%}ymp4D(ye^G$ zn2MAN%9fJZk!K9O*j$aiqQ{MNJhJ*N8Gf^`@-wGyTU5v~fuN#D?=Zu!H@8HuBf!*+ zKGMhTTUYPl-d|7Fb{W((`o48Wf8%s3>E{K~>s2&fQ|kO8xYN}b+~s^>s53{M>Ds+! z^&hKHH5bjjQ_L&wPKfUS`P(m{vk8!~IjqPf$3CUZERiT7oz zF)r%*r|fM{76J0>$EhE8-6h^Q1|?F%DHoeGm#f{Qp-;eZ?hzHI?t6Us&dRA1oC|&E zKbP9qj|CBs9;YC&(?2Q-txD^qR?TC?c)8w|#}N`dgBW>*1=wonGgV?gBN7?L&JphU zsgruEim;xMWKmlm#Q8FVw@O+MXl~FrsoS4mdTY9sUsuV?=0%M`f1A)!SB@m!V6@BV zJ7|7xjn%Q{dcXptD^4nPbv}osM*XfJe@Vo~;rx$<2*X%TOsp6`Ar1zNh}&dJi*)af zUH|$G^wPk~-|A})m`1eMk2?aDy=G*$rW5HP^&BJIoTi8-2{ZV{vdtUVyV-zR_m_UU zM*h|nE|+TMVLg3Y$>+aI<`h3(0XY;=Ek2_5dQo_JdRfd|w+XI3J!UKPpMa9F%p4UM zFnt=UXonSrEje&3<|bdq{MKV=#Pgsz`nu%?&Hq`LoN(iwzs^Cx3j|wmBlXPyc41QC zKWs9Zh*0tU|09En>3#6GCo*u1vOr_Ee&h#&eTQ3~ zob87l;AN>OsENh2(feLfjR_y6l0+Y`@%&U#0_n2*M4L-gH!~>jiLNQlh~bDIRn$xD z{wml}=;LA(H&Up}=%s;DvR|%77*E2pCW(0QWOfmZpK5?!?ctsv1F=t;jkb^1rk;7~ zn-mYWr-2tNLELBHt8kP$xFaC)NotVRNY>EH+8grwN}olwG`v$x)UI#rjzDwdo9~c1 zK_|YXrAtoJ0@RfH0^vKULsoX`IangIUZfz9DtA~8+f4Cj3=0cVghj)F#kWCz?Fy?&1VRKOxZ?9RppKBg=IuM$?3$Hl;Do}=23(t1dqqV_?TmxCgi<)8aq z9$&G$`pwO*fPb%czFLEXa&HjNk$A(uT`e;mp7+_`JJVcbNdun-&Y2$;0-^8UirgCs zXA}@nw5!jDTcME=25xJUAi>DTYV6j*M861da2pu4LU93Kyq8dskcoQ>0yDsWX~X%$ zR24VULB#zB?){kj{|EUXtFXvrP+-0v?7U|_d%imTTolbS3j;JRSxe{}UZF$M#-jDmPO0$AGC6ti?&vmJU)YPTIGJp?AYb-rp|n#7pkYY8{cnnW_q7ISw8@4^1XPhmXDrK^{n@V7)Ee@^-%#Tq2aOyA4hkiXH~1x z%zoVqP~O67xh{5jSDZ)<|6DP&%8Mj0#lS1R$dQH?S1WCKP4t)@NLs884KzgXsYOuW1Hgd8 z)6SVC$9Ev{vKzEpTAx0Tb%~uSCTNoyUBe%WiHfm(CfUtT3;xb_qkWh5Cx(>?ZZpNV z+o%2{9~Whkpr^zjW1VT~XIzF#iKFT;5j7(;bLJx2Y#*OX+h5Dy=9A5-8~~waUJ9j8;=rW3rubwKW}vrsHl6?ggwa0 zn5aYeR|Nz+6&Vi|7qFAa?MCa2U#&c=!+V*MXWJ04jAl+g01GYPLnAkPzU+Fyf=`_T zBG1kq!@=npyQ$XeR~k3juLg^F8SHNs$V1w>o7p}kB4dwvB7gYf1?zua#r2iuBCt8C zNWNS->JC^1B8OtP_!8Wkiz_nip+8FxcZPY6!1!9A3PmX@RL;>qoFdP9Vm0q5Ucq-5 z;;PCoS>RpyJv~i3`Fc;k;y-k5*rbY3sd$5=+eC1Ry#eOoILo~gC#O&9vy`lS*q{Ju z<2Ld?>6Q$zR(05NgNIU4Ao*G(INPWJMZDHOC)oS_876n7tvSQ~e+$EQj*H*cYX5$$ zrr;Y(Kl z@xHkK;QI1w0;VV8AAtXY72W~{ZT#TFqi?3_HapE#ch2CgxEmO+FS{M^r2VrH5tY>hQ{ksPn1`a{KlSCI0eo6+5V zGbd#+B-w?!NJFh9YEmXO%GQ z?WqNAsjI=5cwED>urJ;+pUgso4rVof!-E7IWT$%v94Q4U-@Lr1W8QD*mW9mHX+wP( zihDcB*0}VNcHtF^e_nlb5oSk;V zv#S2TN}%(2Ae2k9NhkHd=2h-X`E4AZ82C*4`CXmB>ao*&X0Nr5l%oC;dA`vHz#Cc> zg@s5cWXr8*{)G(9#E(vvGBDgexv^JNnKGKjZXW&?)BK4RM&@XoG;J2qu|wK^>Ct_VnLzbeS%!h zqJiL(ug-4xarmZ#(^W9)Fb~6s@QJ86I!&E%ZG<2M6ITy_vl8Fpuo^c>paF z`m=8Qq9`Z9;5(GK_1*>y#VOZEJW7E|Rk#?%wMl%T%o3jx#CQ@r!rZIfyX*gU$pHNW zn<7Jyg1GLQVFn?NL)){htcbesi<@#L?4qW+4J$Em52(*EvRs;i>uC$rCx5#flWN^)5`FG`P9Tt zs2UCk25WnX@2|YgRmA1!v(K$ZL?%N$;UcSY&s1S2F_~mMmK^W)-qJsuT<`aD4xAza zYfb$)2yxedc(P%T6@iZ)C>@aer7Q$aisDRpG_; zwn%(*`|~_z?CTe@H~qtg3?XUURYjt|Tz9~{SY8yd+FfottHFW(`_^`5xS2yp_;#O8 zLx9J~$4i#r98#ZMAcU#!+4Vk*fOY5L8ZYJ0y_eDa{ma#&gl8~0)IMTlwNHv}T7V(D zs&0a=J~wX3kZ&o#o@xMlNHI3s3&NF<^I89gL$QkTMj8{Bc^Q8QlMZGqS+s-<5@PR9 zU#ZUjq*~y8A&oq@8e6lI;MI~CDOa>q2qhxKMQzBFYNG}HN8H#7Es zBs@!-R#J|P9-?r0UiCc1oz81+}!Wwg@baZ zXCeubUm^NvN5-L?7eU49=2L8wGIJ^XE z7^ngChdARul>04de)50WavTRjLIe;Cu2mx(0oCtzc%Z%`nvIM*mj+?h_fFOyNO}EO zMDO*LE(pioD3iC^o$sz)ciWAI0IS~xghr1xpz1FPqRd1E*FrI8J#Ds8dT#b8WV}35 zn#H5zF&j*k`^@dC0Hx?phB2J39dw^BSOFcAipS!;R8$GIcTcB7%^VVdVcj3SiUco@fV36N3CO`pi!e#szCW zhe1xYudQlHT=mCC*;Xw=;tGJehJ6Fc!;Wrs_ZNRNC66SvjI%z4|3?@z*QSiPM>1ALb~Bnz~AIjqzj>(H(lW?+dkv?`qpLD65peny$(0-u`l zyGsA(ph)nOx(KsmsqaOO6Gu(`-1OqBpksv=1n!tlS*jWk6!1$ePWe82Ma|S;^%Q}- z9s;NH=e5pZFzFrMd9(Vvf8Gi7+T?1K_|gRmyBd>maH3XY?IW?Jp&+37NQT3l4od(g zzMNH}G--r!*``6sx0abAv}B%XQ2lrn$sd4eSc^k{;y&C4agOS@j=<|HC+4kXb;7R% zG<~XY{s8Gubyc9G!LCm-;s4^6V^51K=!^a%wFv-X^M{MPEGG_t@W#96f4%?OZ3WH` zw=V;uUXCce#W5!T2 z7x&j(Z&Z$M$9;XZ^^TnAuApLJaYHWX)TO(A;t!-$!}A|be@f5cNUHa0DD1g8qtHT6 zi}-!&P)aUIw|(Oxw1)nJ+>W$e-2N$x2taLfG6fV8QZJqEG7VpDiGl6}`RE6S*-N=I z&HA=)6b{N2Yur!kGQi6AQe-IO`QI}Qbf&6=na*?naQfscg9iU#8LM!53iN52wjgi* z;k+MKTECOG6J!2fQrh2I7rDi_`*e)|j?~7Ht<8_4p;V-JxC!~X=z*&G_MCx%lEGWr zl?4W8u?Gc2gj-zABUKLh`!!G~WNWdvwF&RcQ$27h=?`=5g`=w-NKLmA%i_s8a~xQe zcw$51aIOC_?v+*5O-VsbxI|6a8{?HQ;nay?|a^OKS)*)m6sJ2B?@U#9x zmwkJD?<4=9>PtS5r;pt7)v;^mRP4kOYwnHD{icR-F70zt2&bnf>?q3u6C-FL_ju%z$scu8>f+u{s!O& zJ$5;9ekCxFmJE2L)RbG&P{H#r_b2bGrA^qb3YZVFZ7i|EhrGP$Xc@cc0iT}|j~xEP z@#7~v`!)N>GanQ16E%Y-{55AF;}{@W7&lU<%XP9K>%>47QM2%c1hBuviu@|~7Yr?7 zP8G+GzBHzogHV^Aa|l*jE4sAiooaHeW_Zf%nFc=eHxSsC?Z`tcS2+$#7{p=08BV0C zV5av{by^te5x5#^bghCvf$!T9yD5hD%xn0DMKDIVZyEp09ZhPd1vO9+Q}%bN)yjm1 z&p!IfT3=rcIy!!g35ABQW6JNP?mqzPUEXMyuCuo7x-uynwhzZ@UvJWum2@K)JYQa$ zN7KSv!5Mepf;l`Hp@$=C%7=j>=5nom?~`T<>1fG98f?OuRlg zY_-PG%}H9G8SuMud*Jals}<;1BxY{nL^cmmgPZ7n^N8F-gYZlc&AZt~hovMZumgJB zR&8c!3j^Tv&_iexm{fPglTsv$F;46`VHHmw@D_M!mK>^-xm&e`7aiF=3#g523ose} zXbY`*8BAHfQ`6j9FV%NU{v6DO?}uX`H4jS!uVv~d8DeN>c?K;j1aIWVBpy8q;Ge!M zlx8t6wms=YPnlo)^@YZ2cdK||t)3!_H+Y~ArKnL!JsOO|rnbEcuU*=|biRj2{l?(x z41*BLuuxJTz6k7#L(smk#=y%oQy2aLp3iMlU6KQwKW-z!-@6fFs9X9REZ5^6px)CB zv^OPbHp`%U*q9A%{i5V|51ITd5k7wk*2({n6QZ=t&tN9MBVK;R1>3}XC4tb#tLLzU z5u{<(X*C8?GRS#mnxA?e5U3dN5akbgZ0pZHdBH0-s6F)nEt`k`>sj|NqXGJz!5bW*d>)f|`lw8~OkENxv=lcg$Aja?VvFcnw7KAz$s@8?xfT9|ktw!y zqK8n;lYPDSuZ##zuK#1~H&@+EZ8!@g#+JVt&W-@NnzT;7h<`ZLnsQS3vpr$CwsBV# zBE|}~lk(nD+mG!@NM7~$JrbJ?#62|9wf}&arjchgF5dZ>gf!m_ILh7N7KhTxl^XAj zytWs#iJ5L2GN(VYB0)3ajxj&HN#3%$U|ZjftA#~MkxXDz@|7)q!=qfodQnT3Mhx}a zropjfBK?Bo-SDtmjvl86t0*U<20fn2S=J9Y60h%_DaOoqj5aa43yxs$QG#@Ta__;z z94-yAO$3)3!ge;EQfRVh5tWWe?QvAGXOYapB704dwQU9AydQ2qKXo#nXt2sMVV0W! z@~7Eem%Ge4Q|Y^cYqnQQEnh@(nQhu_YobY_FaF_3*4*gqULQaF0mPo+D5UwugYXo) z5}q&B%!^?frYG|B;M0sd7No#^yVsum8lteYb_on;Evj_AWYcGB;*ykqK!7eWy7!md zP^=``ywhe2Hg%8BlVTEAUYL znFDkrznN*by=(EOCTH^Hl47Y1|6I1-Ap9LStzLwx^cII5*bPCNQ003)AE$WMrg$BB z9nJMBeo9j(i2QB-{WOi~OaxyvMvifj1;Q*ol34hwFgWAod%!zRHKo7n;yyEX9~3#%{xp@565?OKh(!#{LiR$LOIx6P;58Au2vBp;1VM4Y zyQ(%Ikvdq8#yCG%xC7kXx7va9A34p)RN{y>kmR zqe_T0x>M3_6O7{A$?zbbzg;+W!gwBjKHK_CAesb@OV6**rY#Zm5alv+ii#Fv=0Zc7 zp_n(5u+0wLI%1ztw(4pTP#MuV`0;x_3APe``l09QCj?|*#bYdMi`{C?2Vs^|%Sn4H z%*URje>izMROZ=`PR<`EHszjDJ7Ow(tM1?TBq=Yg?;hRddI-(<6MEi16_2w1oREZ_ z_)xO?E8~K{F!GFi&ff;eT?lx}Y{YEanY%eU7soWbHnG~%ZaV`L9Z-Iisd*XD`bVcs zww8u-Iak;?(S-fF(iUlf()+&q-9X!OLA=q*J9WsT0d8T9w%XTF z_=P&Tgk*0hF^NymrR3Ql`H{KS7d@YlsVFo1-;iU)-KaSXdrdvdf~V^U)jW3eG59-u#i0|< zfi2E`2KNg>4EF@GM>slH|GW9GI!oY*TeB}YLQ5W=M1fu$BXnW30_E5qfynLi`@Rdn zVi$uV_XJfmCgo}}POt|I;vyegla}Nu9+4dl|6$&m9RWQGa2gF~Cd)7|Vq8I0AA|Q8 zo)prLVlLt<*H0ohzCmcdeGZ*}T@=!Vu^Q8Er1L0LF#u!YZX!(5}Vg_ zuzPG%PTHfhfd&$AI$r(Px)>g#gj@WtVmO?zbSY+_)c36v6RP@S!%XOPNU;d>r#xD; ztJ}iI5yBQu=F5xJl(Gf8RJB!IBWWMY*T65k@{U#H63>G94y}W)NW%&D=ee-aDc18p zPOIP2aKNp2=?_&@-f6lPbJ}^#oV@mGk(x|~_dZpT;F*e421MZ1k+gu%cp&&CnH-D; zRk7~(>cYXQXF=&D17y~*;_pA4FZStuJ3rxe@&lqL+-Gck`c79I$27m*oSpok)VhSh0UYund)EOxVxp`n};%fmEU9^Zn72m z@}ln<`-N}Hb!WdRUa(Kx;;WqR11AHFq2J7e|9SN8XQ7gTT@kEqC5931j>(iz9x$LR zT4p;(U&RIbKf|u9kRr+(b0%gSUi_6GW$A?;zmCh(0jKyqMSEk^rhFOJB>B49L2a}- ztVo#)Z{CV7eh8O^3A?lE{j3z_-MBXrX6>#hqmBVmCR8nQBx3{6_&-<~#fxB1DXg2e!h@>N=0PjBYIKOD9bXMrUx z;IaBb;vddc-CZ)>m1YA%yVQK+`(@OzRuQEVyZ?u(r4JN?-SZrH4fO20r917nDAA3> zI7SQyBCO4`W(-nMnb;{f+&o@HGAdBOC#Syy-Vrda|nJQ2E>$?*VjEWX3sXff&)^U<_vG-8pYjKgTDxgqb z1mF-3+H{wcA*wK*gTRA;Mx_%-N(0 zSw2}eGt(n@{OCK*o9x2W&$xMge;3L#ijQ`Yi`r4LQ$0NZ{3ZDPc(XO?+QyYFzJLoS zi%{)jrF@4A)Q6cqZhC5|ZO4V@1LG3a)Ll&P8aX?&++$1|7oMp%CzCh1e)0O9>uPrf zZFZSH@TyeY)qYVAXgqlAA66?i+wu3sYnOxAsgp2uNYAU}=yws>F zskJ#wf`(aA>nnfa6j- zyd00*O`s-4er^l%tI(YN(rjpMM0D6cF2T9Y{sZmvnr)F+^urQQu7p~=Y2cP1AOiQa zaRy#{v8W>d;VS6Wm;3!RdbuJbWN!kE;*OoxV%TI5C&4Aww?;W>Z;TY||KXSgnvypO zSHAyBM#QKMJ#w*l21iPyuHD5e*;O?WTHDC4#l4%Xw;Kc7Gic|odn6weJ`m*0&J>v= z(fA5sdi}QiU^Yc!fnQ^B=(b-iy1G=Mcet`|DTin#v%CEP;;Qn*sE$-<;i!fg@|_Zn z9X3u{SFv7_xl&NIc$du4cmd0RTk=I_&~?WJVHtuIn|K5AZLSuK^Q>MUCDIp!aQ2Tb zJ7lIbKYDOzJdEFEpu#v_MG9iMhArJ_=_@s1F1f^LwjFnW-Aho4EGRtSD%EH2UzQtc z4};-moGsYQ=S*1+HN^v!1WGda|G%t;abo=KLs_8t4G2+|EWeYwKu!b^*a$k$p$f1> z9EfqtDj>BOTahnX?{u_y^=>q^yH*7ybUBK)J2rlYCi9h(dVm^rDl$}L`;EkdnkEr$ zQw29u0ZM`6yMH)Fgcbf@F(wF}07@()Fdu4|Frc;Nzt@B$`;IrPt&^|WA+HuS+7LT+ zc!<=xDfgS{_)U@|Hu5PN!b7M|+JM>bqypZVzQ5)Lm-ZiR`#$+Ez}VP#fckts#AYzl)JS0y%a*^X z?-yhZMgdi~kxRktl{zb2y3vIcM`(qd7ru@%>&p2r6drBc<%P!|Th$&Yl^9MzTopoe9J>T=9LI73}@qGn3O$ zSKs(VF_jQ}VGjDvv!ZN&(xD~00WpPs2V}~CV-Fa{X66~9FC=C-F0?T1Xpp8}rMIN} zSOXmp68{S1lBm#6ycpW0M8nNXxwO^2LCY+>oU4h^ziY&hBX+!M?>GV?FFgn3B8RUG zdb>(&zOjiO<+YJLfTc_5p?xtLvz1RI>D^b!3$kQW>vP=W%87bo;eBFS{p9Xf77gr3&3a@0L-sYvD(`^uJ>r$h&6MV=5d>39~j$gf%uXfwudWj1WwHLlaZqgP z%cy^shOgvc{hw;W?stg>!Uyk^9fnJIlTME%k;ZFT@k2QWQw*{Q4eIK62-r>sCs`$apg zBF*&VLEQAVee91rZocj(jT839?}lQ|@^5qXhY@r!NB*py!t%)HsiRlCviLcI$)-s) z+#cJykDTTE5A3p$LZx@5CGo}l(r2ZYU~Kc5jb>6NByVpP_IP3^YWjOfjp(Om>4^$b zb?eajm882;^cz&i+d+dUgMpN%be+1-c7cn17+!i;yhc#*v&FI&{%Gkfog{S+Fpmk@q94l22_n8=C^t1Zb7=+q zXKst?<_xb=ETMP#+@}Nj(0jRnk8|D6w*N#&nXcALl&)3}$QNWc}@ zIW8lR$oZHS$iEr1dByed#jP-+sMgN|$`y7GsDkSCEtK&ZUJ{nBtGT2}kgQq6la2P| zMl3)(`R*UIznHP;sYo`rP`ciUMDuQ{;k-IZZq9Qbo09afH|R%EF3 zrJrwn+#Rg@WN8Q zRq!Mp?XCz5ZYrL4@iBB`&X;>lg|4Gn*=$1cZ4g2~rm;Q>=fx&H$+kSx72|Hk6%??A zqt>s#*2X-N&EMd}Eat=e#H0HmF!quw+==$ggtaVpa$jPJ%4z8MA5D7|2ZVYS- zhybqpLK=JL(mee05TZfKV8G%td3eknsk&Wi>(27o2-gCV!5|lSfiS11sr=3d@Ovy#haPVE68d4` z9u!`+{hx5k9aW#Y-Xl`))p15w%#yeX#)QWKi>HGzLxuMG1(=|V-#u1Qc^Xi(aEj0(dci79_U%VXp`Zgj0hIrt=a4sNNjv@<3TVSNWk`OQ2ao0UQ#Kt`uy}Nh< z|F{)j#u&W`SN8YS*#RBz)3hg{jrELM$JupO7{2!RzWpJRsy;hw%cs6l)Ap<5qNz^c z#-cTvd=9OH9lWckBlbWyr$z~wc&|zGVaM;d_xKhyuR{O3ljM0U5D{Yhd=@ikpb!VP zjQHqPvzeRjMAU?5839P&f1x!yc{FLqfooiO$r4}URS351gNzqEn3vPw-lqYM>6C|8 zc_=NbUzYA)f`+Y@vx9`-9%(t^`1^~@$-lJRozJ&d)-Nr;^}bW(OC3Z=23*mh9&-FS zC0O=-hm1w}LN=^{qcO>;i8E8V{M^j#7U3i-Uva#K-9Qbn4qm&B-B1C)fUeX;+l=0C zleP6i1@1KlgAH!7ttXc5nsM(}QZ7!r4}U%>cTwD@sVHYTA)yo)*h&?_ae<0sAa^wq zT)>nCQ6cV}L#{^cIK5oxQhshttKmtqpWSVBBG;G`?xc?ipo;35?d#R`Tv@!5ItXK? z_)*qy`ep+Xy81A)>-H`!QtH`)5enL|V6owqdON?-IF&7B>fk`NzV$5me%H3vl3ugU z%p>eLlu3$T_8N#{NHNM3qwEt+rvLea#qo0VIzV+K{pi`5==CwtJ@4;h}%_bT1@a zVsoafL}TfQt&F&)_L=+gzIN&iz0eQ3);_h|-|^(Y2ts>DL+O|Uy7};Q51+7_k2Fm_ z&|{k6Re%ZGBa8e*CPpNFj|ap*AZa8X2uKvar2Ugns6$UW2?2WwDW9D(QbZ?OrJI zuJJ5=e=Ifn%30?pzV8k>Rrqjjb@nsWO5`!ya-YR1DP&<{ns;>kZpmUTY1!MKc_n2R zUMq;H2i?Q67`~lLaTo6~YLng5b3-{+=62@1oWQuOFN;IRD^sr(rk)x^dByu}OTN1> z9gFRzkc+~+B8S4Je5y{A*~)LGUXsK*O*C>Ueymd0(jL{^<@G2)r2ivYjCSsnU-jvx2X{6WroCzEfj0h>Qh`OAVRCbMpUcwCcVmA>qh%^kfc{k7@ z%8lR%$&cS0NJakH<>d+DL|rli!M|0lBa69!ip{5xq2AgQF-NDoAzx4xGz?0#2@m2! z{gP0V8oMR|dpTJ@{&rQh-xg?pDR~|k>$aZT)#NYbE8XG)7jk-N9k*lr+OmC;n<|u} zeWM)W_Y0yuY=A1>&>F8*QK+z7Nc~MJwep(0pF*2`A%G;VZ)&!|e@M)uI1o!{b0&Xk zd%gd>)a$u3QNuFf{*&iYKjD@e%J$VqB+eH`O|?=!;fMfeuM(A(5jQ5G21&Oe8-duf z@qQkfCwbKp@I=NYZ(lv+Q!h1Dt@E2u9Bx_;B65*oBngO4!05iuDIK7*T8vpn*Io(f zhqx}Y`?;E0Jwv?d#U*j4sY1W78DH32;X?5c6NgXfVCrjmS5L_nGD+@pWkW=h{Zmz!s}$zbs#~&qX6IswDfDL( z(71%N+zz0frUMQ3pAdV7jr(kY(20;JS#^2JJo4p5Q3sZ@h<-Pr?oKs8U7v#9a?3o3 zq2vnIAF#kWX1#E6rDkeY*V@Rx858xQj|F#*3Aj==ehHgieRvq&%}hNmD7y_iGHC|u zvFTvzZh;)7j)(JKzJa^ltyZnjP)11Y!AbjO6=J0HF4Jeb>29dc=1Q`xT{?xJHCagh zXtmSLICMQ*2Q3Xz>$@Jul!FssZWNGXwq0ir*vT7PK$`o`k(b{H(RJQe0{ZF&a1Ma> zYl|`5(pL&eKnddgNrstR6-kx*wtJCp6-1=6eE#9wmYwBZ4WfXb9uW3rJN;Ejee%ah zd&!(p5t3dodHrkkU9=foyB}CV83CD5&L5Pm*TINYYy&i7LYqNpHG2s}#CFC`SCf+-mbKJbFtc=s9OObvh@JFsWJphB5m^6$@s%E=Y{z+SInwv8s-GG| z)$_c0x+PTR`*DeE_3H;K3dS<^%h@X$RpJVxP+1leO77XexbklYPQ(Lso+L%u zh#UU>xXCdzQ@ks8%!dAChkZSL+A6q~`CTB6yo+s7!OwQZXc$Ro!?~>S+S{Rnjh@4q zMtU83^mG%-q~BNS8R^;j%v^Yc_T&xk)^{u)H+PL>SNyyr_Ys&3JGe@Uq1arEqo21v zWG>nf?6wnVsW`S^PekUeLwMvYv5)G`$@`p8oX@MgN|$Xwq}|$2+%CUXb*1*1jp#uN1IpQ> z8HYL;M7RNk5O2zCrWN61cZT)&5m*&O& zM#HT#(!ME|?1jD_Q6Cv@_g5MnisSA#PE*@b)Y$QM@LdK*b%C~yW_u<9Z_!DBRL8rO z=^=j&NnWpfuU1XYJA!rulCJZ=n{;)AA+4etyqYR@XrCze*6P++*@h0>3$>XnjdbHmH7s)|<~RTEpa@uTSF8EGIkH^OSrxrrAr*H~4=H+7HquT9 z36HvfP(TV^M)?%W1}!@uRoka|CuLcYEVtQBR<^!EZf?X=9HjMi)l<5fdL_;~2h4r@ z4#7Ndn<>7lbBJDHLbR=Ko3`XkF}k0dYlCh%XUB}Gre}>1KcoD<%4{do0s8vrlZMM8 zjbB?TAJkRaAn8Cg%`*cOWWBfMSKlwAgN3`o_v=L6Y$2iIg+||b`W!d2)~@Mc+IQ)# z+7bqcOx2jVy58hImE_wHoNmZ8QCx}Op__h>A6~p6OUA>5e0Rq$0GbqelX<0_3L!>a z_pVSh#-}z6kgb04rA$}#xi1|&b+@w2{a8`UM*I*fn^nrZk0k6!&3)ucUuyj&Q0G{k zHd5K5hqFT#!vG4jp9NG~ymM5Pn`N12@p^B`F!gU*cthyuZG#TQ5(`F=(GTKggss|y z6I%HAD6VSif+p2%ypZ=5yoGqbA;YmMmIxL~n=LPcH;eFLSku=Ov z@gy%7fU`Sf;I>do%xiK!R1m@ESk8483yD}*|IP1o#s-i$ zN*Md_(ydZgy24i)6=%7A_x=ula6aF!dM|A2Cb2enXEz7Lp0v{9gyJd=tK-81YO%rH zq4jn#&kb~WgPAEDd3U@d>Lu@a#MAu4ak=Anb;7=`EL~5Y#=Nn+Yd;}CySY~Nhd27o zFT5KyZu6PlU3wSSXKKf3nm3f2op388owAOc;(L)*;WQnxickfU|J~;c^M7R^=O6BF z=Vtax>GMsZn%t}nOaui((_x$t$E`ZT?O$Rq4mtaSc9o}$k?X2(b`7(4hiAc~g2fJK z&CvoQ9%D8{+esR;XM(Oge83I$scmpQ_n6qGwEH>Yr1hY2`B`(-(}0!eyVc59C)~Tt zF6ryDXc;EZ#}l8#{-<24+hrV#fZtkBY)N9QV$+*fyOq?rQQ^!(`;mQlDh`+6rw& znw_n;r*eKOtD{IsW8LIYwra};_nrUc$t7`dQ#wMJncDl_oHjwRp0y;r70eJfnTFEY^*`Cm`03Y?ZRY z{UvhzP`w@1CNywscN(#<@kv&paZ*Y z#5SOxp#C}$d6qf~@`dYX4GU&tY@tWPDa)d86^?c&amdXB&w$qAHwjP?RCt#+B;q2XcG;|x0Zs3$&lQf#^qBcqR}Bfs8yOK` zdE+bYe~l$Tj=axFd>j}QYsZhCqU-C0 z4)ILm(407*y;nqtBUYg@@V_xe>h%(*+*ep%_LjY$&R;2_8aZR03aZ4 z1Fl`|vN@%kvuUm?tEew7KIPpSyiQ4zxN*d#8D%LW$ifsu&#ClNywdv&(#dgpAVuVAtwCiGXJKLY-Ti-$YV<2O#rONB&xh8r$CZqwdO>j;^nK8ucJr;o8&6@L z#ES9Ybmk!gWl6n{vIl-6_dxpScJ3mssUoR}g1F#?D?yvK1*-;M#_62Hwb|ffijMk* zAfre^q(J!)q&*FraH0nw~|= zcCT9D&}cN;|E0}mAzsV;m9DZwVcfw`-pBGKJ}vyu-l~sEBDl|a9EsWtKNhA;)yeI7 zGOCbB(Z93a9J>j>il5TaLTVj$ojWzBn9sd77}ROOhPl|%aTQgqy=N3l3osI3Ll$Bm2_UR(6!{EZyspOlcd@=DQh^c{OS~dKpkJyZ6AH6 zP!O0X~>ywbgNH!r|7tljwG zrfhz|LL2`YJtFwunEB6T1jgGmSihuRqkM6U#i}4{99n}AFSR-p+ zO0VoqJ`J0oXCiRZEyH?i^6dS@-)pzJd*Pj!uHh z3=VIfg%w+49g4Odx&U5?7n3v><{ixqK60>ga19*Q{&Jke-%w~FBuAfoJtA`m(65<1 zb{F6>0p@&9Ky=vA9LCk>hcWyLKZj$T&3t9Sr}L1J_DrG3QpIfRT;UXj$uhCmk}HvB zRctx6Izzg*K@9T~3lExX`_w=08e z^*8rHgQCFginDJenx$G7QdWX#g1Qoy2(W+S!kKye{JHHaK3ODrWY<@`P{RK{%0Op5 zNcOef<#MMz@&&21fZ5yr|HIXH#{WZK5^C?gSM5DwZ;25>nQ@`~h~^Zk6@Q-j!?;m}r3Cqrn1?(49PRebO_RjYJne)jtBKyE{0nc;5Oxf|I8wj5=QL>vSG`Z+Jbhf@|$G6d?mY) zO}oEtrb>BFJy>CJ>9pc+iHU2JjWzqZD2@vmCDYN$H0j36O<85V;M-`>!K%z1%Kt`# z9X)XDRk{#0F*i3N$V{xY3b(1N@Ydzsh!}~Hx1o^gUFw>HT^tOA@5D)~#C=*jbcvEw zTAai6ZOdqnC>X}8v2R{qUQa|P9vUow#I{C?XAV@Ox}q~EfzNuspobehQR1MX;OC@o z5Jid^#%7rM=`__hr79N3DeZvrblEmkUCq#E-S?w%k9!&VTB!xHMi^T_8?-t9WE>6q zdZ(t!%wi~pAI3m#$r#uDgk@i~idw}-gXi;8s`hoZIL{YNNTi>%u=|!?=4N>!+V^1= zWpX!^m_e+ylc#DyV-@GD8_i45FJ8Y|ibU)P^5Mr_ST$*7e6#YUAJ9O ziuvZPWi!o5rJ?usid;F|fIAY%?9IMYKNeX>X^V>QJ$v8t4gS8xovrx!a=-BW3~98R z+&bj$!S%aL$3xB<5N1LIa-jQ=z1&iJ&9XzLQu;TX!ZXtjdb;xd2a2EAP7%;id14Sb zju(b3ub;iRIBJP=l3VJpM64_CO|;TtMc4Rfa0@%>(AB+>UTt}^8^vz8I{Wh$)W4dA{V<`EO=asX9&;P=ea zwxbOs21u9|yi_aeXb(B;)99Ro_8nwffs_x=7t=3DFJ^fmOTjug)}| zid~0|8|CZmcT)#GFKc{S?(2FBZnZ^2s%a5D5Q?tcgsh_zWB2zAJbt>}O;)R}Q#JI#3iX+BKb>P5jtytc2=*leh_x9RRDqO+ zt@$^5Yi6ex{oyOLQMyBk%rSt%`q7NWVS!6s*4=7sy}7lAGZ9sv?wP=qvi6br;c-$j zOHJi=rKdUO2U?(KrBWmgK6Ts3WCqU%iSDJHmGL1(3d(Sn@f~TS6)`q(Cq7Z~#K}x! z@jK`ybFfdQ_(iYnabe`|O~f!MR(Gh8OAx=17SXG$mv{*(h=J_rD%4EHP0A)1EFB1C z%?))uDRRd&{WeZN4;lft2OuvB0!r5L{Vyp11bb21mbfw7vP>&>J^8~4nF@tzuxdj*6a&*wkTy$pTV7+60r z?=LGZl{F*l??!v3h*zzeNQrM#t27< z1wHUP6~E&z`h`bA2A$55c?=A890WrJ+}3^$!r?!a-W{f1C}erhUQU5%Lgtk81?wvh0U~g48ocv5R;&f61tNx z+EyYg&xS)nEtqHgOG}cljAh%8&=cO4^@N8*#}r%AJ$_C&zuPQ?j73}6HAMsxL_7A! zhOybtx2F1~d2^lC&2#F2(~9p8X#JUL>xdW-QDgOjE~gM9H9+Oaa; za<;~g2l4Dhy|RcP6N!pWggATB>L%uA|rh{k9+YU`;X7;Xf3U#>f*t%;w;$wGlG+A z-Qcz(2$JXtve;OlPrlL=W<)vDAVcLho2D1_GsCKyvYyAO4+HV|0e{^ooYApF-*5Qxv@QG6O9&M`Z zW-44#mnC4tvnT@S(H-l?#9gV~1{Y9>u=eXC<$-ZltRVRY^os>@tC{&Xrk}4q5y(UWPf_zi*ImkqtV(!07ydp@ zIPKu`M=9m`fO8d&(}LY+i{OJbY@wQ1V|H@dY5@yRIbw>u?<$Vw=c;so*Ap^_`cIRiBW1N zO@9D0X*2RBJMNlx<5tM`P_%!*R@{Ow+EK`IeUV;;h3N;E@g3=xt%(1e01~4~)2~^7 zm`=mVJpoM~(l7625^3|lazoeW5B{P^SI+B)~nn3*G#CePzM9_%AVL4+mRo@$MF$zD=kkjAdCcn?>2Vo{u;)UUsY6 zR^!`I;7pSpO*8u)gZB4-lf>>b1~fznET+4+pCjJgrnP+;(ZKkRJ4k7k+KeH`D9D3I znoArwl2C~2&LF2x@?yrT{10Q^_W1UpY%zu?%J%iw)hw?K%j^ngX51C2mr2+j{FWv2 z4}5#?_q~Jk^y_-5kc^TB@F!ObsZZJI=EOV8%qNGgH(;6eEMg-QTdE@5i^jn)K21Hb z>PT2=-2<`yQA38S`T??I;BKMCMA?>|cIUFm}{w~`N{no1$B zBJasdWliSnL8Ne+Gk~)~5BjwY`wiKmuEyD(Mh@#f)AXlyV17hq8Ho&#H%XUd_9s}+ zptP1;8DK4YB^NAIR&vhLcf^M3oYj$lwo3i`yr=vbQm0s>kq7<`@17mWltQyM-B{wZ zTTpz#7YsrtKd;{sX-{QeB^~aRuz313rSmZnHMeB4Y zy-xa!`}gUjodOhVJY??T$vu76z6W^ZdwQzRTQ^0he(&j6)Cd2|}{@0i0wVtlvzCKbg@dpQ(zPG;hg&aE*{reCr9QC$6C(X#ja6gHJ4x0vgqBA zmESfkt(B<=L23%l&cR)BF_Z|Q>m4bk4SUYsYu?(N{FTKO_Dc513YBv6SA<=rCo$OHStH*n;a&HlA}PoZEhvexWBg4`58;S0@M zJP^6k2u;tb=qp&d6*D1uT%X&jk(y-$9S6i%#IvJ`D7M3UbN0I0fz$p6HF6&`cBt|0 zXdork3weT7f?2iQXM4R{W@5X8nWv$Zxtv+J1l|p}Q5FS`DLajK_jt-ux%C``^ZJj# zV54mVnFPnH*%`Chze7c@cly^swSB!jIoHo6v?kvG z)z{G9-gDPOdVt?9<^Sdp3nb9=<4Vpy5{d8?X-xbeBp@o_TKh-P!>4J-Mw70a>6wc% zKA<6RsYJ?90_tXuOX^UwI0dnL1#qN^F`L()(WPX`unUeRr@^ECGl9QbD(s4JKqxKK z32^r3d*+SRh21t{RZ#e;Wz#-0z!wq zi)FrZW>|?c|Bqn3bn<@@RG6&!R(7oZI*C!r*T(-j_P;2xgGNdNZ%fvwJYijoKi}}W zI~9a{`wAEUcPmYpXZfn(7QPvzBV-zlR%d)nt0G~XAs43ieI-BDHPGYt0eYKXhWoZ7 zpgSh-?h;v0y$7NT9`4N0%-|7iAgVZq82t^)w8g-X>NS9e<$vtoJ)5RF-zKH%hOu(2 zW?LEe@9C@@!wGoe=->a9$Ok?8Uqxzhfuz^b>S>8}bc2vPIYjR44gMc~Y_*mGQDlVQ zke`0dexJ?lMtb1vIh%Bx?Bn=(gVtib0T4e!@4Y^POQMB_vBk-?Pnl9EJ68S)-UVYz z*)aS#Gq>uPg_oUqoVkn`OE1nfd|k$JEb2+yBj{6m$KyQ4?L>;#L;Zs6a>q-S(f8UN zI)bQWpSS*wzaF_aC{fdZ@*D*BR%uvx6&<wjMs z?%7)R+XAd#FQ7TjO45*cC$`77Rh!u*&C}Ut?o%|5)8DXX2wMqc3-r2Of;0R_@UK0W zy6CXrTg8&`@w~UjLVTYHsHF|X*vIO8_SThBT6Rf}@Jct`lV}~2S^%}1YPKvlFp{?~ zz8~0SUHkb*0~6&7)t5SE?IXUvXu7`pYY;+PiH+J9H8rqTmPrZz#WHm6pbSsQVH>JQ z0j=oo?yK7E{jIR{w$yd&EhZq2S}JOHS^M?r>rX+aJ7Oh2)=I>y#W_}XO6PG_D8CZq z!O@pKquPeR-n*GrbX;O&_t^%Wm^cX)ON4v<+QBqU=)N9GI;iS2O=#-T8vbN~)AaNa zY)L&w(Q;P9%CqJ9GQ3ZLKnKX#5jNjEr$;Hr*F>k;-d)I+PBp zT?A#uI_F_cy6gfcq{f`?J~$H?YG6H@{6`?En-N_?_Soy`Me;?-(YF+@PbEjJ{l_04 z1_fa+iY5pHR3Y5WW0gR4b4q8kBc^S1G(=FR=3BO!0ul=Y>lat&lSU zCxrG(t#fXfczuMqJ_()$mA$X|P+Xg4h5MYw(S}tJTo}-}MFDK-uE(Jv)LmvizJtPx zze9?2ai~7g`HB!i;3@H}7%GsoDw)zDWps_3#_Zr|+H@F`5BHNc0UJ+drMn~c&7ZcL zk27<+H~n6S{vrNwH_k1-;cKRD@UsdOEX1AHRy$q3$U13aMg3@8^HCM3n85r1lA1}4 zw%>`AdW)vq7z=xRT*dn&m7My$YvYe_e%M@OZ|X^XeEf*7J@6dAGkXjKK$q%IRtD+=uELF5-UwG*Nra-kG-w-)*W{K z{CZ`K0`sf#eCb($Mi$jHD|w!$bv><#@AE$WOnuM ze*{6zqR8YlAJtn6yjVN=;{uay?atqDBuOZ7rhm}f4Bg=jFJ!&>8AbpKtZstLyj*T z+_&nY_un?__3@-2S%U)x*oq8(t#fvck>Fna8!ahTB*{(Bf6gES6AZ}s4a5WuNE6^n z%do$IL}yrg$Dvy-g!*83k-E26cDLNy(Y^lw$Hso%UQX1RMOM?sd|=s|MRP3G7v<5B zuk^j=f$2p&`@L!J#I;L@=F@cn{v1l{FmE^b=Nopn!9+60d9$YtZE1r;!#j8y+>>AH z#)l>xXl6cZWGG~~s`93A<2G-SYNPZ5x@M{?j|OdsiMVRX7T>b*rL~kSg-A&MvWZtTWF7tktrkE z$9CY5T<8Ov1(RNMn}&^BW6wwj`0Fu@@d~QuUEk0!1w&Da6jCYYXO-;huDq!Js|6j| zsS_TwF?l11X5GFRdutS-Vsz@_yNB)_m2ln*6vP5c7x%`;@Nq#sB=SSjnRe3ArHYH| zV!)>jg-kPMm9MVjx`>N{*^7rvollEgq`2C zc8xedQ_yn{yTm$mS2J1vRj-m+&3LQFnmZQm%~-Jo&P?CQCESBU(>FKcT$BfHgI*x} z&3LtbH_5yj!3NjvX?uKKP>3kYjNn=g*D&D6Pn4i<{ zwy1B2L7K@ESBb94unPPO%5FC=fG*xR+RoPEiT>dPO}`HzRu5x{qR@SHo8Y`*PdM&w zZ2^T>amvU%LoI|3&+9jlc8dp+o(G_k$X~hwYUL(K7^w@QI(D3joFYHE<{WZZhhjZj zv;0{TVQ;A&q&HLJv*97V#636nnB+s{kZH30-2QfxV=yaVNucv2RYYyW86#}zX&=mW zX>jT$!nO1x1jfn$F89XiKq9M)*AZ#i!z;1BFKJJtE0PxchdP!Sb4Jkp=A4a6;%qsY zwnytvB@ISsIuEZ{rk>!0(kVP1D<_B1X+ZIX*{Nss=zikkb3ClT&u77Jd|}9MIc^{R z+ZaTsTp|dDBZE*nh%IKh1aX}>|b^2yboi;2s?S+ge-zo#D) zxDSjH{6`=&(Xk)8)9Sn`g#<#hB28Xa2C)USr7c4r~aZ>UxVUK=L3cut`%ZdmbF3al(nY zrkX*eJY2-40juXDP!dqjvg_JxCp`K;0*az(#OCaw`_|v_WA@avt-QvVyp#cP(!t0< zffW;p8R#k_)Np-lzN>SUEO*+mtl8IheHJx6eB?6Z_AF{T%yRUQXN=5JyxV^4@hcW3 zgf(3iK1IroY17tq0q1;kA4D!b>qmtx)%*v2YxAK}e`)MgNfGs@n1}1DWRaMd8oazCmL%|M zq#=diuDW-8wCx6b!Dd{Fi=Ig$X_+bdUR#G0JA3cK?x0b=TP~7yNm^j5+^n|u zY5Lsnr#s#B(dW#FI=N%^wY42|5vz?5z2=DWLbFV;;Jm}mPrn5)6QB-_$9zYt{B}qi zmh)l2??r!l1v`nlxLUrE0cxWnaJDFge5NmjWp^samZKG^>hKafXNc*Ou*R2YP#1z` z&(P!7vdH!lUx`%;<<#tkZ`o85-6J(}+9U>|Jc{4@iZUs*7haGP{%NkNttzF{FV<6v zM~zO|nxEWQ6r?TR15q+5<=M)Uw=*9V&vIMMN+kvNa!($Qjqzb$`c*iBg{(hwyVM#8 zS%Q|oC%uCSFPZ>MA@SnG9ji>y={soQp0eL{g*~yrmeQZwOo>^U2Cv>Id1eqU)y6Kg zi=PLI^lgtoKEpbsswb^cVEkI7^h%Xv&|zhF(1kWcBUC-pkp8mr6bplaIOndTU}fUo zT7)&8|MR0Hoq;Ru( zM)PtMemCdWM0nv|nm7%F@V;4Mwx`&(QOv2SWfhJYI8VQrri*O_Z~A<%p%RT%j`pma{4o`ETBna5vx26p%wyvIQW&9)W%) z0bUGYtntPm?6L1%Bre#m9N)XpKil@L?WgY3W3Jo|J9VFKsl5LPvURsuQwskhXpha_ zYzg?_b7ct2@PorTM1C%1NBEdi!Yd^nM#N=ovYUI2je~UR1yDM! zwp*Q7z>~f{F8|o*PW(brJVPO|Rxdk=-d)y^dc^4J!VX5R6~&QL>^a+xnNULx1&$S4 z&$K61@(xw#Y<7CbfKRg3bmPu*27%=VO7rmRAw5bVfYI<{)+SK4^ux z-y0YC^TzE=LP=k)!i zfr##dfDO(H9=JafV|}@B9GTs>HUE1*X^g?>@oBX2r|3o9J&3jjol4VoWSQ?I7+ia| zhR&iK4#OIvEfuhc9P%LslG>a{cP=#&1Co}bWrX|1>`Zs)NuM|KtZkKA$<)Y1xvk}s zhqQe%F5>jB)Gc)(l45$;GcVv97S_7F`uaQ&_< z&d!a?&TOz4^*VsqLYZzerI=8v8dlXjcdjG5=p-`cS6xNLpVpxe8i`I~3@WPV&K4!7BGFn=X@YIMmQs6zOqviJO9*KYWBP>+J@Dt* ztv{=>vm)whm9GfwJwgGq0Qy)}R{u$MLI3DO{sUZ7Wc^*ET8{bAeukvw8Zl;uxkK^n0JT zPAw11?f(vdiIZ4z$JV*ZtLQ3rwNeM4yUm;@k-8`4x!Ng6&`JVe$le&1!=z#r72r9m z#Q96@GnbPOX^10!;+BWB1NN7%`=QN_&a{;5f=QG|$?8C{QLn|DH_cHE{(4=6qn;y1 zw*h}BfB10&miXqsj&T!PkJHUP;-%1l@)91t5L9EJln!b6S$1kU1!KX}8{(|7+6d3j z)-w~T^|(dDB!)+0Or%lp+9Tk*{cFfPyORvSHB~sa`c|wlT2S3b?A6z#x%-pDhQ58g zOpz?8$``SH2vb2wF@SP7iR}$+6#AA9WPf2Rx3$zx$WCy} z;Ntn2MA2*|Pi(+?JHhK)n+6+m1h^zot!({Lv2y`_xLROyCST@B*OSa>Uwa}!WV34X z^9^h#y}v!1zW2Vgz-Pt7i}lqk@wQ*I19RFc}(KqnImG8nG~7S%$28$`1{x!)a<%$gdfR%T2hcL(noO` z{7>t61~Vw<$v`UbQ{e$YM|-bKhEGv&n~kx#R;*bw*0wwqe4t#AH|)Bv6YC6!Ul@OF z$o~OKnNS~7)FOQ>lh*r(E8*+5?9_g?K@d4Lo14*NFYz&9wEpFE#q<@YMn)?_ZqFrk zjOwkL%8CMChQmAno7R%~*J6zMit_yE`lOJ7*=`yyMAf zSmpZC`qI~Z6Qw->NEpg7Q+B>>Pc|`l_Hk@5`SRgo;1KjLrMcD}hA@I(K_RH52D6-j z(!Fcn;{tjsdnkX=@WQC(Hr7aB*a_Iv#%$$ zu~8dd<>lL5YPJR2`WnU7Tg2$eW7Z6x*{QY%U;?NNR+5VK3F@e&0LcW=%(}c(m)>%a z1!5qbq)VIJ=XyMzv=cc?rRkVgQ%v8~JYZoYUy6cvqQ#@x9xtY^giCpTasoIpqTEcvJjc~F9*MV`>;7w(J;Q>JHzvM=bsZ=S8oYTUeQ zjU**qC_P}5hlid=jBsiNIJn*Pr`<<7$Lw~|vqoiR{va~c%&ICb_!p*_YGr_;>?Q}X zcp9prS>wgix-`QqKAC*5^UgW{W*69^AUIKs^FrN$I$-73`ADy3Fqd@|r3M=OU;`tC zb){2TPKQmxQ0AZOtp*yzP|e#U_ohWSNjns>)>QHUQAA>$A9A}pOHmF!`NjH{D8@Fs z=C(2W2e%C?;WY2-WWrq4jHPQ=>Z~rJ>y+#KtA^e4siUIsz@mYV(V)3_t^Wvq8f)Am zA9{hF#q^^|(@#a?ckHR|L6@6)pNVr?UyT{*{sV#;z#w^)IT92CWk!$;&xmXqD`g*M zdVD#1q(tg~F}=^gX78zi6IBZ=2B88E*v*?u{v+s~_JTQ-$q<8xY{l4!8Io}_qug7H zRGKbBwsmLsrn|JEsFj%)SkMh?QP&9zPPS#X{LjhxL#^He=JVFrJK(LCk6#-o60 z6uJbSbe#|XG<~hO`}Jn^a_n?OSe4e{Q={RgN+#o_qp!wqgHvU8Zl7AG?DS1^Br9xS zy;U1q3Ip}R7n+beLDhwZ^-`j)n3i{Xqgx7;%vG-yWuJ)6%B(+QS5=)zJw6d}k1?lmQ0Xa^6Pq!Zc z8(7APvh=`Tc}e?kT{?x;UieZpHGfDj`zzf*ImoqLD5^wF=-J1l@H|x zvL_%=zb*sVT${zoLnQ^qZNmom>=E??yb8}*(?&Po+{eyu%#M24*5#e11|TL@=P4Es zSF7NGbo9JdrvPD~)dVxRelWD$F#*4*T;D4F#h_U=N4TEM5u*ut>8qy+XixcH5>{(h zyll@Vpm+%sviOs|%+IC}?4!=AS$rwu?%~&VYqNc?qt9%jk&>a+-JKT6fd5dCC3l1UI0}sB)A+=<9^G|9Xm@m*^2BA8`BON5L{dC2C?z0r0EM11@0Q zfE7U9QDGXPFpH)pwlj(O)dlmVDN||`=4%DnVAMT`TVDj=4|=nv)x12T1VC(i{1n*lO+sFMUGuHuYX{V;B19!11u=Z$ zB?L#Etn&u?5Ur5VN3G`>XG)rF>!}VCw!sP_e>hS^cvUTRB?3dJ z-hmzw0Zi{)Ke^J_4MDCllRpWD3lp@FUw_$Q8Zs;eGO)XwjuR z1$4Q(p}K(3mJe~vxeQ=;&FYLF?%W9`icAd^1l0xE*O-_85wyXAHKZEf*QxWY$AQm)As7~t zN$@~QZo{5bIT3tLC-K9U?*l6JmFGF_I#>XRvP^)|qq^Sc?K2jI6%YkaobPC6sZCzl zz}DDj<2-dSG+1rqa+!yD@xduVe2TCCop)9e6}`+m8F0~@lmIHPgZ06Jo6P;)M!Sgq zBy#%h)Jqp~Q1`TpP7>zbb`I-NrWqiECZR>oM!K|7v;rSNf_e<0$EId#CQ=JBqyLr1-%3G*EDq5;O?dCF6o@AT{vb+jsxM?1(QluY&RfO)4R` z1X;bw>nBH(1!~_oLx2%}#WSdzZgm$0A-AAX}7W;9dIMb_Nx+PBLN zSctCH!4FucX89l=-%r%`Bf``5S8wiLrA7-5QN5e=5lo2%MDU^in9r_*mHDJ4eRc_!5mVh#=k!( z=etGam6xR*(@+T2#(G$ywc8t$eBYCfq`3R&vOYL(D?3zSraak5cKxA{ zYO;8)oZR4M#P>*8GM4D){SSjOsPk-P^+ z%^B4jRVXxD3ET-37yJeau!Ykgn&Zq1jP%YA@We4{h;b`|K-d5ND0j$V6A(CJso_79 zrZ%P0`f`TpC@od%O;sa&*|IIkpO5*g0E=zyZXS!IucYqT3H6LNf_Ap#8e=T}R&~Bb zL@a1ce}H}Hi8O)m=d&&z3;xX~y)J?WCPDG~*BNySk7FbfD8O#rPc;rR^8o)@4w|S_S1jy!w7~k#`O^4kRS`rlr~)zWDc-lJ+_EUe`utZ0 z*Gmleg6%2IROAFj!n!NGfInULctk%df;0E=|N44m1yz;qL}~)U2!bE$k!f7A>;5$2 z1(d;kjw*69@y!3|Y`@5-N565Ra9+r#p*p+c8sl|+_R&pByAjc*F(!0;WVSN#;ey9B z&aiu*;6XM%ku#}&m%BXl=KL2RZ~2gXrGqqi+{)oAMeS@rb)~w?1ONBu&xddy z3J$Uco#vm;O5gQMf3Lm-vBrv#)c>5)?c{a&X0UQR>jY( zd{_}r1Z==YI~Fg=jF&OEB?dgt#4dqJ%QTo#JM+NIPr@EX}2o3$vLMm%Q3>& z0vX&-aJ{fHKYge!un?fLrD3&*wsUCWb;*q|zoWm&9kwEjd>h`MXKDntTmmzucvZGa z^YJ`R;9X?6k%hkiFtjLDYs&NZYsx=v|6eUP*B@u~!WzyBX3~hcj4zPO&lPi~v3rJo zeE$)|Om*ER;u9kkIS)*hWdb>eb@4n*X&(g@NO<)_Qyy1q$_Cl=lZlZ~5K(Hz;)Smw zZn)oHbJT74J{+L5lu`}4-Sjedy`~&&Q~&oMGTlLJY-_~N9!oI~mATQyX-<4Uq&9{~ zaGi_3?Zb;dLrBsb&-_R|XK>vv(&vNJuL-GY9Imopchql6DM|!^6Z31+#yL4e1=bJ{_gF&5N(j_afpX&a5X5x0#ysW%nW1A9!5?sx+@5 z0c;KZcuwH-&BD?CGk;sOZ0pCC=)chDmook!wofnxxB~IQohGo3_kPc?!?aj0lum{p#HSv?phR&oP*J?VU%V{-`Zb zfs&#{FNrI1LMLen;7C=dD7uYnWy9|N#0I15jHYtUldGz|^5MG$TRH&X4htsJ+6_5e zZ{=b;0ny>yvA%1xX6qovU4su{GYlsi)YoWM4_0XsPs_-*wSqR1W^Q93D@D8eFM>&^ zMSL7~(txYMrOYN^AwZwHb~dfg;zLD9tk-A(^phoG`G?{a6`<=k0gQ!^J6KV(e>k>W z>%V-;*%gth089~EkLM_j`%`C4Dok55zopxT(&A&n4soG&)-ua}^DrxVK`mnM9jf#^ zA-%nXdkCbY=Lv@{i&FXLCTc3Mg$N}@yV)_4_pR7)+6{lWb(JJ2F;COtx+A1tNjfqQ_=WHZ! z5d#v@+3(_Kk2~4M)@8so=l5PHcPwV9bG>g-P`cp7mU<|W4ug>qgAOt!9QY(c2I z07}aj8v|Pp!`iPOn3%$*t-ntg0WqBJs7ko160q(%&MQ1dG}-Eyk%9q48q5l<^q_4V5;1u~{O4o?T* zKqh%SSzaX4`WPjTFA`)ac07K~0O&W54$iKmlS_w({z2pi zt%oswzj=;WNIMPqejIf(K7pI%b>1a5@cnIA4h|);VZNp_o4V*jYV2!ykJ@eHCksGG zEsZH`n9Nr`fZ?R}cLaj6Zb<%w@H+5uG;m9<(+?`b^R%IgH%w4kENyOi4VtZYA!>g! z^vLvUov8iPA7=#w8%VpEFw=X}R~~Jy+x+Y4!f7M{I8fDF~1)lbL3Szek zu6xu?nCWz%Gq?x(?FJ0xX}B$I)+vU5#FqJr;)BEk@%{@U)UQ z^DXDVurs|;BlDz(bR_Al!02_ablgj<>IQVET%!Q!Mkh86JSU>DxvY(YtddA8+jqaC z^qt^ebCUOVhj;QV^7LZsr=@i4k-?5Ba=bYH!!bL9UMvo{YCc;n)J7p$o;(D})>Zy< zD|N2rk$&?cT9{~(#jk#BrZA*iV7XspnR=(eLi_px*W(8ZT`!=!sa{?4Wp-(+=}#{I zbM?h>9)YQuWTVl?saH+uE4)`U$QWqvB~2yN#>N_Lm!cIhl~`^@$0wfevA;ehZ9 zYA(IhoJzGDJMO#DqU>y44Efv?daPQK0LP3{t|^x_f#^r5bQ;1e2sUYv!PY<4f4f?% z)nBdbZj~kv@S0}jR-#t{)g1PvWk9o<(DxOtibhoM-ZQn1k>zsV`A-tQD&|0d=n81o z4H$ZzZ5TNUtV{L9x;;d+?Ax=!#10I$)> zTk2h!rT%&f-*kQqA{NYx?*p^lrnvcP_q9>rUjj{5*66FV9vI(zAx{h~5r=t3N(`;O zE@wcTETXAvr+HjW_~jKy#_(mH&P`aaBCyz0^YyXttkHGdM14Q+b1hjCG~Dxcp zOh1+gB}d6b!yFM2Nee|$7YxTz0y%PzC4vt%|GX@IBVYYimT-$bi7j?Ek~?d1`J*1z z^4(t)KHio#Bcqv|_%kZ|Q#dUFF;PW3v+l27+cx~}i+>II1jjp(Po97~83&GWky(%S z`#!b3x;yt}kV9IGIB2hrbfQX`Q~cOf#YvB93>f!xk$REu(X__;7gIOfLK`Y%RJ$Bp z_m+EJAAXb-9&kxVg@$ z-ZPOr@&?KemLzm}(d5YJc(h}?cVAFVbDw$fQ>$`$>(gUUC-3SHK&!TzG ziZHg=wo?26>~Rg`C+Ja^!LG})m&;)HQB}PiN&P$Tj+dL6LC+eG$94x|ziF~N#IfNz z{^9;minDm)G^Q>PyN9gY^eJ5OOE@@xM>C5dU+{h?I-HCAD_TWDH_v?NQKl7^$(FUNYw&gmk|-uB%S1 z#Fdp_*SHN7l8Hr3Y0TR=JKsoSsRBlY`X}*MF97|FrQi7H!oH0*xLNPgf#@6a+Z_wY zHqW^&Mx^=1@^Epj=wXwcV6SiOl8Q`$b(-yu0=|PUE^QvPnt}^1Rs-1&ivQQGccnId z@#X78bb_fCO*l2-ls53ALZXuVGbQEqAXy5Qm(KxQ{{sbSuX3Hf`Ryj;?D{i{o1chU zVbJVg5Pj1QkXcf33p&FBi%TkEca)6lN~GU>ac65- zSov8mkhB%qB;=#7dV8L;EJzI^+G`cL{e7Onr<1h4GOPV>MQvu7Hg)5S;_fGS6Rj`E z_J#{5?n&&iz;I_Q|qxW1-a*-51K+Oo^sLCU>W73hrX+ILJ#=yzZ{Z z$~{u_g>&`QO02gY{M0Mw&8?5t+X?(i-S^7UW$?#W391g#;_F!{doC5p($y1bo2cGL z8HYz#%xyoxPq305ViJ_WZuZamaMe{6;i591$>XtU2T#_D+0)Z~xqcA5=_8sI%Q^ZG zuEf&N>qNTFqppV$zs=uinwqbl_!^>I+m`mW*5aAAxEQnLdEuS`;dC5EZ~2R%6?8`I zW{KvOdo*fYTF?NsU0SdNSs;&MrEwePFlsMi7fQ$F1)`pUx-n)QyrpgnOszXntn49@IceOfo&~b)q!V7OcL$Aq>Z^ zoZ!i*etRbE9Gcw6dVvdER`*AS$AqE)AoZD+>rrd+jU1*5o87kS{R|bAp5?W$!1O5l zKZ4l~YuHKJ&UI&NtljQ)Rn685+I`>HZU4xTb`xb&S)x_8@Qr3=^bqnSXe!FQS3){{ z(8=`1KqwDS5d7;Lk#ZtqmKEm5F?sCH7Y3qzFCsGDe3m=p41FH;sqza;>?eZzVqEb>`jY=-*fr_L};j2h2a^?h`Oz zO|H~6Cl$SOjwmVvgO-K~u+{T}X; zV&YMhfm_k*H;Qd>T#nBgQ?i6zdEQXxD3O>S!4Dw$csi`inj_I8s0@;qNjcGzW?^38 zFaC|WGfoZ4i5@7#GTkWSB(Pz^>2=-@OpLUoRO1^M-*UrRwp1HjBNN%C;Ere+z}I@Imr?7HPg)+{5NHecC{5d6}&umaWS*x zNZ6cqy8&C6yK07RHw~+ivS=)Wj8dzeuO858eE}q_;doK-003|`!`gnB*fNQKYm*DP z!FIt8OzyIUWlrV#Qh%YW|hwX_XDN%|BvH&$A`y?S}5UYpn&U6yR=*)aB|eFuuSU2pjJLDd@FYKmQ} z6h%o8O6zhuZM5H?JF1~`O5JoWqp$DiRz6bk-ps+@826FM~ zqH0CyD`@#>UDJ3UlEZ`BW!vBukHK;uS1x{tsws6Ay2ygchg~IoN zoA&JJHMcz-3oHZ;TSNXIj?OZm$^Y%*LsXEIZl-`D-5oDJf}?31brxkerBs zQUht}mTsmXAl*4SH*&z(@45fa3-)r1vEBFgy3RSD6KdSmCh=>ECu%dL8-{8@^Sv`- z(d2HuRw!>rqiQvKZsJ-Hw6NQ}6Uv$aj56aRytTpu?d~_8h>mxs+P|lf=;Xm)BijV< ze`8Us1lyEFZTRc@s^bE~tZor{U~XzLPyS}oU#UAisY8r{(`_*An~83nw$Fr|CC6f9 zlY`uXZcIay^w4v{ol0E(?{Sf9PT0p=T1+QAf4S6s!-t;1cCkWdHrU~gOxwek;g;=F zGR;No3kQcbrZ=R7#K~LMl8saN*67IxL-;P&Uc`~H9Rhvr_(@e0mF5(ttG1}gCvgR- zvT{;@phV-Ig_V7_Iy95p(0X|yqq8QlUX-8es2RYv#VRg z!DuY+iqUTHdSz_y<;fkDjnj+LO<@}aNNA0g%-hrb48 z9=lCR?y2R=bo9==hV#LgsWt?ac_iV@buLT_>)Kh+&p$;lhcdlsQOT#3+?|ECvJTnu8vBKIGCw|0 z%%3@S{3l%}ER5m(w4NL-sU`o%C|B7rX7^uaxXiKX)=-3|en{@*$MK1Ozkb9BWmGQ2 zJdaRnw^X0}9Cs~H?AM$y^$!P`Ejjb9yUrmzOtQEzvy~g;aUQF%-q-zhneK)>_tPIE z+zQ*WY~epszAh3YP?phtT%u3&lqk!Wwe(!TPoMdbhIt66u<%o$@54>kb@s2`KO{d} z3qfR{{sO7pI+wjNM_jW`sK18A8)bhtn&}M}y0Q~@Rf~MD!ExcJoMo(Edp7X?-Zkm0 z(*;NuB@6+Rre2(sf5D~Wuz9F^lR8^63&*Qvdf#{WR&3HiS-HStsX0jaTo)W?y(Q_mf*A-*J2i9rDpx7`M^OeFgN#tTel(|&_<&XG$E6ZEZpiRUx8OY>|3kUjhmi)ZO+_&f(q z)o#b8YfW3#^Bj!(5}tv4RJxV}`6!x$0PG^dxJfn`@yRRj;<)Db$R1ylA<9gvAA>7L zpuyBF960~yZ^us_)wXIl{|!#A``H-~Ki&3E4)ekExKAS7`txej$y#ffY|=sSVYu5w z_zNAPInWEWy8sN#He;TFT#5%uyOg!`kNw|tJx$aaT7RX*%j8pJ?Tf~5v@5qe4acxA zbhl{hLkes9B_9XVRBj>^B3vN-b{iufTJBTVs)KD3= z#_XGhg=n4NCO;9XhA3lNLUgL`-?Y0abBDYm-8vJ^^-)}mIPlEvQ;B=E*^d9e@H4{` zRjuoale4jQH(Jj7)?~jTozEAjfFxFp`5dBBBj>DrW=TIv;fm{YoNP|=-8Wz#oP31Z zKLq>&uZjOs{S(7N3T78*VWfcSFyhb_2K@7Vcd~-IhUvCT{my2)b&)QS5`>YG3YNol zY^n$6w1GdD%={%r`31F%0V7G;h4HR1r0jm58%gg?0JL05eScR|O+t&t6{J!;T`;-^ zu$S-jlIC-5ktX8CA-LT~oKD5plhLeTLI8YvmDC_amuQ2ZV$_$B-+bwGStlbgs|)B z^*GwpERx@7(wJ)jHKyupv8xv2&b0u{Y|C&_(e53KbKZ2lUX474Dy*{IU4%Pen0u$k z(W%}wB1fnTxmh1bwzxmM!Cc;X1ttXHo(+dgr z@qy6kI;}OR<%$w{j^<1Ln=Tw{^Z5Q^CbTVMv2?+l3!H<_>Tbr5ujc+UL<;y{?mO4t z0&T2Jr<8-J2ZxFa1`4dLmXs|6n|mKpu2V`$!G7JWS9O5?DMLoua$aY&(YF%dER!(q z)S$D1uAPufKcV7>VO32JX@#f@N!LLX7iM4(@$W39#5hpKM%tHplW@E}>0{A(|G?Le z?vv_YfS4NMJ>$Oq9D$94X@8_q?im;6;9h}Y2qlT;A8m3OgOrt0dll>k)KAE|8f>{e z7=faw?J|dK2Ni)_iCdgLycnjYFW-LiCgeFeCg3XuzrksU!%gcQ>0L|A%7)l;6L|^U z)p&X3d*SHAW%82klq769vS*1A4uSt=nGK3ORq@usMW$A~QDkn1ZXDeCT1h&P{-`H@ zAUO#NigS8372r?dV|xO}^cR2C&ui^Zg}aQm*Zl{I=IBP$m?wxja5y#AS}`f9zcLVf zGVe=}glq_{Q1h!r?sm4{B0xk{2TDCEt*t?bNw0KyewE1=ikIfz7$AQOdjm8D&dniM zpgTgbZVZDq%;PsdxZP%>OObhc)$uChNN5PgyXwh-w!Jw@02jOGc5{pUdu=*)AgX1s z*r$bLyXV4si)6@zE(^3CshA~N^VRnEX->*S$I7@I|PqgRch2GnG zZjg!3dBqnFZot2|Nt79xb-Qa3eg=I)Yf8$$OVoQ>f;Oph>Pte<|65tZ>pEguxow1c zE<-bk$N){0a}YSKBH<%Rf8`GA-Dl8>nD*swv(n~hQ@lT>%%Cf^U&A3^D`R zZhk%$)I}xavRUl!O|u+F0z>s`)l+iMs4V&y0C7< zI?}v1m?Z(mi#sRMZPy(}149Xs2I>}l@gPIwFKSPn^M@6@Q+;zyB~Ln!|k9J?R>S(m4bMtQk?K7oCU{A*~;G#(MjX*u@6H1 zZTAtK(rrx8l?O?kvwit1O8~HM^A`+uOTyY7$>sJ1+e@&g^K3i$vy@$Jb?f9_)Gp ze!Fkzp`F9>_evahvM-NKT6C}E;G?LT0k(kW_(L`1eRyZn`TBX-`|m1*matu0FMz)$ z^wU-ag=}M)dj^Yg8U^C%&%7?QLC*hy+WuSyaQBN)(HSw^cm?jCY0w3 z()NSZD&HluJzW(pyrUp$GIp#Y7gNl7HK{Un_6+audu0wEn?)g8)ZdIkgVa)#Fy8m( zBh|EO>v`M$WjO|a-BfD47RF^&*E0{2e0PY3yc1675G(@s1cS)2Yp?euQTqBSgUdCqJ%^_1bD%J7=X2wsMG{cu`F9`lO>G{hXJo7$%5%?fvo#K9b1bAVLl5c>hU*p-PlCk6MLrTvbnu&BD-)gw1IxdPIRF z{0aWgRgk*N&xXi07Prlw%kF;9B$G#@YNHv{l^WmOkUmf{PO|;*D+hx2BrF6Yg!s^Q zL)+_6lwViRw9JZHdN9tCnQYy3$mtD+myDt?s1kM;4_@(}iF*18%~aoryRkucw*PWW z;0^hoNYFdeVK`-A2N~%u_8X@vbDXbyd+ZN|(PA@q#)&y)ezogQsyr~aNn{*R0*@ln zE!Fbej!#h#o0YlBzSrXeQlyfwzW(QL_ZZ5%Y|teZzRiIT>P)%p`}vL6Z0f6xj=^~n zqMsJ_NM{xYiC?R$^%&Uv)%pvv%ndae0Ep52r@*gPpiLTr#LNvMl_8mx1aMni4xfLxqQu(k2wT1kd z^R>y%cEsk(wLTY+J*DmACklFh8r`m}+CXuEN(>|t-xUW8zt18aE2sW@DL;AG z9&>1&T)u!Traemf4@6QvujKdzpo;mx6*@1+2iRV2ll8aMsxXD+a7|oW%!TNBu%>WW zIMznoW|n`!6Shajbbpx>tfNQx_gBK&C@FdV`@*e1PW7r**AW_Z z6=X2UD6`=rN%I}qWN2WBkZwM!oK_7;$qTqSTN0YDtJkEK@D2;NZC*9{v=SXzuYC}L z*Uz!9zu6Q2RQEj<;(Qt+SdLKhIOk^ad=&`E{54DWGRE*AxJQsD+A#PL$QaEl{SB={ z(i?*G-!$v46ma`r_sff&=PwkE7zRO#F9Ip%USbyU+$GA ze({xG)q*BDzs#zY68HX6}Rd)@dhM2(dKy;qr zKaefE0XnZnq^~%C-im}cx|e$KbmD|@-(2X+9<&bP|E)smq{a7Qbd+RwPy`mUfU;!- z4CQeYIn+Ng!!&Mzq|XXLfK5I7#+T1ou4HMToH8qpR>_U~LobpqPr*eM(l2C@`N7>F zlc|&)@z59|RN{St8uvoG&S6(WsR0qwV#EHWso%-~vU>Q-P?dAbKsF{>z&}>x%># z#C~>yhf8?DLNDh49S0w9cRn`m0HSTrA)GrbbSM^Rx7NSXKdMf_!bUdw0}1bc)0tdl zc3-EBUbm~VZUcTJA{l`Ti->Ui)o8`#t|i=a;FRUYXSBx5HLJl%MRF7t)(ekS4D5x` z0(%)2lNBrvp?1-2 zJTQB_J^K>j8QwXta4TWOsja>t(8O`j$vGF+LvE)phte6RaC-7@!bHArsY1+V-w7BH^+h}W=1V#_4UxW znwB+IUwfIf7j}^YO~SbBlXAvlF)LMd|6cQn=E9g(c;z8&=}vk>P*eZ8w7FXey=L0^ z0gkaNhPR4$7EIdLbt>pfXE7-a-SVV=0({nla( zyi0BOHFh0WYMDLmo$x%EeSFT-tOArx1+H>*Tu$}0gI!e_8yuS~PJS_c8n$jGcT_(y zCwPptuw6+J2jMp}J@=$DLsloN^JvA+Qw>v21wTBZ_z%?DjH}2)))tj7Bhxa9jNckv zA>;1>fPdbfl-{>sl8OhVn`aSQa%x%;(u-LceAxm-(J7(+D~$H<*vl$rrsFVg$DchLc33VRHiDJ_VX_vM zRr!-ofgEo+E^*#&GoW6P{`xA`qk=6e+@5S|m9xbMR^T%ARrq1bZ9LmIbKl&6lK$)#uQ7$gO z$yA8-CNd1O&HkYY$1%_8jH!b~`%lM=+UpJf-Q6nmZc{rOmTBrXvOTRkmPirIt8GpF zTn#fz!K@IAOP2su>nWBwF>gj&xydZm!QuN20j1jn*dI8QVGAie#ZQu_E^l4KnCp{#?+-TasHaW}dXpflHv%C20!F=ZNHVMKyt2TIep=^8+3o06B^2^GH;v%W7G0>~ zHl75CuTiSSk1Z#w+FP>l`(avKUq9UGKT+5|$p<;4-e?hZN-r_m%-${U zT2YF+T0#XI&~I^*;FG;7q0QawW|b1}Wpr6L=ZL%Fe4)>rK)3Gms~{-OD;qb&D9S=A zq&}42NY;dI5fVskufy7bb0dS4E?Jb-^Y4ud1v~z|$R8}u;PXNM&;OflZ_Vo1LQhM+ zMGvU^{;brv+%w@nuCRMWYk%>g=+{;5QH2doPor#aVkj_mJYj+@bJ=d@aJjvU&1|>3 zje2DNFn8ViLF~S{U}*l=X4;M^-y-Ouwn=_Q2t&>n{oL)ejd76tjqG2Ik#i!##jJ+E z4izv{0G36v4G~vb#=+|jrSJ{PDyR+>C@*Y1fk7B0li~g|FJkmv&cwVcaQoBKvK>C zlV(Xw$t12)n~Lnm2>eC0y_fqaBez%*A2D8^>29A@RVA9Po0nOu3lGN_cUI)#)n|mXKc}s3`TLZS~8*Y4r7ltV-n3&!t8TAX7BKiu=ykuvr zSS8m>*=C%FrCt55W!$mFwv=`JkT&1EK@#EljFG0iIq9MQKCl&wNR2!xQ@5TJeQx$y zAnl#SdS<#!0T4Q%;n%d2osEY z*>&hj>8&EM5R9$XOpf4~Zpr`_AJoAU>3?x$x?1QX&8cPaU9t#M%a;6{J$18G!$^Te zDUtvx9^S8HWNzo%C|^UR8s-6d10#Lyvq5tj?ICUcjI4HKdqt}j$7D;ukM#8!lntw& z5QUojS<#F_vA)s^#&b4;uUSEvL!<5511-kUp1=}SL;KH^!8jDQC_ke9z(iOo0fTyC zpnh6nm^9gC6#KR?r3h{YPVlv}Vo>owXqdXJRAGZIQ%$fwhMmzo@xxZ=! z#pc<*B6Ix%xKXWfjA{$NS>lRokcZ%R!|~?3EaCQYiY2;nUq z-Z23>@4~cNZje3heY9=+eeF~5NUx{>1ybh~+esb}qxkpZKSSH9Su(Pj-r!i~^7u+)cVGn>mL)%aXSQ2Ai&0_g z=zcr`x50EFwOn?q#Q?)a_KZ!WXlZU{|CC;<2$30TreCI?ufBfl=5JQ02d+d=oEWbR zN5UCLzrSrwN%rvS{#U9~c*%?=4EA^Poop!My{|^fLT7W>b3g~(+g+8r z)1-U*!)d6Rb}GPDZKIspoZ4GhWx^Jsy>Gfx%`seQD7n%2+!*|3f$DlbwbR~%pr&Pm zlJ%s~br46!3Tur**m#}Euzc(U=MP7osz(Zr3rs!q@7|xscW&dEDhm47_W|q>SSC%( zCA#p%b%*s`0UsfbE_MQ35Ln%psfW?zxG>F<43TEPf>_RQ32m^~xL$rzbuFB?bW5`DQSsUw} z*VE6P!X~0wSxKiFnYMTQTBiO0$4z4{>utLlmA^U`9Q&4|^AQl}jZt88e;@hVIM9Z1 z?GrRG`b+o$ls_7=oNbv>Q>0r+kj38Gs1pRI92#nagGR|4(K(VL{!;jovuu2Bqw{!F zxUk(9ky)jC@6VLf4e(w}YqpGdT`D5SNSzJXay&rA!OCJ&&diTn_mTZkG4*_a%&eOo zJzN4x^;25}nIO!7_wwNTG-uC(6VvNtCRCSLD=0~*3M<8 zO~|JLPO#x=g{q$1p;W%oo8M=rg+ffqqhCM;0PSkNSr!_#pWQ*A&Wysk%kIHZ;sByP z08a}z5CmzXl0f>>To5iLwcJbdNaA!Q8=Q1kZ&oN)6MfwP{2k-%E;F+RVF+42yOt)d zYL|*f%?3v@mk`RUe_vE7qstrZzMpPJh_;Pn&o;f+Aivi0B<+2-)CI7>*#fpLcngQQ z4HmgknZftA?R3qQld6tuod+osNM*1P0#o!418SJGl(<%^S?2d|*jxuEBGY;OD%lf{ z<0T@+%sVP}1HiCSTk^;I>!bM1#PGTV)w<4T?a{Ax#{ar>CVpIT`>q-= zxh>Tq_Fb^4>R9Xc*-NjmB27eK$c?+{My~5$KZNk8-Ck920R_k)R$e!d^@z>!V!&|$ zXD@5N&Fac;A`f(wr!gAF^OAE?q2eJ^9L~5Oo-W;KQQ-&|$VY#?g3L$R*{JBkEZy|Y zk8zAw>L2d2uA#&efj3a*V2MPPc9y`7RSs4*ez2J1&p#_xjSU= z2KQ^Ww#dHqBiEd2H}###iv5BzM|AsgHgkhNl(g&krx2NHi| z5STg;*@LB6@_yTlP**1+l9C{XU0BcZbB#F8{DLXBzhJ|v9$mmoz zF*~PD^bTaDt9ZY>{vmC^u=Gr<7qGA`;UQM0bcM0X%3TLt`r=e6N8T?A6Hs!t<_+ag z4s@F=wj#=@4J$Gfg%j$^g{XegZEaL09!)o-vkk#b0XRy((CRi^1X|Piy#a@gv<>0y zc9+$WBLE^794CY771__Uz-^F@hT=Q>lBTQ%sRl(aA?q6|vbeBhmg7l|I{0 zhoXd$V)H+yy$mTsn0&QI)D)x~?59u2qJ-t%yb5Ak9))>L?SFaHCWdDoUgbtne6?eM z21BadC$|)n8oY2jB!=@T75aE7j1pzLDrPw~;RJQJrM)G+E9+61$l(zg_VwL zs(i>&{0qAo1EKx;){#<-o~nImOGhk@Xf?`%o&Os?=yu=%-$*0bRfU1nM>Js1DT%mW@W`@PTP;#rU zM6RST@O)?`n|DM#KGz%qGrz*7Mr3^t{C@&Jr!MY=RWv9TyYbS^J)41!9slTrk zxH-gO6LPBQWa*~e=wzYXZ0z}dICjn=lSh$|W^x2ejMtg8V8Ov(gzA#mVsfF=-&SAy z26_mVpn1d{`ZXRKDaLWvT?}Ao$?*ngMaC36DmVu;`cOBLxX|{sm!kqFbl>wMx5WFF zGgg^J_+Lcr4ZH#mmL*|UPu%LaLv?%0E#;)7tM3Nba_w34j30pP3QhOv@9IvcDG&9c zl+2GkcXx$HTP&eN?|$K5Z0*=lt#gu40jif%r0uO{o^xIe*Q`jeQ1f2Zd16KM@jR`$qk4?wism;#g3NquwP!lIoi-pf;jUZ zhyzkxn~2?g@;!etP`tP(*1s_)x~iH9jr%?Qdxs&RpcTe^XVpW{_u@iKYCJ8HJIQ19 zKAsX_h=PIl+r}IH?B$8gBXa2@O|{P4sDz%r2cNGRM%y2=9FUA9Bp;jag<<1~Y*5wF zp$(NLB#UKu4(pX}9I!up|A=yX{9NWF+bgQ^WZyuxg5q10e)_rnj}y&gRS!|mY1ZT6 zc1ViH@$u>cngA@E@Q*|zavP7|1Sp8u3(l9{i(3GWHAp29c(}m)^p3&Ff1uN;O@ofz zWSseaAdbUsr)aixL}Am_BaGdV2%0W0O%u%UFtaKmI*moumaw*Mj>%1FTyDJl1{;$| zI#%d~vUL4W1_*hpb}`f5(Oy&Pwf-~rL8?oy@6%#zr&dKwrB%p`Cah^ihh{yJPE5p* zgdnChNR38H!0<dO7(L8lnGZ-1m*|1_Y zrf?r|n0Qh!jsM{N;c^jGwAFCAFcq=>`EiJSnWaketF?8~A~X5L#~eN;q#4IM^>Xbq z^#dM`oR)z_tao4X^m41l+}4DLdJMr;=P$CzBltW!4|6-b9$(lghk~w!_Hf^2*;(C0 zpOzw{IyNmD9q(PtHIHB34ymZ+sg`$sMb4Xu^fEa9nIvh|$#*0>jWIgV-U2C4h|#h^ zRyamsU6yuL-7QsrhEo~`0Y!rirqRZY_bmO>{ASAVIzj9$EFAgc01^Rb(~rji{g?=K zlk%L%K$OFOAOb^)Rw!aMDxP4fh+24gVO2F!{`y${oQGcM6!N56R?)Op7!+ubL5liz z1jMUX#qbXcySJq)BKXa-M5=dZ<5I(Ui8d=j>~N0B=OHqolkEZK2PgOUe6WRU2nh$5 z(>Q0H;a}MfDKT#HGC90JQb$AY5nJ}{5uM=C7o_i3KcD7vJ?aI4e4pKy&#mLn2Ft>i z7J1k;JCtJYF3FY^S-t#Bt7IC7{txtw1V06w8mi@@5GxOWIgpD%)Up0o$du{_KFMNW ztVzBV0w@QmJ&S;ME?ilOZ?JY>iVAd7HW&99xA?g$wANgy(6asN4K(Divg#aHA zq;H9B+tx0XN-?9l=Y8mOp6VM!_lb(?c~ ztxqg zP8A_`O-gBaJK~)h3@EBkl`(mEU~R{2i`KSEm+*tId+^GjVa1wt7Cu1tC=<_~HAc%u z0kCyO4XydJ84aI-{`Vv5rpc48&-I8T&!Nrxx~+{3Fth=}l1u38xu8x5NwkEQyyxg1$A5G%9Nlc3X75oqcRJ=F1_*0(<$+Y$ay=c&kQQJY>)%Vy#Bp|A3yAD4c z{rR~BHCsd*eIG^@xq-KmexvboZWNmfofTp2Zo@NOVl!#OT2snmtF1aAHX8f;@Ii5t z6rQ`44!F;pzW<5{!Bc~)lF@uSy<4Gg8I%eY`aY%<+7!7l2WLE_oYN9rfpkhgj@l9W zG~Pzx>c2qQ$`dkp`&55DrQeqEnwA$U(_=|6!=WRx<4-gB-0R=ud|VONNld)@eUytl zq}Z-Cn5FGj?4(;@t8Hv=mS04jk8YmcXaQEVo(8!a1t(vsMlA4~7_shA=CPM`xa2QX z*J%W=RPMEvKPTN;^KZ*@)vxPLw)m~=*r9et*afsk+O6Xs=WjU0!D2p?M+hfBgOvxn z`_6Em&748A0_&PM$$uam4uGy(#gwFKAC=_x|MiisVSO|>edX|HBX*#G6Hn7Z-n~m)C*I_4`$6UIiioKF z+lbI&8@_u;&%c!5GZW^siebd8H^#Ye-wqemVF~{D#cF|9Ept89IM8)eoiFh_A1LnA z#H(4>END#^SaDz?0VTHaOnaJ*HY`o_mn ziSHs$erNBU3Xs;=A{5}AGrjI zK<<$fv~IVh(AI`rjeGr_cS^Jgz%dCl_fCI*A|svFqR>{ zu3aFm^-tCu|HgSDdJ@{>eHO*8Q77I^R>DDM^_MZCu=cuwDdhDG%Pk<4F}C7=S!q^M zyy_qs%!HCwnOgH}W5pNZ{JUlaXG2Rg0g?5)0<-PCnFoD~bFb&s!EZ%FZ`oGkdvUj3 z55Ff;L9IGi_>!(m%B3Dg%t?%4hbS_xbh+0r|Fd`%{1Tj0Ut(j)|j$67q?n&~G ziFmtDmu)%ahY(g(c{_IyVbnF)>4&`U6!-IYzqkK<0>e)?EnRwONw=mD&iEkgET$)D z``qi0$Bq2(v-n~76kcc!#&pGo*L^x8b6qu_zmW7WM;1$4>wW{3GZ^BPygUrV1fI{| zudA*K-+1j)*_FG*YKRX9v~QfqBelcAug`=gz8^j4i^Wx}k{cG;T0xccK6~DsgCFP> zj=8!(o^-eJ5c}Cx2Fu14@!>C8CLi+EolVTO#Bpu;*{PN;PqpH&&b|Y=ssZgXyO+q9 zsde?SWGLVq8m9?7n19#>3Q}WW7B693%LN~%@M3iu3yC`*!Cc~{_qMH56|_|Md?9gf zw0mVsb3XpBjgS$3@Crg(y{!l6ypSkf@Pmq!De<4kGZK2>`A9IkHnve$A=6HpfXH<= z3Ygz40%lUYLI`EG$Q-_@Z|+2Hd>DqOyGK>fBjoMoUWy%$T$Raed)AJw_XkBuw`0xq zL4SX~H^s`Mh!XF^TOgl1T%o&)-;^IXU!9a+xmp(6rg^1TAFK2&oh@S{^Zjp?MMV*G zL*6Ov#gOmY3-9?xkPdEQhi&Ul;91Iv&zTdU8Y`;_1`srSB(1~Mo6sr#|mz9XifNzr}QxUZ=O84Y8CdGLZZ z7m5B1zTA&_vxgyBkzo3K+Qk9m?PjhZgQ_^Oj3Kqo*}^m!Q6}ExLV{VL<5(V?4=XDr z&f3vR<7+%cD}Ksh^IH?u5Qn=D5fsO?jPM1^vc)Z!*h+ec0_%Q)r-s?DBxRCM{~nQj zzOCzTYpRT7F50cck|(ewMImOnhhE(>)WZaGm*U0 zq2^!&3Sv?p$m&TWoZyY+qTy2Tf9%eM$U5CdzR}D>ltGIzHyY_iC#(j_lQ8nh{#@$k zpLB+ZZF>j}>X0qi>W_=;ET^5M-t+|8?>N+-PP7_Zk`SZH*AZz0xe(-*LsTo-*bse2<=^6tz{UC`q` z+<F;SL(-FS>ME&=eDMz+`RhpV#N=3i&l&bF1X3{p@2FjHq~ zam@xnIWa+iLqm)V|62EnScNeIwXMFr`d*V6Xd?RYl zKN!5q5}*GSrLb?sKP7c+S3pY9uLR zp0YdTr#SCeSs3ZmfDtesWL*F7Uff(h{PfSoC*k(J;ONh&f!nn$N^fsR6}*SrRrewb zIxYKTJNXywaxOWIF4tOVruJ7F=zR>NQSS6q0)MzX7_FULRNMx96CzuP`h__zN6K>6 zW)l$CeZMC`p-8=$M>XTl4i0dX1Q;ub=qh;!?uvRL6dfp3T=DHnIvz;~5aI7@CwIS8 zt&>YQp-eW@8n=6@CLH#*2*yp3SWCCl$T`JTK+wUJU1!K%21VTyT-wQt9J2XHlLzZm z0~^~l`4DBlR+_9f#7vD7Lswz9+@TjkmI5j&wDyvo_F)-u7_QbC;@`n~#Dx)odz_@UdR`@CKW^J|0WT-HCV{Du00HG4B7KbDi4rB>#@ zJK!k1bVkO{ZayWidib`8LiQB>7#R$R1*_e51Z#YHHcT0NHgk}*es8`|(2H|92?#KK zL5~I1xx=*Z`_$Q?lwCtI)Ru3>InsSw9baSU-b)^ytY{NO!*{^b>1U>mcz+hc1EN3! z1pD2+>f8R_8VAZC0&CHRSg+aKAa33C(RIN{QvJxcY=8N)))M92tFR!fLi_VY^4!16 z>qB7sJ{|#|ZGfz{FO4 z$=gCF(F1Ab5Y9qwix>mxuZBkM@-%?!FZbbl7DfP*A^jD!G731?1|NVJ8Da#pYKrH! znoQTP=RTErzIwO*8P)VDuZmFftbCN=tvN&t;fZ8HbiKS%_ejk3Y8d^(CHv5LL1UAU znbnpF7@6Ke?XJXD%qq$iSM|&do#U$}ADM_E4hz1ttHKOdU$z*mdfM5x{QfmAy4I3@ z{pG->{e(wcMd)>bt(%hG8;w)I7GeZI30{h%vgP8!wn8BVhYp}1^8pR+0kgrFXz zR(Qu{npdkZ2K)%`{LyB}7y9x&eYd7G?{0UrHK!UvaW3`KBTFV_kegfA@TmW5 z!}A?lOC5zDZEr4L07wy#uddpiFs)!fvQwkZ9~8aC$_OG!bGyk96Dob0O_3Inwm36D z`u=H*rV6qQ?uY2qb4VNOXk!Q)dal?V-rR7&*U5CLVXgpB^OlQ=H^ya9A1%c`m5Rho z&Z-u06AB;7FUm&q@m~GVc;-0gbI#*Fc*UmPXd)osP(0pNj1rxm(Z6)A{m8<@_9TO~u+t&63O>AJ-uHtR zll8|YlMk&uhi>b^_yms%a{pbcnq16!7jHJeZ#Dgc+2>enDJJ*kPnP+l;B<~yoR`kFr@S9jSr%*)K(e9-+-@&-ZkE`d-n*Mz9GpI{fDeLx6`?F)KsP5c2 z7nApKR8AK-L_EAIyslc_{@*z`K9t$+Lm~3Vy0QP7zjc54OPeQI==Jibt0%5Q{7i_D)VMD9pdrJsl>RTM$Oe`l*Vkie6E_3FWmwpHsuB}RTzT8Iy z_qEgNh^3`-gJT2+7JeqYb)y?e?0_yEQnw3S0&J^zUv3`!vlTnKL$`pQ+OOfqGbrJt z9Y$Co?sg498=DJg2AyNPwp;#ClrA!|vHCxdfnIK-;8VaVb;DN4H>U3&#MMU8ExxVB z-ar3ui;@OxdOV>yjH3HUW_6--6#yO3=I4L2uM*OTrxxlYLh!+JEex2DUn{mLEO{*! z#BC!s8pHw@f_?7DX|cCCo~syNIPSQ0$wz8Jn5&(c%nHCD$eCjaLt ztn#wL5I_0bDBF|d@s@9A`5oz#44U@WSyhSiP`R@LyeH;%{OzWu2fI|{G7(o21lG(b z;#Gxt*pH^LhYep8a(ut0(6iCDE&CF7*9QGpmLdsH?zD|&zvSQ>rm;_g96pr7Z!~(? zMY3;xcpwMAjZ4YNZhUh=KX8?zdZodE(8>pu8@uf|37_o6ld}f+ZIM z84zY=s+(|rY+Xf6X=>R)#&bVZpNum&hPJDfp$lBk-#yG&`Qhvg(;d|F-hSf#Y)mLs zY%&jqW;dTPM%lJYA= zCO?8D5IzBHN9Tm6|vx_&?P zj!|}78NM}FO1w9Da{WN9KXxGB%=_Hr2>zZOXU9mKh0~6S>QzKZ@0<4qEp??#?%#Y9 zDs_(raZ6?+&7eb!#%ex2(=24+?McS(^Q2^|#XKqrf_C|_&OhmEnx)@kZ$wHRxXcy- z1ahkJfyWPNSM^YfeYq<14vK>)i^nF92DCytWj)VdXWY(wd@AX6?>|s8m%kK&WxU1I zCpAkJ7g@0?faXzn;29H2^0@*0e^k9?RMY<-Hw+>Y5+a>LK~hAJ7B&amsm~@BK2-`UpR-_KA-pdm4{z&hGkG*2i4n6 zo*nSW6+<30D58-$+^BW2#6*dEk4mHkRV8!?$rkqMs~gaIcD*ElnNeb8~nr*i~h!S?gkL&%xWi5NE5{G>OcEG-(!!p2jH* zE$4eKaozy+qIQsIc4PksD~sahO3QUKJqn}VZsTdc$RLA)X62j2)8DpuMeTpD!)!USynK`T>fic=8lF zDLmZ@5Ga4e^5IWh*nPSmo>h$K`l6c0NUoG&EqkYom-3UosGT% zIwdYG^*p$+Qu>sb6@*PqiCBy|R`w}R>IBi?A*(X;*UvRVZQe6(W?Uq;!Z3Y1-+W0( zY64*1nIr9OCBID&Ij&o@md_|1nRdB6fi#Bb^W^dPXbG2ls9fAH&OeS!oYVH)8ux=N zqFT=}o_3)^Iqc<2HCBiOjsMfX0zlZ_KjDLABA@wJxP;aDK--rM8qvOKo65qQ?U&av zKr__V%o!^SG75#R(BonI?n^i{bMp5E8B&P|4C(EesRjNU#_)I2(gaBSafHz9Jl*NX zo!Gp61DxQk2Pe|wg*oNpT4RTjcfWnh>67KnB)Qb*lr|Xm^gmD@>jx~aSzs5w-PkIV1m)!2p_FmjZiJxL)t z&A&~oO_9<-{S8jr6T9nv;yxY~wyY!!?p*&AtWa`Naz2T3E5=LU+U&8?ufhqBu9Ax` zZquf+*AP8*d7Z!j`uvW{`-Up#MB2> zoeE9&%;#RVb?;N$mU^nlRU;b2Zu$z+SP4pfu|IRsx7k2Jcnk#8sXfKzc6_cdr|vpWG+_eg z2PeA}?OD9TjFf4XN{nkR4ekfpP)*%SPZcyasJY(vkNo^>E;Q4&%!i|`h7}+u9-@!V zTY($;bvlv^g=E5ox$wWl{2mruqkApchfi~c2%)Y;=_Yxb7CDcHpPJTg`dxB`Un@F9 z+heM7iWt;i{hPfj? z23~z9qj2ZSJmX2q>br+=bb+7Q`iC8g-gc!di?wezg}INH8Q&C@Pi|tmON7NM(hc?Y zhEwlAut2bnMIM~8RRpKI1`Qj3hspkx=BiRF>tqzra9{#*8#zTeqiTg0kYPV#yCF`E z+X4UFW-^<|Tao9D*}B(Y0;=^sj$_o}bFchsbo+O{3C z+V;$|^eOM@?c{E5`@hjwF(@t9`pxj(m5c)jrg)p9!^o5GTUg1U^93crRo$*G=+;f- z|Mu3G?gxA7g0#j&>H=G1-?p+Rh-y|5wc)XlRjL~V{*_f=nsJfl6E67HPq6LAy<`I8 zq2l?G#U0=PR>r%ZFW>XA`itp1HtL#7=?^AwT9?72kiVt$-HkLTM6 z2EL@aTNw?X^@LvUPye&1Kz6y{3@tc4EWmG5+1d&H4YDh&dXjbhpR2Ze41l3 zG`{KYCesejnVFV~g8z6sI=x;v{qrd@!36Z7VEg~=E2P+r3$z!=A>Epa@gK8H2Ix#a z+A=Gjl1@4A7y)-d@YSLiP>SvZiF6%<58j*xTU*dr z0^4GMC{~`pg%C%5Dmk~$D8*!wFJu2wZ@)m&;Xqs_Jt{?V3k!gRiO!c40 z2}N-&Us=hs1~LpQmP6+#LMe_VSlMmnw9qD_m_LRpol#lPaTglq_U5%&liN3ymo(&8 zhL6^eA=%`(GQ)E`Las52CZts|mDdQQKa={d_;b*#bwwcw!shwvxehdm7)@EL`FMW~k?XxcDE@ zxJXN+!TU7=A@I&q;jIc*GUHEI|3v9~3}W@IhWi%Og9B%3pPhkj{CcMXXn*-6Tj`7) zln*`SKvljtbvvOQD%xwSY(uqu%|NJlV&lGNF>4|YZWo;eo2o)qSW(60;N`XM&Cq~3 zm*@a#_kyLLbGt>Oz2SrgRbo(9z>O)*!*Jz5O^(jH5!b5IbvR%xCSROw#vmdkp;U`W zh(%Q|=?d;*NTkb-aT=TrEQSN`X^m`5R<~I0>3)nGIz~@O1jTsDygpixw6lZIH$Ou^ zypMYKg%5Jv^YJ)iCwzW*Trzy^7ZOX~{@Q<06|9{IJp^h9Vtseib*fi9>ooC?tA68z zQRZM8d8@Ui2B+^Er#BKQ;oEwoN@w$zXC-W+f8i8%AIv$$L_caD5BLP2+Z18iIASw{ z8gw9!VhlLH$i!Hn_l~{3oS*dx&M<2aP@7qVdz{()(TLU2it5cawT{bm|K{gS6z|}s z|MBtzz4A`C|G(3S19V-aHV<7-E)nTUAkmIyLu*tAzwegnJ*uiV?QXdA69pznEQp01 z2#1FJt@EnY2^<(Fes`Yzb@1ssAhOIb2j@bd7+wQ0s-{8i1-LOL`z|HOZ@m{XAJGYzL}!R$%h9Qw;~g=)zbq-$DkI z1P4CRv-G?;pnfFfO%ueEll{_GgsyS&g5Rou@Biu|Vd*pUCH zg7B2pC%JpgB#5F@mLrSr1kv#v?8U(-TEon1R?kZ!1Yn%pV;7&h1WcYaSW#b zt_-jXQec?F0=O=~WKB>epRkX|E7kr+2dhDAVC(KlHH&k@#24G(_w&QRH9;kB?{w~n zB(s|{&mlWpuc>**h$_%!?42b5_Fs&7ZBqBDqjgKfQS2daqAQUsDUFi84d{1G7 z$09#Jvv=+CCM;GZSg^5QdcL81XSvS1$KsZS{Tw2$S@jK)R(hgr5CESsiRyE zn`3CvFTQYdhFEj(DZtp!-Rb<4Lu2wwJge~E!lP!idH_Nh5LwoAFe}k5b~T7_%=DqI7Y)IM={K}= z#(Q438KM9{s3kn1T7v`AU&!?@Pg?7m zom}@d=1OO8&_%aX*FM55UAz1^R8o`}Qf!{+;8YZ{DdZJid%Dz5;_|WHoyF9sumg`% ztS0cPZA@GcJ7$bmWcfTq&O!TPn6W=V6eotY(!9TDH~kE!%wCTbOvUDW)ZL9Ts+7B> zC_|EdgVR@`_Ax8{$t%CVdnV7LDFT-1cz^d|x_(-E%7d~ZPIrT*hheO^aPO66 zdTNVT89HN5@?!x_&vV#aE;JZ~7T~_*NLc7&gAbt_-7l0KZEcFzt@Nolt&22%z*KgL zzVp~##;M@+izE$WzdX@;p52xea0UeN{=~o|N)xGdyM6%<=pbhO8k3jMpWmJ zg!?=jzc0h>w)nZ@vE|TV_Ie(y0vx&ry)PxZa-F{BrgScrG_!4srISHv<$g?zQ;;wo*CH;Ut>Lb(rlJ>W&(eArKH-Vq*%Nl^+2lTB zMd!$KP{mKgmwhG(0S)D%w|h_~Sklm#=;6e1ibufAx-q;WT#zL@IG64e=PYKJ5|^qe zH)L?aHn!~LYPJf*1b2VHt)b*ZJK?mNzxUGmtZcYm*{KW*pT|k;{&V%=l*^<_SmAnp zQ++TRiwO3xM;>M##9hCQ`Q?02`QSwMDh0BiUDIw4Cl7GJh8RbiVF~%3_9UQ$N9-Tx zr|D2*PyK9>fq5quN=m{&bc(4HkfYpMdNOHibo}9i*VU;C-I`0}^fE{5lO6AAZH3y* zI_(#>mSuzj(qyr|ZMF4^t%R5r%Jb#mlOO9?PlA%~+(0||c8AQ`TliDB+)0bO;`k{d zE_Kc;<5TUNb9e#uw=>kCQ6<#U4W9a<8*NM}XrhmP{_!DOYteQ3FrQBZjxcuK|KdZ1C2DRBg(p zDpE>uEkByGOA;&!wT!6(tOOZd>emP5&i}khpQ;nLm{+|+_;HcI;!W%GaTd5n?ajJL#69)+#ibOOo*n=) z2gx&5d4){d$UxffgS(9>55nVhPm|6CFmxEh_A>F^cjxANl~Togt06U*hxj$UPw;BT ztvT&K8Cr(YcVE!1$b9`J0P_%R2UagLscx6?*yU=3HnUyxNHzPz{YPWJXMppI1` zOt<4Lg-4T8ki)|`enj`{u>jo?AEskhku$w(o4B?1EM}VAn|0#0gCB=laK&V7w{QI% zEv>n>0tdCH@mFiXJ+;@2Kzxw@TRWh5(Un8TN+S1*;vG^Jg<`v$+rLtyh+@$+EL;Tq zbhkw{WPitHMfCn2mn7z_B3g60JTXvtj{Da9LN=TBHgEem74#wuJj1E^cFLnf(;eC{ zezX#|Ikdqh`0JaEk?J~~>Gw>zu5nlYtnY91{-iLhRp8dJa^n9HF%wvl;ymxVf0?=Y zEs9~hij85zU*D9$7?$u)fQ5wpC0b3wKTDmdss)G@n6vDsAOF1WxwUzFOCA<%&2$j& zj0pda$RfQtF|%kqMb_gfTKx~wfbrplQni9a|*jde^?}#9oxsquHw5cd- zq#$A%ZG-ml`e-<#vG3TdNbGtEQC;V4ZQdX%x^^OBRK7kI6fC(+qfyW!iAtw%4v2QG zl&gNS9x%iI70WVgadW7P7{%)e48TnV=fX!l~Aa|`7(|l6@D5W9|Hq|#I7aRjb-e`&m2H}^4((B1p*beo7=k6wJKDG& zgN1Oj*PcGXTiq8+cW^KA03(3ITeU}d>7zmaHuca-x4G#;W!M+!zWMY}yDi@Wy!oxH z*gM5*qRc~lSgv2ZH?t`=p7!h>ar@2A;E*60#`RBEb^GzyEz@y%C7b6aTK`0jk^@dm zd_&i=`Q&AJ*c;Z@JsHoSp{@MeVA%?dlm;~=SC<3XzF|YH-|l;ZFzTKkahCZ)luRMJ za79ciKqbDE+-VxXO3g-#ZGkgS8Gmy9o|Zybw<<|!{Bw`9j^6?7Bu4wjk|z&+4nN38 z{*pEIkNcHNQqOCM*4_+@G`&$)&$7;weBTwm*~?$&R|s?rw1lH*Ng$y|>n2W?)6eW0 zlU&~?1L%o3ym5nHSW4SXpq<%4ocCbxEzJJ%gq{`q+I-M{GHAB2Uf7qk9}&8V&k ze%6464=qvMAe(J4w5#5ct*pCqpZ3rqlE&l8&Bj|d@fb06wr0Dsqw8VTSaNey?X~l>(VMp7&}5EnT@SF z9t0jGE-vkqx_XcsP8uy@CV(VOLQ1e1l$P}RX645G`?fb zJjQM5V*S!!QOnE5zfV|j2QM_+uH}0~;!}RT;vFFgzlH1X(3C85o*#Umb`MO{N5nZ= z87j0k;bxvn@~|ZJJ)@8E*`w)-Xmd=~Kd5N1U5zH`AFDfBLK;LR(Oz@v|WF|HoJkfD`k zbr!yzyNIf^P0`j3|MMw1IzoTG?^|4uxj7AK_FcBD+w;@FhIl`xviDZhmMZb8Tc8lTNn3{ z=jK!ZILT+2DjX?)z|-wpG)H#mxsgtm(d9qjjV1QEAI; zD$xQ(w{dx3BRzZ$0eIu>nad3c$uaWxgBHwr&aGi54(NV{AtclcN^N&x|NY$)cs)R6 znN|(H2T+QaqC+U2{^Cx1HBl1;UmtdQErdF^6PpXt6#R>iW-F2IYKxz1KSqa^M(&Qz z8h5Eo^d(um#g! z`+;}v*X75Az8-{9weEd8zPh_s!W&Q8f`enDd;TNht3j7Ud~mJ+|5|k;tSbTmOB$UP zl^?U{BR#VWHi5bkuZoBl=L_CIJA2(cZVTFQ=@CzYLm9bW7&|_y`g(o%y?|`%&4gzg zr&+r$bTr`k%4+6i-GxZeqG)5D;~!87+pf<)rv@uK(M0$b?)KAn5?R=EWI@pgjqabW6%ZCz?}d?#Z=(foEBl|1|JWqU8Ft4~s?$Oreh z4ZekT#4f%|6_VwzdH+-0UA?qn{VKa=uOlP#{ZG>I;*;*yI=51XWjcANo6EULe5D$B zxYruH>`Za?y04>!GVZxrd?$fw^zZ0sN$2GY624Vv*!W zR89@U|Bt~^_ftlwDNcnNg1Jx0t!l_~JvJ*E8lx%EwCD>q?8s+L*0a(ERUZfWIy zz85;MXiM2M3yFWAc)zZnj5{;Iq6|R^WAt%cISQ`+A9-v7HKBeo>chHlBHOdW>wTs@<)|fgnN7a&) zHA$Em{@1_xzbc^IJIVjE*brB*$m9YKgE+Mtp4Tf>K{QL{lwf? zDT)Zq%^LVh7J_Oh7v18IVtyJHq7}c-q#0MGDy<49KS$nFOCA?SNDll*#NrdLJ?UaH zJaNYUgYR3MlKMd=Eh^{qR+|yT79K`{$yntI$w|H&@K9R1Y_ag$VE{nWf6JYH9cV6A z%0(k#uzv}R-3`$xwv`Hx{B)9D#^wSlv4DiL&Z2_#(Kkey+DRHwj;?^`W%n34XSHgF zYs17Fjan+sASU5XKB@pG$=KaW7pEQiBn{s3~WK;|w#$JD9`kyKBb z&$=;k(%0&+kWDE&h5TjzO-90ltg4@Vqt29^if)u zInpw1QINY5&}c5Mc=f5W&a#>b>GL{aLggHqpDOXe*)DAnFGsNBovVH`xkFVOojfiD zl*?F)2FGTVWZ8WYgJqY+@1K!7CL`$uXEUqaZ#{n@^n6z=p@lWi)6>zT2OoVlUUF)Y zpA}Wa2~TQWbJ0UT-ik7HQ+xC6SInp)DZ~HL`yK$6e+?=xo~!X<-6Pr}LUn$X5Qq&T z3?@g_p%C{}ZXi#AX!CJH4Xg)K{NI(N6QAI5NZAMc{dn*A)(4;~801RMVHwvU#UCOz zeGMBS6twYlFQW6}7ctQ{sa)ZsOzF;MCUz?%y;p|WgifK{^C(=0B0(^mpw;468Dl%* zb~T+$=;SAegVyMPJ{^~vCw|M^-rc4rGT}EpDhr+Y4B8gIZwg>i7av|T=<+&x7cef= z%ZFq`)RTkkNEj&l4&5y10hG;TjVWkOI?AK|=)hO3x6pd3>pvn6t*39#5A$4KFk;%e z;%Cy({C}VC)C`A9*Ma%QtOnTq^}6@f$tXuWz7yZHYl$6y8HB~H+sa#e$gJzuS-(G4 zpjBV(eqXf4y=EY-5YzUo%jQHkUnKq?h?p>O*Xn6C_V#^yX1jUbYz8a34;Rf{JfH9R z$V)v(w=An*2?*r;qXp)BrY3!3=*g*f!#BrT!i%scut69RZVV|JA@N#MuY7W{`e?!2 ziUlMW(#Ep$@DI9G8ViJjFk|^wYZe-jov{HvQM0~GO{rt2e$=G_#qpnR(f*oVZz#Mq zUbOIM2(@oy!P)UkyIaM4tA2j5+nv=e&xp*Dh0XBcYwnOp@ye}3S9RH-4mW_7RH_^VsHKWTQ;9p)*E&jVX>3i?$Vx)uVU@| zzQB-a`lJa_u=?y1lemz_uBg&O)3dzk4nB@^%76|F%=0YwKGi7_lnDL04(X?=M}vYYqMd^mVZ!ORU7fm z=G$}Xd1W6G_QbrXlTAfdzA!29M+?)b;7kl8`s zG(7!DM;(~$CUgJLSdpS8D&qhyK$n4h_;T4Rh1q;?N-@`ynxc*3R3PWCX zAnkg9=?0Z)K83;sL=Nu;P^{Ou5Da105m1#c@tQf@^A1eexMp1C{K9&?4$=9sFFfD^ z;|Wm4nfTO#9hyLs|tz&O^JJI$uUW8OzXo{d_EW4 zhB@}&hvSm#ClZ5NQ>S!@Q~R!PE*xa2H5@ydYy0ygL#AP5Qz`=%8FCMh zmI(h103d|hebzq;Fo-xKGhbE7XvlZJk9Kh?6R#ZCN-$~0pKjdw|$g>7peQR8b_ zIe0Cys&k|;6e*he8;o7%V*ZltKGzDXqp>Vr>fgTl&0&-}WquxWMJm~+_*dj~m{Ab> zsGaO09_9S2)gb&l1xp#fWH%QO#F?L9%@L1dJuo0Uc!Xw;YYNDIl-*yX9ibemZ(1sAvb#IL@g6ymowDwA z4yk62o}|~nC>L6j&u_x5TN>@q8v3oTHI zz+tXFwouB;Miyf~`Od^W9l-34PGk76pdJ@WA6?gm$zRz(vgQ)%qB0PyqX%z~noh#S zqvlXOvzB8X159Jh3LO0>!(t0+WZV@bB(ry*M4L?_-sfbvx)se=!}<1pqR}FMFRg>o z;H=0f%gh^!5-*D?Vlsb#Muk(alIm=7YdR%Q1F)Dac$6Z%eY7XAytvhpIVR7{D z`fVAVWJ|=7_Ndjkyx8Z)Mg0F7ZuIMB9>XTQwpgBN#N}ZasJvW^y}vYr(4ct|bl8to zO`560;Z7!9k?xzzH+SvaLwLi#@d~kO`z1nI77Q1__uzlU&)OJvwE@QggS_$mQC5@v zbdBoDz8HLKKoB`f=JM^0<0z7qcu4R?+59@i{M=4FsaWH$1i;ukN zSLrDZ`liK3AV!dl#*)_Y$Kh}fb`Z6loL54@Tz)~;2N%x#nrf?!D1iwffpa2aoI&KJ zo>i3oYega!k|06VJ73Fw$sW!((eouHpXL1~`V}QW-0r5TB{29u>+*QGx>#S1M-FL0 zcJ;0!$y^Ydg-ZbOROhNXn6qC$4B+~YC{zU#)*)Q~#(1eL`WmxFQ@VHj%725I=t}BH*BmVe z5BBgH;#XFi0Hi16|^u?QY9t2Wi_iZi% z+0S)&_440!+#nz!8v76f{{$%B3+%^eXft#04W}Pcw&GqKSfqg&rq4u)ak-jP)t7AJ zdgIRb^~iXveqM*qhZziGl6D=>za(fJ=WMmWTnP)yci^iQ_!m$H`w@mw`Ij4cGho#x z?U&O8vWpfOH=r_Epo@2jtzZo7DAm~__H+^CA0UqVQV6K%rIOHQl65A_FFA9E#Z+Z{ zh8zFzV9N7NcutYSv@_4v;_(k*Ptw}ct5+ok9W>8B9V9R=iPeDX-aX|QSE6SBa z7ivuOKSYwX`>tBH{nKZXWlRbNqK9wVJiA?|4aSUzuuasYr*Qif4T*oc-~VZYppG^Tpf>PT^X~5h8FG&jLXW;9;CH`xyH_IXL zeTY4N5KwTE4uK!wmHs3869V79{NE?Rh9PahCxNyZcqmK*pzi$B{@pB75cZ%WSK%aN z_zNWOO(@VCiUy0(UfD|%(iHrbe0lI^z~iq3mpRZHpf>`ru`AQFLR!dq;j#Sx-UV(6 z7g9h{b3HJe!zw25ZigtEDa0K=%XrG3ya_Vh#kXI=dAQD$JLm8e4fg zZ&~@YS$`#-)@Myq4jxghLG9dq^*7Ktu}C4JcjY?nb-?Nx0>^LI=|a~u@N>Z-o4z67 zPaM!DHXj(!AikB|zhXG~z2Fb4JaM+x^P50N%4ESwbG)vcy=BP=fg>FPc7d#9m`jh@ ze)x%39FJ{)_}P^^vBZ07uAP++uOjjEVI2boA%Kw*ZH0av8xkwt&1#uOmfMeVv(P72 zJL?WC9M8E+*zSH_w4RjRd{!>A@%`OEmXhv7ws%~nLPqvigId>jCQ43DE{rwRI zNtUmIKIj{g5D^h^1{IU@js=k^5}h&_7FNnj^PTxehA8q&w8gTl$#ZZOeu;;*jfG`} zyys`-35l`xEI?$iZgDCU$tMk;5|T4aWXSmO*SgS``HbV*Y%dGjw#@0TKL*%ALqVjH zGE>tBb+Cu`?Y=3$`;FS{U2mLh3@YL z-eQ@X0oq;v^o_283(c&07I(`J6rTbTFw3Y$c*tqt_?g{SRi-Ixn$*F#v)JW0-Uj<{ z>^~wi%qB9wTXOka0=*H_`D+-(*Qn(mqg@t)B611-{Do8X{92`UGN;A}P0H$BL#INogN7?#%pS@MPA^ZLlY*1lu@=$a#Ixk}{=%NE2Y199z>+Vb-wv6c#v-x}9? zLXhy-ukn0N15_WH$6-9!P%Y`w|I1xe+Z%(p@YS@5{AF%IyB2k9^A)W_-Rc2p&AqB2 zsrfS^P#bRAkwcK-1D#h93y}e%WBql7oa>Cuqe0%+w<&I`NBm^;A$E9^(2h=y(V;W< zYO0!5pHkJ_x}MmOJ+fehO}5o6N42sCyvpd{x*s;RxW5*8h;;sNVwN=`^U9);L0FJC zX0zGi)lD-@XvRTmd~s>#s;07j+3``ja%Idn!_NZT*-zbLrpurrNS*YevX8#c{%yZ> z&S)9E`s6oeU>hdc3xI2bqVMXcYOg{|4Yk8r-j{y~0^=T5?+rK%=1yv=@ioSgL@7-r zd*m`iv1@Sx8bR%`pnI8Y&tB}QDc((b)xRlb3H^wCu;`uO473e_Kqp<#m zRzVz+U8o4Oh0b7np?T1__UC|-V)4Y_%`~MAI8K1S=P6Gm&bwepNortFFZcZlM>oaQ z&B@R$A!1w+fva$ceUD#L5Kx4vcB%$`qS3^Ej+k$?j8mxk}RpcGmbH4zL*7 zYZE9mV(wAhm431#O&J5v9aY5+&A5$c!SJT|!|8vZDr8RvA{azhCK=GQJd=# zhW?`ca9c|Sw%p^m=g=dY&8Q#W6`xQjXj5MZsH<+A%%5*9W$Agu8c&;!KR#o>8*#W_ zjy76Jf0mrUVxtQFde33^o8n+VVCkIg3}0UIx9Yck<3Z@}J-~+;O1Y0gYzuTR^5qlK z`>_0x9?RrA(&@Do@H>bCWBwls-JPMT(-TSf#w)+KNPcU+3H|kbhjnaxzC;DpXJs;2 z3dW@e2t3is_4Wq;z#I;Wh$Qh`eMk z)>M)e(qd|^KaxS3CN_y~l=neBE#a%n2U}QB$1@e0+V@zmZ1R8J+T`V8+le_Oge!xq zsKy_Xc0E}8ALB#zYIAD2r(LxILymm}D%dED0k>Azv~37eF1!`iFm?ztT4C+khqG-3 z8MYGlI8LT5H4BcXNDnBm9_kjeMW@qjn5k%n=+@b7zU{0ytm$-^&thP!4Lm;b0Yyt zb}VwwWlfY02O)Hxw_QuV4`2bV_Pg|Ge#kK%1whLDW&aVyg!BB(owleU*y0_J-xyvm zwAvoxpclrl@QJSh2L%7=1VTq9Yy`nF43~lfP{`RI3M=4g5}~7??0^&-PiPzlc=};u z*Nf}%OD5@=JXj?H*-2* zgyf^Rh*DwwOm=hZiyZvXDi&aVlXG_Wz!Jm-y0dfFb;M+5#%$md&rvmbvP7n^=Y$7tJUH3rSmO_|LNW=NG^%>bxRf*GFel0CR@7q;fhQgZ-q(=f z*U7VoHXKFVVnfgBIA0(|S!K0;hi0gGfHOpLS#&&k$DC$?)W`9T<@@eQScH-GL`abZ zfR)5g_6Epe?{UP(rdNW_&!|-tzyo>L$K~2l`@Q(5GV2e_O%+ZRR~!9NtGXT1wu5j3zw)?84h>G*e$9T+ zu04S_xoaEU%?|J>(_Q04Zmzs;DV$A+LBopWrj@4iZSVnZ^T3EP1X!3xW~y;C9N)wER0I2R?1 z){k?I`mfT`hIZ4^i9w&qle2o=d;b!7-HQCMYXF_)OUvMJ9Ls$){1KnFD^Bna)Eb61 z*8OZ+g~Mk*KmlZM}f!8C$7$|K;d+ zm_ijEk+|(Sq{{AwnwYl7gq%Ca_rOGhpPLCC^%#Du2M9(7%?vx))peA1`$`f*X{?1+ zt~u_$fl3DROG&-Unth+?jvHWO@@SD(9&dfRyTq0(o#6EAg_}=Ae&&iwMMq-S7D?h@ zjP*J!95x84w2ckmDK)`Gqd{G5bhz;Tx992f77HjMmm@7UgC+RP3QZ~Gs~@5RG%MT= zx+{5x)vpV$K0!~#l$ifze{8UhS$boA@KS|z;tr1jP(|X9qYq3TPBQA0gIS&qFLRr% zT>iz~3aIHL+ZoFr5+HKd))b6=w?*Ww0IsQ8*cyH4`b^cQ+qIFoXPDF{zH6EbG%l~3 zzwCI=)-zL@sEzD4?GfEUCah*I@^h|&KQ_ueIxNxPA$_c-&_buq+(J8u3xkLI) z_0bG|iz#g?Z`u7Ex+)K`#aXPfMEuo!IO=v9>iD}9a;x2`nQj#qPn90ni0F`HY>GKW z4i(&-50C5!zZC9$rjae!A~5)RFgQ&jS(hkJHa~Y~`clV_`=PCX@BXtG!_BsXZtM|( zNizTX?0T;IrQ_+CX{>#ZNYr#1hk5-gAGfRey%>ybyZA1h-bkwlkJ4ohxt|7Qi@9pva& z?dpJf)F+Q}tJSt34`i4*sG5!&L({oXJkrfY!FXz*a< z4C7-HnwL{Y{VRs@C9vGp$6+UW_B4`I$jXRVyBWBu-;w~?WiRB%-riat`(LzHjuwbPM-XB`>wFp?Jy$94Gdc$vYlj`RB#X^<#%D zwi~^R6#TfPR$n2*CVGofR-_#62ov%KH@U)oaO=iEI8lCHxT8VpB*=C7@chG~8du8p ziW~H<&JEYrkGPJz*0i@;_>ViCBF71 zA7U4)v6dF~NOe7Nx?{>2_SaI2#EM{|`n-XYXq!6F2-sC`<5HwU!A!F_zcDMu>4+y% zYGJ4=`FFmMTRjgBDac}`w^Y(;h_+=+&$%Yg8l-6CTjv}uW-cEuGxCdCk?qQ?U~*DK z8VuPR4p1&g;|a{xS0Ijo)l{MO%dh1I)c*KoKXvsHaVs?Lu1|*m=*7fV zB9u2N{itWNgj&>=)XR0Hvd&!oU>m07xJ(MnJs(GpB%!2xUIr1;3SG7LSw{S-h(kfT z2nY1ERh$>b_wd8qEwOrxdp#X0Y$z~qLa4-|Vm7K@mU~Nc3AJ?*+N|;0=b3rcRJBQ8^?^RW4(5NHGX2gbjf>4!|-#EEcOGH5q(NSF!2Y_up{H0m#6Lbs+hHMKbkq z1AlN?!hT>|mnT3y!%&d>|C@k&Zn&7g7i5(o_6NS7gf2eldaP32r1HnRe1G^Z)oW&* zyLzr0^$jDxi~F{RCnmRLhy2G9(%-)?nFgOe{&8eM;`k|Wmhy^Irx*WZ%W56-CZ+nlKXA26u` znw-i0?+j&L-+t^4OjG8~8RyKVun`DLA0Rg#i^pfB;YsZ~=PZA0y3t;L{c%CfP@Qr$ zuz+{Is%6jy2EeZ~^#H`UI+pG?!u>0m2H5NF1V_D<$#2iG1j>5Rslam*KsClGNU`}v zO2#u^Ecn?tvK|m2PQO`jONQ)O1xNnXizts9@2tF({a%!K zVSQ@g@5M{~K|c#1l_HDq6sz%=AcJj|`mHMBVu|$T2HX+;2l{x1sHOX%&xQ2nPh=em zrTxzC9~)=uqeWwkdBqXcdm=>()|<~QZ6VNA#vywIy{859E{_%_{%Z}jGY*l;?z3cw zw~Bp7kR@4aJ;wpZ(CuBEZBF%PGka#aYbyFDEv{znyWEOJ%a})!XZ#^B&Ta7RKN_0s zZ>qJw4^PH}`p=5Jf4a-DxQIRnaLh_BfL)UlIY#&uo3zc3#|n?7%! zMR08TWK4Lsr2sXz zSK%OOKX}(LSY|fh zJ2DFH0w`$M+QJV{0fFnzGlkHWoA1qS^^p;YXz~5vdnylL1|oak$dr)@?MxoV=2!@Gvx2xH5nK+1#d-_gCLdy}6;o0al&Mam}g`_)M2wnUtd1=|(W zlR8pm+dm>T?&PXh+Zuy+Hm&#%1ZBn&8!pRi+@<1uUA%21Qqv4dD_^@idr8XC^Z7no z?@tE|wHJ3IAG-b3A!j#<`7G2EU1E;&*RP)R*em|z$!_#&WZ~z7wQrxBc zxy(@J4C3e^aV-`7focEJ^`SLQ{o7}TN;I>`-n$m@7WW@}MFe=G8TDB7ozxB9Dm;A` zW6<)yyu#1jU!qZLUwE4P7#aXB?%VXh0B`x?xXQSa?5~t`+r78zI+?^4sRp1rP>(PN z8J4r<@VV*E6#hS=WubzWXRDBdn>F?}R(m$v=*JRGgM8?U=+Gb zBX?Hr@I&iirfF7b+;86+%0z95qCj5!BSZOgFX8TEg^V3HGQSN1Z-C+$&@&3r!E)6= zk^q&xD#%Yo{;|XJs{2G&)34oJYx{UB!%%8^Hhq+s(W#wBXGCs_m%dMv8e0z@$JcwWEBis-JnelojF*2FQA;0n-r zFH!At?2O?syn<|hAI9ytvla+j=v!?OSNyb^@c)r?)=^FV|N9?;ph$>xP6b6kx^p1X z0@57 z5j_6J&z5!fF}j@%=Cwr@GSWQkl(m-V50rmRbLye+>Lpe%)6#>J}obDE(6Ci zAU`8gYos{S$8`s|FE%?S{`W$x_7++&3a3c-mAgK-?;{%@CmHi~94q0UIJ#z_E+HPz z$XEBPdIusmB2Z1c3(<$!gUOe$o|qt1>&uT$Gn}cI0OG%`&D%H8caSI=>*M@;HsXZt zH5&dlJ(L|K*|=V5P>5P%(6_%#Sy@|Q)EhnS*LjzSf=u2YCOvjv@~y*emT%s%e#)b= z?oFpCyUPvUBZa3OshfCL$zE2^UQXaL@kJdht`MpY;h?06gL9=KtChjPH_zhQisQym zCG!KrtsWxK6Io0cmS=PABlv-ww69aX^^yxiAj)#ZHS_-0jX2H}tM~R-aN_6zeQ9DT zyn_%=zp9t;sBf+;Iv@)$?XhHjtapKq7avSyIruZ%Pmt)XWPJn$N?`^j)g;P!t-JZc zslR6!X^L9~%h$_!Vt(NZ*Vdh4E5%OOA2p+`3ksGBdU!nVZxnilMbgnEY=3_78R~}x z?uXmA&;ilq&!I9&ko)`RQk35A?><{9jX!x2tq5a2}-1 z&sD2E&!>R=HEw9$HX3o$Y{7VH!D|T&|2s|rSY2M|OtuJ5q>tS5Lf~&>^RrTRA-}%j`{x=JeCwGSP z{&^Nb#}yQS+iZ=^`iQ`hODS@FP{r@h3R_$H9b;zsHcgh5Lh7BtrM8T`F_5{YYSqoJ z%2S=wOFt&Vf`1XDH|O%&gbBzsN$9v0B-n3II6C&FA#jlUYo_t5N8zhYU_R*M4jbll z&59LGPvdY$YAKA6VOgbI@;CO#+FN(F-n$JV-{b@KgsUwu0xn3%7_~74L?gBJ_-4l` zPrH@`;*Y09iLn#!l^~YnDCC0Yx=kX15s0+UD-BBPnUe{~DXkrL@(CDZE1T1o>Qa?E zvGulG5O~nQN*nU&#d*bB3LR4GG4mz+L*dS!v9{EDpS@?(f)LXd7Vs~Am$!lo3Yp}9 zC7$~7q)uo4trTP1|4saU?mqyuRQl~0-jQd0bO!hJX-4_MA8(~ka_QgV+Y?+$-eSl{ z6>pF)?az@ena!QTYB!qa~KK2jSG+5jOLHC^V2!`NmVwE<29^6eOvMMN zS)RW(TK1@DWX2H?|xErKT_*c&m|_`JzAg9*)gk`Cnh6-J)y&$K_6 zG5#maBb549mM=yMv|bplepvixH42Y6NLIvP+F1axqs8~ea?IE^+*Ypyv@ zamSSux~VjBFvcGA46Fjy+@2NWS7auxVl5p)NC@+U@(U>tu|hi&k8(zqCDR zuXE=F`$kJ~;K{=L5v_RqPz{lwMAhQ1IIJZMOa<3nHzupK<_sksAMaDRoWTyBZ zC?lU8@(KU9efOF@H!1)~~cwJ?@-+gu9j3F*f z{G|ymIh4LMaA8A}WITDxxvR<;c?r^LSRo)dc%`hYPByUal z&_itBf&1LNc4HhAr5e^3^!@vT2w*5ux{hvSA&MJ-m007*iyKC-7OU`>N;r z-gDyTPMwfQmdpVgcD4Ma*jUX*K7qop{GCX)En<8_KYjRF5J?huXUF}yj%V1hX{E_c zcQs>V)+f>G#r%p?S+))6`2*kS=6;x&!W|s@B;j5V!?e=0$>?|J+1bCj2bLqM_uxwN zRGs0zmqv#@&wFlIY-pGNg~?0r8sX~*bp9R8sIjaKeq!Cpi*m!d>0>)n+c?r&&zNxI z(()SIv-O}wAt~Z|))y#J5RfAWtz0<`_tTHBnfE#XCJ~OQk&*HL6S_Q;FCpr5&{I56 z0ZB?f1;kOsMA;z4+X6s-+qvSs2rX?uef*wy_6yZBVlhB$e#_ek;cnL+Y091WH2$q{ zn-AsCq1wY_FZFUo$8QP3I3D*B^J~%bdzfZ?<|&lwC~=dLoGi1eamros2mF`1&Pz{1 z7lHPIU2!GrhL~|P|M$aRQ+yK8w+@R03#r4}KwPxn z%aU3xz!p(`%8Xivf3Eh&Q~KXHMVDX3%Yus+B@k~n*#+hdrmO7RYg!WD#srztr|7DZ zB1$^9_g0bOkhh+TNk{9Ll5B={z7_0?L+t_P;O7PQBOlvRi_5vWQ%$(;!_>vv^{36I zD-rJmezw;%C%%o`Tv&^lx?U9^FU~Z_HJH@HTJxV!Es|}q@^hB*3Pi~ZtfGpWAD`bR3GTO&+_l`IeuN` zOXkm?)mq-GbgeeORM5v-q3x})N}Kb*KlY$|xxd45_HP<}uM@KdSurzN^|oCH;16}W z@yE%c(-Sl*S0T~juk%M@{xNmx`qY99sjogBts+HDg}swFsUDUKr0w;%&^ zDWSfwE;#{#4eV&yQs;3)jdQJroFXp4*!e{@c=h&gvMLc7ll^X7i3p4ZK;3{3>#fAb z8@e_*cvDLzk^;`J0juu`@NNA7;73ny`MUelZHbfutrmj%x45eJ5bmY~|10}_z61E; zz}AS(Z34$wg8?^=Yq3P)+RurkKSZuKV(?(fNe$V`Z^2E`| z8cTchGo%Ry@m+xg_pBXY=`re{E*matxkr)BHva+}nU>cKu1xUx`;^cIXBqm~STQ$# zL7fII3s&_ECOf6>vIL@W?!(}!cGR%UeT2xsx|8m7ly*>Ach$i|eKQiaDf; zaxc;4%ExQoF8AF34(RqLWdF;=EaHC%0)#8gVHFg9Zy`*h(gTkRT66b62KR@E3X@Y8 zZOs_Zlnk}2=*Yj~GfpJ;C`c}1(B8&eJxt!^85+pOrJ$%!w9t~BGQZjz(AtD*8uzIM z*Xj0Uk!0nz45iZolLNI*&jblLYX{prHhXq?QS)@da)}nsYsl$E*7Pt^J~6-!MK6>+ zZ0P;Q`vNV)Kd#aDRQf=@vRP?N>94BWNT9rYX9@10g6tKAL0rLp$Yh{b&7nclWW{O3 zx%(DSiQi{}e61+OF*-ebDw!(yN0z9=)zsvNN5ujz(zBcSL47vzN+g?MEHnE0;TwlP~!lRBtP98ja_jQMivx z`}=kC`a9quJ8g*f0LdB3y^co&4h2yN&lmYtHwmX~#hc&KWFGis^x2;m0=}=UUL9(@ zpz_R{bAvvck`sR?ARewiuGz?aOKWh7o_ktA#j1bhf=Gs5!sLux&j)mkabVK zExWt$*WF}oEJKosq^_1Y393jPnix_U4!7q=G=i?BDhJI~+Of&C{toq&O$YEoNj7_? zQZJr6WN9|y4&y~LD(l{_-j0P+n#|Pmg+HEhYaRYt$^Y2uOjq`U`rMzdpFvfD-D`9> z&aJG%Pk{S!O1#vLq%FXtdT20e>_w{L)xefvX(Qv?JgNeNoiqglJg}K~OIupFm)yqc zM95;v^0$(p{|{sd+T9d_BoLiHyIF3y=M>modd>#KpI6<%wXonjO(*99d~+{RfhVyy zPX-HDEwO8z*P+92Ihn=fdH+a?ab0F}ofcf`O{A)-zQ8M(Wr@2Q`cK+KI^gXquvd57wji!K!!(w|Mne~_S~nBu6Tjn^ER2V{2I z#Z+JZPhh9d0cd>~Z)K~AHUA&3J)TVS8K|=m(Axp{je8pLqFRcS@-B)%&{w_~=+Naz zRr{&v>U%aB;C&8B7hfpJLEKWizi?I??0o&%?3ly~^C!FTpj^veO-IZ3VbKwws3qd5 zhW(`!{4?#ol?R&z6|)Jr5_|!$mti+q*J*ic6t3KznF?9(CuO>$tMDrJheum36UCXb zy(h*RUr|pTm7QSD(J}4Halgq&y(?JkN-m3&UGw~0?fZGkIOVme5O3~c%)r5FMAZS|>EwyHw!qoFn|n>OrULG3VLp%8 z?)Q{jRSG_r2>LDl&*Vk|I-Nb&*=}et!u2QYk=IRC-PwAZ83al@?KP&pVF}+D+qm{z zPiEVP-^W4RDzLEE@r3SmFEl)hwMFJqmF!{ZHjOod=xsT+leW;@RcdxNOYybpoi#?7 z0~i!$){^-;x35m#!?N~J#{7ee#-YP2dY^Fh@%FHlO)!>QF#cf{@>iHi!J$wR80|mY;p+4%EyIeJNDvhwnPeG($NW``C4JU~j<-Nq^TNn1;M6o5eM^ z>`1PMW~ahR_qn!wK^pc^6ZW-wLqo}b7F-HB8A&K#T;Foe|_rtdB!M)+^IIy;=9c(L*ciQ?T6KG!EO?ckL9>CLdaP zWb*6a+Nj{oPSe+mllNp?Y41ThaUfsQJ@FOIPt;`pfv8;4CK4W^X~h>`G&6UNGylbv ze?-R)fQhhox07wq*6GEsib+>ajfxK7mu?w&zV-2BWCJW7%DG~BkjvZz?@?eQdH*In zGmuwm`4|}pSuyxGH(F(Ga?ZX`VBggGz%*@8`e@udK|+hC;7B&uU%c0eS7fIsd8QcO z*g?tFExg$P^=|h&s(?a`0#+%pH>jIUieb`-%@qmELDKDVt({lUlqSk+ldaQb;Xci% z(`^bWU_W|vd4+fp%+8G(%#U+2GH8u=#8FapU(%bOh0=^#N+9(;b_{I*vySktI(dSgA&ta@6SS$O*fM*m&WWu zZhOK(yk9lU&8zk%HiT!;S}T(nneP!ADVEf|e-m@5un>0&0^jWBbldqyJHuedwA{&` z83XSwHk;vhp|ePGoLiYvu}jDE2+ty^qQ}?*3sgwXk1Wd)HPo_H<`2_D^fLJ} ziffX-)RRjO*i7Z#<*f8Aa`(P4R{I#HSAf;h3B|h^)lNNs{eDhzx^X0v98+I1W+1ytP<~#@^SDx(% z15$nepz^J=-h4A@naoL|J2dtvhhI(m0OGs)eGa~#T0~vYAe5o zFh>0Q{!DSj=47GFMH%ivb9E>EV3-m%X9F4CqW4Emx5C0j;^j%gh|gK$mAz6%z~5-H z1FP4=0={eYP$;ZR?P62~`VebO&|t4Ct=o$s8CBd$viFruWb5v>KuQ z%_lJhd-MSz$6%Bmb*uq4QWjF}=Iw%b2qfiMIG9GrGgY14=uQVh0xQE+-UL$R*?anW zKFhtEZ^rq>&!6)l;W3iN=z~ML6yd%uGw3^%4Gu7rA#dPu#RCvh{)^_Fm6D(kW!pmw z{%!m|^|TA%{CIaXH&V0z=0}-Q+-bJ`w&_EAEt_W%j@zds6sP>Cl3o|9= z?v@koLz(2lcccn+)1zUB>DkWL%qkjEwP>fl4vuD2a@?gh`9DqTgENItoM~bS9NqE(%||wT@AIk?*7tH%pvf^M)u#Tt72~7m``7h>+ZPaf|06z|I5>s> zJqw<;CHYW|lt*7KoOeG&OJ56#W4HW^wBPuP*Y`TgespjyP-WsBQs+FUzt+3CgH!uo zSHFIRVef54gvkrnOUr!=8198pXDNK-+k-5nt@i?O`)KY@&u!oQa68LPRla)IdbmH( zfb+B|$Gqn29CrNG6#q52RUj7mbvh{fey@_%rJVh`XDdnhMW!CE`9l zEp+HS4XC9#y$x;IZ|TczE?l%Zm=j(#vr?_;l5^sFO!L|BY7^l>pTYQx$F;gk~t!^8Lg=@LYbw#QyS? zjXyg7@J=6jHO_u~2d)@Qe!jrYAXnY?iq(<4HtWJzJ56Sz%`?ICwDwxRZ0 zLSB5!WR!t_Sv%Y$zVdEtrETSimu0~kub%Gdv?ZO6?S`^`T?#X>P@inm{vLB%omcHu zQc$^hRdp!B)r2J`-30 z_(7P3M1IMrcZJ(^LJ!mJf?y4h>PKnN1JJ#rh*WI_U^CQo9Bc<1{*T>H)zt1&xZ;k=_0H#pL9uV3#=N~Kie!voP9U>qblZ8 z7QQ>4?o*j<*f7aU7=+a%!0w)Gpds;(wUQY%o8xI?wWXQto%@x(L@EpY27RWI!K*NV zh!Qy9nyyblnBs`{pe_2d`toraN$Gao^1K&JLC=(^`ej~IIkUyDOVJmzFn@6Sc3e4tLt^yNKg#B%|Ap;1o}vc#E7{q{57f9q2; z*)H{Ev>N52=f#+>_#{LJoA_M3+#`yX*ceiWrdpD$W5(uFYar>`-)58KZEP}*6}z^n z8_DsA@tUpc!~t>;@~-%b@fr0C(tyVNq?|Lp%ZZ;U2^1kF{cCk=$65?^0)S)fa8*`b z?WslLZFTjkyN4(YaIQFPSQL{Xrr(G%8OHwVm-V!;O%53az*ZrYDjtfK0_2a2e zLc|EFdF09U2Wh{~PX;jrt_$z3YoMNCB~^4o8>r2-si5Ziv_gw5t@c??zwteKWX|*E zO_!STZ#LU}ih##RMWo~3B^z~YQbR5W+9gT}tw7?fsk3A;z2pM%9>3Bdf&@bRe6~ae z_3ryVY*5`WR4FJqxbd#DM`x$%Fol#k?fpG@N&GU3^>&5qY1)yFg z42g=r#M)zD8DEw|f(xhBm zjO@Qg%xY&MJPUN^XH=S|jSIZ%XK3?QjDdM(6?8_wWho_regNd4PRbCXT_-WBnl z(Mgh;flX)_6kUsx!-{UUhmZ+dTA0>(N%ik!yi#Mvaj1y@qiFKix2#?y-5SIl?VV-w z(dhdh22NbFO_lddCvmX2l$54{*&gl_4JdT18Cch%K4Hw!{wrQFu9P{wmP@3cf8wRn_2jK&nAHo}7^Ln?eFuj#J9?^rXJ75sA?1CC~ zlXXXKtbBg;b&ZNC%J&ybe%Ml&IKKVbCfEL5JkvK>U^v}>9P$C{0$a~sd|$V`D%Z#e zS!OZgfordNz}S(|L9l+^g}?#G?aJK$Kn8Wm`jdw1hatX-A@zKbom5YG{rVc$h`uNmt%%r4z`*@xgmE$gei+C0FyxDsw0oioUY0}~Tgvg@+pC-kK+rx>hc z#->(c@S1SuZ6L4q3Ey?TyJQ%mq5hA^DxH%$kdH zX*iA+j6DgCZgboW+O$D(ejNCd1gQ))HSK3oM{xG{Y8v!4?m|bfj~qEDClY(I1Sk_Y z>>G_e`F&t=v$}nPaf{$?$lcYTD4W(B`3fo1O-p9(G^~9hEG`K`G!CMDje7}{;XsBv z2Pu#)-h3lp*ycvx-WKFi#WgTY=L$V%gMuEYgHrwlqkFcjThY^fx@Ct`|BSugKKH|} z2`%>PDs?Uo5c_U%FL;slucJizjeKB~_5=B$~Jng z!>xb!^^fMx0XYD7jXIfI>}bKKKpfoG?jOp)lEUoYVOosZK6w`%)Ch1K%f6!W zk)-m{Og__wdWb}tz3<;j!vZJm$x#t-NyZr&Pu)yR;kCttYIR>br8>zgfqDc+v4Ghq{5n%KUsLPW}! zeUt7%>!T68B0dZ0>MpxglzaVlQLPYLGbuUjOl9As`|pS$m~WbI#v$N97qf;U!*SaX zBmSOjoeTOgvJ||_uh0}0`VWMBXR&6B7)9L0eltMn#?_sKs^*-C%ijGk(c-_d5`M?l zOkG~-;V#lzfeqWLg&jooXwBItzOA0+7nZMOE3spKl7Oe$z?zKMdm&#VSn3G02dJ-b zgkCx?oCdp@_mSkx?SOh-a+3&U(_eD&Dei@7P&`BJ!wcHtahm@?6PZU35f8EObq&BS zt~}Q!EU|g*ztqDjw6i&82g5#aha}qVXP*qj)_`GQ_~F$6v0B(?dybrgRc z|I4&O_S_sStm#Sp(fSp>LMfVfD#!BbeVC2=*7)uH+(&h9oyGaoPeBHs3%@)-M*PO{ z!2;aQT?90II%4`bD_omeR$TQ*xkuqyI5+Q5&BX83ie2$dP0@}?Djv!LQ$kck7z8kT|CGxd)di=+nf(ice*6czoMj%N=S6=H$$yvaQORtO^-mUkgmFfzb*`A3J&mr{rTD#fyf||2 zjQ2kf`Dnx$#G`ZT;d%Vo%kaUOGa{QJz*_>$T4)=J!Y)ge%LI$U+R1I+3ruM zZS@!tG4YR!0{$6_OhECi9S&G^QQG5_%#gs%6Dzy%mC&GJXb^a)#fA#jCEvm7LR-<2 z(_f9)O1u5%cakXfW!XGt#p^Tv;UME_ zeB|ba`=3=4Q#+OAv276OP`BQ2w2-B>1r zL8i5K9^&G;;?3ADY>e#y;|p0i7JMU*{kGL#z2l;X|D+a&v38@)6ME6^)h>zrnXpy5 zD5QG;1ID(It1MXIjrwUZR!gl%)PdnVl=3t1)c}H`7vH|?T+hyDjG=hSxSVK!tc+zZECi}Et==n|2=9`*&=)-5!#uK6grW}7J0DOd$8r=onWaJed!5@% zo&Q^&=+rd>%afY)XL`xc86u|Qm3|ji0M1H)LJqigl!4yo^{riiD)awaqC(*BAUzd2 z5Y+`hwl+}j`k&b5$E~Qv_}4_Y(ugSkhx+3&B?Z)#1@bNhxAb=biA`q_u`?hle+DY( zl-@!YNA!s$uz*nGi_{n+)c63Oi$EkWxeJPPX|p$~!+O_EoIm z^e$T;?^$dupT99je)c6QIQo@jE5BXP{74H^a)^vNj(~?l+^u{!x|jAl_(ZVDJ!QAJ zx@rSmb9=W&^!5ih-`@d|-&}P;?u$V_WK>vt6vg^&9CCJd*-a$kt z$P;=y9$|f){@|YMVKaO31)tPZ9kuEmzJ^ukjgKh2^JmvUAwhuoMY4M($km!ag)Zl^q0hStu)mZx68(Rb3WqI>g-}TEiiCrc zF}0o7!Hya!R?Jpx9>xaWll5#wjniMrH9J;}7Z#f5K9-DXQQ*TK-4ONpaR2FG9ch?m zt93T1*%S$X^mz|_+Q^YW3i>y_@%I>kChmvIHcnhpQ@Li}{-PfdUb4E__PUD$>ZrfQ zS559+pRAWFnmqeZ>S%l_YbSE4dAu@2tk(RZv?UOkwfASJ#IU5yecNf@T%|GA&w`S- zU)a;${+5Ljlk|Lit5NU;$Ygimq!#TQVaIx?*}jn0e#R{v8G&Wf~K)pkfhGy z@5B!g9{z>=-TF1qjjTm>mjWh#!^w+BtQ}twm`YU@!actog00TV8n0k$R8r67;?$j! zlhkMF`cnOWUTzptfk1x5Q?0cX`tJHsmr^yB5*@Q@uAKt`&)Ehaicq>?_$yoLQpE56G#|{t zQlWdQb||xopJVV0xIzCkJO!|6t=!0BTl+nhptB9eM>L$fi&n#1OOGI$Hya|1^#8bT zgu-lfBmV<2yb}){;LEqltDd=|ulZs}2Ss*eW_Z0W1W@099n7IzjbB?XF82kJ>~keK zTZ+i!D)TUtg!o!Zcxt}x^=;2Oa=5hTWy{g?l`fd4_Ne1wAA^xwEl2^xn`!wKMb-Sz zKfro@5<0|0bIip~lzO@k)mP#=iMimKoaIk-2I0vtR&k}WFdKB=Z}-8cjUk3W7r57C zGfh9ZpZ(q3y0v&!msXdue#BQ!-OI|TW;ktP3!EcqIYU)hbtqXmySr( z0V0kyrcw>I111!q350NH+XZOG;%>h}`o+~T>jr|v4Ng-9?tQo%l)DhN!ZEu}{b=a@ zSSO6`)B7%65UEE#-?+YBm!604e2aHbOPNT=uX zUaEon#_2J~Uj5a#$#0ePlWF>S<9^h<4*@(@ibMcsiOdztrt>r??tBy;9@9PDqnvur zU=ZR)Nqyss2}bw*V&<{Oq^#i$DgZOofZLgy$8sY={6-$ltqu&2qksonTwQl-$3l_i zQuO5-t>7i1|M61mUNxfV_l~P?vSZk65Hgr-1#AGQS1z|)(BF)vmrt}-IIKF3Q+w66 z@6GKG5!Kxn&c>DFKV2#p5GD!qgG=mli~QdRw@ISa@D~h7BS!hrV6#4PHkFeW`By*l zGdM<%IZT15_t>cp2H?^3A&jl|7hDrf$a(imd?sIK=7TM0&&9a_5=jR^Q5(QpMU(!V zd!C%b+?`MiK}7>O{-x%9x4!#qG{SNItY=l0B!#-Pw>c^f2f9Uj1_56}$=w%s*Y~&^ zA>Dnkoh1OC1(Sx2Oxm7uB23$HT^s3{pTn=W=r25@k?TK@59;{E`2{O4!o4Tn zcz9Iiyj2+8X(_$lI?Ao@NgOKHFVEp<;L7-qfPL+B z#iq+%u0ixmy;NVkOd4>e;$WL5Xk=2G(k4S<9$~s8`}pPFu1er@x|{ckIKEbFR?t8*VNoPU%=x$=oh%O3yJ%QwNXt*K~ZfXja`%{s{fqc9S`xExj{KFH! zQEBTn9XqM)020~c*YWCC`~xe9iI+B+g+al6&VQ=%IX+(1gb3tt^Y|0bCaunJ)V)8q zzWZ1BMM7Ev?ds=d96V$MuBR;yU@j*F;32yh;)cqn6lPBN;F{$ zvCM2gom77wH~?FM^+N97?oZwz5{wa(_?_zing3*nCdt&{rF_KTK{g6Z6efg*^l68S z!6^^Y4g)LCH6Agk6G;j3<8x>>8bR@1{*t?(qw5O^1o zMgp-JuBmlEI5s{kd=#yVDzH4kiRk(aq+JLeZ{1KILZu}Zf&8_tZ|W%YWA(ajiRD$Q zzGPf&0$!41Nr|*03ZDzJ`%8s;Dses5yaS*)Sdvhp<9>w zK{}}!G8NGWl86tu%|r(x>Z1dw6~2Q7WB=pyyl2%Rjt4+kM8%cQ4pf2P1?Q^T0{_bs z6>(7<1^sVI58|f#kjvBQ2*9I-vw@fXxRo6;U0PfTdUl`$y8Pjn55O;vZIo;jaDn)w zHcoWd^4ffVE-RWdu^TfbWDjT;r%jtEr~gt&HXqo$u+^tCm~r|(TUR!dC*bNa(p|}9 zlFYB-2UQF+!!mABM+Nq;^@dnH`P6Lc&l)!9Bz1B#V(WBMK#HmQv<~nOwqQ~EYHseq z_~sumtaUjW^FOK8zhxw&eqU(#%aneRkUxOa!BJ zS2)ei>%p;&<$0^$Qwml^#Vd;0Y5qCipw9(=(O=Zn%1C{^k+Xz4jT#N}Zouohhqpui zb|DuBI)R#}tz64(BmbzfYpR}s=J)8b>RN!V9$>RFG^vdl52N<(g9>5yHU@xT3pZtL zv_Oh){z_F?Lzd1gXwT0>gnaLNRq%;*GYW>8KwtGhc!#d{gAgw*iQGyxU;T#6f2CZJ zA#O$Oiy*#~hGI?p+>|A}uY`F=@XAZ)j@3A=^%d&=Y`23JOqxsiJklccxADvI5)!ZQ z0dYX{LJo2Bj0HUG4_KZ3mGayk+(#~4H`B;U6X@&$kP~b-Sxhif^&SK3aF=_(0o0N9pJflvsXIJmLgFxssu)5-1By&s$< zQ}Z$_jy(ohN;V@|{z>cz=fdX@ClXll0lc_Al)DSD2=8Ab<$1Q+r+Gw_XlLk{Vaz(&i28Za+4}%@*HUQu=zgZ4c-> zN0V&qKOEob)^iDooZJ$uaW#`>HX!dKK8*lYpwFV;)ewk3TU`ubewNW5r7V|g1WW;H^dkbSFWv0JIJxOFjda8(Y!N{i_!`J2c56B zQ?IM_4BNzm>BS)TtmWd|VS900v9XH3T4OBHpG~CXy>5HyYYdJX3?iWT=;Mt4K$z&M z?+KqQWJ|}ln3Ew`EMh`f6cZGz!#a=UrNN|c-3^p0-qh`>wApY1a<#NyEUIL$1}(YuANsTGfLQqTce&6@C^i9#XnxZuC;M+?$rF5DDrRzW;oE**;qidx|hsaoVN6TrYnF_&WE2 zP#hn?9^5~rmy6f=?(x7>Cb7pO_AvRl=SF1#=ZA{nc4$OPfISAeTz4`Xi7{ex^ z=50O8>JzEEW0PP*)$!;Ed{6GJ{iYQ;jQ4svjn&DadT&<^+?zPSuEZKc9%WMjBPHS~tZ0nQh~szjH4$za#N(BHk;6<|=~3WZ2P^EGF#>W6OB)aP^vLg1uy!Y}|YQ zhu5}v>ix=tDhw5Db)pKqee!}-Nk!))( z>Ey-9N|}~#vWqUzpx4fMXb7(Auul%;C|`NOo$LkIJxcM>=;SWR-V^o9Z?E?zDau$c zT=5^+NlCS#Pt05mTpDNReu20fQyf$t!m~_;wor)tOI_?UNbl0bfxBm(%V1hvm+LY1 zSR>{4_=eTLBGM|}0xN+52D8NC4@G};iue1A%PgERnT&yRG-iv6xekrAO@=D$rfHqv zWFWQbToBWX|B;WK++q^LGj9Vmvy-X-|4PhS-77B^OaG-VkpF-bvv?;?5qq$e9Ivs1 zP43MMi7ryUr@}|a%r44i%fmSn=@!Y!L=Iy9%|sAFf1+SWY5OG36*-M zf^_1P%N4$cB8%KES}_zTwhme>uXtz)#wsXsd+iw~(+5zB{d}|&J8H9oAO8*MGz>hZ zp^{0A8jnzYX?%y7LplmtKN#3 zC+g?>Ce!CD_=fQ?;4PDJL3y3&v&!$dfjr=esgHA<(0O2siJebCD#0_x5&vG3 zj|ztxNlNVBiQfw;u`47o4X``UGlg}6E5rI&YV#C=L=Rjiql0`5)qtr{q5>N*VwnZ7 zi*a?IDtY%G5M_y^Zk4M7Af$noZDXR35#JL+ov!^5OY$~K)BZQywKEqtR;rVP3r4Ss zk~Je+C4^in{wtK;YRoaMb5T8PkET}-_BZ_@lnGH(oa=HkZ}kr>YQX7&bdnVmJ$rFy zr#b6kr1aBl{!Mj7O$gKCJiFLcRBSui#02gtWdMk?Tu>$E|xz0yisAt7GQM>@rz zKso9{yP(>E5XK0xhM6#x3bXxL#jVk{EPIM@Mycnp1yJ_ConWNs{9iJu+!#7OqGIeU4g`nj`;o(ItNttS}4a zDYsaKx6=0YI?j}a)?GTy!m(n<#rR;V13v*xfN=d(gYnuy6E z=QATyb4VB?k;7EZY>vaW?oZ$D`**nicwg7H>+`v;9j?9Kufy~CdWfL38+%z>bw%Ul z2OJ#~t0Xz4#RczOfmPX6(7d-a=_4PcPV8<;F$_0^BDEWz99D{3gy;#8&V4ZPK$`9m zr)HN1r;?uZpKLVF+G@FzP`R+31M7M4PSB8NK!3Zd3!YUL-eajO+bi=aLBP&_r-*P1 zCmVE#74Exwq*@f8_{tqTw*%Gy{)`AlCqDCqalp=@)Q69+Umy&Qn=r5PKkaD%jfL5~26 zejq*tVpMHlh&IR)AUOtK22^n+mS8YLk1%Y>iz5QkDefyG5~$yzRkfh<|3fhb&0xM|M2OXg@<|p($T9-`0!@I#MX~WDjtU~PZAcaHk3lv8T*HIn6KwsqBCKT7-1!-!q1zWu9^Xu13c}eJu zCp?wql9biKUg(HTMqyAN?rqv|&JJyG=UDJTAT?z}Mue4_D7-D&er`&vFtnj&_gS77 ziw{?dQJ!`epMz_b-~PsPt8!TRHcsoaZ_2T`13Y0%9+=|wvsCRRPr7>B!IJ~?Tpd~p zFKy>WGeSp{k7$=ofnlyBpO!#N8n)z-#@J%7*!A$K9ygh>?l->so*bB6WSz=?K27J( z5`+Z`3G@g>ZMzaL&n|noO|(Ymx6_|?uA*Mpak5(AvS_oOub9CDhf5U-C^x_X@&hN6;Md@?XxlQc9=GEEw0|Hash7}dJpmPUcrV~mW76nWcnGO%_QF{TD$4( zcl@rCd~atoH9{u-#K*(e-T0b8FmC^(Wz`%PJ19eJ2Bv;72H*O;quNut3sWK5PwuydMZ(Wo=gCw>Q8*o zE(?p)N3CTUsHG#;RyFJ0*#yUDG8`{`$HcI{+c&FdJ?-!l_0F3p{<+l zm6<~WL7MsKN4;(u*;*rJ)izJvAMg>SVAvZV%hu>#TNf3aauQ$UwWXpx;}z6c^C99Y zI8c-kwl&Mj{J57C0~f3AS}gf`4xUlZwGkAk4Uiq%^V~u9uL;$O?1@0vXtJw+|3`Xf zQ`*pz19!&{dD>}-HkS`tgf3A%=p6coI&! zdW|0AiLyj0`2PawWx92JFC@`t{QK_lP&^kKff?+B@2!(!Wm}@GDGz;OUN+5phM)EF zu91~aZoNX9AjH!|h~K!TNm0@RK?wW@{Fe_YwQ#GkrnA2G7-WtFNOX#s)9DQI*Qr@3^ICyXFEus`7zFuTD6^F(5naCAaJu~^P6*J93b&SNg=FLBDtm*NI z{LJ&rc$ZrMIZQ}pXzv|hw0@{NJ&7i<72HJpe%6gkuHDlU=7ZlNJ*@aPSF@|^ivRk> z=*R8bM(!fpC-n2ygw>F;JFb4VIKySokj4tXDT-;F zwt$;y`#CT#d7MG!YzX&99OaTw(7jqeTN=d7f9$V55r19ynK%UeB>9zdNe8%oyTA;Z zsP))49@=$(j_2+CxuF8`c)DEtNGf`AE0=MP#=Ov&9;ft9#ZqReF;J|*d(P0H7Pno2 z(nW8x`ScO~JYjmk;ZGR;-p0djIL@q+-t~LejaD*pf1)&9oJb@y-e8)^;eU^-&rdYB zQcafCY3tLGj7|4L=ixa(7r3Jd@JC;)Kk0X>S)S6J6u_LO{{k&5(8Z{?o+-O_Y@6L* zFetD51u_nkjJT3OWKqq%*!+ygR8(}G+!!%{d!=%Rqql_nsTd32c4N0fDk1Rt8hX&O z<1;DYns(}>ilhkqDdRPeDe}=(YUOHZcIiA(cfRv4w%3X9^hY30NWBA`m_apE#9xds zlIX~oW~u3(6-9RDQ^WnVPDFd2^vtNS;-YF~D-8*AzpiGB9iVI`m3hbRbR~yf- zsZL3)mz5HZV*Bhk8D@M^f@ti7*!%6W6$HkEG!p1oHsAp(wz8+8ja&{lsU->>iyJN} zNeaaZVTlt6MsmO1LhVeut^t?O!Uc1pYKcc;KrkBLzgbp;{R`Xmii2T#x2YDWsFfOp zvECNhJ3|r+H1`TIZG8=8&R>d?Ap(0>jDvS6Gxq8N#xf>~sxn`RKZZ{4=KGy6=46cr z>juPwGxC8$-OhPFCe~U3u=$fL>{I^tB|uYQ@qBJ7<{(`FV*vrB0wb^-G(f4>DvW{9;ZM=(tB3fX2*O$6 z{}-)f&qD58;c~*?xf-f}@SnKkzi#2y*aXUBAwnADGu{(8AZ`JfRG@cEB>tYau}mTe zpyjEKm-Q}AH%XXUoK~@hr4*8!Ex`yb+t1u`ZQuaW!fwyUaTP-0a;37~Ge}852(uw! zcu_UH+34{bgsht;MC3H?PFu0y+i};~U~%k6gs>ju^UOIQ2YS*QVB<81$y<+)NLjnK zxr!UA`$nu3%&<7vxR17?M1NCteh`jhA%xnUWf~NcUfTsdwlNMy z@X?V+vBY3L<^`)|pWy=q z=&0oo>aaU9SR)mqb<8MVoi z+M8W3-qN|}>#K4N;hND;9)Yj-2Rrvg5Ki3CB50Cd_ZeUms^#b8_%l~E%7mOn7u*MZ z&zc+PuGC~Z0yUnH6jaiLGy^$<;$L;U-7ZRrEwjQ8eg|4xgzhP}FEB06KxM-()=2NP zTZv#r-&)Blq;bGtp-WXjKlzQ|*pKAHF9+)!>JfH|^fDtx>&!PEsZoLkox4bI=fRP@ z)2O{!KZNPB5AN$Wm7PfJrsogEA|h8Nc)c0bj>D=ai?>d`X!b5bxoKd_IWCyM5TeXa zgMdyeb}J_4(MIu4sdc)e4)9+1hFPsl$Ze|99o`KD_!5tWGX4_V`{rL=^s94(b@Wfh zgC-}IFo(W0hpC|O&hNrf;K!q4Oy$=VD;5_`=IaM1*?cf64UXb-ni+3?6FheVw{=so zj_S-RjbJ-$h-f(I&ETw=t2j2F_Do%0%JizB$$W!+Fso4U%sQJ-m=5<`vqobFFbHKR zp&}`X#ncutB*`^yE>C`r-ULBi$I5C2d3Z=|u=jJT~)hWRw@eURa936X6zzxC`QF7Hrb z@M_UoFa*f)E^5TxnIW>ltxZd^Ln{{F3^v<&)pufdqKK_k@*j{wPq$RL7AhjyXXhd^ zNN?9oXK7_uXe6f4Bo$mVR%2^o+@B)j6(j0zLb>Ab3nW>JeVcyOZe!&WyDq8p&0R+a zM%mUb<2Cj83FpfBS7PzBgW2WJ^kH8uh;)!;9KaGyk8AeoSY*pmG{fajC}!26y_Z7L zq(X!NiBClE)Jv>Tg<5NLkV%oNKy${jjM=TO?ay1J{@AV6{n$^F0(#)La_Lhnomn1) zbIY~IDh3Op79COrr?4$gUNir;Oypq z2X&@x|G$CS(`oGDX1&}`eq|&&vBgx5G`BIy*&NK={4jOAl+}{ z1kk05iSOL)%$|$NG(JZft88jM_&f=er0xRp9XP+!PeOUt2kj!SlawEmk|v&ig+#IU z2@bbxUnVbYWI>meN{?67MBkN;JRO}kYQkB%B)&O2kqQ<5e!cW&aq|!FQT(|yStn!S zg-((SPxoovYvs_kl7o@|ASJBtK*;{T_hJrm@+ST_8Oaoi=lIi?&E=Kwsj2ws^oB49f0RSk&iC|J~;J@}Hewf4_ngKz;`x1ENTcynF~? zF#r@Zzg08;S!92Jb($M;~o?t7HTGyqGgB^ zC;PT)Bk(RS7PrPO`~(zxp}DccXI$?)K#f)sMXXrQ2||l^2?JB+C(iiymLMJ=b_7a2 z8`GE6X_0%Zn-P!kDHCH?vy$GAMnEhvd=ynWqIq4BjAs_F{EdTP+a|#!55H0;E$HIP zqekOOdF$c0;bu#K0xBQDgx}kPvES_l_*b?E1{y+hTbMBG1Xua(SIX8Nt?fyg^^AM@ zAJn1s&21~T>c2oaLnvCQPy2WuP%FmZ0X2`2@OTk&=S5Ui)LLFHZT7vgpcS-g!sV2h zp2?|zz1L;7w8u-fQ@BGK=Vq>t%uJ4S*M~eNG3gptZ78RJ`#kXcOz7rqL5BQx``#H* zXW!-X67SrTAFvq-t|bG(4yxgze#4Rw5tXPg??6vrL<7NWW+OM2ws`Yx5AZ2Boyhp$ z2n;DOFNlxfpOZWc=j+c&_DSD^%l!#&{j|0Ka<9^9193G~zUbH2F@OhT?SW3$LZ3Zk zsy0@x?X#L`OJQ!sbCUH~P_uvk>=vTX h9FPxiDF_NIAV2|LcO-{qLUXwPcuoEhSaJOt{TExO@QDBb literal 0 HcmV?d00001 diff --git a/web/static/index.html b/web/static/index.html new file mode 100644 index 0000000..512649e --- /dev/null +++ b/web/static/index.html @@ -0,0 +1,580 @@ + + + + + + + Clickduck Control Center + + + + + + + + +